#include using namespace std; using ll = long long; int main() { int n, d; cin >> n >> d; vector> a(n); for(int i = 0; i < n; i++)cin >> a[i].first, a[i].second = i; sort(a.begin(), a.end()); vector u, ans(n); for(auto i : a)u.push_back(i.first); for(int i = 0; i < n; i++) { ans[a[i].second] = upper_bound(u.begin(), u.end(), u[i] - d) - u.begin(); } for(auto i : ans)cout << i << endl; }