Currently, the message generation distribution is fair, unless: 1) the first expression in OneOf series is OneOf in parentheses `("1" | "2") | "3" | ...` will likely show unexpected results 2) the last expression in OneOf series is OneOf in parentheses `"1" | "2" | ("3" | "4")` will likely show unexpected results Proposed solution: make parentheses into a special expression type and analyze them accordingly.