ma = lambda :map(int,input().split())
lma = lambda :list(map(int,input().split()))
tma = lambda :tuple(map(int,input().split()))
ni = lambda:int(input())
yn = lambda fl:print("Yes") if fl else print("No")
import collections
import math
import itertools
import heapq as hq
import sys
import numpy as np
mod=10**9+7
def ncr_1(n,r,p):##　n>>r の場合のncr　O(r)
    x = 1
    y = 1
    for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
    return x*modinv(y,p) %p
def modinv(a,p):
    b,u,v = p,1,0
    while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
    u %=p
    return u
n,m,k = ma()
ans=0
for i in range(1,n):
    ans+=i*(n-i)*m**2
    ans%=mod
for i in range(1,m):
    ans+=i*(m-i)*n**2
    ans%=mod
print((ans*ncr_1(n*m-2,k-2,mod))%mod) ma = lambda :map(int,input().split()) ma lambda :map(int,input().split()) map(int,input().split()) map int input().split() ().split () input split lma = lambda :list(map(int,input().split())) lma lambda :list(map(int,input().split())) list(map(int,input().split())) list map(int,input().split()) map int input().split() ().split () input split tma = lambda :tuple(map(int,input().split())) tma lambda :tuple(map(int,input().split())) tuple(map(int,input().split())) tuple map(int,input().split()) map int input().split() ().split () input split ni = lambda:int(input()) ni lambda:int(input()) int(input()) int input() input yn = lambda fl:print("Yes") if fl else print("No") yn lambda fl:print("Yes") if fl else print("No") print("Yes") if fl else print("No") fl print("Yes") print "Yes" print("No") print "No" fl import collections collections import math math import itertools itertools import heapq as hq heapq import sys sys import numpy as np numpy mod=10**9+7 mod 10**9+7 10**9 10 9 7 def ncr_1(n,r,p):##　n>>r の場合のncr　O(r)
    x = 1
    y = 1
    for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
    return x*modinv(y,p) %p ncr_1 x = 1 x 1 y = 1 y 1 for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
     i range(r) range r x*=(n-i) x n-i n i y*=(i+1) y i+1 i 1 x%=p x p y%=p y p return x*modinv(y,p) %p x*modinv(y,p) %p x*modinv(y,p) x modinv(y,p) modinv y p p n n r r p p def modinv(a,p):
    b,u,v = p,1,0
    while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
    u %=p
    return u modinv b,u,v = p,1,0 b p u 1 v 0 while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
     b t = a//b t a//b a b a -= t*b a t*b t b a,b = b,a a b b a u -=t*v u t*v t v u,v = v,u u v v u u %=p u p return u u a a p p n,m,k = ma() n ma() ma m k ans=0 ans 0 for i in range(1,n):
    ans+=i*(n-i)*m**2
    ans%=mod i range(1,n) range 1 n ans+=i*(n-i)*m**2 ans i*(n-i)*m**2 i*(n-i) i n-i n i m**2 m 2 ans%=mod ans mod for i in range(1,m):
    ans+=i*(m-i)*n**2
    ans%=mod i range(1,m) range 1 m ans+=i*(m-i)*n**2 ans i*(m-i)*n**2 i*(m-i) i m-i m i n**2 n 2 ans%=mod ans mod print((ans*ncr_1(n*m-2,k-2,mod))%mod) print (ans*ncr_1(n*m-2,k-2,mod))%mod ans*ncr_1(n*m-2,k-2,mod) ans ncr_1(n*m-2,k-2,mod) ncr_1 n*m-2 n*m n m 2 k-2 k 2 mod mod def modinv(a,p):
    b,u,v = p,1,0
    while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
    u %=p
    return u def modinv(a,p):
    b,u,v = p,1,0
    while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
    u %=p
    return u modinv ans=0 0 ans yn = lambda fl:print("Yes") if fl else print("No") lambda fl:print("Yes") if fl else print("No") yn ans+=i*(m-i)*n**2 i*(m-i)*n**2 ans mod=10**9+7 10**9+7 mod tma = lambda :tuple(map(int,input().split())) lambda :tuple(map(int,input().split())) tma def ncr_1(n,r,p):##　n>>r の場合のncr　O(r)
    x = 1
    y = 1
    for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
    return x*modinv(y,p) %p def ncr_1(n,r,p):##　n>>r の場合のncr　O(r)
    x = 1
    y = 1
    for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
    return x*modinv(y,p) %p ncr_1 ans+=i*(n-i)*m**2 i*(n-i)*m**2 ans lma = lambda :list(map(int,input().split())) lambda :list(map(int,input().split())) lma ans%=mod mod ans k = ma() ma() k ni = lambda:int(input()) lambda:int(input()) ni m,k = ma() ma() m ma = lambda :map(int,input().split()) lambda :map(int,input().split()) ma ans%=mod mod ans n,m,k = ma() ma() n
ma = lambda :map(int,input().split())
lma = lambda :list(map(int,input().split()))
tma = lambda :tuple(map(int,input().split()))
ni = lambda:int(input())
yn = lambda fl:print("Yes") if fl else print("No")
import collections
import math
import itertools
import heapq as hq
import sys
import numpy as np
mod=10**9+7
def ncr_1(n,r,p):##　n>>r の場合のncr　O(r)
    x = 1
    y = 1
    for i in range(r):
        x*=(n-i)
        y*=(i+1)
        x%=p
        y%=p
    return x*modinv(y,p) %p
def modinv(a,p):
    b,u,v = p,1,0
    while b:
        t = a//b
        a -= t*b
        a,b = b,a
        u -=t*v
        u,v = v,u
    u %=p
    return u
n,m,k = ma()
ans=0
for i in range(1,n):
    ans+=i*(n-i)*m**2
    ans%=mod
for i in range(1,m):
    ans+=i*(m-i)*n**2
    ans%=mod
print((ans*ncr_1(n*m-2,k-2,mod))%mod)
