import Control.Monad
import Control.Monad.State

type Stat = ([[Int]], Int, Int, Int)

main :: IO ()
main = do
  n <- readLn
  ass <- replicateM n readInts
  putStr $ solve ass

readInts :: IO [Int]
readInts = map read . words <$> getLine

solve :: [[Int]] -> String
solve ass = evalState solve' (ass, 0, 0, 0)

solve' :: State Stat String
solve' = do
  (ass, s, u, v) <- get
  case ass of
    [] -> return "Yes"
    ([t, x, y]:bss)
      | p -> put (bss, t, x, y) >> solve'
      | otherwise -> return "No"
      where  
        d = (abs (x - u)) + (abs (y - v))
        p = d <= t - s && even (t - s - d)



