#arc036d. [arc036_d]偶数メートル

[arc036_d]偶数メートル

問題文

高橋くんの住む国には NN 個の街があります。それぞれ 11 から NN の整数で番号付けされています。 しかし、これらの街の間を移動する手段がまだありません。 そこで国が補助金を出して、異なる 22 つの街を結ぶ道路を、いくつか敷設することになりました。 各道路は個別の長さを持っています。 敷設される道路は結んだ 22 つの国のどちらからでも、もう一方の国に移動することが出来ます。つまり双方向に移動できる道路です。

ところで、高橋くんは偶数が大好きです。 高橋くんは道路を使って、たとえそれが遠回りになろうとも、同じ道を何度通ろうとも、移動距離の合計が偶数メートルになるように移動しようとします。 また、高橋くんは中途半端なことが嫌いなので、道の途中で来た道を引き返すことはしません。

高橋君はときどき、22 つの街を指定して、その間を偶数メートルで移動できるかどうかあなたに質問します。 先述の通り、今は道路を増やしている最中なので、質問のタイミングによっては新しく敷設された道路の影響で、偶数メートルで移動できるかどうかが変わり得るに注意してください。

なお、街の中での移動は移動距離の合計に含まないものとします。

道路の敷設と、高橋くんの質問の情報を時系列順に与えるので、高橋くんの質問に答えるプログラムを作成してください。


入力

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

NN QQ w1w_1 x1x_1 y1y_1 z1z_1 w2w_2 x2x_2 y2y_2 z2z_2 : wQw_Q xQx_Q yQy_Q zQz_Q

  • 11 行目には高橋くんの住む国にある街の個数 N(1N105)N (1 ≦ N ≦ 10^5) と与えられる情報の個数 Q(1Q105)Q (1 ≦ Q ≦ 10^5) が空白区切りで与えられる。
  • 22 行目からの QQ 行のうち ii 行目には ii 番目の情報を表す整数 wi,xi,yi,ziw_i, x_i, y_i, z_i が空白区切りに与えられる。各変数は以下の制約を満たす。
    • 1wi21 ≦ w_i ≦ 2
    • 1xi,yiN1 ≦ x_i, y_i ≦ N
    • xiyix_i ≠ y_i
    • 1zi1051 ≦ z_i ≦ 10^5
  • wi=1w_i = 1 のとき、街 xix_i と街 yiy_i の間に長さ ziz_i メートルの道路を敷くことを表す。
  • wi=2w_i = 2 のとき、高橋くんが 街 xix_i と 街 yiy_i を偶数メートルで移動できるか質問したことを表す。このとき ziz_i は常に 11 である。
  • 同じ 22 つの街に複数本の道が敷かれることがある。
  • 高橋くんが質問した時点では、それ以前の入力の全ての道路の敷設が完了されているものとする。

部分点

この問題には部分点が設定されている。

  • 1N3,000,1Q3,0001 ≦ N ≦ 3,000 , 1 ≦ Q ≦ 3,000 を満たすデータセットに正解した場合は 3030 点が与えられる。
  • 1N105,1Q1051 ≦ N ≦ 10^5 , 1 ≦ Q ≦ 10^5 を満たすデータセットに正解した場合はさらに 7070 点が与えられる。合計で100100点となる。

出力

出力は複数行からなる。 高橋くんが質問するたびに、高橋くんが街 xix_i と街 yiy_i の間を偶数メートルで移動できるならば YES 、移動できないならば NO と1行に出力せよ。


入力例1


5 9
1 1 2 3
1 1 3 2
1 3 5 5
2 1 5 1
2 2 5 1
1 2 4 4
1 1 4 6
2 1 5 1
2 3 5 1

出力例1


NO
YES
YES
YES

各質問時点での街と道路の様子は以下のようになります。 左が 1,21, 2 つ目の質問の時の様子で、右が 3,43, 4 つ目の質問の時の様子です。

22 つ目の質問に対しては 2,1,3,52, 1, 3, 5 という順に道路を進むと移動距離の合計が 1010 になります。

33 つ目の質問に対しては 1,4,2,1,3,51, 4, 2, 1, 3, 5 という順に道路を進むと移動距離の合計が 2020 になります。

44 つ目の質問に対しては 3,1,2,4,1,3,53, 1, 2, 4, 1, 3, 5 という順に道路を進むと移動距離の合計が 2222 になります。


入力例2


5 7
1 1 2 3
1 2 4 4
1 5 3 1
2 1 3 1
2 5 3 1
1 3 1 2
2 3 4 1

出力例2


NO
NO
NO

11 つ目の質問の時点では、そもそも街 11 から街 33 に行く方法がありません。よって答えは NO になります。


入力例3


3 6
1 1 2 1
1 1 3 3
1 2 3 2
1 2 1 2
2 1 3 1
2 2 3 1

出力例3


YES
YES

同じ 22 つの街に複数本の道路が敷設され得ることに注意してください。