#include <bits/stdc++.h>
int to_even(int x) { return x - (x & 1); }
int main() {
  int n, k;
  std::cin >> n >> k;
  std::vector<int> m(k);
  for (int i = 0; i < n; i++) {
    int d;
    std::cin >> d;
    ++m[d % k];
  }
  int res = to_even(m[0]);
  if (k > 1 && k & 1)
    res += std::min(m[k >> 1], m[(k >> 1) + 1]) << 1;
  else if (k > 1)
    res += to_even(m[k >> 1]);
  for (int i = 1; i < (k >> 1); i++) {
    int b = std::min(m[i], m[k - i]) << 1;
    res += b;
  }
  std::cout << res << std::endl;
  return 0;
}
