#include <bits/stdc++.h>
#define MAX 100
using namespace std;
typedef struct BiTNode {
int data;
struct BiTNode* lchild, *rchild;
} BiTNode, *BiTree;
void BST_INSERT(BiTree& T, int n, int father) {
if (T == NULL) {
T = (BiTNode*)malloc(sizeof(BiTNode));
T->data = n;
T->lchild = T->rchild = NULL;
cout << father <<endl;
} else { //不考虑相等的情况
if (n < T->data) //小的去左子树
BST_INSERT(T->lchild, n, T->data);
else //大的去右子树
BST_INSERT(T->rchild, n, T->data);
}
}
int main() {
BiTree T = NULL;
int n, data[MAX];
cin >> n;
for (int i = 0; i < n; i++)
cin >> data[i];
for (int i = 0; i < n; i++)
BST_INSERT(T, data[i], -1);
}