CSG-CPC Online Judge

1144 : 盖房子

         Time Limit: 5 Sec     Memory Limit: 128 Mb     Submitted: 1     Solved: 1    

Description

Bobo 在 ICPCCamp 买了一块 n×m 的土地,其中有些格子是障碍。

他想选择两个矩形区域,建造两座房子。 很明显,用于盖房子的区域不能包含障碍。同时,两个区域不能相交(但是可以相邻)。

Bobo 想知道所有可能不同方案的数量除以 (109 + 7) 的余数。

Input

输入包含不超过 10 组数据。

每组数据的第一行包含两个整数 n, m(1 ≤ n, m ≤ 103).

接下来 n 行中的第 i 行包含一个长度为 m 的字符串 si。si 的第 j 位是 0 则表示第 i 行第 j 列的格子是空地,是 1 则表示该格子是障碍。

Output

对于每组数据,输出一个整数表示所求的值。

Sample Input

2 2
00
01
3 4
1000
0001
0100

Sample Output

5
160

Hint

Author

ftiasch