#include<bits/stdc++.h>
#define MAX 1000100
using namespace std;
bool isprime[MAX];
int prime[MAX];
int N,n=0,sum =0;
void findprime()
{
memset(isprime,true,sizeof(isprime));
for(int i =2;;i++)
{
if(isprime[i])
{
sum+=i;
if(sum<=N)
{
prime[++n] = i;
}
else
{
break;
}
}
for(int j =1;j<=n;j++)
{
isprime[i*prime[j]] = false;
if(i%prime[j] == 0)
break;
}
}
}
int main()
{
cin>>N;
findprime();
for(int i =1;i<=n;i++)
{
cout<<prime[i]<<endl;
}
cout<<n<<endl;
return 0;
}