let checkTravel ((lst1,lst2) : int [] * int []) =
  let steps = abs (lst2.[1] - lst1.[1]) + abs (lst2.[2] - lst1.[2])
  let times = lst2.[0] - lst1.[0]
  times >= steps && (times - steps) % 2 = 0

let rec getInps (res : int [] list) (i : int) (n : int) =
  if i=n then
    List.rev res
  else
    let inp = stdin.ReadLine().Split(' ') |> Array.map int
    getInps (inp::res) (i+1) n

let N = stdin.ReadLine() |> int
let inps = getInps [[|0;0;0|]] 0 N
let initInps = List.take (List.length inps - 1) inps
let tailInps = List.tail inps
let tuples = List.zip initInps tailInps

printfn "%s" <| if (List.map checkTravel tuples |> List.reduce (&&)) then "Yes" else "No"