n,k,l = map(int,input().split()) mod = 10**9+7 dp = [0]*n dp[0] = 1 for i in range(k): ndp = [0]*n for j in range(n): x = j+1 y = j+l+1 if x < n: ndp[x] += dp[j] ndp[x] %= mod if y < n: ndp[y] -= dp[j] ndp[y] %= mod else: y %= n ndp[0] += dp[j] ndp[0] %= mod ndp[y] -= dp[j] ndp[y] %= mod for j in range(1,n): ndp[j] += ndp[j-1] ndp[j] %= mod dp = ndp for i in range(n): print(dp[i]%mod)