#include #include typedef long long ll; ll cs[26]; ll at(char c){ return cs[c-'a']; } int main(){ for(int i=0;i<26;i++){ scanf("%lld", cs+i); // printf("%c: %lld\n", 'a'+i, cs[i]); } if(at('h') >= 1 && at('e') >= 1 && at('l') >= 3 && at('o') >= 2 && at('w') >= 1 && at('r') >= 1 && at('d') >= 1){ ll mx = 0; for(int x=2;at('l')-x>0;x++){ mx = std::max(mx, at('h') * at('e') * (at('o')/2) * ((at('o')+1)/2) * at('w') * at('r') * at('d') * x * (x-1) / 2 * (at('l')-x)); } printf("%lld\n", mx); }else{ puts("0"); } }