package com.njupt.acm;
import java.math.BigInteger;
import java.util.Scanner;
public class POJ_1405 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
BigInteger[] a = new BigInteger[19];
BigInteger one = new BigInteger("1");
a[0] = new BigInteger("2");
int i,j;
for(i = 1 ; i <= 18 ; ++i){
a[i] = new BigInteger("1");
}
//a[i] = a[0]*.....a[i-1] + 1
for(i = 1 ; i <= 18 ; ++i){
for(j = 0 ; j < i ; ++j){
a[i] = a[i].multiply(a[j]);
}
a[i] = a[i].add(one);//add()、multiply()方法并不改变对象本身!!!
}
while(scanner.hasNext()){
int n = scanner.nextInt();
for(i = 0 ; i < n ; ++i){
System.out.println(a[i]);
}
}
}
}