ProgramNode(0...15)(
  [],
  StatementsNode(0...15)(
    [IfNode(0...15)(
       nil,
       CallNode(0...1)(nil, nil, (0...1), nil, nil, nil, nil, 0, "a"),
       StatementsNode(4...10)(
         [CallNode(4...10)(
            CallNode(4...5)(nil, nil, (4...5), nil, nil, nil, nil, 0, "b"),
            nil,
            (6...7),
            nil,
            ArgumentsNode(8...10)(
              [StringNode(8...10)((8...9), (9...9), (9...10), "")]
            ),
            nil,
            nil,
            0,
            "&"
          )]
       ),
       ElseNode(10...15)(
         (10...11),
         StatementsNode(12...15)([NilNode(12...15)()]),
         nil
       ),
       nil
     )]
  )
)
