#!/usr/bin/python3
# Aplikace DFS na výpočet hloubky stromu.

# Načteme vstup: počet vrcholů, počet hran, pak hrany
n = int(input())
m = int(input())
sousede = [[] for _ in range(n)]
for _ in range(m):
    u, v = map(int, input().split())
    u -= 1
    v -= 1
    sousede[u].append(v)
    sousede[v].append(u)

# Rekurzivní funkce, která spočítá hloubku podstromu
# pod daným vrcholem.
def hloubka(v, rodic=None):
    h = 0
    for s in sousede[v]:
        if s != rodic:
            h = max(h, hloubka(s, v) + 1)

    return h

print(hloubka(0))