module Main where main :: IO () main = readLn >>= putStrLn . solve solve :: Int -> String solve n | isnotPrime n = "YES" | otherwise = "NO" isnotPrime :: Int -> Bool isnotPrime = (>=3) . length . primes primes :: Int -> [Int] primes n = go n 2 go :: Int -> Int -> [Int] go x i | i * i > x = [x] | x `mod` i == 0 = i : go (x `div` i) i | otherwise = go x $ succ i