#include <bits/stdc++.h>
using namespace std;
const int size = 4005, mod = 1e9 + 9;
long long dp[size][size];
int main() {
  int n, w, b;
  for (int i = 0; i < size; i++) {
    for (int j = 0; j <= i; j++) {
      if (!j || j == i)
        dp[i][j] = 1;
      else {
        dp[i][j] = (dp[i - 1][j - 1] + dp[i - 1][j]) % mod;
      }
    }
  }
  scanf("%d %d %d", &n, &w, &b);
  long long ans = 0LL;
  for (int i = 1; i < n; i++) {
    for (int j = 1; i + j < n; j++) {
      int k = n - i - j;
      ans = (ans + (dp[w - 1][i + k - 1]) * (dp[b - 1][j - 1])) % mod;
    }
  }
  for (int i = 1; i <= w; i++) ans = ans * i % mod;
  for (int i = 1; i <= b; i++) ans = ans * i % mod;
  cout << ans << endl;
  return 0;
}
