#include <bits/stdc++.h>
using namespace std;
struct pizza {
  int n;
  int p;
} a, b;
int main() {
  int ab, xa, xb, m;
  scanf("%d%d%d%d%d", &a.p, &b.p, &ab, &a.n, &b.n);
  int p = 0;
  if (a.n <= b.n)
    p = b.p;
  else
    p = a.p;
  m = 0;
  if (a.p <= ab && b.p <= ab)
    m = a.n * a.p + b.n * b.p;
  else if (ab <= a.p && ab <= b.p) {
    if (ab * 2 <= a.p && ab * 2 <= b.p)
      m = 2 * ab * max(a.n, b.n);
    else
      m = ab * min(a.n, b.n) * 2 + abs(a.n - b.n) * p;
  } else {
    xa = ab - a.p;
    xb = ab - b.p;
    if (xa + xb <= 0)
      m = ab * min(a.n, b.n) * 2 + abs(a.n - b.n) * p;
    else
      m = a.n * a.p + b.n * b.p;
  }
  printf("%d\n", m);
  return 0;
}
