#include <bits/stdc++.h>
int n;
double ti[100005], s, tf[100005], vm[100005], a, d;
int main() {
  register int i;
  scanf("%d%lf%lf\n", &n, &a, &d);
  for (i = 1; i <= n; ++i) scanf("%lf%lf\n", &tf[i], &vm[i]);
  for (i = 1; i <= n; ++i) {
    ti[i] = tf[i] + (vm[i] / a);
    s = a / 2 * (ti[i] - tf[i]) * (ti[i] - tf[i]);
    if (s > d) {
      ti[i] = tf[i] + sqrt(2 * d / a);
      if (ti[i] < ti[i - 1]) ti[i] = ti[i - 1];
      continue;
    }
    ti[i] += (d - s) / vm[i];
    if (ti[i] < ti[i - 1]) ti[i] = ti[i - 1];
  }
  for (i = 1; i <= n; ++i) printf("%.10lf\n", ti[i]);
  return 0;
}
