#include <stdio.h>
#define LIST_LENGTH_MAX 10000

int disorvor(int table[LIST_LENGTH_MAX], int n) {
	int idx = 0;
	for (int i = 1; i <= n; i++) {
		if (n % i == 0) {
			table[idx] = i;
			idx++;
		}
	}
	return table, idx;
}

int ans;

int AnswerResponce(int _i_table[LIST_LENGTH_MAX], int _j_table[LIST_LENGTH_MAX], int _k_table[LIST_LENGTH_MAX], int _i_idx, int _j_idx, int _k_idx) {
	while (1) {
		if (_i_table[_i_idx] == _j_table[_j_idx] &&
			_j_table[_j_idx] == _k_table[_k_idx]) {
			//printf("%d\n ", _i_table[_i_idx]);
			return _i_table[_i_idx];
		}
		else if (_i_table[_i_idx] <= 1 || _j_table[_j_idx] <= 1 || _k_table[_k_idx] <= 1) {
			//printf("1\n");
			return 1;
		}
		else if (_i_idx == 0 || _j_idx <= 0 || _k_idx <= 0) {
			//printf("1\n");
			return 1;
		}
		else {
			if (_i_table[_i_idx] >= _j_table[_j_idx] &&
				_i_table[_i_idx] >= _k_table[_k_idx]) {
				_i_idx--;
			}
			else if (_j_table[_j_idx] >= _i_table[_i_idx] &&
					 _j_table[_j_idx] >= _k_table[_k_idx]) {
					 _j_idx--;
			}
			else if (_k_table[_k_idx] >= _j_table[_j_idx] &&
					 _k_table[_k_idx] >= _i_table[_i_idx]) {
					 _k_idx--;
			}
		}
	}
}
int main() {
	int K;
	scanf_s("%d", &K);
	long long int ans = 0;
	for (int i = 1; i < K + 1; i++) {
		int i_table[LIST_LENGTH_MAX];
		int i_idx = 0;
		i_table, i_idx = disorvor(i_table, i);
		for (int j = 1; j < K + 1; j++) {
			int j_table[LIST_LENGTH_MAX];
			int j_idx = 0;
			j_table, j_idx = disorvor(j_table, j);
			for (int k = 1; k < K + 1; k++) {
				int k_table[LIST_LENGTH_MAX];
				int k_idx = 0;			
				k_table, k_idx = disorvor(k_table, k);

				//printf("i ");
				//for (int checker = 0; checker <= i_idx - 1; checker++)
				//	printf("%d, ", i_table[checker]);
				//printf("\t");

				//printf("j ");
				//for (int checker = 0; checker <= j_idx - 1; checker++)
				//	printf("%d, ", j_table[checker]);
				//printf("\t");

				//printf("k ");
				//for (int checker = 0; checker <= k_idx - 1; checker++)
				//	printf("%d, ", k_table[checker]);
				//printf("\t");

				ans += AnswerResponce(i_table, j_table, k_table, i_idx-1, j_idx-1, k_idx-1);
			}
		}
	}
	printf("%d", ans);
}