#include <bits/stdc++.h>
using namespace std;
int main() {
int t,n1,k;
cin>>t;
while(t--){
cin>>n1>>k;
int A[n1];
for(int i = 0 ; i<n1 ; i++){
cin>>A[i];
}
map<int,int>m;
int i = 0 , j = 0;
int maxi = 0;
while(j<n1){
m[A[j]] = m[A[j]]+1;
auto it2 = m.begin();
int d = it2->first;
auto it = m.end();
it--;
int e = it->first;
int diff = e-d;
while(diff>k){
m[A[i]] = m[A[i]] - 1;
if(m[A[i]]==0){
m.erase(A[i]);
}
int d = m.begin()->first;
auto it = m.end();
it--;
int e = it->first;
diff = e-d;
i++;
}
maxi = max(maxi,(j-i+1));
j++;
}
cout<<maxi<<endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKaW50IG1haW4oKSB7CglpbnQgdCxuMSxrOwoJY2luPj50OwoJd2hpbGUodC0tKXsKCQljaW4+Pm4xPj5rOwoJCWludCBBW24xXTsKCQlmb3IoaW50IGkgPSAwIDsgaTxuMSA7IGkrKyl7CgkJCWNpbj4+QVtpXTsKCQl9CgkJbWFwPGludCxpbnQ+bTsKCWludCBpID0gMCAsIGogPSAwOwoJaW50IG1heGkgPSAwOwoJd2hpbGUoajxuMSl7CgkJbVtBW2pdXSA9IG1bQVtqXV0rMTsKCQlhdXRvIGl0MiA9IG0uYmVnaW4oKTsKICAgICAgICBpbnQgZCA9IGl0Mi0+Zmlyc3Q7CgkJYXV0byBpdCA9IG0uZW5kKCk7CgkJaXQtLTsKCQlpbnQgZSA9IGl0LT5maXJzdDsKCQlpbnQgZGlmZiA9IGUtZDsKCQl3aGlsZShkaWZmPmspewoJCQltW0FbaV1dID0gbVtBW2ldXSAtIDE7CiAgICAgICAgICAgIGlmKG1bQVtpXV09PTApewogICAgICAgICAgICAgICAgbS5lcmFzZShBW2ldKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpbnQgZCA9IG0uYmVnaW4oKS0+Zmlyc3Q7CgkJICAgIGF1dG8gaXQgPSBtLmVuZCgpOwoJCSAgICBpdC0tOwoJCSAgICBpbnQgZSA9IGl0LT5maXJzdDsKCQkgICAgZGlmZiA9IGUtZDsKCQkgICAgaSsrOwoJCX0KCQltYXhpID0gbWF4KG1heGksKGotaSsxKSk7CiAgICAgICAgaisrOwoJfQogICAgY291dDw8bWF4aTw8ZW5kbDsKCX0KCXJldHVybiAwOwp9