#include #include #include #include #include #include #include #include #define REP(i,k,n) for(int i=k;i P; map m; bool check() { if(m['h'] >= 1 && m['e'] >= 1 && m['l'] >= 3 && m['o'] >= 2 && m['w'] >= 1 && m['r'] >= 1 && m['d'] >= 1) return true; return false; } int main() { rep(i,26) { char c = 'a' + i; ll x; cin >> x; m[c] = x; } if(check()) { ll ans = m['h'] * m['e'] * m['w'] * m['r'] * m['d']; ll t = m['o']/2; ans *= t * (m['o'] - t); ll vmax = 0; rep(i,m['l']+1) { vmax = max(vmax, i*(i-1)/2 * (m['l']-i)); } ans *= vmax; cout << ans << endl; } else { cout << 0 << endl; } return 0; }