M = 10**9 + 7

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

r = pow(2, n, M) - 1

f = c = 1

for i in range(b):

  f = f * (i + 1) % M

  c = c * (n - i) % M

  if i + 1 in (a, b):

    r -= c * pow(f, M - 2, M)

print((r % M))

M = 10**9 + 7

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

r = pow(2, n, M) - 1

f = c = 1

for i in range(b):

  f = f * (i + 1) % M

  c = c * (n - i) % M

  if i + 1 == a:

    a = b

    r -= c * pow(f, M - 2, M)

print((r % M))
M = 10**9 + 7
n, a, b = list(map(int, input().split()))
r = pow(2, n, M) - 1
f = c = 1
for i in range(b):
    f = f * (i + 1) % M
    c = c * (n - i) % M
    if i + 1 in (a, b):
        r -= c * pow(f, M - 2, M)
print((r % M))

M = 10**9 + 7
n, a, b = list(map(int, input().split()))
r = pow(2, n, M) - 1
f = c = 1
for i in range(b):
    f = f * (i + 1) % M
    c = c * (n - i) % M
    if i + 1 == a:
        a = b
        r -= c * pow(f, M - 2, M)
print((r % M))

-    if i + 1 in (a, b): +    if i + 1 == a: +        a = b