import Control.Applicative import Control.Monad import qualified Data.ByteString.Char8 as B import Data.Maybe (fromJust) import Text.Printf import Debug.Trace readInts :: B.ByteString -> [Integer] readInts = map (fst . fromJust . B.readInteger) . B.words getInts :: IO [Integer] getInts = liftM readInts B.getLine main = do [h,w,n,k] <- getInts let ans = if h*w `mod` n == k `mod` n then "YES" else "NO" in putStrLn ans