Ponyville is on its annual math festival! The ponies who are able to overcome this problem would be honored as $$$\text{Super Gray Pony}$$$. Get yourself prepared for the problem and try your best!
In this problem, the $$$i$$$-order Gray Code is defined recursively as $$$a^{(i)}$$$ - an array of binary numbers with $$$2^i$$$ elements numbered from $$$0$$$ to $$$2^i-1$$$. Note that in this problem leading zeros are added to make each element a strictly $$$i$$$-bit binary number. The specific rules are as follows:
For example:
Given $$$S$$$ and $$$k$$$, $$$S_k$$$ is defined as:
$$$$$$ S_k=\underbrace{a^{(n)}[a^{(n)}[\ldots a^{(n)}}_{k \times a^{(n)}}[S]\ldots ]] $$$$$$
Now given $$$S$$$ and $$$k$$$, you need to calculate the exact value of $$$S_k$$$. In this problem, $$$S$$$ is given in the form of an $$$n$$$-bit binary number, possibly with leading zeros.
The first line contains two integers $$$n,k$$$ ($$$1\le n\le 3\times 10^6,1\le k\le 10^9$$$).
The second line contains a binary number $$$S$$$ of length $$$n$$$. The highest bit is on the left and the lowest bit is on the right.
Output $$$S_k$$$ in the form of an $$$n$$$-bit binary number in a single line, with its highest bit on the left and the lowest bit on the right.
3 5 011
010
$$$a^{(3)}=[000, 001, 011, 010, 110, 111, 101, 100]$$$
$$$S_1=a^{(3)}[(011)_2]=a^{(3)}[3]=010$$$
$$$S_2=a^{(3)}[(010)_2]=a^{(3)}[2]=011$$$
$$$S_3=a^{(3)}[(011)_2]=a^{(3)}[3]=010$$$
$$$S_4=a^{(3)}[(010)_2]=a^{(3)}[2]=011$$$
$$$S_5=a^{(3)}[(011)_2]=a^{(3)}[3]=010$$$