for _ in range(int(input())): N, K, X = map(int, input().split()) H = list(map(int, input().split())) m = min(H) H = [i - m for i in H] if any(i % X for i in H): print("No") continue H = [i // X for i in H] D = [0] + [H[i] - H[i + 1] for i in range(N - 1)] + [0] C = [0] * K for i in range(1, N): C[i % K] += D[i] if all(C[i] == 0 or i == N % K for i in range(1, K)) and all(H[i] >= H[i + 1] for i in range(K - 1)) and all(H[i] <= H[i + 1] for i in range(N - K, N - 1)): print("Yes") else: print("No")