#7 过不了
#include<iostream>
using namespace std;
int startx,starty,endx,endy;
bool ma[6][6],map[6][6];
int ans=0;
int n,m,t;
int dx[6]={0, 0, 0, 1,-1};
int dy[6]={0, 1,-1, 0, 0};
void dfs(int x,int y){
// cout<<"("<<x<<" "<<y<<") ";
if(x==endx&&y==endy) {ans++;/*cout<<"/ ";*/return;}
for(int i=1;i<=4;i++){
int nx=x+dx[i],ny=y+dy[i];
if(nx<=n&&nx>=1&&ny<=m&&ny>=1&&!map[nx][ny]&&!ma[nx][ny]){
map[nx][ny]=1;
dfs(nx,ny);
map[nx][ny]=0;
}
}
}
int main(){
map[1][1]=1;
cin>>n>>m>>t;
cin>>startx>>starty>>endx>>endy;
for(int i=1;i<=t;i++){
int a,b;
cin>>a>>b;
ma[a][b]=1;
}
map[startx][starty]=1;
dfs(startx,starty);
cout<<ans;
}