Find the number of ways of distributing N objects into R groups such that each group gets 1 or more objects.

Input:
The one and only line of input contains two numbers separated by a single space, which are N and R respectively.

Output:
The corresponding answer modulo 10000007 in a  single line and if no answer exist then print "-1".

Constraints:
1 ≤ N ≤ 100
1 ≤ R ≤ 100  

SAMPLE INPUT
4 2

SAMPLE OUTPUT
3

Explanation

Let the 2 groups be A and B respectively.
Case 1: A gets 1 object and B gets 3
Case 2: A gets 2 objects and B gets 2
Case 3: A gets 3 objects and B gets 1
def fun(n,k,ctr,sav):
    
    if n==0:
        return 0
    if ctr==k:
        return 1
    sm=0
    i=1
    while i<=n:
        if sav[n-i][ctr+1]==-1:
            sm=sm+fun(n-i,k,ctr+1,sav)
        else:
            sm=sm+sav[n-i][ctr+1]
        i=i+1
    sav[n][ctr]=sm
    return sav[n][ctr]
sm=0
x=raw_input().split(' ')
n=int(x[0])
k=int(x[1])
sav = [[-1 for x in range(104)] for x in range(104)]
sm=fun(n,k,1,sav)
if sm==0:
    print "-1"
else:
    print sm%10000007