import           Control.Applicative
import           Control.Monad

main :: IO ()
main = do
    [a, b, c, d] <- fmap read . words <$> getLine :: IO [Int]
    let ab = abs (b - a)
    let bc = abs (c - b)
    let ac = abs (c - a)
    if (ac <= d) || (ab <= d && bc <= d)
        then putStrLn "Yes"
        else putStrLn "No"
