#include <bits/stdc++.h>
using namespace std;
int a,b;
int n,s;
int i,j;
int cnt=0;
struct Pg
{
int x;
int y;
double yx;
}pg[5001];
bool cmp(Pg e,Pg f)
{
return e.yx<f.yx;
}
int main()
{
scanf("%d%d",&n,&s);
scanf("%d%d",&a,&b);
for(i=1;i<=n;i++)
{
scanf("%d%d",&pg[i].x,&pg[i].y);
pg[i].yx=double(pg[i].y/pg[i].x);
}
sort(pg+1,pg+n+1,cmp);
b+=a;
for(i=1;i<=n;i++)
{
if(pg[i].x<=b&&pg[i].y<=s)
{
s-=pg[i].y;
cnt++;
}
}
printf("%d",cnt);
return 0;
}