variant E { | X | Y public override ToString() : string { // match(this) // { | X => "X" | _ => "O" // } } }