#abc299e. [abc299_e]Nearest Black Vertex

[abc299_e]Nearest Black Vertex

Problem Statement

You are given a simple connected undirected graph with NN vertices and MM edges (a simple graph contains no self-loop and no multi-edges).
For i=1,2,ldots,Mi = 1, 2, \\ldots, M, the ii-th edge connects vertex uiu_i and vertex viv_i bidirectionally.

Determine whether there is a way to paint each vertex black or white to satisfy both of the following conditions, and show one such way if it exists.

  • At least one vertex is painted black.
  • For every i=1,2,ldots,Ki = 1, 2, \\ldots, K, the following holds:
    • the minimum distance between vertex pip_i and a vertex painted black is exactly did_i.

Here, the distance between vertex uu and vertex vv is the minimum number of edges in a path connecting uu and vv.

Constraints

  • 1leqNleq20001 \\leq N \\leq 2000
  • $N-1 \\leq M \\leq \\min\\lbrace N(N-1)/2, 2000 \\rbrace$
  • 1lequi,vileqN1 \\leq u_i, v_i \\leq N
  • 0leqKleqN0 \\leq K \\leq N
  • 1leqp1ltp2ltcdotsltpKleqN1 \\leq p_1 \\lt p_2 \\lt \\cdots \\lt p_K \\leq N
  • 0leqdileqN0 \\leq d_i \\leq N
  • The given graph is simple and connected.
  • All values in the input are integers.

Input

The input is given from Standard Input in the following format:

NN MM u1u_1 v1v_1 u2u_2 v2v_2 vdots\\vdots uMu_M vMv_M KK p1p_1 d1d_1 p2p_2 d2d_2 vdots\\vdots pKp_K dKd_K

Output

If there is no way to paint each vertex black or white to satisfy the conditions, print No.
Otherwise, print Yes in the first line, and a string SS representing a coloring of the vertices in the second line, as shown below.
Here, SS is a string of length NN such that, for each i=1,2,ldots,Ni = 1, 2, \\ldots, N, the ii-th character of SS is 11 if vertex ii is painted black and 00 if white.

Yes SS

If multiple solutions exist, you may print any of them.


Sample Input 1

5 5
1 2
2 3
3 1
3 4
4 5
2
1 0
5 2

Sample Output 1

Yes
10100

One way to satisfy the conditions is to paint vertices 1,31, 3 black and vertices 2,4,52, 4, 5 white.
Indeed, for each i=1,2,3,4,5i = 1, 2, 3, 4, 5, let AiA_i denote the minimum distance between vertex ii and a vertex painted black, and we have (A1,A2,A3,A4,A5)=(0,1,0,1,2)(A_1, A_2, A_3, A_4, A_5) = (0, 1, 0, 1, 2), where A1=0,A5=2A_1 = 0, A_5 = 2.


Sample Input 2

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

Sample Output 2

No

There is no way to satisfy the conditions by painting each vertex black or white, so you should print No.


Sample Input 3

1 0
0

Sample Output 3

Yes
1