#include<fstream>
#include<cmath>
#include<string.h>
#include<algorithm>
using namespace std;
int gcd(int a,int b)
{
	return(b==0)?a:gcd(b,a%b);
}
int prime(int a)
{
	int ok=1;
	int i;
	for(i=0;i*i<a;i++)
	{
		if(a%i==0)
		{
			ok=0;
			break;
		}
	}
	return ok;
}
string bin(int a)
{
	string s="";
	int i;
	while(a!=0)
	{
		char t;
		t=char((a%2+1)%2)-48;
		s+=t;
		a/=2;
	}
	int u=s.length();
	string t;
	for(i=0;i<u;i++)
	{
		t[i]=s[i];
	}
	return t;
}
int hh(int a)
{
	int ok=1;
	if(prime(a)==1) ok=0;
	else
	{
		int ck=a;
		int i;
		for(i=1;i<a;i++)
		{
			if(a%i==0) ck-=a;
		} 
		if(ck!=0) ok=0;
	}
}
int main()
{
	ifstream f1("dayso.inp");
	ofstream f2("NTCN.OUT");
	int i;
	int n;
	f1>>n;
	int f[n];
	for(i=0;i<n;i++)
	{
		f1>>f[i];
	}
	//sort(f,f+n);
	for(i=0;i<n-1;i++)
	{
		for(int j=i+1;j<n;j++)
		{
			if(gcd(f[i],f[j])==1) f2<<f[i]<<' '<<f[j]<<endl;
		}
	}
	f1.close();
	f2.close();
	return 0;
}
