Problem: You are given an array of integers.
An array of integers is called good if for , where denotes the bitwise AND operator.
Construct a good array, or report that no good arrays exist.
Input Format: Each test contains multiple test cases. The first line contains a single integer () — the number of test cases. The description of test cases follows.
The first line of each test case contains a single integer () — the length of the array .
The second line of each test case contains integers () — the elements of the array .
It is guaranteed that the sum of over all test cases does not exceed .
Output Format: For each test case, output a single integer if no good arrays exist.
Otherwise, output space-separated integers () — the elements of a good array .
If there are multiple solutions, you may output any of them.
Note: In the first test case, . A possible good array is , because .
In the second test case, . A possible good array is , because and .
In the third test case, . It can be shown that no good arrays exist, so the output is .
In the fourth test case, . A possible good array is .