Артем проходить навчальний тест у електронній системі. Питання тесту містить тверджень, деякі з яких є істинними і їх необхідно відмітити прапорцями. Поставивши деякі з прапорців, можна перевірити відповідь на правильність. Відповідь на питання вважається правильною, якщо всі істинні твердження відмічені прапорцями, а всі хибні — ні.
Думати Артему ліньки, тому він вирішив просто перебрати усі варіанти розстановки прапорців. Для цього він складає список усіх 2^n варіантів їх розстановки. У списку кожен варіант розстановки прапорців повинен бути присутнім рівно один раз.
Інтуїтивно йому здається, що істинних тверджень багато, тому варіанти розстановки він хоче перебирати у порядку зменшення кількості встановлених прапорців. Крім цього, Артем дуже лінивий і хоче, щоб для двох підряд ідучих варіантів кількість позицій, у яких вони відрізняються, не перевищувала двох. Допоможіть Артему.
У першому рядку міститься ціле число (1 \leq n \leq 16).
Виведіть 2^n рядків. У -му рядку виведіть символів або — стан кожного з прапорців для -го варіанту відповіді, для встановленого прапорця і для невстановленого. Кількість одиниць у варіантах повинна не зростати. Кількість позицій, у яких відрізняються два сусідні рядки, не повинна перевищувати .
Приклад 1