You are given a connected undirected graph $G$ with $N$ vertices and $M$ edges. For each $i=1,2,\ldots,M$, the $i$\-th edge connects vertices $a_i$ and $b_i$, and is colored red if $c_i=$ `R` and blue if $c_i=$ `B`.
Determine if there is a spanning tree of $G$ that satisfies the following condition, and if so, display such a tree.
* For every $i=1,2,\ldots,N$,
* if $s_i = $ `R`, at least one red edge has vertex $i$ as its endpoint;
* if $s_i = $ `B`, at least one blue edge has vertex $i$ as its endpoint.
## Constraints
* $2 \leq N \leq 2 \times 10^5$
* $N-1 \leq M \leq 2 \times 10^5$
* $1 \leq a_i \lt b_i \leq N$
* $c_i$ is `R` or `B`.
* $(a_i,b_i,c_i) \neq (a_j,b_j,c_j)$ if $i \neq j$.
* The given graph is connected.
* $s_i$ is `R` or `B`.
* $N,M,a_i,b_i$ are integers.
## Input
The input is given from Standard Input in the following format:
$N$ $M$
$a_1$ $b_1$ $c_1$
$\vdots$
$a_M$ $b_M$ $c_M$
$s_1 s_2 \ldots s_N$
[samples]