#include <bits/stdc++.h>
using namespace std;
long long c, n, m, k, p, rez, a, b;
long long reifeissen(long long nr, long long p) {
  long long sol = 1LL;
  while (p) {
    if (p % 2 == 1) sol = (sol * nr) % 998244353;
    p /= 2;
    nr = (nr * nr) % 998244353;
  }
  return sol;
}
long long modavion(long long n, long long k) {
  a = b = c = 1LL;
  for (int i = 1; i <= n; ++i) {
    a = (a * i) % 998244353;
    if (i <= k) b = (b * i) % 998244353;
    if (i <= n - k) c = (c * i) % 998244353;
  }
  b = (b * c) % 998244353;
  b = reifeissen(b, 998244353 - 2LL);
  a = (a * b) % 998244353;
  return a;
}
int main() {
  cin >> n >> m >> k;
  c = modavion(n - 1, k);
  rez = (m * c) % 998244353;
  p = 1LL;
  for (int i = 1; i <= k; ++i) {
    p = (p * (m - 1)) % 998244353;
  }
  rez = (rez * p) % 998244353;
  cout << rez;
  return 0;
}
