func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxn = 5e3 + 5;   const int mod = 998244353;   inline long long fpm(long long a, long long p) {     long long r = 1;     while (p) {       if (p & 1) r = r * a % mod;       a = a * a % mod;       p /= 2;     }     return r;   }   int k, n, m;   int s[maxn][maxn];   inline void init() {     s[0][0] = 1;     for (int i = 1; i <= k; i++) {       for (int j = 1; j <= i; j++) {         s[i][j] = (s[i - 1][j - 1] + 1ll * j * s[i - 1][j] % mod) % mod;       }     }   }   int main() {     cin >> n >> m >> k;     init();     long long ans = 0, cur = 1;     long long invm = fpm(m, mod - 2);     for (int i = 0; i <= k; i++) {       ans = (ans + 1ll * cur * s[k][i] % mod * fpm(invm, i) % mod) % mod;       cur = 1ll * cur * (n - i) % mod;     }     cout << ans << endl;   }   