ProgramNode(0...29)(
  [],
  StatementsNode(0...29)(
    [CallNode(0...11)(
       ParenthesesNode(1...11)(
         StatementsNode(2...10)(
           [RangeNode(2...10)(
              CallNode(2...5)(nil, nil, (2...5), nil, nil, nil, nil, 0, "foo"),
              CallNode(7...10)(
                nil,
                nil,
                (7...10),
                nil,
                nil,
                nil,
                nil,
                0,
                "bar"
              ),
              (5...7),
              0
            )]
         ),
         (1...2),
         (10...11)
       ),
       nil,
       (0...1),
       nil,
       nil,
       nil,
       nil,
       0,
       "!"
     ),
     IfNode(13...29)(
       (13...15),
       RangeNode(16...24)(
         CallNode(16...19)(nil, nil, (16...19), nil, nil, nil, nil, 0, "foo"),
         CallNode(21...24)(nil, nil, (21...24), nil, nil, nil, nil, 0, "bar"),
         (19...21),
         0
       ),
       nil,
       nil,
       (26...29)
     )]
  )
)
