#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
****************************************************************/