#include<bits/stdc++.h>
using namespace std;
const double eps=1e-3;
const double g=9.8;
const int Max=100;
double L[Max],R[Max],B[Max],T[Max];
double N,V,X,Y;
double getHy(double vy,double t)
{
    return vy*t-g*t*t/2;
}
int cmp(double l,double r,double a)
{
    if(a<l+eps)
    {
        return -1;
    }
    if(a>r-eps)
    {
        return 1;
    }
    return 0;
}
int check(double qx,double qy)
{
    double a=g*g/4;
    double b=g*qy-V*V;
    double c=qx*qx+qy*qy;
    double det=b*b-4*a*c;
    if(det<0&&det>-eps)
    {
        det=0;
    }
    if(det<0)
    {
        return 0;
    }
    for(int d=-1;d<=1;d+=2)
    {
        double t2=(-b+d*sqrt(det))/(2.0*a);
        if(t2<=0)
        {
            continue;
        }
        double t=sqrt(t2);
        double vx=qx/t;
        double vy=(qy+g*t*t/2.0)/t;
        double yt=getHy(vy,X/vx);
        if(yt<Y-eps)
        {
            continue;
        }
        int flag=1;
        for(int i=1;i<=N;i++)
        {
            if(L[i]>=X)
            {
                continue;
            }
            if(R[i]==X&&Y<=T[i]&&B[i]<=yt)
            {
                flag=0;
            }
            int yl=cmp(B[i],T[i],getHy(vy,L[i]/vx));
            int yr=cmp(B[i],T[i],getHy(vy,R[i]/vx));
            int xh=cmp(L[i],R[i],vx*vy/g);
            int yh=cmp(B[i],T[i],getHy(vy,vy/g));
            if(xh==0&&yh>=0&&yl<0)
            {
                flag=0;
            }
            if(yl*yr<=0)
            {
                flag=0;
            }
        }
        if(flag)
        {
            return 1;
        }
    }
    return 0;
}
int main()
{
    scanf("%lf%lf%lf%lf",&N,&V,&X,&Y);
    for(int i=1;i<=N;i++)
    {
        scanf("%lf%lf%lf%lf",&L[i],&B[i],&R[i],&T[i]);
        R[i]=min(R[i],X);
    }
    int flag1=check(X,Y);
    for(int i=1;i<=N;i++)
    {
        int flag2;
        flag2=check(L[i],T[i]);
        if(flag2==1)
        {
            flag1=1;
        }
        flag2=check(R[i],T[i]);
        if(flag2==1)
        {
            flag1=1;
        }
    }
    if(flag1==1)
    {
        printf("Yes\n");
    }
    else
    {
        printf("No\n");
    }
    return 0;
}

