Mike has got a huge array $b$, and he is told that the array is encrypted.
The array is encrypted as follows.
Let $a_i(0 \leq i < n)$ be the $i$-th number of this original array.
Let $b_i(0 \leq i < n)$ be the $i$-th number of this encrypted array.
Let $n$ be a power of $2$, which means $n = 2^k$.
The $b_i$ is calculated as following.
$$b_i = \sum_{0 \leq j < n} f((i \texttt{ or } j) \texttt{ xor } i) a_j$$
$f(x)$ means, if the number of $1$ in the binary of $x$ is even, it will return $1$, otherwise $0$.
Mike want to inverse the procedure of encryption.
Please help him recover the array $a$ with the array $b$.