def check(v):
    f1 = v/x
    f2 = v/y
    bo = v/(x*y)
    lt = v - f1 - f2 + bo
    c1 = a - (f2 - bo)
    c2 = b - (f1 - bo)
    if c1 > 0:
        lt -= c1
    if lt < 0:
        return False
    if c2 > 0:
        lt -= c2
    if lt < 0:
        return False
    return True

a, b, x, y = map(int, raw_input().split())
l = int(a + b)
h = 1e9
while l < h:
    v = (l + h)//2
    if check(v):
        h = v
    else :
        l = v + 1
print int(l - 1)