#include <bits/stdc++.h>
using namespace std;
const long long N = 1e5 + 5;
long long n, a, d, t[N], v[N];
long double ans[N];
long double get_time(long double t, long double v) {
  long double tt = v / a;
  long double x = a * tt * tt / 2;
  if (x >= d) {
    return t + sqrt(2.0 * d / a);
  } else {
    return t + tt + (d - x) / v;
  }
}
int32_t main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> n >> a >> d;
  for (long long i = 1; i <= n; i++) {
    cin >> t[i] >> v[i];
    ans[i] = max(ans[i - 1], get_time(t[i], v[i]));
  }
  for (long long i = 1; i <= n; i++) {
    cout << fixed << setprecision(12) << ans[i] << "\n";
  }
}
