← Home
write a go solution for Description:
The Narrator has an integer array a of length n, but he will only tell you the size n and q statements, each of them being three integers i,j,x, which means that a_imida_j=x, where | denotes the bitwise OR operation.

Find the lexicographically smallest array a that satisfies all the statements.

An array a is lexicographically smaller than an array b of the same length if and only if the following holds:

- in the first position where a and b differ, the array a has a smaller element than the corresponding element in b.

Input Format:
In the first line you are given with two integers n and q (1<=n<=10^5, 0<=q<=2*10^5).

In the next q lines you are given with three integers i, j, and x (1<=i,j<=n, 0<=x<2^30) — the statements.

It is guaranteed that all q statements hold for at least one array.

Output Format:
On a single line print n integers a_1,a_2,ldots,a_n (0<=a_i<2^30) — array a.

Note:
In the first sample, these are all the arrays satisfying the statements:

- [0,3,2,2],
- [2,1,0,0],
- [2,1,0,2],
- [2,1,2,0],
- [2,1,2,2],
- [2,3,0,0],
- [2,3,0,2],
- [2,3,2,0],
- [2,3,2,2].. Output only the code with no comments, explanation, or additional text.