#include<bits/stdc++.h>
using namespace std;
int n,s,a,b,ans;
struct edge{
int x,y;
}e[5005];
bool cmp(edge c,edge d){
return c.y<d.y;
}
int main(){
cin>>n>>s>>a>>b;
for(int i=1;i<=n;i++)cin>>e[i].x>>e[i].y;
sort(e+1,e+n+1,cmp);
for(int i=1;i<=n;i++){
if(s-e[i].y<=0)break;
if(a+b>=e[i].y){
s-=e[i].y;
ans++;
}
}
cout<<ans;
return 0;
}