#include #include /*uint64_t power(uint64_t a, uint64_t b) { uint64_t res = 1; while (b) { res *= a; --b; } return res; }*/ uint64_t fact(uint64_t f) { //if (f <= 1) return 1; //return f * fact(f - 1); uint64_t res = 1; while (f > 1) { res *= f; --f; } return res; } uint64_t permutations(uint64_t a, uint64_t b) { uint64_t x = (fact(a) + fact(b)); uint64_t y = fact(a * b); return x/y; } int main(int argc, const char * argv[]) { uint64_t a, b, k, c; std::cin >> a >> b >> k >> c; //uint64_t variations = power(a + b, k); int64_t a1 = 0; int64_t a2 = k; uint64_t res = 0; for (; a2 >= 0;) { res += permutations(a1, a2) * a2; ++a1; --a2; res %= 1000000007l; } std::cout << (res / 2) << std::endl; return 0; }