import java.io.*;
public class Main{
    public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    }
    static void print(Object o){
        System.out.print(o.toString());
    }
    static void println(Object o){
        System.out.println(o.toString());
    }
    static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    }
} import java.io.*; io.* java public class Main{
    public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    }
    static void print(Object o){
        System.out.print(o.toString());
    }
    static void println(Object o){
        System.out.println(o.toString());
    }
    static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    }
} Main public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    } main {
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    } Reader r = new Reader(); r new Reader() int[][] c = new int[3][]; c new int[3][] 3 int sum = 0; sum 0 for(int i = 0; i < 3; i++)
            c[i] = r.ii(); int i = 0; int i = 0; i 0 i < 3 i 3 i++ i++ i c[i] = r.ii(); c[i] = r.ii() c[i] c i r.ii() r.ii r for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; int i = 0; int i = 0; i 0 i < 3 i 3 i++ i++ i for(int j = 0; j < 3; j++)
                sum += c[i][j]; for(int j = 0; j < 3; j++)
                sum += c[i][j]; int j = 0; int j = 0; j 0 j < 3 j 3 j++ j++ j sum += c[i][j]; sum += c[i][j] sum c[i][j] c[i] c i j boolean flag = true; flag true println(flag ? "Yes" : "No") println flag ? "Yes" : "No" flag "Yes" "No" String[] args args static void print(Object o){
        System.out.print(o.toString());
    } print {
        System.out.print(o.toString());
    } System.out.print(o.toString()) System.out.print System.out System System.out o.toString() o.toString o Object o o static void println(Object o){
        System.out.println(o.toString());
    } println {
        System.out.println(o.toString());
    } System.out.println(o.toString()) System.out.println System.out System System.out o.toString() o.toString o Object o o static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    } Reader Reader(){
            super(new InputStreamReader(System.in));
        } Reader {
            super(new InputStreamReader(System.in));
        } super(new InputStreamReader(System.in)) super new InputStreamReader(System.in) String s() throws IOException{
            return readLine();
        } s {
            return readLine();
        } return readLine(); readLine() readLine String[] ss() throws IOException{
            return s().split(" ");
        } ss {
            return s().split(" ");
        } return s().split(" "); s().split(" ") s().split s() s " " int Int(String s){
            return Integer.parseInt(s);
        } Int {
            return Integer.parseInt(s);
        } return Integer.parseInt(s); Integer.parseInt(s) Integer.parseInt Integer s String s s int i() throws IOException{
            return Int(s());
        } i {
            return Int(s());
        } return Int(s()); Int(s()) Int s() s int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        } ii {
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        } String[] ss = ss(); ss ss() ss int size = ss.length; size ss.length ss ss.length int[] ii = new int[size]; ii new int[size] size for(int j = 0; j < size; j++) ii[j] = Int(ss[j]); int j = 0; int j = 0; j 0 j < size j size j++ j++ j ii[j] = Int(ss[j]); ii[j] = Int(ss[j]) ii[j] ii j Int(ss[j]) Int ss[j] ss j return ii; ii BufferedReader public class Main{
    public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    }
    static void print(Object o){
        System.out.print(o.toString());
    }
    static void println(Object o){
        System.out.println(o.toString());
    }
    static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    }
} public class Main{
    public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    }
    static void print(Object o){
        System.out.print(o.toString());
    }
    static void println(Object o){
        System.out.println(o.toString());
    }
    static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    }
} Main
import java.io.*;
public class Main{
    public static void main(String[] args) throws IOException{
        Reader r = new Reader();      
        int[][] c = new int[3][];
        int sum = 0;
        for(int i = 0; i < 3; i++)
            c[i] = r.ii();
        for(int i = 0; i < 3; i++)
            for(int j = 0; j < 3; j++)
                sum += c[i][j]; 
        boolean flag = true;
        loop:for(int i = 0; i < 3; i++){
            for(int d = 1; d < 3; d++){
                int j = (i+d)%3;
                int k = 3-i-j;
                int s = c[0][i] + c[1][j] + c[2][k];
                if(3*s != sum){
                    flag = false;
                    break loop;
                }
            }
        }
        println(flag ? "Yes" : "No");                
    }
    static void print(Object o){
        System.out.print(o.toString());
    }
    static void println(Object o){
        System.out.println(o.toString());
    }
    static class Reader extends BufferedReader{
        Reader(){
            super(new InputStreamReader(System.in));
        }
        String s() throws IOException{
            return readLine();
        }
        String[] ss() throws IOException{
            return s().split(" ");
        }
        int Int(String s){
            return Integer.parseInt(s);
        }
        int i() throws IOException{
            return Int(s());
        }
        int[] ii() throws IOException{
            String[] ss = ss();
            int size = ss.length;
            int[] ii = new int[size];
            for(int j = 0; j < size; j++) ii[j] = Int(ss[j]);
            return ii;
        }
    }
}