#include <bits/stdc++.h>
using namespace std;
const long long INF = 1000000000000000000LL;
long long n, k, a, b, mx = -INF, mn = INF;
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
long long solve(long long step) {
  if (step < 0) step = -step;
  return n * k / gcd(step, n * k);
}
int main() {
  scanf("%lld%lld%lld%lld", &n, &k, &a, &b);
  long long a1 = -a - b, a2 = a - b, a3 = b - a, a4 = a + b;
  while (a1 <= 0) a1 += k;
  while (a2 <= 0) a2 += k;
  while (a3 <= 0) a3 += k;
  while (a4 <= 0) a4 += k;
  for (int i = 0; i < n; i++) {
    long long step, x;
    step = (long long)i * k + a1;
    x = solve(step);
    mx = max(mx, x), mn = min(mn, x);
    step = (long long)i * k + a2;
    x = solve(step);
    mx = max(mx, x), mn = min(mn, x);
    step = (long long)i * k + a3;
    x = solve(step);
    mx = max(mx, x), mn = min(mn, x);
    step = (long long)i * k + a4;
    x = solve(step);
    mx = max(mx, x), mn = min(mn, x);
  }
  printf("%lld %lld\n", mn, mx);
  return 0;
}
