private static Scanner sc;
public static void main(String args[]) {
sc=new Scanner(System.in);
int t=sc.nextInt();
for(int j=0;j<t;j++) {
int n=sc.nextInt();
int[] arr=new int[n];
for(int i=0;i<n;i++){
arr[i]=sc.nextInt();
}
BST tree =new BST(arr);
tree.display();
}
}
}
class BST {
private class Node{
int data;
Node left;
Node right;
}
private Node root=null;
BST(int[] arr){
this.root=construct(arr,0,arr.length-1);
}
private Node construct(int[] arr,int lo,int hi) {
if(lo>hi) {
return null;
}
int mid=(hi+lo)/2;
Node nn=new Node();
nn.data=arr[mid];
nn.left=construct(arr,lo,mid-1);
nn.right=construct(arr,mid+1,hi);
return nn;
}
public void display() {
this.display(this.root);
System.out.println();
}
private void display(Node node) {
System.out.print(node.data+" ");
if(node.left!=null) {
this.display(node.left);
}
if(node.right!=null) {
this.display(node.right);
}
}
}