#include <bits/stdc++.h>
using namespace std;
const int MOD = 1000000007;
template <class T>
bool chmax(T& a, const T& b) {
  if (a < b) {
    a = b;
    return true;
  }
  return false;
}
template <class T>
bool chmin(T& a, const T& b) {
  if (a > b) {
    a = b;
    return true;
  }
  return false;
}
int main() {
  long long int A, B, C, X, Y;
  cin >> A >> B >> C >> X >> Y;
  long long int sum = 0;
  long long int t = min(X, Y);
  long long int s = max(X, Y);
  long long int tmp1 = s * C * 2;
  long long int tmp2 = A * X + B * Y;
  long long int tmp3 = t * C * 2;
  if (X > Y) {
    tmp3 += (X - Y) * A;
  } else {
    tmp3 += (Y - X) * B;
  }
  long long int ans = max(tmp1, tmp2);
  ans = max(ans, tmp3);
  long long int tmp4 = X * 2 * C + (Y - X) * B;
  long long int tmp5 = Y * 2 * C + (X - Y) * A;
  ans = max(ans, tmp4);
  ans = max(ans, tmp5);
  cout << ans << endl;
}
