#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n,i,k;
    k = 0;
    cin >> n;
    int a[n];
    for(i = 0;i < n;i++) cin >> a[i];
    int najveci = -1;
    int najveci_indeks = -1;
    int l_indeks = -1;
    int d_indeks = -1;
    for(i = n-1;i >= 0;i--){
        if(a[i] > najveci){
            najveci = a[i];
            najveci_indeks = i;
        }

        if(a[i] < najveci){
            l_indeks = i;
            d_indeks = najveci_indeks;
        }
    }
    if(l_indeks != -1) swap(a[l_indeks],a[d_indeks]);

    if(l_indeks == -1){
     int brojac[10];
     for(i = 0;i < 10;i++) brojac[i] = 0;
     for(i = 0; i < n; i++)
     {
         brojac[a[i]]++;
         if(brojac[a[i]] == 2){
            k = 1;
            break;
         }
     }

       if(k == 0) swap(a[n-1],a[n-2]);
    }

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