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

mod = 10**9+7
frac = [1]*200100
for i in range(2,200100):
    frac[i] = i * frac[i-1]%mod
fraci = [None]*200100
fraci[-1] = pow(frac[-1], mod -2, mod)
for i in range(-2, -200100 - 1, -1):
    fraci[i] = fraci[i+1] * (200100 + i + 1) % mod
def comb(a, b):
    if not a >= b >= 0:
        return 0
    return frac[a]*fraci[b]*fraci[a-b]%mod


mod = 10**9+7

t = N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6
print(t*comb(N*M-2,K-2)%mod) 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 frac = [1]*200100 frac [1]*200100 [1] 1 200100 for i in range(2,200100):
    frac[i] = i * frac[i-1]%mod i range(2,200100) range 2 200100 frac[i] = i * frac[i-1]%mod frac[i] frac i i * frac[i-1]%mod i * frac[i-1] i frac[i-1] frac i-1 i 1 mod fraci = [None]*200100 fraci [None]*200100 [None] None 200100 fraci[-1] = pow(frac[-1], mod -2, mod) fraci[-1] fraci -1 pow(frac[-1], mod -2, mod) pow frac[-1] frac -1 mod -2 mod 2 mod for i in range(-2, -200100 - 1, -1):
    fraci[i] = fraci[i+1] * (200100 + i + 1) % mod i range(-2, -200100 - 1, -1) range -2 -200100 - 1 -200100 1 -1 fraci[i] = fraci[i+1] * (200100 + i + 1) % mod fraci[i] fraci i fraci[i+1] * (200100 + i + 1) % mod fraci[i+1] * (200100 + i + 1) fraci[i+1] fraci i+1 i 1 200100 + i + 1 200100 + i 200100 i 1 mod def comb(a, b):
    if not a >= b >= 0:
        return 0
    return frac[a]*fraci[b]*fraci[a-b]%mod comb if not a >= b >= 0:
        return 0
     not a >= b >= 0 a >= b >= 0 a >= b a b 0 return 0 0 return frac[a]*fraci[b]*fraci[a-b]%mod frac[a]*fraci[b]*fraci[a-b]%mod frac[a]*fraci[b]*fraci[a-b] frac[a]*fraci[b] frac[a] frac a fraci[b] fraci b fraci[a-b] fraci a-b a b mod a a b b mod = 10**9+7 mod 10**9+7 10**9 10 9 7 t = N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6 t N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6 N**2*(M+1)*M*(M-1)//6 N**2*(M+1)*M*(M-1) N**2*(M+1)*M N**2*(M+1) N**2 N 2 M+1 M 1 M M-1 M 1 6 M**2*(N+1)*N*(N-1)//6 M**2*(N+1)*N*(N-1) M**2*(N+1)*N M**2*(N+1) M**2 M 2 N+1 N 1 N N-1 N 1 6 print(t*comb(N*M-2,K-2)%mod) print t*comb(N*M-2,K-2)%mod t*comb(N*M-2,K-2) t comb(N*M-2,K-2) comb N*M-2 N*M N M 2 K-2 K 2 mod M, K = map(int, input().split()) map(int, input().split()) M K = map(int, input().split()) map(int, input().split()) K mod = 10**9+7 10**9+7 mod t = N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6 N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6 t N, M, K = map(int, input().split()) map(int, input().split()) N fraci = [None]*200100 [None]*200100 fraci def comb(a, b):
    if not a >= b >= 0:
        return 0
    return frac[a]*fraci[b]*fraci[a-b]%mod def comb(a, b):
    if not a >= b >= 0:
        return 0
    return frac[a]*fraci[b]*fraci[a-b]%mod comb frac = [1]*200100 [1]*200100 frac mod = 10**9+7 10**9+7 mod
N, M, K = map(int, input().split())

mod = 10**9+7
frac = [1]*200100
for i in range(2,200100):
    frac[i] = i * frac[i-1]%mod
fraci = [None]*200100
fraci[-1] = pow(frac[-1], mod -2, mod)
for i in range(-2, -200100 - 1, -1):
    fraci[i] = fraci[i+1] * (200100 + i + 1) % mod
def comb(a, b):
    if not a >= b >= 0:
        return 0
    return frac[a]*fraci[b]*fraci[a-b]%mod


mod = 10**9+7

t = N**2*(M+1)*M*(M-1)//6 + M**2*(N+1)*N*(N-1)//6
print(t*comb(N*M-2,K-2)%mod)
