#include <bits/stdc++.h>
using namespace std;
const int N = 2000 + 7;
const int inf = 0x3f3f3f3f;
const long long INF = 0x3f3f3f3f3f3f3f3f;
const int mod = 1e9 + 7;
const double eps = 1e-8;
const double PI = acos(-1);
template <class T, class S>
inline void add(T &a, S b) {
  a += b;
  if (a >= mod) a -= mod;
}
template <class T, class S>
inline void sub(T &a, S b) {
  a -= b;
  if (a < 0) a += mod;
}
template <class T, class S>
inline bool chkmax(T &a, S b) {
  return a < b ? a = b, true : false;
}
template <class T, class S>
inline bool chkmin(T &a, S b) {
  return a > b ? a = b, true : false;
}
int n, mine = inf, G[N][N], d[N];
bool vis[N];
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    for (int j = i + 1; j <= n; j++) {
      scanf("%d", &G[i][j]);
      G[j][i] = G[i][j];
      chkmin(mine, G[i][j]);
    }
  }
  for (int i = 1; i <= n; i++) {
    for (int j = i + 1; j <= n; j++) {
      G[i][j] -= mine;
      G[j][i] -= mine;
    }
  }
  for (int i = 1; i <= n; i++) {
    d[i] = inf;
    for (int j = 1; j <= n; j++) {
      if (i != j) {
        chkmin(d[i], G[i][j] << 1);
      }
    }
  }
  d[0] = inf;
  for (int i = 1; i <= n; i++) {
    int p = 0;
    for (int j = 1; j <= n; j++) {
      if (!vis[j] && d[j] < d[p]) {
        p = j;
      }
    }
    for (int j = 1; j <= n; j++) {
      chkmin(d[j], d[p] + G[p][j]);
    }
    vis[p] = true;
  }
  for (int i = 1; i <= n; i++) printf("%lld\n", 1LL * (n - 1) * mine + d[i]);
  return 0;
}
