В городе живут $$$n$$$ человек. Про некоторые пары людей известно, дружат они или враждуют.
Скоро состоятся выборы, и поэтому каждый житель города обязательно должен проголосовать за одну из двух партий. При этом если два жителя дружат, то они должны проголосовать за одну и ту же партию, а если враждуют — за разные.
Определите такой способ голосования, при котором будут выполняться следующие условия:
Если подходящего способа голосования не существует, сообщите об этом.
В первой строке следуют два целых числа $$$n$$$ и $$$m$$$ ($$$1 \le n \le 2\cdot10^{5}$$$, $$$0 \le m \le \min(2\cdot10^{5}, \frac{n(n - 1)}{2})$$$) — количество человек, живущих в городе, а также количество пар людей, про которых известно, дружат они или враждуют.
В следующих $$$m$$$ строках следуют по три целых числа $$$x$$$, $$$y$$$ и $$$t$$$ ($$$1 \le x, y \le n$$$, $$$1 \le t \le 2$$$, $$$x \neq y$$$). Если $$$t = 1$$$, то люди с номерами $$$x$$$ и $$$y$$$ дружат между собой (а значит, должны проголосовать за одну и ту же партию). Если $$$t = 2$$$, то люди с номерами $$$x$$$ и $$$y$$$ враждуют между собой (а значит, должны проголосовать за разные партии). Гарантируется, что каждая неупорядоченная пара людей $$$x$$$ и $$$y$$$ встречается во входных данных не более одного раза.
Если способа голосования, удовлетворяющего описанным требованиям, не существует, выведите «NO» (без кавычек).
В противном случае в первую строку выведите «YES» (без кавычек), а во вторую — $$$n$$$ целых чисел, равных $$$1$$$ или $$$2$$$, причем если $$$i$$$-е число равно $$$1$$$, то человек с номером $$$i$$$ должен проголосовать за первую партию, а если $$$i$$$-е число равно $$$2$$$ — за вторую. Если подходящих способов голосования несколько, вы можете вывести любой из них.
5 4
1 5 1
2 4 1
4 3 2
1 3 1
YES
1 2 1 2 1
3 3
1 2 1
2 3 1
3 1 2
NO
13 10
12 7 2
9 11 1
12 8 1
6 10 1
4 3 2
2 13 1
1 5 1
9 7 1
13 1 2
3 8 1
YES
1 2 1 2 1 1 2 1 2 1 2 1 2
В первом примере люди с номерами $$$1$$$, $$$3$$$ и $$$5$$$ должны проголосовать за одну партию, а люди с номерами $$$2$$$ и $$$4$$$ за другую, так как человек $$$1$$$ дружит с $$$3$$$ и $$$5$$$, а $$$2$$$ дружит с $$$4$$$, при этом $$$3$$$ и $$$4$$$ являются врагами.
Во втором примере невозможно проголосовать способом, который описан в условии, так как человек $$$2$$$ дружит с $$$1$$$ и $$$3$$$, поэтому все они должны голосовать за одну и ту же партию. Но $$$1$$$ и $$$3$$$ — враги, поэтому должны голосовать за разные партии. Получаем противоречие, поэтому ответ на этот пример «NO».
| Name |
|---|


