"use strict";

function main(input) {
  input = input.split(/\n/).slice(1);
  input = input.map(v => v.split(/\s/).map(v => ~~v));

  let ans = "Yes"; // 'Yes' or 'No'
  let distance = 0;
  let time = 0;
  let nextPosi = { x: 0, y: 0 };
  let nextTime = 0;
  let tmpPosi = { x: 0, y: 0 };
  let tmpTime = 0;

  for (let i = 0; i < input.length; i++) {
    nextPosi.x = input[i][1];
    nextPosi.y = input[i][2];

    distance = Math.abs(nextPosi.x - tmpPosi.x + nextPosi.y - tmpPosi.y);

    nextTime = input[i][0];
    time = nextTime - tmpTime;
    if (distance > time || time % 2 != distance % 2) {
      ans = "No";
      break;
    }

    tmpTime = nextTime;
    tmpPosi.x = nextPosi.x;
    tmpPosi.y = nextPosi.y;
  }

  console.log(ans);
}

main(require("fs").readFileSync("/dev/stdin", "utf8"));
