#include <bits/stdc++.h>
using namespace std;
int n, k, a[100009], dau, cuoi, d[100009], c[100009], Res;
string st;
void Input() {
  cin >> n >> k >> st;
  for (int i = 0; i < n; ++i) {
    a[i + 1] = st[i] - 'a';
  }
}
void Solve() {
  dau = 1;
  cuoi = 1;
  d[0] = 0;
  c[0] = 0;
  while (cuoi <= n) {
    if (a[cuoi] == 0) {
      d[cuoi] = d[cuoi - 1] + 1;
      c[cuoi] = c[cuoi - 1];
    } else {
      if (c[cuoi - 1] + 1 <= k) {
        d[cuoi] = d[cuoi - 1] + 1;
        c[cuoi] = c[cuoi - 1] + 1;
      } else {
        c[cuoi] = c[cuoi - 1] + 1;
        d[cuoi] = d[cuoi - 1] + 1;
        while (dau <= cuoi) {
          if (c[cuoi] > k) {
            if (a[dau] == 1) {
              c[cuoi]--;
            }
            dau++;
            d[cuoi]--;
          } else
            break;
        }
      }
    }
    Res = max(Res, d[cuoi]);
    cuoi++;
  }
  dau = 1;
  cuoi = 1;
  d[0] = 0;
  c[0] = 0;
  while (cuoi <= n) {
    if (a[cuoi] == 1) {
      d[cuoi] = d[cuoi - 1] + 1;
      c[cuoi] = c[cuoi - 1];
    } else {
      if (c[cuoi - 1] + 1 <= k) {
        d[cuoi] = d[cuoi - 1] + 1;
        c[cuoi] = c[cuoi - 1] + 1;
      } else {
        c[cuoi] = c[cuoi - 1] + 1;
        d[cuoi] = d[cuoi - 1] + 1;
        while (dau <= cuoi) {
          if (c[cuoi] > k) {
            if (a[dau] == 0) {
              c[cuoi]--;
            }
            dau++;
            d[cuoi]--;
          } else
            break;
        }
      }
    }
    Res = max(Res, d[cuoi]);
    cuoi++;
  }
  cout << Res;
}
int main() {
  Input();
  Solve();
}
