n,k = list(map(int, input().split()))

mod = 10**9+7

from scipy.misc import comb



for i in range(1,k+1):

    print(((comb(n-k+1,i,exact=True)*comb(k-1,i-1,exact=True))%mod))
from math import factorial

n,k = list(map(int, input().split()))

mod = 10**9+7

def comb(n,r):

    return factorial(n) // (factorial(r) * factorial(n - r))

for i in range(1,k+1):

    if n -k + 1 >= i :

        a = comb(n-k+1,i)

        b = comb(k-1,i-1)

        print(((a*b)%mod))

    else:

        print((0))
n, k = list(map(int, input().split()))
mod = 10**9 + 7
from scipy.misc import comb

for i in range(1, k + 1):
    print(((comb(n - k + 1, i, exact=True) * comb(k - 1, i - 1, exact=True)) % mod))

from math import factorial

n, k = list(map(int, input().split()))
mod = 10**9 + 7


def comb(n, r):
    return factorial(n) // (factorial(r) * factorial(n - r))


for i in range(1, k + 1):
    if n - k + 1 >= i:
        a = comb(n - k + 1, i)
        b = comb(k - 1, i - 1)
        print(((a * b) % mod))
    else:
        print((0))

+from math import factorial + -from scipy.misc import comb + + +def comb(n, r): +    return factorial(n) // (factorial(r) * factorial(n - r)) + -    print(((comb(n - k + 1, i, exact=True) * comb(k - 1, i - 1, exact=True)) % mod)) +    if n - k + 1 >= i: +        a = comb(n - k + 1, i) +        b = comb(k - 1, i - 1) +        print(((a * b) % mod)) +    else: +        print((0))