n = gets.to_i
dices = []
n.times do
    dice = gets.chomp.split(" ").map(&:to_i)
    dices.push(dice)
end

dices.combination(2) do |dice1, dice2|
    [
        [0,1,2,3,4,5],[0,3,1,4,2,5],[0,4,3,2,1,5],[0,2,4,1,3,5],
        [1,5,2,3,0,4],[1,3,5,0,2,4],[1,0,3,2,5,4],[1,2,0,5,3,4],
        [2,5,4,1,0,3],[2,1,5,0,4,3],[2,0,1,4,5,3],[2,4,0,5,1,3],
        [3,5,1,4,0,2],[3,4,5,0,1,2],[3,0,4,1,5,2],[3,1,0,5,4,2],
        [4,5,3,2,0,1],[4,2,5,0,3,1],[4,0,2,3,5,1],[4,3,0,5,2,1],
        [5,4,2,3,1,0],[5,3,4,1,2,0],[5,1,3,2,4,0],[5,2,1,4,3,0]
    ].each do |pattern|
        if pattern.map {|i| dice1[i] } == dice2
            puts "No"
            exit
        end
    end    
end

puts "Yes"
