#include <bits/stdc++.h>
using namespace std;
int main(){
int n,k;
cin>>n>>k;
vector<pair<int,int>> N(n);
vector<pair<int,int>> Q(1);
for(int i=0;i<n;i++){
cin>>N[i].first>>N[i].second;
}
for(int i=1;i<=1;i++){
cin>>Q[i].first>>Q[i].second;
}
vector<pair<int,int>> vt;
int say1=0;
for(int i=0;i<n;i++){
int t=N[i].first;
int m=N[i].second;
int t2=Q[1].first;
int w2=Q[1].second;
if(t>=t2&&m<=w2){
vt.push_back({t,m});
say1++;
}
}
if(say1==0){
cout<<0<<endl;
}
sort(vt.begin(),vt.end());
vector<int> points;
for(int i=0;i<vt.size();i++){
int say=0;
int l=vt[i].first;
int r=vt[i].second;
for(int j=0;j<vt.size();j++){
if(l<vt[j].first&&r<vt[j].second){
say++;
l=vt[j].first;
r=vt[j].second;
}
}
points.push_back(say);
}
sort(points.rbegin(),points.rend());
cout<<points[0]<<endl;
}