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

int main(){
    int a=0;
    int b=0;
    int c=0;
    int d=0;
    int x=0;
    int y=0;
    int z=0;

    int n=0;
    int m=0;
    int i,j,k;
    int te=0;
    int A[101] ={0};
    int B[101] = {0};
    int C[101] = {0};
    int D[101] = {0};

    int AA[101][101];
    int BB[3][10];
    int CC[3][10];
    int DD[3][10];
    
    char op;
    char OP[100];
    long sum=0;
    double f1=0;
    double f2=0;

    double dx;
    double dy;
    double da;
    double db;
    double dt=0;
    double dc = 0;

    //cin >> x >>y >>z;
    //cin >> a;
    //cin >> a >> b;
    //cin >> a >> b >> c;
    //cin >> a>> b >> x >> y >> z;

    cin >> n >> dx >> dy;
    for(i=0;i<n;i++){
        cin >> da >> db;
        if(dy/dx >db/da ){
            continue;
        }
        else{
            dt = db-((dy-db)/(dx-da))*da;
                if(dt>dc){
                    dc=dt;
            }
        }
    }
    printf("%.10lf",dc);
    return 0;
}


#include <bits/stdc++.h>
using namespace std;
#define r(i,a,b) for(int i=a; i<(b); i++)
using ll = long long;
#define tc(a,b) cout << a << ": " << b << endl
#define l() cout << endl

/*--------------------------------
=== 数値の絶対値最大 ===
https://docs.microsoft.com/ja-jp/cpp/c-language/cpp-integer-limits?view=msvc-160

符号なしなら先頭にUが付き、0以上の範囲になり+方向に2倍の数値になる。
-type-	name		aboutvalue	binary
short	SHRT_MAX	3* 10^  4	2^15
int		INT_MAX		2* 10^  9	2^31
ll		LLONG_MAX	9* 10^ 18	2^63

=== 表示の桁詰め ===
右詰	は right << setw(桁数) を出力内部に記載する
0埋め	は上の頭部に setfill('0') << を付け足す
[注意] 0埋めを解除するために cout << setfill(' '); をする必要がある。

--------------------------------*/

int main(){
  double n,d,h;
  cin >> n >> d >> h;
  
  double ans = 0.0;
  
  r(i, 0,n){
    double di, hi;  cin >> di >> hi;
    
    double x = d * (h-hi) / (d-di);
    
    ans = max(ans, h-x);
  }
  
  cout << ans << endl;
}