pickle-jar 1.5.0 → 1.5.1

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 (49) hide show
  1. package/dist/src/dedent.d.ts +1 -0
  2. package/dist/src/dedent.js +21 -0
  3. package/dist/src/dedent.js.map +1 -0
  4. package/dist/src/execution-context.d.ts +9 -0
  5. package/dist/src/execution-context.js +3 -0
  6. package/dist/src/execution-context.js.map +1 -0
  7. package/dist/src/feature-context.d.ts +6 -0
  8. package/dist/src/feature-context.js +3 -0
  9. package/dist/src/feature-context.js.map +1 -0
  10. package/dist/src/feature-file-visitor.d.ts +30 -0
  11. package/dist/src/feature-file-visitor.js +247 -0
  12. package/dist/src/feature-file-visitor.js.map +1 -0
  13. package/dist/src/get-call-sites.d.ts +1 -0
  14. package/dist/src/get-call-sites.js +11 -0
  15. package/dist/src/get-call-sites.js.map +1 -0
  16. package/dist/src/grammar/GherkinLexer.d.ts +46 -0
  17. package/dist/src/grammar/GherkinLexer.js +267 -0
  18. package/dist/src/grammar/GherkinLexer.js.map +1 -0
  19. package/dist/src/grammar/GherkinParser.d.ts +330 -0
  20. package/dist/src/grammar/GherkinParser.js +2918 -0
  21. package/dist/src/grammar/GherkinParser.js.map +1 -0
  22. package/dist/src/grammar/GherkinParserVisitor.d.ts +164 -0
  23. package/dist/src/grammar/GherkinParserVisitor.js +4 -0
  24. package/dist/src/grammar/GherkinParserVisitor.js.map +1 -0
  25. package/dist/src/index.d.ts +8 -0
  26. package/dist/src/index.js +25 -0
  27. package/dist/src/index.js.map +1 -0
  28. package/dist/src/jest-error-listener.d.ts +8 -0
  29. package/dist/src/jest-error-listener.js +22 -0
  30. package/dist/src/jest-error-listener.js.map +1 -0
  31. package/dist/src/step-definition.d.ts +5 -0
  32. package/dist/src/step-definition.js +3 -0
  33. package/dist/src/step-definition.js.map +1 -0
  34. package/dist/src/step-tags.d.ts +7 -0
  35. package/dist/src/step-tags.js +3 -0
  36. package/dist/src/step-tags.js.map +1 -0
  37. package/dist/src/step.d.ts +1 -0
  38. package/dist/src/step.js +3 -0
  39. package/dist/src/step.js.map +1 -0
  40. package/dist/src/tags.d.ts +4 -0
  41. package/dist/src/tags.js +21 -0
  42. package/dist/src/tags.js.map +1 -0
  43. package/dist/src/test-runner.d.ts +3 -0
  44. package/dist/src/test-runner.js +70 -0
  45. package/dist/src/test-runner.js.map +1 -0
  46. package/dist/src/world.d.ts +2 -0
  47. package/dist/src/world.js +3 -0
  48. package/dist/src/world.js.map +1 -0
  49. package/package.json +1 -1
@@ -0,0 +1,2918 @@
1
+ "use strict";
2
+ // @ts-nocheck
3
+ // Generated from ./src/grammar/GherkinParser.g4 by ANTLR 4.9.0-SNAPSHOT
4
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: function() { return m[k]; } };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }) : (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ o[k2] = m[k];
14
+ }));
15
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
16
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
17
+ }) : function(o, v) {
18
+ o["default"] = v;
19
+ });
20
+ var __importStar = (this && this.__importStar) || function (mod) {
21
+ if (mod && mod.__esModule) return mod;
22
+ var result = {};
23
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
24
+ __setModuleDefault(result, mod);
25
+ return result;
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.MultilineTextContext = exports.ContentTextContext = exports.ThenTagsContext = exports.TagsContext = exports.DocStringContext = exports.ButStepContext = exports.AndStepContext = exports.ThenStepContext = exports.AndWhenStepContext = exports.WhenStepContext = exports.AndGivenStepContext = exports.GivenStepContext = exports.StepContext = exports.CellContext = exports.TableRowContext = exports.TableHeaderContext = exports.ExamplesBlockContext = exports.ScenarioOutlineContext = exports.ScenarioContext = exports.BackgroundContext = exports.FeatureContext = exports.FeatureFileContext = exports.GherkinParser = void 0;
29
+ const ATN_1 = require("antlr4ts/atn/ATN");
30
+ const ATNDeserializer_1 = require("antlr4ts/atn/ATNDeserializer");
31
+ const FailedPredicateException_1 = require("antlr4ts/FailedPredicateException");
32
+ const NoViableAltException_1 = require("antlr4ts/NoViableAltException");
33
+ const Parser_1 = require("antlr4ts/Parser");
34
+ const ParserRuleContext_1 = require("antlr4ts/ParserRuleContext");
35
+ const ParserATNSimulator_1 = require("antlr4ts/atn/ParserATNSimulator");
36
+ const RecognitionException_1 = require("antlr4ts/RecognitionException");
37
+ const Token_1 = require("antlr4ts/Token");
38
+ const VocabularyImpl_1 = require("antlr4ts/VocabularyImpl");
39
+ const Utils = __importStar(require("antlr4ts/misc/Utils"));
40
+ class GherkinParser extends Parser_1.Parser {
41
+ // @Override
42
+ // @NotNull
43
+ get vocabulary() {
44
+ return GherkinParser.VOCABULARY;
45
+ }
46
+ // tslint:enable:no-trailing-whitespace
47
+ // @Override
48
+ get grammarFileName() { return "GherkinParser.g4"; }
49
+ // @Override
50
+ get ruleNames() { return GherkinParser.ruleNames; }
51
+ // @Override
52
+ get serializedATN() { return GherkinParser._serializedATN; }
53
+ createFailedPredicateException(predicate, message) {
54
+ return new FailedPredicateException_1.FailedPredicateException(this, predicate, message);
55
+ }
56
+ constructor(input) {
57
+ super(input);
58
+ this._interp = new ParserATNSimulator_1.ParserATNSimulator(GherkinParser._ATN, this);
59
+ }
60
+ // @RuleVersion(0)
61
+ featureFile() {
62
+ let _localctx = new FeatureFileContext(this._ctx, this.state);
63
+ this.enterRule(_localctx, 0, GherkinParser.RULE_featureFile);
64
+ let _la;
65
+ try {
66
+ let _alt;
67
+ this.enterOuterAlt(_localctx, 1);
68
+ {
69
+ this.state = 47;
70
+ this._errHandler.sync(this);
71
+ _alt = this.interpreter.adaptivePredict(this._input, 0, this._ctx);
72
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
73
+ if (_alt === 1) {
74
+ {
75
+ {
76
+ this.state = 44;
77
+ this.feature();
78
+ }
79
+ }
80
+ }
81
+ this.state = 49;
82
+ this._errHandler.sync(this);
83
+ _alt = this.interpreter.adaptivePredict(this._input, 0, this._ctx);
84
+ }
85
+ this.state = 53;
86
+ this._errHandler.sync(this);
87
+ _la = this._input.LA(1);
88
+ while (_la === GherkinParser.NEWLINE) {
89
+ {
90
+ {
91
+ this.state = 50;
92
+ this.match(GherkinParser.NEWLINE);
93
+ }
94
+ }
95
+ this.state = 55;
96
+ this._errHandler.sync(this);
97
+ _la = this._input.LA(1);
98
+ }
99
+ this.state = 56;
100
+ this.match(GherkinParser.EOF);
101
+ }
102
+ }
103
+ catch (re) {
104
+ if (re instanceof RecognitionException_1.RecognitionException) {
105
+ _localctx.exception = re;
106
+ this._errHandler.reportError(this, re);
107
+ this._errHandler.recover(this, re);
108
+ }
109
+ else {
110
+ throw re;
111
+ }
112
+ }
113
+ finally {
114
+ this.exitRule();
115
+ }
116
+ return _localctx;
117
+ }
118
+ // @RuleVersion(0)
119
+ feature() {
120
+ let _localctx = new FeatureContext(this._ctx, this.state);
121
+ this.enterRule(_localctx, 2, GherkinParser.RULE_feature);
122
+ let _la;
123
+ try {
124
+ let _alt;
125
+ this.enterOuterAlt(_localctx, 1);
126
+ {
127
+ this.state = 59;
128
+ this._errHandler.sync(this);
129
+ switch (this.interpreter.adaptivePredict(this._input, 2, this._ctx)) {
130
+ case 1:
131
+ {
132
+ this.state = 58;
133
+ this.tags();
134
+ }
135
+ break;
136
+ }
137
+ this.state = 64;
138
+ this._errHandler.sync(this);
139
+ _la = this._input.LA(1);
140
+ while (_la === GherkinParser.NEWLINE) {
141
+ {
142
+ {
143
+ this.state = 61;
144
+ this.match(GherkinParser.NEWLINE);
145
+ }
146
+ }
147
+ this.state = 66;
148
+ this._errHandler.sync(this);
149
+ _la = this._input.LA(1);
150
+ }
151
+ this.state = 67;
152
+ this.match(GherkinParser.FEATURE);
153
+ this.state = 68;
154
+ this.multilineText();
155
+ this.state = 70;
156
+ this._errHandler.sync(this);
157
+ switch (this.interpreter.adaptivePredict(this._input, 4, this._ctx)) {
158
+ case 1:
159
+ {
160
+ this.state = 69;
161
+ this.background();
162
+ }
163
+ break;
164
+ }
165
+ this.state = 76;
166
+ this._errHandler.sync(this);
167
+ _alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
168
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
169
+ if (_alt === 1) {
170
+ {
171
+ this.state = 74;
172
+ this._errHandler.sync(this);
173
+ switch (this.interpreter.adaptivePredict(this._input, 5, this._ctx)) {
174
+ case 1:
175
+ {
176
+ this.state = 72;
177
+ this.scenario();
178
+ }
179
+ break;
180
+ case 2:
181
+ {
182
+ this.state = 73;
183
+ this.scenarioOutline();
184
+ }
185
+ break;
186
+ }
187
+ }
188
+ }
189
+ this.state = 78;
190
+ this._errHandler.sync(this);
191
+ _alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
192
+ }
193
+ this.state = 82;
194
+ this._errHandler.sync(this);
195
+ _alt = this.interpreter.adaptivePredict(this._input, 7, this._ctx);
196
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
197
+ if (_alt === 1) {
198
+ {
199
+ {
200
+ this.state = 79;
201
+ this.match(GherkinParser.NEWLINE);
202
+ }
203
+ }
204
+ }
205
+ this.state = 84;
206
+ this._errHandler.sync(this);
207
+ _alt = this.interpreter.adaptivePredict(this._input, 7, this._ctx);
208
+ }
209
+ }
210
+ }
211
+ catch (re) {
212
+ if (re instanceof RecognitionException_1.RecognitionException) {
213
+ _localctx.exception = re;
214
+ this._errHandler.reportError(this, re);
215
+ this._errHandler.recover(this, re);
216
+ }
217
+ else {
218
+ throw re;
219
+ }
220
+ }
221
+ finally {
222
+ this.exitRule();
223
+ }
224
+ return _localctx;
225
+ }
226
+ // @RuleVersion(0)
227
+ background() {
228
+ let _localctx = new BackgroundContext(this._ctx, this.state);
229
+ this.enterRule(_localctx, 4, GherkinParser.RULE_background);
230
+ let _la;
231
+ try {
232
+ let _alt;
233
+ this.enterOuterAlt(_localctx, 1);
234
+ {
235
+ this.state = 86;
236
+ this._errHandler.sync(this);
237
+ switch (this.interpreter.adaptivePredict(this._input, 8, this._ctx)) {
238
+ case 1:
239
+ {
240
+ this.state = 85;
241
+ this.tags();
242
+ }
243
+ break;
244
+ }
245
+ this.state = 91;
246
+ this._errHandler.sync(this);
247
+ _la = this._input.LA(1);
248
+ while (_la === GherkinParser.NEWLINE) {
249
+ {
250
+ {
251
+ this.state = 88;
252
+ this.match(GherkinParser.NEWLINE);
253
+ }
254
+ }
255
+ this.state = 93;
256
+ this._errHandler.sync(this);
257
+ _la = this._input.LA(1);
258
+ }
259
+ this.state = 94;
260
+ this.match(GherkinParser.BACKGROUND);
261
+ this.state = 95;
262
+ this.multilineText();
263
+ this.state = 96;
264
+ this.givenStep();
265
+ this.state = 100;
266
+ this._errHandler.sync(this);
267
+ _alt = this.interpreter.adaptivePredict(this._input, 10, this._ctx);
268
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
269
+ if (_alt === 1) {
270
+ {
271
+ {
272
+ this.state = 97;
273
+ this.andGivenStep();
274
+ }
275
+ }
276
+ }
277
+ this.state = 102;
278
+ this._errHandler.sync(this);
279
+ _alt = this.interpreter.adaptivePredict(this._input, 10, this._ctx);
280
+ }
281
+ }
282
+ }
283
+ catch (re) {
284
+ if (re instanceof RecognitionException_1.RecognitionException) {
285
+ _localctx.exception = re;
286
+ this._errHandler.reportError(this, re);
287
+ this._errHandler.recover(this, re);
288
+ }
289
+ else {
290
+ throw re;
291
+ }
292
+ }
293
+ finally {
294
+ this.exitRule();
295
+ }
296
+ return _localctx;
297
+ }
298
+ // @RuleVersion(0)
299
+ scenario() {
300
+ let _localctx = new ScenarioContext(this._ctx, this.state);
301
+ this.enterRule(_localctx, 6, GherkinParser.RULE_scenario);
302
+ let _la;
303
+ try {
304
+ this.enterOuterAlt(_localctx, 1);
305
+ {
306
+ this.state = 104;
307
+ this._errHandler.sync(this);
308
+ switch (this.interpreter.adaptivePredict(this._input, 11, this._ctx)) {
309
+ case 1:
310
+ {
311
+ this.state = 103;
312
+ this.tags();
313
+ }
314
+ break;
315
+ }
316
+ this.state = 109;
317
+ this._errHandler.sync(this);
318
+ _la = this._input.LA(1);
319
+ while (_la === GherkinParser.NEWLINE) {
320
+ {
321
+ {
322
+ this.state = 106;
323
+ this.match(GherkinParser.NEWLINE);
324
+ }
325
+ }
326
+ this.state = 111;
327
+ this._errHandler.sync(this);
328
+ _la = this._input.LA(1);
329
+ }
330
+ this.state = 112;
331
+ this.match(GherkinParser.SCENARIO);
332
+ this.state = 113;
333
+ this.multilineText();
334
+ this.state = 114;
335
+ this.step();
336
+ }
337
+ }
338
+ catch (re) {
339
+ if (re instanceof RecognitionException_1.RecognitionException) {
340
+ _localctx.exception = re;
341
+ this._errHandler.reportError(this, re);
342
+ this._errHandler.recover(this, re);
343
+ }
344
+ else {
345
+ throw re;
346
+ }
347
+ }
348
+ finally {
349
+ this.exitRule();
350
+ }
351
+ return _localctx;
352
+ }
353
+ // @RuleVersion(0)
354
+ scenarioOutline() {
355
+ let _localctx = new ScenarioOutlineContext(this._ctx, this.state);
356
+ this.enterRule(_localctx, 8, GherkinParser.RULE_scenarioOutline);
357
+ let _la;
358
+ try {
359
+ this.enterOuterAlt(_localctx, 1);
360
+ {
361
+ this.state = 117;
362
+ this._errHandler.sync(this);
363
+ switch (this.interpreter.adaptivePredict(this._input, 13, this._ctx)) {
364
+ case 1:
365
+ {
366
+ this.state = 116;
367
+ this.tags();
368
+ }
369
+ break;
370
+ }
371
+ this.state = 122;
372
+ this._errHandler.sync(this);
373
+ _la = this._input.LA(1);
374
+ while (_la === GherkinParser.NEWLINE) {
375
+ {
376
+ {
377
+ this.state = 119;
378
+ this.match(GherkinParser.NEWLINE);
379
+ }
380
+ }
381
+ this.state = 124;
382
+ this._errHandler.sync(this);
383
+ _la = this._input.LA(1);
384
+ }
385
+ this.state = 125;
386
+ this.match(GherkinParser.SCENARIO_OUTLINE);
387
+ this.state = 126;
388
+ this.multilineText();
389
+ this.state = 127;
390
+ this.step();
391
+ this.state = 128;
392
+ this.examplesBlock();
393
+ }
394
+ }
395
+ catch (re) {
396
+ if (re instanceof RecognitionException_1.RecognitionException) {
397
+ _localctx.exception = re;
398
+ this._errHandler.reportError(this, re);
399
+ this._errHandler.recover(this, re);
400
+ }
401
+ else {
402
+ throw re;
403
+ }
404
+ }
405
+ finally {
406
+ this.exitRule();
407
+ }
408
+ return _localctx;
409
+ }
410
+ // @RuleVersion(0)
411
+ examplesBlock() {
412
+ let _localctx = new ExamplesBlockContext(this._ctx, this.state);
413
+ this.enterRule(_localctx, 10, GherkinParser.RULE_examplesBlock);
414
+ let _la;
415
+ try {
416
+ this.enterOuterAlt(_localctx, 1);
417
+ {
418
+ this.state = 133;
419
+ this._errHandler.sync(this);
420
+ _la = this._input.LA(1);
421
+ while (_la === GherkinParser.NEWLINE) {
422
+ {
423
+ {
424
+ this.state = 130;
425
+ this.match(GherkinParser.NEWLINE);
426
+ }
427
+ }
428
+ this.state = 135;
429
+ this._errHandler.sync(this);
430
+ _la = this._input.LA(1);
431
+ }
432
+ this.state = 136;
433
+ this.match(GherkinParser.EXAMPLES);
434
+ this.state = 138;
435
+ this._errHandler.sync(this);
436
+ _la = this._input.LA(1);
437
+ do {
438
+ {
439
+ {
440
+ this.state = 137;
441
+ this.match(GherkinParser.NEWLINE);
442
+ }
443
+ }
444
+ this.state = 140;
445
+ this._errHandler.sync(this);
446
+ _la = this._input.LA(1);
447
+ } while (_la === GherkinParser.NEWLINE);
448
+ this.state = 142;
449
+ this.tableHeader();
450
+ this.state = 144;
451
+ this._errHandler.sync(this);
452
+ _la = this._input.LA(1);
453
+ do {
454
+ {
455
+ {
456
+ this.state = 143;
457
+ this.tableRow();
458
+ }
459
+ }
460
+ this.state = 146;
461
+ this._errHandler.sync(this);
462
+ _la = this._input.LA(1);
463
+ } while (_la === GherkinParser.PIPE);
464
+ }
465
+ }
466
+ catch (re) {
467
+ if (re instanceof RecognitionException_1.RecognitionException) {
468
+ _localctx.exception = re;
469
+ this._errHandler.reportError(this, re);
470
+ this._errHandler.recover(this, re);
471
+ }
472
+ else {
473
+ throw re;
474
+ }
475
+ }
476
+ finally {
477
+ this.exitRule();
478
+ }
479
+ return _localctx;
480
+ }
481
+ // @RuleVersion(0)
482
+ tableHeader() {
483
+ let _localctx = new TableHeaderContext(this._ctx, this.state);
484
+ this.enterRule(_localctx, 12, GherkinParser.RULE_tableHeader);
485
+ try {
486
+ this.enterOuterAlt(_localctx, 1);
487
+ {
488
+ this.state = 148;
489
+ this.tableRow();
490
+ }
491
+ }
492
+ catch (re) {
493
+ if (re instanceof RecognitionException_1.RecognitionException) {
494
+ _localctx.exception = re;
495
+ this._errHandler.reportError(this, re);
496
+ this._errHandler.recover(this, re);
497
+ }
498
+ else {
499
+ throw re;
500
+ }
501
+ }
502
+ finally {
503
+ this.exitRule();
504
+ }
505
+ return _localctx;
506
+ }
507
+ // @RuleVersion(0)
508
+ tableRow() {
509
+ let _localctx = new TableRowContext(this._ctx, this.state);
510
+ this.enterRule(_localctx, 14, GherkinParser.RULE_tableRow);
511
+ try {
512
+ let _alt;
513
+ this.enterOuterAlt(_localctx, 1);
514
+ {
515
+ this.state = 150;
516
+ this.match(GherkinParser.PIPE);
517
+ this.state = 151;
518
+ this.cell();
519
+ this.state = 156;
520
+ this._errHandler.sync(this);
521
+ _alt = this.interpreter.adaptivePredict(this._input, 18, this._ctx);
522
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
523
+ if (_alt === 1) {
524
+ {
525
+ {
526
+ this.state = 152;
527
+ this.match(GherkinParser.PIPE);
528
+ this.state = 153;
529
+ this.cell();
530
+ }
531
+ }
532
+ }
533
+ this.state = 158;
534
+ this._errHandler.sync(this);
535
+ _alt = this.interpreter.adaptivePredict(this._input, 18, this._ctx);
536
+ }
537
+ this.state = 159;
538
+ this.match(GherkinParser.PIPE);
539
+ this.state = 161;
540
+ this._errHandler.sync(this);
541
+ _alt = 1;
542
+ do {
543
+ switch (_alt) {
544
+ case 1:
545
+ {
546
+ {
547
+ this.state = 160;
548
+ this.match(GherkinParser.NEWLINE);
549
+ }
550
+ }
551
+ break;
552
+ default:
553
+ throw new NoViableAltException_1.NoViableAltException(this);
554
+ }
555
+ this.state = 163;
556
+ this._errHandler.sync(this);
557
+ _alt = this.interpreter.adaptivePredict(this._input, 19, this._ctx);
558
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
559
+ }
560
+ }
561
+ catch (re) {
562
+ if (re instanceof RecognitionException_1.RecognitionException) {
563
+ _localctx.exception = re;
564
+ this._errHandler.reportError(this, re);
565
+ this._errHandler.recover(this, re);
566
+ }
567
+ else {
568
+ throw re;
569
+ }
570
+ }
571
+ finally {
572
+ this.exitRule();
573
+ }
574
+ return _localctx;
575
+ }
576
+ // @RuleVersion(0)
577
+ cell() {
578
+ let _localctx = new CellContext(this._ctx, this.state);
579
+ this.enterRule(_localctx, 16, GherkinParser.RULE_cell);
580
+ let _la;
581
+ try {
582
+ this.enterOuterAlt(_localctx, 1);
583
+ {
584
+ this.state = 166;
585
+ this._errHandler.sync(this);
586
+ _la = this._input.LA(1);
587
+ if (_la === GherkinParser.TEXT_CHARACTER) {
588
+ {
589
+ this.state = 165;
590
+ this.contentText();
591
+ }
592
+ }
593
+ }
594
+ }
595
+ catch (re) {
596
+ if (re instanceof RecognitionException_1.RecognitionException) {
597
+ _localctx.exception = re;
598
+ this._errHandler.reportError(this, re);
599
+ this._errHandler.recover(this, re);
600
+ }
601
+ else {
602
+ throw re;
603
+ }
604
+ }
605
+ finally {
606
+ this.exitRule();
607
+ }
608
+ return _localctx;
609
+ }
610
+ // @RuleVersion(0)
611
+ step() {
612
+ let _localctx = new StepContext(this._ctx, this.state);
613
+ this.enterRule(_localctx, 18, GherkinParser.RULE_step);
614
+ try {
615
+ let _alt;
616
+ this.enterOuterAlt(_localctx, 1);
617
+ {
618
+ this.state = 168;
619
+ this.givenStep();
620
+ this.state = 172;
621
+ this._errHandler.sync(this);
622
+ _alt = this.interpreter.adaptivePredict(this._input, 21, this._ctx);
623
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
624
+ if (_alt === 1) {
625
+ {
626
+ {
627
+ this.state = 169;
628
+ this.andGivenStep();
629
+ }
630
+ }
631
+ }
632
+ this.state = 174;
633
+ this._errHandler.sync(this);
634
+ _alt = this.interpreter.adaptivePredict(this._input, 21, this._ctx);
635
+ }
636
+ this.state = 175;
637
+ this.whenStep();
638
+ this.state = 179;
639
+ this._errHandler.sync(this);
640
+ _alt = this.interpreter.adaptivePredict(this._input, 22, this._ctx);
641
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
642
+ if (_alt === 1) {
643
+ {
644
+ {
645
+ this.state = 176;
646
+ this.andWhenStep();
647
+ }
648
+ }
649
+ }
650
+ this.state = 181;
651
+ this._errHandler.sync(this);
652
+ _alt = this.interpreter.adaptivePredict(this._input, 22, this._ctx);
653
+ }
654
+ this.state = 182;
655
+ this.thenStep();
656
+ this.state = 186;
657
+ this._errHandler.sync(this);
658
+ _alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
659
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
660
+ if (_alt === 1) {
661
+ {
662
+ {
663
+ this.state = 183;
664
+ this.andStep();
665
+ }
666
+ }
667
+ }
668
+ this.state = 188;
669
+ this._errHandler.sync(this);
670
+ _alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
671
+ }
672
+ this.state = 192;
673
+ this._errHandler.sync(this);
674
+ _alt = this.interpreter.adaptivePredict(this._input, 24, this._ctx);
675
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
676
+ if (_alt === 1) {
677
+ {
678
+ {
679
+ this.state = 189;
680
+ this.butStep();
681
+ }
682
+ }
683
+ }
684
+ this.state = 194;
685
+ this._errHandler.sync(this);
686
+ _alt = this.interpreter.adaptivePredict(this._input, 24, this._ctx);
687
+ }
688
+ }
689
+ }
690
+ catch (re) {
691
+ if (re instanceof RecognitionException_1.RecognitionException) {
692
+ _localctx.exception = re;
693
+ this._errHandler.reportError(this, re);
694
+ this._errHandler.recover(this, re);
695
+ }
696
+ else {
697
+ throw re;
698
+ }
699
+ }
700
+ finally {
701
+ this.exitRule();
702
+ }
703
+ return _localctx;
704
+ }
705
+ // @RuleVersion(0)
706
+ givenStep() {
707
+ let _localctx = new GivenStepContext(this._ctx, this.state);
708
+ this.enterRule(_localctx, 20, GherkinParser.RULE_givenStep);
709
+ let _la;
710
+ try {
711
+ let _alt;
712
+ this.enterOuterAlt(_localctx, 1);
713
+ {
714
+ this.state = 196;
715
+ this._errHandler.sync(this);
716
+ switch (this.interpreter.adaptivePredict(this._input, 25, this._ctx)) {
717
+ case 1:
718
+ {
719
+ this.state = 195;
720
+ this.tags();
721
+ }
722
+ break;
723
+ }
724
+ this.state = 201;
725
+ this._errHandler.sync(this);
726
+ _la = this._input.LA(1);
727
+ while (_la === GherkinParser.NEWLINE) {
728
+ {
729
+ {
730
+ this.state = 198;
731
+ this.match(GherkinParser.NEWLINE);
732
+ }
733
+ }
734
+ this.state = 203;
735
+ this._errHandler.sync(this);
736
+ _la = this._input.LA(1);
737
+ }
738
+ this.state = 204;
739
+ this.match(GherkinParser.GIVEN);
740
+ this.state = 205;
741
+ this.multilineText();
742
+ this.state = 220;
743
+ this._errHandler.sync(this);
744
+ switch (this.interpreter.adaptivePredict(this._input, 30, this._ctx)) {
745
+ case 1:
746
+ {
747
+ this.state = 213;
748
+ this._errHandler.sync(this);
749
+ switch (this.interpreter.adaptivePredict(this._input, 28, this._ctx)) {
750
+ case 1:
751
+ {
752
+ this.state = 206;
753
+ this.match(GherkinParser.NEWLINE);
754
+ this.state = 207;
755
+ this.docString();
756
+ this.state = 209;
757
+ this._errHandler.sync(this);
758
+ _alt = 1;
759
+ do {
760
+ switch (_alt) {
761
+ case 1:
762
+ {
763
+ {
764
+ this.state = 208;
765
+ this.match(GherkinParser.NEWLINE);
766
+ }
767
+ }
768
+ break;
769
+ default:
770
+ throw new NoViableAltException_1.NoViableAltException(this);
771
+ }
772
+ this.state = 211;
773
+ this._errHandler.sync(this);
774
+ _alt = this.interpreter.adaptivePredict(this._input, 27, this._ctx);
775
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
776
+ }
777
+ break;
778
+ }
779
+ }
780
+ break;
781
+ case 2:
782
+ {
783
+ this.state = 216;
784
+ this._errHandler.sync(this);
785
+ _alt = 1;
786
+ do {
787
+ switch (_alt) {
788
+ case 1:
789
+ {
790
+ {
791
+ this.state = 215;
792
+ this.match(GherkinParser.NEWLINE);
793
+ }
794
+ }
795
+ break;
796
+ default:
797
+ throw new NoViableAltException_1.NoViableAltException(this);
798
+ }
799
+ this.state = 218;
800
+ this._errHandler.sync(this);
801
+ _alt = this.interpreter.adaptivePredict(this._input, 29, this._ctx);
802
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
803
+ }
804
+ break;
805
+ }
806
+ }
807
+ }
808
+ catch (re) {
809
+ if (re instanceof RecognitionException_1.RecognitionException) {
810
+ _localctx.exception = re;
811
+ this._errHandler.reportError(this, re);
812
+ this._errHandler.recover(this, re);
813
+ }
814
+ else {
815
+ throw re;
816
+ }
817
+ }
818
+ finally {
819
+ this.exitRule();
820
+ }
821
+ return _localctx;
822
+ }
823
+ // @RuleVersion(0)
824
+ andGivenStep() {
825
+ let _localctx = new AndGivenStepContext(this._ctx, this.state);
826
+ this.enterRule(_localctx, 22, GherkinParser.RULE_andGivenStep);
827
+ let _la;
828
+ try {
829
+ let _alt;
830
+ this.enterOuterAlt(_localctx, 1);
831
+ {
832
+ this.state = 223;
833
+ this._errHandler.sync(this);
834
+ switch (this.interpreter.adaptivePredict(this._input, 31, this._ctx)) {
835
+ case 1:
836
+ {
837
+ this.state = 222;
838
+ this.tags();
839
+ }
840
+ break;
841
+ }
842
+ this.state = 228;
843
+ this._errHandler.sync(this);
844
+ _la = this._input.LA(1);
845
+ while (_la === GherkinParser.NEWLINE) {
846
+ {
847
+ {
848
+ this.state = 225;
849
+ this.match(GherkinParser.NEWLINE);
850
+ }
851
+ }
852
+ this.state = 230;
853
+ this._errHandler.sync(this);
854
+ _la = this._input.LA(1);
855
+ }
856
+ this.state = 231;
857
+ this.match(GherkinParser.AND_GIVEN);
858
+ this.state = 232;
859
+ this.multilineText();
860
+ this.state = 247;
861
+ this._errHandler.sync(this);
862
+ switch (this.interpreter.adaptivePredict(this._input, 36, this._ctx)) {
863
+ case 1:
864
+ {
865
+ this.state = 240;
866
+ this._errHandler.sync(this);
867
+ switch (this.interpreter.adaptivePredict(this._input, 34, this._ctx)) {
868
+ case 1:
869
+ {
870
+ this.state = 233;
871
+ this.match(GherkinParser.NEWLINE);
872
+ this.state = 234;
873
+ this.docString();
874
+ this.state = 236;
875
+ this._errHandler.sync(this);
876
+ _alt = 1;
877
+ do {
878
+ switch (_alt) {
879
+ case 1:
880
+ {
881
+ {
882
+ this.state = 235;
883
+ this.match(GherkinParser.NEWLINE);
884
+ }
885
+ }
886
+ break;
887
+ default:
888
+ throw new NoViableAltException_1.NoViableAltException(this);
889
+ }
890
+ this.state = 238;
891
+ this._errHandler.sync(this);
892
+ _alt = this.interpreter.adaptivePredict(this._input, 33, this._ctx);
893
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
894
+ }
895
+ break;
896
+ }
897
+ }
898
+ break;
899
+ case 2:
900
+ {
901
+ this.state = 243;
902
+ this._errHandler.sync(this);
903
+ _alt = 1;
904
+ do {
905
+ switch (_alt) {
906
+ case 1:
907
+ {
908
+ {
909
+ this.state = 242;
910
+ this.match(GherkinParser.NEWLINE);
911
+ }
912
+ }
913
+ break;
914
+ default:
915
+ throw new NoViableAltException_1.NoViableAltException(this);
916
+ }
917
+ this.state = 245;
918
+ this._errHandler.sync(this);
919
+ _alt = this.interpreter.adaptivePredict(this._input, 35, this._ctx);
920
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
921
+ }
922
+ break;
923
+ }
924
+ }
925
+ }
926
+ catch (re) {
927
+ if (re instanceof RecognitionException_1.RecognitionException) {
928
+ _localctx.exception = re;
929
+ this._errHandler.reportError(this, re);
930
+ this._errHandler.recover(this, re);
931
+ }
932
+ else {
933
+ throw re;
934
+ }
935
+ }
936
+ finally {
937
+ this.exitRule();
938
+ }
939
+ return _localctx;
940
+ }
941
+ // @RuleVersion(0)
942
+ whenStep() {
943
+ let _localctx = new WhenStepContext(this._ctx, this.state);
944
+ this.enterRule(_localctx, 24, GherkinParser.RULE_whenStep);
945
+ let _la;
946
+ try {
947
+ let _alt;
948
+ this.enterOuterAlt(_localctx, 1);
949
+ {
950
+ this.state = 250;
951
+ this._errHandler.sync(this);
952
+ switch (this.interpreter.adaptivePredict(this._input, 37, this._ctx)) {
953
+ case 1:
954
+ {
955
+ this.state = 249;
956
+ this.tags();
957
+ }
958
+ break;
959
+ }
960
+ this.state = 255;
961
+ this._errHandler.sync(this);
962
+ _la = this._input.LA(1);
963
+ while (_la === GherkinParser.NEWLINE) {
964
+ {
965
+ {
966
+ this.state = 252;
967
+ this.match(GherkinParser.NEWLINE);
968
+ }
969
+ }
970
+ this.state = 257;
971
+ this._errHandler.sync(this);
972
+ _la = this._input.LA(1);
973
+ }
974
+ this.state = 258;
975
+ this.match(GherkinParser.WHEN);
976
+ this.state = 259;
977
+ this.multilineText();
978
+ this.state = 274;
979
+ this._errHandler.sync(this);
980
+ switch (this.interpreter.adaptivePredict(this._input, 42, this._ctx)) {
981
+ case 1:
982
+ {
983
+ this.state = 267;
984
+ this._errHandler.sync(this);
985
+ switch (this.interpreter.adaptivePredict(this._input, 40, this._ctx)) {
986
+ case 1:
987
+ {
988
+ this.state = 260;
989
+ this.match(GherkinParser.NEWLINE);
990
+ this.state = 261;
991
+ this.docString();
992
+ this.state = 263;
993
+ this._errHandler.sync(this);
994
+ _alt = 1;
995
+ do {
996
+ switch (_alt) {
997
+ case 1:
998
+ {
999
+ {
1000
+ this.state = 262;
1001
+ this.match(GherkinParser.NEWLINE);
1002
+ }
1003
+ }
1004
+ break;
1005
+ default:
1006
+ throw new NoViableAltException_1.NoViableAltException(this);
1007
+ }
1008
+ this.state = 265;
1009
+ this._errHandler.sync(this);
1010
+ _alt = this.interpreter.adaptivePredict(this._input, 39, this._ctx);
1011
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1012
+ }
1013
+ break;
1014
+ }
1015
+ }
1016
+ break;
1017
+ case 2:
1018
+ {
1019
+ this.state = 270;
1020
+ this._errHandler.sync(this);
1021
+ _alt = 1;
1022
+ do {
1023
+ switch (_alt) {
1024
+ case 1:
1025
+ {
1026
+ {
1027
+ this.state = 269;
1028
+ this.match(GherkinParser.NEWLINE);
1029
+ }
1030
+ }
1031
+ break;
1032
+ default:
1033
+ throw new NoViableAltException_1.NoViableAltException(this);
1034
+ }
1035
+ this.state = 272;
1036
+ this._errHandler.sync(this);
1037
+ _alt = this.interpreter.adaptivePredict(this._input, 41, this._ctx);
1038
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1039
+ }
1040
+ break;
1041
+ }
1042
+ }
1043
+ }
1044
+ catch (re) {
1045
+ if (re instanceof RecognitionException_1.RecognitionException) {
1046
+ _localctx.exception = re;
1047
+ this._errHandler.reportError(this, re);
1048
+ this._errHandler.recover(this, re);
1049
+ }
1050
+ else {
1051
+ throw re;
1052
+ }
1053
+ }
1054
+ finally {
1055
+ this.exitRule();
1056
+ }
1057
+ return _localctx;
1058
+ }
1059
+ // @RuleVersion(0)
1060
+ andWhenStep() {
1061
+ let _localctx = new AndWhenStepContext(this._ctx, this.state);
1062
+ this.enterRule(_localctx, 26, GherkinParser.RULE_andWhenStep);
1063
+ let _la;
1064
+ try {
1065
+ let _alt;
1066
+ this.enterOuterAlt(_localctx, 1);
1067
+ {
1068
+ this.state = 277;
1069
+ this._errHandler.sync(this);
1070
+ switch (this.interpreter.adaptivePredict(this._input, 43, this._ctx)) {
1071
+ case 1:
1072
+ {
1073
+ this.state = 276;
1074
+ this.tags();
1075
+ }
1076
+ break;
1077
+ }
1078
+ this.state = 282;
1079
+ this._errHandler.sync(this);
1080
+ _la = this._input.LA(1);
1081
+ while (_la === GherkinParser.NEWLINE) {
1082
+ {
1083
+ {
1084
+ this.state = 279;
1085
+ this.match(GherkinParser.NEWLINE);
1086
+ }
1087
+ }
1088
+ this.state = 284;
1089
+ this._errHandler.sync(this);
1090
+ _la = this._input.LA(1);
1091
+ }
1092
+ this.state = 285;
1093
+ this.match(GherkinParser.AND_WHEN);
1094
+ this.state = 286;
1095
+ this.multilineText();
1096
+ this.state = 301;
1097
+ this._errHandler.sync(this);
1098
+ switch (this.interpreter.adaptivePredict(this._input, 48, this._ctx)) {
1099
+ case 1:
1100
+ {
1101
+ this.state = 294;
1102
+ this._errHandler.sync(this);
1103
+ switch (this.interpreter.adaptivePredict(this._input, 46, this._ctx)) {
1104
+ case 1:
1105
+ {
1106
+ this.state = 287;
1107
+ this.match(GherkinParser.NEWLINE);
1108
+ this.state = 288;
1109
+ this.docString();
1110
+ this.state = 290;
1111
+ this._errHandler.sync(this);
1112
+ _alt = 1;
1113
+ do {
1114
+ switch (_alt) {
1115
+ case 1:
1116
+ {
1117
+ {
1118
+ this.state = 289;
1119
+ this.match(GherkinParser.NEWLINE);
1120
+ }
1121
+ }
1122
+ break;
1123
+ default:
1124
+ throw new NoViableAltException_1.NoViableAltException(this);
1125
+ }
1126
+ this.state = 292;
1127
+ this._errHandler.sync(this);
1128
+ _alt = this.interpreter.adaptivePredict(this._input, 45, this._ctx);
1129
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1130
+ }
1131
+ break;
1132
+ }
1133
+ }
1134
+ break;
1135
+ case 2:
1136
+ {
1137
+ this.state = 297;
1138
+ this._errHandler.sync(this);
1139
+ _alt = 1;
1140
+ do {
1141
+ switch (_alt) {
1142
+ case 1:
1143
+ {
1144
+ {
1145
+ this.state = 296;
1146
+ this.match(GherkinParser.NEWLINE);
1147
+ }
1148
+ }
1149
+ break;
1150
+ default:
1151
+ throw new NoViableAltException_1.NoViableAltException(this);
1152
+ }
1153
+ this.state = 299;
1154
+ this._errHandler.sync(this);
1155
+ _alt = this.interpreter.adaptivePredict(this._input, 47, this._ctx);
1156
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1157
+ }
1158
+ break;
1159
+ }
1160
+ }
1161
+ }
1162
+ catch (re) {
1163
+ if (re instanceof RecognitionException_1.RecognitionException) {
1164
+ _localctx.exception = re;
1165
+ this._errHandler.reportError(this, re);
1166
+ this._errHandler.recover(this, re);
1167
+ }
1168
+ else {
1169
+ throw re;
1170
+ }
1171
+ }
1172
+ finally {
1173
+ this.exitRule();
1174
+ }
1175
+ return _localctx;
1176
+ }
1177
+ // @RuleVersion(0)
1178
+ thenStep() {
1179
+ let _localctx = new ThenStepContext(this._ctx, this.state);
1180
+ this.enterRule(_localctx, 28, GherkinParser.RULE_thenStep);
1181
+ let _la;
1182
+ try {
1183
+ let _alt;
1184
+ this.enterOuterAlt(_localctx, 1);
1185
+ {
1186
+ this.state = 304;
1187
+ this._errHandler.sync(this);
1188
+ switch (this.interpreter.adaptivePredict(this._input, 49, this._ctx)) {
1189
+ case 1:
1190
+ {
1191
+ this.state = 303;
1192
+ this.thenTags();
1193
+ }
1194
+ break;
1195
+ }
1196
+ this.state = 309;
1197
+ this._errHandler.sync(this);
1198
+ _la = this._input.LA(1);
1199
+ while (_la === GherkinParser.NEWLINE) {
1200
+ {
1201
+ {
1202
+ this.state = 306;
1203
+ this.match(GherkinParser.NEWLINE);
1204
+ }
1205
+ }
1206
+ this.state = 311;
1207
+ this._errHandler.sync(this);
1208
+ _la = this._input.LA(1);
1209
+ }
1210
+ this.state = 312;
1211
+ this.match(GherkinParser.THEN);
1212
+ this.state = 313;
1213
+ this.multilineText();
1214
+ this.state = 328;
1215
+ this._errHandler.sync(this);
1216
+ switch (this.interpreter.adaptivePredict(this._input, 54, this._ctx)) {
1217
+ case 1:
1218
+ {
1219
+ this.state = 321;
1220
+ this._errHandler.sync(this);
1221
+ switch (this.interpreter.adaptivePredict(this._input, 52, this._ctx)) {
1222
+ case 1:
1223
+ {
1224
+ this.state = 314;
1225
+ this.match(GherkinParser.NEWLINE);
1226
+ this.state = 315;
1227
+ this.docString();
1228
+ this.state = 317;
1229
+ this._errHandler.sync(this);
1230
+ _alt = 1;
1231
+ do {
1232
+ switch (_alt) {
1233
+ case 1:
1234
+ {
1235
+ {
1236
+ this.state = 316;
1237
+ this.match(GherkinParser.NEWLINE);
1238
+ }
1239
+ }
1240
+ break;
1241
+ default:
1242
+ throw new NoViableAltException_1.NoViableAltException(this);
1243
+ }
1244
+ this.state = 319;
1245
+ this._errHandler.sync(this);
1246
+ _alt = this.interpreter.adaptivePredict(this._input, 51, this._ctx);
1247
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1248
+ }
1249
+ break;
1250
+ }
1251
+ }
1252
+ break;
1253
+ case 2:
1254
+ {
1255
+ this.state = 324;
1256
+ this._errHandler.sync(this);
1257
+ _alt = 1;
1258
+ do {
1259
+ switch (_alt) {
1260
+ case 1:
1261
+ {
1262
+ {
1263
+ this.state = 323;
1264
+ this.match(GherkinParser.NEWLINE);
1265
+ }
1266
+ }
1267
+ break;
1268
+ default:
1269
+ throw new NoViableAltException_1.NoViableAltException(this);
1270
+ }
1271
+ this.state = 326;
1272
+ this._errHandler.sync(this);
1273
+ _alt = this.interpreter.adaptivePredict(this._input, 53, this._ctx);
1274
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1275
+ }
1276
+ break;
1277
+ }
1278
+ }
1279
+ }
1280
+ catch (re) {
1281
+ if (re instanceof RecognitionException_1.RecognitionException) {
1282
+ _localctx.exception = re;
1283
+ this._errHandler.reportError(this, re);
1284
+ this._errHandler.recover(this, re);
1285
+ }
1286
+ else {
1287
+ throw re;
1288
+ }
1289
+ }
1290
+ finally {
1291
+ this.exitRule();
1292
+ }
1293
+ return _localctx;
1294
+ }
1295
+ // @RuleVersion(0)
1296
+ andStep() {
1297
+ let _localctx = new AndStepContext(this._ctx, this.state);
1298
+ this.enterRule(_localctx, 30, GherkinParser.RULE_andStep);
1299
+ let _la;
1300
+ try {
1301
+ let _alt;
1302
+ this.enterOuterAlt(_localctx, 1);
1303
+ {
1304
+ this.state = 331;
1305
+ this._errHandler.sync(this);
1306
+ switch (this.interpreter.adaptivePredict(this._input, 55, this._ctx)) {
1307
+ case 1:
1308
+ {
1309
+ this.state = 330;
1310
+ this.thenTags();
1311
+ }
1312
+ break;
1313
+ }
1314
+ this.state = 336;
1315
+ this._errHandler.sync(this);
1316
+ _la = this._input.LA(1);
1317
+ while (_la === GherkinParser.NEWLINE) {
1318
+ {
1319
+ {
1320
+ this.state = 333;
1321
+ this.match(GherkinParser.NEWLINE);
1322
+ }
1323
+ }
1324
+ this.state = 338;
1325
+ this._errHandler.sync(this);
1326
+ _la = this._input.LA(1);
1327
+ }
1328
+ this.state = 339;
1329
+ this.match(GherkinParser.AND);
1330
+ this.state = 340;
1331
+ this.multilineText();
1332
+ this.state = 355;
1333
+ this._errHandler.sync(this);
1334
+ switch (this.interpreter.adaptivePredict(this._input, 60, this._ctx)) {
1335
+ case 1:
1336
+ {
1337
+ this.state = 348;
1338
+ this._errHandler.sync(this);
1339
+ switch (this.interpreter.adaptivePredict(this._input, 58, this._ctx)) {
1340
+ case 1:
1341
+ {
1342
+ this.state = 341;
1343
+ this.match(GherkinParser.NEWLINE);
1344
+ this.state = 342;
1345
+ this.docString();
1346
+ this.state = 344;
1347
+ this._errHandler.sync(this);
1348
+ _alt = 1;
1349
+ do {
1350
+ switch (_alt) {
1351
+ case 1:
1352
+ {
1353
+ {
1354
+ this.state = 343;
1355
+ this.match(GherkinParser.NEWLINE);
1356
+ }
1357
+ }
1358
+ break;
1359
+ default:
1360
+ throw new NoViableAltException_1.NoViableAltException(this);
1361
+ }
1362
+ this.state = 346;
1363
+ this._errHandler.sync(this);
1364
+ _alt = this.interpreter.adaptivePredict(this._input, 57, this._ctx);
1365
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1366
+ }
1367
+ break;
1368
+ }
1369
+ }
1370
+ break;
1371
+ case 2:
1372
+ {
1373
+ this.state = 351;
1374
+ this._errHandler.sync(this);
1375
+ _alt = 1;
1376
+ do {
1377
+ switch (_alt) {
1378
+ case 1:
1379
+ {
1380
+ {
1381
+ this.state = 350;
1382
+ this.match(GherkinParser.NEWLINE);
1383
+ }
1384
+ }
1385
+ break;
1386
+ default:
1387
+ throw new NoViableAltException_1.NoViableAltException(this);
1388
+ }
1389
+ this.state = 353;
1390
+ this._errHandler.sync(this);
1391
+ _alt = this.interpreter.adaptivePredict(this._input, 59, this._ctx);
1392
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1393
+ }
1394
+ break;
1395
+ }
1396
+ }
1397
+ }
1398
+ catch (re) {
1399
+ if (re instanceof RecognitionException_1.RecognitionException) {
1400
+ _localctx.exception = re;
1401
+ this._errHandler.reportError(this, re);
1402
+ this._errHandler.recover(this, re);
1403
+ }
1404
+ else {
1405
+ throw re;
1406
+ }
1407
+ }
1408
+ finally {
1409
+ this.exitRule();
1410
+ }
1411
+ return _localctx;
1412
+ }
1413
+ // @RuleVersion(0)
1414
+ butStep() {
1415
+ let _localctx = new ButStepContext(this._ctx, this.state);
1416
+ this.enterRule(_localctx, 32, GherkinParser.RULE_butStep);
1417
+ let _la;
1418
+ try {
1419
+ let _alt;
1420
+ this.enterOuterAlt(_localctx, 1);
1421
+ {
1422
+ this.state = 358;
1423
+ this._errHandler.sync(this);
1424
+ switch (this.interpreter.adaptivePredict(this._input, 61, this._ctx)) {
1425
+ case 1:
1426
+ {
1427
+ this.state = 357;
1428
+ this.thenTags();
1429
+ }
1430
+ break;
1431
+ }
1432
+ this.state = 363;
1433
+ this._errHandler.sync(this);
1434
+ _la = this._input.LA(1);
1435
+ while (_la === GherkinParser.NEWLINE) {
1436
+ {
1437
+ {
1438
+ this.state = 360;
1439
+ this.match(GherkinParser.NEWLINE);
1440
+ }
1441
+ }
1442
+ this.state = 365;
1443
+ this._errHandler.sync(this);
1444
+ _la = this._input.LA(1);
1445
+ }
1446
+ this.state = 366;
1447
+ this.match(GherkinParser.BUT);
1448
+ this.state = 367;
1449
+ this.multilineText();
1450
+ this.state = 382;
1451
+ this._errHandler.sync(this);
1452
+ switch (this.interpreter.adaptivePredict(this._input, 66, this._ctx)) {
1453
+ case 1:
1454
+ {
1455
+ this.state = 375;
1456
+ this._errHandler.sync(this);
1457
+ switch (this.interpreter.adaptivePredict(this._input, 64, this._ctx)) {
1458
+ case 1:
1459
+ {
1460
+ this.state = 368;
1461
+ this.match(GherkinParser.NEWLINE);
1462
+ this.state = 369;
1463
+ this.docString();
1464
+ this.state = 371;
1465
+ this._errHandler.sync(this);
1466
+ _alt = 1;
1467
+ do {
1468
+ switch (_alt) {
1469
+ case 1:
1470
+ {
1471
+ {
1472
+ this.state = 370;
1473
+ this.match(GherkinParser.NEWLINE);
1474
+ }
1475
+ }
1476
+ break;
1477
+ default:
1478
+ throw new NoViableAltException_1.NoViableAltException(this);
1479
+ }
1480
+ this.state = 373;
1481
+ this._errHandler.sync(this);
1482
+ _alt = this.interpreter.adaptivePredict(this._input, 63, this._ctx);
1483
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1484
+ }
1485
+ break;
1486
+ }
1487
+ }
1488
+ break;
1489
+ case 2:
1490
+ {
1491
+ this.state = 378;
1492
+ this._errHandler.sync(this);
1493
+ _alt = 1;
1494
+ do {
1495
+ switch (_alt) {
1496
+ case 1:
1497
+ {
1498
+ {
1499
+ this.state = 377;
1500
+ this.match(GherkinParser.NEWLINE);
1501
+ }
1502
+ }
1503
+ break;
1504
+ default:
1505
+ throw new NoViableAltException_1.NoViableAltException(this);
1506
+ }
1507
+ this.state = 380;
1508
+ this._errHandler.sync(this);
1509
+ _alt = this.interpreter.adaptivePredict(this._input, 65, this._ctx);
1510
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1511
+ }
1512
+ break;
1513
+ }
1514
+ }
1515
+ }
1516
+ catch (re) {
1517
+ if (re instanceof RecognitionException_1.RecognitionException) {
1518
+ _localctx.exception = re;
1519
+ this._errHandler.reportError(this, re);
1520
+ this._errHandler.recover(this, re);
1521
+ }
1522
+ else {
1523
+ throw re;
1524
+ }
1525
+ }
1526
+ finally {
1527
+ this.exitRule();
1528
+ }
1529
+ return _localctx;
1530
+ }
1531
+ // @RuleVersion(0)
1532
+ docString() {
1533
+ let _localctx = new DocStringContext(this._ctx, this.state);
1534
+ this.enterRule(_localctx, 34, GherkinParser.RULE_docString);
1535
+ try {
1536
+ this.enterOuterAlt(_localctx, 1);
1537
+ {
1538
+ this.state = 384;
1539
+ this.match(GherkinParser.DOC_STRING);
1540
+ }
1541
+ }
1542
+ catch (re) {
1543
+ if (re instanceof RecognitionException_1.RecognitionException) {
1544
+ _localctx.exception = re;
1545
+ this._errHandler.reportError(this, re);
1546
+ this._errHandler.recover(this, re);
1547
+ }
1548
+ else {
1549
+ throw re;
1550
+ }
1551
+ }
1552
+ finally {
1553
+ this.exitRule();
1554
+ }
1555
+ return _localctx;
1556
+ }
1557
+ // @RuleVersion(0)
1558
+ tags() {
1559
+ let _localctx = new TagsContext(this._ctx, this.state);
1560
+ this.enterRule(_localctx, 36, GherkinParser.RULE_tags);
1561
+ let _la;
1562
+ try {
1563
+ let _alt;
1564
+ this.enterOuterAlt(_localctx, 1);
1565
+ {
1566
+ this.state = 389;
1567
+ this._errHandler.sync(this);
1568
+ _la = this._input.LA(1);
1569
+ while (_la === GherkinParser.NEWLINE) {
1570
+ {
1571
+ {
1572
+ this.state = 386;
1573
+ this.match(GherkinParser.NEWLINE);
1574
+ }
1575
+ }
1576
+ this.state = 391;
1577
+ this._errHandler.sync(this);
1578
+ _la = this._input.LA(1);
1579
+ }
1580
+ this.state = 399;
1581
+ this._errHandler.sync(this);
1582
+ _la = this._input.LA(1);
1583
+ do {
1584
+ {
1585
+ {
1586
+ this.state = 392;
1587
+ _la = this._input.LA(1);
1588
+ if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << GherkinParser.ONLY_TAG) | (1 << GherkinParser.SKIP_TAG) | (1 << GherkinParser.TAG))) !== 0))) {
1589
+ this._errHandler.recoverInline(this);
1590
+ }
1591
+ else {
1592
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1593
+ this.matchedEOF = true;
1594
+ }
1595
+ this._errHandler.reportMatch(this);
1596
+ this.consume();
1597
+ }
1598
+ this.state = 396;
1599
+ this._errHandler.sync(this);
1600
+ _alt = this.interpreter.adaptivePredict(this._input, 68, this._ctx);
1601
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
1602
+ if (_alt === 1) {
1603
+ {
1604
+ {
1605
+ this.state = 393;
1606
+ this.match(GherkinParser.NEWLINE);
1607
+ }
1608
+ }
1609
+ }
1610
+ this.state = 398;
1611
+ this._errHandler.sync(this);
1612
+ _alt = this.interpreter.adaptivePredict(this._input, 68, this._ctx);
1613
+ }
1614
+ }
1615
+ }
1616
+ this.state = 401;
1617
+ this._errHandler.sync(this);
1618
+ _la = this._input.LA(1);
1619
+ } while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << GherkinParser.ONLY_TAG) | (1 << GherkinParser.SKIP_TAG) | (1 << GherkinParser.TAG))) !== 0));
1620
+ }
1621
+ }
1622
+ catch (re) {
1623
+ if (re instanceof RecognitionException_1.RecognitionException) {
1624
+ _localctx.exception = re;
1625
+ this._errHandler.reportError(this, re);
1626
+ this._errHandler.recover(this, re);
1627
+ }
1628
+ else {
1629
+ throw re;
1630
+ }
1631
+ }
1632
+ finally {
1633
+ this.exitRule();
1634
+ }
1635
+ return _localctx;
1636
+ }
1637
+ // @RuleVersion(0)
1638
+ thenTags() {
1639
+ let _localctx = new ThenTagsContext(this._ctx, this.state);
1640
+ this.enterRule(_localctx, 38, GherkinParser.RULE_thenTags);
1641
+ let _la;
1642
+ try {
1643
+ let _alt;
1644
+ this.enterOuterAlt(_localctx, 1);
1645
+ {
1646
+ this.state = 406;
1647
+ this._errHandler.sync(this);
1648
+ _la = this._input.LA(1);
1649
+ while (_la === GherkinParser.NEWLINE) {
1650
+ {
1651
+ {
1652
+ this.state = 403;
1653
+ this.match(GherkinParser.NEWLINE);
1654
+ }
1655
+ }
1656
+ this.state = 408;
1657
+ this._errHandler.sync(this);
1658
+ _la = this._input.LA(1);
1659
+ }
1660
+ this.state = 416;
1661
+ this._errHandler.sync(this);
1662
+ _la = this._input.LA(1);
1663
+ do {
1664
+ {
1665
+ {
1666
+ this.state = 409;
1667
+ _la = this._input.LA(1);
1668
+ if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << GherkinParser.ONLY_TAG) | (1 << GherkinParser.SKIP_TAG) | (1 << GherkinParser.TODO_TAG) | (1 << GherkinParser.FAIL_TAG) | (1 << GherkinParser.TAG))) !== 0))) {
1669
+ this._errHandler.recoverInline(this);
1670
+ }
1671
+ else {
1672
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1673
+ this.matchedEOF = true;
1674
+ }
1675
+ this._errHandler.reportMatch(this);
1676
+ this.consume();
1677
+ }
1678
+ this.state = 413;
1679
+ this._errHandler.sync(this);
1680
+ _alt = this.interpreter.adaptivePredict(this._input, 71, this._ctx);
1681
+ while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER) {
1682
+ if (_alt === 1) {
1683
+ {
1684
+ {
1685
+ this.state = 410;
1686
+ this.match(GherkinParser.NEWLINE);
1687
+ }
1688
+ }
1689
+ }
1690
+ this.state = 415;
1691
+ this._errHandler.sync(this);
1692
+ _alt = this.interpreter.adaptivePredict(this._input, 71, this._ctx);
1693
+ }
1694
+ }
1695
+ }
1696
+ this.state = 418;
1697
+ this._errHandler.sync(this);
1698
+ _la = this._input.LA(1);
1699
+ } while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << GherkinParser.ONLY_TAG) | (1 << GherkinParser.SKIP_TAG) | (1 << GherkinParser.TODO_TAG) | (1 << GherkinParser.FAIL_TAG) | (1 << GherkinParser.TAG))) !== 0));
1700
+ }
1701
+ }
1702
+ catch (re) {
1703
+ if (re instanceof RecognitionException_1.RecognitionException) {
1704
+ _localctx.exception = re;
1705
+ this._errHandler.reportError(this, re);
1706
+ this._errHandler.recover(this, re);
1707
+ }
1708
+ else {
1709
+ throw re;
1710
+ }
1711
+ }
1712
+ finally {
1713
+ this.exitRule();
1714
+ }
1715
+ return _localctx;
1716
+ }
1717
+ // @RuleVersion(0)
1718
+ contentText() {
1719
+ let _localctx = new ContentTextContext(this._ctx, this.state);
1720
+ this.enterRule(_localctx, 40, GherkinParser.RULE_contentText);
1721
+ let _la;
1722
+ try {
1723
+ this.enterOuterAlt(_localctx, 1);
1724
+ {
1725
+ this.state = 421;
1726
+ this._errHandler.sync(this);
1727
+ _la = this._input.LA(1);
1728
+ do {
1729
+ {
1730
+ {
1731
+ this.state = 420;
1732
+ this.match(GherkinParser.TEXT_CHARACTER);
1733
+ }
1734
+ }
1735
+ this.state = 423;
1736
+ this._errHandler.sync(this);
1737
+ _la = this._input.LA(1);
1738
+ } while (_la === GherkinParser.TEXT_CHARACTER);
1739
+ }
1740
+ }
1741
+ catch (re) {
1742
+ if (re instanceof RecognitionException_1.RecognitionException) {
1743
+ _localctx.exception = re;
1744
+ this._errHandler.reportError(this, re);
1745
+ this._errHandler.recover(this, re);
1746
+ }
1747
+ else {
1748
+ throw re;
1749
+ }
1750
+ }
1751
+ finally {
1752
+ this.exitRule();
1753
+ }
1754
+ return _localctx;
1755
+ }
1756
+ // @RuleVersion(0)
1757
+ multilineText() {
1758
+ let _localctx = new MultilineTextContext(this._ctx, this.state);
1759
+ this.enterRule(_localctx, 42, GherkinParser.RULE_multilineText);
1760
+ let _la;
1761
+ try {
1762
+ let _alt;
1763
+ this.enterOuterAlt(_localctx, 1);
1764
+ {
1765
+ this.state = 426;
1766
+ this._errHandler.sync(this);
1767
+ _alt = 1;
1768
+ do {
1769
+ switch (_alt) {
1770
+ case 1:
1771
+ {
1772
+ {
1773
+ this.state = 425;
1774
+ _la = this._input.LA(1);
1775
+ if (!(_la === GherkinParser.TEXT_CHARACTER || _la === GherkinParser.NEWLINE)) {
1776
+ this._errHandler.recoverInline(this);
1777
+ }
1778
+ else {
1779
+ if (this._input.LA(1) === Token_1.Token.EOF) {
1780
+ this.matchedEOF = true;
1781
+ }
1782
+ this._errHandler.reportMatch(this);
1783
+ this.consume();
1784
+ }
1785
+ }
1786
+ }
1787
+ break;
1788
+ default:
1789
+ throw new NoViableAltException_1.NoViableAltException(this);
1790
+ }
1791
+ this.state = 428;
1792
+ this._errHandler.sync(this);
1793
+ _alt = this.interpreter.adaptivePredict(this._input, 74, this._ctx);
1794
+ } while (_alt !== 2 && _alt !== ATN_1.ATN.INVALID_ALT_NUMBER);
1795
+ }
1796
+ }
1797
+ catch (re) {
1798
+ if (re instanceof RecognitionException_1.RecognitionException) {
1799
+ _localctx.exception = re;
1800
+ this._errHandler.reportError(this, re);
1801
+ this._errHandler.recover(this, re);
1802
+ }
1803
+ else {
1804
+ throw re;
1805
+ }
1806
+ }
1807
+ finally {
1808
+ this.exitRule();
1809
+ }
1810
+ return _localctx;
1811
+ }
1812
+ static get _ATN() {
1813
+ if (!GherkinParser.__ATN) {
1814
+ GherkinParser.__ATN = new ATNDeserializer_1.ATNDeserializer().deserialize(Utils.toCharArray(GherkinParser._serializedATN));
1815
+ }
1816
+ return GherkinParser.__ATN;
1817
+ }
1818
+ }
1819
+ exports.GherkinParser = GherkinParser;
1820
+ GherkinParser.FEATURE = 1;
1821
+ GherkinParser.SCENARIO = 2;
1822
+ GherkinParser.SCENARIO_OUTLINE = 3;
1823
+ GherkinParser.GIVEN = 4;
1824
+ GherkinParser.AND_GIVEN = 5;
1825
+ GherkinParser.WHEN = 6;
1826
+ GherkinParser.AND_WHEN = 7;
1827
+ GherkinParser.THEN = 8;
1828
+ GherkinParser.AND = 9;
1829
+ GherkinParser.BUT = 10;
1830
+ GherkinParser.EXAMPLES = 11;
1831
+ GherkinParser.BACKGROUND = 12;
1832
+ GherkinParser.PIPE = 13;
1833
+ GherkinParser.ONLY_TAG = 14;
1834
+ GherkinParser.SKIP_TAG = 15;
1835
+ GherkinParser.TODO_TAG = 16;
1836
+ GherkinParser.FAIL_TAG = 17;
1837
+ GherkinParser.TAG = 18;
1838
+ GherkinParser.COMMENT = 19;
1839
+ GherkinParser.TEXT_CHARACTER = 20;
1840
+ GherkinParser.NEWLINE = 21;
1841
+ GherkinParser.WSS = 22;
1842
+ GherkinParser.DOC_STRING = 23;
1843
+ GherkinParser.RULE_featureFile = 0;
1844
+ GherkinParser.RULE_feature = 1;
1845
+ GherkinParser.RULE_background = 2;
1846
+ GherkinParser.RULE_scenario = 3;
1847
+ GherkinParser.RULE_scenarioOutline = 4;
1848
+ GherkinParser.RULE_examplesBlock = 5;
1849
+ GherkinParser.RULE_tableHeader = 6;
1850
+ GherkinParser.RULE_tableRow = 7;
1851
+ GherkinParser.RULE_cell = 8;
1852
+ GherkinParser.RULE_step = 9;
1853
+ GherkinParser.RULE_givenStep = 10;
1854
+ GherkinParser.RULE_andGivenStep = 11;
1855
+ GherkinParser.RULE_whenStep = 12;
1856
+ GherkinParser.RULE_andWhenStep = 13;
1857
+ GherkinParser.RULE_thenStep = 14;
1858
+ GherkinParser.RULE_andStep = 15;
1859
+ GherkinParser.RULE_butStep = 16;
1860
+ GherkinParser.RULE_docString = 17;
1861
+ GherkinParser.RULE_tags = 18;
1862
+ GherkinParser.RULE_thenTags = 19;
1863
+ GherkinParser.RULE_contentText = 20;
1864
+ GherkinParser.RULE_multilineText = 21;
1865
+ // tslint:disable:no-trailing-whitespace
1866
+ GherkinParser.ruleNames = [
1867
+ "featureFile", "feature", "background", "scenario", "scenarioOutline",
1868
+ "examplesBlock", "tableHeader", "tableRow", "cell", "step", "givenStep",
1869
+ "andGivenStep", "whenStep", "andWhenStep", "thenStep", "andStep", "butStep",
1870
+ "docString", "tags", "thenTags", "contentText", "multilineText",
1871
+ ];
1872
+ GherkinParser._LITERAL_NAMES = [
1873
+ undefined, undefined, undefined, undefined, undefined, undefined, undefined,
1874
+ undefined, undefined, undefined, undefined, undefined, undefined, "'|'",
1875
+ "'@only'", "'@skip'", "'@todo'", "'@fail'",
1876
+ ];
1877
+ GherkinParser._SYMBOLIC_NAMES = [
1878
+ undefined, "FEATURE", "SCENARIO", "SCENARIO_OUTLINE", "GIVEN", "AND_GIVEN",
1879
+ "WHEN", "AND_WHEN", "THEN", "AND", "BUT", "EXAMPLES", "BACKGROUND", "PIPE",
1880
+ "ONLY_TAG", "SKIP_TAG", "TODO_TAG", "FAIL_TAG", "TAG", "COMMENT", "TEXT_CHARACTER",
1881
+ "NEWLINE", "WSS", "DOC_STRING",
1882
+ ];
1883
+ GherkinParser.VOCABULARY = new VocabularyImpl_1.VocabularyImpl(GherkinParser._LITERAL_NAMES, GherkinParser._SYMBOLIC_NAMES, []);
1884
+ GherkinParser._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03\x19\u01B1\x04" +
1885
+ "\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04" +
1886
+ "\x07\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" +
1887
+ "\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t\x12" +
1888
+ "\x04\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t\x17" +
1889
+ "\x03\x02\x07\x020\n\x02\f\x02\x0E\x023\v\x02\x03\x02\x07\x026\n\x02\f" +
1890
+ "\x02\x0E\x029\v\x02\x03\x02\x03\x02\x03\x03\x05\x03>\n\x03\x03\x03\x07" +
1891
+ "\x03A\n\x03\f\x03\x0E\x03D\v\x03\x03\x03\x03\x03\x03\x03\x05\x03I\n\x03" +
1892
+ "\x03\x03\x03\x03\x07\x03M\n\x03\f\x03\x0E\x03P\v\x03\x03\x03\x07\x03S" +
1893
+ "\n\x03\f\x03\x0E\x03V\v\x03\x03\x04\x05\x04Y\n\x04\x03\x04\x07\x04\\\n" +
1894
+ "\x04\f\x04\x0E\x04_\v\x04\x03\x04\x03\x04\x03\x04\x03\x04\x07\x04e\n\x04" +
1895
+ "\f\x04\x0E\x04h\v\x04\x03\x05\x05\x05k\n\x05\x03\x05\x07\x05n\n\x05\f" +
1896
+ "\x05\x0E\x05q\v\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x06\x05\x06x\n" +
1897
+ "\x06\x03\x06\x07\x06{\n\x06\f\x06\x0E\x06~\v\x06\x03\x06\x03\x06\x03\x06" +
1898
+ "\x03\x06\x03\x06\x03\x07\x07\x07\x86\n\x07\f\x07\x0E\x07\x89\v\x07\x03" +
1899
+ "\x07\x03\x07\x06\x07\x8D\n\x07\r\x07\x0E\x07\x8E\x03\x07\x03\x07\x06\x07" +
1900
+ "\x93\n\x07\r\x07\x0E\x07\x94\x03\b\x03\b\x03\t\x03\t\x03\t\x03\t\x07\t" +
1901
+ "\x9D\n\t\f\t\x0E\t\xA0\v\t\x03\t\x03\t\x06\t\xA4\n\t\r\t\x0E\t\xA5\x03" +
1902
+ "\n\x05\n\xA9\n\n\x03\v\x03\v\x07\v\xAD\n\v\f\v\x0E\v\xB0\v\v\x03\v\x03" +
1903
+ "\v\x07\v\xB4\n\v\f\v\x0E\v\xB7\v\v\x03\v\x03\v\x07\v\xBB\n\v\f\v\x0E\v" +
1904
+ "\xBE\v\v\x03\v\x07\v\xC1\n\v\f\v\x0E\v\xC4\v\v\x03\f\x05\f\xC7\n\f\x03" +
1905
+ "\f\x07\f\xCA\n\f\f\f\x0E\f\xCD\v\f\x03\f\x03\f\x03\f\x03\f\x03\f\x06\f" +
1906
+ "\xD4\n\f\r\f\x0E\f\xD5\x05\f\xD8\n\f\x03\f\x06\f\xDB\n\f\r\f\x0E\f\xDC" +
1907
+ "\x05\f\xDF\n\f\x03\r\x05\r\xE2\n\r\x03\r\x07\r\xE5\n\r\f\r\x0E\r\xE8\v" +
1908
+ "\r\x03\r\x03\r\x03\r\x03\r\x03\r\x06\r\xEF\n\r\r\r\x0E\r\xF0\x05\r\xF3" +
1909
+ "\n\r\x03\r\x06\r\xF6\n\r\r\r\x0E\r\xF7\x05\r\xFA\n\r\x03\x0E\x05\x0E\xFD" +
1910
+ "\n\x0E\x03\x0E\x07\x0E\u0100\n\x0E\f\x0E\x0E\x0E\u0103\v\x0E\x03\x0E\x03" +
1911
+ "\x0E\x03\x0E\x03\x0E\x03\x0E\x06\x0E\u010A\n\x0E\r\x0E\x0E\x0E\u010B\x05" +
1912
+ "\x0E\u010E\n\x0E\x03\x0E\x06\x0E\u0111\n\x0E\r\x0E\x0E\x0E\u0112\x05\x0E" +
1913
+ "\u0115\n\x0E\x03\x0F\x05\x0F\u0118\n\x0F\x03\x0F\x07\x0F\u011B\n\x0F\f" +
1914
+ "\x0F\x0E\x0F\u011E\v\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x06\x0F" +
1915
+ "\u0125\n\x0F\r\x0F\x0E\x0F\u0126\x05\x0F\u0129\n\x0F\x03\x0F\x06\x0F\u012C" +
1916
+ "\n\x0F\r\x0F\x0E\x0F\u012D\x05\x0F\u0130\n\x0F\x03\x10\x05\x10\u0133\n" +
1917
+ "\x10\x03\x10\x07\x10\u0136\n\x10\f\x10\x0E\x10\u0139\v\x10\x03\x10\x03" +
1918
+ "\x10\x03\x10\x03\x10\x03\x10\x06\x10\u0140\n\x10\r\x10\x0E\x10\u0141\x05" +
1919
+ "\x10\u0144\n\x10\x03\x10\x06\x10\u0147\n\x10\r\x10\x0E\x10\u0148\x05\x10" +
1920
+ "\u014B\n\x10\x03\x11\x05\x11\u014E\n\x11\x03\x11\x07\x11\u0151\n\x11\f" +
1921
+ "\x11\x0E\x11\u0154\v\x11\x03\x11\x03\x11\x03\x11\x03\x11\x03\x11\x06\x11" +
1922
+ "\u015B\n\x11\r\x11\x0E\x11\u015C\x05\x11\u015F\n\x11\x03\x11\x06\x11\u0162" +
1923
+ "\n\x11\r\x11\x0E\x11\u0163\x05\x11\u0166\n\x11\x03\x12\x05\x12\u0169\n" +
1924
+ "\x12\x03\x12\x07\x12\u016C\n\x12\f\x12\x0E\x12\u016F\v\x12\x03\x12\x03" +
1925
+ "\x12\x03\x12\x03\x12\x03\x12\x06\x12\u0176\n\x12\r\x12\x0E\x12\u0177\x05" +
1926
+ "\x12\u017A\n\x12\x03\x12\x06\x12\u017D\n\x12\r\x12\x0E\x12\u017E\x05\x12" +
1927
+ "\u0181\n\x12\x03\x13\x03\x13\x03\x14\x07\x14\u0186\n\x14\f\x14\x0E\x14" +
1928
+ "\u0189\v\x14\x03\x14\x03\x14\x07\x14\u018D\n\x14\f\x14\x0E\x14\u0190\v" +
1929
+ "\x14\x06\x14\u0192\n\x14\r\x14\x0E\x14\u0193\x03\x15\x07\x15\u0197\n\x15" +
1930
+ "\f\x15\x0E\x15\u019A\v\x15\x03\x15\x03\x15\x07\x15\u019E\n\x15\f\x15\x0E" +
1931
+ "\x15\u01A1\v\x15\x06\x15\u01A3\n\x15\r\x15\x0E\x15\u01A4\x03\x16\x06\x16" +
1932
+ "\u01A8\n\x16\r\x16\x0E\x16\u01A9\x03\x17\x06\x17\u01AD\n\x17\r\x17\x0E" +
1933
+ "\x17\u01AE\x03\x17\x02\x02\x02\x18\x02\x02\x04\x02\x06\x02\b\x02\n\x02" +
1934
+ "\f\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x1C\x02" +
1935
+ "\x1E\x02 \x02\"\x02$\x02&\x02(\x02*\x02,\x02\x02\x05\x04\x02\x10\x11\x14" +
1936
+ "\x14\x03\x02\x10\x14\x03\x02\x16\x17\x02\u01E5\x021\x03\x02\x02\x02\x04" +
1937
+ "=\x03\x02\x02\x02\x06X\x03\x02\x02\x02\bj\x03\x02\x02\x02\nw\x03\x02\x02" +
1938
+ "\x02\f\x87\x03\x02\x02\x02\x0E\x96\x03\x02\x02\x02\x10\x98\x03\x02\x02" +
1939
+ "\x02\x12\xA8\x03\x02\x02\x02\x14\xAA\x03\x02\x02\x02\x16\xC6\x03\x02\x02" +
1940
+ "\x02\x18\xE1\x03\x02\x02\x02\x1A\xFC\x03\x02\x02\x02\x1C\u0117\x03\x02" +
1941
+ "\x02\x02\x1E\u0132\x03\x02\x02\x02 \u014D\x03\x02\x02\x02\"\u0168\x03" +
1942
+ "\x02\x02\x02$\u0182\x03\x02\x02\x02&\u0187\x03\x02\x02\x02(\u0198\x03" +
1943
+ "\x02\x02\x02*\u01A7\x03\x02\x02\x02,\u01AC\x03\x02\x02\x02.0\x05\x04\x03" +
1944
+ "\x02/.\x03\x02\x02\x0203\x03\x02\x02\x021/\x03\x02\x02\x0212\x03\x02\x02" +
1945
+ "\x0227\x03\x02\x02\x0231\x03\x02\x02\x0246\x07\x17\x02\x0254\x03\x02\x02" +
1946
+ "\x0269\x03\x02\x02\x0275\x03\x02\x02\x0278\x03\x02\x02\x028:\x03\x02\x02" +
1947
+ "\x0297\x03\x02\x02\x02:;\x07\x02\x02\x03;\x03\x03\x02\x02\x02<>\x05&\x14" +
1948
+ "\x02=<\x03\x02\x02\x02=>\x03\x02\x02\x02>B\x03\x02\x02\x02?A\x07\x17\x02" +
1949
+ "\x02@?\x03\x02\x02\x02AD\x03\x02\x02\x02B@\x03\x02\x02\x02BC\x03\x02\x02" +
1950
+ "\x02CE\x03\x02\x02\x02DB\x03\x02\x02\x02EF\x07\x03\x02\x02FH\x05,\x17" +
1951
+ "\x02GI\x05\x06\x04\x02HG\x03\x02\x02\x02HI\x03\x02\x02\x02IN\x03\x02\x02" +
1952
+ "\x02JM\x05\b\x05\x02KM\x05\n\x06\x02LJ\x03\x02\x02\x02LK\x03\x02\x02\x02" +
1953
+ "MP\x03\x02\x02\x02NL\x03\x02\x02\x02NO\x03\x02\x02\x02OT\x03\x02\x02\x02" +
1954
+ "PN\x03\x02\x02\x02QS\x07\x17\x02\x02RQ\x03\x02\x02\x02SV\x03\x02\x02\x02" +
1955
+ "TR\x03\x02\x02\x02TU\x03\x02\x02\x02U\x05\x03\x02\x02\x02VT\x03\x02\x02" +
1956
+ "\x02WY\x05&\x14\x02XW\x03\x02\x02\x02XY\x03\x02\x02\x02Y]\x03\x02\x02" +
1957
+ "\x02Z\\\x07\x17\x02\x02[Z\x03\x02\x02\x02\\_\x03\x02\x02\x02][\x03\x02" +
1958
+ "\x02\x02]^\x03\x02\x02\x02^`\x03\x02\x02\x02_]\x03\x02\x02\x02`a\x07\x0E" +
1959
+ "\x02\x02ab\x05,\x17\x02bf\x05\x16\f\x02ce\x05\x18\r\x02dc\x03\x02\x02" +
1960
+ "\x02eh\x03\x02\x02\x02fd\x03\x02\x02\x02fg\x03\x02\x02\x02g\x07\x03\x02" +
1961
+ "\x02\x02hf\x03\x02\x02\x02ik\x05&\x14\x02ji\x03\x02\x02\x02jk\x03\x02" +
1962
+ "\x02\x02ko\x03\x02\x02\x02ln\x07\x17\x02\x02ml\x03\x02\x02\x02nq\x03\x02" +
1963
+ "\x02\x02om\x03\x02\x02\x02op\x03\x02\x02\x02pr\x03\x02\x02\x02qo\x03\x02" +
1964
+ "\x02\x02rs\x07\x04\x02\x02st\x05,\x17\x02tu\x05\x14\v\x02u\t\x03\x02\x02" +
1965
+ "\x02vx\x05&\x14\x02wv\x03\x02\x02\x02wx\x03\x02\x02\x02x|\x03\x02\x02" +
1966
+ "\x02y{\x07\x17\x02\x02zy\x03\x02\x02\x02{~\x03\x02\x02\x02|z\x03\x02\x02" +
1967
+ "\x02|}\x03\x02\x02\x02}\x7F\x03\x02\x02\x02~|\x03\x02\x02\x02\x7F\x80" +
1968
+ "\x07\x05\x02\x02\x80\x81\x05,\x17\x02\x81\x82\x05\x14\v\x02\x82\x83\x05" +
1969
+ "\f\x07\x02\x83\v\x03\x02\x02\x02\x84\x86\x07\x17\x02\x02\x85\x84\x03\x02" +
1970
+ "\x02\x02\x86\x89\x03\x02\x02\x02\x87\x85\x03\x02\x02\x02\x87\x88\x03\x02" +
1971
+ "\x02\x02\x88\x8A\x03\x02\x02\x02\x89\x87\x03\x02\x02\x02\x8A\x8C\x07\r" +
1972
+ "\x02\x02\x8B\x8D\x07\x17\x02\x02\x8C\x8B\x03\x02\x02\x02\x8D\x8E\x03\x02" +
1973
+ "\x02\x02\x8E\x8C\x03\x02\x02\x02\x8E\x8F\x03\x02\x02\x02\x8F\x90\x03\x02" +
1974
+ "\x02\x02\x90\x92\x05\x0E\b\x02\x91\x93\x05\x10\t\x02\x92\x91\x03\x02\x02" +
1975
+ "\x02\x93\x94\x03\x02\x02\x02\x94\x92\x03\x02\x02\x02\x94\x95\x03\x02\x02" +
1976
+ "\x02\x95\r\x03\x02\x02\x02\x96\x97\x05\x10\t\x02\x97\x0F\x03\x02\x02\x02" +
1977
+ "\x98\x99\x07\x0F\x02\x02\x99\x9E\x05\x12\n\x02\x9A\x9B\x07\x0F\x02\x02" +
1978
+ "\x9B\x9D\x05\x12\n\x02\x9C\x9A\x03\x02\x02\x02\x9D\xA0\x03\x02\x02\x02" +
1979
+ "\x9E\x9C\x03\x02\x02\x02\x9E\x9F\x03\x02\x02\x02\x9F\xA1\x03\x02\x02\x02" +
1980
+ "\xA0\x9E\x03\x02\x02\x02\xA1\xA3\x07\x0F\x02\x02\xA2\xA4\x07\x17\x02\x02" +
1981
+ "\xA3\xA2\x03\x02\x02\x02\xA4\xA5\x03\x02\x02\x02\xA5\xA3\x03\x02\x02\x02" +
1982
+ "\xA5\xA6\x03\x02\x02\x02\xA6\x11\x03\x02\x02\x02\xA7\xA9\x05*\x16\x02" +
1983
+ "\xA8\xA7\x03\x02\x02\x02\xA8\xA9\x03\x02\x02\x02\xA9\x13\x03\x02\x02\x02" +
1984
+ "\xAA\xAE\x05\x16\f\x02\xAB\xAD\x05\x18\r\x02\xAC\xAB\x03\x02\x02\x02\xAD" +
1985
+ "\xB0\x03\x02\x02\x02\xAE\xAC\x03\x02\x02\x02\xAE\xAF\x03\x02\x02\x02\xAF" +
1986
+ "\xB1\x03\x02\x02\x02\xB0\xAE\x03\x02\x02\x02\xB1\xB5\x05\x1A\x0E\x02\xB2" +
1987
+ "\xB4\x05\x1C\x0F\x02\xB3\xB2\x03\x02\x02\x02\xB4\xB7\x03\x02\x02\x02\xB5" +
1988
+ "\xB3\x03\x02\x02\x02\xB5\xB6\x03\x02\x02\x02\xB6\xB8\x03\x02\x02\x02\xB7" +
1989
+ "\xB5\x03\x02\x02\x02\xB8\xBC\x05\x1E\x10\x02\xB9\xBB\x05 \x11\x02\xBA" +
1990
+ "\xB9\x03\x02\x02\x02\xBB\xBE\x03\x02\x02\x02\xBC\xBA\x03\x02\x02\x02\xBC" +
1991
+ "\xBD\x03\x02\x02\x02\xBD\xC2\x03\x02\x02\x02\xBE\xBC\x03\x02\x02\x02\xBF" +
1992
+ "\xC1\x05\"\x12\x02\xC0\xBF\x03\x02\x02\x02\xC1\xC4\x03\x02\x02\x02\xC2" +
1993
+ "\xC0\x03\x02\x02\x02\xC2\xC3\x03\x02\x02\x02\xC3\x15\x03\x02\x02\x02\xC4" +
1994
+ "\xC2\x03\x02\x02\x02\xC5\xC7\x05&\x14\x02\xC6\xC5\x03\x02\x02\x02\xC6" +
1995
+ "\xC7\x03\x02\x02\x02\xC7\xCB\x03\x02\x02\x02\xC8\xCA\x07\x17\x02\x02\xC9" +
1996
+ "\xC8\x03\x02\x02\x02\xCA\xCD\x03\x02\x02\x02\xCB\xC9\x03\x02\x02\x02\xCB" +
1997
+ "\xCC\x03\x02\x02\x02\xCC\xCE\x03\x02\x02\x02\xCD\xCB\x03\x02\x02\x02\xCE" +
1998
+ "\xCF\x07\x06\x02\x02\xCF\xDE\x05,\x17\x02\xD0\xD1\x07\x17\x02\x02\xD1" +
1999
+ "\xD3\x05$\x13\x02\xD2\xD4\x07\x17\x02\x02\xD3\xD2\x03\x02\x02\x02\xD4" +
2000
+ "\xD5\x03\x02\x02\x02\xD5\xD3\x03\x02\x02\x02\xD5\xD6\x03\x02\x02\x02\xD6" +
2001
+ "\xD8\x03\x02\x02\x02\xD7\xD0\x03\x02\x02\x02\xD7\xD8\x03\x02\x02\x02\xD8" +
2002
+ "\xDF\x03\x02\x02\x02\xD9\xDB\x07\x17\x02\x02\xDA\xD9\x03\x02\x02\x02\xDB" +
2003
+ "\xDC\x03\x02\x02\x02\xDC\xDA\x03\x02\x02\x02\xDC\xDD\x03\x02\x02\x02\xDD" +
2004
+ "\xDF\x03\x02\x02\x02\xDE\xD7\x03\x02\x02\x02\xDE\xDA\x03\x02\x02\x02\xDF" +
2005
+ "\x17\x03\x02\x02\x02\xE0\xE2\x05&\x14\x02\xE1\xE0\x03\x02\x02\x02\xE1" +
2006
+ "\xE2\x03\x02\x02\x02\xE2\xE6\x03\x02\x02\x02\xE3\xE5\x07\x17\x02\x02\xE4" +
2007
+ "\xE3\x03\x02\x02\x02\xE5\xE8\x03\x02\x02\x02\xE6\xE4\x03\x02\x02\x02\xE6" +
2008
+ "\xE7\x03\x02\x02\x02\xE7\xE9\x03\x02\x02\x02\xE8\xE6\x03\x02\x02\x02\xE9" +
2009
+ "\xEA\x07\x07\x02\x02\xEA\xF9\x05,\x17\x02\xEB\xEC\x07\x17\x02\x02\xEC" +
2010
+ "\xEE\x05$\x13\x02\xED\xEF\x07\x17\x02\x02\xEE\xED\x03\x02\x02\x02\xEF" +
2011
+ "\xF0\x03\x02\x02\x02\xF0\xEE\x03\x02\x02\x02\xF0\xF1\x03\x02\x02\x02\xF1" +
2012
+ "\xF3\x03\x02\x02\x02\xF2\xEB\x03\x02\x02\x02\xF2\xF3\x03\x02\x02\x02\xF3" +
2013
+ "\xFA\x03\x02\x02\x02\xF4\xF6\x07\x17\x02\x02\xF5\xF4\x03\x02\x02\x02\xF6" +
2014
+ "\xF7\x03\x02\x02\x02\xF7\xF5\x03\x02\x02\x02\xF7\xF8\x03\x02\x02\x02\xF8" +
2015
+ "\xFA\x03\x02\x02\x02\xF9\xF2\x03\x02\x02\x02\xF9\xF5\x03\x02\x02\x02\xFA" +
2016
+ "\x19\x03\x02\x02\x02\xFB\xFD\x05&\x14\x02\xFC\xFB\x03\x02\x02\x02\xFC" +
2017
+ "\xFD\x03\x02\x02\x02\xFD\u0101\x03\x02\x02\x02\xFE\u0100\x07\x17\x02\x02" +
2018
+ "\xFF\xFE\x03\x02\x02\x02\u0100\u0103\x03\x02\x02\x02\u0101\xFF\x03\x02" +
2019
+ "\x02\x02\u0101\u0102\x03\x02\x02\x02\u0102\u0104\x03\x02\x02\x02\u0103" +
2020
+ "\u0101\x03\x02\x02\x02\u0104\u0105\x07\b\x02\x02\u0105\u0114\x05,\x17" +
2021
+ "\x02\u0106\u0107\x07\x17\x02\x02\u0107\u0109\x05$\x13\x02\u0108\u010A" +
2022
+ "\x07\x17\x02\x02\u0109\u0108\x03\x02\x02\x02\u010A\u010B\x03\x02\x02\x02" +
2023
+ "\u010B\u0109\x03\x02\x02\x02\u010B\u010C\x03\x02\x02\x02\u010C\u010E\x03" +
2024
+ "\x02\x02\x02\u010D\u0106\x03\x02\x02\x02\u010D\u010E\x03\x02\x02\x02\u010E" +
2025
+ "\u0115\x03\x02\x02\x02\u010F\u0111\x07\x17\x02\x02\u0110\u010F\x03\x02" +
2026
+ "\x02\x02\u0111\u0112\x03\x02\x02\x02\u0112\u0110\x03\x02\x02\x02\u0112" +
2027
+ "\u0113\x03\x02\x02\x02\u0113\u0115\x03\x02\x02\x02\u0114\u010D\x03\x02" +
2028
+ "\x02\x02\u0114\u0110\x03\x02\x02\x02\u0115\x1B\x03\x02\x02\x02\u0116\u0118" +
2029
+ "\x05&\x14\x02\u0117\u0116\x03\x02\x02\x02\u0117\u0118\x03\x02\x02\x02" +
2030
+ "\u0118\u011C\x03\x02\x02\x02\u0119\u011B\x07\x17\x02\x02\u011A\u0119\x03" +
2031
+ "\x02\x02\x02\u011B\u011E\x03\x02\x02\x02\u011C\u011A\x03\x02\x02\x02\u011C" +
2032
+ "\u011D\x03\x02\x02\x02\u011D\u011F\x03\x02\x02\x02\u011E\u011C\x03\x02" +
2033
+ "\x02\x02\u011F\u0120\x07\t\x02\x02\u0120\u012F\x05,\x17\x02\u0121\u0122" +
2034
+ "\x07\x17\x02\x02\u0122\u0124\x05$\x13\x02\u0123\u0125\x07\x17\x02\x02" +
2035
+ "\u0124\u0123\x03\x02\x02\x02\u0125\u0126\x03\x02\x02\x02\u0126\u0124\x03" +
2036
+ "\x02\x02\x02\u0126\u0127\x03\x02\x02\x02\u0127\u0129\x03\x02\x02\x02\u0128" +
2037
+ "\u0121\x03\x02\x02\x02\u0128\u0129\x03\x02\x02\x02\u0129\u0130\x03\x02" +
2038
+ "\x02\x02\u012A\u012C\x07\x17\x02\x02\u012B\u012A\x03\x02\x02\x02\u012C" +
2039
+ "\u012D\x03\x02\x02\x02\u012D\u012B\x03\x02\x02\x02\u012D\u012E\x03\x02" +
2040
+ "\x02\x02\u012E\u0130\x03\x02\x02\x02\u012F\u0128\x03\x02\x02\x02\u012F" +
2041
+ "\u012B\x03\x02\x02\x02\u0130\x1D\x03\x02\x02\x02\u0131\u0133\x05(\x15" +
2042
+ "\x02\u0132\u0131\x03\x02\x02\x02\u0132\u0133\x03\x02\x02\x02\u0133\u0137" +
2043
+ "\x03\x02\x02\x02\u0134\u0136\x07\x17\x02\x02\u0135\u0134\x03\x02\x02\x02" +
2044
+ "\u0136\u0139\x03\x02\x02\x02\u0137\u0135\x03\x02\x02\x02\u0137\u0138\x03" +
2045
+ "\x02\x02\x02\u0138\u013A\x03\x02\x02\x02\u0139\u0137\x03\x02\x02\x02\u013A" +
2046
+ "\u013B\x07\n\x02\x02\u013B\u014A\x05,\x17\x02\u013C\u013D\x07\x17\x02" +
2047
+ "\x02\u013D\u013F\x05$\x13\x02\u013E\u0140\x07\x17\x02\x02\u013F\u013E" +
2048
+ "\x03\x02\x02\x02\u0140\u0141\x03\x02\x02\x02\u0141\u013F\x03\x02\x02\x02" +
2049
+ "\u0141\u0142\x03\x02\x02\x02\u0142\u0144\x03\x02\x02\x02\u0143\u013C\x03" +
2050
+ "\x02\x02\x02\u0143\u0144\x03\x02\x02\x02\u0144\u014B\x03\x02\x02\x02\u0145" +
2051
+ "\u0147\x07\x17\x02\x02\u0146\u0145\x03\x02\x02\x02\u0147\u0148\x03\x02" +
2052
+ "\x02\x02\u0148\u0146\x03\x02\x02\x02\u0148\u0149\x03\x02\x02\x02\u0149" +
2053
+ "\u014B\x03\x02\x02\x02\u014A\u0143\x03\x02\x02\x02\u014A\u0146\x03\x02" +
2054
+ "\x02\x02\u014B\x1F\x03\x02\x02\x02\u014C\u014E\x05(\x15\x02\u014D\u014C" +
2055
+ "\x03\x02\x02\x02\u014D\u014E\x03\x02\x02\x02\u014E\u0152\x03\x02\x02\x02" +
2056
+ "\u014F\u0151\x07\x17\x02\x02\u0150\u014F\x03\x02\x02\x02\u0151\u0154\x03" +
2057
+ "\x02\x02\x02\u0152\u0150\x03\x02\x02\x02\u0152\u0153\x03\x02\x02\x02\u0153" +
2058
+ "\u0155\x03\x02\x02\x02\u0154\u0152\x03\x02\x02\x02\u0155\u0156\x07\v\x02" +
2059
+ "\x02\u0156\u0165\x05,\x17\x02\u0157\u0158\x07\x17\x02\x02\u0158\u015A" +
2060
+ "\x05$\x13\x02\u0159\u015B\x07\x17\x02\x02\u015A\u0159\x03\x02\x02\x02" +
2061
+ "\u015B\u015C\x03\x02\x02\x02\u015C\u015A\x03\x02\x02\x02\u015C\u015D\x03" +
2062
+ "\x02\x02\x02\u015D\u015F\x03\x02\x02\x02\u015E\u0157\x03\x02\x02\x02\u015E" +
2063
+ "\u015F\x03\x02\x02\x02\u015F\u0166\x03\x02\x02\x02\u0160\u0162\x07\x17" +
2064
+ "\x02\x02\u0161\u0160\x03\x02\x02\x02\u0162\u0163\x03\x02\x02\x02\u0163" +
2065
+ "\u0161\x03\x02\x02\x02\u0163\u0164\x03\x02\x02\x02\u0164\u0166\x03\x02" +
2066
+ "\x02\x02\u0165\u015E\x03\x02\x02\x02\u0165\u0161\x03\x02\x02\x02\u0166" +
2067
+ "!\x03\x02\x02\x02\u0167\u0169\x05(\x15\x02\u0168\u0167\x03\x02\x02\x02" +
2068
+ "\u0168\u0169\x03\x02\x02\x02\u0169\u016D\x03\x02\x02\x02\u016A\u016C\x07" +
2069
+ "\x17\x02\x02\u016B\u016A\x03\x02\x02\x02\u016C\u016F\x03\x02\x02\x02\u016D" +
2070
+ "\u016B\x03\x02\x02\x02\u016D\u016E\x03\x02\x02\x02\u016E\u0170\x03\x02" +
2071
+ "\x02\x02\u016F\u016D\x03\x02\x02\x02\u0170\u0171\x07\f\x02\x02\u0171\u0180" +
2072
+ "\x05,\x17\x02\u0172\u0173\x07\x17\x02\x02\u0173\u0175\x05$\x13\x02\u0174" +
2073
+ "\u0176\x07\x17\x02\x02\u0175\u0174\x03\x02\x02\x02\u0176\u0177\x03\x02" +
2074
+ "\x02\x02\u0177\u0175\x03\x02\x02\x02\u0177\u0178\x03\x02\x02\x02\u0178" +
2075
+ "\u017A\x03\x02\x02\x02\u0179\u0172\x03\x02\x02\x02\u0179\u017A\x03\x02" +
2076
+ "\x02\x02\u017A\u0181\x03\x02\x02\x02\u017B\u017D\x07\x17\x02\x02\u017C" +
2077
+ "\u017B\x03\x02\x02\x02\u017D\u017E\x03\x02\x02\x02\u017E\u017C\x03\x02" +
2078
+ "\x02\x02\u017E\u017F\x03\x02\x02\x02\u017F\u0181\x03\x02\x02\x02\u0180" +
2079
+ "\u0179\x03\x02\x02\x02\u0180\u017C\x03\x02\x02\x02\u0181#\x03\x02\x02" +
2080
+ "\x02\u0182\u0183\x07\x19\x02\x02\u0183%\x03\x02\x02\x02\u0184\u0186\x07" +
2081
+ "\x17\x02\x02\u0185\u0184\x03\x02\x02\x02\u0186\u0189\x03\x02\x02\x02\u0187" +
2082
+ "\u0185\x03\x02\x02\x02\u0187\u0188\x03\x02\x02\x02\u0188\u0191\x03\x02" +
2083
+ "\x02\x02\u0189\u0187\x03\x02\x02\x02\u018A\u018E\t\x02\x02\x02\u018B\u018D" +
2084
+ "\x07\x17\x02\x02\u018C\u018B\x03\x02\x02\x02\u018D\u0190\x03\x02\x02\x02" +
2085
+ "\u018E\u018C\x03\x02\x02\x02\u018E\u018F\x03\x02\x02\x02\u018F\u0192\x03" +
2086
+ "\x02\x02\x02\u0190\u018E\x03\x02\x02\x02\u0191\u018A\x03\x02\x02\x02\u0192" +
2087
+ "\u0193\x03\x02\x02\x02\u0193\u0191\x03\x02\x02\x02\u0193\u0194\x03\x02" +
2088
+ "\x02\x02\u0194\'\x03\x02\x02\x02\u0195\u0197\x07\x17\x02\x02\u0196\u0195" +
2089
+ "\x03\x02\x02\x02\u0197\u019A\x03\x02\x02\x02\u0198\u0196\x03\x02\x02\x02" +
2090
+ "\u0198\u0199\x03\x02\x02\x02\u0199\u01A2\x03\x02\x02\x02\u019A\u0198\x03" +
2091
+ "\x02\x02\x02\u019B\u019F\t\x03\x02\x02\u019C\u019E\x07\x17\x02\x02\u019D" +
2092
+ "\u019C\x03\x02\x02\x02\u019E\u01A1\x03\x02\x02\x02\u019F\u019D\x03\x02" +
2093
+ "\x02\x02\u019F\u01A0\x03\x02\x02\x02\u01A0\u01A3\x03\x02\x02\x02\u01A1" +
2094
+ "\u019F\x03\x02\x02\x02\u01A2\u019B\x03\x02\x02\x02\u01A3\u01A4\x03\x02" +
2095
+ "\x02\x02\u01A4\u01A2\x03\x02\x02\x02\u01A4\u01A5\x03\x02\x02\x02\u01A5" +
2096
+ ")\x03\x02\x02\x02\u01A6\u01A8\x07\x16\x02\x02\u01A7\u01A6\x03\x02\x02" +
2097
+ "\x02\u01A8\u01A9\x03\x02\x02\x02\u01A9\u01A7\x03\x02\x02\x02\u01A9\u01AA" +
2098
+ "\x03\x02\x02\x02\u01AA+\x03\x02\x02\x02\u01AB\u01AD\t\x04\x02\x02\u01AC" +
2099
+ "\u01AB\x03\x02\x02\x02\u01AD\u01AE\x03\x02\x02\x02\u01AE\u01AC\x03\x02" +
2100
+ "\x02\x02\u01AE\u01AF\x03\x02\x02\x02\u01AF-\x03\x02\x02\x02M17=BHLNTX" +
2101
+ "]fjow|\x87\x8E\x94\x9E\xA5\xA8\xAE\xB5\xBC\xC2\xC6\xCB\xD5\xD7\xDC\xDE" +
2102
+ "\xE1\xE6\xF0\xF2\xF7\xF9\xFC\u0101\u010B\u010D\u0112\u0114\u0117\u011C" +
2103
+ "\u0126\u0128\u012D\u012F\u0132\u0137\u0141\u0143\u0148\u014A\u014D\u0152" +
2104
+ "\u015C\u015E\u0163\u0165\u0168\u016D\u0177\u0179\u017E\u0180\u0187\u018E" +
2105
+ "\u0193\u0198\u019F\u01A4\u01A9\u01AE";
2106
+ class FeatureFileContext extends ParserRuleContext_1.ParserRuleContext {
2107
+ EOF() { return this.getToken(GherkinParser.EOF, 0); }
2108
+ feature(i) {
2109
+ if (i === undefined) {
2110
+ return this.getRuleContexts(FeatureContext);
2111
+ }
2112
+ else {
2113
+ return this.getRuleContext(i, FeatureContext);
2114
+ }
2115
+ }
2116
+ NEWLINE(i) {
2117
+ if (i === undefined) {
2118
+ return this.getTokens(GherkinParser.NEWLINE);
2119
+ }
2120
+ else {
2121
+ return this.getToken(GherkinParser.NEWLINE, i);
2122
+ }
2123
+ }
2124
+ constructor(parent, invokingState) {
2125
+ super(parent, invokingState);
2126
+ }
2127
+ // @Override
2128
+ get ruleIndex() { return GherkinParser.RULE_featureFile; }
2129
+ // @Override
2130
+ accept(visitor) {
2131
+ if (visitor.visitFeatureFile) {
2132
+ return visitor.visitFeatureFile(this);
2133
+ }
2134
+ else {
2135
+ return visitor.visitChildren(this);
2136
+ }
2137
+ }
2138
+ }
2139
+ exports.FeatureFileContext = FeatureFileContext;
2140
+ class FeatureContext extends ParserRuleContext_1.ParserRuleContext {
2141
+ FEATURE() { return this.getToken(GherkinParser.FEATURE, 0); }
2142
+ multilineText() {
2143
+ return this.getRuleContext(0, MultilineTextContext);
2144
+ }
2145
+ tags() {
2146
+ return this.tryGetRuleContext(0, TagsContext);
2147
+ }
2148
+ NEWLINE(i) {
2149
+ if (i === undefined) {
2150
+ return this.getTokens(GherkinParser.NEWLINE);
2151
+ }
2152
+ else {
2153
+ return this.getToken(GherkinParser.NEWLINE, i);
2154
+ }
2155
+ }
2156
+ background() {
2157
+ return this.tryGetRuleContext(0, BackgroundContext);
2158
+ }
2159
+ scenario(i) {
2160
+ if (i === undefined) {
2161
+ return this.getRuleContexts(ScenarioContext);
2162
+ }
2163
+ else {
2164
+ return this.getRuleContext(i, ScenarioContext);
2165
+ }
2166
+ }
2167
+ scenarioOutline(i) {
2168
+ if (i === undefined) {
2169
+ return this.getRuleContexts(ScenarioOutlineContext);
2170
+ }
2171
+ else {
2172
+ return this.getRuleContext(i, ScenarioOutlineContext);
2173
+ }
2174
+ }
2175
+ constructor(parent, invokingState) {
2176
+ super(parent, invokingState);
2177
+ }
2178
+ // @Override
2179
+ get ruleIndex() { return GherkinParser.RULE_feature; }
2180
+ // @Override
2181
+ accept(visitor) {
2182
+ if (visitor.visitFeature) {
2183
+ return visitor.visitFeature(this);
2184
+ }
2185
+ else {
2186
+ return visitor.visitChildren(this);
2187
+ }
2188
+ }
2189
+ }
2190
+ exports.FeatureContext = FeatureContext;
2191
+ class BackgroundContext extends ParserRuleContext_1.ParserRuleContext {
2192
+ BACKGROUND() { return this.getToken(GherkinParser.BACKGROUND, 0); }
2193
+ multilineText() {
2194
+ return this.getRuleContext(0, MultilineTextContext);
2195
+ }
2196
+ givenStep() {
2197
+ return this.getRuleContext(0, GivenStepContext);
2198
+ }
2199
+ tags() {
2200
+ return this.tryGetRuleContext(0, TagsContext);
2201
+ }
2202
+ NEWLINE(i) {
2203
+ if (i === undefined) {
2204
+ return this.getTokens(GherkinParser.NEWLINE);
2205
+ }
2206
+ else {
2207
+ return this.getToken(GherkinParser.NEWLINE, i);
2208
+ }
2209
+ }
2210
+ andGivenStep(i) {
2211
+ if (i === undefined) {
2212
+ return this.getRuleContexts(AndGivenStepContext);
2213
+ }
2214
+ else {
2215
+ return this.getRuleContext(i, AndGivenStepContext);
2216
+ }
2217
+ }
2218
+ constructor(parent, invokingState) {
2219
+ super(parent, invokingState);
2220
+ }
2221
+ // @Override
2222
+ get ruleIndex() { return GherkinParser.RULE_background; }
2223
+ // @Override
2224
+ accept(visitor) {
2225
+ if (visitor.visitBackground) {
2226
+ return visitor.visitBackground(this);
2227
+ }
2228
+ else {
2229
+ return visitor.visitChildren(this);
2230
+ }
2231
+ }
2232
+ }
2233
+ exports.BackgroundContext = BackgroundContext;
2234
+ class ScenarioContext extends ParserRuleContext_1.ParserRuleContext {
2235
+ SCENARIO() { return this.getToken(GherkinParser.SCENARIO, 0); }
2236
+ multilineText() {
2237
+ return this.getRuleContext(0, MultilineTextContext);
2238
+ }
2239
+ step() {
2240
+ return this.getRuleContext(0, StepContext);
2241
+ }
2242
+ tags() {
2243
+ return this.tryGetRuleContext(0, TagsContext);
2244
+ }
2245
+ NEWLINE(i) {
2246
+ if (i === undefined) {
2247
+ return this.getTokens(GherkinParser.NEWLINE);
2248
+ }
2249
+ else {
2250
+ return this.getToken(GherkinParser.NEWLINE, i);
2251
+ }
2252
+ }
2253
+ constructor(parent, invokingState) {
2254
+ super(parent, invokingState);
2255
+ }
2256
+ // @Override
2257
+ get ruleIndex() { return GherkinParser.RULE_scenario; }
2258
+ // @Override
2259
+ accept(visitor) {
2260
+ if (visitor.visitScenario) {
2261
+ return visitor.visitScenario(this);
2262
+ }
2263
+ else {
2264
+ return visitor.visitChildren(this);
2265
+ }
2266
+ }
2267
+ }
2268
+ exports.ScenarioContext = ScenarioContext;
2269
+ class ScenarioOutlineContext extends ParserRuleContext_1.ParserRuleContext {
2270
+ SCENARIO_OUTLINE() { return this.getToken(GherkinParser.SCENARIO_OUTLINE, 0); }
2271
+ multilineText() {
2272
+ return this.getRuleContext(0, MultilineTextContext);
2273
+ }
2274
+ step() {
2275
+ return this.getRuleContext(0, StepContext);
2276
+ }
2277
+ examplesBlock() {
2278
+ return this.getRuleContext(0, ExamplesBlockContext);
2279
+ }
2280
+ tags() {
2281
+ return this.tryGetRuleContext(0, TagsContext);
2282
+ }
2283
+ NEWLINE(i) {
2284
+ if (i === undefined) {
2285
+ return this.getTokens(GherkinParser.NEWLINE);
2286
+ }
2287
+ else {
2288
+ return this.getToken(GherkinParser.NEWLINE, i);
2289
+ }
2290
+ }
2291
+ constructor(parent, invokingState) {
2292
+ super(parent, invokingState);
2293
+ }
2294
+ // @Override
2295
+ get ruleIndex() { return GherkinParser.RULE_scenarioOutline; }
2296
+ // @Override
2297
+ accept(visitor) {
2298
+ if (visitor.visitScenarioOutline) {
2299
+ return visitor.visitScenarioOutline(this);
2300
+ }
2301
+ else {
2302
+ return visitor.visitChildren(this);
2303
+ }
2304
+ }
2305
+ }
2306
+ exports.ScenarioOutlineContext = ScenarioOutlineContext;
2307
+ class ExamplesBlockContext extends ParserRuleContext_1.ParserRuleContext {
2308
+ EXAMPLES() { return this.getToken(GherkinParser.EXAMPLES, 0); }
2309
+ tableHeader() {
2310
+ return this.getRuleContext(0, TableHeaderContext);
2311
+ }
2312
+ NEWLINE(i) {
2313
+ if (i === undefined) {
2314
+ return this.getTokens(GherkinParser.NEWLINE);
2315
+ }
2316
+ else {
2317
+ return this.getToken(GherkinParser.NEWLINE, i);
2318
+ }
2319
+ }
2320
+ tableRow(i) {
2321
+ if (i === undefined) {
2322
+ return this.getRuleContexts(TableRowContext);
2323
+ }
2324
+ else {
2325
+ return this.getRuleContext(i, TableRowContext);
2326
+ }
2327
+ }
2328
+ constructor(parent, invokingState) {
2329
+ super(parent, invokingState);
2330
+ }
2331
+ // @Override
2332
+ get ruleIndex() { return GherkinParser.RULE_examplesBlock; }
2333
+ // @Override
2334
+ accept(visitor) {
2335
+ if (visitor.visitExamplesBlock) {
2336
+ return visitor.visitExamplesBlock(this);
2337
+ }
2338
+ else {
2339
+ return visitor.visitChildren(this);
2340
+ }
2341
+ }
2342
+ }
2343
+ exports.ExamplesBlockContext = ExamplesBlockContext;
2344
+ class TableHeaderContext extends ParserRuleContext_1.ParserRuleContext {
2345
+ tableRow() {
2346
+ return this.getRuleContext(0, TableRowContext);
2347
+ }
2348
+ constructor(parent, invokingState) {
2349
+ super(parent, invokingState);
2350
+ }
2351
+ // @Override
2352
+ get ruleIndex() { return GherkinParser.RULE_tableHeader; }
2353
+ // @Override
2354
+ accept(visitor) {
2355
+ if (visitor.visitTableHeader) {
2356
+ return visitor.visitTableHeader(this);
2357
+ }
2358
+ else {
2359
+ return visitor.visitChildren(this);
2360
+ }
2361
+ }
2362
+ }
2363
+ exports.TableHeaderContext = TableHeaderContext;
2364
+ class TableRowContext extends ParserRuleContext_1.ParserRuleContext {
2365
+ PIPE(i) {
2366
+ if (i === undefined) {
2367
+ return this.getTokens(GherkinParser.PIPE);
2368
+ }
2369
+ else {
2370
+ return this.getToken(GherkinParser.PIPE, i);
2371
+ }
2372
+ }
2373
+ cell(i) {
2374
+ if (i === undefined) {
2375
+ return this.getRuleContexts(CellContext);
2376
+ }
2377
+ else {
2378
+ return this.getRuleContext(i, CellContext);
2379
+ }
2380
+ }
2381
+ NEWLINE(i) {
2382
+ if (i === undefined) {
2383
+ return this.getTokens(GherkinParser.NEWLINE);
2384
+ }
2385
+ else {
2386
+ return this.getToken(GherkinParser.NEWLINE, i);
2387
+ }
2388
+ }
2389
+ constructor(parent, invokingState) {
2390
+ super(parent, invokingState);
2391
+ }
2392
+ // @Override
2393
+ get ruleIndex() { return GherkinParser.RULE_tableRow; }
2394
+ // @Override
2395
+ accept(visitor) {
2396
+ if (visitor.visitTableRow) {
2397
+ return visitor.visitTableRow(this);
2398
+ }
2399
+ else {
2400
+ return visitor.visitChildren(this);
2401
+ }
2402
+ }
2403
+ }
2404
+ exports.TableRowContext = TableRowContext;
2405
+ class CellContext extends ParserRuleContext_1.ParserRuleContext {
2406
+ contentText() {
2407
+ return this.tryGetRuleContext(0, ContentTextContext);
2408
+ }
2409
+ constructor(parent, invokingState) {
2410
+ super(parent, invokingState);
2411
+ }
2412
+ // @Override
2413
+ get ruleIndex() { return GherkinParser.RULE_cell; }
2414
+ // @Override
2415
+ accept(visitor) {
2416
+ if (visitor.visitCell) {
2417
+ return visitor.visitCell(this);
2418
+ }
2419
+ else {
2420
+ return visitor.visitChildren(this);
2421
+ }
2422
+ }
2423
+ }
2424
+ exports.CellContext = CellContext;
2425
+ class StepContext extends ParserRuleContext_1.ParserRuleContext {
2426
+ givenStep() {
2427
+ return this.getRuleContext(0, GivenStepContext);
2428
+ }
2429
+ whenStep() {
2430
+ return this.getRuleContext(0, WhenStepContext);
2431
+ }
2432
+ thenStep() {
2433
+ return this.getRuleContext(0, ThenStepContext);
2434
+ }
2435
+ andGivenStep(i) {
2436
+ if (i === undefined) {
2437
+ return this.getRuleContexts(AndGivenStepContext);
2438
+ }
2439
+ else {
2440
+ return this.getRuleContext(i, AndGivenStepContext);
2441
+ }
2442
+ }
2443
+ andWhenStep(i) {
2444
+ if (i === undefined) {
2445
+ return this.getRuleContexts(AndWhenStepContext);
2446
+ }
2447
+ else {
2448
+ return this.getRuleContext(i, AndWhenStepContext);
2449
+ }
2450
+ }
2451
+ andStep(i) {
2452
+ if (i === undefined) {
2453
+ return this.getRuleContexts(AndStepContext);
2454
+ }
2455
+ else {
2456
+ return this.getRuleContext(i, AndStepContext);
2457
+ }
2458
+ }
2459
+ butStep(i) {
2460
+ if (i === undefined) {
2461
+ return this.getRuleContexts(ButStepContext);
2462
+ }
2463
+ else {
2464
+ return this.getRuleContext(i, ButStepContext);
2465
+ }
2466
+ }
2467
+ constructor(parent, invokingState) {
2468
+ super(parent, invokingState);
2469
+ }
2470
+ // @Override
2471
+ get ruleIndex() { return GherkinParser.RULE_step; }
2472
+ // @Override
2473
+ accept(visitor) {
2474
+ if (visitor.visitStep) {
2475
+ return visitor.visitStep(this);
2476
+ }
2477
+ else {
2478
+ return visitor.visitChildren(this);
2479
+ }
2480
+ }
2481
+ }
2482
+ exports.StepContext = StepContext;
2483
+ class GivenStepContext extends ParserRuleContext_1.ParserRuleContext {
2484
+ GIVEN() { return this.getToken(GherkinParser.GIVEN, 0); }
2485
+ multilineText() {
2486
+ return this.getRuleContext(0, MultilineTextContext);
2487
+ }
2488
+ tags() {
2489
+ return this.tryGetRuleContext(0, TagsContext);
2490
+ }
2491
+ NEWLINE(i) {
2492
+ if (i === undefined) {
2493
+ return this.getTokens(GherkinParser.NEWLINE);
2494
+ }
2495
+ else {
2496
+ return this.getToken(GherkinParser.NEWLINE, i);
2497
+ }
2498
+ }
2499
+ docString() {
2500
+ return this.tryGetRuleContext(0, DocStringContext);
2501
+ }
2502
+ constructor(parent, invokingState) {
2503
+ super(parent, invokingState);
2504
+ }
2505
+ // @Override
2506
+ get ruleIndex() { return GherkinParser.RULE_givenStep; }
2507
+ // @Override
2508
+ accept(visitor) {
2509
+ if (visitor.visitGivenStep) {
2510
+ return visitor.visitGivenStep(this);
2511
+ }
2512
+ else {
2513
+ return visitor.visitChildren(this);
2514
+ }
2515
+ }
2516
+ }
2517
+ exports.GivenStepContext = GivenStepContext;
2518
+ class AndGivenStepContext extends ParserRuleContext_1.ParserRuleContext {
2519
+ AND_GIVEN() { return this.getToken(GherkinParser.AND_GIVEN, 0); }
2520
+ multilineText() {
2521
+ return this.getRuleContext(0, MultilineTextContext);
2522
+ }
2523
+ tags() {
2524
+ return this.tryGetRuleContext(0, TagsContext);
2525
+ }
2526
+ NEWLINE(i) {
2527
+ if (i === undefined) {
2528
+ return this.getTokens(GherkinParser.NEWLINE);
2529
+ }
2530
+ else {
2531
+ return this.getToken(GherkinParser.NEWLINE, i);
2532
+ }
2533
+ }
2534
+ docString() {
2535
+ return this.tryGetRuleContext(0, DocStringContext);
2536
+ }
2537
+ constructor(parent, invokingState) {
2538
+ super(parent, invokingState);
2539
+ }
2540
+ // @Override
2541
+ get ruleIndex() { return GherkinParser.RULE_andGivenStep; }
2542
+ // @Override
2543
+ accept(visitor) {
2544
+ if (visitor.visitAndGivenStep) {
2545
+ return visitor.visitAndGivenStep(this);
2546
+ }
2547
+ else {
2548
+ return visitor.visitChildren(this);
2549
+ }
2550
+ }
2551
+ }
2552
+ exports.AndGivenStepContext = AndGivenStepContext;
2553
+ class WhenStepContext extends ParserRuleContext_1.ParserRuleContext {
2554
+ WHEN() { return this.getToken(GherkinParser.WHEN, 0); }
2555
+ multilineText() {
2556
+ return this.getRuleContext(0, MultilineTextContext);
2557
+ }
2558
+ tags() {
2559
+ return this.tryGetRuleContext(0, TagsContext);
2560
+ }
2561
+ NEWLINE(i) {
2562
+ if (i === undefined) {
2563
+ return this.getTokens(GherkinParser.NEWLINE);
2564
+ }
2565
+ else {
2566
+ return this.getToken(GherkinParser.NEWLINE, i);
2567
+ }
2568
+ }
2569
+ docString() {
2570
+ return this.tryGetRuleContext(0, DocStringContext);
2571
+ }
2572
+ constructor(parent, invokingState) {
2573
+ super(parent, invokingState);
2574
+ }
2575
+ // @Override
2576
+ get ruleIndex() { return GherkinParser.RULE_whenStep; }
2577
+ // @Override
2578
+ accept(visitor) {
2579
+ if (visitor.visitWhenStep) {
2580
+ return visitor.visitWhenStep(this);
2581
+ }
2582
+ else {
2583
+ return visitor.visitChildren(this);
2584
+ }
2585
+ }
2586
+ }
2587
+ exports.WhenStepContext = WhenStepContext;
2588
+ class AndWhenStepContext extends ParserRuleContext_1.ParserRuleContext {
2589
+ AND_WHEN() { return this.getToken(GherkinParser.AND_WHEN, 0); }
2590
+ multilineText() {
2591
+ return this.getRuleContext(0, MultilineTextContext);
2592
+ }
2593
+ tags() {
2594
+ return this.tryGetRuleContext(0, TagsContext);
2595
+ }
2596
+ NEWLINE(i) {
2597
+ if (i === undefined) {
2598
+ return this.getTokens(GherkinParser.NEWLINE);
2599
+ }
2600
+ else {
2601
+ return this.getToken(GherkinParser.NEWLINE, i);
2602
+ }
2603
+ }
2604
+ docString() {
2605
+ return this.tryGetRuleContext(0, DocStringContext);
2606
+ }
2607
+ constructor(parent, invokingState) {
2608
+ super(parent, invokingState);
2609
+ }
2610
+ // @Override
2611
+ get ruleIndex() { return GherkinParser.RULE_andWhenStep; }
2612
+ // @Override
2613
+ accept(visitor) {
2614
+ if (visitor.visitAndWhenStep) {
2615
+ return visitor.visitAndWhenStep(this);
2616
+ }
2617
+ else {
2618
+ return visitor.visitChildren(this);
2619
+ }
2620
+ }
2621
+ }
2622
+ exports.AndWhenStepContext = AndWhenStepContext;
2623
+ class ThenStepContext extends ParserRuleContext_1.ParserRuleContext {
2624
+ THEN() { return this.getToken(GherkinParser.THEN, 0); }
2625
+ multilineText() {
2626
+ return this.getRuleContext(0, MultilineTextContext);
2627
+ }
2628
+ thenTags() {
2629
+ return this.tryGetRuleContext(0, ThenTagsContext);
2630
+ }
2631
+ NEWLINE(i) {
2632
+ if (i === undefined) {
2633
+ return this.getTokens(GherkinParser.NEWLINE);
2634
+ }
2635
+ else {
2636
+ return this.getToken(GherkinParser.NEWLINE, i);
2637
+ }
2638
+ }
2639
+ docString() {
2640
+ return this.tryGetRuleContext(0, DocStringContext);
2641
+ }
2642
+ constructor(parent, invokingState) {
2643
+ super(parent, invokingState);
2644
+ }
2645
+ // @Override
2646
+ get ruleIndex() { return GherkinParser.RULE_thenStep; }
2647
+ // @Override
2648
+ accept(visitor) {
2649
+ if (visitor.visitThenStep) {
2650
+ return visitor.visitThenStep(this);
2651
+ }
2652
+ else {
2653
+ return visitor.visitChildren(this);
2654
+ }
2655
+ }
2656
+ }
2657
+ exports.ThenStepContext = ThenStepContext;
2658
+ class AndStepContext extends ParserRuleContext_1.ParserRuleContext {
2659
+ AND() { return this.getToken(GherkinParser.AND, 0); }
2660
+ multilineText() {
2661
+ return this.getRuleContext(0, MultilineTextContext);
2662
+ }
2663
+ thenTags() {
2664
+ return this.tryGetRuleContext(0, ThenTagsContext);
2665
+ }
2666
+ NEWLINE(i) {
2667
+ if (i === undefined) {
2668
+ return this.getTokens(GherkinParser.NEWLINE);
2669
+ }
2670
+ else {
2671
+ return this.getToken(GherkinParser.NEWLINE, i);
2672
+ }
2673
+ }
2674
+ docString() {
2675
+ return this.tryGetRuleContext(0, DocStringContext);
2676
+ }
2677
+ constructor(parent, invokingState) {
2678
+ super(parent, invokingState);
2679
+ }
2680
+ // @Override
2681
+ get ruleIndex() { return GherkinParser.RULE_andStep; }
2682
+ // @Override
2683
+ accept(visitor) {
2684
+ if (visitor.visitAndStep) {
2685
+ return visitor.visitAndStep(this);
2686
+ }
2687
+ else {
2688
+ return visitor.visitChildren(this);
2689
+ }
2690
+ }
2691
+ }
2692
+ exports.AndStepContext = AndStepContext;
2693
+ class ButStepContext extends ParserRuleContext_1.ParserRuleContext {
2694
+ BUT() { return this.getToken(GherkinParser.BUT, 0); }
2695
+ multilineText() {
2696
+ return this.getRuleContext(0, MultilineTextContext);
2697
+ }
2698
+ thenTags() {
2699
+ return this.tryGetRuleContext(0, ThenTagsContext);
2700
+ }
2701
+ NEWLINE(i) {
2702
+ if (i === undefined) {
2703
+ return this.getTokens(GherkinParser.NEWLINE);
2704
+ }
2705
+ else {
2706
+ return this.getToken(GherkinParser.NEWLINE, i);
2707
+ }
2708
+ }
2709
+ docString() {
2710
+ return this.tryGetRuleContext(0, DocStringContext);
2711
+ }
2712
+ constructor(parent, invokingState) {
2713
+ super(parent, invokingState);
2714
+ }
2715
+ // @Override
2716
+ get ruleIndex() { return GherkinParser.RULE_butStep; }
2717
+ // @Override
2718
+ accept(visitor) {
2719
+ if (visitor.visitButStep) {
2720
+ return visitor.visitButStep(this);
2721
+ }
2722
+ else {
2723
+ return visitor.visitChildren(this);
2724
+ }
2725
+ }
2726
+ }
2727
+ exports.ButStepContext = ButStepContext;
2728
+ class DocStringContext extends ParserRuleContext_1.ParserRuleContext {
2729
+ DOC_STRING() { return this.getToken(GherkinParser.DOC_STRING, 0); }
2730
+ constructor(parent, invokingState) {
2731
+ super(parent, invokingState);
2732
+ }
2733
+ // @Override
2734
+ get ruleIndex() { return GherkinParser.RULE_docString; }
2735
+ // @Override
2736
+ accept(visitor) {
2737
+ if (visitor.visitDocString) {
2738
+ return visitor.visitDocString(this);
2739
+ }
2740
+ else {
2741
+ return visitor.visitChildren(this);
2742
+ }
2743
+ }
2744
+ }
2745
+ exports.DocStringContext = DocStringContext;
2746
+ class TagsContext extends ParserRuleContext_1.ParserRuleContext {
2747
+ NEWLINE(i) {
2748
+ if (i === undefined) {
2749
+ return this.getTokens(GherkinParser.NEWLINE);
2750
+ }
2751
+ else {
2752
+ return this.getToken(GherkinParser.NEWLINE, i);
2753
+ }
2754
+ }
2755
+ ONLY_TAG(i) {
2756
+ if (i === undefined) {
2757
+ return this.getTokens(GherkinParser.ONLY_TAG);
2758
+ }
2759
+ else {
2760
+ return this.getToken(GherkinParser.ONLY_TAG, i);
2761
+ }
2762
+ }
2763
+ SKIP_TAG(i) {
2764
+ if (i === undefined) {
2765
+ return this.getTokens(GherkinParser.SKIP_TAG);
2766
+ }
2767
+ else {
2768
+ return this.getToken(GherkinParser.SKIP_TAG, i);
2769
+ }
2770
+ }
2771
+ TAG(i) {
2772
+ if (i === undefined) {
2773
+ return this.getTokens(GherkinParser.TAG);
2774
+ }
2775
+ else {
2776
+ return this.getToken(GherkinParser.TAG, i);
2777
+ }
2778
+ }
2779
+ constructor(parent, invokingState) {
2780
+ super(parent, invokingState);
2781
+ }
2782
+ // @Override
2783
+ get ruleIndex() { return GherkinParser.RULE_tags; }
2784
+ // @Override
2785
+ accept(visitor) {
2786
+ if (visitor.visitTags) {
2787
+ return visitor.visitTags(this);
2788
+ }
2789
+ else {
2790
+ return visitor.visitChildren(this);
2791
+ }
2792
+ }
2793
+ }
2794
+ exports.TagsContext = TagsContext;
2795
+ class ThenTagsContext extends ParserRuleContext_1.ParserRuleContext {
2796
+ NEWLINE(i) {
2797
+ if (i === undefined) {
2798
+ return this.getTokens(GherkinParser.NEWLINE);
2799
+ }
2800
+ else {
2801
+ return this.getToken(GherkinParser.NEWLINE, i);
2802
+ }
2803
+ }
2804
+ ONLY_TAG(i) {
2805
+ if (i === undefined) {
2806
+ return this.getTokens(GherkinParser.ONLY_TAG);
2807
+ }
2808
+ else {
2809
+ return this.getToken(GherkinParser.ONLY_TAG, i);
2810
+ }
2811
+ }
2812
+ SKIP_TAG(i) {
2813
+ if (i === undefined) {
2814
+ return this.getTokens(GherkinParser.SKIP_TAG);
2815
+ }
2816
+ else {
2817
+ return this.getToken(GherkinParser.SKIP_TAG, i);
2818
+ }
2819
+ }
2820
+ FAIL_TAG(i) {
2821
+ if (i === undefined) {
2822
+ return this.getTokens(GherkinParser.FAIL_TAG);
2823
+ }
2824
+ else {
2825
+ return this.getToken(GherkinParser.FAIL_TAG, i);
2826
+ }
2827
+ }
2828
+ TODO_TAG(i) {
2829
+ if (i === undefined) {
2830
+ return this.getTokens(GherkinParser.TODO_TAG);
2831
+ }
2832
+ else {
2833
+ return this.getToken(GherkinParser.TODO_TAG, i);
2834
+ }
2835
+ }
2836
+ TAG(i) {
2837
+ if (i === undefined) {
2838
+ return this.getTokens(GherkinParser.TAG);
2839
+ }
2840
+ else {
2841
+ return this.getToken(GherkinParser.TAG, i);
2842
+ }
2843
+ }
2844
+ constructor(parent, invokingState) {
2845
+ super(parent, invokingState);
2846
+ }
2847
+ // @Override
2848
+ get ruleIndex() { return GherkinParser.RULE_thenTags; }
2849
+ // @Override
2850
+ accept(visitor) {
2851
+ if (visitor.visitThenTags) {
2852
+ return visitor.visitThenTags(this);
2853
+ }
2854
+ else {
2855
+ return visitor.visitChildren(this);
2856
+ }
2857
+ }
2858
+ }
2859
+ exports.ThenTagsContext = ThenTagsContext;
2860
+ class ContentTextContext extends ParserRuleContext_1.ParserRuleContext {
2861
+ TEXT_CHARACTER(i) {
2862
+ if (i === undefined) {
2863
+ return this.getTokens(GherkinParser.TEXT_CHARACTER);
2864
+ }
2865
+ else {
2866
+ return this.getToken(GherkinParser.TEXT_CHARACTER, i);
2867
+ }
2868
+ }
2869
+ constructor(parent, invokingState) {
2870
+ super(parent, invokingState);
2871
+ }
2872
+ // @Override
2873
+ get ruleIndex() { return GherkinParser.RULE_contentText; }
2874
+ // @Override
2875
+ accept(visitor) {
2876
+ if (visitor.visitContentText) {
2877
+ return visitor.visitContentText(this);
2878
+ }
2879
+ else {
2880
+ return visitor.visitChildren(this);
2881
+ }
2882
+ }
2883
+ }
2884
+ exports.ContentTextContext = ContentTextContext;
2885
+ class MultilineTextContext extends ParserRuleContext_1.ParserRuleContext {
2886
+ TEXT_CHARACTER(i) {
2887
+ if (i === undefined) {
2888
+ return this.getTokens(GherkinParser.TEXT_CHARACTER);
2889
+ }
2890
+ else {
2891
+ return this.getToken(GherkinParser.TEXT_CHARACTER, i);
2892
+ }
2893
+ }
2894
+ NEWLINE(i) {
2895
+ if (i === undefined) {
2896
+ return this.getTokens(GherkinParser.NEWLINE);
2897
+ }
2898
+ else {
2899
+ return this.getToken(GherkinParser.NEWLINE, i);
2900
+ }
2901
+ }
2902
+ constructor(parent, invokingState) {
2903
+ super(parent, invokingState);
2904
+ }
2905
+ // @Override
2906
+ get ruleIndex() { return GherkinParser.RULE_multilineText; }
2907
+ // @Override
2908
+ accept(visitor) {
2909
+ if (visitor.visitMultilineText) {
2910
+ return visitor.visitMultilineText(this);
2911
+ }
2912
+ else {
2913
+ return visitor.visitChildren(this);
2914
+ }
2915
+ }
2916
+ }
2917
+ exports.MultilineTextContext = MultilineTextContext;
2918
+ //# sourceMappingURL=GherkinParser.js.map