#include<iostream>
#include<vector>
#include<iterator>
using namespace std;
int main()
{
    vector<int> a;
    vector<int>::iterator i;
    int n,b,maks,br,k=1,l=-1,d,maksi;
    cin>>n;
    for(d=0;d<n;d++){
        cin>>b;
        a.push_back(b);
    }
    k=n-1;
    maks=-1;
    maksi=-1;
    for(i=a.end()-1;i>=a.begin();i--)
    {
        if(maks<*i)
        {
            maks=*i;
            maksi=k;
        }
        if (maks>*i)
        {
            d=maksi;
            l=k;
        }
        k--;
    }
    if (n==2 or l==-1)
    {
        maks=*(a.end()-1);
        *(a.end()-1)=*(a.end()-2);
        *(a.end()-2)=maks;
    }
    else
    {
    maks=*(a.begin()+l);
    *(a.begin()+l)=*(a.begin()+d);
    *(a.begin()+d)=maks;
    }
    for(i=a.begin();i<a.end();i++)
        cout<<*i<<' ';
}