Time Limit: 2000 MS Memory Limit: 65536 K

## Description

For 2 non-negative integers x and y, f(x, y) is defined as the number of different bits
in the binary format of x and y. For example, f(2, 3)=1,f(0, 3)=2, f(5, 10)=4. Now given
2 sets of non-negative integers A and B, for each integer b in B, you should find an integer
a in A such that f(a, b) is minimized.
If there are more than one such integer in set A, choose the smallest one.
## Input

The first line of the input is an integer T (0 < T ¡Ü 100), indicating the number of test cases.
The first line of each test case contains 2 positive integers m and n (0 < m, n ¡Ü 100),
indicating the numbers of integers of the 2 sets A and B, respectively. Then follow (m + n) lines,
each of which contains a non-negative integers no larger than 1000000. The first m lines are
the integers in set A and the other n lines are the integers in set B.
## Output

For each test case you should output n lines, each of which contains the result for each query in a single line.
## Sample Input

2
2 5
1
2
1
2
3
4
5
5 2
1000000
9999
1423
3421
0
13245
353
## Sample Output

1
2
1
1
1
9999
0
## Source

2010 Asia Regional Chengdu