Elizur has an empty n×m grid and he wants to use some 1×2 and 2×1 dominoes to cover the entire grid. In the grid, each domino ought to cover exactly two adjacent squares and each square ought to be covered by exactly one domino, where two squares are adjacent if and only if they share a common side.
Obviously, he can achieve that if and only if at least one of n and m is even. In case that both n and m are odd, there is always a square that must be left empty. Hence, he intends to know in how many ways he can cover the entire grid. Two ways are considered different if and only if there exist two dominoes, each selected from one way, satisfying that they cover exactly one square at the same position.
Can you help him determine the answer? The answer may be exceedingly large, so he only requests you to tell him the answer modulo a prime numberp.
Input
The first line contains a single integer T (1≤T≤20000), indicating the number of questions.
In the next T lines, each line contains three integers n (1≤n≤35), m (1≤m≤1018) and p (2≤p≤230), representing a question he wants to ask you.
It is guaranteed that no more than 1000 cases satisfy n>5 or m>109.
Output
For each question, output a single integer in one line, denoting the answer modulo p.