// 先按4个柱移走,然后就剩下3个柱了
import java.util.*;
public class Main{
void run(){
three.add(0);
for (int i = 1 ; i <= 12 ; i++) three.add(2 * three.get(three.size()-1) + 1);
four.add(0);
four.add(1);
for (int i = 2 ; i <= 12 ; i++){
int res = Integer.MAX_VALUE;
for (int j = 1 ; j < i ; j++) res = Math.min(res, four.get(j) *2 + three.get(i-j));
four.add(res);
}
for (int i = 1 ; i <=12 ; i++) System.out.println(four.get(i));
}
private List<Integer> three = new ArrayList<>();
private List<Integer> four = new ArrayList<>();
public static void main(String[] args) throws Exception {new Main().run();}
}