#include<bits/stdc++.h>
using namespace std;
struct Treenode{
int val;
Treenode *left;
Treenode *right;
Treenode(int x) : val(x), left(nullptr), right(nullptr){}
};
Treenode* TreeInsert(Treenode* root, int n, int pre){
if(root == nullptr){
root = new Treenode(n);
cout << pre << endl;
}
else if(root -> val > n){
root -> left = TreeInsert(root -> left, n, root -> val);
}
else{
root -> right = TreeInsert(root -> right, n, root -> val);
}
return root;
}
int main(){
int n;
while(cin >> n){
Treenode *root = nullptr;
for(int i = 0; i < n; i++){
int x;
cin >> x;
root = TreeInsert(root, x, -1);
}
}
return 0;
}