#include <bits/stdc++.h>
using namespace std;
int on_bit(int x, int pos) {
  x |= (1 << pos);
  return x;
}
int off_bit(int x, int pos) {
  x &= ~(1 << pos);
  return x;
}
bool is_on_bit(int x, int pos) { return ((x & (1 << pos)) != 0); }
int flip_bit(int x, int pos) {
  x ^= (1 << pos);
  return x;
}
int lsb(int x) { return x & (-x); }
int on_bit_all(int x, int pos) {
  x = (1 << pos) - 1;
  return x;
}
const double EPS = 1e-9;
const double PI = 2 * acos(0.0);
const int INF = 0x3f3f3f3f;
const int MOD = 1e9 + 7;
int add(long long a, long long b) { return ((a % MOD) + (b % MOD)) % MOD; }
int sub(long long a, long long b) { return ((a % MOD) - (b % MOD)) % MOD; }
int mult(long long a, long long b) { return ((a % MOD) * (b % MOD)) % MOD; }
long long gcd(long long a, long long b) { return b ? gcd(b, a % b) : a; }
const long long N = 1111;
long long a[N];
long long b[N];
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long c1, c2, c3, c4;
  cin >> c1 >> c2 >> c3 >> c4;
  long long n, m;
  cin >> n >> m;
  for (long long i = 0; i < (long long)n; i++) cin >> a[i];
  for (long long i = 0; i < (long long)m; i++) cin >> b[i];
  long long all_a = 0;
  long long all_b = 0;
  for (long long i = 0; i < (long long)n; i++) all_a += min(c1 * a[i], c2);
  for (long long i = 0; i < (long long)m; i++) all_b += min(c1 * b[i], c2);
  all_a = min(all_a, c3);
  all_b = min(all_b, c3);
  cout << min(all_a + all_b, c4) << '\n';
  return 0;
}
