import bisect import sys input = sys.stdin.readline T = int(input()) for _ in range(T): N, L = map(int, input().split()) XY = [list(map(int, input().split())) for _ in range(N)] Z = [[[] for _ in range(41)] for _ in range(41)] D = [0 for _ in range(41)] D[40] = L+1 for i in range(1, 40): D[i] = int(L/40*i) for i in range(N): x, y = XY[i] xpos = bisect.bisect_left(D, x) ypos = bisect.bisect_left(D, y) Z[xpos][ypos].append(i) ans = [] for i in range(41): for j in range(41): if i%2==0: k = j else: k = 39-j for l in Z[i][j]: ans.append(XY[l]) print(len(ans)) for a in ans: print(*a)