编程题
### 问题描述
有 $N$ 个人和三种任务,每个人要么可以执行 $A$ 任务和 $C$ 任务,要么可以执行 $B$ 任务和 $C$ 任务,每个人需要选择恰好一种任务,现在给定 $M$ 组约束 $(i,j)$ 表示第 $i$ 个人和第 $j$ 个人不想执行同一种任务,询问是否存在一种合法方案,使得约束得到满足。
### 输入格式
第一行给定 $T$,表述数据组数,之后对于每一组数据有:
第一行包含 $2$ 个正整数 $N,M$。
第二行给定 $N$ 个字符的字符串 $S$,由 $A,B$ 构成,若 $S_i=A$,表示第 $i$ 个人可以执行 $A$ 任务和 $C$ 任务,否则表示第 $i$ 个人可以执行 $B$ 任务和 $C$ 任务。
之后 $M$ 行,每行给定 $i,j$,表示一组约束。
### 输出格式
对于每组数据,如果存在解输出 `Yes`,否则输出 `No`。
### 样例输入
```text
2
2 1
AB
1 2
3 3
AAA
1 2
2 3
1 3
```
### 样例输出
```text
Yes
No
```
### 评测数据规模
对于所有测评数据,$1 \leq T \leq 5,1 \leq n,m \leq 10^4$。