ProgramNode(0...33)(
  [],
  StatementsNode(0...33)(
    [CallNode(0...33)(
       CallNode(0...16)(
         CallNode(0...1)(nil, nil, (0...1), nil, nil, nil, nil, 0, "a"),
         (1...2),
         (2...3),
         nil,
         ArgumentsNode(4...7)(
           [CallNode(4...7)(
              nil,
              nil,
              (4...5),
              (5...6),
              nil,
              (6...7),
              nil,
              0,
              "c"
            )]
         ),
         nil,
         BlockNode(8...16)(
           [],
           nil,
           StatementsNode(11...12)(
             [CallNode(11...12)(
                nil,
                nil,
                (11...12),
                nil,
                nil,
                nil,
                nil,
                0,
                "d"
              )]
           ),
           (8...10),
           (13...16)
         ),
         0,
         "b"
       ),
       (16...17),
       (17...18),
       nil,
       ArgumentsNode(19...20)(
         [CallNode(19...20)(nil, nil, (19...20), nil, nil, nil, nil, 0, "f")]
       ),
       nil,
       BlockNode(21...33)(
         [:g],
         BlockParametersNode(24...27)(
           ParametersNode(25...26)(
             [RequiredParameterNode(25...26)(:g)],
             [],
             [],
             nil,
             [],
             nil,
             nil
           ),
           [],
           (24...25),
           (26...27)
         ),
         StatementsNode(28...29)(
           [CallNode(28...29)(nil, nil, (28...29), nil, nil, nil, nil, 0, "h")]
         ),
         (21...23),
         (30...33)
       ),
       0,
       "e"
     )]
  )
)
