//11-D
//n??????????????????????????¨?????°?????????????????????????????????

//????????£????????????50???

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		//??\??????????????????????????????Scanner???????????§???????????????
		Scanner scan = new Scanner(System.in);
		
		//??????????????????????????°?????????????????????
		int n = scan.nextInt();
		
		//?????????????????????????????????????????§??????????????????
		Dice4[] xai = new Dice4[n];
		//???????????????????????\????????????
		int[] num = new int[6];
		
		//???????????????????????????
		for(int i = 0; i < n; i++){
			//???????????????????????????
			for(int j = 0; j < 6; j++){
				num[j] = scan.nextInt();
			}
			//???????????????????????\???????????????????????????????????§??????????????£??????????????\??????
			xai[i] = new Dice4(num);
			//System.out.println("??????????????????3???????????° = " + xai[i].getNumber(2));
		}
		
		//????????????????????????????????°
		char action = 'a';
		//?????§????????? true ?????£?????¨?????????????????????????????°
		int count = 0;
		
		//n???????????????????????????????????§?????§????????????
		//?????????????????¨?????????????????????????????¨?????°
		for(int i = 0; i < n-1; i++){
			//?¬?????????¢???????????????????????????????????¨?????°
			for(int j = i+1; j < n; j ++){
				//????????????A??¨????????????B???????????????
				//?????¬?????????11C????????????????????¨
				for(int k = 0; k < 4; k++){
					//?????¨????????´??¢????????§??????????????????????????????
					if(rightCheck(xai[i], xai[j])){
						//?????´?????????count???+1??????break??????
						count++;
						break;	
					} else {
						//N???????????¢??????
						action = 'N';
						xai[j].roll(action);
					}
				}
				//E?????¢?????????????????´??¢??????????????§??????????????????
				for(int h =0; h < 3; h++){
					//????????¢??????
					action = 'E';
					xai[j].roll(action);
					//?????´?????????count???+1??????break??????
					if(rightCheck(xai[i] , xai[j])){
						count++;
						break;
					}
				}
			}
			
		}
		//???????????¨???
		if(count == 0){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}

	}
	
	//???????????¢???????????§???????????????????????????true?????????????????????
	public static boolean rightCheck(Dice4 xaiA ,Dice4 xaiB){
		//?????????????????????
		boolean isCheck = false;
			
		for(int i = 0; i < 4; i++){
			//???????????¢???????????????????????????true????????????
			if(allCheck(xaiA , xaiB)){
				isCheck = true;
			//???????????????????????°?¨??????¢
			} else {
				xaiB.rightRoll();
			}
		}
		return isCheck;
	}
			
	//??¨??¨????????????true?????????????????????
	public static boolean allCheck(Dice4 xaiA ,Dice4 xaiB){
		boolean isCheck = false;
		//??????????????¢????¢??????????OK??????true?????????
		if(xaiA.getNumber(0) == xaiB.getNumber(0)
				&& xaiA.getNumber(1) == xaiB.getNumber(1)
				&& xaiA.getNumber(2) == xaiB.getNumber(2)
				&& xaiA.getNumber(3) == xaiB.getNumber(3)
				&& xaiA.getNumber(4) == xaiB.getNumber(4)
				&& xaiA.getNumber(5) == xaiB.getNumber(5)){
			isCheck = true;
		}
		return isCheck;
	}
}


class Dice4 {
	//?????£?????????
	private int[] number = new int[6];
	
	//?????????????????????
	Dice4(int[] num){
		for(int i = 0; i < 6; i++){
			this.number[i] = num[i];
			//System.out.println("?????????????????????= " + number[i]);
		}
	}
	//???????????????????????????????????????
	public int getNumber(int i) {
		return number[i];
	}
	
	//????????????????¨?????????¢?????????????????????
	void rightRoll(){
		//??????????????´?????????????????????????????¢?????????
		int temp = number[1];
		number[1] = number[2];
		number[2] = number[4];
		number[4] = number[3];
		number[3] = temp;
		
	}
	
	//???????????????????????\????????????
	void roll(char action){
		//??????????????´?????????????????????????????¢?????????
		int temp = number[0];
			
		//????§??????¨??¢?????????????????????????????????????????????
		switch(action){
			case 'N':
				number[0] = number[1];
				number[1] = number[5];
				number[5] = number[4];
				number[4] = temp;
				break;

			case 'S':
				number[0] = number[4];
				number[4] = number[5];
				number[5] = number[1];
				number[1] = temp;
				break;
					
			case 'E':
				number[0] = number[3];
				number[3] = number[5];
				number[5] = number[2];
				number[2] = temp;
				break;
					
			case 'W':
				number[0] = number[2];
				number[2] = number[5];
				number[5] = number[3];
				number[3] = temp;
				break;
					
			default :
				break;
		}
	}

	
}

Measured memory_bytes: 29764