#arc052c. [arc052_c] 高橋くんと不思議な道

[arc052_c] 高橋くんと不思議な道

問題文

00 から町 N1N-1 までの NN 個の町があります。
これらは MM 個の双方向に行き来可能な道で結ばれています。

道にはタイプ AA とタイプ BB の二種類の道があります。
タイプ AA の道を通ると、コストが 11 かかります。
タイプ BB の道を通るとき、コストが (今まで通ったタイプ BB の道の本数) \+1\+ 1 かかります。

ただし、ii (1iM1 ≤ i ≤ M) 本目の道は、町 AiA_i と町 BiB_i を結び、CiC_i00 のときはタイプ AACiC_i11 のときはタイプ BB とします。

全ての町において、町 00 からその町までの移動にかかる最小コストをそれぞれ求めてください。
ただし、町 00 から到達できない町は存在しないものとします。

制約

  • 与えられる数字はすべて整数
  • 1N1041 ≤ N ≤ 10^4
  • 1M1051 ≤ M ≤ 10^5
  • 0Ai,BiN10 ≤ A_i, B_i ≤ N - 1
  • 0Ci10 ≤ C_i ≤ 1

入力

入力は以下の形式で標準入力から与えられる。

NN MM C1C_1 A1A_1 B1B_1 C2C_2 A2A_2 B2B_2 :: CMC_M AMA_M BMB_M

出力

出力は NN 行からなる。 ii 行目 (1iN1 ≤ i ≤ N)には、町 00 から町 i1i-1 への移動でかかるコストを出力せよ。


入力例 1


3 3
0 0 1
1 1 2
1 2 0

出力例 1


0
1
1

入力例 2


7 8
1 0 1
1 1 2
1 2 5
1 5 6
0 1 3
0 3 4
0 4 5
0 2 6

出力例 2


0
1
3
2
3
4
4

入力例 3


8 9
0 0 1
0 1 2
0 2 3
0 5 6
0 6 7
1 1 3
1 3 4
1 4 5
1 5 7

出力例 3


0
1
2
2
4
6
7
8