import Control.Applicative( (<$>))
import Data.Array.IArray( listArray, Array, (!))

main = do
    [n_, a_, b_, c_, d_] <- map read . words <$> getLine
    let
	step from target 1 = if abs (from-target) <= d_-c_
			    then [True]
			    else [False]
	step from target remstep = do
		pos<-[from-d_..from-c_]++[from+c_..from+d_]
		step pos target (remstep-1)

    putStr $ if or $ step a_ b_ n_
		then "YES"
		else "NO"

