N, A, B = list(map(int, input().split()))

MAX = max(A, B) + 1

MOD = 1000000007

nCk = [0] * MAX

nCk[0] = 0

nCk[1] = N





def mod_pow(a, n, m):

    res = 1

    while n != 0:

        if n & 1:

            res = (res * a) % m

        n = n >> 1

        a = (a * a) % m

    return res





def mod_inv(a, m):

    b = m

    u = 1

    v = 0

    while b:

        t = a // b

        a -= t * b

        a, b = b, a

        u -= t * v

        u, v = v, u

    u %= m

    if u < 0:

        u += m

    return u





for i in range(2, MAX):

    nCk[i] = (nCk[i-1] * ((N-i+1) * mod_inv(i, MOD))) % MOD



count = (mod_pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD

print((int(count)))

N, A, B = list(map(int, input().split()))

MAX = max(A, B) + 1

MOD = 1000000007

nCk = [0] * MAX

nCk[0] = 0

nCk[1] = N

inv = [0] * MAX

inv[1] = 1





for i in range(2, MAX):

    inv[i] = MOD - inv[MOD % i] * (MOD // i) % MOD

    nCk[i] = (nCk[i - 1] * (N - i + 1) * inv[i]) % MOD



count = (pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD

print((int(count)))

N, A, B = list(map(int, input().split()))
MAX = max(A, B) + 1
MOD = 1000000007
nCk = [0] * MAX
nCk[0] = 0
nCk[1] = N


def mod_pow(a, n, m):
    res = 1
    while n != 0:
        if n & 1:
            res = (res * a) % m
        n = n >> 1
        a = (a * a) % m
    return res


def mod_inv(a, m):
    b = m
    u = 1
    v = 0
    while b:
        t = a // b
        a -= t * b
        a, b = b, a
        u -= t * v
        u, v = v, u
    u %= m
    if u < 0:
        u += m
    return u


for i in range(2, MAX):
    nCk[i] = (nCk[i - 1] * ((N - i + 1) * mod_inv(i, MOD))) % MOD
count = (mod_pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD
print((int(count)))

N, A, B = list(map(int, input().split()))
MAX = max(A, B) + 1
MOD = 1000000007
nCk = [0] * MAX
nCk[0] = 0
nCk[1] = N
inv = [0] * MAX
inv[1] = 1
for i in range(2, MAX):
    inv[i] = MOD - inv[MOD % i] * (MOD // i) % MOD
    nCk[i] = (nCk[i - 1] * (N - i + 1) * inv[i]) % MOD
count = (pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD
print((int(count)))

- - -def mod_pow(a, n, m): -    res = 1 -    while n != 0: -        if n & 1: -            res = (res * a) % m -        n = n >> 1 -        a = (a * a) % m -    return res - - -def mod_inv(a, m): -    b = m -    u = 1 -    v = 0 -    while b: -        t = a // b -        a -= t * b -        a, b = b, a -        u -= t * v -        u, v = v, u -    u %= m -    if u < 0: -        u += m -    return u - - +inv = [0] * MAX +inv[1] = 1 -    nCk[i] = (nCk[i - 1] * ((N - i + 1) * mod_inv(i, MOD))) % MOD -count = (mod_pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD +    inv[i] = MOD - inv[MOD % i] * (MOD // i) % MOD +    nCk[i] = (nCk[i - 1] * (N - i + 1) * inv[i]) % MOD +count = (pow(2, N, MOD) - 1 - nCk[A] - nCk[B]) % MOD