G. Красивое дерево
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Дерево — это связный граф без циклов.

Дерево называется красивым, если сумма произведений меток вершин для всех его рёбер является совершенным квадратом.

Более формально, пусть $$$E$$$ — множество рёбер в дереве. Дерево называется красивым, если значение $$$$$$S = \sum_{\{u, v\} \in E} (u \cdot v)$$$$$$ является совершенным квадратом. То есть существует такое целое число $$$x$$$, что $$$S = x^2$$$.

Вам дано целое число $$$n$$$. Ваша задача — построить красивое дерево с $$$n$$$ вершинами или сообщить, что такое дерево не существует.

Входные данные

Первая строка входных данных содержит одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.

Каждый набор входных данных содержит одно целое число $$$n$$$ ($$$2 \le n \le 2\cdot10^5$$$).

Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превышает $$$2\cdot10^5$$$.

Выходные данные

Для каждого набора входных данных, если красивое дерево с $$$n$$$ вершинами не существует, выведите $$$-1$$$.

В противном случае выведите $$$n-1$$$ строк, обозначающих рёбра красивого дерева с $$$n$$$ вершинами. Каждая строка должна содержать два целых числа $$$u,v$$$ ($$$1 \le u,v \le n$$$), представляющих ребро.

Вершины можно выводить в любом порядке в пределах одного ребра, а рёбра можно выводить в любом порядке.

Пример
Входные данные
3
2
3
4
Выходные данные
-1
1 3
2 3
1 2
3 1
4 1
Примечание

Пример 1: Красивое дерево с $$$2$$$ вершинами не существует. Поэтому ответ $$$-1$$$.

Пример 2:

$$$S = (2\cdot3) + (1\cdot3) = 9 = (3)^2$$$

Пример 3:

$$$S = (2\cdot1) + (3\cdot1) + (4\cdot1) = 9 = (3)^2$$$