Given a multiset of non-negative integers, divide it into two multisets and in a way that minimizes |\textbf{xor}(A) - \textbf{xor}(B)|. Here denotes the bitwise XOR of all elements of .
Note that one of the multisets and can be empty, and XOR of an empty multiset is .
It is enough to output the minimum possible value of |\textbf{xor}(A) - \textbf{xor}(B)|.
First line contains the number of test cases (1 \le z \le 50). The descriptions of the test cases follow, two lines per test case.
The first line of every test case contains an integer (1 \le n \le 10^5) - the size of the multiset.
The second line contains integers x_i (0 \le x_i \le 10^{18}) - elements of the multiset.
For each test case output one integer: the smallest possible difference of XORs.
Example 1