#arc041d. [arc041_d]辺彩色

[arc041_d]辺彩色

問題文

NN 個の頂点と MM 本の辺からなる無向グラフが与えられる。 グラフは連結で、自己ループや多重辺を含まない。 辺は 11 から MM まで番号が振られている。

はじめ、辺には色が塗られていない。 高橋君は ii (1iM1≦i≦M) 番目の辺に色 cic_i が塗られているようにしたい。 ただし、cic_ir(赤)または b(青)である。 高橋君は次のようにして辺に色を塗る。

  • まず、好きな頂点を始点に選ぶ。以降、「隣接する頂点へ移動する」というステップを好きなだけ繰り返す。
  • 各ステップごとに使われた辺に色を塗る。このとき、奇数回目のステップでは赤を塗り、偶数回目のステップでは青を塗る。
  • 既に色が塗られている辺に色を塗ると、新しい色で上書きされる。

すべての辺に目標の色が塗られているようにできるか判定せよ。


入力

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

NN MM a1a_1 b1b_1 c1c_1 a2a_2 b2b_2 c2c_2 : aMa_M bMb_M cMc_M

  • 11 行目には、頂点の個数 NN (2N2,0002≦N≦2,000) と辺の本数 MM (1M2,0001≦M≦2,000) が空白区切りで与えられる。
  • 22 行目からの MM 行には、辺の情報が与えられる。このうち ii 行目には、整数 aia_ibib_i (1ai<biN1≦a_i<b_i≦N) と色 cic_i が空白区切りで与えられる。これは次のことを表す。
    • ii 番目の辺が頂点 aia_i と頂点 bib_i を結んでいる。ただし、iji≠j ならば aiaja_i≠a_j または bibjb_i≠b_j を満たす。
    • ii 番目の辺に色 cic_i が塗られているようにしたい。ただし、cic_ir(赤)または b(青)である。
  • グラフは連結である。

出力

すべての辺に目標の色が塗られているようにできるならば Yes を、できないならば No11 行に出力せよ。 出力の末尾に改行を入れること。


入力例1


6 5
1 2 r
2 3 b
3 4 r
4 5 b
5 6 r

出力例1


Yes

例えば、頂点 11 を始点に選び、図のようにして辺に色を塗ればよい。


入力例2


4 3
1 2 r
1 3 r
1 4 r

出力例2


Yes

例えば、頂点 22 を始点に選び、図のようにして辺に色を塗ればよい。上書きされる色は破線で示している。


入力例3


3 3
1 2 b
1 3 b
2 3 b

出力例3


No