// Slower C++ solution:
#include <bits/stdc++.h>

using namespace std;



main()

{

int A,B,C,D, a[1000],b[1000],c[1000],n,aaa,k,i,r=0,rr=0,d1,dd=0,d2,d3,ck=0,m,j,aa,bb,cc;

//char cr[1000];

//scanf("%lld",&n);

//cin>>A>>B>>C>>D;

cin>>n;



for(i=1;i<=n;i++){



        for(j=1;j<=n;j++){



            for(k=1;k<=n;k++){

                aa=i;

                bb=j;

                cc=k;





        int x,y,z;

   // cout<<a[i]<<b[i]<<c[i]<<endl;









    if((aa<bb)&&(aa<cc)){

        x=aa;

    }

    else if((bb<aa)&&(bb<cc)){

        x=bb;

    }

    else{

        x=cc;

    }

  vvv:  if((aa%x==0)&&(bb%x==0)&&(cc%x==0)){

            y=x;



        dd=dd+y;

        x=123456;

    }



   if(x!=123456){

    x=x-1;

   }

    if(x!=123456)goto vvv;







}



}}



  cout<<dd;

//printf("%lld",dd);



    return 0;

}

// Faster C++ solution for the same problem (measured speedup: 1.82485509819805x):
///              B I S M I L L A H I R  R A H M A N I R  R A H I M



#include<bits/stdc++.h>

using namespace std;

typedef bool                   boo;

typedef int                    li;

typedef long                   il;

typedef unsigned long          ul;

typedef long long int          ll;

typedef unsigned long long     ull;

typedef double                 dd;

typedef string                 str;

#define vli                    vector<li>

#define vll                    vector<ll>

#define sli                    set<li>

#define sll                    set<ll>

#define pli                    pair<li, li>

#define pll                    pair<ll, ll>

#define vpi                    vector<pair<li, li>>

#define vpl                    vector<pair<ll, ll>>

#define mpl                    map<ll, ll>

#define wt                     ll t; cin>>t; while(t--)

#define input(a,n)             for(int i=0;i<n;i++) cin>>a[i];

#define lp(a, i, b)            for(ll i=a; i<b; i++)

#define rlp(a, i, b)           for(ll i=a; i>=b; i--)

#define sz(x)                  x.size()

#define len(z)                 z.begin(), z.end()

#define ci(x)                  cin>>x;

#define co(x)                  cout<<x nl

#define fix(x)                 fixed<<setprecision(x)

#define mem(z, l)              memset(z, l, sizeof(z))

#define MP                     make_pair

#define pb                     push_back

#define F                      first

#define S                      second

#define nl                     <<endl

#define nll                    cout<<endl

#define sp                     <<" "<<

#define sl                     <<" "

#define cy                     cout<<"YES" nl

#define cn                     cout<<"NO" nl

#define rn                     return

#define good_bye               return 0

#define PI                     3.1415926536

#define gcd(a,b)               __gcd(a,b)

#define lcm(a,b)               (a*(b/gcd(a,b)))

#define faster                 ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);

#define input_txt()            freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout);

const double eps =             1e-9;

const int inf =                2000000000;

const ll infLL =               9000000000000000000;

int dx[] =                     {0, 0, +1, -1, +1, +1, -1, -1};

int dy[] =                     {+1, -1, 0, 0, +1, -1, +1, -1};

//ll Pow(ll P, ll Q)           { ll R=1; for(ll I=1; I<=Q; I++) R*=P; rn R; }

//void dfs(ll K)               { vis[K]=true; for(auto J: v[K]) { if(!vis[J]) dfs(J); } }

//void seive(ll MX)            { S.pb(2); for(ll I=3; i<=MX; i+=2) { if(!vis[I]) { S.pb(I); for(ll J=I*I; j<=MX; J+=(2*I)) vis[J]=false; } } }

//bool isPrime(ll n)           { if(n%2==0) rn false; for(ll i=3; i*i<=n; i+=2) { if(n%i==0) rn false; } rn true; }

//----------------------------------------LET'S BEGIN-----------------------------------------------------------------------

const int MAX = 200;

ll n, l=0;



void case_i()

{

    cin>>n;

    for(int i=1; i<=n; i++)

        for(int j=1; j<=n; j++)

            for(int k=1; k<=n; k++)

                l+=gcd(gcd(i, j), k);

    cout<<l nl;

}



int main()

{

    faster;

//    input_txt();

//    wt

      case_i();

    good_bye;

}

///           _5_4_8_8_1_9_                ///