#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  double l, v1, v2;
  cin >> n >> l >> v1 >> v2;
  double d = v2 * l;
  d /= (double)(v1 + v2);
  vector<pair<double, int> > p;
  double x, h;
  for (int i = 0; i < n; i++) {
    cin >> x;
    h = x - d;
    if (h < 0) {
      p.push_back({0, 1});
      p.push_back({x, -1});
      p.push_back({2 * l + h, 1});
      p.push_back({2 * l, -1});
    } else {
      p.push_back({h, 1});
      p.push_back({x, -1});
    }
  }
  p.push_back({0, 0});
  p.push_back({2 * l, 0});
  sort(p.begin(), p.end());
  int cnt = 0;
  double prev = 0;
  double res[100011] = {0};
  for (int i = 0; i < p.size(); i++) {
    if (i > 0) res[cnt] += p[i].first - prev;
    prev = p[i].first;
    cnt += p[i].second;
  }
  for (int i = 0; i <= n; i++) {
    printf("%.10f\n", res[i] / (2.0 * (double)l));
  }
}
