N,M,K = map(int,input().split()) l = [] MOD = 10**9+7 NUM = 300 for _ in range(M): p,q,c = map(int,input().split()) p -= 1 q -= 1 l.append((p,q,c)) dp = [[[0 for _ in range(K+1)] for _ in range(NUM)] for _ in range(N)] for i in range(NUM): dp[0][i][0] = 1 for i in range(N-1): for j in range(M): p,q,c = l[j] for k in range(K+1-c): dp[i+1][q][k+c] += dp[i][p][k] dp[i+1][q][k+c] %= MOD ans = 0 for i in range(NUM): ans += dp[N-1][i][K] print(ans%MOD)