Піраміди
Легко побудувати піраміду, якщо у вас є набір однакових кубиків. Наприклад, на плоскому підґрунті можна розмістити квадрат з 10×10 кубиків. На цей квадрат по центру кладеться квадрат з 9×9 кубиків. Продовжуючи в такому ж порядку, завершуєте будівництво одним кубиком на вершині піраміди. Висота такої піраміди дорівнює довжині її основи, тобто 10. Таку піраміду ми називатимемо високою.
Якщо вважаєте, що висока піраміда занадто крута, можна зробити інакше. На квадратну основу 10×10 покладіть квадрат 8×8, потім 6×6, і так далі, завершивши верхнім шаром 2×2 (якщо почати з основи непарної довжини, верхівка складатиметься з одного кубика). Висота такої піраміди буде половиною довжини основи. Назвемо таку піраміду низькою.
Колись давно жив фараон, який успадкував від батька величезну кількість кам'яних кубів. Він наказав архітектору побудувати піраміду, використавши всі куби. Архітектор пояснив, що не з будь-якої кількості кубів можна скласти піраміду. З 10 кубів можна побудувати низьку піраміду з основою 3. З 5 кубів можна побудувати високу піраміду з основою 2. Але з 7 кубів не можна побудувати жодну піраміду.
Фараон не був задоволений, але після роздумів придумав нові обмеження.
Використати всі куби.
Можна побудувати кілька пірамід, але їх кількість повинна бути найменшою.
Всі піраміди повинні бути різними.
Висота кожної піраміди повинна бути не менше 2.
Найбільша піраміда повинна бути якомога більшою (тобто містити найбільшу кількість кубів).
Наступна найбільша піраміда теж повинна бути якомога більшою.
І так далі...
Після деякого часу архітектор знайшов найкраще рішення, малюючи фігури на піску.
Напишіть програму, яка визначить, як за заданою кількістю кубів задовольнити всі обмеження фараона.
Вхідні дані
Складається з декількох тестів, кожен з яких знаходиться в окремому рядку. Кожен тест містить число c (1 ≤ c ≤ 10^6) - наявна кількість кубів.
Останній рядок містить один нуль і не обробляється.
Вихідні дані
Для кожного тесту виведіть його номер і набір побудованих пірамід. Піраміди слід упорядкувати, починаючи з найбільшої. Кожна піраміда задається розміром основи, за яким слідує L для низьких пірамід і H для високих пірамід. Якщо дві різні піраміди складаються з однакової кількості кубів, спочатку слід виводити більш високу піраміду. Виведіть "impossible", якщо неможливо задовольнити всім умовам фараона.
Слідуйте за наведеним у прикладі форматом виводу.