#include <bits/stdc++.h>
using namespace std;
long long pyon[1 << 26];
signed main() {
  if (!false) {
    cin.tie(0);
    ios::sync_with_stdio(0);
  }
  for (int i_to_ = (1 << 26), i = (0); i < i_to_; i++) pyon[i] = INT_MAX;
  string S;
  cin >> S;
  vector<long long> d(S.size() + 1);
  long long z = 0;
  pyon[z] = 0;
  for (int i_to_ = (S.size()), i = (0); i < i_to_; i++) {
    d[i + 1] = pyon[z] + 1;
    z ^= 1 << (S[i] - 'a');
    d[i + 1] = min(d[i + 1], pyon[z] + 1);
    for (int j_to_ = (26), j = (0); j < j_to_; j++) {
      d[i + 1] = min(d[i + 1], pyon[z ^ (1 << j)] + 1);
    }
    if (pyon[z] == INT_MAX) pyon[z] = d[i + 1];
    if (false) cout << z << ":" << pyon[z] << ' ';
  }
  if (false) {
    cout << '\n';
    for (int i_to_ = (d.size()), i = (0); i < i_to_; i++)
      cout << (i ? " " : "") << d[i];
    cout << '\n';
  }
  cout << d[S.size()] << '\n';
  return 0;
}
