Парк
Перед виборами мер міста вирішив заснувати парк відпочинку. Для цього у центрі міста було звільнено площадку, яка має форму рівносторонього трикутника. За перемогу на виборах змагаються N політичних партій. Щоб підкреслити свою незалежність, мер розпорядився посадити у парку дерева N різних кольорів. Дерева повинні бути розміщені у вузлах трикутної сітки (див. рисунок) на однаковій відстані одне від іншого. У кожному ряду, який паралельний одній зі сторін трикутника, повинні рости дерева попарно різних кольорів, зовнішні сторони площадки повинні містити рівно N дерев, тобто дерева усіх кольорів.
Напишіть програму PARK, яка буде знаходити одне з можливих розміщень дерев у парку.
Вхідні дані
Вхідний файл у першому рядку містить кількість тестів. Кожен наступний рядок містить одне ціле число N – кількість видів (кольорів) дерев, які необхідно посадити у парку (3 ≤ N ≤ 100).
Вихідні дані
Вихідний файл повинен містити відповіді для усіх тестів зі вхідного файлу у тому ж порядку. Для кожного тесту потрібно вивести або єдиний рядок з числом 0, якщо розміщення неможливо, або N рядків, перший з яких містить одне число, другий — два числа, N–й — N чисел — номери кольорів дерев у розміщенні. Кольори нумеруються натуральними числами від 1 до N.