import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line1 = reader.readLine();
String line2 = reader.readLine();
StringBuilder sb1 = new StringBuilder();
for (int i = 0; i < line1.length(); ++i) {
char ascii = line1.charAt(i);
sb1.append(encode(ascii));
}
StringBuilder sb2 = new StringBuilder();
for (int i = 0; i < line2.length(); ++i) {
char ascii = line2.charAt(i);
sb2.append(decode(ascii));
}
System.out.println(sb1);
System.out.println(sb2);
}
/**
*
* 加密过程
* 小写字母:a-z +1 -97 %26 +97 后取大写
* 大写字母:A-Z +1 -65 %26 +65 后取小写
* 数字内容:0-9 +1 -48 %10 +48
*
* @param ascii
* @return
*/
public static char encode(char ascii) {
if (ascii >= 'a' && ascii <= 'z') {
ascii = (char) ((ascii + 1 - 'a') % ('z'-'a' + 1) + 'a');
ascii = Character.toUpperCase(ascii);
return ascii;
}
if (ascii >= 'A' && ascii <= 'Z') {
ascii = (char) ((ascii + 1 - 'A') % ('Z'-'A' + 1) + 'A');
ascii = Character.toLowerCase(ascii);
return ascii;
}
if (ascii >= '0' && ascii <= '9') {
ascii = (char) ((ascii + 1 - '0') % ('9'-'0' + 1) + '0');
return ascii;
}
return ascii;
}
/**
*
* 解密过程
* 小写字母:转成大写 -65 (-1 + 26) % 26 + 65
* 大写字母:转成小写 -97 (-1 + 26) % 26 + 97
* 数字内容:-48 (-1 + 10) % 10 + 48
*
* @param ascii
* @return
*/
public static char decode(char ascii) {
if (ascii >= 'a' && ascii <= 'z') {
ascii = Character.toUpperCase(ascii);
ascii = (char) ((ascii - 'A' - 1 + ('Z' - 'A' + 1)) % ('Z' - 'A' + 1) + 'A');
return ascii;
}
if (ascii >= 'A' && ascii <= 'Z') {
ascii = Character.toLowerCase(ascii);
ascii = (char) ((ascii - 'a' - 1 + ('z' - 'a' + 1)) % ('z' - 'a' + 1) + 'a');
return ascii;
}
if (ascii >= '0' && ascii <= '9') {
ascii = (char) ((ascii - '0' - 1 + ('9' - '0' + 1)) % ('9' - '0' + 1) + '0');
return ascii;
}
return ascii;
}
}