#include <bits/stdc++.h>
using namespace std;
#define rep(i, l, r) for (int i = l; i <= r; ++i)
const int N = 2e6 + 5;
const int Mod = 1e9 + 7;
int n, m, k, fac[N], inv[N];

int Inc (int a, int b) { return (a += b) >= Mod ? a - Mod : a; }
int Dec (int a, int b) { return (a -= b) < 0 ? a + Mod : a; }
int Mul (int a, int b) { return 1ll * a * b % Mod; }
int fpow (int a, int b) { int ans = 1; for (; b; a = Mul(a, a), b >>= 1) if(b & 1) ans = Mul(ans, a); return ans; }
int C (int n, int m) { return n < m ? 0 : Mul(fac[n], Mul(inv[m], inv[n - m])); }

int main () {
	cin >> n >> m >> k;
	fac[0] = inv[0] = 1;
	rep(i, 1, n + m) fac[i] = Mul(fac[i - 1], i), inv[i] = fpow(fac[i], Mod - 2);
	if(k >= n) printf("%d", C(n + m, n));
	else if(m + k < n) puts("0");
	else printf("%d", Dec(C(n + m, n), C(n + m, n - k - 1)));
	return 0;
}
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define endl '\n';
#define faster ios_base::sync_with_stdio(0);

int main()

{
    faster
    int a,b,c;
    cin>>a>>b>>c;
    if(a*a+b*b<c*c)
        cout<<"Yes"<<endl;
    if(a*a+b*b>=c*c)
        cout<<"No"<<endl;
    return 0;

}
