#include <bits/stdc++.h>
using namespace std;
int main() {
  int(n), (m), (k);
  scanf("%d %d %d", &(n), &(m), &(k));
  int(x), (s);
  scanf("%d %d", &(x), &(s));
  long long a[200001], b[200001], c[200001], d[200001];
  for (int i = 1; i <= m; i++) cin >> a[i];
  for (int i = 1; i <= m; i++) cin >> b[i];
  for (int i = 1; i <= k; i++) cin >> c[i];
  for (int i = 1; i <= k; i++) cin >> d[i];
  d[0] = 0;
  unsigned long long ans = (unsigned long long)n * x;
  for (int i = 1; i <= m; i++) {
    int index = 0;
    if (s >= b[i]) {
      long long* t = lower_bound(d + 1, d + k + 1, (s - b[i] + 1));
      index = (t - d);
      index--;
    }
    if (index >= 1) {
      ans = min(ans, (n - c[index]) * ((unsigned long long)a[i]));
    } else {
      if (s >= b[i]) ans = min(ans, (n) * ((unsigned long long)a[i]));
    }
  }
  long long* t = lower_bound(d + 1, d + k + 1, s + 1);
  int index = (t - d);
  index--;
  if (index >= 1) {
    ans = min(ans, (n - c[index]) * ((unsigned long long)x));
  }
  cout << ans;
  return 0;
}
