The grass has dried up in Farmer John's pasture due to a drought. After hours of despair and contemplation, FJ comes up with the brilliant idea of purchasing corn to feed his precious cows.
FJ’s N (1≤N≤100) cows are arranged in a line such that the ith cow in line has a non-negative integer hunger level of h_i. As FJ’s cows are social animals and insist on eating together, the only way FJ can decrease the hunger levels of his cows is to select two adjacent cows i and i+1 and feed each of them a bag of corn, causing each of their hunger levels to decrease by one.
FJ wants to feed his cows until all of them have the same non-negative hunger level. Although he doesn't know his cows' exact hunger levels, he does know an upper bound on the hunger level of each cow; specifically, the hunger level h_i of the i-th cow is at most H_i (0≤H_i≤1000).
Your job is to count the number of N-tuples of hunger levels \[h_1,h_2,…,h_N] that are consistent with these upper bounds such that it is possible for FJ to achieve his goal, modulo 109+7.
The first line contains N.
The second line contains H_1,H_2,…,H_N.
The number of N-tuples of hunger levels modulo 109+7.