import sys import itertools stdin=sys.stdin ip=lambda: int(sp()) fp=lambda: float(sp()) lp=lambda:list(map(int,stdin.readline().split())) sp=lambda:stdin.readline().rstrip() Yp=lambda:print('Yes') Np=lambda:print('No') N, S, K = lp() rest = (N - 1) * N //2 * K S -= rest mod = 10 ** 9 + 7 ans = 0 dp = [[ 0 for _ in range(S + 1)] for _ in range(N + 1)] if S < 0: print(0) sys.exit() dp[0][0] = 1 for i in range(1,N + 1): for j in range(0, S + 1): if (j - 1) >= 0: dp[i][j] = (dp[i - 1][j] + dp[i][j - i])%mod else: dp[i][j] = dp[i - 1][j] print(dp[N][S])