#!python3

def LI():
    return list(map(int, input().split()))

# input
N, M, K = LI()

MOD = 10 ** 9 + 7
MAX = 10 ** 5 * 2
fac, finv, inv = [None] * MAX, [None] * MAX, [None] * MAX


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


def comb(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD


def s(x):
    return x * (x + 1) // 2


def cal(a, b):
    ret = a * s(b - 1) + b * s(a - 1)
    return ret % MOD


def main():
    comb_init()
    ans = 0
    for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

    ans = ans * comb(N * M - 2, K - 2) % MOD
    print(ans)


if __name__ == "__main__":
    main() def LI():
    return list(map(int, input().split()))

# input LI return list(map(int, input().split())) list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split N, M, K = LI() N LI() LI M K MOD = 10 ** 9 + 7 MOD 10 ** 9 + 7 10 ** 9 10 9 7 MAX = 10 ** 5 * 2 MAX 10 ** 5 * 2 10 ** 5 10 5 2 fac, finv, inv = [None] * MAX, [None] * MAX, [None] * MAX fac [None] * MAX [None] None MAX finv [None] * MAX [None] None MAX inv [None] * MAX [None] None MAX def comb_init():
    fac[0] = fac[1] = 1
    finv[0] = finv[1] = 1
    inv[1] = 1
    for i in range(2, MAX):
        fac[i] = fac[i - 1] * i % MOD
        inv[i] = -inv[MOD%i] * int(MOD / i) % MOD
        finv[i] = finv[i - 1] * inv[i] % MOD comb_init fac[0] = fac[1] = 1 fac[0] fac 0 1 = fac[1] = 1 fac[1] fac 1 1 finv[0] = finv[1] = 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] = -inv[MOD%i] * int(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] = -inv[MOD%i] * int(MOD / i) % MOD inv[i] inv i -inv[MOD%i] * int(MOD / i) % MOD -inv[MOD%i] * int(MOD / i) -inv[MOD%i] inv[MOD%i] inv MOD%i MOD i int(MOD / i) int 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 comb(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD comb if n < k or n < 0 or k < 0:
        return 0
     n < k or n < 0 or k < 0 n < k or n < 0 n < k n k n < 0 n 0 k < 0 k 0 return 0 0 return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD fac[n] * (finv[k] * finv[n - k] % MOD) % MOD fac[n] * (finv[k] * finv[n - k] % MOD) fac[n] fac n finv[k] * finv[n - k] % MOD finv[k] * finv[n - k] finv[k] finv k finv[n - k] finv n - k n k MOD MOD n n k k def s(x):
    return x * (x + 1) // 2 s return x * (x + 1) // 2 x * (x + 1) // 2 x * (x + 1) x x + 1 x 1 2 x x def cal(a, b):
    ret = a * s(b - 1) + b * s(a - 1)
    return ret % MOD cal ret = a * s(b - 1) + b * s(a - 1) ret a * s(b - 1) + b * s(a - 1) a * s(b - 1) a s(b - 1) s b - 1 b 1 b * s(a - 1) b s(a - 1) s a - 1 a 1 return ret % MOD ret % MOD ret MOD a a b b def main():
    comb_init()
    ans = 0
    for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

    ans = ans * comb(N * M - 2, K - 2) % MOD
    print(ans) main comb_init() comb_init ans = 0 ans 0 for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

     i range(N) range N for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

     j range(M) range M v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1)) v cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1)) cal(N - i, M - j) + cal(N - i, j + 1) cal(N - i, M - j) cal N - i N i M - j M j cal(N - i, j + 1) cal N - i N i j + 1 j 1 s(j) + s(N - i - 1) s(j) s j s(N - i - 1) s N - i - 1 N - i N i 1 ans = (ans + v) % MOD ans (ans + v) % MOD ans + v ans v MOD ans = ans * comb(N * M - 2, K - 2) % MOD ans ans * comb(N * M - 2, K - 2) % MOD ans * comb(N * M - 2, K - 2) ans comb(N * M - 2, K - 2) comb N * M - 2 N * M N M 2 K - 2 K 2 MOD print(ans) print ans if __name__ == "__main__":
    main() __name__ == "__main__" __name__ "__main__" main() main inv = [None] * MAX, [None] * MAX, [None] * MAX [None] * MAX inv M, K = LI() LI() M def s(x):
    return x * (x + 1) // 2 def s(x):
    return x * (x + 1) // 2 s N, M, K = LI() LI() N def comb_init():
    fac[0] = fac[1] = 1
    finv[0] = finv[1] = 1
    inv[1] = 1
    for i in range(2, MAX):
        fac[i] = fac[i - 1] * i % MOD
        inv[i] = -inv[MOD%i] * int(MOD / i) % MOD
        finv[i] = finv[i - 1] * inv[i] % MOD def comb_init():
    fac[0] = fac[1] = 1
    finv[0] = finv[1] = 1
    inv[1] = 1
    for i in range(2, MAX):
        fac[i] = fac[i - 1] * i % MOD
        inv[i] = -inv[MOD%i] * int(MOD / i) % MOD
        finv[i] = finv[i - 1] * inv[i] % MOD comb_init K = LI() LI() K MOD = 10 ** 9 + 7 10 ** 9 + 7 MOD def comb(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD def comb(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD comb def main():
    comb_init()
    ans = 0
    for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

    ans = ans * comb(N * M - 2, K - 2) % MOD
    print(ans) def main():
    comb_init()
    ans = 0
    for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

    ans = ans * comb(N * M - 2, K - 2) % MOD
    print(ans) main def cal(a, b):
    ret = a * s(b - 1) + b * s(a - 1)
    return ret % MOD def cal(a, b):
    ret = a * s(b - 1) + b * s(a - 1)
    return ret % MOD cal fac, finv, inv = [None] * MAX, [None] * MAX, [None] * MAX [None] * MAX fac finv, inv = [None] * MAX, [None] * MAX, [None] * MAX [None] * MAX finv MAX = 10 ** 5 * 2 10 ** 5 * 2 MAX def LI():
    return list(map(int, input().split()))

# input def LI():
    return list(map(int, input().split()))

# input LI
#!python3

def LI():
    return list(map(int, input().split()))

# input
N, M, K = LI()

MOD = 10 ** 9 + 7
MAX = 10 ** 5 * 2
fac, finv, inv = [None] * MAX, [None] * MAX, [None] * MAX


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


def comb(n, k):
    if n < k or n < 0 or k < 0:
        return 0
    return fac[n] * (finv[k] * finv[n - k] % MOD) % MOD


def s(x):
    return x * (x + 1) // 2


def cal(a, b):
    ret = a * s(b - 1) + b * s(a - 1)
    return ret % MOD


def main():
    comb_init()
    ans = 0
    for i in range(N):
        for j in range(M):
            v = cal(N - i, M - j) + cal(N - i, j + 1) - (s(j) + s(N - i - 1))
            ans = (ans + v) % MOD

    ans = ans * comb(N * M - 2, K - 2) % MOD
    print(ans)


if __name__ == "__main__":
    main()
