def main
  ball_num, blue_ball_num = gets.chomp.split(' ').map(&:to_i)
  
  1.upto(blue_ball_num) do |i|
    # NOTE: iごとに青ボールの組み合わせがいくつあるか計算
    blue_ball_combi = set_blue_ball_combination(blue_ball_num, i)
    # NOTE: 青ボールを赤の間に入れる組み合わせがいくつあるか計算
    insert_group_blue_ball_combi = insert_group_blue_ball_combination(ball_num, blue_ball_num, i)
    
    puts (blue_ball_combi * insert_group_blue_ball_combi) % (10**9 + 7)
  end
end

def set_blue_ball_combination(blue_ball_num, i)
  insert_space = blue_ball_num - 1
  partition_num = i - 1
  combi(insert_space, partition_num)
end

def insert_group_blue_ball_combination(ball_num, blue_ball_num, i)
  insert_group_blue_ball_space = ball_num - blue_ball_num + 1
  return 1 if insert_group_blue_ball_space < i
  combi(insert_group_blue_ball_space, i)
end

def combi(n,k)
  k=n-k if 2*k > n
  return 1 if k == 0
  ((n-k+1)..n).reduce(&:*) / ((1..k).reduce(&:*))
end

main