#include <iostream>
#include <vector>
using namespace std;
int main() {
int n;
cin>>n;
vector<string> V;
for(int i=0;i<n;i++)
{
string s;
cin>>s;
V.push_back(s);
}
int dp[n][n];
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
dp[i][j]=0;
}
}
for(int i=0;i<n;i++)
{
if(V[i][0] == '*')
{
break;
}
dp[i][0]=1;
}
for(int i=0;i<n;i++)
{
if(V[0][i] == '*')
{
break;
}
dp[0][i]=1;
}
int mod =1e9+7;
for(int i=1;i<n;i++)
{
for(int j=1;j<n;j++)
{
if(V[i][j] == '*')
{
continue;
}
dp[i][j] = (dp[i-1][j] + dp[i][j-1])%mod;
}
}
cout<<dp[n-1][n-1]<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgoJaW50IG47CgljaW4+Pm47CgkKCXZlY3RvcjxzdHJpbmc+IFY7CgkKCWZvcihpbnQgaT0wO2k8bjtpKyspCgl7CgkJc3RyaW5nIHM7CgkJY2luPj5zOwoJCVYucHVzaF9iYWNrKHMpOwoJfQoKCWludCBkcFtuXVtuXTsKCWZvcihpbnQgaT0wO2k8bjtpKyspCgl7CgkJZm9yKGludCBqPTA7ajxuO2orKykKCQl7CgkJCWRwW2ldW2pdPTA7CgkJfQoJfQoKCWZvcihpbnQgaT0wO2k8bjtpKyspCgl7CgkJaWYoVltpXVswXSA9PSAnKicpCgkJewoJCQlicmVhazsKCQl9CgkJZHBbaV1bMF09MTsKCX0KCglmb3IoaW50IGk9MDtpPG47aSsrKQoJewoJCWlmKFZbMF1baV0gPT0gJyonKQoJCXsKCQkJYnJlYWs7CgkJfQoJCWRwWzBdW2ldPTE7Cgl9CgkKCWludCBtb2QgPTFlOSs3OwoJZm9yKGludCBpPTE7aTxuO2krKykKCXsKCQlmb3IoaW50IGo9MTtqPG47aisrKQoJCXsKCQkJaWYoVltpXVtqXSA9PSAnKicpCgkJCXsKCQkJCWNvbnRpbnVlOwoJCQl9CgkJCWRwW2ldW2pdID0gKGRwW2ktMV1bal0gKyBkcFtpXVtqLTFdKSVtb2Q7CgkJfQoJfQoJCgljb3V0PDxkcFtuLTFdW24tMV08PGVuZGw7CgoJcmV0dXJuIDA7Cn0=