\begin{problem}{Diameter. Диаметр дерева (*)}{diameter.in}{diameter.out}{1 секунда}

{\itРасстоянием} между двумя вершинами в неориентированном невзвешенном графе называется количество ребер в кратчайшем пути, соединяющем эти вершины.

{\itДиаметром} графа называется максимальное расстояние между вершинами этого графа.

{\itДеревом} называется связный граф без циклов.

Дано дерево, требуется найти его диаметр.

\InputFile

Первая строка входного файла содержит натуральное число $n$ --- количество вершин в дереве ($n \le 100\,000$).
Следующая строка содержит $n$ чисел, $i$-е число --- номер вершины, являющейся предком вершины номер $i$ (если вершина является корнем, то соответствующее значение равно нулю).

\OutputFile

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

\Example

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

\end{problem}
