from fractions import*

a,b,c,d=list(map(int,input().split()))

a-=1

e=c*d//gcd(c,d)

print((b-a-b//c+a//c-b//d+a//d+b//e-a//e))
from fractions import*

a,b,c,d=list(map(int,input().split()))

f=lambda x:x-x//c-x//d+x//(c*d//gcd(c,d))

print((f(b)-f(a-1)))
from fractions import *

a, b, c, d = list(map(int, input().split()))
a -= 1
e = c * d // gcd(c, d)
print((b - a - b // c + a // c - b // d + a // d + b // e - a // e))

from fractions import *

a, b, c, d = list(map(int, input().split()))
f = lambda x: x - x // c - x // d + x // (c * d // gcd(c, d))
print((f(b) - f(a - 1)))

-a -= 1 -e = c * d // gcd(c, d) -print((b - a - b // c + a // c - b // d + a // d + b // e - a // e)) +f = lambda x: x - x // c - x // d + x // (c * d // gcd(c, d)) +print((f(b) - f(a - 1)))