#include <bits/stdc++.h>
using namespace std;
void solve() {
  int n;
  cin >> n;
  long long a[1010000];
  long long s[1010000];
  memset(a, 0, sizeof(a));
  for (int i = 0; i < n; i++) {
    scanf("%lld", a + i);
  }
  vector<pair<long long, long long>> pll;
  for (int i = 0; i < n; i++) {
    long long sum = a[i];
    long long sz = 1;
    while (!pll.empty() &&
           pll.back().first * 1.0 / pll.back().second > sum * 1.0 / sz) {
      sum += pll.back().first;
      sz += pll.back().second;
      pll.pop_back();
    }
    pll.push_back(make_pair(sum, sz));
  }
  for (int i = 0; i < pll.size(); i++) {
    for (int j = 0; j < pll[i].second; j++) {
      if (!i && !j)
        printf("%.9lf", pll[i].first * 1.0 / pll[i].second);
      else
        printf(" %.9lf", pll[i].first * 1.0 / pll[i].second);
    }
  }
  return;
}
int main() {
  solve();
  return 0;
}
