#include <bits/stdc++.h>
using namespace std;
const int N = 100007;
long long int a, v[N], t[N];
long long int d;
int n;
double mint;
double finTime(int i) {
  double s0 = double(v[i] * v[i]) / double(2. * a);
  if (s0 >= d) {
    return sqrt(double(2. * d) / double(a)) + double(t[i]);
  }
  return (double(d) - s0) / double(v[i]) + double(v[i]) / double(a) +
         double(t[i]);
}
int main() {
  scanf(
      "%d "
      "%I64d"
      "%I64d",
      &n, &a, &d);
  mint = -1. / 0.;
  for (int i = 0; i < n; i++) {
    scanf(
        "%I64d"
        "%I64d",
        t + i, v + i);
    mint = max(mint, finTime(i));
    printf("%.20f\n", mint);
  }
}
