#include <bits/stdc++.h>
using namespace std;
long long dp[1001][1001];
long long mem(int sz, int rem) {
  if (rem == 0) return 1;
  if (dp[sz][rem] != -1) return dp[sz][rem];
  long long& ref = dp[sz][rem];
  ref = 0;
  for (int i = 1; i <= sz - 2; i++) {
    long long t = (sz - 1 - i) * mem(i, rem - 1);
    ref = (ref + t) % 1000000007LL;
  }
  return ref;
}
int n, m, k;
int main() {
  cin >> n >> m >> k;
  memset(dp, -1, sizeof dp);
  long long t1 = mem(n, k);
  long long t2 = mem(m, k);
  long long res = (t1 * t2) % 1000000007LL;
  cout << res << endl;
  return 0;
}
