a, b, n, m = map(int, input().split())
if a > b:
    a, b = b, a
    n, m = m, n
l = 0
r = 10 ** 18 + 1
while r - l > 1:
    c = (l + r) // 2
    if c > b:
        ok = False
    else:
        t = (b - c) // m
        ok = a + t >= c
    if ok:
        l = c
    else:
        r = c
print(l)