match x: case ([x] | x): pass case (x | [x]): pass case (([x] | x) | [x]): pass case ((x | [x]) | [x]): pass