#include <bits/stdc++.h>
using namespace std;
int n,m,num;
int ans;
int a[100][100]={0};
void dfs(int x) //深度优先搜索第x个数
{
if(x>num)
{
ans++;
return;
}
else
{
int row=(x-1)/m+1;
int col=(x-1)%n+1;
int dx[4]={0,-1,1,0},dy[4]={-1,0,0,1};
for(int i=1;i<=4;i++) //枚举4个方向
{
int nx=row+dx[i],ny=col+dy[i];
if(nx>=1&&nx<=n&&ny>=1&&ny<=m&&a[nx][ny]!=1)
{
a[nx][ny]=1; //占位
dfs(x+1);
a[nx][ny]=0;
}
}
}
}
int main()
{
int t;
cin>>n>>m>>t;
int x1,x2,y1,y2;
int s1,s2;
cin>>x1>>y1>>x2>>y2;
num=abs(x2-x1)+1+abs(y2-y1)+1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
a[i][j]=0; //初始化数组为0
}
for(int i=1;i<=t;i++){
cin>>s1>>s2;
a[s1][s2]=1; //标记障碍
}
dfs(1);
cout<<ans;
return 0;
}