#include <bits/stdc++.h>
using namespace std;
int n, m;
double ax, bx;
vector<double> a;
vector<double> b;
vector<double> l;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> n >> m >> ax >> bx;
  a.assign(n, 0);
  b.assign(m, 0);
  l.assign(m, 0);
  for (int i = 0; i < n; i++) cin >> a[i];
  for (int i = 0; i < m; i++) cin >> b[i];
  for (int i = 0; i < m; i++) cin >> l[i];
  double ans = 1e14;
  int ind1 = -1;
  int ind2 = -1;
  for (int i = 0; i < m; i++) {
    double res = l[i];
    double y2 = ax * b[i] / bx;
    auto it1 = lower_bound(a.begin(), a.end(), y2);
    double y = 1e8;
    double ypref = 1e8;
    double ynext = 1e8;
    if (it1 != a.end()) {
      ynext = *it1;
    }
    if (it1 != a.begin()) {
      it1--;
      ypref = *it1;
    }
    if (abs(ypref - y2) < abs(ynext - y2))
      y = ypref;
    else
      y = ynext;
    res += sqrt(ax * ax + y * y) +
           sqrt((bx - ax) * (bx - ax) + (b[i] - y) * (b[i] - y));
    if (res <= ans) {
      ans = res;
      ind1 = lower_bound(a.begin(), a.end(), y) - a.begin() + 1;
      ind2 = i + 1;
    }
  }
  cout << ind1 << " " << ind2;
}
