#include <stdio.h>
#include <stdlib.h>
#include<iostream>
using namespace std;
int n, db[1000000], m=-1 ,mx=0, p1, p2, bl, much[10];
int main()
{
    scanf("%d", &n);
    scanf("%d", &db[0]);
    m=db[0];
    much[m]++;
    for(int i=1; i<n;i++){
        scanf("%d", &db[i]);
        if(!bl){
            much[db[i]]++;
            if(much[db[i]]==2)bl=true;
        }


        if(db[i]>m){
            if(db[i]>=mx){
                mx=db[i];
                p2=i;
            }

        }else{
            m=db[i];
        }

    }
    if(p2!=0){
        for(int i=0; i<n;i++){
            if(mx>db[i]){
                printf("%d ", mx);
                m=db[i];
                mx=-1;
            }else if(i==p2){
                printf("%d ", m);
            }else{
                printf("%d ", db[i]);
            }

        }
    }else if(bl){
        for(int i=0; i<n;i++){
            printf("%d ", db[i]);
        }
    }else{
        for(int i=0; i<n-2;i++){
            printf("%d ", db[i]);
        }
        printf("%d ", db[n-1]);
        printf("%d ", db[n-2]);

    }
}