B. Bugaboo from Sonadighir Mor
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Assume we have an array $$$a$$$ of size $$$m$$$ indexed from 1 to $$$m$$$ and an integer $$$k$$$. Then we will make the array $$$b$$$ (which is initially empty) by the following procedure:

1. Sort the array $$$a$$$ in non-decreasing order.

2. Append $$$a_{i+1}$$$ - $$$a_i$$$ to $$$b$$$ for each $$$i$$$ from 1 to $$$m$$$-1.

We will call the array $$$\bf{a}$$$ good if the minimum element of the array $$$\bf{b}$$$ is at least $$$k$$$.

Now the actual problem, given an array $$$c$$$ of size $$$n$$$ and the integer $$$k$$$, count the number of good subarrays of $$$c$$$ of size at least 2.

Input

The input consists of multiple test cases. The first line contains an integer $$$t$$$ $$$(1 \leq t \leq 10^{5})$$$ - the number of test cases. The descriptions of the test cases follow.

The first line of each test case contains two integers $$$n$$$ and $$$k$$$ $$$(1 \leq n \leq 10^{5}, 1 \leq k \leq 10^{9})$$$.

The following line contains $$$n$$$ space-separated positive integers $$$a_1, a_2, .. , a_n$$$ $$$(1 \leq a_i \leq 10^{9})$$$.

It is guaranteed that the sum of $$$n$$$ over all test cases does not exceed $$$10^{5}$$$.

Output

For each test case, output the number of good subarrays of $$$c$$$ of size at least 2.

Example
Input
6
7 3
7 2 5 3 1 1 5
3 4
28 6 28
2 1
10 8
7 2
15 15 6 11 12 12 11
5 5
5 4 1 3 14
4 4
9 6 10 12
Output
3
2
1
3
1
1