import java.util.Scanner;

class Main {
	public static void main(String[] $) {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] t=new int[n];
		int[] x=new int[n];
		int[] y=new int[n];
		for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		}
		
		System.out.println("Yes");
	}
}
 import java.util.Scanner; Scanner java.util class Main {
	public static void main(String[] $) {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] t=new int[n];
		int[] x=new int[n];
		int[] y=new int[n];
		for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		}
		
		System.out.println("Yes");
	}
} Main public static void main(String[] $) {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] t=new int[n];
		int[] x=new int[n];
		int[] y=new int[n];
		for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		}
		
		System.out.println("Yes");
	} main {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] t=new int[n];
		int[] x=new int[n];
		int[] y=new int[n];
		for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		}
		
		System.out.println("Yes");
	} 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]; t new int[n] n int[] x=new int[n]; x new int[n] n int[] y=new int[n]; y new int[n] n for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		} {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		} 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 for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		} {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		} if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			} i!=0 i 0 {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			} if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				} t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1]) t[i]-t[i-1] t[i] t i t[i-1] t i-1 i 1 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 {
					System.out.println("No");
					System.exit(0);
				} System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				} (t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0 (t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2 (t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1]))) t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) t[i] t i t[i-1] t i-1 i 1 (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 2 0 {
					System.out.println("No");
					System.exit(0);
				} System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			} if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				} t[i]<x[i]+y[i] t[i] t i x[i]+y[i] x[i] x i y[i] y i {
					System.out.println("No");
					System.exit(0);
				} System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				} (t[i]-(x[i]+y[i]))%2!=0 (t[i]-(x[i]+y[i]))%2 (t[i]-(x[i]+y[i])) t[i] t i (x[i]+y[i]) x[i] x i y[i] y i 2 0 {
					System.out.println("No");
					System.exit(0);
				} System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 System.out.println("Yes") System.out.println System.out System System.out "Yes" String[] $ $
import java.util.Scanner;

class Main {
	public static void main(String[] $) {
		Scanner sc = new Scanner(System.in);
		int n=sc.nextInt();
		int[] t=new int[n];
		int[] x=new int[n];
		int[] y=new int[n];
		for(int i=0;i<n;i++) {
			t[i]=sc.nextInt();
			x[i]=sc.nextInt();
			y[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			if(i!=0) {
				if(t[i]-t[i-1]<Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-t[i-1]-(Math.abs(x[i]-x[i-1])+Math.abs(y[i]-y[i-1])))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
			}else {
				if(t[i]<x[i]+y[i]) {
					System.out.println("No");
					System.exit(0);
				}
				if((t[i]-(x[i]+y[i]))%2!=0) {
					System.out.println("No");
					System.exit(0);
				}
				
			}
		}
		
		System.out.println("Yes");
	}
}

