--- source: crates/ruff_python_parser/tests/fixtures.rs input_file: crates/ruff_python_parser/resources/valid/statement/match.py --- ## AST ``` Module( ModModule { node_index: AtomicNodeIndex(..), range: 0..5770, body: [ Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 67..103, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 73..74, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 80..103, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 85..88, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 85..88, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 86..88, value: Complex { real: 0.0, imag: 0.0, }, }, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 98..103, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 98..99, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 102..103, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 126..167, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 132..133, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 139..167, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 144..152, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 144..149, id: Name("bytes"), ctx: Load, }, ), arguments: PatternArguments { range: 149..152, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 150..151, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 150..151, node_index: AtomicNodeIndex(..), }, ), }, ), ], keywords: [], }, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 162..167, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 162..163, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 166..167, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 190..260, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 196..197, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 203..229, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 208..209, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 208..209, value: Int( 0, ), }, ), }, ), guard: Some( NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 213..214, value: Int( 0, ), }, ), ), body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 224..229, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 224..225, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 228..229, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 234..260, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 239..240, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 239..240, value: Int( 0, ), }, ), }, ), guard: Some( NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 244..245, value: Int( 1, ), }, ), ), body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 255..260, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 255..256, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 259..260, value: Int( 1, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 283..332, subject: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 289..290, value: Int( 3, ), }, ), cases: [ MatchCase { range: 296..332, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 301..314, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 301..302, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 301..302, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 305..306, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 305..306, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 309..310, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 309..310, value: Int( 2, ), }, ), }, ), MatchValue( PatternMatchValue { range: 313..314, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 313..314, value: Int( 3, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 324..332, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 324..325, id: Name("x"), ctx: Store, }, ), ], value: BooleanLiteral( ExprBooleanLiteral { node_index: AtomicNodeIndex(..), range: 328..332, value: true, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 355..403, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 361..362, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 368..403, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 373..388, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 373..379, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 374..375, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 374..375, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 377..378, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 377..378, value: Int( 1, ), }, ), }, ), ], }, ), MatchSequence( PatternMatchSequence { range: 382..388, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 383..384, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 383..384, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 386..387, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 386..387, value: Int( 0, ), }, ), }, ), ], }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 398..403, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 398..399, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 402..403, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 445..523, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 451..452, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 458..489, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 463..467, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 464..466, node_index: AtomicNodeIndex(..), name: None, }, ), ], }, ), guard: None, body: [ Return( StmtReturn { node_index: AtomicNodeIndex(..), range: 477..489, value: Some( StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 484..489, value: StringLiteralValue { inner: Single( StringLiteral { range: 484..489, node_index: AtomicNodeIndex(..), value: "seq", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ), }, ), ], }, MatchCase { range: 494..523, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 499..501, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), guard: None, body: [ Return( StmtReturn { node_index: AtomicNodeIndex(..), range: 511..523, value: Some( StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 518..523, value: StringLiteralValue { inner: Single( StringLiteral { range: 518..523, node_index: AtomicNodeIndex(..), value: "map", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 546..714, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 552..553, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 559..594, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 564..579, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 565..566, value: Int( 0, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 568..578, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 569..570, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 569..570, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 572..573, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 572..573, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 575..577, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), ], rest: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 589..594, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 589..590, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 593..594, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 599..687, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 604..672, node_index: AtomicNodeIndex(..), patterns: [ MatchMapping( PatternMatchMapping { range: 604..626, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 605..606, value: Int( 0, ), }, ), ], patterns: [ MatchOr( PatternMatchOr { range: 608..625, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 608..618, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 609..610, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 609..610, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 612..613, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 612..613, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 615..617, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), MatchSingleton( PatternMatchSingleton { range: 621..625, node_index: AtomicNodeIndex(..), value: True, }, ), ], }, ), ], rest: None, }, ), MatchMapping( PatternMatchMapping { range: 629..638, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 630..631, value: Int( 1, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 633..637, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 634..636, node_index: AtomicNodeIndex(..), patterns: [], }, ), ], }, ), ], rest: None, }, ), MatchMapping( PatternMatchMapping { range: 641..656, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 642..643, value: Int( 0, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 645..655, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 646..647, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 646..647, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 649..650, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 649..650, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 652..654, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), ], rest: None, }, ), MatchSequence( PatternMatchSequence { range: 659..661, node_index: AtomicNodeIndex(..), patterns: [], }, ), MatchValue( PatternMatchValue { range: 664..667, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 664..667, value: StringLiteralValue { inner: Single( StringLiteral { range: 664..667, node_index: AtomicNodeIndex(..), value: "X", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), MatchMapping( PatternMatchMapping { range: 670..672, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 682..687, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 682..683, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 686..687, value: Int( 1, ), }, ), }, ), ], }, MatchCase { range: 692..714, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 697..699, node_index: AtomicNodeIndex(..), patterns: [], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 709..714, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 709..710, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 713..714, value: Int( 2, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 737..782, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 743..744, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 750..782, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 755..767, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 755..767, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 755..759, value: Float( 0.25, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 762..767, value: Complex { real: 0.0, imag: 1.75, }, }, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 777..782, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 777..778, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 781..782, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 805..841, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 811..812, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 818..841, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 823..826, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 823..826, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 824..826, value: Complex { real: 0.0, imag: 0.0, }, }, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 836..841, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 836..837, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 840..841, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 864..913, subject: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 870..871, value: Int( 4, ), }, ), cases: [ MatchCase { range: 877..913, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 882..895, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 882..883, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 882..883, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 886..887, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 886..887, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 890..891, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 890..891, value: Int( 2, ), }, ), }, ), MatchValue( PatternMatchValue { range: 894..895, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 894..895, value: Int( 3, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 905..913, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 905..906, id: Name("x"), ctx: Store, }, ), ], value: BooleanLiteral( ExprBooleanLiteral { node_index: AtomicNodeIndex(..), range: 909..913, value: true, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 936..975, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 942..943, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 949..975, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 954..955, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 954..955, value: Int( 0, ), }, ), }, ), guard: Some( Name( ExprName { node_index: AtomicNodeIndex(..), range: 959..960, id: Name("x"), ctx: Load, }, ), ), body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 970..975, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 970..971, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 974..975, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 998..1098, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1004..1005, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1011..1037, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 1016..1022, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1017..1018, value: Int( 1, ), }, ), ], patterns: [ MatchValue( PatternMatchValue { range: 1020..1021, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1020..1021, value: Int( 0, ), }, ), }, ), ], rest: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1032..1037, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1032..1033, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1036..1037, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 1042..1068, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 1047..1053, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1048..1049, value: Int( 0, ), }, ), ], patterns: [ MatchValue( PatternMatchValue { range: 1051..1052, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1051..1052, value: Int( 0, ), }, ), }, ), ], rest: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1063..1068, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1063..1064, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1067..1068, value: Int( 1, ), }, ), }, ), ], }, MatchCase { range: 1073..1098, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 1078..1083, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: Some( Identifier { id: Name("z"), range: 1081..1082, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1093..1098, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1093..1094, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1097..1098, value: Int( 2, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1121..1162, subject: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 1127..1132, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1127..1130, id: Name("Seq"), ctx: Load, }, ), arguments: Arguments { range: 1130..1132, node_index: AtomicNodeIndex(..), args: [], keywords: [], }, }, ), cases: [ MatchCase { range: 1138..1162, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1143..1147, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 1144..1146, node_index: AtomicNodeIndex(..), name: None, }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1157..1162, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1157..1158, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1161..1162, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1185..1245, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1191..1192, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1198..1219, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 1203..1204, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1203..1204, value: Int( 1, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1214..1219, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1214..1215, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1218..1219, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 1224..1245, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 1229..1230, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1229..1230, value: Int( 1, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1240..1245, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1240..1241, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1244..1245, value: Int( 1, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1268..1315, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1274..1275, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1281..1315, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 1286..1298, node_index: AtomicNodeIndex(..), keys: [ StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 1287..1292, value: StringLiteralValue { inner: Single( StringLiteral { range: 1287..1292, node_index: AtomicNodeIndex(..), value: "foo", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ], patterns: [ MatchAs( PatternMatchAs { range: 1294..1297, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("bar"), range: 1294..1297, node_index: AtomicNodeIndex(..), }, ), }, ), ], rest: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1308..1315, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1308..1309, id: Name("y"), ctx: Store, }, ), ], value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1312..1315, id: Name("bar"), ctx: Load, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1338..1392, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 1344..1353, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1345..1346, value: Int( 0, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1348..1349, value: Int( 1, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1351..1352, value: Int( 2, ), }, ), ], ctx: Load, parenthesized: true, }, ), cases: [ MatchCase { range: 1359..1392, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1364..1377, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 1365..1366, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1365..1366, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 1368..1369, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1368..1369, value: Int( 1, ), }, ), }, ), MatchStar( PatternMatchStar { range: 1371..1373, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("x"), range: 1372..1373, node_index: AtomicNodeIndex(..), }, ), }, ), MatchValue( PatternMatchValue { range: 1375..1376, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1375..1376, value: Int( 2, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1387..1392, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1387..1388, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1391..1392, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1415..1529, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1421..1422, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1428..1451, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1433..1436, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 1434..1435, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1434..1435, value: Int( 0, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1446..1451, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1446..1447, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1450..1451, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 1456..1498, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1461..1467, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 1462..1463, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1462..1463, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 1465..1466, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1465..1466, value: Int( 0, ), }, ), }, ), ], }, ), guard: Some( Named( ExprNamed { node_index: AtomicNodeIndex(..), range: 1472..1482, target: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1472..1473, id: Name("x"), ctx: Store, }, ), value: Subscript( ExprSubscript { node_index: AtomicNodeIndex(..), range: 1477..1482, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1477..1478, id: Name("x"), ctx: Load, }, ), slice: Slice( ExprSlice { node_index: AtomicNodeIndex(..), range: 1479..1481, lower: None, upper: Some( NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1480..1481, value: Int( 0, ), }, ), ), step: None, }, ), ctx: Load, }, ), }, ), ), body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1493..1498, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1493..1494, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1497..1498, value: Int( 1, ), }, ), }, ), ], }, MatchCase { range: 1503..1529, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1508..1514, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 1509..1510, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1509..1510, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 1512..1513, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1512..1513, value: Int( 0, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1524..1529, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1524..1525, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1528..1529, value: Int( 2, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1552..1595, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1558..1559, id: Name("w"), ctx: Load, }, ), cases: [ MatchCase { range: 1565..1595, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1570..1580, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 1571..1572, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("x"), range: 1571..1572, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 1574..1575, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 1574..1575, node_index: AtomicNodeIndex(..), }, ), }, ), MatchStar( PatternMatchStar { range: 1577..1579, node_index: AtomicNodeIndex(..), name: None, }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1590..1595, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1590..1591, id: Name("z"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1594..1595, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1618..1664, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1624..1625, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1631..1664, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 1636..1649, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 1636..1649, left: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 1636..1641, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1637..1641, value: Float( 0.25, ), }, ), }, ), op: Sub, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1644..1649, value: Complex { real: 0.0, imag: 1.75, }, }, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1659..1664, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1659..1660, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1663..1664, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1687..1726, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 1693..1697, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1694..1695, id: Name("x"), ctx: Load, }, ), ], ctx: Load, parenthesized: true, }, ), cases: [ MatchCase { range: 1703..1726, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 1708..1711, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 1709..1710, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 1709..1710, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1721..1726, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1721..1722, id: Name("z"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1725..1726, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1749..1789, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1755..1756, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1762..1789, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 1767..1774, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 1767..1774, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 1767..1772, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 1767..1770, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1767..1768, id: Name("A"), ctx: Load, }, ), attr: Identifier { id: Name("B"), range: 1769..1770, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), attr: Identifier { id: Name("C"), range: 1771..1772, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), attr: Identifier { id: Name("D"), range: 1773..1774, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1784..1789, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1784..1785, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1788..1789, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1812..1849, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1818..1819, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1825..1849, node_index: AtomicNodeIndex(..), pattern: MatchSingleton( PatternMatchSingleton { range: 1830..1834, node_index: AtomicNodeIndex(..), value: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1844..1849, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1844..1845, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1848..1849, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1872..1906, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1878..1879, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1885..1906, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 1890..1891, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1890..1891, value: Int( 0, ), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1901..1906, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1901..1902, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1905..1906, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1929..1967, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1935..1936, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 1942..1967, node_index: AtomicNodeIndex(..), pattern: MatchSingleton( PatternMatchSingleton { range: 1947..1952, node_index: AtomicNodeIndex(..), value: False, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 1962..1967, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 1962..1963, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 1966..1967, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 1990..2081, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 1996..1997, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 2003..2025, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2008..2010, node_index: AtomicNodeIndex(..), patterns: [], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2020..2025, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2020..2021, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2024..2025, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 2030..2054, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2035..2039, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 2036..2038, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 2036..2038, value: StringLiteralValue { inner: Single( StringLiteral { range: 2036..2038, node_index: AtomicNodeIndex(..), value: "", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2049..2054, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2049..2050, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2053..2054, value: Int( 1, ), }, ), }, ), ], }, MatchCase { range: 2059..2081, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 2064..2066, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 2064..2066, value: StringLiteralValue { inner: Single( StringLiteral { range: 2064..2066, node_index: AtomicNodeIndex(..), value: "", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2076..2081, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2076..2077, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2080..2081, value: Int( 2, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2104..2138, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2110..2111, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 2117..2138, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 2122..2123, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 2122..2123, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2133..2138, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2133..2134, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2137..2138, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2161..2207, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2167..2168, id: Name("w"), ctx: Load, }, ), cases: [ MatchCase { range: 2174..2207, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2179..2192, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 2180..2181, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("x"), range: 2180..2181, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 2183..2184, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 2183..2184, node_index: AtomicNodeIndex(..), }, ), }, ), MatchStar( PatternMatchStar { range: 2186..2191, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("rest"), range: 2187..2191, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2202..2207, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2202..2203, id: Name("z"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2206..2207, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2230..2307, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2236..2237, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 2243..2307, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 2248..2278, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 2249..2255, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 2249..2250, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2249..2250, value: Int( 0, ), }, ), }, ), ), name: Some( Identifier { id: Name("z"), range: 2254..2255, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 2260..2266, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 2260..2261, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2260..2261, value: Int( 1, ), }, ), }, ), ), name: Some( Identifier { id: Name("z"), range: 2265..2266, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 2271..2277, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 2271..2272, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2271..2272, value: Int( 2, ), }, ), }, ), ), name: Some( Identifier { id: Name("z"), range: 2276..2277, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: Some( Compare( ExprCompare { node_index: AtomicNodeIndex(..), range: 2282..2292, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2282..2283, id: Name("z"), ctx: Load, }, ), ops: [ Eq, ], comparators: [ BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 2287..2292, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2287..2288, id: Name("x"), ctx: Load, }, ), op: Mod, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2291..2292, value: Int( 2, ), }, ), }, ), ], }, ), ), body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2302..2307, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2302..2303, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2306..2307, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2330..2499, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2336..2337, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 2343..2378, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 2348..2363, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2349..2350, value: Int( 0, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 2352..2362, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 2353..2354, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2353..2354, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 2356..2357, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2356..2357, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 2359..2361, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), ], rest: None, }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2373..2378, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2373..2374, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2377..2378, value: Int( 0, ), }, ), }, ), ], }, MatchCase { range: 2383..2472, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 2388..2457, node_index: AtomicNodeIndex(..), patterns: [ MatchMapping( PatternMatchMapping { range: 2388..2411, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2389..2390, value: Int( 0, ), }, ), ], patterns: [ MatchOr( PatternMatchOr { range: 2392..2410, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 2392..2402, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 2393..2394, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2393..2394, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 2396..2397, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2396..2397, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 2399..2401, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), MatchSingleton( PatternMatchSingleton { range: 2405..2410, node_index: AtomicNodeIndex(..), value: False, }, ), ], }, ), ], rest: None, }, ), MatchMapping( PatternMatchMapping { range: 2414..2423, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2415..2416, value: Int( 1, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 2418..2422, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 2419..2421, node_index: AtomicNodeIndex(..), patterns: [], }, ), ], }, ), ], rest: None, }, ), MatchMapping( PatternMatchMapping { range: 2426..2441, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2427..2428, value: Int( 0, ), }, ), ], patterns: [ MatchSequence( PatternMatchSequence { range: 2430..2440, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 2431..2432, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2431..2432, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 2434..2435, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2434..2435, value: Int( 2, ), }, ), }, ), MatchMapping( PatternMatchMapping { range: 2437..2439, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), ], rest: None, }, ), MatchSequence( PatternMatchSequence { range: 2444..2446, node_index: AtomicNodeIndex(..), patterns: [], }, ), MatchValue( PatternMatchValue { range: 2449..2452, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 2449..2452, value: StringLiteralValue { inner: Single( StringLiteral { range: 2449..2452, node_index: AtomicNodeIndex(..), value: "X", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), MatchMapping( PatternMatchMapping { range: 2455..2457, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: None, }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2467..2472, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2467..2468, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2471..2472, value: Int( 1, ), }, ), }, ), ], }, MatchCase { range: 2477..2499, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2482..2484, node_index: AtomicNodeIndex(..), patterns: [], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2494..2499, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2494..2495, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2498..2499, value: Int( 2, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2522..2568, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 2528..2537, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2529..2530, value: Int( 0, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2532..2533, value: Int( 1, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2535..2536, value: Int( 2, ), }, ), ], ctx: Load, parenthesized: true, }, ), cases: [ MatchCase { range: 2543..2568, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2548..2553, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 2548..2549, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2548..2549, value: Int( 0, ), }, ), }, ), MatchStar( PatternMatchStar { range: 2551..2553, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("x"), range: 2552..2553, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2563..2568, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2563..2564, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2567..2568, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2591..2638, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 2597..2606, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2598..2599, value: Int( 0, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2601..2602, value: Int( 1, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2604..2605, value: Int( 2, ), }, ), ], ctx: Load, parenthesized: true, }, ), cases: [ MatchCase { range: 2612..2638, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2617..2623, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 2617..2619, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("x"), range: 2618..2619, node_index: AtomicNodeIndex(..), }, ), }, ), MatchValue( PatternMatchValue { range: 2621..2622, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2621..2622, value: Int( 2, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2633..2638, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2633..2634, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2637..2638, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2661..2697, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 2667..2669, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2667..2668, id: Name("x"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 2675..2697, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2680..2682, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 2680..2681, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 2680..2681, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2692..2697, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2692..2693, id: Name("z"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2696..2697, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2720..2760, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 2726..2730, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2726..2727, id: Name("w"), ctx: Load, }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 2729..2730, id: Name("x"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 2736..2760, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2741..2745, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 2741..2742, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 2741..2742, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 2744..2745, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 2744..2745, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2755..2760, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2755..2756, id: Name("v"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2759..2760, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2783..2829, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 2789..2796, elts: [ Named( ExprNamed { node_index: AtomicNodeIndex(..), range: 2789..2795, target: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2789..2790, id: Name("w"), ctx: Store, }, ), value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2794..2795, id: Name("x"), ctx: Load, }, ), }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 2802..2829, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 2807..2814, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 2807..2813, node_index: AtomicNodeIndex(..), pattern: Some( MatchAs( PatternMatchAs { range: 2807..2808, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("y"), range: 2807..2808, node_index: AtomicNodeIndex(..), }, ), }, ), ), name: Some( Identifier { id: Name("v"), range: 2812..2813, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 2824..2829, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 2824..2825, id: Name("z"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2828..2829, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2831..2952, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2837..2838, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 2927..2952, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 2932..2938, node_index: AtomicNodeIndex(..), value: FString( ExprFString { node_index: AtomicNodeIndex(..), range: 2932..2938, value: FStringValue { inner: Single( FString( FString { range: 2932..2938, node_index: AtomicNodeIndex(..), elements: [ Interpolation( InterpolatedElement { range: 2934..2937, node_index: AtomicNodeIndex(..), expression: Name( ExprName { node_index: AtomicNodeIndex(..), range: 2935..2936, id: Name("y"), ctx: Load, }, ), debug_text: None, conversion: None, format_spec: None, }, ), ], flags: FStringFlags { quote_style: Double, prefix: Regular, triple_quoted: false, }, }, ), ), }, }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 2948..2952, }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 2953..3025, subject: Dict( ExprDict { node_index: AtomicNodeIndex(..), range: 2959..2970, items: [ DictItem { key: Some( StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 2960..2966, value: StringLiteralValue { inner: Single( StringLiteral { range: 2960..2966, node_index: AtomicNodeIndex(..), value: "test", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 2968..2969, value: Int( 1, ), }, ), }, ], }, ), cases: [ MatchCase { range: 2976..3025, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 2981..3004, node_index: AtomicNodeIndex(..), keys: [], patterns: [], rest: Some( Identifier { id: Name("rest"), range: 2993..2997, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3014..3025, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 3014..3025, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3014..3019, id: Name("print"), ctx: Load, }, ), arguments: Arguments { range: 3019..3025, node_index: AtomicNodeIndex(..), args: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3020..3024, id: Name("rest"), ctx: Load, }, ), ], keywords: [], }, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3026..3129, subject: Dict( ExprDict { node_index: AtomicNodeIndex(..), range: 3032..3049, items: [ DictItem { key: Some( StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 3033..3040, value: StringLiteralValue { inner: Single( StringLiteral { range: 3033..3040, node_index: AtomicNodeIndex(..), value: "label", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 3042..3048, value: StringLiteralValue { inner: Single( StringLiteral { range: 3042..3048, node_index: AtomicNodeIndex(..), value: "test", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ], }, ), cases: [ MatchCase { range: 3055..3129, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 3060..3107, node_index: AtomicNodeIndex(..), keys: [ StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 3070..3077, value: StringLiteralValue { inner: Single( StringLiteral { range: 3070..3077, node_index: AtomicNodeIndex(..), value: "label", flags: StringLiteralFlags { quote_style: Double, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), ], patterns: [ MatchAs( PatternMatchAs { range: 3079..3100, node_index: AtomicNodeIndex(..), pattern: Some( MatchOr( PatternMatchOr { range: 3079..3091, node_index: AtomicNodeIndex(..), patterns: [ MatchClass( PatternMatchClass { range: 3079..3084, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3079..3082, id: Name("str"), ctx: Load, }, ), arguments: PatternArguments { range: 3082..3084, node_index: AtomicNodeIndex(..), patterns: [], keywords: [], }, }, ), MatchSingleton( PatternMatchSingleton { range: 3087..3091, node_index: AtomicNodeIndex(..), value: None, }, ), ], }, ), ), name: Some( Identifier { id: Name("label"), range: 3095..3100, node_index: AtomicNodeIndex(..), }, ), }, ), ], rest: None, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3117..3129, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 3117..3129, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3117..3122, id: Name("print"), ctx: Load, }, ), arguments: Arguments { range: 3122..3129, node_index: AtomicNodeIndex(..), args: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3123..3128, id: Name("label"), ctx: Load, }, ), ], keywords: [], }, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3130..3170, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3136..3137, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3143..3170, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 3148..3155, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 3149..3150, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3149..3150, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3152..3153, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3152..3153, value: Int( 1, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 3165..3170, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3165..3166, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3169..3170, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3171..3211, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3177..3178, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3184..3211, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 3189..3196, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 3190..3191, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3190..3191, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3193..3194, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3193..3194, value: Int( 1, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 3206..3211, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3206..3207, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3210..3211, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3212..3249, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3218..3219, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3225..3249, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 3230..3234, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 3231..3232, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3231..3232, value: Int( 0, ), }, ), }, ), ], }, ), guard: None, body: [ Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 3244..3249, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3244..3245, id: Name("y"), ctx: Store, }, ), ], value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3248..3249, value: Int( 0, ), }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3250..3284, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 3256..3258, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3256..3257, id: Name("x"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 3264..3284, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 3269..3270, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 3269..3270, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 3280..3284, }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3285..3321, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 3291..3295, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3291..3292, id: Name("x"), ctx: Load, }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 3294..3295, id: Name("y"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 3301..3321, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 3306..3307, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 3306..3307, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 3317..3321, }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3322..3359, subject: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 3328..3333, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 3328..3329, id: Name("x"), ctx: Load, }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 3331..3332, id: Name("y"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), cases: [ MatchCase { range: 3339..3359, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 3344..3345, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("z"), range: 3344..3345, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 3355..3359, }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3385..3475, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3391..3392, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3398..3420, node_index: AtomicNodeIndex(..), pattern: MatchSingleton( PatternMatchSingleton { range: 3403..3407, node_index: AtomicNodeIndex(..), value: None, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3417..3420, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3417..3420, }, ), }, ), ], }, MatchCase { range: 3425..3447, node_index: AtomicNodeIndex(..), pattern: MatchSingleton( PatternMatchSingleton { range: 3430..3434, node_index: AtomicNodeIndex(..), value: True, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3444..3447, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3444..3447, }, ), }, ), ], }, MatchCase { range: 3452..3475, node_index: AtomicNodeIndex(..), pattern: MatchSingleton( PatternMatchSingleton { range: 3457..3462, node_index: AtomicNodeIndex(..), value: False, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3472..3475, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3472..3475, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3497..3821, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3503..3504, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3510..3531, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3515..3518, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 3515..3518, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3515..3516, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 3517..3518, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3528..3531, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3528..3531, }, ), }, ), ], }, MatchCase { range: 3536..3559, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3541..3546, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 3541..3546, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 3541..3544, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3541..3542, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 3543..3544, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), attr: Identifier { id: Name("c"), range: 3545..3546, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3556..3559, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3556..3559, }, ), }, ), ], }, MatchCase { range: 3564..3584, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3569..3571, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 3569..3571, value: StringLiteralValue { inner: Single( StringLiteral { range: 3569..3571, node_index: AtomicNodeIndex(..), value: "", flags: StringLiteralFlags { quote_style: Single, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3581..3584, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3581..3584, }, ), }, ), ], }, MatchCase { range: 3589..3610, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3594..3597, node_index: AtomicNodeIndex(..), value: BytesLiteral( ExprBytesLiteral { node_index: AtomicNodeIndex(..), range: 3594..3597, value: BytesLiteralValue { inner: Single( BytesLiteral { range: 3594..3597, node_index: AtomicNodeIndex(..), value: [], flags: BytesLiteralFlags { quote_style: Single, prefix: Regular, triple_quoted: false, }, }, ), }, }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3607..3610, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3607..3610, }, ), }, ), ], }, MatchCase { range: 3615..3634, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3620..3621, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3620..3621, value: Int( 1, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3631..3634, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3631..3634, }, ), }, ), ], }, MatchCase { range: 3639..3660, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3644..3647, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3644..3647, value: Float( 1.0, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3657..3660, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3657..3660, }, ), }, ), ], }, MatchCase { range: 3665..3687, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3670..3674, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3670..3674, value: Complex { real: 0.0, imag: 1.0, }, }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3684..3687, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3684..3687, }, ), }, ), ], }, MatchCase { range: 3692..3716, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3697..3703, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 3697..3703, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3697..3698, value: Int( 1, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3701..3703, value: Complex { real: 0.0, imag: 1.0, }, }, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3713..3716, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3713..3716, }, ), }, ), ], }, MatchCase { range: 3721..3741, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3726..3728, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 3726..3728, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3727..3728, value: Int( 1, ), }, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3738..3741, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3738..3741, }, ), }, ), ], }, MatchCase { range: 3746..3767, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3751..3754, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 3751..3754, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3752..3754, value: Float( 1.0, ), }, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3764..3767, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3764..3767, }, ), }, ), ], }, MatchCase { range: 3772..3795, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3777..3782, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 3777..3782, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3778..3782, value: Int( 1, ), }, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3792..3795, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3792..3795, }, ), }, ), ], }, MatchCase { range: 3800..3821, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 3806..3807, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3806..3807, value: Int( 1, ), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3818..3821, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3818..3821, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3840..3927, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3846..3847, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3853..3876, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 3858..3863, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 3858..3859, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3858..3859, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3862..3863, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3862..3863, value: Int( 2, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3873..3876, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3873..3876, }, ), }, ), ], }, MatchCase { range: 3881..3927, node_index: AtomicNodeIndex(..), pattern: MatchOr( PatternMatchOr { range: 3886..3914, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 3886..3888, node_index: AtomicNodeIndex(..), value: StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 3886..3888, value: StringLiteralValue { inner: Single( StringLiteral { range: 3886..3888, node_index: AtomicNodeIndex(..), value: "", flags: StringLiteralFlags { quote_style: Single, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), }, ), MatchValue( PatternMatchValue { range: 3891..3894, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3891..3894, value: Float( 1.1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3897..3899, node_index: AtomicNodeIndex(..), value: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 3897..3899, op: USub, operand: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3898..3899, value: Int( 1, ), }, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3902..3908, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 3902..3908, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3902..3903, value: Int( 1, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 3906..3908, value: Complex { real: 0.0, imag: 1.0, }, }, ), }, ), }, ), MatchValue( PatternMatchValue { range: 3911..3914, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 3911..3914, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3911..3912, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 3913..3914, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3924..3927, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3924..3927, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3946..3978, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3952..3953, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3959..3978, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 3964..3965, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("a"), range: 3964..3965, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 3975..3978, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 3975..3978, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 3979..4016, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 3985..3986, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 3992..4016, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 3997..4003, node_index: AtomicNodeIndex(..), pattern: Some( MatchAs( PatternMatchAs { range: 3997..3998, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("a"), range: 3997..3998, node_index: AtomicNodeIndex(..), }, ), }, ), ), name: Some( Identifier { id: Name("b"), range: 4002..4003, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4013..4016, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4013..4016, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4017..4157, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4023..4024, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 4030..4060, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4035..4047, node_index: AtomicNodeIndex(..), pattern: Some( MatchOr( PatternMatchOr { range: 4035..4040, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4035..4036, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4035..4036, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4039..4040, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4039..4040, value: Int( 2, ), }, ), }, ), ], }, ), ), name: Some( Identifier { id: Name("two"), range: 4044..4047, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4057..4060, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4057..4060, }, ), }, ), ], }, MatchCase { range: 4065..4096, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4070..4083, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 4070..4076, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 4070..4076, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4070..4071, value: Int( 1, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4074..4076, value: Complex { real: 0.0, imag: 3.0, }, }, ), }, ), }, ), ), name: Some( Identifier { id: Name("sum"), range: 4080..4083, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4093..4096, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4093..4096, }, ), }, ), ], }, MatchCase { range: 4101..4128, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4106..4115, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 4106..4109, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 4106..4109, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4106..4107, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 4108..4109, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), ), name: Some( Identifier { id: Name("ab"), range: 4113..4115, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4125..4128, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4125..4128, }, ), }, ), ], }, MatchCase { range: 4133..4157, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4138..4144, node_index: AtomicNodeIndex(..), pattern: Some( MatchAs( PatternMatchAs { range: 4138..4139, node_index: AtomicNodeIndex(..), pattern: None, name: None, }, ), ), name: Some( Identifier { id: Name("x"), range: 4143..4144, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4154..4157, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4154..4157, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4158..4190, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4164..4165, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 4171..4190, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4176..4177, node_index: AtomicNodeIndex(..), pattern: None, name: None, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4187..4190, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4187..4190, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4215..4466, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4221..4222, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 4228..4253, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4233..4240, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4233..4234, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4233..4234, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4236..4237, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4236..4237, value: Int( 2, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4239..4240, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4239..4240, value: Int( 3, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4250..4253, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4250..4253, }, ), }, ), ], }, MatchCase { range: 4258..4286, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4263..4273, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4264..4265, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4264..4265, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4267..4268, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4267..4268, value: Int( 2, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4270..4271, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4270..4271, value: Int( 3, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4283..4286, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4283..4286, }, ), }, ), ], }, MatchCase { range: 4291..4331, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4296..4318, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4297..4303, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 4297..4303, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4297..4298, value: Int( 1, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4301..4303, value: Complex { real: 0.0, imag: 2.0, }, }, ), }, ), }, ), MatchAs( PatternMatchAs { range: 4305..4306, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("a"), range: 4305..4306, node_index: AtomicNodeIndex(..), }, ), }, ), MatchSingleton( PatternMatchSingleton { range: 4308..4312, node_index: AtomicNodeIndex(..), value: None, }, ), MatchValue( PatternMatchValue { range: 4314..4317, node_index: AtomicNodeIndex(..), value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 4314..4317, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4314..4315, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 4316..4317, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4328..4331, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4328..4331, }, ), }, ), ], }, MatchCase { range: 4336..4370, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 4341..4357, node_index: AtomicNodeIndex(..), pattern: Some( MatchSequence( PatternMatchSequence { range: 4341..4352, node_index: AtomicNodeIndex(..), patterns: [ MatchAs( PatternMatchAs { range: 4342..4348, node_index: AtomicNodeIndex(..), pattern: Some( MatchValue( PatternMatchValue { range: 4342..4343, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4342..4343, value: Int( 1, ), }, ), }, ), ), name: Some( Identifier { id: Name("X"), range: 4347..4348, node_index: AtomicNodeIndex(..), }, ), }, ), MatchAs( PatternMatchAs { range: 4350..4351, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("b"), range: 4350..4351, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), ), name: Some( Identifier { id: Name("S"), range: 4356..4357, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4367..4370, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4367..4370, }, ), }, ), ], }, MatchCase { range: 4375..4407, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4380..4394, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4381..4382, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4381..4382, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4384..4385, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4384..4385, value: Int( 2, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4387..4393, node_index: AtomicNodeIndex(..), value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 4387..4393, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4387..4388, value: Int( 3, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4391..4393, value: Complex { real: 0.0, imag: 1.0, }, }, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4404..4407, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4404..4407, }, ), }, ), ], }, MatchCase { range: 4412..4440, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4417..4427, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 4418..4423, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4419..4420, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4419..4420, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4421..4422, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4421..4422, value: Int( 2, ), }, ), }, ), ], }, ), MatchValue( PatternMatchValue { range: 4425..4426, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4425..4426, value: Int( 3, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4437..4440, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4437..4440, }, ), }, ), ], }, MatchCase { range: 4445..4466, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4450..4453, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4451..4452, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4451..4452, value: Int( 1, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4463..4466, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4463..4466, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4487..4616, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4493..4494, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 4500..4521, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4505..4508, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 4505..4507, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("a"), range: 4506..4507, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4518..4521, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4518..4521, }, ), }, ), ], }, MatchCase { range: 4526..4547, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4531..4534, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 4531..4533, node_index: AtomicNodeIndex(..), name: None, }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4544..4547, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4544..4547, }, ), }, ), ], }, MatchCase { range: 4552..4583, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4557..4570, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4558..4559, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4558..4559, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4561..4562, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4561..4562, value: Int( 2, ), }, ), }, ), MatchStar( PatternMatchStar { range: 4564..4569, node_index: AtomicNodeIndex(..), name: Some( Identifier { id: Name("rest"), range: 4565..4569, node_index: AtomicNodeIndex(..), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4580..4583, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4580..4583, }, ), }, ), ], }, MatchCase { range: 4588..4616, node_index: AtomicNodeIndex(..), pattern: MatchSequence( PatternMatchSequence { range: 4593..4603, node_index: AtomicNodeIndex(..), patterns: [ MatchStar( PatternMatchStar { range: 4594..4596, node_index: AtomicNodeIndex(..), name: None, }, ), MatchValue( PatternMatchValue { range: 4598..4599, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4598..4599, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4601..4602, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4601..4602, value: Int( 2, ), }, ), }, ), ], }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4613..4616, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4613..4616, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4638..4910, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4644..4645, id: Name("x"), ctx: Load, }, ), cases: [ MatchCase { range: 4651..4676, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4656..4663, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4656..4661, id: Name("Point"), ctx: Load, }, ), arguments: PatternArguments { range: 4661..4663, node_index: AtomicNodeIndex(..), patterns: [], keywords: [], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4673..4676, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4673..4676, }, ), }, ), ], }, MatchCase { range: 4681..4710, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4686..4697, node_index: AtomicNodeIndex(..), cls: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 4686..4695, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 4686..4689, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4686..4687, id: Name("a"), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 4688..4689, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), attr: Identifier { id: Name("Point"), range: 4690..4695, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), arguments: PatternArguments { range: 4695..4697, node_index: AtomicNodeIndex(..), patterns: [], keywords: [], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4707..4710, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4707..4710, }, ), }, ), ], }, MatchCase { range: 4715..4745, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4720..4732, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4720..4727, id: Name("Point2D"), ctx: Load, }, ), arguments: PatternArguments { range: 4727..4732, node_index: AtomicNodeIndex(..), patterns: [], keywords: [ PatternKeyword { range: 4728..4731, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("x"), range: 4728..4729, node_index: AtomicNodeIndex(..), }, pattern: MatchValue( PatternMatchValue { range: 4730..4731, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4730..4731, value: Int( 0, ), }, ), }, ), }, ], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4742..4745, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4742..4745, }, ), }, ), ], }, MatchCase { range: 4750..4786, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4755..4773, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4755..4762, id: Name("Point2D"), ctx: Load, }, ), arguments: PatternArguments { range: 4762..4773, node_index: AtomicNodeIndex(..), patterns: [], keywords: [ PatternKeyword { range: 4763..4766, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("x"), range: 4763..4764, node_index: AtomicNodeIndex(..), }, pattern: MatchValue( PatternMatchValue { range: 4765..4766, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4765..4766, value: Int( 0, ), }, ), }, ), }, PatternKeyword { range: 4768..4771, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("y"), range: 4768..4769, node_index: AtomicNodeIndex(..), }, pattern: MatchValue( PatternMatchValue { range: 4770..4771, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4770..4771, value: Int( 0, ), }, ), }, ), }, ], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4783..4786, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4783..4786, }, ), }, ), ], }, MatchCase { range: 4791..4822, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4796..4809, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4796..4803, id: Name("Point2D"), ctx: Load, }, ), arguments: PatternArguments { range: 4803..4809, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4804..4805, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4804..4805, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4807..4808, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4807..4808, value: Int( 1, ), }, ), }, ), ], keywords: [], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4819..4822, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4819..4822, }, ), }, ), ], }, MatchCase { range: 4827..4865, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4832..4852, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4832..4839, id: Name("Point2D"), ctx: Load, }, ), arguments: PatternArguments { range: 4839..4852, node_index: AtomicNodeIndex(..), patterns: [ MatchSequence( PatternMatchSequence { range: 4840..4846, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4841..4842, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4841..4842, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4844..4845, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4844..4845, value: Int( 1, ), }, ), }, ), ], }, ), ], keywords: [ PatternKeyword { range: 4848..4851, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("y"), range: 4848..4849, node_index: AtomicNodeIndex(..), }, pattern: MatchValue( PatternMatchValue { range: 4850..4851, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4850..4851, value: Int( 1, ), }, ), }, ), }, ], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4862..4865, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4862..4865, }, ), }, ), ], }, MatchCase { range: 4870..4910, node_index: AtomicNodeIndex(..), pattern: MatchClass( PatternMatchClass { range: 4875..4897, node_index: AtomicNodeIndex(..), cls: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4875..4882, id: Name("Point2D"), ctx: Load, }, ), arguments: PatternArguments { range: 4882..4897, node_index: AtomicNodeIndex(..), patterns: [], keywords: [ PatternKeyword { range: 4883..4891, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("x"), range: 4883..4884, node_index: AtomicNodeIndex(..), }, pattern: MatchSequence( PatternMatchSequence { range: 4885..4891, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 4886..4887, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4886..4887, value: Int( 0, ), }, ), }, ), MatchValue( PatternMatchValue { range: 4889..4890, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4889..4890, value: Int( 1, ), }, ), }, ), ], }, ), }, PatternKeyword { range: 4893..4896, node_index: AtomicNodeIndex(..), attr: Identifier { id: Name("y"), range: 4893..4894, node_index: AtomicNodeIndex(..), }, pattern: MatchValue( PatternMatchValue { range: 4895..4896, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4895..4896, value: Int( 1, ), }, ), }, ), }, ], }, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4907..4910, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4907..4910, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 4934..5028, subject: Named( ExprNamed { node_index: AtomicNodeIndex(..), range: 4940..4946, target: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4940..4941, id: Name("x"), ctx: Store, }, ), value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 4945..4946, id: Name("b"), ctx: Load, }, ), }, ), cases: [ MatchCase { range: 4952..4976, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 4957..4963, node_index: AtomicNodeIndex(..), keys: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 4958..4959, value: Int( 1, ), }, ), ], patterns: [ MatchAs( PatternMatchAs { range: 4961..4962, node_index: AtomicNodeIndex(..), pattern: None, name: None, }, ), ], rest: None, }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 4973..4976, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 4973..4976, }, ), }, ), ], }, MatchCase { range: 4981..5028, node_index: AtomicNodeIndex(..), pattern: MatchMapping( PatternMatchMapping { range: 4986..5015, node_index: AtomicNodeIndex(..), keys: [ StringLiteral( ExprStringLiteral { node_index: AtomicNodeIndex(..), range: 4987..4989, value: StringLiteralValue { inner: Single( StringLiteral { range: 4987..4989, node_index: AtomicNodeIndex(..), value: "", flags: StringLiteralFlags { quote_style: Single, prefix: Empty, triple_quoted: false, }, }, ), }, }, ), NoneLiteral( ExprNoneLiteral { node_index: AtomicNodeIndex(..), range: 4994..4998, }, ), ], patterns: [ MatchAs( PatternMatchAs { range: 4991..4992, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("a"), range: 4991..4992, node_index: AtomicNodeIndex(..), }, ), }, ), MatchSequence( PatternMatchSequence { range: 5000..5006, node_index: AtomicNodeIndex(..), patterns: [ MatchValue( PatternMatchValue { range: 5001..5002, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5001..5002, value: Int( 1, ), }, ), }, ), MatchValue( PatternMatchValue { range: 5004..5005, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5004..5005, value: Int( 2, ), }, ), }, ), ], }, ), ], rest: Some( Identifier { id: Name("rest"), range: 5010..5014, node_index: AtomicNodeIndex(..), }, ), }, ), guard: None, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5025..5028, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 5025..5028, }, ), }, ), ], }, ], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 5046..5106, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5052..5053, id: Name("y"), ctx: Load, }, ), cases: [ MatchCase { range: 5059..5080, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 5064..5065, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("a"), range: 5064..5065, node_index: AtomicNodeIndex(..), }, ), }, ), guard: Some( Named( ExprNamed { node_index: AtomicNodeIndex(..), range: 5069..5075, target: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5069..5070, id: Name("b"), ctx: Store, }, ), value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5074..5075, id: Name("c"), ctx: Load, }, ), }, ), ), body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5077..5080, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 5077..5080, }, ), }, ), ], }, MatchCase { range: 5085..5106, node_index: AtomicNodeIndex(..), pattern: MatchAs( PatternMatchAs { range: 5090..5091, node_index: AtomicNodeIndex(..), pattern: None, name: Some( Identifier { id: Name("e"), range: 5090..5091, node_index: AtomicNodeIndex(..), }, ), }, ), guard: Some( Compare( ExprCompare { node_index: AtomicNodeIndex(..), range: 5096..5101, left: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5096..5097, value: Int( 1, ), }, ), ops: [ Lt, ], comparators: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5100..5101, value: Int( 2, ), }, ), ], }, ), ), body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5103..5106, value: EllipsisLiteral( ExprEllipsisLiteral { node_index: AtomicNodeIndex(..), range: 5103..5106, }, ), }, ), ], }, ], }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5135..5150, value: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5135..5150, elts: [ BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5135..5147, left: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5135..5143, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5135..5140, id: Name("match"), ctx: Load, }, ), op: Mult, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5142..5143, id: Name("a"), ctx: Load, }, ), }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5146..5147, id: Name("b"), ctx: Load, }, ), }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 5149..5150, id: Name("c"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5176..5193, value: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5176..5193, elts: [ BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5176..5190, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5176..5181, id: Name("match"), ctx: Load, }, ), op: Mult, right: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5184..5189, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5184..5185, id: Name("a"), ctx: Load, }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5188..5189, id: Name("b"), ctx: Load, }, ), }, ), }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 5192..5193, id: Name("c"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5219..5236, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5219..5236, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5219..5224, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5225..5236, node_index: AtomicNodeIndex(..), args: [ Starred( ExprStarred { node_index: AtomicNodeIndex(..), range: 5226..5232, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5227..5232, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5227..5228, id: Name("a"), ctx: Load, }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5231..5232, id: Name("b"), ctx: Load, }, ), }, ), ctx: Load, }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 5234..5235, id: Name("c"), ctx: Load, }, ), ], keywords: [], }, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5263..5279, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5263..5279, left: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5263..5275, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5263..5268, id: Name("match"), ctx: Load, }, ), op: Sub, right: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5270..5275, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5270..5271, id: Name("a"), ctx: Load, }, ), op: Mult, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5274..5275, id: Name("b"), ctx: Load, }, ), }, ), }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5278..5279, id: Name("c"), ctx: Load, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5306..5324, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5306..5324, left: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5306..5320, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5306..5311, id: Name("match"), ctx: Load, }, ), op: Sub, right: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5314..5319, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5314..5315, id: Name("a"), ctx: Load, }, ), op: Mult, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5318..5319, id: Name("b"), ctx: Load, }, ), }, ), }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5323..5324, id: Name("c"), ctx: Load, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5351..5369, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5351..5369, left: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 5351..5365, left: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5351..5361, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5351..5356, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5357..5361, node_index: AtomicNodeIndex(..), args: [ UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 5358..5360, op: USub, operand: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5359..5360, id: Name("a"), ctx: Load, }, ), }, ), ], keywords: [], }, }, ), op: Mult, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5364..5365, id: Name("b"), ctx: Load, }, ), }, ), op: Add, right: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5368..5369, id: Name("c"), ctx: Load, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5397..5407, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5397..5407, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5397..5405, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5397..5402, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5403..5405, node_index: AtomicNodeIndex(..), args: [], keywords: [], }, }, ), attr: Identifier { id: Name("a"), range: 5406..5407, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5424..5436, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5424..5436, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5424..5434, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5424..5429, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5430..5434, node_index: AtomicNodeIndex(..), args: [ Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5431..5433, elts: [], ctx: Load, parenthesized: true, }, ), ], keywords: [], }, }, ), attr: Identifier { id: Name("a"), range: 5435..5436, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5455..5468, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5455..5468, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5455..5466, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5455..5460, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5461..5466, node_index: AtomicNodeIndex(..), args: [ Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5462..5464, elts: [], ctx: Load, parenthesized: true, }, ), ], keywords: [], }, }, ), attr: Identifier { id: Name("a"), range: 5467..5468, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5487..5498, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5487..5498, value: Subscript( ExprSubscript { node_index: AtomicNodeIndex(..), range: 5487..5496, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5487..5492, id: Name("match"), ctx: Load, }, ), slice: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5494..5495, id: Name("a"), ctx: Load, }, ), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 5497..5498, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5516..5528, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5516..5528, value: Subscript( ExprSubscript { node_index: AtomicNodeIndex(..), range: 5516..5526, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5516..5521, id: Name("match"), ctx: Load, }, ), slice: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5523..5525, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 5523..5524, id: Name("a"), ctx: Load, }, ), ], ctx: Load, parenthesized: false, }, ), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 5527..5528, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5569..5583, value: Attribute( ExprAttribute { node_index: AtomicNodeIndex(..), range: 5569..5583, value: Subscript( ExprSubscript { node_index: AtomicNodeIndex(..), range: 5569..5581, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5569..5574, id: Name("match"), ctx: Load, }, ), slice: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 5576..5580, elts: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 5577..5578, id: Name("a"), ctx: Load, }, ), ], ctx: Load, parenthesized: true, }, ), ctx: Load, }, ), attr: Identifier { id: Name("b"), range: 5582..5583, node_index: AtomicNodeIndex(..), }, ctx: Load, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5604..5621, value: Subscript( ExprSubscript { node_index: AtomicNodeIndex(..), range: 5604..5621, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5604..5611, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5604..5609, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5609..5611, node_index: AtomicNodeIndex(..), args: [], keywords: [], }, }, ), slice: Slice( ExprSlice { node_index: AtomicNodeIndex(..), range: 5612..5620, lower: Some( Name( ExprName { node_index: AtomicNodeIndex(..), range: 5612..5613, id: Name("a"), ctx: Load, }, ), ), upper: Some( Name( ExprName { node_index: AtomicNodeIndex(..), range: 5619..5620, id: Name("b"), ctx: Load, }, ), ), step: None, }, ), ctx: Load, }, ), }, ), If( StmtIf { node_index: AtomicNodeIndex(..), range: 5641..5660, test: Named( ExprNamed { node_index: AtomicNodeIndex(..), range: 5644..5654, target: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5644..5649, id: Name("match"), ctx: Store, }, ), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5653..5654, value: Int( 1, ), }, ), }, ), body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 5656..5660, }, ), ], elif_else_clauses: [], }, ), Match( StmtMatch { node_index: AtomicNodeIndex(..), range: 5661..5715, subject: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5667..5672, id: Name("match"), ctx: Load, }, ), cases: [ MatchCase { range: 5678..5690, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 5683..5684, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5683..5684, value: Int( 1, ), }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 5686..5690, }, ), ], }, MatchCase { range: 5695..5715, node_index: AtomicNodeIndex(..), pattern: MatchValue( PatternMatchValue { range: 5700..5701, node_index: AtomicNodeIndex(..), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5700..5701, value: Int( 2, ), }, ), }, ), guard: None, body: [ Pass( StmtPass { node_index: AtomicNodeIndex(..), range: 5711..5715, }, ), ], }, ], }, ), Assign( StmtAssign { node_index: AtomicNodeIndex(..), range: 5716..5752, targets: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 5716..5721, id: Name("match"), ctx: Store, }, ), ], value: Lambda( ExprLambda { node_index: AtomicNodeIndex(..), range: 5724..5752, parameters: Some( Parameters { range: 5731..5736, node_index: AtomicNodeIndex( 0, ), posonlyargs: [], args: [ ParameterWithDefault { range: 5731..5736, node_index: AtomicNodeIndex(..), parameter: Parameter { range: 5731..5736, node_index: AtomicNodeIndex(..), name: Identifier { id: Name("query"), range: 5731..5736, node_index: AtomicNodeIndex(..), }, annotation: None, }, default: None, }, ], vararg: None, kwonlyargs: [], kwarg: None, }, ), body: Compare( ExprCompare { node_index: AtomicNodeIndex(..), range: 5738..5752, left: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5738..5743, id: Name("query"), ctx: Load, }, ), ops: [ Eq, ], comparators: [ Name( ExprName { node_index: AtomicNodeIndex(..), range: 5747..5752, id: Name("event"), ctx: Load, }, ), ], }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 5753..5769, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5753..5769, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5753..5758, id: Name("print"), ctx: Load, }, ), arguments: Arguments { range: 5758..5769, node_index: AtomicNodeIndex(..), args: [ Call( ExprCall { node_index: AtomicNodeIndex(..), range: 5759..5768, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 5759..5764, id: Name("match"), ctx: Load, }, ), arguments: Arguments { range: 5764..5768, node_index: AtomicNodeIndex(..), args: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 5765..5767, value: Int( 12, ), }, ), ], keywords: [], }, }, ), ], keywords: [], }, }, ), }, ), ], }, ) ```