#include <bits/stdc++.h>
using namespace std;
void use_cio() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
}
template <typename... Args>
void dbg(Args... args) {
  ((cout << args << " "), ...);
  cout << "\n";
}
int cnt[1010][1010];
int tot;
long long ans;
int main() {
  use_cio();
  long long n, m;
  cin >> n >> m;
  for (int i = (1); i < (m + 1); i++)
    for (int j = (1); j < (m + 1); j++) {
      if ((i * i + j * j) % m == 0) {
        tot++;
        cnt[i][j] = 1;
      }
    }
  int d = n / m, r = n % m;
  ans = 1LL * d * d * tot;
  int tmp1 = 0, tmp2 = 0;
  for (int i = (1); i < (m + 1); i++)
    for (int j = (1); j < (r + 1); j++) {
      tmp1 += cnt[i][j];
      if (i <= r) tmp2 += cnt[i][j];
    }
  ans += 1LL * 2 * d * tmp1 + tmp2;
  cout << ans;
}
