#include<bits/stdc++.h>

using namespace std;

int main(){
	long long N,temp,I;
	vector<long long> niz;
	cin>>N;
	for(long long i=0;i<N;i++){//ubacujemo originalan raspored u vektor
		cin>>temp;
		niz.push_back(temp);
	}
	for(long long i=0;i<N;i++){
		temp=*max_element(niz.begin()+i,niz.end());
		I=max_element(niz.begin()+i,niz.end())-niz.begin();
		if(niz[i]!=temp){
			niz[I]=niz[i];
			niz[i]=temp;
			for(long long i=0;i<N;i++){
				cout<<niz[i]<<" ";
			}
			return 1;
		}
	}
	//niz je vec u najboljem stanju,radimo zamenu koja ce ga najmanje pokvariti
	temp=niz[N-1];
	niz[N-1]=niz[N-2];
	niz[N-2]=temp;
	for(long long i=0;i<N;i++){
		cout<<niz[i]<<" ";
	}
	return 1;
}