N,S,K = map(int,input().split()) S -= (K+(N-1)*K)*(N-1)//2 mod = 10**9 +7 if S == 0: print(1) elif S < 0: print(0) else: #dp[i][j]->i人でjを値の組み合わせの重複なしで分割するパターン数 dp = [[0]*(S+1) for _ in range(N+1)] for i in range(N+1): dp[i][0]=1 for j in range(S+1): dp[1][j] = 1 for i in range(2,N+1): for j in range(1,S+1): dp[i][j] += dp[i-1][j] if j-i>=0: dp[i][j] += dp[i][j-i] print(dp[-1][-1]%mod)