#include <bits/stdc++.h>

using namespace std;

const int MX = 200000;

char s[MX + 1];
int dp[1 << 26];

int main() {
	ignore = scanf("%s", s);
	
	dp[0] = 0;
	for (int i = 1; i < (1 << 26); i++) dp[i] = MX + 1;
	
	int mask = 0, last;
	for (int i = 0; s[i] != 0; i++) {
		mask ^= 1 << (s[i] - 'a');
		last = dp[mask] + 1;
		for (int j = 0; j < 26; j++) last = min(dp[mask ^ (1 << j)] + 1, last);
		dp[mask] = min(dp[mask], last);
	}
	
	printf("%d\n", last);
	
	return 0;
}
