P3612 [USACO17JAN] Secret Cow Code S

Description

The cows are experimenting with secret codes, and have devised a method for creating an infinite-length string to be used as part of one of their codes. Given a string $s$, let $F(s)$ be $s$ followed by $s$ "rotated" one character to the right (in a right rotation, the last character of $s$ rotates around and becomes the new first character). Given an initial string $s$, the cows build their infinite-length code string by repeatedly applying $F$; each step therefore doubles the length of the current string. Given the initial string and an index $N$, please help the cows compute the character at the $N$th position within the infinite code string.

Input Format

The input consists of a single line containing a string followed by $N$. The string consists of at most 30 uppercase characters, and $N \leq 10^{18}$. Note that $N$ may be too large to fit into a standard 32-bit integer, so you may want to use a 64-bit integer type (e.g., a "long long" in C/C++).

Output Format

Please output the $N$th character of the infinite code built from the initial string. The first character is $N=1$.

Explanation/Hint

In this example, the initial string COW expands as follows: COW -> COWWCO -> COWWCOOCOWWC 12345678