import Control.Monad (replicateM) import Data.List (foldr) dx = [(-2, 1), (-1, 2), (1, 2), (2, 1), (-2, -1), (-1, -2), (1, -2), (2, -1)] (x, y) +++ (x', y') = (x + x', y + y') main = do [x, y] <- fmap (map read . words) getLine let can = any (any ((== (x, y)) . foldr (+++) (0, 0)) . flip replicateM dx) [1..3] putStrLn $ if can then "YES" else "NO"