  
    
N,M,K = map(int,input().split())


mod = 10 ** 9 + 7
MAX = N*M
fac = [0] * MAX
finv = [0] * MAX
inv = [0] * MAX

def cominit():
    fac[0] = 1
    fac[1] = 1
    finv[0] = 1
    finv[1] = 1
    inv[1] = 1
    for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod



def cmb(n,r):
    if n < 0 or r < 0 or r > n:return 0
    if r > n/2: r = n-r        
    return fac[n] * (finv[r] * finv[n-r] % mod) % mod
    
cominit()
ans= 0
NCK = cmb(N*M-2,K-2) 
M2 = M**2 * NCK
N2 = N**2 * NCK
for i in range(1,N):
    ans += M2 * i * (N-i)
    ans %= mod
    
for i in range(1,M):
    ans += N2 * i * (M-i)
    ans %= mod
        
print(ans) N,M,K = map(int,input().split()) N map(int,input().split()) map int input().split() ().split () input split M K mod = 10 ** 9 + 7 mod 10 ** 9 + 7 10 ** 9 10 9 7 MAX = N*M MAX N*M N M fac = [0] * MAX fac [0] * MAX [0] 0 MAX finv = [0] * MAX finv [0] * MAX [0] 0 MAX inv = [0] * MAX inv [0] * MAX [0] 0 MAX def cominit():
    fac[0] = 1
    fac[1] = 1
    finv[0] = 1
    finv[1] = 1
    inv[1] = 1
    for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod cominit fac[0] = 1 fac[0] fac 0 1 fac[1] = 1 fac[1] fac 1 1 finv[0] = 1 finv[0] finv 0 1 finv[1] = 1 finv[1] finv 1 1 inv[1] = 1 inv[1] inv 1 1 for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod i range(2,MAX) range 2 MAX fac[i] = fac[i-1] * i % mod fac[i] fac i fac[i-1] * i % mod fac[i-1] * i fac[i-1] fac i-1 i 1 i mod inv[i] = mod - inv[mod%i] * (mod//i) % mod inv[i] inv i mod - inv[mod%i] * (mod//i) % mod mod inv[mod%i] * (mod//i) % mod inv[mod%i] * (mod//i) inv[mod%i] inv mod%i mod i mod//i mod i mod finv[i] = finv[i-1] * inv[i] % mod finv[i] finv i finv[i-1] * inv[i] % mod finv[i-1] * inv[i] finv[i-1] finv i-1 i 1 inv[i] inv i mod def cmb(n,r):
    if n < 0 or r < 0 or r > n:return 0
    if r > n/2: r = n-r        
    return fac[n] * (finv[r] * finv[n-r] % mod) % mod
     cmb if n < 0 or r < 0 or r > n:return 0
     n < 0 or r < 0 or r > n n < 0 or r < 0 n < 0 n 0 r < 0 r 0 r > n r n if r > n/2: r = n-r        
     r > n/2 r n/2 n 2 return fac[n] * (finv[r] * finv[n-r] % mod) % mod fac[n] * (finv[r] * finv[n-r] % mod) % mod fac[n] * (finv[r] * finv[n-r] % mod) fac[n] fac n finv[r] * finv[n-r] % mod finv[r] * finv[n-r] finv[r] finv r finv[n-r] finv n-r n r mod mod n n r r cominit() cominit ans= 0 ans 0 NCK = cmb(N*M-2,K-2) NCK cmb(N*M-2,K-2) cmb N*M-2 N*M N M 2 K-2 K 2 M2 = M**2 * NCK M2 M**2 * NCK M**2 M 2 NCK N2 = N**2 * NCK N2 N**2 * NCK N**2 N 2 NCK for i in range(1,N):
    ans += M2 * i * (N-i)
    ans %= mod
     i range(1,N) range 1 N ans += M2 * i * (N-i) ans M2 * i * (N-i) M2 * i M2 i N-i N i ans %= mod ans mod for i in range(1,M):
    ans += N2 * i * (M-i)
    ans %= mod
         i range(1,M) range 1 M ans += N2 * i * (M-i) ans N2 * i * (M-i) N2 * i N2 i M-i M i ans %= mod ans mod print(ans) print ans MAX = N*M N*M MAX N2 = N**2 * NCK N**2 * NCK N2 ans += N2 * i * (M-i) N2 * i * (M-i) ans fac = [0] * MAX [0] * MAX fac inv = [0] * MAX [0] * MAX inv NCK = cmb(N*M-2,K-2) cmb(N*M-2,K-2) NCK M,K = map(int,input().split()) map(int,input().split()) M def cominit():
    fac[0] = 1
    fac[1] = 1
    finv[0] = 1
    finv[1] = 1
    inv[1] = 1
    for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod def cominit():
    fac[0] = 1
    fac[1] = 1
    finv[0] = 1
    finv[1] = 1
    inv[1] = 1
    for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod cominit def cmb(n,r):
    if n < 0 or r < 0 or r > n:return 0
    if r > n/2: r = n-r        
    return fac[n] * (finv[r] * finv[n-r] % mod) % mod
     def cmb(n,r):
    if n < 0 or r < 0 or r > n:return 0
    if r > n/2: r = n-r        
    return fac[n] * (finv[r] * finv[n-r] % mod) % mod
     cmb K = map(int,input().split()) map(int,input().split()) K finv = [0] * MAX [0] * MAX finv N,M,K = map(int,input().split()) map(int,input().split()) N ans %= mod mod ans mod = 10 ** 9 + 7 10 ** 9 + 7 mod ans= 0 0 ans ans += M2 * i * (N-i) M2 * i * (N-i) ans ans %= mod mod ans M2 = M**2 * NCK M**2 * NCK M2
  
    
N,M,K = map(int,input().split())


mod = 10 ** 9 + 7
MAX = N*M
fac = [0] * MAX
finv = [0] * MAX
inv = [0] * MAX

def cominit():
    fac[0] = 1
    fac[1] = 1
    finv[0] = 1
    finv[1] = 1
    inv[1] = 1
    for i in range(2,MAX):
        fac[i] = fac[i-1] * i % mod
        inv[i] = mod - inv[mod%i] * (mod//i) % mod
        finv[i] = finv[i-1] * inv[i] % mod



def cmb(n,r):
    if n < 0 or r < 0 or r > n:return 0
    if r > n/2: r = n-r        
    return fac[n] * (finv[r] * finv[n-r] % mod) % mod
    
cominit()
ans= 0
NCK = cmb(N*M-2,K-2) 
M2 = M**2 * NCK
N2 = N**2 * NCK
for i in range(1,N):
    ans += M2 * i * (N-i)
    ans %= mod
    
for i in range(1,M):
    ans += N2 * i * (M-i)
    ans %= mod
        
print(ans)