#include <iostream>
#include <bits/stdc++.h>


using namespace std;
int niz[1000000];
int niz2[1000000];
int main()
{
    int n,z,y1,y2,x2,x3;
    x3=0;
    cin>>n;
    for (int i=0; i<n; i++)
    {
        int a;
        cin>>a;
        niz[i]=a;
        niz2[i]=a;
    }
    if (n==2)
    {
        y1=niz[0];
        niz[0]=niz[1];
        niz[1]=y1;
        for (int c=0; c<n; c++)
        {
            cout<<niz[c]<<' ';
        }
        return 0;
    }
    else
    {
        sort(niz2,niz2+n);
        for (int x=n; x>0; x--)
        {
            y2=niz2[x];
            for (int x1=n; x1>0; x1--)
            {
                if (niz[x1]==y2)
                {
                    for (int y=0; y<n; y++)
                    {

                        if (y<x1 && niz[y]<niz[x1])
                        {
                            z=niz[x1];
                            niz[x1]=niz[y];
                            niz[y]=z;
                            for (int c=0; c<n; c++)
                            {
                                cout<<niz[c]<<' ';

                            }
                            return 0;
                        }
                        else
                        {

                        }

                    }
                }
            }
        }
        for (int q=0; q<n; q++)
        {
            if (niz[q]==niz[q+1])
            {
                x3++;
            }
        }

        if(x3==0)
        {
            x2=niz[n-1];
            niz[n-1]=niz[n-2];
            niz[n-2]=x2;
        }
    }
    for (int c=0; c<n; c++)
    {
        cout<<niz[c]<<' ';
    }

}