Труби
Козак Вус захотів стати президентом Потоколяндії, а для цього, як водиться, потрібно зробити якусь добру справу для добрих громадян, щоб вони стали ще добрішими, а козак Вус "— популярнішим серед народу. Отож він вирішив відремонтувати водопровідну систему країни. Вона знаходиться під землею, і для простоти вона розділена на однакові квадратні фрагменти так, що має вигляд поля . Фрагменти нумеруються зверху вниз від 1 до та зліва направо від 1 до . Кожен фрагмент може бути або порожнім (позначається символом ), або в ньому може знаходитись труба одного з 6 типів:
Водопровід називається замкненим, якщо для кожної труби кожен її кінець з'єднаний з кінцем якоїсь іншої труби.
Нещодавно вас призначили заступником Козака Вуса з питань водопроводу, тож тепер ви можете повернути будь-яку трубу на кут, кратний 90. Ваше завдання "— за допомогою поворотів зробити цей водопровід замкненим або повідомити, що це неможливо.
Вхідні дані
Перший рядок містить три цілі числа , та (, ) "— довжина та ширина поля, а також номер групи відповідно.
Кожний з наступних рядків містить по цілих чисел () "— число, що описує тип труби, розташованої в клітинці з координатами .
Вихідні дані
Виведіть NO
, якщо труби неможливо повернути так, щоб утворити замкнену систему, у протилежному випадку виведіть YES
, а далі виведіть рядків по чисел у кожному "— опис замкненої системи, утвореної поворотами, у форматі, описаному вище.
Приклади
Примітка
Ілюстрація до тестових прикладів: початковий та замкнений (якщо він існує) стан:
Оцінювання
( балів): ;
( балів): ; до кутових труб;
( балів): ; до кутових труб;
( балів): ;
( балів): ; якщо розв'язок існує, то в хоча б одному з них кожен замкнений контур складається з кутових труб і довільної кількості прямих труб;
( балів): ; ;
( балів): ;
( балів): без додаткових обмежень.