#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==