#include <bits/stdc++.h>
using namespace std;
const int maxN = 1e6 + 10, maxL = 31;
int a[maxN];
long long ps[maxN];
long double ans[maxN];
bool cmp(pair<long long, long long> C, pair<long long, long long> B,
         pair<long long, long long> A) {
  return (C.second - B.second) * (B.first - A.first) <
         (B.second - A.second) * (C.first - B.first);
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int n;
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    ps[i + 1] = ps[i] + a[i];
  }
  vector<pair<long long, long long> > st;
  st.push_back({0, 0});
  vector<int> points;
  for (int i = 1; i <= n; i++) {
    while (st.size() >= 2 && cmp(pair<long long, long long>(i, ps[i]),
                                 st.back(), st[st.size() - 2]))
      st.pop_back();
    st.push_back({i, ps[i]});
  }
  int len = st.size();
  cout << fixed << setprecision(10);
  for (int i = 0; i < len - 1; i++) {
    int l = st[i].first, r = st[i + 1].first;
    for (int j = 0; j < r - l; j++)
      cout << (long double)(ps[r] - ps[l]) / (r - l) << ' ';
  }
  cout << endl;
}
