import java.util.*;

class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int[] T = new int[N+1];
        int[] X = new int[N+1];
        int[] Y = new int[N+1];
        T[0] = X[0] = Y[0] = 0;
        boolean yes = true;
        for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        }
        System.out.println(yes ? "Yes" : "No");
    }
} import java.util.*; util.* java class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int[] T = new int[N+1];
        int[] X = new int[N+1];
        int[] Y = new int[N+1];
        T[0] = X[0] = Y[0] = 0;
        boolean yes = true;
        for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        }
        System.out.println(yes ? "Yes" : "No");
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int[] T = new int[N+1];
        int[] X = new int[N+1];
        int[] Y = new int[N+1];
        T[0] = X[0] = Y[0] = 0;
        boolean yes = true;
        for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        }
        System.out.println(yes ? "Yes" : "No");
    } main {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int[] T = new int[N+1];
        int[] X = new int[N+1];
        int[] Y = new int[N+1];
        T[0] = X[0] = Y[0] = 0;
        boolean yes = true;
        for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        }
        System.out.println(yes ? "Yes" : "No");
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int[] T = new int[N+1]; T new int[N+1] N+1 N 1 int[] X = new int[N+1]; X new int[N+1] N+1 N 1 int[] Y = new int[N+1]; Y new int[N+1] N+1 N 1 T[0] = X[0] = Y[0] = 0 T[0] T 0 X[0] = Y[0] = 0 X[0] X 0 Y[0] = 0 Y[0] Y 0 0 boolean yes = true; yes true for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        } int i = 1; int i = 1; i 1 i <= N i N i++ i++ i {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        } {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        } T[i] = sc.nextInt() T[i] T i sc.nextInt() sc.nextInt sc X[i] = sc.nextInt() X[i] X i sc.nextInt() sc.nextInt sc Y[i] = sc.nextInt() Y[i] Y i sc.nextInt() sc.nextInt sc int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]); d Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]) Math.abs(X[i] - X[i-1]) Math.abs Math X[i] - X[i-1] X[i] X i X[i-1] X i-1 i 1 Math.abs(Y[i] - Y[i-1]) Math.abs Math Y[i] - Y[i-1] Y[i] Y i Y[i-1] Y i-1 i 1 int dt = T[i] - T[i-1]; dt T[i] - T[i-1] T[i] T i T[i-1] T i-1 i 1 if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            } d > dt || d%2 != dt%2 d > dt d dt d%2 != dt%2 d%2 d 2 dt%2 dt 2 {
                yes = false;
                break;
            } yes = false yes false break; System.out.println(yes ? "Yes" : "No") System.out.println System.out System System.out yes ? "Yes" : "No" yes "Yes" "No" String[] args args
import java.util.*;

class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int[] T = new int[N+1];
        int[] X = new int[N+1];
        int[] Y = new int[N+1];
        T[0] = X[0] = Y[0] = 0;
        boolean yes = true;
        for (int i = 1; i <= N; i++) {
            T[i] = sc.nextInt();
            X[i] = sc.nextInt();
            Y[i] = sc.nextInt();
            int d = Math.abs(X[i] - X[i-1]) + Math.abs(Y[i] - Y[i-1]);
            int dt = T[i] - T[i-1];
            if (d > dt || d%2 != dt%2) {
                yes = false;
                break;
            }
        }
        System.out.println(yes ? "Yes" : "No");
    }
}
