#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<int>;
template <class t, class u>
void chmin(t& a, u b) {
  if (b < a) a = b;
}
const int INF = 1e9;
int N;
vi albits;
int main() {
  string s;
  cin >> s;
  N = s.length();
  albits.assign(N, 0);
  for (int i = 0; i < (N); ++i) {
    int c = s[i] - 'a';
    albits[i + 1] ^= (1 << c);
    albits[i + 1] ^= albits[i];
  }
  vi dp((1 << 26), INF);
  vi ans(N + 1, INF);
  dp[albits[0]] = 0;
  ans[0] = 0;
  for (int i = 0; i < (N); ++i) {
    for (int j = 0; j < (27); ++j) {
      int x = (1 << j) / 2;
      chmin(ans[i + 1], dp[albits[i + 1] ^ x] + 1);
    }
    chmin(dp[albits[i + 1]], ans[i + 1]);
  }
  cout << ans[N] << endl;
  return 0;
}
