MOD = 10 ** 9 + 7
ONE = '1'.freeze

def nCk(n, k)
  res = 1
  i = k
  j = 1
  while i > 0
    res = res * (n - i + 1)
    res %= MOD
    j *= i
    j %= MOD
    i -= 1
  end
  res *= inv(j)
  # res %= MOD
  res
end

def repeated_nCk(n, k)
  # 仕切りのイメージで
  nCk(n + k - 1, n - 1) % MOD
end

def inv(x)
  res = 1
  beki = x
  (MOD - 2).to_s(2).reverse.chars do |digest|
    res = (beki * res) % MOD if digest == ONE
    beki = (beki * beki) % MOD
  end
  res
end

n, m, k = gets.split.map(&:to_i)
combination = nCk(n * m, k)
edges = nCk(k, 2)

vertical_sum = 0
tmp = 2
(m - 1).downto(1) do |i|
  vertical_sum += i * tmp
  tmp += 2
end
vertical_sum %= MOD

horizontal_sum = 0
tmp = 2
(n - 1).downto(1) do |i|
  horizontal_sum += i * tmp
  tmp += 2
end
horizontal_sum %= MOD

sum = combination * edges * vertical_sum / (m * m - 1) + combination * edges * horizontal_sum / (n * n - 1)
puts sum % MOD
