#include <bits/stdc++.h>
using namespace std;
int main() {
string a;
cin >> a;
int totalA = 0, totalB = 0;
int n = a.size();
for (char c : a) {
if (c == 'a') totalA++;
else totalB++;
}
int mini = INT_MAX;
bool found = false;
for (int i = 0; i < n; i++) {
int countA = 0, countB = 0;
for (int j = i; j < n; j++) {
if (a[j] == 'a') countA++;
else countB++;
int Ca = totalA - countA;
int Cb = totalB - countB;
if (Ca == Cb) {
found = true;
mini = min(mini, j - i + 1);
}
}
}
if (found)
cout << "The minimum substring containing equal number of a and b is: " << mini;
else
cout << "No such substring exists.";
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKaW50IG1haW4oKSB7CiAgICBzdHJpbmcgYTsKICAgIGNpbiA+PiBhOwoKICAgIGludCB0b3RhbEEgPSAwLCB0b3RhbEIgPSAwOwogICAgaW50IG4gPSBhLnNpemUoKTsKCiAgICBmb3IgKGNoYXIgYyA6IGEpIHsKICAgICAgICBpZiAoYyA9PSAnYScpIHRvdGFsQSsrOwogICAgICAgIGVsc2UgdG90YWxCKys7CiAgICB9CgogICAgaW50IG1pbmkgPSBJTlRfTUFYOwogICAgYm9vbCBmb3VuZCA9IGZhbHNlOwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgaW50IGNvdW50QSA9IDAsIGNvdW50QiA9IDA7CiAgICAgICAgZm9yIChpbnQgaiA9IGk7IGogPCBuOyBqKyspIHsKICAgICAgICAgICAgaWYgKGFbal0gPT0gJ2EnKSBjb3VudEErKzsKICAgICAgICAgICAgZWxzZSBjb3VudEIrKzsKCiAgICAgICAgICAgIGludCBDYSA9IHRvdGFsQSAtIGNvdW50QTsKICAgICAgICAgICAgaW50IENiID0gdG90YWxCIC0gY291bnRCOwoKICAgICAgICAgICAgaWYgKENhID09IENiKSB7CiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7CiAgICAgICAgICAgICAgICBtaW5pID0gbWluKG1pbmksIGogLSBpICsgMSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgaWYgKGZvdW5kKQogICAgICAgIGNvdXQgPDwgIlRoZSBtaW5pbXVtIHN1YnN0cmluZyBjb250YWluaW5nIGVxdWFsIG51bWJlciBvZiBhIGFuZCBiIGlzOiAiIDw8IG1pbmk7CiAgICBlbHNlCiAgICAgICAgY291dCA8PCAiTm8gc3VjaCBzdWJzdHJpbmcgZXhpc3RzLiI7CgogICAgcmV0dXJuIDA7Cn0K