// source: https://github.com/mio-dokuhaki/Collatz/blob/main/src/main.rs #[allow(unused_macros)] // 整数1つ読み込み(macro) macro_rules! read { ($($t:ty),*) => { { let mut input = String::new(); std::io::stdin().read_line(&mut input).ok(); let mut iter = input.split_whitespace(); ($(iter.next().unwrap().parse::<$t>().unwrap()),*) } }; } #[allow(unused_macros)] // 文字列1つ読み込み(macro) macro_rules! read_str { () => { { let mut input = String::new(); std::io::stdin().read_line(&mut input).ok(); input.trim().to_string() } }; } #[allow(unused_macros)] // 整数の1次元ベクトル読み込み(macro) macro_rules! read_vec { ($t:ty) => { { let mut input = String::new(); std::io::stdin().read_line(&mut input).ok(); input.trim().split_whitespace().map(|x| x.parse::<$t>().unwrap()).collect::>() } }; } #[allow(unused_macros)] // 文字列の1次元ベクトル読み込み(macro) macro_rules! read_str_vec { () => { { let mut input = String::new(); std::io::stdin().read_line(&mut input).ok(); input.trim().split_whitespace().map(|x| x.to_string()).collect::>() } }; } #[allow(unused_macros)] // 2次元ベクトル読み込み(macro) macro_rules! read_2d_vec { ($t:ty, $rows:expr, $cols:expr) => { { let mut vec_2d: Vec> = Vec::with_capacity($rows); for _ in 0..$rows { vec_2d.push(read_vec!($t; $cols)); } vec_2d } }; } use std::io::Write; pub fn main() { std::io::stdout().flush().ok(); let n = read!(i32); let mut ok = true; for _ in 0..n { let s = read_str!(); ok ^= s == "No"; println!("{}", match ok{ true => "Yes", _ => "No", }) } }