#include <bits/stdc++.h> 

using namespace std;
string najveci(string n)
{
	int mcifra = -1,mindex = -1,levi=-1,desni=-1; 
	for (int i = n.size() - 1; i >= 0; i--)
	{ 
        if (n[i] > mcifra) 
        { 
            mcifra = n[i]; 
            mindex = i; 
            continue; 
        } 
        if (n[i] < mcifra) 
        { 
            levi = i; 
            desni = mindex; 
        }        
    } 
  	if (levi == -1) 
        return n;   
    swap(n[levi], n[desni]);  
    return n;    
}
 

int main()
{
	int n;
	cin>>n;
	string s="";
	for(int i=0;i<n;i++)
	{
		int t;
		cin>>t;
		s+=t+48;
	}
    string novi=najveci(s);
    if(novi.compare(s)==0)
    {
    	if(novi.size()<10)
    	{
    		int cifre[10];
    		bool duplo=false;
    		for(int i=0;i<novi.size();i++)
    		{
    			cifre[novi[i]-'0']++;
    			if(cifre[novi[i]-'0']>=2)
    				duplo=true;
			}
			if(!duplo)
				swap(novi[novi.size()-1], novi[novi.size()-2]); 
		}
    	  
        
    }
    for(int i=0;i<novi.size()-1;i++)
    {
        cout<<novi[i]<<" ";
    }
    cout<<novi[novi.size()-1];
    return 0;
    
}