#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 1000005;
int a[maxn];
ll cnt[10], b[10];
int main()
{
	ios::sync_with_stdio(0);cout.tie(0);cin.tie(0);
	ll n ,broj=-1, nadji=-1;
	cin >> n;
	bool ok=false;
	for(ll i=0;i<n;i++){
		cin >> a[i];
		cnt[a[i]]++;
		b[a[i]]++;
	}
	for(ll i=0;i<n;i++){
		cnt[a[i]]--;
		int m=0;
		bool pom=false;
		for(int j=a[i]+1;j<10;j++){
			if(cnt[j]>0){
				m=max(m,j);
				pom=true;
			}
		}
		if(pom){
			ok=true;
			broj=a[i];
			nadji=m;
			a[i]=m;
			break;
		}
	}
	if(!ok){
		bool stanoje=false;
		for(int i=0;i<10;i++){
			if(b[i]>1){
				stanoje=true;
				break;
			}
		}
		if(!stanoje){
			swap(a[n-1],a[n-2]);
		}
	}
	else{
		for(ll i=n-1;i>=0;i--){
			if(a[i] == nadji){
				a[i]=broj;
				break;
			}
		}
	}
	for(ll i=0;i<n;i++)cout << a[i] << " ";
	cout << endl;
	return 0;
}