#include<bits/stdc++.h>
using namespace std;
int r,c,ans,mo[5]={-1,0,1,0,-1},check[20][20];
string s[10];
void dfs(int x,int y){
if(s[x][y]=='#')return;
if(x==r-1&&y==c-1){
ans=(ans+1)%10007;
return;
}
for(int j=0;j<4;j++){
if(x+mo[j]>=0&&x+mo[j]<r&&y+mo[j+1]>=0&&y+mo[j+1]<c&&!check[x+mo[j]][y+mo[j+1]]){
check[x+mo[j]][y+mo[j+1]]=1;
dfs(x+mo[j],y+mo[j+1]);
check[x+mo[j]][y+mo[j+1]]=0;
}
}
return;
}
int main(){
cin>>r>>c;
for(int i=0;i<r;i++){
cin>>s[i];
}
check[0][0]=1;
dfs(0,0);
cout<<ans;
return 0;
}