#include<bits/stdc++.h>
using namespace std;
int a[200007];
int b[200007][7];
int ans[200007];
int main(){
for(int i=1;i<=5;i++)
b[1][i]=1;//第一个可以从1选到5
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
for(int i=2;i<=n;i++){
for(int j=1;j<=5;j++){//遍历a[i]
for(int k=1;k<=5;k++){//遍历a[i-1]
if(j<k&&a[i]<a[i-1]&&b[i-1][k])//前一位可以选k,这一位才可以选j
b[i][j]=k;
else if(j>k&&a[i]>a[i-1]&&b[i-1][k])
b[i][j]=k;
else if(a[i-1]==a[i]&&j!=k&&b[i-1][k])
b[i][j]=k;
}
}
}
int flag=0;
int x=0;
for(int i=1;i<=5;i++){
if(b[n][i]==0)
continue;
x=i;//i是a[n]的答案
flag=1;
for(int j=n;j>=1;j--){
ans[j]=x;
x=b[j][x];//b[j][x]装的上一位的答案,x是这一位的答案
}
}
if(!flag)
printf("-1");
else{
for(int i=1;i<=n;i++)
printf("%d ",ans[i]);
}
return 0;
}