#include <bits/stdc++.h>
using namespace std;
long long ans, dp[4001][4001], n, w, b, hehe;
int main() {
  cin >> n >> w >> b;
  for (int i = 0; i <= max(w, b); i++) dp[0][i] = 1;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= max(w, b); j++)
      dp[i][j] = (dp[i][j - 1] + dp[i - 1][j - 1]) % 1000000009;
  for (int i = 1; i <= n - 2; i++)
    ans = (ans + (dp[i][b] - dp[i][b - 1] + 1000000009) % 1000000009 *
                     (dp[n - i][w] - dp[n - i][w - 1] + 1000000009) %
                     1000000009 * (n - i - 1) % 1000000009) %
          1000000009;
  for (int i = 1; i <= w; i++) ans = ans * i % 1000000009;
  for (int i = 1; i <= b; i++) ans = ans * i % 1000000009;
  cout << ans << endl;
  return 0;
}
