编程题
### 问题描述
现得到了一个长度为 $n$ 的数组 $A$ 和一个长度为 $m$ 的数组 $B$ ,但是她并不满意,他决定发明一个数组 $C$ ,满
足对于每个 $i$,存在 $j∈ [1, m]$ 使得 $c_i=a_i\ \And \ b_j$ 。但是发现这样的 $C$ 数组太多了,她想请你最大化 $c_1 | c_2 | c_3 . . . c_n$ (`&` 是按位与,`|` 是按位或)。
### 输入格式
第一行两个整数 $n$ , $m$ 分别表示数组 $A$ ,$B$ 的长度。
第二行 $n$ 个整数,表示 $a_1, a_2, . . . , a_n$ 第三行 $m$ 个整数,表示 $b_1, b_2, . . . , b_m$ 。
### 输出格式
一行一个整数表示 $c_1 | c_2 | c_3 . . . c_n$ 的最大值。
### 样例输入
```text
8 5
179 261 432 162 82 43 10 38
379 357 202 184 197
```
### 样例输出
```text
147
```
### 说明
构造出的 $c$ 数组从头或到尾的最大结果是 $147$ 。
### 评测数据规模
对于 $20\%$ 的数据,保证 $m = 1$ 。
对于另外 $20\%$ 的数据,保证 $1 \le n, m \le 7$ 。
对于另外 $20\%$ 的数据,保证 $1 \le n, m \le 50, 0 \le a_i, b_i \lt 2^5$ 。
对于 $100\%$ 的数据,保证 $1 \le n, m \le 200, 0 \le a_i, b_i \lt 2^9$ 。