import java.util.Scanner;

public 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] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		System.out.println("Yes");
    	} else {
    		System.out.println("No");
    	}
    }
} import java.util.Scanner; Scanner java.util public 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] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		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 t[] = new int[n+1];
    	int x[] = new int[n+1];
    	int y[] = new int[n+1];
    	
    	t[0] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		System.out.println("Yes");
    	} else {
    		System.out.println("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] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		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 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] = 0 t[0] t 0 0 x[0] = 0 x[0] x 0 0 y[0] = 0 y[0] y 0 0 boolean result = true; result true for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = 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 tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	} {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = 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 tempx = Math.abs(x[i] - x[i-1]); tempx 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 int tempy = Math.abs(y[i] - y[i-1]); tempy 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 tempt = Math.abs(t[i] - t[i-1]); tempt Math.abs(t[i] - t[i-1]) Math.abs Math t[i] - t[i-1] t[i] t i t[i-1] t i-1 i 1 if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		} (tempx + tempy)> tempt (tempx + tempy) tempx tempy tempt {
    			result = false;
    			break;
    		} result = false result false break; if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		} (tempx +tempy) %2 != tempt %2 (tempx +tempy) %2 (tempx +tempy) tempx tempy 2 tempt %2 tempt 2 {
    			result = false;
    			break;
    		} result = false result false break; sc.close() sc.close sc if (result) {
    		System.out.println("Yes");
    	} else {
    		System.out.println("No");
    	} result {
    		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 t[] = new int[n+1];
    	int x[] = new int[n+1];
    	int y[] = new int[n+1];
    	
    	t[0] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		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 t[] = new int[n+1];
    	int x[] = new int[n+1];
    	int y[] = new int[n+1];
    	
    	t[0] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		System.out.println("Yes");
    	} else {
    		System.out.println("No");
    	}
    }
} Main
import java.util.Scanner;

public 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] = 0 ;
    	x[0] = 0 ;
    	y[0] = 0 ;
    	
    	boolean result = true;
    	
    	for(int i = 1; i <= n; i++) {
    		t[i] = sc.nextInt();
    		x[i] = sc.nextInt();
    		y[i] = sc.nextInt();
    		
    		int tempx = Math.abs(x[i] - x[i-1]);
    		int tempy = Math.abs(y[i] - y[i-1]);
    		int tempt = Math.abs(t[i] - t[i-1]);
    		
    		if ((tempx + tempy)> tempt) {
    			result = false;
    			break;
    		}
    		
    		if ((tempx +tempy) %2 != tempt %2) {
    			result = false;
    			break;
    		}
    	}
    	
    	sc.close();
    	
    	if (result) {
    		System.out.println("Yes");
    	} else {
    		System.out.println("No");
    	}
    }
}
