n,k,l=map(int,input().split())
dp=[[[0]*n for _ in range(22)] for z in range(n)]
for i in range(n):
    dp[i][0][i]=1
mod=10**9+7
for i in range(n):
    for j in range(1,l+1):
        dp[i][1][(j+i)%n]=1
for j in range(1,21):
    for i in range(n):
        for l in range(n):
            for m in range(n):
                dp[i][j+1][l]+=dp[i][j][m]*dp[m][j][l]
                dp[i][j+1][l]%=mod
s=bin(k)[2:]
ans=[[0]*n for _ in range(len(s)+1)]
ans[0][0]=1
for i in range(len(s)):
    if s[-1-i]=="1":
        for j in range(n):
            for k in range(n):
                ans[i+1][k%n]+=ans[i][j]*dp[j][i+1][k]
                ans[i+1][k%n]%=mod
    else:
        for j in range(n):
            ans[i+1][j]=ans[i][j]
for i in ans[-1]:
    print(i)