from copy import * mod=1000000007 N,D,K=map(int,input().split()) dp=list() dp.append(copy([0]*(K+1))) dp[0][0]=1 for i in range(N): dp.append(copy([0]*(K+1))) for j in range(1,D+1): for k in range(K): if k+j<=K: dp[i+1][k+j]=(dp[i+1][k+j]+dp[i][k])%mod print(dp[N][K]%mod)