from collections import defaultdict, deque n = int(input()) m = int(input()) G = defaultdict(list) INcnt = [0 for _ in range(n)] for _ in range(m): p, q, r = map(int, input().split()) G[r - 1].append((p - 1, q)) INcnt[p - 1] += 1 ANS = [0 for _ in range(n - 1)] C = [0 for _ in range(n)] C[n - 1] = 1 Que = deque([n - 1]) while Que: cp = Que.popleft() cnt = C[cp] if len(G[cp]) == 0: ANS[cp] = cnt continue for np, q in G[cp]: C[np] += cnt * q INcnt[np] -= 1 if INcnt[np] == 0: Que.append(np) print(*ANS, sep='\n')