import java.util.*;

public class Main{
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  }
} import java.util.*; util.* java public class Main{
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  }
} Main public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  } main {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int count =0; count 0 int check =0; check 0 ArrayList<Integer> t = new ArrayList<Integer>(); t new ArrayList<Integer>() ArrayList<Integer> x = new ArrayList<Integer>(); x new ArrayList<Integer>() ArrayList<Integer> y = new ArrayList<Integer>(); y new ArrayList<Integer>() ArrayList<Integer> z = new ArrayList<Integer>(); z new ArrayList<Integer>() while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    } sc.hasNext() sc.hasNext sc {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    } count++ count t.add(sc.nextInt()) t.add t sc.nextInt() sc.nextInt sc x.add(sc.nextInt()) x.add x sc.nextInt() sc.nextInt sc y.add(sc.nextInt()) y.add y sc.nextInt() sc.nextInt sc for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } int i =0; int i =0; i 0 i<count i count i++ i++ i {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } int ttmp = t.get(i); ttmp t.get(i) t.get t i int xtmp = x.get(i); xtmp x.get(i) x.get x i int ytmp = y.get(i); ytmp y.get(i) y.get y i z.add(xtmp + ytmp) z.add z xtmp + ytmp xtmp ytmp if (xtmp+ytmp > ttmp) break; xtmp+ytmp > ttmp xtmp+ytmp xtmp ytmp ttmp break; if ((ttmp+xtmp+ytmp) % 2 == 1) break; (ttmp+xtmp+ytmp) % 2 == 1 (ttmp+xtmp+ytmp) % 2 (ttmp+xtmp+ytmp) ttmp+xtmp+ytmp ttmp xtmp ytmp 2 1 break; if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      } i>0 i 0 {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      } int ztmp = z.get(i-1); ztmp z.get(i-1) z.get z i-1 i 1 int interval = Math.abs(xtmp + ytmp - ztmp); interval Math.abs(xtmp + ytmp - ztmp) Math.abs Math xtmp + ytmp - ztmp xtmp + ytmp xtmp ytmp ztmp if (interval > ttmp - t.get(i-1)) break; interval > ttmp - t.get(i-1) interval ttmp - t.get(i-1) ttmp t.get(i-1) t.get t i-1 i 1 break; check++ check if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      } check == count check count {
        System.out.println("Yes");
      } System.out.println("Yes") System.out.println System.out System System.out "Yes" {
        System.out.println("No");
      } System.out.println("No") System.out.println System.out System System.out "No" String[] args args public class Main{
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  }
} public class Main{
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  }
} Main
import java.util.*;

public class Main{
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int count =0;
    int check =0;
    ArrayList<Integer> t = new ArrayList<Integer>();
    ArrayList<Integer> x = new ArrayList<Integer>();
    ArrayList<Integer> y = new ArrayList<Integer>();
    ArrayList<Integer> z = new ArrayList<Integer>();
    while (sc.hasNext()) {
      count++;
      t.add(sc.nextInt());
      x.add(sc.nextInt());
      y.add(sc.nextInt());
    }
    for (int i =0; i<count; i++) {
      int ttmp = t.get(i);
      int xtmp = x.get(i);
      int ytmp = y.get(i);
      z.add(xtmp + ytmp);
      
      if (xtmp+ytmp > ttmp) break;
      if ((ttmp+xtmp+ytmp) % 2 == 1) break;
      if (i>0) {
        int ztmp = z.get(i-1);
        int interval = Math.abs(xtmp + ytmp - ztmp);
        if (interval > ttmp - t.get(i-1)) break;
      }
      check++;
    } 
      if (check == count ) {
        System.out.println("Yes");
      } else {
        System.out.println("No");
      }
  }
}