@plurnk/plurnk-contracts 1.7.0 → 1.8.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 (48) hide show
  1. package/SPEC.md +106 -53
  2. package/dist/plurnk.gemma.gbnf +26 -22
  3. package/dist/plurnk.qwen.gbnf +26 -22
  4. package/dist/schema/ClientStatement.json +9 -4
  5. package/dist/schema/McpConfigurationOverlay.json +25 -0
  6. package/dist/schema/McpServerDefinition.json +2 -1
  7. package/dist/schema/McpServerOptions.json +36 -0
  8. package/dist/schema/ModelCatalogPage.json +122 -0
  9. package/dist/schema/ModelCatalogQuery.json +32 -0
  10. package/dist/schema/ModelReadiness.json +47 -0
  11. package/dist/schema/ModelRoute.json +23 -0
  12. package/dist/schema/PlurnkStatement.json +48 -31
  13. package/dist/schema/ReasoningPolicy.json +7 -0
  14. package/dist/src/AstBuilder.d.ts.map +1 -1
  15. package/dist/src/AstBuilder.js +42 -21
  16. package/dist/src/AstBuilder.js.map +1 -1
  17. package/dist/src/PlurnkErrorStrategy.js +16 -16
  18. package/dist/src/PlurnkErrorStrategy.js.map +1 -1
  19. package/dist/src/PlurnkParser.js +3 -3
  20. package/dist/src/PlurnkParser.js.map +1 -1
  21. package/dist/src/Validator.d.ts +29 -1
  22. package/dist/src/Validator.d.ts.map +1 -1
  23. package/dist/src/Validator.js +137 -0
  24. package/dist/src/Validator.js.map +1 -1
  25. package/dist/src/generated/plurnkLexer.d.ts +30 -28
  26. package/dist/src/generated/plurnkLexer.d.ts.map +1 -1
  27. package/dist/src/generated/plurnkLexer.js +398 -381
  28. package/dist/src/generated/plurnkLexer.js.map +1 -1
  29. package/dist/src/generated/plurnkParser.d.ts +56 -39
  30. package/dist/src/generated/plurnkParser.d.ts.map +1 -1
  31. package/dist/src/generated/plurnkParser.js +644 -450
  32. package/dist/src/generated/plurnkParser.js.map +1 -1
  33. package/dist/src/generated/plurnkParserVisitor.d.ts +7 -7
  34. package/dist/src/generated/plurnkParserVisitor.d.ts.map +1 -1
  35. package/dist/src/generated/plurnkParserVisitor.js +6 -6
  36. package/dist/src/generated/plurnkParserVisitor.js.map +1 -1
  37. package/dist/src/index.d.ts +2 -2
  38. package/dist/src/index.d.ts.map +1 -1
  39. package/dist/src/index.js +2 -2
  40. package/dist/src/index.js.map +1 -1
  41. package/dist/src/types.d.ts +2 -1
  42. package/dist/src/types.d.ts.map +1 -1
  43. package/dist/src/types.generated.d.ts +145 -19
  44. package/dist/src/types.generated.d.ts.map +1 -1
  45. package/dist/src/types.js +4 -0
  46. package/dist/src/types.js.map +1 -1
  47. package/package.json +2 -3
  48. package/plurnk.md +91 -110
@@ -16,32 +16,33 @@ export class plurnkParser extends antlr.Parser {
16
16
  static TARGET_TEXT = 14;
17
17
  static BODY_TEXT = 15;
18
18
  static TEXT = 16;
19
- static OPEN_PLAN = 17;
20
- static OPEN_FIND = 18;
21
- static OPEN_READ = 19;
22
- static OPEN_EDIT = 20;
23
- static OPEN_COPY = 21;
24
- static OPEN_MOVE = 22;
25
- static OPEN_OPEN = 23;
26
- static OPEN_FOLD = 24;
27
- static OPEN_SEND = 25;
28
- static OPEN_EXEC = 26;
29
- static OPEN_BARE = 27;
30
- static OPEN_WORK = 28;
31
- static OPEN_FORK = 29;
32
- static OPEN_KILL = 30;
33
- static OPEN_LOOK = 31;
34
- static OPEN_BUFF = 32;
35
- static FENCE_OPEN = 33;
36
- static FENCE_CLOSE = 34;
37
- static WS = 35;
38
- static SLOTS_WS = 36;
39
- static ST_WS = 37;
40
- static SI_WS = 38;
41
- static SD_WS = 39;
42
- static TEXT_HASH = 40;
43
- static ST_COMMA = 41;
44
- static TARGET_BACKSLASH = 42;
19
+ static ANNOTATION = 17;
20
+ static OPEN_PLAN = 18;
21
+ static OPEN_FIND = 19;
22
+ static OPEN_READ = 20;
23
+ static OPEN_EDIT = 21;
24
+ static OPEN_COPY = 22;
25
+ static OPEN_MOVE = 23;
26
+ static OPEN_OPEN = 24;
27
+ static OPEN_FOLD = 25;
28
+ static OPEN_SEND = 26;
29
+ static OPEN_EXEC = 27;
30
+ static OPEN_BARE = 28;
31
+ static OPEN_WORK = 29;
32
+ static OPEN_FORK = 30;
33
+ static OPEN_KILL = 31;
34
+ static OPEN_LOOK = 32;
35
+ static OPEN_BUFF = 33;
36
+ static FENCE_OPEN = 34;
37
+ static FENCE_CLOSE = 35;
38
+ static WS = 36;
39
+ static SLOTS_WS = 37;
40
+ static ST_WS = 38;
41
+ static SI_WS = 39;
42
+ static SD_WS = 40;
43
+ static TEXT_HASH = 41;
44
+ static ST_COMMA = 42;
45
+ static TARGET_BACKSLASH = 43;
45
46
  static RULE_document = 0;
46
47
  static RULE_log = 1;
47
48
  static RULE_turnContent = 2;
@@ -68,9 +69,9 @@ export class plurnkParser extends antlr.Parser {
68
69
  static RULE_planStatement = 23;
69
70
  static RULE_lookStatement = 24;
70
71
  static RULE_buffStatement = 25;
71
- static RULE_statementEnd = 26;
72
- static RULE_tagOpModifiers = 27;
73
- static RULE_curationModifiers = 28;
72
+ static RULE_opAnnotation = 26;
73
+ static RULE_statementEnd = 27;
74
+ static RULE_tagOpModifiers = 28;
74
75
  static RULE_intOpModifiers = 29;
75
76
  static RULE_branchModifiers = 30;
76
77
  static RULE_termModifiers = 31;
@@ -89,17 +90,17 @@ export class plurnkParser extends antlr.Parser {
89
90
  null, null, null, null, null, null, null, null, null, null, null,
90
91
  null, null, null, null, null, null, null, null, null, null, null,
91
92
  null, null, null, null, null, null, null, null, null, null, null,
92
- null, null, null, null, null, null, null, "'#'", "','", "'\\'"
93
+ null, null, null, null, null, null, null, null, "'#'", "','", "'\\'"
93
94
  ];
94
95
  static symbolicNames = [
95
96
  null, "LBRACKET", "RBRACKET", "LPAREN", "RPAREN", "L_MARKER", "COMBINED_L_MARKER",
96
97
  "BODY_OPEN", "SECTION_END", "COMMA", "INT", "DISPOSITION", "IDENT",
97
- "TAG", "TARGET_TEXT", "BODY_TEXT", "TEXT", "OPEN_PLAN", "OPEN_FIND",
98
- "OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE", "OPEN_OPEN",
99
- "OPEN_FOLD", "OPEN_SEND", "OPEN_EXEC", "OPEN_BARE", "OPEN_WORK",
100
- "OPEN_FORK", "OPEN_KILL", "OPEN_LOOK", "OPEN_BUFF", "FENCE_OPEN",
101
- "FENCE_CLOSE", "WS", "SLOTS_WS", "ST_WS", "SI_WS", "SD_WS", "TEXT_HASH",
102
- "ST_COMMA", "TARGET_BACKSLASH"
98
+ "TAG", "TARGET_TEXT", "BODY_TEXT", "TEXT", "ANNOTATION", "OPEN_PLAN",
99
+ "OPEN_FIND", "OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE",
100
+ "OPEN_OPEN", "OPEN_FOLD", "OPEN_SEND", "OPEN_EXEC", "OPEN_BARE",
101
+ "OPEN_WORK", "OPEN_FORK", "OPEN_KILL", "OPEN_LOOK", "OPEN_BUFF",
102
+ "FENCE_OPEN", "FENCE_CLOSE", "WS", "SLOTS_WS", "ST_WS", "SI_WS",
103
+ "SD_WS", "TEXT_HASH", "ST_COMMA", "TARGET_BACKSLASH"
103
104
  ];
104
105
  static ruleNames = [
105
106
  "document", "log", "turnContent", "turn", "statementSeq", "clientStatementSeq",
@@ -107,8 +108,8 @@ export class plurnkParser extends antlr.Parser {
107
108
  "readStatement", "editStatement", "copyStatement", "moveStatement",
108
109
  "openStatement", "foldStatement", "sendStatement", "midSend", "execStatement",
109
110
  "bareStatement", "workStatement", "forkStatement", "killStatement",
110
- "planStatement", "lookStatement", "buffStatement", "statementEnd",
111
- "tagOpModifiers", "curationModifiers", "intOpModifiers", "branchModifiers",
111
+ "planStatement", "lookStatement", "buffStatement", "opAnnotation",
112
+ "statementEnd", "tagOpModifiers", "intOpModifiers", "branchModifiers",
112
113
  "termModifiers", "midModifiers", "execModifiers", "tagSignal", "branchSignal",
113
114
  "intSignal", "midSignal", "dispSignal", "identSignal", "target",
114
115
  "lineMarker", "body",
@@ -153,7 +154,7 @@ export class plurnkParser extends antlr.Parser {
153
154
  this.state = 92;
154
155
  this.errorHandler.sync(this);
155
156
  _la = this.tokenStream.LA(1);
156
- if (_la === 34) {
157
+ if (_la === 35) {
157
158
  {
158
159
  this.state = 91;
159
160
  this.match(plurnkParser.FENCE_CLOSE);
@@ -201,7 +202,7 @@ export class plurnkParser extends antlr.Parser {
201
202
  this.state = 101;
202
203
  this.errorHandler.sync(this);
203
204
  _la = this.tokenStream.LA(1);
204
- } while (_la === 16 || _la === 17);
205
+ } while (_la === 16 || _la === 18);
205
206
  this.state = 103;
206
207
  this.match(plurnkParser.EOF);
207
208
  }
@@ -312,7 +313,7 @@ export class plurnkParser extends antlr.Parser {
312
313
  this.state = 125;
313
314
  this.errorHandler.sync(this);
314
315
  _la = this.tokenStream.LA(1);
315
- while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 2147352576) !== 0)) {
316
+ while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294705152) !== 0)) {
316
317
  {
317
318
  {
318
319
  this.state = 122;
@@ -351,7 +352,7 @@ export class plurnkParser extends antlr.Parser {
351
352
  this.state = 133;
352
353
  this.errorHandler.sync(this);
353
354
  _la = this.tokenStream.LA(1);
354
- while (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 65535) !== 0)) {
355
+ while (((((_la - 18)) & ~0x1F) === 0 && ((1 << (_la - 18)) & 65535) !== 0)) {
355
356
  {
356
357
  {
357
358
  this.state = 130;
@@ -701,7 +702,16 @@ export class plurnkParser extends antlr.Parser {
701
702
  this.tagOpModifiers();
702
703
  }
703
704
  }
704
- this.state = 179;
705
+ this.state = 180;
706
+ this.errorHandler.sync(this);
707
+ _la = this.tokenStream.LA(1);
708
+ if (_la === 17) {
709
+ {
710
+ this.state = 179;
711
+ this.opAnnotation();
712
+ }
713
+ }
714
+ this.state = 182;
705
715
  this.statementEnd();
706
716
  }
707
717
  }
@@ -726,18 +736,27 @@ export class plurnkParser extends antlr.Parser {
726
736
  try {
727
737
  this.enterOuterAlt(localContext, 1);
728
738
  {
729
- this.state = 181;
739
+ this.state = 184;
730
740
  this.match(plurnkParser.OPEN_READ);
731
- this.state = 183;
741
+ this.state = 186;
732
742
  this.errorHandler.sync(this);
733
743
  _la = this.tokenStream.LA(1);
734
744
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
735
745
  {
736
- this.state = 182;
746
+ this.state = 185;
737
747
  this.tagOpModifiers();
738
748
  }
739
749
  }
740
- this.state = 185;
750
+ this.state = 189;
751
+ this.errorHandler.sync(this);
752
+ _la = this.tokenStream.LA(1);
753
+ if (_la === 17) {
754
+ {
755
+ this.state = 188;
756
+ this.opAnnotation();
757
+ }
758
+ }
759
+ this.state = 191;
741
760
  this.statementEnd();
742
761
  }
743
762
  }
@@ -762,18 +781,27 @@ export class plurnkParser extends antlr.Parser {
762
781
  try {
763
782
  this.enterOuterAlt(localContext, 1);
764
783
  {
765
- this.state = 187;
784
+ this.state = 193;
766
785
  this.match(plurnkParser.OPEN_EDIT);
767
- this.state = 189;
786
+ this.state = 195;
768
787
  this.errorHandler.sync(this);
769
788
  _la = this.tokenStream.LA(1);
770
789
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
771
790
  {
772
- this.state = 188;
791
+ this.state = 194;
773
792
  this.tagOpModifiers();
774
793
  }
775
794
  }
776
- this.state = 191;
795
+ this.state = 198;
796
+ this.errorHandler.sync(this);
797
+ _la = this.tokenStream.LA(1);
798
+ if (_la === 17) {
799
+ {
800
+ this.state = 197;
801
+ this.opAnnotation();
802
+ }
803
+ }
804
+ this.state = 200;
777
805
  this.statementEnd();
778
806
  }
779
807
  }
@@ -798,18 +826,27 @@ export class plurnkParser extends antlr.Parser {
798
826
  try {
799
827
  this.enterOuterAlt(localContext, 1);
800
828
  {
801
- this.state = 193;
829
+ this.state = 202;
802
830
  this.match(plurnkParser.OPEN_COPY);
803
- this.state = 195;
831
+ this.state = 204;
804
832
  this.errorHandler.sync(this);
805
833
  _la = this.tokenStream.LA(1);
806
834
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
807
835
  {
808
- this.state = 194;
836
+ this.state = 203;
809
837
  this.tagOpModifiers();
810
838
  }
811
839
  }
812
- this.state = 197;
840
+ this.state = 207;
841
+ this.errorHandler.sync(this);
842
+ _la = this.tokenStream.LA(1);
843
+ if (_la === 17) {
844
+ {
845
+ this.state = 206;
846
+ this.opAnnotation();
847
+ }
848
+ }
849
+ this.state = 209;
813
850
  this.statementEnd();
814
851
  }
815
852
  }
@@ -834,18 +871,27 @@ export class plurnkParser extends antlr.Parser {
834
871
  try {
835
872
  this.enterOuterAlt(localContext, 1);
836
873
  {
837
- this.state = 199;
874
+ this.state = 211;
838
875
  this.match(plurnkParser.OPEN_MOVE);
839
- this.state = 201;
876
+ this.state = 213;
840
877
  this.errorHandler.sync(this);
841
878
  _la = this.tokenStream.LA(1);
842
879
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
843
880
  {
844
- this.state = 200;
881
+ this.state = 212;
845
882
  this.tagOpModifiers();
846
883
  }
847
884
  }
848
- this.state = 203;
885
+ this.state = 216;
886
+ this.errorHandler.sync(this);
887
+ _la = this.tokenStream.LA(1);
888
+ if (_la === 17) {
889
+ {
890
+ this.state = 215;
891
+ this.opAnnotation();
892
+ }
893
+ }
894
+ this.state = 218;
849
895
  this.statementEnd();
850
896
  }
851
897
  }
@@ -870,18 +916,27 @@ export class plurnkParser extends antlr.Parser {
870
916
  try {
871
917
  this.enterOuterAlt(localContext, 1);
872
918
  {
873
- this.state = 205;
919
+ this.state = 220;
874
920
  this.match(plurnkParser.OPEN_OPEN);
875
- this.state = 207;
921
+ this.state = 222;
876
922
  this.errorHandler.sync(this);
877
923
  _la = this.tokenStream.LA(1);
878
- if (_la === 1 || _la === 3) {
924
+ if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
879
925
  {
880
- this.state = 206;
881
- this.curationModifiers();
926
+ this.state = 221;
927
+ this.tagOpModifiers();
882
928
  }
883
929
  }
884
- this.state = 209;
930
+ this.state = 225;
931
+ this.errorHandler.sync(this);
932
+ _la = this.tokenStream.LA(1);
933
+ if (_la === 17) {
934
+ {
935
+ this.state = 224;
936
+ this.opAnnotation();
937
+ }
938
+ }
939
+ this.state = 227;
885
940
  this.statementEnd();
886
941
  }
887
942
  }
@@ -906,18 +961,27 @@ export class plurnkParser extends antlr.Parser {
906
961
  try {
907
962
  this.enterOuterAlt(localContext, 1);
908
963
  {
909
- this.state = 211;
964
+ this.state = 229;
910
965
  this.match(plurnkParser.OPEN_FOLD);
911
- this.state = 213;
966
+ this.state = 231;
912
967
  this.errorHandler.sync(this);
913
968
  _la = this.tokenStream.LA(1);
914
- if (_la === 1 || _la === 3) {
969
+ if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
915
970
  {
916
- this.state = 212;
917
- this.curationModifiers();
971
+ this.state = 230;
972
+ this.tagOpModifiers();
918
973
  }
919
974
  }
920
- this.state = 215;
975
+ this.state = 234;
976
+ this.errorHandler.sync(this);
977
+ _la = this.tokenStream.LA(1);
978
+ if (_la === 17) {
979
+ {
980
+ this.state = 233;
981
+ this.opAnnotation();
982
+ }
983
+ }
984
+ this.state = 236;
921
985
  this.statementEnd();
922
986
  }
923
987
  }
@@ -938,14 +1002,24 @@ export class plurnkParser extends antlr.Parser {
938
1002
  sendStatement() {
939
1003
  let localContext = new SendStatementContext(this.context, this.state);
940
1004
  this.enterRule(localContext, 32, plurnkParser.RULE_sendStatement);
1005
+ let _la;
941
1006
  try {
942
1007
  this.enterOuterAlt(localContext, 1);
943
1008
  {
944
- this.state = 217;
1009
+ this.state = 238;
945
1010
  this.match(plurnkParser.OPEN_SEND);
946
- this.state = 218;
1011
+ this.state = 239;
947
1012
  this.termModifiers();
948
- this.state = 219;
1013
+ this.state = 241;
1014
+ this.errorHandler.sync(this);
1015
+ _la = this.tokenStream.LA(1);
1016
+ if (_la === 17) {
1017
+ {
1018
+ this.state = 240;
1019
+ this.opAnnotation();
1020
+ }
1021
+ }
1022
+ this.state = 243;
949
1023
  this.statementEnd();
950
1024
  }
951
1025
  }
@@ -970,18 +1044,27 @@ export class plurnkParser extends antlr.Parser {
970
1044
  try {
971
1045
  this.enterOuterAlt(localContext, 1);
972
1046
  {
973
- this.state = 221;
1047
+ this.state = 245;
974
1048
  this.match(plurnkParser.OPEN_SEND);
975
- this.state = 223;
1049
+ this.state = 247;
976
1050
  this.errorHandler.sync(this);
977
1051
  _la = this.tokenStream.LA(1);
978
1052
  if (_la === 1 || _la === 3) {
979
1053
  {
980
- this.state = 222;
1054
+ this.state = 246;
981
1055
  this.midModifiers();
982
1056
  }
983
1057
  }
984
- this.state = 225;
1058
+ this.state = 250;
1059
+ this.errorHandler.sync(this);
1060
+ _la = this.tokenStream.LA(1);
1061
+ if (_la === 17) {
1062
+ {
1063
+ this.state = 249;
1064
+ this.opAnnotation();
1065
+ }
1066
+ }
1067
+ this.state = 252;
985
1068
  this.statementEnd();
986
1069
  }
987
1070
  }
@@ -1006,18 +1089,27 @@ export class plurnkParser extends antlr.Parser {
1006
1089
  try {
1007
1090
  this.enterOuterAlt(localContext, 1);
1008
1091
  {
1009
- this.state = 227;
1092
+ this.state = 254;
1010
1093
  this.match(plurnkParser.OPEN_EXEC);
1011
- this.state = 229;
1094
+ this.state = 256;
1012
1095
  this.errorHandler.sync(this);
1013
1096
  _la = this.tokenStream.LA(1);
1014
1097
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
1015
1098
  {
1016
- this.state = 228;
1099
+ this.state = 255;
1017
1100
  this.execModifiers();
1018
1101
  }
1019
1102
  }
1020
- this.state = 231;
1103
+ this.state = 259;
1104
+ this.errorHandler.sync(this);
1105
+ _la = this.tokenStream.LA(1);
1106
+ if (_la === 17) {
1107
+ {
1108
+ this.state = 258;
1109
+ this.opAnnotation();
1110
+ }
1111
+ }
1112
+ this.state = 261;
1021
1113
  this.statementEnd();
1022
1114
  }
1023
1115
  }
@@ -1042,18 +1134,27 @@ export class plurnkParser extends antlr.Parser {
1042
1134
  try {
1043
1135
  this.enterOuterAlt(localContext, 1);
1044
1136
  {
1045
- this.state = 233;
1137
+ this.state = 263;
1046
1138
  this.match(plurnkParser.OPEN_BARE);
1047
- this.state = 235;
1139
+ this.state = 265;
1048
1140
  this.errorHandler.sync(this);
1049
1141
  _la = this.tokenStream.LA(1);
1050
1142
  if (_la === 1) {
1051
1143
  {
1052
- this.state = 234;
1144
+ this.state = 264;
1053
1145
  this.tagSignal();
1054
1146
  }
1055
1147
  }
1056
- this.state = 237;
1148
+ this.state = 268;
1149
+ this.errorHandler.sync(this);
1150
+ _la = this.tokenStream.LA(1);
1151
+ if (_la === 17) {
1152
+ {
1153
+ this.state = 267;
1154
+ this.opAnnotation();
1155
+ }
1156
+ }
1157
+ this.state = 270;
1057
1158
  this.statementEnd();
1058
1159
  }
1059
1160
  }
@@ -1078,18 +1179,27 @@ export class plurnkParser extends antlr.Parser {
1078
1179
  try {
1079
1180
  this.enterOuterAlt(localContext, 1);
1080
1181
  {
1081
- this.state = 239;
1182
+ this.state = 272;
1082
1183
  this.match(plurnkParser.OPEN_WORK);
1083
- this.state = 241;
1184
+ this.state = 274;
1084
1185
  this.errorHandler.sync(this);
1085
1186
  _la = this.tokenStream.LA(1);
1086
1187
  if (_la === 1 || _la === 3) {
1087
1188
  {
1088
- this.state = 240;
1189
+ this.state = 273;
1089
1190
  this.branchModifiers();
1090
1191
  }
1091
1192
  }
1092
- this.state = 243;
1193
+ this.state = 277;
1194
+ this.errorHandler.sync(this);
1195
+ _la = this.tokenStream.LA(1);
1196
+ if (_la === 17) {
1197
+ {
1198
+ this.state = 276;
1199
+ this.opAnnotation();
1200
+ }
1201
+ }
1202
+ this.state = 279;
1093
1203
  this.statementEnd();
1094
1204
  }
1095
1205
  }
@@ -1114,18 +1224,27 @@ export class plurnkParser extends antlr.Parser {
1114
1224
  try {
1115
1225
  this.enterOuterAlt(localContext, 1);
1116
1226
  {
1117
- this.state = 245;
1227
+ this.state = 281;
1118
1228
  this.match(plurnkParser.OPEN_FORK);
1119
- this.state = 247;
1229
+ this.state = 283;
1120
1230
  this.errorHandler.sync(this);
1121
1231
  _la = this.tokenStream.LA(1);
1122
1232
  if (_la === 1 || _la === 3) {
1123
1233
  {
1124
- this.state = 246;
1234
+ this.state = 282;
1125
1235
  this.branchModifiers();
1126
1236
  }
1127
1237
  }
1128
- this.state = 249;
1238
+ this.state = 286;
1239
+ this.errorHandler.sync(this);
1240
+ _la = this.tokenStream.LA(1);
1241
+ if (_la === 17) {
1242
+ {
1243
+ this.state = 285;
1244
+ this.opAnnotation();
1245
+ }
1246
+ }
1247
+ this.state = 288;
1129
1248
  this.statementEnd();
1130
1249
  }
1131
1250
  }
@@ -1150,18 +1269,27 @@ export class plurnkParser extends antlr.Parser {
1150
1269
  try {
1151
1270
  this.enterOuterAlt(localContext, 1);
1152
1271
  {
1153
- this.state = 251;
1272
+ this.state = 290;
1154
1273
  this.match(plurnkParser.OPEN_KILL);
1155
- this.state = 253;
1274
+ this.state = 292;
1156
1275
  this.errorHandler.sync(this);
1157
1276
  _la = this.tokenStream.LA(1);
1158
1277
  if (_la === 1 || _la === 3) {
1159
1278
  {
1160
- this.state = 252;
1279
+ this.state = 291;
1161
1280
  this.intOpModifiers();
1162
1281
  }
1163
1282
  }
1164
- this.state = 255;
1283
+ this.state = 295;
1284
+ this.errorHandler.sync(this);
1285
+ _la = this.tokenStream.LA(1);
1286
+ if (_la === 17) {
1287
+ {
1288
+ this.state = 294;
1289
+ this.opAnnotation();
1290
+ }
1291
+ }
1292
+ this.state = 297;
1165
1293
  this.statementEnd();
1166
1294
  }
1167
1295
  }
@@ -1186,18 +1314,27 @@ export class plurnkParser extends antlr.Parser {
1186
1314
  try {
1187
1315
  this.enterOuterAlt(localContext, 1);
1188
1316
  {
1189
- this.state = 257;
1317
+ this.state = 299;
1190
1318
  this.match(plurnkParser.OPEN_PLAN);
1191
- this.state = 259;
1319
+ this.state = 301;
1192
1320
  this.errorHandler.sync(this);
1193
1321
  _la = this.tokenStream.LA(1);
1194
1322
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
1195
1323
  {
1196
- this.state = 258;
1324
+ this.state = 300;
1197
1325
  this.tagOpModifiers();
1198
1326
  }
1199
1327
  }
1200
- this.state = 261;
1328
+ this.state = 304;
1329
+ this.errorHandler.sync(this);
1330
+ _la = this.tokenStream.LA(1);
1331
+ if (_la === 17) {
1332
+ {
1333
+ this.state = 303;
1334
+ this.opAnnotation();
1335
+ }
1336
+ }
1337
+ this.state = 306;
1201
1338
  this.statementEnd();
1202
1339
  }
1203
1340
  }
@@ -1222,18 +1359,27 @@ export class plurnkParser extends antlr.Parser {
1222
1359
  try {
1223
1360
  this.enterOuterAlt(localContext, 1);
1224
1361
  {
1225
- this.state = 263;
1362
+ this.state = 308;
1226
1363
  this.match(plurnkParser.OPEN_LOOK);
1227
- this.state = 265;
1364
+ this.state = 310;
1228
1365
  this.errorHandler.sync(this);
1229
1366
  _la = this.tokenStream.LA(1);
1230
1367
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
1231
1368
  {
1232
- this.state = 264;
1369
+ this.state = 309;
1233
1370
  this.tagOpModifiers();
1234
1371
  }
1235
1372
  }
1236
- this.state = 267;
1373
+ this.state = 313;
1374
+ this.errorHandler.sync(this);
1375
+ _la = this.tokenStream.LA(1);
1376
+ if (_la === 17) {
1377
+ {
1378
+ this.state = 312;
1379
+ this.opAnnotation();
1380
+ }
1381
+ }
1382
+ this.state = 315;
1237
1383
  this.statementEnd();
1238
1384
  }
1239
1385
  }
@@ -1258,18 +1404,27 @@ export class plurnkParser extends antlr.Parser {
1258
1404
  try {
1259
1405
  this.enterOuterAlt(localContext, 1);
1260
1406
  {
1261
- this.state = 269;
1407
+ this.state = 317;
1262
1408
  this.match(plurnkParser.OPEN_BUFF);
1263
- this.state = 271;
1409
+ this.state = 319;
1264
1410
  this.errorHandler.sync(this);
1265
1411
  _la = this.tokenStream.LA(1);
1266
1412
  if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 42) !== 0)) {
1267
1413
  {
1268
- this.state = 270;
1414
+ this.state = 318;
1269
1415
  this.tagOpModifiers();
1270
1416
  }
1271
1417
  }
1272
- this.state = 273;
1418
+ this.state = 322;
1419
+ this.errorHandler.sync(this);
1420
+ _la = this.tokenStream.LA(1);
1421
+ if (_la === 17) {
1422
+ {
1423
+ this.state = 321;
1424
+ this.opAnnotation();
1425
+ }
1426
+ }
1427
+ this.state = 324;
1273
1428
  this.statementEnd();
1274
1429
  }
1275
1430
  }
@@ -1287,41 +1442,65 @@ export class plurnkParser extends antlr.Parser {
1287
1442
  }
1288
1443
  return localContext;
1289
1444
  }
1445
+ opAnnotation() {
1446
+ let localContext = new OpAnnotationContext(this.context, this.state);
1447
+ this.enterRule(localContext, 52, plurnkParser.RULE_opAnnotation);
1448
+ try {
1449
+ this.enterOuterAlt(localContext, 1);
1450
+ {
1451
+ this.state = 326;
1452
+ this.match(plurnkParser.ANNOTATION);
1453
+ }
1454
+ }
1455
+ catch (re) {
1456
+ if (re instanceof antlr.RecognitionException) {
1457
+ this.errorHandler.reportError(this, re);
1458
+ this.errorHandler.recover(this, re);
1459
+ }
1460
+ else {
1461
+ throw re;
1462
+ }
1463
+ }
1464
+ finally {
1465
+ this.exitRule();
1466
+ }
1467
+ return localContext;
1468
+ }
1290
1469
  statementEnd() {
1291
1470
  let localContext = new StatementEndContext(this.context, this.state);
1292
- this.enterRule(localContext, 52, plurnkParser.RULE_statementEnd);
1471
+ this.enterRule(localContext, 54, plurnkParser.RULE_statementEnd);
1293
1472
  let _la;
1294
1473
  try {
1295
- this.state = 284;
1474
+ this.state = 337;
1296
1475
  this.errorHandler.sync(this);
1297
1476
  switch (this.tokenStream.LA(1)) {
1298
1477
  case plurnkParser.SECTION_END:
1299
1478
  this.enterOuterAlt(localContext, 1);
1300
1479
  {
1301
- this.state = 275;
1480
+ this.state = 328;
1302
1481
  this.match(plurnkParser.SECTION_END);
1303
1482
  }
1304
1483
  break;
1305
1484
  case plurnkParser.BODY_OPEN:
1306
1485
  this.enterOuterAlt(localContext, 2);
1307
1486
  {
1308
- this.state = 276;
1487
+ this.state = 329;
1309
1488
  this.match(plurnkParser.BODY_OPEN);
1310
- this.state = 278;
1489
+ this.state = 331;
1311
1490
  this.errorHandler.sync(this);
1312
1491
  _la = this.tokenStream.LA(1);
1313
1492
  if (_la === 15) {
1314
1493
  {
1315
- this.state = 277;
1494
+ this.state = 330;
1316
1495
  this.body();
1317
1496
  }
1318
1497
  }
1319
- this.state = 281;
1498
+ this.state = 334;
1320
1499
  this.errorHandler.sync(this);
1321
1500
  _la = this.tokenStream.LA(1);
1322
1501
  if (_la === 8) {
1323
1502
  {
1324
- this.state = 280;
1503
+ this.state = 333;
1325
1504
  this.match(plurnkParser.SECTION_END);
1326
1505
  }
1327
1506
  }
@@ -1371,30 +1550,30 @@ export class plurnkParser extends antlr.Parser {
1371
1550
  }
1372
1551
  tagOpModifiers() {
1373
1552
  let localContext = new TagOpModifiersContext(this.context, this.state);
1374
- this.enterRule(localContext, 54, plurnkParser.RULE_tagOpModifiers);
1553
+ this.enterRule(localContext, 56, plurnkParser.RULE_tagOpModifiers);
1375
1554
  let _la;
1376
1555
  try {
1377
- this.state = 319;
1556
+ this.state = 372;
1378
1557
  this.errorHandler.sync(this);
1379
1558
  switch (this.tokenStream.LA(1)) {
1380
1559
  case plurnkParser.LBRACKET:
1381
1560
  this.enterOuterAlt(localContext, 1);
1382
1561
  {
1383
- this.state = 286;
1562
+ this.state = 339;
1384
1563
  this.tagSignal();
1385
- this.state = 295;
1564
+ this.state = 348;
1386
1565
  this.errorHandler.sync(this);
1387
1566
  switch (this.tokenStream.LA(1)) {
1388
1567
  case plurnkParser.LPAREN:
1389
1568
  {
1390
- this.state = 287;
1569
+ this.state = 340;
1391
1570
  this.target();
1392
- this.state = 289;
1571
+ this.state = 342;
1393
1572
  this.errorHandler.sync(this);
1394
1573
  _la = this.tokenStream.LA(1);
1395
1574
  if (_la === 5) {
1396
1575
  {
1397
- this.state = 288;
1576
+ this.state = 341;
1398
1577
  this.lineMarker();
1399
1578
  }
1400
1579
  }
@@ -1402,14 +1581,14 @@ export class plurnkParser extends antlr.Parser {
1402
1581
  break;
1403
1582
  case plurnkParser.L_MARKER:
1404
1583
  {
1405
- this.state = 291;
1584
+ this.state = 344;
1406
1585
  this.lineMarker();
1407
- this.state = 293;
1586
+ this.state = 346;
1408
1587
  this.errorHandler.sync(this);
1409
1588
  _la = this.tokenStream.LA(1);
1410
1589
  if (_la === 3) {
1411
1590
  {
1412
- this.state = 292;
1591
+ this.state = 345;
1413
1592
  this.target();
1414
1593
  }
1415
1594
  }
@@ -1418,6 +1597,7 @@ export class plurnkParser extends antlr.Parser {
1418
1597
  case plurnkParser.EOF:
1419
1598
  case plurnkParser.BODY_OPEN:
1420
1599
  case plurnkParser.SECTION_END:
1600
+ case plurnkParser.ANNOTATION:
1421
1601
  case plurnkParser.OPEN_PLAN:
1422
1602
  case plurnkParser.OPEN_FIND:
1423
1603
  case plurnkParser.OPEN_READ:
@@ -1443,21 +1623,21 @@ export class plurnkParser extends antlr.Parser {
1443
1623
  case plurnkParser.LPAREN:
1444
1624
  this.enterOuterAlt(localContext, 2);
1445
1625
  {
1446
- this.state = 297;
1626
+ this.state = 350;
1447
1627
  this.target();
1448
- this.state = 306;
1628
+ this.state = 359;
1449
1629
  this.errorHandler.sync(this);
1450
1630
  switch (this.tokenStream.LA(1)) {
1451
1631
  case plurnkParser.LBRACKET:
1452
1632
  {
1453
- this.state = 298;
1633
+ this.state = 351;
1454
1634
  this.tagSignal();
1455
- this.state = 300;
1635
+ this.state = 353;
1456
1636
  this.errorHandler.sync(this);
1457
1637
  _la = this.tokenStream.LA(1);
1458
1638
  if (_la === 5) {
1459
1639
  {
1460
- this.state = 299;
1640
+ this.state = 352;
1461
1641
  this.lineMarker();
1462
1642
  }
1463
1643
  }
@@ -1465,14 +1645,14 @@ export class plurnkParser extends antlr.Parser {
1465
1645
  break;
1466
1646
  case plurnkParser.L_MARKER:
1467
1647
  {
1468
- this.state = 302;
1648
+ this.state = 355;
1469
1649
  this.lineMarker();
1470
- this.state = 304;
1650
+ this.state = 357;
1471
1651
  this.errorHandler.sync(this);
1472
1652
  _la = this.tokenStream.LA(1);
1473
1653
  if (_la === 1) {
1474
1654
  {
1475
- this.state = 303;
1655
+ this.state = 356;
1476
1656
  this.tagSignal();
1477
1657
  }
1478
1658
  }
@@ -1481,6 +1661,7 @@ export class plurnkParser extends antlr.Parser {
1481
1661
  case plurnkParser.EOF:
1482
1662
  case plurnkParser.BODY_OPEN:
1483
1663
  case plurnkParser.SECTION_END:
1664
+ case plurnkParser.ANNOTATION:
1484
1665
  case plurnkParser.OPEN_PLAN:
1485
1666
  case plurnkParser.OPEN_FIND:
1486
1667
  case plurnkParser.OPEN_READ:
@@ -1506,21 +1687,21 @@ export class plurnkParser extends antlr.Parser {
1506
1687
  case plurnkParser.L_MARKER:
1507
1688
  this.enterOuterAlt(localContext, 3);
1508
1689
  {
1509
- this.state = 308;
1690
+ this.state = 361;
1510
1691
  this.lineMarker();
1511
- this.state = 317;
1692
+ this.state = 370;
1512
1693
  this.errorHandler.sync(this);
1513
1694
  switch (this.tokenStream.LA(1)) {
1514
1695
  case plurnkParser.LBRACKET:
1515
1696
  {
1516
- this.state = 309;
1697
+ this.state = 362;
1517
1698
  this.tagSignal();
1518
- this.state = 311;
1699
+ this.state = 364;
1519
1700
  this.errorHandler.sync(this);
1520
1701
  _la = this.tokenStream.LA(1);
1521
1702
  if (_la === 3) {
1522
1703
  {
1523
- this.state = 310;
1704
+ this.state = 363;
1524
1705
  this.target();
1525
1706
  }
1526
1707
  }
@@ -1528,14 +1709,14 @@ export class plurnkParser extends antlr.Parser {
1528
1709
  break;
1529
1710
  case plurnkParser.LPAREN:
1530
1711
  {
1531
- this.state = 313;
1712
+ this.state = 366;
1532
1713
  this.target();
1533
- this.state = 315;
1714
+ this.state = 368;
1534
1715
  this.errorHandler.sync(this);
1535
1716
  _la = this.tokenStream.LA(1);
1536
1717
  if (_la === 1) {
1537
1718
  {
1538
- this.state = 314;
1719
+ this.state = 367;
1539
1720
  this.tagSignal();
1540
1721
  }
1541
1722
  }
@@ -1544,6 +1725,7 @@ export class plurnkParser extends antlr.Parser {
1544
1725
  case plurnkParser.EOF:
1545
1726
  case plurnkParser.BODY_OPEN:
1546
1727
  case plurnkParser.SECTION_END:
1728
+ case plurnkParser.ANNOTATION:
1547
1729
  case plurnkParser.OPEN_PLAN:
1548
1730
  case plurnkParser.OPEN_FIND:
1549
1731
  case plurnkParser.OPEN_READ:
@@ -1584,83 +1766,25 @@ export class plurnkParser extends antlr.Parser {
1584
1766
  }
1585
1767
  return localContext;
1586
1768
  }
1587
- curationModifiers() {
1588
- let localContext = new CurationModifiersContext(this.context, this.state);
1589
- this.enterRule(localContext, 56, plurnkParser.RULE_curationModifiers);
1590
- let _la;
1591
- try {
1592
- this.state = 329;
1593
- this.errorHandler.sync(this);
1594
- switch (this.tokenStream.LA(1)) {
1595
- case plurnkParser.LBRACKET:
1596
- this.enterOuterAlt(localContext, 1);
1597
- {
1598
- this.state = 321;
1599
- this.tagSignal();
1600
- this.state = 323;
1601
- this.errorHandler.sync(this);
1602
- _la = this.tokenStream.LA(1);
1603
- if (_la === 3) {
1604
- {
1605
- this.state = 322;
1606
- this.target();
1607
- }
1608
- }
1609
- }
1610
- break;
1611
- case plurnkParser.LPAREN:
1612
- this.enterOuterAlt(localContext, 2);
1613
- {
1614
- this.state = 325;
1615
- this.target();
1616
- this.state = 327;
1617
- this.errorHandler.sync(this);
1618
- _la = this.tokenStream.LA(1);
1619
- if (_la === 1) {
1620
- {
1621
- this.state = 326;
1622
- this.tagSignal();
1623
- }
1624
- }
1625
- }
1626
- break;
1627
- default:
1628
- throw new antlr.NoViableAltException(this);
1629
- }
1630
- }
1631
- catch (re) {
1632
- if (re instanceof antlr.RecognitionException) {
1633
- this.errorHandler.reportError(this, re);
1634
- this.errorHandler.recover(this, re);
1635
- }
1636
- else {
1637
- throw re;
1638
- }
1639
- }
1640
- finally {
1641
- this.exitRule();
1642
- }
1643
- return localContext;
1644
- }
1645
1769
  intOpModifiers() {
1646
1770
  let localContext = new IntOpModifiersContext(this.context, this.state);
1647
1771
  this.enterRule(localContext, 58, plurnkParser.RULE_intOpModifiers);
1648
1772
  let _la;
1649
1773
  try {
1650
- this.state = 339;
1774
+ this.state = 382;
1651
1775
  this.errorHandler.sync(this);
1652
1776
  switch (this.tokenStream.LA(1)) {
1653
1777
  case plurnkParser.LBRACKET:
1654
1778
  this.enterOuterAlt(localContext, 1);
1655
1779
  {
1656
- this.state = 331;
1780
+ this.state = 374;
1657
1781
  this.intSignal();
1658
- this.state = 333;
1782
+ this.state = 376;
1659
1783
  this.errorHandler.sync(this);
1660
1784
  _la = this.tokenStream.LA(1);
1661
1785
  if (_la === 3) {
1662
1786
  {
1663
- this.state = 332;
1787
+ this.state = 375;
1664
1788
  this.target();
1665
1789
  }
1666
1790
  }
@@ -1669,14 +1793,14 @@ export class plurnkParser extends antlr.Parser {
1669
1793
  case plurnkParser.LPAREN:
1670
1794
  this.enterOuterAlt(localContext, 2);
1671
1795
  {
1672
- this.state = 335;
1796
+ this.state = 378;
1673
1797
  this.target();
1674
- this.state = 337;
1798
+ this.state = 380;
1675
1799
  this.errorHandler.sync(this);
1676
1800
  _la = this.tokenStream.LA(1);
1677
1801
  if (_la === 1) {
1678
1802
  {
1679
- this.state = 336;
1803
+ this.state = 379;
1680
1804
  this.intSignal();
1681
1805
  }
1682
1806
  }
@@ -1705,20 +1829,20 @@ export class plurnkParser extends antlr.Parser {
1705
1829
  this.enterRule(localContext, 60, plurnkParser.RULE_branchModifiers);
1706
1830
  let _la;
1707
1831
  try {
1708
- this.state = 349;
1832
+ this.state = 392;
1709
1833
  this.errorHandler.sync(this);
1710
1834
  switch (this.tokenStream.LA(1)) {
1711
1835
  case plurnkParser.LBRACKET:
1712
1836
  this.enterOuterAlt(localContext, 1);
1713
1837
  {
1714
- this.state = 341;
1838
+ this.state = 384;
1715
1839
  this.branchSignal();
1716
- this.state = 343;
1840
+ this.state = 386;
1717
1841
  this.errorHandler.sync(this);
1718
1842
  _la = this.tokenStream.LA(1);
1719
1843
  if (_la === 3) {
1720
1844
  {
1721
- this.state = 342;
1845
+ this.state = 385;
1722
1846
  this.target();
1723
1847
  }
1724
1848
  }
@@ -1727,14 +1851,14 @@ export class plurnkParser extends antlr.Parser {
1727
1851
  case plurnkParser.LPAREN:
1728
1852
  this.enterOuterAlt(localContext, 2);
1729
1853
  {
1730
- this.state = 345;
1854
+ this.state = 388;
1731
1855
  this.target();
1732
- this.state = 347;
1856
+ this.state = 390;
1733
1857
  this.errorHandler.sync(this);
1734
1858
  _la = this.tokenStream.LA(1);
1735
1859
  if (_la === 1) {
1736
1860
  {
1737
- this.state = 346;
1861
+ this.state = 389;
1738
1862
  this.branchSignal();
1739
1863
  }
1740
1864
  }
@@ -1763,29 +1887,29 @@ export class plurnkParser extends antlr.Parser {
1763
1887
  this.enterRule(localContext, 62, plurnkParser.RULE_termModifiers);
1764
1888
  let _la;
1765
1889
  try {
1766
- this.state = 363;
1890
+ this.state = 406;
1767
1891
  this.errorHandler.sync(this);
1768
1892
  switch (this.tokenStream.LA(1)) {
1769
1893
  case plurnkParser.LBRACKET:
1770
1894
  this.enterOuterAlt(localContext, 1);
1771
1895
  {
1772
- this.state = 351;
1896
+ this.state = 394;
1773
1897
  this.dispSignal();
1774
- this.state = 353;
1898
+ this.state = 396;
1775
1899
  this.errorHandler.sync(this);
1776
1900
  _la = this.tokenStream.LA(1);
1777
1901
  if (_la === 3) {
1778
1902
  {
1779
- this.state = 352;
1903
+ this.state = 395;
1780
1904
  this.target();
1781
1905
  }
1782
1906
  }
1783
- this.state = 356;
1907
+ this.state = 399;
1784
1908
  this.errorHandler.sync(this);
1785
1909
  _la = this.tokenStream.LA(1);
1786
1910
  if (_la === 5) {
1787
1911
  {
1788
- this.state = 355;
1912
+ this.state = 398;
1789
1913
  this.lineMarker();
1790
1914
  }
1791
1915
  }
@@ -1794,16 +1918,16 @@ export class plurnkParser extends antlr.Parser {
1794
1918
  case plurnkParser.LPAREN:
1795
1919
  this.enterOuterAlt(localContext, 2);
1796
1920
  {
1797
- this.state = 358;
1921
+ this.state = 401;
1798
1922
  this.target();
1799
- this.state = 359;
1923
+ this.state = 402;
1800
1924
  this.dispSignal();
1801
- this.state = 361;
1925
+ this.state = 404;
1802
1926
  this.errorHandler.sync(this);
1803
1927
  _la = this.tokenStream.LA(1);
1804
1928
  if (_la === 5) {
1805
1929
  {
1806
- this.state = 360;
1930
+ this.state = 403;
1807
1931
  this.lineMarker();
1808
1932
  }
1809
1933
  }
@@ -1832,20 +1956,20 @@ export class plurnkParser extends antlr.Parser {
1832
1956
  this.enterRule(localContext, 64, plurnkParser.RULE_midModifiers);
1833
1957
  let _la;
1834
1958
  try {
1835
- this.state = 373;
1959
+ this.state = 416;
1836
1960
  this.errorHandler.sync(this);
1837
1961
  switch (this.tokenStream.LA(1)) {
1838
1962
  case plurnkParser.LBRACKET:
1839
1963
  this.enterOuterAlt(localContext, 1);
1840
1964
  {
1841
- this.state = 365;
1965
+ this.state = 408;
1842
1966
  this.midSignal();
1843
- this.state = 367;
1967
+ this.state = 410;
1844
1968
  this.errorHandler.sync(this);
1845
1969
  _la = this.tokenStream.LA(1);
1846
1970
  if (_la === 3) {
1847
1971
  {
1848
- this.state = 366;
1972
+ this.state = 409;
1849
1973
  this.target();
1850
1974
  }
1851
1975
  }
@@ -1854,14 +1978,14 @@ export class plurnkParser extends antlr.Parser {
1854
1978
  case plurnkParser.LPAREN:
1855
1979
  this.enterOuterAlt(localContext, 2);
1856
1980
  {
1857
- this.state = 369;
1981
+ this.state = 412;
1858
1982
  this.target();
1859
- this.state = 371;
1983
+ this.state = 414;
1860
1984
  this.errorHandler.sync(this);
1861
1985
  _la = this.tokenStream.LA(1);
1862
1986
  if (_la === 1) {
1863
1987
  {
1864
- this.state = 370;
1988
+ this.state = 413;
1865
1989
  this.midSignal();
1866
1990
  }
1867
1991
  }
@@ -1890,27 +2014,27 @@ export class plurnkParser extends antlr.Parser {
1890
2014
  this.enterRule(localContext, 66, plurnkParser.RULE_execModifiers);
1891
2015
  let _la;
1892
2016
  try {
1893
- this.state = 408;
2017
+ this.state = 451;
1894
2018
  this.errorHandler.sync(this);
1895
2019
  switch (this.tokenStream.LA(1)) {
1896
2020
  case plurnkParser.LBRACKET:
1897
2021
  this.enterOuterAlt(localContext, 1);
1898
2022
  {
1899
- this.state = 375;
2023
+ this.state = 418;
1900
2024
  this.identSignal();
1901
- this.state = 384;
2025
+ this.state = 427;
1902
2026
  this.errorHandler.sync(this);
1903
2027
  switch (this.tokenStream.LA(1)) {
1904
2028
  case plurnkParser.LPAREN:
1905
2029
  {
1906
- this.state = 376;
2030
+ this.state = 419;
1907
2031
  this.target();
1908
- this.state = 378;
2032
+ this.state = 421;
1909
2033
  this.errorHandler.sync(this);
1910
2034
  _la = this.tokenStream.LA(1);
1911
2035
  if (_la === 5) {
1912
2036
  {
1913
- this.state = 377;
2037
+ this.state = 420;
1914
2038
  this.lineMarker();
1915
2039
  }
1916
2040
  }
@@ -1918,14 +2042,14 @@ export class plurnkParser extends antlr.Parser {
1918
2042
  break;
1919
2043
  case plurnkParser.L_MARKER:
1920
2044
  {
1921
- this.state = 380;
2045
+ this.state = 423;
1922
2046
  this.lineMarker();
1923
- this.state = 382;
2047
+ this.state = 425;
1924
2048
  this.errorHandler.sync(this);
1925
2049
  _la = this.tokenStream.LA(1);
1926
2050
  if (_la === 3) {
1927
2051
  {
1928
- this.state = 381;
2052
+ this.state = 424;
1929
2053
  this.target();
1930
2054
  }
1931
2055
  }
@@ -1934,6 +2058,7 @@ export class plurnkParser extends antlr.Parser {
1934
2058
  case plurnkParser.EOF:
1935
2059
  case plurnkParser.BODY_OPEN:
1936
2060
  case plurnkParser.SECTION_END:
2061
+ case plurnkParser.ANNOTATION:
1937
2062
  case plurnkParser.OPEN_PLAN:
1938
2063
  case plurnkParser.OPEN_FIND:
1939
2064
  case plurnkParser.OPEN_READ:
@@ -1959,21 +2084,21 @@ export class plurnkParser extends antlr.Parser {
1959
2084
  case plurnkParser.LPAREN:
1960
2085
  this.enterOuterAlt(localContext, 2);
1961
2086
  {
1962
- this.state = 386;
2087
+ this.state = 429;
1963
2088
  this.target();
1964
- this.state = 395;
2089
+ this.state = 438;
1965
2090
  this.errorHandler.sync(this);
1966
2091
  switch (this.tokenStream.LA(1)) {
1967
2092
  case plurnkParser.LBRACKET:
1968
2093
  {
1969
- this.state = 387;
2094
+ this.state = 430;
1970
2095
  this.identSignal();
1971
- this.state = 389;
2096
+ this.state = 432;
1972
2097
  this.errorHandler.sync(this);
1973
2098
  _la = this.tokenStream.LA(1);
1974
2099
  if (_la === 5) {
1975
2100
  {
1976
- this.state = 388;
2101
+ this.state = 431;
1977
2102
  this.lineMarker();
1978
2103
  }
1979
2104
  }
@@ -1981,14 +2106,14 @@ export class plurnkParser extends antlr.Parser {
1981
2106
  break;
1982
2107
  case plurnkParser.L_MARKER:
1983
2108
  {
1984
- this.state = 391;
2109
+ this.state = 434;
1985
2110
  this.lineMarker();
1986
- this.state = 393;
2111
+ this.state = 436;
1987
2112
  this.errorHandler.sync(this);
1988
2113
  _la = this.tokenStream.LA(1);
1989
2114
  if (_la === 1) {
1990
2115
  {
1991
- this.state = 392;
2116
+ this.state = 435;
1992
2117
  this.identSignal();
1993
2118
  }
1994
2119
  }
@@ -1997,6 +2122,7 @@ export class plurnkParser extends antlr.Parser {
1997
2122
  case plurnkParser.EOF:
1998
2123
  case plurnkParser.BODY_OPEN:
1999
2124
  case plurnkParser.SECTION_END:
2125
+ case plurnkParser.ANNOTATION:
2000
2126
  case plurnkParser.OPEN_PLAN:
2001
2127
  case plurnkParser.OPEN_FIND:
2002
2128
  case plurnkParser.OPEN_READ:
@@ -2022,21 +2148,21 @@ export class plurnkParser extends antlr.Parser {
2022
2148
  case plurnkParser.L_MARKER:
2023
2149
  this.enterOuterAlt(localContext, 3);
2024
2150
  {
2025
- this.state = 397;
2151
+ this.state = 440;
2026
2152
  this.lineMarker();
2027
- this.state = 406;
2153
+ this.state = 449;
2028
2154
  this.errorHandler.sync(this);
2029
2155
  switch (this.tokenStream.LA(1)) {
2030
2156
  case plurnkParser.LBRACKET:
2031
2157
  {
2032
- this.state = 398;
2158
+ this.state = 441;
2033
2159
  this.identSignal();
2034
- this.state = 400;
2160
+ this.state = 443;
2035
2161
  this.errorHandler.sync(this);
2036
2162
  _la = this.tokenStream.LA(1);
2037
2163
  if (_la === 3) {
2038
2164
  {
2039
- this.state = 399;
2165
+ this.state = 442;
2040
2166
  this.target();
2041
2167
  }
2042
2168
  }
@@ -2044,14 +2170,14 @@ export class plurnkParser extends antlr.Parser {
2044
2170
  break;
2045
2171
  case plurnkParser.LPAREN:
2046
2172
  {
2047
- this.state = 402;
2173
+ this.state = 445;
2048
2174
  this.target();
2049
- this.state = 404;
2175
+ this.state = 447;
2050
2176
  this.errorHandler.sync(this);
2051
2177
  _la = this.tokenStream.LA(1);
2052
2178
  if (_la === 1) {
2053
2179
  {
2054
- this.state = 403;
2180
+ this.state = 446;
2055
2181
  this.identSignal();
2056
2182
  }
2057
2183
  }
@@ -2060,6 +2186,7 @@ export class plurnkParser extends antlr.Parser {
2060
2186
  case plurnkParser.EOF:
2061
2187
  case plurnkParser.BODY_OPEN:
2062
2188
  case plurnkParser.SECTION_END:
2189
+ case plurnkParser.ANNOTATION:
2063
2190
  case plurnkParser.OPEN_PLAN:
2064
2191
  case plurnkParser.OPEN_FIND:
2065
2192
  case plurnkParser.OPEN_READ:
@@ -2107,15 +2234,15 @@ export class plurnkParser extends antlr.Parser {
2107
2234
  try {
2108
2235
  this.enterOuterAlt(localContext, 1);
2109
2236
  {
2110
- this.state = 410;
2237
+ this.state = 453;
2111
2238
  this.match(plurnkParser.LBRACKET);
2112
- this.state = 414;
2239
+ this.state = 457;
2113
2240
  this.errorHandler.sync(this);
2114
2241
  _la = this.tokenStream.LA(1);
2115
2242
  while (_la === 9 || _la === 13) {
2116
2243
  {
2117
2244
  {
2118
- this.state = 411;
2245
+ this.state = 454;
2119
2246
  _la = this.tokenStream.LA(1);
2120
2247
  if (!(_la === 9 || _la === 13)) {
2121
2248
  this.errorHandler.recoverInline(this);
@@ -2126,11 +2253,11 @@ export class plurnkParser extends antlr.Parser {
2126
2253
  }
2127
2254
  }
2128
2255
  }
2129
- this.state = 416;
2256
+ this.state = 459;
2130
2257
  this.errorHandler.sync(this);
2131
2258
  _la = this.tokenStream.LA(1);
2132
2259
  }
2133
- this.state = 417;
2260
+ this.state = 460;
2134
2261
  this.match(plurnkParser.RBRACKET);
2135
2262
  }
2136
2263
  }
@@ -2154,11 +2281,11 @@ export class plurnkParser extends antlr.Parser {
2154
2281
  try {
2155
2282
  this.enterOuterAlt(localContext, 1);
2156
2283
  {
2157
- this.state = 419;
2284
+ this.state = 462;
2158
2285
  this.match(plurnkParser.LBRACKET);
2159
- this.state = 420;
2286
+ this.state = 463;
2160
2287
  this.match(plurnkParser.TAG);
2161
- this.state = 421;
2288
+ this.state = 464;
2162
2289
  this.match(plurnkParser.RBRACKET);
2163
2290
  }
2164
2291
  }
@@ -2183,14 +2310,14 @@ export class plurnkParser extends antlr.Parser {
2183
2310
  try {
2184
2311
  this.enterOuterAlt(localContext, 1);
2185
2312
  {
2186
- this.state = 423;
2313
+ this.state = 466;
2187
2314
  this.match(plurnkParser.LBRACKET);
2188
- this.state = 425;
2315
+ this.state = 468;
2189
2316
  this.errorHandler.sync(this);
2190
2317
  _la = this.tokenStream.LA(1);
2191
2318
  if (_la === 10 || _la === 11) {
2192
2319
  {
2193
- this.state = 424;
2320
+ this.state = 467;
2194
2321
  _la = this.tokenStream.LA(1);
2195
2322
  if (!(_la === 10 || _la === 11)) {
2196
2323
  this.errorHandler.recoverInline(this);
@@ -2201,7 +2328,7 @@ export class plurnkParser extends antlr.Parser {
2201
2328
  }
2202
2329
  }
2203
2330
  }
2204
- this.state = 427;
2331
+ this.state = 470;
2205
2332
  this.match(plurnkParser.RBRACKET);
2206
2333
  }
2207
2334
  }
@@ -2226,18 +2353,18 @@ export class plurnkParser extends antlr.Parser {
2226
2353
  try {
2227
2354
  this.enterOuterAlt(localContext, 1);
2228
2355
  {
2229
- this.state = 429;
2356
+ this.state = 472;
2230
2357
  this.match(plurnkParser.LBRACKET);
2231
- this.state = 431;
2358
+ this.state = 474;
2232
2359
  this.errorHandler.sync(this);
2233
2360
  _la = this.tokenStream.LA(1);
2234
2361
  if (_la === 10) {
2235
2362
  {
2236
- this.state = 430;
2363
+ this.state = 473;
2237
2364
  this.match(plurnkParser.INT);
2238
2365
  }
2239
2366
  }
2240
- this.state = 433;
2367
+ this.state = 476;
2241
2368
  this.match(plurnkParser.RBRACKET);
2242
2369
  }
2243
2370
  }
@@ -2261,11 +2388,11 @@ export class plurnkParser extends antlr.Parser {
2261
2388
  try {
2262
2389
  this.enterOuterAlt(localContext, 1);
2263
2390
  {
2264
- this.state = 435;
2391
+ this.state = 478;
2265
2392
  this.match(plurnkParser.LBRACKET);
2266
- this.state = 436;
2393
+ this.state = 479;
2267
2394
  this.match(plurnkParser.DISPOSITION);
2268
- this.state = 437;
2395
+ this.state = 480;
2269
2396
  this.match(plurnkParser.RBRACKET);
2270
2397
  }
2271
2398
  }
@@ -2290,18 +2417,18 @@ export class plurnkParser extends antlr.Parser {
2290
2417
  try {
2291
2418
  this.enterOuterAlt(localContext, 1);
2292
2419
  {
2293
- this.state = 439;
2420
+ this.state = 482;
2294
2421
  this.match(plurnkParser.LBRACKET);
2295
- this.state = 441;
2422
+ this.state = 484;
2296
2423
  this.errorHandler.sync(this);
2297
2424
  _la = this.tokenStream.LA(1);
2298
2425
  if (_la === 12) {
2299
2426
  {
2300
- this.state = 440;
2427
+ this.state = 483;
2301
2428
  this.match(plurnkParser.IDENT);
2302
2429
  }
2303
2430
  }
2304
- this.state = 443;
2431
+ this.state = 486;
2305
2432
  this.match(plurnkParser.RBRACKET);
2306
2433
  }
2307
2434
  }
@@ -2326,23 +2453,23 @@ export class plurnkParser extends antlr.Parser {
2326
2453
  try {
2327
2454
  this.enterOuterAlt(localContext, 1);
2328
2455
  {
2329
- this.state = 445;
2456
+ this.state = 488;
2330
2457
  this.match(plurnkParser.LPAREN);
2331
- this.state = 449;
2458
+ this.state = 492;
2332
2459
  this.errorHandler.sync(this);
2333
2460
  _la = this.tokenStream.LA(1);
2334
2461
  while (_la === 14) {
2335
2462
  {
2336
2463
  {
2337
- this.state = 446;
2464
+ this.state = 489;
2338
2465
  this.match(plurnkParser.TARGET_TEXT);
2339
2466
  }
2340
2467
  }
2341
- this.state = 451;
2468
+ this.state = 494;
2342
2469
  this.errorHandler.sync(this);
2343
2470
  _la = this.tokenStream.LA(1);
2344
2471
  }
2345
- this.state = 452;
2472
+ this.state = 495;
2346
2473
  this.match(plurnkParser.RPAREN);
2347
2474
  }
2348
2475
  }
@@ -2366,7 +2493,7 @@ export class plurnkParser extends antlr.Parser {
2366
2493
  try {
2367
2494
  this.enterOuterAlt(localContext, 1);
2368
2495
  {
2369
- this.state = 454;
2496
+ this.state = 497;
2370
2497
  this.match(plurnkParser.L_MARKER);
2371
2498
  }
2372
2499
  }
@@ -2391,17 +2518,17 @@ export class plurnkParser extends antlr.Parser {
2391
2518
  try {
2392
2519
  this.enterOuterAlt(localContext, 1);
2393
2520
  {
2394
- this.state = 457;
2521
+ this.state = 500;
2395
2522
  this.errorHandler.sync(this);
2396
2523
  _la = this.tokenStream.LA(1);
2397
2524
  do {
2398
2525
  {
2399
2526
  {
2400
- this.state = 456;
2527
+ this.state = 499;
2401
2528
  this.match(plurnkParser.BODY_TEXT);
2402
2529
  }
2403
2530
  }
2404
- this.state = 459;
2531
+ this.state = 502;
2405
2532
  this.errorHandler.sync(this);
2406
2533
  _la = this.tokenStream.LA(1);
2407
2534
  } while (_la === 15);
@@ -2422,7 +2549,7 @@ export class plurnkParser extends antlr.Parser {
2422
2549
  return localContext;
2423
2550
  }
2424
2551
  static _serializedATN = [
2425
- 4, 1, 42, 462, 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,
2552
+ 4, 1, 43, 505, 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,
2426
2553
  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,
2427
2554
  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,
2428
2555
  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,
@@ -2435,46 +2562,50 @@ export class plurnkParser extends antlr.Parser {
2435
2562
  5, 132, 8, 5, 10, 5, 12, 5, 135, 9, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 6, 3, 6, 142, 8, 6, 1, 7,
2436
2563
  1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 3, 7, 159,
2437
2564
  8, 7, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 3, 8, 174,
2438
- 8, 8, 1, 9, 1, 9, 3, 9, 178, 8, 9, 1, 9, 1, 9, 1, 10, 1, 10, 3, 10, 184, 8, 10, 1, 10, 1, 10,
2439
- 1, 11, 1, 11, 3, 11, 190, 8, 11, 1, 11, 1, 11, 1, 12, 1, 12, 3, 12, 196, 8, 12, 1, 12, 1,
2440
- 12, 1, 13, 1, 13, 3, 13, 202, 8, 13, 1, 13, 1, 13, 1, 14, 1, 14, 3, 14, 208, 8, 14, 1, 14,
2441
- 1, 14, 1, 15, 1, 15, 3, 15, 214, 8, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 17,
2442
- 1, 17, 3, 17, 224, 8, 17, 1, 17, 1, 17, 1, 18, 1, 18, 3, 18, 230, 8, 18, 1, 18, 1, 18, 1,
2443
- 19, 1, 19, 3, 19, 236, 8, 19, 1, 19, 1, 19, 1, 20, 1, 20, 3, 20, 242, 8, 20, 1, 20, 1, 20,
2444
- 1, 21, 1, 21, 3, 21, 248, 8, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 254, 8, 22, 1, 22, 1,
2445
- 22, 1, 23, 1, 23, 3, 23, 260, 8, 23, 1, 23, 1, 23, 1, 24, 1, 24, 3, 24, 266, 8, 24, 1, 24,
2446
- 1, 24, 1, 25, 1, 25, 3, 25, 272, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26, 1, 26, 3, 26, 279, 8,
2447
- 26, 1, 26, 3, 26, 282, 8, 26, 1, 26, 3, 26, 285, 8, 26, 1, 27, 1, 27, 1, 27, 3, 27, 290,
2448
- 8, 27, 1, 27, 1, 27, 3, 27, 294, 8, 27, 3, 27, 296, 8, 27, 1, 27, 1, 27, 1, 27, 3, 27, 301,
2449
- 8, 27, 1, 27, 1, 27, 3, 27, 305, 8, 27, 3, 27, 307, 8, 27, 1, 27, 1, 27, 1, 27, 3, 27, 312,
2450
- 8, 27, 1, 27, 1, 27, 3, 27, 316, 8, 27, 3, 27, 318, 8, 27, 3, 27, 320, 8, 27, 1, 28, 1,
2451
- 28, 3, 28, 324, 8, 28, 1, 28, 1, 28, 3, 28, 328, 8, 28, 3, 28, 330, 8, 28, 1, 29, 1, 29,
2452
- 3, 29, 334, 8, 29, 1, 29, 1, 29, 3, 29, 338, 8, 29, 3, 29, 340, 8, 29, 1, 30, 1, 30, 3,
2453
- 30, 344, 8, 30, 1, 30, 1, 30, 3, 30, 348, 8, 30, 3, 30, 350, 8, 30, 1, 31, 1, 31, 3, 31,
2454
- 354, 8, 31, 1, 31, 3, 31, 357, 8, 31, 1, 31, 1, 31, 1, 31, 3, 31, 362, 8, 31, 3, 31, 364,
2455
- 8, 31, 1, 32, 1, 32, 3, 32, 368, 8, 32, 1, 32, 1, 32, 3, 32, 372, 8, 32, 3, 32, 374, 8,
2456
- 32, 1, 33, 1, 33, 1, 33, 3, 33, 379, 8, 33, 1, 33, 1, 33, 3, 33, 383, 8, 33, 3, 33, 385,
2457
- 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 390, 8, 33, 1, 33, 1, 33, 3, 33, 394, 8, 33, 3, 33, 396,
2458
- 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 401, 8, 33, 1, 33, 1, 33, 3, 33, 405, 8, 33, 3, 33, 407,
2459
- 8, 33, 3, 33, 409, 8, 33, 1, 34, 1, 34, 5, 34, 413, 8, 34, 10, 34, 12, 34, 416, 9, 34,
2460
- 1, 34, 1, 34, 1, 35, 1, 35, 1, 35, 1, 35, 1, 36, 1, 36, 3, 36, 426, 8, 36, 1, 36, 1, 36,
2461
- 1, 37, 1, 37, 3, 37, 432, 8, 37, 1, 37, 1, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1, 39, 1, 39,
2462
- 3, 39, 442, 8, 39, 1, 39, 1, 39, 1, 40, 1, 40, 5, 40, 448, 8, 40, 10, 40, 12, 40, 451,
2463
- 9, 40, 1, 40, 1, 40, 1, 41, 1, 41, 1, 42, 4, 42, 458, 8, 42, 11, 42, 12, 42, 459, 1, 42,
2565
+ 8, 8, 1, 9, 1, 9, 3, 9, 178, 8, 9, 1, 9, 3, 9, 181, 8, 9, 1, 9, 1, 9, 1, 10, 1, 10, 3, 10, 187,
2566
+ 8, 10, 1, 10, 3, 10, 190, 8, 10, 1, 10, 1, 10, 1, 11, 1, 11, 3, 11, 196, 8, 11, 1, 11, 3,
2567
+ 11, 199, 8, 11, 1, 11, 1, 11, 1, 12, 1, 12, 3, 12, 205, 8, 12, 1, 12, 3, 12, 208, 8, 12,
2568
+ 1, 12, 1, 12, 1, 13, 1, 13, 3, 13, 214, 8, 13, 1, 13, 3, 13, 217, 8, 13, 1, 13, 1, 13, 1,
2569
+ 14, 1, 14, 3, 14, 223, 8, 14, 1, 14, 3, 14, 226, 8, 14, 1, 14, 1, 14, 1, 15, 1, 15, 3, 15,
2570
+ 232, 8, 15, 1, 15, 3, 15, 235, 8, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 3, 16, 242, 8,
2571
+ 16, 1, 16, 1, 16, 1, 17, 1, 17, 3, 17, 248, 8, 17, 1, 17, 3, 17, 251, 8, 17, 1, 17, 1, 17,
2572
+ 1, 18, 1, 18, 3, 18, 257, 8, 18, 1, 18, 3, 18, 260, 8, 18, 1, 18, 1, 18, 1, 19, 1, 19, 3,
2573
+ 19, 266, 8, 19, 1, 19, 3, 19, 269, 8, 19, 1, 19, 1, 19, 1, 20, 1, 20, 3, 20, 275, 8, 20,
2574
+ 1, 20, 3, 20, 278, 8, 20, 1, 20, 1, 20, 1, 21, 1, 21, 3, 21, 284, 8, 21, 1, 21, 3, 21, 287,
2575
+ 8, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 293, 8, 22, 1, 22, 3, 22, 296, 8, 22, 1, 22, 1,
2576
+ 22, 1, 23, 1, 23, 3, 23, 302, 8, 23, 1, 23, 3, 23, 305, 8, 23, 1, 23, 1, 23, 1, 24, 1, 24,
2577
+ 3, 24, 311, 8, 24, 1, 24, 3, 24, 314, 8, 24, 1, 24, 1, 24, 1, 25, 1, 25, 3, 25, 320, 8,
2578
+ 25, 1, 25, 3, 25, 323, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26, 1, 27, 1, 27, 1, 27, 3, 27, 332,
2579
+ 8, 27, 1, 27, 3, 27, 335, 8, 27, 1, 27, 3, 27, 338, 8, 27, 1, 28, 1, 28, 1, 28, 3, 28, 343,
2580
+ 8, 28, 1, 28, 1, 28, 3, 28, 347, 8, 28, 3, 28, 349, 8, 28, 1, 28, 1, 28, 1, 28, 3, 28, 354,
2581
+ 8, 28, 1, 28, 1, 28, 3, 28, 358, 8, 28, 3, 28, 360, 8, 28, 1, 28, 1, 28, 1, 28, 3, 28, 365,
2582
+ 8, 28, 1, 28, 1, 28, 3, 28, 369, 8, 28, 3, 28, 371, 8, 28, 3, 28, 373, 8, 28, 1, 29, 1,
2583
+ 29, 3, 29, 377, 8, 29, 1, 29, 1, 29, 3, 29, 381, 8, 29, 3, 29, 383, 8, 29, 1, 30, 1, 30,
2584
+ 3, 30, 387, 8, 30, 1, 30, 1, 30, 3, 30, 391, 8, 30, 3, 30, 393, 8, 30, 1, 31, 1, 31, 3,
2585
+ 31, 397, 8, 31, 1, 31, 3, 31, 400, 8, 31, 1, 31, 1, 31, 1, 31, 3, 31, 405, 8, 31, 3, 31,
2586
+ 407, 8, 31, 1, 32, 1, 32, 3, 32, 411, 8, 32, 1, 32, 1, 32, 3, 32, 415, 8, 32, 3, 32, 417,
2587
+ 8, 32, 1, 33, 1, 33, 1, 33, 3, 33, 422, 8, 33, 1, 33, 1, 33, 3, 33, 426, 8, 33, 3, 33, 428,
2588
+ 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 433, 8, 33, 1, 33, 1, 33, 3, 33, 437, 8, 33, 3, 33, 439,
2589
+ 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 444, 8, 33, 1, 33, 1, 33, 3, 33, 448, 8, 33, 3, 33, 450,
2590
+ 8, 33, 3, 33, 452, 8, 33, 1, 34, 1, 34, 5, 34, 456, 8, 34, 10, 34, 12, 34, 459, 9, 34,
2591
+ 1, 34, 1, 34, 1, 35, 1, 35, 1, 35, 1, 35, 1, 36, 1, 36, 3, 36, 469, 8, 36, 1, 36, 1, 36,
2592
+ 1, 37, 1, 37, 3, 37, 475, 8, 37, 1, 37, 1, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1, 39, 1, 39,
2593
+ 3, 39, 485, 8, 39, 1, 39, 1, 39, 1, 40, 1, 40, 5, 40, 491, 8, 40, 10, 40, 12, 40, 494,
2594
+ 9, 40, 1, 40, 1, 40, 1, 41, 1, 41, 1, 42, 4, 42, 501, 8, 42, 11, 42, 12, 42, 502, 1, 42,
2464
2595
  0, 0, 43, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40,
2465
2596
  42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84,
2466
- 0, 2, 2, 0, 9, 9, 13, 13, 1, 0, 10, 11, 523, 0, 96, 1, 0, 0, 0, 2, 99, 1, 0, 0, 0, 4, 108,
2597
+ 0, 2, 2, 0, 9, 9, 13, 13, 1, 0, 10, 11, 580, 0, 96, 1, 0, 0, 0, 2, 99, 1, 0, 0, 0, 4, 108,
2467
2598
  1, 0, 0, 0, 6, 113, 1, 0, 0, 0, 8, 125, 1, 0, 0, 0, 10, 133, 1, 0, 0, 0, 12, 141, 1, 0, 0,
2468
- 0, 14, 158, 1, 0, 0, 0, 16, 173, 1, 0, 0, 0, 18, 175, 1, 0, 0, 0, 20, 181, 1, 0, 0, 0, 22,
2469
- 187, 1, 0, 0, 0, 24, 193, 1, 0, 0, 0, 26, 199, 1, 0, 0, 0, 28, 205, 1, 0, 0, 0, 30, 211,
2470
- 1, 0, 0, 0, 32, 217, 1, 0, 0, 0, 34, 221, 1, 0, 0, 0, 36, 227, 1, 0, 0, 0, 38, 233, 1, 0,
2471
- 0, 0, 40, 239, 1, 0, 0, 0, 42, 245, 1, 0, 0, 0, 44, 251, 1, 0, 0, 0, 46, 257, 1, 0, 0, 0,
2472
- 48, 263, 1, 0, 0, 0, 50, 269, 1, 0, 0, 0, 52, 284, 1, 0, 0, 0, 54, 319, 1, 0, 0, 0, 56, 329,
2473
- 1, 0, 0, 0, 58, 339, 1, 0, 0, 0, 60, 349, 1, 0, 0, 0, 62, 363, 1, 0, 0, 0, 64, 373, 1, 0,
2474
- 0, 0, 66, 408, 1, 0, 0, 0, 68, 410, 1, 0, 0, 0, 70, 419, 1, 0, 0, 0, 72, 423, 1, 0, 0, 0,
2475
- 74, 429, 1, 0, 0, 0, 76, 435, 1, 0, 0, 0, 78, 439, 1, 0, 0, 0, 80, 445, 1, 0, 0, 0, 82, 454,
2476
- 1, 0, 0, 0, 84, 457, 1, 0, 0, 0, 86, 87, 3, 4, 2, 0, 87, 88, 5, 0, 0, 1, 88, 97, 1, 0, 0, 0,
2477
- 89, 90, 5, 33, 0, 0, 90, 92, 3, 6, 3, 0, 91, 93, 5, 34, 0, 0, 92, 91, 1, 0, 0, 0, 92, 93,
2599
+ 0, 14, 158, 1, 0, 0, 0, 16, 173, 1, 0, 0, 0, 18, 175, 1, 0, 0, 0, 20, 184, 1, 0, 0, 0, 22,
2600
+ 193, 1, 0, 0, 0, 24, 202, 1, 0, 0, 0, 26, 211, 1, 0, 0, 0, 28, 220, 1, 0, 0, 0, 30, 229,
2601
+ 1, 0, 0, 0, 32, 238, 1, 0, 0, 0, 34, 245, 1, 0, 0, 0, 36, 254, 1, 0, 0, 0, 38, 263, 1, 0,
2602
+ 0, 0, 40, 272, 1, 0, 0, 0, 42, 281, 1, 0, 0, 0, 44, 290, 1, 0, 0, 0, 46, 299, 1, 0, 0, 0,
2603
+ 48, 308, 1, 0, 0, 0, 50, 317, 1, 0, 0, 0, 52, 326, 1, 0, 0, 0, 54, 337, 1, 0, 0, 0, 56, 372,
2604
+ 1, 0, 0, 0, 58, 382, 1, 0, 0, 0, 60, 392, 1, 0, 0, 0, 62, 406, 1, 0, 0, 0, 64, 416, 1, 0,
2605
+ 0, 0, 66, 451, 1, 0, 0, 0, 68, 453, 1, 0, 0, 0, 70, 462, 1, 0, 0, 0, 72, 466, 1, 0, 0, 0,
2606
+ 74, 472, 1, 0, 0, 0, 76, 478, 1, 0, 0, 0, 78, 482, 1, 0, 0, 0, 80, 488, 1, 0, 0, 0, 82, 497,
2607
+ 1, 0, 0, 0, 84, 500, 1, 0, 0, 0, 86, 87, 3, 4, 2, 0, 87, 88, 5, 0, 0, 1, 88, 97, 1, 0, 0, 0,
2608
+ 89, 90, 5, 34, 0, 0, 90, 92, 3, 6, 3, 0, 91, 93, 5, 35, 0, 0, 92, 91, 1, 0, 0, 0, 92, 93,
2478
2609
  1, 0, 0, 0, 93, 94, 1, 0, 0, 0, 94, 95, 5, 0, 0, 1, 95, 97, 1, 0, 0, 0, 96, 86, 1, 0, 0, 0,
2479
2610
  96, 89, 1, 0, 0, 0, 97, 1, 1, 0, 0, 0, 98, 100, 3, 4, 2, 0, 99, 98, 1, 0, 0, 0, 100, 101,
2480
2611
  1, 0, 0, 0, 101, 99, 1, 0, 0, 0, 101, 102, 1, 0, 0, 0, 102, 103, 1, 0, 0, 0, 103, 104, 5,
@@ -2504,102 +2635,117 @@ export class plurnkParser extends antlr.Parser {
2504
2635
  173, 160, 1, 0, 0, 0, 173, 161, 1, 0, 0, 0, 173, 162, 1, 0, 0, 0, 173, 163, 1, 0, 0, 0,
2505
2636
  173, 164, 1, 0, 0, 0, 173, 165, 1, 0, 0, 0, 173, 166, 1, 0, 0, 0, 173, 167, 1, 0, 0, 0,
2506
2637
  173, 168, 1, 0, 0, 0, 173, 169, 1, 0, 0, 0, 173, 170, 1, 0, 0, 0, 173, 171, 1, 0, 0, 0,
2507
- 173, 172, 1, 0, 0, 0, 174, 17, 1, 0, 0, 0, 175, 177, 5, 18, 0, 0, 176, 178, 3, 54, 27,
2508
- 0, 177, 176, 1, 0, 0, 0, 177, 178, 1, 0, 0, 0, 178, 179, 1, 0, 0, 0, 179, 180, 3, 52, 26,
2509
- 0, 180, 19, 1, 0, 0, 0, 181, 183, 5, 19, 0, 0, 182, 184, 3, 54, 27, 0, 183, 182, 1, 0,
2510
- 0, 0, 183, 184, 1, 0, 0, 0, 184, 185, 1, 0, 0, 0, 185, 186, 3, 52, 26, 0, 186, 21, 1, 0,
2511
- 0, 0, 187, 189, 5, 20, 0, 0, 188, 190, 3, 54, 27, 0, 189, 188, 1, 0, 0, 0, 189, 190, 1,
2512
- 0, 0, 0, 190, 191, 1, 0, 0, 0, 191, 192, 3, 52, 26, 0, 192, 23, 1, 0, 0, 0, 193, 195, 5,
2513
- 21, 0, 0, 194, 196, 3, 54, 27, 0, 195, 194, 1, 0, 0, 0, 195, 196, 1, 0, 0, 0, 196, 197,
2514
- 1, 0, 0, 0, 197, 198, 3, 52, 26, 0, 198, 25, 1, 0, 0, 0, 199, 201, 5, 22, 0, 0, 200, 202,
2515
- 3, 54, 27, 0, 201, 200, 1, 0, 0, 0, 201, 202, 1, 0, 0, 0, 202, 203, 1, 0, 0, 0, 203, 204,
2516
- 3, 52, 26, 0, 204, 27, 1, 0, 0, 0, 205, 207, 5, 23, 0, 0, 206, 208, 3, 56, 28, 0, 207,
2517
- 206, 1, 0, 0, 0, 207, 208, 1, 0, 0, 0, 208, 209, 1, 0, 0, 0, 209, 210, 3, 52, 26, 0, 210,
2518
- 29, 1, 0, 0, 0, 211, 213, 5, 24, 0, 0, 212, 214, 3, 56, 28, 0, 213, 212, 1, 0, 0, 0, 213,
2519
- 214, 1, 0, 0, 0, 214, 215, 1, 0, 0, 0, 215, 216, 3, 52, 26, 0, 216, 31, 1, 0, 0, 0, 217,
2520
- 218, 5, 25, 0, 0, 218, 219, 3, 62, 31, 0, 219, 220, 3, 52, 26, 0, 220, 33, 1, 0, 0, 0,
2521
- 221, 223, 5, 25, 0, 0, 222, 224, 3, 64, 32, 0, 223, 222, 1, 0, 0, 0, 223, 224, 1, 0, 0,
2522
- 0, 224, 225, 1, 0, 0, 0, 225, 226, 3, 52, 26, 0, 226, 35, 1, 0, 0, 0, 227, 229, 5, 26,
2523
- 0, 0, 228, 230, 3, 66, 33, 0, 229, 228, 1, 0, 0, 0, 229, 230, 1, 0, 0, 0, 230, 231, 1,
2524
- 0, 0, 0, 231, 232, 3, 52, 26, 0, 232, 37, 1, 0, 0, 0, 233, 235, 5, 27, 0, 0, 234, 236,
2525
- 3, 68, 34, 0, 235, 234, 1, 0, 0, 0, 235, 236, 1, 0, 0, 0, 236, 237, 1, 0, 0, 0, 237, 238,
2526
- 3, 52, 26, 0, 238, 39, 1, 0, 0, 0, 239, 241, 5, 28, 0, 0, 240, 242, 3, 60, 30, 0, 241,
2527
- 240, 1, 0, 0, 0, 241, 242, 1, 0, 0, 0, 242, 243, 1, 0, 0, 0, 243, 244, 3, 52, 26, 0, 244,
2528
- 41, 1, 0, 0, 0, 245, 247, 5, 29, 0, 0, 246, 248, 3, 60, 30, 0, 247, 246, 1, 0, 0, 0, 247,
2529
- 248, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 250, 3, 52, 26, 0, 250, 43, 1, 0, 0, 0, 251,
2530
- 253, 5, 30, 0, 0, 252, 254, 3, 58, 29, 0, 253, 252, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254,
2531
- 255, 1, 0, 0, 0, 255, 256, 3, 52, 26, 0, 256, 45, 1, 0, 0, 0, 257, 259, 5, 17, 0, 0, 258,
2532
- 260, 3, 54, 27, 0, 259, 258, 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 261, 1, 0, 0, 0, 261,
2533
- 262, 3, 52, 26, 0, 262, 47, 1, 0, 0, 0, 263, 265, 5, 31, 0, 0, 264, 266, 3, 54, 27, 0,
2534
- 265, 264, 1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266, 267, 1, 0, 0, 0, 267, 268, 3, 52, 26,
2535
- 0, 268, 49, 1, 0, 0, 0, 269, 271, 5, 32, 0, 0, 270, 272, 3, 54, 27, 0, 271, 270, 1, 0,
2536
- 0, 0, 271, 272, 1, 0, 0, 0, 272, 273, 1, 0, 0, 0, 273, 274, 3, 52, 26, 0, 274, 51, 1, 0,
2537
- 0, 0, 275, 285, 5, 8, 0, 0, 276, 278, 5, 7, 0, 0, 277, 279, 3, 84, 42, 0, 278, 277, 1,
2538
- 0, 0, 0, 278, 279, 1, 0, 0, 0, 279, 281, 1, 0, 0, 0, 280, 282, 5, 8, 0, 0, 281, 280, 1,
2539
- 0, 0, 0, 281, 282, 1, 0, 0, 0, 282, 285, 1, 0, 0, 0, 283, 285, 1, 0, 0, 0, 284, 275, 1,
2540
- 0, 0, 0, 284, 276, 1, 0, 0, 0, 284, 283, 1, 0, 0, 0, 285, 53, 1, 0, 0, 0, 286, 295, 3, 68,
2541
- 34, 0, 287, 289, 3, 80, 40, 0, 288, 290, 3, 82, 41, 0, 289, 288, 1, 0, 0, 0, 289, 290,
2542
- 1, 0, 0, 0, 290, 296, 1, 0, 0, 0, 291, 293, 3, 82, 41, 0, 292, 294, 3, 80, 40, 0, 293,
2543
- 292, 1, 0, 0, 0, 293, 294, 1, 0, 0, 0, 294, 296, 1, 0, 0, 0, 295, 287, 1, 0, 0, 0, 295,
2544
- 291, 1, 0, 0, 0, 295, 296, 1, 0, 0, 0, 296, 320, 1, 0, 0, 0, 297, 306, 3, 80, 40, 0, 298,
2545
- 300, 3, 68, 34, 0, 299, 301, 3, 82, 41, 0, 300, 299, 1, 0, 0, 0, 300, 301, 1, 0, 0, 0,
2546
- 301, 307, 1, 0, 0, 0, 302, 304, 3, 82, 41, 0, 303, 305, 3, 68, 34, 0, 304, 303, 1, 0,
2547
- 0, 0, 304, 305, 1, 0, 0, 0, 305, 307, 1, 0, 0, 0, 306, 298, 1, 0, 0, 0, 306, 302, 1, 0,
2548
- 0, 0, 306, 307, 1, 0, 0, 0, 307, 320, 1, 0, 0, 0, 308, 317, 3, 82, 41, 0, 309, 311, 3,
2549
- 68, 34, 0, 310, 312, 3, 80, 40, 0, 311, 310, 1, 0, 0, 0, 311, 312, 1, 0, 0, 0, 312, 318,
2550
- 1, 0, 0, 0, 313, 315, 3, 80, 40, 0, 314, 316, 3, 68, 34, 0, 315, 314, 1, 0, 0, 0, 315,
2551
- 316, 1, 0, 0, 0, 316, 318, 1, 0, 0, 0, 317, 309, 1, 0, 0, 0, 317, 313, 1, 0, 0, 0, 317,
2552
- 318, 1, 0, 0, 0, 318, 320, 1, 0, 0, 0, 319, 286, 1, 0, 0, 0, 319, 297, 1, 0, 0, 0, 319,
2553
- 308, 1, 0, 0, 0, 320, 55, 1, 0, 0, 0, 321, 323, 3, 68, 34, 0, 322, 324, 3, 80, 40, 0, 323,
2554
- 322, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 330, 1, 0, 0, 0, 325, 327, 3, 80, 40, 0, 326,
2555
- 328, 3, 68, 34, 0, 327, 326, 1, 0, 0, 0, 327, 328, 1, 0, 0, 0, 328, 330, 1, 0, 0, 0, 329,
2556
- 321, 1, 0, 0, 0, 329, 325, 1, 0, 0, 0, 330, 57, 1, 0, 0, 0, 331, 333, 3, 72, 36, 0, 332,
2557
- 334, 3, 80, 40, 0, 333, 332, 1, 0, 0, 0, 333, 334, 1, 0, 0, 0, 334, 340, 1, 0, 0, 0, 335,
2558
- 337, 3, 80, 40, 0, 336, 338, 3, 72, 36, 0, 337, 336, 1, 0, 0, 0, 337, 338, 1, 0, 0, 0,
2559
- 338, 340, 1, 0, 0, 0, 339, 331, 1, 0, 0, 0, 339, 335, 1, 0, 0, 0, 340, 59, 1, 0, 0, 0, 341,
2560
- 343, 3, 70, 35, 0, 342, 344, 3, 80, 40, 0, 343, 342, 1, 0, 0, 0, 343, 344, 1, 0, 0, 0,
2561
- 344, 350, 1, 0, 0, 0, 345, 347, 3, 80, 40, 0, 346, 348, 3, 70, 35, 0, 347, 346, 1, 0,
2562
- 0, 0, 347, 348, 1, 0, 0, 0, 348, 350, 1, 0, 0, 0, 349, 341, 1, 0, 0, 0, 349, 345, 1, 0,
2563
- 0, 0, 350, 61, 1, 0, 0, 0, 351, 353, 3, 76, 38, 0, 352, 354, 3, 80, 40, 0, 353, 352, 1,
2564
- 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 356, 1, 0, 0, 0, 355, 357, 3, 82, 41, 0, 356, 355,
2565
- 1, 0, 0, 0, 356, 357, 1, 0, 0, 0, 357, 364, 1, 0, 0, 0, 358, 359, 3, 80, 40, 0, 359, 361,
2566
- 3, 76, 38, 0, 360, 362, 3, 82, 41, 0, 361, 360, 1, 0, 0, 0, 361, 362, 1, 0, 0, 0, 362,
2567
- 364, 1, 0, 0, 0, 363, 351, 1, 0, 0, 0, 363, 358, 1, 0, 0, 0, 364, 63, 1, 0, 0, 0, 365, 367,
2568
- 3, 74, 37, 0, 366, 368, 3, 80, 40, 0, 367, 366, 1, 0, 0, 0, 367, 368, 1, 0, 0, 0, 368,
2569
- 374, 1, 0, 0, 0, 369, 371, 3, 80, 40, 0, 370, 372, 3, 74, 37, 0, 371, 370, 1, 0, 0, 0,
2570
- 371, 372, 1, 0, 0, 0, 372, 374, 1, 0, 0, 0, 373, 365, 1, 0, 0, 0, 373, 369, 1, 0, 0, 0,
2571
- 374, 65, 1, 0, 0, 0, 375, 384, 3, 78, 39, 0, 376, 378, 3, 80, 40, 0, 377, 379, 3, 82,
2572
- 41, 0, 378, 377, 1, 0, 0, 0, 378, 379, 1, 0, 0, 0, 379, 385, 1, 0, 0, 0, 380, 382, 3, 82,
2573
- 41, 0, 381, 383, 3, 80, 40, 0, 382, 381, 1, 0, 0, 0, 382, 383, 1, 0, 0, 0, 383, 385, 1,
2574
- 0, 0, 0, 384, 376, 1, 0, 0, 0, 384, 380, 1, 0, 0, 0, 384, 385, 1, 0, 0, 0, 385, 409, 1,
2575
- 0, 0, 0, 386, 395, 3, 80, 40, 0, 387, 389, 3, 78, 39, 0, 388, 390, 3, 82, 41, 0, 389,
2576
- 388, 1, 0, 0, 0, 389, 390, 1, 0, 0, 0, 390, 396, 1, 0, 0, 0, 391, 393, 3, 82, 41, 0, 392,
2577
- 394, 3, 78, 39, 0, 393, 392, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394, 396, 1, 0, 0, 0, 395,
2578
- 387, 1, 0, 0, 0, 395, 391, 1, 0, 0, 0, 395, 396, 1, 0, 0, 0, 396, 409, 1, 0, 0, 0, 397,
2579
- 406, 3, 82, 41, 0, 398, 400, 3, 78, 39, 0, 399, 401, 3, 80, 40, 0, 400, 399, 1, 0, 0,
2580
- 0, 400, 401, 1, 0, 0, 0, 401, 407, 1, 0, 0, 0, 402, 404, 3, 80, 40, 0, 403, 405, 3, 78,
2581
- 39, 0, 404, 403, 1, 0, 0, 0, 404, 405, 1, 0, 0, 0, 405, 407, 1, 0, 0, 0, 406, 398, 1, 0,
2582
- 0, 0, 406, 402, 1, 0, 0, 0, 406, 407, 1, 0, 0, 0, 407, 409, 1, 0, 0, 0, 408, 375, 1, 0,
2583
- 0, 0, 408, 386, 1, 0, 0, 0, 408, 397, 1, 0, 0, 0, 409, 67, 1, 0, 0, 0, 410, 414, 5, 1, 0,
2584
- 0, 411, 413, 7, 0, 0, 0, 412, 411, 1, 0, 0, 0, 413, 416, 1, 0, 0, 0, 414, 412, 1, 0, 0,
2585
- 0, 414, 415, 1, 0, 0, 0, 415, 417, 1, 0, 0, 0, 416, 414, 1, 0, 0, 0, 417, 418, 5, 2, 0,
2586
- 0, 418, 69, 1, 0, 0, 0, 419, 420, 5, 1, 0, 0, 420, 421, 5, 13, 0, 0, 421, 422, 5, 2, 0,
2587
- 0, 422, 71, 1, 0, 0, 0, 423, 425, 5, 1, 0, 0, 424, 426, 7, 1, 0, 0, 425, 424, 1, 0, 0, 0,
2588
- 425, 426, 1, 0, 0, 0, 426, 427, 1, 0, 0, 0, 427, 428, 5, 2, 0, 0, 428, 73, 1, 0, 0, 0, 429,
2589
- 431, 5, 1, 0, 0, 430, 432, 5, 10, 0, 0, 431, 430, 1, 0, 0, 0, 431, 432, 1, 0, 0, 0, 432,
2590
- 433, 1, 0, 0, 0, 433, 434, 5, 2, 0, 0, 434, 75, 1, 0, 0, 0, 435, 436, 5, 1, 0, 0, 436, 437,
2591
- 5, 11, 0, 0, 437, 438, 5, 2, 0, 0, 438, 77, 1, 0, 0, 0, 439, 441, 5, 1, 0, 0, 440, 442,
2592
- 5, 12, 0, 0, 441, 440, 1, 0, 0, 0, 441, 442, 1, 0, 0, 0, 442, 443, 1, 0, 0, 0, 443, 444,
2593
- 5, 2, 0, 0, 444, 79, 1, 0, 0, 0, 445, 449, 5, 3, 0, 0, 446, 448, 5, 14, 0, 0, 447, 446,
2594
- 1, 0, 0, 0, 448, 451, 1, 0, 0, 0, 449, 447, 1, 0, 0, 0, 449, 450, 1, 0, 0, 0, 450, 452,
2595
- 1, 0, 0, 0, 451, 449, 1, 0, 0, 0, 452, 453, 5, 4, 0, 0, 453, 81, 1, 0, 0, 0, 454, 455, 5,
2596
- 5, 0, 0, 455, 83, 1, 0, 0, 0, 456, 458, 5, 15, 0, 0, 457, 456, 1, 0, 0, 0, 458, 459, 1,
2597
- 0, 0, 0, 459, 457, 1, 0, 0, 0, 459, 460, 1, 0, 0, 0, 460, 85, 1, 0, 0, 0, 71, 92, 96, 101,
2598
- 108, 117, 125, 133, 141, 158, 173, 177, 183, 189, 195, 201, 207, 213, 223, 229,
2599
- 235, 241, 247, 253, 259, 265, 271, 278, 281, 284, 289, 293, 295, 300, 304, 306,
2600
- 311, 315, 317, 319, 323, 327, 329, 333, 337, 339, 343, 347, 349, 353, 356, 361,
2601
- 363, 367, 371, 373, 378, 382, 384, 389, 393, 395, 400, 404, 406, 408, 414, 425,
2602
- 431, 441, 449, 459
2638
+ 173, 172, 1, 0, 0, 0, 174, 17, 1, 0, 0, 0, 175, 177, 5, 19, 0, 0, 176, 178, 3, 56, 28,
2639
+ 0, 177, 176, 1, 0, 0, 0, 177, 178, 1, 0, 0, 0, 178, 180, 1, 0, 0, 0, 179, 181, 3, 52, 26,
2640
+ 0, 180, 179, 1, 0, 0, 0, 180, 181, 1, 0, 0, 0, 181, 182, 1, 0, 0, 0, 182, 183, 3, 54, 27,
2641
+ 0, 183, 19, 1, 0, 0, 0, 184, 186, 5, 20, 0, 0, 185, 187, 3, 56, 28, 0, 186, 185, 1, 0,
2642
+ 0, 0, 186, 187, 1, 0, 0, 0, 187, 189, 1, 0, 0, 0, 188, 190, 3, 52, 26, 0, 189, 188, 1,
2643
+ 0, 0, 0, 189, 190, 1, 0, 0, 0, 190, 191, 1, 0, 0, 0, 191, 192, 3, 54, 27, 0, 192, 21, 1,
2644
+ 0, 0, 0, 193, 195, 5, 21, 0, 0, 194, 196, 3, 56, 28, 0, 195, 194, 1, 0, 0, 0, 195, 196,
2645
+ 1, 0, 0, 0, 196, 198, 1, 0, 0, 0, 197, 199, 3, 52, 26, 0, 198, 197, 1, 0, 0, 0, 198, 199,
2646
+ 1, 0, 0, 0, 199, 200, 1, 0, 0, 0, 200, 201, 3, 54, 27, 0, 201, 23, 1, 0, 0, 0, 202, 204,
2647
+ 5, 22, 0, 0, 203, 205, 3, 56, 28, 0, 204, 203, 1, 0, 0, 0, 204, 205, 1, 0, 0, 0, 205, 207,
2648
+ 1, 0, 0, 0, 206, 208, 3, 52, 26, 0, 207, 206, 1, 0, 0, 0, 207, 208, 1, 0, 0, 0, 208, 209,
2649
+ 1, 0, 0, 0, 209, 210, 3, 54, 27, 0, 210, 25, 1, 0, 0, 0, 211, 213, 5, 23, 0, 0, 212, 214,
2650
+ 3, 56, 28, 0, 213, 212, 1, 0, 0, 0, 213, 214, 1, 0, 0, 0, 214, 216, 1, 0, 0, 0, 215, 217,
2651
+ 3, 52, 26, 0, 216, 215, 1, 0, 0, 0, 216, 217, 1, 0, 0, 0, 217, 218, 1, 0, 0, 0, 218, 219,
2652
+ 3, 54, 27, 0, 219, 27, 1, 0, 0, 0, 220, 222, 5, 24, 0, 0, 221, 223, 3, 56, 28, 0, 222,
2653
+ 221, 1, 0, 0, 0, 222, 223, 1, 0, 0, 0, 223, 225, 1, 0, 0, 0, 224, 226, 3, 52, 26, 0, 225,
2654
+ 224, 1, 0, 0, 0, 225, 226, 1, 0, 0, 0, 226, 227, 1, 0, 0, 0, 227, 228, 3, 54, 27, 0, 228,
2655
+ 29, 1, 0, 0, 0, 229, 231, 5, 25, 0, 0, 230, 232, 3, 56, 28, 0, 231, 230, 1, 0, 0, 0, 231,
2656
+ 232, 1, 0, 0, 0, 232, 234, 1, 0, 0, 0, 233, 235, 3, 52, 26, 0, 234, 233, 1, 0, 0, 0, 234,
2657
+ 235, 1, 0, 0, 0, 235, 236, 1, 0, 0, 0, 236, 237, 3, 54, 27, 0, 237, 31, 1, 0, 0, 0, 238,
2658
+ 239, 5, 26, 0, 0, 239, 241, 3, 62, 31, 0, 240, 242, 3, 52, 26, 0, 241, 240, 1, 0, 0, 0,
2659
+ 241, 242, 1, 0, 0, 0, 242, 243, 1, 0, 0, 0, 243, 244, 3, 54, 27, 0, 244, 33, 1, 0, 0, 0,
2660
+ 245, 247, 5, 26, 0, 0, 246, 248, 3, 64, 32, 0, 247, 246, 1, 0, 0, 0, 247, 248, 1, 0, 0,
2661
+ 0, 248, 250, 1, 0, 0, 0, 249, 251, 3, 52, 26, 0, 250, 249, 1, 0, 0, 0, 250, 251, 1, 0,
2662
+ 0, 0, 251, 252, 1, 0, 0, 0, 252, 253, 3, 54, 27, 0, 253, 35, 1, 0, 0, 0, 254, 256, 5, 27,
2663
+ 0, 0, 255, 257, 3, 66, 33, 0, 256, 255, 1, 0, 0, 0, 256, 257, 1, 0, 0, 0, 257, 259, 1,
2664
+ 0, 0, 0, 258, 260, 3, 52, 26, 0, 259, 258, 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 261,
2665
+ 1, 0, 0, 0, 261, 262, 3, 54, 27, 0, 262, 37, 1, 0, 0, 0, 263, 265, 5, 28, 0, 0, 264, 266,
2666
+ 3, 68, 34, 0, 265, 264, 1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266, 268, 1, 0, 0, 0, 267, 269,
2667
+ 3, 52, 26, 0, 268, 267, 1, 0, 0, 0, 268, 269, 1, 0, 0, 0, 269, 270, 1, 0, 0, 0, 270, 271,
2668
+ 3, 54, 27, 0, 271, 39, 1, 0, 0, 0, 272, 274, 5, 29, 0, 0, 273, 275, 3, 60, 30, 0, 274,
2669
+ 273, 1, 0, 0, 0, 274, 275, 1, 0, 0, 0, 275, 277, 1, 0, 0, 0, 276, 278, 3, 52, 26, 0, 277,
2670
+ 276, 1, 0, 0, 0, 277, 278, 1, 0, 0, 0, 278, 279, 1, 0, 0, 0, 279, 280, 3, 54, 27, 0, 280,
2671
+ 41, 1, 0, 0, 0, 281, 283, 5, 30, 0, 0, 282, 284, 3, 60, 30, 0, 283, 282, 1, 0, 0, 0, 283,
2672
+ 284, 1, 0, 0, 0, 284, 286, 1, 0, 0, 0, 285, 287, 3, 52, 26, 0, 286, 285, 1, 0, 0, 0, 286,
2673
+ 287, 1, 0, 0, 0, 287, 288, 1, 0, 0, 0, 288, 289, 3, 54, 27, 0, 289, 43, 1, 0, 0, 0, 290,
2674
+ 292, 5, 31, 0, 0, 291, 293, 3, 58, 29, 0, 292, 291, 1, 0, 0, 0, 292, 293, 1, 0, 0, 0, 293,
2675
+ 295, 1, 0, 0, 0, 294, 296, 3, 52, 26, 0, 295, 294, 1, 0, 0, 0, 295, 296, 1, 0, 0, 0, 296,
2676
+ 297, 1, 0, 0, 0, 297, 298, 3, 54, 27, 0, 298, 45, 1, 0, 0, 0, 299, 301, 5, 18, 0, 0, 300,
2677
+ 302, 3, 56, 28, 0, 301, 300, 1, 0, 0, 0, 301, 302, 1, 0, 0, 0, 302, 304, 1, 0, 0, 0, 303,
2678
+ 305, 3, 52, 26, 0, 304, 303, 1, 0, 0, 0, 304, 305, 1, 0, 0, 0, 305, 306, 1, 0, 0, 0, 306,
2679
+ 307, 3, 54, 27, 0, 307, 47, 1, 0, 0, 0, 308, 310, 5, 32, 0, 0, 309, 311, 3, 56, 28, 0,
2680
+ 310, 309, 1, 0, 0, 0, 310, 311, 1, 0, 0, 0, 311, 313, 1, 0, 0, 0, 312, 314, 3, 52, 26,
2681
+ 0, 313, 312, 1, 0, 0, 0, 313, 314, 1, 0, 0, 0, 314, 315, 1, 0, 0, 0, 315, 316, 3, 54, 27,
2682
+ 0, 316, 49, 1, 0, 0, 0, 317, 319, 5, 33, 0, 0, 318, 320, 3, 56, 28, 0, 319, 318, 1, 0,
2683
+ 0, 0, 319, 320, 1, 0, 0, 0, 320, 322, 1, 0, 0, 0, 321, 323, 3, 52, 26, 0, 322, 321, 1,
2684
+ 0, 0, 0, 322, 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 325, 3, 54, 27, 0, 325, 51, 1,
2685
+ 0, 0, 0, 326, 327, 5, 17, 0, 0, 327, 53, 1, 0, 0, 0, 328, 338, 5, 8, 0, 0, 329, 331, 5,
2686
+ 7, 0, 0, 330, 332, 3, 84, 42, 0, 331, 330, 1, 0, 0, 0, 331, 332, 1, 0, 0, 0, 332, 334,
2687
+ 1, 0, 0, 0, 333, 335, 5, 8, 0, 0, 334, 333, 1, 0, 0, 0, 334, 335, 1, 0, 0, 0, 335, 338,
2688
+ 1, 0, 0, 0, 336, 338, 1, 0, 0, 0, 337, 328, 1, 0, 0, 0, 337, 329, 1, 0, 0, 0, 337, 336,
2689
+ 1, 0, 0, 0, 338, 55, 1, 0, 0, 0, 339, 348, 3, 68, 34, 0, 340, 342, 3, 80, 40, 0, 341, 343,
2690
+ 3, 82, 41, 0, 342, 341, 1, 0, 0, 0, 342, 343, 1, 0, 0, 0, 343, 349, 1, 0, 0, 0, 344, 346,
2691
+ 3, 82, 41, 0, 345, 347, 3, 80, 40, 0, 346, 345, 1, 0, 0, 0, 346, 347, 1, 0, 0, 0, 347,
2692
+ 349, 1, 0, 0, 0, 348, 340, 1, 0, 0, 0, 348, 344, 1, 0, 0, 0, 348, 349, 1, 0, 0, 0, 349,
2693
+ 373, 1, 0, 0, 0, 350, 359, 3, 80, 40, 0, 351, 353, 3, 68, 34, 0, 352, 354, 3, 82, 41,
2694
+ 0, 353, 352, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 360, 1, 0, 0, 0, 355, 357, 3, 82, 41,
2695
+ 0, 356, 358, 3, 68, 34, 0, 357, 356, 1, 0, 0, 0, 357, 358, 1, 0, 0, 0, 358, 360, 1, 0,
2696
+ 0, 0, 359, 351, 1, 0, 0, 0, 359, 355, 1, 0, 0, 0, 359, 360, 1, 0, 0, 0, 360, 373, 1, 0,
2697
+ 0, 0, 361, 370, 3, 82, 41, 0, 362, 364, 3, 68, 34, 0, 363, 365, 3, 80, 40, 0, 364, 363,
2698
+ 1, 0, 0, 0, 364, 365, 1, 0, 0, 0, 365, 371, 1, 0, 0, 0, 366, 368, 3, 80, 40, 0, 367, 369,
2699
+ 3, 68, 34, 0, 368, 367, 1, 0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 371, 1, 0, 0, 0, 370, 362,
2700
+ 1, 0, 0, 0, 370, 366, 1, 0, 0, 0, 370, 371, 1, 0, 0, 0, 371, 373, 1, 0, 0, 0, 372, 339,
2701
+ 1, 0, 0, 0, 372, 350, 1, 0, 0, 0, 372, 361, 1, 0, 0, 0, 373, 57, 1, 0, 0, 0, 374, 376, 3,
2702
+ 72, 36, 0, 375, 377, 3, 80, 40, 0, 376, 375, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 383,
2703
+ 1, 0, 0, 0, 378, 380, 3, 80, 40, 0, 379, 381, 3, 72, 36, 0, 380, 379, 1, 0, 0, 0, 380,
2704
+ 381, 1, 0, 0, 0, 381, 383, 1, 0, 0, 0, 382, 374, 1, 0, 0, 0, 382, 378, 1, 0, 0, 0, 383,
2705
+ 59, 1, 0, 0, 0, 384, 386, 3, 70, 35, 0, 385, 387, 3, 80, 40, 0, 386, 385, 1, 0, 0, 0, 386,
2706
+ 387, 1, 0, 0, 0, 387, 393, 1, 0, 0, 0, 388, 390, 3, 80, 40, 0, 389, 391, 3, 70, 35, 0,
2707
+ 390, 389, 1, 0, 0, 0, 390, 391, 1, 0, 0, 0, 391, 393, 1, 0, 0, 0, 392, 384, 1, 0, 0, 0,
2708
+ 392, 388, 1, 0, 0, 0, 393, 61, 1, 0, 0, 0, 394, 396, 3, 76, 38, 0, 395, 397, 3, 80, 40,
2709
+ 0, 396, 395, 1, 0, 0, 0, 396, 397, 1, 0, 0, 0, 397, 399, 1, 0, 0, 0, 398, 400, 3, 82, 41,
2710
+ 0, 399, 398, 1, 0, 0, 0, 399, 400, 1, 0, 0, 0, 400, 407, 1, 0, 0, 0, 401, 402, 3, 80, 40,
2711
+ 0, 402, 404, 3, 76, 38, 0, 403, 405, 3, 82, 41, 0, 404, 403, 1, 0, 0, 0, 404, 405, 1,
2712
+ 0, 0, 0, 405, 407, 1, 0, 0, 0, 406, 394, 1, 0, 0, 0, 406, 401, 1, 0, 0, 0, 407, 63, 1, 0,
2713
+ 0, 0, 408, 410, 3, 74, 37, 0, 409, 411, 3, 80, 40, 0, 410, 409, 1, 0, 0, 0, 410, 411,
2714
+ 1, 0, 0, 0, 411, 417, 1, 0, 0, 0, 412, 414, 3, 80, 40, 0, 413, 415, 3, 74, 37, 0, 414,
2715
+ 413, 1, 0, 0, 0, 414, 415, 1, 0, 0, 0, 415, 417, 1, 0, 0, 0, 416, 408, 1, 0, 0, 0, 416,
2716
+ 412, 1, 0, 0, 0, 417, 65, 1, 0, 0, 0, 418, 427, 3, 78, 39, 0, 419, 421, 3, 80, 40, 0, 420,
2717
+ 422, 3, 82, 41, 0, 421, 420, 1, 0, 0, 0, 421, 422, 1, 0, 0, 0, 422, 428, 1, 0, 0, 0, 423,
2718
+ 425, 3, 82, 41, 0, 424, 426, 3, 80, 40, 0, 425, 424, 1, 0, 0, 0, 425, 426, 1, 0, 0, 0,
2719
+ 426, 428, 1, 0, 0, 0, 427, 419, 1, 0, 0, 0, 427, 423, 1, 0, 0, 0, 427, 428, 1, 0, 0, 0,
2720
+ 428, 452, 1, 0, 0, 0, 429, 438, 3, 80, 40, 0, 430, 432, 3, 78, 39, 0, 431, 433, 3, 82,
2721
+ 41, 0, 432, 431, 1, 0, 0, 0, 432, 433, 1, 0, 0, 0, 433, 439, 1, 0, 0, 0, 434, 436, 3, 82,
2722
+ 41, 0, 435, 437, 3, 78, 39, 0, 436, 435, 1, 0, 0, 0, 436, 437, 1, 0, 0, 0, 437, 439, 1,
2723
+ 0, 0, 0, 438, 430, 1, 0, 0, 0, 438, 434, 1, 0, 0, 0, 438, 439, 1, 0, 0, 0, 439, 452, 1,
2724
+ 0, 0, 0, 440, 449, 3, 82, 41, 0, 441, 443, 3, 78, 39, 0, 442, 444, 3, 80, 40, 0, 443,
2725
+ 442, 1, 0, 0, 0, 443, 444, 1, 0, 0, 0, 444, 450, 1, 0, 0, 0, 445, 447, 3, 80, 40, 0, 446,
2726
+ 448, 3, 78, 39, 0, 447, 446, 1, 0, 0, 0, 447, 448, 1, 0, 0, 0, 448, 450, 1, 0, 0, 0, 449,
2727
+ 441, 1, 0, 0, 0, 449, 445, 1, 0, 0, 0, 449, 450, 1, 0, 0, 0, 450, 452, 1, 0, 0, 0, 451,
2728
+ 418, 1, 0, 0, 0, 451, 429, 1, 0, 0, 0, 451, 440, 1, 0, 0, 0, 452, 67, 1, 0, 0, 0, 453, 457,
2729
+ 5, 1, 0, 0, 454, 456, 7, 0, 0, 0, 455, 454, 1, 0, 0, 0, 456, 459, 1, 0, 0, 0, 457, 455,
2730
+ 1, 0, 0, 0, 457, 458, 1, 0, 0, 0, 458, 460, 1, 0, 0, 0, 459, 457, 1, 0, 0, 0, 460, 461,
2731
+ 5, 2, 0, 0, 461, 69, 1, 0, 0, 0, 462, 463, 5, 1, 0, 0, 463, 464, 5, 13, 0, 0, 464, 465,
2732
+ 5, 2, 0, 0, 465, 71, 1, 0, 0, 0, 466, 468, 5, 1, 0, 0, 467, 469, 7, 1, 0, 0, 468, 467, 1,
2733
+ 0, 0, 0, 468, 469, 1, 0, 0, 0, 469, 470, 1, 0, 0, 0, 470, 471, 5, 2, 0, 0, 471, 73, 1, 0,
2734
+ 0, 0, 472, 474, 5, 1, 0, 0, 473, 475, 5, 10, 0, 0, 474, 473, 1, 0, 0, 0, 474, 475, 1, 0,
2735
+ 0, 0, 475, 476, 1, 0, 0, 0, 476, 477, 5, 2, 0, 0, 477, 75, 1, 0, 0, 0, 478, 479, 5, 1, 0,
2736
+ 0, 479, 480, 5, 11, 0, 0, 480, 481, 5, 2, 0, 0, 481, 77, 1, 0, 0, 0, 482, 484, 5, 1, 0,
2737
+ 0, 483, 485, 5, 12, 0, 0, 484, 483, 1, 0, 0, 0, 484, 485, 1, 0, 0, 0, 485, 486, 1, 0, 0,
2738
+ 0, 486, 487, 5, 2, 0, 0, 487, 79, 1, 0, 0, 0, 488, 492, 5, 3, 0, 0, 489, 491, 5, 14, 0,
2739
+ 0, 490, 489, 1, 0, 0, 0, 491, 494, 1, 0, 0, 0, 492, 490, 1, 0, 0, 0, 492, 493, 1, 0, 0,
2740
+ 0, 493, 495, 1, 0, 0, 0, 494, 492, 1, 0, 0, 0, 495, 496, 5, 4, 0, 0, 496, 81, 1, 0, 0, 0,
2741
+ 497, 498, 5, 5, 0, 0, 498, 83, 1, 0, 0, 0, 499, 501, 5, 15, 0, 0, 500, 499, 1, 0, 0, 0,
2742
+ 501, 502, 1, 0, 0, 0, 502, 500, 1, 0, 0, 0, 502, 503, 1, 0, 0, 0, 503, 85, 1, 0, 0, 0, 85,
2743
+ 92, 96, 101, 108, 117, 125, 133, 141, 158, 173, 177, 180, 186, 189, 195, 198, 204,
2744
+ 207, 213, 216, 222, 225, 231, 234, 241, 247, 250, 256, 259, 265, 268, 274, 277,
2745
+ 283, 286, 292, 295, 301, 304, 310, 313, 319, 322, 331, 334, 337, 342, 346, 348,
2746
+ 353, 357, 359, 364, 368, 370, 372, 376, 380, 382, 386, 390, 392, 396, 399, 404,
2747
+ 406, 410, 414, 416, 421, 425, 427, 432, 436, 438, 443, 447, 449, 451, 457, 468,
2748
+ 474, 484, 492, 502
2603
2749
  ];
2604
2750
  static __ATN;
2605
2751
  static get _ATN() {
@@ -2929,6 +3075,9 @@ export class FindStatementContext extends antlr.ParserRuleContext {
2929
3075
  tagOpModifiers() {
2930
3076
  return this.getRuleContext(0, TagOpModifiersContext);
2931
3077
  }
3078
+ opAnnotation() {
3079
+ return this.getRuleContext(0, OpAnnotationContext);
3080
+ }
2932
3081
  get ruleIndex() {
2933
3082
  return plurnkParser.RULE_findStatement;
2934
3083
  }
@@ -2954,6 +3103,9 @@ export class ReadStatementContext extends antlr.ParserRuleContext {
2954
3103
  tagOpModifiers() {
2955
3104
  return this.getRuleContext(0, TagOpModifiersContext);
2956
3105
  }
3106
+ opAnnotation() {
3107
+ return this.getRuleContext(0, OpAnnotationContext);
3108
+ }
2957
3109
  get ruleIndex() {
2958
3110
  return plurnkParser.RULE_readStatement;
2959
3111
  }
@@ -2979,6 +3131,9 @@ export class EditStatementContext extends antlr.ParserRuleContext {
2979
3131
  tagOpModifiers() {
2980
3132
  return this.getRuleContext(0, TagOpModifiersContext);
2981
3133
  }
3134
+ opAnnotation() {
3135
+ return this.getRuleContext(0, OpAnnotationContext);
3136
+ }
2982
3137
  get ruleIndex() {
2983
3138
  return plurnkParser.RULE_editStatement;
2984
3139
  }
@@ -3004,6 +3159,9 @@ export class CopyStatementContext extends antlr.ParserRuleContext {
3004
3159
  tagOpModifiers() {
3005
3160
  return this.getRuleContext(0, TagOpModifiersContext);
3006
3161
  }
3162
+ opAnnotation() {
3163
+ return this.getRuleContext(0, OpAnnotationContext);
3164
+ }
3007
3165
  get ruleIndex() {
3008
3166
  return plurnkParser.RULE_copyStatement;
3009
3167
  }
@@ -3029,6 +3187,9 @@ export class MoveStatementContext extends antlr.ParserRuleContext {
3029
3187
  tagOpModifiers() {
3030
3188
  return this.getRuleContext(0, TagOpModifiersContext);
3031
3189
  }
3190
+ opAnnotation() {
3191
+ return this.getRuleContext(0, OpAnnotationContext);
3192
+ }
3032
3193
  get ruleIndex() {
3033
3194
  return plurnkParser.RULE_moveStatement;
3034
3195
  }
@@ -3051,8 +3212,11 @@ export class OpenStatementContext extends antlr.ParserRuleContext {
3051
3212
  statementEnd() {
3052
3213
  return this.getRuleContext(0, StatementEndContext);
3053
3214
  }
3054
- curationModifiers() {
3055
- return this.getRuleContext(0, CurationModifiersContext);
3215
+ tagOpModifiers() {
3216
+ return this.getRuleContext(0, TagOpModifiersContext);
3217
+ }
3218
+ opAnnotation() {
3219
+ return this.getRuleContext(0, OpAnnotationContext);
3056
3220
  }
3057
3221
  get ruleIndex() {
3058
3222
  return plurnkParser.RULE_openStatement;
@@ -3076,8 +3240,11 @@ export class FoldStatementContext extends antlr.ParserRuleContext {
3076
3240
  statementEnd() {
3077
3241
  return this.getRuleContext(0, StatementEndContext);
3078
3242
  }
3079
- curationModifiers() {
3080
- return this.getRuleContext(0, CurationModifiersContext);
3243
+ tagOpModifiers() {
3244
+ return this.getRuleContext(0, TagOpModifiersContext);
3245
+ }
3246
+ opAnnotation() {
3247
+ return this.getRuleContext(0, OpAnnotationContext);
3081
3248
  }
3082
3249
  get ruleIndex() {
3083
3250
  return plurnkParser.RULE_foldStatement;
@@ -3104,6 +3271,9 @@ export class SendStatementContext extends antlr.ParserRuleContext {
3104
3271
  statementEnd() {
3105
3272
  return this.getRuleContext(0, StatementEndContext);
3106
3273
  }
3274
+ opAnnotation() {
3275
+ return this.getRuleContext(0, OpAnnotationContext);
3276
+ }
3107
3277
  get ruleIndex() {
3108
3278
  return plurnkParser.RULE_sendStatement;
3109
3279
  }
@@ -3129,6 +3299,9 @@ export class MidSendContext extends antlr.ParserRuleContext {
3129
3299
  midModifiers() {
3130
3300
  return this.getRuleContext(0, MidModifiersContext);
3131
3301
  }
3302
+ opAnnotation() {
3303
+ return this.getRuleContext(0, OpAnnotationContext);
3304
+ }
3132
3305
  get ruleIndex() {
3133
3306
  return plurnkParser.RULE_midSend;
3134
3307
  }
@@ -3154,6 +3327,9 @@ export class ExecStatementContext extends antlr.ParserRuleContext {
3154
3327
  execModifiers() {
3155
3328
  return this.getRuleContext(0, ExecModifiersContext);
3156
3329
  }
3330
+ opAnnotation() {
3331
+ return this.getRuleContext(0, OpAnnotationContext);
3332
+ }
3157
3333
  get ruleIndex() {
3158
3334
  return plurnkParser.RULE_execStatement;
3159
3335
  }
@@ -3179,6 +3355,9 @@ export class BareStatementContext extends antlr.ParserRuleContext {
3179
3355
  tagSignal() {
3180
3356
  return this.getRuleContext(0, TagSignalContext);
3181
3357
  }
3358
+ opAnnotation() {
3359
+ return this.getRuleContext(0, OpAnnotationContext);
3360
+ }
3182
3361
  get ruleIndex() {
3183
3362
  return plurnkParser.RULE_bareStatement;
3184
3363
  }
@@ -3204,6 +3383,9 @@ export class WorkStatementContext extends antlr.ParserRuleContext {
3204
3383
  branchModifiers() {
3205
3384
  return this.getRuleContext(0, BranchModifiersContext);
3206
3385
  }
3386
+ opAnnotation() {
3387
+ return this.getRuleContext(0, OpAnnotationContext);
3388
+ }
3207
3389
  get ruleIndex() {
3208
3390
  return plurnkParser.RULE_workStatement;
3209
3391
  }
@@ -3229,6 +3411,9 @@ export class ForkStatementContext extends antlr.ParserRuleContext {
3229
3411
  branchModifiers() {
3230
3412
  return this.getRuleContext(0, BranchModifiersContext);
3231
3413
  }
3414
+ opAnnotation() {
3415
+ return this.getRuleContext(0, OpAnnotationContext);
3416
+ }
3232
3417
  get ruleIndex() {
3233
3418
  return plurnkParser.RULE_forkStatement;
3234
3419
  }
@@ -3254,6 +3439,9 @@ export class KillStatementContext extends antlr.ParserRuleContext {
3254
3439
  intOpModifiers() {
3255
3440
  return this.getRuleContext(0, IntOpModifiersContext);
3256
3441
  }
3442
+ opAnnotation() {
3443
+ return this.getRuleContext(0, OpAnnotationContext);
3444
+ }
3257
3445
  get ruleIndex() {
3258
3446
  return plurnkParser.RULE_killStatement;
3259
3447
  }
@@ -3279,6 +3467,9 @@ export class PlanStatementContext extends antlr.ParserRuleContext {
3279
3467
  tagOpModifiers() {
3280
3468
  return this.getRuleContext(0, TagOpModifiersContext);
3281
3469
  }
3470
+ opAnnotation() {
3471
+ return this.getRuleContext(0, OpAnnotationContext);
3472
+ }
3282
3473
  get ruleIndex() {
3283
3474
  return plurnkParser.RULE_planStatement;
3284
3475
  }
@@ -3304,6 +3495,9 @@ export class LookStatementContext extends antlr.ParserRuleContext {
3304
3495
  tagOpModifiers() {
3305
3496
  return this.getRuleContext(0, TagOpModifiersContext);
3306
3497
  }
3498
+ opAnnotation() {
3499
+ return this.getRuleContext(0, OpAnnotationContext);
3500
+ }
3307
3501
  get ruleIndex() {
3308
3502
  return plurnkParser.RULE_lookStatement;
3309
3503
  }
@@ -3329,6 +3523,9 @@ export class BuffStatementContext extends antlr.ParserRuleContext {
3329
3523
  tagOpModifiers() {
3330
3524
  return this.getRuleContext(0, TagOpModifiersContext);
3331
3525
  }
3526
+ opAnnotation() {
3527
+ return this.getRuleContext(0, OpAnnotationContext);
3528
+ }
3332
3529
  get ruleIndex() {
3333
3530
  return plurnkParser.RULE_buffStatement;
3334
3531
  }
@@ -3341,6 +3538,25 @@ export class BuffStatementContext extends antlr.ParserRuleContext {
3341
3538
  }
3342
3539
  }
3343
3540
  }
3541
+ export class OpAnnotationContext extends antlr.ParserRuleContext {
3542
+ constructor(parent, invokingState) {
3543
+ super(parent, invokingState);
3544
+ }
3545
+ ANNOTATION() {
3546
+ return this.getToken(plurnkParser.ANNOTATION, 0);
3547
+ }
3548
+ get ruleIndex() {
3549
+ return plurnkParser.RULE_opAnnotation;
3550
+ }
3551
+ accept(visitor) {
3552
+ if (visitor.visitOpAnnotation) {
3553
+ return visitor.visitOpAnnotation(this);
3554
+ }
3555
+ else {
3556
+ return visitor.visitChildren(this);
3557
+ }
3558
+ }
3559
+ }
3344
3560
  export class StatementEndContext extends antlr.ParserRuleContext {
3345
3561
  constructor(parent, invokingState) {
3346
3562
  super(parent, invokingState);
@@ -3391,28 +3607,6 @@ export class TagOpModifiersContext extends antlr.ParserRuleContext {
3391
3607
  }
3392
3608
  }
3393
3609
  }
3394
- export class CurationModifiersContext extends antlr.ParserRuleContext {
3395
- constructor(parent, invokingState) {
3396
- super(parent, invokingState);
3397
- }
3398
- tagSignal() {
3399
- return this.getRuleContext(0, TagSignalContext);
3400
- }
3401
- target() {
3402
- return this.getRuleContext(0, TargetContext);
3403
- }
3404
- get ruleIndex() {
3405
- return plurnkParser.RULE_curationModifiers;
3406
- }
3407
- accept(visitor) {
3408
- if (visitor.visitCurationModifiers) {
3409
- return visitor.visitCurationModifiers(this);
3410
- }
3411
- else {
3412
- return visitor.visitChildren(this);
3413
- }
3414
- }
3415
- }
3416
3610
  export class IntOpModifiersContext extends antlr.ParserRuleContext {
3417
3611
  constructor(parent, invokingState) {
3418
3612
  super(parent, invokingState);