import sys import math from collections import deque import copy import bisect MOD = 10 ** 9 + 7 N, S, K = map(int, input().split()) dp = [[0 for _ in range(S + 10)] for _ in range(N + 10)] dp[0][0] = 1 if N*N*K/2 > S: print(0) sys.exit() for i in range(0, N + 1): for l in range(1, S + 1): if (l - (N - i)) >= 0: dp[i][l] = (dp[i - 1][l - (N - i)] + dp[i][l - (N - i)]) % MOD print(dp[N - 1][S])