import java.math.BigInteger;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Scanner;
import java.util.Set;

public class Main {

	static Scanner sc = new Scanner(System.in);

	public static void main(String[] args){

		solve_abc095_c();
	}

  
  	public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	}
} import java.math.BigInteger; BigInteger java.math import java.util.ArrayDeque; ArrayDeque java.util import java.util.ArrayList; ArrayList java.util import java.util.Arrays; Arrays java.util import java.util.Collections; Collections java.util import java.util.HashMap; HashMap java.util import java.util.HashSet; HashSet java.util import java.util.LinkedList; LinkedList java.util import java.util.List; List java.util import java.util.Map; Map java.util import java.util.PriorityQueue; PriorityQueue java.util import java.util.Queue; Queue java.util import java.util.Scanner; Scanner java.util import java.util.Set; Set java.util public class Main {

	static Scanner sc = new Scanner(System.in);

	public static void main(String[] args){

		solve_abc095_c();
	}

  
  	public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	}
} Main static Scanner sc = new Scanner(System.in); sc new Scanner(System.in) public static void main(String[] args){

		solve_abc095_c();
	} main {

		solve_abc095_c();
	} solve_abc095_c() solve_abc095_c String[] args args public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	} solve_abc095_c {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A = sc.nextInt(); A sc.nextInt() sc.nextInt sc int B = sc.nextInt(); B sc.nextInt() sc.nextInt sc int C = sc.nextInt(); C sc.nextInt() sc.nextInt sc int X = sc.nextInt(); X sc.nextInt() sc.nextInt sc int Y = sc.nextInt(); Y sc.nextInt() sc.nextInt sc int ans_a = 0; ans_a 0 int ans_b = 0; ans_b 0 int ans_ab = 0; ans_ab 0 int ans_price = 0; ans_price 0 int tmp_ans_a = 0; tmp_ans_a 0 int tmp_ans_b = 0; tmp_ans_b 0 int tmp_ans_ab = 0; tmp_ans_ab 0 int tmp_ans_price = 0; tmp_ans_price 0 tmp_ans_a = X tmp_ans_a X tmp_ans_b = Y tmp_ans_b Y tmp_ans_ab = 0 tmp_ans_ab 0 tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab tmp_ans_price A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a A tmp_ans_a B * tmp_ans_b B tmp_ans_b C * tmp_ans_ab C tmp_ans_ab ans_price = tmp_ans_price ans_price tmp_ans_price if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		} X > Y X Y {
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		} tmp_ans_a = X -Y tmp_ans_a X -Y X Y tmp_ans_b = 0 tmp_ans_b 0 tmp_ans_ab = Y * 2 tmp_ans_ab Y * 2 Y 2 tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab tmp_ans_price A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a A tmp_ans_a B * tmp_ans_b B tmp_ans_b C * tmp_ans_ab C tmp_ans_ab ans_price = Math.min(ans_price, tmp_ans_price) ans_price Math.min(ans_price, tmp_ans_price) Math.min Math ans_price tmp_ans_price if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		} X < Y X Y {
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		} tmp_ans_a = 0 tmp_ans_a 0 tmp_ans_b = Y - X tmp_ans_b Y - X Y X tmp_ans_ab = X * 2 tmp_ans_ab X * 2 X 2 tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab tmp_ans_price A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a A tmp_ans_a B * tmp_ans_b B tmp_ans_b C * tmp_ans_ab C tmp_ans_ab ans_price = Math.min(ans_price, tmp_ans_price) ans_price Math.min(ans_price, tmp_ans_price) Math.min Math ans_price tmp_ans_price tmp_ans_a = 0 tmp_ans_a 0 tmp_ans_b = 0 tmp_ans_b 0 tmp_ans_ab = Math.max(X, Y) * 2 tmp_ans_ab Math.max(X, Y) * 2 Math.max(X, Y) Math.max Math X Y 2 tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab tmp_ans_price A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab A * tmp_ans_a A tmp_ans_a B * tmp_ans_b B tmp_ans_b C * tmp_ans_ab C tmp_ans_ab ans_price = Math.min(ans_price, tmp_ans_price) ans_price Math.min(ans_price, tmp_ans_price) Math.min Math ans_price tmp_ans_price System.out.println(ans_price) System.out.println System.out System System.out ans_price sc.close() sc.close sc public class Main {

	static Scanner sc = new Scanner(System.in);

	public static void main(String[] args){

		solve_abc095_c();
	}

  
  	public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	}
} public class Main {

	static Scanner sc = new Scanner(System.in);

	public static void main(String[] args){

		solve_abc095_c();
	}

  
  	public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	}
} Main
import java.math.BigInteger;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Scanner;
import java.util.Set;

public class Main {

	static Scanner sc = new Scanner(System.in);

	public static void main(String[] args){

		solve_abc095_c();
	}

  
  	public static void solve_abc095_c(){

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();
		int B = sc.nextInt();
		int C = sc.nextInt();
		int X = sc.nextInt();
		int Y = sc.nextInt();
		
		int ans_a = 0;
		int ans_b = 0;
		int ans_ab = 0;
		int ans_price = 0;

		int tmp_ans_a = 0;
		int tmp_ans_b = 0;
		int tmp_ans_ab = 0;
		int tmp_ans_price = 0;

		// all a & all b
		tmp_ans_a = X;
		tmp_ans_b = Y;
		tmp_ans_ab = 0;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
		
		ans_price = tmp_ans_price;
		
		// ab & a
		if(X > Y){
			tmp_ans_a = X -Y;
			tmp_ans_b = 0;
			tmp_ans_ab = Y * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;
			
			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		// ab & b
		else if(X < Y){
			tmp_ans_a = 0;
			tmp_ans_b = Y - X;
			tmp_ans_ab = X * 2;
			tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

			ans_price = Math.min(ans_price, tmp_ans_price);
		}
		
		// all ab
		tmp_ans_a = 0;
		tmp_ans_b = 0;
		tmp_ans_ab = Math.max(X, Y) * 2;
		tmp_ans_price = A * tmp_ans_a + B * tmp_ans_b + C * tmp_ans_ab;

		ans_price = Math.min(ans_price, tmp_ans_price);
		
		System.out.println(ans_price);
		
		sc.close();

	}
}