#include <bits/stdc++.h>
using namespace std;
template <typename T>
T inline SQR(const T &a) {
  return a * a;
}
long long MOD = 1000000007LL;
long long mypow(long long a, long long p) {
  if (p == 0) return 1LL;
  long long ans = mypow(a, p / 2);
  ans *= ans;
  ans %= MOD;
  if (p & 1) return (a * ans) % MOD;
  return ans;
}
int n, m, k;
int main() {
  ios::sync_with_stdio(false);
  cin >> n >> m >> k;
  int MAXS = max(n, m) + 1;
  int dp[k + 1][MAXS];
  memset(dp, 0, sizeof(dp));
  for (int i = 0; i < MAXS; ++i) dp[0][i] = 1;
  for (int i = 1; i < k + 1; ++i) {
    long long aux = 0, sum = 0;
    for (int j = 3; j < MAXS; ++j) {
      aux += dp[i - 1][j - 2];
      aux %= MOD;
      sum += aux;
      sum %= MOD;
      dp[i][j] = sum;
    }
  }
  cout << (1ll * dp[k][n] * dp[k][m]) % MOD << endl;
  return 0;
}
