#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 5;
int n;
double p, q, a[N], b[N];
inline double f(double x) {
  double y = 1;
  for (int i = 1; i <= n; ++i) y = min(y, (1.0 - x * b[i]) / a[i]);
  return y * p + x * q;
}
int main() {
  scanf("%d%lf%lf", &n, &p, &q);
  double l = 0, r = 0;
  for (int i = 1; i <= n; ++i) scanf("%lf%lf", &a[i], &b[i]), r = max(r, b[i]);
  r = 1.0 / r;
  double tmp1, tmp2;
  int T = 80;
  while (T--) {
    tmp1 = l + (r - l) / 3.0;
    tmp2 = l + 2.0 * (r - l) / 3.0;
    if (f(tmp1) > f(tmp2))
      r = tmp2;
    else
      l = tmp1;
  }
  printf("%.15lf\n", f(l));
}
