#include <iostream>
using namespace std;
const int N = 1e5 + 10;
int st[N], a[N];
int top;
void push(int x){
st[top++] = x;
}
int main(){
int n;
scanf("%d", &n);
for(int i = 0; i < n; i++) scanf("%d", a + i);
for(int i = 0; i < n; i++){
while(a[i] < st[top - 1] && top > 0) top--;
if(top) printf("%d ", st[top - 1]);
else printf("-1 ");
push(a[i]);
}
return 0;
}