Laika has decided to make a gift for her good friend Azusa, the witch of the highlands. For reasons we do not know, this gift will be a finite set of positive integers. If that were all, it would be a simple matter to choose a gift, but several factors complicate this.

First of all, Laika’s rival, Flatorte, has mysterious magical powers: given two integers $x$ and $y$ she can create the greatest common divisor of $x$ and $y$ (i.e. $gcd(x, y)$). If Laika gave a gift that Flatorte could immediately add to (i.e. if she gifted a set $A$ for which $x, y \in A$, yet $gcd(x, y) \notin A$), then Flatorte would immediately tease her rival. Therefore, Laika’s gift must not be improvable using Flatorte’s powers: if she gifts $A$ then for all $x, y \in A$ it must be the case that $gcd(x, y) \in A$.

Secondly, Laika wants the gift to have a certain special significance. It has been $K$ days since she met Azusa, and she wants the gift to show this fact. Therefore, she has arranged all of the sets that satisfy the condition explained above in Laikan order (explained below), getting an infinite sequence of finite sets $S_0, S_1, \dots$. She wants to select and gift set $S_K$. Can you help her do so?

**Laikan order.** Take two sets $A$ and $B$. Then, $A$ comes before $B$ in Laikan order if and only if $maxA < maxB$, or $maxA = maxB$ and $A - \{maxA\}$ comes before $B - \{maxB\}$ in Laikan order. For the purposes of this definition, take $max \ ∅ = −∞$. Note that this is always well defined for finite sets of positive integers.

## Input data

The first line of the input contains a single integer $T$, the number of test cases in this file. The next $T$ lines each contain a value of $K$ for which we want to know $S_K$.

## Output data

For each of the $T$ values of $K$, output the set $S_K$. To output a set, output a line that begins with the number of elements it has, and the continues with its elements, in increasing order.

## Restrictions

- $1 \leq T \leq 5$

# | Points | Restrictions |
---|---|---|

1 | 8 | $0 \leq K \leq 100$ |

2 | 21 | $0 \leq K \leq 1 \ 000 \ 000$ |

3 | 41 | $0 \leq K \leq 500 \ 000 \ 000$ |

4 | 14 | $0 \leq K \leq 1 \ 000 \ 000 \ 000$ |

5 | 16 | $0 \leq K \leq 1 \ 500 \ 000 \ 000$ |

## Example 1

`stdin`

```
5
0
1
2
3
4
```

`stdout`

```
0
1 1
1 2
2 1 2
1 3
```

## Example 2

`stdin`

```
4
5
6
100
1000
```

`stdout`

```
2 1 3
3 1 2 3
5 1 2 3 7 8
7 1 2 3 5 10 11 12
```

### Explanations

Note that $S_0 = ∅, S_1 = \{1\}, S_2 = \{2\}, S_3 = \{1, 2\}, S_4 = \{3\}, S_5 = \{1, 3\}, S_6 = \{1, 2, 3\}, S_{100} = \{1, 2, 3, 7, 8\}, S_{1 \ 000} = \{1, 2, 3, 5, 10, 11, 12\}$. These are precisely the sets outputted in the examples (together with their sizes). Observe that $S_6 \neq \{2, 3\}$ — this is because $2, 3 \in \{2, 3\}$, yet $gcd(2, 3) = 1 \notin \{2, 3\}$.