Problem: Let's denote d(n) as the number of divisors of a positive integer n. You are given three integers a, b and c. Your task is to calculate the following sum:

<image>

Find the sum modulo 1073741824 (230).

Input

The first line contains three space-separated integers a, b and c (1 ≤ a, b, c ≤ 2000).

Output

Print a single integer — the required sum modulo 1073741824 (230).

Examples

Input

2 2 2


Output

20


Input

4 4 4


Output

328


Input

10 10 10


Output

11536

Note

For the first example.

  * d(1·1·1) = d(1) = 1; 
  * d(1·1·2) = d(2) = 2; 
  * d(1·2·1) = d(2) = 2; 
  * d(1·2·2) = d(4) = 3; 
  * d(2·1·1) = d(2) = 2; 
  * d(2·1·2) = d(4) = 3; 
  * d(2·2·1) = d(4) = 3; 
  * d(2·2·2) = d(8) = 4. 



So the result is 1 + 2 + 2 + 3 + 2 + 3 + 3 + 4 = 20.

Solution (in PYTHON3):

Solution:
a, b, c = map(int, input().split())
d = 1073741824
p = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
t = [{} for i in range(101)]
ans = {}
for i in p:
    j = i
    m = 1
    while j < 101:
        for k in range(j, 101, j):
            t[k][i] = m
        j = j * i
        m += 1
s = 0
for i in range(1, a + 1):
    for j in range(1, b + 1):
        q = {}
        for x in t[i].keys() | t[j].keys():
            q[x] = t[i].get(x, 0) + t[j].get(x, 0)
        ij = i * j
        for k in range(1, c + 1):
            ijk = ij * k
            if ijk in ans: s += ans[ijk]
            else:
                y = 1
                for x in q.keys() | t[k].keys():
                    y = y * (q.get(x, 0) + t[k].get(x, 0) + 1)
                ans[ijk] = y
                s += y

print(s)