improve GenerateParenthesis