#include<stdio.h>
#include<stdlib.h>
int part(int a[],int start,int end)
{
	int pivot=a[end];
	int pi=start;
    int i,temp;
	for(i=start;i<end;i++)
	    if(a[i]<=pivot)	
	    {
	        temp=a[i];
	    	a[i]=a[pi];
	    	a[pi]=temp;
	    	pi++;
		}
	temp=a[pi];
	a[pi]=a[end];
	a[end]=temp;
	return pi;	
	
}
void QuickSort(int a[],int start,int end)
{   if(start<end)
    {
	int pi=part(a,start,end);
	QuickSort(a,start,pi-1);
	QuickSort(a,pi+1,end);
}}
int find(int a[],int val,int n)
{
	int i;
	for(i=n-1;i>0;i--)
	if(a[i]==val)
	return i;
}
int main()
{
	int n,i,temp;
	scanf("%d",&n);
	int a[n],b[n];
	for(i=0;i<n;i++)
	{
	   scanf("%d",&a[i]);
	   b[i]=a[i];
	}
	int z=0;
	QuickSort(b,0,n-1);



	for(i=0;i<n &&z==0;i++)
	if(a[i]!=b[n-1-i])
    {
		temp=a[i];
		a[i]=b[n-1-i];
		int x=find(a,b[n-i-1],n);
		a[x]=temp;
		z=1;
	}
	if(z==0)
	{
		temp=a[n-2];
		a[n-2]=a[n-1];
		a[n-1]=temp;
	}
	for(i=0;i<n;i++)
	printf("%d ",a[i]);

}