#M16. Prefix

Prefix

Description

Arahc 非常喜欢前缀有关的东西,例如前缀和和前缀积。Arahc 会不断询问你问题,一共 qq 个问题。每个问题为如下两种问题的一种:

  1. 给定 nn,能否构造一个大小为 nn 的排列,使得其前缀和 modn\bmod n 的值互不相同?
  2. 给定 nn,能否构造一个大小为 nn 的排列,使得其前缀积 modn\bmod n 的值互不相同?

你需要回答 Arahc 的问题,且若你的回答为是,给出相应的排列。

Format

Input

第一行一个正整数 q(1q105)q\,(1\leq q\leq 10^5) 表示询问组数。

随后 qq 行,每行两个正整数 type,n(type{1,2},1n105)type,n\,(type\in\{1,2\},1\leq n\leq 10^5),表示问题的种类和给出的 nn 的值。

保证所有询问的 nn 的总和满足 1n1061\leq\sum n\leq 10^6

Output

对于每组询问,输出一行:

  • 若不能,仅输出一个数 1-1
  • 若能,输出 nn 个数,表示你构造的排列。你应当保证你输出的数为 [1,n][1,n] 的正整数且两两不同。

Samples

2
1 8
2 8
8 7 6 5 4 3 2 1
-1

Limitation

2s, 256MiB.

所有数据属于一个·子任务。