#include<bits/stdc++.h>
using namespace std;

pair<int,int> p[300001];

int main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int n,m;
	cin>>n>>m;
	for(int i=0;i<n;i++)
		cin>>p[i].first>>p[i].second;
	sort(p,p+n);
	priority_queue<int,vector<int>,greater<int> > R,F;
	for(int i=0,M=1;M<=m;M++){
		while(i<n&&p[i].first<M)	R.push(p[i++].second);
		while(i<n&&p[i].first==M)	F.push(p[i++].second);
		while(F.size()>M)
			R.push(F.top()),F.pop();
	}
	for(int M=F.size()+1;M<=m;M++)
		if(!R.empty()&&R.top()<=M)	R.pop();
	cout<<R.size()<<endl;
}
