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 ≤ 100).

Output

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

Examples

Input

2 2 2


Output

20


Input

5 6 7


Output

1520

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.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main{

	public static int[] arrayToInt(String cad) {
		String read[] = cad.split(" ");
		int res[] = new int[read.length];
		for (int i = 0; i < read.length; i++) {
			res[i] = Integer.parseInt(read[i]);
		}
		return res;
	}

	public static void main(String[] args) throws IOException {
		BufferedReader bufer = new BufferedReader(new InputStreamReader(
				System.in));
		int[] dp = new int[1000001];
		dp[1] = 1;
		Arrays.fill(dp, 1);
		for (int i = 2; i < dp.length; i++) {
			dp[i]++;
			for (int j = i + i; j < dp.length; j += i) {
				dp[j]++;
			}
		}
		String line = "";
		while ((line = bufer.readLine()) != null) {
			int arr[] = arrayToInt(line);
			long res = 0;
			for (int i = 1; i <= arr[0]; i++) {
				for (int j = 1; j <= arr[1]; j++) {
					for (int k = 1; k <= arr[2]; k++) {
						res+=dp[i*j*k];
					}
				}
			}
			System.out.println((long)((res)%(1073741824)));
		}

	}

}
