import java.util.*; public class Main { static final int MOD = 1000000007; public static void main (String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int s = sc.nextInt(); int kk = sc.nextInt(); int min = n * (n - 1) * kk / 2; if (s < min) { System.out.println(0); return; } s -= min; int[][] dp = new int[n + 1][s + 1]; dp[0][0] = 1; for (int i = 0; i * n <= s; i++) { dp[1][i * n] = 1; } for (int i = 2; i <= n; i++) { for (int j = 0; j <= s; j++) { if (dp[i - 1][j] == 0) { continue; } for (int k = 0; j + k * (n - i + 1) <= s; k++) { dp[i][j + k * (n - i + 1)] += dp[i - 1][j]; dp[i][j + k * (n - i + 1)] %= MOD; } } } System.out.println(dp[n][s]); } }