有两个 $N \times N$ 的网格 $S$ 和 $T$,每个单元格要么是黑色,要么是白色。每个网格的颜色由 $N^2$ 个字符表示。在网格 $S$ 中,如果从顶部数第 $x$ 行、从左侧数第 $y$ 列的单元格是黑色,则 $S_{x,y}$ 为 #;如果是白色,则 $S_{x,y}$ 为 .(句点)。$T$ 的情况相同。
你可以对网格 $S$ 执行以下操作:
- 选择整数 $t$ 和 $x$ ($1 \le t \le 2, 1 \le x \le N$)。
- 如果 $t = 1$,对 $S$ 的第 $x$ 行执行一次循环右移。具体来说,同时将 $S_{x,1}S_{x,2} \dots S_{x,N}$ 替换为 $S_{x,N}S_{x,1} \dots S_{x,N-1}$。
- 如果 $t = 2$,对 $S$ 的第 $x$ 列执行一次循环下移。具体来说,同时将 $S_{1,x}S_{2,x} \dots S_{N,x}$ 替换为 $S_{N,x}S_{1,x} \dots S_{N-1,x}$。
确定是否可以使用最多 $N^3$ 次操作将 $S$ 转换为 $T$。如果可以,输出实现此转换的操作序列。
输入格式
输入通过标准输入给出,格式如下:
$N$ $S_{1,1} \dots S_{1,N}$ $\vdots$ $S_{N,1} \dots S_{N,N}$ $T_{1,1} \dots T_{1,N}$ $\vdots$ $T_{N,1} \dots T_{N,N}$
- $2 \le N \le 80$
- $S_{x,y}, T_{x,y}$ 为
#或.(句点)。 - $N$ 是一个整数。
输出格式
如果无法在最多 $N^3$ 次操作内匹配网格,输出 No。
如果可以,第一行输出 Yes,第二行输出操作次数 $M$ ($0 \le M \le N^3$)。从第三行到第 $(M+2)$ 行,输出操作序列。在第 $(i+2)$ 行,按顺序输出第 $i$ 次操作选择的 $t$ 和 $x$。
样例
样例输入 1
3 .#. #.# .#. #.# ... #.#
样例输出 1
Yes 4 1 3 2 3 2 1 1 1
样例输入 2
3 .#. #.# .#. .#. #.# .#.
样例输出 2
Yes 0
样例输入 3
13 ............. ....#####.... ......#...... ......#...... ......#...... ......#...... ............. ....#...#.... ....#...#.... ....#...#.... ....#...#.... .....###..... ............. ....####..... ....#...#.... ....####..... ....#........ ....#........ ............. .....###..... ....#...#.... ....#........ ....#...#.... .....###..... ............. .............
样例输出 3
No
说明
在第一个样例中,$S$ 的变化如下: