mod = 10 ** 9 + 7 n,d,k = map(int,input().split()) w = d*n+1 dp = [[0] * w for i in range(n+1) ] dp[0][0] = 1 for i in range(n): # for j in range(d*n,0,-1): s = [0] * (d*n+1) s[0] = dp[i][0] # print(s) for j in range(d-1): s[j+1] = s[j] + dp[i][j+1] # print(s,i) for j in range(d-1,w-1): tt1 = dp[i][j+1] tt2 = dp[i][j+1-d] s[j+1] = s[j] + tt1 - tt2 # print(s) for j in range(0,d*n): dp[i+1][j] = s[j-1] # print(dp) print(dp[n][k] % mod)