#include <bits/stdc++.h>
using namespace std;
const int maxn = 1000010;
int n, tp, st[maxn], nxt[maxn];
long long a[maxn], b[maxn];
double ans[maxn];
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%lld", &a[i]), ans[i] = a[i];
    b[i] = b[i - 1] + a[i];
  }
  auto slope = [&](int x, int y) { return 1.0 * (b[x] - b[y]) / (x - y); };
  st[tp = 1] = 0;
  for (int i = 1; i <= n; i++) {
    while (tp > 1 && slope(st[tp], st[tp - 1]) > slope(st[tp], i)) tp--;
    st[++tp] = i;
  }
  for (int i = 1; i < tp; i++) {
    double sum = 0;
    for (int j = st[i] + 1; j <= st[i + 1]; j++) sum += a[j];
    sum /= st[i + 1] - st[i];
    for (int j = st[i] + 1; j <= st[i + 1]; j++) ans[j] = sum;
  }
  for (int i = 1; i <= n; i++) {
    printf("%.12f\n", ans[i]);
  }
  return 0;
}
