Polycarp loves lowercase letters and dislikes uppercase ones. Once he got a string $*s*$ consisting only of lowercase and uppercase Latin letters.
Let $*A*$ be a set of positions in the string. Let's call it pretty if following conditions are met:
- letters on positions from
$*A*$in the string are all distinct and lowercase; - there are no uppercase letters in the string which are situated between positions from
$*A*$(i.e. there is no such$*j*$that$*s*[*j*]$is an uppercase letter, and$*a*_{1} < *j* < *a*_{2}$for some$*a*_{1}$and$*a*_{2}$from$*A*$).
Write a program that will determine the maximum number of elements in a pretty set of positions.
Input
The first line contains a single integer $*n*$ ($1 ≤ *n* ≤ 200$) — length of string $*s*$.
The second line contains a string $*s*$ consisting of lowercase and uppercase Latin letters.
Output
Print maximum number of elements in pretty set of positions for string $*s*$.
Note
In the first example the desired positions might be $6$ and $8$ or $7$ and $8$. Positions $6$ and $7$ contain letters 'a', position $8$ contains letter 'b'. The pair of positions $1$ and $8$ is not suitable because there is an uppercase letter 'B' between these position.
In the second example desired positions can be $7$, $8$ and $11$. There are other ways to choose pretty set consisting of three elements.
In the third example the given string $*s*$ does not contain any lowercase letters, so the answer is $0$.
样例
11
aaaaBaabAbA
2
12
zACaAbbaazzC
3
3
ABC
0
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。