#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//#include <math.h>


#define max 1000
#define row 100
#define col 100
#define N  8


/*

1、对输入的字符串进行加解密,并输出。

2、加密方法为:
当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;
当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;
其他字符不做变化。

3、解密方法为加密的逆过程。


本题含有多组样例输入。

*/




void create_encrypt_table(char* s)
{
   int i;

   for (i = 0; i < 256; i++)
   {
      if ((i >= 'a') && (i <= 'y'))
      {
         s[i] = i - ('a' - 'A') + 1;
      }
      else if ((i >= 'A') && (i <= 'Y'))
      {
         s[i] = i + ('a' - 'A') + 1;
      }
      else if (i == 'z')
      {
         s[i] = 'A';
      }
      else if (i == 'Z')
      {
         s[i] = 'a';
      }
      else if ((i >= '0') && (i <= '8'))
      {
         s[i] = i + 1;
      }
      else if (i == '9')
      {
         s[i] = '0';
      }
      else
      {
         s[i] = i;
      }

   }

   s[i] = 0;

   return;
}

void create_decrypt_table(char* s)
{
   int i;

   for (i = 0; i < 256; i++)
   {
      if ((i >= 'b') && (i <= 'z'))
      {
         s[i] = i - ('a' - 'A') - 1;
      }
      else if ((i >= 'B') && (i <= 'Z'))
      {
         s[i] = i + ('a' - 'A') - 1;
      }
      else if (i == 'a')
      {
         s[i] = 'Z';
      }
      else if (i == 'A')
      {
         s[i] = 'z';
      }
      else if ((i >= '1') && (i <= '9'))
      {
         s[i] = i - 1;
      }
      else if (i == '0')
      {
         s[i] = '9';
      }
      else
      {
         s[i] = i;
      }
   }

   s[i] = 0;

   return;
}


int main()
{
   char s[max];
   char e[max];
   char d[max];
   //char ss[N][col];
   int seq[N];
   int cnt[N];
   int ss[row][col];
   int list[max];

   int i = 0, j = 0, k = 0, l = 0, m = 0, n = 0;
   char a, b, c;
   int t = 0, x = 0, y = 0, z = 0;

   create_encrypt_table(e);
   create_decrypt_table(d);

   while (gets(s) != NULL)
   {
      for (i = 0;  s[i] != 0; i++)
      {
         s[i] = e[s[i]];
      }
      puts(s);

      gets(s);
      for (i = 0; s[i] != 0; i++)
      {
         s[i] = d[s[i]];
      }
      puts(s);
   }

   return 0;
}