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 -> java14 [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 -> InputJava14TextBlocks [4:14]
`--OBJBLOCK -> OBJBLOCK [5:1]
|--LCURLY -> { [5:1]
|--VARIABLE_DEF -> VARIABLE_DEF [6:5]
| |--MODIFIERS -> MODIFIERS [6:5]
| | |--LITERAL_PRIVATE -> private [6:5]
| | |--LITERAL_STATIC -> static [6:13]
| | `--FINAL -> final [6:20]
| |--TYPE -> TYPE [6:26]
| | `--IDENT -> CharSequence [6:26]
| |--IDENT -> type [6:39]
| |--ASSIGN -> = [6:44]
| | `--EXPR -> EXPR [6:46]
| | `--STRING_LITERAL -> "type" [6:46]
| `--SEMI -> ; [6:52]
|--STATIC_INIT -> STATIC_INIT [8:5]
| `--SLIST -> { [8:12]
| |--VARIABLE_DEF -> VARIABLE_DEF [9:9]
| | |--MODIFIERS -> MODIFIERS [9:9]
| | |--TYPE -> TYPE [9:9]
| | | `--IDENT -> String [9:9]
| | |--IDENT -> doubleQuotes [9:16]
| | `--ASSIGN -> = [9:29]
| | `--EXPR -> EXPR [9:31]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [9:31]
| | |--TEXT_BLOCK_CONTENT -> \n ""\n [9:34]
| | `--TEXT_BLOCK_LITERAL_END -> """ [11:17]
| |--SEMI -> ; [11:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [12:9]
| | |--MODIFIERS -> MODIFIERS [12:9]
| | |--TYPE -> TYPE [12:9]
| | | `--IDENT -> String [12:9]
| | |--IDENT -> oneDoubleQuote [12:16]
| | `--ASSIGN -> = [12:31]
| | `--EXPR -> EXPR [12:33]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [12:33]
| | |--TEXT_BLOCK_CONTENT -> \n "\n "\n [12:36]
| | `--TEXT_BLOCK_LITERAL_END -> """ [15:17]
| |--SEMI -> ; [15:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [16:9]
| | |--MODIFIERS -> MODIFIERS [16:9]
| | |--TYPE -> TYPE [16:9]
| | | `--IDENT -> String [16:9]
| | |--IDENT -> empty [16:16]
| | `--ASSIGN -> = [16:22]
| | `--EXPR -> EXPR [16:24]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [16:24]
| | |--TEXT_BLOCK_CONTENT -> \n [16:27]
| | `--TEXT_BLOCK_LITERAL_END -> """ [17:17]
| |--SEMI -> ; [17:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [18:9]
| | |--MODIFIERS -> MODIFIERS [18:9]
| | |--TYPE -> TYPE [18:9]
| | | `--IDENT -> String [18:9]
| | |--IDENT -> oneSingleQuote [18:16]
| | `--ASSIGN -> = [18:31]
| | `--EXPR -> EXPR [18:33]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [18:33]
| | |--TEXT_BLOCK_CONTENT -> \n '\n [18:36]
| | `--TEXT_BLOCK_LITERAL_END -> """ [20:17]
| |--SEMI -> ; [20:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [21:9]
| | |--MODIFIERS -> MODIFIERS [21:9]
| | |--TYPE -> TYPE [21:9]
| | | `--IDENT -> String [21:9]
| | |--IDENT -> escape [21:16]
| | `--ASSIGN -> = [21:23]
| | `--EXPR -> EXPR [21:25]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [21:25]
| | |--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:28]
| | `--TEXT_BLOCK_LITERAL_END -> """ [27:17]
| |--SEMI -> ; [27:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [28:9]
| | |--MODIFIERS -> MODIFIERS [28:9]
| | |--TYPE -> TYPE [28:9]
| | | `--IDENT -> String [28:9]
| | |--IDENT -> testMoreEscapes [28:16]
| | `--ASSIGN -> = [28:32]
| | `--EXPR -> EXPR [28:34]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [28:34]
| | |--TEXT_BLOCK_CONTENT -> \n fun with\n\n whitespace\t\n and other escapes \"""\n [28:37]
| | `--TEXT_BLOCK_LITERAL_END -> """ [32:17]
| |--SEMI -> ; [32:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [33:9]
| | |--MODIFIERS -> MODIFIERS [33:9]
| | |--TYPE -> TYPE [33:9]
| | | `--IDENT -> String [33:9]
| | |--IDENT -> evenMoreEscapes [33:16]
| | `--ASSIGN -> = [33:32]
| | `--EXPR -> EXPR [33:34]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [33:34]
| | |--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:37]
| | `--TEXT_BLOCK_LITERAL_END -> """ [37:17]
| |--SEMI -> ; [37:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [38:9]
| | |--MODIFIERS -> MODIFIERS [38:9]
| | |--TYPE -> TYPE [38:9]
| | | `--IDENT -> String [38:9]
| | |--IDENT -> lotsMoreEscapes [38:16]
| | `--ASSIGN -> = [38:32]
| | `--EXPR -> EXPR [38:34]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [38:34]
| | |--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:37]
| | `--TEXT_BLOCK_LITERAL_END -> """ [103:17]
| |--SEMI -> ; [103:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [104:9]
| | |--MODIFIERS -> MODIFIERS [104:9]
| | |--TYPE -> TYPE [104:9]
| | | `--IDENT -> String [104:9]
| | |--IDENT -> sqlQuery [104:16]
| | `--ASSIGN -> = [104:25]
| | `--EXPR -> EXPR [104:27]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [104:27]
| | |--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:30]
| | `--TEXT_BLOCK_LITERAL_END -> """ [108:17]
| |--SEMI -> ; [108:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [109:9]
| | |--MODIFIERS -> MODIFIERS [109:9]
| | |--TYPE -> TYPE [109:9]
| | | `--IDENT -> String [109:9]
| | |--IDENT -> concat [109:16]
| | `--ASSIGN -> = [109:23]
| | `--EXPR -> EXPR [110:49]
| | `--PLUS -> + [110:49]
| | |--PLUS -> + [110:40]
| | | |--TEXT_BLOCK_LITERAL_BEGIN -> """ [109:25]
| | | | |--TEXT_BLOCK_CONTENT -> \n The quick brown fox [109:28]
| | | | `--TEXT_BLOCK_LITERAL_END -> """ [110:36]
| | | `--STRING_LITERAL -> " \n" [110:42]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [110:51]
| | |--TEXT_BLOCK_CONTENT -> \n jumps over the lazy dog\n [110:54]
| | `--TEXT_BLOCK_LITERAL_END -> """ [112:17]
| |--SEMI -> ; [112:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [113:9]
| | |--MODIFIERS -> MODIFIERS [113:9]
| | |--TYPE -> TYPE [113:9]
| | | `--IDENT -> String [113:9]
| | |--IDENT -> someCode [113:16]
| | `--ASSIGN -> = [113:25]
| | `--EXPR -> EXPR [113:27]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [113:27]
| | |--TEXT_BLOCK_CONTENT -> \n function hello() {\n print('"Hello, world"');\n }\n hello();\n [113:30]
| | `--TEXT_BLOCK_LITERAL_END -> """ [118:17]
| |--SEMI -> ; [118:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [119:9]
| | |--MODIFIERS -> MODIFIERS [119:9]
| | |--TYPE -> TYPE [119:9]
| | | `--IDENT -> String [119:9]
| | |--IDENT -> multiLineStr [119:16]
| | `--ASSIGN -> = [119:29]
| | `--EXPR -> EXPR [120:17]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [120:17]
| | |--TEXT_BLOCK_CONTENT -> \n SELECT * FROM USERS\n WHERE USER_ID = '1'\n [120:20]
| | `--TEXT_BLOCK_LITERAL_END -> """ [123:17]
| |--SEMI -> ; [123:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [124:9]
| | |--MODIFIERS -> MODIFIERS [124:9]
| | |--TYPE -> TYPE [124:9]
| | | `--IDENT -> String [124:9]
| | |--IDENT -> textBlockCeption [124:16]
| | `--ASSIGN -> = [124:33]
| | `--EXPR -> EXPR [125:17]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [125:17]
| | |--TEXT_BLOCK_CONTENT -> \n String text = \"""\n A text block inside a text block\n \""";\n [125:20]
| | `--TEXT_BLOCK_LITERAL_END -> """ [129:17]
| |--SEMI -> ; [129:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [130:9]
| | |--MODIFIERS -> MODIFIERS [130:9]
| | |--TYPE -> TYPE [130:9]
| | | `--IDENT -> String [130:9]
| | |--IDENT -> code1 [130:16]
| | `--ASSIGN -> = [130:22]
| | `--EXPR -> EXPR [134:26]
| | `--METHOD_CALL -> ( [134:26]
| | |--DOT -> . [134:18]
| | | |--TEXT_BLOCK_LITERAL_BEGIN -> """ [130:24]
| | | | |--TEXT_BLOCK_CONTENT -> \n public void print($type o) {\n System.out.println(Objects.toString(o));\n }\n [130:27]
| | | | `--TEXT_BLOCK_LITERAL_END -> """ [134:15]
| | | `--IDENT -> replace [134:19]
| | |--ELIST -> ELIST [134:27]
| | | |--EXPR -> EXPR [134:27]
| | | | `--STRING_LITERAL -> "$type" [134:27]
| | | |--COMMA -> , [134:34]
| | | `--EXPR -> EXPR [134:36]
| | | `--IDENT -> type [134:36]
| | `--RPAREN -> ) [134:40]
| |--SEMI -> ; [134:41]
| |--VARIABLE_DEF -> VARIABLE_DEF [135:9]
| | |--MODIFIERS -> MODIFIERS [135:9]
| | |--TYPE -> TYPE [135:9]
| | | `--IDENT -> String [135:9]
| | |--IDENT -> code2 [135:16]
| | `--ASSIGN -> = [135:22]
| | `--EXPR -> EXPR [135:37]
| | `--METHOD_CALL -> ( [135:37]
| | |--DOT -> . [135:30]
| | | |--IDENT -> String [135:24]
| | | `--IDENT -> format [135:31]
| | |--ELIST -> ELIST [135:38]
| | | |--EXPR -> EXPR [135:38]
| | | | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [135:38]
| | | | |--TEXT_BLOCK_CONTENT -> \n public void print(%s o) {\n System.out.println(Objects.toString(o));\n }\n [135:41]
| | | | `--TEXT_BLOCK_LITERAL_END -> """ [139:15]
| | | |--COMMA -> , [139:18]
| | | `--EXPR -> EXPR [139:20]
| | | `--IDENT -> type [139:20]
| | `--RPAREN -> ) [139:24]
| |--SEMI -> ; [139:25]
| `--RCURLY -> } [140:5]
|--METHOD_DEF -> METHOD_DEF [142:5]
| |--MODIFIERS -> MODIFIERS [142:5]
| | `--LITERAL_PUBLIC -> public [142:5]
| |--TYPE -> TYPE [142:12]
| | `--IDENT -> String [142:12]
| |--IDENT -> getFormattedText [142:19]
| |--LPAREN -> ( [142:35]
| |--PARAMETERS -> PARAMETERS [142:36]
| | `--PARAMETER_DEF -> PARAMETER_DEF [142:36]
| | |--MODIFIERS -> MODIFIERS [142:36]
| | |--TYPE -> TYPE [142:36]
| | | `--IDENT -> String [142:36]
| | `--IDENT -> parameter [142:43]
| |--RPAREN -> ) [142:52]
| `--SLIST -> { [142:54]
| |--LITERAL_RETURN -> return [143:9]
| | |--EXPR -> EXPR [145:26]
| | | `--METHOD_CALL -> ( [145:26]
| | | |--DOT -> . [145:16]
| | | | |--TEXT_BLOCK_LITERAL_BEGIN -> """ [143:16]
| | | | | |--TEXT_BLOCK_CONTENT -> \n Some parameter: %s\n [143:19]
| | | | | `--TEXT_BLOCK_LITERAL_END -> """ [145:13]
| | | | `--IDENT -> formatted [145:17]
| | | |--ELIST -> ELIST [145:27]
| | | | `--EXPR -> EXPR [145:27]
| | | | `--IDENT -> parameter [145:27]
| | | `--RPAREN -> ) [145:36]
| | `--SEMI -> ; [145:37]
| `--RCURLY -> } [146:5]
|--METHOD_DEF -> METHOD_DEF [148:5]
| |--MODIFIERS -> MODIFIERS [148:5]
| | `--LITERAL_PUBLIC -> public [148:5]
| |--TYPE -> TYPE [148:12]
| | `--IDENT -> String [148:12]
| |--IDENT -> getIgnoredNewLines [148:19]
| |--LPAREN -> ( [148:37]
| |--PARAMETERS -> PARAMETERS [148:38]
| |--RPAREN -> ) [148:38]
| `--SLIST -> { [148:40]
| |--LITERAL_RETURN -> return [149:9]
| | |--EXPR -> EXPR [149:16]
| | | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [149:16]
| | | |--TEXT_BLOCK_CONTENT -> \n This is a long test which looks to \\n have a newline but actually does not [149:19]
| | | `--TEXT_BLOCK_LITERAL_END -> """ [151:49]
| | `--SEMI -> ; [151:52]
| `--RCURLY -> } [152:5]
|--METHOD_DEF -> METHOD_DEF [154:5]
| |--MODIFIERS -> MODIFIERS [154:5]
| | `--LITERAL_PUBLIC -> public [154:5]
| |--TYPE -> TYPE [154:12]
| | `--IDENT -> String [154:12]
| |--IDENT -> getEscapedSpaces [154:19]
| |--LPAREN -> ( [154:35]
| |--PARAMETERS -> PARAMETERS [154:36]
| |--RPAREN -> ) [154:36]
| `--SLIST -> { [154:38]
| |--LITERAL_RETURN -> return [155:9]
| | |--EXPR -> EXPR [155:16]
| | | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [155:16]
| | | |--TEXT_BLOCK_CONTENT -> \n line 1·······\n line 2·······\s\n [155:19]
| | | `--TEXT_BLOCK_LITERAL_END -> """ [158:13]
| | `--SEMI -> ; [158:16]
| `--RCURLY -> } [159:5]
|--METHOD_DEF -> METHOD_DEF [161:5]
| |--MODIFIERS -> MODIFIERS [161:5]
| |--TYPE -> TYPE [161:5]
| | `--LITERAL_VOID -> void [161:5]
| |--IDENT -> lineTerminators [161:10]
| |--LPAREN -> ( [161:25]
| |--PARAMETERS -> PARAMETERS [161:26]
| |--RPAREN -> ) [161:26]
| `--SLIST -> { [161:28]
| |--VARIABLE_DEF -> VARIABLE_DEF [162:9]
| | |--MODIFIERS -> MODIFIERS [162:9]
| | |--TYPE -> TYPE [162:9]
| | | `--IDENT -> String [162:9]
| | |--IDENT -> s [162:16]
| | `--ASSIGN -> = [162:18]
| | `--EXPR -> EXPR [162:20]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [162:20]
| | |--TEXT_BLOCK_CONTENT -> \n \u000D [162:23]
| | `--TEXT_BLOCK_LITERAL_END -> """ [163:23]
| |--SEMI -> ; [163:26]
| |--VARIABLE_DEF -> VARIABLE_DEF [164:9]
| | |--MODIFIERS -> MODIFIERS [164:9]
| | |--TYPE -> TYPE [164:9]
| | | `--IDENT -> String [164:9]
| | |--IDENT -> s1 [164:16]
| | `--ASSIGN -> = [164:19]
| | `--EXPR -> EXPR [164:21]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [164:21]
| | |--TEXT_BLOCK_CONTENT -> \n \n [164:24]
| | `--TEXT_BLOCK_LITERAL_END -> """ [165:19]
| |--SEMI -> ; [165:22]
| |--VARIABLE_DEF -> VARIABLE_DEF [166:9]
| | |--MODIFIERS -> MODIFIERS [166:9]
| | |--TYPE -> TYPE [166:9]
| | | `--IDENT -> String [166:9]
| | |--IDENT -> s2 [166:16]
| | `--ASSIGN -> = [166:19]
| | `--EXPR -> EXPR [166:21]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [166:21]
| | |--TEXT_BLOCK_CONTENT -> \n \n\n [166:24]
| | `--TEXT_BLOCK_LITERAL_END -> """ [168:17]
| |--SEMI -> ; [168:20]
| |--VARIABLE_DEF -> VARIABLE_DEF [169:9]
| | |--MODIFIERS -> MODIFIERS [169:9]
| | |--TYPE -> TYPE [169:9]
| | | `--IDENT -> String [169:9]
| | |--IDENT -> s3 [169:16]
| | `--ASSIGN -> = [169:19]
| | `--EXPR -> EXPR [169:21]
| | `--TEXT_BLOCK_LITERAL_BEGIN -> """ [169:21]
| | |--TEXT_BLOCK_CONTENT -> \n \\n [169:24]
| | `--TEXT_BLOCK_LITERAL_END -> """ [171:17]
| |--SEMI -> ; [171:20]
| `--RCURLY -> } [172:5]
`--RCURLY -> } [173:1]