use std::io::Read; fn main() { let mut buf = String::new(); std::io::stdin().read_to_string(&mut buf).unwrap(); let mut iter = buf.split_whitespace(); let a: i32 = iter.next().unwrap().parse().unwrap(); let b: i32 = iter.next().unwrap().parse().unwrap(); let c: i32 = iter.next().unwrap().parse().unwrap(); let d: i32 = iter.next().unwrap().parse().unwrap(); let disc: i32 = (a - c) * (a - c) - 8 * (b - d); if disc < 0 { println!("No"); } else if disc == 0 { println!("Yes"); } else { let p: f32 = (a + c) as f32 / 2.0; let q: f32 = (b + d) as f32 / 2.0; println!("{:.10} {:.10}", p, q); } }