#include <stdio.h>
#include <time.h>
#define int long long
int a[200010];
void fun(int l,int r) {
if (l >= r)return;
else {
int k = rand()%(r-l+1)+l;
int t = a[k];
a[k] = a[l];
a[l] = t;
int x = l;
int y = r;
while (x != y) {
while (a[y] >= t && x < y)
y--;
while (a[x] <= t && x < y)x++;
if (x < y) {
int m = a[x];
a[x] = a[y];
a[y] = m;
}
}
a[l] = a[x];
a[x] = t;
fun(l, x - 1);
fun(x + 1, r);
}
}
int main() {
int n,c;
srand((unsigned)time(NULL));
scanf("%lld %lld", &n,&c);//a-b=c
for (int i = 1; i <= n; i++) {
scanf("%lld", &a[i]);
}
fun(1,n);
int num = 0;
int l = 1, r = 1;
int t;
for (int i = 1; i <= n; i++) {
t = a[i]+c;
while ( r <= n&& a[r] <= t) { r++; }
while (l<=n&& a[l] < t) { l++; }
num += r - l;
}
printf("%lld", num);
return 0;
}