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)