#include <bits/stdc++.h>
using namespace std;
struct Pos{
int x,y;
Pos(int ax = 0, int ay=0) {
x=ax,y=ay;
}
};
int n,m,sx,sy,vx,vy,tt,fx,fy,tx,ty,ans=0;
int a[1223][1235]={0};
bool vis[1005][12344];
void bfs(){
queue<Pos>q;
q.push(Pos(sx,sy));
while(!q.empty()) {
Pos now=q.front();
q.pop();
int x = now.x, y = now.y;
if(x<1||x>n){
continue;
}
if(y<1||y>m){
continue;
}
if(a[x][y]==1){
continue;
}
if(vis[x][y]==1){
continue;
}
vis[x][y]=1;
if(x==fx&&y==fy) {
ans++;
}
q.push(Pos(x-1,y));
q.push(Pos(x+1,y));
q.push(Pos(x,y+1));
q.push(Pos(x,y-1));
}
}
int main() {
cin>>n>>m>>tt>>sx>>sy>>fx>>fy;
for(int i=1;i<=tt;i++){
cin>>tx>>ty;
a[tx][ty]=1;
}
bfs();
cout<<ans;
return 0;
}