#include<bits/stdc++.h>
using namespace std;
int n;
int p[3*114514];
int p1[3*114514];
int q[3*114514];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>p[i];
p1[p[i]]=i;
}
for(int i=1;i<=n;i++){
int j=p1[i];
if(q[j]) continue;
int flag=-1;
q[j]=j;
int col=j;
cout<<p[j]<<' ';
if(!q[j-1]&&p[j-1]>p[j]) flag=1;
if(!q[j+1]&&p[j+1]>p[j]&&p[j+1]>p[j-1]) flag=2;
if(flag==1){
while(p[j-1]>p[j]&&!q[j-1]) j--,q[j]=col,cout<<p[j]<<' ';
}
if(flag==2){
while(p[j+1]>p[j]&&!q[j+1]) j++,q[j]=col,cout<<p[j]<<' ';
}
}
cout<<endl;
return 0;
}