optimal parenthization