若赠魂灵我胸膛
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
Special Judge, 64bit IO Format: %lld

题目描述

QWQ

构造一棵有 n 个节点的树,使得序号为 1 的节点到剩余所有节点的距离之和为
\frac{(\sqrt{n - 1} + 1) \times (n - 1)}{2}

输入描述:

第一行一个整数 T (1 \leq T \leq 10^4) ,表示测试点的数量。

每个测试点输入一个整数 n (1 \leq n \leq 10^6),表示树的节点个数。

保证 1 \leq \sum n \leq 10^6.

输出描述:

对于每个测试点:

输出一个整数 k 表示边数,输出 k 行,每行两个整数,表示一条边;

如果无法构造出符合题意的树,输出 -1
示例1

输入

复制
1
2

输出

复制
1
1 2

备注:

QWQ