N, D = map(int,input().split()) A = [] for _ in range(N): A.append(int(input())) B = sorted(A,reverse=True) d = {} for i in range(len(B)-1): if B[i] not in d: d[B[i]] = 0 for j in range(i+1,len(B)): if B[i]-B[j] >= D: d[B[i]] = len(B)-j break for i in range(N): if A[i] in d: print(d[A[i]]) else: print(0)