#include <bits/stdc++.h>
using namespace std;
long long mem[1010][1010];
long long rec(int a, int k) {
  if ((a - 1) / 2 < k) return 0;
  if (k == 1) {
    return (((long long)(a - 1)) * (a - 2) / 2);
  }
  if (mem[a][k] != -1) return mem[a][k];
  long long ans = 0;
  for (int i = 1; i < a - 1; ++i) {
    ans += (((a - i - 1) * rec(i, k - 1)) % 1000000007);
  }
  mem[a][k] = ans % 1000000007;
  return mem[a][k];
}
int main() {
  int n, m, k;
  cin >> n >> m >> k;
  memset(mem, -1, sizeof mem);
  long long nn = rec(n, k);
  long long mm = rec(m, k);
  cout << (mm * nn) % (long long)(1e9 + 7) << endl;
  return 0;
}
