#include <algorithm>
#include <functional>
#include <iostream>
#include <iomanip>
#include <vector>
#include <map>
#include <set>
#include <unordered_set>
#include <queue>
#include <numeric>
#include <bitset>
#include <cmath>

using namespace std;
using ll = long long;
using ull = unsigned long long;
// const ll mod =  998244353 ;
const ll mod =  1000000007 ;
const ll inf = 1e18;
const int dx[] = {1, -1, 0, 0};
const int dy[] = {0, 0, 1, -1};

#define REP(i, n) for (ll i = 0; i < (n); ++i)
#define REP_FROM(i, j, n) for (ll i = (j); i < (n); ++i)
#define REP_REV(i, n) for (ll i = n-1; i >= 0; --i)
#define all(x) (x).begin(),(x).end()
#define sz(x) int(x.size())

template<typename T> void print_vec(vector<T> a) {int n = a.size();REP(i, n) {cout >> a[i]; if(i!=n-1) cout << " "; else cout << endl;}}
ll power(ll base, ll exponent){ if(exponent % 2){ return power(base, exponent - 1) * base % mod; }else if(exponent){ ll root_ans = power(base, exponent / 2); return root_ans * root_ans % mod; }else{ return 1; }}
ll inverse(ll x){ return power(x, mod - 2);}
ll gcd(ll a, ll b) {if(a < b) gcd(b, a);ll r;while(r=a%b) {a=b;b=r;}return b;}
template<typename T> ll sum(T begin, T end) {return accumulate(begin, end, 0ll);}
struct combination{ vector<ll> fact, inv; combination(int sz) : fact(sz + 1), inv(sz + 1){ fact[0] = 1; for(int i = 1; i <= sz; i++){ fact[i] = fact[i - 1] * i % mod; } inv[sz] = power(fact[sz], mod - 2); for(int i = sz - 1; i >= 0; i--){ inv[i] = inv[i + 1] * (i + 1) % mod; } } ll C(int p, int q) const{ if(q < 0 || p < q) return 0; return (fact[p] * inv[q] % mod * inv[p - q] % mod); } };

using Pair = pair<ll, ll>;
ll A[]= {
        1,
        682498929,
        491101308,
        76479948,
        723816384,
        67347853,
        27368307,
        625544428,
        199888908,
        888050723,
        927880474,
        281863274,
        661224977,
        623534362,
        970055531,
        261384175,
        195888993,
        66404266,
        547665832,
        109838563,
        933245637,
        724691727,
        368925948,
        268838846,
        136026497,
        112390913,
        135498044,
        217544623,
        419363534,
        500780548,
        668123525,
        128487469,
        30977140,
        522049725,
        309058615,
        386027524,
        189239124,
        148528617,
        940567523,
        917084264,
        429277690,
        996164327,
        358655417,
        568392357,
        780072518,
        462639908,
        275105629,
        909210595,
        99199382,
        703397904,
        733333339,
        97830135,
        608823837,
        256141983,
        141827977,
        696628828,
        637939935,
        811575797,
        848924691,
        131772368,
        724464507,
        272814771,
        326159309,
        456152084,
        903466878,
        92255682,
        769795511,
        373745190,
        606241871,
        825871994,
        957939114,
        435887178,
        852304035,
        663307737,
        375297772,
        217598709,
        624148346,
        671734977,
        624500515,
        748510389,
        203191898,
        423951674,
        629786193,
        672850561,
        814362881,
        823845496,
        116667533,
        256473217,
        627655552,
        245795606,
        586445753,
        172114298,
        193781724,
        778983779,
        83868974,
        315103615,
        965785236,
        492741665,
        377329025,
        847549272,
        698611116,
};

ll fact_(ll x) {
  ll p = A[x/10000000];
  for(ll i=x/10000000*10000000+1;i<=x;i++) {
    p=p*i%mod;
  }
  return p;
}
signed main() {
  ios::sync_with_stdio(false);
  cout << fixed << setprecision(15);
  ll n, a, b;
  cin >> n >> a >> b;
  ll ans = power(2, n);

  ll p = fact_(n);
  ans = (ans - p * inverse(fact_(a)) % mod * inverse(fact_(n - a)) % mod + mod) % mod;
  ans = (ans - p * inverse(fact_(b)) % mod * inverse(fact_(n - b)) % mod + mod) % mod;
  cout << ans - 1 << endl;
  return 0;
}

Measured memory_bytes: 256