#include <bits/stdc++.h>
using namespace std;
int T, i, j;
int n, m;
int a[1000000 + 10], b[1000000 + 10];
vector<int> w;
int ans;
int flag;
int mii, maa;
int miib;
int k, d;
int l;
int count1, count2, count3, count4, count6, c24, c63;
typedef struct {
  int v;
  int in;
  int ch;
} Point;
Point p[1000000 + 10], P2[1000000 + 10], P3[1000000 + 10], P4[1000000 + 10];
int Py[1000000 + 10], Pz[1000000 + 10], Ps[1000000 + 10], Px[1000000 + 10];
int c1, c2, c3, c4;
int cs, cx, cz, cy;
int sum1, sum2;
int sum;
int temp;
int lft;
int cca, ccb;
int main(void) {
  while (scanf("%d", &c1) == 1) {
    ccb = 0;
    cca = 0;
    ans = 0;
    sum1 = 0;
    sum2 = 0;
    scanf("%d", &c2);
    scanf("%d", &c3);
    scanf("%d", &c4);
    scanf("%d%d", &n, &m);
    for (i = 0; i < n; i++) {
      scanf("%d", &a[i]);
      sum1 += ((c2) < (c1 * a[i]) ? (c2) : (c1 * a[i]));
    }
    for (i = 0; i < m; i++) {
      scanf("%d", &b[i]);
      sum2 += ((c2) < (c1 * b[i]) ? (c2) : (c1 * b[i]));
    }
    sum1 = ((sum1) < (c3) ? (sum1) : (c3));
    sum2 = ((sum2) < (c3) ? (sum2) : (c3));
    ans = ((c4) < (sum1 + sum2) ? (c4) : (sum1 + sum2));
    printf("%d\n", ans);
  }
  return 0;
}
