#P1811F. Is It Flower?

    ID: 61 Type: RemoteJudge 2000ms 256MiB Tried: 0 Accepted: 0 Difficulty: 7 Uploaded By: Tags>dfs and similargraphsimplementation*2100

Is It Flower?

Description

Vlad found a flowerbed with graphs in his yard and decided to take one for himself. Later he found out that in addition to the usual graphs, kk-flowers also grew on that flowerbed. A graph is called a kk-flower if it consists of a simple cycle of length kk, through each vertex of which passes its own simple cycle of length kk and these cycles do not intersect at the vertices. For example, 33-flower looks like this:

Note that 11-flower and 22-flower do not exist, since at least 33 vertices are needed to form a cycle.

Vlad really liked the structure of the kk-flowers and now he wants to find out if he was lucky to take one of them from the flowerbed.

The first line of input contains the single integer tt (1t1041 \le t \le 10^4) — the number of test cases in the test.

The descriptions of the cases follow. An empty string is written before each case.

The first line of each case contains two integers nn and mm (2n21052 \le n \le 2 \cdot 10^5, 1mmin(2105,n(n1)2)1 \le m \le \min(2 \cdot 10^5, \frac{n \cdot (n-1)}{2})) — the number of vertices and edges in the graph, respectively.

The next mm lines contain two integers each uu and vv (1u,vn1 \le u, v \le n, uvu \ne v) — numbers of vertices connected by an edge. It is guaranteed that the graph does not contain multiple edges and self-loops.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^5. It is also guaranteed for the sum of mm over all test cases.

Output tt lines, each of which is the answer to the corresponding test case. As an answer, output "YES" if Vlad's graph is a kk-flower for some kk, and "NO" otherwise.

You can output the answer in any case (for example, the strings "yEs", "yes", "Yes" and "YES" will be recognized as a positive answer).

Input

The first line of input contains the single integer tt (1t1041 \le t \le 10^4) — the number of test cases in the test.

The descriptions of the cases follow. An empty string is written before each case.

The first line of each case contains two integers nn and mm (2n21052 \le n \le 2 \cdot 10^5, 1mmin(2105,n(n1)2)1 \le m \le \min(2 \cdot 10^5, \frac{n \cdot (n-1)}{2})) — the number of vertices and edges in the graph, respectively.

The next mm lines contain two integers each uu and vv (1u,vn1 \le u, v \le n, uvu \ne v) — numbers of vertices connected by an edge. It is guaranteed that the graph does not contain multiple edges and self-loops.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^5. It is also guaranteed for the sum of mm over all test cases.

Output

Output tt lines, each of which is the answer to the corresponding test case. As an answer, output "YES" if Vlad's graph is a kk-flower for some kk, and "NO" otherwise.

You can output the answer in any case (for example, the strings "yEs", "yes", "Yes" and "YES" will be recognized as a positive answer).

Sample Input 1

5
<br>
9 12
1 2
3 1
2 3
1 6
4 1
6 4
3 8
3 5
5 8
9 7
2 9
7 2
<br>
8 12
1 2
3 1
2 3
1 6
4 1
6 4
3 8
3 5
5 8
8 7
2 8
7 2
<br>
4 3
1 2
4 2
3 1
<br>
6 8
6 3
6 4
5 3
5 2
3 2
3 1
2 1
2 4
<br>
5 7
2 4
2 5
3 4
3 5
4 1
4 5
1 5

Sample Output 1

YES
NO
NO
NO
NO

Sample Input 2

4
<br>
2 1
1 2
<br>
8 9
1 2
8 4
8 2
6 4
6 5
4 7
3 2
3 7
2 5
<br>
9 12
2 9
2 8
6 9
6 8
6 5
6 1
9 8
9 3
9 1
8 3
8 7
5 7
<br>
3 3
1 2
1 3
2 3

Sample Output 2

NO
NO
NO
NO