~
#include <bits/stdc++.h>
using namespace std;
const int maxn=2e5+10;
int n;
int dp[maxn][6],ans[maxn],a[maxn],pre[maxn][6];
void run(int x)
{
ans[n]=x;
for(int i=n;i>=2;i--)
{
ans[i-1]=pre[i][x];
x=pre[i][x];
}
for(int i=1;i<=n;i++) cout<<ans[i]<<" ";
exit(0);
}
int main()
{
cin >> n;
for(int i=1;i<=n;i++) cin >> a[i];
for(int i=1;i<=5;i++) dp[1][i]=1;
for(int i=2;i<=n;i++)
{
for(int j=1;j<=5;j++)
{
if(dp[i-1][j]==0) continue;
if(a[i]==a[i-1])
{
for(int s=1;s<=5;s++)
if(s!=j) dp[i][s]=1,pre[i][s]=j;
}
else if(a[i]>a[i-1])
for(int s=j+1;s<=5;s++) dp[i][s]=1,pre[i][s]=j;
else if(a[i]<a[i-1])
for(int s=1;s<j;s++) dp[i][s]=1,pre[i][s]=j;
}
}
for(int i=1;i<=5;i++)
if(dp[n][i]) run(i);
cout << -1;
return 0;
}