#include <bits/stdc++.h>
using namespace std;
struct ppp {
  double x;
  int v;
  void mk(double x_, int v_) {
    x = x_;
    v = v_;
  }
} p[120000 * 3];
int tot, n, l, v1, v2, i, x, sum;
double ans[120000], L;
bool cmp(const ppp& a, const ppp& b) { return a.x < b.x; }
int main() {
  scanf("%d%d%d%d", &n, &l, &v1, &v2);
  L = (double)l / (v1 + v2) * v2;
  p[++tot].mk(0, 0);
  p[++tot].mk(2 * l, 0);
  for (i = 1; i <= n; ++i) {
    scanf("%d", &x);
    p[++tot].mk(x - L, 1);
    p[++tot].mk(x, -1);
    p[++tot].mk(x - L + 2 * l, 1);
  }
  sort(p + 1, p + tot + 1, cmp);
  for (i = 1; i <= tot; ++i) {
    if (p[i].x > 2 * l) break;
    if (p[i].x > 0) ans[sum] += p[i].x - p[i - 1].x;
    sum += p[i].v;
  }
  for (i = 0; i <= n; ++i) printf("%.10lf\n", ans[i] / 2 / l);
}
