#include <iostream>
#include <vector>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n;
    long long k;
    if (!(cin >> n >> k)) return 0;

    vector<long long> a(n);
    for (int i = 0; i < n; ++i) {
        cin >> a[i];
    }

    vector<int> left_mins;
    left_mins.push_back(0);
    for (int i = 1; i < n; ++i) {
        if (a[i] < a[left_mins.back()]) {
            left_mins.push_back(i);
        }
    }

    int ans = -1;
    for (int j = n - 1; j >= 0; --j) {
        while (!left_mins.empty() && a[j] - a[left_mins.back()] >= k) {
            if (j > left_mins.back()) {
                ans = max(ans, j - left_mins.back());
            }
            left_mins.pop_back();
        }
    }

    cout << ans << "\n";

    return 0;
}