import Data.List
import qualified Data.ByteString.Char8 as B
import Control.Monad

main :: IO ()
main = readLn >>= main'
    where
        main' n = replicateM n breads >>= putStrLn . solve

solve :: [[Int]] -> String 
solve = check 0 0 0
    where
        check nt nx ny ([t, x, y] : xs)
            | dt == dd || (dt > dd && even (dt - dd)) = check t x  y xs
            | otherwise = "No"
            where
                dt = abs $ t - nt
                dd = abs (x - nx) + abs (y - ny)
        check _ _ _ _ = "Yes"

breads :: IO [Int]
breads = unfoldr uff <$> B.getLine
    where
        uff b = check <$> B.readInt b
        check (a, b)
            | B.null b = (a, b)
            | otherwise = (a, B.tail b)