Автоматичний Складальник
Одна високонаукова хімічна установа активно експериментує з Автоматичним Складальником Молекул. Молекули, між якими можливо утворення хімічних зв'язків, перемішують і поміщають у АСМ, де вони утворюють складні молекулярні структури. Проте інколи виникає проблема — молекули утворюють таку велику групу, що Складальник заїдає.
Напишіть програму, яка буде визначати, чи може заданий набір молекул збиратись у структури необмеженого розміра. При цьому: 1) задача обмежена плоскими структурами і 2) кожна молекула має вигляд квадрата, усі молекули мають однаковий розмір. Чотири сторони квадрата позначають поверхні, якими молекули можуть з'єднуватись з сумісними молекулами.
У кожному тесті вам буде задано набір описів молекул. Кожен тип молекули описується чотирма парами символів — мітками зв'язків, які позначають можливість відповідної поверхні молекули з'єднуватись з іншими молекулами.
Існує два види міток зв'язків:
Велика латинська літера (A..Z) та один з символів + чи -. Дві поверхні можуть з'єднатися, якщо їх мітки зв'язків позначено однаковими літерами, але різними знаками. Наприклад, A+ сумісна з A-, але не сумісна з A+ та B-.
Два нулі 00. Мітка зв'язку 00 означає, що ця поверхня не може утворювати зв'язок (навіть з такою ж поверхнею з міткою 00).
Припустимо, що у Складальника є необмежена кількість молекул кожного з описаних виглядів, які можна повертати та перевертати. При утворенні молекулярних структур молекули можуть знаходитись поруч лише якщо вони сумісні. Кожна поверхня молекули при цьому може бути ні з чим не з'єднана.
Рисунок показує приклад молекул трьох видів та структури обмеженого розміру, зібраної з них (це не єдина можлива структура для заданих типів молекул).
Рисунок 1: Ілюстрація прикладу 1.
Вхідні дані
Вхідні дані складаються з одного тесту. Кожен тест складається з двох рядків. Перший рядок містить число n (1 ≤ n ≤ 40000) — кількість типів молекул. Другий рядок містить n підрядків по 8 символів кожен — опис кожного виду молекул, причому поверхні описуються за годинниковою стрілкою.
Вихідні дані
Виведіть слово unbounded, якщо молекули можуть утворити нескінченну структуру і слово bounded у протилежному випадку.