import sys input=sys.stdin.readline def I(): return int(input()) def MI(): return map(int, input().split()) def LI(): return list(map(int, input().split())) def main(): mod=10**9+7 N,D=MI() A=[] for i in range(N): a=I() A.append((a,i)) import bisect A.sort() ans=[0]*N for i in range(N): aa=A[i] t=(aa[0]-D,N) num = bisect.bisect_right(A,t) ans[aa[1]]=num for i in range(N): print(ans[i]) main()