#include <bits/stdc++.h>
int n;
int cnt[1 << 18];
double g[107][107], dp[20][1 << 18];
void init() {
  for (int i = 0; i < (1 << 18); ++i) cnt[i] = cnt[i >> 1] + (i & 1);
}
int main() {
  init();
  scanf("%d", &n);
  for (int i = 0; i < n; ++i)
    for (int j = 0; j < n; ++j) std::cin >> g[i][j];
  dp[0][(1 << n) - 1] = 1;
  for (int t = 1; t < n; ++t)
    for (int s = 0; s < (1 << n); ++s)
      if (cnt[s] > 1) {
        double p = 2.0 / (cnt[s] * (cnt[s] - 1));
        for (int i = 0; i < n; ++i)
          if ((s >> i) & 1)
            for (int j = i + 1; j < n; ++j)
              if ((s >> j) & 1) {
                dp[t][s ^ (1 << j)] += dp[t - 1][s] * g[i][j] * p;
                dp[t][s ^ (1 << i)] += dp[t - 1][s] * g[j][i] * p;
              }
      }
  for (int i = 0; i < n; ++i) printf("%.6lf ", dp[n - 1][(1 << i)]);
  puts("");
  return 0;
}
