#include <bits/stdc++.h>
using namespace std;
const int INF = 1e9;
const long long int MOD = 998244353;
const int N = 1e6 + 6;
long long int add(long long int x, long long int y) {
  return (x + y < MOD ? x + y : x + y - MOD);
}
long long int sub(long long int x, long long int y) { return add(x, MOD - y); }
long long int mul(long long int x, long long int y) { return (x * y) % MOD; }
long long int bigMod(long long int a, long long int b) {
  long long int p;
  if (b == 0) return 1;
  p = (bigMod(a, b / 2) % MOD);
  p = (p * p) % MOD;
  if (b & 1) p = (p * a) % MOD;
  return p;
}
long long int modInverse(long long int x) { return bigMod(x, MOD - 2); }
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n;
  cin >> n;
  vector<int> vec(n);
  for (int i = 0; i < n; i++) cin >> vec[i];
  sort(vec.rbegin(), vec.rend());
  vector<long long int> sum(n + 1);
  for (int i = 1; i <= n; i++) sum[i] = add(sum[i - 1], vec[i - 1]);
  for (int i = 1; i <= n; i++) {
    long long int ans = 0;
    for (int j = i, k = 1; j <= n; j += i, k++) {
      int frm = j;
      int to = min(j + i, n);
      long long int tot = sub(sum[to], sum[frm]);
      tot = mul(tot, k);
      ans = add(ans, tot);
    }
    ans = mul(ans, modInverse(n));
    cout << ans << " ";
  }
  cout << '\n';
}
