let m_1e9 = int_of_float 1e9 + 7
let ( +^ ) x y = (x + y) mod m_1e9
let ( -^ ) x y = x - y + if x < y then m_1e9 else 0
let ( *^ ) x y = ((x mod m_1e9) * (y mod m_1e9)) mod m_1e9

let (n, a, b) = Scanf.sscanf (read_line ()) "%d %d %d" @@ fun n a b -> (n, a, b)

let nPr n r = Array.(init r ((-) n) |> fold_left ( *^ ) 1)

let rec mod_pow x n =
  if n = 0 then 1
  else let t = mod_pow x (n / 2) in t *^ t *^ if n mod 2 = 0 then 1 else x

let nCr n r = nPr n r *^ mod_pow (nPr r r) (m_1e9 - 2)

let () = Printf.printf "%d\n" @@ mod_pow 2 n -^ nCr n a -^ nCr n b -^ 1