#include <bits/stdc++.h>
using namespace std;
char s[5005];
int n, dp[5005][5];
const int inf = 1e7 + 5;
int go(int id, int need) {
  if (id == n) return 0;
  if (dp[id][need] != -1) return dp[id][need];
  int ans = 0;
  if (need == 1) {
    if (s[id] == 'a')
      ans = max(1 + go(id + 1, 1), 1 + go(id + 1, 2));
    else
      ans = max(go(id, 2), go(id + 1, 1));
  } else if (need == 2) {
    if (s[id] == 'a')
      ans = max(go(id, 3), go(id + 1, 2));
    else
      ans = max(1 + go(id + 1, 2), 1 + go(id + 1, 3));
  } else {
    if (s[id] == 'a')
      ans = 1 + go(id + 1, 3);
    else
      ans = go(id + 1, 3);
  }
  return dp[id][need] = ans;
}
int main() {
  scanf(" %s", s);
  n = strlen(s);
  memset(dp, -1, sizeof(dp));
  printf("%d\n", go(0, 1));
}
