#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e5+9;
int arr[MAX];
int arr1[MAX];
 
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>arr[i];
    }
    for(int i=1;i<=n;i++){
        arr1[i]=i-1;
        while(arr[arr1[i]]>=arr[i]){
            arr1[i]=arr1[arr1[i]];
        }
        if(arr1[i]==0) cout<<-1<<' ';
        else cout<<arr[arr1[i]]<<' ';
    }
    return 0;
}

#include <iostream>
using namespace std;
const int N = 100010;
int a[N], y;
int main()
{
    int n;
    scanf("%d",&n);
    while (n -- )
    {
        int x;
        scanf("%d", &x);
        while (y&&a[y]>= x)  
            y--;
        if (!y) 
            cout<<-1<<' ';
        else 
            cout<<a[y]<<' ';
        a[++y] = x;
    }
    
    return 0;
}