#include <bits/stdc++.h>
using namespace std;
int main() {
int n,k;
cin>>n>>k;
vector<int> numbers(n);
for(int i=0; i<n; i++){
cin>>numbers[i];
}
int answer = 0;
unordered_map<int,int> modFreq;
for(int i=0; i<n; i++){
if(modFreq.find((k - numbers[i]%k)%k) != modFreq.end()){
answer += modFreq[(k - numbers[i]%k)%k];
}
modFreq[numbers[i]%k]++;
}
cout<<answer;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBuLGs7CgljaW4+Pm4+Pms7CgkKCXZlY3RvcjxpbnQ+IG51bWJlcnMobik7CgkKCWZvcihpbnQgaT0wOyBpPG47IGkrKyl7CgkJY2luPj5udW1iZXJzW2ldOwoJfQoJCglpbnQgYW5zd2VyID0gMDsKCQoJdW5vcmRlcmVkX21hcDxpbnQsaW50PiBtb2RGcmVxOwoJCglmb3IoaW50IGk9MDsgaTxuOyBpKyspewoJCWlmKG1vZEZyZXEuZmluZCgoayAtIG51bWJlcnNbaV0layklaykgIT0gbW9kRnJlcS5lbmQoKSl7CgkJCWFuc3dlciArPSBtb2RGcmVxWyhrIC0gbnVtYmVyc1tpXSVrKSVrXTsKCQl9CgkJCgkJbW9kRnJlcVtudW1iZXJzW2ldJWtdKys7Cgl9CgkKCWNvdXQ8PGFuc3dlcjsKCQoJcmV0dXJuIDA7Cn0=