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
'''
# Read input from stdin and provide input before running code

name = raw_input('What is your name?\n')
print 'Hi, %s.' % name
'''
# print 'Hello World!'

def init():
    global mylist
    for i in range(101):
        tmp = []
        for j in range(101):
            if i == 0 or j == 0 or i == 1:
                tmp.append(1)
            else:
                total = 0
                for k in range(j+1):
                    total = (total + mylist[i-1][k]) % 10000007
                tmp.append(total)
        mylist.append(tmp)

def process():
    global n, r
    n -= r
    if n < 0:
        print -1
    else:
        print mylist[r][n]
mylist = []
init()
arr = (raw_input()).split()
n = int(arr[0])
r = int(arr[1])

process()