package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
)

var sc = bufio.NewScanner(os.Stdin)

func next() string {
	sc.Scan()
	return sc.Text()
}

func nextInt() int {
	sc.Scan()
	i, e := strconv.Atoi(sc.Text())
	if e != nil {
		panic(e)
	}
	return i
}

func main() {
	sc.Split(bufio.ScanWords)

	A, B, C, X, Y := nextInt(), nextInt(), nextInt(), nextInt(), nextInt()
	if A > B {
		A, B = B, A
		X, Y = Y, X
	}

	res := 0
	if 2 * C < A {
		res = max(X, Y) * 2 * C
	} else if B < C {
		res = A * X + B * Y
	} else {
		if Y < X {
			res = A * X + B * Y
		} else {
			res = 2 * C * X + B * (Y - X)
		}
	}

	fmt.Println(res)
}

func max(x, y int) int {
	if x > y {
		return x
	} else {
		return y
	}
}