A surveyor walks a lattice from the origin (0, 0) to the point (a, b), taking unit steps either East (increase x by 1) or North (increase y by 1). A levee runs along the diagonal line y = x, and to stay on the safe (dry) side the walker must keep x >= y at every lattice point visited, including after each step. Count the number of safe monotone paths from (0, 0) to (a, b). If no safe path exists, the answer is 0. Report the count modulo 1000000007.
Input format
A single line with two integers a and b.
Output format
A single integer: the number of safe paths, modulo 1000000007.
Constraints
- 0 <= a <= 1000
- 0 <= b <= 1000