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