from collections import deque
from heapq import heappush,heappop
import re

def int_raw():
    return int(input())

def ss_raw():
    return input().split()

def ints_raw():
    return list(map(int, ss_raw()))

INF = 1<<29

DIV = 10**9+7

def mod_inv(a,mod = DIV):
    return pow(a,mod-2,mod)

def ncr(n,r, mod =DIV):
	r = min(r,n-r)
	ret = 1
	for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	return ret


def main():
    N, M,K = ints_raw()
    ans = 0
    for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
    for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
    return (ans*ncr(N*M-2,K-2))%DIV
print(main()) from collections import deque from heapq import heappush,heappop import re re def int_raw():
    return int(input()) int_raw return int(input()) int(input()) int input() input def ss_raw():
    return input().split() ss_raw return input().split() input().split() ().split () input split def ints_raw():
    return list(map(int, ss_raw())) ints_raw return list(map(int, ss_raw())) list(map(int, ss_raw())) list map(int, ss_raw()) map int ss_raw() ss_raw INF = 1<<29 INF 1<<29 1 29 DIV = 10**9+7 DIV 10**9+7 10**9 10 9 7 def mod_inv(a,mod = DIV):
    return pow(a,mod-2,mod) mod_inv return pow(a,mod-2,mod) pow(a,mod-2,mod) pow a mod-2 mod 2 mod a a mod = DIV mod DIV def ncr(n,r, mod =DIV):
	r = min(r,n-r)
	ret = 1
	for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	return ret ncr r = min(r,n-r) r min(r,n-r) min r n-r n r ret = 1 ret 1 for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	 i range(1,r+1) range 1 r+1 r 1 ret = ret * (n-i+1) % mod ret ret * (n-i+1) % mod ret * (n-i+1) ret n-i+1 n-i n i 1 mod ret = ret * pow(i, mod-2, mod) % mod ret ret * pow(i, mod-2, mod) % mod ret * pow(i, mod-2, mod) ret pow(i, mod-2, mod) pow i mod-2 mod 2 mod mod return ret ret n n r r mod =DIV mod DIV def main():
    N, M,K = ints_raw()
    ans = 0
    for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
    for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
    return (ans*ncr(N*M-2,K-2))%DIV main N, M,K = ints_raw() N ints_raw() ints_raw M K ans = 0 ans 0 for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
     d range(1,N) range 1 N ans =(ans+d*(N-d)*M*M)%DIV ans (ans+d*(N-d)*M*M)%DIV ans+d*(N-d)*M*M ans d*(N-d)*M*M d*(N-d)*M d*(N-d) d N-d N d M M DIV for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
     d range(1,M) range 1 M ans =(ans+d*(M-d)*N*N)%DIV ans (ans+d*(M-d)*N*N)%DIV ans+d*(M-d)*N*N ans d*(M-d)*N*N d*(M-d)*N d*(M-d) d M-d M d N N DIV return (ans*ncr(N*M-2,K-2))%DIV (ans*ncr(N*M-2,K-2))%DIV ans*ncr(N*M-2,K-2) ans ncr(N*M-2,K-2) ncr N*M-2 N*M N M 2 K-2 K 2 DIV print(main()) print main() main def ints_raw():
    return list(map(int, ss_raw())) def ints_raw():
    return list(map(int, ss_raw())) ints_raw def int_raw():
    return int(input()) def int_raw():
    return int(input()) int_raw def mod_inv(a,mod = DIV):
    return pow(a,mod-2,mod) def mod_inv(a,mod = DIV):
    return pow(a,mod-2,mod) mod_inv INF = 1<<29 1<<29 INF def main():
    N, M,K = ints_raw()
    ans = 0
    for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
    for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
    return (ans*ncr(N*M-2,K-2))%DIV def main():
    N, M,K = ints_raw()
    ans = 0
    for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
    for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
    return (ans*ncr(N*M-2,K-2))%DIV main def ss_raw():
    return input().split() def ss_raw():
    return input().split() ss_raw DIV = 10**9+7 10**9+7 DIV def ncr(n,r, mod =DIV):
	r = min(r,n-r)
	ret = 1
	for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	return ret def ncr(n,r, mod =DIV):
	r = min(r,n-r)
	ret = 1
	for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	return ret ncr
from collections import deque
from heapq import heappush,heappop
import re

def int_raw():
    return int(input())

def ss_raw():
    return input().split()

def ints_raw():
    return list(map(int, ss_raw()))

INF = 1<<29

DIV = 10**9+7

def mod_inv(a,mod = DIV):
    return pow(a,mod-2,mod)

def ncr(n,r, mod =DIV):
	r = min(r,n-r)
	ret = 1
	for i in range(1,r+1):
		ret = ret * (n-i+1) % mod
		ret = ret * pow(i, mod-2, mod) % mod
	return ret


def main():
    N, M,K = ints_raw()
    ans = 0
    for d in range(1,N):
        ans =(ans+d*(N-d)*M*M)%DIV
    for d in range(1,M):
        ans =(ans+d*(M-d)*N*N)%DIV
    return (ans*ncr(N*M-2,K-2))%DIV
print(main())
