#include <bits/stdc++.h>
using namespace std;
const long double pi = acosl(-1.0);
const long long mod = 1000000007ll;
const int top = 1e7 + 1;
vector<int> prefix_a(6000);
vector<int> prefix_b(6000);
int range_a(int l, int r) {
  if (r < 0 || l > r) return 0;
  if (l == 0) {
    return prefix_a[r];
  }
  return prefix_a[r] - prefix_a[l - 1];
}
int range_b(int l, int r) {
  if (r < 0 || l > r) return 0;
  if (l == 0) {
    return prefix_b[r];
  }
  return prefix_b[r] - prefix_b[l - 1];
}
void solve() {
  string s;
  cin >> s;
  for (int i = 0; i < s.size(); ++i) {
    if (s[i] == 'a')
      prefix_a[i] = 1;
    else
      prefix_b[i] = 1;
  }
  for (int i = 1; i < 6000; ++i)
    prefix_a[i] += prefix_a[i - 1], prefix_b[i] += prefix_b[i - 1];
  int ans = 0;
  for (int l = 0; l <= s.size(); ++l) {
    for (int r = l; r <= s.size(); ++r) {
      ans = max(ans,
                range_a(0, l - 1) + range_b(l, r - 1) + range_a(r, s.size()));
    }
  }
  cout << ans;
}
int main(int argc, char *argv[]) {
  solve();
  return 0;
}
