#include <bits/stdc++.h>
using namespace std;
const long long mod = 998244353;
const long long maxn = 5100;
long long n, m, k;
long long S[maxn][maxn];
long long qpow(long long a, long long b) {
  long long res = 1;
  for (; b > 0; b /= 2, a = a * a % mod)
    if (b % 2) res = res * a % mod;
  return res;
}
signed main() {
  scanf("%lld%lld%lld", &n, &m, &k);
  S[0][0] = 1;
  for (long long i = 1; i <= k; i++) {
    for (long long j = 1; j <= k; j++) {
      if (i < j) continue;
      S[i][j] = S[i - 1][j] * j + S[i - 1][j - 1];
      S[i][j] %= mod;
    }
  }
  long long sum = 1, p = 1, q = qpow(m, mod - 2), tot = n;
  long long ans = 0;
  for (long long i = 0; i <= k; i++) {
    ans += sum * p % mod * S[k][i] % mod;
    ans %= mod;
    p = p * q % mod;
    sum = sum * tot % mod;
    tot--;
  }
  printf("%lld\n", ans);
  return 0;
}
