#include <bits/stdc++.h>
using namespace std;
const long long p=1000000007;
long long n,x_1,y_1,x_2,y_2,x[1000005],y[100005],ans1,ans2;
int main(){
scanf("%d %d %d %d %d",&n,&x_1,&y_1,&x_2,&y_2);
for(int i=1;i<=n;i++)scanf("%d %d",&x[i],&y[i]);
sort(x+1,x+1+n);sort(y+1,y+1+n);
if(x[1]<x_1||x[n]>x_2||y[1]<y_2||y[n]>y_1){
cout << 0;
return 0;
}
ans1=(x[1]-x_1+1)%p;
ans1=((x_2-x[n]+1)%p*ans1)%p;
while(ans1<0)ans1+=p;
ans2=(y[1]-y_2+1)%p;
ans2=((y_1-y[n]+1)%p*ans2)%p;
while(ans2<0)ans2+=p;
ans1=(ans1*ans2)%p;
printf("%d",ans1);
return 0;
}