#include <bits/stdc++.h>
using namespace std;
const long long mod = 998244353;
const int maxn = 5000 + 10;
long long fac[maxn], inv[maxn], f[maxn];
void init() {
  f[0] = f[1] = inv[0] = inv[1] = fac[0] = fac[1] = 1;
  for (int i = 2; i < maxn; i++) {
    fac[i] = 1ll * (fac[i - 1] * i) % mod;
    f[i] = (mod - mod / i) * f[mod % i] % mod;
    inv[i] = inv[i - 1] * f[i] % mod;
  }
}
long long C(int a, int b) {
  if (b > a) return 0;
  return fac[a] * inv[b] % mod * inv[a - b] % mod;
}
long long get(int a, int b) {
  long long ans = 0;
  for (int i = 0; i <= min(a, b); i++)
    ans = (ans + C(a, i) * C(b, i) % mod * fac[i] % mod) % mod;
  return ans;
}
int main() {
  init();
  int a, b, c;
  cin >> a >> b >> c;
  long long ans = get(a, b) * get(a, c) % mod * get(b, c) % mod;
  printf("%lld\n", ans % mod);
  return 0;
}
