macro_rules! read { ($x:ident, $v:expr, $idx:expr, $type:ty) => { let $x:$type = $v[$idx].clone().parse().unwrap(); }; ( $($x:ident:$t:ty),* ) => { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); let input:Vec = s.trim() .split_whitespace() .map(|e| e.parse().ok().unwrap()) .collect(); let mut idx:i64 = -1; $( idx += 1; read!($x, input, idx as usize, $t); )* }; } fn main() { read!(aw:i64, ab:i64); read!(bw:i64, bb:i64); read!(c:i64, d:i64); let (ab, bb, c) = if ab >= c { (ab - c, bb + c, 0) } else { (0, bb + ab, c - ab) }; let (aw, bw) = (aw - c, bw + c); let (aw, bw) = if bw >= d { (aw + d, bw - d) } else { (aw + bw, 0) }; println!("{}", aw); }