N,S,K=map(int,raw_input().split()) S-=K*N*(N-1)/2 if S < 0: print 0 exit() dp=[[-1 for i in range(S+1)] for k in range(N+1)] mod=1000000007 def rec(N,S): if dp[N][S]!=-1: return dp[N][S] if N==1: dp[N][S]=1 return dp[N][S] dp[N][S]=0 for i in range(S/N+1): dp[N][S]+=rec(N-1,S-i*N) dp[N][S]%=mod #print N,S,dp[N][S] return dp[N][S] print rec(N,S)