DZY loves collecting special strings which only contain lowercase letters. For each lowercase letter $*c*$ DZY knows its value $*w*_{*c*}$. For each special string $*s* = *s*_{1}*s*_{2}... *s*_{|*s*|}$ ($|*s*|$ is the length of the string) he represents its value with a function $*f*(*s*)$, where

Now DZY has a string $*s*$. He wants to insert $*k*$ lowercase letters into this string in order to get the largest possible value of the resulting string. Can you help him calculate the largest possible value he could get?
Input
The first line contains a single string $*s* (1 ≤ |*s*| ≤ 10^{3})$.
The second line contains a single integer $*k* (0 ≤ *k* ≤ 10^{3})$.
The third line contains twenty-six integers from $*w*_{*a*}$ to $*w*_{*z*}$. Each such number is non-negative and doesn't exceed $1000$.
Output
Print a single integer — the largest possible value of the resulting string DZY could get.
Note
In the test sample DZY can obtain "abcbbc", $*value* = 1·1 + 2·2 + 3·2 + 4·2 + 5·2 + 6·2 = 41$.
样例
abc
3
1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
41
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。