#include<iostream>
using namespace std;
int maze[10005][10005],ans=0;
int Next[8][2]={{-1,-1},{-1,0},{-1,1},{0,-1},{0,1},{1,-1},{1,0},{1,1}};
int n,m,t,sx,sy,fx,fy,za[10005],zy[10005];
void dfs(int a,int b){
if(a==n&&b==n){
ans++;
return ;
}
int x,y;
for(int i=0;i<=7;i++){
x=a+Next[i][0];
y=b+Next[i][1];
if(x>=n&&x<=1&&y<=m&&y>=1&&maze[x][y]==0){
maze[x][y]=1;
dfs(x,y);
maze[x][y]=0;
}
}
cout<<ans;
}
int main(){
cin>>n>>m>>t;
cin>>sx>>sy>>fx>>fy;
for(int i=1;i<=t;i++){
cin>>za[i]>>zy[i];
maze[za[i]][zy[i]]=1;
}
dfs(1,1);
}