+- Input[@CanonicalImage = null, @ExcludedLinesCount = 0, @ExcludedRangesCount = 0]
   +- Global[@CanonicalImage = null]
   |  +- Block[@CanonicalImage = null]
   |     +- DeclarativeSection[@CanonicalImage = null]
   |     |  +- DeclarativeUnit[@CanonicalImage = null]
   |     |     +- VariableOrConstantDeclaration[@CanonicalImage = null]
   |     |        +- VariableOrConstantDeclarator[@CanonicalImage = "NT NT_TYPE := NT_TYPE", @Image = "nt nt_type := nt_type"]
   |     |           +- VariableOrConstantDeclaratorId[@Array = false, @ArrayDepth = 0, @CanonicalImage = "NT", @Image = "nt"]
   |     |           |  +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     |           +- Datatype[@CanonicalImage = "NT_TYPE", @Image = "nt_type", @TypeImage = "nt_type"]
   |     |           |  +- QualifiedName[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |           |     +- UnqualifiedID[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |           +- VariableOrConstantInitializer[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |              +- Expression[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |                 +- PrimaryPrefix[@CanonicalImage = "NT_TYPE", @Image = "nt_type", @SelfModifier = false]
   |     |                    +- FunctionCall[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |                       +- FunctionName[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |                       |  +- ID[@CanonicalImage = "NT_TYPE", @Image = "nt_type"]
   |     |                       +- Arguments[@ArgumentCount = 6, @CanonicalImage = null]
   |     |                          +- ArgumentList[@CanonicalImage = null]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                             |  +- Expression[@CanonicalImage = "11", @Image = "11"]
   |     |                             |     +- PrimaryPrefix[@CanonicalImage = "11", @Image = "11", @SelfModifier = false]
   |     |                             |        +- Literal[@CanonicalImage = "11", @Image = "11"]
   |     |                             |           +- NumericLiteral[@CanonicalImage = "11", @Image = "11"]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                             |  +- Expression[@CanonicalImage = "22", @Image = "22"]
   |     |                             |     +- PrimaryPrefix[@CanonicalImage = "22", @Image = "22", @SelfModifier = false]
   |     |                             |        +- Literal[@CanonicalImage = "22", @Image = "22"]
   |     |                             |           +- NumericLiteral[@CanonicalImage = "22", @Image = "22"]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                             |  +- Expression[@CanonicalImage = "33", @Image = "33"]
   |     |                             |     +- PrimaryPrefix[@CanonicalImage = "33", @Image = "33", @SelfModifier = false]
   |     |                             |        +- Literal[@CanonicalImage = "33", @Image = "33"]
   |     |                             |           +- NumericLiteral[@CanonicalImage = "33", @Image = "33"]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                             |  +- Expression[@CanonicalImage = "44", @Image = "44"]
   |     |                             |     +- PrimaryPrefix[@CanonicalImage = "44", @Image = "44", @SelfModifier = false]
   |     |                             |        +- Literal[@CanonicalImage = "44", @Image = "44"]
   |     |                             |           +- NumericLiteral[@CanonicalImage = "44", @Image = "44"]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                             |  +- Expression[@CanonicalImage = "55", @Image = "55"]
   |     |                             |     +- PrimaryPrefix[@CanonicalImage = "55", @Image = "55", @SelfModifier = false]
   |     |                             |        +- Literal[@CanonicalImage = "55", @Image = "55"]
   |     |                             |           +- NumericLiteral[@CanonicalImage = "55", @Image = "55"]
   |     |                             +- Argument[@CanonicalImage = null]
   |     |                                +- Expression[@CanonicalImage = "66", @Image = "66"]
   |     |                                   +- PrimaryPrefix[@CanonicalImage = "66", @Image = "66", @SelfModifier = false]
   |     |                                      +- Literal[@CanonicalImage = "66", @Image = "66"]
   |     |                                         +- NumericLiteral[@CanonicalImage = "66", @Image = "66"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "PRINT_NT", @Image = "print_nt", @SelfModifier = false]
   |     |           +- FunctionCall[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- FunctionName[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              |  +- ID[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |     |                 +- ArgumentList[@CanonicalImage = null]
   |     |                    +- Argument[@CanonicalImage = null]
   |     |                       +- Expression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                          +- PrimaryPrefix[@CanonicalImage = "NT", @Image = "nt", @SelfModifier = false]
   |     |                             +- SimpleExpression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                +- Column[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                   +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM", @SelfModifier = false]
   |     |           +- SimpleExpression[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM"]
   |     |              +- TableName[@CanonicalImage = "NT", @Image = "nt"]
   |     |              |  +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     |              +- Column[@CanonicalImage = "TRIM", @Image = "TRIM"]
   |     |                 +- ID[@CanonicalImage = "TRIM", @Image = "TRIM"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "PRINT_NT", @Image = "print_nt", @SelfModifier = false]
   |     |           +- FunctionCall[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- FunctionName[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              |  +- ID[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |     |                 +- ArgumentList[@CanonicalImage = null]
   |     |                    +- Argument[@CanonicalImage = null]
   |     |                       +- Expression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                          +- PrimaryPrefix[@CanonicalImage = "NT", @Image = "nt", @SelfModifier = false]
   |     |                             +- SimpleExpression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                +- Column[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                   +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "NT.DELETE", @Image = "nt.DELETE"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "NT.DELETE", @Image = "nt.DELETE", @SelfModifier = false]
   |     |           +- FunctionCall[@CanonicalImage = "NT.DELETE", @Image = "nt.DELETE"]
   |     |              +- FunctionName[@CanonicalImage = "NT.DELETE", @Image = "nt.DELETE"]
   |     |              |  +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     |              |  +- ID[@CanonicalImage = "DELETE", @Image = "DELETE"]
   |     |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |     |                 +- ArgumentList[@CanonicalImage = null]
   |     |                    +- Argument[@CanonicalImage = null]
   |     |                       +- Expression[@CanonicalImage = "4", @Image = "4"]
   |     |                          +- PrimaryPrefix[@CanonicalImage = "4", @Image = "4", @SelfModifier = false]
   |     |                             +- Literal[@CanonicalImage = "4", @Image = "4"]
   |     |                                +- NumericLiteral[@CanonicalImage = "4", @Image = "4"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "PRINT_NT", @Image = "print_nt", @SelfModifier = false]
   |     |           +- FunctionCall[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- FunctionName[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              |  +- ID[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |     |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |     |                 +- ArgumentList[@CanonicalImage = null]
   |     |                    +- Argument[@CanonicalImage = null]
   |     |                       +- Expression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                          +- PrimaryPrefix[@CanonicalImage = "NT", @Image = "nt", @SelfModifier = false]
   |     |                             +- SimpleExpression[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                +- Column[@CanonicalImage = "NT", @Image = "nt"]
   |     |                                   +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     +- Statement[@CanonicalImage = null]
   |     |  +- UnlabelledStatement[@CanonicalImage = null]
   |     |     +- Expression[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM"]
   |     |        +- PrimaryPrefix[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM", @SelfModifier = false]
   |     |           +- FunctionCall[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM"]
   |     |              +- FunctionName[@CanonicalImage = "NT.TRIM", @Image = "nt.TRIM"]
   |     |              |  +- ID[@CanonicalImage = "NT", @Image = "nt"]
   |     |              |  +- ID[@CanonicalImage = "TRIM", @Image = "TRIM"]
   |     |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |     |                 +- ArgumentList[@CanonicalImage = null]
   |     |                    +- Argument[@CanonicalImage = null]
   |     |                       +- Expression[@CanonicalImage = "2", @Image = "2"]
   |     |                          +- PrimaryPrefix[@CanonicalImage = "2", @Image = "2", @SelfModifier = false]
   |     |                             +- Literal[@CanonicalImage = "2", @Image = "2"]
   |     |                                +- NumericLiteral[@CanonicalImage = "2", @Image = "2"]
   |     +- Statement[@CanonicalImage = null]
   |        +- UnlabelledStatement[@CanonicalImage = null]
   |           +- Expression[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |              +- PrimaryPrefix[@CanonicalImage = "PRINT_NT", @Image = "print_nt", @SelfModifier = false]
   |                 +- FunctionCall[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |                    +- FunctionName[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |                    |  +- ID[@CanonicalImage = "PRINT_NT", @Image = "print_nt"]
   |                    +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
   |                       +- ArgumentList[@CanonicalImage = null]
   |                          +- Argument[@CanonicalImage = null]
   |                             +- Expression[@CanonicalImage = "NT", @Image = "nt"]
   |                                +- PrimaryPrefix[@CanonicalImage = "NT", @Image = "nt", @SelfModifier = false]
   |                                   +- SimpleExpression[@CanonicalImage = "NT", @Image = "nt"]
   |                                      +- Column[@CanonicalImage = "NT", @Image = "nt"]
   |                                         +- ID[@CanonicalImage = "NT", @Image = "nt"]
   +- Global[@CanonicalImage = null]
      +- ProgramUnit[@CanonicalImage = null, @MethodName = "distinguishXML", @Name = "distinguishXML", @ObjectName = null]
         +- MethodDeclarator[@CanonicalImage = "DISTINGUISHXML", @Image = "distinguishXML", @ParameterCount = 1]
         |  +- ObjectNameDeclaration[@CanonicalImage = "DISTINGUISHXML", @Image = "distinguishXML"]
         |  |  +- ID[@CanonicalImage = "DISTINGUISHXML", @Image = "distinguishXML"]
         |  +- FormalParameters[@CanonicalImage = "()", @Image = "()"]
         |  +- Datatype[@CanonicalImage = "TEXT", @Image = "text", @TypeImage = "text"]
         |     +- QualifiedName[@CanonicalImage = "TEXT", @Image = "text"]
         |        +- UnqualifiedID[@CanonicalImage = "TEXT", @Image = "text"]
         +- DeclarativeSection[@CanonicalImage = null]
         |  +- DeclarativeUnit[@CanonicalImage = null]
         |  |  +- VariableOrConstantDeclaration[@CanonicalImage = null]
         |  |     +- VariableOrConstantDeclarator[@CanonicalImage = "RETNODES XMLSEQUENCETYPE := XMLSEQUENCETYPE", @Image = "retNodes XMLSequenceType := XMLSequenceType"]
         |  |        +- VariableOrConstantDeclaratorId[@Array = false, @ArrayDepth = 0, @CanonicalImage = "RETNODES", @Image = "retNodes"]
         |  |        |  +- ID[@CanonicalImage = "RETNODES", @Image = "retNodes"]
         |  |        +- Datatype[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType", @TypeImage = "XMLSequenceType"]
         |  |        |  +- QualifiedName[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |        |     +- UnqualifiedID[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |        +- VariableOrConstantInitializer[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |           +- Expression[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |              +- PrimaryPrefix[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType", @SelfModifier = false]
         |  |                 +- FunctionCall[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |                    +- FunctionName[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |                    |  +- ID[@CanonicalImage = "XMLSEQUENCETYPE", @Image = "XMLSequenceType"]
         |  |                    +- Arguments[@ArgumentCount = 0, @CanonicalImage = null]
         |  +- DeclarativeUnit[@CanonicalImage = null]
         |  |  +- VariableOrConstantDeclaration[@CanonicalImage = null]
         |  |     +- VariableOrConstantDeclarator[@CanonicalImage = "CAPACITY PLS_INTEGER := 32", @Image = "capacity PLS_INTEGER := 32"]
         |  |        +- VariableOrConstantDeclaratorId[@Array = false, @ArrayDepth = 0, @CanonicalImage = "CAPACITY", @Image = "capacity"]
         |  |        |  +- ID[@CanonicalImage = "CAPACITY", @Image = "capacity"]
         |  |        +- Datatype[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER", @TypeImage = "PLS_INTEGER"]
         |  |        |  +- ScalarDataTypeName[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER"]
         |  |        +- VariableOrConstantInitializer[@CanonicalImage = "32", @Image = "32"]
         |  |           +- Expression[@CanonicalImage = "32", @Image = "32"]
         |  |              +- PrimaryPrefix[@CanonicalImage = "32", @Image = "32", @SelfModifier = false]
         |  |                 +- Literal[@CanonicalImage = "32", @Image = "32"]
         |  |                    +- NumericLiteral[@CanonicalImage = "32", @Image = "32"]
         |  +- DeclarativeUnit[@CanonicalImage = null]
         |     +- VariableOrConstantDeclaration[@CanonicalImage = null]
         |        +- VariableOrConstantDeclarator[@CanonicalImage = "J PLS_INTEGER := 1", @Image = "j PLS_INTEGER := 1"]
         |           +- VariableOrConstantDeclaratorId[@Array = false, @ArrayDepth = 0, @CanonicalImage = "J", @Image = "j"]
         |           |  +- ID[@CanonicalImage = "J", @Image = "j"]
         |           +- Datatype[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER", @TypeImage = "PLS_INTEGER"]
         |           |  +- ScalarDataTypeName[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER"]
         |           +- VariableOrConstantInitializer[@CanonicalImage = "1", @Image = "1"]
         |              +- Expression[@CanonicalImage = "1", @Image = "1"]
         |                 +- PrimaryPrefix[@CanonicalImage = "1", @Image = "1", @SelfModifier = false]
         |                    +- Literal[@CanonicalImage = "1", @Image = "1"]
         |                       +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
         +- Statement[@CanonicalImage = null]
         |  +- UnlabelledStatement[@CanonicalImage = null]
         |     +- Expression[@CanonicalImage = "RETNODES.TRIM", @Image = "retNodes.trim"]
         |        +- PrimaryPrefix[@CanonicalImage = "RETNODES.TRIM", @Image = "retNodes.trim", @SelfModifier = false]
         |           +- FunctionCall[@CanonicalImage = "RETNODES.TRIM", @Image = "retNodes.trim"]
         |              +- FunctionName[@CanonicalImage = "RETNODES.TRIM", @Image = "retNodes.trim"]
         |              |  +- ID[@CanonicalImage = "RETNODES", @Image = "retNodes"]
         |              |  +- ID[@CanonicalImage = "TRIM", @Image = "trim"]
         |              +- Arguments[@ArgumentCount = 1, @CanonicalImage = null]
         |                 +- ArgumentList[@CanonicalImage = null]
         |                    +- Argument[@CanonicalImage = null]
         |                       +- Expression[@CanonicalImage = "CAPACITY - J + 1", @Image = "capacity - j + 1"]
         |                          +- AdditiveExpression[@CanonicalImage = "CAPACITY - J + 1", @Image = "capacity - j + 1"]
         |                             +- PrimaryPrefix[@CanonicalImage = "CAPACITY", @Image = "capacity", @SelfModifier = false]
         |                             |  +- SimpleExpression[@CanonicalImage = "CAPACITY", @Image = "capacity"]
         |                             |     +- Column[@CanonicalImage = "CAPACITY", @Image = "capacity"]
         |                             |        +- ID[@CanonicalImage = "CAPACITY", @Image = "capacity"]
         |                             +- PrimaryPrefix[@CanonicalImage = "J", @Image = "j", @SelfModifier = false]
         |                             |  +- SimpleExpression[@CanonicalImage = "J", @Image = "j"]
         |                             |     +- Column[@CanonicalImage = "J", @Image = "j"]
         |                             |        +- ID[@CanonicalImage = "J", @Image = "j"]
         |                             +- PrimaryPrefix[@CanonicalImage = "1", @Image = "1", @SelfModifier = false]
         |                                +- Literal[@CanonicalImage = "1", @Image = "1"]
         |                                   +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
         +- Statement[@CanonicalImage = null]
            +- UnlabelledStatement[@CanonicalImage = null]
               +- ReturnStatement[@CanonicalImage = null]
                  +- Expression[@CanonicalImage = "\'DONE\'", @Image = "\'done\'"]
                     +- PrimaryPrefix[@CanonicalImage = "\'DONE\'", @Image = "\'done\'", @SelfModifier = false]
                        +- Literal[@CanonicalImage = "\'DONE\'", @Image = "\'done\'"]
                           +- StringLiteral[@CanonicalImage = "\'DONE\'", @Image = "\'done\'", @String = "done"]
