MOD = 10**9 + 7 N, S, K = map(int, input().split()) # Calculate the adjusted target sum T T = S - K * N * (N - 1) // 2 if T < 0: print(0) else: dp = [0] * (T + 1) dp[0] = 1 # Iterate over each "coin" from N down to 1 for coin in range(N, 0, -1): for t in range(coin, T + 1): dp[t] = (dp[t] + dp[t - coin]) % MOD print(dp[T] % MOD)