ProgramNode(0...23)(
  [],
  StatementsNode(0...23)(
    [WhileNode(0...23)(
       (0...5),
       CallNode(6...16)(
         ParenthesesNode(10...16)(
           StatementsNode(11...15)([TrueNode(11...15)()]),
           (10...11),
           (15...16)
         ),
         nil,
         (6...9),
         nil,
         nil,
         nil,
         nil,
         0,
         "!"
       ),
       nil
     )]
  )
)
