btl :: Int -> Int -> Int -> Int -> String
btl a b c d | c <= 0 ="Yes"
            | a <= 0 = "No"
            | otherwise = btl (a-d) b (c-b) d

main :: IO ()
main = do
    [a,b,c,d] <- map read <$> (words <$> getLine) :: IO [Int]
    putStrLn (btl a b c d)
