def prime(n):
for i in range(2,int(n**(1/2))+1):
if n % i == 0:
return False
return True
x = int(input())
dict =[0]*(x+1)
for k in range(2,x+1):
i = 2
while k != 1:
if prime(i) and k % i == 0:
dict[i] += 1
k = k / i
else:
i+=1
for i in range(x+1):
if dict[i] != 0:
print(f'{i} {dict[i]}')