#include<iostream>
#include<string>
#include<algorithm>
#include<cmath>
#include<vector>
#include<iomanip>
using namespace std;
int main(){
  long double N,D,H,mini = 100000000,ans;
  vector<long double> d,h;
  cin >> N >> D >> H;
  d.resize(N);
  h.resize(N);
  for(long long i = 0;i<N;i++){
    cin >> d[i] >> h[i];
    mini = min(mini,(H-h[i])/(D-d[i]));
  }
  ans=H-mini*D;
  if(ans < 0){
    ans = 0;
  }
  cout << fixed << setprecision(15) << ans << endl;
  return 0;
}
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define for_(i, a, b) for(int i = (a);i < (b);++i)
#define ford_(i, a, b) for(int i = (b)-1;i >= (a);--i)
#define rep(i, n) for_(i, 0, n)
#define repd(i, n) rfor_(i, 0, n)


int main(){
  int n;
  double d,h;

  cin >> n >> d >> h;

  vector<double> a(n);
  vector<double> b(n);
  vector<double> m(n);


  rep(i,n){
    cin >> a.at(i) >> b.at(i);
    m.at(i) = (h - b.at(i)) / (d - a.at(i));
  }

  double ma = *min_element(m.begin(),m.end());

  double sepp = h - (d * ma);

  if(sepp < 0)cout << "0.0" << endl;
  else cout << sepp << endl;

  return 0;
}
