#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n,i,j,k;
    bool c=false,q,p=false;
    cin>>n;
    vector<short> V(n);
    vector<short> A(10);
    for(i=0;i<10;i++)A[i]=0;
    for(i=0;i<n;i++)
    {
        cin>>V[i];
        if(V[i]>V[i-1] && i!=0)c=true;
        if(V[i]==V[i-1] && i!=0)p=true;
        A[V[i]]++;
    }
    if(!c)
    {
        if(!p)
        {
            swap(V[n-1],V[n-2]);
        }
        for(i=0;i<n;i++)cout<<V[i]<<" ";
        return 0;
    }
    for(i=0;i<n;i++)
    {
        q=false;
        for(j=9;j>=0;j--)
        {
            if(j>V[i] && A[j]!=0)
            {
                for(k=n-1;k>i;k--)
                {
                    if(V[k]==j)
                    {
                        swap(V[i],V[k]);
                        break;
                    }
                }
                q=true;
                break;
            }
            if(j==V[i])
            {
                A[j]--;
                break;
            }
        }
        if(q)break;
    }
    for(i=0;i<n;i++)cout<<V[i]<<" ";
    return 0;
}