#include<stdio.h>
int N,M,T,R1,C1,R2,C2,count;
char map[101][101];
void
dfs(int x,int y,int t){
if(t>T)
return ;
if(x==R2 && y==C2 && t==T){
count++;
return ;
}
if(x>1 && map[x-1][y]!='*')
dfs(x-1,y,t+1);
if(x<N && map[x+1][y]!='*')
dfs(x+1,y,t+1);
if(y>1 && map[x][y-1]!='*')
dfs(x,y-1,t+1);
if(y<M && map[x][y+1]!='*')
dfs(x,y+1,t+1);
}
int
main(){
int i,j;
scanf("%d%d%d",&N,&M,&T);
for(i=1;i<=N;i++){
for(j=1;j<=M;j++){
scanf("%c",map[i]+j);
}
}
scanf("%d%d%d%d",&R1,&C1,&R2,&C2);
dfs(R1,C1,0);
printf("%d",count);
return 0;
}