#include <stdio.h>
#include <stdlib.h>

void swap (int a[], int x, int y){
    int temp;
    temp=a[y];
    a[y]=a[x];
    a[x]=temp;
}

int main()
{
    int a[100000], max=0, ok=0, pozmax, pozmin, min=10, mini=0, maxi;
    long long int n, i;
    scanf ("%lld", &n);
    maxi=n-1;
    for (i=0; i<n; i++){
        scanf ("%d", &a[i]);
    }
    loop: for (i=mini; i<n; i++){
        if (a[i]>max){
            max=a[i];
            pozmax=i;
        }
    }
    if (pozmax==mini && pozmax!=maxi){
        mini++;
        max=0;
        goto loop;
    }
    else {
        for (i=0; i<n; i++){
            if (a[i]<max){ swap (a, i, pozmax);
            ok=1;
            break;
            }
        }
        if (ok==0) swap (a, pozmax-1, pozmax);
    }

    for (i=0; i<n; i++){
        printf ("%d ", a[i]);
    }
    return 0;
}