Grandpa Frost is organizing a football tournament for the elves.
He has 2^n elves, each uniquely numbered from to 2^n. In any match between two elves, the elf with the higher number always wins.
The tournament follows these rules: All elves line up in a row. The first elf competes against the second, the third against the fourth, and so on. In each pair, the losing elf is eliminated, and the winners form a new row by closing ranks. For instance, if the row is (4,2,3,1), elves numbered and are eliminated, leaving . This process repeats times until only one elf remains, who is declared the winner.
You are a fan of the elf numbered , who is celebrating their th birthday today. As a gift, you need to arrange the initial row of elves so that the elf numbered wins exactly matches during the tournament.
The first line contains three integers , , and (1\le n\le 15, 1\le k\le 2^n, 0\le m\le n).
If no such initial arrangement exists, output a single integer .
Otherwise, output 2^n numbers — the numbers of the elves in the desired initial row.
If multiple valid arrangements exist, you may output any one of them.
Exemple 1
Exemple 2
Exemple 3
In the first example, the sequence of rows is: (1,4,2,3) .
In the second example, the sequence of rows is: (4,1,8,2,3,5,6,7) (4,8,5,7) .