#include <bits/stdc++.h>
using namespace std;


long long int gcd(long long int a, long long int b){
  while (a && b){
    (a < b) ? b %= a : a %= b;
  }
  return a + b;
}

int main(){
  int K;
  cin >> K;
  vector<vector<vector<int>>> dp(201, vector<vector<int>>(201, vector<int>(201, 0)));
  long long int ans = 0;
  for(int a=1; a<=K; a++){
    for(int b=1; b<=K; b++){
      for(int c=1; c<=K; c++){
        vector<int> z = {a, b, c};
        sort(z.begin(), z.end());
        if(dp[z[0]][z[1]][z[2]]==0){
          dp[z[0]][z[1]][z[2]] = gcd(gcd(a, b), c);
        }
        ans += dp[z[0]][z[1]][z[2]];
      }
    }
  }
  cout << ans << endl;
  return 0;
}
