#D4488. Bouquet
Bouquet
Bouquet
Akari has n kinds of flowers, one of each kind.
She is going to choose one or more of these flowers to make a bouquet.
However, she hates two numbers a and b, so the number of flowers in the bouquet cannot be a or b.
How many different bouquets are there that Akari can make?
Find the count modulo (10^9 + 7).
Here, two bouquets are considered different when there is a flower that is used in one of the bouquets but not in the other bouquet.
Constraints
- All values in input are integers.
- 2 \leq n \leq 10^9
- 1 \leq a < b \leq \textrm{min}(n, 2 \times 10^5)
Input
Input is given from Standard Input in the following format:
n a b
Output
Print the number of bouquets that Akari can make, modulo (10^9 + 7). (If there are no such bouquets, print 0
.)
Examples
Input
4 1 3
Output
7
Input
1000000000 141421 173205
Output
34076506
inputFormat
input are integers.
- 2 \leq n \leq 10^9
- 1 \leq a < b \leq \textrm{min}(n, 2 \times 10^5)
Input
Input is given from Standard Input in the following format:
n a b
outputFormat
Output
Print the number of bouquets that Akari can make, modulo (10^9 + 7). (If there are no such bouquets, print 0
.)
Examples
Input
4 1 3
Output
7
Input
1000000000 141421 173205
Output
34076506
样例
4 1 3
7