#include<bits/stdc++.h>
using namespace std;
#define for1(i,m,n) for(int i=m;i<=n;i++)
#define for0(i,m,n) for(int i=m;i<n;i++)
#define int long long
#define el '\n'
#define fi first
#define se second
#define ii pair<int,int>
#define vll(i) i.begin(),i.end()
const int N=1e7;
const int mod=1e9+7;
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
// freopen("bai1.INP","r",stdin);
// freopen("bai1.OUT","w",stdout);
deque<ii>dq,dq_;
int n,ans=1,k,st=1;cin>>n>>k;
for1(i,1,n) {
int x;cin>>x;
// min
while(!dq.empty()&&abs(x-dq.front().fi)>k){
// cout<<x<<' '<<dq.front().fi<<el;
st=dq.front().se+1;
dq.pop_front();
}
while(!dq_.empty()&&abs(x-dq_.front().fi)>k){
st=dq_.front().se+1;
dq_.pop_front();
}
// cout<<i<<' '<<st<<el;
// cout<<dq.front().fi<<el;
ans=max(ans,i-st+1);
while(!dq.empty()&&dq.back().fi>x){
dq.pop_back();
}
while(!dq_.empty()&&dq_.back().fi<x){
dq_.pop_back();
}
dq_.push_back({x,i});
dq.push_back({x,i});
}
cout<<ans;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgZm9yMShpLG0sbikgZm9yKGludCBpPW07aTw9bjtpKyspCiNkZWZpbmUgZm9yMChpLG0sbikgZm9yKGludCBpPW07aTxuO2krKykKCiNkZWZpbmUgaW50ICBsb25nIGxvbmcKI2RlZmluZSBlbCAnXG4nCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBpaSBwYWlyPGludCxpbnQ+CiNkZWZpbmUgdmxsKGkpIGkuYmVnaW4oKSxpLmVuZCgpCgpjb25zdCBpbnQgTj0xZTc7CmNvbnN0IGludCBtb2Q9MWU5Kzc7CgoKc2lnbmVkIG1haW4oKXsKICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogIGNpbi50aWUoMCk7CiAgY291dC50aWUoMCk7CiAgLy8gZnJlb3BlbigiYmFpMS5JTlAiLCJyIixzdGRpbik7CiAgLy8gZnJlb3BlbigiYmFpMS5PVVQiLCJ3IixzdGRvdXQpOwogIGRlcXVlPGlpPmRxLGRxXzsKICBpbnQgbixhbnM9MSxrLHN0PTE7Y2luPj5uPj5rOwogIAogIGZvcjEoaSwxLG4pIHsKICAgaW50IHg7Y2luPj54OyAKICAgLy8gbWluCiAgIHdoaWxlKCFkcS5lbXB0eSgpJiZhYnMoeC1kcS5mcm9udCgpLmZpKT5rKXsKICAvLyAgY291dDw8eDw8JyAnPDxkcS5mcm9udCgpLmZpPDxlbDsKICAgICBzdD1kcS5mcm9udCgpLnNlKzE7CiAgICAgZHEucG9wX2Zyb250KCk7CiAgIH0KICAgd2hpbGUoIWRxXy5lbXB0eSgpJiZhYnMoeC1kcV8uZnJvbnQoKS5maSk+ayl7CiAgICAgc3Q9ZHFfLmZyb250KCkuc2UrMTsKICAgICBkcV8ucG9wX2Zyb250KCk7CiAgIH0KICAvLyBjb3V0PDxpPDwnICc8PHN0PDxlbDsKICAvLyBjb3V0PDxkcS5mcm9udCgpLmZpPDxlbDsKICAgYW5zPW1heChhbnMsaS1zdCsxKTsKCiAgIAogICAgIHdoaWxlKCFkcS5lbXB0eSgpJiZkcS5iYWNrKCkuZmk+eCl7CiAgICAgZHEucG9wX2JhY2soKTsKICAgfQogICAgIHdoaWxlKCFkcV8uZW1wdHkoKSYmZHFfLmJhY2soKS5maTx4KXsKICAgICAgIGRxXy5wb3BfYmFjaygpOwogICAgIH0KICBkcV8ucHVzaF9iYWNrKHt4LGl9KTsKICAgZHEucHVzaF9iYWNrKHt4LGl9KTsKCiAgfQogIGNvdXQ8PGFuczsKICAgIHJldHVybiAwOwp9Cg==