#include <bits/stdc++.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int brojevi[100100];
int najdaljapozicija[20];
void kopiraj(int* a)
{
	a++;
	cout << a<<endl;
}
void promeni(int &a, int &b)
{
	int z=a;
	a=b;
	b=z;
}
int indeksotpozadi(int max, int broj)
{
	for(int i=broj-1;i>=0;i--)
	{
		if(brojevi[i]==max) 
		{
			
			return i;
			
		}
	
	}
	return 0;
	
}
/*int indeksotpozadi(int &max, int broj, int j)
{
	
	int pekam;
	for(int i=broj-1;i>=0;i--)
	{
		if(brojevi[i]==max) {pekam=i; break;}
	}
	
	if(pekam==j) 
	{
		max=0;
		for(int i=j=j+1;i<broj;i++)
		{
			if(brojevi[i]>max) max=brojevi[i];
		}
	
		return indeksotpozadi(max,broj,j);
	}
	return pekam;
	return 0;
	*/
//}
int main(int argc, char** argv) {
	int broj=0;
	int max=0;
	scanf("%d", &broj);
	for(int i=0; i<broj; i++)
	{
		scanf("%d", &brojevi[i]);
		najdaljapozicija[brojevi[i]]=i;
		if(max<brojevi[i]) max=brojevi[i];
	}
	int zadnjiindeks=indeksotpozadi(max,broj);
	int j=0;
	while(brojevi[j]>=max)
	{
		j++;
	}
	promeni(brojevi[zadnjiindeks], brojevi[j]);
	for(int i=0;i<broj;i++)
	{
		if(i==0) printf("%d", brojevi[i]);
		else printf(" %d", brojevi[i]);
	}
	
	return 0;
}