\begin{problem}{Longpath 1, 2. Длиннейший путь}{longpath.in}{longpath.out}{2 секунды}

Дан ориентированный граф без циклов. Требуется найти в нем длиннейший путь.

\InputFile

Первая строка входного файла содержит два натуральных числа $n$ и $m$ --- 
количество вершин и дуг графа соответственно. Следующие $m$ строк содержат 
описания дуг по одной на строке. Ребро номер $i$ описывается двумя 
натуральными числами $b_i$ и $e_i$ --- началом и концом дуги соответственно 
($1 \le b_i, e_i \le n$).

Входной граф не содержит циклов и петель.

\Variants

Longpath1: $n \le 1\,000$, $m \le 10\,000$.

Longpath2: $n \le 10\,000$, $m \le 100\,000$.

\OutputFile

Первая строка выходного файла должна содержать одно натуральное число --- 
количество дуг в длиннейшем пути.

\Example

\begin{example}
\exmp{
5 5
1 2
2 3
3 4 
3 5
1 5
}{
3
}%
\end{example}

\end{problem}
