import Control.Monad

main = do
  n <- readLn
  plan <- map (map read . words) <$> replicateM n getLine :: IO [[Int]]
  putStrLn . func' . foldl func (Just [0,0,0]) $ sequence (Just plan)

func :: Maybe [Int] -> Maybe [Int] -> Maybe [Int]
func (Just [t,x,y]) (Just [t',x',y']) = if dist <= dt && (dt `mod` 2) == (dist `mod` 2)
                       then (Just [t',x',y'])
                       else Nothing
  where
    dt = t'-t
    dist = abs (x'-x) + abs (y'-y)

func' :: Maybe [Int] -> String
func' = maybe "No" (\_ -> "Yes")
