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:
import math
 
divisores = {}
 
def countDivisors(n) : 
  if n in divisores:
    return divisores[n]
  else:
    cnt = 0
    for i in range(1, (int)(math.sqrt(n)) + 1) : 
        if (n % i == 0) : 
              
            # If divisors are equal, 
            # count only one 
            if (n / i == i) : 
                cnt = cnt + 1
            else : # Otherwise count both 
                cnt = cnt + 2
    divisores[n] = cnt           
    return cnt 
 
a,b,c = list(map(int, input().split(" ")))
 
ult_a = 1
ult_b = 1
ult_c = 1
 
soma = 0
 
for i in range(a*b*c):
  ult_c = (i % c) + 1
  if (i % c) == 0:
    ult_b = (ult_b % b) + 1
  if (i % (b*c)) == 0:
    ult_a = (ult_a % a) + 1
  numero = ult_a*ult_b*ult_c
  numero = countDivisors(numero)
  soma = (soma%1073741824) + numero
 
print(soma%1073741824)