

class Modulo
  attr_accessor :num, :mod

  def initialize(mod, init = 0)
    @mod = mod
    @num = init % @mod
    @com_init_max = 0
  end

  def mod_inv(num)
    num2 = @mod
    u = 1
    v = 0
    while num2 > 0
      t = num / num2
      num, num2 = num2, num - t * num2
      u, v = v, u - t * v
    end
    u % @mod
  end

  def com(n, k, max = nil)
    max = n if max.nil?
    com_init(max) if @com_init_max < max
    return 0 if n < k
    return 0 if n < 0 || k < 0
    @fac[n] * (@finv[k] * @finv[n - k] % @mod) % @mod
  end

  def to_s
    @num.to_s
  end

  def to_i
    @num.to_i
  end

  private

  def com_init(max)
    @com_init_max = max
    @fac = [0] * (max + 1)
    @finv = [0] * (max + 1)
    inv = [0] * (max + 1)
    @fac[0] = 1
    @fac[1] = 1
    @finv[0] = 1
    @finv[1] = 1
    inv[1] = 1;
    2.upto(max) do |i|
      @fac[i] = (@fac[i - 1] * i) % @mod
      inv[i] = @mod - inv[@mod % i] * (@mod / i) % @mod
      @finv[i] = @finv[i - 1] * inv[i] % @mod
    end
  end
end

MOD = 10**9 + 7

N, M, K = gets.chomp.split.map(&:to_i)

i = ([*(1..N - 1)].map { |j| j * (N - j) }.sum * M**2) % MOD
i += ([*(1..M - 1)].map { |j| j * (M - j) }.sum * N**2) % MOD
modulo = Modulo.new(MOD)
com = modulo.com(N * M - 2, K - 2)

puts (i * com) % MOD
