#include <bits/stdc++.h>
using namespace std;
const int MAX = 100005, INF = 1 << 30;
int n;
double a, d;
double t, v;
double dp[MAX];
double cal(double v) {
  double t1 = v / a;
  double t2 = (d - 0.5 * ((double)a * t1 * t1)) / v;
  if (t2 < 0) return sqrt((d * 2 / a));
  return t1 + t2;
}
int main() {
  cin >> n >> a >> d;
  for (int i = 1; i <= n; i++) {
    cin >> t >> v;
    double T = cal(v) + t;
    if (i == 1) {
      dp[i] = T;
      continue;
    }
    if (T < dp[i - 1])
      dp[i] = dp[i - 1];
    else
      dp[i] = T;
  }
  for (int i = 1; i <= n; i++) printf("%.9lf\n", dp[i]);
  return 0;
}
