Obtiažnosť: ťažká

Silno súvislé komponenty

Krajina pozostáva z $n$ miest pospájaných $m$ jednosmernými cestami.

Aglomeráciou nazveme také zoskupenie miest, pre ktoré platí:

  • Z každého mesta v aglomerácii sa dá (priamo alebo nepriamo) dostať do ľubovoľného iného mesta v tejto aglomerácii.
  • Do aglomerácie nie je možné pridať ďalšie mesto tak, aby predošlá vlastnosť stále platila.

Nájdite počet aglomerácii v krajine.

Vstup

Na prvom riadku vstupu je číslo $t$ ­— počet testovacích vstupov.

Každý vstup začína prázdnym riadkom, ktorý je nasledovaný riadkom s dvomi celými číslami $n, m$ ­— počet miest a počet jednosmerných ciest. ($t \leq 1000$, $1 \leq n \leq 400\,000$, $0 \leq m \leq 400\,000$)

Nasleduje $m$ riadkov, každý pozostáva z dvoch čísel $a$ a $b$ a hovorí o tom, že existuje jednosmerná cesta z mesta $a$ do $b$. ($0 \leq a, b < n$, $a \neq b$ a každá usporiadaná dvojica miest sa vyskytne najviac raz)

Je zaručené, že celkový počet miest vo všetkých vstupoch dohromady je najviac $400\,000$, a celkový počet ciest je najviac $400\,000$.

Výstup

Pre každý vstup vypíšte na samostatný riadok jedno číslo: počet aglomerácii v krajine.

Príklad

Vstup

2

5 4
2 1
2 3
0 3
1 4

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

Výstup

5
2