ProgramNode(0...190)(
  [],
  StatementsNode(0...190)(
    [WhileNode(0...45)(
       (0...5),
       DefNode(6...33)(
         (10...13),
         nil,
         ParametersNode(14...28)(
           [],
           [OptionalParameterNode(14...28)(
              :a,
              (14...15),
              (16...17),
              CallNode(18...28)(
                nil,
                nil,
                (18...21),
                nil,
                nil,
                nil,
                BlockNode(22...28)([], nil, nil, (22...24), (25...28)),
                0,
                "tap"
              )
            )],
           [],
           nil,
           [],
           nil,
           nil
         ),
         nil,
         [:a],
         (6...9),
         nil,
         nil,
         nil,
         nil,
         (30...33)
       ),
       StatementsNode(35...40)([BreakNode(35...40)(nil, (35...40))])
     ),
     WhileNode(47...89)(
       (47...52),
       DefNode(53...77)(
         (57...60),
         nil,
         nil,
         StatementsNode(62...72)(
           [CallNode(62...72)(
              nil,
              nil,
              (62...65),
              nil,
              nil,
              nil,
              BlockNode(66...72)([], nil, nil, (66...68), (69...72)),
              0,
              "tap"
            )]
         ),
         [],
         (53...56),
         nil,
         nil,
         nil,
         nil,
         (74...77)
       ),
       StatementsNode(79...84)([BreakNode(79...84)(nil, (79...84))])
     ),
     WhileNode(91...141)(
       (91...96),
       DefNode(97...129)(
         (106...109),
         SelfNode(101...105)(),
         ParametersNode(110...124)(
           [],
           [OptionalParameterNode(110...124)(
              :a,
              (110...111),
              (112...113),
              CallNode(114...124)(
                nil,
                nil,
                (114...117),
                nil,
                nil,
                nil,
                BlockNode(118...124)([], nil, nil, (118...120), (121...124)),
                0,
                "tap"
              )
            )],
           [],
           nil,
           [],
           nil,
           nil
         ),
         nil,
         [:a],
         (97...100),
         (105...106),
         nil,
         nil,
         nil,
         (126...129)
       ),
       StatementsNode(131...136)([BreakNode(131...136)(nil, (131...136))])
     ),
     WhileNode(143...190)(
       (143...148),
       DefNode(149...178)(
         (158...161),
         SelfNode(153...157)(),
         nil,
         StatementsNode(163...173)(
           [CallNode(163...173)(
              nil,
              nil,
              (163...166),
              nil,
              nil,
              nil,
              BlockNode(167...173)([], nil, nil, (167...169), (170...173)),
              0,
              "tap"
            )]
         ),
         [],
         (149...152),
         (157...158),
         nil,
         nil,
         nil,
         (175...178)
       ),
       StatementsNode(180...185)([BreakNode(180...185)(nil, (180...185))])
     )]
  )
)
