func_code_string: #include <bits/stdc++.h>   using namespace std;   int p[5007][5007];   int pre[5007];   int a, b, c, ans, res, del;   int solve(int x, int y) {     res = 0;     for (int i = 0; i <= x && i <= y; i++) {       del = pre[i];       del = (1LL * del * p[x][i]) % 998244353;       del = (1LL * del * p[y][i]) % 998244353;       res = (res + del) % 998244353;     }     return res;   }   int main() {     cin >> a >> b >> c;     memset(p, 0, sizeof(p));     p[0][0] = 1;     for (int i = 1; i <= 5000; i++) {       p[i][0] = 1;       for (int j = 1; j <= i; j++)         p[i][j] = (p[i - 1][j - 1] + p[i - 1][j]) % 998244353;     }     memset(pre, 0, sizeof(pre));     pre[0] = 1;     for (int i = 1; i <= 5000; i++) pre[i] = (1LL * pre[i - 1] * i) % 998244353;     ans = 1;     ans = (1LL * ans * solve(a, b)) % 998244353;     ans = (1LL * ans * solve(b, c)) % 998244353;     ans = (1LL * ans * solve(a, c)) % 998244353;     cout << ans;   }   