N, M, K = map(int, input().split()) P = [0]*M Q = [0]*M C = [0]*M for i in range(M): P[i],Q[i],C[i] = map(int, input().split()) dp = [[[0]*300 for _ in range(K+300)] for _ in range(N)] mod = 10**9+7 for i in range(300): dp[0][0][i] = 1 for n in range(N-1): for k in range(K+1): for i in range(300): dp[n][k][i] %= mod for i in range(M): dp[n+1][k+C[i]][Q[i]-1] += dp[n][k][P[i]-1] ans = sum(dp[-1][K])%mod print(ans)