В Закулисье обнаружилась странная машина, которая должна сортировать числа. Однако из-за сбоя она больше не умеет менять элементы местами.
Вам дан массив $$$a$$$ из $$$n$$$ целых чисел. Машина умеет выполнять только одну операцию:
Выбрать два различных индекса $$$i$$$ и $$$j$$$ ($$$1 \le i, j \le n$$$, $$$i \ne j$$$) и заменить $$$a_i$$$ на $$$a_i \oplus a_j$$$, где $$$\oplus$$$ обозначает побитовое исключающее ИЛИ (XOR).
Ваша задача — определить, можно ли отсортировать массив по неубыванию, используя не более $$$4n$$$ операций. Если это возможно, выведите любую подходящую последовательность операций. Заметьте, что необязательно сохранять исходные элементы массива, то есть достаточно получить любой отсортированный массив с помощью описанной операции.
В первой строке дано целое число $$$n$$$ — размер массива ($$$1 \le n \le 2 \cdot 10^5$$$).
Во второй строке даны $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ — элементы массива ($$$0 \le a_i \le 10^9$$$).
Если отсортировать массив за не более чем $$$4n$$$ операций невозможно, выведите $$$-1$$$.
Иначе в первой строке выведите целое число $$$k$$$ ($$$0 \le k \le 4n$$$) — количество операций.
В следующих $$$k$$$ строках выведите по два целых числа $$$i$$$ и $$$j$$$ ($$$1 \le i, j \le n$$$, $$$i \ne j$$$), обозначающих операцию $$$a_i \gets a_i \oplus a_j$$$.
После выполнения всех операций массив должен быть отсортирован по неубыванию. Если существует несколько решений, разрешается вывести любое из них.
65 2 3 7 6 10
3 1 5 1 2 4 3