#include <bits/stdc++.h>
using namespace std;
using ll = long long;
ll gcd(ll a, ll b) {
  if (b == 0) {
    return a;
  } else {
    return gcd(b, a % b);
  }
}
void solve(ll l, ll n, ll k, ll &x, ll &y) {
  ll max_gcd = std::numeric_limits<ll>::min();
  ll min_gcd = std::numeric_limits<ll>::max();
  for (ll i = 0; i <= n; ++i) {
    max_gcd = max(max_gcd, gcd(l + i * k, n * k));
    min_gcd = min(min_gcd, gcd(l + i * k, n * k));
  }
  x = (n * k) / max_gcd;
  y = (n * k) / min_gcd;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  ll n, k;
  cin >> n >> k;
  ll a, b;
  cin >> a >> b;
  ll x, y, x_cur, y_cur;
  solve((b - a + k) % k, n, k, x, y);
  solve((b + a + k) % k, n, k, x_cur, y_cur);
  x = min(x, x_cur);
  y = max(y, y_cur);
  solve((-b - a + k) % k, n, k, x_cur, y_cur);
  x = min(x, x_cur);
  y = max(y, y_cur);
  solve((-b + a + k) % k, n, k, x_cur, y_cur);
  x = min(x, x_cur);
  y = max(y, y_cur);
  cout << x << ' ' << y << endl;
  return 0;
}
