COMPILATION_UNIT -> COMPILATION_UNIT [2:0]
|--PACKAGE_DEF -> package [2:0]
|   |--ANNOTATIONS -> ANNOTATIONS [2:47]
|   |--DOT -> . [2:47]
|   |   |--DOT -> . [2:39]
|   |   |   |--DOT -> . [2:28]
|   |   |   |   |--DOT -> . [2:22]
|   |   |   |   |   |--DOT -> . [2:11]
|   |   |   |   |   |   |--IDENT -> com [2:8]
|   |   |   |   |   |   `--IDENT -> puppycrawl [2:12]
|   |   |   |   |   `--IDENT -> tools [2:23]
|   |   |   |   `--IDENT -> checkstyle [2:29]
|   |   |   `--IDENT -> grammar [2:40]
|   |   `--IDENT -> java21 [2:48]
|   `--SEMI -> ; [2:54]
|--IMPORT -> import [4:0]
|   |--DOT -> . [4:16]
|   |   |--DOT -> . [4:11]
|   |   |   |--IDENT -> java [4:7]
|   |   |   `--IDENT -> util [4:12]
|   |   `--IDENT -> List [4:17]
|   `--SEMI -> ; [4:21]
`--CLASS_DEF -> CLASS_DEF [6:0]
    |--MODIFIERS -> MODIFIERS [6:0]
    |   `--LITERAL_PUBLIC -> public [6:0]
    |--LITERAL_CLASS -> class [6:7]
    |--IDENT -> InputTextBlockConsecutiveEscapes [6:13]
    `--OBJBLOCK -> OBJBLOCK [6:46]
        |--LCURLY -> { [6:46]
        |--VARIABLE_DEF -> VARIABLE_DEF [7:4]
        |   |--MODIFIERS -> MODIFIERS [7:4]
        |   |--TYPE -> TYPE [7:4]
        |   |   `--IDENT -> String [7:4]
        |   |--IDENT -> s [7:11]
        |   |--ASSIGN -> = [7:13]
        |   |   `--EXPR -> EXPR [7:15]
        |   |       `--TEXT_BLOCK_LITERAL_BEGIN -> """ [7:15]
        |   |           |--TEXT_BLOCK_CONTENT -> \n            \u03bc\t\n            \u03bc\s\n            \u03bc\s not all escaped chars\n            \u03bc\n not all escaped chars\n            \s\s\s\n\n            \u03bc\s\n            \s\s\s\n not all escaped chars\n            \u03bc\s not all escaped chars\n            \u03bc\n not all escaped chars\n            l\u03bc\n\n            \n       \u03bc\s\n            \u03bc\\n            \s\u03bc\\n             [7:18]
        |   |           `--TEXT_BLOCK_LITERAL_END -> """ [21:12]
        |   `--SEMI -> ; [21:15]
        |--VARIABLE_DEF -> VARIABLE_DEF [23:12]
        |   |--MODIFIERS -> MODIFIERS [23:12]
        |   |   `--FINAL -> final [23:12]
        |   |--TYPE -> TYPE [23:18]
        |   |   |--IDENT -> List [23:18]
        |   |   `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [23:22]
        |   |       |--GENERIC_START -> < [23:22]
        |   |       |--TYPE_ARGUMENT -> TYPE_ARGUMENT [23:23]
        |   |       |   `--IDENT -> TestCase [23:23]
        |   |       `--GENERIC_END -> > [23:31]
        |   |--IDENT -> testCases [23:33]
        |   |--ASSIGN -> = [23:43]
        |   |   `--EXPR -> EXPR [23:52]
        |   |       `--METHOD_CALL -> ( [23:52]
        |   |           |--DOT -> . [23:49]
        |   |           |   |--IDENT -> List [23:45]
        |   |           |   `--IDENT -> of [23:50]
        |   |           |--ELIST -> ELIST [24:16]
        |   |           |   |--EXPR -> EXPR [24:16]
        |   |           |   |   `--LITERAL_NEW -> new [24:16]
        |   |           |   |       |--IDENT -> TestCase [24:20]
        |   |           |   |       |--LPAREN -> ( [24:28]
        |   |           |   |       |--ELIST -> ELIST [24:29]
        |   |           |   |       |   |--EXPR -> EXPR [24:29]
        |   |           |   |       |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [24:29]
        |   |           |   |       |   |       |--TEXT_BLOCK_CONTENT -> \n                    {@snippet :\n                    hello there //   @highlight   regex ="\t**"\n                    } [24:32]
        |   |           |   |       |   |       `--TEXT_BLOCK_LITERAL_END -> """ [27:21]
        |   |           |   |       |   |--COMMA -> , [27:24]
        |   |           |   |       |   `--EXPR -> EXPR [28:29]
        |   |           |   |       |       `--TEXT_BLOCK_LITERAL_BEGIN -> """ [28:29]
        |   |           |   |       |           |--TEXT_BLOCK_CONTENT -> \n                    error: snippet markup: invalid regex\n                    hello there //   @highlight   regex ="\t**"\n                                                          \t ^\n                     [28:32]
        |   |           |   |       |           `--TEXT_BLOCK_LITERAL_END -> """ [32:20]
        |   |           |   |       `--RPAREN -> ) [32:23]
        |   |           |   |--COMMA -> , [32:24]
        |   |           |   |--EXPR -> EXPR [33:16]
        |   |           |   |   `--LITERAL_NEW -> new [33:16]
        |   |           |   |       |--IDENT -> TestCase [33:20]
        |   |           |   |       |--LPAREN -> ( [33:28]
        |   |           |   |       |--ELIST -> ELIST [33:29]
        |   |           |   |       |   |--EXPR -> EXPR [33:29]
        |   |           |   |       |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [33:29]
        |   |           |   |       |   |       |--TEXT_BLOCK_CONTENT -> \n                    {@snippet :\n                    hello there //   @highlight   regex ="\\t**"\n                    } [33:32]
        |   |           |   |       |   |       `--TEXT_BLOCK_LITERAL_END -> """ [36:21]
        |   |           |   |       |   |--COMMA -> , [36:24]
        |   |           |   |       |   `--EXPR -> EXPR [37:24]
        |   |           |   |       |       `--TEXT_BLOCK_LITERAL_BEGIN -> """ [37:24]
        |   |           |   |       |           |--TEXT_BLOCK_CONTENT -> \n                    error: snippet markup: invalid regex\n                    hello there //   @highlight   regex ="\\t**"\n                                                             ^\n                     [37:27]
        |   |           |   |       |           `--TEXT_BLOCK_LITERAL_END -> """ [41:20]
        |   |           |   |       `--RPAREN -> ) [41:23]
        |   |           |   |--COMMA -> , [41:24]
        |   |           |   |--EXPR -> EXPR [42:16]
        |   |           |   |   `--LITERAL_NEW -> new [42:16]
        |   |           |   |       |--IDENT -> TestCase [42:20]
        |   |           |   |       |--LPAREN -> ( [42:28]
        |   |           |   |       |--ELIST -> ELIST [42:29]
        |   |           |   |       |   |--EXPR -> EXPR [42:29]
        |   |           |   |       |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [42:29]
        |   |           |   |       |   |       |--TEXT_BLOCK_CONTENT -> \n                    {@snippet :\n                    hello there // @highlight regex="\\.\\*\\+\\E"\n                    } [42:32]
        |   |           |   |       |   |       `--TEXT_BLOCK_LITERAL_END -> """ [45:21]
        |   |           |   |       |   |--COMMA -> , [45:24]
        |   |           |   |       |   `--EXPR -> EXPR [46:29]
        |   |           |   |       |       `--TEXT_BLOCK_LITERAL_BEGIN -> """ [46:29]
        |   |           |   |       |           |--TEXT_BLOCK_CONTENT -> \n                    error: snippet markup: invalid regex\n                    hello there // @highlight regex="\\.\\*\\+\\E"\n                                                     \s\s\s\s   ^\n                     [46:32]
        |   |           |   |       |           `--TEXT_BLOCK_LITERAL_END -> """ [50:20]
        |   |           |   |       `--RPAREN -> ) [50:23]
        |   |           |   |--COMMA -> , [50:24]
        |   |           |   `--EXPR -> EXPR [53:16]
        |   |           |       `--LITERAL_NEW -> new [53:16]
        |   |           |           |--IDENT -> TestCase [53:20]
        |   |           |           |--LPAREN -> ( [53:28]
        |   |           |           |--ELIST -> ELIST [53:29]
        |   |           |           |   |--EXPR -> EXPR [53:29]
        |   |           |           |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [53:29]
        |   |           |           |   |       |--TEXT_BLOCK_CONTENT -> \n                    {@snippet :\n                    hello there //   @highlight  type="italics" regex ="  ["\n                    } [53:32]
        |   |           |           |   |       `--TEXT_BLOCK_LITERAL_END -> """ [56:21]
        |   |           |           |   |--COMMA -> , [56:24]
        |   |           |           |   `--EXPR -> EXPR [57:24]
        |   |           |           |       `--TEXT_BLOCK_LITERAL_BEGIN -> """ [57:24]
        |   |           |           |           |--TEXT_BLOCK_CONTENT -> \n                    error: snippet markup: invalid regex\n                    hello there //   @highlight  type="italics" regex ="  ["\n                                                                          ^\n                     [57:27]
        |   |           |           |           `--TEXT_BLOCK_LITERAL_END -> """ [61:20]
        |   |           |           `--RPAREN -> ) [61:23]
        |   |           `--RPAREN -> ) [62:16]
        |   `--SEMI -> ; [62:17]
        |--RECORD_DEF -> RECORD_DEF [64:4]
        |   |--MODIFIERS -> MODIFIERS [64:4]
        |   |   `--LITERAL_PRIVATE -> private [64:4]
        |   |--LITERAL_RECORD -> record [64:12]
        |   |--IDENT -> TestCase [64:19]
        |   |--LPAREN -> ( [64:27]
        |   |--RECORD_COMPONENTS -> RECORD_COMPONENTS [64:28]
        |   |   |--RECORD_COMPONENT_DEF -> RECORD_COMPONENT_DEF [64:28]
        |   |   |   |--ANNOTATIONS -> ANNOTATIONS [64:28]
        |   |   |   |--TYPE -> TYPE [64:28]
        |   |   |   |   `--IDENT -> String [64:28]
        |   |   |   `--IDENT -> s1 [64:35]
        |   |   |--COMMA -> , [64:37]
        |   |   `--RECORD_COMPONENT_DEF -> RECORD_COMPONENT_DEF [64:39]
        |   |       |--ANNOTATIONS -> ANNOTATIONS [64:39]
        |   |       |--TYPE -> TYPE [64:39]
        |   |       |   `--IDENT -> String [64:39]
        |   |       `--IDENT -> s2 [64:46]
        |   |--RPAREN -> ) [64:48]
        |   `--OBJBLOCK -> OBJBLOCK [64:49]
        |       |--LCURLY -> { [64:49]
        |       `--RCURLY -> } [64:50]
        `--RCURLY -> } [65:0]
