ProgramNode(0...24)(
  [],
  StatementsNode(0...24)(
    [IfNode(0...24)(
       (0...2),
       CallNode(3...15)(
         nil,
         nil,
         (3...7),
         nil,
         ArgumentsNode(8...15)(
           [StringNode(8...10)((8...9), (9...10), nil, "d"),
            CallNode(12...15)(
              nil,
              nil,
              (12...15),
              nil,
              nil,
              nil,
              nil,
              0,
              "dir"
            )]
         ),
         nil,
         nil,
         0,
         "test"
       ),
       nil,
       nil,
       (21...24)
     )]
  )
)
