There are n boys and m girls attending a theatre club. To set a play "The Big Bang Theory", they need to choose a group containing exactly t actors containing no less than 4 boys and no less than one girl. How many ways are there to choose a group? Of course, the variants that only differ in the composition of the troupe are considered different.

Perform all calculations in the 64-bit type: long long for С/С++, int64 for Delphi and long for Java.

Input

The only line of the input data contains three integers n, m, t (4 ≤ n ≤ 30, 1 ≤ m ≤ 30, 5 ≤ t ≤ n + m).

Output

Find the required number of ways.

Please do not use the %lld specificator to read or write 64-bit integers in С++. It is preferred to use cin, cout streams or the %I64d specificator.

Examples

Input

5 2 5


Output

10


Input

4 3 5


Output

3
import java.io.*;

import java.util.*;

public class CodeForces {
        public void solve() throws IOException {
                long res=0;
                int n=nextInt();
                int m=nextInt();
                int t=nextInt();
                long[][] arr=new long[31][31];
                for(int i=0;i<=Math.max(n, m);++i) 
            {
                        arr[i][0]=1;         
                        arr[i][i]=1;
               for(int j=1;j<i;++j)
               {  
                   arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
               }
            }
                
                for(int i=Math.max(4, t-m);i<n+1 && i<t;i++){
                        res+=arr[n][i]*arr[m][t-i];
                }
                out.print(res);
                
        }
        

        

        public static void main(String[] args) {
                new CodeForces().run();
        }

        int NOD(int a, int b) {
                while (a != 0 && b != 0) {
                        if (a >= b)
                                a = a % b;
                        else
                                b = b % a;
                }
                return a + b;
        }

        BufferedReader reader;
        StringTokenizer tokenizer;
        PrintWriter out;
        boolean isOuterFile = false;

        public void run() {
                try {
                        if (isOuterFile) {
                                reader = new BufferedReader(new FileReader("input.txt"));
                                out = new PrintWriter(new BufferedWriter(new FileWriter(
                                                "output.txt")));
                        } else {
                                reader = new BufferedReader(new InputStreamReader(System.in));
                                out = new PrintWriter(System.out);
                        }

                        tokenizer = null;
                        // long t=new Date().getTime();
                        solve();
                        // writer.println(t-new Date().getTime());
                        reader.close();
                        out.close();
                } catch (Exception e) {
                        e.printStackTrace();
                        System.exit(1);
                }
        }

        int nextInt() throws IOException {
                return Integer.parseInt(nextToken());
        }

        long nextLong() throws IOException {
                return Long.parseLong(nextToken());
        }

        double nextDouble() throws IOException {
                return Double.parseDouble(nextToken());
        }

        String nextToken() throws IOException {
                while (tokenizer == null || !tokenizer.hasMoreTokens()) {
                        tokenizer = new StringTokenizer(reader.readLine());
                }
                return tokenizer.nextToken();
        }
}