시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB32266.667%

문제

На очередном задании Лэнс Стерлинг в очередной раз столкнулся с запертым сейфом. <<Да сколько можно, снова взламывать>>, --- подумал про себя супершпион.

Данный сейф закрывается на кодовый замок, который может быть представлен в виде таблицы $n \times n$. В этой таблице есть клетки трех типов:

  • Пустые
  • Клетки, содержащие центральные элементы
  • Клетки, содержащие поворотные ручки

Причем, из-за конструкционных особеностей сейфа, в каждом столбце и каждой строке таблицы содержится не более одного центрального элемента.

Каждую из ручек можно ориентировать одним из двух способов: вертикально или горизонтально. Для того, чтобы замок открылся, ручки нужно ориентировать таким образом, чтобы от каждой ручки можно было добраться до центрального элемента, переходя только по ручкам ориентированным таким же образом, в направлении ориентации. Иными словами, если ручка ориентированна вертикально, должен существовать центральный элемент, находящийся на одной вертикали с этой ручкой, и все клетки между этим центральным элементом и этой ручкой должны быть заняты ручками, ориентированными вертикально. Аналогично для всех горизонтальных ручек.

Лэнсу нельзя терять ни минуты, поэтому он попросил помощи с открытием сейфа у вас. Помогите ему определить ориентации ручек, при которых сейф откроется, либо сообщите, что это невозможно.

입력

В первой строке дано одно целое число $n$ --- размер таблицы ($1 \le n \le 500$).

Далее в $n$ строках дано по $n$ символов --- описание таблицы. Символ <<.>> соответствует пустой клетке, символ <<O>> (заглавная английская буква O, ASCII код 79) --- центральному элементу, а <<+>> --- поворотной ручке.

Гарантируется, что в каждой строке и каждом столбце таблицы содержится не более одного центрального элемента.

출력

Если не существует способа ориентировать ручки, чтобы сейф открылся, выведите <<No>>. Иначе, выведите <<Yes>>, а в следующих $n$ строках по $n$ символов --- описание таблицы, аналогичное описанию во входных данных. Ручки, которые нужно ориентировать вертикально, должны быть обозначены символами <<|>>, а ручки, которые нужно ориентировать горизонтально --- символами <<->>.

Если существует несколько различных ответов, выведите любой из них.

예제 입력 1

3
O++
+.+
++O

예제 출력 1

Yes
O-|
|.|
--O

예제 입력 2

4
..+.
....
..O.
..+.

예제 출력 2

No

예제 입력 3

3
.+.
O++
.O.

예제 출력 3

No