COMPILATION_UNIT -> COMPILATION_UNIT [2:1]
|--PACKAGE_DEF -> package [2:1]
|   |--ANNOTATIONS -> ANNOTATIONS [2:48]
|   |--DOT -> . [2:48]
|   |   |--DOT -> . [2:40]
|   |   |   |--DOT -> . [2:29]
|   |   |   |   |--DOT -> . [2:23]
|   |   |   |   |   |--DOT -> . [2:12]
|   |   |   |   |   |   |--IDENT -> com [2:9]
|   |   |   |   |   |   `--IDENT -> puppycrawl [2:13]
|   |   |   |   |   `--IDENT -> tools [2:24]
|   |   |   |   `--IDENT -> checkstyle [2:30]
|   |   |   `--IDENT -> grammar [2:41]
|   |   `--IDENT -> java16 [2:49]
|   `--SEMI -> ; [2:55]
`--CLASS_DEF -> CLASS_DEF [4:1]
    |--MODIFIERS -> MODIFIERS [4:1]
    |   `--LITERAL_PUBLIC -> public [4:1]
    |--LITERAL_CLASS -> class [4:8]
    |--IDENT -> InputPatternVariableWithModifiers [4:14]
    `--OBJBLOCK -> OBJBLOCK [4:48]
        |--LCURLY -> { [4:48]
        |--METHOD_DEF -> METHOD_DEF [5:5]
        |   |--MODIFIERS -> MODIFIERS [5:5]
        |   |   `--LITERAL_STATIC -> static [5:5]
        |   |--TYPE -> TYPE [5:12]
        |   |   `--LITERAL_VOID -> void [5:12]
        |   |--IDENT -> method1 [5:17]
        |   |--LPAREN -> ( [5:24]
        |   |--PARAMETERS -> PARAMETERS [5:25]
        |   |   `--PARAMETER_DEF -> PARAMETER_DEF [5:25]
        |   |       |--MODIFIERS -> MODIFIERS [5:25]
        |   |       |--TYPE -> TYPE [5:25]
        |   |       |   `--IDENT -> Object [5:25]
        |   |       `--IDENT -> args [5:32]
        |   |--RPAREN -> ) [5:36]
        |   `--SLIST -> { [5:38]
        |       |--VARIABLE_DEF -> VARIABLE_DEF [6:9]
        |       |   |--MODIFIERS -> MODIFIERS [6:9]
        |       |   |--TYPE -> TYPE [6:9]
        |       |   |   `--IDENT -> Object [6:9]
        |       |   |--IDENT -> o [6:16]
        |       |   `--ASSIGN -> = [6:18]
        |       |       `--EXPR -> EXPR [6:20]
        |       |           `--IDENT -> args [6:20]
        |       |--SEMI -> ; [6:24]
        |       |--LITERAL_IF -> if [7:9]
        |       |   |--LPAREN -> ( [7:12]
        |       |   |--EXPR -> EXPR [7:15]
        |       |   |   `--LITERAL_INSTANCEOF -> instanceof [7:15]
        |       |   |       |--IDENT -> o [7:13]
        |       |   |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [7:26]
        |       |   |           |--MODIFIERS -> MODIFIERS [7:26]
        |       |   |           |   `--FINAL -> final [7:26]
        |       |   |           |--TYPE -> TYPE [7:32]
        |       |   |           |   |--IDENT -> String [7:32]
        |       |   |           |   `--ARRAY_DECLARATOR -> [ [7:38]
        |       |   |           |       `--RBRACK -> ] [7:39]
        |       |   |           `--IDENT -> s [7:41]
        |       |   |--RPAREN -> ) [7:42]
        |       |   |--SLIST -> { [7:43]
        |       |   |   `--RCURLY -> } [8:9]
        |       |   `--LITERAL_ELSE -> else [9:9]
        |       |       `--LITERAL_IF -> if [9:14]
        |       |           |--LPAREN -> ( [9:17]
        |       |           |--EXPR -> EXPR [9:20]
        |       |           |   `--LITERAL_INSTANCEOF -> instanceof [9:20]
        |       |           |       |--IDENT -> o [9:18]
        |       |           |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [9:31]
        |       |           |           |--MODIFIERS -> MODIFIERS [9:31]
        |       |           |           |   `--FINAL -> final [9:31]
        |       |           |           |--TYPE -> TYPE [9:37]
        |       |           |           |   |--IDENT -> Integer [9:37]
        |       |           |           |   `--ARRAY_DECLARATOR -> [ [9:44]
        |       |           |           |       `--RBRACK -> ] [9:45]
        |       |           |           `--IDENT -> i [9:47]
        |       |           |--RPAREN -> ) [9:48]
        |       |           |--SLIST -> { [9:50]
        |       |           |   `--RCURLY -> } [10:9]
        |       |           `--LITERAL_ELSE -> else [11:9]
        |       |               `--LITERAL_IF -> if [11:14]
        |       |                   |--LPAREN -> ( [11:17]
        |       |                   |--EXPR -> EXPR [11:20]
        |       |                   |   `--LITERAL_INSTANCEOF -> instanceof [11:20]
        |       |                   |       |--IDENT -> o [11:18]
        |       |                   |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [11:31]
        |       |                   |           |--MODIFIERS -> MODIFIERS [11:31]
        |       |                   |           |   `--FINAL -> final [11:31]
        |       |                   |           |--TYPE -> TYPE [11:37]
        |       |                   |           |   |--IDENT -> Character [11:37]
        |       |                   |           |   `--ARRAY_DECLARATOR -> [ [11:46]
        |       |                   |           |       `--RBRACK -> ] [11:47]
        |       |                   |           `--IDENT -> c [11:49]
        |       |                   |--RPAREN -> ) [11:50]
        |       |                   |--SLIST -> { [11:51]
        |       |                   |   `--RCURLY -> } [12:9]
        |       |                   `--LITERAL_ELSE -> else [13:9]
        |       |                       `--LITERAL_IF -> if [13:14]
        |       |                           |--LPAREN -> ( [13:17]
        |       |                           |--EXPR -> EXPR [13:20]
        |       |                           |   `--LITERAL_INSTANCEOF -> instanceof [13:20]
        |       |                           |       |--IDENT -> o [13:18]
        |       |                           |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [13:31]
        |       |                           |           |--MODIFIERS -> MODIFIERS [13:31]
        |       |                           |           |   `--FINAL -> final [13:31]
        |       |                           |           |--TYPE -> TYPE [13:37]
        |       |                           |           |   |--IDENT -> Double [13:37]
        |       |                           |           |   `--ARRAY_DECLARATOR -> [ [13:43]
        |       |                           |           |       `--RBRACK -> ] [13:44]
        |       |                           |           `--IDENT -> d [13:46]
        |       |                           |--RPAREN -> ) [13:47]
        |       |                           `--SLIST -> { [13:48]
        |       |                               `--RCURLY -> } [14:9]
        |       `--RCURLY -> } [15:5]
        |--METHOD_DEF -> METHOD_DEF [17:5]
        |   |--MODIFIERS -> MODIFIERS [17:5]
        |   |   `--LITERAL_STATIC -> static [17:5]
        |   |--TYPE -> TYPE [17:12]
        |   |   `--LITERAL_VOID -> void [17:12]
        |   |--IDENT -> method2 [17:17]
        |   |--LPAREN -> ( [17:24]
        |   |--PARAMETERS -> PARAMETERS [17:25]
        |   |   `--PARAMETER_DEF -> PARAMETER_DEF [17:25]
        |   |       |--MODIFIERS -> MODIFIERS [17:25]
        |   |       |--TYPE -> TYPE [17:25]
        |   |       |   `--IDENT -> Object [17:25]
        |   |       `--IDENT -> args [17:32]
        |   |--RPAREN -> ) [17:36]
        |   `--SLIST -> { [17:38]
        |       |--VARIABLE_DEF -> VARIABLE_DEF [18:9]
        |       |   |--MODIFIERS -> MODIFIERS [18:9]
        |       |   |--TYPE -> TYPE [18:9]
        |       |   |   `--IDENT -> Object [18:9]
        |       |   |--IDENT -> o [18:16]
        |       |   `--ASSIGN -> = [18:18]
        |       |       `--EXPR -> EXPR [18:20]
        |       |           `--IDENT -> args [18:20]
        |       |--SEMI -> ; [18:24]
        |       |--LITERAL_IF -> if [19:9]
        |       |   |--LPAREN -> ( [19:12]
        |       |   |--EXPR -> EXPR [19:15]
        |       |   |   `--LITERAL_INSTANCEOF -> instanceof [19:15]
        |       |   |       |--IDENT -> o [19:13]
        |       |   |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [19:26]
        |       |   |           |--MODIFIERS -> MODIFIERS [19:26]
        |       |   |           |--TYPE -> TYPE [19:26]
        |       |   |           |   |--IDENT -> String [19:26]
        |       |   |           |   `--ARRAY_DECLARATOR -> [ [19:32]
        |       |   |           |       `--RBRACK -> ] [19:33]
        |       |   |           `--IDENT -> s [19:35]
        |       |   |--RPAREN -> ) [19:36]
        |       |   `--SLIST -> { [19:38]
        |       |       |--EXPR -> EXPR [20:15]
        |       |       |   `--ASSIGN -> = [20:15]
        |       |       |       |--IDENT -> s [20:13]
        |       |       |       `--LITERAL_NEW -> new [20:17]
        |       |       |           |--IDENT -> String [20:21]
        |       |       |           |--ARRAY_DECLARATOR -> [ [20:27]
        |       |       |           |   `--RBRACK -> ] [20:28]
        |       |       |           `--ARRAY_INIT -> { [20:29]
        |       |       |               |--EXPR -> EXPR [20:30]
        |       |       |               |   `--STRING_LITERAL -> "modified" [20:30]
        |       |       |               `--RCURLY -> } [20:40]
        |       |       |--SEMI -> ; [20:41]
        |       |       |--EXPR -> EXPR [21:31]
        |       |       |   `--METHOD_CALL -> ( [21:31]
        |       |       |       |--DOT -> . [21:23]
        |       |       |       |   |--DOT -> . [21:19]
        |       |       |       |   |   |--IDENT -> System [21:13]
        |       |       |       |   |   `--IDENT -> out [21:20]
        |       |       |       |   `--IDENT -> println [21:24]
        |       |       |       |--ELIST -> ELIST [21:33]
        |       |       |       |   `--EXPR -> EXPR [21:33]
        |       |       |       |       `--INDEX_OP -> [ [21:33]
        |       |       |       |           |--IDENT -> s [21:32]
        |       |       |       |           |--EXPR -> EXPR [21:34]
        |       |       |       |           |   `--NUM_INT -> 0 [21:34]
        |       |       |       |           `--RBRACK -> ] [21:35]
        |       |       |       `--RPAREN -> ) [21:36]
        |       |       |--SEMI -> ; [21:37]
        |       |       `--RCURLY -> } [22:9]
        |       `--RCURLY -> } [23:5]
        `--RCURLY -> } [24:1]
