n,D=map(int,input().split()) a=[(int(input()),i) for i in range(n)] a.sort() ans=[0]*n l=0 for r in range(n): while a[r][0]-a[l][0]>=D: l+=1 ans[a[r][1]]=l print(*ans,sep="\n")