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 -> java14 [2:48]
`--SEMI -> ; [2:54]
CLASS_DEF -> CLASS_DEF [4:0]
|--MODIFIERS -> MODIFIERS [4:0]
|   `--LITERAL_PUBLIC -> public [4:0]
|--LITERAL_CLASS -> class [4:7]
|--IDENT -> InputJava14TextBlocks [4:13]
`--OBJBLOCK -> OBJBLOCK [5:0]
    |--LCURLY -> { [5:0]
    |--VARIABLE_DEF -> VARIABLE_DEF [6:4]
    |   |--MODIFIERS -> MODIFIERS [6:4]
    |   |   |--LITERAL_PRIVATE -> private [6:4]
    |   |   |--LITERAL_STATIC -> static [6:12]
    |   |   `--FINAL -> final [6:19]
    |   |--TYPE -> TYPE [6:25]
    |   |   `--IDENT -> CharSequence [6:25]
    |   |--IDENT -> type [6:38]
    |   |--ASSIGN -> = [6:43]
    |   |   `--EXPR -> EXPR [6:45]
    |   |       `--STRING_LITERAL -> "type" [6:45]
    |   `--SEMI -> ; [6:51]
    |--STATIC_INIT -> STATIC_INIT [8:4]
    |   `--SLIST -> { [8:11]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [9:8]
    |       |   |--MODIFIERS -> MODIFIERS [9:8]
    |       |   |--TYPE -> TYPE [9:8]
    |       |   |   `--IDENT -> String [9:8]
    |       |   |--IDENT -> doubleQuotes [9:15]
    |       |   `--ASSIGN -> = [9:28]
    |       |       `--EXPR -> EXPR [9:30]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [9:30]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                ""\n                 [9:33]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [11:16]
    |       |--SEMI -> ; [11:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [12:8]
    |       |   |--MODIFIERS -> MODIFIERS [12:8]
    |       |   |--TYPE -> TYPE [12:8]
    |       |   |   `--IDENT -> String [12:8]
    |       |   |--IDENT -> oneDoubleQuote [12:15]
    |       |   `--ASSIGN -> = [12:30]
    |       |       `--EXPR -> EXPR [12:32]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [12:32]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                "\n                "\n                 [12:35]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [15:16]
    |       |--SEMI -> ; [15:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [16:8]
    |       |   |--MODIFIERS -> MODIFIERS [16:8]
    |       |   |--TYPE -> TYPE [16:8]
    |       |   |   `--IDENT -> String [16:8]
    |       |   |--IDENT -> empty [16:15]
    |       |   `--ASSIGN -> = [16:21]
    |       |       `--EXPR -> EXPR [16:23]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [16:23]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                 [16:26]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [17:16]
    |       |--SEMI -> ; [17:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [18:8]
    |       |   |--MODIFIERS -> MODIFIERS [18:8]
    |       |   |--TYPE -> TYPE [18:8]
    |       |   |   `--IDENT -> String [18:8]
    |       |   |--IDENT -> oneSingleQuote [18:15]
    |       |   `--ASSIGN -> = [18:30]
    |       |       `--EXPR -> EXPR [18:32]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [18:32]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                '\n                 [18:35]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [20:16]
    |       |--SEMI -> ; [20:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [21:8]
    |       |   |--MODIFIERS -> MODIFIERS [21:8]
    |       |   |--TYPE -> TYPE [21:8]
    |       |   |   `--IDENT -> String [21:8]
    |       |   |--IDENT -> escape [21:15]
    |       |   `--ASSIGN -> = [21:22]
    |       |       `--EXPR -> EXPR [21:24]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [21:24]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                <html>\u000D\u000A\n\n                    <body>\u000D\u000A\n\n                        <p>Hello, world</p>\u000D\u000A\n\n                    </body>\u000D\u000A\n\n                </html>\u000D\u000A\n                 [21:27]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [27:16]
    |       |--SEMI -> ; [27:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [28:8]
    |       |   |--MODIFIERS -> MODIFIERS [28:8]
    |       |   |--TYPE -> TYPE [28:8]
    |       |   |   `--IDENT -> String [28:8]
    |       |   |--IDENT -> testMoreEscapes [28:15]
    |       |   `--ASSIGN -> = [28:31]
    |       |       `--EXPR -> EXPR [28:33]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [28:33]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                fun with\n\n                whitespace\t\n                and other escapes \"""\n                 [28:36]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [32:16]
    |       |--SEMI -> ; [32:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [33:8]
    |       |   |--MODIFIERS -> MODIFIERS [33:8]
    |       |   |--TYPE -> TYPE [33:8]
    |       |   |   `--IDENT -> String [33:8]
    |       |   |--IDENT -> evenMoreEscapes [33:15]
    |       |   `--ASSIGN -> = [33:31]
    |       |       `--EXPR -> EXPR [33:33]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [33:33]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                \b \f \\ \0 \1 \2 \r \n \\r\\n \\''\n                \\11 \\57 \n\\n\n\\\n\n \\ ""a "a\n                \\uffff \\' \\\' \'\n                 [33:36]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [37:16]
    |       |--SEMI -> ; [37:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [38:8]
    |       |   |--MODIFIERS -> MODIFIERS [38:8]
    |       |   |--TYPE -> TYPE [38:8]
    |       |   |   `--IDENT -> String [38:8]
    |       |   |--IDENT -> lotsMoreEscapes [38:15]
    |       |   `--ASSIGN -> = [38:31]
    |       |       `--EXPR -> EXPR [38:33]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [38:33]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                         0  '\\u0000'    '\\\\x00' '\\\\0'\n                         1  '\\u0001'    '\\\\x01' '\\\\1'\n                         2  '\\u0002'    '\\\\x02' '\\\\2'\n                         3  '\\u0003'    '\\\\x03' '\\\\3'\n                         4  '\\u0004'    '\\\\x04' '\\\\4'\n                         5  '\\u0005'    '\\\\x05' '\\\\5'\n                         6  '\\u0006'    '\\\\x06' '\\\\6'\n                         7  '\\u0007'    '\\\\x07' '\\\\7'\n                         8  '\\b'        '\\\\x08' '\\\\10'\n                         9  '\\t'        '\\\\x09' '\\\\11'\n                        10  '\\n'        '\\\\x0a' '\\\\12'\n                        11  '\\u000b'    '\\\\x0b' '\\\\13'\n                        12  '\\f'        '\\\\x0c' '\\\\14'\n                        13  '\\r'        '\\\\x0d' '\\\\15'\n                        14  '\\u000e'    '\\\\x0e' '\\\\16'\n                        15  '\\u000f'    '\\\\x0f' '\\\\17'\n                        16  '\\u0010'    '\\\\x10' '\\\\20'\n                        17  '\\u0011'    '\\\\x11' '\\\\21'\n                        18  '\\u0012'    '\\\\x12' '\\\\22'\n                        19  '\\u0013'    '\\\\x13' '\\\\23'\n                        20  '\\u0014'    '\\\\x14' '\\\\24'\n                        21  '\\u0015'    '\\\\x15' '\\\\25'\n                        22  '\\u0016'    '\\\\x16' '\\\\26'\n                        23  '\\u0017'    '\\\\x17' '\\\\27'\n                        24  '\\u0018'    '\\\\x18' '\\\\30'\n                        25  '\\u0019'    '\\\\x19' '\\\\31'\n                        26  '\\u001a'    '\\\\x1a' '\\\\32'\n                        27  '\\u001b'    '\\\\x1b' '\\\\33'\n                        28  '\\u001c'    '\\\\x1c' '\\\\34'\n                        29  '\\u001d'    '\\\\x1d' '\\\\35'\n                        30  '\\u001e'    '\\\\x1e' '\\\\36'\n                        31  '\\u001f'    '\\\\x1f' '\\\\37'\n                        32  ' '         '\\\\x20' '\\\\40'\n                        33  '!'         '\\\\x21' '\\\\41'\n                        34  '"'         '\\\\x22' '\\\\42'\n                        35  '#'         '\\\\x23' '\\\\43'\n                        36  '$'         '\\\\x24' '\\\\44'\n                        37  '%'         '\\\\x25' '\\\\45'\n                        38  '&'         '\\\\x26' '\\\\46'\n                        39  '\\'         '\\\\x27' '\\\\47'\n                        40  '('         '\\\\x28' '\\\\50'\n                        41  ')'         '\\\\x29' '\\\\51'\n                        42  '*'         '\\\\x2a' '\\\\52'\n                        43  '+'         '\\\\x2b' '\\\\53'\n                        44  ','         '\\\\x2c' '\\\\54'\n                        45  '-'         '\\\\x2d' '\\\\55'\n                        46  '.'         '\\\\x2e' '\\\\56'\n                        47  '/'         '\\\\x2f' '\\\\57'\n                        48  '0'         '\\\\x30' '\\\\60'\n                        49  '1'         '\\\\x31' '\\\\61'\n                        50  '2'         '\\\\x32' '\\\\62'\n                        51  '3'         '\\\\x33' '\\\\63'\n                        52  '4'         '\\\\x34' '\\\\64'\n                        53  '5'         '\\\\x35' '\\\\65'\n                        54  '6'         '\\\\x36' '\\\\66'\n                        55  '7'         '\\\\x37' '\\\\67'\n                        56  '8'         '\\\\x38' '\\\\70'\n                        57  '9'         '\\\\x39' '\\\\71'\n                        58  ':'         '\\\\x3a' '\\\\72'\n                        59  ';'         '\\\\x3b' '\\\\73'\n                        60  '<'         '\\\\x3c' '\\\\74'\n                        61  '='         '\\\\x3d' '\\\\75'\n                        62  '>'         '\\\\x3e' '\\\\76'\n                        63  '?'         '\\\\x3f' '\\\\77'\n                 [38:36]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [103:16]
    |       |--SEMI -> ; [103:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [104:8]
    |       |   |--MODIFIERS -> MODIFIERS [104:8]
    |       |   |--TYPE -> TYPE [104:8]
    |       |   |   `--IDENT -> String [104:8]
    |       |   |--IDENT -> sqlQuery [104:15]
    |       |   `--ASSIGN -> = [104:24]
    |       |       `--EXPR -> EXPR [104:26]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [104:26]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n                WHERE `CITY` = 'INDIANAPOLIS'\n                ORDER BY `EMP_ID`, `LAST_NAME`;\n                 [104:29]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [108:16]
    |       |--SEMI -> ; [108:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [109:8]
    |       |   |--MODIFIERS -> MODIFIERS [109:8]
    |       |   |--TYPE -> TYPE [109:8]
    |       |   |   `--IDENT -> String [109:8]
    |       |   |--IDENT -> concat [109:15]
    |       |   `--ASSIGN -> = [109:22]
    |       |       `--EXPR -> EXPR [110:48]
    |       |           `--PLUS -> + [110:48]
    |       |               |--PLUS -> + [110:39]
    |       |               |   |--TEXT_BLOCK_LITERAL_BEGIN -> """ [109:24]
    |       |               |   |   |--TEXT_BLOCK_CONTENT -> \n                The quick brown fox [109:27]
    |       |               |   |   `--TEXT_BLOCK_LITERAL_END -> """ [110:35]
    |       |               |   `--STRING_LITERAL -> "  \n" [110:41]
    |       |               `--TEXT_BLOCK_LITERAL_BEGIN -> """ [110:50]
    |       |                   |--TEXT_BLOCK_CONTENT -> \n                jumps over the lazy dog\n                 [110:53]
    |       |                   `--TEXT_BLOCK_LITERAL_END -> """ [112:16]
    |       |--SEMI -> ; [112:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [113:8]
    |       |   |--MODIFIERS -> MODIFIERS [113:8]
    |       |   |--TYPE -> TYPE [113:8]
    |       |   |   `--IDENT -> String [113:8]
    |       |   |--IDENT -> someCode [113:15]
    |       |   `--ASSIGN -> = [113:24]
    |       |       `--EXPR -> EXPR [113:26]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [113:26]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                function hello() {\n                 print('"Hello, world"');\n                }\n                hello();\n                 [113:29]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [118:16]
    |       |--SEMI -> ; [118:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [119:8]
    |       |   |--MODIFIERS -> MODIFIERS [119:8]
    |       |   |--TYPE -> TYPE [119:8]
    |       |   |   `--IDENT -> String [119:8]
    |       |   |--IDENT -> multiLineStr [119:15]
    |       |   `--ASSIGN -> = [119:28]
    |       |       `--EXPR -> EXPR [120:16]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [120:16]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                SELECT * FROM USERS\n                WHERE USER_ID = '1'\n                 [120:19]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [123:16]
    |       |--SEMI -> ; [123:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [124:8]
    |       |   |--MODIFIERS -> MODIFIERS [124:8]
    |       |   |--TYPE -> TYPE [124:8]
    |       |   |   `--IDENT -> String [124:8]
    |       |   |--IDENT -> textBlockCeption [124:15]
    |       |   `--ASSIGN -> = [124:32]
    |       |       `--EXPR -> EXPR [125:16]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [125:16]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                String text = \"""\n                A text block inside a text block\n                \""";\n                 [125:19]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [129:16]
    |       |--SEMI -> ; [129:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [130:8]
    |       |   |--MODIFIERS -> MODIFIERS [130:8]
    |       |   |--TYPE -> TYPE [130:8]
    |       |   |   `--IDENT -> String [130:8]
    |       |   |--IDENT -> code1 [130:15]
    |       |   `--ASSIGN -> = [130:21]
    |       |       `--EXPR -> EXPR [134:25]
    |       |           `--METHOD_CALL -> ( [134:25]
    |       |               |--DOT -> . [134:17]
    |       |               |   |--TEXT_BLOCK_LITERAL_BEGIN -> """ [130:23]
    |       |               |   |   |--TEXT_BLOCK_CONTENT -> \n              public void print($type o) {\n                  System.out.println(Objects.toString(o));\n              }\n               [130:26]
    |       |               |   |   `--TEXT_BLOCK_LITERAL_END -> """ [134:14]
    |       |               |   `--IDENT -> replace [134:18]
    |       |               |--ELIST -> ELIST [134:26]
    |       |               |   |--EXPR -> EXPR [134:26]
    |       |               |   |   `--STRING_LITERAL -> "$type" [134:26]
    |       |               |   |--COMMA -> , [134:33]
    |       |               |   `--EXPR -> EXPR [134:35]
    |       |               |       `--IDENT -> type [134:35]
    |       |               `--RPAREN -> ) [134:39]
    |       |--SEMI -> ; [134:40]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [135:8]
    |       |   |--MODIFIERS -> MODIFIERS [135:8]
    |       |   |--TYPE -> TYPE [135:8]
    |       |   |   `--IDENT -> String [135:8]
    |       |   |--IDENT -> code2 [135:15]
    |       |   `--ASSIGN -> = [135:21]
    |       |       `--EXPR -> EXPR [135:36]
    |       |           `--METHOD_CALL -> ( [135:36]
    |       |               |--DOT -> . [135:29]
    |       |               |   |--IDENT -> String [135:23]
    |       |               |   `--IDENT -> format [135:30]
    |       |               |--ELIST -> ELIST [135:37]
    |       |               |   |--EXPR -> EXPR [135:37]
    |       |               |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [135:37]
    |       |               |   |       |--TEXT_BLOCK_CONTENT -> \n              public void print(%s o) {\n                  System.out.println(Objects.toString(o));\n              }\n               [135:40]
    |       |               |   |       `--TEXT_BLOCK_LITERAL_END -> """ [139:14]
    |       |               |   |--COMMA -> , [139:17]
    |       |               |   `--EXPR -> EXPR [139:19]
    |       |               |       `--IDENT -> type [139:19]
    |       |               `--RPAREN -> ) [139:23]
    |       |--SEMI -> ; [139:24]
    |       `--RCURLY -> } [140:4]
    |--METHOD_DEF -> METHOD_DEF [142:4]
    |   |--MODIFIERS -> MODIFIERS [142:4]
    |   |   `--LITERAL_PUBLIC -> public [142:4]
    |   |--TYPE -> TYPE [142:11]
    |   |   `--IDENT -> String [142:11]
    |   |--IDENT -> getFormattedText [142:18]
    |   |--LPAREN -> ( [142:34]
    |   |--PARAMETERS -> PARAMETERS [142:35]
    |   |   `--PARAMETER_DEF -> PARAMETER_DEF [142:35]
    |   |       |--MODIFIERS -> MODIFIERS [142:35]
    |   |       |--TYPE -> TYPE [142:35]
    |   |       |   `--IDENT -> String [142:35]
    |   |       `--IDENT -> parameter [142:42]
    |   |--RPAREN -> ) [142:51]
    |   `--SLIST -> { [142:53]
    |       |--LITERAL_RETURN -> return [143:8]
    |       |   |--EXPR -> EXPR [145:25]
    |       |   |   `--METHOD_CALL -> ( [145:25]
    |       |   |       |--DOT -> . [145:15]
    |       |   |       |   |--TEXT_BLOCK_LITERAL_BEGIN -> """ [143:15]
    |       |   |       |   |   |--TEXT_BLOCK_CONTENT -> \n            Some parameter: %s\n             [143:18]
    |       |   |       |   |   `--TEXT_BLOCK_LITERAL_END -> """ [145:12]
    |       |   |       |   `--IDENT -> formatted [145:16]
    |       |   |       |--ELIST -> ELIST [145:26]
    |       |   |       |   `--EXPR -> EXPR [145:26]
    |       |   |       |       `--IDENT -> parameter [145:26]
    |       |   |       `--RPAREN -> ) [145:35]
    |       |   `--SEMI -> ; [145:36]
    |       `--RCURLY -> } [146:4]
    |--METHOD_DEF -> METHOD_DEF [148:4]
    |   |--MODIFIERS -> MODIFIERS [148:4]
    |   |   `--LITERAL_PUBLIC -> public [148:4]
    |   |--TYPE -> TYPE [148:11]
    |   |   `--IDENT -> String [148:11]
    |   |--IDENT -> getIgnoredNewLines [148:18]
    |   |--LPAREN -> ( [148:36]
    |   |--PARAMETERS -> PARAMETERS [148:37]
    |   |--RPAREN -> ) [148:37]
    |   `--SLIST -> { [148:39]
    |       |--LITERAL_RETURN -> return [149:8]
    |       |   |--EXPR -> EXPR [149:15]
    |       |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [149:15]
    |       |   |       |--TEXT_BLOCK_CONTENT -> \n            This is a long test which looks to \\n            have a newline but actually does not [149:18]
    |       |   |       `--TEXT_BLOCK_LITERAL_END -> """ [151:48]
    |       |   `--SEMI -> ; [151:51]
    |       `--RCURLY -> } [152:4]
    |--METHOD_DEF -> METHOD_DEF [154:4]
    |   |--MODIFIERS -> MODIFIERS [154:4]
    |   |   `--LITERAL_PUBLIC -> public [154:4]
    |   |--TYPE -> TYPE [154:11]
    |   |   `--IDENT -> String [154:11]
    |   |--IDENT -> getEscapedSpaces [154:18]
    |   |--LPAREN -> ( [154:34]
    |   |--PARAMETERS -> PARAMETERS [154:35]
    |   |--RPAREN -> ) [154:35]
    |   `--SLIST -> { [154:37]
    |       |--LITERAL_RETURN -> return [155:8]
    |       |   |--EXPR -> EXPR [155:15]
    |       |   |   `--TEXT_BLOCK_LITERAL_BEGIN -> """ [155:15]
    |       |   |       |--TEXT_BLOCK_CONTENT -> \n            line 1·······\n            line 2·······\s\n             [155:18]
    |       |   |       `--TEXT_BLOCK_LITERAL_END -> """ [158:12]
    |       |   `--SEMI -> ; [158:15]
    |       `--RCURLY -> } [159:4]
    |--METHOD_DEF -> METHOD_DEF [161:4]
    |   |--MODIFIERS -> MODIFIERS [161:4]
    |   |--TYPE -> TYPE [161:4]
    |   |   `--LITERAL_VOID -> void [161:4]
    |   |--IDENT -> lineTerminators [161:9]
    |   |--LPAREN -> ( [161:24]
    |   |--PARAMETERS -> PARAMETERS [161:25]
    |   |--RPAREN -> ) [161:25]
    |   `--SLIST -> { [161:27]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [162:8]
    |       |   |--MODIFIERS -> MODIFIERS [162:8]
    |       |   |--TYPE -> TYPE [162:8]
    |       |   |   `--IDENT -> String [162:8]
    |       |   |--IDENT -> s [162:15]
    |       |   `--ASSIGN -> = [162:17]
    |       |       `--EXPR -> EXPR [162:19]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [162:19]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                \u000D [162:22]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [163:22]
    |       |--SEMI -> ; [163:25]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [164:8]
    |       |   |--MODIFIERS -> MODIFIERS [164:8]
    |       |   |--TYPE -> TYPE [164:8]
    |       |   |   `--IDENT -> String [164:8]
    |       |   |--IDENT -> s1 [164:15]
    |       |   `--ASSIGN -> = [164:18]
    |       |       `--EXPR -> EXPR [164:20]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [164:20]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                \n [164:23]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [165:18]
    |       |--SEMI -> ; [165:21]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [166:8]
    |       |   |--MODIFIERS -> MODIFIERS [166:8]
    |       |   |--TYPE -> TYPE [166:8]
    |       |   |   `--IDENT -> String [166:8]
    |       |   |--IDENT -> s2 [166:15]
    |       |   `--ASSIGN -> = [166:18]
    |       |       `--EXPR -> EXPR [166:20]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [166:20]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                \n\n                 [166:23]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [168:16]
    |       |--SEMI -> ; [168:19]
    |       |--VARIABLE_DEF -> VARIABLE_DEF [169:8]
    |       |   |--MODIFIERS -> MODIFIERS [169:8]
    |       |   |--TYPE -> TYPE [169:8]
    |       |   |   `--IDENT -> String [169:8]
    |       |   |--IDENT -> s3 [169:15]
    |       |   `--ASSIGN -> = [169:18]
    |       |       `--EXPR -> EXPR [169:20]
    |       |           `--TEXT_BLOCK_LITERAL_BEGIN -> """ [169:20]
    |       |               |--TEXT_BLOCK_CONTENT -> \n                \\n                 [169:23]
    |       |               `--TEXT_BLOCK_LITERAL_END -> """ [171:16]
    |       |--SEMI -> ; [171:19]
    |       `--RCURLY -> } [172:4]
    `--RCURLY -> } [173:0]
