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

int main()
{
    long int n,i,b,j, max, ss;
    scanf("%ld", &n);
    long int niz1[n], niz2[n];
    for(i=0;i<n;i++){
        scanf("%ld", &niz1[i]);
        niz2[i]=niz1[i];
    }
    for(int i=1;i<n;i++){
        int b=niz2[i];
        for(j=i-1;j>=0;j--){
            if(niz2[j]<b){
                niz2[j+1]=niz2[j];
            }
            else break;
        }
        niz2[j+1]=b;
    }
    int a = 1;
    for(i=0;i<n;i++){
        if(niz2[i]!=niz1[i]){
            a=2;
        }
    }
    if(a==1){
        max=niz1[1];
        for(i=2;i<n;i++){
            if(niz1[i]>max){
                max=niz1[i];
            }
        }
        ss=niz1[0];
        niz1[0]=max;
        for(i=1;i<n;i++){
            if(niz1[i]==max){
                niz1[i]=ss;
                i=n;
            }
        }
    }else{
        for(i=0;i<n;i++){
            if(niz1[i]!=niz2[i]){
                b=niz1[i];
                niz1[i]=niz2[i];
                for(j=i+1;j<n;j++){
                    if(niz1[j]==niz2[i]){
                        niz1[j]=b;
                        j=n;
                        i=n;
                    }
                }
            }
    }
    }
    for(i=0;i<n;i++){
       printf("%ld ", niz1[i]);
    }
    return 0;
}