#include <bits/stdc++.h>

using namespace std;

struct Knjiga
{
    int ind;
    int c;
};

long long n;
Knjiga arr[1000005];
Knjiga s[1000005];
int cifre[10];



int Sort()  
{  
  
    memset(cifre,0,sizeof(cifre));
    for(int i = 0; i<n; i++)  
        cifre[arr[i].c]++;  
    
    for(int i=8;i>=0;i--)
    {
        cifre[i]+=cifre[i+1];
    }
  
    for (int i = n-1; i>=0; --i)  
    {  
        s[cifre[arr[i].c]-1] = arr[i];  
        cifre[arr[i].c]--;  
    }  
    
    return 0;
}  

int main() {
    
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cerr.tie(0);
    
    cin>>n;
    
    for(int i=0;i<n;i++)
    {
        cin>>arr[i].c;
        arr[i].ind=i;
    }
    
    if(n==2)
    {
        cout<<arr[1].c<<" "<<arr[0].c;
    }
    else
    {
        Sort();
        
        bool f=false;
        int j=0;
        int m=0;
        Knjiga t;
        
        while(!f&&j<n-2)
        {
            if(arr[j].ind==s[j].ind)
                j++;
            else
            {
                //na j mesto upada naredni
                m=j;
                while(m+1<n&&s[m+1].c==s[j].c)
                    m++;
                
                t=arr[j];
                arr[j]=s[m];
                arr[s[m].ind]=t;
                f=true;
            }
        }
        if(j==n-2)
        {
            t=arr[n-2];
            arr[n-2]=arr[n-1];
            arr[n-1]=t;
        }
        
    
        for(int i=0;i<n;i++)
        {
            cout<<arr[i].c<<" ";
        }
    }
    
    
    return 0;
}