let m = 1000000007
let n, a, b, dp = Scanf.scanf "%d %d %d" @@ fun n a b -> n, a, b, Array.make (max a b + 1) 0
let ( * ) a b = a * b mod m
let (-) a b = a - b + if a < b then m else 0
let rec f b n = if n <= 0 then 1 else let p = f b (n / 2) in p * p * if n mod 2 = 0 then 1 else b
let _ = dp.(0) <- 1; for i = 1 to max a b do dp.(i) <- dp.(i - 1) * (n - i + 1) * f i (m - 2) done; f 2 n - 1 - dp.(a) - dp.(b) |> Printf.printf "%d\n"