ProgramNode(0...3725)(
  [:bar, :baz, :qux, :b, :a],
  StatementsNode(0...3725)(
    [MatchRequiredNode(0...10)(
       CallNode(0...3)(nil, nil, (0...3), nil, nil, nil, nil, 0, "foo"),
       LocalVariableWriteNode(7...10)(:bar, 0, nil, (7...10), nil),
       (4...6)
     ),
     MatchRequiredNode(11...19)(
       CallNode(11...14)(nil, nil, (11...14), nil, nil, nil, nil, 0, "foo"),
       IntegerNode(18...19)(),
       (15...17)
     ),
     MatchRequiredNode(20...30)(
       CallNode(20...23)(nil, nil, (20...23), nil, nil, nil, nil, 0, "foo"),
       FloatNode(27...30)(),
       (24...26)
     ),
     MatchRequiredNode(31...40)(
       CallNode(31...34)(nil, nil, (31...34), nil, nil, nil, nil, 0, "foo"),
       ImaginaryNode(38...40)(IntegerNode(38...39)()),
       (35...37)
     ),
     MatchRequiredNode(41...50)(
       CallNode(41...44)(nil, nil, (41...44), nil, nil, nil, nil, 0, "foo"),
       RationalNode(48...50)(IntegerNode(48...49)()),
       (45...47)
     ),
     MatchRequiredNode(51...62)(
       CallNode(51...54)(nil, nil, (51...54), nil, nil, nil, nil, 0, "foo"),
       SymbolNode(58...62)((58...59), (59...62), nil, "foo"),
       (55...57)
     ),
     MatchRequiredNode(63...77)(
       CallNode(63...66)(nil, nil, (63...66), nil, nil, nil, nil, 0, "foo"),
       SymbolNode(70...77)((70...73), (73...76), (76...77), "foo"),
       (67...69)
     ),
     MatchRequiredNode(78...91)(
       CallNode(78...81)(nil, nil, (78...81), nil, nil, nil, nil, 0, "foo"),
       InterpolatedSymbolNode(85...91)(
         (85...87),
         [StringNode(87...90)(nil, (87...90), nil, "foo")],
         (90...91)
       ),
       (82...84)
     ),
     MatchRequiredNode(92...104)(
       CallNode(92...95)(nil, nil, (92...95), nil, nil, nil, nil, 0, "foo"),
       RegularExpressionNode(99...104)(
         (99...100),
         (100...103),
         (103...104),
         "foo",
         0
       ),
       (96...98)
     ),
     MatchRequiredNode(105...117)(
       CallNode(105...108)(
         nil,
         nil,
         (105...108),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       XStringNode(112...117)((112...113), (113...116), (116...117), "foo"),
       (109...111)
     ),
     MatchRequiredNode(118...132)(
       CallNode(118...121)(
         nil,
         nil,
         (118...121),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       XStringNode(125...132)((125...128), (128...131), (131...132), "foo"),
       (122...124)
     ),
     MatchRequiredNode(133...147)(
       CallNode(133...136)(
         nil,
         nil,
         (133...136),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(140...147)(
         [SymbolNode(143...146)(nil, (143...146), nil, "foo")],
         (140...143),
         (146...147)
       ),
       (137...139)
     ),
     MatchRequiredNode(148...162)(
       CallNode(148...151)(
         nil,
         nil,
         (148...151),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(155...162)(
         [SymbolNode(158...161)(nil, (158...161), nil, "foo")],
         (155...158),
         (161...162)
       ),
       (152...154)
     ),
     MatchRequiredNode(163...177)(
       CallNode(163...166)(
         nil,
         nil,
         (163...166),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(170...177)(
         [StringNode(173...176)(nil, (173...176), nil, "foo")],
         (170...173),
         (176...177)
       ),
       (167...169)
     ),
     MatchRequiredNode(178...192)(
       CallNode(178...181)(
         nil,
         nil,
         (178...181),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(185...192)(
         [StringNode(188...191)(nil, (188...191), nil, "foo")],
         (185...188),
         (191...192)
       ),
       (182...184)
     ),
     MatchRequiredNode(193...207)(
       CallNode(193...196)(
         nil,
         nil,
         (193...196),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(200...207)((200...203), (203...206), (206...207), "foo"),
       (197...199)
     ),
     MatchRequiredNode(208...222)(
       CallNode(208...211)(
         nil,
         nil,
         (208...211),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(215...222)((215...218), (218...221), (221...222), "foo"),
       (212...214)
     ),
     MatchRequiredNode(223...235)(
       CallNode(223...226)(
         nil,
         nil,
         (223...226),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(230...235)((230...231), (231...234), (234...235), "foo"),
       (227...229)
     ),
     MatchRequiredNode(236...246)(
       CallNode(236...239)(
         nil,
         nil,
         (236...239),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       NilNode(243...246)(),
       (240...242)
     ),
     MatchRequiredNode(247...258)(
       CallNode(247...250)(
         nil,
         nil,
         (247...250),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SelfNode(254...258)(),
       (251...253)
     ),
     MatchRequiredNode(259...270)(
       CallNode(259...262)(
         nil,
         nil,
         (259...262),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       TrueNode(266...270)(),
       (263...265)
     ),
     MatchRequiredNode(271...283)(
       CallNode(271...274)(
         nil,
         nil,
         (271...274),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FalseNode(278...283)(),
       (275...277)
     ),
     MatchRequiredNode(284...299)(
       CallNode(284...287)(
         nil,
         nil,
         (284...287),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceFileNode(291...299)("/fixtures/patterns.txt"),
       (288...290)
     ),
     MatchRequiredNode(300...315)(
       CallNode(300...303)(
         nil,
         nil,
         (300...303),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceLineNode(307...315)(),
       (304...306)
     ),
     MatchRequiredNode(316...335)(
       CallNode(316...319)(
         nil,
         nil,
         (316...319),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceEncodingNode(323...335)(),
       (320...322)
     ),
     MatchRequiredNode(336...353)(
       CallNode(336...339)(
         nil,
         nil,
         (336...339),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       LambdaNode(343...353)(
         [],
         (343...345),
         nil,
         StatementsNode(348...351)([LocalVariableReadNode(348...351)(:bar, 1)])
       ),
       (340...342)
     ),
     MatchRequiredNode(355...368)(
       CallNode(355...358)(
         nil,
         nil,
         (355...358),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(362...368)(
         IntegerNode(362...363)(),
         IntegerNode(367...368)(),
         (364...366),
         0
       ),
       (359...361)
     ),
     MatchRequiredNode(369...386)(
       CallNode(369...372)(
         nil,
         nil,
         (369...372),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(376...386)(
         FloatNode(376...379)(),
         FloatNode(383...386)(),
         (380...382),
         0
       ),
       (373...375)
     ),
     MatchRequiredNode(387...402)(
       CallNode(387...390)(
         nil,
         nil,
         (387...390),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(394...402)(
         ImaginaryNode(394...396)(IntegerNode(394...395)()),
         ImaginaryNode(400...402)(IntegerNode(400...401)()),
         (397...399),
         0
       ),
       (391...393)
     ),
     MatchRequiredNode(403...418)(
       CallNode(403...406)(
         nil,
         nil,
         (403...406),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(410...418)(
         RationalNode(410...412)(IntegerNode(410...411)()),
         RationalNode(416...418)(IntegerNode(416...417)()),
         (413...415),
         0
       ),
       (407...409)
     ),
     MatchRequiredNode(419...438)(
       CallNode(419...422)(
         nil,
         nil,
         (419...422),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(426...438)(
         SymbolNode(426...430)((426...427), (427...430), nil, "foo"),
         SymbolNode(434...438)((434...435), (435...438), nil, "foo"),
         (431...433),
         0
       ),
       (423...425)
     ),
     MatchRequiredNode(439...464)(
       CallNode(439...442)(
         nil,
         nil,
         (439...442),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(446...464)(
         SymbolNode(446...453)((446...449), (449...452), (452...453), "foo"),
         SymbolNode(457...464)((457...460), (460...463), (463...464), "foo"),
         (454...456),
         0
       ),
       (443...445)
     ),
     MatchRequiredNode(465...488)(
       CallNode(465...468)(
         nil,
         nil,
         (465...468),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(472...488)(
         InterpolatedSymbolNode(472...478)(
           (472...474),
           [StringNode(474...477)(nil, (474...477), nil, "foo")],
           (477...478)
         ),
         InterpolatedSymbolNode(482...488)(
           (482...484),
           [StringNode(484...487)(nil, (484...487), nil, "foo")],
           (487...488)
         ),
         (479...481),
         0
       ),
       (469...471)
     ),
     MatchRequiredNode(489...510)(
       CallNode(489...492)(
         nil,
         nil,
         (489...492),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(496...510)(
         RegularExpressionNode(496...501)(
           (496...497),
           (497...500),
           (500...501),
           "foo",
           0
         ),
         RegularExpressionNode(505...510)(
           (505...506),
           (506...509),
           (509...510),
           "foo",
           0
         ),
         (502...504),
         0
       ),
       (493...495)
     ),
     MatchRequiredNode(511...532)(
       CallNode(511...514)(
         nil,
         nil,
         (511...514),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(518...532)(
         XStringNode(518...523)((518...519), (519...522), (522...523), "foo"),
         XStringNode(527...532)((527...528), (528...531), (531...532), "foo"),
         (524...526),
         0
       ),
       (515...517)
     ),
     MatchRequiredNode(533...558)(
       CallNode(533...536)(
         nil,
         nil,
         (533...536),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(540...558)(
         XStringNode(540...547)((540...543), (543...546), (546...547), "foo"),
         XStringNode(551...558)((551...554), (554...557), (557...558), "foo"),
         (548...550),
         0
       ),
       (537...539)
     ),
     MatchRequiredNode(559...584)(
       CallNode(559...562)(
         nil,
         nil,
         (559...562),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(566...584)(
         ArrayNode(566...573)(
           [SymbolNode(569...572)(nil, (569...572), nil, "foo")],
           (566...569),
           (572...573)
         ),
         ArrayNode(577...584)(
           [SymbolNode(580...583)(nil, (580...583), nil, "foo")],
           (577...580),
           (583...584)
         ),
         (574...576),
         0
       ),
       (563...565)
     ),
     MatchRequiredNode(585...610)(
       CallNode(585...588)(
         nil,
         nil,
         (585...588),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(592...610)(
         ArrayNode(592...599)(
           [SymbolNode(595...598)(nil, (595...598), nil, "foo")],
           (592...595),
           (598...599)
         ),
         ArrayNode(603...610)(
           [SymbolNode(606...609)(nil, (606...609), nil, "foo")],
           (603...606),
           (609...610)
         ),
         (600...602),
         0
       ),
       (589...591)
     ),
     MatchRequiredNode(611...636)(
       CallNode(611...614)(
         nil,
         nil,
         (611...614),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(618...636)(
         ArrayNode(618...625)(
           [StringNode(621...624)(nil, (621...624), nil, "foo")],
           (618...621),
           (624...625)
         ),
         ArrayNode(629...636)(
           [StringNode(632...635)(nil, (632...635), nil, "foo")],
           (629...632),
           (635...636)
         ),
         (626...628),
         0
       ),
       (615...617)
     ),
     MatchRequiredNode(637...662)(
       CallNode(637...640)(
         nil,
         nil,
         (637...640),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(644...662)(
         ArrayNode(644...651)(
           [StringNode(647...650)(nil, (647...650), nil, "foo")],
           (644...647),
           (650...651)
         ),
         ArrayNode(655...662)(
           [StringNode(658...661)(nil, (658...661), nil, "foo")],
           (655...658),
           (661...662)
         ),
         (652...654),
         0
       ),
       (641...643)
     ),
     MatchRequiredNode(663...688)(
       CallNode(663...666)(
         nil,
         nil,
         (663...666),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(670...688)(
         StringNode(670...677)((670...673), (673...676), (676...677), "foo"),
         StringNode(681...688)((681...684), (684...687), (687...688), "foo"),
         (678...680),
         0
       ),
       (667...669)
     ),
     MatchRequiredNode(689...714)(
       CallNode(689...692)(
         nil,
         nil,
         (689...692),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(696...714)(
         StringNode(696...703)((696...699), (699...702), (702...703), "foo"),
         StringNode(707...714)((707...710), (710...713), (713...714), "foo"),
         (704...706),
         0
       ),
       (693...695)
     ),
     MatchRequiredNode(715...736)(
       CallNode(715...718)(
         nil,
         nil,
         (715...718),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(722...736)(
         StringNode(722...727)((722...723), (723...726), (726...727), "foo"),
         StringNode(731...736)((731...732), (732...735), (735...736), "foo"),
         (728...730),
         0
       ),
       (719...721)
     ),
     MatchRequiredNode(737...754)(
       CallNode(737...740)(
         nil,
         nil,
         (737...740),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(744...754)(
         NilNode(744...747)(),
         NilNode(751...754)(),
         (748...750),
         0
       ),
       (741...743)
     ),
     MatchRequiredNode(755...774)(
       CallNode(755...758)(
         nil,
         nil,
         (755...758),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(762...774)(
         SelfNode(762...766)(),
         SelfNode(770...774)(),
         (767...769),
         0
       ),
       (759...761)
     ),
     MatchRequiredNode(775...794)(
       CallNode(775...778)(
         nil,
         nil,
         (775...778),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(782...794)(
         TrueNode(782...786)(),
         TrueNode(790...794)(),
         (787...789),
         0
       ),
       (779...781)
     ),
     MatchRequiredNode(795...816)(
       CallNode(795...798)(
         nil,
         nil,
         (795...798),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(802...816)(
         FalseNode(802...807)(),
         FalseNode(811...816)(),
         (808...810),
         0
       ),
       (799...801)
     ),
     MatchRequiredNode(817...844)(
       CallNode(817...820)(
         nil,
         nil,
         (817...820),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(824...844)(
         SourceFileNode(824...832)("/fixtures/patterns.txt"),
         SourceFileNode(836...844)("/fixtures/patterns.txt"),
         (833...835),
         0
       ),
       (821...823)
     ),
     MatchRequiredNode(845...872)(
       CallNode(845...848)(
         nil,
         nil,
         (845...848),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(852...872)(
         SourceLineNode(852...860)(),
         SourceLineNode(864...872)(),
         (861...863),
         0
       ),
       (849...851)
     ),
     MatchRequiredNode(873...908)(
       CallNode(873...876)(
         nil,
         nil,
         (873...876),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(880...908)(
         SourceEncodingNode(880...892)(),
         SourceEncodingNode(896...908)(),
         (893...895),
         0
       ),
       (877...879)
     ),
     MatchRequiredNode(909...940)(
       CallNode(909...912)(
         nil,
         nil,
         (909...912),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RangeNode(916...940)(
         LambdaNode(916...926)(
           [],
           (916...918),
           nil,
           StatementsNode(921...924)(
             [LocalVariableReadNode(921...924)(:bar, 1)]
           )
         ),
         LambdaNode(930...940)(
           [],
           (930...932),
           nil,
           StatementsNode(935...938)(
             [LocalVariableReadNode(935...938)(:bar, 1)]
           )
         ),
         (927...929),
         0
       ),
       (913...915)
     ),
     MatchRequiredNode(942...953)(
       CallNode(942...945)(
         nil,
         nil,
         (942...945),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedVariableNode(949...953)(
         LocalVariableReadNode(950...953)(:bar, 0),
         (949...950)
       ),
       (946...948)
     ),
     MatchRequiredNode(954...966)(
       CallNode(954...957)(
         nil,
         nil,
         (954...957),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedVariableNode(961...966)(
         InstanceVariableReadNode(962...966)(),
         (961...962)
       ),
       (958...960)
     ),
     MatchRequiredNode(967...980)(
       CallNode(967...970)(
         nil,
         nil,
         (967...970),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedVariableNode(974...980)(
         ClassVariableReadNode(975...980)(),
         (974...975)
       ),
       (971...973)
     ),
     MatchRequiredNode(981...993)(
       CallNode(981...984)(
         nil,
         nil,
         (981...984),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedVariableNode(988...993)(
         GlobalVariableReadNode(989...993)(),
         (988...989)
       ),
       (985...987)
     ),
     MatchRequiredNode(995...1006)(
       CallNode(995...998)(
         nil,
         nil,
         (995...998),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedExpressionNode(1002...1006)(
         IntegerNode(1004...1005)(),
         (1002...1003),
         (1003...1004),
         (1005...1006)
       ),
       (999...1001)
     ),
     MatchRequiredNode(1007...1020)(
       CallNode(1007...1010)(
         nil,
         nil,
         (1007...1010),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedExpressionNode(1014...1020)(
         NilNode(1016...1019)(),
         (1014...1015),
         (1015...1016),
         (1019...1020)
       ),
       (1011...1013)
     ),
     MatchRequiredNode(1021...1044)(
       CallNode(1021...1024)(
         nil,
         nil,
         (1021...1024),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       PinnedExpressionNode(1028...1044)(
         CallNode(1030...1043)(
           StringNode(1030...1035)(
             (1030...1031),
             (1031...1034),
             (1034...1035),
             "bar"
           ),
           nil,
           (1036...1037),
           nil,
           ArgumentsNode(1038...1043)(
             [StringNode(1038...1043)(
                (1038...1039),
                (1039...1042),
                (1042...1043),
                "baz"
              )]
           ),
           nil,
           nil,
           0,
           "+"
         ),
         (1028...1029),
         (1029...1030),
         (1043...1044)
       ),
       (1025...1027)
     ),
     MatchRequiredNode(1046...1056)(
       CallNode(1046...1049)(
         nil,
         nil,
         (1046...1049),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ConstantReadNode(1053...1056)(),
       (1050...1052)
     ),
     MatchRequiredNode(1057...1077)(
       CallNode(1057...1060)(
         nil,
         nil,
         (1057...1060),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ConstantPathNode(1064...1077)(
         ConstantPathNode(1064...1072)(
           ConstantReadNode(1064...1067)(),
           ConstantReadNode(1069...1072)(),
           (1067...1069)
         ),
         ConstantReadNode(1074...1077)(),
         (1072...1074)
       ),
       (1061...1063)
     ),
     MatchRequiredNode(1078...1090)(
       CallNode(1078...1081)(
         nil,
         nil,
         (1078...1081),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ConstantPathNode(1085...1090)(
         nil,
         ConstantReadNode(1087...1090)(),
         (1085...1087)
       ),
       (1082...1084)
     ),
     MatchRequiredNode(1091...1113)(
       CallNode(1091...1094)(
         nil,
         nil,
         (1091...1094),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ConstantPathNode(1098...1113)(
         ConstantPathNode(1098...1108)(
           ConstantPathNode(1098...1103)(
             nil,
             ConstantReadNode(1100...1103)(),
             (1098...1100)
           ),
           ConstantReadNode(1105...1108)(),
           (1103...1105)
         ),
         ConstantReadNode(1110...1113)(),
         (1108...1110)
       ),
       (1095...1097)
     ),
     MatchRequiredNode(1115...1127)(
       CallNode(1115...1118)(
         nil,
         nil,
         (1115...1118),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1122...1127)(
         ConstantReadNode(1122...1125)(),
         [],
         nil,
         [],
         (1125...1126),
         (1126...1127)
       ),
       (1119...1121)
     ),
     MatchRequiredNode(1128...1141)(
       CallNode(1128...1131)(
         nil,
         nil,
         (1128...1131),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1135...1141)(
         ConstantReadNode(1135...1138)(),
         [IntegerNode(1139...1140)()],
         nil,
         [],
         (1138...1139),
         (1140...1141)
       ),
       (1132...1134)
     ),
     MatchRequiredNode(1142...1161)(
       CallNode(1142...1145)(
         nil,
         nil,
         (1142...1145),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1149...1161)(
         ConstantReadNode(1149...1152)(),
         [IntegerNode(1153...1154)(),
          IntegerNode(1156...1157)(),
          IntegerNode(1159...1160)()],
         nil,
         [],
         (1152...1153),
         (1160...1161)
       ),
       (1146...1148)
     ),
     MatchRequiredNode(1162...1177)(
       CallNode(1162...1165)(
         nil,
         nil,
         (1162...1165),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1169...1177)(
         ConstantReadNode(1169...1172)(),
         [LocalVariableWriteNode(1173...1176)(
            :bar,
            0,
            nil,
            (1173...1176),
            nil
          )],
         nil,
         [],
         (1172...1173),
         (1176...1177)
       ),
       (1166...1168)
     ),
     MatchRequiredNode(1178...1199)(
       CallNode(1178...1181)(
         nil,
         nil,
         (1178...1181),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1185...1199)(
         ConstantReadNode(1185...1188)(),
         [],
         SplatNode(1189...1193)(
           (1189...1190),
           LocalVariableWriteNode(1190...1193)(
             :bar,
             0,
             nil,
             (1190...1193),
             nil
           )
         ),
         [LocalVariableWriteNode(1195...1198)(
            :baz,
            0,
            nil,
            (1195...1198),
            nil
          )],
         (1188...1189),
         (1198...1199)
       ),
       (1182...1184)
     ),
     MatchRequiredNode(1200...1221)(
       CallNode(1200...1203)(
         nil,
         nil,
         (1200...1203),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1207...1221)(
         ConstantReadNode(1207...1210)(),
         [LocalVariableWriteNode(1211...1214)(
            :bar,
            0,
            nil,
            (1211...1214),
            nil
          )],
         SplatNode(1216...1220)(
           (1216...1217),
           LocalVariableWriteNode(1217...1220)(
             :baz,
             0,
             nil,
             (1217...1220),
             nil
           )
         ),
         [],
         (1210...1211),
         (1220...1221)
       ),
       (1204...1206)
     ),
     MatchRequiredNode(1222...1249)(
       CallNode(1222...1225)(
         nil,
         nil,
         (1222...1225),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FindPatternNode(1229...1249)(
         ConstantReadNode(1229...1232)(),
         SplatNode(1233...1237)(
           (1233...1234),
           LocalVariableWriteNode(1234...1237)(
             :bar,
             0,
             nil,
             (1234...1237),
             nil
           )
         ),
         [LocalVariableWriteNode(1239...1242)(
            :baz,
            0,
            nil,
            (1239...1242),
            nil
          )],
         SplatNode(1244...1248)(
           (1244...1245),
           LocalVariableWriteNode(1245...1248)(
             :qux,
             0,
             nil,
             (1245...1248),
             nil
           )
         ),
         (1232...1233),
         (1248...1249)
       ),
       (1226...1228)
     ),
     MatchRequiredNode(1251...1263)(
       CallNode(1251...1254)(
         nil,
         nil,
         (1251...1254),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1258...1263)(
         ConstantReadNode(1258...1261)(),
         [],
         nil,
         [],
         (1261...1262),
         (1262...1263)
       ),
       (1255...1257)
     ),
     MatchRequiredNode(1264...1277)(
       CallNode(1264...1267)(
         nil,
         nil,
         (1264...1267),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1271...1277)(
         ConstantReadNode(1271...1274)(),
         [IntegerNode(1275...1276)()],
         nil,
         [],
         (1274...1275),
         (1276...1277)
       ),
       (1268...1270)
     ),
     MatchRequiredNode(1278...1297)(
       CallNode(1278...1281)(
         nil,
         nil,
         (1278...1281),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1285...1297)(
         ConstantReadNode(1285...1288)(),
         [IntegerNode(1289...1290)(),
          IntegerNode(1292...1293)(),
          IntegerNode(1295...1296)()],
         nil,
         [],
         (1288...1289),
         (1296...1297)
       ),
       (1282...1284)
     ),
     MatchRequiredNode(1298...1313)(
       CallNode(1298...1301)(
         nil,
         nil,
         (1298...1301),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1305...1313)(
         ConstantReadNode(1305...1308)(),
         [LocalVariableWriteNode(1309...1312)(
            :bar,
            0,
            nil,
            (1309...1312),
            nil
          )],
         nil,
         [],
         (1308...1309),
         (1312...1313)
       ),
       (1302...1304)
     ),
     MatchRequiredNode(1314...1335)(
       CallNode(1314...1317)(
         nil,
         nil,
         (1314...1317),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1321...1335)(
         ConstantReadNode(1321...1324)(),
         [],
         SplatNode(1325...1329)(
           (1325...1326),
           LocalVariableWriteNode(1326...1329)(
             :bar,
             0,
             nil,
             (1326...1329),
             nil
           )
         ),
         [LocalVariableWriteNode(1331...1334)(
            :baz,
            0,
            nil,
            (1331...1334),
            nil
          )],
         (1324...1325),
         (1334...1335)
       ),
       (1318...1320)
     ),
     MatchRequiredNode(1336...1357)(
       CallNode(1336...1339)(
         nil,
         nil,
         (1336...1339),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1343...1357)(
         ConstantReadNode(1343...1346)(),
         [LocalVariableWriteNode(1347...1350)(
            :bar,
            0,
            nil,
            (1347...1350),
            nil
          )],
         SplatNode(1352...1356)(
           (1352...1353),
           LocalVariableWriteNode(1353...1356)(
             :baz,
             0,
             nil,
             (1353...1356),
             nil
           )
         ),
         [],
         (1346...1347),
         (1356...1357)
       ),
       (1340...1342)
     ),
     MatchRequiredNode(1358...1385)(
       CallNode(1358...1361)(
         nil,
         nil,
         (1358...1361),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FindPatternNode(1365...1385)(
         ConstantReadNode(1365...1368)(),
         SplatNode(1369...1373)(
           (1369...1370),
           LocalVariableWriteNode(1370...1373)(
             :bar,
             0,
             nil,
             (1370...1373),
             nil
           )
         ),
         [LocalVariableWriteNode(1375...1378)(
            :baz,
            0,
            nil,
            (1375...1378),
            nil
          )],
         SplatNode(1380...1384)(
           (1380...1381),
           LocalVariableWriteNode(1381...1384)(
             :qux,
             0,
             nil,
             (1381...1384),
             nil
           )
         ),
         (1368...1369),
         (1384...1385)
       ),
       (1362...1364)
     ),
     MatchRequiredNode(1387...1398)(
       CallNode(1387...1390)(
         nil,
         nil,
         (1387...1390),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1394...1398)(
         nil,
         [],
         SplatNode(1394...1398)(
           (1394...1395),
           LocalVariableWriteNode(1395...1398)(
             :bar,
             0,
             nil,
             (1395...1398),
             nil
           )
         ),
         [],
         nil,
         nil
       ),
       (1391...1393)
     ),
     MatchRequiredNode(1399...1420)(
       CallNode(1399...1402)(
         nil,
         nil,
         (1399...1402),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1406...1420)(
         nil,
         [],
         SplatNode(1406...1410)(
           (1406...1407),
           LocalVariableWriteNode(1407...1410)(
             :bar,
             0,
             nil,
             (1407...1410),
             nil
           )
         ),
         [LocalVariableWriteNode(1412...1415)(
            :baz,
            0,
            nil,
            (1412...1415),
            nil
          ),
          LocalVariableWriteNode(1417...1420)(
            :qux,
            0,
            nil,
            (1417...1420),
            nil
          )],
         nil,
         nil
       ),
       (1403...1405)
     ),
     MatchRequiredNode(1421...1442)(
       CallNode(1421...1424)(
         nil,
         nil,
         (1421...1424),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1428...1442)(
         nil,
         [LocalVariableWriteNode(1428...1431)(
            :bar,
            0,
            nil,
            (1428...1431),
            nil
          )],
         SplatNode(1433...1437)(
           (1433...1434),
           LocalVariableWriteNode(1434...1437)(
             :baz,
             0,
             nil,
             (1434...1437),
             nil
           )
         ),
         [LocalVariableWriteNode(1439...1442)(
            :qux,
            0,
            nil,
            (1439...1442),
            nil
          )],
         nil,
         nil
       ),
       (1425...1427)
     ),
     MatchRequiredNode(1443...1464)(
       CallNode(1443...1446)(
         nil,
         nil,
         (1443...1446),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1450...1464)(
         nil,
         [LocalVariableWriteNode(1450...1453)(
            :bar,
            0,
            nil,
            (1450...1453),
            nil
          ),
          LocalVariableWriteNode(1455...1458)(
            :baz,
            0,
            nil,
            (1455...1458),
            nil
          )],
         SplatNode(1460...1464)(
           (1460...1461),
           LocalVariableWriteNode(1461...1464)(
             :qux,
             0,
             nil,
             (1461...1464),
             nil
           )
         ),
         [],
         nil,
         nil
       ),
       (1447...1449)
     ),
     MatchRequiredNode(1465...1487)(
       CallNode(1465...1468)(
         nil,
         nil,
         (1465...1468),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FindPatternNode(1472...1487)(
         nil,
         SplatNode(1472...1476)(
           (1472...1473),
           LocalVariableWriteNode(1473...1476)(
             :bar,
             0,
             nil,
             (1473...1476),
             nil
           )
         ),
         [LocalVariableWriteNode(1478...1481)(
            :baz,
            0,
            nil,
            (1478...1481),
            nil
          )],
         SplatNode(1483...1487)(
           (1483...1484),
           LocalVariableWriteNode(1484...1487)(
             :qux,
             0,
             nil,
             (1484...1487),
             nil
           )
         ),
         nil,
         nil
       ),
       (1469...1471)
     ),
     MatchRequiredNode(1489...1498)(
       CallNode(1489...1492)(
         nil,
         nil,
         (1489...1492),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1496...1498)(
         nil,
         [],
         nil,
         [],
         (1496...1497),
         (1497...1498)
       ),
       (1493...1495)
     ),
     MatchRequiredNode(1499...1516)(
       CallNode(1499...1502)(
         nil,
         nil,
         (1499...1502),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1506...1516)(
         nil,
         [ArrayPatternNode(1507...1515)(
            nil,
            [ArrayPatternNode(1508...1514)(
               nil,
               [ArrayPatternNode(1509...1513)(
                  nil,
                  [ArrayPatternNode(1510...1512)(
                     nil,
                     [],
                     nil,
                     [],
                     (1510...1511),
                     (1511...1512)
                   )],
                  nil,
                  [],
                  (1509...1510),
                  (1512...1513)
                )],
               nil,
               [],
               (1508...1509),
               (1513...1514)
             )],
            nil,
            [],
            (1507...1508),
            (1514...1515)
          )],
         nil,
         [],
         (1506...1507),
         (1515...1516)
       ),
       (1503...1505)
     ),
     MatchRequiredNode(1518...1531)(
       CallNode(1518...1521)(
         nil,
         nil,
         (1518...1521),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1525...1531)(
         nil,
         [],
         SplatNode(1526...1530)(
           (1526...1527),
           LocalVariableWriteNode(1527...1530)(
             :bar,
             0,
             nil,
             (1527...1530),
             nil
           )
         ),
         [],
         (1525...1526),
         (1530...1531)
       ),
       (1522...1524)
     ),
     MatchRequiredNode(1532...1555)(
       CallNode(1532...1535)(
         nil,
         nil,
         (1532...1535),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1539...1555)(
         nil,
         [],
         SplatNode(1540...1544)(
           (1540...1541),
           LocalVariableWriteNode(1541...1544)(
             :bar,
             0,
             nil,
             (1541...1544),
             nil
           )
         ),
         [LocalVariableWriteNode(1546...1549)(
            :baz,
            0,
            nil,
            (1546...1549),
            nil
          ),
          LocalVariableWriteNode(1551...1554)(
            :qux,
            0,
            nil,
            (1551...1554),
            nil
          )],
         (1539...1540),
         (1554...1555)
       ),
       (1536...1538)
     ),
     MatchRequiredNode(1556...1579)(
       CallNode(1556...1559)(
         nil,
         nil,
         (1556...1559),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1563...1579)(
         nil,
         [LocalVariableWriteNode(1564...1567)(
            :bar,
            0,
            nil,
            (1564...1567),
            nil
          )],
         SplatNode(1569...1573)(
           (1569...1570),
           LocalVariableWriteNode(1570...1573)(
             :baz,
             0,
             nil,
             (1570...1573),
             nil
           )
         ),
         [LocalVariableWriteNode(1575...1578)(
            :qux,
            0,
            nil,
            (1575...1578),
            nil
          )],
         (1563...1564),
         (1578...1579)
       ),
       (1560...1562)
     ),
     MatchRequiredNode(1580...1603)(
       CallNode(1580...1583)(
         nil,
         nil,
         (1580...1583),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayPatternNode(1587...1603)(
         nil,
         [LocalVariableWriteNode(1588...1591)(
            :bar,
            0,
            nil,
            (1588...1591),
            nil
          ),
          LocalVariableWriteNode(1593...1596)(
            :baz,
            0,
            nil,
            (1593...1596),
            nil
          )],
         SplatNode(1598...1602)(
           (1598...1599),
           LocalVariableWriteNode(1599...1602)(
             :qux,
             0,
             nil,
             (1599...1602),
             nil
           )
         ),
         [],
         (1587...1588),
         (1602...1603)
       ),
       (1584...1586)
     ),
     MatchRequiredNode(1604...1628)(
       CallNode(1604...1607)(
         nil,
         nil,
         (1604...1607),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FindPatternNode(1611...1628)(
         nil,
         SplatNode(1612...1616)(
           (1612...1613),
           LocalVariableWriteNode(1613...1616)(
             :bar,
             0,
             nil,
             (1613...1616),
             nil
           )
         ),
         [LocalVariableWriteNode(1618...1621)(
            :baz,
            0,
            nil,
            (1618...1621),
            nil
          )],
         SplatNode(1623...1627)(
           (1623...1624),
           LocalVariableWriteNode(1624...1627)(
             :qux,
             0,
             nil,
             (1624...1627),
             nil
           )
         ),
         (1611...1612),
         (1627...1628)
       ),
       (1608...1610)
     ),
     MatchPredicateNode(1630...1640)(
       CallNode(1630...1633)(
         nil,
         nil,
         (1630...1633),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       LocalVariableWriteNode(1637...1640)(:bar, 0, nil, (1637...1640), nil),
       (1634...1636)
     ),
     MatchPredicateNode(1641...1649)(
       CallNode(1641...1644)(
         nil,
         nil,
         (1641...1644),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       IntegerNode(1648...1649)(),
       (1645...1647)
     ),
     MatchPredicateNode(1650...1660)(
       CallNode(1650...1653)(
         nil,
         nil,
         (1650...1653),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FloatNode(1657...1660)(),
       (1654...1656)
     ),
     MatchPredicateNode(1661...1670)(
       CallNode(1661...1664)(
         nil,
         nil,
         (1661...1664),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ImaginaryNode(1668...1670)(IntegerNode(1668...1669)()),
       (1665...1667)
     ),
     MatchPredicateNode(1671...1680)(
       CallNode(1671...1674)(
         nil,
         nil,
         (1671...1674),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RationalNode(1678...1680)(IntegerNode(1678...1679)()),
       (1675...1677)
     ),
     MatchPredicateNode(1681...1692)(
       CallNode(1681...1684)(
         nil,
         nil,
         (1681...1684),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SymbolNode(1688...1692)((1688...1689), (1689...1692), nil, "foo"),
       (1685...1687)
     ),
     MatchPredicateNode(1693...1707)(
       CallNode(1693...1696)(
         nil,
         nil,
         (1693...1696),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SymbolNode(1700...1707)(
         (1700...1703),
         (1703...1706),
         (1706...1707),
         "foo"
       ),
       (1697...1699)
     ),
     MatchPredicateNode(1708...1721)(
       CallNode(1708...1711)(
         nil,
         nil,
         (1708...1711),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       InterpolatedSymbolNode(1715...1721)(
         (1715...1717),
         [StringNode(1717...1720)(nil, (1717...1720), nil, "foo")],
         (1720...1721)
       ),
       (1712...1714)
     ),
     MatchPredicateNode(1722...1734)(
       CallNode(1722...1725)(
         nil,
         nil,
         (1722...1725),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       RegularExpressionNode(1729...1734)(
         (1729...1730),
         (1730...1733),
         (1733...1734),
         "foo",
         0
       ),
       (1726...1728)
     ),
     MatchPredicateNode(1735...1747)(
       CallNode(1735...1738)(
         nil,
         nil,
         (1735...1738),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       XStringNode(1742...1747)(
         (1742...1743),
         (1743...1746),
         (1746...1747),
         "foo"
       ),
       (1739...1741)
     ),
     MatchPredicateNode(1748...1762)(
       CallNode(1748...1751)(
         nil,
         nil,
         (1748...1751),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       XStringNode(1755...1762)(
         (1755...1758),
         (1758...1761),
         (1761...1762),
         "foo"
       ),
       (1752...1754)
     ),
     MatchPredicateNode(1763...1777)(
       CallNode(1763...1766)(
         nil,
         nil,
         (1763...1766),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(1770...1777)(
         [SymbolNode(1773...1776)(nil, (1773...1776), nil, "foo")],
         (1770...1773),
         (1776...1777)
       ),
       (1767...1769)
     ),
     MatchPredicateNode(1778...1792)(
       CallNode(1778...1781)(
         nil,
         nil,
         (1778...1781),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(1785...1792)(
         [SymbolNode(1788...1791)(nil, (1788...1791), nil, "foo")],
         (1785...1788),
         (1791...1792)
       ),
       (1782...1784)
     ),
     MatchPredicateNode(1793...1807)(
       CallNode(1793...1796)(
         nil,
         nil,
         (1793...1796),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(1800...1807)(
         [StringNode(1803...1806)(nil, (1803...1806), nil, "foo")],
         (1800...1803),
         (1806...1807)
       ),
       (1797...1799)
     ),
     MatchPredicateNode(1808...1822)(
       CallNode(1808...1811)(
         nil,
         nil,
         (1808...1811),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       ArrayNode(1815...1822)(
         [StringNode(1818...1821)(nil, (1818...1821), nil, "foo")],
         (1815...1818),
         (1821...1822)
       ),
       (1812...1814)
     ),
     MatchPredicateNode(1823...1837)(
       CallNode(1823...1826)(
         nil,
         nil,
         (1823...1826),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(1830...1837)(
         (1830...1833),
         (1833...1836),
         (1836...1837),
         "foo"
       ),
       (1827...1829)
     ),
     MatchPredicateNode(1838...1852)(
       CallNode(1838...1841)(
         nil,
         nil,
         (1838...1841),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(1845...1852)(
         (1845...1848),
         (1848...1851),
         (1851...1852),
         "foo"
       ),
       (1842...1844)
     ),
     MatchPredicateNode(1853...1865)(
       CallNode(1853...1856)(
         nil,
         nil,
         (1853...1856),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       StringNode(1860...1865)(
         (1860...1861),
         (1861...1864),
         (1864...1865),
         "foo"
       ),
       (1857...1859)
     ),
     MatchPredicateNode(1866...1876)(
       CallNode(1866...1869)(
         nil,
         nil,
         (1866...1869),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       NilNode(1873...1876)(),
       (1870...1872)
     ),
     MatchPredicateNode(1877...1888)(
       CallNode(1877...1880)(
         nil,
         nil,
         (1877...1880),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SelfNode(1884...1888)(),
       (1881...1883)
     ),
     MatchPredicateNode(1889...1900)(
       CallNode(1889...1892)(
         nil,
         nil,
         (1889...1892),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       TrueNode(1896...1900)(),
       (1893...1895)
     ),
     MatchPredicateNode(1901...1913)(
       CallNode(1901...1904)(
         nil,
         nil,
         (1901...1904),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       FalseNode(1908...1913)(),
       (1905...1907)
     ),
     MatchPredicateNode(1914...1929)(
       CallNode(1914...1917)(
         nil,
         nil,
         (1914...1917),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceFileNode(1921...1929)("/fixtures/patterns.txt"),
       (1918...1920)
     ),
     MatchPredicateNode(1930...1945)(
       CallNode(1930...1933)(
         nil,
         nil,
         (1930...1933),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceLineNode(1937...1945)(),
       (1934...1936)
     ),
     MatchPredicateNode(1946...1965)(
       CallNode(1946...1949)(
         nil,
         nil,
         (1946...1949),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       SourceEncodingNode(1953...1965)(),
       (1950...1952)
     ),
     MatchPredicateNode(1966...1983)(
       CallNode(1966...1969)(
         nil,
         nil,
         (1966...1969),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       LambdaNode(1973...1983)(
         [],
         (1973...1975),
         nil,
         StatementsNode(1978...1981)(
           [LocalVariableReadNode(1978...1981)(:bar, 1)]
         )
       ),
       (1970...1972)
     ),
     CaseNode(1985...2010)(
       CallNode(1990...1993)(
         nil,
         nil,
         (1990...1993),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(1995...2006)(
          LocalVariableWriteNode(1998...2001)(
            :bar,
            0,
            nil,
            (1998...2001),
            nil
          ),
          nil,
          (1995...1997),
          (2002...2006)
        )],
       nil,
       (1985...1989),
       (2007...2010)
     ),
     CaseNode(2011...2034)(
       CallNode(2016...2019)(
         nil,
         nil,
         (2016...2019),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2021...2030)(
          IntegerNode(2024...2025)(),
          nil,
          (2021...2023),
          (2026...2030)
        )],
       nil,
       (2011...2015),
       (2031...2034)
     ),
     CaseNode(2035...2060)(
       CallNode(2040...2043)(
         nil,
         nil,
         (2040...2043),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2045...2056)(
          FloatNode(2048...2051)(),
          nil,
          (2045...2047),
          (2052...2056)
        )],
       nil,
       (2035...2039),
       (2057...2060)
     ),
     CaseNode(2061...2085)(
       CallNode(2066...2069)(
         nil,
         nil,
         (2066...2069),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2071...2081)(
          ImaginaryNode(2074...2076)(IntegerNode(2074...2075)()),
          nil,
          (2071...2073),
          (2077...2081)
        )],
       nil,
       (2061...2065),
       (2082...2085)
     ),
     CaseNode(2086...2110)(
       CallNode(2091...2094)(
         nil,
         nil,
         (2091...2094),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2096...2106)(
          RationalNode(2099...2101)(IntegerNode(2099...2100)()),
          nil,
          (2096...2098),
          (2102...2106)
        )],
       nil,
       (2086...2090),
       (2107...2110)
     ),
     CaseNode(2111...2137)(
       CallNode(2116...2119)(
         nil,
         nil,
         (2116...2119),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2121...2133)(
          SymbolNode(2124...2128)((2124...2125), (2125...2128), nil, "foo"),
          nil,
          (2121...2123),
          (2129...2133)
        )],
       nil,
       (2111...2115),
       (2134...2137)
     ),
     CaseNode(2138...2167)(
       CallNode(2143...2146)(
         nil,
         nil,
         (2143...2146),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2148...2163)(
          SymbolNode(2151...2158)(
            (2151...2154),
            (2154...2157),
            (2157...2158),
            "foo"
          ),
          nil,
          (2148...2150),
          (2159...2163)
        )],
       nil,
       (2138...2142),
       (2164...2167)
     ),
     CaseNode(2168...2196)(
       CallNode(2173...2176)(
         nil,
         nil,
         (2173...2176),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2178...2192)(
          InterpolatedSymbolNode(2181...2187)(
            (2181...2183),
            [StringNode(2183...2186)(nil, (2183...2186), nil, "foo")],
            (2186...2187)
          ),
          nil,
          (2178...2180),
          (2188...2192)
        )],
       nil,
       (2168...2172),
       (2193...2196)
     ),
     CaseNode(2197...2224)(
       CallNode(2202...2205)(
         nil,
         nil,
         (2202...2205),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2207...2220)(
          RegularExpressionNode(2210...2215)(
            (2210...2211),
            (2211...2214),
            (2214...2215),
            "foo",
            0
          ),
          nil,
          (2207...2209),
          (2216...2220)
        )],
       nil,
       (2197...2201),
       (2221...2224)
     ),
     CaseNode(2225...2252)(
       CallNode(2230...2233)(
         nil,
         nil,
         (2230...2233),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2235...2248)(
          XStringNode(2238...2243)(
            (2238...2239),
            (2239...2242),
            (2242...2243),
            "foo"
          ),
          nil,
          (2235...2237),
          (2244...2248)
        )],
       nil,
       (2225...2229),
       (2249...2252)
     ),
     CaseNode(2253...2282)(
       CallNode(2258...2261)(
         nil,
         nil,
         (2258...2261),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2263...2278)(
          XStringNode(2266...2273)(
            (2266...2269),
            (2269...2272),
            (2272...2273),
            "foo"
          ),
          nil,
          (2263...2265),
          (2274...2278)
        )],
       nil,
       (2253...2257),
       (2279...2282)
     ),
     CaseNode(2283...2312)(
       CallNode(2288...2291)(
         nil,
         nil,
         (2288...2291),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2293...2308)(
          ArrayNode(2296...2303)(
            [SymbolNode(2299...2302)(nil, (2299...2302), nil, "foo")],
            (2296...2299),
            (2302...2303)
          ),
          nil,
          (2293...2295),
          (2304...2308)
        )],
       nil,
       (2283...2287),
       (2309...2312)
     ),
     CaseNode(2313...2342)(
       CallNode(2318...2321)(
         nil,
         nil,
         (2318...2321),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2323...2338)(
          ArrayNode(2326...2333)(
            [SymbolNode(2329...2332)(nil, (2329...2332), nil, "foo")],
            (2326...2329),
            (2332...2333)
          ),
          nil,
          (2323...2325),
          (2334...2338)
        )],
       nil,
       (2313...2317),
       (2339...2342)
     ),
     CaseNode(2343...2372)(
       CallNode(2348...2351)(
         nil,
         nil,
         (2348...2351),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2353...2368)(
          ArrayNode(2356...2363)(
            [StringNode(2359...2362)(nil, (2359...2362), nil, "foo")],
            (2356...2359),
            (2362...2363)
          ),
          nil,
          (2353...2355),
          (2364...2368)
        )],
       nil,
       (2343...2347),
       (2369...2372)
     ),
     CaseNode(2373...2402)(
       CallNode(2378...2381)(
         nil,
         nil,
         (2378...2381),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2383...2398)(
          ArrayNode(2386...2393)(
            [StringNode(2389...2392)(nil, (2389...2392), nil, "foo")],
            (2386...2389),
            (2392...2393)
          ),
          nil,
          (2383...2385),
          (2394...2398)
        )],
       nil,
       (2373...2377),
       (2399...2402)
     ),
     CaseNode(2403...2432)(
       CallNode(2408...2411)(
         nil,
         nil,
         (2408...2411),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2413...2428)(
          StringNode(2416...2423)(
            (2416...2419),
            (2419...2422),
            (2422...2423),
            "foo"
          ),
          nil,
          (2413...2415),
          (2424...2428)
        )],
       nil,
       (2403...2407),
       (2429...2432)
     ),
     CaseNode(2433...2462)(
       CallNode(2438...2441)(
         nil,
         nil,
         (2438...2441),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2443...2458)(
          StringNode(2446...2453)(
            (2446...2449),
            (2449...2452),
            (2452...2453),
            "foo"
          ),
          nil,
          (2443...2445),
          (2454...2458)
        )],
       nil,
       (2433...2437),
       (2459...2462)
     ),
     CaseNode(2463...2490)(
       CallNode(2468...2471)(
         nil,
         nil,
         (2468...2471),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2473...2486)(
          StringNode(2476...2481)(
            (2476...2477),
            (2477...2480),
            (2480...2481),
            "foo"
          ),
          nil,
          (2473...2475),
          (2482...2486)
        )],
       nil,
       (2463...2467),
       (2487...2490)
     ),
     CaseNode(2491...2516)(
       CallNode(2496...2499)(
         nil,
         nil,
         (2496...2499),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2501...2512)(
          NilNode(2504...2507)(),
          nil,
          (2501...2503),
          (2508...2512)
        )],
       nil,
       (2491...2495),
       (2513...2516)
     ),
     CaseNode(2517...2543)(
       CallNode(2522...2525)(
         nil,
         nil,
         (2522...2525),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2527...2539)(
          SelfNode(2530...2534)(),
          nil,
          (2527...2529),
          (2535...2539)
        )],
       nil,
       (2517...2521),
       (2540...2543)
     ),
     CaseNode(2544...2570)(
       CallNode(2549...2552)(
         nil,
         nil,
         (2549...2552),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2554...2566)(
          TrueNode(2557...2561)(),
          nil,
          (2554...2556),
          (2562...2566)
        )],
       nil,
       (2544...2548),
       (2567...2570)
     ),
     CaseNode(2571...2598)(
       CallNode(2576...2579)(
         nil,
         nil,
         (2576...2579),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2581...2594)(
          FalseNode(2584...2589)(),
          nil,
          (2581...2583),
          (2590...2594)
        )],
       nil,
       (2571...2575),
       (2595...2598)
     ),
     CaseNode(2599...2629)(
       CallNode(2604...2607)(
         nil,
         nil,
         (2604...2607),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2609...2625)(
          SourceFileNode(2612...2620)("/fixtures/patterns.txt"),
          nil,
          (2609...2611),
          (2621...2625)
        )],
       nil,
       (2599...2603),
       (2626...2629)
     ),
     CaseNode(2630...2660)(
       CallNode(2635...2638)(
         nil,
         nil,
         (2635...2638),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2640...2656)(
          SourceLineNode(2643...2651)(),
          nil,
          (2640...2642),
          (2652...2656)
        )],
       nil,
       (2630...2634),
       (2657...2660)
     ),
     CaseNode(2661...2695)(
       CallNode(2666...2669)(
         nil,
         nil,
         (2666...2669),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2671...2691)(
          SourceEncodingNode(2674...2686)(),
          nil,
          (2671...2673),
          (2687...2691)
        )],
       nil,
       (2661...2665),
       (2692...2695)
     ),
     CaseNode(2696...2728)(
       CallNode(2701...2704)(
         nil,
         nil,
         (2701...2704),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2706...2724)(
          LambdaNode(2709...2719)(
            [],
            (2709...2711),
            nil,
            StatementsNode(2714...2717)(
              [LocalVariableReadNode(2714...2717)(:bar, 1)]
            )
          ),
          nil,
          (2706...2708),
          (2720...2724)
        )],
       nil,
       (2696...2700),
       (2725...2728)
     ),
     CaseNode(2730...2762)(
       CallNode(2735...2738)(
         nil,
         nil,
         (2735...2738),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2740...2758)(
          IfNode(2743...2753)(
            (2747...2749),
            LocalVariableReadNode(2750...2753)(:baz, 0),
            StatementsNode(2743...2746)(
              [LocalVariableWriteNode(2743...2746)(
                 :bar,
                 0,
                 nil,
                 (2743...2746),
                 nil
               )]
            ),
            nil,
            nil
          ),
          nil,
          (2740...2742),
          (2754...2758)
        )],
       nil,
       (2730...2734),
       (2759...2762)
     ),
     CaseNode(2763...2793)(
       CallNode(2768...2771)(
         nil,
         nil,
         (2768...2771),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2773...2789)(
          IfNode(2776...2784)(
            (2778...2780),
            LocalVariableReadNode(2781...2784)(:baz, 0),
            StatementsNode(2776...2777)([IntegerNode(2776...2777)()]),
            nil,
            nil
          ),
          nil,
          (2773...2775),
          (2785...2789)
        )],
       nil,
       (2763...2767),
       (2790...2793)
     ),
     CaseNode(2794...2826)(
       CallNode(2799...2802)(
         nil,
         nil,
         (2799...2802),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2804...2822)(
          IfNode(2807...2817)(
            (2811...2813),
            LocalVariableReadNode(2814...2817)(:baz, 0),
            StatementsNode(2807...2810)([FloatNode(2807...2810)()]),
            nil,
            nil
          ),
          nil,
          (2804...2806),
          (2818...2822)
        )],
       nil,
       (2794...2798),
       (2823...2826)
     ),
     CaseNode(2827...2858)(
       CallNode(2832...2835)(
         nil,
         nil,
         (2832...2835),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2837...2854)(
          IfNode(2840...2849)(
            (2843...2845),
            LocalVariableReadNode(2846...2849)(:baz, 0),
            StatementsNode(2840...2842)(
              [ImaginaryNode(2840...2842)(IntegerNode(2840...2841)())]
            ),
            nil,
            nil
          ),
          nil,
          (2837...2839),
          (2850...2854)
        )],
       nil,
       (2827...2831),
       (2855...2858)
     ),
     CaseNode(2859...2890)(
       CallNode(2864...2867)(
         nil,
         nil,
         (2864...2867),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2869...2886)(
          IfNode(2872...2881)(
            (2875...2877),
            LocalVariableReadNode(2878...2881)(:baz, 0),
            StatementsNode(2872...2874)(
              [RationalNode(2872...2874)(IntegerNode(2872...2873)())]
            ),
            nil,
            nil
          ),
          nil,
          (2869...2871),
          (2882...2886)
        )],
       nil,
       (2859...2863),
       (2887...2890)
     ),
     CaseNode(2891...2924)(
       CallNode(2896...2899)(
         nil,
         nil,
         (2896...2899),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2901...2920)(
          IfNode(2904...2915)(
            (2909...2911),
            LocalVariableReadNode(2912...2915)(:baz, 0),
            StatementsNode(2904...2908)(
              [SymbolNode(2904...2908)(
                 (2904...2905),
                 (2905...2908),
                 nil,
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (2901...2903),
          (2916...2920)
        )],
       nil,
       (2891...2895),
       (2921...2924)
     ),
     CaseNode(2925...2961)(
       CallNode(2930...2933)(
         nil,
         nil,
         (2930...2933),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2935...2957)(
          IfNode(2938...2952)(
            (2946...2948),
            LocalVariableReadNode(2949...2952)(:baz, 0),
            StatementsNode(2938...2945)(
              [SymbolNode(2938...2945)(
                 (2938...2941),
                 (2941...2944),
                 (2944...2945),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (2935...2937),
          (2953...2957)
        )],
       nil,
       (2925...2929),
       (2958...2961)
     ),
     CaseNode(2962...2997)(
       CallNode(2967...2970)(
         nil,
         nil,
         (2967...2970),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(2972...2993)(
          IfNode(2975...2988)(
            (2982...2984),
            LocalVariableReadNode(2985...2988)(:baz, 0),
            StatementsNode(2975...2981)(
              [InterpolatedSymbolNode(2975...2981)(
                 (2975...2977),
                 [StringNode(2977...2980)(nil, (2977...2980), nil, "foo")],
                 (2980...2981)
               )]
            ),
            nil,
            nil
          ),
          nil,
          (2972...2974),
          (2989...2993)
        )],
       nil,
       (2962...2966),
       (2994...2997)
     ),
     CaseNode(2998...3032)(
       CallNode(3003...3006)(
         nil,
         nil,
         (3003...3006),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3008...3028)(
          IfNode(3011...3023)(
            (3017...3019),
            LocalVariableReadNode(3020...3023)(:baz, 0),
            StatementsNode(3011...3016)(
              [RegularExpressionNode(3011...3016)(
                 (3011...3012),
                 (3012...3015),
                 (3015...3016),
                 "foo",
                 0
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3008...3010),
          (3024...3028)
        )],
       nil,
       (2998...3002),
       (3029...3032)
     ),
     CaseNode(3033...3067)(
       CallNode(3038...3041)(
         nil,
         nil,
         (3038...3041),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3043...3063)(
          IfNode(3046...3058)(
            (3052...3054),
            LocalVariableReadNode(3055...3058)(:baz, 0),
            StatementsNode(3046...3051)(
              [XStringNode(3046...3051)(
                 (3046...3047),
                 (3047...3050),
                 (3050...3051),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3043...3045),
          (3059...3063)
        )],
       nil,
       (3033...3037),
       (3064...3067)
     ),
     CaseNode(3068...3104)(
       CallNode(3073...3076)(
         nil,
         nil,
         (3073...3076),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3078...3100)(
          IfNode(3081...3095)(
            (3089...3091),
            LocalVariableReadNode(3092...3095)(:baz, 0),
            StatementsNode(3081...3088)(
              [XStringNode(3081...3088)(
                 (3081...3084),
                 (3084...3087),
                 (3087...3088),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3078...3080),
          (3096...3100)
        )],
       nil,
       (3068...3072),
       (3101...3104)
     ),
     CaseNode(3105...3141)(
       CallNode(3110...3113)(
         nil,
         nil,
         (3110...3113),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3115...3137)(
          IfNode(3118...3132)(
            (3126...3128),
            LocalVariableReadNode(3129...3132)(:baz, 0),
            StatementsNode(3118...3125)(
              [ArrayNode(3118...3125)(
                 [SymbolNode(3121...3124)(nil, (3121...3124), nil, "foo")],
                 (3118...3121),
                 (3124...3125)
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3115...3117),
          (3133...3137)
        )],
       nil,
       (3105...3109),
       (3138...3141)
     ),
     CaseNode(3142...3178)(
       CallNode(3147...3150)(
         nil,
         nil,
         (3147...3150),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3152...3174)(
          IfNode(3155...3169)(
            (3163...3165),
            LocalVariableReadNode(3166...3169)(:baz, 0),
            StatementsNode(3155...3162)(
              [ArrayNode(3155...3162)(
                 [SymbolNode(3158...3161)(nil, (3158...3161), nil, "foo")],
                 (3155...3158),
                 (3161...3162)
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3152...3154),
          (3170...3174)
        )],
       nil,
       (3142...3146),
       (3175...3178)
     ),
     CaseNode(3179...3215)(
       CallNode(3184...3187)(
         nil,
         nil,
         (3184...3187),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3189...3211)(
          IfNode(3192...3206)(
            (3200...3202),
            LocalVariableReadNode(3203...3206)(:baz, 0),
            StatementsNode(3192...3199)(
              [ArrayNode(3192...3199)(
                 [StringNode(3195...3198)(nil, (3195...3198), nil, "foo")],
                 (3192...3195),
                 (3198...3199)
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3189...3191),
          (3207...3211)
        )],
       nil,
       (3179...3183),
       (3212...3215)
     ),
     CaseNode(3216...3252)(
       CallNode(3221...3224)(
         nil,
         nil,
         (3221...3224),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3226...3248)(
          IfNode(3229...3243)(
            (3237...3239),
            LocalVariableReadNode(3240...3243)(:baz, 0),
            StatementsNode(3229...3236)(
              [ArrayNode(3229...3236)(
                 [StringNode(3232...3235)(nil, (3232...3235), nil, "foo")],
                 (3229...3232),
                 (3235...3236)
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3226...3228),
          (3244...3248)
        )],
       nil,
       (3216...3220),
       (3249...3252)
     ),
     CaseNode(3253...3289)(
       CallNode(3258...3261)(
         nil,
         nil,
         (3258...3261),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3263...3285)(
          IfNode(3266...3280)(
            (3274...3276),
            LocalVariableReadNode(3277...3280)(:baz, 0),
            StatementsNode(3266...3273)(
              [StringNode(3266...3273)(
                 (3266...3269),
                 (3269...3272),
                 (3272...3273),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3263...3265),
          (3281...3285)
        )],
       nil,
       (3253...3257),
       (3286...3289)
     ),
     CaseNode(3290...3326)(
       CallNode(3295...3298)(
         nil,
         nil,
         (3295...3298),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3300...3322)(
          IfNode(3303...3317)(
            (3311...3313),
            LocalVariableReadNode(3314...3317)(:baz, 0),
            StatementsNode(3303...3310)(
              [StringNode(3303...3310)(
                 (3303...3306),
                 (3306...3309),
                 (3309...3310),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3300...3302),
          (3318...3322)
        )],
       nil,
       (3290...3294),
       (3323...3326)
     ),
     CaseNode(3327...3361)(
       CallNode(3332...3335)(
         nil,
         nil,
         (3332...3335),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3337...3357)(
          IfNode(3340...3352)(
            (3346...3348),
            LocalVariableReadNode(3349...3352)(:baz, 0),
            StatementsNode(3340...3345)(
              [StringNode(3340...3345)(
                 (3340...3341),
                 (3341...3344),
                 (3344...3345),
                 "foo"
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3337...3339),
          (3353...3357)
        )],
       nil,
       (3327...3331),
       (3358...3361)
     ),
     CaseNode(3362...3394)(
       CallNode(3367...3370)(
         nil,
         nil,
         (3367...3370),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3372...3390)(
          IfNode(3375...3385)(
            (3379...3381),
            LocalVariableReadNode(3382...3385)(:baz, 0),
            StatementsNode(3375...3378)([NilNode(3375...3378)()]),
            nil,
            nil
          ),
          nil,
          (3372...3374),
          (3386...3390)
        )],
       nil,
       (3362...3366),
       (3391...3394)
     ),
     CaseNode(3395...3428)(
       CallNode(3400...3403)(
         nil,
         nil,
         (3400...3403),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3405...3424)(
          IfNode(3408...3419)(
            (3413...3415),
            LocalVariableReadNode(3416...3419)(:baz, 0),
            StatementsNode(3408...3412)([SelfNode(3408...3412)()]),
            nil,
            nil
          ),
          nil,
          (3405...3407),
          (3420...3424)
        )],
       nil,
       (3395...3399),
       (3425...3428)
     ),
     CaseNode(3429...3462)(
       CallNode(3434...3437)(
         nil,
         nil,
         (3434...3437),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3439...3458)(
          IfNode(3442...3453)(
            (3447...3449),
            LocalVariableReadNode(3450...3453)(:baz, 0),
            StatementsNode(3442...3446)([TrueNode(3442...3446)()]),
            nil,
            nil
          ),
          nil,
          (3439...3441),
          (3454...3458)
        )],
       nil,
       (3429...3433),
       (3459...3462)
     ),
     CaseNode(3463...3497)(
       CallNode(3468...3471)(
         nil,
         nil,
         (3468...3471),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3473...3493)(
          IfNode(3476...3488)(
            (3482...3484),
            LocalVariableReadNode(3485...3488)(:baz, 0),
            StatementsNode(3476...3481)([FalseNode(3476...3481)()]),
            nil,
            nil
          ),
          nil,
          (3473...3475),
          (3489...3493)
        )],
       nil,
       (3463...3467),
       (3494...3497)
     ),
     CaseNode(3498...3535)(
       CallNode(3503...3506)(
         nil,
         nil,
         (3503...3506),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3508...3531)(
          IfNode(3511...3526)(
            (3520...3522),
            LocalVariableReadNode(3523...3526)(:baz, 0),
            StatementsNode(3511...3519)(
              [SourceFileNode(3511...3519)("/fixtures/patterns.txt")]
            ),
            nil,
            nil
          ),
          nil,
          (3508...3510),
          (3527...3531)
        )],
       nil,
       (3498...3502),
       (3532...3535)
     ),
     CaseNode(3536...3573)(
       CallNode(3541...3544)(
         nil,
         nil,
         (3541...3544),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3546...3569)(
          IfNode(3549...3564)(
            (3558...3560),
            LocalVariableReadNode(3561...3564)(:baz, 0),
            StatementsNode(3549...3557)([SourceLineNode(3549...3557)()]),
            nil,
            nil
          ),
          nil,
          (3546...3548),
          (3565...3569)
        )],
       nil,
       (3536...3540),
       (3570...3573)
     ),
     CaseNode(3574...3615)(
       CallNode(3579...3582)(
         nil,
         nil,
         (3579...3582),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3584...3611)(
          IfNode(3587...3606)(
            (3600...3602),
            LocalVariableReadNode(3603...3606)(:baz, 0),
            StatementsNode(3587...3599)([SourceEncodingNode(3587...3599)()]),
            nil,
            nil
          ),
          nil,
          (3584...3586),
          (3607...3611)
        )],
       nil,
       (3574...3578),
       (3612...3615)
     ),
     CaseNode(3616...3655)(
       CallNode(3621...3624)(
         nil,
         nil,
         (3621...3624),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       [InNode(3626...3651)(
          IfNode(3629...3646)(
            (3640...3642),
            LocalVariableReadNode(3643...3646)(:baz, 0),
            StatementsNode(3629...3639)(
              [LambdaNode(3629...3639)(
                 [],
                 (3629...3631),
                 nil,
                 StatementsNode(3634...3637)(
                   [LocalVariableReadNode(3634...3637)(:bar, 1)]
                 )
               )]
            ),
            nil,
            nil
          ),
          nil,
          (3626...3628),
          (3647...3651)
        )],
       nil,
       (3616...3620),
       (3652...3655)
     ),
     IfNode(3657...3671)(
       (3657...3659),
       MatchPredicateNode(3660...3667)(
         CallNode(3660...3661)(
           nil,
           nil,
           (3660...3661),
           nil,
           nil,
           nil,
           nil,
           0,
           "a"
         ),
         ArrayPatternNode(3665...3667)(
           nil,
           [],
           nil,
           [],
           (3665...3666),
           (3666...3667)
         ),
         (3662...3664)
       ),
       nil,
       nil,
       (3668...3671)
     ),
     MatchRequiredNode(3673...3685)(
       CallNode(3673...3674)(
         nil,
         nil,
         (3673...3674),
         nil,
         nil,
         nil,
         nil,
         0,
         "a"
       ),
       ArrayPatternNode(3678...3685)(
         nil,
         [LocalVariableWriteNode(3682...3683)(:b, 0, nil, (3682...3683), nil)],
         nil,
         [],
         (3678...3679),
         (3684...3685)
       ),
       (3675...3677)
     ),
     MatchPredicateNode(3687...3725)(
       CallNode(3687...3690)(
         nil,
         nil,
         (3687...3690),
         nil,
         nil,
         nil,
         nil,
         0,
         "foo"
       ),
       HashPatternNode(3694...3725)(
         ConstantReadNode(3694...3695)(),
         [AssocNode(3699...3723)(
            SymbolNode(3699...3703)(nil, (3699...3702), (3702...3703), "bar"),
            HashPatternNode(3704...3723)(
              ConstantReadNode(3704...3705)(),
              [AssocNode(3711...3719)(
                 SymbolNode(3711...3717)(
                   nil,
                   (3711...3716),
                   (3716...3717),
                   "value"
                 ),
                 LocalVariableWriteNode(3718...3719)(
                   :a,
                   0,
                   nil,
                   (3718...3719),
                   nil
                 ),
                 nil
               )],
              nil,
              (3705...3706),
              (3722...3723)
            ),
            nil
          )],
         nil,
         (3695...3696),
         (3724...3725)
       ),
       (3691...3693)
     )]
  )
)
