#include <bits/stdc++.h>
using namespace std;
long long n, m, k, x, s, a[200005], b[200005], c[200005], d[200005], ans;
int bfind(int t) {
  int lo = 0, hi = k - 1, mid;
  while (lo < hi) {
    mid = lo + (hi - lo + 1) / 2;
    if (d[mid] > t)
      hi = mid - 1;
    else
      lo = mid;
  }
  return lo;
}
int main() {
  cin >> n >> m >> k >> x >> s;
  for (int i = 0; i < m; i++) scanf("%I64d", &a[i]);
  for (int i = 0; i < m; i++) scanf("%I64d", &b[i]);
  for (int i = 0; i < k; i++) scanf("%I64d", &c[i]);
  for (int i = 0; i < k; i++) scanf("%I64d", &d[i]);
  ans = x * n;
  for (int i = 0; i < m; i++) {
    if (b[i] <= s) ans = min(ans, a[i] * n);
  }
  for (int i = 0; i < k; i++) {
    if (d[i] <= s) ans = min(ans, x * (n - c[i]));
  }
  for (int i = 0; i < m; i++) {
    if (b[i] + d[0] <= s) {
      int idx = bfind(s - b[i]);
      ans = min(ans, a[i] * (n - c[idx]));
    }
  }
  cout << ans << endl;
  return 0;
}
