#include<bits/stdc++.h>
using namespace std;
typedef struct {
int g,l;
} h;
int cmp(h p,h o) {
return p.l<o.l;
}
int main() {
int n,s,i,a,b;
h q[10000]={0};
cin>>n>>s;
cin>>a>>b;
for(i=1; i<=n; i++) {
cin>>q[i].g>>q[i].l;
}
sort(q+1,q+n+1,cmp);
for(i=1; i<=n; i++) {
if((a+b)<q[i].g)
continue;
else {
if(q[i]>s)
break;
else {
s-=q[i].l;
}
}
}
printf("%d",i-1);
return 0;
}