var f,g:text;
c,b,a:array[0..51,0..51]of longint;
x1,x2,y1,y2,n,j,m,i:byte;
k1,k:longint;
q:boolean;
procedure lee(i,j:integer);
begin
if b[i,j+1]=0 then begin b[i,j+1]:=k;{c[i,j+1]:=c[i,j]*a[i,j+1];} q:=false; end;
if b[i,j-1]=0 then begin b[i,j-1]:=k;{c[i,j-1]:=c[i,j]*a[i,j-1];} q:=false; end;
if b[i+1,j]=0 then begin b[i+1,j]:=k;{c[i+1,j]:=c[i,j]*a[i+1,j];}q:=false; end;
if b[i-1,j]=0 then begin b[i-1,j]:=k; {c[i,j+1]:=c[i,j]*a[i-1,j];}q:=false; end;
end;
begin
assign(f,'kdrum.in');
reset(f);
assign(g,'kdrum.out');
rewrite(g);
readln(f,n,m,k1);
readln(f,x1,y1,x2,y2);
for i:=1 to n do
for j:=1 to m do
read(f,a[i,j]);
close(f);
{}
for i:=0 to n+1 do
begin
b[i,0]:=-1;
b[i,m+1]:=-1;
end;
for j:=0 to m+1 do
begin
b[0,j]:=-1;
b[n+1,j]:=-1;
end;
{}
k:=1;
q:=false;
b[x1,y1]:=1;
c[x1,y1]:=a[x1,y1];
while q=false do
begin
q:=true;
k:=k+1;
for i:=1 to n do
for j:=1 to m do
if b[i,j]=k-1 then lee(i,j);
end;
writeln(g,b[x2,y2]);
close(g);
end.