#include <bits/stdc++.h>
using namespace std;
inline long long GetA1(long long a1a2, long long a2a3, long long a1a3) {
  long long a3 = abs(sqrt((a2a3 * a1a3) / a1a2));
  return a1a3 / a3;
}
int main() {
  int N;
  int tmp;
  map<long long, long long> mp;
  cin >> N;
  vector<vector<long long>> matrix(N, vector<long long>(N));
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
      cin >> matrix[i][j];
    }
  }
  if (N < 2) cout << NULL;
  long long a1 = GetA1(matrix[0][1], matrix[1][2], matrix[0][2]);
  long long out;
  for (int i = 0; i < N; i++) {
    if (!i) {
      cout << a1 << " ";
      mp.insert(pair<long long, long long>(matrix[0][i], a1));
      continue;
    }
    if (!mp.count(matrix[0][i])) {
      out = matrix[0][i] / a1;
      mp.insert(pair<long long, long long>(matrix[0][i], out));
      cout << out << " ";
    } else {
      out = mp[matrix[0][i]];
      cout << out << " ";
    }
  }
  return 0;
}
