#include<bits/stdc++.h>
using namespace std;
int m,n;
pair<int,int> a[222222];
priority_queue<int> q,q2;
int b[222222],lb;
int main(){
	scanf("%d%d",&n,&m);
	for(int i=0; i<n; i++)
		scanf("%d%d",&a[i].first,&a[i].second);
	sort(a,a+n);
	int res = 0;
	for(int i=0; i<n; i++){
		q.push(-a[i].second);
		while(q.size() > a[i].first){
			b[lb++] = -q.top();
			q.pop();
		}
	}
	res += q.size();
	int L = res + 1;
	sort(b,b+lb);
	for(int i=lb-1; i>=0; i--){
		q2.push(b[i]);
		while(q2.size() > m - max(b[i], L) + 1)
			q2.pop();
	}
	res += q2.size();
	printf("%d\n",n-res);
	return 0;
}
