import sys

MOD = 10 ** 9 + 7 

def make_table(size=10**6, p=MOD):
    fac = [None] * (size + 1)
    fac[0] = 1
    for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
    ifac = [None] * (size + 1)
    ifac[size] = pow(fac[size], p-2, p)
    for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
    return fac, ifac

fac, ifac = make_table(2*10**5)

def comb(n, r, mod=MOD):
    if r > n or r < 0: return 0
    return fac[n] * ifac[r] % mod * ifac[n-r] % mod

n, m, k = map(int, sys.stdin.readline().split())

def main():
    vert = list(range(n+1))
    horiz = list(range(m+1))
    for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
    for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
    res = 0
    for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
    for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
    res *= comb(n*m-2, k-2)
    res %= MOD
    return res

if __name__ == '__main__':
    ans = main()
    print(ans) import sys sys MOD = 10 ** 9 + 7 MOD 10 ** 9 + 7 10 ** 9 10 9 7 def make_table(size=10**6, p=MOD):
    fac = [None] * (size + 1)
    fac[0] = 1
    for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
    ifac = [None] * (size + 1)
    ifac[size] = pow(fac[size], p-2, p)
    for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
    return fac, ifac make_table fac = [None] * (size + 1) fac [None] * (size + 1) [None] None size + 1 size 1 fac[0] = 1 fac[0] fac 0 1 for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
     i range(size) range size fac[i+1] = fac[i] * (i + 1) % p fac[i+1] fac i+1 i 1 fac[i] * (i + 1) % p fac[i] * (i + 1) fac[i] fac i i + 1 i 1 p ifac = [None] * (size + 1) ifac [None] * (size + 1) [None] None size + 1 size 1 ifac[size] = pow(fac[size], p-2, p) ifac[size] ifac size pow(fac[size], p-2, p) pow fac[size] fac size p-2 p 2 p for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
     i range(size, 0, -1) range size 0 -1 ifac[i-1] = ifac[i] * i % p ifac[i-1] ifac i-1 i 1 ifac[i] * i % p ifac[i] * i ifac[i] ifac i i p return fac, ifac return fac, ifac fac ifac size=10**6 size 10**6 10 6 p=MOD p MOD fac, ifac = make_table(2*10**5) fac make_table(2*10**5) make_table 2*10**5 2 10**5 10 5 ifac def comb(n, r, mod=MOD):
    if r > n or r < 0: return 0
    return fac[n] * ifac[r] % mod * ifac[n-r] % mod comb if r > n or r < 0: return 0
     r > n or r < 0 r > n r n r < 0 r 0 return fac[n] * ifac[r] % mod * ifac[n-r] % mod fac[n] * ifac[r] % mod * ifac[n-r] % mod fac[n] * ifac[r] % mod * ifac[n-r] fac[n] * ifac[r] % mod fac[n] * ifac[r] fac[n] fac n ifac[r] ifac r mod ifac[n-r] ifac n-r n r mod n n r r mod=MOD mod MOD n, m, k = map(int, sys.stdin.readline().split()) n map(int, sys.stdin.readline().split()) map int sys.stdin.readline().split() sys.stdin.readline().split sys.stdin.readline() sys.stdin.readline sys.stdin sys stdin readline split m k def main():
    vert = list(range(n+1))
    horiz = list(range(m+1))
    for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
    for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
    res = 0
    for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
    for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
    res *= comb(n*m-2, k-2)
    res %= MOD
    return res main vert = list(range(n+1)) vert list(range(n+1)) list range(n+1) range n+1 n 1 horiz = list(range(m+1)) horiz list(range(m+1)) list range(m+1) range m+1 m 1 for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
     i range(1, n) range 1 n vert[i+1] += vert[i] vert[i+1] vert i+1 i 1 vert[i] vert i vert[i+1] %= MOD vert[i+1] vert i+1 i 1 MOD for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
     i range(1, m) range 1 m horiz[i+1] += horiz[i] horiz[i+1] horiz i+1 i 1 horiz[i] horiz i horiz[i+1] %= MOD horiz[i+1] horiz i+1 i 1 MOD res = 0 res 0 for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
     i range(1, n) range 1 n res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD res (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD (vert[n] - vert[i] - i * (n - i)) * m % MOD * m (vert[n] - vert[i] - i * (n - i)) * m % MOD (vert[n] - vert[i] - i * (n - i)) * m vert[n] - vert[i] - i * (n - i) vert[n] - vert[i] vert[n] vert n vert[i] vert i i * (n - i) i n - i n i m MOD m MOD res %= MOD res MOD for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
     i range(1, m) range 1 m res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD res (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n (horiz[m] - horiz[i] - i * (m - i)) * n % MOD (horiz[m] - horiz[i] - i * (m - i)) * n horiz[m] - horiz[i] - i * (m - i) horiz[m] - horiz[i] horiz[m] horiz m horiz[i] horiz i i * (m - i) i m - i m i n MOD n MOD res %= MOD res MOD res *= comb(n*m-2, k-2) res comb(n*m-2, k-2) comb n*m-2 n*m n m 2 k-2 k 2 res %= MOD res MOD return res res if __name__ == '__main__':
    ans = main()
    print(ans) __name__ == '__main__' __name__ '__main__' ans = main() ans main() main print(ans) print ans ifac = make_table(2*10**5) make_table(2*10**5) ifac def comb(n, r, mod=MOD):
    if r > n or r < 0: return 0
    return fac[n] * ifac[r] % mod * ifac[n-r] % mod def comb(n, r, mod=MOD):
    if r > n or r < 0: return 0
    return fac[n] * ifac[r] % mod * ifac[n-r] % mod comb def main():
    vert = list(range(n+1))
    horiz = list(range(m+1))
    for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
    for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
    res = 0
    for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
    for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
    res *= comb(n*m-2, k-2)
    res %= MOD
    return res def main():
    vert = list(range(n+1))
    horiz = list(range(m+1))
    for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
    for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
    res = 0
    for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
    for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
    res *= comb(n*m-2, k-2)
    res %= MOD
    return res main MOD = 10 ** 9 + 7 10 ** 9 + 7 MOD m, k = map(int, sys.stdin.readline().split()) map(int, sys.stdin.readline().split()) m ans = main() main() ans k = map(int, sys.stdin.readline().split()) map(int, sys.stdin.readline().split()) k n, m, k = map(int, sys.stdin.readline().split()) map(int, sys.stdin.readline().split()) n fac, ifac = make_table(2*10**5) make_table(2*10**5) fac def make_table(size=10**6, p=MOD):
    fac = [None] * (size + 1)
    fac[0] = 1
    for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
    ifac = [None] * (size + 1)
    ifac[size] = pow(fac[size], p-2, p)
    for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
    return fac, ifac def make_table(size=10**6, p=MOD):
    fac = [None] * (size + 1)
    fac[0] = 1
    for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
    ifac = [None] * (size + 1)
    ifac[size] = pow(fac[size], p-2, p)
    for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
    return fac, ifac make_table
import sys

MOD = 10 ** 9 + 7 

def make_table(size=10**6, p=MOD):
    fac = [None] * (size + 1)
    fac[0] = 1
    for i in range(size):
        fac[i+1] = fac[i] * (i + 1) % p
    ifac = [None] * (size + 1)
    ifac[size] = pow(fac[size], p-2, p)
    for i in range(size, 0, -1):
        ifac[i-1] = ifac[i] * i % p
    return fac, ifac

fac, ifac = make_table(2*10**5)

def comb(n, r, mod=MOD):
    if r > n or r < 0: return 0
    return fac[n] * ifac[r] % mod * ifac[n-r] % mod

n, m, k = map(int, sys.stdin.readline().split())

def main():
    vert = list(range(n+1))
    horiz = list(range(m+1))
    for i in range(1, n):
        vert[i+1] += vert[i]
        vert[i+1] %= MOD
    for i in range(1, m):
        horiz[i+1] += horiz[i]
        horiz[i+1] %= MOD
    
    res = 0
    for i in range(1, n):
        res += (vert[n] - vert[i] - i * (n - i)) * m % MOD * m % MOD
        res %= MOD
    for i in range(1, m):
        res += (horiz[m] - horiz[i] - i * (m - i)) * n % MOD * n % MOD
        res %= MOD
    
    res *= comb(n*m-2, k-2)
    res %= MOD
    return res

if __name__ == '__main__':
    ans = main()
    print(ans)