#include <bits/stdc++.h>
using namespace std;
const int N = 1000000 + 10;
double a[N];
int n;
double sum[N];
pair<double, int> stk[N];
double calc(const pair<double, int> &p, const pair<double, int> &q) {
  return (q.first - p.first) / (q.second - p.second);
}
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    int x;
    scanf("%d", &x);
    a[i] = x;
    sum[i] = a[i] + sum[i - 1];
  }
  int top = 0;
  stk[top++] = {0, 0};
  for (int i = 1; i <= n; i++) {
    while (top >= 2 &&
           calc(stk[top - 2], stk[top - 1]) >= calc(stk[top - 1], {sum[i], i}))
      top--;
    stk[top++] = {sum[i], i};
  }
  for (int i = 0; i + 1 < top; i++) {
    auto p = stk[i];
    auto q = stk[i + 1];
    double t = calc(p, q);
    for (int j = p.second + 1; j <= q.second; j++) a[j] = t;
  }
  for (int i = 1; i <= n; i++) {
    printf("%.10f\n", a[i]);
  }
  return 0;
}
