#include <stdio.h>

int main()
{
	int N, M = 2;
	scanf("%d", &N);
	int a[N];
	for(int i=0;i<N;i++) {
		scanf("%d", &a[i]);
		if(a[i]>M) M = a[i];
	}
	
	int primeNum[1000],i,j,len=0;
	for(i=2;i<M;i++)
	{
		for(int j=0;j<len;j++)
		{
			if(i%primeNum[j]==0) break;
		}
		if(j==len) a[len++] = i;
	}
	
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<N-i-1;j++)
		{
			int FirstIsPrime = 0;
			int SecondIsPrime = 0;
			
			for(int k=0;k<len;k++)
			{
				if(a[j]==primeNum[k]) FirstIsPrime = 1;
			}
			
			for(int k=0;k<len;k++)
			{
				if(a[j+1]==primeNum[k]) SecondIsPrime = 1;
			}
			
			if(FirstIsPrime==0 && SecondIsPrime==1)
			{
				int temp = a[j];
				a[j] = a[j+1];
				a[j+1] = temp;
			}
			else if(FirstIsPrime==1 && SecondIsPrime==1 && a[j]<a[j+1])
			{
				int temp = a[j];
				a[j] = a[j+1];
				a[j+1] = temp;
			}
			else if(FirstIsPrime==0 && SecondIsPrime==0 && a[j]>a[j+1])
			{
				int temp = a[j];
				a[j] = a[j+1];
				a[j+1] = temp;
			}
		}
	}
}