/*
* 解题思路:
* 1. 小写 'a' ~ 'z' -> (ch - 'a') / 3 + '2'; 特殊: s, v, y, z -> + '1'
* 3. 大写 'A' ~ 'Y' -> CH - ('a' - 'A'); 特殊: Z --> a
* 2. 其它不变
* 提交失败:
* 1. 输入->'v' 预期->'8' 实际->':' 原因是 'v' 错误处理成 + '2', 实际应该 + '1'
* 2. 输出->'s' 预期->'7' 实际->'9' 原因是 's' 错误处理成 + '2', 实际应该 + '1'
*/
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextLine()) {
char[] passwd = sc.nextLine().toCharArray();
for (int i = 0; i < passwd.length; i++) {
char ch = passwd[i];
if (ch == 's' || ch == 'v' || ch == 'y' || ch == 'z') {
passwd[i] = (char)((ch - 'a') / 3 + '1');
continue;
}
if (ch >= 'a' && ch <= 'z') {
passwd[i] = (char)((ch - 'a') / 3 + '2');
continue;
}
if (ch >= 'A' && ch < 'Z') {
passwd[i] = (char)(ch + ('a' - 'A') + 1);
continue;
}
if (passwd[i] == 'Z') {
passwd[i] = 'a';
continue;
}
}
System.out.println(new String(passwd));
}
}
}