def gcd(a,b): while b != 0: a, b = b, a % b return a l, r, m, k = map(int,input().split()) if k == 0: print("Yes") else: if r - l + 1 >= m: print("Yes") else: lm = l % m rm = r % m if lm > rm: print("Yes") else: mkgcd = gcd(m,k) if rm-lm+1 >= m//mkgcd: print("Yes") else: tar = m//mkgcd if rm-lm+1 >= tar: print("Yes") else: lmt = lm % tar rmt = rm % tar if lmt > rmt: print("Yes") else: print("No")