import java.util.*;

class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int N=Integer.parseInt(sc.next());
        int prevT=0;
        int prevX=0;
        int prevY=0;
        for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        }
        System.out.println("Yes");
    }
} import java.util.*; util.* java class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int N=Integer.parseInt(sc.next());
        int prevT=0;
        int prevX=0;
        int prevY=0;
        for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        }
        System.out.println("Yes");
    }
} Main public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int N=Integer.parseInt(sc.next());
        int prevT=0;
        int prevX=0;
        int prevY=0;
        for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        }
        System.out.println("Yes");
    } main {
        Scanner sc = new Scanner(System.in);
        int N=Integer.parseInt(sc.next());
        int prevT=0;
        int prevX=0;
        int prevY=0;
        for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        }
        System.out.println("Yes");
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N=Integer.parseInt(sc.next()); N Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int prevT=0; prevT 0 int prevX=0; prevX 0 int prevY=0; prevY 0 for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        } int i=0; int i=0; i 0 i<N i N i++ i++ i {
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        } {
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        } int nextT=Integer.parseInt(sc.next()); nextT Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int nextX=Integer.parseInt(sc.next()); nextX Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int nextY=Integer.parseInt(sc.next()); nextY Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int dt=nextT-prevT; dt nextT-prevT nextT prevT int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY); dist Math.abs(nextX-prevX)+Math.abs(nextY-prevY) Math.abs(nextX-prevX) Math.abs Math nextX-prevX nextX prevX Math.abs(nextY-prevY) Math.abs Math nextY-prevY nextY prevY if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            } (dt<dist)||((dist-dt)%2!=0) (dt<dist) dt dist ((dist-dt)%2!=0) (dist-dt)%2 (dist-dt) dist dt 2 0 {
                System.out.println("No");
                return;
            } System.out.println("No") System.out.println System.out System System.out "No" return; prevT=nextT prevT nextT prevX=nextX prevX nextX prevY=nextY prevY nextY System.out.println("Yes") System.out.println System.out System System.out "Yes" String[] args args
import java.util.*;

class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int N=Integer.parseInt(sc.next());
        int prevT=0;
        int prevX=0;
        int prevY=0;
        for (int i=0;i<N;i++){
            int nextT=Integer.parseInt(sc.next());
            int nextX=Integer.parseInt(sc.next());
            int nextY=Integer.parseInt(sc.next());
            int dt=nextT-prevT;
            int dist=Math.abs(nextX-prevX)+Math.abs(nextY-prevY);
            if ((dt<dist)||((dist-dt)%2!=0)){
                System.out.println("No");
                return;
            }
            prevT=nextT;
            prevX=nextX;
            prevY=nextY;
        }
        System.out.println("Yes");
    }
}