盲打
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

wang最近沉浸于敲代码,多次比赛中,他发现在知识水平处于同等层次的前提下,敲代码速度对比赛结果起着至关重要的作用。因此他开始刻意练习起了键盘键位的肌肉记忆练习盲打以提高码速。盲打的前提是能够对键盘上的字母及功能键的位置非常熟悉或者是具有强大的肌肉记忆,他希望将对应的字母转化为对应的位置来进行练习,以此来提高码速和敲打正确率。

简要来说,键盘上的每个字母可以转化为一个坐标,比如q对应(1,1)a对应(2,1)

因为有时还要用到大写字母,所以还需要加上Shift键的位置,那么Q就对应(3,1)(1,1)。注意,必须先按Shift键,再按所需的字母键。

本题需要用到的键位如下图红色方框所示(以本图为准)。从上到下从左到右依次对应行增加方向和列增加方向,行列均从1开始计。



wang要输入许多大小写字母,他希望你帮他转化为对应的坐标,转化方法可参考上述解释和题目样例,快来陪他一起练习敲代码吧。

输入描述:

第一行一个整数T,代表数据组数 。

接下来共T行。

每行一个字符串s代表字符串s的长度,题目保证所给字符串中只有大小写字母。

输出描述:

T组输出结果,每组输出参照样例输出字符串从前到后对应的键盘坐标。
示例1

输入

复制
3
ZZUacm
QWQ
WAWA

输出

复制
3 1 3 2
3 1 3 2
3 1 1 7
2 1
3 4
3 8
3 1 1 1
3 1 1 2
3 1 1 1
3 1 1 2
3 1 2 1
3 1 1 2
3 1 2 1