#include <bits/stdc++.h>
using namespace std;
int n, m;
int a, b, Y1[100009], Y2[100009], l[100009];
double sq(double x) { return x * x; }
double cal(int i, int j) {
  return sqrt(sq(a) + sq(Y1[i])) + sqrt(sq(b - a) + sq(Y2[j] - Y1[i])) + l[j];
}
double get(int y) {
  if (y == 0) return 0;
  return 1.0 * y / b * a;
}
int main() {
  cin >> n >> m >> a >> b;
  for (int i = 1; i <= n; i++) cin >> Y1[i];
  for (int i = 1; i <= m; i++) cin >> Y2[i];
  for (int i = 1; i <= m; i++) cin >> l[i];
  int ll, rr, p;
  double res = 1e100;
  for (int j = 1; j <= m; j++) {
    int y = get(Y2[j]);
    p = lower_bound(Y1 + 1, Y1 + n + 1, y) - Y1 - 1;
    for (int i = max(1, p - 10); i <= min(n, p + 10); i++) {
      double t = cal(i, j);
      if (t < res) res = t, ll = i, rr = j;
    }
  }
  cout << ll << ' ' << rr << endl;
}
