mod = 1000000007 eps = 10**-9 def main(): import sys from collections import deque input = sys.stdin.buffer.readline N, M = map(int, input().split()) adj = [[] for _ in range(N+1)] for _ in range(M): a, b = map(int, input().split()) y = int(input()) adj[a].append((b, y)) adj[b].append((a, y)) seen = [-1] * (N+1) for v0 in range(1, N+1): if seen[v0] != -1: continue seen[v0] = 0 que = deque() que.append(v0) while que: v = que.popleft() for u, y in adj[v]: if seen[u] == -1: que.append(u) seen[u] = seen[v] ^ y else: if seen[v] ^ seen[u] != y: print(-1) exit() for v in range(1, N+1): print(seen[v]) if __name__ == '__main__': main()