fn main() { let mut xx = String::new(); std::io::Read::read_to_string(&mut std::io::stdin(), &mut xx).ok(); let xx: Vec = xx.split_whitespace().skip(1).flat_map(str::parse).collect(); let mut pieces = [(2, 8), (3, 9), (7, 9)]; for mv in xx.chunks(4) { let before = (mv[0], mv[1]); let after = (mv[2], mv[3]); (0..3).for_each(|i| { if pieces[i] == before { pieces[i] = after; } }); } if pieces == [(5, 8), (4, 8), (6, 8)] { println!("YES"); } else { println!("NO"); } }