Easily Distinguishable Triangles

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Eva loves painting. Today she is working with a square canvas of n×nn \times n unit cells. Each cell is painted white, painted black, or empty --- not painted at all.

Eva is going to draw a black triangle inside each empty cell. She wants each triangle to be right-angled and have an area of 12\frac{1}{2} square unit cells. Thus, there are four ways to draw a single triangle:

Each triangle is a piece of art, and Eva wants them to be easily distinguishable from the rest of the painting. To achieve that, no two black triangles may share a common side with each other, and no black triangle may share a common side with a black square. Note that two black squares are allowed to share a common side.

Help Eva to find out how many ways there are to finish her painting. Since the number can be large, calculate it modulo 998,244,353998\\,244\\,353.

입력

The first line contains a single integer nn --- the side length of the canvas (1n10001 \le n \le 1000).

The next nn lines describe the canvas from top to bottom. The ii-th of these lines contains nn characters s_i,1,s_i,2,,s_i,ns\_{i, 1}, s\_{i, 2}, \ldots, s\_{i, n}. If s_i,j=s\_{i, j} = '.', the cell in the ii-th row and the jj-th column of the canvas is painted white. If s_i,j=s\_{i, j} = '#', that cell is painted black. If s_i,j=s\_{i, j} = '?', that cell is empty.

출력

Print a single integer denoting the number of ways to finish Eva's painting, modulo 998,244,353998\\,244\\,353.

힌트

In the first example test, there are 44 ways to finish the painting, as illustrated below:

In the second example test, there is a single way to finish the painting:

In the third example test, regardless of how Eva draws the triangle in the center cell, it will share two sides with black squares.