isComposite :: Int -> Bool isComposite m = any (== 0) [mod m k | k <- [2 .. (truncate $ sqrt $ fromIntegral m)]] main :: IO () main = putStrLn . show . (\n -> head [l | l <- [n - 100 .. n + 100], isComposite l]) . read =<< getLine