#include<iostream>
using namespace std;
int n,m,k,xt,yt,xs,ys,xe,ye;
int ans=0;
char a[100][100];
int dirx[4]={-1,1,0,0};
int diry[4]={0,0,1,-1};
bool vis[100][100]={false};
void dfs(int x,int y){
if(x==xe&&y==ye){
ans++;
return;
}
for(int i=0;i<4;++i){
int xx=x+dirx[i];
int yy=y+diry[i];
if(vis[xx][yy]!=true&&a[xx][yy]=='.'){
vis[xx][yy]=true;
dfs(xx,yy);
vis[xx][yy]=false;
// cout<<xx<<" "<<yy;
}
}
}
void clearmap(){
for(int i=0;i<=n+3;i++){
for(int j=0;j<=m+3;j++){
a[i][j]='.';
}
}
}
int main(){
clearmap();
cin>>n>>m>>k;
cin>>xs>>ys>>xe>>ye;
for(int i=0;i<k;++i){
cin>>xt>>yt;
a[xt][yt]='#';
}
for(int i=0;i<=n+1;i++){
for(int j=0;j<=m+1;j++){
if(i==0||j==0||i==m+1||j==n+1){
a[i][j]='#';
}
}
}
/*
*
for(int i=0;i<=n+1;i++){
for(int j=0;j<=m+1;j++){
cout<<a[i][j];
}
cout<<"\n";
}
dfs(xs,ys);
cout<<ans/2;
return 0;
/**/
return 0;
}