#include<iostream>
#include<algorithm>
#include<string>
#include<cstdlib>
#include<vector>
#include<queue>
#include<cmath>

#define REP(i, n) for(int i = 0; i < n; i++)
#define REPR(i, n) for(int i = n-1; i >= 0; i--)
#define FOR(i, m, n) for(int i = m; i < n; i++)
#define FORR(i, m, n) for(int i = m; i >= n; i--)
#define SORT(a, n) sort(a, a+n)
#define VSORT(v) sort(v.begin(), v.end())

using namespace std;

int gcd(int p, int q);

int main()
{
    int k;

    cin >> k;

    int sum = 0;

    FOR(i, 1, k+1) {
        FOR(j, 1, k+1) {
            FOR(l, 1, k+1) {
                sum += gcd(gcd(i, j), l);
            }
        }
    }

    cout << sum << endl;

    return 0;
}

int gcd(int p, int q) {
    if(p % q == 0) { return q; }
    else { return gcd(q, p % q); }
}