use std::io;
use std::cmp::{max,min};

fn main() {
    let mut buf = String::new();
    io::stdin().read_line(&mut buf).unwrap();
    let mut iter = buf.trim().split(" ");
    let a = iter.next().unwrap().parse::<i64>().unwrap();
    let b = iter.next().unwrap().parse::<i64>().unwrap();
    let c = iter.next().unwrap().parse::<i64>().unwrap();
    let x = iter.next().unwrap().parse::<i64>().unwrap();
    let y = iter.next().unwrap().parse::<i64>().unwrap();

    if a > 2 * c {
        if b > 2 * c {
            println!("{}", 2 * max(x, y) * c);
        } else {
            println!("{}", 2 * x * c + min(0, y - x) * b);
        }
    } else if b > 2 * c {
        println!("{}", 2 * y * c + min(0, x - y) * a);
    } else if a + b > 2 * c {
        println!("{}", c * 2 * min(x, y) + if x > y {
            a * (x - y)
        } else {
            b * (y - x)
        });
    } else {
        println!("{}", a * x + b * y);
    }
}
