#include<stdio.h>
#include<math.h>
int find(int x){
	int sum=0,i,t=sqrt(x);
	for ( i=2; i<=t; i++)
		if (x%i==0) sum+=i+x/i;
	if (t*t==x) sum-=t;
	return sum;
}

int main(){
	int n,a,b,c;
	scanf("%d",&n);
	for ( a=2; a<=n; a++){
		b=find(a); c=find(b);
		if (a==c && a!=b && b<=n)
		 printf("%d %d\n",a,b);
	}
	return 0;
}
/**************************************************************
	Problem: 1140
	User: admin
	Language: C
	Result: Accepted
	Time:14 ms
	Memory:1144 kb
****************************************************************/