#include <bits/stdc++.h>
using namespace std;
int zx,zy,a,b,s=0;
int maze[10][10];
bool road[10][10];
int dir1[5]= {0,0,0,1,-1};
int dir2[5]= {0,1,-1,0,0};
int n,m,t;
void dfs(int x,int y)
{
if(x==zx && y==zy)
{
s++;
return;
}
for(int i=1;i<=4; i++)
{
int sx=x+dir1[i];
int sy=y+dir2[i];
if(sx<1||sx>m||sy<1||sy>n)
continue;
if(road[sx][sy]==false)
continue;
if(maze[sx][sy]==1)
continue;
road[sx][sy]=false;
dfs(sx,sy);
}
return;
}
int main()
{
int x,y;
cin>>n>>m>>t;
cin>>x>>y>>zx>>zy;
for (int i=1;i<=t;i++)
{
a=0,b=0;
cin>>a>>b;
maze[a][b]==1;
}
dfs(x,y);
cout<<s<<endl;
return 0;
}