#include <bits/stdc++.h>
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define rep2(i, s, n) for (int i = (s); i < (int)(n); i++)
typedef long long ll;

using namespace std;

int main() {
  int N, D, H;
  cin >> N >> D >> H;
  double ans = 0.0;
  rep(i, N) {
    int d, h;
    cin >> d >> h;
    ans = max(ans, h - (H*1.0-h)/(D-d) * d);
  }
  cout << ans << endl;
  return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define int     double 

 
int32_t main(){
    int n,d,h;cin>>n>>d>>h;
    vector<pair<int,int>>v;
    for(long long i=0;i<n;i++){
        int a,b;cin>>a>>b;
        v.push_back(make_pair(a,b));
    }
    int minval=INT_MAX;
    for(long long i=0;i<n;i++){
        minval=min(minval,atan((h-v[i].second)/(d-v[i].first)));
    }
    // minval=abs(minval * (180/3.14159));
    int ans=tan(minval)*d;
    // cout<<ans<<endl;
    int c=0.0;
    ans=max(c,h-ans);
    if(ans==0) cout<<"0.0";
    else  cout<<ans<<endl;
    return 0;
}