#include <bits/stdc++.h>
using namespace std;
const int MaxN = 110000;
int n;
double A, D, t[MaxN], v[MaxN], Ans[MaxN];
int main() {
  scanf("%d%lf%lf", &n, &A, &D);
  for (int i = 1; i <= n; ++i) {
    scanf("%lf%lf", t + i, v + i);
    double T = v[i] / A;
    if (A * T * T / 2.0 > D)
      Ans[i] = sqrt(2.0 * D / A);
    else
      Ans[i] = T + (D - A * T * T / 2.0) / v[i];
    Ans[i] += t[i];
  }
  for (int i = 1; i <= n; ++i) {
    Ans[i] = max(Ans[i], Ans[i - 1]);
    printf("%.10lf\n", Ans[i]);
  }
  return 0;
}
