#include <bits/stdc++.h>
using namespace std;
double f1(double l, double a, double v) {
  double nv = sqrt(l * 2 * a);
  return nv / a;
}
double f(double l, double a, double v) {
  l = l - 1.0 / 2 * v * v / a;
  return v / a + l / v;
}
char s[10485760];
double t[1048576], et[1048576], v[1048576];
int main() {
  int n;
  double a, b;
  while (cin >> n >> a >> b) {
    for (int i = 0; i < (n); i++) {
      cin >> t[i] >> v[i];
    }
    for (int i = 0; i < (n); i++) {
      if (b < 1.0 / 2 * v[i] * v[i] / a)
        et[i] = t[i] + f1(b, a, v[i]);
      else
        et[i] = t[i] + f(b, a, v[i]);
    }
    printf("%.10lf\n", et[0]);
    for (int i = 0; i < (n - 1); i++) {
      if (et[i + 1] <= et[i]) {
        et[i + 1] = et[i];
      }
      printf("%.10lf\n", et[i + 1]);
    }
  }
}
