AT_npcapc_2024_e Aim High

Description

あなたは $ 2 $ 次元平面を用いてゲームをします。始め、 $ -100 \le x \le 100,-100 \le y \le 0 $ を満たす格子点 $ (x,y) $ に駒が $ 1 $ 個ずつ置かれています。 あなたは以下の操作を $ 0 $ 回以上行うことが出来ます。 - $ 2 $ 個の点の組 $ (a,b),(c,d) $ であって、 $ |a-c|+|b-d| = 1 $ かつ $ (a,b),(c,d) $ 両方に駒が $ 1 $ 個以上あるものを選ぶ。 $ (a,b) $ にある駒 $ 1 $ 個を $ (c,d) $ を中心として時計回りか反時計周りに $ 90 $ 度回転させた点に置き、 $ (c,d) $ にある駒を $ 1 $ 個消す。(既に移動先の点に駒が置かれていても良い。) あなたの目標は操作が全て終わったときに $ y $ 座標が $ N $ 以上であるいずれかの点に駒が置かれている状態にすることです。目標が達成可能か判定し、可能ならば操作列を $ 1 $ 個構築してください。 $ T $ 個のテストケースが与えられるので、それぞれについて解いてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ T $ $ \mathrm{case}_1 $ $ \mathrm{case}_2 $ $ \vdots $ $ \mathrm{case}_T $ ここで、 $ \mathrm{case}_i $ とは $ i $ 番目のテストケースを意味する。各テストケースは以下の形式で与えられる。 > $ N $

Output Format

$ T $ 個のテストケースへの出力を与えられた順に改行区切りで出力せよ。 それぞれのテストケースについては、目標を達成することが出来ないならば `-1` を、そうでないならば操作回数を $ K $ 、 $ i $ 回目の操作で $ (a_i,b_i) $ にある駒を $ (c_i,d_i) $ を中心として $ (e_i,f_i) $ に移動させるとき以下のように出力せよ。 > $ K $ $ a_1 $ $ b_1 $ $ c_1 $ $ d_1 $ $ e_1 $ $ f_1 $ $ a_2 $ $ b_2 $ $ c_2 $ $ d_2 $ $ e_2 $ $ f_2 $ $ \vdots $ $ a_K $ $ b_K $ $ c_K $ $ d_K $ $ e_K $ $ f_K $

Explanation/Hint

### Sample Explanation 1 $ 1 $ 回目の操作で、 $ (1,0) $ にある駒を $ (0,0) $ を中心に時計回りに $ 90 $ 度回転させて $ (0,1) $ に置きます。 この操作によって $ y $ 座標が $ 1 $ 以上である点 $ (0,1) $ に駒を置くことが出来たので、目標を達成できました。 ### Constraints - $ 1 \le T \le 6 $ - $ 1 \le N \le 6 $