#include<bits/stdc++.h>
using namespace std;
typedef int64_t LL;
const int MOD=1e9+7;
int P(LL a,LL n)
{
  if(n==0)return 1;
  else if(n==1)return a%MOD;
  else if(n%2==0)return P((LL)a*a%MOD,n/2)%MOD;
  else return (a*P(a,n-1))%MOD;
}
int C(LL n,LL k)
{
  LL x=1,y=1;
  k=min(k,n-k);
  if(n<0||k<0||n<k)return 0;
  if(n==0||k==0)return 1;
  for(int i=0;i<k;i++)
  {
    x*=n-i,x%=MOD;
    y*=i+1,y%=MOD;
  }
  return (x*P(y,MOD-2))%MOD;
}
int main()
{
  int N,A,B,z;
  cin>>N>>A>>B;
  z=P(2,N)-1;
  z-=C(N,A);if(z<0)z+=MOD;
  z-=C(N,B);if(z<0)z+=MOD;
  return cout<<z<<endl,0;
}