2094 - ルービックキューブ

時間制限 1 秒 / メモリ制限 256 MB / 得点 10 / Writer syoribu / x 0 / 統計 /


TLE
1sec
MLE
256MB
得点
10

問題

ルービックキューブは、図のように表面に色のついた27個の立方体から構成されている立体パズルである。以下の図では、説明のためにルービックキューブの各面にアルファベットが書かれている。同じ文字は同じ色を表す。

$x>0,y>0,z>0$方向から見たとき $x<0,y<0,z<0$方向から見たとき

ルービックキューブでは、1回の操作で、x軸、y軸、またはz軸に垂直な同一平面上にある9つの立方体を選んで、90度回転させることができる。具体的には、以下の図のような操作方法だけが許されている。ただし、説明のために、以下のすべての操作を始める前には上の図のような状態だとする。

操作方法 操作の説明 操作時の状態 操作後の状態
x軸方向の負の側にある立方体9つを右図のようにx軸周りに90度回転させる
x軸方向の負の側にある立方体9つを右図のようにx軸周りに90度回転させる
x軸方向の中間にある立方体9つを右図のようにx軸周りに90度回転させる
x軸方向の中間にある立方体9つを右図のようにx軸周りに90度回転させる
x軸方向の正の側にある立方体9つを右図のようにx軸周りに90度回転させる
x軸方向の正の側にある立方体9つを右図のようにx軸周りに90度回転させる
y軸方向の負の側にある立方体9つを右図のようにy軸周りに90度回転させる
y軸方向の負の側にある立方体9つを右図のようにy軸周りに90度回転させる
y軸方向の中間にある立方体9つを右図のようにy軸周りに90度回転させる
10 y軸方向の中間にある立方体9つを右図のようにy軸周りに90度回転させる
11 y軸方向の正の側にある立方体9つを右図のようにy軸周りに90度回転させる
12 y軸方向の正の側にある立方体9つを右図のようにy軸周りに90度回転させる
13 z軸方向の負の側にある立方体9つを右図のようにz軸周りに90度回転させる
14 z軸方向の負の側にある立方体9つを右図のようにz軸周りに90度回転させる
15 z軸方向の中間にある立方体9つを右図のようにz軸周りに90度回転させる
16 z軸方向の中間にある立方体9つを右図のようにz軸周りに90度回転させる
17 z軸方向の正の側にある立方体9つを右図のようにz軸周りに90度回転させる
18 z軸方向の正の側にある立方体9つを右図のようにz軸周りに90度回転させる

ルービックキューブの操作をシミュレーションしてみよう。

現在のルービックキューブの各面の状態と、そこからルービックキューブに対して行う操作が与えられる。操作がすべて終わった後の、ルービックキューブの各面の状態を求めるプログラムを作成せよ。

入力

入力は以下の形式で与えられる。

$f_1$ $f_2$ $f_3$ $f_4$ $f_5$ $f_6$ $f_7$ $f_8$ $f_9$
$f_{10}$ $f_{11}$ $f_{12}$ $f_{13}$ $f_{14}$ $f_{15}$ $f_{16}$ $f_{17}$ $f_{18}$
$f_{19}$ $f_{20}$ $f_{21}$ $f_{22}$ $f_{23}$ $f_{24}$ $f_{25}$ $f_{26}$ $f_{27}$
$f_{28}$ $f_{29}$ $f_{30}$ $f_{31}$ $f_{32}$ $f_{33}$ $f_{34}$ $f_{35}$ $f_{36}$
$f_{37}$ $f_{38}$ $f_{39}$ $f_{40}$ $f_{41}$ $f_{42}$ $f_{43}$ $f_{44}$ $f_{45}$
$f_{46}$ $f_{47}$ $f_{48}$ $f_{49}$ $f_{50}$ $f_{51}$ $f_{52}$ $f_{53}$ $f_{54}$
$Q$
$p_1$
$p_2$
$:$
$p_Q$

最初の6行に、現在のルービックキューブの各面の色を表す文字$f_i$ ($f_i$ はA,B,C,D,E,またはF)が与えられる。$f_i$は、下図のように、ルービックキューブの各面に番号$i$を振ったときの面の色を表す。

$x>0,y>0,z>0$方向から見たとき $x<0,y<0,z<0$方向から見たとき

続く1行に、ルービックキューブに対して行う操作の数$Q$ ($1 \leq Q \leq 100$)が与えられる。続く$Q$行に、$i$番目の操作$p_i$ ($1 \leq p_i \leq 18$)が与えられる。$p_i$は、何番目の操作方法でルービックキューブを操作するかを表す。たとえば、$p_1$が5なら、最初に行う操作が操作方法5であることを表す。

出力

すべての操作が終わった後のルービックキューブの面の色を表す文字を、入力でルービックキューブの面の色を与えたときと同じ形式で6行に出力する。

入出力例

入力例1

A A A A A A A A A
B B B B B B B B B
C C C C C C C C C
D D D D D D D D D
E E E E E E E E E
F F F F F F F F F
1
1

出力例1

A A A A A A A A A
B B B B B B B B B
F C C F C C F C C
E D D E D D E D D
C E E C E E C E E
D F F D F F D F F

入力例2

A A A A A A A A A
B B B B B B B B B
F C C F C C F C C
E D D E D D E D D
C E E C E E C E E
D F F D F F D F F
2
7
13

出力例2

E D D E A A C A A
C C C F B B D B B
A A E C C C F F F
B B F E D D E D D
C C B E E B E E B
A A A D F F D F F