fn read() -> String { let mut buf = String::new(); std::io::stdin().read_line(&mut buf).expect("Failed to read line."); buf.trim().to_string() } fn main() { let t = read().parse::().unwrap(); for _i in 0..t { let (_d, a) = { let line = read().split_whitespace().map(|s| s.parse().unwrap()).collect::>(); let mut i = line.iter(); (*i.next().unwrap(), *i.next().unwrap()) }; let x = read().split_whitespace().map(|s| s.parse().unwrap()).collect::>(); let mut ans = Vec::new(); for i in x { let wind = i / a + i % a * 2 / a; ans.push(wind); } println!("{}", ans.iter().map(std::string::ToString::to_string).collect::>().join(" ")) } }