#include<bits/stdc++.h>
#define int long long
using namespace std;
int read(){
int f=1,x=0;
char ch=getchar();
while(ch>'9'&&ch<'0') if(ch=='-') f=-1,ch=getchar();else ch=getchar();
while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();
return x*f;
}
struct luogu{
int a,s;
}a[5010];
int cmp(luogu a,luogu b){
return a.s<b.s;
}
signed main(){
int n=read(),cnt=0,s=read(),g=read()+read();
for(int i=1;i<=n;++i){
a[i].a=read(),a[i].s=read();
}
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;++i){
if(a[i].a<=g&&s>=a[i].s) cnt++,s-=a[i].s;
}
cout<<cnt<<endl;
return 0;
}
P1478