#include <iostream>
using namespace std;

typedef long long int LLI;

int n;
LLI d[10];
int v[10];

bool input() {
  cin >> n;
  if (!n) {
    return false;
  }
  for (int i = 0; i < n; ++i) {
    cin >> d[i] >> v[i];
  }
  return true;
}

LLI gcd(LLI a, LLI b) {
  if (a < b) {
    return gcd(b, a);
  }

  while (b) {
    LLI t = a % b;
    a = b;
    b = t;
  }
  return a;
}

LLI lcm(LLI a, LLI b) {
  LLI g = gcd(a, b);
  return a / g * b;
}

void solve() {
  LLI g = 1;
  for (int i = 0; i < n; ++i) {
    g = lcm(v[i], g);
  }
  for (int i = 0; i < n; ++i) {
    d[i] *= g / v[i];
  }
  LLI m = gcd(d[0], d[1]);
  for (int i = 2; i < n; ++i) {
    m = gcd(d[i], m);
  }
  for (int i = 0; i < n; ++i) {
    d[i] /= m;
  }
  g = 1;
  for (int i = 0; i < n; ++i) {
    g = lcm(d[i], g);
  }
  for (int i = 0; i < n; ++i) {
    cout << g / d[i] << endl;
  }
}

int main() {
  while (input()) {
    solve();
  }
  return 0;
}