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
#include <bits/stdc++.h>
using namespace std;
struct custom_hash {
  static uint64_t splitmix64(uint64_t x) {
    x += 0x9e3779b97f4a7c15;
    x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9;
    x = (x ^ (x >> 27)) * 0x94d049bb133111eb;
    return x ^ (x >> 31);
  }
  size_t operator()(uint64_t x) const {
    static const uint64_t FIXED_RANDOM =
        chrono::steady_clock::now().time_since_epoch().count();
    return splitmix64(x + FIXED_RANDOM);
  }
};
struct hash_pair {
  template <class T1, class T2>
  size_t operator()(const pair<T1, T2>& p) const {
    auto hash1 = hash<T1>{}(p.first);
    auto hash2 = hash<T2>{}(p.second);
    return hash1 ^ hash2;
  }
};
unsigned long long int M = 1e9 + 7;
unsigned long long int power(unsigned long long int x,
                             unsigned long long int y) {
  unsigned long long int res = 1;
  x = x % M;
  while (y > 0) {
    if (y & 1) res = (res * x) % M;
    y = y >> 1;
    x = (x * x) % M;
  }
  return res % M;
}
unsigned long long int solve() {
  unsigned long long int n, m, t;
  cin >> n >> m >> t;
  unsigned long long int ans = 0;
  unsigned long long int pascal[35][35];
  memset(pascal, 0, sizeof(pascal));
  pascal[0][0] = 1;
  for (unsigned long long int i = 0; i < 35; i++) pascal[i][0] = 1;
  for (unsigned long long int i = 1; i < 32; i++) {
    for (unsigned long long int j = 1; j < 32; j++)
      pascal[i][j] = pascal[i - 1][j] + pascal[i - 1][j - 1];
  }
  for (unsigned long long int i = 4; i < min(n + 1, t); i++) {
    unsigned long long int j = t - i;
    if (j > m) continue;
    ans += pascal[n][i] * pascal[m][j];
  }
  cout << ans << "\n";
  return 0;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  unsigned long long int t;
  t = 1;
  while (t > 0) {
    t--;
    solve();
  }
}
