#abc164f. [abc164_f]I hate Matrix Construction

[abc164_f]I hate Matrix Construction

問題文

整数 NN 及び長さ NN の配列 SS, TT, UU, VV が与えられます。 以下の条件を満たすような N×NN×N の行列 aa をどれか 11 つ構築してください。

  • ai,ja_{i,j} は整数である。
  • 0leqai,jlt2640 \\leq a_{i,j} \\lt 2^{64}
  • Si=0S_{i} = 0 のとき ii 行目の要素のビットごとの論理積は UiU_{i} である。
  • Si=1S_{i} = 1 のとき ii 行目の要素のビットごとの論理和は UiU_{i} である。
  • Ti=0T_{i} = 0 のとき ii 列目の要素のビットごとの論理積は ViV_{i} である。
  • Ti=1T_{i} = 1 のとき ii 列目の要素のビットごとの論理和は ViV_{i} である。

ただし、条件を満たす行列が存在しない場合もあるかもしれません。

制約

  • 入力は全て整数
  • 1leqNleq5001 \\leq N \\leq 500
  • 0leqSileq10 \\leq S_{i} \\leq 1
  • 0leqTileq10 \\leq T_{i} \\leq 1
  • 0leqUilt2640 \\leq U_{i} \\lt 2^{64}
  • 0leqVilt2640 \\leq V_{i} \\lt 2^{64}

入力

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

NN S1S_{1} S2S_{2} ...... SNS_{N} T1T_{1} T2T_{2} ...... TNT_{N} U1U_{1} U2U_{2} ...... UNU_{N} V1V_{1} V2V_{2} ...... VNV_{N}

出力

条件を満たす行列が存在する場合は、そのような行列 11 つを以下の形式で出力せよ。

a1,1a_{1,1} ...... a1,Na_{1,N} :: aN,1a_{N,1} ...... aN,Na_{N,N}

条件を満たす行列なら何を出力してもいいことに注意せよ。

条件を満たす行列が存在しない場合は \-1\-1 を出力せよ。


入力例 1

2
0 1
1 0
1 1
1 0

出力例 1

1 1
1 0

入力例 11 では

  • 11 行目の要素のビットごとの論理積が 11
  • 22 行目の要素のビットごとの論理和が 11
  • 11 列目の要素のビットごとの論理和が 11
  • 22 列目の要素のビットごとの論理積が 00

の条件を満たす行列を見つける必要があります。


入力例 2

2
1 1
1 0
15 15
15 11

出力例 2

15 11
15 11