#include <bits/stdc++.h>
using namespace std;
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long n, m, k;
  cin >> n >> m >> k;
  long long it, im;
  cin >> it >> im;
  long long ans = n * it;
  vector<long long> v1(m), v2(m), v3(k), v4(k);
  for (long long i = 0; i < m; i++) {
    cin >> v1[i];
  }
  for (long long i = 0; i < m; i++) {
    cin >> v2[i];
  }
  for (long long i = 0; i < k; i++) {
    cin >> v3[i];
  }
  for (long long i = 0; i < k; i++) {
    cin >> v4[i];
  }
  long long idx = lower_bound(v4.begin(), v4.end(), im + 1) - v4.begin();
  idx--;
  if (idx >= 0) {
    ans = min(ans, it * (n - v3[idx]));
  }
  for (long long i = 0; i < m; i++) {
    if (v2[i] <= im) {
      long long x = im - v2[i];
      long long idx = lower_bound(v4.begin(), v4.end(), x + 1) - v4.begin();
      if (idx - 1 >= 0) {
        ans = min(ans, v1[i] * (n - v3[idx - 1]));
      } else {
        ans = min(ans, v1[i] * n);
      }
    }
  }
  cout << ans << "\n";
}
