#include <bits/stdc++.h>
using namespace std;
bool function(long long int arr[], long long int n) {
  long long int j;
  for (j = 0; j < n - 1; j++) {
    if (arr[j] < 0) return false;
    if (arr[j] == 0) return false;
  }
  if (arr[j] == 0)
    return true;
  else
    return false;
}
int32_t main() {
  long long int answer = 0;
  long long int n, m;
  cin >> n >> m;
  long long int i, j;
  for (i = 0; i < m; i++) {
    for (j = 0; j < m; j++) {
      if (i <= n && j <= n && (i * i + j * j) % m == 0) {
        long long int val1 = (1) + (n - i) / m;
        long long int val2 = 1 + (n - j) / m;
        if (i == 0) val1--;
        if (j == 0) val2--;
        answer += (val1 * val2);
      }
    }
  }
  cout << answer << endl;
}
