$N$ krów ($1 \le N \le 100$), ponumerowanych $1..N$, uczestniczy w konkursie programowania. Jak wiadomo, niektóre programują lepiej niż inne. Każda ma stały poziom umiejętności, różny od poziomów pozostałych uczestniczek.
Konkurs składa się z kilku bezpośrednich pojedynków, każdy między dwiema krowami. Jeśli umiejętność $A$ jest większa niż $B$ ($1 \le A \le N;1 \le B \le N;A \ne B$), $A$ zawsze wygrywa z $B$.
Farmer John chce uszeregować krowy według umiejętności. Z wyników $M$ ($1 \le M \le 4{,}500$) pojedynków wyznacz liczbę krów, których miejsca można dokładnie ustalić. Wyniki nie są sprzeczne.
Wejście
Czytaj dane ze standardowego wejścia.
- Wiersz 1: dwie liczby całkowite $N$ i $M$ rozdzielone spacją.
- Wiersze $2..M+1$: dwie liczby całkowite $A$ i $B$ rozdzielone spacją, opisujące uczestniczki i wynik pojedynku (pierwsza liczba $A$ oznacza zwyciężczynię).
Wyjście
Wypisz wynik na standardowe wyjście.
- Wiersz 1: liczba całkowita oznaczająca liczbę krów, których miejsca można ustalić.
Przykład
Wejście 1
5 5
4 3
4 2
3 2
1 2
2 5
Wyjście 1
2
Uwagi
Krowa $2$ przegrywa z $1$, $3$ i $4$, więc nie jest lepsza od żadnej z nich. Krowa $5$ przegrywa z $2$, zatem $2$ jest lepsza od $5$. Dlatego $2$ musi być czwarta, a $5$ piąta. Miejsc pozostałych krów nie można ustalić.
Autor zadania: Neal Wu, 2007