mod=10**9+7 n,d,k=map(int,input().split()) dp=[[0]*(k+1) for _ in range(n+1)] dp[0][0]=1 for i in range(n): acum=[0] for l in range(k): acum.append((acum[-1]+dp[i][l])%mod) for j in range(1,k+1): dp[i+1][j]=acum[j]-acum[max(0,j-d)] dp[i+1][j]%=mod print(dp[n][k])