Meeting Table

Limits 1s, 512 MB

Let there be three groups of people waiting to attend a meeting. There are $\textbf N$ people in each group. There is a round table in the meeting room. The coordinator wants them to sit in a way around the table that there will be no two-person of the same group sitting adjacently. He decides to make such an arrangement step by step.

When a group enters the room and sits they will not alter the order of sitting arrangement of previous group.

You will be given the number of people in each group. Your task is to calculate how many ways they can sit around the table. Two ways are considered same if rotating one arrangement any number of times can form the other arrangement.

Input

First line of the input file will contain a single positive integer $\textbf{T}$ $(1\leq T \leq 10^{6})$ which denotes the number of test cases.
Each of the next $\textbf T$ lines will contain one integer $\textbf N$ $(1\leq N \leq 10^{7})$ where
$\textbf N$ = Number of people in each group.

Output

For each test case print the number of ways they can sit in a line$\mod (10^{9}+7)$

Sample

InputOutput
2
1
2
2
24