module ModInt
  MOD = 10 ** 9 + 7

  def to_mod(a); a % MOD; end
  def add(a, b); (a + b) % MOD; end
  def mul(a, b); (a * b) % MOD; end
  def inv(a); a.pow(MOD - 2, MOD); end
  def div(a, b); mul(a, inv(b)); end
end

class FactTable
  include ModInt

  def initialize(n)
    @fact = [1] * (n + 1)
    @finv = [1] * (n + 1)
    2.upto(n) { |i| @fact[i] = mul(@fact[i - 1], i) }
    @finv[n] = inv(@fact[n])
    n.downto(3) { |i| @finv[i - 1] = mul(@finv[i], i) }
  end

  def nCk(n, m)
    mul(mul(@fact[n], @finv[m]), @finv[n - m])
  end
end

n, m, k = gets.split.map(&:to_i)
ft = FactTable.new(n * m)

# https://www.wolframalpha.com/input/?i=sum%28n*%28x-n%29%29%2C+n%3D1+to+x-1&lang=ja
def choose_pair(x)
  x * (x - 1) * (x + 1) / 6
end

include ModInt
x_sum = to_mod(choose_pair(n) * m * m)
y_sum = to_mod(choose_pair(m) * n * n)
pat = ft.nCk(n*m-2,k-2)
ans = mul(x_sum + y_sum, pat)
puts ans
