def modpow(a, n, p):
    if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

    return ans

p = 10 ** 9 + 7
n, a, b = [int(x) for x in input().split()]

tot = modpow(2, n, p)

Xa, Ya = 1, 1
for i in range(a):
    Xa = (Xa * (n - i)) % p
    Ya = (Ya * (i + 1)) % p
Za = modpow(Ya, p - 2, p)
nCa = (Xa * Za) % p

Xb, Yb = 1, 1
for i in range(b):
    Xb = (Xb * (n - i)) % p
    Yb = (Yb * (i + 1)) % p
Zb = modpow(Yb, p - 2, p)
nCb = (Xb * Zb) % p

ans = (tot - nCa -nCb - 1) % p

print(ans) def modpow(a, n, p):
    if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

    return ans modpow if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

     n == 1 n 1 ans = a % p ans a % p a p if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

     n % 2 == 0 n % 2 n 2 0 ans = (modpow(a, n // 2, p) ** 2) % p ans (modpow(a, n // 2, p) ** 2) % p modpow(a, n // 2, p) ** 2 modpow(a, n // 2, p) modpow a n // 2 n 2 p 2 p ans = (a * (modpow(a, n // 2, p) ** 2)) % p ans (a * (modpow(a, n // 2, p) ** 2)) % p a * (modpow(a, n // 2, p) ** 2) a modpow(a, n // 2, p) ** 2 modpow(a, n // 2, p) modpow a n // 2 n 2 p 2 p return ans ans a a n n p p p = 10 ** 9 + 7 p 10 ** 9 + 7 10 ** 9 10 9 7 int(x) for x in input().split() for x in input().split() x input().split() ().split () input split for x in input().split() int(x) int x n, a, b = [int(x) for x in input().split()] n [int(x) for x in input().split()] a b tot = modpow(2, n, p) tot modpow(2, n, p) modpow 2 n p Xa, Ya = 1, 1 Xa 1 Ya 1 for i in range(a):
    Xa = (Xa * (n - i)) % p
    Ya = (Ya * (i + 1)) % p i range(a) range a Xa = (Xa * (n - i)) % p Xa (Xa * (n - i)) % p Xa * (n - i) Xa n - i n i p Ya = (Ya * (i + 1)) % p Ya (Ya * (i + 1)) % p Ya * (i + 1) Ya i + 1 i 1 p Za = modpow(Ya, p - 2, p) Za modpow(Ya, p - 2, p) modpow Ya p - 2 p 2 p nCa = (Xa * Za) % p nCa (Xa * Za) % p Xa * Za Xa Za p Xb, Yb = 1, 1 Xb 1 Yb 1 for i in range(b):
    Xb = (Xb * (n - i)) % p
    Yb = (Yb * (i + 1)) % p i range(b) range b Xb = (Xb * (n - i)) % p Xb (Xb * (n - i)) % p Xb * (n - i) Xb n - i n i p Yb = (Yb * (i + 1)) % p Yb (Yb * (i + 1)) % p Yb * (i + 1) Yb i + 1 i 1 p Zb = modpow(Yb, p - 2, p) Zb modpow(Yb, p - 2, p) modpow Yb p - 2 p 2 p nCb = (Xb * Zb) % p nCb (Xb * Zb) % p Xb * Zb Xb Zb p ans = (tot - nCa -nCb - 1) % p ans (tot - nCa -nCb - 1) % p tot - nCa -nCb - 1 tot - nCa -nCb tot - nCa tot nCa nCb 1 p print(ans) print ans tot = modpow(2, n, p) modpow(2, n, p) tot a, b = [int(x) for x in input().split()] [int(x) for x in input().split()] a Xa, Ya = 1, 1 1 Xa Ya = 1, 1 1 Ya p = 10 ** 9 + 7 10 ** 9 + 7 p Za = modpow(Ya, p - 2, p) modpow(Ya, p - 2, p) Za nCa = (Xa * Za) % p (Xa * Za) % p nCa Zb = modpow(Yb, p - 2, p) modpow(Yb, p - 2, p) Zb ans = (tot - nCa -nCb - 1) % p (tot - nCa -nCb - 1) % p ans nCb = (Xb * Zb) % p (Xb * Zb) % p nCb def modpow(a, n, p):
    if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

    return ans def modpow(a, n, p):
    if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

    return ans modpow Xa = (Xa * (n - i)) % p (Xa * (n - i)) % p Xa b = [int(x) for x in input().split()] [int(x) for x in input().split()] b n, a, b = [int(x) for x in input().split()] [int(x) for x in input().split()] n Xb, Yb = 1, 1 1 Xb Yb = 1, 1 1 Yb Ya = (Ya * (i + 1)) % p (Ya * (i + 1)) % p Ya Xb = (Xb * (n - i)) % p (Xb * (n - i)) % p Xb Yb = (Yb * (i + 1)) % p (Yb * (i + 1)) % p Yb
def modpow(a, n, p):
    if n == 1:
        ans = a % p
    else:
        if n % 2 == 0:
            ans = (modpow(a, n // 2, p) ** 2) % p
        else: # n % 2 == 1
            ans = (a * (modpow(a, n // 2, p) ** 2)) % p

    return ans

p = 10 ** 9 + 7
n, a, b = [int(x) for x in input().split()]

tot = modpow(2, n, p)

Xa, Ya = 1, 1
for i in range(a):
    Xa = (Xa * (n - i)) % p
    Ya = (Ya * (i + 1)) % p
Za = modpow(Ya, p - 2, p)
nCa = (Xa * Za) % p

Xb, Yb = 1, 1
for i in range(b):
    Xb = (Xb * (n - i)) % p
    Yb = (Yb * (i + 1)) % p
Zb = modpow(Yb, p - 2, p)
nCb = (Xb * Zb) % p

ans = (tot - nCa -nCb - 1) % p

print(ans)