#include <bits/stdc++.h>
#define div1 1000000007
const long long INF = 1LL << 60;
using namespace std;
typedef long long ll;
typedef long double ld;
// a>b -> a==b;
template<class T> inline bool chmin(T& a, T b) { if (a > b) { a = b; return true; } return false; }
// a<b -> a==b;
template<class T> inline bool chmax(T& a, T b) { if (a < b) { a = b; return true; } return false; }

// 最大公約数 O(log(n))
// gcd(12,0)=gcd(0,12)=12
ll gcd(ll a, ll b)
{
    if(b==0) swap(a,b);
    if(a%b == 0){
        return(b);
    }
    else{
        return(gcd(b, a%b));
    }
}

// 最小公倍数
ll lcm(ll a, ll b)
{
    return a  / gcd(a, b) * b;
}

int main(void)
{
    ll K, i, j, k, ans=0, a, b;

    cin >> K;

    for(i=1; i<=K; i++){
        for(j=i; j<=K; j++){
            for(k=j; k<=K; k++){
                a = gcd(i,j);
                b = gcd(a,k);
                if(i==j && j==k){
                    ans += b;
                }
                else if(i!=j && j!=k && k!=i){
                    ans += b*6;
                }
                else{
                    ans += b*3;
                }
            }
        }
    }

    cout << ans << endl;

    return 0;
}