#include <bits/stdc++.h>
using namespace std;
const int MOD = 9 + (int)1e9;
int n, W, B, binom[5000][5000], ans;
int main() {
  cin >> n >> W >> B;
  int tmp = max(W, B);
  for (int i = 0; i <= tmp; i++)
    for (int j = 0; j <= i; j++)
      binom[i][j] =
          (i && j) ? (binom[i - 1][j - 1] + binom[i - 1][j]) % MOD : 1;
  for (int Y = 1; Y <= n - 2; Y++) {
    int X = n - Y;
    tmp = (long long)binom[W - 1][X - 1] * binom[B - 1][Y - 1] % MOD;
    tmp = (long long)tmp * (n - Y - 1) % MOD;
    (ans += tmp) %= MOD;
  }
  for (int i = 2; i <= W; i++) ans = (long long)ans * i % MOD;
  for (int i = 2; i <= B; i++) ans = (long long)ans * i % MOD;
  printf("%d\n", ans);
}
