@ruleflow-ts/dsl-core 0.3.2 → 0.4.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 (45) hide show
  1. package/README.md +0 -29
  2. package/dist/evaluator/CustomFunctionCallEvaluator.d.ts +6 -0
  3. package/dist/evaluator/CustomFunctionCallEvaluator.d.ts.map +1 -0
  4. package/dist/evaluator/CustomFunctionCallEvaluator.js +23 -0
  5. package/dist/evaluator/CustomFunctionCallEvaluator.js.map +1 -0
  6. package/dist/evaluator/MemberAccessEvaluator.d.ts +6 -0
  7. package/dist/evaluator/MemberAccessEvaluator.d.ts.map +1 -0
  8. package/dist/evaluator/MemberAccessEvaluator.js +20 -0
  9. package/dist/evaluator/MemberAccessEvaluator.js.map +1 -0
  10. package/dist/evaluator/ValidPropertyEvaluator.d.ts.map +1 -1
  11. package/dist/evaluator/ValidPropertyEvaluator.js +6 -5
  12. package/dist/evaluator/ValidPropertyEvaluator.js.map +1 -1
  13. package/dist/evaluator/VariableRefEvaluator.d.ts +6 -0
  14. package/dist/evaluator/VariableRefEvaluator.d.ts.map +1 -0
  15. package/dist/evaluator/VariableRefEvaluator.js +17 -0
  16. package/dist/evaluator/VariableRefEvaluator.js.map +1 -0
  17. package/dist/generated/src/grammar/RuleFlowLanguageLexer.d.ts +46 -45
  18. package/dist/generated/src/grammar/RuleFlowLanguageLexer.d.ts.map +1 -1
  19. package/dist/generated/src/grammar/RuleFlowLanguageLexer.js +557 -560
  20. package/dist/generated/src/grammar/RuleFlowLanguageLexer.js.map +1 -1
  21. package/dist/generated/src/grammar/RuleFlowLanguageListener.d.ts +42 -5
  22. package/dist/generated/src/grammar/RuleFlowLanguageListener.d.ts.map +1 -1
  23. package/dist/generated/src/grammar/RuleFlowLanguageParser.d.ts +109 -77
  24. package/dist/generated/src/grammar/RuleFlowLanguageParser.d.ts.map +1 -1
  25. package/dist/generated/src/grammar/RuleFlowLanguageParser.js +995 -800
  26. package/dist/generated/src/grammar/RuleFlowLanguageParser.js.map +1 -1
  27. package/dist/generated/src/grammar/RuleFlowLanguageVisitor.d.ts +26 -3
  28. package/dist/generated/src/grammar/RuleFlowLanguageVisitor.d.ts.map +1 -1
  29. package/dist/index.d.ts +1 -1
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/types.d.ts +3 -0
  32. package/dist/types.d.ts.map +1 -1
  33. package/dist/visitors/RulesetVisitor.d.ts +4 -2
  34. package/dist/visitors/RulesetVisitor.d.ts.map +1 -1
  35. package/dist/visitors/RulesetVisitor.js +27 -2
  36. package/dist/visitors/RulesetVisitor.js.map +1 -1
  37. package/dist/visitors/Visitor.d.ts +8 -1
  38. package/dist/visitors/Visitor.d.ts.map +1 -1
  39. package/dist/visitors/Visitor.js +41 -6
  40. package/dist/visitors/Visitor.js.map +1 -1
  41. package/dist/workflow.d.ts +2 -2
  42. package/dist/workflow.d.ts.map +1 -1
  43. package/dist/workflow.js +2 -2
  44. package/dist/workflow.js.map +1 -1
  45. package/package.json +2 -2
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  // Generated from src/grammar/RuleFlowLanguage.g4 by ANTLR 4.9.0-SNAPSHOT
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.WithinRadiusContext = exports.DistanceGeohashContext = exports.DistanceContext = exports.GeohashDecodeContext = exports.GeohashEncodeContext = exports.GeoExprContext = exports.GeoOperationContext = exports.StringSimilarityScoreContext = exports.TokenSetRatioContext = exports.TokenSortRatioContext = exports.PartialRatioContext = exports.StringDistanceContext = exports.PropertyContext = exports.ValueContext = exports.DateParseExprContext = exports.BinaryOrContext = exports.BinaryAndContext = exports.EvalInListContext = exports.UnaryContext = exports.RegexlikeContext = exports.DateOperationContext = exports.AggregationContext = exports.TupleListContext = exports.ListContext = exports.ComparatorContext = exports.MathAddContext = exports.MathMulContext = exports.ParenthesisContext = exports.ExprContext = exports.Param_pairContext = exports.Param_pairsContext = exports.Action_paramsContext = exports.ActionContext = exports.ActionsContext = exports.State_ruleContext = exports.Return_resultContext = exports.Evaluation_modeContext = exports.ConfigurationContext = exports.Default_clauseContext = exports.NameContext = exports.Rule_bodyContext = exports.RulesContext = exports.Ruleset_conditionContext = exports.RulesetsContext = exports.String_literalContext = exports.Workflow_nameContext = exports.WorkflowContext = exports.ErrorContext = exports.ParseContext = exports.RuleFlowLanguageParser = void 0;
5
- exports.ValidPropertyContext = exports.TimeUnitContext = exports.DateValueContext = exports.DateParseContext = exports.ActionParamValueContext = exports.ValidValueContext = exports.ListElemsContext = exports.PropertyTupleContext = exports.DateSubtractContext = exports.DateAddContext = exports.NowContext = exports.DayOfWeekContext = exports.DateDiffContext = exports.DateExprContext = void 0;
4
+ exports.GeohashDecodeContext = exports.GeohashEncodeContext = exports.GeoExprContext = exports.GeoOperationContext = exports.StringSimilarityScoreContext = exports.TokenSetRatioContext = exports.TokenSortRatioContext = exports.PartialRatioContext = exports.StringDistanceContext = exports.PropertyContext = exports.ValueContext = exports.DateParseExprContext = exports.BinaryOrContext = exports.BinaryAndContext = exports.CustomFunctionCallContext = exports.UnaryContext = exports.RegexlikeContext = exports.DateOperationContext = exports.AggregationContext = exports.TupleListContext = exports.ListContext = exports.ComparatorContext = exports.MathAddContext = exports.MathMulContext = exports.MemberAccessContext = exports.VariableRefContext = exports.ParenthesisContext = exports.ExprContext = exports.Param_pairContext = exports.Param_pairsContext = exports.Action_paramsContext = exports.ActionContext = exports.ActionsContext = exports.State_ruleContext = exports.Return_resultContext = exports.Evaluation_modeContext = exports.ConfigurationContext = exports.Default_clauseContext = exports.NameContext = exports.Set_clauseContext = exports.Rule_bodyContext = exports.RulesContext = exports.Ruleset_conditionContext = exports.RulesetsContext = exports.String_literalContext = exports.Workflow_nameContext = exports.WorkflowContext = exports.ErrorContext = exports.ParseContext = exports.RuleFlowLanguageParser = void 0;
5
+ exports.ValidPropertyContext = exports.TimeUnitContext = exports.DateValueContext = exports.DateParseContext = exports.ActionParamValueContext = exports.ValidValueContext = exports.ListElemsContext = exports.PropertyTupleContext = exports.DateSubtractContext = exports.DateAddContext = exports.NowContext = exports.DayOfWeekContext = exports.DateDiffContext = exports.DateExprContext = exports.WithinRadiusContext = exports.DistanceGeohashContext = exports.DistanceContext = void 0;
6
6
  const ATN_1 = require("antlr4ts/atn/ATN");
7
7
  const ATNDeserializer_1 = require("antlr4ts/atn/ATNDeserializer");
8
8
  const FailedPredicateException_1 = require("antlr4ts/FailedPredicateException");
@@ -41,25 +41,25 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
41
41
  try {
42
42
  this.enterOuterAlt(_localctx, 1);
43
43
  {
44
- this.state = 64;
44
+ this.state = 66;
45
45
  this._errHandler.sync(this);
46
46
  switch (this._input.LA(1)) {
47
47
  case RuleFlowLanguageParser.K_WORKFLOW:
48
48
  {
49
- this.state = 62;
49
+ this.state = 64;
50
50
  this.workflow();
51
51
  }
52
52
  break;
53
53
  case RuleFlowLanguageParser.UNEXPECTED_CHAR:
54
54
  {
55
- this.state = 63;
55
+ this.state = 65;
56
56
  this.error();
57
57
  }
58
58
  break;
59
59
  default:
60
60
  throw new NoViableAltException_1.NoViableAltException(this);
61
61
  }
62
- this.state = 66;
62
+ this.state = 68;
63
63
  this.match(RuleFlowLanguageParser.EOF);
64
64
  }
65
65
  }
@@ -85,7 +85,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
85
85
  try {
86
86
  this.enterOuterAlt(_localctx, 1);
87
87
  {
88
- this.state = 68;
88
+ this.state = 70;
89
89
  this.match(RuleFlowLanguageParser.UNEXPECTED_CHAR);
90
90
  }
91
91
  }
@@ -112,37 +112,37 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
112
112
  try {
113
113
  this.enterOuterAlt(_localctx, 1);
114
114
  {
115
- this.state = 70;
115
+ this.state = 72;
116
116
  this.match(RuleFlowLanguageParser.K_WORKFLOW);
117
- this.state = 71;
118
- this.workflow_name();
119
117
  this.state = 73;
118
+ this.workflow_name();
119
+ this.state = 75;
120
120
  this._errHandler.sync(this);
121
121
  switch (this.interpreter.adaptivePredict(this._input, 1, this._ctx)) {
122
122
  case 1:
123
123
  {
124
- this.state = 72;
124
+ this.state = 74;
125
125
  this.configuration();
126
126
  }
127
127
  break;
128
128
  }
129
- this.state = 78;
129
+ this.state = 80;
130
130
  this._errHandler.sync(this);
131
131
  _la = this._input.LA(1);
132
132
  while (_la === RuleFlowLanguageParser.K_RULESET) {
133
133
  {
134
134
  {
135
- this.state = 75;
135
+ this.state = 77;
136
136
  this.rulesets();
137
137
  }
138
138
  }
139
- this.state = 80;
139
+ this.state = 82;
140
140
  this._errHandler.sync(this);
141
141
  _la = this._input.LA(1);
142
142
  }
143
- this.state = 81;
143
+ this.state = 83;
144
144
  this.default_clause();
145
- this.state = 82;
145
+ this.state = 84;
146
146
  this.match(RuleFlowLanguageParser.K_END);
147
147
  }
148
148
  }
@@ -168,7 +168,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
168
168
  try {
169
169
  this.enterOuterAlt(_localctx, 1);
170
170
  {
171
- this.state = 84;
171
+ this.state = 86;
172
172
  this.match(RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS);
173
173
  }
174
174
  }
@@ -195,7 +195,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
195
195
  try {
196
196
  this.enterOuterAlt(_localctx, 1);
197
197
  {
198
- this.state = 86;
198
+ this.state = 88;
199
199
  _la = this._input.LA(1);
200
200
  if (!(_la === RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS || _la === RuleFlowLanguageParser.SQUOTA_STRING)) {
201
201
  this._errHandler.recoverInline(this);
@@ -232,31 +232,31 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
232
232
  try {
233
233
  this.enterOuterAlt(_localctx, 1);
234
234
  {
235
- this.state = 88;
235
+ this.state = 90;
236
236
  this.match(RuleFlowLanguageParser.K_RULESET);
237
- this.state = 89;
238
- this.name();
239
237
  this.state = 91;
238
+ this.name();
239
+ this.state = 93;
240
240
  this._errHandler.sync(this);
241
241
  switch (this.interpreter.adaptivePredict(this._input, 3, this._ctx)) {
242
242
  case 1:
243
243
  {
244
- this.state = 90;
244
+ this.state = 92;
245
245
  this.ruleset_condition();
246
246
  }
247
247
  break;
248
248
  }
249
- this.state = 94;
249
+ this.state = 96;
250
250
  this._errHandler.sync(this);
251
251
  _la = this._input.LA(1);
252
252
  do {
253
253
  {
254
254
  {
255
- this.state = 93;
255
+ this.state = 95;
256
256
  this.rules();
257
257
  }
258
258
  }
259
- this.state = 96;
259
+ this.state = 98;
260
260
  this._errHandler.sync(this);
261
261
  _la = this._input.LA(1);
262
262
  } while (_la === RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS || _la === RuleFlowLanguageParser.SQUOTA_STRING);
@@ -282,28 +282,28 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
282
282
  let _localctx = new Ruleset_conditionContext(this._ctx, this.state);
283
283
  this.enterRule(_localctx, 12, RuleFlowLanguageParser.RULE_ruleset_condition);
284
284
  try {
285
- this.state = 106;
285
+ this.state = 108;
286
286
  this._errHandler.sync(this);
287
287
  switch (this.interpreter.adaptivePredict(this._input, 5, this._ctx)) {
288
288
  case 1:
289
289
  this.enterOuterAlt(_localctx, 1);
290
290
  {
291
- this.state = 98;
291
+ this.state = 100;
292
292
  this.expr(0);
293
- this.state = 99;
293
+ this.state = 101;
294
294
  this.match(RuleFlowLanguageParser.K_THEN);
295
295
  }
296
296
  break;
297
297
  case 2:
298
298
  this.enterOuterAlt(_localctx, 2);
299
299
  {
300
- this.state = 101;
300
+ this.state = 103;
301
301
  this.match(RuleFlowLanguageParser.L_PAREN);
302
- this.state = 102;
302
+ this.state = 104;
303
303
  this.expr(0);
304
- this.state = 103;
304
+ this.state = 105;
305
305
  this.match(RuleFlowLanguageParser.R_PAREN);
306
- this.state = 104;
306
+ this.state = 106;
307
307
  this.match(RuleFlowLanguageParser.K_THEN);
308
308
  }
309
309
  break;
@@ -332,26 +332,26 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
332
332
  try {
333
333
  this.enterOuterAlt(_localctx, 1);
334
334
  {
335
- this.state = 108;
336
- this.name();
337
335
  this.state = 110;
336
+ this.name();
337
+ this.state = 112;
338
338
  this._errHandler.sync(this);
339
339
  switch (this.interpreter.adaptivePredict(this._input, 6, this._ctx)) {
340
340
  case 1:
341
341
  {
342
- this.state = 109;
342
+ this.state = 111;
343
343
  this.match(RuleFlowLanguageParser.L_PAREN);
344
344
  }
345
345
  break;
346
346
  }
347
- this.state = 112;
348
- this.rule_body();
349
347
  this.state = 114;
348
+ this.rule_body();
349
+ this.state = 116;
350
350
  this._errHandler.sync(this);
351
351
  _la = this._input.LA(1);
352
352
  if (_la === RuleFlowLanguageParser.R_PAREN) {
353
353
  {
354
- this.state = 113;
354
+ this.state = 115;
355
355
  this.match(RuleFlowLanguageParser.R_PAREN);
356
356
  }
357
357
  }
@@ -380,22 +380,36 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
380
380
  try {
381
381
  this.enterOuterAlt(_localctx, 1);
382
382
  {
383
- this.state = 116;
383
+ this.state = 118;
384
384
  this.expr(0);
385
- this.state = 127;
385
+ this.state = 122;
386
+ this._errHandler.sync(this);
387
+ _la = this._input.LA(1);
388
+ while (_la === RuleFlowLanguageParser.K_SET) {
389
+ {
390
+ {
391
+ this.state = 119;
392
+ this.set_clause();
393
+ }
394
+ }
395
+ this.state = 124;
396
+ this._errHandler.sync(this);
397
+ _la = this._input.LA(1);
398
+ }
399
+ this.state = 136;
386
400
  this._errHandler.sync(this);
387
401
  switch (this._input.LA(1)) {
388
402
  case RuleFlowLanguageParser.K_THEN:
389
403
  {
390
404
  {
391
- this.state = 117;
405
+ this.state = 125;
392
406
  this.match(RuleFlowLanguageParser.K_THEN);
393
- this.state = 119;
407
+ this.state = 127;
394
408
  this._errHandler.sync(this);
395
- switch (this.interpreter.adaptivePredict(this._input, 8, this._ctx)) {
409
+ switch (this.interpreter.adaptivePredict(this._input, 9, this._ctx)) {
396
410
  case 1:
397
411
  {
398
- this.state = 118;
412
+ this.state = 126;
399
413
  _la = this._input.LA(1);
400
414
  if (!(_la === RuleFlowLanguageParser.K_WITH || _la === RuleFlowLanguageParser.K_AND)) {
401
415
  this._errHandler.recoverInline(this);
@@ -410,7 +424,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
410
424
  }
411
425
  break;
412
426
  }
413
- this.state = 121;
427
+ this.state = 129;
414
428
  _localctx._then_result = this.actions();
415
429
  }
416
430
  }
@@ -418,22 +432,28 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
418
432
  case RuleFlowLanguageParser.K_RETURN:
419
433
  {
420
434
  {
421
- this.state = 122;
435
+ this.state = 130;
422
436
  this.match(RuleFlowLanguageParser.K_RETURN);
423
- this.state = 123;
437
+ this.state = 131;
424
438
  _localctx._result = this.return_result();
425
- this.state = 125;
439
+ this.state = 133;
426
440
  this._errHandler.sync(this);
427
441
  _la = this._input.LA(1);
428
- if (((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (RuleFlowLanguageParser.K_ACTION - 32)) | (1 << (RuleFlowLanguageParser.K_WITH - 32)) | (1 << (RuleFlowLanguageParser.K_AND - 32)))) !== 0) || _la === RuleFlowLanguageParser.ID) {
442
+ if (((((_la - 30)) & ~0x1F) === 0 && ((1 << (_la - 30)) & ((1 << (RuleFlowLanguageParser.K_ACTION - 30)) | (1 << (RuleFlowLanguageParser.K_WITH - 30)) | (1 << (RuleFlowLanguageParser.K_AND - 30)))) !== 0) || _la === RuleFlowLanguageParser.ID) {
429
443
  {
430
- this.state = 124;
444
+ this.state = 132;
431
445
  this.actions();
432
446
  }
433
447
  }
434
448
  }
435
449
  }
436
450
  break;
451
+ case RuleFlowLanguageParser.K_CONTINUE:
452
+ {
453
+ this.state = 135;
454
+ this.match(RuleFlowLanguageParser.K_CONTINUE);
455
+ }
456
+ break;
437
457
  default:
438
458
  throw new NoViableAltException_1.NoViableAltException(this);
439
459
  }
@@ -455,13 +475,45 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
455
475
  return _localctx;
456
476
  }
457
477
  // @RuleVersion(0)
478
+ set_clause() {
479
+ let _localctx = new Set_clauseContext(this._ctx, this.state);
480
+ this.enterRule(_localctx, 18, RuleFlowLanguageParser.RULE_set_clause);
481
+ try {
482
+ this.enterOuterAlt(_localctx, 1);
483
+ {
484
+ this.state = 138;
485
+ this.match(RuleFlowLanguageParser.K_SET);
486
+ this.state = 139;
487
+ _localctx._variable = this.match(RuleFlowLanguageParser.VARIABLE);
488
+ this.state = 140;
489
+ this.match(RuleFlowLanguageParser.EQ_IC);
490
+ this.state = 141;
491
+ this.expr(0);
492
+ }
493
+ }
494
+ catch (re) {
495
+ if (re instanceof RecognitionException_1.RecognitionException) {
496
+ _localctx.exception = re;
497
+ this._errHandler.reportError(this, re);
498
+ this._errHandler.recover(this, re);
499
+ }
500
+ else {
501
+ throw re;
502
+ }
503
+ }
504
+ finally {
505
+ this.exitRule();
506
+ }
507
+ return _localctx;
508
+ }
509
+ // @RuleVersion(0)
458
510
  name() {
459
511
  let _localctx = new NameContext(this._ctx, this.state);
460
- this.enterRule(_localctx, 18, RuleFlowLanguageParser.RULE_name);
512
+ this.enterRule(_localctx, 20, RuleFlowLanguageParser.RULE_name);
461
513
  try {
462
514
  this.enterOuterAlt(_localctx, 1);
463
515
  {
464
- this.state = 129;
516
+ this.state = 143;
465
517
  this.string_literal();
466
518
  }
467
519
  }
@@ -483,19 +535,19 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
483
535
  // @RuleVersion(0)
484
536
  default_clause() {
485
537
  let _localctx = new Default_clauseContext(this._ctx, this.state);
486
- this.enterRule(_localctx, 20, RuleFlowLanguageParser.RULE_default_clause);
538
+ this.enterRule(_localctx, 22, RuleFlowLanguageParser.RULE_default_clause);
487
539
  let _la;
488
540
  try {
489
541
  this.enterOuterAlt(_localctx, 1);
490
542
  {
491
- this.state = 131;
543
+ this.state = 145;
492
544
  this.match(RuleFlowLanguageParser.K_DEFAULT);
493
- this.state = 133;
545
+ this.state = 147;
494
546
  this._errHandler.sync(this);
495
547
  _la = this._input.LA(1);
496
548
  if (_la === RuleFlowLanguageParser.K_RETURN || _la === RuleFlowLanguageParser.K_THEN) {
497
549
  {
498
- this.state = 132;
550
+ this.state = 146;
499
551
  _la = this._input.LA(1);
500
552
  if (!(_la === RuleFlowLanguageParser.K_RETURN || _la === RuleFlowLanguageParser.K_THEN)) {
501
553
  this._errHandler.recoverInline(this);
@@ -509,14 +561,14 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
509
561
  }
510
562
  }
511
563
  }
512
- this.state = 135;
564
+ this.state = 149;
513
565
  _localctx._default_result = this.return_result();
514
- this.state = 137;
566
+ this.state = 151;
515
567
  this._errHandler.sync(this);
516
568
  _la = this._input.LA(1);
517
- if (((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (RuleFlowLanguageParser.K_ACTION - 32)) | (1 << (RuleFlowLanguageParser.K_WITH - 32)) | (1 << (RuleFlowLanguageParser.K_AND - 32)))) !== 0) || _la === RuleFlowLanguageParser.ID) {
569
+ if (((((_la - 30)) & ~0x1F) === 0 && ((1 << (_la - 30)) & ((1 << (RuleFlowLanguageParser.K_ACTION - 30)) | (1 << (RuleFlowLanguageParser.K_WITH - 30)) | (1 << (RuleFlowLanguageParser.K_AND - 30)))) !== 0) || _la === RuleFlowLanguageParser.ID) {
518
570
  {
519
- this.state = 136;
571
+ this.state = 150;
520
572
  this.actions();
521
573
  }
522
574
  }
@@ -540,17 +592,17 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
540
592
  // @RuleVersion(0)
541
593
  configuration() {
542
594
  let _localctx = new ConfigurationContext(this._ctx, this.state);
543
- this.enterRule(_localctx, 22, RuleFlowLanguageParser.RULE_configuration);
595
+ this.enterRule(_localctx, 24, RuleFlowLanguageParser.RULE_configuration);
544
596
  let _la;
545
597
  try {
546
598
  this.enterOuterAlt(_localctx, 1);
547
599
  {
548
- this.state = 140;
600
+ this.state = 154;
549
601
  this._errHandler.sync(this);
550
602
  _la = this._input.LA(1);
551
603
  if (_la === RuleFlowLanguageParser.K_EVALUATION_MODE) {
552
604
  {
553
- this.state = 139;
605
+ this.state = 153;
554
606
  this.evaluation_mode();
555
607
  }
556
608
  }
@@ -574,14 +626,14 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
574
626
  // @RuleVersion(0)
575
627
  evaluation_mode() {
576
628
  let _localctx = new Evaluation_modeContext(this._ctx, this.state);
577
- this.enterRule(_localctx, 24, RuleFlowLanguageParser.RULE_evaluation_mode);
629
+ this.enterRule(_localctx, 26, RuleFlowLanguageParser.RULE_evaluation_mode);
578
630
  let _la;
579
631
  try {
580
632
  this.enterOuterAlt(_localctx, 1);
581
633
  {
582
- this.state = 142;
634
+ this.state = 156;
583
635
  this.match(RuleFlowLanguageParser.K_EVALUATION_MODE);
584
- this.state = 143;
636
+ this.state = 157;
585
637
  _la = this._input.LA(1);
586
638
  if (!(_la === RuleFlowLanguageParser.K_MULTI_MATCH || _la === RuleFlowLanguageParser.K_SINGLE_MATCH)) {
587
639
  this._errHandler.recoverInline(this);
@@ -613,40 +665,40 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
613
665
  // @RuleVersion(0)
614
666
  return_result() {
615
667
  let _localctx = new Return_resultContext(this._ctx, this.state);
616
- this.enterRule(_localctx, 26, RuleFlowLanguageParser.RULE_return_result);
668
+ this.enterRule(_localctx, 28, RuleFlowLanguageParser.RULE_return_result);
617
669
  try {
618
670
  this.enterOuterAlt(_localctx, 1);
619
671
  {
620
- this.state = 153;
672
+ this.state = 167;
621
673
  this._errHandler.sync(this);
622
- switch (this.interpreter.adaptivePredict(this._input, 14, this._ctx)) {
674
+ switch (this.interpreter.adaptivePredict(this._input, 15, this._ctx)) {
623
675
  case 1:
624
676
  {
625
- this.state = 145;
677
+ this.state = 159;
626
678
  this.state_rule();
627
679
  }
628
680
  break;
629
681
  case 2:
630
682
  {
631
- this.state = 146;
683
+ this.state = 160;
632
684
  this.validProperty();
633
685
  }
634
686
  break;
635
687
  case 3:
636
688
  {
637
- this.state = 147;
689
+ this.state = 161;
638
690
  this.validValue();
639
691
  }
640
692
  break;
641
693
  case 4:
642
694
  {
643
- this.state = 148;
695
+ this.state = 162;
644
696
  this.match(RuleFlowLanguageParser.K_EXPR);
645
- this.state = 149;
697
+ this.state = 163;
646
698
  this.match(RuleFlowLanguageParser.L_PAREN);
647
- this.state = 150;
699
+ this.state = 164;
648
700
  this.expr(0);
649
- this.state = 151;
701
+ this.state = 165;
650
702
  this.match(RuleFlowLanguageParser.R_PAREN);
651
703
  }
652
704
  break;
@@ -671,11 +723,11 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
671
723
  // @RuleVersion(0)
672
724
  state_rule() {
673
725
  let _localctx = new State_ruleContext(this._ctx, this.state);
674
- this.enterRule(_localctx, 28, RuleFlowLanguageParser.RULE_state_rule);
726
+ this.enterRule(_localctx, 30, RuleFlowLanguageParser.RULE_state_rule);
675
727
  try {
676
728
  this.enterOuterAlt(_localctx, 1);
677
729
  {
678
- this.state = 155;
730
+ this.state = 169;
679
731
  this.match(RuleFlowLanguageParser.ID);
680
732
  }
681
733
  }
@@ -697,18 +749,18 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
697
749
  // @RuleVersion(0)
698
750
  actions() {
699
751
  let _localctx = new ActionsContext(this._ctx, this.state);
700
- this.enterRule(_localctx, 30, RuleFlowLanguageParser.RULE_actions);
752
+ this.enterRule(_localctx, 32, RuleFlowLanguageParser.RULE_actions);
701
753
  let _la;
702
754
  try {
703
755
  let _alt;
704
756
  this.enterOuterAlt(_localctx, 1);
705
757
  {
706
- this.state = 158;
758
+ this.state = 172;
707
759
  this._errHandler.sync(this);
708
760
  _la = this._input.LA(1);
709
761
  if (_la === RuleFlowLanguageParser.K_WITH || _la === RuleFlowLanguageParser.K_AND) {
710
762
  {
711
- this.state = 157;
763
+ this.state = 171;
712
764
  _la = this._input.LA(1);
713
765
  if (!(_la === RuleFlowLanguageParser.K_WITH || _la === RuleFlowLanguageParser.K_AND)) {
714
766
  this._errHandler.recoverInline(this);
@@ -722,25 +774,25 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
722
774
  }
723
775
  }
724
776
  }
725
- this.state = 160;
777
+ this.state = 174;
726
778
  this.action();
727
- this.state = 165;
779
+ this.state = 179;
728
780
  this._errHandler.sync(this);
729
- _alt = this.interpreter.adaptivePredict(this._input, 16, this._ctx);
781
+ _alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
730
782
  while (_alt !== 1 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
731
783
  if (_alt === 1 + 1) {
732
784
  {
733
785
  {
734
- this.state = 161;
786
+ this.state = 175;
735
787
  this.match(RuleFlowLanguageParser.K_AND);
736
- this.state = 162;
788
+ this.state = 176;
737
789
  this.action();
738
790
  }
739
791
  }
740
792
  }
741
- this.state = 167;
793
+ this.state = 181;
742
794
  this._errHandler.sync(this);
743
- _alt = this.interpreter.adaptivePredict(this._input, 16, this._ctx);
795
+ _alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
744
796
  }
745
797
  }
746
798
  }
@@ -762,51 +814,51 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
762
814
  // @RuleVersion(0)
763
815
  action() {
764
816
  let _localctx = new ActionContext(this._ctx, this.state);
765
- this.enterRule(_localctx, 32, RuleFlowLanguageParser.RULE_action);
817
+ this.enterRule(_localctx, 34, RuleFlowLanguageParser.RULE_action);
766
818
  let _la;
767
819
  try {
768
- this.state = 184;
820
+ this.state = 198;
769
821
  this._errHandler.sync(this);
770
822
  switch (this._input.LA(1)) {
771
823
  case RuleFlowLanguageParser.K_ACTION:
772
824
  this.enterOuterAlt(_localctx, 1);
773
825
  {
774
- this.state = 168;
826
+ this.state = 182;
775
827
  this.match(RuleFlowLanguageParser.K_ACTION);
776
- this.state = 169;
828
+ this.state = 183;
777
829
  this.match(RuleFlowLanguageParser.L_PAREN);
778
- this.state = 170;
830
+ this.state = 184;
779
831
  _localctx._param_value = this.string_literal();
780
- this.state = 173;
832
+ this.state = 187;
781
833
  this._errHandler.sync(this);
782
834
  _la = this._input.LA(1);
783
835
  if (_la === RuleFlowLanguageParser.COMMA) {
784
836
  {
785
- this.state = 171;
837
+ this.state = 185;
786
838
  this.match(RuleFlowLanguageParser.COMMA);
787
- this.state = 172;
839
+ this.state = 186;
788
840
  this.action_params();
789
841
  }
790
842
  }
791
- this.state = 175;
843
+ this.state = 189;
792
844
  this.match(RuleFlowLanguageParser.R_PAREN);
793
845
  }
794
846
  break;
795
847
  case RuleFlowLanguageParser.ID:
796
848
  this.enterOuterAlt(_localctx, 2);
797
849
  {
798
- this.state = 177;
850
+ this.state = 191;
799
851
  _localctx._action_id = this.match(RuleFlowLanguageParser.ID);
800
- this.state = 182;
852
+ this.state = 196;
801
853
  this._errHandler.sync(this);
802
854
  _la = this._input.LA(1);
803
855
  if (_la === RuleFlowLanguageParser.L_PAREN) {
804
856
  {
805
- this.state = 178;
857
+ this.state = 192;
806
858
  this.match(RuleFlowLanguageParser.L_PAREN);
807
- this.state = 179;
859
+ this.state = 193;
808
860
  this.action_params();
809
- this.state = 180;
861
+ this.state = 194;
810
862
  this.match(RuleFlowLanguageParser.R_PAREN);
811
863
  }
812
864
  }
@@ -834,15 +886,15 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
834
886
  // @RuleVersion(0)
835
887
  action_params() {
836
888
  let _localctx = new Action_paramsContext(this._ctx, this.state);
837
- this.enterRule(_localctx, 34, RuleFlowLanguageParser.RULE_action_params);
889
+ this.enterRule(_localctx, 36, RuleFlowLanguageParser.RULE_action_params);
838
890
  try {
839
891
  this.enterOuterAlt(_localctx, 1);
840
892
  {
841
- this.state = 186;
893
+ this.state = 200;
842
894
  this.match(RuleFlowLanguageParser.L_BRACE);
843
- this.state = 187;
895
+ this.state = 201;
844
896
  this.param_pairs();
845
- this.state = 188;
897
+ this.state = 202;
846
898
  this.match(RuleFlowLanguageParser.R_BRACE);
847
899
  }
848
900
  }
@@ -864,26 +916,26 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
864
916
  // @RuleVersion(0)
865
917
  param_pairs() {
866
918
  let _localctx = new Param_pairsContext(this._ctx, this.state);
867
- this.enterRule(_localctx, 36, RuleFlowLanguageParser.RULE_param_pairs);
919
+ this.enterRule(_localctx, 38, RuleFlowLanguageParser.RULE_param_pairs);
868
920
  let _la;
869
921
  try {
870
922
  this.enterOuterAlt(_localctx, 1);
871
923
  {
872
- this.state = 190;
924
+ this.state = 204;
873
925
  this.param_pair();
874
- this.state = 195;
926
+ this.state = 209;
875
927
  this._errHandler.sync(this);
876
928
  _la = this._input.LA(1);
877
929
  while (_la === RuleFlowLanguageParser.COMMA) {
878
930
  {
879
931
  {
880
- this.state = 191;
932
+ this.state = 205;
881
933
  this.match(RuleFlowLanguageParser.COMMA);
882
- this.state = 192;
934
+ this.state = 206;
883
935
  this.param_pair();
884
936
  }
885
937
  }
886
- this.state = 197;
938
+ this.state = 211;
887
939
  this._errHandler.sync(this);
888
940
  _la = this._input.LA(1);
889
941
  }
@@ -907,15 +959,15 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
907
959
  // @RuleVersion(0)
908
960
  param_pair() {
909
961
  let _localctx = new Param_pairContext(this._ctx, this.state);
910
- this.enterRule(_localctx, 38, RuleFlowLanguageParser.RULE_param_pair);
962
+ this.enterRule(_localctx, 40, RuleFlowLanguageParser.RULE_param_pair);
911
963
  try {
912
964
  this.enterOuterAlt(_localctx, 1);
913
965
  {
914
- this.state = 198;
966
+ this.state = 212;
915
967
  _localctx._field_name = this.string_literal();
916
- this.state = 199;
968
+ this.state = 213;
917
969
  this.match(RuleFlowLanguageParser.K_COLON);
918
- this.state = 200;
970
+ this.state = 214;
919
971
  _localctx._field_value = this.actionParamValue();
920
972
  }
921
973
  }
@@ -943,46 +995,55 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
943
995
  let _parentState = this.state;
944
996
  let _localctx = new ExprContext(this._ctx, _parentState);
945
997
  let _prevctx = _localctx;
946
- let _startState = 40;
947
- this.enterRecursionRule(_localctx, 40, RuleFlowLanguageParser.RULE_expr, _p);
998
+ let _startState = 42;
999
+ this.enterRecursionRule(_localctx, 42, RuleFlowLanguageParser.RULE_expr, _p);
948
1000
  let _la;
949
1001
  try {
950
1002
  let _alt;
951
1003
  this.enterOuterAlt(_localctx, 1);
952
1004
  {
953
- this.state = 273;
1005
+ this.state = 294;
954
1006
  this._errHandler.sync(this);
955
- switch (this.interpreter.adaptivePredict(this._input, 22, this._ctx)) {
1007
+ switch (this.interpreter.adaptivePredict(this._input, 25, this._ctx)) {
956
1008
  case 1:
957
1009
  {
958
1010
  _localctx = new ParenthesisContext(_localctx);
959
1011
  this._ctx = _localctx;
960
1012
  _prevctx = _localctx;
961
- this.state = 203;
1013
+ this.state = 217;
962
1014
  this.match(RuleFlowLanguageParser.L_PAREN);
963
- this.state = 204;
1015
+ this.state = 218;
964
1016
  this.expr(0);
965
- this.state = 205;
1017
+ this.state = 219;
966
1018
  this.match(RuleFlowLanguageParser.R_PAREN);
967
1019
  }
968
1020
  break;
969
1021
  case 2:
1022
+ {
1023
+ _localctx = new VariableRefContext(_localctx);
1024
+ this._ctx = _localctx;
1025
+ _prevctx = _localctx;
1026
+ this.state = 221;
1027
+ this.match(RuleFlowLanguageParser.VARIABLE);
1028
+ }
1029
+ break;
1030
+ case 3:
970
1031
  {
971
1032
  _localctx = new TupleListContext(_localctx);
972
1033
  this._ctx = _localctx;
973
1034
  _prevctx = _localctx;
974
- this.state = 207;
1035
+ this.state = 222;
975
1036
  _localctx._value = this.propertyTuple();
976
- this.state = 209;
1037
+ this.state = 224;
977
1038
  this._errHandler.sync(this);
978
1039
  _la = this._input.LA(1);
979
1040
  if (_la === RuleFlowLanguageParser.K_NOT) {
980
1041
  {
981
- this.state = 208;
1042
+ this.state = 223;
982
1043
  _localctx._not = this.match(RuleFlowLanguageParser.K_NOT);
983
1044
  }
984
1045
  }
985
- this.state = 211;
1046
+ this.state = 226;
986
1047
  _localctx._op = this._input.LT(1);
987
1048
  _la = this._input.LA(1);
988
1049
  if (!(((((_la - 23)) & ~0x1F) === 0 && ((1 << (_la - 23)) & ((1 << (RuleFlowLanguageParser.K_STARTS_WITH - 23)) | (1 << (RuleFlowLanguageParser.K_CONTAINS - 23)) | (1 << (RuleFlowLanguageParser.K_IN - 23)))) !== 0))) {
@@ -995,208 +1056,227 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
995
1056
  this._errHandler.reportMatch(this);
996
1057
  this.consume();
997
1058
  }
998
- this.state = 212;
1059
+ this.state = 227;
999
1060
  _localctx._values = this.listElems();
1000
1061
  }
1001
1062
  break;
1002
- case 3:
1063
+ case 4:
1003
1064
  {
1004
1065
  _localctx = new DateOperationContext(_localctx);
1005
1066
  this._ctx = _localctx;
1006
1067
  _prevctx = _localctx;
1007
- this.state = 214;
1068
+ this.state = 229;
1008
1069
  this.dateExpr();
1009
1070
  }
1010
1071
  break;
1011
- case 4:
1072
+ case 5:
1012
1073
  {
1013
1074
  _localctx = new RegexlikeContext(_localctx);
1014
1075
  this._ctx = _localctx;
1015
1076
  _prevctx = _localctx;
1016
- this.state = 215;
1077
+ this.state = 230;
1017
1078
  _localctx._op = this.match(RuleFlowLanguageParser.REGEX_STRIP);
1018
- this.state = 216;
1079
+ this.state = 231;
1019
1080
  this.match(RuleFlowLanguageParser.L_PAREN);
1020
- this.state = 217;
1081
+ this.state = 232;
1021
1082
  _localctx._value = this.validProperty();
1022
- this.state = 218;
1083
+ this.state = 233;
1023
1084
  this.match(RuleFlowLanguageParser.COMMA);
1024
- this.state = 219;
1085
+ this.state = 234;
1025
1086
  _localctx._regex = this.match(RuleFlowLanguageParser.SQUOTA_STRING);
1026
- this.state = 220;
1087
+ this.state = 235;
1027
1088
  this.match(RuleFlowLanguageParser.R_PAREN);
1028
1089
  }
1029
1090
  break;
1030
- case 5:
1091
+ case 6:
1031
1092
  {
1032
1093
  _localctx = new UnaryContext(_localctx);
1033
1094
  this._ctx = _localctx;
1034
1095
  _prevctx = _localctx;
1035
- this.state = 222;
1096
+ this.state = 237;
1036
1097
  _localctx._op = this.match(RuleFlowLanguageParser.ABS);
1037
- this.state = 223;
1098
+ this.state = 238;
1038
1099
  this.match(RuleFlowLanguageParser.L_PAREN);
1039
- this.state = 224;
1100
+ this.state = 239;
1040
1101
  _localctx._left = this.expr(0);
1041
- this.state = 225;
1102
+ this.state = 240;
1042
1103
  this.match(RuleFlowLanguageParser.R_PAREN);
1043
1104
  }
1044
1105
  break;
1045
- case 6:
1106
+ case 7:
1046
1107
  {
1047
- _localctx = new EvalInListContext(_localctx);
1108
+ _localctx = new CustomFunctionCallContext(_localctx);
1048
1109
  this._ctx = _localctx;
1049
1110
  _prevctx = _localctx;
1050
- this.state = 227;
1051
- _localctx._op = this.match(RuleFlowLanguageParser.K_EVAL_IN_LIST);
1052
- this.state = 228;
1111
+ this.state = 242;
1112
+ this.match(RuleFlowLanguageParser.ID);
1113
+ this.state = 243;
1053
1114
  this.match(RuleFlowLanguageParser.L_PAREN);
1054
- this.state = 229;
1055
- _localctx._listName = this.string_literal();
1056
- this.state = 230;
1057
- this.match(RuleFlowLanguageParser.COMMA);
1058
- this.state = 231;
1059
- _localctx._predicate = this.expr(0);
1060
- this.state = 232;
1115
+ this.state = 252;
1116
+ this._errHandler.sync(this);
1117
+ _la = this._input.LA(1);
1118
+ if ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS) | (1 << RuleFlowLanguageParser.DOT) | (1 << RuleFlowLanguageParser.CURRENT_DATE) | (1 << RuleFlowLanguageParser.DATE_DIFF) | (1 << RuleFlowLanguageParser.ABS) | (1 << RuleFlowLanguageParser.REGEX_STRIP) | (1 << RuleFlowLanguageParser.L_PAREN))) !== 0) || ((((_la - 52)) & ~0x1F) === 0 && ((1 << (_la - 52)) & ((1 << (RuleFlowLanguageParser.K_NULL - 52)) | (1 << (RuleFlowLanguageParser.DAY_OF_WEEK - 52)) | (1 << (RuleFlowLanguageParser.K_NOW - 52)) | (1 << (RuleFlowLanguageParser.K_DATE - 52)) | (1 << (RuleFlowLanguageParser.K_DATETIME - 52)) | (1 << (RuleFlowLanguageParser.K_DATE_ADD - 52)) | (1 << (RuleFlowLanguageParser.K_DATE_SUBTRACT - 52)) | (1 << (RuleFlowLanguageParser.STRING_DISTANCE - 52)) | (1 << (RuleFlowLanguageParser.PARTIAL_RATIO - 52)) | (1 << (RuleFlowLanguageParser.TOKEN_SORT_RATIO - 52)) | (1 << (RuleFlowLanguageParser.TOKEN_SET_RATIO - 52)) | (1 << (RuleFlowLanguageParser.STRING_SIMILARITY_SCORE - 52)) | (1 << (RuleFlowLanguageParser.GEOHASH_ENCODE - 52)) | (1 << (RuleFlowLanguageParser.GEOHASH_DECODE - 52)) | (1 << (RuleFlowLanguageParser.DISTANCE - 52)) | (1 << (RuleFlowLanguageParser.WITHIN_RADIUS - 52)) | (1 << (RuleFlowLanguageParser.NUMERIC_LITERAL - 52)) | (1 << (RuleFlowLanguageParser.BOOLEAN_LITERAL - 52)) | (1 << (RuleFlowLanguageParser.SQUOTA_STRING - 52)) | (1 << (RuleFlowLanguageParser.VARIABLE - 52)) | (1 << (RuleFlowLanguageParser.ID - 52)))) !== 0)) {
1119
+ {
1120
+ this.state = 244;
1121
+ this.expr(0);
1122
+ this.state = 249;
1123
+ this._errHandler.sync(this);
1124
+ _la = this._input.LA(1);
1125
+ while (_la === RuleFlowLanguageParser.COMMA) {
1126
+ {
1127
+ {
1128
+ this.state = 245;
1129
+ this.match(RuleFlowLanguageParser.COMMA);
1130
+ this.state = 246;
1131
+ this.expr(0);
1132
+ }
1133
+ }
1134
+ this.state = 251;
1135
+ this._errHandler.sync(this);
1136
+ _la = this._input.LA(1);
1137
+ }
1138
+ }
1139
+ }
1140
+ this.state = 254;
1061
1141
  this.match(RuleFlowLanguageParser.R_PAREN);
1062
1142
  }
1063
1143
  break;
1064
- case 7:
1144
+ case 8:
1065
1145
  {
1066
1146
  _localctx = new DateParseExprContext(_localctx);
1067
1147
  this._ctx = _localctx;
1068
1148
  _prevctx = _localctx;
1069
- this.state = 234;
1149
+ this.state = 255;
1070
1150
  this.dateParse();
1071
1151
  }
1072
1152
  break;
1073
- case 8:
1153
+ case 9:
1074
1154
  {
1075
1155
  _localctx = new ValueContext(_localctx);
1076
1156
  this._ctx = _localctx;
1077
1157
  _prevctx = _localctx;
1078
- this.state = 235;
1158
+ this.state = 256;
1079
1159
  this.validValue();
1080
1160
  }
1081
1161
  break;
1082
- case 9:
1162
+ case 10:
1083
1163
  {
1084
1164
  _localctx = new PropertyContext(_localctx);
1085
1165
  this._ctx = _localctx;
1086
1166
  _prevctx = _localctx;
1087
- this.state = 236;
1167
+ this.state = 257;
1088
1168
  this.validProperty();
1089
1169
  }
1090
1170
  break;
1091
- case 10:
1171
+ case 11:
1092
1172
  {
1093
1173
  _localctx = new StringDistanceContext(_localctx);
1094
1174
  this._ctx = _localctx;
1095
1175
  _prevctx = _localctx;
1096
- this.state = 237;
1176
+ this.state = 258;
1097
1177
  _localctx._op = this.match(RuleFlowLanguageParser.STRING_DISTANCE);
1098
- this.state = 238;
1178
+ this.state = 259;
1099
1179
  this.match(RuleFlowLanguageParser.L_PAREN);
1100
- this.state = 239;
1180
+ this.state = 260;
1101
1181
  _localctx._left = this.expr(0);
1102
- this.state = 240;
1182
+ this.state = 261;
1103
1183
  this.match(RuleFlowLanguageParser.COMMA);
1104
- this.state = 241;
1184
+ this.state = 262;
1105
1185
  _localctx._right = this.expr(0);
1106
- this.state = 242;
1186
+ this.state = 263;
1107
1187
  this.match(RuleFlowLanguageParser.R_PAREN);
1108
1188
  }
1109
1189
  break;
1110
- case 11:
1190
+ case 12:
1111
1191
  {
1112
1192
  _localctx = new PartialRatioContext(_localctx);
1113
1193
  this._ctx = _localctx;
1114
1194
  _prevctx = _localctx;
1115
- this.state = 244;
1195
+ this.state = 265;
1116
1196
  _localctx._op = this.match(RuleFlowLanguageParser.PARTIAL_RATIO);
1117
- this.state = 245;
1197
+ this.state = 266;
1118
1198
  this.match(RuleFlowLanguageParser.L_PAREN);
1119
- this.state = 246;
1199
+ this.state = 267;
1120
1200
  _localctx._left = this.expr(0);
1121
- this.state = 247;
1201
+ this.state = 268;
1122
1202
  this.match(RuleFlowLanguageParser.COMMA);
1123
- this.state = 248;
1203
+ this.state = 269;
1124
1204
  _localctx._right = this.expr(0);
1125
- this.state = 249;
1205
+ this.state = 270;
1126
1206
  this.match(RuleFlowLanguageParser.R_PAREN);
1127
1207
  }
1128
1208
  break;
1129
- case 12:
1209
+ case 13:
1130
1210
  {
1131
1211
  _localctx = new TokenSortRatioContext(_localctx);
1132
1212
  this._ctx = _localctx;
1133
1213
  _prevctx = _localctx;
1134
- this.state = 251;
1214
+ this.state = 272;
1135
1215
  _localctx._op = this.match(RuleFlowLanguageParser.TOKEN_SORT_RATIO);
1136
- this.state = 252;
1216
+ this.state = 273;
1137
1217
  this.match(RuleFlowLanguageParser.L_PAREN);
1138
- this.state = 253;
1218
+ this.state = 274;
1139
1219
  _localctx._left = this.expr(0);
1140
- this.state = 254;
1220
+ this.state = 275;
1141
1221
  this.match(RuleFlowLanguageParser.COMMA);
1142
- this.state = 255;
1222
+ this.state = 276;
1143
1223
  _localctx._right = this.expr(0);
1144
- this.state = 256;
1224
+ this.state = 277;
1145
1225
  this.match(RuleFlowLanguageParser.R_PAREN);
1146
1226
  }
1147
1227
  break;
1148
- case 13:
1228
+ case 14:
1149
1229
  {
1150
1230
  _localctx = new TokenSetRatioContext(_localctx);
1151
1231
  this._ctx = _localctx;
1152
1232
  _prevctx = _localctx;
1153
- this.state = 258;
1233
+ this.state = 279;
1154
1234
  _localctx._op = this.match(RuleFlowLanguageParser.TOKEN_SET_RATIO);
1155
- this.state = 259;
1235
+ this.state = 280;
1156
1236
  this.match(RuleFlowLanguageParser.L_PAREN);
1157
- this.state = 260;
1237
+ this.state = 281;
1158
1238
  _localctx._left = this.expr(0);
1159
- this.state = 261;
1239
+ this.state = 282;
1160
1240
  this.match(RuleFlowLanguageParser.COMMA);
1161
- this.state = 262;
1241
+ this.state = 283;
1162
1242
  _localctx._right = this.expr(0);
1163
- this.state = 263;
1243
+ this.state = 284;
1164
1244
  this.match(RuleFlowLanguageParser.R_PAREN);
1165
1245
  }
1166
1246
  break;
1167
- case 14:
1247
+ case 15:
1168
1248
  {
1169
1249
  _localctx = new StringSimilarityScoreContext(_localctx);
1170
1250
  this._ctx = _localctx;
1171
1251
  _prevctx = _localctx;
1172
- this.state = 265;
1252
+ this.state = 286;
1173
1253
  _localctx._op = this.match(RuleFlowLanguageParser.STRING_SIMILARITY_SCORE);
1174
- this.state = 266;
1254
+ this.state = 287;
1175
1255
  this.match(RuleFlowLanguageParser.L_PAREN);
1176
- this.state = 267;
1256
+ this.state = 288;
1177
1257
  _localctx._left = this.expr(0);
1178
- this.state = 268;
1258
+ this.state = 289;
1179
1259
  this.match(RuleFlowLanguageParser.COMMA);
1180
- this.state = 269;
1260
+ this.state = 290;
1181
1261
  _localctx._right = this.expr(0);
1182
- this.state = 270;
1262
+ this.state = 291;
1183
1263
  this.match(RuleFlowLanguageParser.R_PAREN);
1184
1264
  }
1185
1265
  break;
1186
- case 15:
1266
+ case 16:
1187
1267
  {
1188
1268
  _localctx = new GeoOperationContext(_localctx);
1189
1269
  this._ctx = _localctx;
1190
1270
  _prevctx = _localctx;
1191
- this.state = 272;
1271
+ this.state = 293;
1192
1272
  this.geoExpr();
1193
1273
  }
1194
1274
  break;
1195
1275
  }
1196
1276
  this._ctx._stop = this._input.tryLT(-1);
1197
- this.state = 309;
1277
+ this.state = 333;
1198
1278
  this._errHandler.sync(this);
1199
- _alt = this.interpreter.adaptivePredict(this._input, 26, this._ctx);
1279
+ _alt = this.interpreter.adaptivePredict(this._input, 29, this._ctx);
1200
1280
  while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
1201
1281
  if (_alt === 1) {
1202
1282
  if (this._parseListeners != null) {
@@ -1204,19 +1284,19 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1204
1284
  }
1205
1285
  _prevctx = _localctx;
1206
1286
  {
1207
- this.state = 307;
1287
+ this.state = 331;
1208
1288
  this._errHandler.sync(this);
1209
- switch (this.interpreter.adaptivePredict(this._input, 25, this._ctx)) {
1289
+ switch (this.interpreter.adaptivePredict(this._input, 28, this._ctx)) {
1210
1290
  case 1:
1211
1291
  {
1212
1292
  _localctx = new MathMulContext(new ExprContext(_parentctx, _parentState));
1213
1293
  _localctx._left = _prevctx;
1214
1294
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1215
- this.state = 275;
1295
+ this.state = 296;
1216
1296
  if (!(this.precpred(this._ctx, 21))) {
1217
1297
  throw this.createFailedPredicateException("this.precpred(this._ctx, 21)");
1218
1298
  }
1219
- this.state = 276;
1299
+ this.state = 297;
1220
1300
  _localctx._op = this._input.LT(1);
1221
1301
  _la = this._input.LA(1);
1222
1302
  if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << RuleFlowLanguageParser.MULTIPLY) | (1 << RuleFlowLanguageParser.DIVIDE) | (1 << RuleFlowLanguageParser.MODULO))) !== 0))) {
@@ -1229,7 +1309,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1229
1309
  this._errHandler.reportMatch(this);
1230
1310
  this.consume();
1231
1311
  }
1232
- this.state = 277;
1312
+ this.state = 298;
1233
1313
  _localctx._right = this.expr(22);
1234
1314
  }
1235
1315
  break;
@@ -1238,11 +1318,11 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1238
1318
  _localctx = new MathAddContext(new ExprContext(_parentctx, _parentState));
1239
1319
  _localctx._left = _prevctx;
1240
1320
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1241
- this.state = 278;
1321
+ this.state = 299;
1242
1322
  if (!(this.precpred(this._ctx, 20))) {
1243
1323
  throw this.createFailedPredicateException("this.precpred(this._ctx, 20)");
1244
1324
  }
1245
- this.state = 279;
1325
+ this.state = 300;
1246
1326
  _localctx._op = this._input.LT(1);
1247
1327
  _la = this._input.LA(1);
1248
1328
  if (!(_la === RuleFlowLanguageParser.ADD || _la === RuleFlowLanguageParser.MINUS)) {
@@ -1255,7 +1335,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1255
1335
  this._errHandler.reportMatch(this);
1256
1336
  this.consume();
1257
1337
  }
1258
- this.state = 280;
1338
+ this.state = 301;
1259
1339
  _localctx._right = this.expr(21);
1260
1340
  }
1261
1341
  break;
@@ -1264,11 +1344,11 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1264
1344
  _localctx = new ComparatorContext(new ExprContext(_parentctx, _parentState));
1265
1345
  _localctx._left = _prevctx;
1266
1346
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1267
- this.state = 281;
1347
+ this.state = 302;
1268
1348
  if (!(this.precpred(this._ctx, 19))) {
1269
1349
  throw this.createFailedPredicateException("this.precpred(this._ctx, 19)");
1270
1350
  }
1271
- this.state = 282;
1351
+ this.state = 303;
1272
1352
  _localctx._op = this._input.LT(1);
1273
1353
  _la = this._input.LA(1);
1274
1354
  if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << RuleFlowLanguageParser.LT) | (1 << RuleFlowLanguageParser.LT_EQ) | (1 << RuleFlowLanguageParser.GT) | (1 << RuleFlowLanguageParser.GT_EQ) | (1 << RuleFlowLanguageParser.EQ_IC) | (1 << RuleFlowLanguageParser.EQ) | (1 << RuleFlowLanguageParser.NOT_EQ))) !== 0))) {
@@ -1281,7 +1361,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1281
1361
  this._errHandler.reportMatch(this);
1282
1362
  this.consume();
1283
1363
  }
1284
- this.state = 283;
1364
+ this.state = 304;
1285
1365
  _localctx._right = this.expr(20);
1286
1366
  }
1287
1367
  break;
@@ -1290,13 +1370,13 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1290
1370
  _localctx = new BinaryAndContext(new ExprContext(_parentctx, _parentState));
1291
1371
  _localctx._left = _prevctx;
1292
1372
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1293
- this.state = 284;
1373
+ this.state = 305;
1294
1374
  if (!(this.precpred(this._ctx, 11))) {
1295
1375
  throw this.createFailedPredicateException("this.precpred(this._ctx, 11)");
1296
1376
  }
1297
- this.state = 285;
1377
+ this.state = 306;
1298
1378
  _localctx._op = this.match(RuleFlowLanguageParser.K_AND);
1299
- this.state = 286;
1379
+ this.state = 307;
1300
1380
  _localctx._right = this.expr(12);
1301
1381
  }
1302
1382
  break;
@@ -1305,35 +1385,50 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1305
1385
  _localctx = new BinaryOrContext(new ExprContext(_parentctx, _parentState));
1306
1386
  _localctx._left = _prevctx;
1307
1387
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1308
- this.state = 287;
1388
+ this.state = 308;
1309
1389
  if (!(this.precpred(this._ctx, 10))) {
1310
1390
  throw this.createFailedPredicateException("this.precpred(this._ctx, 10)");
1311
1391
  }
1312
- this.state = 288;
1392
+ this.state = 309;
1313
1393
  _localctx._op = this.match(RuleFlowLanguageParser.K_OR);
1314
- this.state = 289;
1394
+ this.state = 310;
1315
1395
  _localctx._right = this.expr(11);
1316
1396
  }
1317
1397
  break;
1318
1398
  case 6:
1399
+ {
1400
+ _localctx = new MemberAccessContext(new ExprContext(_parentctx, _parentState));
1401
+ _localctx._base = _prevctx;
1402
+ this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1403
+ this.state = 311;
1404
+ if (!(this.precpred(this._ctx, 22))) {
1405
+ throw this.createFailedPredicateException("this.precpred(this._ctx, 22)");
1406
+ }
1407
+ this.state = 312;
1408
+ this.match(RuleFlowLanguageParser.DOT);
1409
+ this.state = 313;
1410
+ _localctx._field = this.match(RuleFlowLanguageParser.ID);
1411
+ }
1412
+ break;
1413
+ case 7:
1319
1414
  {
1320
1415
  _localctx = new ListContext(new ExprContext(_parentctx, _parentState));
1321
1416
  _localctx._value = _prevctx;
1322
1417
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1323
- this.state = 290;
1418
+ this.state = 314;
1324
1419
  if (!(this.precpred(this._ctx, 18))) {
1325
1420
  throw this.createFailedPredicateException("this.precpred(this._ctx, 18)");
1326
1421
  }
1327
- this.state = 292;
1422
+ this.state = 316;
1328
1423
  this._errHandler.sync(this);
1329
1424
  _la = this._input.LA(1);
1330
1425
  if (_la === RuleFlowLanguageParser.K_NOT) {
1331
1426
  {
1332
- this.state = 291;
1427
+ this.state = 315;
1333
1428
  _localctx._not = this.match(RuleFlowLanguageParser.K_NOT);
1334
1429
  }
1335
1430
  }
1336
- this.state = 294;
1431
+ this.state = 318;
1337
1432
  _localctx._op = this._input.LT(1);
1338
1433
  _la = this._input.LA(1);
1339
1434
  if (!(((((_la - 23)) & ~0x1F) === 0 && ((1 << (_la - 23)) & ((1 << (RuleFlowLanguageParser.K_STARTS_WITH - 23)) | (1 << (RuleFlowLanguageParser.K_CONTAINS - 23)) | (1 << (RuleFlowLanguageParser.K_IN - 23)))) !== 0))) {
@@ -1346,25 +1441,25 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1346
1441
  this._errHandler.reportMatch(this);
1347
1442
  this.consume();
1348
1443
  }
1349
- this.state = 295;
1444
+ this.state = 319;
1350
1445
  _localctx._values = this.listElems();
1351
1446
  }
1352
1447
  break;
1353
- case 7:
1448
+ case 8:
1354
1449
  {
1355
1450
  _localctx = new AggregationContext(new ExprContext(_parentctx, _parentState));
1356
1451
  _localctx._value = _prevctx;
1357
1452
  this.pushNewRecursionContext(_localctx, _startState, RuleFlowLanguageParser.RULE_expr);
1358
- this.state = 296;
1453
+ this.state = 320;
1359
1454
  if (!(this.precpred(this._ctx, 16))) {
1360
1455
  throw this.createFailedPredicateException("this.precpred(this._ctx, 16)");
1361
1456
  }
1362
- this.state = 297;
1457
+ this.state = 321;
1363
1458
  this.match(RuleFlowLanguageParser.DOT);
1364
- this.state = 298;
1459
+ this.state = 322;
1365
1460
  _localctx._op = this._input.LT(1);
1366
1461
  _la = this._input.LA(1);
1367
- if (!(((((_la - 48)) & ~0x1F) === 0 && ((1 << (_la - 48)) & ((1 << (RuleFlowLanguageParser.K_ANY - 48)) | (1 << (RuleFlowLanguageParser.K_NONE - 48)) | (1 << (RuleFlowLanguageParser.K_ALL - 48)) | (1 << (RuleFlowLanguageParser.K_COUNT - 48)) | (1 << (RuleFlowLanguageParser.K_AVERAGE - 48)) | (1 << (RuleFlowLanguageParser.K_DISTINCT - 48)))) !== 0))) {
1462
+ if (!(((((_la - 46)) & ~0x1F) === 0 && ((1 << (_la - 46)) & ((1 << (RuleFlowLanguageParser.K_ANY - 46)) | (1 << (RuleFlowLanguageParser.K_NONE - 46)) | (1 << (RuleFlowLanguageParser.K_ALL - 46)) | (1 << (RuleFlowLanguageParser.K_COUNT - 46)) | (1 << (RuleFlowLanguageParser.K_AVERAGE - 46)) | (1 << (RuleFlowLanguageParser.K_DISTINCT - 46)))) !== 0))) {
1368
1463
  _localctx._op = this._errHandler.recoverInline(this);
1369
1464
  }
1370
1465
  else {
@@ -1374,24 +1469,24 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1374
1469
  this._errHandler.reportMatch(this);
1375
1470
  this.consume();
1376
1471
  }
1377
- this.state = 305;
1472
+ this.state = 329;
1378
1473
  this._errHandler.sync(this);
1379
1474
  switch (this._input.LA(1)) {
1380
1475
  case RuleFlowLanguageParser.L_BRACE:
1381
1476
  {
1382
- this.state = 299;
1477
+ this.state = 323;
1383
1478
  this.match(RuleFlowLanguageParser.L_BRACE);
1384
- this.state = 300;
1479
+ this.state = 324;
1385
1480
  _localctx._predicate = this.expr(0);
1386
- this.state = 301;
1481
+ this.state = 325;
1387
1482
  this.match(RuleFlowLanguageParser.R_BRACE);
1388
1483
  }
1389
1484
  break;
1390
1485
  case RuleFlowLanguageParser.L_PAREN:
1391
1486
  {
1392
- this.state = 303;
1487
+ this.state = 327;
1393
1488
  this.match(RuleFlowLanguageParser.L_PAREN);
1394
- this.state = 304;
1489
+ this.state = 328;
1395
1490
  this.match(RuleFlowLanguageParser.R_PAREN);
1396
1491
  }
1397
1492
  break;
@@ -1403,9 +1498,9 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1403
1498
  }
1404
1499
  }
1405
1500
  }
1406
- this.state = 311;
1501
+ this.state = 335;
1407
1502
  this._errHandler.sync(this);
1408
- _alt = this.interpreter.adaptivePredict(this._input, 26, this._ctx);
1503
+ _alt = this.interpreter.adaptivePredict(this._input, 29, this._ctx);
1409
1504
  }
1410
1505
  }
1411
1506
  }
@@ -1427,38 +1522,38 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1427
1522
  // @RuleVersion(0)
1428
1523
  geoExpr() {
1429
1524
  let _localctx = new GeoExprContext(this._ctx, this.state);
1430
- this.enterRule(_localctx, 42, RuleFlowLanguageParser.RULE_geoExpr);
1525
+ this.enterRule(_localctx, 44, RuleFlowLanguageParser.RULE_geoExpr);
1431
1526
  let _la;
1432
1527
  try {
1433
- this.state = 359;
1528
+ this.state = 383;
1434
1529
  this._errHandler.sync(this);
1435
- switch (this.interpreter.adaptivePredict(this._input, 28, this._ctx)) {
1530
+ switch (this.interpreter.adaptivePredict(this._input, 31, this._ctx)) {
1436
1531
  case 1:
1437
1532
  _localctx = new GeohashEncodeContext(_localctx);
1438
1533
  this.enterOuterAlt(_localctx, 1);
1439
1534
  {
1440
- this.state = 312;
1535
+ this.state = 336;
1441
1536
  this.match(RuleFlowLanguageParser.GEOHASH_ENCODE);
1442
- this.state = 313;
1537
+ this.state = 337;
1443
1538
  this.match(RuleFlowLanguageParser.L_PAREN);
1444
- this.state = 314;
1539
+ this.state = 338;
1445
1540
  _localctx._lat = this.expr(0);
1446
- this.state = 315;
1541
+ this.state = 339;
1447
1542
  this.match(RuleFlowLanguageParser.COMMA);
1448
- this.state = 316;
1543
+ this.state = 340;
1449
1544
  _localctx._lon = this.expr(0);
1450
- this.state = 319;
1545
+ this.state = 343;
1451
1546
  this._errHandler.sync(this);
1452
1547
  _la = this._input.LA(1);
1453
1548
  if (_la === RuleFlowLanguageParser.COMMA) {
1454
1549
  {
1455
- this.state = 317;
1550
+ this.state = 341;
1456
1551
  this.match(RuleFlowLanguageParser.COMMA);
1457
- this.state = 318;
1552
+ this.state = 342;
1458
1553
  _localctx._precision = this.expr(0);
1459
1554
  }
1460
1555
  }
1461
- this.state = 321;
1556
+ this.state = 345;
1462
1557
  this.match(RuleFlowLanguageParser.R_PAREN);
1463
1558
  }
1464
1559
  break;
@@ -1466,13 +1561,13 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1466
1561
  _localctx = new GeohashDecodeContext(_localctx);
1467
1562
  this.enterOuterAlt(_localctx, 2);
1468
1563
  {
1469
- this.state = 323;
1564
+ this.state = 347;
1470
1565
  this.match(RuleFlowLanguageParser.GEOHASH_DECODE);
1471
- this.state = 324;
1566
+ this.state = 348;
1472
1567
  this.match(RuleFlowLanguageParser.L_PAREN);
1473
- this.state = 325;
1568
+ this.state = 349;
1474
1569
  _localctx._geohash = this.expr(0);
1475
- this.state = 326;
1570
+ this.state = 350;
1476
1571
  this.match(RuleFlowLanguageParser.R_PAREN);
1477
1572
  }
1478
1573
  break;
@@ -1480,25 +1575,25 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1480
1575
  _localctx = new DistanceContext(_localctx);
1481
1576
  this.enterOuterAlt(_localctx, 3);
1482
1577
  {
1483
- this.state = 328;
1578
+ this.state = 352;
1484
1579
  this.match(RuleFlowLanguageParser.DISTANCE);
1485
- this.state = 329;
1580
+ this.state = 353;
1486
1581
  this.match(RuleFlowLanguageParser.L_PAREN);
1487
- this.state = 330;
1582
+ this.state = 354;
1488
1583
  _localctx._lat1 = this.expr(0);
1489
- this.state = 331;
1584
+ this.state = 355;
1490
1585
  this.match(RuleFlowLanguageParser.COMMA);
1491
- this.state = 332;
1586
+ this.state = 356;
1492
1587
  _localctx._lon1 = this.expr(0);
1493
- this.state = 333;
1588
+ this.state = 357;
1494
1589
  this.match(RuleFlowLanguageParser.COMMA);
1495
- this.state = 334;
1590
+ this.state = 358;
1496
1591
  _localctx._lat2 = this.expr(0);
1497
- this.state = 335;
1592
+ this.state = 359;
1498
1593
  this.match(RuleFlowLanguageParser.COMMA);
1499
- this.state = 336;
1594
+ this.state = 360;
1500
1595
  _localctx._lon2 = this.expr(0);
1501
- this.state = 337;
1596
+ this.state = 361;
1502
1597
  this.match(RuleFlowLanguageParser.R_PAREN);
1503
1598
  }
1504
1599
  break;
@@ -1506,17 +1601,17 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1506
1601
  _localctx = new DistanceGeohashContext(_localctx);
1507
1602
  this.enterOuterAlt(_localctx, 4);
1508
1603
  {
1509
- this.state = 339;
1604
+ this.state = 363;
1510
1605
  this.match(RuleFlowLanguageParser.DISTANCE);
1511
- this.state = 340;
1606
+ this.state = 364;
1512
1607
  this.match(RuleFlowLanguageParser.L_PAREN);
1513
- this.state = 341;
1608
+ this.state = 365;
1514
1609
  _localctx._geohash1 = this.expr(0);
1515
- this.state = 342;
1610
+ this.state = 366;
1516
1611
  this.match(RuleFlowLanguageParser.COMMA);
1517
- this.state = 343;
1612
+ this.state = 367;
1518
1613
  _localctx._geohash2 = this.expr(0);
1519
- this.state = 344;
1614
+ this.state = 368;
1520
1615
  this.match(RuleFlowLanguageParser.R_PAREN);
1521
1616
  }
1522
1617
  break;
@@ -1524,29 +1619,29 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1524
1619
  _localctx = new WithinRadiusContext(_localctx);
1525
1620
  this.enterOuterAlt(_localctx, 5);
1526
1621
  {
1527
- this.state = 346;
1622
+ this.state = 370;
1528
1623
  this.match(RuleFlowLanguageParser.WITHIN_RADIUS);
1529
- this.state = 347;
1624
+ this.state = 371;
1530
1625
  this.match(RuleFlowLanguageParser.L_PAREN);
1531
- this.state = 348;
1626
+ this.state = 372;
1532
1627
  _localctx._lat1 = this.expr(0);
1533
- this.state = 349;
1628
+ this.state = 373;
1534
1629
  this.match(RuleFlowLanguageParser.COMMA);
1535
- this.state = 350;
1630
+ this.state = 374;
1536
1631
  _localctx._lon1 = this.expr(0);
1537
- this.state = 351;
1632
+ this.state = 375;
1538
1633
  this.match(RuleFlowLanguageParser.COMMA);
1539
- this.state = 352;
1634
+ this.state = 376;
1540
1635
  _localctx._lat2 = this.expr(0);
1541
- this.state = 353;
1636
+ this.state = 377;
1542
1637
  this.match(RuleFlowLanguageParser.COMMA);
1543
- this.state = 354;
1638
+ this.state = 378;
1544
1639
  _localctx._lon2 = this.expr(0);
1545
- this.state = 355;
1640
+ this.state = 379;
1546
1641
  this.match(RuleFlowLanguageParser.COMMA);
1547
- this.state = 356;
1642
+ this.state = 380;
1548
1643
  _localctx._radius = this.expr(0);
1549
- this.state = 357;
1644
+ this.state = 381;
1550
1645
  this.match(RuleFlowLanguageParser.R_PAREN);
1551
1646
  }
1552
1647
  break;
@@ -1570,29 +1665,29 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1570
1665
  // @RuleVersion(0)
1571
1666
  dateExpr() {
1572
1667
  let _localctx = new DateExprContext(this._ctx, this.state);
1573
- this.enterRule(_localctx, 44, RuleFlowLanguageParser.RULE_dateExpr);
1668
+ this.enterRule(_localctx, 46, RuleFlowLanguageParser.RULE_dateExpr);
1574
1669
  let _la;
1575
1670
  try {
1576
- this.state = 396;
1671
+ this.state = 420;
1577
1672
  this._errHandler.sync(this);
1578
1673
  switch (this._input.LA(1)) {
1579
1674
  case RuleFlowLanguageParser.DATE_DIFF:
1580
1675
  _localctx = new DateDiffContext(_localctx);
1581
1676
  this.enterOuterAlt(_localctx, 1);
1582
1677
  {
1583
- this.state = 361;
1678
+ this.state = 385;
1584
1679
  this.match(RuleFlowLanguageParser.DATE_DIFF);
1585
- this.state = 362;
1680
+ this.state = 386;
1586
1681
  this.match(RuleFlowLanguageParser.L_PAREN);
1587
- this.state = 363;
1682
+ this.state = 387;
1588
1683
  _localctx._left = this.dateValue();
1589
- this.state = 364;
1684
+ this.state = 388;
1590
1685
  this.match(RuleFlowLanguageParser.COMMA);
1591
- this.state = 365;
1686
+ this.state = 389;
1592
1687
  _localctx._right = this.dateValue();
1593
- this.state = 366;
1688
+ this.state = 390;
1594
1689
  this.match(RuleFlowLanguageParser.COMMA);
1595
- this.state = 367;
1690
+ this.state = 391;
1596
1691
  _la = this._input.LA(1);
1597
1692
  if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << RuleFlowLanguageParser.MINUTE) | (1 << RuleFlowLanguageParser.HOUR) | (1 << RuleFlowLanguageParser.DAY))) !== 0))) {
1598
1693
  this._errHandler.recoverInline(this);
@@ -1604,7 +1699,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1604
1699
  this._errHandler.reportMatch(this);
1605
1700
  this.consume();
1606
1701
  }
1607
- this.state = 368;
1702
+ this.state = 392;
1608
1703
  this.match(RuleFlowLanguageParser.R_PAREN);
1609
1704
  }
1610
1705
  break;
@@ -1612,13 +1707,13 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1612
1707
  _localctx = new DayOfWeekContext(_localctx);
1613
1708
  this.enterOuterAlt(_localctx, 2);
1614
1709
  {
1615
- this.state = 370;
1710
+ this.state = 394;
1616
1711
  _localctx._op = this.match(RuleFlowLanguageParser.DAY_OF_WEEK);
1617
- this.state = 371;
1712
+ this.state = 395;
1618
1713
  this.match(RuleFlowLanguageParser.L_PAREN);
1619
- this.state = 372;
1714
+ this.state = 396;
1620
1715
  _localctx._left = this.dateValue();
1621
- this.state = 373;
1716
+ this.state = 397;
1622
1717
  this.match(RuleFlowLanguageParser.R_PAREN);
1623
1718
  }
1624
1719
  break;
@@ -1626,11 +1721,11 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1626
1721
  _localctx = new NowContext(_localctx);
1627
1722
  this.enterOuterAlt(_localctx, 3);
1628
1723
  {
1629
- this.state = 375;
1724
+ this.state = 399;
1630
1725
  _localctx._op = this.match(RuleFlowLanguageParser.K_NOW);
1631
- this.state = 376;
1726
+ this.state = 400;
1632
1727
  this.match(RuleFlowLanguageParser.L_PAREN);
1633
- this.state = 377;
1728
+ this.state = 401;
1634
1729
  this.match(RuleFlowLanguageParser.R_PAREN);
1635
1730
  }
1636
1731
  break;
@@ -1638,21 +1733,21 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1638
1733
  _localctx = new DateAddContext(_localctx);
1639
1734
  this.enterOuterAlt(_localctx, 4);
1640
1735
  {
1641
- this.state = 378;
1736
+ this.state = 402;
1642
1737
  _localctx._op = this.match(RuleFlowLanguageParser.K_DATE_ADD);
1643
- this.state = 379;
1738
+ this.state = 403;
1644
1739
  this.match(RuleFlowLanguageParser.L_PAREN);
1645
- this.state = 380;
1740
+ this.state = 404;
1646
1741
  _localctx._date = this.dateValue();
1647
- this.state = 381;
1742
+ this.state = 405;
1648
1743
  this.match(RuleFlowLanguageParser.COMMA);
1649
- this.state = 382;
1744
+ this.state = 406;
1650
1745
  _localctx._amount = this.expr(0);
1651
- this.state = 383;
1746
+ this.state = 407;
1652
1747
  this.match(RuleFlowLanguageParser.COMMA);
1653
- this.state = 384;
1748
+ this.state = 408;
1654
1749
  _localctx._unit = this.timeUnit();
1655
- this.state = 385;
1750
+ this.state = 409;
1656
1751
  this.match(RuleFlowLanguageParser.R_PAREN);
1657
1752
  }
1658
1753
  break;
@@ -1660,21 +1755,21 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1660
1755
  _localctx = new DateSubtractContext(_localctx);
1661
1756
  this.enterOuterAlt(_localctx, 5);
1662
1757
  {
1663
- this.state = 387;
1758
+ this.state = 411;
1664
1759
  _localctx._op = this.match(RuleFlowLanguageParser.K_DATE_SUBTRACT);
1665
- this.state = 388;
1760
+ this.state = 412;
1666
1761
  this.match(RuleFlowLanguageParser.L_PAREN);
1667
- this.state = 389;
1762
+ this.state = 413;
1668
1763
  _localctx._date = this.dateValue();
1669
- this.state = 390;
1764
+ this.state = 414;
1670
1765
  this.match(RuleFlowLanguageParser.COMMA);
1671
- this.state = 391;
1766
+ this.state = 415;
1672
1767
  _localctx._amount = this.expr(0);
1673
- this.state = 392;
1768
+ this.state = 416;
1674
1769
  this.match(RuleFlowLanguageParser.COMMA);
1675
- this.state = 393;
1770
+ this.state = 417;
1676
1771
  _localctx._unit = this.timeUnit();
1677
- this.state = 394;
1772
+ this.state = 418;
1678
1773
  this.match(RuleFlowLanguageParser.R_PAREN);
1679
1774
  }
1680
1775
  break;
@@ -1700,32 +1795,32 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1700
1795
  // @RuleVersion(0)
1701
1796
  propertyTuple() {
1702
1797
  let _localctx = new PropertyTupleContext(this._ctx, this.state);
1703
- this.enterRule(_localctx, 46, RuleFlowLanguageParser.RULE_propertyTuple);
1798
+ this.enterRule(_localctx, 48, RuleFlowLanguageParser.RULE_propertyTuple);
1704
1799
  let _la;
1705
1800
  try {
1706
1801
  this.enterOuterAlt(_localctx, 1);
1707
1802
  {
1708
- this.state = 398;
1803
+ this.state = 422;
1709
1804
  this.match(RuleFlowLanguageParser.L_PAREN);
1710
- this.state = 399;
1805
+ this.state = 423;
1711
1806
  this.validProperty();
1712
- this.state = 404;
1807
+ this.state = 428;
1713
1808
  this._errHandler.sync(this);
1714
1809
  _la = this._input.LA(1);
1715
1810
  while (_la === RuleFlowLanguageParser.COMMA) {
1716
1811
  {
1717
1812
  {
1718
- this.state = 400;
1813
+ this.state = 424;
1719
1814
  this.match(RuleFlowLanguageParser.COMMA);
1720
- this.state = 401;
1815
+ this.state = 425;
1721
1816
  this.validProperty();
1722
1817
  }
1723
1818
  }
1724
- this.state = 406;
1819
+ this.state = 430;
1725
1820
  this._errHandler.sync(this);
1726
1821
  _la = this._input.LA(1);
1727
1822
  }
1728
- this.state = 407;
1823
+ this.state = 431;
1729
1824
  this.match(RuleFlowLanguageParser.R_PAREN);
1730
1825
  }
1731
1826
  }
@@ -1747,23 +1842,23 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1747
1842
  // @RuleVersion(0)
1748
1843
  listElems() {
1749
1844
  let _localctx = new ListElemsContext(this._ctx, this.state);
1750
- this.enterRule(_localctx, 48, RuleFlowLanguageParser.RULE_listElems);
1845
+ this.enterRule(_localctx, 50, RuleFlowLanguageParser.RULE_listElems);
1751
1846
  let _la;
1752
1847
  try {
1753
1848
  let _alt;
1754
- this.state = 453;
1849
+ this.state = 477;
1755
1850
  this._errHandler.sync(this);
1756
1851
  switch (this._input.LA(1)) {
1757
1852
  case RuleFlowLanguageParser.K_LIST:
1758
1853
  this.enterOuterAlt(_localctx, 1);
1759
1854
  {
1760
- this.state = 409;
1855
+ this.state = 433;
1761
1856
  _localctx._storedList = this.match(RuleFlowLanguageParser.K_LIST);
1762
- this.state = 410;
1857
+ this.state = 434;
1763
1858
  this.match(RuleFlowLanguageParser.L_PAREN);
1764
- this.state = 411;
1859
+ this.state = 435;
1765
1860
  this.string_literal();
1766
- this.state = 412;
1861
+ this.state = 436;
1767
1862
  this.match(RuleFlowLanguageParser.R_PAREN);
1768
1863
  }
1769
1864
  break;
@@ -1771,101 +1866,100 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1771
1866
  case RuleFlowLanguageParser.SQUOTA_STRING:
1772
1867
  this.enterOuterAlt(_localctx, 2);
1773
1868
  {
1774
- this.state = 414;
1869
+ this.state = 438;
1775
1870
  _localctx._literalList = this.string_literal();
1776
- this.state = 419;
1871
+ this.state = 443;
1777
1872
  this._errHandler.sync(this);
1778
- _alt = this.interpreter.adaptivePredict(this._input, 31, this._ctx);
1873
+ _alt = this.interpreter.adaptivePredict(this._input, 34, this._ctx);
1779
1874
  while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
1780
1875
  if (_alt === 1) {
1781
1876
  {
1782
1877
  {
1783
- this.state = 415;
1878
+ this.state = 439;
1784
1879
  this.match(RuleFlowLanguageParser.COMMA);
1785
- this.state = 416;
1880
+ this.state = 440;
1786
1881
  this.string_literal();
1787
1882
  }
1788
1883
  }
1789
1884
  }
1790
- this.state = 421;
1885
+ this.state = 445;
1791
1886
  this._errHandler.sync(this);
1792
- _alt = this.interpreter.adaptivePredict(this._input, 31, this._ctx);
1887
+ _alt = this.interpreter.adaptivePredict(this._input, 34, this._ctx);
1793
1888
  }
1794
1889
  }
1795
1890
  break;
1796
1891
  case RuleFlowLanguageParser.L_PAREN:
1797
1892
  this.enterOuterAlt(_localctx, 3);
1798
1893
  {
1799
- this.state = 422;
1894
+ this.state = 446;
1800
1895
  _localctx._literalTupleList = this.match(RuleFlowLanguageParser.L_PAREN);
1801
- this.state = 423;
1896
+ this.state = 447;
1802
1897
  this.match(RuleFlowLanguageParser.L_PAREN);
1803
- this.state = 424;
1898
+ this.state = 448;
1804
1899
  this.string_literal();
1805
- this.state = 429;
1900
+ this.state = 453;
1806
1901
  this._errHandler.sync(this);
1807
1902
  _la = this._input.LA(1);
1808
1903
  while (_la === RuleFlowLanguageParser.COMMA) {
1809
1904
  {
1810
1905
  {
1811
- this.state = 425;
1906
+ this.state = 449;
1812
1907
  this.match(RuleFlowLanguageParser.COMMA);
1813
- this.state = 426;
1908
+ this.state = 450;
1814
1909
  this.string_literal();
1815
1910
  }
1816
1911
  }
1817
- this.state = 431;
1912
+ this.state = 455;
1818
1913
  this._errHandler.sync(this);
1819
1914
  _la = this._input.LA(1);
1820
1915
  }
1821
- this.state = 432;
1916
+ this.state = 456;
1822
1917
  this.match(RuleFlowLanguageParser.R_PAREN);
1823
- this.state = 447;
1918
+ this.state = 471;
1824
1919
  this._errHandler.sync(this);
1825
1920
  _la = this._input.LA(1);
1826
1921
  while (_la === RuleFlowLanguageParser.COMMA) {
1827
1922
  {
1828
1923
  {
1829
- this.state = 433;
1924
+ this.state = 457;
1830
1925
  this.match(RuleFlowLanguageParser.COMMA);
1831
- this.state = 434;
1926
+ this.state = 458;
1832
1927
  this.match(RuleFlowLanguageParser.L_PAREN);
1833
- this.state = 435;
1928
+ this.state = 459;
1834
1929
  this.string_literal();
1835
- this.state = 440;
1930
+ this.state = 464;
1836
1931
  this._errHandler.sync(this);
1837
1932
  _la = this._input.LA(1);
1838
1933
  while (_la === RuleFlowLanguageParser.COMMA) {
1839
1934
  {
1840
1935
  {
1841
- this.state = 436;
1936
+ this.state = 460;
1842
1937
  this.match(RuleFlowLanguageParser.COMMA);
1843
- this.state = 437;
1938
+ this.state = 461;
1844
1939
  this.string_literal();
1845
1940
  }
1846
1941
  }
1847
- this.state = 442;
1942
+ this.state = 466;
1848
1943
  this._errHandler.sync(this);
1849
1944
  _la = this._input.LA(1);
1850
1945
  }
1851
- this.state = 443;
1946
+ this.state = 467;
1852
1947
  this.match(RuleFlowLanguageParser.R_PAREN);
1853
1948
  }
1854
1949
  }
1855
- this.state = 449;
1950
+ this.state = 473;
1856
1951
  this._errHandler.sync(this);
1857
1952
  _la = this._input.LA(1);
1858
1953
  }
1859
- this.state = 450;
1954
+ this.state = 474;
1860
1955
  this.match(RuleFlowLanguageParser.R_PAREN);
1861
1956
  }
1862
1957
  break;
1863
1958
  case RuleFlowLanguageParser.DOT:
1864
- case RuleFlowLanguageParser.K_ELEM:
1865
1959
  case RuleFlowLanguageParser.ID:
1866
1960
  this.enterOuterAlt(_localctx, 4);
1867
1961
  {
1868
- this.state = 452;
1962
+ this.state = 476;
1869
1963
  this.validProperty();
1870
1964
  }
1871
1965
  break;
@@ -1891,44 +1985,44 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1891
1985
  // @RuleVersion(0)
1892
1986
  validValue() {
1893
1987
  let _localctx = new ValidValueContext(this._ctx, this.state);
1894
- this.enterRule(_localctx, 50, RuleFlowLanguageParser.RULE_validValue);
1988
+ this.enterRule(_localctx, 52, RuleFlowLanguageParser.RULE_validValue);
1895
1989
  try {
1896
- this.state = 460;
1990
+ this.state = 484;
1897
1991
  this._errHandler.sync(this);
1898
1992
  switch (this._input.LA(1)) {
1899
1993
  case RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS:
1900
1994
  case RuleFlowLanguageParser.SQUOTA_STRING:
1901
1995
  this.enterOuterAlt(_localctx, 1);
1902
1996
  {
1903
- this.state = 455;
1997
+ this.state = 479;
1904
1998
  _localctx._string = this.string_literal();
1905
1999
  }
1906
2000
  break;
1907
2001
  case RuleFlowLanguageParser.NUMERIC_LITERAL:
1908
2002
  this.enterOuterAlt(_localctx, 2);
1909
2003
  {
1910
- this.state = 456;
2004
+ this.state = 480;
1911
2005
  _localctx._number = this.match(RuleFlowLanguageParser.NUMERIC_LITERAL);
1912
2006
  }
1913
2007
  break;
1914
2008
  case RuleFlowLanguageParser.BOOLEAN_LITERAL:
1915
2009
  this.enterOuterAlt(_localctx, 3);
1916
2010
  {
1917
- this.state = 457;
2011
+ this.state = 481;
1918
2012
  _localctx._booleanLiteral = this.match(RuleFlowLanguageParser.BOOLEAN_LITERAL);
1919
2013
  }
1920
2014
  break;
1921
2015
  case RuleFlowLanguageParser.K_NULL:
1922
2016
  this.enterOuterAlt(_localctx, 4);
1923
2017
  {
1924
- this.state = 458;
2018
+ this.state = 482;
1925
2019
  _localctx._nullValue = this.match(RuleFlowLanguageParser.K_NULL);
1926
2020
  }
1927
2021
  break;
1928
2022
  case RuleFlowLanguageParser.CURRENT_DATE:
1929
2023
  this.enterOuterAlt(_localctx, 5);
1930
2024
  {
1931
- this.state = 459;
2025
+ this.state = 483;
1932
2026
  _localctx._currentDate = this.match(RuleFlowLanguageParser.CURRENT_DATE);
1933
2027
  }
1934
2028
  break;
@@ -1954,9 +2048,9 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1954
2048
  // @RuleVersion(0)
1955
2049
  actionParamValue() {
1956
2050
  let _localctx = new ActionParamValueContext(this._ctx, this.state);
1957
- this.enterRule(_localctx, 52, RuleFlowLanguageParser.RULE_actionParamValue);
2051
+ this.enterRule(_localctx, 54, RuleFlowLanguageParser.RULE_actionParamValue);
1958
2052
  try {
1959
- this.state = 464;
2053
+ this.state = 488;
1960
2054
  this._errHandler.sync(this);
1961
2055
  switch (this._input.LA(1)) {
1962
2056
  case RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS:
@@ -1967,16 +2061,15 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
1967
2061
  case RuleFlowLanguageParser.SQUOTA_STRING:
1968
2062
  this.enterOuterAlt(_localctx, 1);
1969
2063
  {
1970
- this.state = 462;
2064
+ this.state = 486;
1971
2065
  this.validValue();
1972
2066
  }
1973
2067
  break;
1974
2068
  case RuleFlowLanguageParser.DOT:
1975
- case RuleFlowLanguageParser.K_ELEM:
1976
2069
  case RuleFlowLanguageParser.ID:
1977
2070
  this.enterOuterAlt(_localctx, 2);
1978
2071
  {
1979
- this.state = 463;
2072
+ this.state = 487;
1980
2073
  this.validProperty();
1981
2074
  }
1982
2075
  break;
@@ -2002,34 +2095,34 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2002
2095
  // @RuleVersion(0)
2003
2096
  dateParse() {
2004
2097
  let _localctx = new DateParseContext(this._ctx, this.state);
2005
- this.enterRule(_localctx, 54, RuleFlowLanguageParser.RULE_dateParse);
2098
+ this.enterRule(_localctx, 56, RuleFlowLanguageParser.RULE_dateParse);
2006
2099
  try {
2007
- this.state = 476;
2100
+ this.state = 500;
2008
2101
  this._errHandler.sync(this);
2009
2102
  switch (this._input.LA(1)) {
2010
2103
  case RuleFlowLanguageParser.K_DATE:
2011
2104
  this.enterOuterAlt(_localctx, 1);
2012
2105
  {
2013
- this.state = 466;
2106
+ this.state = 490;
2014
2107
  this.match(RuleFlowLanguageParser.K_DATE);
2015
- this.state = 467;
2108
+ this.state = 491;
2016
2109
  this.match(RuleFlowLanguageParser.L_PAREN);
2017
- this.state = 468;
2110
+ this.state = 492;
2018
2111
  this.dateValue();
2019
- this.state = 469;
2112
+ this.state = 493;
2020
2113
  this.match(RuleFlowLanguageParser.R_PAREN);
2021
2114
  }
2022
2115
  break;
2023
2116
  case RuleFlowLanguageParser.K_DATETIME:
2024
2117
  this.enterOuterAlt(_localctx, 2);
2025
2118
  {
2026
- this.state = 471;
2119
+ this.state = 495;
2027
2120
  this.match(RuleFlowLanguageParser.K_DATETIME);
2028
- this.state = 472;
2121
+ this.state = 496;
2029
2122
  this.match(RuleFlowLanguageParser.L_PAREN);
2030
- this.state = 473;
2123
+ this.state = 497;
2031
2124
  this.dateValue();
2032
- this.state = 474;
2125
+ this.state = 498;
2033
2126
  this.match(RuleFlowLanguageParser.R_PAREN);
2034
2127
  }
2035
2128
  break;
@@ -2055,36 +2148,35 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2055
2148
  // @RuleVersion(0)
2056
2149
  dateValue() {
2057
2150
  let _localctx = new DateValueContext(this._ctx, this.state);
2058
- this.enterRule(_localctx, 56, RuleFlowLanguageParser.RULE_dateValue);
2151
+ this.enterRule(_localctx, 58, RuleFlowLanguageParser.RULE_dateValue);
2059
2152
  try {
2060
- this.state = 483;
2153
+ this.state = 507;
2061
2154
  this._errHandler.sync(this);
2062
2155
  switch (this._input.LA(1)) {
2063
2156
  case RuleFlowLanguageParser.STRING_NOT_SPECIAL_CHARS:
2064
2157
  case RuleFlowLanguageParser.SQUOTA_STRING:
2065
2158
  this.enterOuterAlt(_localctx, 1);
2066
2159
  {
2067
- this.state = 478;
2160
+ this.state = 502;
2068
2161
  this.string_literal();
2069
2162
  }
2070
2163
  break;
2071
2164
  case RuleFlowLanguageParser.DOT:
2072
- case RuleFlowLanguageParser.K_ELEM:
2073
2165
  case RuleFlowLanguageParser.ID:
2074
2166
  this.enterOuterAlt(_localctx, 2);
2075
2167
  {
2076
- this.state = 479;
2168
+ this.state = 503;
2077
2169
  this.validProperty();
2078
2170
  }
2079
2171
  break;
2080
2172
  case RuleFlowLanguageParser.K_NOW:
2081
2173
  this.enterOuterAlt(_localctx, 3);
2082
2174
  {
2083
- this.state = 480;
2175
+ this.state = 504;
2084
2176
  this.match(RuleFlowLanguageParser.K_NOW);
2085
- this.state = 481;
2177
+ this.state = 505;
2086
2178
  this.match(RuleFlowLanguageParser.L_PAREN);
2087
- this.state = 482;
2179
+ this.state = 506;
2088
2180
  this.match(RuleFlowLanguageParser.R_PAREN);
2089
2181
  }
2090
2182
  break;
@@ -2110,12 +2202,12 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2110
2202
  // @RuleVersion(0)
2111
2203
  timeUnit() {
2112
2204
  let _localctx = new TimeUnitContext(this._ctx, this.state);
2113
- this.enterRule(_localctx, 58, RuleFlowLanguageParser.RULE_timeUnit);
2205
+ this.enterRule(_localctx, 60, RuleFlowLanguageParser.RULE_timeUnit);
2114
2206
  let _la;
2115
2207
  try {
2116
2208
  this.enterOuterAlt(_localctx, 1);
2117
2209
  {
2118
- this.state = 485;
2210
+ this.state = 509;
2119
2211
  _la = this._input.LA(1);
2120
2212
  if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << RuleFlowLanguageParser.MINUTE) | (1 << RuleFlowLanguageParser.HOUR) | (1 << RuleFlowLanguageParser.DAY))) !== 0))) {
2121
2213
  this._errHandler.recoverInline(this);
@@ -2147,66 +2239,44 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2147
2239
  // @RuleVersion(0)
2148
2240
  validProperty() {
2149
2241
  let _localctx = new ValidPropertyContext(this._ctx, this.state);
2150
- this.enterRule(_localctx, 60, RuleFlowLanguageParser.RULE_validProperty);
2242
+ this.enterRule(_localctx, 62, RuleFlowLanguageParser.RULE_validProperty);
2151
2243
  let _la;
2152
2244
  try {
2153
2245
  let _alt;
2154
- this.state = 501;
2246
+ this.state = 525;
2155
2247
  this._errHandler.sync(this);
2156
- switch (this.interpreter.adaptivePredict(this._input, 43, this._ctx)) {
2248
+ switch (this.interpreter.adaptivePredict(this._input, 46, this._ctx)) {
2157
2249
  case 1:
2158
2250
  this.enterOuterAlt(_localctx, 1);
2159
2251
  {
2160
- this.state = 488;
2252
+ this.state = 512;
2161
2253
  this._errHandler.sync(this);
2162
2254
  _la = this._input.LA(1);
2163
2255
  if (_la === RuleFlowLanguageParser.DOT) {
2164
2256
  {
2165
- this.state = 487;
2257
+ this.state = 511;
2166
2258
  _localctx._root = this.match(RuleFlowLanguageParser.DOT);
2167
2259
  }
2168
2260
  }
2169
- this.state = 490;
2170
- _localctx._property = this._input.LT(1);
2171
- _la = this._input.LA(1);
2172
- if (!(_la === RuleFlowLanguageParser.K_ELEM || _la === RuleFlowLanguageParser.ID)) {
2173
- _localctx._property = this._errHandler.recoverInline(this);
2174
- }
2175
- else {
2176
- if (this._input.LA(1) === Token_1.Token.EOF) {
2177
- this.matchedEOF = true;
2178
- }
2179
- this._errHandler.reportMatch(this);
2180
- this.consume();
2181
- }
2261
+ this.state = 514;
2262
+ _localctx._property = this.match(RuleFlowLanguageParser.ID);
2182
2263
  }
2183
2264
  break;
2184
2265
  case 2:
2185
2266
  this.enterOuterAlt(_localctx, 2);
2186
2267
  {
2187
- this.state = 492;
2268
+ this.state = 516;
2188
2269
  this._errHandler.sync(this);
2189
2270
  _la = this._input.LA(1);
2190
2271
  if (_la === RuleFlowLanguageParser.DOT) {
2191
2272
  {
2192
- this.state = 491;
2273
+ this.state = 515;
2193
2274
  _localctx._root = this.match(RuleFlowLanguageParser.DOT);
2194
2275
  }
2195
2276
  }
2196
- this.state = 494;
2197
- _localctx._nestedProperty = this._input.LT(1);
2198
- _la = this._input.LA(1);
2199
- if (!(_la === RuleFlowLanguageParser.K_ELEM || _la === RuleFlowLanguageParser.ID)) {
2200
- _localctx._nestedProperty = this._errHandler.recoverInline(this);
2201
- }
2202
- else {
2203
- if (this._input.LA(1) === Token_1.Token.EOF) {
2204
- this.matchedEOF = true;
2205
- }
2206
- this._errHandler.reportMatch(this);
2207
- this.consume();
2208
- }
2209
- this.state = 497;
2277
+ this.state = 518;
2278
+ _localctx._nestedProperty = this.match(RuleFlowLanguageParser.ID);
2279
+ this.state = 521;
2210
2280
  this._errHandler.sync(this);
2211
2281
  _alt = 1;
2212
2282
  do {
@@ -2214,29 +2284,19 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2214
2284
  case 1:
2215
2285
  {
2216
2286
  {
2217
- this.state = 495;
2287
+ this.state = 519;
2218
2288
  this.match(RuleFlowLanguageParser.DOT);
2219
- this.state = 496;
2220
- _la = this._input.LA(1);
2221
- if (!(_la === RuleFlowLanguageParser.K_ELEM || _la === RuleFlowLanguageParser.ID)) {
2222
- this._errHandler.recoverInline(this);
2223
- }
2224
- else {
2225
- if (this._input.LA(1) === Token_1.Token.EOF) {
2226
- this.matchedEOF = true;
2227
- }
2228
- this._errHandler.reportMatch(this);
2229
- this.consume();
2230
- }
2289
+ this.state = 520;
2290
+ this.match(RuleFlowLanguageParser.ID);
2231
2291
  }
2232
2292
  }
2233
2293
  break;
2234
2294
  default:
2235
2295
  throw new NoViableAltException_1.NoViableAltException(this);
2236
2296
  }
2237
- this.state = 499;
2297
+ this.state = 523;
2238
2298
  this._errHandler.sync(this);
2239
- _alt = this.interpreter.adaptivePredict(this._input, 42, this._ctx);
2299
+ _alt = this.interpreter.adaptivePredict(this._input, 45, this._ctx);
2240
2300
  } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
2241
2301
  }
2242
2302
  break;
@@ -2259,7 +2319,7 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2259
2319
  }
2260
2320
  sempred(_localctx, ruleIndex, predIndex) {
2261
2321
  switch (ruleIndex) {
2262
- case 20:
2322
+ case 21:
2263
2323
  return this.expr_sempred(_localctx, predIndex);
2264
2324
  }
2265
2325
  return true;
@@ -2277,8 +2337,10 @@ class RuleFlowLanguageParser extends Parser_1.Parser {
2277
2337
  case 4:
2278
2338
  return this.precpred(this._ctx, 10);
2279
2339
  case 5:
2280
- return this.precpred(this._ctx, 18);
2340
+ return this.precpred(this._ctx, 22);
2281
2341
  case 6:
2342
+ return this.precpred(this._ctx, 18);
2343
+ case 7:
2282
2344
  return this.precpred(this._ctx, 16);
2283
2345
  }
2284
2346
  return true;
@@ -2435,241 +2497,241 @@ Object.defineProperty(RuleFlowLanguageParser, "K_LIST", {
2435
2497
  writable: true,
2436
2498
  value: 24
2437
2499
  });
2438
- Object.defineProperty(RuleFlowLanguageParser, "K_ELEM", {
2500
+ Object.defineProperty(RuleFlowLanguageParser, "L_BRACE", {
2439
2501
  enumerable: true,
2440
2502
  configurable: true,
2441
2503
  writable: true,
2442
2504
  value: 25
2443
2505
  });
2444
- Object.defineProperty(RuleFlowLanguageParser, "K_EVAL_IN_LIST", {
2506
+ Object.defineProperty(RuleFlowLanguageParser, "R_BRACE", {
2445
2507
  enumerable: true,
2446
2508
  configurable: true,
2447
2509
  writable: true,
2448
2510
  value: 26
2449
2511
  });
2450
- Object.defineProperty(RuleFlowLanguageParser, "L_BRACE", {
2512
+ Object.defineProperty(RuleFlowLanguageParser, "L_PAREN", {
2451
2513
  enumerable: true,
2452
2514
  configurable: true,
2453
2515
  writable: true,
2454
2516
  value: 27
2455
2517
  });
2456
- Object.defineProperty(RuleFlowLanguageParser, "R_BRACE", {
2518
+ Object.defineProperty(RuleFlowLanguageParser, "R_PAREN", {
2457
2519
  enumerable: true,
2458
2520
  configurable: true,
2459
2521
  writable: true,
2460
2522
  value: 28
2461
2523
  });
2462
- Object.defineProperty(RuleFlowLanguageParser, "L_PAREN", {
2524
+ Object.defineProperty(RuleFlowLanguageParser, "K_COLON", {
2463
2525
  enumerable: true,
2464
2526
  configurable: true,
2465
2527
  writable: true,
2466
2528
  value: 29
2467
2529
  });
2468
- Object.defineProperty(RuleFlowLanguageParser, "R_PAREN", {
2530
+ Object.defineProperty(RuleFlowLanguageParser, "K_ACTION", {
2469
2531
  enumerable: true,
2470
2532
  configurable: true,
2471
2533
  writable: true,
2472
2534
  value: 30
2473
2535
  });
2474
- Object.defineProperty(RuleFlowLanguageParser, "K_COLON", {
2536
+ Object.defineProperty(RuleFlowLanguageParser, "K_WORKFLOW", {
2475
2537
  enumerable: true,
2476
2538
  configurable: true,
2477
2539
  writable: true,
2478
2540
  value: 31
2479
2541
  });
2480
- Object.defineProperty(RuleFlowLanguageParser, "K_ACTION", {
2542
+ Object.defineProperty(RuleFlowLanguageParser, "K_RULESET", {
2481
2543
  enumerable: true,
2482
2544
  configurable: true,
2483
2545
  writable: true,
2484
2546
  value: 32
2485
2547
  });
2486
- Object.defineProperty(RuleFlowLanguageParser, "K_WORKFLOW", {
2548
+ Object.defineProperty(RuleFlowLanguageParser, "K_RETURN", {
2487
2549
  enumerable: true,
2488
2550
  configurable: true,
2489
2551
  writable: true,
2490
2552
  value: 33
2491
2553
  });
2492
- Object.defineProperty(RuleFlowLanguageParser, "K_RULESET", {
2554
+ Object.defineProperty(RuleFlowLanguageParser, "K_THEN", {
2493
2555
  enumerable: true,
2494
2556
  configurable: true,
2495
2557
  writable: true,
2496
2558
  value: 34
2497
2559
  });
2498
- Object.defineProperty(RuleFlowLanguageParser, "K_RETURN", {
2560
+ Object.defineProperty(RuleFlowLanguageParser, "K_DEFAULT", {
2499
2561
  enumerable: true,
2500
2562
  configurable: true,
2501
2563
  writable: true,
2502
2564
  value: 35
2503
2565
  });
2504
- Object.defineProperty(RuleFlowLanguageParser, "K_THEN", {
2566
+ Object.defineProperty(RuleFlowLanguageParser, "K_WITH", {
2505
2567
  enumerable: true,
2506
2568
  configurable: true,
2507
2569
  writable: true,
2508
2570
  value: 36
2509
2571
  });
2510
- Object.defineProperty(RuleFlowLanguageParser, "K_DEFAULT", {
2572
+ Object.defineProperty(RuleFlowLanguageParser, "K_END", {
2511
2573
  enumerable: true,
2512
2574
  configurable: true,
2513
2575
  writable: true,
2514
2576
  value: 37
2515
2577
  });
2516
- Object.defineProperty(RuleFlowLanguageParser, "K_WITH", {
2578
+ Object.defineProperty(RuleFlowLanguageParser, "K_ELSE", {
2517
2579
  enumerable: true,
2518
2580
  configurable: true,
2519
2581
  writable: true,
2520
2582
  value: 38
2521
2583
  });
2522
- Object.defineProperty(RuleFlowLanguageParser, "K_END", {
2584
+ Object.defineProperty(RuleFlowLanguageParser, "K_AND", {
2523
2585
  enumerable: true,
2524
2586
  configurable: true,
2525
2587
  writable: true,
2526
2588
  value: 39
2527
2589
  });
2528
- Object.defineProperty(RuleFlowLanguageParser, "K_ELSE", {
2590
+ Object.defineProperty(RuleFlowLanguageParser, "K_OR", {
2529
2591
  enumerable: true,
2530
2592
  configurable: true,
2531
2593
  writable: true,
2532
2594
  value: 40
2533
2595
  });
2534
- Object.defineProperty(RuleFlowLanguageParser, "K_AND", {
2596
+ Object.defineProperty(RuleFlowLanguageParser, "K_CONTAINS", {
2535
2597
  enumerable: true,
2536
2598
  configurable: true,
2537
2599
  writable: true,
2538
2600
  value: 41
2539
2601
  });
2540
- Object.defineProperty(RuleFlowLanguageParser, "K_OR", {
2602
+ Object.defineProperty(RuleFlowLanguageParser, "K_IS", {
2541
2603
  enumerable: true,
2542
2604
  configurable: true,
2543
2605
  writable: true,
2544
2606
  value: 42
2545
2607
  });
2546
- Object.defineProperty(RuleFlowLanguageParser, "K_CONTAINS", {
2608
+ Object.defineProperty(RuleFlowLanguageParser, "K_NOT", {
2547
2609
  enumerable: true,
2548
2610
  configurable: true,
2549
2611
  writable: true,
2550
2612
  value: 43
2551
2613
  });
2552
- Object.defineProperty(RuleFlowLanguageParser, "K_IS", {
2614
+ Object.defineProperty(RuleFlowLanguageParser, "K_IS_NOT", {
2553
2615
  enumerable: true,
2554
2616
  configurable: true,
2555
2617
  writable: true,
2556
2618
  value: 44
2557
2619
  });
2558
- Object.defineProperty(RuleFlowLanguageParser, "K_NOT", {
2620
+ Object.defineProperty(RuleFlowLanguageParser, "K_IN", {
2559
2621
  enumerable: true,
2560
2622
  configurable: true,
2561
2623
  writable: true,
2562
2624
  value: 45
2563
2625
  });
2564
- Object.defineProperty(RuleFlowLanguageParser, "K_IS_NOT", {
2626
+ Object.defineProperty(RuleFlowLanguageParser, "K_ANY", {
2565
2627
  enumerable: true,
2566
2628
  configurable: true,
2567
2629
  writable: true,
2568
2630
  value: 46
2569
2631
  });
2570
- Object.defineProperty(RuleFlowLanguageParser, "K_IN", {
2632
+ Object.defineProperty(RuleFlowLanguageParser, "K_NONE", {
2571
2633
  enumerable: true,
2572
2634
  configurable: true,
2573
2635
  writable: true,
2574
2636
  value: 47
2575
2637
  });
2576
- Object.defineProperty(RuleFlowLanguageParser, "K_ANY", {
2638
+ Object.defineProperty(RuleFlowLanguageParser, "K_ALL", {
2577
2639
  enumerable: true,
2578
2640
  configurable: true,
2579
2641
  writable: true,
2580
2642
  value: 48
2581
2643
  });
2582
- Object.defineProperty(RuleFlowLanguageParser, "K_NONE", {
2644
+ Object.defineProperty(RuleFlowLanguageParser, "K_COUNT", {
2583
2645
  enumerable: true,
2584
2646
  configurable: true,
2585
2647
  writable: true,
2586
2648
  value: 49
2587
2649
  });
2588
- Object.defineProperty(RuleFlowLanguageParser, "K_ALL", {
2650
+ Object.defineProperty(RuleFlowLanguageParser, "K_AVERAGE", {
2589
2651
  enumerable: true,
2590
2652
  configurable: true,
2591
2653
  writable: true,
2592
2654
  value: 50
2593
2655
  });
2594
- Object.defineProperty(RuleFlowLanguageParser, "K_COUNT", {
2656
+ Object.defineProperty(RuleFlowLanguageParser, "K_DISTINCT", {
2595
2657
  enumerable: true,
2596
2658
  configurable: true,
2597
2659
  writable: true,
2598
2660
  value: 51
2599
2661
  });
2600
- Object.defineProperty(RuleFlowLanguageParser, "K_AVERAGE", {
2662
+ Object.defineProperty(RuleFlowLanguageParser, "K_NULL", {
2601
2663
  enumerable: true,
2602
2664
  configurable: true,
2603
2665
  writable: true,
2604
2666
  value: 52
2605
2667
  });
2606
- Object.defineProperty(RuleFlowLanguageParser, "K_DISTINCT", {
2668
+ Object.defineProperty(RuleFlowLanguageParser, "DAY_OF_WEEK", {
2607
2669
  enumerable: true,
2608
2670
  configurable: true,
2609
2671
  writable: true,
2610
2672
  value: 53
2611
2673
  });
2612
- Object.defineProperty(RuleFlowLanguageParser, "K_NULL", {
2674
+ Object.defineProperty(RuleFlowLanguageParser, "K_EXPR", {
2613
2675
  enumerable: true,
2614
2676
  configurable: true,
2615
2677
  writable: true,
2616
2678
  value: 54
2617
2679
  });
2618
- Object.defineProperty(RuleFlowLanguageParser, "DAY_OF_WEEK", {
2680
+ Object.defineProperty(RuleFlowLanguageParser, "K_EVALUATION_MODE", {
2619
2681
  enumerable: true,
2620
2682
  configurable: true,
2621
2683
  writable: true,
2622
2684
  value: 55
2623
2685
  });
2624
- Object.defineProperty(RuleFlowLanguageParser, "K_EXPR", {
2686
+ Object.defineProperty(RuleFlowLanguageParser, "K_MULTI_MATCH", {
2625
2687
  enumerable: true,
2626
2688
  configurable: true,
2627
2689
  writable: true,
2628
2690
  value: 56
2629
2691
  });
2630
- Object.defineProperty(RuleFlowLanguageParser, "K_EVALUATION_MODE", {
2692
+ Object.defineProperty(RuleFlowLanguageParser, "K_SINGLE_MATCH", {
2631
2693
  enumerable: true,
2632
2694
  configurable: true,
2633
2695
  writable: true,
2634
2696
  value: 57
2635
2697
  });
2636
- Object.defineProperty(RuleFlowLanguageParser, "K_MULTI_MATCH", {
2698
+ Object.defineProperty(RuleFlowLanguageParser, "K_NOW", {
2637
2699
  enumerable: true,
2638
2700
  configurable: true,
2639
2701
  writable: true,
2640
2702
  value: 58
2641
2703
  });
2642
- Object.defineProperty(RuleFlowLanguageParser, "K_SINGLE_MATCH", {
2704
+ Object.defineProperty(RuleFlowLanguageParser, "K_DATE", {
2643
2705
  enumerable: true,
2644
2706
  configurable: true,
2645
2707
  writable: true,
2646
2708
  value: 59
2647
2709
  });
2648
- Object.defineProperty(RuleFlowLanguageParser, "K_NOW", {
2710
+ Object.defineProperty(RuleFlowLanguageParser, "K_DATETIME", {
2649
2711
  enumerable: true,
2650
2712
  configurable: true,
2651
2713
  writable: true,
2652
2714
  value: 60
2653
2715
  });
2654
- Object.defineProperty(RuleFlowLanguageParser, "K_DATE", {
2716
+ Object.defineProperty(RuleFlowLanguageParser, "K_DATE_ADD", {
2655
2717
  enumerable: true,
2656
2718
  configurable: true,
2657
2719
  writable: true,
2658
2720
  value: 61
2659
2721
  });
2660
- Object.defineProperty(RuleFlowLanguageParser, "K_DATETIME", {
2722
+ Object.defineProperty(RuleFlowLanguageParser, "K_DATE_SUBTRACT", {
2661
2723
  enumerable: true,
2662
2724
  configurable: true,
2663
2725
  writable: true,
2664
2726
  value: 62
2665
2727
  });
2666
- Object.defineProperty(RuleFlowLanguageParser, "K_DATE_ADD", {
2728
+ Object.defineProperty(RuleFlowLanguageParser, "K_SET", {
2667
2729
  enumerable: true,
2668
2730
  configurable: true,
2669
2731
  writable: true,
2670
2732
  value: 63
2671
2733
  });
2672
- Object.defineProperty(RuleFlowLanguageParser, "K_DATE_SUBTRACT", {
2734
+ Object.defineProperty(RuleFlowLanguageParser, "K_CONTINUE", {
2673
2735
  enumerable: true,
2674
2736
  configurable: true,
2675
2737
  writable: true,
@@ -2753,36 +2815,42 @@ Object.defineProperty(RuleFlowLanguageParser, "SQUOTA_STRING", {
2753
2815
  writable: true,
2754
2816
  value: 77
2755
2817
  });
2756
- Object.defineProperty(RuleFlowLanguageParser, "ID", {
2818
+ Object.defineProperty(RuleFlowLanguageParser, "VARIABLE", {
2757
2819
  enumerable: true,
2758
2820
  configurable: true,
2759
2821
  writable: true,
2760
2822
  value: 78
2761
2823
  });
2762
- Object.defineProperty(RuleFlowLanguageParser, "SINGLE_LINE_COMMENT", {
2824
+ Object.defineProperty(RuleFlowLanguageParser, "ID", {
2763
2825
  enumerable: true,
2764
2826
  configurable: true,
2765
2827
  writable: true,
2766
2828
  value: 79
2767
2829
  });
2768
- Object.defineProperty(RuleFlowLanguageParser, "MULTILINE_COMMENT", {
2830
+ Object.defineProperty(RuleFlowLanguageParser, "SINGLE_LINE_COMMENT", {
2769
2831
  enumerable: true,
2770
2832
  configurable: true,
2771
2833
  writable: true,
2772
2834
  value: 80
2773
2835
  });
2774
- Object.defineProperty(RuleFlowLanguageParser, "SPACES", {
2836
+ Object.defineProperty(RuleFlowLanguageParser, "MULTILINE_COMMENT", {
2775
2837
  enumerable: true,
2776
2838
  configurable: true,
2777
2839
  writable: true,
2778
2840
  value: 81
2779
2841
  });
2780
- Object.defineProperty(RuleFlowLanguageParser, "UNEXPECTED_CHAR", {
2842
+ Object.defineProperty(RuleFlowLanguageParser, "SPACES", {
2781
2843
  enumerable: true,
2782
2844
  configurable: true,
2783
2845
  writable: true,
2784
2846
  value: 82
2785
2847
  });
2848
+ Object.defineProperty(RuleFlowLanguageParser, "UNEXPECTED_CHAR", {
2849
+ enumerable: true,
2850
+ configurable: true,
2851
+ writable: true,
2852
+ value: 83
2853
+ });
2786
2854
  Object.defineProperty(RuleFlowLanguageParser, "RULE_parse", {
2787
2855
  enumerable: true,
2788
2856
  configurable: true,
@@ -2837,138 +2905,144 @@ Object.defineProperty(RuleFlowLanguageParser, "RULE_rule_body", {
2837
2905
  writable: true,
2838
2906
  value: 8
2839
2907
  });
2840
- Object.defineProperty(RuleFlowLanguageParser, "RULE_name", {
2908
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_set_clause", {
2841
2909
  enumerable: true,
2842
2910
  configurable: true,
2843
2911
  writable: true,
2844
2912
  value: 9
2845
2913
  });
2846
- Object.defineProperty(RuleFlowLanguageParser, "RULE_default_clause", {
2914
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_name", {
2847
2915
  enumerable: true,
2848
2916
  configurable: true,
2849
2917
  writable: true,
2850
2918
  value: 10
2851
2919
  });
2852
- Object.defineProperty(RuleFlowLanguageParser, "RULE_configuration", {
2920
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_default_clause", {
2853
2921
  enumerable: true,
2854
2922
  configurable: true,
2855
2923
  writable: true,
2856
2924
  value: 11
2857
2925
  });
2858
- Object.defineProperty(RuleFlowLanguageParser, "RULE_evaluation_mode", {
2926
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_configuration", {
2859
2927
  enumerable: true,
2860
2928
  configurable: true,
2861
2929
  writable: true,
2862
2930
  value: 12
2863
2931
  });
2864
- Object.defineProperty(RuleFlowLanguageParser, "RULE_return_result", {
2932
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_evaluation_mode", {
2865
2933
  enumerable: true,
2866
2934
  configurable: true,
2867
2935
  writable: true,
2868
2936
  value: 13
2869
2937
  });
2870
- Object.defineProperty(RuleFlowLanguageParser, "RULE_state_rule", {
2938
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_return_result", {
2871
2939
  enumerable: true,
2872
2940
  configurable: true,
2873
2941
  writable: true,
2874
2942
  value: 14
2875
2943
  });
2876
- Object.defineProperty(RuleFlowLanguageParser, "RULE_actions", {
2944
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_state_rule", {
2877
2945
  enumerable: true,
2878
2946
  configurable: true,
2879
2947
  writable: true,
2880
2948
  value: 15
2881
2949
  });
2882
- Object.defineProperty(RuleFlowLanguageParser, "RULE_action", {
2950
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_actions", {
2883
2951
  enumerable: true,
2884
2952
  configurable: true,
2885
2953
  writable: true,
2886
2954
  value: 16
2887
2955
  });
2888
- Object.defineProperty(RuleFlowLanguageParser, "RULE_action_params", {
2956
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_action", {
2889
2957
  enumerable: true,
2890
2958
  configurable: true,
2891
2959
  writable: true,
2892
2960
  value: 17
2893
2961
  });
2894
- Object.defineProperty(RuleFlowLanguageParser, "RULE_param_pairs", {
2962
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_action_params", {
2895
2963
  enumerable: true,
2896
2964
  configurable: true,
2897
2965
  writable: true,
2898
2966
  value: 18
2899
2967
  });
2900
- Object.defineProperty(RuleFlowLanguageParser, "RULE_param_pair", {
2968
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_param_pairs", {
2901
2969
  enumerable: true,
2902
2970
  configurable: true,
2903
2971
  writable: true,
2904
2972
  value: 19
2905
2973
  });
2906
- Object.defineProperty(RuleFlowLanguageParser, "RULE_expr", {
2974
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_param_pair", {
2907
2975
  enumerable: true,
2908
2976
  configurable: true,
2909
2977
  writable: true,
2910
2978
  value: 20
2911
2979
  });
2912
- Object.defineProperty(RuleFlowLanguageParser, "RULE_geoExpr", {
2980
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_expr", {
2913
2981
  enumerable: true,
2914
2982
  configurable: true,
2915
2983
  writable: true,
2916
2984
  value: 21
2917
2985
  });
2918
- Object.defineProperty(RuleFlowLanguageParser, "RULE_dateExpr", {
2986
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_geoExpr", {
2919
2987
  enumerable: true,
2920
2988
  configurable: true,
2921
2989
  writable: true,
2922
2990
  value: 22
2923
2991
  });
2924
- Object.defineProperty(RuleFlowLanguageParser, "RULE_propertyTuple", {
2992
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_dateExpr", {
2925
2993
  enumerable: true,
2926
2994
  configurable: true,
2927
2995
  writable: true,
2928
2996
  value: 23
2929
2997
  });
2930
- Object.defineProperty(RuleFlowLanguageParser, "RULE_listElems", {
2998
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_propertyTuple", {
2931
2999
  enumerable: true,
2932
3000
  configurable: true,
2933
3001
  writable: true,
2934
3002
  value: 24
2935
3003
  });
2936
- Object.defineProperty(RuleFlowLanguageParser, "RULE_validValue", {
3004
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_listElems", {
2937
3005
  enumerable: true,
2938
3006
  configurable: true,
2939
3007
  writable: true,
2940
3008
  value: 25
2941
3009
  });
2942
- Object.defineProperty(RuleFlowLanguageParser, "RULE_actionParamValue", {
3010
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_validValue", {
2943
3011
  enumerable: true,
2944
3012
  configurable: true,
2945
3013
  writable: true,
2946
3014
  value: 26
2947
3015
  });
2948
- Object.defineProperty(RuleFlowLanguageParser, "RULE_dateParse", {
3016
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_actionParamValue", {
2949
3017
  enumerable: true,
2950
3018
  configurable: true,
2951
3019
  writable: true,
2952
3020
  value: 27
2953
3021
  });
2954
- Object.defineProperty(RuleFlowLanguageParser, "RULE_dateValue", {
3022
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_dateParse", {
2955
3023
  enumerable: true,
2956
3024
  configurable: true,
2957
3025
  writable: true,
2958
3026
  value: 28
2959
3027
  });
2960
- Object.defineProperty(RuleFlowLanguageParser, "RULE_timeUnit", {
3028
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_dateValue", {
2961
3029
  enumerable: true,
2962
3030
  configurable: true,
2963
3031
  writable: true,
2964
3032
  value: 29
2965
3033
  });
2966
- Object.defineProperty(RuleFlowLanguageParser, "RULE_validProperty", {
3034
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_timeUnit", {
2967
3035
  enumerable: true,
2968
3036
  configurable: true,
2969
3037
  writable: true,
2970
3038
  value: 30
2971
3039
  });
3040
+ Object.defineProperty(RuleFlowLanguageParser, "RULE_validProperty", {
3041
+ enumerable: true,
3042
+ configurable: true,
3043
+ writable: true,
3044
+ value: 31
3045
+ });
2972
3046
  // tslint:disable:no-trailing-whitespace
2973
3047
  Object.defineProperty(RuleFlowLanguageParser, "ruleNames", {
2974
3048
  enumerable: true,
@@ -2976,11 +3050,11 @@ Object.defineProperty(RuleFlowLanguageParser, "ruleNames", {
2976
3050
  writable: true,
2977
3051
  value: [
2978
3052
  "parse", "error", "workflow", "workflow_name", "string_literal", "rulesets",
2979
- "ruleset_condition", "rules", "rule_body", "name", "default_clause", "configuration",
2980
- "evaluation_mode", "return_result", "state_rule", "actions", "action",
2981
- "action_params", "param_pairs", "param_pair", "expr", "geoExpr", "dateExpr",
2982
- "propertyTuple", "listElems", "validValue", "actionParamValue", "dateParse",
2983
- "dateValue", "timeUnit", "validProperty",
3053
+ "ruleset_condition", "rules", "rule_body", "set_clause", "name", "default_clause",
3054
+ "configuration", "evaluation_mode", "return_result", "state_rule", "actions",
3055
+ "action", "action_params", "param_pairs", "param_pair", "expr", "geoExpr",
3056
+ "dateExpr", "propertyTuple", "listElems", "validValue", "actionParamValue",
3057
+ "dateParse", "dateValue", "timeUnit", "validProperty",
2984
3058
  ]
2985
3059
  });
2986
3060
  Object.defineProperty(RuleFlowLanguageParser, "_LITERAL_NAMES", {
@@ -2991,7 +3065,7 @@ Object.defineProperty(RuleFlowLanguageParser, "_LITERAL_NAMES", {
2991
3065
  undefined, undefined, "'.'", "','", "'+'", "'-'", "'*'", "'/'", "'<'",
2992
3066
  "'<='", "'>'", "'>='", "'='", "'=='", "'<>'", "'minute'", "'hour'", "'day'",
2993
3067
  undefined, undefined, "'abs'", undefined, undefined, undefined, "'list'",
2994
- "'elem'", undefined, "'{'", "'}'", "'('", "')'", "':'", "'action'", undefined,
3068
+ "'{'", "'}'", "'('", "')'", "':'", "'action'", undefined, undefined, undefined,
2995
3069
  undefined, undefined, undefined, undefined, undefined, undefined, undefined,
2996
3070
  undefined, undefined, undefined, undefined, undefined, undefined, undefined,
2997
3071
  undefined, undefined, undefined, undefined, undefined, undefined, undefined,
@@ -3008,16 +3082,16 @@ Object.defineProperty(RuleFlowLanguageParser, "_SYMBOLIC_NAMES", {
3008
3082
  undefined, "STRING_NOT_SPECIAL_CHARS", "DOT", "COMMA", "ADD", "MINUS",
3009
3083
  "MULTIPLY", "DIVIDE", "LT", "LT_EQ", "GT", "GT_EQ", "EQ_IC", "EQ", "NOT_EQ",
3010
3084
  "MINUTE", "HOUR", "DAY", "CURRENT_DATE", "DATE_DIFF", "ABS", "REGEX_STRIP",
3011
- "MODULO", "K_STARTS_WITH", "K_LIST", "K_ELEM", "K_EVAL_IN_LIST", "L_BRACE",
3012
- "R_BRACE", "L_PAREN", "R_PAREN", "K_COLON", "K_ACTION", "K_WORKFLOW",
3013
- "K_RULESET", "K_RETURN", "K_THEN", "K_DEFAULT", "K_WITH", "K_END", "K_ELSE",
3014
- "K_AND", "K_OR", "K_CONTAINS", "K_IS", "K_NOT", "K_IS_NOT", "K_IN", "K_ANY",
3015
- "K_NONE", "K_ALL", "K_COUNT", "K_AVERAGE", "K_DISTINCT", "K_NULL", "DAY_OF_WEEK",
3016
- "K_EXPR", "K_EVALUATION_MODE", "K_MULTI_MATCH", "K_SINGLE_MATCH", "K_NOW",
3017
- "K_DATE", "K_DATETIME", "K_DATE_ADD", "K_DATE_SUBTRACT", "STRING_DISTANCE",
3018
- "PARTIAL_RATIO", "TOKEN_SORT_RATIO", "TOKEN_SET_RATIO", "STRING_SIMILARITY_SCORE",
3019
- "GEOHASH_ENCODE", "GEOHASH_DECODE", "DISTANCE", "WITHIN_RADIUS", "NUMERIC_LITERAL",
3020
- "BOOLEAN_LITERAL", "DQUOTA_STRING", "SQUOTA_STRING", "ID", "SINGLE_LINE_COMMENT",
3085
+ "MODULO", "K_STARTS_WITH", "K_LIST", "L_BRACE", "R_BRACE", "L_PAREN",
3086
+ "R_PAREN", "K_COLON", "K_ACTION", "K_WORKFLOW", "K_RULESET", "K_RETURN",
3087
+ "K_THEN", "K_DEFAULT", "K_WITH", "K_END", "K_ELSE", "K_AND", "K_OR", "K_CONTAINS",
3088
+ "K_IS", "K_NOT", "K_IS_NOT", "K_IN", "K_ANY", "K_NONE", "K_ALL", "K_COUNT",
3089
+ "K_AVERAGE", "K_DISTINCT", "K_NULL", "DAY_OF_WEEK", "K_EXPR", "K_EVALUATION_MODE",
3090
+ "K_MULTI_MATCH", "K_SINGLE_MATCH", "K_NOW", "K_DATE", "K_DATETIME", "K_DATE_ADD",
3091
+ "K_DATE_SUBTRACT", "K_SET", "K_CONTINUE", "STRING_DISTANCE", "PARTIAL_RATIO",
3092
+ "TOKEN_SORT_RATIO", "TOKEN_SET_RATIO", "STRING_SIMILARITY_SCORE", "GEOHASH_ENCODE",
3093
+ "GEOHASH_DECODE", "DISTANCE", "WITHIN_RADIUS", "NUMERIC_LITERAL", "BOOLEAN_LITERAL",
3094
+ "DQUOTA_STRING", "SQUOTA_STRING", "VARIABLE", "ID", "SINGLE_LINE_COMMENT",
3021
3095
  "MULTILINE_COMMENT", "SPACES", "UNEXPECTED_CHAR",
3022
3096
  ]
3023
3097
  });
@@ -3031,258 +3105,272 @@ Object.defineProperty(RuleFlowLanguageParser, "_serializedATN", {
3031
3105
  enumerable: true,
3032
3106
  configurable: true,
3033
3107
  writable: true,
3034
- value: "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03T\u01FA\x04\x02" +
3108
+ value: "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03U\u0212\x04\x02" +
3035
3109
  "\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07" +
3036
3110
  "\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04" +
3037
3111
  "\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04" +
3038
3112
  "\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t\x17\x04" +
3039
3113
  "\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t\x1C\x04" +
3040
- "\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x03\x02\x03\x02\x05\x02" +
3041
- "C\n\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x04\x03\x04\x03\x04\x05\x04" +
3042
- "L\n\x04\x03\x04\x07\x04O\n\x04\f\x04\x0E\x04R\v\x04\x03\x04\x03\x04\x03" +
3043
- "\x04\x03\x05\x03\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\x07\x05\x07^" +
3044
- "\n\x07\x03\x07\x06\x07a\n\x07\r\x07\x0E\x07b\x03\b\x03\b\x03\b\x03\b\x03" +
3045
- "\b\x03\b\x03\b\x03\b\x05\bm\n\b\x03\t\x03\t\x05\tq\n\t\x03\t\x03\t\x05" +
3046
- "\tu\n\t\x03\n\x03\n\x03\n\x05\nz\n\n\x03\n\x03\n\x03\n\x03\n\x05\n\x80" +
3047
- "\n\n\x05\n\x82\n\n\x03\v\x03\v\x03\f\x03\f\x05\f\x88\n\f\x03\f\x03\f\x05" +
3048
- "\f\x8C\n\f\x03\r\x05\r\x8F\n\r\x03\x0E\x03\x0E\x03\x0E\x03\x0F\x03\x0F" +
3049
- "\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x05\x0F\x9C\n\x0F\x03" +
3050
- "\x10\x03\x10\x03\x11\x05\x11\xA1\n\x11\x03\x11\x03\x11\x03\x11\x07\x11" +
3051
- "\xA6\n\x11\f\x11\x0E\x11\xA9\v\x11\x03\x12\x03\x12\x03\x12\x03\x12\x03" +
3052
- "\x12\x05\x12\xB0\n\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x12" +
3053
- "\x03\x12\x05\x12\xB9\n\x12\x05\x12\xBB\n\x12\x03\x13\x03\x13\x03\x13\x03" +
3054
- "\x13\x03\x14\x03\x14\x03\x14\x07\x14\xC4\n\x14\f\x14\x0E\x14\xC7\v\x14" +
3055
- "\x03\x15\x03\x15\x03\x15\x03\x15\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16" +
3056
- "\x03\x16\x03\x16\x05\x16\xD4\n\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3057
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3058
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3059
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3060
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3061
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3062
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3063
- "\x16\x03\x16\x03\x16\x03\x16\x05\x16\u0114\n\x16\x03\x16\x03\x16\x03\x16" +
3064
- "\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16" +
3065
- "\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x05\x16\u0127\n\x16\x03\x16\x03" +
3066
- "\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03\x16\x03" +
3067
- "\x16\x05\x16\u0134\n\x16\x07\x16\u0136\n\x16\f\x16\x0E\x16\u0139\v\x16" +
3068
- "\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x05\x17\u0142" +
3069
- "\n\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17" +
3114
+ "\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x03\x02\x03\x02" +
3115
+ "\x05\x02E\n\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x04\x03\x04\x03\x04" +
3116
+ "\x05\x04N\n\x04\x03\x04\x07\x04Q\n\x04\f\x04\x0E\x04T\v\x04\x03\x04\x03" +
3117
+ "\x04\x03\x04\x03\x05\x03\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\x07\x05" +
3118
+ "\x07`\n\x07\x03\x07\x06\x07c\n\x07\r\x07\x0E\x07d\x03\b\x03\b\x03\b\x03" +
3119
+ "\b\x03\b\x03\b\x03\b\x03\b\x05\bo\n\b\x03\t\x03\t\x05\ts\n\t\x03\t\x03" +
3120
+ "\t\x05\tw\n\t\x03\n\x03\n\x07\n{\n\n\f\n\x0E\n~\v\n\x03\n\x03\n\x05\n" +
3121
+ "\x82\n\n\x03\n\x03\n\x03\n\x03\n\x05\n\x88\n\n\x03\n\x05\n\x8B\n\n\x03" +
3122
+ "\v\x03\v\x03\v\x03\v\x03\v\x03\f\x03\f\x03\r\x03\r\x05\r\x96\n\r\x03\r" +
3123
+ "\x03\r\x05\r\x9A\n\r\x03\x0E\x05\x0E\x9D\n\x0E\x03\x0F\x03\x0F\x03\x0F" +
3124
+ "\x03\x10\x03\x10\x03\x10\x03\x10\x03\x10\x03\x10\x03\x10\x03\x10\x05\x10" +
3125
+ "\xAA\n\x10\x03\x11\x03\x11\x03\x12\x05\x12\xAF\n\x12\x03\x12\x03\x12\x03" +
3126
+ "\x12\x07\x12\xB4\n\x12\f\x12\x0E\x12\xB7\v\x12\x03\x13\x03\x13\x03\x13" +
3127
+ "\x03\x13\x03\x13\x05\x13\xBE\n\x13\x03\x13\x03\x13\x03\x13\x03\x13\x03" +
3128
+ "\x13\x03\x13\x03\x13\x05\x13\xC7\n\x13\x05\x13\xC9\n\x13\x03\x14\x03\x14" +
3129
+ "\x03\x14\x03\x14\x03\x15\x03\x15\x03\x15\x07\x15\xD2\n\x15\f\x15\x0E\x15" +
3130
+ "\xD5\v\x15\x03\x16\x03\x16\x03\x16\x03\x16\x03\x17\x03\x17\x03\x17\x03" +
3131
+ "\x17\x03\x17\x03\x17\x03\x17\x03\x17\x05\x17\xE3\n\x17\x03\x17\x03\x17" +
3070
3132
  "\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17" +
3071
3133
  "\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17" +
3134
+ "\x03\x17\x07\x17\xFA\n\x17\f\x17\x0E\x17\xFD\v\x17\x05\x17\xFF\n\x17\x03" +
3135
+ "\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03" +
3136
+ "\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03" +
3137
+ "\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03" +
3138
+ "\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03" +
3139
+ "\x17\x03\x17\x03\x17\x03\x17\x05\x17\u0129\n\x17\x03\x17\x03\x17\x03\x17" +
3072
3140
  "\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17" +
3073
- "\x03\x17\x03\x17\x03\x17\x05\x17\u016A\n\x17\x03\x18\x03\x18\x03\x18\x03" +
3141
+ "\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x05\x17" +
3142
+ "\u013F\n\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03\x17\x03" +
3143
+ "\x17\x03\x17\x03\x17\x03\x17\x05\x17\u014C\n\x17\x07\x17\u014E\n\x17\f" +
3144
+ "\x17\x0E\x17\u0151\v\x17\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18" +
3145
+ "\x03\x18\x05\x18\u015A\n\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03" +
3074
3146
  "\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03" +
3075
3147
  "\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03" +
3076
3148
  "\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03" +
3077
- "\x18\x03\x18\x03\x18\x03\x18\x03\x18\x05\x18\u018F\n\x18\x03\x19\x03\x19" +
3078
- "\x03\x19\x03\x19\x07\x19\u0195\n\x19\f\x19\x0E\x19\u0198\v\x19\x03\x19" +
3079
- "\x03\x19\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1A" +
3080
- "\x07\x1A\u01A4\n\x1A\f\x1A\x0E\x1A\u01A7\v\x1A\x03\x1A\x03\x1A\x03\x1A" +
3081
- "\x03\x1A\x03\x1A\x07\x1A\u01AE\n\x1A\f\x1A\x0E\x1A\u01B1\v\x1A\x03\x1A" +
3082
- "\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x07\x1A\u01B9\n\x1A\f\x1A\x0E" +
3083
- "\x1A\u01BC\v\x1A\x03\x1A\x03\x1A\x07\x1A\u01C0\n\x1A\f\x1A\x0E\x1A\u01C3" +
3084
- "\v\x1A\x03\x1A\x03\x1A\x03\x1A\x05\x1A\u01C8\n\x1A\x03\x1B\x03\x1B\x03" +
3085
- "\x1B\x03\x1B\x03\x1B\x05\x1B\u01CF\n\x1B\x03\x1C\x03\x1C\x05\x1C\u01D3" +
3086
- "\n\x1C\x03\x1D\x03\x1D\x03\x1D\x03\x1D\x03\x1D\x03\x1D\x03\x1D\x03\x1D" +
3087
- "\x03\x1D\x03\x1D\x05\x1D\u01DF\n\x1D\x03\x1E\x03\x1E\x03\x1E\x03\x1E\x03" +
3088
- "\x1E\x05\x1E\u01E6\n\x1E\x03\x1F\x03\x1F\x03 \x05 \u01EB\n \x03 \x03 " +
3089
- "\x05 \u01EF\n \x03 \x03 \x03 \x06 \u01F4\n \r \x0E \u01F5\x05 \u01F8\n" +
3090
- " \x03 \x03\xA7\x02\x03*!\x02\x02\x04\x02\x06\x02\b\x02\n\x02\f\x02\x0E" +
3091
- "\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02\x1E\x02 " +
3092
- "\x02\"\x02$\x02&\x02(\x02*\x02,\x02.\x020\x022\x024\x026\x028\x02:\x02" +
3093
- "<\x02>\x02\x02\r\x04\x02\x03\x03OO\x04\x02((++\x03\x02%&\x03\x02<=\x05" +
3094
- "\x02\x19\x19--11\x04\x02\b\t\x18\x18\x03\x02\x06\x07\x03\x02\n\x10\x03" +
3095
- "\x0227\x03\x02\x11\x13\x04\x02\x1B\x1BPP\x02\u0226\x02B\x03\x02\x02\x02" +
3096
- "\x04F\x03\x02\x02\x02\x06H\x03\x02\x02\x02\bV\x03\x02\x02\x02\nX\x03\x02" +
3097
- "\x02\x02\fZ\x03\x02\x02\x02\x0El\x03\x02\x02\x02\x10n\x03\x02\x02\x02" +
3098
- "\x12v\x03\x02\x02\x02\x14\x83\x03\x02\x02\x02\x16\x85\x03\x02\x02\x02" +
3099
- "\x18\x8E\x03\x02\x02\x02\x1A\x90\x03\x02\x02\x02\x1C\x9B\x03\x02\x02\x02" +
3100
- "\x1E\x9D\x03\x02\x02\x02 \xA0\x03\x02\x02\x02\"\xBA\x03\x02\x02\x02$\xBC" +
3101
- "\x03\x02\x02\x02&\xC0\x03\x02\x02\x02(\xC8\x03\x02\x02\x02*\u0113\x03" +
3102
- "\x02\x02\x02,\u0169\x03\x02\x02\x02.\u018E\x03\x02\x02\x020\u0190\x03" +
3103
- "\x02\x02\x022\u01C7\x03\x02\x02\x024\u01CE\x03\x02\x02\x026\u01D2\x03" +
3104
- "\x02\x02\x028\u01DE\x03\x02\x02\x02:\u01E5\x03\x02\x02\x02<\u01E7\x03" +
3105
- "\x02\x02\x02>\u01F7\x03\x02\x02\x02@C\x05\x06\x04\x02AC\x05\x04\x03\x02" +
3106
- "B@\x03\x02\x02\x02BA\x03\x02\x02\x02CD\x03\x02\x02\x02DE\x07\x02\x02\x03" +
3107
- "E\x03\x03\x02\x02\x02FG\x07T\x02\x02G\x05\x03\x02\x02\x02HI\x07#\x02\x02" +
3108
- "IK\x05\b\x05\x02JL\x05\x18\r\x02KJ\x03\x02\x02\x02KL\x03\x02\x02\x02L" +
3109
- "P\x03\x02\x02\x02MO\x05\f\x07\x02NM\x03\x02\x02\x02OR\x03\x02\x02\x02" +
3110
- "PN\x03\x02\x02\x02PQ\x03\x02\x02\x02QS\x03\x02\x02\x02RP\x03\x02\x02\x02" +
3111
- "ST\x05\x16\f\x02TU\x07)\x02\x02U\x07\x03\x02\x02\x02VW\x07\x03\x02\x02" +
3112
- "W\t\x03\x02\x02\x02XY\t\x02\x02\x02Y\v\x03\x02\x02\x02Z[\x07$\x02\x02" +
3113
- "[]\x05\x14\v\x02\\^\x05\x0E\b\x02]\\\x03\x02\x02\x02]^\x03\x02\x02\x02" +
3114
- "^`\x03\x02\x02\x02_a\x05\x10\t\x02`_\x03\x02\x02\x02ab\x03\x02\x02\x02" +
3115
- "b`\x03\x02\x02\x02bc\x03\x02\x02\x02c\r\x03\x02\x02\x02de\x05*\x16\x02" +
3116
- "ef\x07&\x02\x02fm\x03\x02\x02\x02gh\x07\x1F\x02\x02hi\x05*\x16\x02ij\x07" +
3117
- " \x02\x02jk\x07&\x02\x02km\x03\x02\x02\x02ld\x03\x02\x02\x02lg\x03\x02" +
3118
- "\x02\x02m\x0F\x03\x02\x02\x02np\x05\x14\v\x02oq\x07\x1F\x02\x02po\x03" +
3119
- "\x02\x02\x02pq\x03\x02\x02\x02qr\x03\x02\x02\x02rt\x05\x12\n\x02su\x07" +
3120
- " \x02\x02ts\x03\x02\x02\x02tu\x03\x02\x02\x02u\x11\x03\x02\x02\x02v\x81" +
3121
- "\x05*\x16\x02wy\x07&\x02\x02xz\t\x03\x02\x02yx\x03\x02\x02\x02yz\x03\x02" +
3122
- "\x02\x02z{\x03\x02\x02\x02{\x82\x05 \x11\x02|}\x07%\x02\x02}\x7F\x05\x1C" +
3123
- "\x0F\x02~\x80\x05 \x11\x02\x7F~\x03\x02\x02\x02\x7F\x80\x03\x02\x02\x02" +
3124
- "\x80\x82\x03\x02\x02\x02\x81w\x03\x02\x02\x02\x81|\x03\x02\x02\x02\x82" +
3125
- "\x13\x03\x02\x02\x02\x83\x84\x05\n\x06\x02\x84\x15\x03\x02\x02\x02\x85" +
3126
- "\x87\x07\'\x02\x02\x86\x88\t\x04\x02\x02\x87\x86\x03\x02\x02\x02\x87\x88" +
3127
- "\x03\x02\x02\x02\x88\x89\x03\x02\x02\x02\x89\x8B\x05\x1C\x0F\x02\x8A\x8C" +
3128
- "\x05 \x11\x02\x8B\x8A\x03\x02\x02\x02\x8B\x8C\x03\x02\x02\x02\x8C\x17" +
3129
- "\x03\x02\x02\x02\x8D\x8F\x05\x1A\x0E\x02\x8E\x8D\x03\x02\x02\x02\x8E\x8F" +
3130
- "\x03\x02\x02\x02\x8F\x19\x03\x02\x02\x02\x90\x91\x07;\x02\x02\x91\x92" +
3131
- "\t\x05\x02\x02\x92\x1B\x03\x02\x02\x02\x93\x9C\x05\x1E\x10\x02\x94\x9C" +
3132
- "\x05> \x02\x95\x9C\x054\x1B\x02\x96\x97\x07:\x02\x02\x97\x98\x07\x1F\x02" +
3133
- "\x02\x98\x99\x05*\x16\x02\x99\x9A\x07 \x02\x02\x9A\x9C\x03\x02\x02\x02" +
3134
- "\x9B\x93\x03\x02\x02\x02\x9B\x94\x03\x02\x02\x02\x9B\x95\x03\x02\x02\x02" +
3135
- "\x9B\x96\x03\x02\x02\x02\x9C\x1D\x03\x02\x02\x02\x9D\x9E\x07P\x02\x02" +
3136
- "\x9E\x1F\x03\x02\x02\x02\x9F\xA1\t\x03\x02\x02\xA0\x9F\x03\x02\x02\x02" +
3137
- "\xA0\xA1\x03\x02\x02\x02\xA1\xA2\x03\x02\x02\x02\xA2\xA7\x05\"\x12\x02" +
3138
- "\xA3\xA4\x07+\x02\x02\xA4\xA6\x05\"\x12\x02\xA5\xA3\x03\x02\x02\x02\xA6" +
3139
- "\xA9\x03\x02\x02\x02\xA7\xA8\x03\x02\x02\x02\xA7\xA5\x03\x02\x02\x02\xA8" +
3140
- "!\x03\x02\x02\x02\xA9\xA7\x03\x02\x02\x02\xAA\xAB\x07\"\x02\x02\xAB\xAC" +
3141
- "\x07\x1F\x02\x02\xAC\xAF\x05\n\x06\x02\xAD\xAE\x07\x05\x02\x02\xAE\xB0" +
3142
- "\x05$\x13\x02\xAF\xAD\x03\x02\x02\x02\xAF\xB0\x03\x02\x02\x02\xB0\xB1" +
3143
- "\x03\x02\x02\x02\xB1\xB2\x07 \x02\x02\xB2\xBB\x03\x02\x02\x02\xB3\xB8" +
3144
- "\x07P\x02\x02\xB4\xB5\x07\x1F\x02\x02\xB5\xB6\x05$\x13\x02\xB6\xB7\x07" +
3145
- " \x02\x02\xB7\xB9\x03\x02\x02\x02\xB8\xB4\x03\x02\x02\x02\xB8\xB9\x03" +
3146
- "\x02\x02\x02\xB9\xBB\x03\x02\x02\x02\xBA\xAA\x03\x02\x02\x02\xBA\xB3\x03" +
3147
- "\x02\x02\x02\xBB#\x03\x02\x02\x02\xBC\xBD\x07\x1D\x02\x02\xBD\xBE\x05" +
3148
- "&\x14\x02\xBE\xBF\x07\x1E\x02\x02\xBF%\x03\x02\x02\x02\xC0\xC5\x05(\x15" +
3149
- "\x02\xC1\xC2\x07\x05\x02\x02\xC2\xC4\x05(\x15\x02\xC3\xC1\x03\x02\x02" +
3150
- "\x02\xC4\xC7\x03\x02\x02\x02\xC5\xC3\x03\x02\x02\x02\xC5\xC6\x03\x02\x02" +
3151
- "\x02\xC6\'\x03\x02\x02\x02\xC7\xC5\x03\x02\x02\x02\xC8\xC9\x05\n\x06\x02" +
3152
- "\xC9\xCA\x07!\x02\x02\xCA\xCB\x056\x1C\x02\xCB)\x03\x02\x02\x02\xCC\xCD" +
3153
- "\b\x16\x01\x02\xCD\xCE\x07\x1F\x02\x02\xCE\xCF\x05*\x16\x02\xCF\xD0\x07" +
3154
- " \x02\x02\xD0\u0114\x03\x02\x02\x02\xD1\xD3\x050\x19\x02\xD2\xD4\x07/" +
3155
- "\x02\x02\xD3\xD2\x03\x02\x02\x02\xD3\xD4\x03\x02\x02\x02\xD4\xD5\x03\x02" +
3156
- "\x02\x02\xD5\xD6\t\x06\x02\x02\xD6\xD7\x052\x1A\x02\xD7\u0114\x03\x02" +
3157
- "\x02\x02\xD8\u0114\x05.\x18\x02\xD9\xDA\x07\x17\x02\x02\xDA\xDB\x07\x1F" +
3158
- "\x02\x02\xDB\xDC\x05> \x02\xDC\xDD\x07\x05\x02\x02\xDD\xDE\x07O\x02\x02" +
3159
- "\xDE\xDF\x07 \x02\x02\xDF\u0114\x03\x02\x02\x02\xE0\xE1\x07\x16\x02\x02" +
3160
- "\xE1\xE2\x07\x1F\x02\x02\xE2\xE3\x05*\x16\x02\xE3\xE4\x07 \x02\x02\xE4" +
3161
- "\u0114\x03\x02\x02\x02\xE5\xE6\x07\x1C\x02\x02\xE6\xE7\x07\x1F\x02\x02" +
3162
- "\xE7\xE8\x05\n\x06\x02\xE8\xE9\x07\x05\x02\x02\xE9\xEA\x05*\x16\x02\xEA" +
3163
- "\xEB\x07 \x02\x02\xEB\u0114\x03\x02\x02\x02\xEC\u0114\x058\x1D\x02\xED" +
3164
- "\u0114\x054\x1B\x02\xEE\u0114\x05> \x02\xEF\xF0\x07C\x02\x02\xF0\xF1\x07" +
3165
- "\x1F\x02\x02\xF1\xF2\x05*\x16\x02\xF2\xF3\x07\x05\x02\x02\xF3\xF4\x05" +
3166
- "*\x16\x02\xF4\xF5\x07 \x02\x02\xF5\u0114\x03\x02\x02\x02\xF6\xF7\x07D" +
3167
- "\x02\x02\xF7\xF8\x07\x1F\x02\x02\xF8\xF9\x05*\x16\x02\xF9\xFA\x07\x05" +
3168
- "\x02\x02\xFA\xFB\x05*\x16\x02\xFB\xFC\x07 \x02\x02\xFC\u0114\x03\x02\x02" +
3169
- "\x02\xFD\xFE\x07E\x02\x02\xFE\xFF\x07\x1F\x02\x02\xFF\u0100\x05*\x16\x02" +
3170
- "\u0100\u0101\x07\x05\x02\x02\u0101\u0102\x05*\x16\x02\u0102\u0103\x07" +
3171
- " \x02\x02\u0103\u0114\x03\x02\x02\x02\u0104\u0105\x07F\x02\x02\u0105\u0106" +
3172
- "\x07\x1F\x02\x02\u0106\u0107\x05*\x16\x02\u0107\u0108\x07\x05\x02\x02" +
3173
- "\u0108\u0109\x05*\x16\x02\u0109\u010A\x07 \x02\x02\u010A\u0114\x03\x02" +
3174
- "\x02\x02\u010B\u010C\x07G\x02\x02\u010C\u010D\x07\x1F\x02\x02\u010D\u010E" +
3175
- "\x05*\x16\x02\u010E\u010F\x07\x05\x02\x02\u010F\u0110\x05*\x16\x02\u0110" +
3176
- "\u0111\x07 \x02\x02\u0111\u0114\x03\x02\x02\x02\u0112\u0114\x05,\x17\x02" +
3177
- "\u0113\xCC\x03\x02\x02\x02\u0113\xD1\x03\x02\x02\x02\u0113\xD8\x03\x02" +
3178
- "\x02\x02\u0113\xD9\x03\x02\x02\x02\u0113\xE0\x03\x02\x02\x02\u0113\xE5" +
3179
- "\x03\x02\x02\x02\u0113\xEC\x03\x02\x02\x02\u0113\xED\x03\x02\x02\x02\u0113" +
3180
- "\xEE\x03\x02\x02\x02\u0113\xEF\x03\x02\x02\x02\u0113\xF6\x03\x02\x02\x02" +
3181
- "\u0113\xFD\x03\x02\x02\x02\u0113\u0104\x03\x02\x02\x02\u0113\u010B\x03" +
3182
- "\x02\x02\x02\u0113\u0112\x03\x02\x02\x02\u0114\u0137\x03\x02\x02\x02\u0115" +
3183
- "\u0116\f\x17\x02\x02\u0116\u0117\t\x07\x02\x02\u0117\u0136\x05*\x16\x18" +
3184
- "\u0118\u0119\f\x16\x02\x02\u0119\u011A\t\b\x02\x02\u011A\u0136\x05*\x16" +
3185
- "\x17\u011B\u011C\f\x15\x02\x02\u011C\u011D\t\t\x02\x02\u011D\u0136\x05" +
3186
- "*\x16\x16\u011E\u011F\f\r\x02\x02\u011F\u0120\x07+\x02\x02\u0120\u0136" +
3187
- "\x05*\x16\x0E\u0121\u0122\f\f\x02\x02\u0122\u0123\x07,\x02\x02\u0123\u0136" +
3188
- "\x05*\x16\r\u0124\u0126\f\x14\x02\x02\u0125\u0127\x07/\x02\x02\u0126\u0125" +
3189
- "\x03\x02\x02\x02\u0126\u0127\x03\x02\x02\x02\u0127\u0128\x03\x02\x02\x02" +
3190
- "\u0128\u0129\t\x06\x02\x02\u0129\u0136\x052\x1A\x02\u012A\u012B\f\x12" +
3191
- "\x02\x02\u012B\u012C\x07\x04\x02\x02\u012C\u0133\t\n\x02\x02\u012D\u012E" +
3192
- "\x07\x1D\x02\x02\u012E\u012F\x05*\x16\x02\u012F\u0130\x07\x1E\x02\x02" +
3193
- "\u0130\u0134\x03\x02\x02\x02\u0131\u0132\x07\x1F\x02\x02\u0132\u0134\x07" +
3194
- " \x02\x02\u0133\u012D\x03\x02\x02\x02\u0133\u0131\x03\x02\x02\x02\u0134" +
3195
- "\u0136\x03\x02\x02\x02\u0135\u0115\x03\x02\x02\x02\u0135\u0118\x03\x02" +
3196
- "\x02\x02\u0135\u011B\x03\x02\x02\x02\u0135\u011E\x03\x02\x02\x02\u0135" +
3197
- "\u0121\x03\x02\x02\x02\u0135\u0124\x03\x02\x02\x02\u0135\u012A\x03\x02" +
3198
- "\x02\x02\u0136\u0139\x03\x02\x02\x02\u0137\u0135\x03\x02\x02\x02\u0137" +
3199
- "\u0138\x03\x02\x02\x02\u0138+\x03\x02\x02\x02\u0139\u0137\x03\x02\x02" +
3200
- "\x02\u013A\u013B\x07H\x02\x02\u013B\u013C\x07\x1F\x02\x02\u013C\u013D" +
3201
- "\x05*\x16\x02\u013D\u013E\x07\x05\x02\x02\u013E\u0141\x05*\x16\x02\u013F" +
3202
- "\u0140\x07\x05\x02\x02\u0140\u0142\x05*\x16\x02\u0141\u013F\x03\x02\x02" +
3203
- "\x02\u0141\u0142\x03\x02\x02\x02\u0142\u0143\x03\x02\x02\x02\u0143\u0144" +
3204
- "\x07 \x02\x02\u0144\u016A\x03\x02\x02\x02\u0145\u0146\x07I\x02\x02\u0146" +
3205
- "\u0147\x07\x1F\x02\x02\u0147\u0148\x05*\x16\x02\u0148\u0149\x07 \x02\x02" +
3206
- "\u0149\u016A\x03\x02\x02\x02\u014A\u014B\x07J\x02\x02\u014B\u014C\x07" +
3207
- "\x1F\x02\x02\u014C\u014D\x05*\x16\x02\u014D\u014E\x07\x05\x02\x02\u014E" +
3208
- "\u014F\x05*\x16\x02\u014F\u0150\x07\x05\x02\x02\u0150\u0151\x05*\x16\x02" +
3209
- "\u0151\u0152\x07\x05\x02\x02\u0152\u0153\x05*\x16\x02\u0153\u0154\x07" +
3210
- " \x02\x02\u0154\u016A\x03\x02\x02\x02\u0155\u0156\x07J\x02\x02\u0156\u0157" +
3211
- "\x07\x1F\x02\x02\u0157\u0158\x05*\x16\x02\u0158\u0159\x07\x05\x02\x02" +
3212
- "\u0159\u015A\x05*\x16\x02\u015A\u015B\x07 \x02\x02\u015B\u016A\x03\x02" +
3213
- "\x02\x02\u015C\u015D\x07K\x02\x02\u015D\u015E\x07\x1F\x02\x02\u015E\u015F" +
3214
- "\x05*\x16\x02\u015F\u0160\x07\x05\x02\x02\u0160\u0161\x05*\x16\x02\u0161" +
3215
- "\u0162\x07\x05\x02\x02\u0162\u0163\x05*\x16\x02\u0163\u0164\x07\x05\x02" +
3216
- "\x02\u0164\u0165\x05*\x16\x02\u0165\u0166\x07\x05\x02\x02\u0166\u0167" +
3217
- "\x05*\x16\x02\u0167\u0168\x07 \x02\x02\u0168\u016A\x03\x02\x02\x02\u0169" +
3218
- "\u013A\x03\x02\x02\x02\u0169\u0145\x03\x02\x02\x02\u0169\u014A\x03\x02" +
3219
- "\x02\x02\u0169\u0155\x03\x02\x02\x02\u0169\u015C\x03\x02\x02\x02\u016A" +
3220
- "-\x03\x02\x02\x02\u016B\u016C\x07\x15\x02\x02\u016C\u016D\x07\x1F\x02" +
3221
- "\x02\u016D\u016E\x05:\x1E\x02\u016E\u016F\x07\x05\x02\x02\u016F\u0170" +
3222
- "\x05:\x1E\x02\u0170\u0171\x07\x05\x02\x02\u0171\u0172\t\v\x02\x02\u0172" +
3223
- "\u0173\x07 \x02\x02\u0173\u018F\x03\x02\x02\x02\u0174\u0175\x079\x02\x02" +
3224
- "\u0175\u0176\x07\x1F\x02\x02\u0176\u0177\x05:\x1E\x02\u0177\u0178\x07" +
3225
- " \x02\x02\u0178\u018F\x03\x02\x02\x02\u0179\u017A\x07>\x02\x02\u017A\u017B" +
3226
- "\x07\x1F\x02\x02\u017B\u018F\x07 \x02\x02\u017C\u017D\x07A\x02\x02\u017D" +
3227
- "\u017E\x07\x1F\x02\x02\u017E\u017F\x05:\x1E\x02\u017F\u0180\x07\x05\x02" +
3228
- "\x02\u0180\u0181\x05*\x16\x02\u0181\u0182\x07\x05\x02\x02\u0182\u0183" +
3229
- "\x05<\x1F\x02\u0183\u0184\x07 \x02\x02\u0184\u018F\x03\x02\x02\x02\u0185" +
3230
- "\u0186\x07B\x02\x02\u0186\u0187\x07\x1F\x02\x02\u0187\u0188\x05:\x1E\x02" +
3231
- "\u0188\u0189\x07\x05\x02\x02\u0189\u018A\x05*\x16\x02\u018A\u018B\x07" +
3232
- "\x05\x02\x02\u018B\u018C\x05<\x1F\x02\u018C\u018D\x07 \x02\x02\u018D\u018F" +
3233
- "\x03\x02\x02\x02\u018E\u016B\x03\x02\x02\x02\u018E\u0174\x03\x02\x02\x02" +
3234
- "\u018E\u0179\x03\x02\x02\x02\u018E\u017C\x03\x02\x02\x02\u018E\u0185\x03" +
3235
- "\x02\x02\x02\u018F/\x03\x02\x02\x02\u0190\u0191\x07\x1F\x02\x02\u0191" +
3236
- "\u0196\x05> \x02\u0192\u0193\x07\x05\x02\x02\u0193\u0195\x05> \x02\u0194" +
3237
- "\u0192\x03\x02\x02\x02\u0195\u0198\x03\x02\x02\x02\u0196\u0194\x03\x02" +
3238
- "\x02\x02\u0196\u0197\x03\x02\x02\x02\u0197\u0199\x03\x02\x02\x02\u0198" +
3239
- "\u0196\x03\x02\x02\x02\u0199\u019A\x07 \x02\x02\u019A1\x03\x02\x02\x02" +
3240
- "\u019B\u019C\x07\x1A\x02\x02\u019C\u019D\x07\x1F\x02\x02\u019D\u019E\x05" +
3241
- "\n\x06\x02\u019E\u019F\x07 \x02\x02\u019F\u01C8\x03\x02\x02\x02\u01A0" +
3242
- "\u01A5\x05\n\x06\x02\u01A1\u01A2\x07\x05\x02\x02\u01A2\u01A4\x05\n\x06" +
3243
- "\x02\u01A3\u01A1\x03\x02\x02\x02\u01A4\u01A7\x03\x02\x02\x02\u01A5\u01A3" +
3244
- "\x03\x02\x02\x02\u01A5\u01A6\x03\x02\x02\x02\u01A6\u01C8\x03\x02\x02\x02" +
3245
- "\u01A7\u01A5\x03\x02\x02\x02\u01A8\u01A9\x07\x1F\x02\x02\u01A9\u01AA\x07" +
3246
- "\x1F\x02\x02\u01AA\u01AF\x05\n\x06\x02\u01AB\u01AC\x07\x05\x02\x02\u01AC" +
3247
- "\u01AE\x05\n\x06\x02\u01AD\u01AB\x03\x02\x02\x02\u01AE\u01B1\x03\x02\x02" +
3248
- "\x02\u01AF\u01AD\x03\x02\x02\x02\u01AF\u01B0\x03\x02\x02\x02\u01B0\u01B2" +
3249
- "\x03\x02\x02\x02\u01B1\u01AF\x03\x02\x02\x02\u01B2\u01C1\x07 \x02\x02" +
3250
- "\u01B3\u01B4\x07\x05\x02\x02\u01B4\u01B5\x07\x1F\x02\x02\u01B5\u01BA\x05" +
3251
- "\n\x06\x02\u01B6\u01B7\x07\x05\x02\x02\u01B7\u01B9\x05\n\x06\x02\u01B8" +
3252
- "\u01B6\x03\x02\x02\x02\u01B9\u01BC\x03\x02\x02\x02\u01BA\u01B8\x03\x02" +
3253
- "\x02\x02\u01BA\u01BB\x03\x02\x02\x02\u01BB\u01BD\x03\x02\x02\x02\u01BC" +
3254
- "\u01BA\x03\x02\x02\x02\u01BD\u01BE\x07 \x02\x02\u01BE\u01C0\x03\x02\x02" +
3255
- "\x02\u01BF\u01B3\x03\x02\x02\x02\u01C0\u01C3\x03\x02\x02\x02\u01C1\u01BF" +
3256
- "\x03\x02\x02\x02\u01C1\u01C2\x03\x02\x02\x02\u01C2\u01C4\x03\x02\x02\x02" +
3257
- "\u01C3\u01C1\x03\x02\x02\x02\u01C4\u01C5\x07 \x02\x02\u01C5\u01C8\x03" +
3258
- "\x02\x02\x02\u01C6\u01C8\x05> \x02\u01C7\u019B\x03\x02\x02\x02\u01C7\u01A0" +
3259
- "\x03\x02\x02\x02\u01C7\u01A8\x03\x02\x02\x02\u01C7\u01C6\x03\x02\x02\x02" +
3260
- "\u01C83\x03\x02\x02\x02\u01C9\u01CF\x05\n\x06\x02\u01CA\u01CF\x07L\x02" +
3261
- "\x02\u01CB\u01CF\x07M\x02\x02\u01CC\u01CF\x078\x02\x02\u01CD\u01CF\x07" +
3262
- "\x14\x02\x02\u01CE\u01C9\x03\x02\x02\x02\u01CE\u01CA\x03\x02\x02\x02\u01CE" +
3263
- "\u01CB\x03\x02\x02\x02\u01CE\u01CC\x03\x02\x02\x02\u01CE\u01CD\x03\x02" +
3264
- "\x02\x02\u01CF5\x03\x02\x02\x02\u01D0\u01D3\x054\x1B\x02\u01D1\u01D3\x05" +
3265
- "> \x02\u01D2\u01D0\x03\x02\x02\x02\u01D2\u01D1\x03\x02\x02\x02\u01D37" +
3266
- "\x03\x02\x02\x02\u01D4\u01D5\x07?\x02\x02\u01D5\u01D6\x07\x1F\x02\x02" +
3267
- "\u01D6\u01D7\x05:\x1E\x02\u01D7\u01D8\x07 \x02\x02\u01D8\u01DF\x03\x02" +
3268
- "\x02\x02\u01D9\u01DA\x07@\x02\x02\u01DA\u01DB\x07\x1F\x02\x02\u01DB\u01DC" +
3269
- "\x05:\x1E\x02\u01DC\u01DD\x07 \x02\x02\u01DD\u01DF\x03\x02\x02\x02\u01DE" +
3270
- "\u01D4\x03\x02\x02\x02\u01DE\u01D9\x03\x02\x02\x02\u01DF9\x03\x02\x02" +
3271
- "\x02\u01E0\u01E6\x05\n\x06\x02\u01E1\u01E6\x05> \x02\u01E2\u01E3\x07>" +
3272
- "\x02\x02\u01E3\u01E4\x07\x1F\x02\x02\u01E4\u01E6\x07 \x02\x02\u01E5\u01E0" +
3273
- "\x03\x02\x02\x02\u01E5\u01E1\x03\x02\x02\x02\u01E5\u01E2\x03\x02\x02\x02" +
3274
- "\u01E6;\x03\x02\x02\x02\u01E7\u01E8\t\v\x02\x02\u01E8=\x03\x02\x02\x02" +
3275
- "\u01E9\u01EB\x07\x04\x02\x02\u01EA\u01E9\x03\x02\x02\x02\u01EA\u01EB\x03" +
3276
- "\x02\x02\x02\u01EB\u01EC\x03\x02\x02\x02\u01EC\u01F8\t\f\x02\x02\u01ED" +
3277
- "\u01EF\x07\x04\x02\x02\u01EE\u01ED\x03\x02\x02\x02\u01EE\u01EF\x03\x02" +
3278
- "\x02\x02\u01EF\u01F0\x03\x02\x02\x02\u01F0\u01F3\t\f\x02\x02\u01F1\u01F2" +
3279
- "\x07\x04\x02\x02\u01F2\u01F4\t\f\x02\x02\u01F3\u01F1\x03\x02\x02\x02\u01F4" +
3280
- "\u01F5\x03\x02\x02\x02\u01F5\u01F3\x03\x02\x02\x02\u01F5\u01F6\x03\x02" +
3281
- "\x02\x02\u01F6\u01F8\x03\x02\x02\x02\u01F7\u01EA\x03\x02\x02\x02\u01F7" +
3282
- "\u01EE\x03\x02\x02\x02\u01F8?\x03\x02\x02\x02.BKP]blpty\x7F\x81\x87\x8B" +
3283
- "\x8E\x9B\xA0\xA7\xAF\xB8\xBA\xC5\xD3\u0113\u0126\u0133\u0135\u0137\u0141" +
3284
- "\u0169\u018E\u0196\u01A5\u01AF\u01BA\u01C1\u01C7\u01CE\u01D2\u01DE\u01E5" +
3285
- "\u01EA\u01EE\u01F5\u01F7"
3149
+ "\x18\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18\x05\x18\u0182\n\x18\x03\x19" +
3150
+ "\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19" +
3151
+ "\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19" +
3152
+ "\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19" +
3153
+ "\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x03\x19\x05\x19\u01A7" +
3154
+ "\n\x19\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x07\x1A\u01AD\n\x1A\f\x1A\x0E\x1A" +
3155
+ "\u01B0\v\x1A\x03\x1A\x03\x1A\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x03" +
3156
+ "\x1B\x03\x1B\x03\x1B\x07\x1B\u01BC\n\x1B\f\x1B\x0E\x1B\u01BF\v\x1B\x03" +
3157
+ "\x1B\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x07\x1B\u01C6\n\x1B\f\x1B\x0E\x1B" +
3158
+ "\u01C9\v\x1B\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x03\x1B\x07\x1B\u01D1" +
3159
+ "\n\x1B\f\x1B\x0E\x1B\u01D4\v\x1B\x03\x1B\x03\x1B\x07\x1B\u01D8\n\x1B\f" +
3160
+ "\x1B\x0E\x1B\u01DB\v\x1B\x03\x1B\x03\x1B\x03\x1B\x05\x1B\u01E0\n\x1B\x03" +
3161
+ "\x1C\x03\x1C\x03\x1C\x03\x1C\x03\x1C\x05\x1C\u01E7\n\x1C\x03\x1D\x03\x1D" +
3162
+ "\x05\x1D\u01EB\n\x1D\x03\x1E\x03\x1E\x03\x1E\x03\x1E\x03\x1E\x03\x1E\x03" +
3163
+ "\x1E\x03\x1E\x03\x1E\x03\x1E\x05\x1E\u01F7\n\x1E\x03\x1F\x03\x1F\x03\x1F" +
3164
+ "\x03\x1F\x03\x1F\x05\x1F\u01FE\n\x1F\x03 \x03 \x03!\x05!\u0203\n!\x03" +
3165
+ "!\x03!\x05!\u0207\n!\x03!\x03!\x03!\x06!\u020C\n!\r!\x0E!\u020D\x05!\u0210" +
3166
+ "\n!\x03!\x03\xB5\x02\x03,\"\x02\x02\x04\x02\x06\x02\b\x02\n\x02\f\x02" +
3167
+ "\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02\x1E\x02" +
3168
+ " \x02\"\x02$\x02&\x02(\x02*\x02,\x02.\x020\x022\x024\x026\x028\x02:\x02" +
3169
+ "<\x02>\x02@\x02\x02\f\x04\x02\x03\x03OO\x04\x02&&))\x03\x02#$\x03\x02" +
3170
+ ":;\x05\x02\x19\x19++//\x04\x02\b\t\x18\x18\x03\x02\x06\x07\x03\x02\n\x10" +
3171
+ "\x03\x0205\x03\x02\x11\x13\x02\u0243\x02D\x03\x02\x02\x02\x04H\x03\x02" +
3172
+ "\x02\x02\x06J\x03\x02\x02\x02\bX\x03\x02\x02\x02\nZ\x03\x02\x02\x02\f" +
3173
+ "\\\x03\x02\x02\x02\x0En\x03\x02\x02\x02\x10p\x03\x02\x02\x02\x12x\x03" +
3174
+ "\x02\x02\x02\x14\x8C\x03\x02\x02\x02\x16\x91\x03\x02\x02\x02\x18\x93\x03" +
3175
+ "\x02\x02\x02\x1A\x9C\x03\x02\x02\x02\x1C\x9E\x03\x02\x02\x02\x1E\xA9\x03" +
3176
+ "\x02\x02\x02 \xAB\x03\x02\x02\x02\"\xAE\x03\x02\x02\x02$\xC8\x03\x02\x02" +
3177
+ "\x02&\xCA\x03\x02\x02\x02(\xCE\x03\x02\x02\x02*\xD6\x03\x02\x02\x02,\u0128" +
3178
+ "\x03\x02\x02\x02.\u0181\x03\x02\x02\x020\u01A6\x03\x02\x02\x022\u01A8" +
3179
+ "\x03\x02\x02\x024\u01DF\x03\x02\x02\x026\u01E6\x03\x02\x02\x028\u01EA" +
3180
+ "\x03\x02\x02\x02:\u01F6\x03\x02\x02\x02<\u01FD\x03\x02\x02\x02>\u01FF" +
3181
+ "\x03\x02\x02\x02@\u020F\x03\x02\x02\x02BE\x05\x06\x04\x02CE\x05\x04\x03" +
3182
+ "\x02DB\x03\x02\x02\x02DC\x03\x02\x02\x02EF\x03\x02\x02\x02FG\x07\x02\x02" +
3183
+ "\x03G\x03\x03\x02\x02\x02HI\x07U\x02\x02I\x05\x03\x02\x02\x02JK\x07!\x02" +
3184
+ "\x02KM\x05\b\x05\x02LN\x05\x1A\x0E\x02ML\x03\x02\x02\x02MN\x03\x02\x02" +
3185
+ "\x02NR\x03\x02\x02\x02OQ\x05\f\x07\x02PO\x03\x02\x02\x02QT\x03\x02\x02" +
3186
+ "\x02RP\x03\x02\x02\x02RS\x03\x02\x02\x02SU\x03\x02\x02\x02TR\x03\x02\x02" +
3187
+ "\x02UV\x05\x18\r\x02VW\x07\'\x02\x02W\x07\x03\x02\x02\x02XY\x07\x03\x02" +
3188
+ "\x02Y\t\x03\x02\x02\x02Z[\t\x02\x02\x02[\v\x03\x02\x02\x02\\]\x07\"\x02" +
3189
+ "\x02]_\x05\x16\f\x02^`\x05\x0E\b\x02_^\x03\x02\x02\x02_`\x03\x02\x02\x02" +
3190
+ "`b\x03\x02\x02\x02ac\x05\x10\t\x02ba\x03\x02\x02\x02cd\x03\x02\x02\x02" +
3191
+ "db\x03\x02\x02\x02de\x03\x02\x02\x02e\r\x03\x02\x02\x02fg\x05,\x17\x02" +
3192
+ "gh\x07$\x02\x02ho\x03\x02\x02\x02ij\x07\x1D\x02\x02jk\x05,\x17\x02kl\x07" +
3193
+ "\x1E\x02\x02lm\x07$\x02\x02mo\x03\x02\x02\x02nf\x03\x02\x02\x02ni\x03" +
3194
+ "\x02\x02\x02o\x0F\x03\x02\x02\x02pr\x05\x16\f\x02qs\x07\x1D\x02\x02rq" +
3195
+ "\x03\x02\x02\x02rs\x03\x02\x02\x02st\x03\x02\x02\x02tv\x05\x12\n\x02u" +
3196
+ "w\x07\x1E\x02\x02vu\x03\x02\x02\x02vw\x03\x02\x02\x02w\x11\x03\x02\x02" +
3197
+ "\x02x|\x05,\x17\x02y{\x05\x14\v\x02zy\x03\x02\x02\x02{~\x03\x02\x02\x02" +
3198
+ "|z\x03\x02\x02\x02|}\x03\x02\x02\x02}\x8A\x03\x02\x02\x02~|\x03\x02\x02" +
3199
+ "\x02\x7F\x81\x07$\x02\x02\x80\x82\t\x03\x02\x02\x81\x80\x03\x02\x02\x02" +
3200
+ "\x81\x82\x03\x02\x02\x02\x82\x83\x03\x02\x02\x02\x83\x8B\x05\"\x12\x02" +
3201
+ "\x84\x85\x07#\x02\x02\x85\x87\x05\x1E\x10\x02\x86\x88\x05\"\x12\x02\x87" +
3202
+ "\x86\x03\x02\x02\x02\x87\x88\x03\x02\x02\x02\x88\x8B\x03\x02\x02\x02\x89" +
3203
+ "\x8B\x07B\x02\x02\x8A\x7F\x03\x02\x02\x02\x8A\x84\x03\x02\x02\x02\x8A" +
3204
+ "\x89\x03\x02\x02\x02\x8B\x13\x03\x02\x02\x02\x8C\x8D\x07A\x02\x02\x8D" +
3205
+ "\x8E\x07P\x02\x02\x8E\x8F\x07\x0E\x02\x02\x8F\x90\x05,\x17\x02\x90\x15" +
3206
+ "\x03\x02\x02\x02\x91\x92\x05\n\x06\x02\x92\x17\x03\x02\x02\x02\x93\x95" +
3207
+ "\x07%\x02\x02\x94\x96\t\x04\x02\x02\x95\x94\x03\x02\x02\x02\x95\x96\x03" +
3208
+ "\x02\x02\x02\x96\x97\x03\x02\x02\x02\x97\x99\x05\x1E\x10\x02\x98\x9A\x05" +
3209
+ "\"\x12\x02\x99\x98\x03\x02\x02\x02\x99\x9A\x03\x02\x02\x02\x9A\x19\x03" +
3210
+ "\x02\x02\x02\x9B\x9D\x05\x1C\x0F\x02\x9C\x9B\x03\x02\x02\x02\x9C\x9D\x03" +
3211
+ "\x02\x02\x02\x9D\x1B\x03\x02\x02\x02\x9E\x9F\x079\x02\x02\x9F\xA0\t\x05" +
3212
+ "\x02\x02\xA0\x1D\x03\x02\x02\x02\xA1\xAA\x05 \x11\x02\xA2\xAA\x05@!\x02" +
3213
+ "\xA3\xAA\x056\x1C\x02\xA4\xA5\x078\x02\x02\xA5\xA6\x07\x1D\x02\x02\xA6" +
3214
+ "\xA7\x05,\x17\x02\xA7\xA8\x07\x1E\x02\x02\xA8\xAA\x03\x02\x02\x02\xA9" +
3215
+ "\xA1\x03\x02\x02\x02\xA9\xA2\x03\x02\x02\x02\xA9\xA3\x03\x02\x02\x02\xA9" +
3216
+ "\xA4\x03\x02\x02\x02\xAA\x1F\x03\x02\x02\x02\xAB\xAC\x07Q\x02\x02\xAC" +
3217
+ "!\x03\x02\x02\x02\xAD\xAF\t\x03\x02\x02\xAE\xAD\x03\x02\x02\x02\xAE\xAF" +
3218
+ "\x03\x02\x02\x02\xAF\xB0\x03\x02\x02\x02\xB0\xB5\x05$\x13\x02\xB1\xB2" +
3219
+ "\x07)\x02\x02\xB2\xB4\x05$\x13\x02\xB3\xB1\x03\x02\x02\x02\xB4\xB7\x03" +
3220
+ "\x02\x02\x02\xB5\xB6\x03\x02\x02\x02\xB5\xB3\x03\x02\x02\x02\xB6#\x03" +
3221
+ "\x02\x02\x02\xB7\xB5\x03\x02\x02\x02\xB8\xB9\x07 \x02\x02\xB9\xBA\x07" +
3222
+ "\x1D\x02\x02\xBA\xBD\x05\n\x06\x02\xBB\xBC\x07\x05\x02\x02\xBC\xBE\x05" +
3223
+ "&\x14\x02\xBD\xBB\x03\x02\x02\x02\xBD\xBE\x03\x02\x02\x02\xBE\xBF\x03" +
3224
+ "\x02\x02\x02\xBF\xC0\x07\x1E\x02\x02\xC0\xC9\x03\x02\x02\x02\xC1\xC6\x07" +
3225
+ "Q\x02\x02\xC2\xC3\x07\x1D\x02\x02\xC3\xC4\x05&\x14\x02\xC4\xC5\x07\x1E" +
3226
+ "\x02\x02\xC5\xC7\x03\x02\x02\x02\xC6\xC2\x03\x02\x02\x02\xC6\xC7\x03\x02" +
3227
+ "\x02\x02\xC7\xC9\x03\x02\x02\x02\xC8\xB8\x03\x02\x02\x02\xC8\xC1\x03\x02" +
3228
+ "\x02\x02\xC9%\x03\x02\x02\x02\xCA\xCB\x07\x1B\x02\x02\xCB\xCC\x05(\x15" +
3229
+ "\x02\xCC\xCD\x07\x1C\x02\x02\xCD\'\x03\x02\x02\x02\xCE\xD3\x05*\x16\x02" +
3230
+ "\xCF\xD0\x07\x05\x02\x02\xD0\xD2\x05*\x16\x02\xD1\xCF\x03\x02\x02\x02" +
3231
+ "\xD2\xD5\x03\x02\x02\x02\xD3\xD1\x03\x02\x02\x02\xD3\xD4\x03\x02\x02\x02" +
3232
+ "\xD4)\x03\x02\x02\x02\xD5\xD3\x03\x02\x02\x02\xD6\xD7\x05\n\x06\x02\xD7" +
3233
+ "\xD8\x07\x1F\x02\x02\xD8\xD9\x058\x1D\x02\xD9+\x03\x02\x02\x02\xDA\xDB" +
3234
+ "\b\x17\x01\x02\xDB\xDC\x07\x1D\x02\x02\xDC\xDD\x05,\x17\x02\xDD\xDE\x07" +
3235
+ "\x1E\x02\x02\xDE\u0129\x03\x02\x02\x02\xDF\u0129\x07P\x02\x02\xE0\xE2" +
3236
+ "\x052\x1A\x02\xE1\xE3\x07-\x02\x02\xE2\xE1\x03\x02\x02\x02\xE2\xE3\x03" +
3237
+ "\x02\x02\x02\xE3\xE4\x03\x02\x02\x02\xE4\xE5\t\x06\x02\x02\xE5\xE6\x05" +
3238
+ "4\x1B\x02\xE6\u0129\x03\x02\x02\x02\xE7\u0129\x050\x19\x02\xE8\xE9\x07" +
3239
+ "\x17\x02\x02\xE9\xEA\x07\x1D\x02\x02\xEA\xEB\x05@!\x02\xEB\xEC\x07\x05" +
3240
+ "\x02\x02\xEC\xED\x07O\x02\x02\xED\xEE\x07\x1E\x02\x02\xEE\u0129\x03\x02" +
3241
+ "\x02\x02\xEF\xF0\x07\x16\x02\x02\xF0\xF1\x07\x1D\x02\x02\xF1\xF2\x05," +
3242
+ "\x17\x02\xF2\xF3\x07\x1E\x02\x02\xF3\u0129\x03\x02\x02\x02\xF4\xF5\x07" +
3243
+ "Q\x02\x02\xF5\xFE\x07\x1D\x02\x02\xF6\xFB\x05,\x17\x02\xF7\xF8\x07\x05" +
3244
+ "\x02\x02\xF8\xFA\x05,\x17\x02\xF9\xF7\x03\x02\x02\x02\xFA\xFD\x03\x02" +
3245
+ "\x02\x02\xFB\xF9\x03\x02\x02\x02\xFB\xFC\x03\x02\x02\x02\xFC\xFF\x03\x02" +
3246
+ "\x02\x02\xFD\xFB\x03\x02\x02\x02\xFE\xF6\x03\x02\x02\x02\xFE\xFF\x03\x02" +
3247
+ "\x02\x02\xFF\u0100\x03\x02\x02\x02\u0100\u0129\x07\x1E\x02\x02\u0101\u0129" +
3248
+ "\x05:\x1E\x02\u0102\u0129\x056\x1C\x02\u0103\u0129\x05@!\x02\u0104\u0105" +
3249
+ "\x07C\x02\x02\u0105\u0106\x07\x1D\x02\x02\u0106\u0107\x05,\x17\x02\u0107" +
3250
+ "\u0108\x07\x05\x02\x02\u0108\u0109\x05,\x17\x02\u0109\u010A\x07\x1E\x02" +
3251
+ "\x02\u010A\u0129\x03\x02\x02\x02\u010B\u010C\x07D\x02\x02\u010C\u010D" +
3252
+ "\x07\x1D\x02\x02\u010D\u010E\x05,\x17\x02\u010E\u010F\x07\x05\x02\x02" +
3253
+ "\u010F\u0110\x05,\x17\x02\u0110\u0111\x07\x1E\x02\x02\u0111\u0129\x03" +
3254
+ "\x02\x02\x02\u0112\u0113\x07E\x02\x02\u0113\u0114\x07\x1D\x02\x02\u0114" +
3255
+ "\u0115\x05,\x17\x02\u0115\u0116\x07\x05\x02\x02\u0116\u0117\x05,\x17\x02" +
3256
+ "\u0117\u0118\x07\x1E\x02\x02\u0118\u0129\x03\x02\x02\x02\u0119\u011A\x07" +
3257
+ "F\x02\x02\u011A\u011B\x07\x1D\x02\x02\u011B\u011C\x05,\x17\x02\u011C\u011D" +
3258
+ "\x07\x05\x02\x02\u011D\u011E\x05,\x17\x02\u011E\u011F\x07\x1E\x02\x02" +
3259
+ "\u011F\u0129\x03\x02\x02\x02\u0120\u0121\x07G\x02\x02\u0121\u0122\x07" +
3260
+ "\x1D\x02\x02\u0122\u0123\x05,\x17\x02\u0123\u0124\x07\x05\x02\x02\u0124" +
3261
+ "\u0125\x05,\x17\x02\u0125\u0126\x07\x1E\x02\x02\u0126\u0129\x03\x02\x02" +
3262
+ "\x02\u0127\u0129\x05.\x18\x02\u0128\xDA\x03\x02\x02\x02\u0128\xDF\x03" +
3263
+ "\x02\x02\x02\u0128\xE0\x03\x02\x02\x02\u0128\xE7\x03\x02\x02\x02\u0128" +
3264
+ "\xE8\x03\x02\x02\x02\u0128\xEF\x03\x02\x02\x02\u0128\xF4\x03\x02\x02\x02" +
3265
+ "\u0128\u0101\x03\x02\x02\x02\u0128\u0102\x03\x02\x02\x02\u0128\u0103\x03" +
3266
+ "\x02\x02\x02\u0128\u0104\x03\x02\x02\x02\u0128\u010B\x03\x02\x02\x02\u0128" +
3267
+ "\u0112\x03\x02\x02\x02\u0128\u0119\x03\x02\x02\x02\u0128\u0120\x03\x02" +
3268
+ "\x02\x02\u0128\u0127\x03\x02\x02\x02\u0129\u014F\x03\x02\x02\x02\u012A" +
3269
+ "\u012B\f\x17\x02\x02\u012B\u012C\t\x07\x02\x02\u012C\u014E\x05,\x17\x18" +
3270
+ "\u012D\u012E\f\x16\x02\x02\u012E\u012F\t\b\x02\x02\u012F\u014E\x05,\x17" +
3271
+ "\x17\u0130\u0131\f\x15\x02\x02\u0131\u0132\t\t\x02\x02\u0132\u014E\x05" +
3272
+ ",\x17\x16\u0133\u0134\f\r\x02\x02\u0134\u0135\x07)\x02\x02\u0135\u014E" +
3273
+ "\x05,\x17\x0E\u0136\u0137\f\f\x02\x02\u0137\u0138\x07*\x02\x02\u0138\u014E" +
3274
+ "\x05,\x17\r\u0139\u013A\f\x18\x02\x02\u013A\u013B\x07\x04\x02\x02\u013B" +
3275
+ "\u014E\x07Q\x02\x02\u013C\u013E\f\x14\x02\x02\u013D\u013F\x07-\x02\x02" +
3276
+ "\u013E\u013D\x03\x02\x02\x02\u013E\u013F\x03\x02\x02\x02\u013F\u0140\x03" +
3277
+ "\x02\x02\x02\u0140\u0141\t\x06\x02\x02\u0141\u014E\x054\x1B\x02\u0142" +
3278
+ "\u0143\f\x12\x02\x02\u0143\u0144\x07\x04\x02\x02\u0144\u014B\t\n\x02\x02" +
3279
+ "\u0145\u0146\x07\x1B\x02\x02\u0146\u0147\x05,\x17\x02\u0147\u0148\x07" +
3280
+ "\x1C\x02\x02\u0148\u014C\x03\x02\x02\x02\u0149\u014A\x07\x1D\x02\x02\u014A" +
3281
+ "\u014C\x07\x1E\x02\x02\u014B\u0145\x03\x02\x02\x02\u014B\u0149\x03\x02" +
3282
+ "\x02\x02\u014C\u014E\x03\x02\x02\x02\u014D\u012A\x03\x02\x02\x02\u014D" +
3283
+ "\u012D\x03\x02\x02\x02\u014D\u0130\x03\x02\x02\x02\u014D\u0133\x03\x02" +
3284
+ "\x02\x02\u014D\u0136\x03\x02\x02\x02\u014D\u0139\x03\x02\x02\x02\u014D" +
3285
+ "\u013C\x03\x02\x02\x02\u014D\u0142\x03\x02\x02\x02\u014E\u0151\x03\x02" +
3286
+ "\x02\x02\u014F\u014D\x03\x02\x02\x02\u014F\u0150\x03\x02\x02\x02\u0150" +
3287
+ "-\x03\x02\x02\x02\u0151\u014F\x03\x02\x02\x02\u0152\u0153\x07H\x02\x02" +
3288
+ "\u0153\u0154\x07\x1D\x02\x02\u0154\u0155\x05,\x17\x02\u0155\u0156\x07" +
3289
+ "\x05\x02\x02\u0156\u0159\x05,\x17\x02\u0157\u0158\x07\x05\x02\x02\u0158" +
3290
+ "\u015A\x05,\x17\x02\u0159\u0157\x03\x02\x02\x02\u0159\u015A\x03\x02\x02" +
3291
+ "\x02\u015A\u015B\x03\x02\x02\x02\u015B\u015C\x07\x1E\x02\x02\u015C\u0182" +
3292
+ "\x03\x02\x02\x02\u015D\u015E\x07I\x02\x02\u015E\u015F\x07\x1D\x02\x02" +
3293
+ "\u015F\u0160\x05,\x17\x02\u0160\u0161\x07\x1E\x02\x02\u0161\u0182\x03" +
3294
+ "\x02\x02\x02\u0162\u0163\x07J\x02\x02\u0163\u0164\x07\x1D\x02\x02\u0164" +
3295
+ "\u0165\x05,\x17\x02\u0165\u0166\x07\x05\x02\x02\u0166\u0167\x05,\x17\x02" +
3296
+ "\u0167\u0168\x07\x05\x02\x02\u0168\u0169\x05,\x17\x02\u0169\u016A\x07" +
3297
+ "\x05\x02\x02\u016A\u016B\x05,\x17\x02\u016B\u016C\x07\x1E\x02\x02\u016C" +
3298
+ "\u0182\x03\x02\x02\x02\u016D\u016E\x07J\x02\x02\u016E\u016F\x07\x1D\x02" +
3299
+ "\x02\u016F\u0170\x05,\x17\x02\u0170\u0171\x07\x05\x02\x02\u0171\u0172" +
3300
+ "\x05,\x17\x02\u0172\u0173\x07\x1E\x02\x02\u0173\u0182\x03\x02\x02\x02" +
3301
+ "\u0174\u0175\x07K\x02\x02\u0175\u0176\x07\x1D\x02\x02\u0176\u0177\x05" +
3302
+ ",\x17\x02\u0177\u0178\x07\x05\x02\x02\u0178\u0179\x05,\x17\x02\u0179\u017A" +
3303
+ "\x07\x05\x02\x02\u017A\u017B\x05,\x17\x02\u017B\u017C\x07\x05\x02\x02" +
3304
+ "\u017C\u017D\x05,\x17\x02\u017D\u017E\x07\x05\x02\x02\u017E\u017F\x05" +
3305
+ ",\x17\x02\u017F\u0180\x07\x1E\x02\x02\u0180\u0182\x03\x02\x02\x02\u0181" +
3306
+ "\u0152\x03\x02\x02\x02\u0181\u015D\x03\x02\x02\x02\u0181\u0162\x03\x02" +
3307
+ "\x02\x02\u0181\u016D\x03\x02\x02\x02\u0181\u0174\x03\x02\x02\x02\u0182" +
3308
+ "/\x03\x02\x02\x02\u0183\u0184\x07\x15\x02\x02\u0184\u0185\x07\x1D\x02" +
3309
+ "\x02\u0185\u0186\x05<\x1F\x02\u0186\u0187\x07\x05\x02\x02\u0187\u0188" +
3310
+ "\x05<\x1F\x02\u0188\u0189\x07\x05\x02\x02\u0189\u018A\t\v\x02\x02\u018A" +
3311
+ "\u018B\x07\x1E\x02\x02\u018B\u01A7\x03\x02\x02\x02\u018C\u018D\x077\x02" +
3312
+ "\x02\u018D\u018E\x07\x1D\x02\x02\u018E\u018F\x05<\x1F\x02\u018F\u0190" +
3313
+ "\x07\x1E\x02\x02\u0190\u01A7\x03\x02\x02\x02\u0191\u0192\x07<\x02\x02" +
3314
+ "\u0192\u0193\x07\x1D\x02\x02\u0193\u01A7\x07\x1E\x02\x02\u0194\u0195\x07" +
3315
+ "?\x02\x02\u0195\u0196\x07\x1D\x02\x02\u0196\u0197\x05<\x1F\x02\u0197\u0198" +
3316
+ "\x07\x05\x02\x02\u0198\u0199\x05,\x17\x02\u0199\u019A\x07\x05\x02\x02" +
3317
+ "\u019A\u019B\x05> \x02\u019B\u019C\x07\x1E\x02\x02\u019C\u01A7\x03\x02" +
3318
+ "\x02\x02\u019D\u019E\x07@\x02\x02\u019E\u019F\x07\x1D\x02\x02\u019F\u01A0" +
3319
+ "\x05<\x1F\x02\u01A0\u01A1\x07\x05\x02\x02\u01A1\u01A2\x05,\x17\x02\u01A2" +
3320
+ "\u01A3\x07\x05\x02\x02\u01A3\u01A4\x05> \x02\u01A4\u01A5\x07\x1E\x02\x02" +
3321
+ "\u01A5\u01A7\x03\x02\x02\x02\u01A6\u0183\x03\x02\x02\x02\u01A6\u018C\x03" +
3322
+ "\x02\x02\x02\u01A6\u0191\x03\x02\x02\x02\u01A6\u0194\x03\x02\x02\x02\u01A6" +
3323
+ "\u019D\x03\x02\x02\x02\u01A71\x03\x02\x02\x02\u01A8\u01A9\x07\x1D\x02" +
3324
+ "\x02\u01A9\u01AE\x05@!\x02\u01AA\u01AB\x07\x05\x02\x02\u01AB\u01AD\x05" +
3325
+ "@!\x02\u01AC\u01AA\x03\x02\x02\x02\u01AD\u01B0\x03\x02\x02\x02\u01AE\u01AC" +
3326
+ "\x03\x02\x02\x02\u01AE\u01AF\x03\x02\x02\x02\u01AF\u01B1\x03\x02\x02\x02" +
3327
+ "\u01B0\u01AE\x03\x02\x02\x02\u01B1\u01B2\x07\x1E\x02\x02\u01B23\x03\x02" +
3328
+ "\x02\x02\u01B3\u01B4\x07\x1A\x02\x02\u01B4\u01B5\x07\x1D\x02\x02\u01B5" +
3329
+ "\u01B6\x05\n\x06\x02\u01B6\u01B7\x07\x1E\x02\x02\u01B7\u01E0\x03\x02\x02" +
3330
+ "\x02\u01B8\u01BD\x05\n\x06\x02\u01B9\u01BA\x07\x05\x02\x02\u01BA\u01BC" +
3331
+ "\x05\n\x06\x02\u01BB\u01B9\x03\x02\x02\x02\u01BC\u01BF\x03\x02\x02\x02" +
3332
+ "\u01BD\u01BB\x03\x02\x02\x02\u01BD\u01BE\x03\x02\x02\x02\u01BE\u01E0\x03" +
3333
+ "\x02\x02\x02\u01BF\u01BD\x03\x02\x02\x02\u01C0\u01C1\x07\x1D\x02\x02\u01C1" +
3334
+ "\u01C2\x07\x1D\x02\x02\u01C2\u01C7\x05\n\x06\x02\u01C3\u01C4\x07\x05\x02" +
3335
+ "\x02\u01C4\u01C6\x05\n\x06\x02\u01C5\u01C3\x03\x02\x02\x02\u01C6\u01C9" +
3336
+ "\x03\x02\x02\x02\u01C7\u01C5\x03\x02\x02\x02\u01C7\u01C8\x03\x02\x02\x02" +
3337
+ "\u01C8\u01CA\x03\x02\x02\x02\u01C9\u01C7\x03\x02\x02\x02\u01CA\u01D9\x07" +
3338
+ "\x1E\x02\x02\u01CB\u01CC\x07\x05\x02\x02\u01CC\u01CD\x07\x1D\x02\x02\u01CD" +
3339
+ "\u01D2\x05\n\x06\x02\u01CE\u01CF\x07\x05\x02\x02\u01CF\u01D1\x05\n\x06" +
3340
+ "\x02\u01D0\u01CE\x03\x02\x02\x02\u01D1\u01D4\x03\x02\x02\x02\u01D2\u01D0" +
3341
+ "\x03\x02\x02\x02\u01D2\u01D3\x03\x02\x02\x02\u01D3\u01D5\x03\x02\x02\x02" +
3342
+ "\u01D4\u01D2\x03\x02\x02\x02\u01D5\u01D6\x07\x1E\x02\x02\u01D6\u01D8\x03" +
3343
+ "\x02\x02\x02\u01D7\u01CB\x03\x02\x02\x02\u01D8\u01DB\x03\x02\x02\x02\u01D9" +
3344
+ "\u01D7\x03\x02\x02\x02\u01D9\u01DA\x03\x02\x02\x02\u01DA\u01DC\x03\x02" +
3345
+ "\x02\x02\u01DB\u01D9\x03\x02\x02\x02\u01DC\u01DD\x07\x1E\x02\x02\u01DD" +
3346
+ "\u01E0\x03\x02\x02\x02\u01DE\u01E0\x05@!\x02\u01DF\u01B3\x03\x02\x02\x02" +
3347
+ "\u01DF\u01B8\x03\x02\x02\x02\u01DF\u01C0\x03\x02\x02\x02\u01DF\u01DE\x03" +
3348
+ "\x02\x02\x02\u01E05\x03\x02\x02\x02\u01E1\u01E7\x05\n\x06\x02\u01E2\u01E7" +
3349
+ "\x07L\x02\x02\u01E3\u01E7\x07M\x02\x02\u01E4\u01E7\x076\x02\x02\u01E5" +
3350
+ "\u01E7\x07\x14\x02\x02\u01E6\u01E1\x03\x02\x02\x02\u01E6\u01E2\x03\x02" +
3351
+ "\x02\x02\u01E6\u01E3\x03\x02\x02\x02\u01E6\u01E4\x03\x02\x02\x02\u01E6" +
3352
+ "\u01E5\x03\x02\x02\x02\u01E77\x03\x02\x02\x02\u01E8\u01EB\x056\x1C\x02" +
3353
+ "\u01E9\u01EB\x05@!\x02\u01EA\u01E8\x03\x02\x02\x02\u01EA\u01E9\x03\x02" +
3354
+ "\x02\x02\u01EB9\x03\x02\x02\x02\u01EC\u01ED\x07=\x02\x02\u01ED\u01EE\x07" +
3355
+ "\x1D\x02\x02\u01EE\u01EF\x05<\x1F\x02\u01EF\u01F0\x07\x1E\x02\x02\u01F0" +
3356
+ "\u01F7\x03\x02\x02\x02\u01F1\u01F2\x07>\x02\x02\u01F2\u01F3\x07\x1D\x02" +
3357
+ "\x02\u01F3\u01F4\x05<\x1F\x02\u01F4\u01F5\x07\x1E\x02\x02\u01F5\u01F7" +
3358
+ "\x03\x02\x02\x02\u01F6\u01EC\x03\x02\x02\x02\u01F6\u01F1\x03\x02\x02\x02" +
3359
+ "\u01F7;\x03\x02\x02\x02\u01F8\u01FE\x05\n\x06\x02\u01F9\u01FE\x05@!\x02" +
3360
+ "\u01FA\u01FB\x07<\x02\x02\u01FB\u01FC\x07\x1D\x02\x02\u01FC\u01FE\x07" +
3361
+ "\x1E\x02\x02\u01FD\u01F8\x03\x02\x02\x02\u01FD\u01F9\x03\x02\x02\x02\u01FD" +
3362
+ "\u01FA\x03\x02\x02\x02\u01FE=\x03\x02\x02\x02\u01FF\u0200\t\v\x02\x02" +
3363
+ "\u0200?\x03\x02\x02\x02\u0201\u0203\x07\x04\x02\x02\u0202\u0201\x03\x02" +
3364
+ "\x02\x02\u0202\u0203\x03\x02\x02\x02\u0203\u0204\x03\x02\x02\x02\u0204" +
3365
+ "\u0210\x07Q\x02\x02\u0205\u0207\x07\x04\x02\x02\u0206\u0205\x03\x02\x02" +
3366
+ "\x02\u0206\u0207\x03\x02\x02\x02\u0207\u0208\x03\x02\x02\x02\u0208\u020B" +
3367
+ "\x07Q\x02\x02\u0209\u020A\x07\x04\x02\x02\u020A\u020C\x07Q\x02\x02\u020B" +
3368
+ "\u0209\x03\x02\x02\x02\u020C\u020D\x03\x02\x02\x02\u020D\u020B\x03\x02" +
3369
+ "\x02\x02\u020D\u020E\x03\x02\x02\x02\u020E\u0210\x03\x02\x02\x02\u020F" +
3370
+ "\u0202\x03\x02\x02\x02\u020F\u0206\x03\x02\x02\x02\u0210A\x03\x02\x02" +
3371
+ "\x021DMR_dnrv|\x81\x87\x8A\x95\x99\x9C\xA9\xAE\xB5\xBD\xC6\xC8\xD3\xE2" +
3372
+ "\xFB\xFE\u0128\u013E\u014B\u014D\u014F\u0159\u0181\u01A6\u01AE\u01BD\u01C7" +
3373
+ "\u01D2\u01D9\u01DF\u01E6\u01EA\u01F6\u01FD\u0202\u0206\u020D\u020F"
3286
3374
  });
3287
3375
  class ParseContext extends ParserRuleContext_1.ParserRuleContext {
3288
3376
  EOF() { return this.getToken(RuleFlowLanguageParser.EOF, 0); }
@@ -3579,6 +3667,15 @@ class Rule_bodyContext extends ParserRuleContext_1.ParserRuleContext {
3579
3667
  expr() {
3580
3668
  return this.getRuleContext(0, ExprContext);
3581
3669
  }
3670
+ K_CONTINUE() { return this.tryGetToken(RuleFlowLanguageParser.K_CONTINUE, 0); }
3671
+ set_clause(i) {
3672
+ if (i === undefined) {
3673
+ return this.getRuleContexts(Set_clauseContext);
3674
+ }
3675
+ else {
3676
+ return this.getRuleContext(i, Set_clauseContext);
3677
+ }
3678
+ }
3582
3679
  K_THEN() { return this.tryGetToken(RuleFlowLanguageParser.K_THEN, 0); }
3583
3680
  K_RETURN() { return this.tryGetToken(RuleFlowLanguageParser.K_RETURN, 0); }
3584
3681
  actions() {
@@ -3629,6 +3726,47 @@ class Rule_bodyContext extends ParserRuleContext_1.ParserRuleContext {
3629
3726
  }
3630
3727
  }
3631
3728
  exports.Rule_bodyContext = Rule_bodyContext;
3729
+ class Set_clauseContext extends ParserRuleContext_1.ParserRuleContext {
3730
+ K_SET() { return this.getToken(RuleFlowLanguageParser.K_SET, 0); }
3731
+ EQ_IC() { return this.getToken(RuleFlowLanguageParser.EQ_IC, 0); }
3732
+ expr() {
3733
+ return this.getRuleContext(0, ExprContext);
3734
+ }
3735
+ VARIABLE() { return this.getToken(RuleFlowLanguageParser.VARIABLE, 0); }
3736
+ constructor(parent, invokingState) {
3737
+ super(parent, invokingState);
3738
+ Object.defineProperty(this, "_variable", {
3739
+ enumerable: true,
3740
+ configurable: true,
3741
+ writable: true,
3742
+ value: void 0
3743
+ });
3744
+ }
3745
+ // @Override
3746
+ get ruleIndex() { return RuleFlowLanguageParser.RULE_set_clause; }
3747
+ // @Override
3748
+ enterRule(listener) {
3749
+ if (listener.enterSet_clause) {
3750
+ listener.enterSet_clause(this);
3751
+ }
3752
+ }
3753
+ // @Override
3754
+ exitRule(listener) {
3755
+ if (listener.exitSet_clause) {
3756
+ listener.exitSet_clause(this);
3757
+ }
3758
+ }
3759
+ // @Override
3760
+ accept(visitor) {
3761
+ if (visitor.visitSet_clause) {
3762
+ return visitor.visitSet_clause(this);
3763
+ }
3764
+ else {
3765
+ return visitor.visitChildren(this);
3766
+ }
3767
+ }
3768
+ }
3769
+ exports.Set_clauseContext = Set_clauseContext;
3632
3770
  class NameContext extends ParserRuleContext_1.ParserRuleContext {
3633
3771
  string_literal() {
3634
3772
  return this.getRuleContext(0, String_literalContext);
@@ -4112,6 +4250,80 @@ class ParenthesisContext extends ExprContext {
4112
4250
  }
4113
4251
  }
4114
4252
  exports.ParenthesisContext = ParenthesisContext;
4253
+ class VariableRefContext extends ExprContext {
4254
+ VARIABLE() { return this.getToken(RuleFlowLanguageParser.VARIABLE, 0); }
4255
+ constructor(ctx) {
4256
+ super(ctx.parent, ctx.invokingState);
4257
+ this.copyFrom(ctx);
4258
+ }
4259
+ // @Override
4260
+ enterRule(listener) {
4261
+ if (listener.enterVariableRef) {
4262
+ listener.enterVariableRef(this);
4263
+ }
4264
+ }
4265
+ // @Override
4266
+ exitRule(listener) {
4267
+ if (listener.exitVariableRef) {
4268
+ listener.exitVariableRef(this);
4269
+ }
4270
+ }
4271
+ // @Override
4272
+ accept(visitor) {
4273
+ if (visitor.visitVariableRef) {
4274
+ return visitor.visitVariableRef(this);
4275
+ }
4276
+ else {
4277
+ return visitor.visitChildren(this);
4278
+ }
4279
+ }
4280
+ }
4281
+ exports.VariableRefContext = VariableRefContext;
4282
+ class MemberAccessContext extends ExprContext {
4283
+ DOT() { return this.getToken(RuleFlowLanguageParser.DOT, 0); }
4284
+ expr() {
4285
+ return this.getRuleContext(0, ExprContext);
4286
+ }
4287
+ ID() { return this.getToken(RuleFlowLanguageParser.ID, 0); }
4288
+ constructor(ctx) {
4289
+ super(ctx.parent, ctx.invokingState);
4290
+ Object.defineProperty(this, "_base", {
4291
+ enumerable: true,
4292
+ configurable: true,
4293
+ writable: true,
4294
+ value: void 0
4295
+ });
4296
+ Object.defineProperty(this, "_field", {
4297
+ enumerable: true,
4298
+ configurable: true,
4299
+ writable: true,
4300
+ value: void 0
4301
+ });
4302
+ this.copyFrom(ctx);
4303
+ }
4304
+ // @Override
4305
+ enterRule(listener) {
4306
+ if (listener.enterMemberAccess) {
4307
+ listener.enterMemberAccess(this);
4308
+ }
4309
+ }
4310
+ // @Override
4311
+ exitRule(listener) {
4312
+ if (listener.exitMemberAccess) {
4313
+ listener.exitMemberAccess(this);
4314
+ }
4315
+ }
4316
+ // @Override
4317
+ accept(visitor) {
4318
+ if (visitor.visitMemberAccess) {
4319
+ return visitor.visitMemberAccess(this);
4320
+ }
4321
+ else {
4322
+ return visitor.visitChildren(this);
4323
+ }
4324
+ }
4325
+ }
4326
+ exports.MemberAccessContext = MemberAccessContext;
4115
4327
  class MathMulContext extends ExprContext {
4116
4328
  expr(i) {
4117
4329
  if (i === undefined) {
@@ -4606,62 +4818,53 @@ class UnaryContext extends ExprContext {
4606
4818
  }
4607
4819
  }
4608
4820
  exports.UnaryContext = UnaryContext;
4609
- class EvalInListContext extends ExprContext {
4821
+ class CustomFunctionCallContext extends ExprContext {
4822
+ ID() { return this.getToken(RuleFlowLanguageParser.ID, 0); }
4610
4823
  L_PAREN() { return this.getToken(RuleFlowLanguageParser.L_PAREN, 0); }
4611
- COMMA() { return this.getToken(RuleFlowLanguageParser.COMMA, 0); }
4612
4824
  R_PAREN() { return this.getToken(RuleFlowLanguageParser.R_PAREN, 0); }
4613
- K_EVAL_IN_LIST() { return this.getToken(RuleFlowLanguageParser.K_EVAL_IN_LIST, 0); }
4614
- string_literal() {
4615
- return this.getRuleContext(0, String_literalContext);
4825
+ expr(i) {
4826
+ if (i === undefined) {
4827
+ return this.getRuleContexts(ExprContext);
4828
+ }
4829
+ else {
4830
+ return this.getRuleContext(i, ExprContext);
4831
+ }
4616
4832
  }
4617
- expr() {
4618
- return this.getRuleContext(0, ExprContext);
4833
+ COMMA(i) {
4834
+ if (i === undefined) {
4835
+ return this.getTokens(RuleFlowLanguageParser.COMMA);
4836
+ }
4837
+ else {
4838
+ return this.getToken(RuleFlowLanguageParser.COMMA, i);
4839
+ }
4619
4840
  }
4620
4841
  constructor(ctx) {
4621
4842
  super(ctx.parent, ctx.invokingState);
4622
- Object.defineProperty(this, "_op", {
4623
- enumerable: true,
4624
- configurable: true,
4625
- writable: true,
4626
- value: void 0
4627
- });
4628
- Object.defineProperty(this, "_listName", {
4629
- enumerable: true,
4630
- configurable: true,
4631
- writable: true,
4632
- value: void 0
4633
- });
4634
- Object.defineProperty(this, "_predicate", {
4635
- enumerable: true,
4636
- configurable: true,
4637
- writable: true,
4638
- value: void 0
4639
- });
4640
4843
  this.copyFrom(ctx);
4641
4844
  }
4642
4845
  // @Override
4643
4846
  enterRule(listener) {
4644
- if (listener.enterEvalInList) {
4645
- listener.enterEvalInList(this);
4847
+ if (listener.enterCustomFunctionCall) {
4848
+ listener.enterCustomFunctionCall(this);
4646
4849
  }
4647
4850
  }
4648
4851
  // @Override
4649
4852
  exitRule(listener) {
4650
- if (listener.exitEvalInList) {
4651
- listener.exitEvalInList(this);
4853
+ if (listener.exitCustomFunctionCall) {
4854
+ listener.exitCustomFunctionCall(this);
4652
4855
  }
4653
4856
  }
4654
4857
  // @Override
4655
4858
  accept(visitor) {
4656
- if (visitor.visitEvalInList) {
4657
- return visitor.visitEvalInList(this);
4859
+ if (visitor.visitCustomFunctionCall) {
4860
+ return visitor.visitCustomFunctionCall(this);
4658
4861
  }
4659
4862
  else {
4660
4863
  return visitor.visitChildren(this);
4661
4864
  }
4662
4865
  }
4663
4866
  }
4664
- exports.EvalInListContext = EvalInListContext;
4867
+ exports.CustomFunctionCallContext = CustomFunctionCallContext;
4665
4868
  class BinaryAndContext extends ExprContext {
4666
4869
  expr(i) {
4667
4870
  if (i === undefined) {
@@ -6148,14 +6351,6 @@ class ValidPropertyContext extends ParserRuleContext_1.ParserRuleContext {
6148
6351
  return this.getToken(RuleFlowLanguageParser.ID, i);
6149
6352
  }
6150
6353
  }
6151
- K_ELEM(i) {
6152
- if (i === undefined) {
6153
- return this.getTokens(RuleFlowLanguageParser.K_ELEM);
6154
- }
6155
- else {
6156
- return this.getToken(RuleFlowLanguageParser.K_ELEM, i);
6157
- }
6158
- }
6159
6354
  DOT(i) {
6160
6355
  if (i === undefined) {
6161
6356
  return this.getTokens(RuleFlowLanguageParser.DOT);