#3022. 密文
密文
说明
众所周知,间谍需要经常使用密文来进行信息传递,而Z国的van设计了这样一套密文传递方式:<o:p></o:p>
l 密文以8个字符为一小节,密文字符仅包含0和1两种,每一小节对应一个字母或一串数字。<o:p></o:p>
l 若一小节中前三个字符为111,则这一小节对应空格(ASCLL码32);<o:p></o:p>
l 若一小节中前三个字符为101,则这一小节对应一个字母。具体来说,需要计算小节后五个字符代表的十进制数,0~25分别对应小写字母a~z,26~31分别对应大写字母A~F。例如10100111的后5位是00111,转换为十进制后是7,对应小写字母h;10111110后5位是11110,转换为十进制后是30,对应大写字母E;<o:p></o:p>
l 若一小节中第一个字符为0,则要求下一小节第一个字符也为0,这一小节和下一小节一起对应一个数字。他们对应的数字是:将两个小节分别转换为十进制后求和再右移一位的结果(也即除以二向下取整),若结果为0,则无需输出。例如0111111100000010两个小节分别对应127和2,计算后得到结果为64;<o:p></o:p>
l 若不满足上述条件,则代表这段密文是用来混淆的假密文。<o:p></o:p>
van需要你帮他写一个解码器,得到密文翻译出的信息。<o:p></o:p>
输入格式
第一行一个正整数T,表示需要翻译的密文数量,接下来T行,每行一个字符串s,表示传递的密文。
输出格式
T行,每行一个非空字符串,表示翻译出的信息。若是假密文,输出"FAKE"(不含引号)。<o:p></o:p>
样例
4
0111111100000010
abaaba01
10110101111101010001111101010101
0001111110110101
64
FAKE
v 58
FAKE
提示
对于20%的数据,真密文翻译出的信息中只有空格或字符;<o:p></o:p>
对于另外20%的数据,真密文翻译出的信息中只有空格或数字;<o:p></o:p>
对于100%的数据,所有密文的长度和不超过10^6,输入的数据中不含特殊字符(如不可见字符、空格、括号等)。<o:p></o:p>