M. Restore Points
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Rami has n points that lie on the non-negative part of the x-axis. One of the points is always at 0. He wrote down the distances between each pair of points in some arbitrary order.

Asem accidentally erased Rami's points, and he wants to restore them before Rami finds out. Can you help Asem restore the coordinates of the points?

Input

The first line of the input contains an integer T the number of the test cases.

Each case contains two lines. The first line contains an integer n (2  ≤  n  ≤  18), the number of points Rami has.

The second line contains m integers d1, d2, ..., dm (0  ≤  di  ≤  106), where m = , the distances between each pair of points.

Output

Print T lines. Each line contains n integers p1, p2, ..., pn which represent the coordinates of the points in ascending order.

It is guaranteed that an answer always exists. If there is more than one solution, you can print any of them.

Example
Input
2
3
2 3 5
4
5 3 2 3 8 6
Output
0 3 5
0 3 6 8