#abc0094. [abc009_4]漸化式

[abc009_4]漸化式

問題文

数列 AA はすべての要素が 3232 ビットの符号なし整数で表現でき、その値は次のようにして決まる。

  • はじめの KKA1,,A2,,...,,AKA_1,\\,A_2,\\,...,\\,A_K は入力で与えられる。
  • AA とは別に KK 項の数列 C1,,C2,,...,,CKC_1,\\,C_2,\\,...,\\,C_K (こちらもすべての要素が 3232 ビットの符号なし整数におさまる)が入力で与えられ、K+1K+1 項目以降の AA の値はこの CC を用いて次のように計算される。
    • N1N ≧ 1 に対し AN+K=(C1,A_{N+K} = (C_1\\,AND,AN+K1),\\,A_{N+K-1})\\,XOR,(C2,\\,(C_2\\,AND,AN+K2),\\,A_{N+K-2})\\,XOR,...,\\,...\\, XOR,(CK,\\,(C_K\\,AND,AN)\\,A_N)
    • ただし AND はビットごとの論理積、 XOR はビットごとの排他的論理和を表す。

この数列 AAMM 番目の値 AMA_M を求めるプログラムを作成せよ。


入力

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

KK MM A1A_1 A2A_2 ...... AKA_K C1C_1 C2C_2 ...... CKC_K

  • 11 行目には、はじめに決まっている項の数を表す整数 KK (1K1001 ≦ K ≦ 100) および数列の求める項の番号を表す整数 MM (1M1091 ≦ M ≦ 10^9) が与えられる。
  • 22 行目には、数列 AA の最初の KK 項が順に与えられる。AA の値はすべて 3232 ビット符号なし整数におさまる。
  • 33 行目には、数列 AAK+1K+1 項目以降を計算するときに使う数列 CC の要素が順に与えられる。CC の値はすべて 3232 ビット符号なし整数におさまる。

出力

AMA_M の値を 11 行に出力せよ。

出力の末尾にも改行をいれること。


入力例1


3 5
10 20 30
7 19 13

出力例1


16

実際に AA の値を計算していくと次のようになる。

  • A4=(7,A_4 = (7\\,AND,30),\\,30)\\,XOR,(19,\\,(19\\,AND,20),\\,20)\\,XOR,(13,\\,(13\\,AND,10)=30\\,10) = 30
  • A5=(7,A_5 = (7\\,AND,30),\\,30)\\,XOR,(19,\\,(19\\,AND,30),\\,30)\\,XOR,(13,\\,(13\\,AND,20)=16\\,20) = 16

入力例2


5 100
2345678901 1001001001 3333333333 3141592653 1234567890
2147483648 2147483647 4294967295 4294967294 3434343434

出力例2


1067078691

入力例3


30 999999999
11627 5078 8394 6412 10346 3086 3933 668 9879 11739 4501 6108 12336 8771 2768 2438 2153 7047 5476 313 1264 369 12070 10743 10663 747 370 4671 5235 3439
114 3613 3271 5032 11241 6961 3628 150 12191 2396 7638 3046 11594 8162 11136 786 9878 2356 11660 1070 3649 10882 9746 1415 3307 7077 9319 9981 3437 544

出力例3


2148