32_A. Reconnaissance
According to the regulations of Berland's army, a reconnaissance unit should consist of exactly two soldiers. Since these two soldiers shouldn't differ much, their heights can differ by at most d centimeters. Captain Bob has n soldiers in his detachment. Their heights are a1, a2, ..., an centimeters. Some soldiers are of the same height. Bob wants to know, how many ways exist to form a reconnaissance unit of two soldiers from his detachment.

Ways (1, 2) and (2, 1) should be regarded as different.

Input

The first line contains two integers n and d (1 ≤ n ≤ 1000, 1 ≤ d ≤ 109) — amount of soldiers in Bob's detachment and the maximum allowed height difference respectively. The second line contains n space-separated integers — heights of all the soldiers in Bob's detachment. These numbers don't exceed 109.

Output

Output one number — amount of ways to form a reconnaissance unit of two soldiers, whose height difference doesn't exceed d.

Examples

Input

5 10
10 20 50 60 65


Output

6


Input

5 1
55 30 29 31 55


Output

6
```python
n, d = [int(i) for i in input().split()]
S = sorted([int(i) for i in input().split()])
k = 0
for i in range(n):
    for j in range(i+1, n):
        if(S[j]-S[i]<=d):
            k += 1
        else:
            break
print(k*2)
```