#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e5 + 10;
long long gcd(long long x, long long y) { return y == 0 ? x : gcd(y, x % y); }
int main() {
  long long n, k, a, b;
  cin >> n >> k >> a >> b;
  long long ma = -1e18, mi = 1e18;
  for (long long i = 0; i < n * k; i += k) {
    if (b + i < a) {
      long long L = n * k - a + b + i;
      ma = max(ma, n * k / gcd(n * k, L));
      mi = min(mi, n * k / gcd(n * k, L));
    }
    if (b + i > a) {
      long long L = b + i - a;
      ma = max(ma, n * k / gcd(n * k, L));
      mi = min(mi, n * k / gcd(n * k, L));
    }
    if (i + k - b < a) {
      long long L = i + k - b + n * k - a;
      ma = max(ma, n * k / gcd(n * k, L));
      mi = min(mi, n * k / gcd(n * k, L));
    }
    if (i + k - b > a) {
      long long L = i + k - b - a;
      ma = max(ma, n * k / gcd(n * k, L));
      mi = min(mi, n * k / gcd(n * k, L));
    }
    if (b + i == a) mi = min(mi, 1ll);
    if (i + k - b == a) mi = min(mi, 1ll);
  }
  cout << mi << " " << ma << endl;
  return 0;
}
