#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
string S;int a[100000];
int main(){
cin>>S;
for(int i=0;i<S.size();i++){
if(S[i]=='I'){a[i]=1;}
for(int j=0;j<i;j++){
if(S[j]=='I' && S[i]=='O' && a[j]%2==1){a[i]=max(a[i],a[j]+1);}
if(S[j]=='O' && S[i]=='I' && a[j]%2==0){a[i]=max(a[i],a[j]+1);}
}
}
int maxn=0;
for(int i=0;i<S.size();i++){
maxn=max(maxn,a[i]);
}
if(maxn%2==0 && maxn>=1){maxn--;}
cout<<maxn<<endl;
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHN0cmluZz4KI2luY2x1ZGU8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpzdHJpbmcgUztpbnQgYVsxMDAwMDBdOwppbnQgbWFpbigpewoJY2luPj5TOwoJZm9yKGludCBpPTA7aTxTLnNpemUoKTtpKyspewoJCWlmKFNbaV09PSdJJyl7YVtpXT0xO30KCQlmb3IoaW50IGo9MDtqPGk7aisrKXsKCQkJaWYoU1tqXT09J0knICYmIFNbaV09PSdPJyAmJiBhW2pdJTI9PTEpe2FbaV09bWF4KGFbaV0sYVtqXSsxKTt9CgkJCWlmKFNbal09PSdPJyAmJiBTW2ldPT0nSScgJiYgYVtqXSUyPT0wKXthW2ldPW1heChhW2ldLGFbal0rMSk7fQoJCX0KCX0KCWludCBtYXhuPTA7Cglmb3IoaW50IGk9MDtpPFMuc2l6ZSgpO2krKyl7CgkJbWF4bj1tYXgobWF4bixhW2ldKTsKCX0KCWlmKG1heG4lMj09MCAmJiBtYXhuPj0xKXttYXhuLS07fQoJY291dDw8bWF4bjw8ZW5kbDsKCXJldHVybiAwOwp9