N,D,K=map(int,input().split()) now=N*D+1 dp=[[0]*(N*D+1) for _ in range(N+1)] d=10**9+7 dp[0][0]=1 for i in range(N): for j in range(i,K-(N-i-1)): if dp[i][j]: for next in range(1,D+1): if next>K: continue dp[i+1][next+j]+=dp[i][j] dp[i+1][next+j]%=d print(dp[-1][K])