Цепочкой слов длины n назовём последовательность слов w_1, w_2, ..., w_n такую, что для 1 ≤ i ≤ n слово w_i является собственным префиксом слова w_{i+1}.
Напомним, что слово u длины k называется собственным префиксом слова v длины l, если l > k и первые k букв слова v совпадают со словом u.
Задано множество слов S = {s1, s2, ..., sm}. Найдите максимальную длину цепочки слов, которую можно построить, используя (возможно, не все) слова этого множества.
Первая строка входного файла содержит целое число m (1 ≤ m ≤ 255). Каждая из последующих m строк содержит по одному слову из множества S.
Все слова не пусты, имеют длину, не превосходящую 255 символов, и состоят только из строчных букв латинского алфавита.
В выходной файл выведите ответ на задачу.