Score : 1900 points
Snuke has a grid with H rows and W columns. The square at the i-th row and j-th column contains a character S_{i,j}.
He can perform the following two kinds of operation on the grid:
For example, reversing the 2-nd row followed by reversing the 4-th column will result as follows:
By performing these operations any number of times in any order, how many placements of characters on the grid can be obtained?
a
-z
).The input is given from Standard Input in the following format:
H W S_{1,1}S_{1,2}...S_{1,W} S_{2,1}S_{2,2}...S_{2,W} : S_{H,1}S_{H,2}...S_{H,W}
Print the number of placements of characters on the grid that can be obtained, modulo 1000000007 (=10^9+7).
2 2 cf cf
6
The following 6 placements of characters can be obtained:
1 12 codefestival
2