#include<iostream>
#include<cstring>
using namespace std;
void light1(int c[100][100],int i,int j){
for(int l1=i-3;l1<i+2;l1++){
c[l1][j-1]=1;
}
for(int l2=j-3;l2<j+2;l2++){
c[i-1][l2]=1;
}
c[i-2][j-2]=c[i-2][j]=c[i][j-2]=c[i][j]=1;
}
void light2(int c[100][100],int i,int j){
for(int l1=i-3;l1<i+2;l1++){
for(int l2=j-3;l2<j+2;l2++){
c[l1][l2]=1;
}
}
}
int monster(int c[100][100],int n){
int num=0;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(!c[i][j]){
num++;
}
}
}
return num;
}
int main(){
int cube[100][100],m,k,n;
int p,q,i,j;
memset(cube,0,sizeof(cube));
cin>>n>>m>>k;
for(p=0;p<m;p++){
cin>>i>>j;
light1(cube,i,j);
}
for(q=0;q<k;q++){
cin>>i>>j;
light2(cube,i,j);
}
cout<<monster(cube,n);
return 0;
}
//输出明明一样,问题出在哪里?