#include <bits/stdc++.h>
using namespace std;
int n,niz[1000009];

bool svap (int niz[1000009]){

    for (int i=1;i<=n/2+n%2;i++){

        for (int j=n;j>n/2;j--){

            if (niz[j]>niz[i]){
                    ///cout<<"niz[i],niz[j] "<<niz[i]<<" "<<niz[j]<<" "<<endl;
                swap(niz[i],niz[j]);
               /// cout<<"niz[i],niz[j] "<<niz[i]<<" "<<niz[j]<<" "<<endl;
                return true;

            }

        }

    }
return false;
}

int main () {
    cin>>n;


    for (int i=1;i<=n;i++){
        cin>>niz[i];
    }


    if (n==2){
        cout<<niz[2]<<" "<<niz[1]<<endl;
        return 0;
    }


if (svap(niz)==true){

        for (int i=1;i<=n;i++){
        cout<<niz[i]<<endl;
    }
    return 0;

}

else {
    swap(niz[n],niz[n-1]);

        for (int i=1;i<=n;i++){
        cout<<niz[i]<<endl;
    }
    return 0;
}



//
//        for (int i=n;i>1;i--){
//            if (niz[i]>niz[1]){
//                swap(niz[i],niz[1]);
//                b=true;
//                break;
//            }
//        }
//        if (b==false){
//
//        }
//

return 0;
}