let limit = 202020
let modulo = 998244353

let (+@) a b = (a + b) mod modulo
let ( *@) a b = (a * b) mod modulo
let rec modpow a n =
  if n = 0 then 1
  else if n mod 2 = 1 then a *@ modpow a (n-1)
  else let h = modpow a (n/2) in h *@ h
let modinv a = modpow a (modulo - 2)

let fact =
  let arr = Array.init limit Fun.id in
  arr.(0) <- 1;
  for i = 1 to limit-1 do arr.(i) <- i *@ arr.(i-1); done;
  arr

let inv_fact = Array.map modinv fact

let comb n k = fact.(n) *@ inv_fact.(k) *@ inv_fact.(n-k)

let () =
  Scanf.scanf "%d %d %d" @@ fun n m k ->
  Array.init (k+1) (fun i -> m *@ modpow (m-1) (n-1-i) *@ comb (n-1) (n-1-i))
  |> Array.fold_left (+@) 0
  |> Printf.printf "%d\n"