#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int main() {
int n, m, x, y, a[100005]={0}, b[100005]={0}, cnt=0, k=0, c[100005]={0}, d[100005]={0};
scanf("%d%d%d%d", &n, &m, &x, &y);
for(int i=0; i<n; i++) scanf("%d", &a[i]);
for(int j=0; j<m; j++) scanf("%d", &b[j]);
sort(a, a+n), sort(b, b+m);
for(int i=0; i<n; i++) {
while(a[i]-x>b[k] && k<m) k++;
if(a[i]+y<b[k]) continue;
if(k==m) break;
c[cnt]=i+1, d[cnt]=k+1, cnt++, k++;
}
printf("%d\n", cnt);
for(int i=0; i<cnt; i++) printf("%d %d\n", c[i], d[i]);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CglpbnQgbiwgbSwgeCwgeSwgYVsxMDAwMDVdPXswfSwgYlsxMDAwMDVdPXswfSwgY250PTAsIGs9MCwgY1sxMDAwMDVdPXswfSwgZFsxMDAwMDVdPXswfTsKCXNjYW5mKCIlZCVkJWQlZCIsICZuLCAmbSwgJngsICZ5KTsKCWZvcihpbnQgaT0wOyBpPG47IGkrKykgc2NhbmYoIiVkIiwgJmFbaV0pOwoJZm9yKGludCBqPTA7IGo8bTsgaisrKSBzY2FuZigiJWQiLCAmYltqXSk7Cglzb3J0KGEsIGErbiksIHNvcnQoYiwgYittKTsKCWZvcihpbnQgaT0wOyBpPG47IGkrKykgewoJCXdoaWxlKGFbaV0teD5iW2tdICYmIGs8bSkgaysrOyAKCQlpZihhW2ldK3k8YltrXSkgY29udGludWU7CgkJaWYoaz09bSkgYnJlYWs7CgkJY1tjbnRdPWkrMSwgZFtjbnRdPWsrMSwgY250KyssIGsrKzsKCX0KCXByaW50ZigiJWRcbiIsIGNudCk7Cglmb3IoaW50IGk9MDsgaTxjbnQ7IGkrKykgcHJpbnRmKCIlZCAlZFxuIiwgY1tpXSwgZFtpXSk7CglyZXR1cm4gMDsKfQ==