s = input().strip()
dp = [0] * (len(s) + 1)
dp[1] = ord(s[0]) - 96
for i in range(2,len(s) + 1):
dp[i] = max(dp[i - 2] + ord(s[i - 1]) - 96,dp[i - 1])
print(dp[len(s)])
#第I题:样例输入第一行为"4 4"
#二分答案 + 区间合并
def check(t):#判断t时刻 是否能让管道全部检测到水
brr = []#每个在t时刻 打开的阀门的左右区间 宽度
for i in range(n):
if arr[i][0] > t:break
Si,Li = arr[i]
#保持l最小是1 r最大是Len 超过就没有必要判断了
l,r = max(1,Li - (t - Si)),min(Len,Li + (t - Si))
brr.append((l,r))
brr.sort(key=lambda x:x[0])#按左端点排序
#区间合并
end = 0
for l,r in brr:
if l - end > 1:return False
end = max(end,r)
if end == Len:return True
return end == Len
def main():
l,r = 1,Len + arr[-1][0] + 100
ans = r
while l <= r:
mid = (l + r) // 2
if check(mid):ans = mid;r = mid - 1
else:l = mid + 1
return ans
n,Len = ma