#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10, T = 1 << 18 | 1, P = 998244353;
int w[2][25], fac[N], ifac[N], n, m, a, b;
int c(int n, int m) {
  return n < m ? 0 : 1ll * fac[n] * ifac[m] % P * ifac[n - m] % P;
}
int power(int a, int b) {
  int t = 1;
  for (; b > 0; b >>= 1, a = 1ll * a * a % P) b& 1 ? t = 1ll * t * a % P : 0;
  return t;
}
int getmx(int n) {
  int mx = 1;
  for (; mx < n; mx <<= 1)
    ;
  return mx;
}
void ntt(int* a, int n, int mx, bool f = 0) {
  if (!f) fill(a + n, a + mx, 0);
  static int rev[T];
  for (int i = 0; i <= (mx - 1); ++i)
    rev[i] = rev[i >> 1] >> 1 | (i & 1) * (mx >> 1),
    rev[i] > i ? swap(a[i], a[rev[i]]) : void();
  for (int _ = 1, k = 1; k < mx; k <<= 1, ++_)
    for (int wn = w[f][_], j = 0; j < mx; j += k << 1)
      for (int i = j, w = 1, t; i < j + k; ++i, w = 1ll * w * wn % P)
        t = a[i + k] * 1ll * w % P, a[i + k] = (a[i] - t + P) % P,
        a[i] = (a[i] + t) % P;
  if (f) {
    int imx = power(mx, P - 2);
    for (int i = 0; i <= (mx - 1); ++i) a[i] = 1ll * a[i] * imx % P;
    fill(a + n, a + mx, 0);
  }
}
int* solve(int l, int r) {
  if (l == r) return new int[2]{1, l};
  int mid = (l + r) >> 1, *a = solve(l, mid), *b = solve(mid + 1, r);
  static int at[T], bt[T];
  int n = r - l + 2, na = mid - l + 2, nb = r - mid + 1, mx = getmx(n << 1),
      *c = new int[n];
  copy(a, a + na, at), copy(b, b + nb, bt);
  ntt(at, na, mx), ntt(bt, nb, mx);
  for (int i = 0; i <= (mx - 1); ++i) at[i] = 1ll * at[i] * bt[i] % P;
  ntt(at, n, mx, 1), copy(at, at + n, c);
  return c;
}
int main() {
  scanf("%d%d%d", &n, &a, &b), m = n - a - b + 1;
  if (n == 1) return printf("%d", a == 1 && b == 1), 0;
  if ((a < 2 && b < 2) || m < 0) return puts("0"), 0;
  for (int i = 1; i <= (23); ++i)
    w[0][i] = power(3, P >> i), w[1][i] = power(3, P - 1 - (P >> i));
  fac[0] = 1;
  for (int i = 1; i <= (n); ++i) fac[i] = 1ll * fac[i - 1] * i % P;
  ifac[n] = power(fac[n], P - 2);
  for (int i = n; i >= (1); --i) ifac[i - 1] = 1ll * ifac[i] * i % P;
  printf("%lld", 1ll * solve(0, n - 2)[m] * c(a - 1 + b - 1, a - 1) % P);
  return 0;
}
