世界上有許多關於著色和鋪瓷磚的問題。本題也是其中之一,我們將討論由 3 個邊長為 1 的正方形瓷磚拼成 L 型的圖形,稱為 L-tromino。考慮旋轉,L-tromino 共有以下 4 種形狀:
圖 I.1: L-tromino
考慮一個由 $2^k \times 2^k$ 個瓷磚組成的正方形棋盤,其中 $k$ 為正整數。眾所周知,無論從棋盤上的哪個位置移除一個瓷磚,剩下的部分都可以用不重疊的 L-tromino 完美覆蓋。放置 L-tromino 的方法可能有多種。
在放置好 L-tromino 之後,我們希望為每個 L-tromino 塗上顏色,使得所有的 L-tromino 都能被區分。當一個 L-tromino 與所有與其共邊的其他 L-tromino 顏色都不同時,我們稱這些 L-tromino 是可區分的。
由於這些 L-tromino 位於同一個平面上,根據著名的四色定理,我們可以使用最多 4 種顏色來為所有 L-tromino 著色以進行區分。有趣的是,無論移除哪一個位置的瓷磚,都存在一種 L-tromino 的放置方式,使得我們可以使用 3 種或更少的顏色來區分所有的 L-tromino。
給定棋盤的大小和被移除瓷磚的位置,請根據上述內容,求出一個放置 L-tromino 並進行著色的範例。
輸入格式
第一行包含兩個整數 $T$ 和 $k$,其中 $T$ 代表測試資料的總組數,$k$ 決定棋盤的大小。($1 \le T \le 2^{10}$,$1 \le k \le 10$)
$T \times 2^{2k}$ 不超過 $2^{22}$。
接下來的 $T$ 行,每行包含兩個由空格分隔的整數 $a$ 和 $b$,代表每組測試資料。($1 \le a, b \le 2^k$)
輸出格式
對於每組測試資料,輸出在 $2^k \times 2^k$ 個瓷磚組成的正方形棋盤中,移除第 $a$ 橫列第 $b$ 直欄的瓷磚時,L-tromino 的著色方案,共輸出 $2^k$ 行。
其中第 $i$ 行代表棋盤第 $i$ 橫列的配置。
瓷磚的顏色用 a、b、c 之一表示,而被移除的瓷磚用 @ 表示。當然,相鄰且共邊的兩個 L-tromino 顏色不能相同。
範例
輸入 1
2 1 1 2 2 2
輸出 1
a@ aa bb b@
輸入 2
1 3 7 6
輸出 2
bbccaacc baacabbc ccabcbaa cabbccab aaccaabb bbcbbacc bcabc@bc ccaaccbb
說明
圖 I.2: 以紅色實線表示的邊界上,相鄰的兩個 L-tromino 顏色相同,因此是錯誤答案
圖 I.3: 在 $2^3 \times 2^3$ 的棋盤中,當 $a = 7, b = 6$ 時的其中一個可能正確答案