#include <bits/stdc++.h>
using namespace std;
const int Mod = 1e9 + 7;
int dp[1005][1005];
void calc(int &x, int y) {
  x += y;
  if (x > Mod) x -= Mod;
}
int dfs(int now, int x) {
  if (!x) return 1;
  if (!now) return 0;
  if (dp[now][x] != -1) return dp[now][x];
  int res = 0;
  for (int i = 3; i <= now; i++)
    calc(res, 1LL * dfs(i - 2, x - 1) * (now - i + 1) % Mod);
  return dp[now][x] = res;
}
int main() {
  int n, m, k;
  scanf("%d%d%d", &n, &m, &k);
  memset(dp, -1, sizeof(dp));
  int ans = 1LL * dfs(n, k) * dfs(m, k) % Mod;
  printf("%d\n", ans);
  return 0;
}
