import bisect N,D = map(int,input().split()) lsA = [int(input()) for i in range(N)] lsB = [i+D for i in lsA] lsB.sort() for i in range(N): A = lsA[i] ind = bisect.bisect(lsB,A) print(ind)