Tikhon 通过了入学考试,现在正在一所研究机构学习。然而,他很害怕在校园里走动。他担心自己可能会把通行证忘在某个地方并永久丢失,这样他就无法去上课了。
Tikhon 所在研究机构的校园是一个有向图。图中的一些边只能在持有通行证的情况下通过。
为了永久丢失通行证,Tikhon 需要从位于第一个顶点的宿舍出发,沿着校园里的零条或多条边行走,然后在某个顶点放下通行证,继续在校园里行走,之后无法回到他放下通行证的那个顶点。
Tikhon 想知道他是否在杞人忧天:请帮他找出是否有可能在校园里永久丢失通行证。
输入格式
第一行包含两个整数 $n$ 和 $m$ ($1 \le n, m \le 3 \cdot 10^5$),分别表示图中的顶点数和边数。
接下来的 $m$ 行,每行包含三个整数 $u_i, v_i, t_i$ ($1 \le u_i, v_i \le n; 1 \le t_i \le 2$),描述图中的有向边。边 $i$ 允许从 $u_i$ 到 $v_i$ 的通行。如果通过边 $i$ 需要通行证,则 $t_i = 1$,否则 $t_i = 2$。
给定的图可能包含自环和重边。
输出格式
输出一行,包含一个单词(不区分大小写):如果 Tikhon 可以永久丢失通行证,输出 “Yes”,否则输出 “No”。
样例
输入 1
3 4 1 2 1 2 3 2 3 2 1 3 1 2
输出 1
Yes
输入 2
6 8 1 2 1 2 3 2 3 2 2 3 4 1 4 1 2 1 5 2 5 4 2 6 1 2
输出 2
No
说明
在第一个样例中,Tikhon 可以先持通行证通过边 $1 \to 2$,然后在顶点 $2$ 处放下通行证,接着通过边 $2 \to 3$。此后,他将无法回到顶点 $2$。