import string
letters = [['p', 'l', 'a', 'y', 'f'],
['i', 'r', 'e', 'x', 'm'],
['b', 'c', 'd', 'g', 'h'],
['k', 'n', 'o', 'q', 's'],
['t', 'u', 'v', 'w', 'z']]
str=input('Enter the text')
answer = ""
g = 0
while g < len(str):
upper = str[g].isupper()
c1 = str[g].lower()
c2 = 'z'
if g + 1 < len(str) and str[g + 1] != str[g]:
c2 = str[g + 1].lower()
g += 1
x1=0
y1=0
x2=0
y2=0
for i in range(5):
for j in range(5):
if letters[i][j] == c1:
x1 = i
y1 = j
if letters[i][j] == c2:
x2 = i
y2 = j
if x1 == x2:
c1 = letters[x1][(y1 + 1) % 5]
c2 = letters[x2][(y2 + 1) % 5]
elif y1 == y2:
c1 = letters[(x1 + 1) % 5][y1]
c2 = letters[(x2 + 1) % 5][y2]
else:
c1 = letters[x1][y2]
c2 = letters[x2][y1]
if upper:
c1 = c1.upper()
c2 = c2.upper()
answer += c1
answer += c2
g = g+1
print(answer)
aW1wb3J0IHN0cmluZwpsZXR0ZXJzID0gW1sncCcsICdsJywgJ2EnLCAneScsICdmJ10sCiAgICAgICAgICAgICAgWydpJywgJ3InLCAnZScsICd4JywgJ20nXSwKICAgICAgICAgICAgICBbJ2InLCAnYycsICdkJywgJ2cnLCAnaCddLAogICAgICAgICAgICAgIFsnaycsICduJywgJ28nLCAncScsICdzJ10sCiAgICAgICAgICAgICAgWyd0JywgJ3UnLCAndicsICd3JywgJ3onXV0Kc3RyPWlucHV0KCdFbnRlciB0aGUgdGV4dCcpCgphbnN3ZXIgPSAiIgoKZyA9IDAKCndoaWxlIGcgPCBsZW4oc3RyKToKICAgIHVwcGVyID0gc3RyW2ddLmlzdXBwZXIoKQogICAgYzEgPSBzdHJbZ10ubG93ZXIoKQogICAgYzIgPSAneicKICAgIGlmIGcgKyAxIDwgbGVuKHN0cikgYW5kIHN0cltnICsgMV0gIT0gc3RyW2ddOgogICAgICAgIGMyID0gc3RyW2cgKyAxXS5sb3dlcigpCiAgICAgICAgZyArPSAxCgogICAgeDE9MCAKICAgIHkxPTAKCiAgICB4Mj0wCiAgICB5Mj0wCgogICAgZm9yIGkgaW4gcmFuZ2UoNSk6CiAgICAgICAgZm9yIGogaW4gcmFuZ2UoNSk6CiAgICAgICAgICAgIGlmIGxldHRlcnNbaV1bal0gPT0gYzE6CiAgICAgICAgICAgICAgICB4MSA9IGkKICAgICAgICAgICAgICAgIHkxID0gagogICAgICAgICAgICBpZiBsZXR0ZXJzW2ldW2pdID09IGMyOgogICAgICAgICAgICAgICAgeDIgPSBpIAogICAgICAgICAgICAgICAgeTIgPSBqCiAgICBpZiB4MSA9PSB4MjoKICAgICAgICBjMSA9IGxldHRlcnNbeDFdWyh5MSArIDEpICUgNV0KICAgICAgICBjMiA9IGxldHRlcnNbeDJdWyh5MiArIDEpICUgNV0KCiAgICBlbGlmIHkxID09IHkyOgogICAgICAgIGMxID0gbGV0dGVyc1soeDEgKyAxKSAlIDVdW3kxXQogICAgICAgIGMyID0gbGV0dGVyc1soeDIgKyAxKSAlIDVdW3kyXQoKICAgIGVsc2U6CiAgICAgICAgYzEgPSBsZXR0ZXJzW3gxXVt5Ml0KICAgICAgICBjMiA9IGxldHRlcnNbeDJdW3kxXQoKICAgIGlmIHVwcGVyOgogICAgICAgIGMxID0gYzEudXBwZXIoKQogICAgICAgIGMyID0gYzIudXBwZXIoKQogICAgYW5zd2VyICs9IGMxCiAgICBhbnN3ZXIgKz0gYzIKICAgIGcgPSBnKzEKcHJpbnQoYW5zd2VyKQoK