#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=20;
int dp[1<<maxn],vis[maxn],mask,cnt,ans;
char s[1000005];
int main()
{
scanf("%s",s);
for(int i=0;i<strlen(s);i++)
{
mask=0;
cnt=0;
memset(vis,0,sizeof(vis));
for(int j=i;j<strlen(s);j++)
{
if(vis[s[j]-'a'])
break;
vis[s[j]-'a']=1;
mask|=1<<(s[j]-'a');
dp[mask]=++cnt;
}
}
for(int i=0;i<(1<<maxn);i++)
for(int j=0;j<maxn;j++)
if(i&(1<<j))
dp[i]=max(dp[i],dp[i^(1<<j)]);
for(int i=0;i<(1<<maxn);i++)
ans=max(ans,dp[i]+dp[i^((1<<maxn)-1)]);
printf("%d\n",ans);
return 0;
}