#include<stdio.h>
int zs(int x){
if(x==1)return 0;
if(x==2)return 1;
for(int i=2;i*i<=x;i++)
if(x%i==0)return 0;
return 1;
}void sprime(int m,int n){
if(!n){
printf("%d\n",m);
return;
}m*=10;
if(zs(m+1))sprime(m+1,n-1);
if(zs(m+3))sprime(m+3,n-1);
if(zs(m+7))sprime(m+7,n-1);
if(zs(m+9))sprime(m+9,n-1);
}int main(){
int n;
scanf("%d",&n);
if(n==1)printf("2\n3\n5\n7\n");
else{
n--;
sprime(2,n);
sprime(3,n);
sprime(5,n);
sprime(7,n);
}return 0;
}
int zs(int x){
if(x==1)return 0;
if(x==2)return 1;
for(int i=2;i*i<=x;i++)
if(x%i==0)return 0;
return 1;
}void sprime(int m,int n){
if(!n){
printf("%d\n",m);
return;
}m*=10;
if(zs(m+1))sprime(m+1,n-1);
if(zs(m+3))sprime(m+3,n-1);
if(zs(m+7))sprime(m+7,n-1);
if(zs(m+9))sprime(m+9,n-1);
}int main(){
int n;
scanf("%d",&n);
if(n==1)printf("2\n3\n5\n7\n");
else{
n--;
sprime(2,n);
sprime(3,n);
sprime(5,n);
sprime(7,n);
}return 0;
}