n,a,b=list(map(int, input().split()))

 

def comb(n, r,MOD):

    p, q = 1, 1

    for i in range(r):

        p = p * (n-i) % MOD

        q = q * (i+1) % MOD

    return p * pow(q, MOD-2, MOD) % MOD



mod=10**9+7

    

A=comb(n,a,mod)

B=comb(n,b,mod)  

C=pow(2,n,mod)



if n==2:

    print((0))

else:

    print(((C-1-A-B)%mod))
n,a,b=list(map(int, input().split()))

 

def comb(n, r,MOD):

    p, q = 1, 1

    for i in range(r):

        p = p * (n-i) % MOD

        q = q * (i+1) % MOD

    return p * pow(q, MOD-2, MOD) % MOD



mod=10**9+7



if n==2:

    print((0))

else:

    print(((pow(2,n,mod)-1-comb(n,a,mod)-comb(n,b,mod))%mod))
n, a, b = list(map(int, input().split()))


def comb(n, r, MOD):
    p, q = 1, 1
    for i in range(r):
        p = p * (n - i) % MOD
        q = q * (i + 1) % MOD
    return p * pow(q, MOD - 2, MOD) % MOD


mod = 10**9 + 7
A = comb(n, a, mod)
B = comb(n, b, mod)
C = pow(2, n, mod)
if n == 2:
    print((0))
else:
    print(((C - 1 - A - B) % mod))

n, a, b = list(map(int, input().split()))


def comb(n, r, MOD):
    p, q = 1, 1
    for i in range(r):
        p = p * (n - i) % MOD
        q = q * (i + 1) % MOD
    return p * pow(q, MOD - 2, MOD) % MOD


mod = 10**9 + 7
if n == 2:
    print((0))
else:
    print(((pow(2, n, mod) - 1 - comb(n, a, mod) - comb(n, b, mod)) % mod))

-A = comb(n, a, mod) -B = comb(n, b, mod) -C = pow(2, n, mod) -    print(((C - 1 - A - B) % mod)) +    print(((pow(2, n, mod) - 1 - comb(n, a, mod) - comb(n, b, mod)) % mod))