#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-5;
const double inf = 1e8;
const int maxn = 100 * 1000 + 100;
int n;
double vs, d, a;
int v[maxn], t[maxn];
bool check(double tim) {
  double dis;
  if (tim * a < vs) {
    dis = (tim * (tim * a)) / 2;
  } else {
    double tim2 = vs / a;
    dis = (vs * tim2) / 2 + vs * (tim - tim2);
  }
  return dis > d - eps;
}
double bs(double b, double e) {
  if (e - b < eps) return b;
  double mid = (b + e) / 2;
  if (check(mid))
    return bs(b, mid);
  else
    return bs(mid, e);
}
int main() {
  ios::sync_with_stdio(false);
  cin >> n >> a >> d;
  for (int i = 0; i < n; ++i) cin >> t[i] >> v[i];
  double mi = 0;
  cout << fixed << setprecision(4) << endl;
  for (int i = 0; i < n; ++i) {
    vs = v[i];
    mi = max(mi, t[i] + bs(0, inf));
    cout << mi << endl;
  }
  return 0;
}
