#include <bits/stdc++.h>
using namespace std;
long long a, b, x, y;
void nhap() { cin >> a >> b >> x >> y; }
void chuanbi() {}
int check(long long k) {
  long long sl1 = k / x;
  long long sl2 = k / y;
  long long sl3 = k / (x * y);
  long long sl4 = sl1 - sl3;
  long long sl5 = sl2 - sl3;
  long long k1 = max(a - sl5, 0ll);
  long long k2 = max(b - sl4, 0ll);
  return (k1 + k2 <= k - sl1 - sl2 + sl3);
}
void xuli() {
  long long l = 0, r = 1000;
  while (r - l > 1) {
    long long g = (r + l) / 2;
    if (check(g))
      r = g;
    else
      l = g;
  }
  cout << r;
}
int main() {
  ios_base::sync_with_stdio(0);
  nhap();
  chuanbi();
  xuli();
}
