#include<bits/stdc++.h>
using namespace std;
void solve() {
int n; long long k;
cin>>n>>k;
vector<long long> a(n+1);
for(int i=1;i<=n;i++) cin>>a[i];
unordered_map<long long,long long> mp;
mp[0]=1;
long long sum=0,ans=0;
for(int i=1;i<=n;i++) {
sum+=a[i];
long long x=((sum-i)%k+k)%k;
ans+=mp[x];
mp[x]++;
}
cout<<ans<<'\n';
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t; cin>>t;
while(t--) solve();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgc29sdmUoKSB7CiAgICBpbnQgbjsgbG9uZyBsb25nIGs7CiAgICBjaW4+Pm4+Pms7CgogICAgdmVjdG9yPGxvbmcgbG9uZz4gYShuKzEpOwogICAgZm9yKGludCBpPTE7aTw9bjtpKyspIGNpbj4+YVtpXTsKICAgIHVub3JkZXJlZF9tYXA8bG9uZyBsb25nLGxvbmcgbG9uZz4gbXA7CiAgICBtcFswXT0xOwoKICAgIGxvbmcgbG9uZyBzdW09MCxhbnM9MDsKICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKSB7CiAgICAgICAgc3VtKz1hW2ldOwogICAgICAgIGxvbmcgbG9uZyB4PSgoc3VtLWkpJWsrayklazsKICAgICAgICBhbnMrPW1wW3hdOwogICAgICAgIG1wW3hdKys7CiAgICB9CiAgICBjb3V0PDxhbnM8PCdcbic7Cn0KCmludCBtYWluKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKE5VTEwpOwoKICAgIGludCB0OyBjaW4+PnQ7CiAgICB3aGlsZSh0LS0pIHNvbHZlKCk7Cn0=