#P1239D. Catowice City

    ID: 2112 Type: RemoteJudge 2000ms 512MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>2-satdfs and similargraph matchingsgraphs*2400

Catowice City

No submission language available for this problem.

Description

In the Catowice city next weekend the cat contest will be held. However, the jury members and the contestants haven't been selected yet. There are nn residents and nn cats in the Catowice, and each resident has exactly one cat living in his house. The residents and cats are numbered with integers from 11 to nn, where the ii-th cat is living in the house of ii-th resident.

Each Catowice resident is in friendship with several cats, including the one living in his house. In order to conduct a contest, at least one jury member is needed and at least one cat contestant is needed. Of course, every jury member should know none of the contestants. For the contest to be successful, it's also needed that the number of jury members plus the number of contestants is equal to nn.

Please help Catowice residents to select the jury and the contestants for the upcoming competition, or determine that it's impossible to do.

The first line contains an integer tt (1t1000001 \le t \le 100\,000), the number of test cases. Then description of tt test cases follow, where each description is as follows:

The first line contains integers nn and mm (1nm1061 \le n \le m \le 10^6), the number of Catowice residents and the number of friendship pairs between residents and cats.

Each of the next mm lines contains integers aia_i and bib_i (1ai,bin1 \le a_i, b_i \le n), denoting that aia_i-th resident is acquaintances with bib_i-th cat. It's guaranteed that each pair of some resident and some cat is listed at most once.

It's guaranteed, that for every ii there exists a pair between ii-th resident and ii-th cat.

Different test cases are separated with an empty line.

It's guaranteed, that the sum of nn over all test cases is at most 10610^6 and that the sum of mm over all test cases is at most 10610^6.

For every test case print:

  • "No", if it's impossible to select the jury and contestants.
  • Otherwise print "Yes".

    In the second line print two integers jj and pp (1j1 \le j, 1p1 \le p, j+p=nj + p = n) — the number of jury members and the number of contest participants.

    In the third line print jj distinct integers from 11 to nn, the indices of the residents forming a jury.

    In the fourth line print pp distinct integers from 11 to nn, the indices of the cats, which will participate in the contest.

    In case there are several correct answers, print any of them.

Input

The first line contains an integer tt (1t1000001 \le t \le 100\,000), the number of test cases. Then description of tt test cases follow, where each description is as follows:

The first line contains integers nn and mm (1nm1061 \le n \le m \le 10^6), the number of Catowice residents and the number of friendship pairs between residents and cats.

Each of the next mm lines contains integers aia_i and bib_i (1ai,bin1 \le a_i, b_i \le n), denoting that aia_i-th resident is acquaintances with bib_i-th cat. It's guaranteed that each pair of some resident and some cat is listed at most once.

It's guaranteed, that for every ii there exists a pair between ii-th resident and ii-th cat.

Different test cases are separated with an empty line.

It's guaranteed, that the sum of nn over all test cases is at most 10610^6 and that the sum of mm over all test cases is at most 10610^6.

Output

For every test case print:

  • "No", if it's impossible to select the jury and contestants.
  • Otherwise print "Yes".

    In the second line print two integers jj and pp (1j1 \le j, 1p1 \le p, j+p=nj + p = n) — the number of jury members and the number of contest participants.

    In the third line print jj distinct integers from 11 to nn, the indices of the residents forming a jury.

    In the fourth line print pp distinct integers from 11 to nn, the indices of the cats, which will participate in the contest.

    In case there are several correct answers, print any of them.

Samples

Sample Input 1

4
3 4
1 1
2 2
3 3
1 3

3 7
1 1
1 2
1 3
2 2
3 1
3 2
3 3

1 1
1 1

2 4
1 1
1 2
2 1
2 2

Sample Output 1

Yes
2 1
1 3 
2 
Yes
1 2
2 
1 3 
No
No

Note

In the first test case, we can select the first and the third resident as a jury. Both of them are not acquaintances with a second cat, so we can select it as a contestant.

In the second test case, we can select the second resident as a jury. He is not an acquaintances with a first and a third cat, so they can be selected as contestants.

In the third test case, the only resident is acquaintances with the only cat, so they can't be in the contest together. So it's not possible to make a contest with at least one jury and at least one cat.

In the fourth test case, each resident is acquaintances with every cat, so it's again not possible to make a contest with at least one jury and at least one cat.