INF=10**9+7
s=input()
n=len(s)
least=[INF for i in range(1<<26)]
least[0]=0
dp=[INF for i in range(n)]
used=0
for i in range(n):
    a=ord(s[i])-ord('a')
    used^=(1<<a)
    dp[i]=least[used]+1;
    for j in range(26):
        to=used^(1<<j)
        dp[i]=min(dp[i],least[to]+1)
    least[used]=min(least[used],dp[i])
print(dp[n-1])