#include <bits/stdc++.h>
using namespace std;
const int MAXN = 200500;
map<int, int> ht;
int pref[MAXN];
int dp[MAXN];
int n;
int main() {
  ios_base::sync_with_stdio(0);
  string s;
  cin >> s;
  n = (int)s.size();
  for (int i = 0; i < n; i++) {
    pref[i + 1] = pref[i] ^ (1 << (s[i] - 'a'));
  }
  ht[0] = 0;
  for (int len = 1; len <= n; len++) {
    dp[len] = 1000 * 1000 * 1000;
    if (ht.count(pref[len]) != 0) {
      dp[len] = min(dp[len], dp[ht[pref[len]]] + 1);
    }
    for (char c = 'a'; c <= 'z'; c++) {
      int mask = pref[len] ^ (1 << (c - 'a'));
      if (ht.count(mask) != 0) {
        dp[len] = min(dp[len], dp[ht[mask]] + 1);
      }
    }
    if (ht.count(pref[len]) == 0) ht[pref[len]] = len;
  }
  cout << dp[n] << '\n';
  return 0;
}
