#hhkb2020e. [hhkb2020_e]Lamps

[hhkb2020_e]Lamps

Problem Statement

We have a grid with HH horizontal rows and WW vertical columns of squares, where each square is tidy or untidy.

You will now place lamps on zero or more tidy squares in this grid.

A lamp will lighten the squares in each of the four directions - up, down, left, and right - to the point just before an edge of the grid or an untidy square is reached for the first time (the untidy square will not be lighted). The lamp will also lighten the square on which it is placed.

Given are integers HH, WW, and HH strings SiS_i of length WW each. If the jj-th character of SiS_i is ., the square at the ii-th row from the top and the jj-th column from the left is tidy; if the jj-th character of SiS_i is #, the square at the ii-th row from the top and the jj-th column from the left is untidy.

Let KK be the number of tidy squares. There are 2K2^K ways to place the lamps in total. Assume that, for each of these 2K2^K ways, the number of squares lightened by one or more lamps is computed. Find the sum of those numbers modulo 1,000,000,0071,000,000,007.

Constraints

  • 1leqHleq20001 \\leq H \\leq 2000
  • 1leqWleq20001 \\leq W \\leq 2000
  • SiS_i is a string of length WW consisting of . and #.

Input

Input is given from Standard Input in the following format:

HH WW S1S_1 :: SHS_H

Output

Print the sum, modulo 1,000,000,0071,000,000,007, of the numbers of squares lightened by one or more lamps over the 2K2^K ways to place the lamps.


Sample Input 1

1 5
..#..

Sample Output 1

48

There are 1616 ways to place the lamps in total.

  • In 99 of the ways (where at least one of the 11-st and 22-nd squares from the left contains a lamp and at least one of the 44-th and 55-th squares from the left contains a lamp), 44 squares will be lighted.
  • In 33 of the ways (where at least one of the 11-st and 22-nd squares from the left contains a lamp but none of the 44-th and 55-th squares from the left contains a lamp), 22 squares will be lighted.
  • In another 33 of the ways (where none of the 11-st and 22-nd squares from the left contains a lamp but at least one of the 44-th and 55-th squares from the left contains a lamp), 22 squares will be lighted.
  • In 11 of the ways (where no square contains a lamp), 00 squares will be lighted.

The sum in question is $4 \\times 9 + 2 \\times 3 + 2 \\times 3 + 0 \\times 1 = 48$.


Sample Input 2

2 3
..#
#..

Sample Output 2

52