A chessboard n × m in size is given. During the zero minute we repaint all the black squares to the 0 color. During the i-th minute we repaint to the i color the initially black squares that have exactly four corner-adjacent squares painted i - 1 (all such squares are repainted simultaneously). This process continues ad infinitum. You have to figure out how many squares we repainted exactly x times.

The upper left square of the board has to be assumed to be always black. Two squares are called corner-adjacent, if they have exactly one common point.

Input

The first line contains integers n and m (1 ≤ n, m ≤ 5000). The second line contains integer x (1 ≤ x ≤ 109).

Output

Print how many squares will be painted exactly x times.

Examples

Input

3 3
1


Output

4


Input

3 3
2


Output

1


Input

1 1
1


Output

1
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;
import java.util.Arrays;

public class B {
    private static StreamTokenizer in;
    private static PrintWriter out;
    
    private static int nextInt() throws Exception{
        in.nextToken();
        return (int)in.nval;
    }
    
    private static String nextString() throws Exception{
        in.nextToken();
        return in.sval;
    }
    
    static{
        in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
        out = new PrintWriter(System.out);
    }
    
    public static void main(String[] args)throws Exception{
        int n = nextInt(), m = nextInt();
        int x = nextInt();
//      int[][] mas = new int[n][m];
        boolean xl = false, yl = false;
        if(n % 2 == 0)xl = true;
        if(m % 2 == 0)yl = true;
        
        if(n % 2 == 0)n /=2; else n = n / 2 + 1; 
        if(m % 2 == 0)m /=2; else m = m / 2 + 1;
        //System.out.println(xl+""+yl+" "+n+" "+m);
        for(int i = 1; i<=x; i++){
            if(i == x){
                if(n == 1 && m == 1){
                    if(xl && yl)System.out.println(2);
                    else
                    System.out.println(1);
                    return;
                }
                if(n == 1){
                    if(xl && yl)System.out.println(m*2);
                    else if(xl)System.out.println(2*m - 1);
                    else if(yl)System.out.println(m);
                    else System.out.println(m);
                    return;
                }
                if(m == 1){
                    if(xl && yl)System.out.println(n*2);
                    else if(xl)System.out.println(n);
                    else if(yl)System.out.println(2*n - 1);
                    else System.out.println(n);
                    return;
                }
                if(xl && yl)System.out.println(2*n + 2*m - 2);
                else if(xl)System.out.println(n + n + m + m - 3);
                else if(yl)System.out.println(m + m + n + n - 3);
                
                else System.out.println((n - 1)*2 + (m - 1)* 2);
                return;
            }
            n--;
            m--;
            if(n ==0 || m == 0)break;
        }
        System.out.println(0);
        
    }
}
