#include <iostream>
#include<string>
#include<vector>
#include <cstdio>
using namespace std;
int main ( ) {
vector< int > v;
int m,n,i,j,x= 0 ,t,e,r,b,k;
cin >> t;
getchar ( ) ;
for ( k = 0 ; k < t; k++ ) {
for ( i = 0 ; i < 1000 ; i++ )
v.push_back ( 0 ) ;
string s;
cin >> s;
for ( i = 0 ; s[ i] ! = '\0 ' ; i++ ) {
x = s[ i] ;
if ( x ! = 32 )
v[ x] = v[ x] + 1 ;
}
int max = 0 ;
int v1 = 0 ,z,h;
b= 0 ;
for ( i = 0 ; i < 100 ; i++ ) {
if ( v[ i] ! = 0 )
{
if ( max < v[ i] ) {
max = v[ i] ;
v1= i; }
}
}
for ( i = 0 ; i < 100 ; i++ ) {
if ( max == v[ i] && v1 ! = i ) {
b= 1 ; {
z= i;
break ;
}
}
}
r = v1 - 'E' ;
h = z - 'E' ;
if ( r < 0 )
r+ = 26 ;
if ( h < 0 )
h+ = 26 ;
if ( h < r && b == 1 )
r = h;
if ( b== 1 )
cout << "NOT POSSIBLE\n " ;
else { cout << " " << r;
for ( i = 0 ; s[ i] ! = '\0 ' ; i++ ) {
if ( s[ i] - r < 65 && s[ i] ! = ' ' )
cout << s[ i] - r + 26 ;
else if ( s[ i] ! = ' ' )
cout << s[ i] - r;
else
cout << s[ i] ;
}
cout << endl;
}
}
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxzdHJpbmc+CiNpbmNsdWRlPHZlY3Rvcj4KI2luY2x1ZGUgPGNzdGRpbz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IG1haW4gKCkgewogICAgCiAgICB2ZWN0b3I8aW50PnY7CiAgICBpbnQgbSxuLGksaix4PTAsdCxlLHIsYixrOwoJY2luPj50OwoJZ2V0Y2hhcigpOwpmb3IoIGsgPSAwOyBrIDwgdDsgaysrICkgewogICAgZm9yKCBpID0gMDtpIDwgMTAwMDsgaSsrICkKICAgIHYucHVzaF9iYWNrKDApOwogICAgc3RyaW5nIHM7CiAgICBjaW4gPj4gczsKICAgIGZvciAoIGkgPSAwOyBzW2ldICE9ICdcMCc7IGkrKyApIHsKICAgICAgICAgICAgICB4ID0gc1tpXTsKICAgICAgICAgICAgICBpZiAoIHggIT0gMzIpIAogICAgICAgICAgICAgICAgICAgICAgdlt4XSA9IHZbeF0gKyAxOwogICAgICAgICAgICAgICAgCiAgICB9CiAgICAKICAgIGludCBtYXggPSAwOwogICAgaW50IHYxID0gMCx6LGg7CmI9MDsKICAgIGZvciAoIGkgPSAwOyBpIDwgMTAwOyBpKysgKSB7CiAgICAgICAgaWYgKHZbaV0gIT0gMCApCiAgICAgICAgewogICAgICAgICAgICAgICAgIGlmIChtYXggPCB2W2ldICl7CgogICAgICAgICAgICAgICAgIG1heCA9IHZbaV07CQoJCQl2MT1pO30KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQoJCWZvciAoIGkgPSAwOyBpIDwgMTAwOyBpKysgKSB7CiAgICAJCQlpZiAoIG1heCA9PSB2W2ldICYmIHYxICE9IGkgKXsKCQkJYj0xO3sKCQkJej1pOwoJCQlicmVhazsKfQp9Cn0KCQkKICAgICAgICAgICAgICAgICByID0gdjEgLSAnRSc7CiAgICAgICAgICAgICAgICAgaCA9IHogLSAnRSc7CgkJCgkJaWYgKCByIDwgMCApCgkJcis9MjY7CgkJaWYgKCBoIDwgMCApCgkJaCs9MjY7CgkJaWYgKCBoIDwgciAmJiBiID09IDEpCgkJciA9IGg7CgkJaWYoIGI9PTEgKQpjb3V0IDw8ICJOT1QgUE9TU0lCTEVcbiI7CgkJZWxzZSB7Y291dDw8IiAiPDxyOwogICAgICAgICAgICAgICAgIGZvciggaSA9IDA7c1tpXSAhPSdcMCc7aSsrKXsKICAgICAgICAgICAgICAgICAgICAgIGlmICggc1tpXSAtIHIgPCA2NSAmJiBzW2ldICE9ICcgJyApCgkJY291dDw8c1tpXSAtIHIgKyAyNjsKICAgICAgICAgICAgICAgICAgICAgIAoJCQllbHNlIGlmKHNbaV0gIT0gJyAnICkKICAgICAgICAgICAgICAgICAgICAgIGNvdXQ8PHNbaV0gLSByOwogICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgY291dDw8c1tpXTsKICAgICAgICAgICAgICAgICAgICAgIH0KCWNvdXQgPDwgZW5kbDsKfQp9ICAgICAgICAgICAgICAgICAgICAgIAogCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoK
stdin
NQpSRCBUUUlKVyBHV1RZTUpXWCBJTkZXRCBKU1lXTkpYIFpYSiBGIFhOUlVRSiBKU0hXRFVZTlRTIFlKSE1TTlZaSgpUSEUgUVVJQ0sgQlJPV04gRk9YIEpVTVBTIE9WRVIgVEhFIExBWlkgRE9HClhWSURSRSBURkNDVlhaUktWIEdJRlhJUkREWkVYIFRGRUtWSksgVVZUSVBHS1pGRQpYVklEUkUgVEZDQ1ZYWlJLViBHSUZYSVJERFpFWCBURkVLVkpLCkJCIEMg
5
RD TQIJW GWTYMJWX INFWD JSYWNJX ZXJ F XNRUQJ JSHWDUYNTS YJHMSNVZJ
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
XVIDRE TFCCVXZRKV GIFXIRDDZEX TFEKVJK UVTIPGKZFE
XVIDRE TFCCVXZRKV GIFXIRDDZEX TFEKVJK
BB C