#Lutece1960. 咸鱼自画像

咸鱼自画像

Migrated from Lutece 1960 咸鱼自画像

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

咕咕有天发现了一张纸,上面有一条很咸鱼的线。

无聊的咕咕在这条线上选了 nn 个点(包括线的起点和终点)。

然后,“手抖”把这些点两两连接了起来。

咸鱼起床后,发现他的自画像被咕咕弄脏了!

上面仅依稀能看到每两个点之间线的笔迹走向。

咸鱼希望你能在他出(gu)去(gu)约(gu)会(gu)之前,按照上面的笔迹,用一笔画出一条连接所有点,且只经过其中 n1n-1 条笔迹的线。

Input

第一行包含一个整数 nn2n10002 \le n\le 1000

接下来有 nn 行,每一行有一个字符串,包含 nn 个字符。

如果第 ii 个字符串的第 jj 个字符为 +,表示有一条从第 i1i-1 个点到第 j1j-1 个点的一条线。

如果第 ii 个字符串的第 jj 个字符为 -,表示有一条从第 j1j-1 个点到第 i1i-1 个点的一条线。

ii 个字符串的第 ii 个字符为 .,表示那群咕咕没有无聊到把一个点寄己连接起来。

输入保证如果第 ii 个字符串的第 jj 个字符为 +,那么第 jj 个字符串的第 ii 个字符为 -,反之亦然。

点的下标从 00 开始。

Output

如果不能还原出一条线,输出 NO 即可。

否则输出两行:第一行为 YES;第二行为 nn 个数,表示根据相邻两个点之间的笔迹能实现咸鱼的要求。

如果有多组方案,请输出其中一种。

Samples

2
.+
-.
YES
0 1
6
.-+-+-
+.+-++
--.---
+++.--
--++.-
+-+++.
YES
5 4 3 1 0 2

Note

Sample 2 中输出方案0 4 3 1 5 2亦可。

Resources

2018 UESTC ACM Training for Graph Theory