import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {

	final static long MOD = 1000000007;
	public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	}
} import java.io.BufferedReader; BufferedReader java.io import java.io.InputStreamReader; InputStreamReader java.io public class Main {

	final static long MOD = 1000000007;
	public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	}
} Main final static long MOD = 1000000007; MOD 1000000007 public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	} main {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	} BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); in new BufferedReader(new InputStreamReader(System.in)) String W = in.readLine(); W in.readLine() in.readLine in String[] Ws = W.split(" "); Ws W.split(" ") W.split W " " long A = Long.parseLong(Ws[0]); A Long.parseLong(Ws[0]) Long.parseLong Long Ws[0] Ws 0 long B = Long.parseLong(Ws[1]); B Long.parseLong(Ws[1]) Long.parseLong Long Ws[1] Ws 1 long C = Long.parseLong(Ws[2]); C Long.parseLong(Ws[2]) Long.parseLong Long Ws[2] Ws 2 long X = Long.parseLong(Ws[3]); X Long.parseLong(Ws[3]) Long.parseLong Long Ws[3] Ws 3 long Y = Long.parseLong(Ws[4]); Y Long.parseLong(Ws[4]) Long.parseLong Long Ws[4] Ws 4 long ans = A*X+B*Y; ans A*X+B*Y A*X A X B*Y B Y int i=0; i 0 for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		} ; i<=Math.max(X,Y) i Math.max(X,Y) Math.max Math X Y i++ i++ i {
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		} {
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		} ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2) ans Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2) Math.min Math ans Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2 Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2 Math.max(0,X-i)*A Math.max(0,X-i) Math.max Math 0 X-i X i A Math.max(0,Y-i)*B Math.max(0,Y-i) Math.max Math 0 Y-i Y i B C*i*2 C*i*2 C i 2 System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main {

	final static long MOD = 1000000007;
	public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	}
} public class Main {

	final static long MOD = 1000000007;
	public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	}
} Main
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {

	final static long MOD = 1000000007;
	public static void main(String[] args) throws Exception {
		// TODO 自動生成されたメソッド・スタブ

		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String W = in.readLine();
		String[] Ws = W.split(" ");
		long A = Long.parseLong(Ws[0]);
		long B = Long.parseLong(Ws[1]);
		long C = Long.parseLong(Ws[2]);
		long X = Long.parseLong(Ws[3]);
		long Y = Long.parseLong(Ws[4]);

		//Cを利用しない場合の金額
		long ans = A*X+B*Y;

		//Cを利用する枚数を全探索
		int i=0;
		for(;i<=Math.max(X,Y);i++){
			ans=Math.min(ans, Math.max(0,X-i)*A+Math.max(0,Y-i)*B+C*i*2);
		}

		System.out.println(ans);
	}
}
