#include <bits/stdc++.h>
using namespace std;
const long long N = 5010;
const long long MOD = 998244353;
long long dp[N][N];
long long solve(long long a, long long b) {
  if (a <= 0 || b <= 0) return 1;
  if (dp[a][b] != -1) return dp[a][b];
  dp[a][b] = (a * solve(a - 1, b - 1)) % MOD;
  dp[a][b] %= MOD;
  dp[a][b] += (solve(a, b - 1)) % MOD;
  dp[a][b] %= MOD;
  return dp[a][b];
}
int32_t main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  ;
  for (long long i = 0; i < N; i++)
    for (long long j = 0; j < N; j++) dp[i][j] = -1;
  long long a[3];
  cin >> a[0] >> a[1] >> a[2];
  sort(a, a + 3);
  long long an = solve(a[0], a[1]) * solve(a[1], a[2]);
  an = an % MOD;
  an *= solve(a[0], a[2]);
  an %= MOD;
  cout << an;
  return 0;
}
