#include <bits/stdc++.h>
using namespace std;
int sim = 1e6;
int n;
vector<vector<long double>> tabl;
int main() {
  ios_base::sync_with_stdio(0);
  cin >> n;
  tabl.assign(n, vector<long double>(n, 0));
  for (auto &i : tabl)
    for (auto &j : i) cin >> j;
  vector<long double> situations(1 << n, 0);
  situations[(1 << n) - 1] = 1;
  vector<vector<int>> nums(n + 1);
  for (int i = 1; i < (1 << n); ++i) {
    nums[__builtin_popcount(i)].push_back(i);
  }
  for (int bb = n; bb > 0; --bb) {
    for (auto num : nums[bb]) {
      long double options = bb * (bb - 1) / 2;
      long double chance = situations[num] / options;
      for (int x1 = 0; x1 < n; ++x1) {
        for (int x2 = 0; x2 < x1; ++x2) {
          if (((1 << x1) & num) and ((1 << x2) & num)) {
            situations[(1 << x1) ^ num] += chance * tabl[x2][x1];
            situations[(1 << x2) ^ num] += chance * tabl[x1][x2];
          }
        }
      }
    }
  }
  for (int i = 0; i < n; ++i) {
    cout << situations[1 << i] << ' ';
  }
}
