#include <bits/stdc++.h>
using namespace std;
const long double pi = 3.1415926535897932385;
const long double E = 2.71828182845904523536;
const long long mod = 1e9 + 7;
const long long inf = 1e15;
const double eps = 1e-5;
const int N = 100100;
double n, p;
pair<double, double> a[N];
bool ok(double x) {
  double sum = 0.0, y, pp = p * x;
  for (int i = 0; i < (int)n; i++) {
    y = a[i].second - (a[i].first * x);
    if (y < 0) sum += (y * -1.0);
  }
  return sum <= pp;
}
int main() {
  scanf("%lf%lf", &n, &p);
  long long sum = 0;
  for (int i = 0; i < (int)n; i++) {
    scanf("%lf%lf", &a[i].first, &a[i].second);
    sum += (int)a[i].first;
  }
  if ((int)p >= sum) {
    printf("-1");
    return 0;
  }
  double lo = 0, hi = 1e12;
  while (hi - lo > eps) {
    double mid = (hi + lo + eps) / 2;
    if (ok(mid))
      lo = mid;
    else
      hi = mid - eps;
  }
  printf("%.4f", lo);
  return 0;
}
