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

m = 10**9+7

b = 1

r = n-k+1

print((b*r%m))

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

  b *= k-i+1

  b //= i-1

  r *= n-k-i+2

  r //= i

  print((b*r%m))
#17:34

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

mod = 10 ** 9 + 7

def inv(x):

  y = 1

  while x != 1:

    y *= mod // x + 1

    y %= mod

    x = x - mod % x

  return y

p = 1

q = n-k+1

ans = n-k+1

for i in range(k):

  print(ans)

  ans *= k-1-i

  ans %= mod

  ans *= inv(i+1)

  ans %= mod

  ans *= n-k-i

  ans %= mod

  ans *= inv(i+2)

  ans %= mod
n, k = list(map(int, input().split()))
m = 10**9 + 7
b = 1
r = n - k + 1
print((b * r % m))
for i in range(2, k + 1):
    b *= k - i + 1
    b //= i - 1
    r *= n - k - i + 2
    r //= i
    print((b * r % m))

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


def inv(x):
    y = 1
    while x != 1:
        y *= mod // x + 1
        y %= mod
        x = x - mod % x
    return y


p = 1
q = n - k + 1
ans = n - k + 1
for i in range(k):
    print(ans)
    ans *= k - 1 - i
    ans %= mod
    ans *= inv(i + 1)
    ans %= mod
    ans *= n - k - i
    ans %= mod
    ans *= inv(i + 2)
    ans %= mod

+# 17:34 -m = 10**9 + 7 -b = 1 -r = n - k + 1 -print((b * r % m)) -for i in range(2, k + 1): -    b *= k - i + 1 -    b //= i - 1 -    r *= n - k - i + 2 -    r //= i -    print((b * r % m)) +mod = 10**9 + 7 + + +def inv(x): +    y = 1 +    while x != 1: +        y *= mod // x + 1 +        y %= mod +        x = x - mod % x +    return y + + +p = 1 +q = n - k + 1 +ans = n - k + 1 +for i in range(k): +    print(ans) +    ans *= k - 1 - i +    ans %= mod +    ans *= inv(i + 1) +    ans %= mod +    ans *= n - k - i +    ans %= mod +    ans *= inv(i + 2) +    ans %= mod