COMPILATION_UNIT -> COMPILATION_UNIT [1:1]
|--PACKAGE_DEF -> package [1:1]
|   |--ANNOTATIONS -> ANNOTATIONS [1:48]
|   |--DOT -> . [1:48]
|   |   |--DOT -> . [1:40]
|   |   |   |--DOT -> . [1:29]
|   |   |   |   |--DOT -> . [1:23]
|   |   |   |   |   |--DOT -> . [1:12]
|   |   |   |   |   |   |--IDENT -> com [1:9]
|   |   |   |   |   |   `--IDENT -> puppycrawl [1:13]
|   |   |   |   |   `--IDENT -> tools [1:24]
|   |   |   |   `--IDENT -> checkstyle [1:30]
|   |   |   `--IDENT -> grammar [1:41]
|   |   `--IDENT -> antlr4 [1:49]
|   `--SEMI -> ; [1:55]
`--CLASS_DEF -> CLASS_DEF [3:1]
    |--MODIFIERS -> MODIFIERS [3:1]
    |   `--LITERAL_PUBLIC -> public [3:1]
    |--LITERAL_CLASS -> class [3:8]
    |--IDENT -> InputAntlr4AstRegressionPatternsInWhile [3:14]
    `--OBJBLOCK -> OBJBLOCK [3:54]
        |--LCURLY -> { [3:54]
        |--METHOD_DEF -> METHOD_DEF [4:5]
        |   |--MODIFIERS -> MODIFIERS [4:5]
        |   |--TYPE -> TYPE [4:5]
        |   |   `--LITERAL_VOID -> void [4:5]
        |   |--IDENT -> m1 [4:10]
        |   |--LPAREN -> ( [4:12]
        |   |--PARAMETERS -> PARAMETERS [4:13]
        |   |   `--PARAMETER_DEF -> PARAMETER_DEF [4:13]
        |   |       |--MODIFIERS -> MODIFIERS [4:13]
        |   |       |--TYPE -> TYPE [4:13]
        |   |       |   `--IDENT -> Object [4:13]
        |   |       `--IDENT -> o [4:20]
        |   |--RPAREN -> ) [4:21]
        |   `--SLIST -> { [4:23]
        |       |--LITERAL_WHILE -> while [5:9]
        |       |   |--LPAREN -> ( [5:15]
        |       |   |--EXPR -> EXPR [5:38]
        |       |   |   `--LAND -> && [5:38]
        |       |   |       |--LITERAL_INSTANCEOF -> instanceof [5:18]
        |       |   |       |   |--IDENT -> o [5:16]
        |       |   |       |   `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [5:29]
        |       |   |       |       |--MODIFIERS -> MODIFIERS [5:29]
        |       |   |       |       |--TYPE -> TYPE [5:29]
        |       |   |       |       |   `--IDENT -> String [5:29]
        |       |   |       |       `--IDENT -> s [5:36]
        |       |   |       `--GT -> > [5:52]
        |       |   |           |--METHOD_CALL -> ( [5:49]
        |       |   |           |   |--DOT -> . [5:42]
        |       |   |           |   |   |--IDENT -> s [5:41]
        |       |   |           |   |   `--IDENT -> length [5:43]
        |       |   |           |   |--ELIST -> ELIST [5:50]
        |       |   |           |   `--RPAREN -> ) [5:50]
        |       |   |           `--NUM_INT -> 4 [5:54]
        |       |   |--RPAREN -> ) [5:55]
        |       |   `--SLIST -> { [5:57]
        |       |       `--RCURLY -> } [7:9]
        |       |--LITERAL_WHILE -> while [8:9]
        |       |   |--LPAREN -> ( [8:15]
        |       |   |--EXPR -> EXPR [8:18]
        |       |   |   `--LITERAL_INSTANCEOF -> instanceof [8:18]
        |       |   |       |--IDENT -> o [8:16]
        |       |   |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [8:29]
        |       |   |           |--MODIFIERS -> MODIFIERS [8:29]
        |       |   |           |--TYPE -> TYPE [8:29]
        |       |   |           |   `--IDENT -> String [8:29]
        |       |   |           `--IDENT -> s [8:36]
        |       |   |--RPAREN -> ) [8:37]
        |       |   `--SLIST -> { [8:39]
        |       |       `--RCURLY -> } [10:9]
        |       |--LITERAL_DO -> do [12:9]
        |       |   |--SLIST -> { [12:12]
        |       |   |   `--RCURLY -> } [14:9]
        |       |   |--DO_WHILE -> while [14:11]
        |       |   |--LPAREN -> ( [14:17]
        |       |   |--EXPR -> EXPR [14:40]
        |       |   |   `--LAND -> && [14:40]
        |       |   |       |--LITERAL_INSTANCEOF -> instanceof [14:20]
        |       |   |       |   |--IDENT -> o [14:18]
        |       |   |       |   `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [14:31]
        |       |   |       |       |--MODIFIERS -> MODIFIERS [14:31]
        |       |   |       |       |--TYPE -> TYPE [14:31]
        |       |   |       |       |   `--IDENT -> String [14:31]
        |       |   |       |       `--IDENT -> s [14:38]
        |       |   |       `--GT -> > [14:54]
        |       |   |           |--METHOD_CALL -> ( [14:51]
        |       |   |           |   |--DOT -> . [14:44]
        |       |   |           |   |   |--IDENT -> s [14:43]
        |       |   |           |   |   `--IDENT -> length [14:45]
        |       |   |           |   |--ELIST -> ELIST [14:52]
        |       |   |           |   `--RPAREN -> ) [14:52]
        |       |   |           `--NUM_INT -> 4 [14:56]
        |       |   |--RPAREN -> ) [14:57]
        |       |   `--SEMI -> ; [14:58]
        |       |--LITERAL_DO -> do [15:9]
        |       |   |--SLIST -> { [15:12]
        |       |   |   `--RCURLY -> } [17:9]
        |       |   |--DO_WHILE -> while [17:11]
        |       |   |--LPAREN -> ( [17:17]
        |       |   |--EXPR -> EXPR [17:20]
        |       |   |   `--LITERAL_INSTANCEOF -> instanceof [17:20]
        |       |   |       |--IDENT -> o [17:18]
        |       |   |       `--PATTERN_VARIABLE_DEF -> PATTERN_VARIABLE_DEF [17:31]
        |       |   |           |--MODIFIERS -> MODIFIERS [17:31]
        |       |   |           |--TYPE -> TYPE [17:31]
        |       |   |           |   `--IDENT -> String [17:31]
        |       |   |           `--IDENT -> s [17:38]
        |       |   |--RPAREN -> ) [17:39]
        |       |   `--SEMI -> ; [17:40]
        |       `--RCURLY -> } [18:5]
        `--RCURLY -> } [19:1]
