@plurnk/plurnk-contracts 1.14.2 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/SPEC.md +90 -106
  2. package/dist/plurnk.gemma.gbnf +41 -67
  3. package/dist/plurnk.qwen.gbnf +41 -67
  4. package/dist/schema/ClientStatement.json +114 -40
  5. package/dist/schema/PlurnkStatement.json +29 -199
  6. package/dist/schema/RangeExtent.json +1 -1
  7. package/dist/src/AstBuilder.d.ts +2 -2
  8. package/dist/src/AstBuilder.d.ts.map +1 -1
  9. package/dist/src/AstBuilder.js +56 -144
  10. package/dist/src/AstBuilder.js.map +1 -1
  11. package/dist/src/PlurnkErrorStrategy.d.ts +0 -1
  12. package/dist/src/PlurnkErrorStrategy.d.ts.map +1 -1
  13. package/dist/src/PlurnkErrorStrategy.js +57 -46
  14. package/dist/src/PlurnkErrorStrategy.js.map +1 -1
  15. package/dist/src/PlurnkParser.d.ts +1 -2
  16. package/dist/src/PlurnkParser.d.ts.map +1 -1
  17. package/dist/src/PlurnkParser.js +13 -102
  18. package/dist/src/PlurnkParser.js.map +1 -1
  19. package/dist/src/generated/plurnkLexer.d.ts +42 -69
  20. package/dist/src/generated/plurnkLexer.d.ts.map +1 -1
  21. package/dist/src/generated/plurnkLexer.js +485 -642
  22. package/dist/src/generated/plurnkLexer.js.map +1 -1
  23. package/dist/src/generated/plurnkParser.d.ts +75 -215
  24. package/dist/src/generated/plurnkParser.d.ts.map +1 -1
  25. package/dist/src/generated/plurnkParser.js +631 -1833
  26. package/dist/src/generated/plurnkParser.js.map +1 -1
  27. package/dist/src/generated/plurnkParserVisitor.d.ts +3 -87
  28. package/dist/src/generated/plurnkParserVisitor.d.ts.map +1 -1
  29. package/dist/src/generated/plurnkParserVisitor.js +2 -74
  30. package/dist/src/generated/plurnkParserVisitor.js.map +1 -1
  31. package/dist/src/index.d.ts +0 -2
  32. package/dist/src/index.d.ts.map +1 -1
  33. package/dist/src/index.js +0 -1
  34. package/dist/src/index.js.map +1 -1
  35. package/dist/src/types.d.ts +1 -1
  36. package/dist/src/types.d.ts.map +1 -1
  37. package/dist/src/types.generated.d.ts +18 -50
  38. package/dist/src/types.generated.d.ts.map +1 -1
  39. package/dist/src/types.js +1 -1
  40. package/dist/src/types.js.map +1 -1
  41. package/package.json +1 -1
  42. package/plurnk.md +51 -57
  43. package/dist/src/TagSignal.d.ts +0 -15
  44. package/dist/src/TagSignal.d.ts.map +0 -1
  45. package/dist/src/TagSignal.js +0 -53
  46. package/dist/src/TagSignal.js.map +0 -1
@@ -1,51 +1,40 @@
1
1
  import * as antlr from "antlr4ng";
2
2
  export class plurnkParser extends antlr.Parser {
3
- static LBRACKET = 1;
4
- static RBRACKET = 2;
5
- static LPAREN = 3;
6
- static RPAREN = 4;
7
- static LBRACE = 5;
8
- static RBRACE = 6;
9
- static L_MARKER = 7;
10
- static COMBINED_L_MARKER = 8;
11
- static BODY_OPEN = 9;
12
- static SECTION_END = 10;
13
- static COMMA = 11;
14
- static INT = 12;
15
- static DISPOSITION = 13;
16
- static IDENT = 14;
17
- static TAG = 15;
18
- static TARGET_TEXT = 16;
19
- static METADATA_TEXT = 17;
20
- static BODY_TEXT = 18;
21
- static TEXT = 19;
22
- static ANNOTATION = 20;
23
- static OPEN_PLAN = 21;
24
- static OPEN_FIND = 22;
25
- static OPEN_READ = 23;
26
- static OPEN_EDIT = 24;
27
- static OPEN_COPY = 25;
28
- static OPEN_MOVE = 26;
29
- static OPEN_OPEN = 27;
30
- static OPEN_FOLD = 28;
31
- static OPEN_SEND = 29;
32
- static OPEN_EXEC = 30;
33
- static OPEN_BARE = 31;
34
- static OPEN_WORK = 32;
35
- static OPEN_FORK = 33;
36
- static OPEN_KILL = 34;
37
- static OPEN_LOOK = 35;
38
- static OPEN_BUFF = 36;
39
- static FENCE_OPEN = 37;
40
- static FENCE_CLOSE = 38;
41
- static WS = 39;
42
- static SLOTS_WS = 40;
43
- static ST_WS = 41;
44
- static SI_WS = 42;
45
- static SD_WS = 43;
46
- static TEXT_HASH = 44;
47
- static ST_COMMA = 45;
48
- static TARGET_BACKSLASH = 46;
3
+ static LPAREN = 1;
4
+ static RPAREN = 2;
5
+ static LBRACE = 3;
6
+ static RBRACE = 4;
7
+ static L_MARKER = 5;
8
+ static COMBINED_L_MARKER = 6;
9
+ static BODY_OPEN = 7;
10
+ static SECTION_END = 8;
11
+ static TARGET_TEXT = 9;
12
+ static METADATA_TEXT = 10;
13
+ static BODY_TEXT = 11;
14
+ static TEXT = 12;
15
+ static ANNOTATION = 13;
16
+ static SEND_LABEL = 14;
17
+ static EXECUTOR = 15;
18
+ static OPEN_PLAN = 16;
19
+ static OPEN_FIND = 17;
20
+ static OPEN_READ = 18;
21
+ static OPEN_EDIT = 19;
22
+ static OPEN_COPY = 20;
23
+ static OPEN_MOVE = 21;
24
+ static OPEN_SEND = 22;
25
+ static OPEN_EXEC = 23;
26
+ static OPEN_BARE = 24;
27
+ static OPEN_WORK = 25;
28
+ static OPEN_FORK = 26;
29
+ static OPEN_KILL = 27;
30
+ static OPEN_LOOK = 28;
31
+ static OPEN_BUFF = 29;
32
+ static FENCE_OPEN = 30;
33
+ static FENCE_CLOSE = 31;
34
+ static WS = 32;
35
+ static SLOTS_WS = 33;
36
+ static TEXT_HASH = 34;
37
+ static TARGET_BACKSLASH = 35;
49
38
  static RULE_document = 0;
50
39
  static RULE_log = 1;
51
40
  static RULE_turnContent = 2;
@@ -62,72 +51,54 @@ export class plurnkParser extends antlr.Parser {
62
51
  static RULE_editStatement = 13;
63
52
  static RULE_copyStatement = 14;
64
53
  static RULE_moveStatement = 15;
65
- static RULE_openStatement = 16;
66
- static RULE_foldStatement = 17;
67
- static RULE_sendStatement = 18;
68
- static RULE_midSend = 19;
69
- static RULE_execStatement = 20;
70
- static RULE_bareStatement = 21;
71
- static RULE_workStatement = 22;
72
- static RULE_forkStatement = 23;
73
- static RULE_killStatement = 24;
74
- static RULE_planStatement = 25;
75
- static RULE_lookStatement = 26;
76
- static RULE_buffStatement = 27;
77
- static RULE_opAnnotation = 28;
78
- static RULE_statementEnd = 29;
79
- static RULE_transferModifiers = 30;
80
- static RULE_resourceSelection = 31;
81
- static RULE_emptyStatementEnd = 32;
82
- static RULE_tagOpModifiers = 33;
83
- static RULE_intOpModifiers = 34;
84
- static RULE_branchModifiers = 35;
85
- static RULE_termModifiers = 36;
86
- static RULE_midModifiers = 37;
87
- static RULE_execModifiers = 38;
88
- static RULE_execSlot = 39;
89
- static RULE_tagSignal = 40;
90
- static RULE_branchSignal = 41;
91
- static RULE_intSignal = 42;
92
- static RULE_midSignal = 43;
93
- static RULE_dispSignal = 44;
94
- static RULE_identSignal = 45;
95
- static RULE_target = 46;
96
- static RULE_targetWithMetadata = 47;
97
- static RULE_metadata = 48;
98
- static RULE_lineMarker = 49;
99
- static RULE_body = 50;
54
+ static RULE_sendStatement = 16;
55
+ static RULE_midSend = 17;
56
+ static RULE_execStatement = 18;
57
+ static RULE_bareStatement = 19;
58
+ static RULE_workStatement = 20;
59
+ static RULE_forkStatement = 21;
60
+ static RULE_killStatement = 22;
61
+ static RULE_planStatement = 23;
62
+ static RULE_lookStatement = 24;
63
+ static RULE_buffStatement = 25;
64
+ static RULE_opAnnotation = 26;
65
+ static RULE_statementEnd = 27;
66
+ static RULE_transferModifiers = 28;
67
+ static RULE_resourceSelection = 29;
68
+ static RULE_emptyStatementEnd = 30;
69
+ static RULE_slotModifiers = 31;
70
+ static RULE_execModifiers = 32;
71
+ static RULE_execSlot = 33;
72
+ static RULE_target = 34;
73
+ static RULE_targetWithMetadata = 35;
74
+ static RULE_metadata = 36;
75
+ static RULE_lineMarker = 37;
76
+ static RULE_body = 38;
100
77
  static literalNames = [
101
78
  null, null, null, null, null, null, null, null, null, null, null,
102
79
  null, null, null, null, null, null, null, null, null, null, null,
103
80
  null, null, null, null, null, null, null, null, null, null, null,
104
- null, null, null, null, null, null, null, null, null, null, null,
105
- "'#'", "','", "'\\'"
81
+ null, "'#'", "'\\'"
106
82
  ];
107
83
  static symbolicNames = [
108
- null, "LBRACKET", "RBRACKET", "LPAREN", "RPAREN", "LBRACE", "RBRACE",
109
- "L_MARKER", "COMBINED_L_MARKER", "BODY_OPEN", "SECTION_END", "COMMA",
110
- "INT", "DISPOSITION", "IDENT", "TAG", "TARGET_TEXT", "METADATA_TEXT",
111
- "BODY_TEXT", "TEXT", "ANNOTATION", "OPEN_PLAN", "OPEN_FIND", "OPEN_READ",
112
- "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE", "OPEN_OPEN", "OPEN_FOLD",
113
- "OPEN_SEND", "OPEN_EXEC", "OPEN_BARE", "OPEN_WORK", "OPEN_FORK",
114
- "OPEN_KILL", "OPEN_LOOK", "OPEN_BUFF", "FENCE_OPEN", "FENCE_CLOSE",
115
- "WS", "SLOTS_WS", "ST_WS", "SI_WS", "SD_WS", "TEXT_HASH", "ST_COMMA",
116
- "TARGET_BACKSLASH"
84
+ null, "LPAREN", "RPAREN", "LBRACE", "RBRACE", "L_MARKER", "COMBINED_L_MARKER",
85
+ "BODY_OPEN", "SECTION_END", "TARGET_TEXT", "METADATA_TEXT", "BODY_TEXT",
86
+ "TEXT", "ANNOTATION", "SEND_LABEL", "EXECUTOR", "OPEN_PLAN", "OPEN_FIND",
87
+ "OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE", "OPEN_SEND",
88
+ "OPEN_EXEC", "OPEN_BARE", "OPEN_WORK", "OPEN_FORK", "OPEN_KILL",
89
+ "OPEN_LOOK", "OPEN_BUFF", "FENCE_OPEN", "FENCE_CLOSE", "WS", "SLOTS_WS",
90
+ "TEXT_HASH", "TARGET_BACKSLASH"
117
91
  ];
118
92
  static ruleNames = [
119
93
  "document", "log", "turnContent", "modelTurnContent", "turn", "modelTurn",
120
94
  "statementSeq", "clientStatementSeq", "clientStatement", "statement",
121
95
  "midStatement", "findStatement", "readStatement", "editStatement",
122
- "copyStatement", "moveStatement", "openStatement", "foldStatement",
123
- "sendStatement", "midSend", "execStatement", "bareStatement", "workStatement",
124
- "forkStatement", "killStatement", "planStatement", "lookStatement",
125
- "buffStatement", "opAnnotation", "statementEnd", "transferModifiers",
126
- "resourceSelection", "emptyStatementEnd", "tagOpModifiers", "intOpModifiers",
127
- "branchModifiers", "termModifiers", "midModifiers", "execModifiers",
128
- "execSlot", "tagSignal", "branchSignal", "intSignal", "midSignal",
129
- "dispSignal", "identSignal", "target", "targetWithMetadata", "metadata",
130
- "lineMarker", "body",
96
+ "copyStatement", "moveStatement", "sendStatement", "midSend", "execStatement",
97
+ "bareStatement", "workStatement", "forkStatement", "killStatement",
98
+ "planStatement", "lookStatement", "buffStatement", "opAnnotation",
99
+ "statementEnd", "transferModifiers", "resourceSelection", "emptyStatementEnd",
100
+ "slotModifiers", "execModifiers", "execSlot", "target", "targetWithMetadata",
101
+ "metadata", "lineMarker", "body",
131
102
  ];
132
103
  get grammarFileName() { return "plurnkParser.g4"; }
133
104
  get literalNames() { return plurnkParser.literalNames; }
@@ -146,7 +117,7 @@ export class plurnkParser extends antlr.Parser {
146
117
  this.enterRule(localContext, 0, plurnkParser.RULE_document);
147
118
  let _la;
148
119
  try {
149
- this.state = 112;
120
+ this.state = 88;
150
121
  this.errorHandler.sync(this);
151
122
  switch (this.tokenStream.LA(1)) {
152
123
  case plurnkParser.TEXT:
@@ -156,8 +127,6 @@ export class plurnkParser extends antlr.Parser {
156
127
  case plurnkParser.OPEN_EDIT:
157
128
  case plurnkParser.OPEN_COPY:
158
129
  case plurnkParser.OPEN_MOVE:
159
- case plurnkParser.OPEN_OPEN:
160
- case plurnkParser.OPEN_FOLD:
161
130
  case plurnkParser.OPEN_SEND:
162
131
  case plurnkParser.OPEN_EXEC:
163
132
  case plurnkParser.OPEN_BARE:
@@ -166,29 +135,29 @@ export class plurnkParser extends antlr.Parser {
166
135
  case plurnkParser.OPEN_KILL:
167
136
  this.enterOuterAlt(localContext, 1);
168
137
  {
169
- this.state = 102;
138
+ this.state = 78;
170
139
  this.modelTurnContent();
171
- this.state = 103;
140
+ this.state = 79;
172
141
  this.match(plurnkParser.EOF);
173
142
  }
174
143
  break;
175
144
  case plurnkParser.FENCE_OPEN:
176
145
  this.enterOuterAlt(localContext, 2);
177
146
  {
178
- this.state = 105;
147
+ this.state = 81;
179
148
  this.match(plurnkParser.FENCE_OPEN);
180
- this.state = 106;
149
+ this.state = 82;
181
150
  this.modelTurn();
182
- this.state = 108;
151
+ this.state = 84;
183
152
  this.errorHandler.sync(this);
184
153
  _la = this.tokenStream.LA(1);
185
- if (_la === 38) {
154
+ if (_la === 31) {
186
155
  {
187
- this.state = 107;
156
+ this.state = 83;
188
157
  this.match(plurnkParser.FENCE_CLOSE);
189
158
  }
190
159
  }
191
- this.state = 110;
160
+ this.state = 86;
192
161
  this.match(plurnkParser.EOF);
193
162
  }
194
163
  break;
@@ -217,21 +186,21 @@ export class plurnkParser extends antlr.Parser {
217
186
  try {
218
187
  this.enterOuterAlt(localContext, 1);
219
188
  {
220
- this.state = 115;
189
+ this.state = 91;
221
190
  this.errorHandler.sync(this);
222
191
  _la = this.tokenStream.LA(1);
223
192
  do {
224
193
  {
225
194
  {
226
- this.state = 114;
195
+ this.state = 90;
227
196
  this.turnContent();
228
197
  }
229
198
  }
230
- this.state = 117;
199
+ this.state = 93;
231
200
  this.errorHandler.sync(this);
232
201
  _la = this.tokenStream.LA(1);
233
- } while (_la === 19 || _la === 21);
234
- this.state = 119;
202
+ } while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 268374016) !== 0));
203
+ this.state = 95;
235
204
  this.match(plurnkParser.EOF);
236
205
  }
237
206
  }
@@ -256,21 +225,21 @@ export class plurnkParser extends antlr.Parser {
256
225
  try {
257
226
  this.enterOuterAlt(localContext, 1);
258
227
  {
259
- this.state = 124;
228
+ this.state = 100;
260
229
  this.errorHandler.sync(this);
261
230
  _la = this.tokenStream.LA(1);
262
- while (_la === 19) {
231
+ while (_la === 12) {
263
232
  {
264
233
  {
265
- this.state = 121;
234
+ this.state = 97;
266
235
  this.match(plurnkParser.TEXT);
267
236
  }
268
237
  }
269
- this.state = 126;
238
+ this.state = 102;
270
239
  this.errorHandler.sync(this);
271
240
  _la = this.tokenStream.LA(1);
272
241
  }
273
- this.state = 127;
242
+ this.state = 103;
274
243
  this.turn();
275
244
  }
276
245
  }
@@ -295,21 +264,21 @@ export class plurnkParser extends antlr.Parser {
295
264
  try {
296
265
  this.enterOuterAlt(localContext, 1);
297
266
  {
298
- this.state = 132;
267
+ this.state = 108;
299
268
  this.errorHandler.sync(this);
300
269
  _la = this.tokenStream.LA(1);
301
- while (_la === 19) {
270
+ while (_la === 12) {
302
271
  {
303
272
  {
304
- this.state = 129;
273
+ this.state = 105;
305
274
  this.match(plurnkParser.TEXT);
306
275
  }
307
276
  }
308
- this.state = 134;
277
+ this.state = 110;
309
278
  this.errorHandler.sync(this);
310
279
  _la = this.tokenStream.LA(1);
311
280
  }
312
- this.state = 135;
281
+ this.state = 111;
313
282
  this.modelTurn();
314
283
  }
315
284
  }
@@ -330,29 +299,37 @@ export class plurnkParser extends antlr.Parser {
330
299
  turn() {
331
300
  let localContext = new TurnContext(this.context, this.state);
332
301
  this.enterRule(localContext, 8, plurnkParser.RULE_turn);
302
+ let _la;
333
303
  try {
334
304
  let alternative;
335
305
  this.enterOuterAlt(localContext, 1);
336
306
  {
337
- this.state = 137;
338
- this.planStatement();
339
- this.state = 141;
307
+ this.state = 114;
308
+ this.errorHandler.sync(this);
309
+ _la = this.tokenStream.LA(1);
310
+ if (_la === 16) {
311
+ {
312
+ this.state = 113;
313
+ this.planStatement();
314
+ }
315
+ }
316
+ this.state = 119;
340
317
  this.errorHandler.sync(this);
341
- alternative = this.interpreter.adaptivePredict(this.tokenStream, 5, this.context);
318
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 6, this.context);
342
319
  while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
343
320
  if (alternative === 1) {
344
321
  {
345
322
  {
346
- this.state = 138;
323
+ this.state = 116;
347
324
  this.midStatement();
348
325
  }
349
326
  }
350
327
  }
351
- this.state = 143;
328
+ this.state = 121;
352
329
  this.errorHandler.sync(this);
353
- alternative = this.interpreter.adaptivePredict(this.tokenStream, 5, this.context);
330
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 6, this.context);
354
331
  }
355
- this.state = 144;
332
+ this.state = 122;
356
333
  this.sendStatement();
357
334
  }
358
335
  }
@@ -376,36 +353,36 @@ export class plurnkParser extends antlr.Parser {
376
353
  let _la;
377
354
  try {
378
355
  let alternative;
379
- this.state = 165;
356
+ this.state = 143;
380
357
  this.errorHandler.sync(this);
381
- switch (this.interpreter.adaptivePredict(this.tokenStream, 10, this.context)) {
358
+ switch (this.interpreter.adaptivePredict(this.tokenStream, 11, this.context)) {
382
359
  case 1:
383
360
  this.enterOuterAlt(localContext, 1);
384
361
  {
385
- this.state = 146;
362
+ this.state = 124;
386
363
  this.planStatement();
387
- this.state = 150;
364
+ this.state = 128;
388
365
  this.errorHandler.sync(this);
389
- alternative = this.interpreter.adaptivePredict(this.tokenStream, 6, this.context);
366
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 7, this.context);
390
367
  while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
391
368
  if (alternative === 1) {
392
369
  {
393
370
  {
394
- this.state = 147;
371
+ this.state = 125;
395
372
  this.midStatement();
396
373
  }
397
374
  }
398
375
  }
399
- this.state = 152;
376
+ this.state = 130;
400
377
  this.errorHandler.sync(this);
401
- alternative = this.interpreter.adaptivePredict(this.tokenStream, 6, this.context);
378
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 7, this.context);
402
379
  }
403
- this.state = 154;
380
+ this.state = 132;
404
381
  this.errorHandler.sync(this);
405
382
  _la = this.tokenStream.LA(1);
406
- if (_la === 29) {
383
+ if (_la === 22) {
407
384
  {
408
- this.state = 153;
385
+ this.state = 131;
409
386
  this.sendStatement();
410
387
  }
411
388
  }
@@ -414,7 +391,7 @@ export class plurnkParser extends antlr.Parser {
414
391
  case 2:
415
392
  this.enterOuterAlt(localContext, 2);
416
393
  {
417
- this.state = 157;
394
+ this.state = 135;
418
395
  this.errorHandler.sync(this);
419
396
  alternative = 1;
420
397
  do {
@@ -422,7 +399,7 @@ export class plurnkParser extends antlr.Parser {
422
399
  case 1:
423
400
  {
424
401
  {
425
- this.state = 156;
402
+ this.state = 134;
426
403
  this.midStatement();
427
404
  }
428
405
  }
@@ -430,16 +407,16 @@ export class plurnkParser extends antlr.Parser {
430
407
  default:
431
408
  throw new antlr.NoViableAltException(this);
432
409
  }
433
- this.state = 159;
410
+ this.state = 137;
434
411
  this.errorHandler.sync(this);
435
- alternative = this.interpreter.adaptivePredict(this.tokenStream, 8, this.context);
412
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 9, this.context);
436
413
  } while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER);
437
- this.state = 162;
414
+ this.state = 140;
438
415
  this.errorHandler.sync(this);
439
416
  _la = this.tokenStream.LA(1);
440
- if (_la === 29) {
417
+ if (_la === 22) {
441
418
  {
442
- this.state = 161;
419
+ this.state = 139;
443
420
  this.sendStatement();
444
421
  }
445
422
  }
@@ -448,7 +425,7 @@ export class plurnkParser extends antlr.Parser {
448
425
  case 3:
449
426
  this.enterOuterAlt(localContext, 3);
450
427
  {
451
- this.state = 164;
428
+ this.state = 142;
452
429
  this.sendStatement();
453
430
  }
454
431
  break;
@@ -475,21 +452,21 @@ export class plurnkParser extends antlr.Parser {
475
452
  try {
476
453
  this.enterOuterAlt(localContext, 1);
477
454
  {
478
- this.state = 170;
455
+ this.state = 148;
479
456
  this.errorHandler.sync(this);
480
457
  _la = this.tokenStream.LA(1);
481
- while (((((_la - 21)) & ~0x1F) === 0 && ((1 << (_la - 21)) & 16383) !== 0)) {
458
+ while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 268369920) !== 0)) {
482
459
  {
483
460
  {
484
- this.state = 167;
461
+ this.state = 145;
485
462
  this.statement();
486
463
  }
487
464
  }
488
- this.state = 172;
465
+ this.state = 150;
489
466
  this.errorHandler.sync(this);
490
467
  _la = this.tokenStream.LA(1);
491
468
  }
492
- this.state = 173;
469
+ this.state = 151;
493
470
  this.match(plurnkParser.EOF);
494
471
  }
495
472
  }
@@ -514,21 +491,21 @@ export class plurnkParser extends antlr.Parser {
514
491
  try {
515
492
  this.enterOuterAlt(localContext, 1);
516
493
  {
517
- this.state = 178;
494
+ this.state = 156;
518
495
  this.errorHandler.sync(this);
519
496
  _la = this.tokenStream.LA(1);
520
- while (((((_la - 21)) & ~0x1F) === 0 && ((1 << (_la - 21)) & 65535) !== 0)) {
497
+ while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 1073676288) !== 0)) {
521
498
  {
522
499
  {
523
- this.state = 175;
500
+ this.state = 153;
524
501
  this.clientStatement();
525
502
  }
526
503
  }
527
- this.state = 180;
504
+ this.state = 158;
528
505
  this.errorHandler.sync(this);
529
506
  _la = this.tokenStream.LA(1);
530
507
  }
531
- this.state = 181;
508
+ this.state = 159;
532
509
  this.match(plurnkParser.EOF);
533
510
  }
534
511
  }
@@ -550,7 +527,7 @@ export class plurnkParser extends antlr.Parser {
550
527
  let localContext = new ClientStatementContext(this.context, this.state);
551
528
  this.enterRule(localContext, 16, plurnkParser.RULE_clientStatement);
552
529
  try {
553
- this.state = 186;
530
+ this.state = 164;
554
531
  this.errorHandler.sync(this);
555
532
  switch (this.tokenStream.LA(1)) {
556
533
  case plurnkParser.OPEN_PLAN:
@@ -559,8 +536,6 @@ export class plurnkParser extends antlr.Parser {
559
536
  case plurnkParser.OPEN_EDIT:
560
537
  case plurnkParser.OPEN_COPY:
561
538
  case plurnkParser.OPEN_MOVE:
562
- case plurnkParser.OPEN_OPEN:
563
- case plurnkParser.OPEN_FOLD:
564
539
  case plurnkParser.OPEN_SEND:
565
540
  case plurnkParser.OPEN_EXEC:
566
541
  case plurnkParser.OPEN_BARE:
@@ -569,21 +544,21 @@ export class plurnkParser extends antlr.Parser {
569
544
  case plurnkParser.OPEN_KILL:
570
545
  this.enterOuterAlt(localContext, 1);
571
546
  {
572
- this.state = 183;
547
+ this.state = 161;
573
548
  this.statement();
574
549
  }
575
550
  break;
576
551
  case plurnkParser.OPEN_LOOK:
577
552
  this.enterOuterAlt(localContext, 2);
578
553
  {
579
- this.state = 184;
554
+ this.state = 162;
580
555
  this.lookStatement();
581
556
  }
582
557
  break;
583
558
  case plurnkParser.OPEN_BUFF:
584
559
  this.enterOuterAlt(localContext, 3);
585
560
  {
586
- this.state = 185;
561
+ this.state = 163;
587
562
  this.buffStatement();
588
563
  }
589
564
  break;
@@ -609,111 +584,97 @@ export class plurnkParser extends antlr.Parser {
609
584
  let localContext = new StatementContext(this.context, this.state);
610
585
  this.enterRule(localContext, 18, plurnkParser.RULE_statement);
611
586
  try {
612
- this.state = 203;
587
+ this.state = 179;
613
588
  this.errorHandler.sync(this);
614
- switch (this.interpreter.adaptivePredict(this.tokenStream, 14, this.context)) {
589
+ switch (this.interpreter.adaptivePredict(this.tokenStream, 15, this.context)) {
615
590
  case 1:
616
591
  this.enterOuterAlt(localContext, 1);
617
592
  {
618
- this.state = 188;
593
+ this.state = 166;
619
594
  this.findStatement();
620
595
  }
621
596
  break;
622
597
  case 2:
623
598
  this.enterOuterAlt(localContext, 2);
624
599
  {
625
- this.state = 189;
600
+ this.state = 167;
626
601
  this.readStatement();
627
602
  }
628
603
  break;
629
604
  case 3:
630
605
  this.enterOuterAlt(localContext, 3);
631
606
  {
632
- this.state = 190;
607
+ this.state = 168;
633
608
  this.editStatement();
634
609
  }
635
610
  break;
636
611
  case 4:
637
612
  this.enterOuterAlt(localContext, 4);
638
613
  {
639
- this.state = 191;
614
+ this.state = 169;
640
615
  this.copyStatement();
641
616
  }
642
617
  break;
643
618
  case 5:
644
619
  this.enterOuterAlt(localContext, 5);
645
620
  {
646
- this.state = 192;
621
+ this.state = 170;
647
622
  this.moveStatement();
648
623
  }
649
624
  break;
650
625
  case 6:
651
626
  this.enterOuterAlt(localContext, 6);
652
627
  {
653
- this.state = 193;
654
- this.openStatement();
628
+ this.state = 171;
629
+ this.sendStatement();
655
630
  }
656
631
  break;
657
632
  case 7:
658
633
  this.enterOuterAlt(localContext, 7);
659
634
  {
660
- this.state = 194;
661
- this.foldStatement();
635
+ this.state = 172;
636
+ this.midSend();
662
637
  }
663
638
  break;
664
639
  case 8:
665
640
  this.enterOuterAlt(localContext, 8);
666
641
  {
667
- this.state = 195;
668
- this.sendStatement();
642
+ this.state = 173;
643
+ this.execStatement();
669
644
  }
670
645
  break;
671
646
  case 9:
672
647
  this.enterOuterAlt(localContext, 9);
673
648
  {
674
- this.state = 196;
675
- this.midSend();
649
+ this.state = 174;
650
+ this.bareStatement();
676
651
  }
677
652
  break;
678
653
  case 10:
679
654
  this.enterOuterAlt(localContext, 10);
680
655
  {
681
- this.state = 197;
682
- this.execStatement();
656
+ this.state = 175;
657
+ this.workStatement();
683
658
  }
684
659
  break;
685
660
  case 11:
686
661
  this.enterOuterAlt(localContext, 11);
687
662
  {
688
- this.state = 198;
689
- this.bareStatement();
663
+ this.state = 176;
664
+ this.forkStatement();
690
665
  }
691
666
  break;
692
667
  case 12:
693
668
  this.enterOuterAlt(localContext, 12);
694
669
  {
695
- this.state = 199;
696
- this.workStatement();
670
+ this.state = 177;
671
+ this.killStatement();
697
672
  }
698
673
  break;
699
674
  case 13:
700
675
  this.enterOuterAlt(localContext, 13);
701
676
  {
702
- this.state = 200;
703
- this.forkStatement();
704
- }
705
- break;
706
- case 14:
707
- this.enterOuterAlt(localContext, 14);
708
- {
709
- this.state = 201;
710
- this.killStatement();
711
- }
712
- break;
713
- case 15:
714
- this.enterOuterAlt(localContext, 15);
715
- {
716
- this.state = 202;
677
+ this.state = 178;
717
678
  this.planStatement();
718
679
  }
719
680
  break;
@@ -737,97 +698,83 @@ export class plurnkParser extends antlr.Parser {
737
698
  let localContext = new MidStatementContext(this.context, this.state);
738
699
  this.enterRule(localContext, 20, plurnkParser.RULE_midStatement);
739
700
  try {
740
- this.state = 218;
701
+ this.state = 192;
741
702
  this.errorHandler.sync(this);
742
703
  switch (this.tokenStream.LA(1)) {
743
704
  case plurnkParser.OPEN_FIND:
744
705
  this.enterOuterAlt(localContext, 1);
745
706
  {
746
- this.state = 205;
707
+ this.state = 181;
747
708
  this.findStatement();
748
709
  }
749
710
  break;
750
711
  case plurnkParser.OPEN_READ:
751
712
  this.enterOuterAlt(localContext, 2);
752
713
  {
753
- this.state = 206;
714
+ this.state = 182;
754
715
  this.readStatement();
755
716
  }
756
717
  break;
757
718
  case plurnkParser.OPEN_EDIT:
758
719
  this.enterOuterAlt(localContext, 3);
759
720
  {
760
- this.state = 207;
721
+ this.state = 183;
761
722
  this.editStatement();
762
723
  }
763
724
  break;
764
725
  case plurnkParser.OPEN_COPY:
765
726
  this.enterOuterAlt(localContext, 4);
766
727
  {
767
- this.state = 208;
728
+ this.state = 184;
768
729
  this.copyStatement();
769
730
  }
770
731
  break;
771
732
  case plurnkParser.OPEN_MOVE:
772
733
  this.enterOuterAlt(localContext, 5);
773
734
  {
774
- this.state = 209;
735
+ this.state = 185;
775
736
  this.moveStatement();
776
737
  }
777
738
  break;
778
- case plurnkParser.OPEN_OPEN:
779
- this.enterOuterAlt(localContext, 6);
780
- {
781
- this.state = 210;
782
- this.openStatement();
783
- }
784
- break;
785
- case plurnkParser.OPEN_FOLD:
786
- this.enterOuterAlt(localContext, 7);
787
- {
788
- this.state = 211;
789
- this.foldStatement();
790
- }
791
- break;
792
739
  case plurnkParser.OPEN_SEND:
793
- this.enterOuterAlt(localContext, 8);
740
+ this.enterOuterAlt(localContext, 6);
794
741
  {
795
- this.state = 212;
742
+ this.state = 186;
796
743
  this.midSend();
797
744
  }
798
745
  break;
799
746
  case plurnkParser.OPEN_EXEC:
800
- this.enterOuterAlt(localContext, 9);
747
+ this.enterOuterAlt(localContext, 7);
801
748
  {
802
- this.state = 213;
749
+ this.state = 187;
803
750
  this.execStatement();
804
751
  }
805
752
  break;
806
753
  case plurnkParser.OPEN_BARE:
807
- this.enterOuterAlt(localContext, 10);
754
+ this.enterOuterAlt(localContext, 8);
808
755
  {
809
- this.state = 214;
756
+ this.state = 188;
810
757
  this.bareStatement();
811
758
  }
812
759
  break;
813
760
  case plurnkParser.OPEN_WORK:
814
- this.enterOuterAlt(localContext, 11);
761
+ this.enterOuterAlt(localContext, 9);
815
762
  {
816
- this.state = 215;
763
+ this.state = 189;
817
764
  this.workStatement();
818
765
  }
819
766
  break;
820
767
  case plurnkParser.OPEN_FORK:
821
- this.enterOuterAlt(localContext, 12);
768
+ this.enterOuterAlt(localContext, 10);
822
769
  {
823
- this.state = 216;
770
+ this.state = 190;
824
771
  this.forkStatement();
825
772
  }
826
773
  break;
827
774
  case plurnkParser.OPEN_KILL:
828
- this.enterOuterAlt(localContext, 13);
775
+ this.enterOuterAlt(localContext, 11);
829
776
  {
830
- this.state = 217;
777
+ this.state = 191;
831
778
  this.killStatement();
832
779
  }
833
780
  break;
@@ -856,27 +803,27 @@ export class plurnkParser extends antlr.Parser {
856
803
  try {
857
804
  this.enterOuterAlt(localContext, 1);
858
805
  {
859
- this.state = 220;
806
+ this.state = 194;
860
807
  this.match(plurnkParser.OPEN_FIND);
861
- this.state = 222;
808
+ this.state = 196;
862
809
  this.errorHandler.sync(this);
863
810
  _la = this.tokenStream.LA(1);
864
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
811
+ if (_la === 1 || _la === 5) {
865
812
  {
866
- this.state = 221;
867
- this.tagOpModifiers();
813
+ this.state = 195;
814
+ this.slotModifiers();
868
815
  }
869
816
  }
870
- this.state = 225;
817
+ this.state = 199;
871
818
  this.errorHandler.sync(this);
872
819
  _la = this.tokenStream.LA(1);
873
- if (_la === 20) {
820
+ if (_la === 13) {
874
821
  {
875
- this.state = 224;
822
+ this.state = 198;
876
823
  this.opAnnotation();
877
824
  }
878
825
  }
879
- this.state = 227;
826
+ this.state = 201;
880
827
  this.statementEnd();
881
828
  }
882
829
  }
@@ -901,27 +848,27 @@ export class plurnkParser extends antlr.Parser {
901
848
  try {
902
849
  this.enterOuterAlt(localContext, 1);
903
850
  {
904
- this.state = 229;
851
+ this.state = 203;
905
852
  this.match(plurnkParser.OPEN_READ);
906
- this.state = 231;
853
+ this.state = 205;
907
854
  this.errorHandler.sync(this);
908
855
  _la = this.tokenStream.LA(1);
909
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
856
+ if (_la === 1 || _la === 5) {
910
857
  {
911
- this.state = 230;
912
- this.tagOpModifiers();
858
+ this.state = 204;
859
+ this.slotModifiers();
913
860
  }
914
861
  }
915
- this.state = 234;
862
+ this.state = 208;
916
863
  this.errorHandler.sync(this);
917
864
  _la = this.tokenStream.LA(1);
918
- if (_la === 20) {
865
+ if (_la === 13) {
919
866
  {
920
- this.state = 233;
867
+ this.state = 207;
921
868
  this.opAnnotation();
922
869
  }
923
870
  }
924
- this.state = 236;
871
+ this.state = 210;
925
872
  this.statementEnd();
926
873
  }
927
874
  }
@@ -946,27 +893,27 @@ export class plurnkParser extends antlr.Parser {
946
893
  try {
947
894
  this.enterOuterAlt(localContext, 1);
948
895
  {
949
- this.state = 238;
896
+ this.state = 212;
950
897
  this.match(plurnkParser.OPEN_EDIT);
951
- this.state = 240;
898
+ this.state = 214;
952
899
  this.errorHandler.sync(this);
953
900
  _la = this.tokenStream.LA(1);
954
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
901
+ if (_la === 1 || _la === 5) {
955
902
  {
956
- this.state = 239;
957
- this.tagOpModifiers();
903
+ this.state = 213;
904
+ this.slotModifiers();
958
905
  }
959
906
  }
960
- this.state = 243;
907
+ this.state = 217;
961
908
  this.errorHandler.sync(this);
962
909
  _la = this.tokenStream.LA(1);
963
- if (_la === 20) {
910
+ if (_la === 13) {
964
911
  {
965
- this.state = 242;
912
+ this.state = 216;
966
913
  this.opAnnotation();
967
914
  }
968
915
  }
969
- this.state = 245;
916
+ this.state = 219;
970
917
  this.statementEnd();
971
918
  }
972
919
  }
@@ -991,20 +938,20 @@ export class plurnkParser extends antlr.Parser {
991
938
  try {
992
939
  this.enterOuterAlt(localContext, 1);
993
940
  {
994
- this.state = 247;
941
+ this.state = 221;
995
942
  this.match(plurnkParser.OPEN_COPY);
996
- this.state = 248;
943
+ this.state = 222;
997
944
  this.transferModifiers();
998
- this.state = 250;
945
+ this.state = 224;
999
946
  this.errorHandler.sync(this);
1000
947
  _la = this.tokenStream.LA(1);
1001
- if (_la === 20) {
948
+ if (_la === 13) {
1002
949
  {
1003
- this.state = 249;
950
+ this.state = 223;
1004
951
  this.opAnnotation();
1005
952
  }
1006
953
  }
1007
- this.state = 252;
954
+ this.state = 226;
1008
955
  this.emptyStatementEnd();
1009
956
  }
1010
957
  }
@@ -1029,20 +976,20 @@ export class plurnkParser extends antlr.Parser {
1029
976
  try {
1030
977
  this.enterOuterAlt(localContext, 1);
1031
978
  {
1032
- this.state = 254;
979
+ this.state = 228;
1033
980
  this.match(plurnkParser.OPEN_MOVE);
1034
- this.state = 255;
981
+ this.state = 229;
1035
982
  this.transferModifiers();
1036
- this.state = 257;
983
+ this.state = 231;
1037
984
  this.errorHandler.sync(this);
1038
985
  _la = this.tokenStream.LA(1);
1039
- if (_la === 20) {
986
+ if (_la === 13) {
1040
987
  {
1041
- this.state = 256;
988
+ this.state = 230;
1042
989
  this.opAnnotation();
1043
990
  }
1044
991
  }
1045
- this.state = 259;
992
+ this.state = 233;
1046
993
  this.emptyStatementEnd();
1047
994
  }
1048
995
  }
@@ -1060,117 +1007,36 @@ export class plurnkParser extends antlr.Parser {
1060
1007
  }
1061
1008
  return localContext;
1062
1009
  }
1063
- openStatement() {
1064
- let localContext = new OpenStatementContext(this.context, this.state);
1065
- this.enterRule(localContext, 32, plurnkParser.RULE_openStatement);
1066
- let _la;
1067
- try {
1068
- this.enterOuterAlt(localContext, 1);
1069
- {
1070
- this.state = 261;
1071
- this.match(plurnkParser.OPEN_OPEN);
1072
- this.state = 263;
1073
- this.errorHandler.sync(this);
1074
- _la = this.tokenStream.LA(1);
1075
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1076
- {
1077
- this.state = 262;
1078
- this.tagOpModifiers();
1079
- }
1080
- }
1081
- this.state = 266;
1082
- this.errorHandler.sync(this);
1083
- _la = this.tokenStream.LA(1);
1084
- if (_la === 20) {
1085
- {
1086
- this.state = 265;
1087
- this.opAnnotation();
1088
- }
1089
- }
1090
- this.state = 268;
1091
- this.statementEnd();
1092
- }
1093
- }
1094
- catch (re) {
1095
- if (re instanceof antlr.RecognitionException) {
1096
- this.errorHandler.reportError(this, re);
1097
- this.errorHandler.recover(this, re);
1098
- }
1099
- else {
1100
- throw re;
1101
- }
1102
- }
1103
- finally {
1104
- this.exitRule();
1105
- }
1106
- return localContext;
1107
- }
1108
- foldStatement() {
1109
- let localContext = new FoldStatementContext(this.context, this.state);
1110
- this.enterRule(localContext, 34, plurnkParser.RULE_foldStatement);
1010
+ sendStatement() {
1011
+ let localContext = new SendStatementContext(this.context, this.state);
1012
+ this.enterRule(localContext, 32, plurnkParser.RULE_sendStatement);
1111
1013
  let _la;
1112
1014
  try {
1113
1015
  this.enterOuterAlt(localContext, 1);
1114
1016
  {
1115
- this.state = 270;
1116
- this.match(plurnkParser.OPEN_FOLD);
1117
- this.state = 272;
1118
- this.errorHandler.sync(this);
1119
- _la = this.tokenStream.LA(1);
1120
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1121
- {
1122
- this.state = 271;
1123
- this.tagOpModifiers();
1124
- }
1125
- }
1126
- this.state = 275;
1017
+ this.state = 235;
1018
+ this.match(plurnkParser.OPEN_SEND);
1019
+ this.state = 236;
1020
+ this.match(plurnkParser.SEND_LABEL);
1021
+ this.state = 238;
1127
1022
  this.errorHandler.sync(this);
1128
1023
  _la = this.tokenStream.LA(1);
1129
- if (_la === 20) {
1024
+ if (_la === 5) {
1130
1025
  {
1131
- this.state = 274;
1132
- this.opAnnotation();
1026
+ this.state = 237;
1027
+ this.lineMarker();
1133
1028
  }
1134
1029
  }
1135
- this.state = 277;
1136
- this.statementEnd();
1137
- }
1138
- }
1139
- catch (re) {
1140
- if (re instanceof antlr.RecognitionException) {
1141
- this.errorHandler.reportError(this, re);
1142
- this.errorHandler.recover(this, re);
1143
- }
1144
- else {
1145
- throw re;
1146
- }
1147
- }
1148
- finally {
1149
- this.exitRule();
1150
- }
1151
- return localContext;
1152
- }
1153
- sendStatement() {
1154
- let localContext = new SendStatementContext(this.context, this.state);
1155
- this.enterRule(localContext, 36, plurnkParser.RULE_sendStatement);
1156
- let _la;
1157
- try {
1158
- this.enterOuterAlt(localContext, 1);
1159
- {
1160
- this.state = 279;
1161
- this.match(plurnkParser.OPEN_SEND);
1162
- this.state = 280;
1163
- this.termModifiers();
1164
- this.state = 282;
1030
+ this.state = 241;
1165
1031
  this.errorHandler.sync(this);
1166
1032
  _la = this.tokenStream.LA(1);
1167
- if (_la === 20) {
1033
+ if (_la === 13) {
1168
1034
  {
1169
- this.state = 281;
1035
+ this.state = 240;
1170
1036
  this.opAnnotation();
1171
1037
  }
1172
1038
  }
1173
- this.state = 284;
1039
+ this.state = 243;
1174
1040
  this.statementEnd();
1175
1041
  }
1176
1042
  }
@@ -1190,32 +1056,32 @@ export class plurnkParser extends antlr.Parser {
1190
1056
  }
1191
1057
  midSend() {
1192
1058
  let localContext = new MidSendContext(this.context, this.state);
1193
- this.enterRule(localContext, 38, plurnkParser.RULE_midSend);
1059
+ this.enterRule(localContext, 34, plurnkParser.RULE_midSend);
1194
1060
  let _la;
1195
1061
  try {
1196
1062
  this.enterOuterAlt(localContext, 1);
1197
1063
  {
1198
- this.state = 286;
1064
+ this.state = 245;
1199
1065
  this.match(plurnkParser.OPEN_SEND);
1200
- this.state = 288;
1066
+ this.state = 247;
1201
1067
  this.errorHandler.sync(this);
1202
1068
  _la = this.tokenStream.LA(1);
1203
- if (_la === 1 || _la === 3) {
1069
+ if (_la === 1) {
1204
1070
  {
1205
- this.state = 287;
1206
- this.midModifiers();
1071
+ this.state = 246;
1072
+ this.targetWithMetadata();
1207
1073
  }
1208
1074
  }
1209
- this.state = 291;
1075
+ this.state = 250;
1210
1076
  this.errorHandler.sync(this);
1211
1077
  _la = this.tokenStream.LA(1);
1212
- if (_la === 20) {
1078
+ if (_la === 13) {
1213
1079
  {
1214
- this.state = 290;
1080
+ this.state = 249;
1215
1081
  this.opAnnotation();
1216
1082
  }
1217
1083
  }
1218
- this.state = 293;
1084
+ this.state = 252;
1219
1085
  this.statementEnd();
1220
1086
  }
1221
1087
  }
@@ -1235,32 +1101,41 @@ export class plurnkParser extends antlr.Parser {
1235
1101
  }
1236
1102
  execStatement() {
1237
1103
  let localContext = new ExecStatementContext(this.context, this.state);
1238
- this.enterRule(localContext, 40, plurnkParser.RULE_execStatement);
1104
+ this.enterRule(localContext, 36, plurnkParser.RULE_execStatement);
1239
1105
  let _la;
1240
1106
  try {
1241
1107
  this.enterOuterAlt(localContext, 1);
1242
1108
  {
1243
- this.state = 295;
1109
+ this.state = 254;
1244
1110
  this.match(plurnkParser.OPEN_EXEC);
1245
- this.state = 297;
1111
+ this.state = 256;
1112
+ this.errorHandler.sync(this);
1113
+ _la = this.tokenStream.LA(1);
1114
+ if (_la === 15) {
1115
+ {
1116
+ this.state = 255;
1117
+ this.match(plurnkParser.EXECUTOR);
1118
+ }
1119
+ }
1120
+ this.state = 259;
1246
1121
  this.errorHandler.sync(this);
1247
1122
  _la = this.tokenStream.LA(1);
1248
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1123
+ if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
1249
1124
  {
1250
- this.state = 296;
1125
+ this.state = 258;
1251
1126
  this.execModifiers();
1252
1127
  }
1253
1128
  }
1254
- this.state = 300;
1129
+ this.state = 262;
1255
1130
  this.errorHandler.sync(this);
1256
1131
  _la = this.tokenStream.LA(1);
1257
- if (_la === 20) {
1132
+ if (_la === 13) {
1258
1133
  {
1259
- this.state = 299;
1134
+ this.state = 261;
1260
1135
  this.opAnnotation();
1261
1136
  }
1262
1137
  }
1263
- this.state = 302;
1138
+ this.state = 264;
1264
1139
  this.statementEnd();
1265
1140
  }
1266
1141
  }
@@ -1280,32 +1155,23 @@ export class plurnkParser extends antlr.Parser {
1280
1155
  }
1281
1156
  bareStatement() {
1282
1157
  let localContext = new BareStatementContext(this.context, this.state);
1283
- this.enterRule(localContext, 42, plurnkParser.RULE_bareStatement);
1158
+ this.enterRule(localContext, 38, plurnkParser.RULE_bareStatement);
1284
1159
  let _la;
1285
1160
  try {
1286
1161
  this.enterOuterAlt(localContext, 1);
1287
1162
  {
1288
- this.state = 304;
1163
+ this.state = 266;
1289
1164
  this.match(plurnkParser.OPEN_BARE);
1290
- this.state = 306;
1291
- this.errorHandler.sync(this);
1292
- _la = this.tokenStream.LA(1);
1293
- if (_la === 1) {
1294
- {
1295
- this.state = 305;
1296
- this.tagSignal();
1297
- }
1298
- }
1299
- this.state = 309;
1165
+ this.state = 268;
1300
1166
  this.errorHandler.sync(this);
1301
1167
  _la = this.tokenStream.LA(1);
1302
- if (_la === 20) {
1168
+ if (_la === 13) {
1303
1169
  {
1304
- this.state = 308;
1170
+ this.state = 267;
1305
1171
  this.opAnnotation();
1306
1172
  }
1307
1173
  }
1308
- this.state = 311;
1174
+ this.state = 270;
1309
1175
  this.statementEnd();
1310
1176
  }
1311
1177
  }
@@ -1325,32 +1191,32 @@ export class plurnkParser extends antlr.Parser {
1325
1191
  }
1326
1192
  workStatement() {
1327
1193
  let localContext = new WorkStatementContext(this.context, this.state);
1328
- this.enterRule(localContext, 44, plurnkParser.RULE_workStatement);
1194
+ this.enterRule(localContext, 40, plurnkParser.RULE_workStatement);
1329
1195
  let _la;
1330
1196
  try {
1331
1197
  this.enterOuterAlt(localContext, 1);
1332
1198
  {
1333
- this.state = 313;
1199
+ this.state = 272;
1334
1200
  this.match(plurnkParser.OPEN_WORK);
1335
- this.state = 315;
1201
+ this.state = 274;
1336
1202
  this.errorHandler.sync(this);
1337
1203
  _la = this.tokenStream.LA(1);
1338
- if (_la === 1 || _la === 3) {
1204
+ if (_la === 1) {
1339
1205
  {
1340
- this.state = 314;
1341
- this.branchModifiers();
1206
+ this.state = 273;
1207
+ this.targetWithMetadata();
1342
1208
  }
1343
1209
  }
1344
- this.state = 318;
1210
+ this.state = 277;
1345
1211
  this.errorHandler.sync(this);
1346
1212
  _la = this.tokenStream.LA(1);
1347
- if (_la === 20) {
1213
+ if (_la === 13) {
1348
1214
  {
1349
- this.state = 317;
1215
+ this.state = 276;
1350
1216
  this.opAnnotation();
1351
1217
  }
1352
1218
  }
1353
- this.state = 320;
1219
+ this.state = 279;
1354
1220
  this.statementEnd();
1355
1221
  }
1356
1222
  }
@@ -1370,32 +1236,32 @@ export class plurnkParser extends antlr.Parser {
1370
1236
  }
1371
1237
  forkStatement() {
1372
1238
  let localContext = new ForkStatementContext(this.context, this.state);
1373
- this.enterRule(localContext, 46, plurnkParser.RULE_forkStatement);
1239
+ this.enterRule(localContext, 42, plurnkParser.RULE_forkStatement);
1374
1240
  let _la;
1375
1241
  try {
1376
1242
  this.enterOuterAlt(localContext, 1);
1377
1243
  {
1378
- this.state = 322;
1244
+ this.state = 281;
1379
1245
  this.match(plurnkParser.OPEN_FORK);
1380
- this.state = 324;
1246
+ this.state = 283;
1381
1247
  this.errorHandler.sync(this);
1382
1248
  _la = this.tokenStream.LA(1);
1383
- if (_la === 1 || _la === 3) {
1249
+ if (_la === 1) {
1384
1250
  {
1385
- this.state = 323;
1386
- this.branchModifiers();
1251
+ this.state = 282;
1252
+ this.targetWithMetadata();
1387
1253
  }
1388
1254
  }
1389
- this.state = 327;
1255
+ this.state = 286;
1390
1256
  this.errorHandler.sync(this);
1391
1257
  _la = this.tokenStream.LA(1);
1392
- if (_la === 20) {
1258
+ if (_la === 13) {
1393
1259
  {
1394
- this.state = 326;
1260
+ this.state = 285;
1395
1261
  this.opAnnotation();
1396
1262
  }
1397
1263
  }
1398
- this.state = 329;
1264
+ this.state = 288;
1399
1265
  this.statementEnd();
1400
1266
  }
1401
1267
  }
@@ -1415,32 +1281,32 @@ export class plurnkParser extends antlr.Parser {
1415
1281
  }
1416
1282
  killStatement() {
1417
1283
  let localContext = new KillStatementContext(this.context, this.state);
1418
- this.enterRule(localContext, 48, plurnkParser.RULE_killStatement);
1284
+ this.enterRule(localContext, 44, plurnkParser.RULE_killStatement);
1419
1285
  let _la;
1420
1286
  try {
1421
1287
  this.enterOuterAlt(localContext, 1);
1422
1288
  {
1423
- this.state = 331;
1289
+ this.state = 290;
1424
1290
  this.match(plurnkParser.OPEN_KILL);
1425
- this.state = 333;
1291
+ this.state = 292;
1426
1292
  this.errorHandler.sync(this);
1427
1293
  _la = this.tokenStream.LA(1);
1428
- if (_la === 1 || _la === 3) {
1294
+ if (_la === 1 || _la === 5) {
1429
1295
  {
1430
- this.state = 332;
1431
- this.intOpModifiers();
1296
+ this.state = 291;
1297
+ this.slotModifiers();
1432
1298
  }
1433
1299
  }
1434
- this.state = 336;
1300
+ this.state = 295;
1435
1301
  this.errorHandler.sync(this);
1436
1302
  _la = this.tokenStream.LA(1);
1437
- if (_la === 20) {
1303
+ if (_la === 13) {
1438
1304
  {
1439
- this.state = 335;
1305
+ this.state = 294;
1440
1306
  this.opAnnotation();
1441
1307
  }
1442
1308
  }
1443
- this.state = 338;
1309
+ this.state = 297;
1444
1310
  this.statementEnd();
1445
1311
  }
1446
1312
  }
@@ -1460,32 +1326,32 @@ export class plurnkParser extends antlr.Parser {
1460
1326
  }
1461
1327
  planStatement() {
1462
1328
  let localContext = new PlanStatementContext(this.context, this.state);
1463
- this.enterRule(localContext, 50, plurnkParser.RULE_planStatement);
1329
+ this.enterRule(localContext, 46, plurnkParser.RULE_planStatement);
1464
1330
  let _la;
1465
1331
  try {
1466
1332
  this.enterOuterAlt(localContext, 1);
1467
1333
  {
1468
- this.state = 340;
1334
+ this.state = 299;
1469
1335
  this.match(plurnkParser.OPEN_PLAN);
1470
- this.state = 342;
1336
+ this.state = 301;
1471
1337
  this.errorHandler.sync(this);
1472
1338
  _la = this.tokenStream.LA(1);
1473
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1339
+ if (_la === 1 || _la === 5) {
1474
1340
  {
1475
- this.state = 341;
1476
- this.tagOpModifiers();
1341
+ this.state = 300;
1342
+ this.slotModifiers();
1477
1343
  }
1478
1344
  }
1479
- this.state = 345;
1345
+ this.state = 304;
1480
1346
  this.errorHandler.sync(this);
1481
1347
  _la = this.tokenStream.LA(1);
1482
- if (_la === 20) {
1348
+ if (_la === 13) {
1483
1349
  {
1484
- this.state = 344;
1350
+ this.state = 303;
1485
1351
  this.opAnnotation();
1486
1352
  }
1487
1353
  }
1488
- this.state = 347;
1354
+ this.state = 306;
1489
1355
  this.statementEnd();
1490
1356
  }
1491
1357
  }
@@ -1505,32 +1371,32 @@ export class plurnkParser extends antlr.Parser {
1505
1371
  }
1506
1372
  lookStatement() {
1507
1373
  let localContext = new LookStatementContext(this.context, this.state);
1508
- this.enterRule(localContext, 52, plurnkParser.RULE_lookStatement);
1374
+ this.enterRule(localContext, 48, plurnkParser.RULE_lookStatement);
1509
1375
  let _la;
1510
1376
  try {
1511
1377
  this.enterOuterAlt(localContext, 1);
1512
1378
  {
1513
- this.state = 349;
1379
+ this.state = 308;
1514
1380
  this.match(plurnkParser.OPEN_LOOK);
1515
- this.state = 351;
1381
+ this.state = 310;
1516
1382
  this.errorHandler.sync(this);
1517
1383
  _la = this.tokenStream.LA(1);
1518
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1384
+ if (_la === 1 || _la === 5) {
1519
1385
  {
1520
- this.state = 350;
1521
- this.tagOpModifiers();
1386
+ this.state = 309;
1387
+ this.slotModifiers();
1522
1388
  }
1523
1389
  }
1524
- this.state = 354;
1390
+ this.state = 313;
1525
1391
  this.errorHandler.sync(this);
1526
1392
  _la = this.tokenStream.LA(1);
1527
- if (_la === 20) {
1393
+ if (_la === 13) {
1528
1394
  {
1529
- this.state = 353;
1395
+ this.state = 312;
1530
1396
  this.opAnnotation();
1531
1397
  }
1532
1398
  }
1533
- this.state = 356;
1399
+ this.state = 315;
1534
1400
  this.statementEnd();
1535
1401
  }
1536
1402
  }
@@ -1550,32 +1416,32 @@ export class plurnkParser extends antlr.Parser {
1550
1416
  }
1551
1417
  buffStatement() {
1552
1418
  let localContext = new BuffStatementContext(this.context, this.state);
1553
- this.enterRule(localContext, 54, plurnkParser.RULE_buffStatement);
1419
+ this.enterRule(localContext, 50, plurnkParser.RULE_buffStatement);
1554
1420
  let _la;
1555
1421
  try {
1556
1422
  this.enterOuterAlt(localContext, 1);
1557
1423
  {
1558
- this.state = 358;
1424
+ this.state = 317;
1559
1425
  this.match(plurnkParser.OPEN_BUFF);
1560
- this.state = 360;
1426
+ this.state = 319;
1561
1427
  this.errorHandler.sync(this);
1562
1428
  _la = this.tokenStream.LA(1);
1563
- if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0)) {
1429
+ if (_la === 1 || _la === 5) {
1564
1430
  {
1565
- this.state = 359;
1566
- this.tagOpModifiers();
1431
+ this.state = 318;
1432
+ this.slotModifiers();
1567
1433
  }
1568
1434
  }
1569
- this.state = 363;
1435
+ this.state = 322;
1570
1436
  this.errorHandler.sync(this);
1571
1437
  _la = this.tokenStream.LA(1);
1572
- if (_la === 20) {
1438
+ if (_la === 13) {
1573
1439
  {
1574
- this.state = 362;
1440
+ this.state = 321;
1575
1441
  this.opAnnotation();
1576
1442
  }
1577
1443
  }
1578
- this.state = 365;
1444
+ this.state = 324;
1579
1445
  this.statementEnd();
1580
1446
  }
1581
1447
  }
@@ -1595,11 +1461,11 @@ export class plurnkParser extends antlr.Parser {
1595
1461
  }
1596
1462
  opAnnotation() {
1597
1463
  let localContext = new OpAnnotationContext(this.context, this.state);
1598
- this.enterRule(localContext, 56, plurnkParser.RULE_opAnnotation);
1464
+ this.enterRule(localContext, 52, plurnkParser.RULE_opAnnotation);
1599
1465
  try {
1600
1466
  this.enterOuterAlt(localContext, 1);
1601
1467
  {
1602
- this.state = 367;
1468
+ this.state = 326;
1603
1469
  this.match(plurnkParser.ANNOTATION);
1604
1470
  }
1605
1471
  }
@@ -1619,39 +1485,39 @@ export class plurnkParser extends antlr.Parser {
1619
1485
  }
1620
1486
  statementEnd() {
1621
1487
  let localContext = new StatementEndContext(this.context, this.state);
1622
- this.enterRule(localContext, 58, plurnkParser.RULE_statementEnd);
1488
+ this.enterRule(localContext, 54, plurnkParser.RULE_statementEnd);
1623
1489
  let _la;
1624
1490
  try {
1625
- this.state = 382;
1491
+ this.state = 341;
1626
1492
  this.errorHandler.sync(this);
1627
1493
  switch (this.tokenStream.LA(1)) {
1628
1494
  case plurnkParser.SECTION_END:
1629
1495
  this.enterOuterAlt(localContext, 1);
1630
1496
  {
1631
- this.state = 369;
1497
+ this.state = 328;
1632
1498
  this.match(plurnkParser.SECTION_END);
1633
1499
  }
1634
1500
  break;
1635
1501
  case plurnkParser.BODY_OPEN:
1636
1502
  this.enterOuterAlt(localContext, 2);
1637
1503
  {
1638
- this.state = 370;
1504
+ this.state = 329;
1639
1505
  this.match(plurnkParser.BODY_OPEN);
1640
- this.state = 372;
1506
+ this.state = 331;
1641
1507
  this.errorHandler.sync(this);
1642
1508
  _la = this.tokenStream.LA(1);
1643
- if (_la === 18) {
1509
+ if (_la === 11) {
1644
1510
  {
1645
- this.state = 371;
1511
+ this.state = 330;
1646
1512
  this.body();
1647
1513
  }
1648
1514
  }
1649
- this.state = 375;
1515
+ this.state = 334;
1650
1516
  this.errorHandler.sync(this);
1651
1517
  _la = this.tokenStream.LA(1);
1652
- if (_la === 10) {
1518
+ if (_la === 8) {
1653
1519
  {
1654
- this.state = 374;
1520
+ this.state = 333;
1655
1521
  this.match(plurnkParser.SECTION_END);
1656
1522
  }
1657
1523
  }
@@ -1660,14 +1526,14 @@ export class plurnkParser extends antlr.Parser {
1660
1526
  case plurnkParser.BODY_TEXT:
1661
1527
  this.enterOuterAlt(localContext, 3);
1662
1528
  {
1663
- this.state = 377;
1529
+ this.state = 336;
1664
1530
  this.body();
1665
- this.state = 379;
1531
+ this.state = 338;
1666
1532
  this.errorHandler.sync(this);
1667
1533
  _la = this.tokenStream.LA(1);
1668
- if (_la === 10) {
1534
+ if (_la === 8) {
1669
1535
  {
1670
- this.state = 378;
1536
+ this.state = 337;
1671
1537
  this.match(plurnkParser.SECTION_END);
1672
1538
  }
1673
1539
  }
@@ -1681,8 +1547,6 @@ export class plurnkParser extends antlr.Parser {
1681
1547
  case plurnkParser.OPEN_EDIT:
1682
1548
  case plurnkParser.OPEN_COPY:
1683
1549
  case plurnkParser.OPEN_MOVE:
1684
- case plurnkParser.OPEN_OPEN:
1685
- case plurnkParser.OPEN_FOLD:
1686
1550
  case plurnkParser.OPEN_SEND:
1687
1551
  case plurnkParser.OPEN_EXEC:
1688
1552
  case plurnkParser.OPEN_BARE:
@@ -1717,52 +1581,14 @@ export class plurnkParser extends antlr.Parser {
1717
1581
  }
1718
1582
  transferModifiers() {
1719
1583
  let localContext = new TransferModifiersContext(this.context, this.state);
1720
- this.enterRule(localContext, 60, plurnkParser.RULE_transferModifiers);
1721
- let _la;
1584
+ this.enterRule(localContext, 56, plurnkParser.RULE_transferModifiers);
1722
1585
  try {
1723
- this.state = 397;
1724
- this.errorHandler.sync(this);
1725
- switch (this.interpreter.adaptivePredict(this.tokenStream, 52, this.context)) {
1726
- case 1:
1727
- this.enterOuterAlt(localContext, 1);
1728
- {
1729
- this.state = 384;
1730
- this.tagSignal();
1731
- this.state = 385;
1732
- this.resourceSelection();
1733
- this.state = 386;
1734
- this.resourceSelection();
1735
- }
1736
- break;
1737
- case 2:
1738
- this.enterOuterAlt(localContext, 2);
1739
- {
1740
- this.state = 388;
1741
- this.resourceSelection();
1742
- this.state = 389;
1743
- this.tagSignal();
1744
- this.state = 390;
1745
- this.resourceSelection();
1746
- }
1747
- break;
1748
- case 3:
1749
- this.enterOuterAlt(localContext, 3);
1750
- {
1751
- this.state = 392;
1752
- this.resourceSelection();
1753
- this.state = 393;
1754
- this.resourceSelection();
1755
- this.state = 395;
1756
- this.errorHandler.sync(this);
1757
- _la = this.tokenStream.LA(1);
1758
- if (_la === 1) {
1759
- {
1760
- this.state = 394;
1761
- this.tagSignal();
1762
- }
1763
- }
1764
- }
1765
- break;
1586
+ this.enterOuterAlt(localContext, 1);
1587
+ {
1588
+ this.state = 343;
1589
+ this.resourceSelection();
1590
+ this.state = 344;
1591
+ this.resourceSelection();
1766
1592
  }
1767
1593
  }
1768
1594
  catch (re) {
@@ -1781,19 +1607,19 @@ export class plurnkParser extends antlr.Parser {
1781
1607
  }
1782
1608
  resourceSelection() {
1783
1609
  let localContext = new ResourceSelectionContext(this.context, this.state);
1784
- this.enterRule(localContext, 62, plurnkParser.RULE_resourceSelection);
1610
+ this.enterRule(localContext, 58, plurnkParser.RULE_resourceSelection);
1785
1611
  let _la;
1786
1612
  try {
1787
1613
  this.enterOuterAlt(localContext, 1);
1788
1614
  {
1789
- this.state = 399;
1615
+ this.state = 346;
1790
1616
  this.targetWithMetadata();
1791
- this.state = 401;
1617
+ this.state = 348;
1792
1618
  this.errorHandler.sync(this);
1793
1619
  _la = this.tokenStream.LA(1);
1794
- if (_la === 7) {
1620
+ if (_la === 5) {
1795
1621
  {
1796
- this.state = 400;
1622
+ this.state = 347;
1797
1623
  this.lineMarker();
1798
1624
  }
1799
1625
  }
@@ -1815,30 +1641,30 @@ export class plurnkParser extends antlr.Parser {
1815
1641
  }
1816
1642
  emptyStatementEnd() {
1817
1643
  let localContext = new EmptyStatementEndContext(this.context, this.state);
1818
- this.enterRule(localContext, 64, plurnkParser.RULE_emptyStatementEnd);
1644
+ this.enterRule(localContext, 60, plurnkParser.RULE_emptyStatementEnd);
1819
1645
  let _la;
1820
1646
  try {
1821
- this.state = 409;
1647
+ this.state = 356;
1822
1648
  this.errorHandler.sync(this);
1823
1649
  switch (this.tokenStream.LA(1)) {
1824
1650
  case plurnkParser.SECTION_END:
1825
1651
  this.enterOuterAlt(localContext, 1);
1826
1652
  {
1827
- this.state = 403;
1653
+ this.state = 350;
1828
1654
  this.match(plurnkParser.SECTION_END);
1829
1655
  }
1830
1656
  break;
1831
1657
  case plurnkParser.BODY_OPEN:
1832
1658
  this.enterOuterAlt(localContext, 2);
1833
1659
  {
1834
- this.state = 404;
1660
+ this.state = 351;
1835
1661
  this.match(plurnkParser.BODY_OPEN);
1836
- this.state = 406;
1662
+ this.state = 353;
1837
1663
  this.errorHandler.sync(this);
1838
1664
  _la = this.tokenStream.LA(1);
1839
- if (_la === 10) {
1665
+ if (_la === 8) {
1840
1666
  {
1841
- this.state = 405;
1667
+ this.state = 352;
1842
1668
  this.match(plurnkParser.SECTION_END);
1843
1669
  }
1844
1670
  }
@@ -1851,8 +1677,6 @@ export class plurnkParser extends antlr.Parser {
1851
1677
  case plurnkParser.OPEN_EDIT:
1852
1678
  case plurnkParser.OPEN_COPY:
1853
1679
  case plurnkParser.OPEN_MOVE:
1854
- case plurnkParser.OPEN_OPEN:
1855
- case plurnkParser.OPEN_FOLD:
1856
1680
  case plurnkParser.OPEN_SEND:
1857
1681
  case plurnkParser.OPEN_EXEC:
1858
1682
  case plurnkParser.OPEN_BARE:
@@ -1885,451 +1709,42 @@ export class plurnkParser extends antlr.Parser {
1885
1709
  }
1886
1710
  return localContext;
1887
1711
  }
1888
- tagOpModifiers() {
1889
- let localContext = new TagOpModifiersContext(this.context, this.state);
1890
- this.enterRule(localContext, 66, plurnkParser.RULE_tagOpModifiers);
1712
+ slotModifiers() {
1713
+ let localContext = new SlotModifiersContext(this.context, this.state);
1714
+ this.enterRule(localContext, 62, plurnkParser.RULE_slotModifiers);
1891
1715
  let _la;
1892
1716
  try {
1893
- this.state = 444;
1717
+ this.state = 366;
1894
1718
  this.errorHandler.sync(this);
1895
1719
  switch (this.tokenStream.LA(1)) {
1896
- case plurnkParser.LBRACKET:
1720
+ case plurnkParser.LPAREN:
1897
1721
  this.enterOuterAlt(localContext, 1);
1898
1722
  {
1899
- this.state = 411;
1900
- this.tagSignal();
1901
- this.state = 420;
1902
- this.errorHandler.sync(this);
1903
- switch (this.tokenStream.LA(1)) {
1904
- case plurnkParser.LPAREN:
1905
- {
1906
- this.state = 412;
1907
- this.targetWithMetadata();
1908
- this.state = 414;
1909
- this.errorHandler.sync(this);
1910
- _la = this.tokenStream.LA(1);
1911
- if (_la === 7) {
1912
- {
1913
- this.state = 413;
1914
- this.lineMarker();
1915
- }
1916
- }
1917
- }
1918
- break;
1919
- case plurnkParser.L_MARKER:
1920
- {
1921
- this.state = 416;
1922
- this.lineMarker();
1923
- this.state = 418;
1924
- this.errorHandler.sync(this);
1925
- _la = this.tokenStream.LA(1);
1926
- if (_la === 3) {
1927
- {
1928
- this.state = 417;
1929
- this.targetWithMetadata();
1930
- }
1931
- }
1932
- }
1933
- break;
1934
- case plurnkParser.EOF:
1935
- case plurnkParser.BODY_OPEN:
1936
- case plurnkParser.SECTION_END:
1937
- case plurnkParser.BODY_TEXT:
1938
- case plurnkParser.ANNOTATION:
1939
- case plurnkParser.OPEN_PLAN:
1940
- case plurnkParser.OPEN_FIND:
1941
- case plurnkParser.OPEN_READ:
1942
- case plurnkParser.OPEN_EDIT:
1943
- case plurnkParser.OPEN_COPY:
1944
- case plurnkParser.OPEN_MOVE:
1945
- case plurnkParser.OPEN_OPEN:
1946
- case plurnkParser.OPEN_FOLD:
1947
- case plurnkParser.OPEN_SEND:
1948
- case plurnkParser.OPEN_EXEC:
1949
- case plurnkParser.OPEN_BARE:
1950
- case plurnkParser.OPEN_WORK:
1951
- case plurnkParser.OPEN_FORK:
1952
- case plurnkParser.OPEN_KILL:
1953
- case plurnkParser.OPEN_LOOK:
1954
- case plurnkParser.OPEN_BUFF:
1955
- case plurnkParser.FENCE_CLOSE:
1956
- break;
1957
- default:
1958
- break;
1959
- }
1960
- }
1961
- break;
1962
- case plurnkParser.LPAREN:
1963
- this.enterOuterAlt(localContext, 2);
1964
- {
1965
- this.state = 422;
1966
- this.targetWithMetadata();
1967
- this.state = 431;
1968
- this.errorHandler.sync(this);
1969
- switch (this.tokenStream.LA(1)) {
1970
- case plurnkParser.LBRACKET:
1971
- {
1972
- this.state = 423;
1973
- this.tagSignal();
1974
- this.state = 425;
1975
- this.errorHandler.sync(this);
1976
- _la = this.tokenStream.LA(1);
1977
- if (_la === 7) {
1978
- {
1979
- this.state = 424;
1980
- this.lineMarker();
1981
- }
1982
- }
1983
- }
1984
- break;
1985
- case plurnkParser.L_MARKER:
1986
- {
1987
- this.state = 427;
1988
- this.lineMarker();
1989
- this.state = 429;
1990
- this.errorHandler.sync(this);
1991
- _la = this.tokenStream.LA(1);
1992
- if (_la === 1) {
1993
- {
1994
- this.state = 428;
1995
- this.tagSignal();
1996
- }
1997
- }
1998
- }
1999
- break;
2000
- case plurnkParser.EOF:
2001
- case plurnkParser.BODY_OPEN:
2002
- case plurnkParser.SECTION_END:
2003
- case plurnkParser.BODY_TEXT:
2004
- case plurnkParser.ANNOTATION:
2005
- case plurnkParser.OPEN_PLAN:
2006
- case plurnkParser.OPEN_FIND:
2007
- case plurnkParser.OPEN_READ:
2008
- case plurnkParser.OPEN_EDIT:
2009
- case plurnkParser.OPEN_COPY:
2010
- case plurnkParser.OPEN_MOVE:
2011
- case plurnkParser.OPEN_OPEN:
2012
- case plurnkParser.OPEN_FOLD:
2013
- case plurnkParser.OPEN_SEND:
2014
- case plurnkParser.OPEN_EXEC:
2015
- case plurnkParser.OPEN_BARE:
2016
- case plurnkParser.OPEN_WORK:
2017
- case plurnkParser.OPEN_FORK:
2018
- case plurnkParser.OPEN_KILL:
2019
- case plurnkParser.OPEN_LOOK:
2020
- case plurnkParser.OPEN_BUFF:
2021
- case plurnkParser.FENCE_CLOSE:
2022
- break;
2023
- default:
2024
- break;
2025
- }
2026
- }
2027
- break;
2028
- case plurnkParser.L_MARKER:
2029
- this.enterOuterAlt(localContext, 3);
2030
- {
2031
- this.state = 433;
2032
- this.lineMarker();
2033
- this.state = 442;
2034
- this.errorHandler.sync(this);
2035
- switch (this.tokenStream.LA(1)) {
2036
- case plurnkParser.LBRACKET:
2037
- {
2038
- this.state = 434;
2039
- this.tagSignal();
2040
- this.state = 436;
2041
- this.errorHandler.sync(this);
2042
- _la = this.tokenStream.LA(1);
2043
- if (_la === 3) {
2044
- {
2045
- this.state = 435;
2046
- this.targetWithMetadata();
2047
- }
2048
- }
2049
- }
2050
- break;
2051
- case plurnkParser.LPAREN:
2052
- {
2053
- this.state = 438;
2054
- this.targetWithMetadata();
2055
- this.state = 440;
2056
- this.errorHandler.sync(this);
2057
- _la = this.tokenStream.LA(1);
2058
- if (_la === 1) {
2059
- {
2060
- this.state = 439;
2061
- this.tagSignal();
2062
- }
2063
- }
2064
- }
2065
- break;
2066
- case plurnkParser.EOF:
2067
- case plurnkParser.BODY_OPEN:
2068
- case plurnkParser.SECTION_END:
2069
- case plurnkParser.BODY_TEXT:
2070
- case plurnkParser.ANNOTATION:
2071
- case plurnkParser.OPEN_PLAN:
2072
- case plurnkParser.OPEN_FIND:
2073
- case plurnkParser.OPEN_READ:
2074
- case plurnkParser.OPEN_EDIT:
2075
- case plurnkParser.OPEN_COPY:
2076
- case plurnkParser.OPEN_MOVE:
2077
- case plurnkParser.OPEN_OPEN:
2078
- case plurnkParser.OPEN_FOLD:
2079
- case plurnkParser.OPEN_SEND:
2080
- case plurnkParser.OPEN_EXEC:
2081
- case plurnkParser.OPEN_BARE:
2082
- case plurnkParser.OPEN_WORK:
2083
- case plurnkParser.OPEN_FORK:
2084
- case plurnkParser.OPEN_KILL:
2085
- case plurnkParser.OPEN_LOOK:
2086
- case plurnkParser.OPEN_BUFF:
2087
- case plurnkParser.FENCE_CLOSE:
2088
- break;
2089
- default:
2090
- break;
2091
- }
2092
- }
2093
- break;
2094
- default:
2095
- throw new antlr.NoViableAltException(this);
2096
- }
2097
- }
2098
- catch (re) {
2099
- if (re instanceof antlr.RecognitionException) {
2100
- this.errorHandler.reportError(this, re);
2101
- this.errorHandler.recover(this, re);
2102
- }
2103
- else {
2104
- throw re;
2105
- }
2106
- }
2107
- finally {
2108
- this.exitRule();
2109
- }
2110
- return localContext;
2111
- }
2112
- intOpModifiers() {
2113
- let localContext = new IntOpModifiersContext(this.context, this.state);
2114
- this.enterRule(localContext, 68, plurnkParser.RULE_intOpModifiers);
2115
- let _la;
2116
- try {
2117
- this.state = 454;
2118
- this.errorHandler.sync(this);
2119
- switch (this.tokenStream.LA(1)) {
2120
- case plurnkParser.LBRACKET:
2121
- this.enterOuterAlt(localContext, 1);
2122
- {
2123
- this.state = 446;
2124
- this.intSignal();
2125
- this.state = 448;
1723
+ this.state = 358;
1724
+ this.targetWithMetadata();
1725
+ this.state = 360;
2126
1726
  this.errorHandler.sync(this);
2127
1727
  _la = this.tokenStream.LA(1);
2128
- if (_la === 3) {
1728
+ if (_la === 5) {
2129
1729
  {
2130
- this.state = 447;
2131
- this.targetWithMetadata();
2132
- }
2133
- }
2134
- }
2135
- break;
2136
- case plurnkParser.LPAREN:
2137
- this.enterOuterAlt(localContext, 2);
2138
- {
2139
- this.state = 450;
2140
- this.targetWithMetadata();
2141
- this.state = 452;
2142
- this.errorHandler.sync(this);
2143
- _la = this.tokenStream.LA(1);
2144
- if (_la === 1) {
2145
- {
2146
- this.state = 451;
2147
- this.intSignal();
2148
- }
2149
- }
2150
- }
2151
- break;
2152
- default:
2153
- throw new antlr.NoViableAltException(this);
2154
- }
2155
- }
2156
- catch (re) {
2157
- if (re instanceof antlr.RecognitionException) {
2158
- this.errorHandler.reportError(this, re);
2159
- this.errorHandler.recover(this, re);
2160
- }
2161
- else {
2162
- throw re;
2163
- }
2164
- }
2165
- finally {
2166
- this.exitRule();
2167
- }
2168
- return localContext;
2169
- }
2170
- branchModifiers() {
2171
- let localContext = new BranchModifiersContext(this.context, this.state);
2172
- this.enterRule(localContext, 70, plurnkParser.RULE_branchModifiers);
2173
- let _la;
2174
- try {
2175
- this.state = 464;
2176
- this.errorHandler.sync(this);
2177
- switch (this.tokenStream.LA(1)) {
2178
- case plurnkParser.LBRACKET:
2179
- this.enterOuterAlt(localContext, 1);
2180
- {
2181
- this.state = 456;
2182
- this.branchSignal();
2183
- this.state = 458;
2184
- this.errorHandler.sync(this);
2185
- _la = this.tokenStream.LA(1);
2186
- if (_la === 3) {
2187
- {
2188
- this.state = 457;
2189
- this.targetWithMetadata();
2190
- }
2191
- }
2192
- }
2193
- break;
2194
- case plurnkParser.LPAREN:
2195
- this.enterOuterAlt(localContext, 2);
2196
- {
2197
- this.state = 460;
2198
- this.targetWithMetadata();
2199
- this.state = 462;
2200
- this.errorHandler.sync(this);
2201
- _la = this.tokenStream.LA(1);
2202
- if (_la === 1) {
2203
- {
2204
- this.state = 461;
2205
- this.branchSignal();
2206
- }
2207
- }
2208
- }
2209
- break;
2210
- default:
2211
- throw new antlr.NoViableAltException(this);
2212
- }
2213
- }
2214
- catch (re) {
2215
- if (re instanceof antlr.RecognitionException) {
2216
- this.errorHandler.reportError(this, re);
2217
- this.errorHandler.recover(this, re);
2218
- }
2219
- else {
2220
- throw re;
2221
- }
2222
- }
2223
- finally {
2224
- this.exitRule();
2225
- }
2226
- return localContext;
2227
- }
2228
- termModifiers() {
2229
- let localContext = new TermModifiersContext(this.context, this.state);
2230
- this.enterRule(localContext, 72, plurnkParser.RULE_termModifiers);
2231
- let _la;
2232
- try {
2233
- this.state = 478;
2234
- this.errorHandler.sync(this);
2235
- switch (this.tokenStream.LA(1)) {
2236
- case plurnkParser.LBRACKET:
2237
- this.enterOuterAlt(localContext, 1);
2238
- {
2239
- this.state = 466;
2240
- this.dispSignal();
2241
- this.state = 468;
2242
- this.errorHandler.sync(this);
2243
- _la = this.tokenStream.LA(1);
2244
- if (_la === 3) {
2245
- {
2246
- this.state = 467;
2247
- this.targetWithMetadata();
2248
- }
2249
- }
2250
- this.state = 471;
2251
- this.errorHandler.sync(this);
2252
- _la = this.tokenStream.LA(1);
2253
- if (_la === 7) {
2254
- {
2255
- this.state = 470;
1730
+ this.state = 359;
2256
1731
  this.lineMarker();
2257
1732
  }
2258
1733
  }
2259
1734
  }
2260
1735
  break;
2261
- case plurnkParser.LPAREN:
2262
- this.enterOuterAlt(localContext, 2);
2263
- {
2264
- this.state = 473;
2265
- this.targetWithMetadata();
2266
- this.state = 474;
2267
- this.dispSignal();
2268
- this.state = 476;
2269
- this.errorHandler.sync(this);
2270
- _la = this.tokenStream.LA(1);
2271
- if (_la === 7) {
2272
- {
2273
- this.state = 475;
2274
- this.lineMarker();
2275
- }
2276
- }
2277
- }
2278
- break;
2279
- default:
2280
- throw new antlr.NoViableAltException(this);
2281
- }
2282
- }
2283
- catch (re) {
2284
- if (re instanceof antlr.RecognitionException) {
2285
- this.errorHandler.reportError(this, re);
2286
- this.errorHandler.recover(this, re);
2287
- }
2288
- else {
2289
- throw re;
2290
- }
2291
- }
2292
- finally {
2293
- this.exitRule();
2294
- }
2295
- return localContext;
2296
- }
2297
- midModifiers() {
2298
- let localContext = new MidModifiersContext(this.context, this.state);
2299
- this.enterRule(localContext, 74, plurnkParser.RULE_midModifiers);
2300
- let _la;
2301
- try {
2302
- this.state = 488;
2303
- this.errorHandler.sync(this);
2304
- switch (this.tokenStream.LA(1)) {
2305
- case plurnkParser.LBRACKET:
2306
- this.enterOuterAlt(localContext, 1);
2307
- {
2308
- this.state = 480;
2309
- this.midSignal();
2310
- this.state = 482;
2311
- this.errorHandler.sync(this);
2312
- _la = this.tokenStream.LA(1);
2313
- if (_la === 3) {
2314
- {
2315
- this.state = 481;
2316
- this.targetWithMetadata();
2317
- }
2318
- }
2319
- }
2320
- break;
2321
- case plurnkParser.LPAREN:
1736
+ case plurnkParser.L_MARKER:
2322
1737
  this.enterOuterAlt(localContext, 2);
2323
1738
  {
2324
- this.state = 484;
2325
- this.targetWithMetadata();
2326
- this.state = 486;
1739
+ this.state = 362;
1740
+ this.lineMarker();
1741
+ this.state = 364;
2327
1742
  this.errorHandler.sync(this);
2328
1743
  _la = this.tokenStream.LA(1);
2329
1744
  if (_la === 1) {
2330
1745
  {
2331
- this.state = 485;
2332
- this.midSignal();
1746
+ this.state = 363;
1747
+ this.targetWithMetadata();
2333
1748
  }
2334
1749
  }
2335
1750
  }
@@ -2354,25 +1769,25 @@ export class plurnkParser extends antlr.Parser {
2354
1769
  }
2355
1770
  execModifiers() {
2356
1771
  let localContext = new ExecModifiersContext(this.context, this.state);
2357
- this.enterRule(localContext, 76, plurnkParser.RULE_execModifiers);
1772
+ this.enterRule(localContext, 64, plurnkParser.RULE_execModifiers);
2358
1773
  let _la;
2359
1774
  try {
2360
1775
  this.enterOuterAlt(localContext, 1);
2361
1776
  {
2362
- this.state = 491;
1777
+ this.state = 369;
2363
1778
  this.errorHandler.sync(this);
2364
1779
  _la = this.tokenStream.LA(1);
2365
1780
  do {
2366
1781
  {
2367
1782
  {
2368
- this.state = 490;
1783
+ this.state = 368;
2369
1784
  this.execSlot();
2370
1785
  }
2371
1786
  }
2372
- this.state = 493;
1787
+ this.state = 371;
2373
1788
  this.errorHandler.sync(this);
2374
1789
  _la = this.tokenStream.LA(1);
2375
- } while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 138) !== 0));
1790
+ } while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0));
2376
1791
  }
2377
1792
  }
2378
1793
  catch (re) {
@@ -2391,258 +1806,34 @@ export class plurnkParser extends antlr.Parser {
2391
1806
  }
2392
1807
  execSlot() {
2393
1808
  let localContext = new ExecSlotContext(this.context, this.state);
2394
- this.enterRule(localContext, 78, plurnkParser.RULE_execSlot);
1809
+ this.enterRule(localContext, 66, plurnkParser.RULE_execSlot);
2395
1810
  try {
2396
- this.state = 499;
1811
+ this.state = 376;
2397
1812
  this.errorHandler.sync(this);
2398
- switch (this.interpreter.adaptivePredict(this.tokenStream, 80, this.context)) {
2399
- case 1:
1813
+ switch (this.tokenStream.LA(1)) {
1814
+ case plurnkParser.LPAREN:
2400
1815
  this.enterOuterAlt(localContext, 1);
2401
1816
  {
2402
- this.state = 495;
2403
- this.identSignal();
2404
- }
2405
- break;
2406
- case 2:
2407
- this.enterOuterAlt(localContext, 2);
2408
- {
2409
- this.state = 496;
2410
- this.tagSignal();
2411
- }
2412
- break;
2413
- case 3:
2414
- this.enterOuterAlt(localContext, 3);
2415
- {
2416
- this.state = 497;
1817
+ this.state = 373;
2417
1818
  this.targetWithMetadata();
2418
1819
  }
2419
1820
  break;
2420
- case 4:
2421
- this.enterOuterAlt(localContext, 4);
2422
- {
2423
- this.state = 498;
2424
- this.lineMarker();
2425
- }
2426
- break;
2427
- }
2428
- }
2429
- catch (re) {
2430
- if (re instanceof antlr.RecognitionException) {
2431
- this.errorHandler.reportError(this, re);
2432
- this.errorHandler.recover(this, re);
2433
- }
2434
- else {
2435
- throw re;
2436
- }
2437
- }
2438
- finally {
2439
- this.exitRule();
2440
- }
2441
- return localContext;
2442
- }
2443
- tagSignal() {
2444
- let localContext = new TagSignalContext(this.context, this.state);
2445
- this.enterRule(localContext, 80, plurnkParser.RULE_tagSignal);
2446
- let _la;
2447
- try {
2448
- this.enterOuterAlt(localContext, 1);
2449
- {
2450
- this.state = 501;
2451
- this.match(plurnkParser.LBRACKET);
2452
- this.state = 505;
2453
- this.errorHandler.sync(this);
2454
- _la = this.tokenStream.LA(1);
2455
- while (_la === 11 || _la === 15) {
2456
- {
2457
- {
2458
- this.state = 502;
2459
- _la = this.tokenStream.LA(1);
2460
- if (!(_la === 11 || _la === 15)) {
2461
- this.errorHandler.recoverInline(this);
2462
- }
2463
- else {
2464
- this.errorHandler.reportMatch(this);
2465
- this.consume();
2466
- }
2467
- }
2468
- }
2469
- this.state = 507;
2470
- this.errorHandler.sync(this);
2471
- _la = this.tokenStream.LA(1);
2472
- }
2473
- this.state = 508;
2474
- this.match(plurnkParser.RBRACKET);
2475
- }
2476
- }
2477
- catch (re) {
2478
- if (re instanceof antlr.RecognitionException) {
2479
- this.errorHandler.reportError(this, re);
2480
- this.errorHandler.recover(this, re);
2481
- }
2482
- else {
2483
- throw re;
2484
- }
2485
- }
2486
- finally {
2487
- this.exitRule();
2488
- }
2489
- return localContext;
2490
- }
2491
- branchSignal() {
2492
- let localContext = new BranchSignalContext(this.context, this.state);
2493
- this.enterRule(localContext, 82, plurnkParser.RULE_branchSignal);
2494
- try {
2495
- this.enterOuterAlt(localContext, 1);
2496
- {
2497
- this.state = 510;
2498
- this.match(plurnkParser.LBRACKET);
2499
- this.state = 511;
2500
- this.match(plurnkParser.TAG);
2501
- this.state = 512;
2502
- this.match(plurnkParser.RBRACKET);
2503
- }
2504
- }
2505
- catch (re) {
2506
- if (re instanceof antlr.RecognitionException) {
2507
- this.errorHandler.reportError(this, re);
2508
- this.errorHandler.recover(this, re);
2509
- }
2510
- else {
2511
- throw re;
2512
- }
2513
- }
2514
- finally {
2515
- this.exitRule();
2516
- }
2517
- return localContext;
2518
- }
2519
- intSignal() {
2520
- let localContext = new IntSignalContext(this.context, this.state);
2521
- this.enterRule(localContext, 84, plurnkParser.RULE_intSignal);
2522
- let _la;
2523
- try {
2524
- this.enterOuterAlt(localContext, 1);
2525
- {
2526
- this.state = 514;
2527
- this.match(plurnkParser.LBRACKET);
2528
- this.state = 516;
2529
- this.errorHandler.sync(this);
2530
- _la = this.tokenStream.LA(1);
2531
- if (_la === 12 || _la === 13) {
2532
- {
2533
- this.state = 515;
2534
- _la = this.tokenStream.LA(1);
2535
- if (!(_la === 12 || _la === 13)) {
2536
- this.errorHandler.recoverInline(this);
2537
- }
2538
- else {
2539
- this.errorHandler.reportMatch(this);
2540
- this.consume();
2541
- }
2542
- }
2543
- }
2544
- this.state = 518;
2545
- this.match(plurnkParser.RBRACKET);
2546
- }
2547
- }
2548
- catch (re) {
2549
- if (re instanceof antlr.RecognitionException) {
2550
- this.errorHandler.reportError(this, re);
2551
- this.errorHandler.recover(this, re);
2552
- }
2553
- else {
2554
- throw re;
2555
- }
2556
- }
2557
- finally {
2558
- this.exitRule();
2559
- }
2560
- return localContext;
2561
- }
2562
- midSignal() {
2563
- let localContext = new MidSignalContext(this.context, this.state);
2564
- this.enterRule(localContext, 86, plurnkParser.RULE_midSignal);
2565
- let _la;
2566
- try {
2567
- this.enterOuterAlt(localContext, 1);
2568
- {
2569
- this.state = 520;
2570
- this.match(plurnkParser.LBRACKET);
2571
- this.state = 522;
2572
- this.errorHandler.sync(this);
2573
- _la = this.tokenStream.LA(1);
2574
- if (_la === 12) {
2575
- {
2576
- this.state = 521;
2577
- this.match(plurnkParser.INT);
2578
- }
2579
- }
2580
- this.state = 524;
2581
- this.match(plurnkParser.RBRACKET);
2582
- }
2583
- }
2584
- catch (re) {
2585
- if (re instanceof antlr.RecognitionException) {
2586
- this.errorHandler.reportError(this, re);
2587
- this.errorHandler.recover(this, re);
2588
- }
2589
- else {
2590
- throw re;
2591
- }
2592
- }
2593
- finally {
2594
- this.exitRule();
2595
- }
2596
- return localContext;
2597
- }
2598
- dispSignal() {
2599
- let localContext = new DispSignalContext(this.context, this.state);
2600
- this.enterRule(localContext, 88, plurnkParser.RULE_dispSignal);
2601
- try {
2602
- this.enterOuterAlt(localContext, 1);
2603
- {
2604
- this.state = 526;
2605
- this.match(plurnkParser.LBRACKET);
2606
- this.state = 527;
2607
- this.match(plurnkParser.DISPOSITION);
2608
- this.state = 528;
2609
- this.match(plurnkParser.RBRACKET);
2610
- }
2611
- }
2612
- catch (re) {
2613
- if (re instanceof antlr.RecognitionException) {
2614
- this.errorHandler.reportError(this, re);
2615
- this.errorHandler.recover(this, re);
2616
- }
2617
- else {
2618
- throw re;
2619
- }
2620
- }
2621
- finally {
2622
- this.exitRule();
2623
- }
2624
- return localContext;
2625
- }
2626
- identSignal() {
2627
- let localContext = new IdentSignalContext(this.context, this.state);
2628
- this.enterRule(localContext, 90, plurnkParser.RULE_identSignal);
2629
- let _la;
2630
- try {
2631
- this.enterOuterAlt(localContext, 1);
2632
- {
2633
- this.state = 530;
2634
- this.match(plurnkParser.LBRACKET);
2635
- this.state = 532;
2636
- this.errorHandler.sync(this);
2637
- _la = this.tokenStream.LA(1);
2638
- if (_la === 14) {
1821
+ case plurnkParser.LBRACE:
1822
+ this.enterOuterAlt(localContext, 2);
2639
1823
  {
2640
- this.state = 531;
2641
- this.match(plurnkParser.IDENT);
1824
+ this.state = 374;
1825
+ this.metadata();
2642
1826
  }
2643
- }
2644
- this.state = 534;
2645
- this.match(plurnkParser.RBRACKET);
1827
+ break;
1828
+ case plurnkParser.L_MARKER:
1829
+ this.enterOuterAlt(localContext, 3);
1830
+ {
1831
+ this.state = 375;
1832
+ this.lineMarker();
1833
+ }
1834
+ break;
1835
+ default:
1836
+ throw new antlr.NoViableAltException(this);
2646
1837
  }
2647
1838
  }
2648
1839
  catch (re) {
@@ -2661,28 +1852,28 @@ export class plurnkParser extends antlr.Parser {
2661
1852
  }
2662
1853
  target() {
2663
1854
  let localContext = new TargetContext(this.context, this.state);
2664
- this.enterRule(localContext, 92, plurnkParser.RULE_target);
1855
+ this.enterRule(localContext, 68, plurnkParser.RULE_target);
2665
1856
  let _la;
2666
1857
  try {
2667
1858
  this.enterOuterAlt(localContext, 1);
2668
1859
  {
2669
- this.state = 536;
1860
+ this.state = 378;
2670
1861
  this.match(plurnkParser.LPAREN);
2671
- this.state = 540;
1862
+ this.state = 382;
2672
1863
  this.errorHandler.sync(this);
2673
1864
  _la = this.tokenStream.LA(1);
2674
- while (_la === 16) {
1865
+ while (_la === 9) {
2675
1866
  {
2676
1867
  {
2677
- this.state = 537;
1868
+ this.state = 379;
2678
1869
  this.match(plurnkParser.TARGET_TEXT);
2679
1870
  }
2680
1871
  }
2681
- this.state = 542;
1872
+ this.state = 384;
2682
1873
  this.errorHandler.sync(this);
2683
1874
  _la = this.tokenStream.LA(1);
2684
1875
  }
2685
- this.state = 543;
1876
+ this.state = 385;
2686
1877
  this.match(plurnkParser.RPAREN);
2687
1878
  }
2688
1879
  }
@@ -2702,26 +1893,28 @@ export class plurnkParser extends antlr.Parser {
2702
1893
  }
2703
1894
  targetWithMetadata() {
2704
1895
  let localContext = new TargetWithMetadataContext(this.context, this.state);
2705
- this.enterRule(localContext, 94, plurnkParser.RULE_targetWithMetadata);
2706
- let _la;
1896
+ this.enterRule(localContext, 70, plurnkParser.RULE_targetWithMetadata);
2707
1897
  try {
1898
+ let alternative;
2708
1899
  this.enterOuterAlt(localContext, 1);
2709
1900
  {
2710
- this.state = 545;
1901
+ this.state = 387;
2711
1902
  this.target();
2712
- this.state = 549;
1903
+ this.state = 391;
2713
1904
  this.errorHandler.sync(this);
2714
- _la = this.tokenStream.LA(1);
2715
- while (_la === 5) {
2716
- {
1905
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 58, this.context);
1906
+ while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
1907
+ if (alternative === 1) {
2717
1908
  {
2718
- this.state = 546;
2719
- this.metadata();
1909
+ {
1910
+ this.state = 388;
1911
+ this.metadata();
1912
+ }
2720
1913
  }
2721
1914
  }
2722
- this.state = 551;
1915
+ this.state = 393;
2723
1916
  this.errorHandler.sync(this);
2724
- _la = this.tokenStream.LA(1);
1917
+ alternative = this.interpreter.adaptivePredict(this.tokenStream, 58, this.context);
2725
1918
  }
2726
1919
  }
2727
1920
  }
@@ -2741,28 +1934,28 @@ export class plurnkParser extends antlr.Parser {
2741
1934
  }
2742
1935
  metadata() {
2743
1936
  let localContext = new MetadataContext(this.context, this.state);
2744
- this.enterRule(localContext, 96, plurnkParser.RULE_metadata);
1937
+ this.enterRule(localContext, 72, plurnkParser.RULE_metadata);
2745
1938
  let _la;
2746
1939
  try {
2747
1940
  this.enterOuterAlt(localContext, 1);
2748
1941
  {
2749
- this.state = 552;
1942
+ this.state = 394;
2750
1943
  this.match(plurnkParser.LBRACE);
2751
- this.state = 556;
1944
+ this.state = 398;
2752
1945
  this.errorHandler.sync(this);
2753
1946
  _la = this.tokenStream.LA(1);
2754
- while (_la === 17) {
1947
+ while (_la === 10) {
2755
1948
  {
2756
1949
  {
2757
- this.state = 553;
1950
+ this.state = 395;
2758
1951
  this.match(plurnkParser.METADATA_TEXT);
2759
1952
  }
2760
1953
  }
2761
- this.state = 558;
1954
+ this.state = 400;
2762
1955
  this.errorHandler.sync(this);
2763
1956
  _la = this.tokenStream.LA(1);
2764
1957
  }
2765
- this.state = 559;
1958
+ this.state = 401;
2766
1959
  this.match(plurnkParser.RBRACE);
2767
1960
  }
2768
1961
  }
@@ -2782,11 +1975,11 @@ export class plurnkParser extends antlr.Parser {
2782
1975
  }
2783
1976
  lineMarker() {
2784
1977
  let localContext = new LineMarkerContext(this.context, this.state);
2785
- this.enterRule(localContext, 98, plurnkParser.RULE_lineMarker);
1978
+ this.enterRule(localContext, 74, plurnkParser.RULE_lineMarker);
2786
1979
  try {
2787
1980
  this.enterOuterAlt(localContext, 1);
2788
1981
  {
2789
- this.state = 561;
1982
+ this.state = 403;
2790
1983
  this.match(plurnkParser.L_MARKER);
2791
1984
  }
2792
1985
  }
@@ -2806,25 +1999,25 @@ export class plurnkParser extends antlr.Parser {
2806
1999
  }
2807
2000
  body() {
2808
2001
  let localContext = new BodyContext(this.context, this.state);
2809
- this.enterRule(localContext, 100, plurnkParser.RULE_body);
2002
+ this.enterRule(localContext, 76, plurnkParser.RULE_body);
2810
2003
  let _la;
2811
2004
  try {
2812
2005
  this.enterOuterAlt(localContext, 1);
2813
2006
  {
2814
- this.state = 564;
2007
+ this.state = 406;
2815
2008
  this.errorHandler.sync(this);
2816
2009
  _la = this.tokenStream.LA(1);
2817
2010
  do {
2818
2011
  {
2819
2012
  {
2820
- this.state = 563;
2013
+ this.state = 405;
2821
2014
  this.match(plurnkParser.BODY_TEXT);
2822
2015
  }
2823
2016
  }
2824
- this.state = 566;
2017
+ this.state = 408;
2825
2018
  this.errorHandler.sync(this);
2826
2019
  _la = this.tokenStream.LA(1);
2827
- } while (_la === 18);
2020
+ } while (_la === 11);
2828
2021
  }
2829
2022
  }
2830
2023
  catch (re) {
@@ -2842,225 +2035,161 @@ export class plurnkParser extends antlr.Parser {
2842
2035
  return localContext;
2843
2036
  }
2844
2037
  static _serializedATN = [
2845
- 4, 1, 46, 569, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7,
2038
+ 4, 1, 35, 411, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7,
2846
2039
  6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13,
2847
2040
  2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20,
2848
2041
  7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7, 26,
2849
2042
  2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, 31, 2, 32, 7, 32, 2, 33,
2850
- 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39,
2851
- 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46,
2852
- 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2853
- 1, 0, 3, 0, 109, 8, 0, 1, 0, 1, 0, 3, 0, 113, 8, 0, 1, 1, 4, 1, 116, 8, 1, 11, 1, 12, 1, 117,
2854
- 1, 1, 1, 1, 1, 2, 5, 2, 123, 8, 2, 10, 2, 12, 2, 126, 9, 2, 1, 2, 1, 2, 1, 3, 5, 3, 131, 8,
2855
- 3, 10, 3, 12, 3, 134, 9, 3, 1, 3, 1, 3, 1, 4, 1, 4, 5, 4, 140, 8, 4, 10, 4, 12, 4, 143, 9,
2856
- 4, 1, 4, 1, 4, 1, 5, 1, 5, 5, 5, 149, 8, 5, 10, 5, 12, 5, 152, 9, 5, 1, 5, 3, 5, 155, 8, 5,
2857
- 1, 5, 4, 5, 158, 8, 5, 11, 5, 12, 5, 159, 1, 5, 3, 5, 163, 8, 5, 1, 5, 3, 5, 166, 8, 5, 1,
2858
- 6, 5, 6, 169, 8, 6, 10, 6, 12, 6, 172, 9, 6, 1, 6, 1, 6, 1, 7, 5, 7, 177, 8, 7, 10, 7, 12,
2859
- 7, 180, 9, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 3, 8, 187, 8, 8, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1,
2860
- 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 3, 9, 204, 8, 9, 1, 10, 1, 10, 1, 10,
2861
- 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 3, 10, 219, 8, 10,
2862
- 1, 11, 1, 11, 3, 11, 223, 8, 11, 1, 11, 3, 11, 226, 8, 11, 1, 11, 1, 11, 1, 12, 1, 12, 3,
2863
- 12, 232, 8, 12, 1, 12, 3, 12, 235, 8, 12, 1, 12, 1, 12, 1, 13, 1, 13, 3, 13, 241, 8, 13,
2864
- 1, 13, 3, 13, 244, 8, 13, 1, 13, 1, 13, 1, 14, 1, 14, 1, 14, 3, 14, 251, 8, 14, 1, 14, 1,
2865
- 14, 1, 15, 1, 15, 1, 15, 3, 15, 258, 8, 15, 1, 15, 1, 15, 1, 16, 1, 16, 3, 16, 264, 8, 16,
2866
- 1, 16, 3, 16, 267, 8, 16, 1, 16, 1, 16, 1, 17, 1, 17, 3, 17, 273, 8, 17, 1, 17, 3, 17, 276,
2867
- 8, 17, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 3, 18, 283, 8, 18, 1, 18, 1, 18, 1, 19, 1, 19,
2868
- 3, 19, 289, 8, 19, 1, 19, 3, 19, 292, 8, 19, 1, 19, 1, 19, 1, 20, 1, 20, 3, 20, 298, 8,
2869
- 20, 1, 20, 3, 20, 301, 8, 20, 1, 20, 1, 20, 1, 21, 1, 21, 3, 21, 307, 8, 21, 1, 21, 3, 21,
2870
- 310, 8, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 316, 8, 22, 1, 22, 3, 22, 319, 8, 22, 1,
2871
- 22, 1, 22, 1, 23, 1, 23, 3, 23, 325, 8, 23, 1, 23, 3, 23, 328, 8, 23, 1, 23, 1, 23, 1, 24,
2872
- 1, 24, 3, 24, 334, 8, 24, 1, 24, 3, 24, 337, 8, 24, 1, 24, 1, 24, 1, 25, 1, 25, 3, 25, 343,
2873
- 8, 25, 1, 25, 3, 25, 346, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26, 3, 26, 352, 8, 26, 1, 26, 3,
2874
- 26, 355, 8, 26, 1, 26, 1, 26, 1, 27, 1, 27, 3, 27, 361, 8, 27, 1, 27, 3, 27, 364, 8, 27,
2875
- 1, 27, 1, 27, 1, 28, 1, 28, 1, 29, 1, 29, 1, 29, 3, 29, 373, 8, 29, 1, 29, 3, 29, 376, 8,
2876
- 29, 1, 29, 1, 29, 3, 29, 380, 8, 29, 1, 29, 3, 29, 383, 8, 29, 1, 30, 1, 30, 1, 30, 1, 30,
2877
- 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 3, 30, 396, 8, 30, 3, 30, 398, 8, 30, 1,
2878
- 31, 1, 31, 3, 31, 402, 8, 31, 1, 32, 1, 32, 1, 32, 3, 32, 407, 8, 32, 1, 32, 3, 32, 410,
2879
- 8, 32, 1, 33, 1, 33, 1, 33, 3, 33, 415, 8, 33, 1, 33, 1, 33, 3, 33, 419, 8, 33, 3, 33, 421,
2880
- 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 426, 8, 33, 1, 33, 1, 33, 3, 33, 430, 8, 33, 3, 33, 432,
2881
- 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 437, 8, 33, 1, 33, 1, 33, 3, 33, 441, 8, 33, 3, 33, 443,
2882
- 8, 33, 3, 33, 445, 8, 33, 1, 34, 1, 34, 3, 34, 449, 8, 34, 1, 34, 1, 34, 3, 34, 453, 8,
2883
- 34, 3, 34, 455, 8, 34, 1, 35, 1, 35, 3, 35, 459, 8, 35, 1, 35, 1, 35, 3, 35, 463, 8, 35,
2884
- 3, 35, 465, 8, 35, 1, 36, 1, 36, 3, 36, 469, 8, 36, 1, 36, 3, 36, 472, 8, 36, 1, 36, 1,
2885
- 36, 1, 36, 3, 36, 477, 8, 36, 3, 36, 479, 8, 36, 1, 37, 1, 37, 3, 37, 483, 8, 37, 1, 37,
2886
- 1, 37, 3, 37, 487, 8, 37, 3, 37, 489, 8, 37, 1, 38, 4, 38, 492, 8, 38, 11, 38, 12, 38,
2887
- 493, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 500, 8, 39, 1, 40, 1, 40, 5, 40, 504, 8, 40, 10,
2888
- 40, 12, 40, 507, 9, 40, 1, 40, 1, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 42, 1, 42, 3, 42, 517,
2889
- 8, 42, 1, 42, 1, 42, 1, 43, 1, 43, 3, 43, 523, 8, 43, 1, 43, 1, 43, 1, 44, 1, 44, 1, 44,
2890
- 1, 44, 1, 45, 1, 45, 3, 45, 533, 8, 45, 1, 45, 1, 45, 1, 46, 1, 46, 5, 46, 539, 8, 46, 10,
2891
- 46, 12, 46, 542, 9, 46, 1, 46, 1, 46, 1, 47, 1, 47, 5, 47, 548, 8, 47, 10, 47, 12, 47,
2892
- 551, 9, 47, 1, 48, 1, 48, 5, 48, 555, 8, 48, 10, 48, 12, 48, 558, 9, 48, 1, 48, 1, 48,
2893
- 1, 49, 1, 49, 1, 50, 4, 50, 565, 8, 50, 11, 50, 12, 50, 566, 1, 50, 0, 0, 51, 0, 2, 4, 6,
2894
- 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50,
2895
- 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94,
2896
- 96, 98, 100, 0, 2, 2, 0, 11, 11, 15, 15, 1, 0, 12, 13, 642, 0, 112, 1, 0, 0, 0, 2, 115,
2897
- 1, 0, 0, 0, 4, 124, 1, 0, 0, 0, 6, 132, 1, 0, 0, 0, 8, 137, 1, 0, 0, 0, 10, 165, 1, 0, 0, 0,
2898
- 12, 170, 1, 0, 0, 0, 14, 178, 1, 0, 0, 0, 16, 186, 1, 0, 0, 0, 18, 203, 1, 0, 0, 0, 20, 218,
2899
- 1, 0, 0, 0, 22, 220, 1, 0, 0, 0, 24, 229, 1, 0, 0, 0, 26, 238, 1, 0, 0, 0, 28, 247, 1, 0,
2900
- 0, 0, 30, 254, 1, 0, 0, 0, 32, 261, 1, 0, 0, 0, 34, 270, 1, 0, 0, 0, 36, 279, 1, 0, 0, 0,
2901
- 38, 286, 1, 0, 0, 0, 40, 295, 1, 0, 0, 0, 42, 304, 1, 0, 0, 0, 44, 313, 1, 0, 0, 0, 46, 322,
2902
- 1, 0, 0, 0, 48, 331, 1, 0, 0, 0, 50, 340, 1, 0, 0, 0, 52, 349, 1, 0, 0, 0, 54, 358, 1, 0,
2903
- 0, 0, 56, 367, 1, 0, 0, 0, 58, 382, 1, 0, 0, 0, 60, 397, 1, 0, 0, 0, 62, 399, 1, 0, 0, 0,
2904
- 64, 409, 1, 0, 0, 0, 66, 444, 1, 0, 0, 0, 68, 454, 1, 0, 0, 0, 70, 464, 1, 0, 0, 0, 72, 478,
2905
- 1, 0, 0, 0, 74, 488, 1, 0, 0, 0, 76, 491, 1, 0, 0, 0, 78, 499, 1, 0, 0, 0, 80, 501, 1, 0,
2906
- 0, 0, 82, 510, 1, 0, 0, 0, 84, 514, 1, 0, 0, 0, 86, 520, 1, 0, 0, 0, 88, 526, 1, 0, 0, 0,
2907
- 90, 530, 1, 0, 0, 0, 92, 536, 1, 0, 0, 0, 94, 545, 1, 0, 0, 0, 96, 552, 1, 0, 0, 0, 98, 561,
2908
- 1, 0, 0, 0, 100, 564, 1, 0, 0, 0, 102, 103, 3, 6, 3, 0, 103, 104, 5, 0, 0, 1, 104, 113,
2909
- 1, 0, 0, 0, 105, 106, 5, 37, 0, 0, 106, 108, 3, 10, 5, 0, 107, 109, 5, 38, 0, 0, 108, 107,
2910
- 1, 0, 0, 0, 108, 109, 1, 0, 0, 0, 109, 110, 1, 0, 0, 0, 110, 111, 5, 0, 0, 1, 111, 113,
2911
- 1, 0, 0, 0, 112, 102, 1, 0, 0, 0, 112, 105, 1, 0, 0, 0, 113, 1, 1, 0, 0, 0, 114, 116, 3,
2912
- 4, 2, 0, 115, 114, 1, 0, 0, 0, 116, 117, 1, 0, 0, 0, 117, 115, 1, 0, 0, 0, 117, 118, 1,
2913
- 0, 0, 0, 118, 119, 1, 0, 0, 0, 119, 120, 5, 0, 0, 1, 120, 3, 1, 0, 0, 0, 121, 123, 5, 19,
2914
- 0, 0, 122, 121, 1, 0, 0, 0, 123, 126, 1, 0, 0, 0, 124, 122, 1, 0, 0, 0, 124, 125, 1, 0,
2915
- 0, 0, 125, 127, 1, 0, 0, 0, 126, 124, 1, 0, 0, 0, 127, 128, 3, 8, 4, 0, 128, 5, 1, 0, 0,
2916
- 0, 129, 131, 5, 19, 0, 0, 130, 129, 1, 0, 0, 0, 131, 134, 1, 0, 0, 0, 132, 130, 1, 0, 0,
2917
- 0, 132, 133, 1, 0, 0, 0, 133, 135, 1, 0, 0, 0, 134, 132, 1, 0, 0, 0, 135, 136, 3, 10, 5,
2918
- 0, 136, 7, 1, 0, 0, 0, 137, 141, 3, 50, 25, 0, 138, 140, 3, 20, 10, 0, 139, 138, 1, 0,
2919
- 0, 0, 140, 143, 1, 0, 0, 0, 141, 139, 1, 0, 0, 0, 141, 142, 1, 0, 0, 0, 142, 144, 1, 0,
2920
- 0, 0, 143, 141, 1, 0, 0, 0, 144, 145, 3, 36, 18, 0, 145, 9, 1, 0, 0, 0, 146, 150, 3, 50,
2921
- 25, 0, 147, 149, 3, 20, 10, 0, 148, 147, 1, 0, 0, 0, 149, 152, 1, 0, 0, 0, 150, 148, 1,
2922
- 0, 0, 0, 150, 151, 1, 0, 0, 0, 151, 154, 1, 0, 0, 0, 152, 150, 1, 0, 0, 0, 153, 155, 3,
2923
- 36, 18, 0, 154, 153, 1, 0, 0, 0, 154, 155, 1, 0, 0, 0, 155, 166, 1, 0, 0, 0, 156, 158,
2924
- 3, 20, 10, 0, 157, 156, 1, 0, 0, 0, 158, 159, 1, 0, 0, 0, 159, 157, 1, 0, 0, 0, 159, 160,
2925
- 1, 0, 0, 0, 160, 162, 1, 0, 0, 0, 161, 163, 3, 36, 18, 0, 162, 161, 1, 0, 0, 0, 162, 163,
2926
- 1, 0, 0, 0, 163, 166, 1, 0, 0, 0, 164, 166, 3, 36, 18, 0, 165, 146, 1, 0, 0, 0, 165, 157,
2927
- 1, 0, 0, 0, 165, 164, 1, 0, 0, 0, 166, 11, 1, 0, 0, 0, 167, 169, 3, 18, 9, 0, 168, 167,
2928
- 1, 0, 0, 0, 169, 172, 1, 0, 0, 0, 170, 168, 1, 0, 0, 0, 170, 171, 1, 0, 0, 0, 171, 173,
2929
- 1, 0, 0, 0, 172, 170, 1, 0, 0, 0, 173, 174, 5, 0, 0, 1, 174, 13, 1, 0, 0, 0, 175, 177, 3,
2930
- 16, 8, 0, 176, 175, 1, 0, 0, 0, 177, 180, 1, 0, 0, 0, 178, 176, 1, 0, 0, 0, 178, 179, 1,
2931
- 0, 0, 0, 179, 181, 1, 0, 0, 0, 180, 178, 1, 0, 0, 0, 181, 182, 5, 0, 0, 1, 182, 15, 1, 0,
2932
- 0, 0, 183, 187, 3, 18, 9, 0, 184, 187, 3, 52, 26, 0, 185, 187, 3, 54, 27, 0, 186, 183,
2933
- 1, 0, 0, 0, 186, 184, 1, 0, 0, 0, 186, 185, 1, 0, 0, 0, 187, 17, 1, 0, 0, 0, 188, 204, 3,
2934
- 22, 11, 0, 189, 204, 3, 24, 12, 0, 190, 204, 3, 26, 13, 0, 191, 204, 3, 28, 14, 0, 192,
2935
- 204, 3, 30, 15, 0, 193, 204, 3, 32, 16, 0, 194, 204, 3, 34, 17, 0, 195, 204, 3, 36, 18,
2936
- 0, 196, 204, 3, 38, 19, 0, 197, 204, 3, 40, 20, 0, 198, 204, 3, 42, 21, 0, 199, 204,
2937
- 3, 44, 22, 0, 200, 204, 3, 46, 23, 0, 201, 204, 3, 48, 24, 0, 202, 204, 3, 50, 25, 0,
2938
- 203, 188, 1, 0, 0, 0, 203, 189, 1, 0, 0, 0, 203, 190, 1, 0, 0, 0, 203, 191, 1, 0, 0, 0,
2939
- 203, 192, 1, 0, 0, 0, 203, 193, 1, 0, 0, 0, 203, 194, 1, 0, 0, 0, 203, 195, 1, 0, 0, 0,
2940
- 203, 196, 1, 0, 0, 0, 203, 197, 1, 0, 0, 0, 203, 198, 1, 0, 0, 0, 203, 199, 1, 0, 0, 0,
2941
- 203, 200, 1, 0, 0, 0, 203, 201, 1, 0, 0, 0, 203, 202, 1, 0, 0, 0, 204, 19, 1, 0, 0, 0, 205,
2942
- 219, 3, 22, 11, 0, 206, 219, 3, 24, 12, 0, 207, 219, 3, 26, 13, 0, 208, 219, 3, 28, 14,
2943
- 0, 209, 219, 3, 30, 15, 0, 210, 219, 3, 32, 16, 0, 211, 219, 3, 34, 17, 0, 212, 219,
2944
- 3, 38, 19, 0, 213, 219, 3, 40, 20, 0, 214, 219, 3, 42, 21, 0, 215, 219, 3, 44, 22, 0,
2945
- 216, 219, 3, 46, 23, 0, 217, 219, 3, 48, 24, 0, 218, 205, 1, 0, 0, 0, 218, 206, 1, 0,
2946
- 0, 0, 218, 207, 1, 0, 0, 0, 218, 208, 1, 0, 0, 0, 218, 209, 1, 0, 0, 0, 218, 210, 1, 0,
2947
- 0, 0, 218, 211, 1, 0, 0, 0, 218, 212, 1, 0, 0, 0, 218, 213, 1, 0, 0, 0, 218, 214, 1, 0,
2948
- 0, 0, 218, 215, 1, 0, 0, 0, 218, 216, 1, 0, 0, 0, 218, 217, 1, 0, 0, 0, 219, 21, 1, 0, 0,
2949
- 0, 220, 222, 5, 22, 0, 0, 221, 223, 3, 66, 33, 0, 222, 221, 1, 0, 0, 0, 222, 223, 1, 0,
2950
- 0, 0, 223, 225, 1, 0, 0, 0, 224, 226, 3, 56, 28, 0, 225, 224, 1, 0, 0, 0, 225, 226, 1,
2951
- 0, 0, 0, 226, 227, 1, 0, 0, 0, 227, 228, 3, 58, 29, 0, 228, 23, 1, 0, 0, 0, 229, 231, 5,
2952
- 23, 0, 0, 230, 232, 3, 66, 33, 0, 231, 230, 1, 0, 0, 0, 231, 232, 1, 0, 0, 0, 232, 234,
2953
- 1, 0, 0, 0, 233, 235, 3, 56, 28, 0, 234, 233, 1, 0, 0, 0, 234, 235, 1, 0, 0, 0, 235, 236,
2954
- 1, 0, 0, 0, 236, 237, 3, 58, 29, 0, 237, 25, 1, 0, 0, 0, 238, 240, 5, 24, 0, 0, 239, 241,
2955
- 3, 66, 33, 0, 240, 239, 1, 0, 0, 0, 240, 241, 1, 0, 0, 0, 241, 243, 1, 0, 0, 0, 242, 244,
2956
- 3, 56, 28, 0, 243, 242, 1, 0, 0, 0, 243, 244, 1, 0, 0, 0, 244, 245, 1, 0, 0, 0, 245, 246,
2957
- 3, 58, 29, 0, 246, 27, 1, 0, 0, 0, 247, 248, 5, 25, 0, 0, 248, 250, 3, 60, 30, 0, 249,
2958
- 251, 3, 56, 28, 0, 250, 249, 1, 0, 0, 0, 250, 251, 1, 0, 0, 0, 251, 252, 1, 0, 0, 0, 252,
2959
- 253, 3, 64, 32, 0, 253, 29, 1, 0, 0, 0, 254, 255, 5, 26, 0, 0, 255, 257, 3, 60, 30, 0,
2960
- 256, 258, 3, 56, 28, 0, 257, 256, 1, 0, 0, 0, 257, 258, 1, 0, 0, 0, 258, 259, 1, 0, 0,
2961
- 0, 259, 260, 3, 64, 32, 0, 260, 31, 1, 0, 0, 0, 261, 263, 5, 27, 0, 0, 262, 264, 3, 66,
2962
- 33, 0, 263, 262, 1, 0, 0, 0, 263, 264, 1, 0, 0, 0, 264, 266, 1, 0, 0, 0, 265, 267, 3, 56,
2963
- 28, 0, 266, 265, 1, 0, 0, 0, 266, 267, 1, 0, 0, 0, 267, 268, 1, 0, 0, 0, 268, 269, 3, 58,
2964
- 29, 0, 269, 33, 1, 0, 0, 0, 270, 272, 5, 28, 0, 0, 271, 273, 3, 66, 33, 0, 272, 271, 1,
2965
- 0, 0, 0, 272, 273, 1, 0, 0, 0, 273, 275, 1, 0, 0, 0, 274, 276, 3, 56, 28, 0, 275, 274,
2966
- 1, 0, 0, 0, 275, 276, 1, 0, 0, 0, 276, 277, 1, 0, 0, 0, 277, 278, 3, 58, 29, 0, 278, 35,
2967
- 1, 0, 0, 0, 279, 280, 5, 29, 0, 0, 280, 282, 3, 72, 36, 0, 281, 283, 3, 56, 28, 0, 282,
2968
- 281, 1, 0, 0, 0, 282, 283, 1, 0, 0, 0, 283, 284, 1, 0, 0, 0, 284, 285, 3, 58, 29, 0, 285,
2969
- 37, 1, 0, 0, 0, 286, 288, 5, 29, 0, 0, 287, 289, 3, 74, 37, 0, 288, 287, 1, 0, 0, 0, 288,
2970
- 289, 1, 0, 0, 0, 289, 291, 1, 0, 0, 0, 290, 292, 3, 56, 28, 0, 291, 290, 1, 0, 0, 0, 291,
2971
- 292, 1, 0, 0, 0, 292, 293, 1, 0, 0, 0, 293, 294, 3, 58, 29, 0, 294, 39, 1, 0, 0, 0, 295,
2972
- 297, 5, 30, 0, 0, 296, 298, 3, 76, 38, 0, 297, 296, 1, 0, 0, 0, 297, 298, 1, 0, 0, 0, 298,
2973
- 300, 1, 0, 0, 0, 299, 301, 3, 56, 28, 0, 300, 299, 1, 0, 0, 0, 300, 301, 1, 0, 0, 0, 301,
2974
- 302, 1, 0, 0, 0, 302, 303, 3, 58, 29, 0, 303, 41, 1, 0, 0, 0, 304, 306, 5, 31, 0, 0, 305,
2975
- 307, 3, 80, 40, 0, 306, 305, 1, 0, 0, 0, 306, 307, 1, 0, 0, 0, 307, 309, 1, 0, 0, 0, 308,
2976
- 310, 3, 56, 28, 0, 309, 308, 1, 0, 0, 0, 309, 310, 1, 0, 0, 0, 310, 311, 1, 0, 0, 0, 311,
2977
- 312, 3, 58, 29, 0, 312, 43, 1, 0, 0, 0, 313, 315, 5, 32, 0, 0, 314, 316, 3, 70, 35, 0,
2978
- 315, 314, 1, 0, 0, 0, 315, 316, 1, 0, 0, 0, 316, 318, 1, 0, 0, 0, 317, 319, 3, 56, 28,
2979
- 0, 318, 317, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 320, 1, 0, 0, 0, 320, 321, 3, 58, 29,
2980
- 0, 321, 45, 1, 0, 0, 0, 322, 324, 5, 33, 0, 0, 323, 325, 3, 70, 35, 0, 324, 323, 1, 0,
2981
- 0, 0, 324, 325, 1, 0, 0, 0, 325, 327, 1, 0, 0, 0, 326, 328, 3, 56, 28, 0, 327, 326, 1,
2982
- 0, 0, 0, 327, 328, 1, 0, 0, 0, 328, 329, 1, 0, 0, 0, 329, 330, 3, 58, 29, 0, 330, 47, 1,
2983
- 0, 0, 0, 331, 333, 5, 34, 0, 0, 332, 334, 3, 68, 34, 0, 333, 332, 1, 0, 0, 0, 333, 334,
2984
- 1, 0, 0, 0, 334, 336, 1, 0, 0, 0, 335, 337, 3, 56, 28, 0, 336, 335, 1, 0, 0, 0, 336, 337,
2985
- 1, 0, 0, 0, 337, 338, 1, 0, 0, 0, 338, 339, 3, 58, 29, 0, 339, 49, 1, 0, 0, 0, 340, 342,
2986
- 5, 21, 0, 0, 341, 343, 3, 66, 33, 0, 342, 341, 1, 0, 0, 0, 342, 343, 1, 0, 0, 0, 343, 345,
2987
- 1, 0, 0, 0, 344, 346, 3, 56, 28, 0, 345, 344, 1, 0, 0, 0, 345, 346, 1, 0, 0, 0, 346, 347,
2988
- 1, 0, 0, 0, 347, 348, 3, 58, 29, 0, 348, 51, 1, 0, 0, 0, 349, 351, 5, 35, 0, 0, 350, 352,
2989
- 3, 66, 33, 0, 351, 350, 1, 0, 0, 0, 351, 352, 1, 0, 0, 0, 352, 354, 1, 0, 0, 0, 353, 355,
2990
- 3, 56, 28, 0, 354, 353, 1, 0, 0, 0, 354, 355, 1, 0, 0, 0, 355, 356, 1, 0, 0, 0, 356, 357,
2991
- 3, 58, 29, 0, 357, 53, 1, 0, 0, 0, 358, 360, 5, 36, 0, 0, 359, 361, 3, 66, 33, 0, 360,
2992
- 359, 1, 0, 0, 0, 360, 361, 1, 0, 0, 0, 361, 363, 1, 0, 0, 0, 362, 364, 3, 56, 28, 0, 363,
2993
- 362, 1, 0, 0, 0, 363, 364, 1, 0, 0, 0, 364, 365, 1, 0, 0, 0, 365, 366, 3, 58, 29, 0, 366,
2994
- 55, 1, 0, 0, 0, 367, 368, 5, 20, 0, 0, 368, 57, 1, 0, 0, 0, 369, 383, 5, 10, 0, 0, 370,
2995
- 372, 5, 9, 0, 0, 371, 373, 3, 100, 50, 0, 372, 371, 1, 0, 0, 0, 372, 373, 1, 0, 0, 0, 373,
2996
- 375, 1, 0, 0, 0, 374, 376, 5, 10, 0, 0, 375, 374, 1, 0, 0, 0, 375, 376, 1, 0, 0, 0, 376,
2997
- 383, 1, 0, 0, 0, 377, 379, 3, 100, 50, 0, 378, 380, 5, 10, 0, 0, 379, 378, 1, 0, 0, 0,
2998
- 379, 380, 1, 0, 0, 0, 380, 383, 1, 0, 0, 0, 381, 383, 1, 0, 0, 0, 382, 369, 1, 0, 0, 0,
2999
- 382, 370, 1, 0, 0, 0, 382, 377, 1, 0, 0, 0, 382, 381, 1, 0, 0, 0, 383, 59, 1, 0, 0, 0, 384,
3000
- 385, 3, 80, 40, 0, 385, 386, 3, 62, 31, 0, 386, 387, 3, 62, 31, 0, 387, 398, 1, 0, 0,
3001
- 0, 388, 389, 3, 62, 31, 0, 389, 390, 3, 80, 40, 0, 390, 391, 3, 62, 31, 0, 391, 398,
3002
- 1, 0, 0, 0, 392, 393, 3, 62, 31, 0, 393, 395, 3, 62, 31, 0, 394, 396, 3, 80, 40, 0, 395,
3003
- 394, 1, 0, 0, 0, 395, 396, 1, 0, 0, 0, 396, 398, 1, 0, 0, 0, 397, 384, 1, 0, 0, 0, 397,
3004
- 388, 1, 0, 0, 0, 397, 392, 1, 0, 0, 0, 398, 61, 1, 0, 0, 0, 399, 401, 3, 94, 47, 0, 400,
3005
- 402, 3, 98, 49, 0, 401, 400, 1, 0, 0, 0, 401, 402, 1, 0, 0, 0, 402, 63, 1, 0, 0, 0, 403,
3006
- 410, 5, 10, 0, 0, 404, 406, 5, 9, 0, 0, 405, 407, 5, 10, 0, 0, 406, 405, 1, 0, 0, 0, 406,
3007
- 407, 1, 0, 0, 0, 407, 410, 1, 0, 0, 0, 408, 410, 1, 0, 0, 0, 409, 403, 1, 0, 0, 0, 409,
3008
- 404, 1, 0, 0, 0, 409, 408, 1, 0, 0, 0, 410, 65, 1, 0, 0, 0, 411, 420, 3, 80, 40, 0, 412,
3009
- 414, 3, 94, 47, 0, 413, 415, 3, 98, 49, 0, 414, 413, 1, 0, 0, 0, 414, 415, 1, 0, 0, 0,
3010
- 415, 421, 1, 0, 0, 0, 416, 418, 3, 98, 49, 0, 417, 419, 3, 94, 47, 0, 418, 417, 1, 0,
3011
- 0, 0, 418, 419, 1, 0, 0, 0, 419, 421, 1, 0, 0, 0, 420, 412, 1, 0, 0, 0, 420, 416, 1, 0,
3012
- 0, 0, 420, 421, 1, 0, 0, 0, 421, 445, 1, 0, 0, 0, 422, 431, 3, 94, 47, 0, 423, 425, 3,
3013
- 80, 40, 0, 424, 426, 3, 98, 49, 0, 425, 424, 1, 0, 0, 0, 425, 426, 1, 0, 0, 0, 426, 432,
3014
- 1, 0, 0, 0, 427, 429, 3, 98, 49, 0, 428, 430, 3, 80, 40, 0, 429, 428, 1, 0, 0, 0, 429,
3015
- 430, 1, 0, 0, 0, 430, 432, 1, 0, 0, 0, 431, 423, 1, 0, 0, 0, 431, 427, 1, 0, 0, 0, 431,
3016
- 432, 1, 0, 0, 0, 432, 445, 1, 0, 0, 0, 433, 442, 3, 98, 49, 0, 434, 436, 3, 80, 40, 0,
3017
- 435, 437, 3, 94, 47, 0, 436, 435, 1, 0, 0, 0, 436, 437, 1, 0, 0, 0, 437, 443, 1, 0, 0,
3018
- 0, 438, 440, 3, 94, 47, 0, 439, 441, 3, 80, 40, 0, 440, 439, 1, 0, 0, 0, 440, 441, 1,
3019
- 0, 0, 0, 441, 443, 1, 0, 0, 0, 442, 434, 1, 0, 0, 0, 442, 438, 1, 0, 0, 0, 442, 443, 1,
3020
- 0, 0, 0, 443, 445, 1, 0, 0, 0, 444, 411, 1, 0, 0, 0, 444, 422, 1, 0, 0, 0, 444, 433, 1,
3021
- 0, 0, 0, 445, 67, 1, 0, 0, 0, 446, 448, 3, 84, 42, 0, 447, 449, 3, 94, 47, 0, 448, 447,
3022
- 1, 0, 0, 0, 448, 449, 1, 0, 0, 0, 449, 455, 1, 0, 0, 0, 450, 452, 3, 94, 47, 0, 451, 453,
3023
- 3, 84, 42, 0, 452, 451, 1, 0, 0, 0, 452, 453, 1, 0, 0, 0, 453, 455, 1, 0, 0, 0, 454, 446,
3024
- 1, 0, 0, 0, 454, 450, 1, 0, 0, 0, 455, 69, 1, 0, 0, 0, 456, 458, 3, 82, 41, 0, 457, 459,
3025
- 3, 94, 47, 0, 458, 457, 1, 0, 0, 0, 458, 459, 1, 0, 0, 0, 459, 465, 1, 0, 0, 0, 460, 462,
3026
- 3, 94, 47, 0, 461, 463, 3, 82, 41, 0, 462, 461, 1, 0, 0, 0, 462, 463, 1, 0, 0, 0, 463,
3027
- 465, 1, 0, 0, 0, 464, 456, 1, 0, 0, 0, 464, 460, 1, 0, 0, 0, 465, 71, 1, 0, 0, 0, 466, 468,
3028
- 3, 88, 44, 0, 467, 469, 3, 94, 47, 0, 468, 467, 1, 0, 0, 0, 468, 469, 1, 0, 0, 0, 469,
3029
- 471, 1, 0, 0, 0, 470, 472, 3, 98, 49, 0, 471, 470, 1, 0, 0, 0, 471, 472, 1, 0, 0, 0, 472,
3030
- 479, 1, 0, 0, 0, 473, 474, 3, 94, 47, 0, 474, 476, 3, 88, 44, 0, 475, 477, 3, 98, 49,
3031
- 0, 476, 475, 1, 0, 0, 0, 476, 477, 1, 0, 0, 0, 477, 479, 1, 0, 0, 0, 478, 466, 1, 0, 0,
3032
- 0, 478, 473, 1, 0, 0, 0, 479, 73, 1, 0, 0, 0, 480, 482, 3, 86, 43, 0, 481, 483, 3, 94,
3033
- 47, 0, 482, 481, 1, 0, 0, 0, 482, 483, 1, 0, 0, 0, 483, 489, 1, 0, 0, 0, 484, 486, 3, 94,
3034
- 47, 0, 485, 487, 3, 86, 43, 0, 486, 485, 1, 0, 0, 0, 486, 487, 1, 0, 0, 0, 487, 489, 1,
3035
- 0, 0, 0, 488, 480, 1, 0, 0, 0, 488, 484, 1, 0, 0, 0, 489, 75, 1, 0, 0, 0, 490, 492, 3, 78,
3036
- 39, 0, 491, 490, 1, 0, 0, 0, 492, 493, 1, 0, 0, 0, 493, 491, 1, 0, 0, 0, 493, 494, 1, 0,
3037
- 0, 0, 494, 77, 1, 0, 0, 0, 495, 500, 3, 90, 45, 0, 496, 500, 3, 80, 40, 0, 497, 500, 3,
3038
- 94, 47, 0, 498, 500, 3, 98, 49, 0, 499, 495, 1, 0, 0, 0, 499, 496, 1, 0, 0, 0, 499, 497,
3039
- 1, 0, 0, 0, 499, 498, 1, 0, 0, 0, 500, 79, 1, 0, 0, 0, 501, 505, 5, 1, 0, 0, 502, 504, 7,
3040
- 0, 0, 0, 503, 502, 1, 0, 0, 0, 504, 507, 1, 0, 0, 0, 505, 503, 1, 0, 0, 0, 505, 506, 1,
3041
- 0, 0, 0, 506, 508, 1, 0, 0, 0, 507, 505, 1, 0, 0, 0, 508, 509, 5, 2, 0, 0, 509, 81, 1, 0,
3042
- 0, 0, 510, 511, 5, 1, 0, 0, 511, 512, 5, 15, 0, 0, 512, 513, 5, 2, 0, 0, 513, 83, 1, 0,
3043
- 0, 0, 514, 516, 5, 1, 0, 0, 515, 517, 7, 1, 0, 0, 516, 515, 1, 0, 0, 0, 516, 517, 1, 0,
3044
- 0, 0, 517, 518, 1, 0, 0, 0, 518, 519, 5, 2, 0, 0, 519, 85, 1, 0, 0, 0, 520, 522, 5, 1, 0,
3045
- 0, 521, 523, 5, 12, 0, 0, 522, 521, 1, 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 524, 1, 0, 0,
3046
- 0, 524, 525, 5, 2, 0, 0, 525, 87, 1, 0, 0, 0, 526, 527, 5, 1, 0, 0, 527, 528, 5, 13, 0,
3047
- 0, 528, 529, 5, 2, 0, 0, 529, 89, 1, 0, 0, 0, 530, 532, 5, 1, 0, 0, 531, 533, 5, 14, 0,
3048
- 0, 532, 531, 1, 0, 0, 0, 532, 533, 1, 0, 0, 0, 533, 534, 1, 0, 0, 0, 534, 535, 5, 2, 0,
3049
- 0, 535, 91, 1, 0, 0, 0, 536, 540, 5, 3, 0, 0, 537, 539, 5, 16, 0, 0, 538, 537, 1, 0, 0,
3050
- 0, 539, 542, 1, 0, 0, 0, 540, 538, 1, 0, 0, 0, 540, 541, 1, 0, 0, 0, 541, 543, 1, 0, 0,
3051
- 0, 542, 540, 1, 0, 0, 0, 543, 544, 5, 4, 0, 0, 544, 93, 1, 0, 0, 0, 545, 549, 3, 92, 46,
3052
- 0, 546, 548, 3, 96, 48, 0, 547, 546, 1, 0, 0, 0, 548, 551, 1, 0, 0, 0, 549, 547, 1, 0,
3053
- 0, 0, 549, 550, 1, 0, 0, 0, 550, 95, 1, 0, 0, 0, 551, 549, 1, 0, 0, 0, 552, 556, 5, 5, 0,
3054
- 0, 553, 555, 5, 17, 0, 0, 554, 553, 1, 0, 0, 0, 555, 558, 1, 0, 0, 0, 556, 554, 1, 0, 0,
3055
- 0, 556, 557, 1, 0, 0, 0, 557, 559, 1, 0, 0, 0, 558, 556, 1, 0, 0, 0, 559, 560, 5, 6, 0,
3056
- 0, 560, 97, 1, 0, 0, 0, 561, 562, 5, 7, 0, 0, 562, 99, 1, 0, 0, 0, 563, 565, 5, 18, 0, 0,
3057
- 564, 563, 1, 0, 0, 0, 565, 566, 1, 0, 0, 0, 566, 564, 1, 0, 0, 0, 566, 567, 1, 0, 0, 0,
3058
- 567, 101, 1, 0, 0, 0, 89, 108, 112, 117, 124, 132, 141, 150, 154, 159, 162, 165, 170,
3059
- 178, 186, 203, 218, 222, 225, 231, 234, 240, 243, 250, 257, 263, 266, 272, 275,
3060
- 282, 288, 291, 297, 300, 306, 309, 315, 318, 324, 327, 333, 336, 342, 345, 351,
3061
- 354, 360, 363, 372, 375, 379, 382, 395, 397, 401, 406, 409, 414, 418, 420, 425,
3062
- 429, 431, 436, 440, 442, 444, 448, 452, 454, 458, 462, 464, 468, 471, 476, 478,
3063
- 482, 486, 488, 493, 499, 505, 516, 522, 532, 540, 549, 556, 566
2043
+ 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 1, 0, 1, 0, 1,
2044
+ 0, 1, 0, 1, 0, 1, 0, 3, 0, 85, 8, 0, 1, 0, 1, 0, 3, 0, 89, 8, 0, 1, 1, 4, 1, 92, 8, 1, 11, 1,
2045
+ 12, 1, 93, 1, 1, 1, 1, 1, 2, 5, 2, 99, 8, 2, 10, 2, 12, 2, 102, 9, 2, 1, 2, 1, 2, 1, 3, 5, 3,
2046
+ 107, 8, 3, 10, 3, 12, 3, 110, 9, 3, 1, 3, 1, 3, 1, 4, 3, 4, 115, 8, 4, 1, 4, 5, 4, 118, 8,
2047
+ 4, 10, 4, 12, 4, 121, 9, 4, 1, 4, 1, 4, 1, 5, 1, 5, 5, 5, 127, 8, 5, 10, 5, 12, 5, 130, 9,
2048
+ 5, 1, 5, 3, 5, 133, 8, 5, 1, 5, 4, 5, 136, 8, 5, 11, 5, 12, 5, 137, 1, 5, 3, 5, 141, 8, 5,
2049
+ 1, 5, 3, 5, 144, 8, 5, 1, 6, 5, 6, 147, 8, 6, 10, 6, 12, 6, 150, 9, 6, 1, 6, 1, 6, 1, 7, 5,
2050
+ 7, 155, 8, 7, 10, 7, 12, 7, 158, 9, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 3, 8, 165, 8, 8, 1, 9,
2051
+ 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 3, 9, 180, 8, 9, 1, 10,
2052
+ 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 3, 10, 193, 8, 10,
2053
+ 1, 11, 1, 11, 3, 11, 197, 8, 11, 1, 11, 3, 11, 200, 8, 11, 1, 11, 1, 11, 1, 12, 1, 12, 3,
2054
+ 12, 206, 8, 12, 1, 12, 3, 12, 209, 8, 12, 1, 12, 1, 12, 1, 13, 1, 13, 3, 13, 215, 8, 13,
2055
+ 1, 13, 3, 13, 218, 8, 13, 1, 13, 1, 13, 1, 14, 1, 14, 1, 14, 3, 14, 225, 8, 14, 1, 14, 1,
2056
+ 14, 1, 15, 1, 15, 1, 15, 3, 15, 232, 8, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 3, 16, 239,
2057
+ 8, 16, 1, 16, 3, 16, 242, 8, 16, 1, 16, 1, 16, 1, 17, 1, 17, 3, 17, 248, 8, 17, 1, 17, 3,
2058
+ 17, 251, 8, 17, 1, 17, 1, 17, 1, 18, 1, 18, 3, 18, 257, 8, 18, 1, 18, 3, 18, 260, 8, 18,
2059
+ 1, 18, 3, 18, 263, 8, 18, 1, 18, 1, 18, 1, 19, 1, 19, 3, 19, 269, 8, 19, 1, 19, 1, 19, 1,
2060
+ 20, 1, 20, 3, 20, 275, 8, 20, 1, 20, 3, 20, 278, 8, 20, 1, 20, 1, 20, 1, 21, 1, 21, 3, 21,
2061
+ 284, 8, 21, 1, 21, 3, 21, 287, 8, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 293, 8, 22, 1,
2062
+ 22, 3, 22, 296, 8, 22, 1, 22, 1, 22, 1, 23, 1, 23, 3, 23, 302, 8, 23, 1, 23, 3, 23, 305,
2063
+ 8, 23, 1, 23, 1, 23, 1, 24, 1, 24, 3, 24, 311, 8, 24, 1, 24, 3, 24, 314, 8, 24, 1, 24, 1,
2064
+ 24, 1, 25, 1, 25, 3, 25, 320, 8, 25, 1, 25, 3, 25, 323, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26,
2065
+ 1, 27, 1, 27, 1, 27, 3, 27, 332, 8, 27, 1, 27, 3, 27, 335, 8, 27, 1, 27, 1, 27, 3, 27, 339,
2066
+ 8, 27, 1, 27, 3, 27, 342, 8, 27, 1, 28, 1, 28, 1, 28, 1, 29, 1, 29, 3, 29, 349, 8, 29, 1,
2067
+ 30, 1, 30, 1, 30, 3, 30, 354, 8, 30, 1, 30, 3, 30, 357, 8, 30, 1, 31, 1, 31, 3, 31, 361,
2068
+ 8, 31, 1, 31, 1, 31, 3, 31, 365, 8, 31, 3, 31, 367, 8, 31, 1, 32, 4, 32, 370, 8, 32, 11,
2069
+ 32, 12, 32, 371, 1, 33, 1, 33, 1, 33, 3, 33, 377, 8, 33, 1, 34, 1, 34, 5, 34, 381, 8, 34,
2070
+ 10, 34, 12, 34, 384, 9, 34, 1, 34, 1, 34, 1, 35, 1, 35, 5, 35, 390, 8, 35, 10, 35, 12,
2071
+ 35, 393, 9, 35, 1, 36, 1, 36, 5, 36, 397, 8, 36, 10, 36, 12, 36, 400, 9, 36, 1, 36, 1,
2072
+ 36, 1, 37, 1, 37, 1, 38, 4, 38, 407, 8, 38, 11, 38, 12, 38, 408, 1, 38, 0, 0, 39, 0, 2,
2073
+ 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48,
2074
+ 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 0, 0, 458, 0, 88, 1, 0, 0, 0, 2,
2075
+ 91, 1, 0, 0, 0, 4, 100, 1, 0, 0, 0, 6, 108, 1, 0, 0, 0, 8, 114, 1, 0, 0, 0, 10, 143, 1, 0,
2076
+ 0, 0, 12, 148, 1, 0, 0, 0, 14, 156, 1, 0, 0, 0, 16, 164, 1, 0, 0, 0, 18, 179, 1, 0, 0, 0,
2077
+ 20, 192, 1, 0, 0, 0, 22, 194, 1, 0, 0, 0, 24, 203, 1, 0, 0, 0, 26, 212, 1, 0, 0, 0, 28, 221,
2078
+ 1, 0, 0, 0, 30, 228, 1, 0, 0, 0, 32, 235, 1, 0, 0, 0, 34, 245, 1, 0, 0, 0, 36, 254, 1, 0,
2079
+ 0, 0, 38, 266, 1, 0, 0, 0, 40, 272, 1, 0, 0, 0, 42, 281, 1, 0, 0, 0, 44, 290, 1, 0, 0, 0,
2080
+ 46, 299, 1, 0, 0, 0, 48, 308, 1, 0, 0, 0, 50, 317, 1, 0, 0, 0, 52, 326, 1, 0, 0, 0, 54, 341,
2081
+ 1, 0, 0, 0, 56, 343, 1, 0, 0, 0, 58, 346, 1, 0, 0, 0, 60, 356, 1, 0, 0, 0, 62, 366, 1, 0,
2082
+ 0, 0, 64, 369, 1, 0, 0, 0, 66, 376, 1, 0, 0, 0, 68, 378, 1, 0, 0, 0, 70, 387, 1, 0, 0, 0,
2083
+ 72, 394, 1, 0, 0, 0, 74, 403, 1, 0, 0, 0, 76, 406, 1, 0, 0, 0, 78, 79, 3, 6, 3, 0, 79, 80,
2084
+ 5, 0, 0, 1, 80, 89, 1, 0, 0, 0, 81, 82, 5, 30, 0, 0, 82, 84, 3, 10, 5, 0, 83, 85, 5, 31, 0,
2085
+ 0, 84, 83, 1, 0, 0, 0, 84, 85, 1, 0, 0, 0, 85, 86, 1, 0, 0, 0, 86, 87, 5, 0, 0, 1, 87, 89,
2086
+ 1, 0, 0, 0, 88, 78, 1, 0, 0, 0, 88, 81, 1, 0, 0, 0, 89, 1, 1, 0, 0, 0, 90, 92, 3, 4, 2, 0, 91,
2087
+ 90, 1, 0, 0, 0, 92, 93, 1, 0, 0, 0, 93, 91, 1, 0, 0, 0, 93, 94, 1, 0, 0, 0, 94, 95, 1, 0, 0,
2088
+ 0, 95, 96, 5, 0, 0, 1, 96, 3, 1, 0, 0, 0, 97, 99, 5, 12, 0, 0, 98, 97, 1, 0, 0, 0, 99, 102,
2089
+ 1, 0, 0, 0, 100, 98, 1, 0, 0, 0, 100, 101, 1, 0, 0, 0, 101, 103, 1, 0, 0, 0, 102, 100, 1,
2090
+ 0, 0, 0, 103, 104, 3, 8, 4, 0, 104, 5, 1, 0, 0, 0, 105, 107, 5, 12, 0, 0, 106, 105, 1, 0,
2091
+ 0, 0, 107, 110, 1, 0, 0, 0, 108, 106, 1, 0, 0, 0, 108, 109, 1, 0, 0, 0, 109, 111, 1, 0,
2092
+ 0, 0, 110, 108, 1, 0, 0, 0, 111, 112, 3, 10, 5, 0, 112, 7, 1, 0, 0, 0, 113, 115, 3, 46,
2093
+ 23, 0, 114, 113, 1, 0, 0, 0, 114, 115, 1, 0, 0, 0, 115, 119, 1, 0, 0, 0, 116, 118, 3, 20,
2094
+ 10, 0, 117, 116, 1, 0, 0, 0, 118, 121, 1, 0, 0, 0, 119, 117, 1, 0, 0, 0, 119, 120, 1, 0,
2095
+ 0, 0, 120, 122, 1, 0, 0, 0, 121, 119, 1, 0, 0, 0, 122, 123, 3, 32, 16, 0, 123, 9, 1, 0,
2096
+ 0, 0, 124, 128, 3, 46, 23, 0, 125, 127, 3, 20, 10, 0, 126, 125, 1, 0, 0, 0, 127, 130,
2097
+ 1, 0, 0, 0, 128, 126, 1, 0, 0, 0, 128, 129, 1, 0, 0, 0, 129, 132, 1, 0, 0, 0, 130, 128,
2098
+ 1, 0, 0, 0, 131, 133, 3, 32, 16, 0, 132, 131, 1, 0, 0, 0, 132, 133, 1, 0, 0, 0, 133, 144,
2099
+ 1, 0, 0, 0, 134, 136, 3, 20, 10, 0, 135, 134, 1, 0, 0, 0, 136, 137, 1, 0, 0, 0, 137, 135,
2100
+ 1, 0, 0, 0, 137, 138, 1, 0, 0, 0, 138, 140, 1, 0, 0, 0, 139, 141, 3, 32, 16, 0, 140, 139,
2101
+ 1, 0, 0, 0, 140, 141, 1, 0, 0, 0, 141, 144, 1, 0, 0, 0, 142, 144, 3, 32, 16, 0, 143, 124,
2102
+ 1, 0, 0, 0, 143, 135, 1, 0, 0, 0, 143, 142, 1, 0, 0, 0, 144, 11, 1, 0, 0, 0, 145, 147, 3,
2103
+ 18, 9, 0, 146, 145, 1, 0, 0, 0, 147, 150, 1, 0, 0, 0, 148, 146, 1, 0, 0, 0, 148, 149, 1,
2104
+ 0, 0, 0, 149, 151, 1, 0, 0, 0, 150, 148, 1, 0, 0, 0, 151, 152, 5, 0, 0, 1, 152, 13, 1, 0,
2105
+ 0, 0, 153, 155, 3, 16, 8, 0, 154, 153, 1, 0, 0, 0, 155, 158, 1, 0, 0, 0, 156, 154, 1, 0,
2106
+ 0, 0, 156, 157, 1, 0, 0, 0, 157, 159, 1, 0, 0, 0, 158, 156, 1, 0, 0, 0, 159, 160, 5, 0,
2107
+ 0, 1, 160, 15, 1, 0, 0, 0, 161, 165, 3, 18, 9, 0, 162, 165, 3, 48, 24, 0, 163, 165, 3,
2108
+ 50, 25, 0, 164, 161, 1, 0, 0, 0, 164, 162, 1, 0, 0, 0, 164, 163, 1, 0, 0, 0, 165, 17, 1,
2109
+ 0, 0, 0, 166, 180, 3, 22, 11, 0, 167, 180, 3, 24, 12, 0, 168, 180, 3, 26, 13, 0, 169,
2110
+ 180, 3, 28, 14, 0, 170, 180, 3, 30, 15, 0, 171, 180, 3, 32, 16, 0, 172, 180, 3, 34, 17,
2111
+ 0, 173, 180, 3, 36, 18, 0, 174, 180, 3, 38, 19, 0, 175, 180, 3, 40, 20, 0, 176, 180,
2112
+ 3, 42, 21, 0, 177, 180, 3, 44, 22, 0, 178, 180, 3, 46, 23, 0, 179, 166, 1, 0, 0, 0, 179,
2113
+ 167, 1, 0, 0, 0, 179, 168, 1, 0, 0, 0, 179, 169, 1, 0, 0, 0, 179, 170, 1, 0, 0, 0, 179,
2114
+ 171, 1, 0, 0, 0, 179, 172, 1, 0, 0, 0, 179, 173, 1, 0, 0, 0, 179, 174, 1, 0, 0, 0, 179,
2115
+ 175, 1, 0, 0, 0, 179, 176, 1, 0, 0, 0, 179, 177, 1, 0, 0, 0, 179, 178, 1, 0, 0, 0, 180,
2116
+ 19, 1, 0, 0, 0, 181, 193, 3, 22, 11, 0, 182, 193, 3, 24, 12, 0, 183, 193, 3, 26, 13, 0,
2117
+ 184, 193, 3, 28, 14, 0, 185, 193, 3, 30, 15, 0, 186, 193, 3, 34, 17, 0, 187, 193, 3,
2118
+ 36, 18, 0, 188, 193, 3, 38, 19, 0, 189, 193, 3, 40, 20, 0, 190, 193, 3, 42, 21, 0, 191,
2119
+ 193, 3, 44, 22, 0, 192, 181, 1, 0, 0, 0, 192, 182, 1, 0, 0, 0, 192, 183, 1, 0, 0, 0, 192,
2120
+ 184, 1, 0, 0, 0, 192, 185, 1, 0, 0, 0, 192, 186, 1, 0, 0, 0, 192, 187, 1, 0, 0, 0, 192,
2121
+ 188, 1, 0, 0, 0, 192, 189, 1, 0, 0, 0, 192, 190, 1, 0, 0, 0, 192, 191, 1, 0, 0, 0, 193,
2122
+ 21, 1, 0, 0, 0, 194, 196, 5, 17, 0, 0, 195, 197, 3, 62, 31, 0, 196, 195, 1, 0, 0, 0, 196,
2123
+ 197, 1, 0, 0, 0, 197, 199, 1, 0, 0, 0, 198, 200, 3, 52, 26, 0, 199, 198, 1, 0, 0, 0, 199,
2124
+ 200, 1, 0, 0, 0, 200, 201, 1, 0, 0, 0, 201, 202, 3, 54, 27, 0, 202, 23, 1, 0, 0, 0, 203,
2125
+ 205, 5, 18, 0, 0, 204, 206, 3, 62, 31, 0, 205, 204, 1, 0, 0, 0, 205, 206, 1, 0, 0, 0, 206,
2126
+ 208, 1, 0, 0, 0, 207, 209, 3, 52, 26, 0, 208, 207, 1, 0, 0, 0, 208, 209, 1, 0, 0, 0, 209,
2127
+ 210, 1, 0, 0, 0, 210, 211, 3, 54, 27, 0, 211, 25, 1, 0, 0, 0, 212, 214, 5, 19, 0, 0, 213,
2128
+ 215, 3, 62, 31, 0, 214, 213, 1, 0, 0, 0, 214, 215, 1, 0, 0, 0, 215, 217, 1, 0, 0, 0, 216,
2129
+ 218, 3, 52, 26, 0, 217, 216, 1, 0, 0, 0, 217, 218, 1, 0, 0, 0, 218, 219, 1, 0, 0, 0, 219,
2130
+ 220, 3, 54, 27, 0, 220, 27, 1, 0, 0, 0, 221, 222, 5, 20, 0, 0, 222, 224, 3, 56, 28, 0,
2131
+ 223, 225, 3, 52, 26, 0, 224, 223, 1, 0, 0, 0, 224, 225, 1, 0, 0, 0, 225, 226, 1, 0, 0,
2132
+ 0, 226, 227, 3, 60, 30, 0, 227, 29, 1, 0, 0, 0, 228, 229, 5, 21, 0, 0, 229, 231, 3, 56,
2133
+ 28, 0, 230, 232, 3, 52, 26, 0, 231, 230, 1, 0, 0, 0, 231, 232, 1, 0, 0, 0, 232, 233, 1,
2134
+ 0, 0, 0, 233, 234, 3, 60, 30, 0, 234, 31, 1, 0, 0, 0, 235, 236, 5, 22, 0, 0, 236, 238,
2135
+ 5, 14, 0, 0, 237, 239, 3, 74, 37, 0, 238, 237, 1, 0, 0, 0, 238, 239, 1, 0, 0, 0, 239, 241,
2136
+ 1, 0, 0, 0, 240, 242, 3, 52, 26, 0, 241, 240, 1, 0, 0, 0, 241, 242, 1, 0, 0, 0, 242, 243,
2137
+ 1, 0, 0, 0, 243, 244, 3, 54, 27, 0, 244, 33, 1, 0, 0, 0, 245, 247, 5, 22, 0, 0, 246, 248,
2138
+ 3, 70, 35, 0, 247, 246, 1, 0, 0, 0, 247, 248, 1, 0, 0, 0, 248, 250, 1, 0, 0, 0, 249, 251,
2139
+ 3, 52, 26, 0, 250, 249, 1, 0, 0, 0, 250, 251, 1, 0, 0, 0, 251, 252, 1, 0, 0, 0, 252, 253,
2140
+ 3, 54, 27, 0, 253, 35, 1, 0, 0, 0, 254, 256, 5, 23, 0, 0, 255, 257, 5, 15, 0, 0, 256, 255,
2141
+ 1, 0, 0, 0, 256, 257, 1, 0, 0, 0, 257, 259, 1, 0, 0, 0, 258, 260, 3, 64, 32, 0, 259, 258,
2142
+ 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 262, 1, 0, 0, 0, 261, 263, 3, 52, 26, 0, 262, 261,
2143
+ 1, 0, 0, 0, 262, 263, 1, 0, 0, 0, 263, 264, 1, 0, 0, 0, 264, 265, 3, 54, 27, 0, 265, 37,
2144
+ 1, 0, 0, 0, 266, 268, 5, 24, 0, 0, 267, 269, 3, 52, 26, 0, 268, 267, 1, 0, 0, 0, 268, 269,
2145
+ 1, 0, 0, 0, 269, 270, 1, 0, 0, 0, 270, 271, 3, 54, 27, 0, 271, 39, 1, 0, 0, 0, 272, 274,
2146
+ 5, 25, 0, 0, 273, 275, 3, 70, 35, 0, 274, 273, 1, 0, 0, 0, 274, 275, 1, 0, 0, 0, 275, 277,
2147
+ 1, 0, 0, 0, 276, 278, 3, 52, 26, 0, 277, 276, 1, 0, 0, 0, 277, 278, 1, 0, 0, 0, 278, 279,
2148
+ 1, 0, 0, 0, 279, 280, 3, 54, 27, 0, 280, 41, 1, 0, 0, 0, 281, 283, 5, 26, 0, 0, 282, 284,
2149
+ 3, 70, 35, 0, 283, 282, 1, 0, 0, 0, 283, 284, 1, 0, 0, 0, 284, 286, 1, 0, 0, 0, 285, 287,
2150
+ 3, 52, 26, 0, 286, 285, 1, 0, 0, 0, 286, 287, 1, 0, 0, 0, 287, 288, 1, 0, 0, 0, 288, 289,
2151
+ 3, 54, 27, 0, 289, 43, 1, 0, 0, 0, 290, 292, 5, 27, 0, 0, 291, 293, 3, 62, 31, 0, 292,
2152
+ 291, 1, 0, 0, 0, 292, 293, 1, 0, 0, 0, 293, 295, 1, 0, 0, 0, 294, 296, 3, 52, 26, 0, 295,
2153
+ 294, 1, 0, 0, 0, 295, 296, 1, 0, 0, 0, 296, 297, 1, 0, 0, 0, 297, 298, 3, 54, 27, 0, 298,
2154
+ 45, 1, 0, 0, 0, 299, 301, 5, 16, 0, 0, 300, 302, 3, 62, 31, 0, 301, 300, 1, 0, 0, 0, 301,
2155
+ 302, 1, 0, 0, 0, 302, 304, 1, 0, 0, 0, 303, 305, 3, 52, 26, 0, 304, 303, 1, 0, 0, 0, 304,
2156
+ 305, 1, 0, 0, 0, 305, 306, 1, 0, 0, 0, 306, 307, 3, 54, 27, 0, 307, 47, 1, 0, 0, 0, 308,
2157
+ 310, 5, 28, 0, 0, 309, 311, 3, 62, 31, 0, 310, 309, 1, 0, 0, 0, 310, 311, 1, 0, 0, 0, 311,
2158
+ 313, 1, 0, 0, 0, 312, 314, 3, 52, 26, 0, 313, 312, 1, 0, 0, 0, 313, 314, 1, 0, 0, 0, 314,
2159
+ 315, 1, 0, 0, 0, 315, 316, 3, 54, 27, 0, 316, 49, 1, 0, 0, 0, 317, 319, 5, 29, 0, 0, 318,
2160
+ 320, 3, 62, 31, 0, 319, 318, 1, 0, 0, 0, 319, 320, 1, 0, 0, 0, 320, 322, 1, 0, 0, 0, 321,
2161
+ 323, 3, 52, 26, 0, 322, 321, 1, 0, 0, 0, 322, 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324,
2162
+ 325, 3, 54, 27, 0, 325, 51, 1, 0, 0, 0, 326, 327, 5, 13, 0, 0, 327, 53, 1, 0, 0, 0, 328,
2163
+ 342, 5, 8, 0, 0, 329, 331, 5, 7, 0, 0, 330, 332, 3, 76, 38, 0, 331, 330, 1, 0, 0, 0, 331,
2164
+ 332, 1, 0, 0, 0, 332, 334, 1, 0, 0, 0, 333, 335, 5, 8, 0, 0, 334, 333, 1, 0, 0, 0, 334,
2165
+ 335, 1, 0, 0, 0, 335, 342, 1, 0, 0, 0, 336, 338, 3, 76, 38, 0, 337, 339, 5, 8, 0, 0, 338,
2166
+ 337, 1, 0, 0, 0, 338, 339, 1, 0, 0, 0, 339, 342, 1, 0, 0, 0, 340, 342, 1, 0, 0, 0, 341,
2167
+ 328, 1, 0, 0, 0, 341, 329, 1, 0, 0, 0, 341, 336, 1, 0, 0, 0, 341, 340, 1, 0, 0, 0, 342,
2168
+ 55, 1, 0, 0, 0, 343, 344, 3, 58, 29, 0, 344, 345, 3, 58, 29, 0, 345, 57, 1, 0, 0, 0, 346,
2169
+ 348, 3, 70, 35, 0, 347, 349, 3, 74, 37, 0, 348, 347, 1, 0, 0, 0, 348, 349, 1, 0, 0, 0,
2170
+ 349, 59, 1, 0, 0, 0, 350, 357, 5, 8, 0, 0, 351, 353, 5, 7, 0, 0, 352, 354, 5, 8, 0, 0, 353,
2171
+ 352, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 357, 1, 0, 0, 0, 355, 357, 1, 0, 0, 0, 356,
2172
+ 350, 1, 0, 0, 0, 356, 351, 1, 0, 0, 0, 356, 355, 1, 0, 0, 0, 357, 61, 1, 0, 0, 0, 358, 360,
2173
+ 3, 70, 35, 0, 359, 361, 3, 74, 37, 0, 360, 359, 1, 0, 0, 0, 360, 361, 1, 0, 0, 0, 361,
2174
+ 367, 1, 0, 0, 0, 362, 364, 3, 74, 37, 0, 363, 365, 3, 70, 35, 0, 364, 363, 1, 0, 0, 0,
2175
+ 364, 365, 1, 0, 0, 0, 365, 367, 1, 0, 0, 0, 366, 358, 1, 0, 0, 0, 366, 362, 1, 0, 0, 0,
2176
+ 367, 63, 1, 0, 0, 0, 368, 370, 3, 66, 33, 0, 369, 368, 1, 0, 0, 0, 370, 371, 1, 0, 0, 0,
2177
+ 371, 369, 1, 0, 0, 0, 371, 372, 1, 0, 0, 0, 372, 65, 1, 0, 0, 0, 373, 377, 3, 70, 35, 0,
2178
+ 374, 377, 3, 72, 36, 0, 375, 377, 3, 74, 37, 0, 376, 373, 1, 0, 0, 0, 376, 374, 1, 0,
2179
+ 0, 0, 376, 375, 1, 0, 0, 0, 377, 67, 1, 0, 0, 0, 378, 382, 5, 1, 0, 0, 379, 381, 5, 9, 0,
2180
+ 0, 380, 379, 1, 0, 0, 0, 381, 384, 1, 0, 0, 0, 382, 380, 1, 0, 0, 0, 382, 383, 1, 0, 0,
2181
+ 0, 383, 385, 1, 0, 0, 0, 384, 382, 1, 0, 0, 0, 385, 386, 5, 2, 0, 0, 386, 69, 1, 0, 0, 0,
2182
+ 387, 391, 3, 68, 34, 0, 388, 390, 3, 72, 36, 0, 389, 388, 1, 0, 0, 0, 390, 393, 1, 0,
2183
+ 0, 0, 391, 389, 1, 0, 0, 0, 391, 392, 1, 0, 0, 0, 392, 71, 1, 0, 0, 0, 393, 391, 1, 0, 0,
2184
+ 0, 394, 398, 5, 3, 0, 0, 395, 397, 5, 10, 0, 0, 396, 395, 1, 0, 0, 0, 397, 400, 1, 0, 0,
2185
+ 0, 398, 396, 1, 0, 0, 0, 398, 399, 1, 0, 0, 0, 399, 401, 1, 0, 0, 0, 400, 398, 1, 0, 0,
2186
+ 0, 401, 402, 5, 4, 0, 0, 402, 73, 1, 0, 0, 0, 403, 404, 5, 5, 0, 0, 404, 75, 1, 0, 0, 0,
2187
+ 405, 407, 5, 11, 0, 0, 406, 405, 1, 0, 0, 0, 407, 408, 1, 0, 0, 0, 408, 406, 1, 0, 0, 0,
2188
+ 408, 409, 1, 0, 0, 0, 409, 77, 1, 0, 0, 0, 61, 84, 88, 93, 100, 108, 114, 119, 128, 132,
2189
+ 137, 140, 143, 148, 156, 164, 179, 192, 196, 199, 205, 208, 214, 217, 224, 231,
2190
+ 238, 241, 247, 250, 256, 259, 262, 268, 274, 277, 283, 286, 292, 295, 301, 304,
2191
+ 310, 313, 319, 322, 331, 334, 338, 341, 348, 353, 356, 360, 364, 366, 371, 376,
2192
+ 382, 391, 398, 408
3064
2193
  ];
3065
2194
  static __ATN;
3066
2195
  static get _ATN() {
@@ -3189,12 +2318,12 @@ export class TurnContext extends antlr.ParserRuleContext {
3189
2318
  constructor(parent, invokingState) {
3190
2319
  super(parent, invokingState);
3191
2320
  }
3192
- planStatement() {
3193
- return this.getRuleContext(0, PlanStatementContext);
3194
- }
3195
2321
  sendStatement() {
3196
2322
  return this.getRuleContext(0, SendStatementContext);
3197
2323
  }
2324
+ planStatement() {
2325
+ return this.getRuleContext(0, PlanStatementContext);
2326
+ }
3198
2327
  midStatement(i) {
3199
2328
  if (i === undefined) {
3200
2329
  return this.getRuleContexts(MidStatementContext);
@@ -3335,12 +2464,6 @@ export class StatementContext extends antlr.ParserRuleContext {
3335
2464
  moveStatement() {
3336
2465
  return this.getRuleContext(0, MoveStatementContext);
3337
2466
  }
3338
- openStatement() {
3339
- return this.getRuleContext(0, OpenStatementContext);
3340
- }
3341
- foldStatement() {
3342
- return this.getRuleContext(0, FoldStatementContext);
3343
- }
3344
2467
  sendStatement() {
3345
2468
  return this.getRuleContext(0, SendStatementContext);
3346
2469
  }
@@ -3396,12 +2519,6 @@ export class MidStatementContext extends antlr.ParserRuleContext {
3396
2519
  moveStatement() {
3397
2520
  return this.getRuleContext(0, MoveStatementContext);
3398
2521
  }
3399
- openStatement() {
3400
- return this.getRuleContext(0, OpenStatementContext);
3401
- }
3402
- foldStatement() {
3403
- return this.getRuleContext(0, FoldStatementContext);
3404
- }
3405
2522
  midSend() {
3406
2523
  return this.getRuleContext(0, MidSendContext);
3407
2524
  }
@@ -3442,8 +2559,8 @@ export class FindStatementContext extends antlr.ParserRuleContext {
3442
2559
  statementEnd() {
3443
2560
  return this.getRuleContext(0, StatementEndContext);
3444
2561
  }
3445
- tagOpModifiers() {
3446
- return this.getRuleContext(0, TagOpModifiersContext);
2562
+ slotModifiers() {
2563
+ return this.getRuleContext(0, SlotModifiersContext);
3447
2564
  }
3448
2565
  opAnnotation() {
3449
2566
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3470,8 +2587,8 @@ export class ReadStatementContext extends antlr.ParserRuleContext {
3470
2587
  statementEnd() {
3471
2588
  return this.getRuleContext(0, StatementEndContext);
3472
2589
  }
3473
- tagOpModifiers() {
3474
- return this.getRuleContext(0, TagOpModifiersContext);
2590
+ slotModifiers() {
2591
+ return this.getRuleContext(0, SlotModifiersContext);
3475
2592
  }
3476
2593
  opAnnotation() {
3477
2594
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3498,8 +2615,8 @@ export class EditStatementContext extends antlr.ParserRuleContext {
3498
2615
  statementEnd() {
3499
2616
  return this.getRuleContext(0, StatementEndContext);
3500
2617
  }
3501
- tagOpModifiers() {
3502
- return this.getRuleContext(0, TagOpModifiersContext);
2618
+ slotModifiers() {
2619
+ return this.getRuleContext(0, SlotModifiersContext);
3503
2620
  }
3504
2621
  opAnnotation() {
3505
2622
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3572,62 +2689,6 @@ export class MoveStatementContext extends antlr.ParserRuleContext {
3572
2689
  }
3573
2690
  }
3574
2691
  }
3575
- export class OpenStatementContext extends antlr.ParserRuleContext {
3576
- constructor(parent, invokingState) {
3577
- super(parent, invokingState);
3578
- }
3579
- OPEN_OPEN() {
3580
- return this.getToken(plurnkParser.OPEN_OPEN, 0);
3581
- }
3582
- statementEnd() {
3583
- return this.getRuleContext(0, StatementEndContext);
3584
- }
3585
- tagOpModifiers() {
3586
- return this.getRuleContext(0, TagOpModifiersContext);
3587
- }
3588
- opAnnotation() {
3589
- return this.getRuleContext(0, OpAnnotationContext);
3590
- }
3591
- get ruleIndex() {
3592
- return plurnkParser.RULE_openStatement;
3593
- }
3594
- accept(visitor) {
3595
- if (visitor.visitOpenStatement) {
3596
- return visitor.visitOpenStatement(this);
3597
- }
3598
- else {
3599
- return visitor.visitChildren(this);
3600
- }
3601
- }
3602
- }
3603
- export class FoldStatementContext extends antlr.ParserRuleContext {
3604
- constructor(parent, invokingState) {
3605
- super(parent, invokingState);
3606
- }
3607
- OPEN_FOLD() {
3608
- return this.getToken(plurnkParser.OPEN_FOLD, 0);
3609
- }
3610
- statementEnd() {
3611
- return this.getRuleContext(0, StatementEndContext);
3612
- }
3613
- tagOpModifiers() {
3614
- return this.getRuleContext(0, TagOpModifiersContext);
3615
- }
3616
- opAnnotation() {
3617
- return this.getRuleContext(0, OpAnnotationContext);
3618
- }
3619
- get ruleIndex() {
3620
- return plurnkParser.RULE_foldStatement;
3621
- }
3622
- accept(visitor) {
3623
- if (visitor.visitFoldStatement) {
3624
- return visitor.visitFoldStatement(this);
3625
- }
3626
- else {
3627
- return visitor.visitChildren(this);
3628
- }
3629
- }
3630
- }
3631
2692
  export class SendStatementContext extends antlr.ParserRuleContext {
3632
2693
  constructor(parent, invokingState) {
3633
2694
  super(parent, invokingState);
@@ -3635,12 +2696,15 @@ export class SendStatementContext extends antlr.ParserRuleContext {
3635
2696
  OPEN_SEND() {
3636
2697
  return this.getToken(plurnkParser.OPEN_SEND, 0);
3637
2698
  }
3638
- termModifiers() {
3639
- return this.getRuleContext(0, TermModifiersContext);
2699
+ SEND_LABEL() {
2700
+ return this.getToken(plurnkParser.SEND_LABEL, 0);
3640
2701
  }
3641
2702
  statementEnd() {
3642
2703
  return this.getRuleContext(0, StatementEndContext);
3643
2704
  }
2705
+ lineMarker() {
2706
+ return this.getRuleContext(0, LineMarkerContext);
2707
+ }
3644
2708
  opAnnotation() {
3645
2709
  return this.getRuleContext(0, OpAnnotationContext);
3646
2710
  }
@@ -3666,8 +2730,8 @@ export class MidSendContext extends antlr.ParserRuleContext {
3666
2730
  statementEnd() {
3667
2731
  return this.getRuleContext(0, StatementEndContext);
3668
2732
  }
3669
- midModifiers() {
3670
- return this.getRuleContext(0, MidModifiersContext);
2733
+ targetWithMetadata() {
2734
+ return this.getRuleContext(0, TargetWithMetadataContext);
3671
2735
  }
3672
2736
  opAnnotation() {
3673
2737
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3694,6 +2758,9 @@ export class ExecStatementContext extends antlr.ParserRuleContext {
3694
2758
  statementEnd() {
3695
2759
  return this.getRuleContext(0, StatementEndContext);
3696
2760
  }
2761
+ EXECUTOR() {
2762
+ return this.getToken(plurnkParser.EXECUTOR, 0);
2763
+ }
3697
2764
  execModifiers() {
3698
2765
  return this.getRuleContext(0, ExecModifiersContext);
3699
2766
  }
@@ -3722,9 +2789,6 @@ export class BareStatementContext extends antlr.ParserRuleContext {
3722
2789
  statementEnd() {
3723
2790
  return this.getRuleContext(0, StatementEndContext);
3724
2791
  }
3725
- tagSignal() {
3726
- return this.getRuleContext(0, TagSignalContext);
3727
- }
3728
2792
  opAnnotation() {
3729
2793
  return this.getRuleContext(0, OpAnnotationContext);
3730
2794
  }
@@ -3750,8 +2814,8 @@ export class WorkStatementContext extends antlr.ParserRuleContext {
3750
2814
  statementEnd() {
3751
2815
  return this.getRuleContext(0, StatementEndContext);
3752
2816
  }
3753
- branchModifiers() {
3754
- return this.getRuleContext(0, BranchModifiersContext);
2817
+ targetWithMetadata() {
2818
+ return this.getRuleContext(0, TargetWithMetadataContext);
3755
2819
  }
3756
2820
  opAnnotation() {
3757
2821
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3778,8 +2842,8 @@ export class ForkStatementContext extends antlr.ParserRuleContext {
3778
2842
  statementEnd() {
3779
2843
  return this.getRuleContext(0, StatementEndContext);
3780
2844
  }
3781
- branchModifiers() {
3782
- return this.getRuleContext(0, BranchModifiersContext);
2845
+ targetWithMetadata() {
2846
+ return this.getRuleContext(0, TargetWithMetadataContext);
3783
2847
  }
3784
2848
  opAnnotation() {
3785
2849
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3806,8 +2870,8 @@ export class KillStatementContext extends antlr.ParserRuleContext {
3806
2870
  statementEnd() {
3807
2871
  return this.getRuleContext(0, StatementEndContext);
3808
2872
  }
3809
- intOpModifiers() {
3810
- return this.getRuleContext(0, IntOpModifiersContext);
2873
+ slotModifiers() {
2874
+ return this.getRuleContext(0, SlotModifiersContext);
3811
2875
  }
3812
2876
  opAnnotation() {
3813
2877
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3834,8 +2898,8 @@ export class PlanStatementContext extends antlr.ParserRuleContext {
3834
2898
  statementEnd() {
3835
2899
  return this.getRuleContext(0, StatementEndContext);
3836
2900
  }
3837
- tagOpModifiers() {
3838
- return this.getRuleContext(0, TagOpModifiersContext);
2901
+ slotModifiers() {
2902
+ return this.getRuleContext(0, SlotModifiersContext);
3839
2903
  }
3840
2904
  opAnnotation() {
3841
2905
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3862,8 +2926,8 @@ export class LookStatementContext extends antlr.ParserRuleContext {
3862
2926
  statementEnd() {
3863
2927
  return this.getRuleContext(0, StatementEndContext);
3864
2928
  }
3865
- tagOpModifiers() {
3866
- return this.getRuleContext(0, TagOpModifiersContext);
2929
+ slotModifiers() {
2930
+ return this.getRuleContext(0, SlotModifiersContext);
3867
2931
  }
3868
2932
  opAnnotation() {
3869
2933
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3890,8 +2954,8 @@ export class BuffStatementContext extends antlr.ParserRuleContext {
3890
2954
  statementEnd() {
3891
2955
  return this.getRuleContext(0, StatementEndContext);
3892
2956
  }
3893
- tagOpModifiers() {
3894
- return this.getRuleContext(0, TagOpModifiersContext);
2957
+ slotModifiers() {
2958
+ return this.getRuleContext(0, SlotModifiersContext);
3895
2959
  }
3896
2960
  opAnnotation() {
3897
2961
  return this.getRuleContext(0, OpAnnotationContext);
@@ -3956,9 +3020,6 @@ export class TransferModifiersContext extends antlr.ParserRuleContext {
3956
3020
  constructor(parent, invokingState) {
3957
3021
  super(parent, invokingState);
3958
3022
  }
3959
- tagSignal() {
3960
- return this.getRuleContext(0, TagSignalContext);
3961
- }
3962
3023
  resourceSelection(i) {
3963
3024
  if (i === undefined) {
3964
3025
  return this.getRuleContexts(ResourceSelectionContext);
@@ -4021,82 +3082,10 @@ export class EmptyStatementEndContext extends antlr.ParserRuleContext {
4021
3082
  }
4022
3083
  }
4023
3084
  }
4024
- export class TagOpModifiersContext extends antlr.ParserRuleContext {
4025
- constructor(parent, invokingState) {
4026
- super(parent, invokingState);
4027
- }
4028
- tagSignal() {
4029
- return this.getRuleContext(0, TagSignalContext);
4030
- }
4031
- targetWithMetadata() {
4032
- return this.getRuleContext(0, TargetWithMetadataContext);
4033
- }
4034
- lineMarker() {
4035
- return this.getRuleContext(0, LineMarkerContext);
4036
- }
4037
- get ruleIndex() {
4038
- return plurnkParser.RULE_tagOpModifiers;
4039
- }
4040
- accept(visitor) {
4041
- if (visitor.visitTagOpModifiers) {
4042
- return visitor.visitTagOpModifiers(this);
4043
- }
4044
- else {
4045
- return visitor.visitChildren(this);
4046
- }
4047
- }
4048
- }
4049
- export class IntOpModifiersContext extends antlr.ParserRuleContext {
4050
- constructor(parent, invokingState) {
4051
- super(parent, invokingState);
4052
- }
4053
- intSignal() {
4054
- return this.getRuleContext(0, IntSignalContext);
4055
- }
4056
- targetWithMetadata() {
4057
- return this.getRuleContext(0, TargetWithMetadataContext);
4058
- }
4059
- get ruleIndex() {
4060
- return plurnkParser.RULE_intOpModifiers;
4061
- }
4062
- accept(visitor) {
4063
- if (visitor.visitIntOpModifiers) {
4064
- return visitor.visitIntOpModifiers(this);
4065
- }
4066
- else {
4067
- return visitor.visitChildren(this);
4068
- }
4069
- }
4070
- }
4071
- export class BranchModifiersContext extends antlr.ParserRuleContext {
4072
- constructor(parent, invokingState) {
4073
- super(parent, invokingState);
4074
- }
4075
- branchSignal() {
4076
- return this.getRuleContext(0, BranchSignalContext);
4077
- }
4078
- targetWithMetadata() {
4079
- return this.getRuleContext(0, TargetWithMetadataContext);
4080
- }
4081
- get ruleIndex() {
4082
- return plurnkParser.RULE_branchModifiers;
4083
- }
4084
- accept(visitor) {
4085
- if (visitor.visitBranchModifiers) {
4086
- return visitor.visitBranchModifiers(this);
4087
- }
4088
- else {
4089
- return visitor.visitChildren(this);
4090
- }
4091
- }
4092
- }
4093
- export class TermModifiersContext extends antlr.ParserRuleContext {
3085
+ export class SlotModifiersContext extends antlr.ParserRuleContext {
4094
3086
  constructor(parent, invokingState) {
4095
3087
  super(parent, invokingState);
4096
3088
  }
4097
- dispSignal() {
4098
- return this.getRuleContext(0, DispSignalContext);
4099
- }
4100
3089
  targetWithMetadata() {
4101
3090
  return this.getRuleContext(0, TargetWithMetadataContext);
4102
3091
  }
@@ -4104,33 +3093,11 @@ export class TermModifiersContext extends antlr.ParserRuleContext {
4104
3093
  return this.getRuleContext(0, LineMarkerContext);
4105
3094
  }
4106
3095
  get ruleIndex() {
4107
- return plurnkParser.RULE_termModifiers;
4108
- }
4109
- accept(visitor) {
4110
- if (visitor.visitTermModifiers) {
4111
- return visitor.visitTermModifiers(this);
4112
- }
4113
- else {
4114
- return visitor.visitChildren(this);
4115
- }
4116
- }
4117
- }
4118
- export class MidModifiersContext extends antlr.ParserRuleContext {
4119
- constructor(parent, invokingState) {
4120
- super(parent, invokingState);
4121
- }
4122
- midSignal() {
4123
- return this.getRuleContext(0, MidSignalContext);
4124
- }
4125
- targetWithMetadata() {
4126
- return this.getRuleContext(0, TargetWithMetadataContext);
4127
- }
4128
- get ruleIndex() {
4129
- return plurnkParser.RULE_midModifiers;
3096
+ return plurnkParser.RULE_slotModifiers;
4130
3097
  }
4131
3098
  accept(visitor) {
4132
- if (visitor.visitMidModifiers) {
4133
- return visitor.visitMidModifiers(this);
3099
+ if (visitor.visitSlotModifiers) {
3100
+ return visitor.visitSlotModifiers(this);
4134
3101
  }
4135
3102
  else {
4136
3103
  return visitor.visitChildren(this);
@@ -4163,15 +3130,12 @@ export class ExecSlotContext extends antlr.ParserRuleContext {
4163
3130
  constructor(parent, invokingState) {
4164
3131
  super(parent, invokingState);
4165
3132
  }
4166
- identSignal() {
4167
- return this.getRuleContext(0, IdentSignalContext);
4168
- }
4169
- tagSignal() {
4170
- return this.getRuleContext(0, TagSignalContext);
4171
- }
4172
3133
  targetWithMetadata() {
4173
3134
  return this.getRuleContext(0, TargetWithMetadataContext);
4174
3135
  }
3136
+ metadata() {
3137
+ return this.getRuleContext(0, MetadataContext);
3138
+ }
4175
3139
  lineMarker() {
4176
3140
  return this.getRuleContext(0, LineMarkerContext);
4177
3141
  }
@@ -4187,172 +3151,6 @@ export class ExecSlotContext extends antlr.ParserRuleContext {
4187
3151
  }
4188
3152
  }
4189
3153
  }
4190
- export class TagSignalContext extends antlr.ParserRuleContext {
4191
- constructor(parent, invokingState) {
4192
- super(parent, invokingState);
4193
- }
4194
- LBRACKET() {
4195
- return this.getToken(plurnkParser.LBRACKET, 0);
4196
- }
4197
- RBRACKET() {
4198
- return this.getToken(plurnkParser.RBRACKET, 0);
4199
- }
4200
- TAG(i) {
4201
- if (i === undefined) {
4202
- return this.getTokens(plurnkParser.TAG);
4203
- }
4204
- else {
4205
- return this.getToken(plurnkParser.TAG, i);
4206
- }
4207
- }
4208
- COMMA(i) {
4209
- if (i === undefined) {
4210
- return this.getTokens(plurnkParser.COMMA);
4211
- }
4212
- else {
4213
- return this.getToken(plurnkParser.COMMA, i);
4214
- }
4215
- }
4216
- get ruleIndex() {
4217
- return plurnkParser.RULE_tagSignal;
4218
- }
4219
- accept(visitor) {
4220
- if (visitor.visitTagSignal) {
4221
- return visitor.visitTagSignal(this);
4222
- }
4223
- else {
4224
- return visitor.visitChildren(this);
4225
- }
4226
- }
4227
- }
4228
- export class BranchSignalContext extends antlr.ParserRuleContext {
4229
- constructor(parent, invokingState) {
4230
- super(parent, invokingState);
4231
- }
4232
- LBRACKET() {
4233
- return this.getToken(plurnkParser.LBRACKET, 0);
4234
- }
4235
- TAG() {
4236
- return this.getToken(plurnkParser.TAG, 0);
4237
- }
4238
- RBRACKET() {
4239
- return this.getToken(plurnkParser.RBRACKET, 0);
4240
- }
4241
- get ruleIndex() {
4242
- return plurnkParser.RULE_branchSignal;
4243
- }
4244
- accept(visitor) {
4245
- if (visitor.visitBranchSignal) {
4246
- return visitor.visitBranchSignal(this);
4247
- }
4248
- else {
4249
- return visitor.visitChildren(this);
4250
- }
4251
- }
4252
- }
4253
- export class IntSignalContext extends antlr.ParserRuleContext {
4254
- constructor(parent, invokingState) {
4255
- super(parent, invokingState);
4256
- }
4257
- LBRACKET() {
4258
- return this.getToken(plurnkParser.LBRACKET, 0);
4259
- }
4260
- RBRACKET() {
4261
- return this.getToken(plurnkParser.RBRACKET, 0);
4262
- }
4263
- INT() {
4264
- return this.getToken(plurnkParser.INT, 0);
4265
- }
4266
- DISPOSITION() {
4267
- return this.getToken(plurnkParser.DISPOSITION, 0);
4268
- }
4269
- get ruleIndex() {
4270
- return plurnkParser.RULE_intSignal;
4271
- }
4272
- accept(visitor) {
4273
- if (visitor.visitIntSignal) {
4274
- return visitor.visitIntSignal(this);
4275
- }
4276
- else {
4277
- return visitor.visitChildren(this);
4278
- }
4279
- }
4280
- }
4281
- export class MidSignalContext extends antlr.ParserRuleContext {
4282
- constructor(parent, invokingState) {
4283
- super(parent, invokingState);
4284
- }
4285
- LBRACKET() {
4286
- return this.getToken(plurnkParser.LBRACKET, 0);
4287
- }
4288
- RBRACKET() {
4289
- return this.getToken(plurnkParser.RBRACKET, 0);
4290
- }
4291
- INT() {
4292
- return this.getToken(plurnkParser.INT, 0);
4293
- }
4294
- get ruleIndex() {
4295
- return plurnkParser.RULE_midSignal;
4296
- }
4297
- accept(visitor) {
4298
- if (visitor.visitMidSignal) {
4299
- return visitor.visitMidSignal(this);
4300
- }
4301
- else {
4302
- return visitor.visitChildren(this);
4303
- }
4304
- }
4305
- }
4306
- export class DispSignalContext extends antlr.ParserRuleContext {
4307
- constructor(parent, invokingState) {
4308
- super(parent, invokingState);
4309
- }
4310
- LBRACKET() {
4311
- return this.getToken(plurnkParser.LBRACKET, 0);
4312
- }
4313
- DISPOSITION() {
4314
- return this.getToken(plurnkParser.DISPOSITION, 0);
4315
- }
4316
- RBRACKET() {
4317
- return this.getToken(plurnkParser.RBRACKET, 0);
4318
- }
4319
- get ruleIndex() {
4320
- return plurnkParser.RULE_dispSignal;
4321
- }
4322
- accept(visitor) {
4323
- if (visitor.visitDispSignal) {
4324
- return visitor.visitDispSignal(this);
4325
- }
4326
- else {
4327
- return visitor.visitChildren(this);
4328
- }
4329
- }
4330
- }
4331
- export class IdentSignalContext extends antlr.ParserRuleContext {
4332
- constructor(parent, invokingState) {
4333
- super(parent, invokingState);
4334
- }
4335
- LBRACKET() {
4336
- return this.getToken(plurnkParser.LBRACKET, 0);
4337
- }
4338
- RBRACKET() {
4339
- return this.getToken(plurnkParser.RBRACKET, 0);
4340
- }
4341
- IDENT() {
4342
- return this.getToken(plurnkParser.IDENT, 0);
4343
- }
4344
- get ruleIndex() {
4345
- return plurnkParser.RULE_identSignal;
4346
- }
4347
- accept(visitor) {
4348
- if (visitor.visitIdentSignal) {
4349
- return visitor.visitIdentSignal(this);
4350
- }
4351
- else {
4352
- return visitor.visitChildren(this);
4353
- }
4354
- }
4355
- }
4356
3154
  export class TargetContext extends antlr.ParserRuleContext {
4357
3155
  constructor(parent, invokingState) {
4358
3156
  super(parent, invokingState);