#126. 单回路连通性问题

单回路连通性问题

Description

W市将举办一级方程式赛事,需要建立一个新的赛道。但是在未来的赛道上有许多地鼠生活在洞里,不允许在洞上建造赛道。赛道是一个n×mn×m的矩形单元,每个单元都有一个单独的路段,每个路段都应该与矩形的一条边平行,所以赛道只可以有90º90º转弯。在下图中给出了n=m=4n=m=4的两个样例(灰色方块表示地鼠洞,粗体黑线表示赛道)。求解有多少种方法可以建立赛道。 image

Format

Input

包含多组用例,第11行包含整数nnm2nm12m(2≤n,m≤12),表示行数和列数。接下来的n行中,每一行都包含mm个字符,字符“”表示可以在该单元建立赛道,字符“*”表示该单元有地鼠洞。至少有44个单元格没有地鼠洞。

Output

输出建立赛道的方法数,保证不超过2631263 -1

Samples

4 4
**..
....
....
....
4 4
....
....
....
....
2
6