Лучший подборщик

Вы решили реализовать самую простую версию приложения для знакомств. Для этого вы собираете рост участников из группы A в виде и рост участников из группы B как . Ваша задача — сопоставить как можно больше пар (при этом каждый человек может входить только в одну пару). Предполагается, что пара будет удовлетворять условиям, если:

  • Участник из группы B не короче участника из группы A более чем на x,

  • и участник из группы B не выше участника из группы A более чем на y.

Вам нужно составить максимально возможное число таких пар.

Входные данные

В первой строке даны 4 целых числа n, m (1 ≤ n, m ≤ ), x и y (0 ≤ x, y ≤ ), которые задают количество людей в группе A, количество людей в группе B и предельно допустимые различия в росте.

На следующей строке находятся n чисел , задающие рост людей из группы A (1 ≤ ).
На следующей строке записаны m чисел , задающие рост людей из группы B (1 ≤ ).

Выходные данные

Программа должна вывести максимально возможное число составленных пар.

Примеры

Input

Output

6 2 0 0
1 2 3 4 5 6
6 7

1

3 3 1 1
4 5 6
3 4 7

3

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue