fn main() { let mut n = String::new(); std::io::stdin().read_line(&mut n).ok(); let n: usize = n.trim().parse().unwrap(); if n % 2 == 0 { println!("{}", (1..=n/2).map(|i| (2*i).to_string()).collect::>().join(" ")); return; } if n < 6 { println!("-1"); return; } let mut result = vec![2, 4]; for i in 4..=n/2 { result.push(i*2); } result.push(6); result.push(3); println!("{}", result.iter().map(|&v| v.to_string()).collect::>().join(" ")); }