#include <bits/stdc++.h>
int mod = 1e9 + 7;
const int inf = 1e15;
using namespace std;
double a, d;
double bs(double tt) {
  double st = 0, end = tt * 10, idx = 0;
  for (int i = 1; i < 40; i++) {
    double mid = (st + end) / 2;
    if (mid * mid >= tt) {
      end = mid;
      idx = mid;
    } else
      st = mid;
  }
  return idx;
}
double calc(double t, double v) {
  double tt = v / a;
  double dd = v * v / (2 * a);
  if (dd <= d) {
    double t1 = (d - dd) / v;
    return (t + t1 + tt);
  } else {
    tt = 2 * d / a;
    return (t + bs(tt));
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  int n;
  scanf("%d%lf%lf", &n, &a, &d);
  double t[n + 1], v[n + 1];
  for (int i = 1; i < n + 1; i++) scanf("%lf%lf", &t[i], &v[i]);
  double ans[n + 1];
  ans[0] = 0;
  cout << setprecision(20);
  for (int i = 1; i < n + 1; i++) ans[i] = max(calc(t[i], v[i]), ans[i - 1]);
  for (int i = 1; i < n + 1; i++) printf("%4f\n", ans[i]);
}
