#include <iostream>

using namespace std;

bool f(int c[])
{
    bool t = true;
    for(int i=0; i<=9; i++)
        if(c[i]>=2)
        t = false;
    return t;
}

int a[1000000];
int c[10] = {0};

int main()
{
    ios::sync_with_stdio(false);
    int n;
    cin >> n;
    for(int i=0; i<n; i++)
    {
        cin >> a[i];
        c[a[i]]++;
    }
    int j = 9;
    int k = 0;
    int i = 0;
    int t = 0;
    while(i<n-1)
    {
        if(c[j]==k)
        {
            k = 0;
            j--;
            continue;
        }
        if(a[i]<j)
        {
            t++;
            break;
        }
        i++;
        k++;
    }
    if(t)
    {
        k = n-1;
        while(a[k]!=j)
        {
            k--;
        }
        t = a[i];
        a[i] = a[k];
        a[k] = t;
    }
    else if(n<9 && f(c))
    {
        t = a[n-1];
        a[n-1] = a[n-2];
        a[n-2] = t;
    }

    for(int i=0; i<n; i++)
    {
        cout << a[i] << " ";
    }
    return 0;
}