N, a, b = map(int, input().split())
modz = 10**9 + 7

def repeatSquaring(N, P, M):
    if P <= 0:
        return 1
    if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

    return N*repeatSquaring(N, P-1, M) % M

def seki(aa, bb):
    res = 1
    for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
    return res

def CC(aa, nn):
    ss = repeatSquaring(seki(1, aa), modz - 2, modz)
    return seki(nn-aa + 1, nn)*ss % modz

total = repeatSquaring(2, N, modz) - 1
total -= CC(a, N)
if total < 0: total += modz

total -= CC(b, N)
if total < 0: total += modz

print(int(total)) N, a, b = map(int, input().split()) N map(int, input().split()) map int input().split() ().split () input split a b modz = 10**9 + 7 modz 10**9 + 7 10**9 10 9 7 def repeatSquaring(N, P, M):
    if P <= 0:
        return 1
    if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

    return N*repeatSquaring(N, P-1, M) % M repeatSquaring if P <= 0:
        return 1
     P <= 0 P 0 return 1 1 if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

     (P &0x01) == 0 P &0x01 P 0x01 0 ans = repeatSquaring(N, (P>>1), M) ans repeatSquaring(N, (P>>1), M) repeatSquaring N P>>1 P 1 M return ans*ans % M ans*ans % M ans*ans ans ans M return N*repeatSquaring(N, P-1, M) % M N*repeatSquaring(N, P-1, M) % M N*repeatSquaring(N, P-1, M) N repeatSquaring(N, P-1, M) repeatSquaring N P-1 P 1 M M N N P P M M def seki(aa, bb):
    res = 1
    for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
    return res seki res = 1 res 1 for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
     k range(aa, bb+1) range aa bb+1 bb 1 res *= k res k if res >= modz:
            res %= modz
     res >= modz res modz res %= modz res modz return res res aa aa bb bb def CC(aa, nn):
    ss = repeatSquaring(seki(1, aa), modz - 2, modz)
    return seki(nn-aa + 1, nn)*ss % modz CC ss = repeatSquaring(seki(1, aa), modz - 2, modz) ss repeatSquaring(seki(1, aa), modz - 2, modz) repeatSquaring seki(1, aa) seki 1 aa modz - 2 modz 2 modz return seki(nn-aa + 1, nn)*ss % modz seki(nn-aa + 1, nn)*ss % modz seki(nn-aa + 1, nn)*ss seki(nn-aa + 1, nn) seki nn-aa + 1 nn-aa nn aa 1 nn ss modz aa aa nn nn total = repeatSquaring(2, N, modz) - 1 total repeatSquaring(2, N, modz) - 1 repeatSquaring(2, N, modz) repeatSquaring 2 N modz 1 total -= CC(a, N) total CC(a, N) CC a N if total < 0: total += modz total < 0 total 0 total -= CC(b, N) total CC(b, N) CC b N if total < 0: total += modz total < 0 total 0 print(int(total)) print int(total) int total total -= CC(b, N) CC(b, N) total N, a, b = map(int, input().split()) map(int, input().split()) N b = map(int, input().split()) map(int, input().split()) b total -= CC(a, N) CC(a, N) total def seki(aa, bb):
    res = 1
    for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
    return res def seki(aa, bb):
    res = 1
    for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
    return res seki def repeatSquaring(N, P, M):
    if P <= 0:
        return 1
    if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

    return N*repeatSquaring(N, P-1, M) % M def repeatSquaring(N, P, M):
    if P <= 0:
        return 1
    if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

    return N*repeatSquaring(N, P-1, M) % M repeatSquaring def CC(aa, nn):
    ss = repeatSquaring(seki(1, aa), modz - 2, modz)
    return seki(nn-aa + 1, nn)*ss % modz def CC(aa, nn):
    ss = repeatSquaring(seki(1, aa), modz - 2, modz)
    return seki(nn-aa + 1, nn)*ss % modz CC modz = 10**9 + 7 10**9 + 7 modz a, b = map(int, input().split()) map(int, input().split()) a total = repeatSquaring(2, N, modz) - 1 repeatSquaring(2, N, modz) - 1 total
N, a, b = map(int, input().split())
modz = 10**9 + 7

def repeatSquaring(N, P, M):
    if P <= 0:
        return 1
    if (P &0x01) == 0:
        ans = repeatSquaring(N, (P>>1), M)
        return ans*ans % M

    return N*repeatSquaring(N, P-1, M) % M

def seki(aa, bb):
    res = 1
    for k in range(aa, bb+1):
        res *= k
        if res >= modz:
            res %= modz
    return res

def CC(aa, nn):
    ss = repeatSquaring(seki(1, aa), modz - 2, modz)
    return seki(nn-aa + 1, nn)*ss % modz

total = repeatSquaring(2, N, modz) - 1
total -= CC(a, N)
if total < 0: total += modz

total -= CC(b, N)
if total < 0: total += modz

print(int(total))