#include <bits/stdc++.h>
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t;
cin>>t;
int *arr = new int[100010];
int *l = new int[100010];
int *r = new int[100010];
while(t--)
{
int n,k;
cin>>n>>k;
int ans = INT_MAX;
for(int i=1;i<=n;i++)
{
cin>>arr[i];
}
l[0] = 0;
l[n+1] = 0;
r[0] = 0;
r[n+1] = 0;
for(int i=1;i<=n;i++)
{
int curr = arr[i]%k;
l[i] = (l[i-1] + curr);
}
for(int i = n; i >= 1;i--)
{
int curr = k - (arr[i]%k) ;
r[i] = (r[i+1] + curr);
}
for(int i=1;i<=n;i++)
{
int pos = abs(l[i]-r[i]);
cout<<l[i]<<" "<<r[i]<<"|";
ans = min(ans,pos);
}
cout<<ans<<endl;
}
delete[] arr;
delete[] l;
delete[] r;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKCkgCnsKICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICBjaW4udGllKE5VTEwpOwogIGludCB0OwogIGNpbj4+dDsKICAKICBpbnQgKmFyciA9IG5ldyBpbnRbMTAwMDEwXTsKICBpbnQgKmwgICA9IG5ldyBpbnRbMTAwMDEwXTsKICBpbnQgKnIgICA9IG5ldyBpbnRbMTAwMDEwXTsKICB3aGlsZSh0LS0pCiAgewogICAgaW50IG4sazsKICAgIGNpbj4+bj4+azsKCiAgICBpbnQgYW5zID0gSU5UX01BWDsKCiAgICBmb3IoaW50IGk9MTtpPD1uO2krKykKICAgIHsKICAgICAgICBjaW4+PmFycltpXTsKICAgIH0KICAgIGxbMF0gPSAwOwogICAgbFtuKzFdID0gMDsKICAgIHJbMF0gPSAwOwogICAgcltuKzFdID0gMDsKCiAgICBmb3IoaW50IGk9MTtpPD1uO2krKykKICAgIHsKICAgICAgaW50IGN1cnIgPSBhcnJbaV0lazsKICAgICAgbFtpXSA9IChsW2ktMV0gKyBjdXJyKTsKICAgIH0KCiAgICBmb3IoaW50IGkgPSBuOyBpID49IDE7aS0tKQogICAgeyAgCiAgICAgIGludCBjdXJyID0gayAtIChhcnJbaV0laykgOwogICAgICByW2ldID0gKHJbaSsxXSArIGN1cnIpOwogICAgfQoKICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKQogICAgewogICAgICBpbnQgcG9zID0gYWJzKGxbaV0tcltpXSk7CiAgICAgIGNvdXQ8PGxbaV08PCIgIjw8cltpXTw8InwiOwogICAgICBhbnMgPSBtaW4oYW5zLHBvcyk7CiAgICB9CiAgICBjb3V0PDxhbnM8PGVuZGw7CiAgfQogIGRlbGV0ZVtdIGFycjsKICBkZWxldGVbXSBsOwogIGRlbGV0ZVtdIHI7CglyZXR1cm4gMDsKfQo=