#include <bits/stdc++.h>
using namespace std;
const int N_MAX = 1e5;
long long gcd(long long a, long long b) { return b == 0 ? a : gcd(b, a % b); }
int main() {
  long long a, b, x, y;
  cin >> a >> b >> x >> y;
  long long lo = LONG_MIN;
  long long hi = LONG_MAX;
  long long d = gcd(x, y);
  x = x / d;
  y = y / d;
  while (hi - lo > 1) {
    long long mid = lo + (hi - lo) / 2;
    if (mid * x > a || mid * y > b)
      hi = mid - 1;
    else
      lo = mid;
  }
  if (x * hi <= a && y * hi <= b) {
    cout << x * hi << " " << y * hi << endl;
    return 0;
  } else if (x * lo <= a && y * lo <= b) {
    cout << x * lo << " " << y * lo << endl;
    return 0;
  }
  cout << "0 0" << endl;
}
