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.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Hashtable;
import java.util.List;
import java.util.StringTokenizer;


public class MainS {
	@SuppressWarnings("resource")
	public static void main(String[] args) throws IOException {
		
	    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
	    StringTokenizer str = new StringTokenizer(reader.readLine());

	    int a =	Integer.parseInt(str.nextToken());
	    int b = Integer.parseInt(str.nextToken());
	    int c = Integer.parseInt(str.nextToken());
	    int sum =0;
	    int i=1,j=1,k=1;
	    int z;
	    int counter=0;	
	    int o=0;
	    List<Integer> nNumbers = new ArrayList<Integer>();
	    List<Integer> inputs = new ArrayList<Integer>();
	    inputs.add(a);
	    inputs.add(b);
	    inputs.add(c);
	    Collections.sort(inputs);
	    byte increment=0;
	    int caseNumber = 0;
	    Hashtable<Integer,Integer> factors = new Hashtable<Integer,Integer>();
	    long start = System.currentTimeMillis();
	    for (int pri=2;pri<1000;pri++){
	    	boolean isPrime = true;
	    	for(int ss=2; ss < pri ; ss++){
                if(pri % ss == 0){
                        isPrime = false;
                        break;
                }
        } 
        if(isPrime){
        	factors.put(pri,2);
        }
	    }
 	    while(i<=inputs.get(0)){
	    	while(j<=inputs.get(1)){
	    		while(k<=inputs.get(2)){	
	    		    	caseNumber=i*j*k++;
	    		    	sum+=calcDiv(caseNumber);
	    		}
	    		k=1;
	    		j++;
	    	}
	    	j=1;
	    	i++;
	    }    
 	    long time = System.currentTimeMillis()-start;
	    System.out.println(sum);  
	}
	public static int calcDiv(long x){
		int div = 1;
		int t = 0;
		int i = 2;
		while (x>1){
			if (x%i == 0){
				x = x/i;
				t+=1;
			}
			else{
				div *= (t+1);
				t=0;
				i+=1;
			}
		}
		div *= (t+1);
		return div;
	}
}