from sys import stdin input = stdin.readline def do(prev, i, n, k ,a): if i==n: return 0 if a[i]-prev>=k: return max(do(a[i], i+1, n, k, a)+1, do(prev, i+1, n, k, a)) return do(prev, i+1, n, k, a) def do2(prev, i, n, k ,a): if i==-1: return 0 if prev-a[i]>=k: return max(do2(a[i], i-1, n, k, a)+1, do2(prev, i-1, n, k, a)) return do2(prev, i-1, n, k, a) def solve(n,k,a): d = {} for i in range(n): d[a[i]] = i a.sort() ans = [] for i in range(n): ans.append(do(a[i], i+1, n, k, a)+do2(a[i], i-1, n, k, a)+1) newans = [0]*n for i in range(n): newans[d[a[i]]] = ans[i] return ' '.join(map(str,newans)) for i in range(int(input())): n,k = map(int, input().split()) a = list(map(int, input().split())) print(f'Case #{i+1}: {solve(n, k, a)}')