#include <bits/stdc++.h>
using namespace std;
bool edg[100000009];
int primes[100000009],pp=0;
int main()
{
int N;
cin>>N;
int cnt=0;
memset(edg,1,sizeof(edg));
for(int i=2;i<=N;i++)
{
if(edg[i])
{
primes[pp++]=i;
cnt++;
}
for(int j=0;j<=pp&&primes[j]*i<=N;j++)
{
edg[primes[j]*i]=0;
printf("%d %d %d\n",primes[j],j,primes[0]);
if(i%primes[j]==0)break;
}
}
printf("%d",cnt);
}