Задано орієнтований ациклічний граф.
Потрібно визначити мінімальну кількість неперетинних шляхів, якими можна покрити всі вершини.
Перший рядок входу містить та — кількість вершин і кількість ребер графа відповідно (2 \leq n \leq 1000, 0 \leq m \leq 10^5). У наступних рядках містяться по два числа: номери вершин та , які сполучає напрямлене ребро (, ).
У першому рядку вихідних даних виведіть натуральне число — мінімальну кількість шляхів, необхідних, щоб покрити всі вершини.
Приклад 1