#include <iostream>
#include <string>
using namespace std;
int main()
{
string tekst;
string alfabetM="abcdefghijklmnopqrstuvwxyz";
string alfabetD="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
string alfabetL="1234567890";
while ( cin )
{
getline(cin, tekst, '\n' );
int dl=tekst.length();
for ( int a=0; a<dl; a++ )
{
for ( int b=0; b<26; b++ )
{
if ( tekst[a]==alfabetM[b] )
{
if ( b<12 )
{
tekst[a]=alfabetM[b+13];
}
else
{
tekst[a]=alfabetM[b-13];
}
break;
}
if ( tekst[a]==alfabetD[b] )
{
if ( b<12 )
{
tekst[a]=alfabetD[b+13];
}
else
{
tekst[a]=alfabetD[b-13];
}
break;
}
if ( tekst[a]==alfabetL[b])
{
if ( b<5 )
{
tekst[a]=alfabetL[b+5];
}
else
{
tekst[a]=alfabetL[b-5];
}
break;
}
}
}
cout << tekst << endl;
tekst.clear();
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICAgc3RyaW5nIHRla3N0OwogICAgc3RyaW5nIGFsZmFiZXRNPSJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiI7CiAgICBzdHJpbmcgYWxmYWJldEQ9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjsKICAgIHN0cmluZyBhbGZhYmV0TD0iMTIzNDU2Nzg5MCI7CiAgICB3aGlsZSAoIGNpbiApCiAgICB7CiAgICBnZXRsaW5lKGNpbiwgdGVrc3QsICdcbicgKTsKICAgIGludCBkbD10ZWtzdC5sZW5ndGgoKTsKICAgIGZvciAoIGludCBhPTA7IGE8ZGw7IGErKyApCiAgICAgICAgewogICAgICAgICAgICBmb3IgKCBpbnQgYj0wOyBiPDI2OyBiKysgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYgKCB0ZWtzdFthXT09YWxmYWJldE1bYl0gKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBiPDEyICkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB0ZWtzdFthXT1hbGZhYmV0TVtiKzEzXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgdGVrc3RbYV09YWxmYWJldE1bYi0xM107CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCB0ZWtzdFthXT09YWxmYWJldERbYl0gKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBiPDEyICkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB0ZWtzdFthXT1hbGZhYmV0RFtiKzEzXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgdGVrc3RbYV09YWxmYWJldERbYi0xM107CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIGlmICggdGVrc3RbYV09PWFsZmFiZXRMW2JdKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBiPDUgKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRla3N0W2FdPWFsZmFiZXRMW2IrNV07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRla3N0W2FdPWFsZmFiZXRMW2ItNV07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvdXQgPDwgdGVrc3QgPDwgZW5kbDsKICAgICAgICB0ZWtzdC5jbGVhcigpOwogICAgfQogICAgcmV0dXJuIDA7Cn0K