ProgramNode(0...25)(
  [],
  StatementsNode(0...25)(
    [CallNode(0...25)(
       nil,
       nil,
       (0...1),
       nil,
       ArgumentsNode(2...18)(
         [CallNode(2...13)(
            nil,
            nil,
            (2...3),
            nil,
            nil,
            nil,
            BlockNode(3...13)(
              [],
              nil,
              StatementsNode(4...12)(
                [CallNode(4...8)(
                   nil,
                   nil,
                   (4...5),
                   (5...6),
                   ArgumentsNode(6...7)(
                     [CallNode(6...7)(
                        nil,
                        nil,
                        (6...7),
                        nil,
                        nil,
                        nil,
                        nil,
                        0,
                        "p"
                      )]
                   ),
                   (7...8),
                   nil,
                   0,
                   "p"
                 ),
                 CallNode(9...12)(
                   nil,
                   nil,
                   (9...10),
                   nil,
                   ArgumentsNode(11...12)(
                     [CallNode(11...12)(
                        nil,
                        nil,
                        (11...12),
                        nil,
                        nil,
                        nil,
                        nil,
                        0,
                        "p"
                      )]
                   ),
                   nil,
                   nil,
                   0,
                   "p"
                 )]
              ),
              (3...4),
              (12...13)
            ),
            0,
            "p"
          ),
          CallNode(15...18)(nil, nil, (15...18), nil, nil, nil, nil, 0, "tap")]
       ),
       nil,
       BlockNode(19...25)([], nil, nil, (19...21), (22...25)),
       0,
       "p"
     )]
  )
)
