#include<bits/stdc++.h>
using namespace std;
struct node {
int h;
int w;
}apple[5010];
int n, s, a, b, num;
bool cmp(node x, node y) {
return x.w < y.w;
}
int main() {
scanf("%d%d", &n, &s);
for (int i = 1; i <= n; i++) {
scanf("%d", &apple[i].h);
scanf("%d", &apple[i].w);
}
sort(apple+1, apple+1+n, cmp);
for (int i = 1; i <= n; i++) {
if (a + b >= apple[i].h && s >= apple[i].w) {
s-=apple[i].w;
num+=1;
}
}
printf("%d", num);
}