use std::cmp::{min, max}; fn main() { let mut awab = String::new(); std::io::stdin().read_line(&mut awab).ok(); let awab: Vec = awab.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let mut bwbb = String::new(); std::io::stdin().read_line(&mut bwbb).ok(); let bwbb: Vec = bwbb.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let mut cd = String::new(); std::io::stdin().read_line(&mut cd).ok(); let cd: Vec = cd.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let mut aw = awab[0]; let ab = awab[1]; let mut bw = bwbb[0]; let c = cd[0]; let d = cd[1]; let movew1 = max(c-ab,0); aw -= movew1; bw += movew1; let movew2 = min(d, bw); println!("{}", aw + movew2); }