# Vicfred
# https://atcoder.jp/contests/abc156/tasks/abc156_d
# math
def binpow(a, b, m):
    a %= m
    res = 1
    while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
    return res

def binomial(n, k, m):
    x = 1
    y = 1
    for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
    y = binpow(y, m-2, m)
    return (x*y)%m

mod = 10**9+7

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

print((binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 + mod)%mod) def binpow(a, b, m):
    a %= m
    res = 1
    while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
    return res binpow a %= m a m res = 1 res 1 while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
     b > 0 b 0 if b & 1:
            res = res * a % m
         b & 1 b 1 res = res * a % m res res * a % m res * a res a m a = a * a % m a a * a % m a * a a a m b >>= 1 b 1 return res res a a b b m m def binomial(n, k, m):
    x = 1
    y = 1
    for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
    y = binpow(y, m-2, m)
    return (x*y)%m binomial x = 1 x 1 y = 1 y 1 for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
     i range(k) range k x *= n-i x n-i n i x %= m x m y *= i+1 y i+1 i 1 y %= m y m y = binpow(y, m-2, m) y binpow(y, m-2, m) binpow y m-2 m 2 m return (x*y)%m (x*y)%m x*y x y m n n k k m m mod = 10**9+7 mod 10**9+7 10**9 10 9 7 n, a, b = list(map(int, input().split())) n list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split a b print((binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 + mod)%mod) print (binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 + mod)%mod binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 + mod binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) binpow(2, n, mod) - binomial(n,a, mod) binpow(2, n, mod) binpow 2 n mod binomial(n,a, mod) binomial n a mod binomial(n,b, mod) binomial n b mod 1 mod mod mod = 10**9+7 10**9+7 mod a, b = list(map(int, input().split())) list(map(int, input().split())) a n, a, b = list(map(int, input().split())) list(map(int, input().split())) n b = list(map(int, input().split())) list(map(int, input().split())) b def binomial(n, k, m):
    x = 1
    y = 1
    for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
    y = binpow(y, m-2, m)
    return (x*y)%m def binomial(n, k, m):
    x = 1
    y = 1
    for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
    y = binpow(y, m-2, m)
    return (x*y)%m binomial def binpow(a, b, m):
    a %= m
    res = 1
    while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
    return res def binpow(a, b, m):
    a %= m
    res = 1
    while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
    return res binpow
# Vicfred
# https://atcoder.jp/contests/abc156/tasks/abc156_d
# math
def binpow(a, b, m):
    a %= m
    res = 1
    while b > 0:
        if b & 1:
            res = res * a % m
        a = a * a % m
        b >>= 1
    return res

def binomial(n, k, m):
    x = 1
    y = 1
    for i in range(k):
        x *= n-i
        x %= m
        y *= i+1
        y %= m
    y = binpow(y, m-2, m)
    return (x*y)%m

mod = 10**9+7

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

print((binpow(2, n, mod) - binomial(n,a, mod) - binomial(n,b, mod) - 1 + mod)%mod)
