#include<stdio.h>
#include<string.h>
char v[9],g[9][9];
int n,ans;
void dfs(int k,int cur)
{
int i,j;
for(i=cur-1;i>k-2;i--)
{
for(j=0;j<n;j++)
if(g[i][j]=='#'&&v[j]==0)
if(i&&k>1)
{
v[j]=1;
dfs(k-1,i);
v[j]=0;
}
else
ans++;
}
}
int main()
{
int k,i;
while(scanf("%d%d",&n,&k)!=EOF,n!=-1||k!=-1)
{
memset(v,0,sizeof(v));
for(i=0;i<n;i++)
scanf("%s",g[i]);
ans=0;
dfs(k,n);
printf("%d\n",ans);
}
return 0;
}
/**************************************************************
Problem: 2127
User: admin
Language: C
Result: Accepted
Time:15 ms
Memory:1144 kb
****************************************************************/