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 JAVA):

Solution:
import java.util.Scanner;

public class B236 {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int A = in.nextInt();
        int B = in.nextInt();
        int C = in.nextInt();
        long mod = 1073741824;
        long answer = 0;
        long[] div = new long[A*B*C+1];
        for (int a=1; a<=A; a++) {
            for (int b=1; b<=B; b++) {
                for (int c=1; c<=C; c++) {
                    int d = a*b*c;
                    if (div[d] == 0) {
                        div[d] = divisors(d);
                    }
                    answer += div[d];
                }
            }
        }
        answer %= mod;
        System.out.println(answer);
    }

    static int divisors(int N) {
        int result = 1;
        int d = 2;
        while (d*d <= N) {
            if (N%d == 0) {
                int power = 0;
                do {
                    N /= d;
                    power++;
                } while (N%d == 0);
                result *= (power+1);
            }
            d++;
        }
        if (N > 1) {
            result *= 2;
        }
        return result;
    }

}