#include <bits/stdc++.h>
long long dp[1005][1005];
int main() {
  int n, m, k;
  while (scanf("%d%d%d", &n, &m, &k) != EOF) {
    int i, j;
    int limit = n > m ? n : m;
    int sum;
    for (i = 1; i <= 1000; ++i) dp[0][i] = 1;
    for (i = 1; i <= k; ++i) {
      sum = 0;
      for (j = 3; j <= limit; ++j) {
        sum = (sum + dp[i - 1][j - 2]) % 1000000007;
        dp[i][j] = (sum + dp[i][j - 1]) % 1000000007;
      }
    }
    printf("%I64d\n", (dp[k][n] * dp[k][m]) % 1000000007);
  }
  return 0;
}
