As your startup's new product, you are planning to build warp gates that allow travel between all planets.
There are $N$ planets, numbered $0$ through $N-1$, where there is an integer $n$ such that $N = 2^n$. To allow fast travel between all these planets, you want to make $N - 1$ warp gates, each of which allows instant travel between two planets. However, for some pairs of planets that are incompatible with each other, you cannot make a warp gate between them.
More specifically, such pairs of planets incompatible with each other are represented by a sequence $A = (A_1, A_2, \dots, A_M)$. If and only if there is an integer $i$ such that $a\ \mathrm{xor}\ b = A_i$, you cannot make a warp gate between Planet $a$ and Planet $b$.
Determine whether it is possible to make a network of warp gates allowing travel between every two planets. If it is possible, find one such way to make $N - 1$ warp gates.
What is $\mathrm{xor}$?The bitwise $\mathrm{xor}$ of integers $a$ and $b$, $a\ \mathrm{xor}\ b$, is defined as follows:
* When $a\ \mathrm{xor}\ b$ is written in base two, the digit in the $2^k$'s place ($k \geq 0$) is $1$ if exactly one of $a$ and $b$ is $1$, and $0$ otherwise.
For example, we have $3\ \mathrm{xor}\ 5 = 6$ (in base two: $011\ \mathrm{xor}\ 101 = 110$).
## Constraints
* All values in input are integers.
* There exists an integer $n$ such that $1 ≤ n ≤ 18$ and $N = 2^n$.
* $0 ≤ M ≤ N - 1$
* $0 < A_1 < A_2 < \dots < A_M < N$
## Input
Input is given from Standard Input in the following format:
$N$ $M$
$A_1$ $A_2$ $\cdots$ $A_M$
[samples]