#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e6+56;

ll n;
ll a[N];
ll maxi[N];

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin >> n;
    for(int i = 1; i <= n; i++){
        cin >> a[i];
    }
    maxi[n] = n;
    for(int i = n-1; i >= 1; i--){
        maxi[i] = maxi[i+1];
        if(a[i] > a[maxi[i]]){
            maxi[i] = i;
        }
    }
    ll p1 = 0,p2 = 0;
    for(int i = 1; i < n; i++){
        ll x = maxi[i+1];
        if(a[x] > a[i]){
            p1 = i;
            p2 = x;
            break;
        }
    }
    if(p1 && p2){
        swap(a[p1],a[p2]);
        for(int i = 1; i <= n; i++){
            cout << a[i] << " ";
        }
        cout << endl;
        return 0;
    }
    for(int i = 1; i < n; i++){
        ll x = maxi[i+1];
        if(a[x] == a[i]){
            p1 = i;
            p2 = x;
            break;
        }
    }
    if(p1 && p2){
        swap(a[p1],a[p2]);
        for(int i = 1; i <= n; i++){
            cout << a[i] << " ";
        }
        cout << endl;
        return 0;
    }
    /// uvek poslednje 2 onda
    swap(a[n-1],a[n]);
    for(int i = 1; i <= n; i++){
        cout << a[i] << " ";
    }
    cout << endl;
}