#include <bits/stdc++.h>

#define rd freopen("input.txt", "r", stdin)
#define rw freopen("output.txt", "w", stdout)
#define gg ios_base::sync_with_stdio(0)
 
using namespace std;

long long t, n, m, x, v, ar[100100], as[100100], t1, t2, res;

int main() {
	gg;
	//rd;

	cin >> t;
	while (t--) {
		res = 0;
		cin >> n >> m >> x;
	
		memset(ar, 0, sizeof(ar));
		memset(as, 0, sizeof(as));

		for (int i = 0; i < n; i++) {
			cin >> v;
			v = v%m;
			ar[v]++;
		}
		as[0] = 0;
		for (int i = 1; i < m; i++) {
			as[i] = as[i - 1] + ar[i];
		}
		as[m] = as[m - 1] + ar[0];   

		for (int i = 0; i < m; i++) {
			if (i<=x) { 
				res += as[x - i]*ar[i];
				res += (as[m] - as[m - i - 1])*ar[i];
			}
			else { 
				res += (as[m + x - i] - as[m - i - 1])*ar[i];
			} 
		}
		cout << res << endl;
	}
}