#include <bits/stdc++.h>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);

    int32_t N;

    cin >> N;

    int32_t A_orig[N], A[N];

    for(int32_t i = 0; i < N; i++){
        cin >> A_orig[i];
    }

    for(int32_t i = 0;i < N; i++){
        A[i] = A_orig[i];
    }

    sort(A, A + N, greater<int32_t>());

    for(int i = 0; i < N; i++){
        if(A[i] > A_orig[i]){
            for(int j = N - 1; j >= 0; j--){
                if(A[i] == A_orig[j]){
                    swap(A_orig[i], A_orig[j]);
                    break;
                }
            }
            for(int32_t j = 0; j < N; j++){
                cout << A_orig[j] << " ";
            }
            return 0;
        }
    }

    for(int32_t i = 1; i < N; i++){
        if(A_orig[i] == A_orig[i - 1]){
            for(int32_t j = 0; j < N; j++){
                cout << A_orig[j] << " ";
            }
            return 0;
        }
    }

    swap(A_orig[N - 1], A_orig[N - 2]);

    for(int32_t j = 0; j < N; j++){
        cout << A_orig[j] << " ";
    }
}