

def modinv(a, mod):
    b = mod
    x, u = 1, 0
    while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
    x %= mod
    return x


def mod_nCr_init(n, mod):
    fac[0] = fac[1] = 1
    facinv[0] = facinv[1] = 1
    inv[1] = 1
    for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod


def mod_nCr(n, r, mod):
    if n < r or n < 0 or r < 0:
        return 0
    return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod


N, M, K = map(int, input().split())
fac = [0]*(N*M)
facinv = [0]*(N*M)
inv = [0]*(N*M)

mod = 10**9 + 7
mod_nCr_init(N*M, mod)
C = mod_nCr(N*M-2, K-2, mod)

ans = 0
for _ in [0, 0]:
    for d in range(1, N):
        ans += (N-d)*M*M*d*C

    N, M = M, N

print(ans % mod)
 def modinv(a, mod):
    b = mod
    x, u = 1, 0
    while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
    x %= mod
    return x modinv b = mod b mod x, u = 1, 0 x 1 u 0 while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
     b q = a//b q a//b a b a, b = b, a-q*b a b b a-q*b a q*b q b x, u = u, x-q*u x u u x-q*u x q*u q u x %= mod x mod return x x a a mod mod def mod_nCr_init(n, mod):
    fac[0] = fac[1] = 1
    facinv[0] = facinv[1] = 1
    inv[1] = 1
    for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod mod_nCr_init fac[0] = fac[1] = 1 fac[0] fac 0 1 = fac[1] = 1 fac[1] fac 1 1 facinv[0] = facinv[1] = 1 facinv[0] facinv 0 1 = facinv[1] = 1 facinv[1] facinv 1 1 inv[1] = 1 inv[1] inv 1 1 for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod i range(2, n) range 2 n 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] = -inv[mod % i] * (mod // i) % mod inv[i] inv i -inv[mod % i] * (mod // i) % mod -inv[mod % i] * (mod // i) -inv[mod % i] inv[mod % i] inv mod % i mod i mod // i mod i mod facinv[i] = facinv[i-1] * inv[i] % mod facinv[i] facinv i facinv[i-1] * inv[i] % mod facinv[i-1] * inv[i] facinv[i-1] facinv i-1 i 1 inv[i] inv i mod n n mod mod def mod_nCr(n, r, mod):
    if n < r or n < 0 or r < 0:
        return 0
    return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod mod_nCr if n < r or n < 0 or r < 0:
        return 0
     n < r or n < 0 or r < 0 n < r or n < 0 n < r n r n < 0 n 0 r < 0 r 0 return 0 0 return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod fac[n] * (facinv[r] * facinv[n-r] % mod) % mod fac[n] * (facinv[r] * facinv[n-r] % mod) fac[n] fac n facinv[r] * facinv[n-r] % mod facinv[r] * facinv[n-r] facinv[r] facinv r facinv[n-r] facinv n-r n r mod mod n n r r mod mod N, M, K = map(int, input().split()) N map(int, input().split()) map int input().split() ().split () input split M K fac = [0]*(N*M) fac [0]*(N*M) [0] 0 N*M N M facinv = [0]*(N*M) facinv [0]*(N*M) [0] 0 N*M N M inv = [0]*(N*M) inv [0]*(N*M) [0] 0 N*M N M mod = 10**9 + 7 mod 10**9 + 7 10**9 10 9 7 mod_nCr_init(N*M, mod) mod_nCr_init N*M N M mod C = mod_nCr(N*M-2, K-2, mod) C mod_nCr(N*M-2, K-2, mod) mod_nCr N*M-2 N*M N M 2 K-2 K 2 mod ans = 0 ans 0 for _ in [0, 0]:
    for d in range(1, N):
        ans += (N-d)*M*M*d*C

    N, M = M, N _ [0, 0] 0 0 for d in range(1, N):
        ans += (N-d)*M*M*d*C

     d range(1, N) range 1 N ans += (N-d)*M*M*d*C ans (N-d)*M*M*d*C (N-d)*M*M*d (N-d)*M*M (N-d)*M N-d N d M M d C N, M = M, N N M M N print(ans % mod) print ans % mod ans mod facinv = [0]*(N*M) [0]*(N*M) facinv M = M, N N M def mod_nCr(n, r, mod):
    if n < r or n < 0 or r < 0:
        return 0
    return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod def mod_nCr(n, r, mod):
    if n < r or n < 0 or r < 0:
        return 0
    return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod mod_nCr C = mod_nCr(N*M-2, K-2, mod) mod_nCr(N*M-2, K-2, mod) C def modinv(a, mod):
    b = mod
    x, u = 1, 0
    while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
    x %= mod
    return x def modinv(a, mod):
    b = mod
    x, u = 1, 0
    while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
    x %= mod
    return x modinv N, M, K = map(int, input().split()) map(int, input().split()) N K = map(int, input().split()) map(int, input().split()) K M, K = map(int, input().split()) map(int, input().split()) M mod = 10**9 + 7 10**9 + 7 mod ans = 0 0 ans fac = [0]*(N*M) [0]*(N*M) fac ans += (N-d)*M*M*d*C (N-d)*M*M*d*C ans inv = [0]*(N*M) [0]*(N*M) inv def mod_nCr_init(n, mod):
    fac[0] = fac[1] = 1
    facinv[0] = facinv[1] = 1
    inv[1] = 1
    for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod def mod_nCr_init(n, mod):
    fac[0] = fac[1] = 1
    facinv[0] = facinv[1] = 1
    inv[1] = 1
    for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod mod_nCr_init N, M = M, N M N


def modinv(a, mod):
    b = mod
    x, u = 1, 0
    while b:
        q = a//b
        a, b = b, a-q*b
        x, u = u, x-q*u
    x %= mod
    return x


def mod_nCr_init(n, mod):
    fac[0] = fac[1] = 1
    facinv[0] = facinv[1] = 1
    inv[1] = 1
    for i in range(2, n):
        fac[i] = fac[i-1] * i % mod
        inv[i] = -inv[mod % i] * (mod // i) % mod
        facinv[i] = facinv[i-1] * inv[i] % mod


def mod_nCr(n, r, mod):
    if n < r or n < 0 or r < 0:
        return 0
    return fac[n] * (facinv[r] * facinv[n-r] % mod) % mod


N, M, K = map(int, input().split())
fac = [0]*(N*M)
facinv = [0]*(N*M)
inv = [0]*(N*M)

mod = 10**9 + 7
mod_nCr_init(N*M, mod)
C = mod_nCr(N*M-2, K-2, mod)

ans = 0
for _ in [0, 0]:
    for d in range(1, N):
        ans += (N-d)*M*M*d*C

    N, M = M, N

print(ans % mod)

