-
Notifications
You must be signed in to change notification settings - Fork 21
/
jssm.es5.cjs.js
867 lines (723 loc) · 210 KB
/
jssm.es5.cjs.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
/*
* Generated by PEG.js 0.10.0.
*
* http://pegjs.org/
*/"use strict";function peg$subclass(child,parent){function ctor(){this.constructor=child;}ctor.prototype=parent.prototype;child.prototype=new ctor();}function peg$SyntaxError(message,expected,found,location){this.message=message;this.expected=expected;this.found=found;this.location=location;this.name="SyntaxError";if(typeof Error.captureStackTrace==="function"){Error.captureStackTrace(this,peg$SyntaxError);}}peg$subclass(peg$SyntaxError,Error);peg$SyntaxError.buildMessage=function(expected,found){var DESCRIBE_EXPECTATION_FNS={literal:function literal(expectation){return"\""+literalEscape(expectation.text)+"\"";},"class":function _class(expectation){var escapedParts="",i;for(i=0;i<expectation.parts.length;i++){escapedParts+=expectation.parts[i]instanceof Array?classEscape(expectation.parts[i][0])+"-"+classEscape(expectation.parts[i][1]):classEscape(expectation.parts[i]);}return"["+(expectation.inverted?"^":"")+escapedParts+"]";},any:function any(expectation){return"any character";},end:function end(expectation){return"end of input";},other:function other(expectation){return expectation.description;}};function hex(ch){return ch.charCodeAt(0).toString(16).toUpperCase();}function literalEscape(s){return s.replace(/\\/g,'\\\\').replace(/"/g,'\\"').replace(/\0/g,'\\0').replace(/\t/g,'\\t').replace(/\n/g,'\\n').replace(/\r/g,'\\r').replace(/[\x00-\x0F]/g,function(ch){return'\\x0'+hex(ch);}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(ch){return'\\x'+hex(ch);});}function classEscape(s){return s.replace(/\\/g,'\\\\').replace(/\]/g,'\\]').replace(/\^/g,'\\^').replace(/-/g,'\\-').replace(/\0/g,'\\0').replace(/\t/g,'\\t').replace(/\n/g,'\\n').replace(/\r/g,'\\r').replace(/[\x00-\x0F]/g,function(ch){return'\\x0'+hex(ch);}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(ch){return'\\x'+hex(ch);});}function describeExpectation(expectation){return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);}function describeExpected(expected){var descriptions=new Array(expected.length),i,j;for(i=0;i<expected.length;i++){descriptions[i]=describeExpectation(expected[i]);}descriptions.sort();if(descriptions.length>0){for(i=1,j=1;i<descriptions.length;i++){if(descriptions[i-1]!==descriptions[i]){descriptions[j]=descriptions[i];j++;}}descriptions.length=j;}switch(descriptions.length){case 1:return descriptions[0];case 2:return descriptions[0]+" or "+descriptions[1];default:return descriptions.slice(0,-1).join(", ")+", or "+descriptions[descriptions.length-1];}}function describeFound(found){return found?"\""+literalEscape(found)+"\"":"end of input";}return"Expected "+describeExpected(expected)+" but "+describeFound(found)+" found.";};function peg$parse(input,options){options=options!==void 0?options:{};var peg$FAILED={},peg$startRuleFunctions={Document:peg$parseDocument},peg$startRuleFunction=peg$parseDocument,peg$c0=function peg$c0(e){return e;},peg$c1="square",peg$c2=peg$literalExpectation("square",false),peg$c3="rectangle",peg$c4=peg$literalExpectation("rectangle",false),peg$c5="circle",peg$c6=peg$literalExpectation("circle",false),peg$c7=peg$otherExpectation("forward light arrow ->"),peg$c8="->",peg$c9=peg$literalExpectation("->",false),peg$c10=peg$otherExpectation("two way light arrow <->"),peg$c11="<->",peg$c12=peg$literalExpectation("<->",false),peg$c13=peg$otherExpectation("back light arrow <-"),peg$c14="<-",peg$c15=peg$literalExpectation("<-",false),peg$c16=peg$otherExpectation("forward fat arrow =>"),peg$c17="=>",peg$c18=peg$literalExpectation("=>",false),peg$c19=peg$otherExpectation("two way fat arrow <=>"),peg$c20="<=>",peg$c21=peg$literalExpectation("<=>",false),peg$c22=peg$otherExpectation("back fat arrow <="),peg$c23="<=",peg$c24=peg$literalExpectation("<=",false),peg$c25=peg$otherExpectation("forward tilde arrow ~>"),peg$c26="~>",peg$c27=peg$literalExpectation("~>",false),peg$c28=peg$otherExpectation("two way tilde arrow <~>"),peg$c29="<~>",peg$c30=peg$literalExpectation("<~>",false),peg$c31=peg$otherExpectation("back tilde arrow <~"),peg$c32="<~",peg$c33=peg$literalExpectation("<~",false),peg$c34=peg$otherExpectation("light fat arrow <-=>"),peg$c35="<-=>",peg$c36=peg$literalExpectation("<-=>",false),peg$c37=peg$otherExpectation("light tilde arrow <-~>"),peg$c38="<-~>",peg$c39=peg$literalExpectation("<-~>",false),peg$c40=peg$otherExpectation("fat light arrow <=->"),peg$c41="<=->",peg$c42=peg$literalExpectation("<=->",false),peg$c43=peg$otherExpectation("fat tilde arrow <=~>"),peg$c44="<=~>",peg$c45=peg$literalExpectation("<=~>",false),peg$c46=peg$otherExpectation("tilde light arrow <~->"),peg$c47="<~->",peg$c48=peg$literalExpectation("<~->",false),peg$c49=peg$otherExpectation("tilde fat arrow <~=>"),peg$c50="<~=>",peg$c51=peg$literalExpectation("<~=>",false),peg$c52=peg$otherExpectation("light arrow"),peg$c53=peg$otherExpectation("fat arrow"),peg$c54=peg$otherExpectation("tilde arrow"),peg$c55=peg$otherExpectation("mixed arrow"),peg$c56=peg$otherExpectation("arrow"),peg$c57=/^[0-9a-fA-F]/,peg$c58=peg$classExpectation([["0","9"],["a","f"],["A","F"]],false,false),peg$c59="\"",peg$c60=peg$literalExpectation("\"",false),peg$c61="\\",peg$c62=peg$literalExpectation("\\",false),peg$c63="/",peg$c64=peg$literalExpectation("/",false),peg$c65="b",peg$c66=peg$literalExpectation("b",false),peg$c67=function peg$c67(){return"\b";},peg$c68="f",peg$c69=peg$literalExpectation("f",false),peg$c70=function peg$c70(){return"\f";},peg$c71="n",peg$c72=peg$literalExpectation("n",false),peg$c73=function peg$c73(){return"\n";},peg$c74="r",peg$c75=peg$literalExpectation("r",false),peg$c76=function peg$c76(){return"\r";},peg$c77="t",peg$c78=peg$literalExpectation("t",false),peg$c79=function peg$c79(){return"\t";},peg$c80="v",peg$c81=peg$literalExpectation("v",false),peg$c82=function peg$c82(){return"\v";},peg$c83="u",peg$c84=peg$literalExpectation("u",false),peg$c85=function peg$c85(digits){return String.fromCharCode(parseInt(digits,16));},peg$c86=function peg$c86(Sequence){return Sequence;},peg$c87=/^[ -!#-[\]-\u10FFFF]/,peg$c88=peg$classExpectation([[" ","!"],["#","["],["]","\u10FF"],"F","F"],false,false),peg$c89="'",peg$c90=peg$literalExpectation("'",false),peg$c91=/^[ -&(-[\]-\u10FFFF]/,peg$c92=peg$classExpectation([[" ","&"],["(","["],["]","\u10FF"],"F","F"],false,false),peg$c93=peg$otherExpectation("action label"),peg$c94=function peg$c94(chars){return chars.join("");},peg$c95=/^[\n\r\u2028\u2029]/,peg$c96=peg$classExpectation(["\n","\r","\u2028","\u2029"],false,false),peg$c97=peg$otherExpectation("whitespace"),peg$c98=/^[ \t\n\r\x0B]/,peg$c99=peg$classExpectation([" ","\t","\n","\r","\x0B"],false,false),peg$c100=peg$otherExpectation("string"),peg$c101=peg$otherExpectation("atom"),peg$c102=/^[0-9a-zA-Z.+_&()$#@!?,]/,peg$c103=peg$classExpectation([["0","9"],["a","z"],["A","Z"],".","+","_","&","(",")","$","#","@","!","?",","],false,false),peg$c104=function peg$c104(text){return text.join('');},peg$c105=peg$otherExpectation("label"),peg$c106="0",peg$c107=peg$literalExpectation("0",false),peg$c108=/^[0-9]/,peg$c109=peg$classExpectation([["0","9"]],false,false),peg$c110=/^[1-9]/,peg$c111=peg$classExpectation([["1","9"]],false,false),peg$c112=peg$otherExpectation("nonneg number"),peg$c113=".",peg$c114=peg$literalExpectation(".",false),peg$c115=function peg$c115(){return parseFloat(text());},peg$c116=function peg$c116(major,minor,patch){return{major:parseInt(major,10),minor:parseInt(minor,10),patch:parseInt(patch,10),full:text()};},peg$c117="^",peg$c118=peg$literalExpectation("^",false),peg$c119="~",peg$c120=peg$literalExpectation("~",false),peg$c121=">=",peg$c122=peg$literalExpectation(">=",false),peg$c123="<",peg$c124=peg$literalExpectation("<",false),peg$c125=">",peg$c126=peg$literalExpectation(">",false),peg$c127="http://",peg$c128=peg$literalExpectation("http://",false),peg$c129="https://",peg$c130=peg$literalExpectation("https://",false),peg$c131=/^[a-zA-Z0-9!*'():;@&=+$,\/?#[\]_.~\-]/,peg$c132=peg$classExpectation([["a","z"],["A","Z"],["0","9"],"!","*","'","(",")",":",";","@","&","=","+","$",",","/","?","#","[","]","_",".","~","-"],false,false),peg$c133=function peg$c133(protocol){return text();},peg$c134="aliceblue",peg$c135=peg$literalExpectation("aliceblue",false),peg$c136=function peg$c136(){return'#f0f8ffff';},peg$c137="AliceBlue",peg$c138=peg$literalExpectation("AliceBlue",false),peg$c139="antiquewhite",peg$c140=peg$literalExpectation("antiquewhite",false),peg$c141=function peg$c141(){return'#faebd7ff';},peg$c142="AntiqueWhite",peg$c143=peg$literalExpectation("AntiqueWhite",false),peg$c144="aqua",peg$c145=peg$literalExpectation("aqua",false),peg$c146=function peg$c146(){return'#00ffffff';},peg$c147="Aqua",peg$c148=peg$literalExpectation("Aqua",false),peg$c149="aquamarine",peg$c150=peg$literalExpectation("aquamarine",false),peg$c151=function peg$c151(){return'#7fffd4ff';},peg$c152="Aquamarine",peg$c153=peg$literalExpectation("Aquamarine",false),peg$c154="azure",peg$c155=peg$literalExpectation("azure",false),peg$c156=function peg$c156(){return'#f0ffffff';},peg$c157="Azure",peg$c158=peg$literalExpectation("Azure",false),peg$c159="beige",peg$c160=peg$literalExpectation("beige",false),peg$c161=function peg$c161(){return'#f5f5dcff';},peg$c162="Beige",peg$c163=peg$literalExpectation("Beige",false),peg$c164="bisque",peg$c165=peg$literalExpectation("bisque",false),peg$c166=function peg$c166(){return'#ffe4c4ff';},peg$c167="Bisque",peg$c168=peg$literalExpectation("Bisque",false),peg$c169="black",peg$c170=peg$literalExpectation("black",false),peg$c171=function peg$c171(){return'#000000ff';},peg$c172="Black",peg$c173=peg$literalExpectation("Black",false),peg$c174="blanchedalmond",peg$c175=peg$literalExpectation("blanchedalmond",false),peg$c176=function peg$c176(){return'#ffebcdff';},peg$c177="BlanchedAlmond",peg$c178=peg$literalExpectation("BlanchedAlmond",false),peg$c179="blue",peg$c180=peg$literalExpectation("blue",false),peg$c181=function peg$c181(){return'#0000ffff';},peg$c182="Blue",peg$c183=peg$literalExpectation("Blue",false),peg$c184="blueviolet",peg$c185=peg$literalExpectation("blueviolet",false),peg$c186=function peg$c186(){return'#8a2be2ff';},peg$c187="BlueViolet",peg$c188=peg$literalExpectation("BlueViolet",false),peg$c189="brown",peg$c190=peg$literalExpectation("brown",false),peg$c191=function peg$c191(){return'#a52a2aff';},peg$c192="Brown",peg$c193=peg$literalExpectation("Brown",false),peg$c194="burlywood",peg$c195=peg$literalExpectation("burlywood",false),peg$c196=function peg$c196(){return'#deb887ff';},peg$c197="BurlyWood",peg$c198=peg$literalExpectation("BurlyWood",false),peg$c199="cadetblue",peg$c200=peg$literalExpectation("cadetblue",false),peg$c201=function peg$c201(){return'#5f9ea0ff';},peg$c202="CadetBlue",peg$c203=peg$literalExpectation("CadetBlue",false),peg$c204="chartreuse",peg$c205=peg$literalExpectation("chartreuse",false),peg$c206=function peg$c206(){return'#7fff00ff';},peg$c207="Chartreuse",peg$c208=peg$literalExpectation("Chartreuse",false),peg$c209="chocolate",peg$c210=peg$literalExpectation("chocolate",false),peg$c211=function peg$c211(){return'#d2691eff';},peg$c212="Chocolate",peg$c213=peg$literalExpectation("Chocolate",false),peg$c214="coral",peg$c215=peg$literalExpectation("coral",false),peg$c216=function peg$c216(){return'#ff7f50ff';},peg$c217="Coral",peg$c218=peg$literalExpectation("Coral",false),peg$c219="cornflowerblue",peg$c220=peg$literalExpectation("cornflowerblue",false),peg$c221=function peg$c221(){return'#6495edff';},peg$c222="CornflowerBlue",peg$c223=peg$literalExpectation("CornflowerBlue",false),peg$c224="cornsilk",peg$c225=peg$literalExpectation("cornsilk",false),peg$c226=function peg$c226(){return'#fff8dcff';},peg$c227="Cornsilk",peg$c228=peg$literalExpectation("Cornsilk",false),peg$c229="crimson",peg$c230=peg$literalExpectation("crimson",false),peg$c231=function peg$c231(){return'#dc143cff';},peg$c232="Crimson",peg$c233=peg$literalExpectation("Crimson",false),peg$c234="cyan",peg$c235=peg$literalExpectation("cyan",false),peg$c236="Cyan",peg$c237=peg$literalExpectation("Cyan",false),peg$c238="darkblue",peg$c239=peg$literalExpectation("darkblue",false),peg$c240=function peg$c240(){return'#00008bff';},peg$c241="DarkBlue",peg$c242=peg$literalExpectation("DarkBlue",false),peg$c243="darkcyan",peg$c244=peg$literalExpectation("darkcyan",false),peg$c245=function peg$c245(){return'#008b8bff';},peg$c246="DarkCyan",peg$c247=peg$literalExpectation("DarkCyan",false),peg$c248="darkgoldenrod",peg$c249=peg$literalExpectation("darkgoldenrod",false),peg$c250=function peg$c250(){return'#b8860bff';},peg$c251="DarkGoldenRod",peg$c252=peg$literalExpectation("DarkGoldenRod",false),peg$c253="darkgray",peg$c254=peg$literalExpectation("darkgray",false),peg$c255=function peg$c255(){return'#a9a9a9ff';},peg$c256="DarkGray",peg$c257=peg$literalExpectation("DarkGray",false),peg$c258="darkgrey",peg$c259=peg$literalExpectation("darkgrey",false),peg$c260="DarkGrey",peg$c261=peg$literalExpectation("DarkGrey",false),peg$c262="darkgreen",peg$c263=peg$literalExpectation("darkgreen",false),peg$c264=function peg$c264(){return'#006400ff';},peg$c265="DarkGreen",peg$c266=peg$literalExpectation("DarkGreen",false),peg$c267="darkkhaki",peg$c268=peg$literalExpectation("darkkhaki",false),peg$c269=function peg$c269(){return'#bdb76bff';},peg$c270="DarkKhaki",peg$c271=peg$literalExpectation("DarkKhaki",false),peg$c272="darkmagenta",peg$c273=peg$literalExpectation("darkmagenta",false),peg$c274=function peg$c274(){return'#8b008bff';},peg$c275="DarkMagenta",peg$c276=peg$literalExpectation("DarkMagenta",false),peg$c277="darkolivegreen",peg$c278=peg$literalExpectation("darkolivegreen",false),peg$c279=function peg$c279(){return'#556b2fff';},peg$c280="DarkOliveGreen",peg$c281=peg$literalExpectation("DarkOliveGreen",false),peg$c282="darkorange",peg$c283=peg$literalExpectation("darkorange",false),peg$c284=function peg$c284(){return'#ff8c00ff';},peg$c285="Darkorange",peg$c286=peg$literalExpectation("Darkorange",false),peg$c287="darkorchid",peg$c288=peg$literalExpectation("darkorchid",false),peg$c289=function peg$c289(){return'#9932ccff';},peg$c290="DarkOrchid",peg$c291=peg$literalExpectation("DarkOrchid",false),peg$c292="darkred",peg$c293=peg$literalExpectation("darkred",false),peg$c294=function peg$c294(){return'#8b0000ff';},peg$c295="DarkRed",peg$c296=peg$literalExpectation("DarkRed",false),peg$c297="darksalmon",peg$c298=peg$literalExpectation("darksalmon",false),peg$c299=function peg$c299(){return'#e9967aff';},peg$c300="DarkSalmon",peg$c301=peg$literalExpectation("DarkSalmon",false),peg$c302="darkseagreen",peg$c303=peg$literalExpectation("darkseagreen",false),peg$c304=function peg$c304(){return'#8fbc8fff';},peg$c305="DarkSeaGreen",peg$c306=peg$literalExpectation("DarkSeaGreen",false),peg$c307="darkslateblue",peg$c308=peg$literalExpectation("darkslateblue",false),peg$c309=function peg$c309(){return'#483d8bff';},peg$c310="DarkSlateBlue",peg$c311=peg$literalExpectation("DarkSlateBlue",false),peg$c312="darkslategray",peg$c313=peg$literalExpectation("darkslategray",false),peg$c314=function peg$c314(){return'#2f4f4fff';},peg$c315="DarkSlateGray",peg$c316=peg$literalExpectation("DarkSlateGray",false),peg$c317="darkslategrey",peg$c318=peg$literalExpectation("darkslategrey",false),peg$c319="DarkSlateGrey",peg$c320=peg$literalExpectation("DarkSlateGrey",false),peg$c321="darkturquoise",peg$c322=peg$literalExpectation("darkturquoise",false),peg$c323=function peg$c323(){return'#00ced1ff';},peg$c324="DarkTurquoise",peg$c325=peg$literalExpectation("DarkTurquoise",false),peg$c326="darkviolet",peg$c327=peg$literalExpectation("darkviolet",false),peg$c328=function peg$c328(){return'#9400d3ff';},peg$c329="DarkViolet",peg$c330=peg$literalExpectation("DarkViolet",false),peg$c331="deeppink",peg$c332=peg$literalExpectation("deeppink",false),peg$c333=function peg$c333(){return'#ff1493ff';},peg$c334="DeepPink",peg$c335=peg$literalExpectation("DeepPink",false),peg$c336="deepskyblue",peg$c337=peg$literalExpectation("deepskyblue",false),peg$c338=function peg$c338(){return'#00bfffff';},peg$c339="DeepSkyBlue",peg$c340=peg$literalExpectation("DeepSkyBlue",false),peg$c341="dimgray",peg$c342=peg$literalExpectation("dimgray",false),peg$c343=function peg$c343(){return'#696969ff';},peg$c344="DimGray",peg$c345=peg$literalExpectation("DimGray",false),peg$c346="dimgrey",peg$c347=peg$literalExpectation("dimgrey",false),peg$c348="DimGrey",peg$c349=peg$literalExpectation("DimGrey",false),peg$c350="dodgerblue",peg$c351=peg$literalExpectation("dodgerblue",false),peg$c352=function peg$c352(){return'#1e90ffff';},peg$c353="DodgerBlue",peg$c354=peg$literalExpectation("DodgerBlue",false),peg$c355="firebrick",peg$c356=peg$literalExpectation("firebrick",false),peg$c357=function peg$c357(){return'#b22222ff';},peg$c358="FireBrick",peg$c359=peg$literalExpectation("FireBrick",false),peg$c360="floralwhite",peg$c361=peg$literalExpectation("floralwhite",false),peg$c362=function peg$c362(){return'#fffaf0ff';},peg$c363="FloralWhite",peg$c364=peg$literalExpectation("FloralWhite",false),peg$c365="forestgreen",peg$c366=peg$literalExpectation("forestgreen",false),peg$c367=function peg$c367(){return'#228b22ff';},peg$c368="ForestGreen",peg$c369=peg$literalExpectation("ForestGreen",false),peg$c370="fuchsia",peg$c371=peg$literalExpectation("fuchsia",false),peg$c372=function peg$c372(){return'#ff00ffff';},peg$c373="Fuchsia",peg$c374=peg$literalExpectation("Fuchsia",false),peg$c375="gainsboro",peg$c376=peg$literalExpectation("gainsboro",false),peg$c377=function peg$c377(){return'#dcdcdcff';},peg$c378="Gainsboro",peg$c379=peg$literalExpectation("Gainsboro",false),peg$c380="ghostwhite",peg$c381=peg$literalExpectation("ghostwhite",false),peg$c382=function peg$c382(){return'#f8f8ffff';},peg$c383="GhostWhite",peg$c384=peg$literalExpectation("GhostWhite",false),peg$c385="gold",peg$c386=peg$literalExpectation("gold",false),peg$c387=function peg$c387(){return'#ffd700ff';},peg$c388="Gold",peg$c389=peg$literalExpectation("Gold",false),peg$c390="goldenrod",peg$c391=peg$literalExpectation("goldenrod",false),peg$c392=function peg$c392(){return'#daa520ff';},peg$c393="GoldenRod",peg$c394=peg$literalExpectation("GoldenRod",false),peg$c395="gray",peg$c396=peg$literalExpectation("gray",false),peg$c397=function peg$c397(){return'#808080ff';},peg$c398="Gray",peg$c399=peg$literalExpectation("Gray",false),peg$c400="grey",peg$c401=peg$literalExpectation("grey",false),peg$c402="Grey",peg$c403=peg$literalExpectation("Grey",false),peg$c404="green",peg$c405=peg$literalExpectation("green",false),peg$c406=function peg$c406(){return'#008000ff';},peg$c407="Green",peg$c408=peg$literalExpectation("Green",false),peg$c409="greenyellow",peg$c410=peg$literalExpectation("greenyellow",false),peg$c411=function peg$c411(){return'#adff2fff';},peg$c412="GreenYellow",peg$c413=peg$literalExpectation("GreenYellow",false),peg$c414="honeydew",peg$c415=peg$literalExpectation("honeydew",false),peg$c416=function peg$c416(){return'#f0fff0ff';},peg$c417="HoneyDew",peg$c418=peg$literalExpectation("HoneyDew",false),peg$c419="hotpink",peg$c420=peg$literalExpectation("hotpink",false),peg$c421=function peg$c421(){return'#ff69b4ff';},peg$c422="HotPink",peg$c423=peg$literalExpectation("HotPink",false),peg$c424="indianred",peg$c425=peg$literalExpectation("indianred",false),peg$c426=function peg$c426(){return'#cd5c5cff';},peg$c427="IndianRed",peg$c428=peg$literalExpectation("IndianRed",false),peg$c429="indigo",peg$c430=peg$literalExpectation("indigo",false),peg$c431=function peg$c431(){return'#4b0082ff';},peg$c432="Indigo",peg$c433=peg$literalExpectation("Indigo",false),peg$c434="ivory",peg$c435=peg$literalExpectation("ivory",false),peg$c436=function peg$c436(){return'#fffff0ff';},peg$c437="Ivory",peg$c438=peg$literalExpectation("Ivory",false),peg$c439="khaki",peg$c440=peg$literalExpectation("khaki",false),peg$c441=function peg$c441(){return'#f0e68cff';},peg$c442="Khaki",peg$c443=peg$literalExpectation("Khaki",false),peg$c444="lavender",peg$c445=peg$literalExpectation("lavender",false),peg$c446=function peg$c446(){return'#e6e6faff';},peg$c447="Lavender",peg$c448=peg$literalExpectation("Lavender",false),peg$c449="lavenderblush",peg$c450=peg$literalExpectation("lavenderblush",false),peg$c451=function peg$c451(){return'#fff0f5ff';},peg$c452="LavenderBlush",peg$c453=peg$literalExpectation("LavenderBlush",false),peg$c454="lawngreen",peg$c455=peg$literalExpectation("lawngreen",false),peg$c456=function peg$c456(){return'#7cfc00ff';},peg$c457="LawnGreen",peg$c458=peg$literalExpectation("LawnGreen",false),peg$c459="lemonchiffon",peg$c460=peg$literalExpectation("lemonchiffon",false),peg$c461=function peg$c461(){return'#fffacdff';},peg$c462="LemonChiffon",peg$c463=peg$literalExpectation("LemonChiffon",false),peg$c464="lightblue",peg$c465=peg$literalExpectation("lightblue",false),peg$c466=function peg$c466(){return'#add8e6ff';},peg$c467="LightBlue",peg$c468=peg$literalExpectation("LightBlue",false),peg$c469="lightcoral",peg$c470=peg$literalExpectation("lightcoral",false),peg$c471=function peg$c471(){return'#f08080ff';},peg$c472="LightCoral",peg$c473=peg$literalExpectation("LightCoral",false),peg$c474="lightcyan",peg$c475=peg$literalExpectation("lightcyan",false),peg$c476=function peg$c476(){return'#e0ffffff';},peg$c477="LightCyan",peg$c478=peg$literalExpectation("LightCyan",false),peg$c479="lightgoldenrodyellow",peg$c480=peg$literalExpectation("lightgoldenrodyellow",false),peg$c481=function peg$c481(){return'#fafad2ff';},peg$c482="LightGoldenRodYellow",peg$c483=peg$literalExpectation("LightGoldenRodYellow",false),peg$c484="lightgray",peg$c485=peg$literalExpectation("lightgray",false),peg$c486=function peg$c486(){return'#d3d3d3ff';},peg$c487="LightGray",peg$c488=peg$literalExpectation("LightGray",false),peg$c489="lightgrey",peg$c490=peg$literalExpectation("lightgrey",false),peg$c491="LightGrey",peg$c492=peg$literalExpectation("LightGrey",false),peg$c493="lightgreen",peg$c494=peg$literalExpectation("lightgreen",false),peg$c495=function peg$c495(){return'#90ee90ff';},peg$c496="LightGreen",peg$c497=peg$literalExpectation("LightGreen",false),peg$c498="lightpink",peg$c499=peg$literalExpectation("lightpink",false),peg$c500=function peg$c500(){return'#ffb6c1ff';},peg$c501="LightPink",peg$c502=peg$literalExpectation("LightPink",false),peg$c503="lightsalmon",peg$c504=peg$literalExpectation("lightsalmon",false),peg$c505=function peg$c505(){return'#ffa07aff';},peg$c506="LightSalmon",peg$c507=peg$literalExpectation("LightSalmon",false),peg$c508="lightseagreen",peg$c509=peg$literalExpectation("lightseagreen",false),peg$c510=function peg$c510(){return'#20b2aaff';},peg$c511="LightSeaGreen",peg$c512=peg$literalExpectation("LightSeaGreen",false),peg$c513="lightskyblue",peg$c514=peg$literalExpectation("lightskyblue",false),peg$c515=function peg$c515(){return'#87cefaff';},peg$c516="LightSkyBlue",peg$c517=peg$literalExpectation("LightSkyBlue",false),peg$c518="lightslategray",peg$c519=peg$literalExpectation("lightslategray",false),peg$c520=function peg$c520(){return'#778899ff';},peg$c521="LightSlateGray",peg$c522=peg$literalExpectation("LightSlateGray",false),peg$c523="lightslategrey",peg$c524=peg$literalExpectation("lightslategrey",false),peg$c525="LightSlateGrey",peg$c526=peg$literalExpectation("LightSlateGrey",false),peg$c527="lightsteelblue",peg$c528=peg$literalExpectation("lightsteelblue",false),peg$c529=function peg$c529(){return'#b0c4deff';},peg$c530="LightSteelBlue",peg$c531=peg$literalExpectation("LightSteelBlue",false),peg$c532="lightyellow",peg$c533=peg$literalExpectation("lightyellow",false),peg$c534=function peg$c534(){return'#ffffe0ff';},peg$c535="LightYellow",peg$c536=peg$literalExpectation("LightYellow",false),peg$c537="lime",peg$c538=peg$literalExpectation("lime",false),peg$c539=function peg$c539(){return'#00ff00ff';},peg$c540="Lime",peg$c541=peg$literalExpectation("Lime",false),peg$c542="limegreen",peg$c543=peg$literalExpectation("limegreen",false),peg$c544=function peg$c544(){return'#32cd32ff';},peg$c545="LimeGreen",peg$c546=peg$literalExpectation("LimeGreen",false),peg$c547="linen",peg$c548=peg$literalExpectation("linen",false),peg$c549=function peg$c549(){return'#faf0e6ff';},peg$c550="Linen",peg$c551=peg$literalExpectation("Linen",false),peg$c552="magenta",peg$c553=peg$literalExpectation("magenta",false),peg$c554="Magenta",peg$c555=peg$literalExpectation("Magenta",false),peg$c556="maroon",peg$c557=peg$literalExpectation("maroon",false),peg$c558=function peg$c558(){return'#800000ff';},peg$c559="Maroon",peg$c560=peg$literalExpectation("Maroon",false),peg$c561="mediumaquamarine",peg$c562=peg$literalExpectation("mediumaquamarine",false),peg$c563=function peg$c563(){return'#66cdaaff';},peg$c564="MediumAquaMarine",peg$c565=peg$literalExpectation("MediumAquaMarine",false),peg$c566="mediumblue",peg$c567=peg$literalExpectation("mediumblue",false),peg$c568=function peg$c568(){return'#0000cdff';},peg$c569="MediumBlue",peg$c570=peg$literalExpectation("MediumBlue",false),peg$c571="mediumorchid",peg$c572=peg$literalExpectation("mediumorchid",false),peg$c573=function peg$c573(){return'#ba55d3ff';},peg$c574="MediumOrchid",peg$c575=peg$literalExpectation("MediumOrchid",false),peg$c576="mediumpurple",peg$c577=peg$literalExpectation("mediumpurple",false),peg$c578=function peg$c578(){return'#9370d8ff';},peg$c579="MediumPurple",peg$c580=peg$literalExpectation("MediumPurple",false),peg$c581="mediumseagreen",peg$c582=peg$literalExpectation("mediumseagreen",false),peg$c583=function peg$c583(){return'#3cb371ff';},peg$c584="MediumSeaGreen",peg$c585=peg$literalExpectation("MediumSeaGreen",false),peg$c586="mediumslateblue",peg$c587=peg$literalExpectation("mediumslateblue",false),peg$c588=function peg$c588(){return'#7b68eeff';},peg$c589="MediumSlateBlue",peg$c590=peg$literalExpectation("MediumSlateBlue",false),peg$c591="mediumspringgreen",peg$c592=peg$literalExpectation("mediumspringgreen",false),peg$c593=function peg$c593(){return'#00fa9aff';},peg$c594="MediumSpringGreen",peg$c595=peg$literalExpectation("MediumSpringGreen",false),peg$c596="mediumturquoise",peg$c597=peg$literalExpectation("mediumturquoise",false),peg$c598=function peg$c598(){return'#48d1ccff';},peg$c599="MediumTurquoise",peg$c600=peg$literalExpectation("MediumTurquoise",false),peg$c601="mediumvioletred",peg$c602=peg$literalExpectation("mediumvioletred",false),peg$c603=function peg$c603(){return'#c71585ff';},peg$c604="MediumVioletRed",peg$c605=peg$literalExpectation("MediumVioletRed",false),peg$c606="midnightblue",peg$c607=peg$literalExpectation("midnightblue",false),peg$c608=function peg$c608(){return'#191970ff';},peg$c609="MidnightBlue",peg$c610=peg$literalExpectation("MidnightBlue",false),peg$c611="mintcream",peg$c612=peg$literalExpectation("mintcream",false),peg$c613=function peg$c613(){return'#f5fffaff';},peg$c614="MintCream",peg$c615=peg$literalExpectation("MintCream",false),peg$c616="mistyrose",peg$c617=peg$literalExpectation("mistyrose",false),peg$c618=function peg$c618(){return'#ffe4e1ff';},peg$c619="MistyRose",peg$c620=peg$literalExpectation("MistyRose",false),peg$c621="moccasin",peg$c622=peg$literalExpectation("moccasin",false),peg$c623=function peg$c623(){return'#ffe4b5ff';},peg$c624="Moccasin",peg$c625=peg$literalExpectation("Moccasin",false),peg$c626="navajowhite",peg$c627=peg$literalExpectation("navajowhite",false),peg$c628=function peg$c628(){return'#ffdeadff';},peg$c629="NavajoWhite",peg$c630=peg$literalExpectation("NavajoWhite",false),peg$c631="navy",peg$c632=peg$literalExpectation("navy",false),peg$c633=function peg$c633(){return'#000080ff';},peg$c634="Navy",peg$c635=peg$literalExpectation("Navy",false),peg$c636="oldlace",peg$c637=peg$literalExpectation("oldlace",false),peg$c638=function peg$c638(){return'#fdf5e6ff';},peg$c639="OldLace",peg$c640=peg$literalExpectation("OldLace",false),peg$c641="olive",peg$c642=peg$literalExpectation("olive",false),peg$c643=function peg$c643(){return'#808000ff';},peg$c644="Olive",peg$c645=peg$literalExpectation("Olive",false),peg$c646="olivedrab",peg$c647=peg$literalExpectation("olivedrab",false),peg$c648=function peg$c648(){return'#6b8e23ff';},peg$c649="OliveDrab",peg$c650=peg$literalExpectation("OliveDrab",false),peg$c651="orange",peg$c652=peg$literalExpectation("orange",false),peg$c653=function peg$c653(){return'#ffa500ff';},peg$c654="Orange",peg$c655=peg$literalExpectation("Orange",false),peg$c656="orangered",peg$c657=peg$literalExpectation("orangered",false),peg$c658=function peg$c658(){return'#ff4500ff';},peg$c659="OrangeRed",peg$c660=peg$literalExpectation("OrangeRed",false),peg$c661="orchid",peg$c662=peg$literalExpectation("orchid",false),peg$c663=function peg$c663(){return'#da70d6ff';},peg$c664="Orchid",peg$c665=peg$literalExpectation("Orchid",false),peg$c666="palegoldenrod",peg$c667=peg$literalExpectation("palegoldenrod",false),peg$c668=function peg$c668(){return'#eee8aaff';},peg$c669="PaleGoldenRod",peg$c670=peg$literalExpectation("PaleGoldenRod",false),peg$c671="palegreen",peg$c672=peg$literalExpectation("palegreen",false),peg$c673=function peg$c673(){return'#98fb98ff';},peg$c674="PaleGreen",peg$c675=peg$literalExpectation("PaleGreen",false),peg$c676="paleturquoise",peg$c677=peg$literalExpectation("paleturquoise",false),peg$c678=function peg$c678(){return'#afeeeeff';},peg$c679="PaleTurquoise",peg$c680=peg$literalExpectation("PaleTurquoise",false),peg$c681="palevioletred",peg$c682=peg$literalExpectation("palevioletred",false),peg$c683=function peg$c683(){return'#d87093ff';},peg$c684="PaleVioletRed",peg$c685=peg$literalExpectation("PaleVioletRed",false),peg$c686="papayawhip",peg$c687=peg$literalExpectation("papayawhip",false),peg$c688=function peg$c688(){return'#ffefd5ff';},peg$c689="PapayaWhip",peg$c690=peg$literalExpectation("PapayaWhip",false),peg$c691="peachpuff",peg$c692=peg$literalExpectation("peachpuff",false),peg$c693=function peg$c693(){return'#ffdab9ff';},peg$c694="PeachPuff",peg$c695=peg$literalExpectation("PeachPuff",false),peg$c696="peru",peg$c697=peg$literalExpectation("peru",false),peg$c698=function peg$c698(){return'#cd853fff';},peg$c699="Peru",peg$c700=peg$literalExpectation("Peru",false),peg$c701="pink",peg$c702=peg$literalExpectation("pink",false),peg$c703=function peg$c703(){return'#ffc0cbff';},peg$c704="Pink",peg$c705=peg$literalExpectation("Pink",false),peg$c706="plum",peg$c707=peg$literalExpectation("plum",false),peg$c708=function peg$c708(){return'#dda0ddff';},peg$c709="Plum",peg$c710=peg$literalExpectation("Plum",false),peg$c711="powderblue",peg$c712=peg$literalExpectation("powderblue",false),peg$c713=function peg$c713(){return'#b0e0e6ff';},peg$c714="PowderBlue",peg$c715=peg$literalExpectation("PowderBlue",false),peg$c716="purple",peg$c717=peg$literalExpectation("purple",false),peg$c718=function peg$c718(){return'#800080ff';},peg$c719="Purple",peg$c720=peg$literalExpectation("Purple",false),peg$c721="red",peg$c722=peg$literalExpectation("red",false),peg$c723=function peg$c723(){return'#ff0000ff';},peg$c724="Red",peg$c725=peg$literalExpectation("Red",false),peg$c726="rosybrown",peg$c727=peg$literalExpectation("rosybrown",false),peg$c728=function peg$c728(){return'#bc8f8fff';},peg$c729="RosyBrown",peg$c730=peg$literalExpectation("RosyBrown",false),peg$c731="royalblue",peg$c732=peg$literalExpectation("royalblue",false),peg$c733=function peg$c733(){return'#4169e1ff';},peg$c734="RoyalBlue",peg$c735=peg$literalExpectation("RoyalBlue",false),peg$c736="saddlebrown",peg$c737=peg$literalExpectation("saddlebrown",false),peg$c738=function peg$c738(){return'#8b4513ff';},peg$c739="SaddleBrown",peg$c740=peg$literalExpectation("SaddleBrown",false),peg$c741="salmon",peg$c742=peg$literalExpectation("salmon",false),peg$c743=function peg$c743(){return'#fa8072ff';},peg$c744="Salmon",peg$c745=peg$literalExpectation("Salmon",false),peg$c746="sandybrown",peg$c747=peg$literalExpectation("sandybrown",false),peg$c748=function peg$c748(){return'#f4a460ff';},peg$c749="SandyBrown",peg$c750=peg$literalExpectation("SandyBrown",false),peg$c751="seagreen",peg$c752=peg$literalExpectation("seagreen",false),peg$c753=function peg$c753(){return'#2e8b57ff';},peg$c754="SeaGreen",peg$c755=peg$literalExpectation("SeaGreen",false),peg$c756="seashell",peg$c757=peg$literalExpectation("seashell",false),peg$c758=function peg$c758(){return'#fff5eeff';},peg$c759="SeaShell",peg$c760=peg$literalExpectation("SeaShell",false),peg$c761="sienna",peg$c762=peg$literalExpectation("sienna",false),peg$c763=function peg$c763(){return'#a0522dff';},peg$c764="Sienna",peg$c765=peg$literalExpectation("Sienna",false),peg$c766="silver",peg$c767=peg$literalExpectation("silver",false),peg$c768=function peg$c768(){return'#c0c0c0ff';},peg$c769="Silver",peg$c770=peg$literalExpectation("Silver",false),peg$c771="skyblue",peg$c772=peg$literalExpectation("skyblue",false),peg$c773=function peg$c773(){return'#87ceebff';},peg$c774="SkyBlue",peg$c775=peg$literalExpectation("SkyBlue",false),peg$c776="slateblue",peg$c777=peg$literalExpectation("slateblue",false),peg$c778=function peg$c778(){return'#6a5acdff';},peg$c779="SlateBlue",peg$c780=peg$literalExpectation("SlateBlue",false),peg$c781="slategray",peg$c782=peg$literalExpectation("slategray",false),peg$c783=function peg$c783(){return'#708090ff';},peg$c784="SlateGray",peg$c785=peg$literalExpectation("SlateGray",false),peg$c786="slategrey",peg$c787=peg$literalExpectation("slategrey",false),peg$c788="SlateGrey",peg$c789=peg$literalExpectation("SlateGrey",false),peg$c790="snow",peg$c791=peg$literalExpectation("snow",false),peg$c792=function peg$c792(){return'#fffafaff';},peg$c793="Snow",peg$c794=peg$literalExpectation("Snow",false),peg$c795="springgreen",peg$c796=peg$literalExpectation("springgreen",false),peg$c797=function peg$c797(){return'#00ff7fff';},peg$c798="SpringGreen",peg$c799=peg$literalExpectation("SpringGreen",false),peg$c800="steelblue",peg$c801=peg$literalExpectation("steelblue",false),peg$c802=function peg$c802(){return'#4682b4ff';},peg$c803="SteelBlue",peg$c804=peg$literalExpectation("SteelBlue",false),peg$c805="tan",peg$c806=peg$literalExpectation("tan",false),peg$c807=function peg$c807(){return'#d2b48cff';},peg$c808="Tan",peg$c809=peg$literalExpectation("Tan",false),peg$c810="teal",peg$c811=peg$literalExpectation("teal",false),peg$c812=function peg$c812(){return'#008080ff';},peg$c813="Teal",peg$c814=peg$literalExpectation("Teal",false),peg$c815="thistle",peg$c816=peg$literalExpectation("thistle",false),peg$c817=function peg$c817(){return'#d8bfd8ff';},peg$c818="Thistle",peg$c819=peg$literalExpectation("Thistle",false),peg$c820="tomato",peg$c821=peg$literalExpectation("tomato",false),peg$c822=function peg$c822(){return'#ff6347ff';},peg$c823="Tomato",peg$c824=peg$literalExpectation("Tomato",false),peg$c825="turquoise",peg$c826=peg$literalExpectation("turquoise",false),peg$c827=function peg$c827(){return'#40e0d0ff';},peg$c828="Turquoise",peg$c829=peg$literalExpectation("Turquoise",false),peg$c830="violet",peg$c831=peg$literalExpectation("violet",false),peg$c832=function peg$c832(){return'#ee82eeff';},peg$c833="Violet",peg$c834=peg$literalExpectation("Violet",false),peg$c835="wheat",peg$c836=peg$literalExpectation("wheat",false),peg$c837=function peg$c837(){return'#f5deb3ff';},peg$c838="Wheat",peg$c839=peg$literalExpectation("Wheat",false),peg$c840="white",peg$c841=peg$literalExpectation("white",false),peg$c842=function peg$c842(){return'#ffffffff';},peg$c843="White",peg$c844=peg$literalExpectation("White",false),peg$c845="whitesmoke",peg$c846=peg$literalExpectation("whitesmoke",false),peg$c847=function peg$c847(){return'#f5f5f5ff';},peg$c848="WhiteSmoke",peg$c849=peg$literalExpectation("WhiteSmoke",false),peg$c850="yellow",peg$c851=peg$literalExpectation("yellow",false),peg$c852=function peg$c852(){return'#ffff00ff';},peg$c853="Yellow",peg$c854=peg$literalExpectation("Yellow",false),peg$c855="yellowgreen",peg$c856=peg$literalExpectation("yellowgreen",false),peg$c857=function peg$c857(){return'#9acd32ff';},peg$c858="YellowGreen",peg$c859=peg$literalExpectation("YellowGreen",false),peg$c860="#",peg$c861=peg$literalExpectation("#",false),peg$c862=function peg$c862(r,g,b){return""+r+r+g+g+b+b+"ff";},peg$c863=function peg$c863(r1,r2,g1,g2,b1,b2){return""+r1+r2+g1+g2+b1+b2+"ff";},peg$c864=function peg$c864(r,g,b,a){return""+r+r+g+g+b+b+a+a;},peg$c865=function peg$c865(r1,r2,g1,g2,b1,b2,a1,a2){return""+r1+r2+g1+g2+b1+b2+a1+a2;},peg$c866=peg$otherExpectation("color"),peg$c867="arc_label",peg$c868=peg$literalExpectation("arc_label",false),peg$c869="head_label",peg$c870=peg$literalExpectation("head_label",false),peg$c871="tail_label",peg$c872=peg$literalExpectation("tail_label",false),peg$c873=":",peg$c874=peg$literalExpectation(":",false),peg$c875=";",peg$c876=peg$literalExpectation(";",false),peg$c877=function peg$c877(key,value){return{key:key,value:value};},peg$c878=peg$otherExpectation("single edge color"),peg$c879="edge_color",peg$c880=peg$literalExpectation("edge_color",false),peg$c881=function peg$c881(value){return{key:'single_edge_color',value:value};},peg$c882="{",peg$c883=peg$literalExpectation("{",false),peg$c884="}",peg$c885=peg$literalExpectation("}",false),peg$c886=function peg$c886(items){return items;},peg$c887="%",peg$c888=peg$literalExpectation("%",false),peg$c889=function peg$c889(value){return{key:'arrow probability',value:value};},peg$c890="[",peg$c891=peg$literalExpectation("[",false),peg$c892="]",peg$c893=peg$literalExpectation("]",false),peg$c894=function peg$c894(names){return names.map(function(i){return i[0];});},peg$c895=function peg$c895(r_action,r_prob,l_desc,arrow,r_desc,l_prob,l_action,label,tail){var base={kind:arrow,to:label};if(tail&&tail!==[]){base.se=tail;}if(l_desc){base.l_desc=l_desc;}if(r_desc){base.r_desc=r_desc;}if(l_action){base.l_action=l_action;}if(r_action){base.r_action=r_action;}if(l_prob){base.l_probability=l_prob.value;}if(r_prob){base.r_probability=r_prob.value;}return base;},peg$c896=function peg$c896(label,se){var base={key:'transition',from:label};if(se&&se!==[]){base.se=se;}return base;},peg$c897="whargarbl",peg$c898=peg$literalExpectation("whargarbl",false),peg$c899="todo",peg$c900=peg$literalExpectation("todo",false),peg$c901=function peg$c901(validationkey,value){return{key:validationkey,value:value};},peg$c902="validation",peg$c903=peg$literalExpectation("validation",false),peg$c904="};",peg$c905=peg$literalExpectation("};",false),peg$c906=function peg$c906(validation_items){return{config_kind:"validation",config_items:validation_items||[]};},peg$c907="dot",peg$c908=peg$literalExpectation("dot",false),peg$c909="circo",peg$c910=peg$literalExpectation("circo",false),peg$c911="fdp",peg$c912=peg$literalExpectation("fdp",false),peg$c913="neato",peg$c914=peg$literalExpectation("neato",false),peg$c915="in_shape",peg$c916=peg$literalExpectation("in_shape",false),peg$c917="out_shape",peg$c918=peg$literalExpectation("out_shape",false),peg$c919="node_shape",peg$c920=peg$literalExpectation("node_shape",false),peg$c921="state",peg$c922=peg$literalExpectation("state",false),peg$c923=function peg$c923(state_items){return{config_kind:"state",config_items:state_items||[]};},peg$c924=function peg$c924(actionkey,value){return{key:actionkey,value:value};},peg$c925="action",peg$c926=peg$literalExpectation("action",false),peg$c927=function peg$c927(action_items){return{config_kind:"action",config_items:action_items||[]};},peg$c928=function peg$c928(transitionkey,value){return{key:transitionkey,value:value};},peg$c929=peg$otherExpectation("graph default edge color"),peg$c930=function peg$c930(value){return{key:'graph_default_edge_color',value:value};},peg$c931="transition",peg$c932=peg$literalExpectation("transition",false),peg$c933=function peg$c933(transition_items){return{config_kind:"transition",config_items:transition_items||[]};},peg$c934="graph_layout",peg$c935=peg$literalExpectation("graph_layout",false),peg$c936=function peg$c936(value){return{key:"graph_layout",value:value};},peg$c937="start_states",peg$c938=peg$literalExpectation("start_states",false),peg$c939=function peg$c939(value){return{key:"start_states",value:value};},peg$c940="end_states",peg$c941=peg$literalExpectation("end_states",false),peg$c942=function peg$c942(value){return{key:"end_states",value:value};},peg$c943="graph_bg_color",peg$c944=peg$literalExpectation("graph_bg_color",false),peg$c945=function peg$c945(value){return{key:"graph_bg_color",value:value};},peg$c946=peg$otherExpectation("configuration"),peg$c947="MIT",peg$c948=peg$literalExpectation("MIT",false),peg$c949="BSD 2-clause",peg$c950=peg$literalExpectation("BSD 2-clause",false),peg$c951="BSD 3-clause",peg$c952=peg$literalExpectation("BSD 3-clause",false),peg$c953="Apache 2.0",peg$c954=peg$literalExpectation("Apache 2.0",false),peg$c955="Mozilla 2.0",peg$c956=peg$literalExpectation("Mozilla 2.0",false),peg$c957="Public Domain",peg$c958=peg$literalExpectation("Public Domain",false),peg$c959="GPL v2",peg$c960=peg$literalExpectation("GPL v2",false),peg$c961="GPL v3",peg$c962=peg$literalExpectation("GPL v3",false),peg$c963="LGPL v2.1",peg$c964=peg$literalExpectation("LGPL v2.1",false),peg$c965="LGPL v3.0",peg$c966=peg$literalExpectation("LGPL v3.0",false),peg$c967="color",peg$c968=peg$literalExpectation("color",false),peg$c969=function peg$c969(value){return{key:"state color",value:value};},peg$c970=peg$otherExpectation("state quality"),peg$c971=function peg$c971(name,value){return{key:"state quality",name:name,value:value};},peg$c972=peg$otherExpectation("state definition"),peg$c973=function peg$c973(name,sq){return{key:"State qualities",value:sq};},peg$c974="machine_author",peg$c975=peg$literalExpectation("machine_author",false),peg$c976=function peg$c976(author){return{key:"machine_author",value:author};},peg$c977="machine_contributor",peg$c978=peg$literalExpectation("machine_contributor",false),peg$c979=function peg$c979(contributor){return{key:"machine_contributor",value:contributor};},peg$c980="machine_comment",peg$c981=peg$literalExpectation("machine_comment",false),peg$c982=function peg$c982(comment){return{key:"machine_comment",value:comment};},peg$c983="machine_definition",peg$c984=peg$literalExpectation("machine_definition",false),peg$c985=function peg$c985(definition){return{key:"machine_definition",value:definition};},peg$c986="machine_name",peg$c987=peg$literalExpectation("machine_name",false),peg$c988=function peg$c988(name){return{key:"machine_name",value:name};},peg$c989="machine_reference",peg$c990=peg$literalExpectation("machine_reference",false),peg$c991=function peg$c991(reference){return{key:"machine_reference",value:reference};},peg$c992="machine_version",peg$c993=peg$literalExpectation("machine_version",false),peg$c994=function peg$c994(version){return{key:"machine_version",value:version};},peg$c995="machine_license",peg$c996=peg$literalExpectation("machine_license",false),peg$c997=function peg$c997(license){return{key:"machine_license",value:license};},peg$c998="fsl_version",peg$c999=peg$literalExpectation("fsl_version",false),peg$c1000=function peg$c1000(fsl_version){return{key:"fsl_version",value:fsl_version};},peg$c1001="group",peg$c1002=peg$literalExpectation("group",false),peg$c1003=function peg$c1003(name,nl){return{key:"group definition",value:{name:name,list:nl}};},peg$c1004="/*",peg$c1005=peg$literalExpectation("/*",false),peg$c1006="*/",peg$c1007=peg$literalExpectation("*/",false),peg$c1008=peg$anyExpectation(),peg$c1009=function peg$c1009(){return{key:'comment'};},peg$c1010="//",peg$c1011=peg$literalExpectation("//",false),peg$currPos=0,peg$savedPos=0,peg$posDetailsCache=[{line:1,column:1}],peg$maxFailPos=0,peg$maxFailExpected=[],peg$silentFails=0,peg$result;if("startRule"in options){if(!(options.startRule in peg$startRuleFunctions)){throw new Error("Can't start parsing from rule \""+options.startRule+"\".");}peg$startRuleFunction=peg$startRuleFunctions[options.startRule];}function text(){return input.substring(peg$savedPos,peg$currPos);}function location(){return peg$computeLocation(peg$savedPos,peg$currPos);}function expected(description,location){location=location!==void 0?location:peg$computeLocation(peg$savedPos,peg$currPos);throw peg$buildStructuredError([peg$otherExpectation(description)],input.substring(peg$savedPos,peg$currPos),location);}function error(message,location){location=location!==void 0?location:peg$computeLocation(peg$savedPos,peg$currPos);throw peg$buildSimpleError(message,location);}function peg$literalExpectation(text,ignoreCase){return{type:"literal",text:text,ignoreCase:ignoreCase};}function peg$classExpectation(parts,inverted,ignoreCase){return{type:"class",parts:parts,inverted:inverted,ignoreCase:ignoreCase};}function peg$anyExpectation(){return{type:"any"};}function peg$endExpectation(){return{type:"end"};}function peg$otherExpectation(description){return{type:"other",description:description};}function peg$computePosDetails(pos){var details=peg$posDetailsCache[pos],p;if(details){return details;}else{p=pos-1;while(!peg$posDetailsCache[p]){p--;}details=peg$posDetailsCache[p];details={line:details.line,column:details.column};while(p<pos){if(input.charCodeAt(p)===10){details.line++;details.column=1;}else{details.column++;}p++;}peg$posDetailsCache[pos]=details;return details;}}function peg$computeLocation(startPos,endPos){var startPosDetails=peg$computePosDetails(startPos),endPosDetails=peg$computePosDetails(endPos);return{start:{offset:startPos,line:startPosDetails.line,column:startPosDetails.column},end:{offset:endPos,line:endPosDetails.line,column:endPosDetails.column}};}function peg$fail(expected){if(peg$currPos<peg$maxFailPos){return;}if(peg$currPos>peg$maxFailPos){peg$maxFailPos=peg$currPos;peg$maxFailExpected=[];}peg$maxFailExpected.push(expected);}function peg$buildSimpleError(message,location){return new peg$SyntaxError(message,null,null,location);}function peg$buildStructuredError(expected,found,location){return new peg$SyntaxError(peg$SyntaxError.buildMessage(expected,found),expected,found,location);}function peg$parseDocument(){var s0,s1,s2,s3;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){s2=peg$parseTermList();if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){peg$savedPos=s0;s1=peg$c0(s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseGvizShape(){var s0;if(input.substr(peg$currPos,6)===peg$c1){s0=peg$c1;peg$currPos+=6;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c2);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,9)===peg$c3){s0=peg$c3;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c4);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,6)===peg$c5){s0=peg$c5;peg$currPos+=6;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c6);}}}}return s0;}function peg$parseForwardLightArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c8){s0=peg$c8;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c9);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c7);}}return s0;}function peg$parseTwoWayLightArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,3)===peg$c11){s0=peg$c11;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c12);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c10);}}return s0;}function peg$parseBackLightArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c14){s0=peg$c14;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c15);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c13);}}return s0;}function peg$parseForwardFatArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c17){s0=peg$c17;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c18);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c16);}}return s0;}function peg$parseTwoWayFatArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,3)===peg$c20){s0=peg$c20;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c21);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c19);}}return s0;}function peg$parseBackFatArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c23){s0=peg$c23;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c24);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c22);}}return s0;}function peg$parseForwardTildeArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c26){s0=peg$c26;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c27);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c25);}}return s0;}function peg$parseTwoWayTildeArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,3)===peg$c29){s0=peg$c29;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c30);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c28);}}return s0;}function peg$parseBackTildeArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c32){s0=peg$c32;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c33);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c31);}}return s0;}function peg$parseLightFatArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c35){s0=peg$c35;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c36);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c34);}}return s0;}function peg$parseLightTildeArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c38){s0=peg$c38;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c39);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c37);}}return s0;}function peg$parseFatLightArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c41){s0=peg$c41;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c42);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c40);}}return s0;}function peg$parseFatTildeArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c44){s0=peg$c44;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c45);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c43);}}return s0;}function peg$parseTildeLightArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c47){s0=peg$c47;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c48);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c46);}}return s0;}function peg$parseTildeFatArrow(){var s0,s1;peg$silentFails++;if(input.substr(peg$currPos,4)===peg$c50){s0=peg$c50;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c51);}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c49);}}return s0;}function peg$parseLightArrow(){var s0,s1;peg$silentFails++;s0=peg$parseForwardLightArrow();if(s0===peg$FAILED){s0=peg$parseTwoWayLightArrow();if(s0===peg$FAILED){s0=peg$parseBackLightArrow();}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c52);}}return s0;}function peg$parseFatArrow(){var s0,s1;peg$silentFails++;s0=peg$parseForwardFatArrow();if(s0===peg$FAILED){s0=peg$parseTwoWayFatArrow();if(s0===peg$FAILED){s0=peg$parseBackFatArrow();}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c53);}}return s0;}function peg$parseTildeArrow(){var s0,s1;peg$silentFails++;s0=peg$parseForwardTildeArrow();if(s0===peg$FAILED){s0=peg$parseTwoWayTildeArrow();if(s0===peg$FAILED){s0=peg$parseBackTildeArrow();}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c54);}}return s0;}function peg$parseMixedArrow(){var s0,s1;peg$silentFails++;s0=peg$parseLightFatArrow();if(s0===peg$FAILED){s0=peg$parseLightTildeArrow();if(s0===peg$FAILED){s0=peg$parseFatLightArrow();if(s0===peg$FAILED){s0=peg$parseFatTildeArrow();if(s0===peg$FAILED){s0=peg$parseTildeLightArrow();if(s0===peg$FAILED){s0=peg$parseTildeFatArrow();}}}}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c55);}}return s0;}function peg$parseArrow(){var s0,s1;peg$silentFails++;s0=peg$parseMixedArrow();if(s0===peg$FAILED){s0=peg$parseLightArrow();if(s0===peg$FAILED){s0=peg$parseFatArrow();if(s0===peg$FAILED){s0=peg$parseTildeArrow();}}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c56);}}return s0;}function peg$parseHexDigit(){var s0;if(peg$c57.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c58);}}return s0;}function peg$parseChar(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$parseUnescaped();if(s0===peg$FAILED){s0=peg$currPos;s1=peg$parseEscape();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===34){s2=peg$c59;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c60);}}if(s2===peg$FAILED){if(input.charCodeAt(peg$currPos)===92){s2=peg$c61;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c62);}}if(s2===peg$FAILED){if(input.charCodeAt(peg$currPos)===47){s2=peg$c63;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c64);}}if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===98){s3=peg$c65;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c66);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c67();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===102){s3=peg$c68;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c69);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c70();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===110){s3=peg$c71;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c72);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c73();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===114){s3=peg$c74;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c75);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c76();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===116){s3=peg$c77;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c78);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c79();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===118){s3=peg$c80;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c81);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c82();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===117){s3=peg$c83;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c84);}}if(s3!==peg$FAILED){s4=peg$currPos;s5=peg$currPos;s6=peg$parseHexDigit();if(s6!==peg$FAILED){s7=peg$parseHexDigit();if(s7!==peg$FAILED){s8=peg$parseHexDigit();if(s8!==peg$FAILED){s9=peg$parseHexDigit();if(s9!==peg$FAILED){s6=[s6,s7,s8,s9];s5=s6;}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){s4=input.substring(s4,peg$currPos);}else{s4=s5;}if(s4!==peg$FAILED){peg$savedPos=s2;s3=peg$c85(s4);s2=s3;}else{peg$currPos=s2;s2=peg$FAILED;}}else{peg$currPos=s2;s2=peg$FAILED;}}}}}}}}}}if(s2!==peg$FAILED){peg$savedPos=s0;s1=peg$c86(s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}return s0;}function peg$parseEscape(){var s0;if(input.charCodeAt(peg$currPos)===92){s0=peg$c61;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c62);}}return s0;}function peg$parseQuoteMark(){var s0;if(input.charCodeAt(peg$currPos)===34){s0=peg$c59;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c60);}}return s0;}function peg$parseUnescaped(){var s0;if(peg$c87.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c88);}}return s0;}function peg$parseActionLabelChar(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$parseActionLabelUnescaped();if(s0===peg$FAILED){s0=peg$currPos;s1=peg$parseEscape();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===39){s2=peg$c89;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c90);}}if(s2===peg$FAILED){if(input.charCodeAt(peg$currPos)===92){s2=peg$c61;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c62);}}if(s2===peg$FAILED){if(input.charCodeAt(peg$currPos)===47){s2=peg$c63;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c64);}}if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===98){s3=peg$c65;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c66);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c67();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===102){s3=peg$c68;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c69);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c70();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===110){s3=peg$c71;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c72);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c73();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===114){s3=peg$c74;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c75);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c76();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===116){s3=peg$c77;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c78);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c79();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===118){s3=peg$c80;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c81);}}if(s3!==peg$FAILED){peg$savedPos=s2;s3=peg$c82();}s2=s3;if(s2===peg$FAILED){s2=peg$currPos;if(input.charCodeAt(peg$currPos)===117){s3=peg$c83;peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c84);}}if(s3!==peg$FAILED){s4=peg$currPos;s5=peg$currPos;s6=peg$parseHexDigit();if(s6!==peg$FAILED){s7=peg$parseHexDigit();if(s7!==peg$FAILED){s8=peg$parseHexDigit();if(s8!==peg$FAILED){s9=peg$parseHexDigit();if(s9!==peg$FAILED){s6=[s6,s7,s8,s9];s5=s6;}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){s4=input.substring(s4,peg$currPos);}else{s4=s5;}if(s4!==peg$FAILED){peg$savedPos=s2;s3=peg$c85(s4);s2=s3;}else{peg$currPos=s2;s2=peg$FAILED;}}else{peg$currPos=s2;s2=peg$FAILED;}}}}}}}}}}if(s2!==peg$FAILED){peg$savedPos=s0;s1=peg$c86(s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}return s0;}function peg$parseActionLabelQuoteMark(){var s0;if(input.charCodeAt(peg$currPos)===39){s0=peg$c89;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c90);}}return s0;}function peg$parseActionLabelUnescaped(){var s0;if(peg$c91.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c92);}}return s0;}function peg$parseActionLabel(){var s0,s1,s2,s3;peg$silentFails++;s0=peg$currPos;s1=peg$parseActionLabelQuoteMark();if(s1!==peg$FAILED){s2=[];s3=peg$parseActionLabelChar();while(s3!==peg$FAILED){s2.push(s3);s3=peg$parseActionLabelChar();}if(s2!==peg$FAILED){s3=peg$parseActionLabelQuoteMark();if(s3!==peg$FAILED){peg$savedPos=s0;s1=peg$c94(s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c93);}}return s0;}function peg$parseLineTerminator(){var s0;if(peg$c95.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c96);}}return s0;}function peg$parseWhitespace(){var s0,s1;peg$silentFails++;s0=[];if(peg$c98.test(input.charAt(peg$currPos))){s1=input.charAt(peg$currPos);peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c99);}}while(s1!==peg$FAILED){s0.push(s1);if(peg$c98.test(input.charAt(peg$currPos))){s1=input.charAt(peg$currPos);peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c99);}}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c97);}}return s0;}function peg$parseString(){var s0,s1,s2,s3;peg$silentFails++;s0=peg$currPos;s1=peg$parseQuoteMark();if(s1!==peg$FAILED){s2=[];s3=peg$parseChar();while(s3!==peg$FAILED){s2.push(s3);s3=peg$parseChar();}if(s2!==peg$FAILED){s3=peg$parseQuoteMark();if(s3!==peg$FAILED){peg$savedPos=s0;s1=peg$c94(s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c100);}}return s0;}function peg$parseAtom(){var s0,s1,s2;peg$silentFails++;s0=peg$currPos;s1=[];if(peg$c102.test(input.charAt(peg$currPos))){s2=input.charAt(peg$currPos);peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c103);}}if(s2!==peg$FAILED){while(s2!==peg$FAILED){s1.push(s2);if(peg$c102.test(input.charAt(peg$currPos))){s2=input.charAt(peg$currPos);peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c103);}}}}else{s1=peg$FAILED;}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c104(s1);}s0=s1;peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c101);}}return s0;}function peg$parseLabel(){var s0,s1;peg$silentFails++;s0=peg$parseAtom();if(s0===peg$FAILED){s0=peg$parseString();}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c105);}}return s0;}function peg$parseIntegerLiteral(){var s0,s1,s2,s3;if(input.charCodeAt(peg$currPos)===48){s0=peg$c106;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c107);}}if(s0===peg$FAILED){s0=peg$currPos;s1=peg$parseNonZeroDigit();if(s1!==peg$FAILED){s2=[];s3=peg$parseDecimalDigit();while(s3!==peg$FAILED){s2.push(s3);s3=peg$parseDecimalDigit();}if(s2!==peg$FAILED){s1=[s1,s2];s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}return s0;}function peg$parseDecimalDigit(){var s0;if(peg$c108.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c109);}}return s0;}function peg$parseNonZeroDigit(){var s0;if(peg$c110.test(input.charAt(peg$currPos))){s0=input.charAt(peg$currPos);peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c111);}}return s0;}function peg$parseNonNegNumber(){var s0,s1,s2,s3,s4;peg$silentFails++;s0=peg$currPos;s1=peg$parseIntegerLiteral();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===46){s2=peg$c113;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c114);}}if(s2!==peg$FAILED){s3=[];s4=peg$parseDecimalDigit();while(s4!==peg$FAILED){s3.push(s4);s4=peg$parseDecimalDigit();}if(s3!==peg$FAILED){s4=peg$parseWhitespace();if(s4!==peg$FAILED){peg$savedPos=s0;s1=peg$c115();s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}if(s0===peg$FAILED){s0=peg$currPos;s1=peg$parseIntegerLiteral();if(s1!==peg$FAILED){s2=peg$parseWhitespace();if(s2!==peg$FAILED){peg$savedPos=s0;s1=peg$c115();s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c112);}}return s0;}function peg$parseSemVer(){var s0,s1,s2,s3,s4,s5;s0=peg$currPos;s1=peg$parseIntegerLiteral();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===46){s2=peg$c113;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c114);}}if(s2!==peg$FAILED){s3=peg$parseIntegerLiteral();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===46){s4=peg$c113;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c114);}}if(s4!==peg$FAILED){s5=peg$parseIntegerLiteral();if(s5!==peg$FAILED){peg$savedPos=s0;s1=peg$c116(s1,s3,s5);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseSemVerOper(){var s0;if(input.charCodeAt(peg$currPos)===94){s0=peg$c117;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c118);}}if(s0===peg$FAILED){if(input.charCodeAt(peg$currPos)===126){s0=peg$c119;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c120);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,2)===peg$c121){s0=peg$c121;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c122);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,2)===peg$c23){s0=peg$c23;peg$currPos+=2;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c24);}}if(s0===peg$FAILED){if(input.charCodeAt(peg$currPos)===60){s0=peg$c123;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c124);}}if(s0===peg$FAILED){if(input.charCodeAt(peg$currPos)===62){s0=peg$c125;peg$currPos++;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c126);}}}}}}}return s0;}function peg$parseSemVerRule(){var s0,s1,s2;s0=peg$currPos;s1=peg$parseSemVerOper();if(s1===peg$FAILED){s1=null;}if(s1!==peg$FAILED){s2=peg$parseSemVer();if(s2!==peg$FAILED){s1=[s1,s2];s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseSemVerRange(){var s0,s1,s2;s0=peg$currPos;s1=peg$parseSemVerRule();if(s1!==peg$FAILED){s2=peg$parseSemVerRule();if(s2===peg$FAILED){s2=null;}if(s2!==peg$FAILED){s1=[s1,s2];s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseUrlProtocol(){var s0;if(input.substr(peg$currPos,7)===peg$c127){s0=peg$c127;peg$currPos+=7;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c128);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,8)===peg$c129){s0=peg$c129;peg$currPos+=8;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c130);}}}return s0;}function peg$parseURL(){var s0,s1,s2,s3;s0=peg$currPos;s1=peg$parseUrlProtocol();if(s1!==peg$FAILED){s2=[];if(peg$c131.test(input.charAt(peg$currPos))){s3=input.charAt(peg$currPos);peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c132);}}if(s3!==peg$FAILED){while(s3!==peg$FAILED){s2.push(s3);if(peg$c131.test(input.charAt(peg$currPos))){s3=input.charAt(peg$currPos);peg$currPos++;}else{s3=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c132);}}}}else{s2=peg$FAILED;}if(s2!==peg$FAILED){peg$savedPos=s0;s1=peg$c133(s1);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseSvgColorLabel(){var s0,s1;s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c134){s1=peg$c134;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c135);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c136();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c137){s1=peg$c137;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c138);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c136();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c139){s1=peg$c139;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c140);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c141();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c142){s1=peg$c142;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c143);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c141();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c144){s1=peg$c144;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c145);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c146();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c147){s1=peg$c147;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c148);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c146();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c149){s1=peg$c149;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c150);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c151();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c152){s1=peg$c152;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c153);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c151();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c154){s1=peg$c154;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c155);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c156();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c157){s1=peg$c157;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c158);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c156();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c159){s1=peg$c159;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c160);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c161();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c162){s1=peg$c162;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c163);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c161();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c164){s1=peg$c164;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c165);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c166();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c167){s1=peg$c167;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c168);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c166();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c169){s1=peg$c169;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c170);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c171();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c172){s1=peg$c172;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c173);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c171();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c174){s1=peg$c174;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c175);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c176();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c177){s1=peg$c177;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c178);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c176();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c179){s1=peg$c179;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c180);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c181();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c182){s1=peg$c182;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c183);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c181();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c184){s1=peg$c184;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c185);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c186();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c187){s1=peg$c187;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c188);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c186();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c189){s1=peg$c189;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c190);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c191();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c192){s1=peg$c192;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c193);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c191();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c194){s1=peg$c194;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c195);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c196();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c197){s1=peg$c197;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c198);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c196();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c199){s1=peg$c199;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c200);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c201();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c202){s1=peg$c202;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c203);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c201();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c204){s1=peg$c204;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c205);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c206();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c207){s1=peg$c207;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c208);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c206();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c209){s1=peg$c209;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c210);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c211();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c212){s1=peg$c212;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c213);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c211();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c214){s1=peg$c214;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c215);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c216();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c217){s1=peg$c217;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c218);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c216();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c219){s1=peg$c219;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c220);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c221();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c222){s1=peg$c222;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c223);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c221();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c224){s1=peg$c224;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c225);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c226();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c227){s1=peg$c227;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c228);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c226();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c229){s1=peg$c229;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c230);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c231();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c232){s1=peg$c232;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c233);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c231();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c234){s1=peg$c234;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c235);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c146();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c236){s1=peg$c236;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c237);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c146();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c238){s1=peg$c238;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c239);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c240();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c241){s1=peg$c241;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c242);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c240();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c243){s1=peg$c243;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c244);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c245();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c246){s1=peg$c246;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c247);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c245();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c248){s1=peg$c248;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c249);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c250();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c251){s1=peg$c251;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c252);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c250();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c253){s1=peg$c253;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c254);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c255();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c256){s1=peg$c256;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c257);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c255();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c258){s1=peg$c258;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c259);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c255();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c260){s1=peg$c260;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c261);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c255();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c262){s1=peg$c262;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c263);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c264();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c265){s1=peg$c265;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c266);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c264();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c267){s1=peg$c267;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c268);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c269();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c270){s1=peg$c270;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c271);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c269();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c272){s1=peg$c272;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c273);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c274();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c275){s1=peg$c275;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c276);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c274();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c277){s1=peg$c277;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c278);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c279();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c280){s1=peg$c280;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c281);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c279();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c282){s1=peg$c282;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c283);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c284();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c285){s1=peg$c285;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c286);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c284();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c287){s1=peg$c287;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c288);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c289();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c290){s1=peg$c290;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c291);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c289();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c292){s1=peg$c292;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c293);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c294();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c295){s1=peg$c295;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c296);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c294();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c297){s1=peg$c297;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c298);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c299();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c300){s1=peg$c300;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c301);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c299();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c302){s1=peg$c302;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c303);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c304();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c305){s1=peg$c305;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c306);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c304();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c307){s1=peg$c307;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c308);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c309();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c310){s1=peg$c310;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c311);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c309();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c312){s1=peg$c312;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c313);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c314();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c315){s1=peg$c315;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c316);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c314();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c317){s1=peg$c317;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c318);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c314();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c319){s1=peg$c319;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c320);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c314();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c321){s1=peg$c321;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c322);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c323();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c324){s1=peg$c324;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c325);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c323();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c326){s1=peg$c326;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c327);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c328();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c329){s1=peg$c329;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c330);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c328();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c331){s1=peg$c331;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c332);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c333();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c334){s1=peg$c334;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c335);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c333();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c336){s1=peg$c336;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c337);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c338();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c339){s1=peg$c339;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c340);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c338();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c341){s1=peg$c341;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c342);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c343();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c344){s1=peg$c344;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c345);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c343();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c346){s1=peg$c346;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c347);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c343();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c348){s1=peg$c348;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c349);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c343();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c350){s1=peg$c350;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c351);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c352();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c353){s1=peg$c353;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c354);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c352();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c355){s1=peg$c355;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c356);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c357();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c358){s1=peg$c358;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c359);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c357();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c360){s1=peg$c360;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c361);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c362();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c363){s1=peg$c363;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c364);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c362();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c365){s1=peg$c365;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c366);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c367();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c368){s1=peg$c368;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c369);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c367();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c370){s1=peg$c370;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c371);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c372();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c373){s1=peg$c373;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c374);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c372();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c375){s1=peg$c375;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c376);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c377();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c378){s1=peg$c378;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c379);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c377();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c380){s1=peg$c380;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c381);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c382();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c383){s1=peg$c383;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c384);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c382();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c385){s1=peg$c385;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c386);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c387();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c388){s1=peg$c388;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c389);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c387();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c390){s1=peg$c390;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c391);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c392();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c393){s1=peg$c393;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c394);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c392();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c395){s1=peg$c395;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c396);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c397();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c398){s1=peg$c398;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c399);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c397();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c400){s1=peg$c400;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c401);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c397();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c402){s1=peg$c402;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c403);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c397();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c404){s1=peg$c404;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c405);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c406();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c407){s1=peg$c407;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c408);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c406();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c409){s1=peg$c409;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c410);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c411();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c412){s1=peg$c412;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c413);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c411();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c414){s1=peg$c414;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c415);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c416();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c417){s1=peg$c417;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c418);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c416();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c419){s1=peg$c419;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c420);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c421();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c422){s1=peg$c422;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c423);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c421();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c424){s1=peg$c424;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c425);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c426();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c427){s1=peg$c427;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c428);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c426();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c429){s1=peg$c429;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c430);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c431();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c432){s1=peg$c432;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c433);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c431();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c434){s1=peg$c434;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c435);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c436();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c437){s1=peg$c437;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c438);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c436();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c439){s1=peg$c439;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c440);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c441();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c442){s1=peg$c442;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c443);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c441();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c444){s1=peg$c444;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c445);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c446();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c447){s1=peg$c447;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c448);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c446();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c449){s1=peg$c449;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c450);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c451();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c452){s1=peg$c452;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c453);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c451();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c454){s1=peg$c454;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c455);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c456();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c457){s1=peg$c457;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c458);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c456();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c459){s1=peg$c459;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c460);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c461();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c462){s1=peg$c462;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c463);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c461();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c464){s1=peg$c464;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c465);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c466();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c467){s1=peg$c467;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c468);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c466();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c469){s1=peg$c469;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c470);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c471();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c472){s1=peg$c472;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c473);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c471();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c474){s1=peg$c474;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c475);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c476();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c477){s1=peg$c477;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c478);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c476();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,20)===peg$c479){s1=peg$c479;peg$currPos+=20;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c480);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c481();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,20)===peg$c482){s1=peg$c482;peg$currPos+=20;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c483);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c481();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c484){s1=peg$c484;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c485);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c486();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c487){s1=peg$c487;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c488);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c486();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c489){s1=peg$c489;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c490);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c486();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c491){s1=peg$c491;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c492);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c486();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c493){s1=peg$c493;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c494);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c495();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c496){s1=peg$c496;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c497);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c495();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c498){s1=peg$c498;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c499);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c500();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c501){s1=peg$c501;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c502);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c500();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c503){s1=peg$c503;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c504);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c505();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c506){s1=peg$c506;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c507);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c505();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c508){s1=peg$c508;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c509);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c510();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c511){s1=peg$c511;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c512);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c510();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c513){s1=peg$c513;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c514);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c515();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c516){s1=peg$c516;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c517);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c515();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c518){s1=peg$c518;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c519);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c520();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c521){s1=peg$c521;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c522);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c520();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c523){s1=peg$c523;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c524);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c520();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c525){s1=peg$c525;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c526);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c520();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c527){s1=peg$c527;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c528);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c529();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c530){s1=peg$c530;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c531);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c529();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c532){s1=peg$c532;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c533);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c534();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c535){s1=peg$c535;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c536);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c534();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c537){s1=peg$c537;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c538);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c539();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c540){s1=peg$c540;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c541);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c539();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c542){s1=peg$c542;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c543);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c544();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c545){s1=peg$c545;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c546);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c544();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c547){s1=peg$c547;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c548);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c549();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c550){s1=peg$c550;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c551);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c549();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c552){s1=peg$c552;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c553);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c372();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c554){s1=peg$c554;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c555);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c372();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c556){s1=peg$c556;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c557);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c558();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c559){s1=peg$c559;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c560);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c558();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,16)===peg$c561){s1=peg$c561;peg$currPos+=16;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c562);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c563();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,16)===peg$c564){s1=peg$c564;peg$currPos+=16;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c565);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c563();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c566){s1=peg$c566;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c567);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c568();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c569){s1=peg$c569;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c570);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c568();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c571){s1=peg$c571;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c572);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c573();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c574){s1=peg$c574;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c575);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c573();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c576){s1=peg$c576;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c577);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c578();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c579){s1=peg$c579;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c580);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c578();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c581){s1=peg$c581;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c582);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c583();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,14)===peg$c584){s1=peg$c584;peg$currPos+=14;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c585);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c583();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c586){s1=peg$c586;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c587);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c588();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c589){s1=peg$c589;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c590);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c588();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,17)===peg$c591){s1=peg$c591;peg$currPos+=17;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c592);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c593();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,17)===peg$c594){s1=peg$c594;peg$currPos+=17;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c595);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c593();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c596){s1=peg$c596;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c597);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c598();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c599){s1=peg$c599;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c600);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c598();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c601){s1=peg$c601;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c602);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c603();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,15)===peg$c604){s1=peg$c604;peg$currPos+=15;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c605);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c603();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c606){s1=peg$c606;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c607);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c608();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,12)===peg$c609){s1=peg$c609;peg$currPos+=12;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c610);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c608();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c611){s1=peg$c611;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c612);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c613();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c614){s1=peg$c614;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c615);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c613();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c616){s1=peg$c616;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c617);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c618();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c619){s1=peg$c619;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c620);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c618();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c621){s1=peg$c621;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c622);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c623();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c624){s1=peg$c624;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c625);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c623();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c626){s1=peg$c626;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c627);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c628();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c629){s1=peg$c629;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c630);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c628();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c631){s1=peg$c631;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c632);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c633();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c634){s1=peg$c634;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c635);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c633();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c636){s1=peg$c636;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c637);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c638();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c639){s1=peg$c639;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c640);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c638();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c641){s1=peg$c641;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c642);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c643();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c644){s1=peg$c644;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c645);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c643();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c646){s1=peg$c646;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c647);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c648();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c649){s1=peg$c649;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c650);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c648();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c651){s1=peg$c651;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c652);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c653();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c654){s1=peg$c654;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c655);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c653();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c656){s1=peg$c656;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c657);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c658();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c659){s1=peg$c659;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c660);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c658();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c661){s1=peg$c661;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c662);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c663();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c664){s1=peg$c664;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c665);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c663();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c666){s1=peg$c666;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c667);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c668();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c669){s1=peg$c669;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c670);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c668();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c671){s1=peg$c671;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c672);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c673();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c674){s1=peg$c674;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c675);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c673();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c676){s1=peg$c676;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c677);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c678();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c679){s1=peg$c679;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c680);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c678();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c681){s1=peg$c681;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c682);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c683();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,13)===peg$c684){s1=peg$c684;peg$currPos+=13;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c685);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c683();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c686){s1=peg$c686;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c687);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c688();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c689){s1=peg$c689;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c690);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c688();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c691){s1=peg$c691;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c692);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c693();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c694){s1=peg$c694;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c695);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c693();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c696){s1=peg$c696;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c697);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c698();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c699){s1=peg$c699;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c700);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c698();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c701){s1=peg$c701;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c702);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c703();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c704){s1=peg$c704;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c705);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c703();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c706){s1=peg$c706;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c707);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c708();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c709){s1=peg$c709;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c710);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c708();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c711){s1=peg$c711;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c712);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c713();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c714){s1=peg$c714;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c715);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c713();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c716){s1=peg$c716;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c717);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c718();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c719){s1=peg$c719;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c720);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c718();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,3)===peg$c721){s1=peg$c721;peg$currPos+=3;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c722);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c723();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,3)===peg$c724){s1=peg$c724;peg$currPos+=3;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c725);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c723();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c726){s1=peg$c726;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c727);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c728();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c729){s1=peg$c729;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c730);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c728();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c731){s1=peg$c731;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c732);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c733();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c734){s1=peg$c734;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c735);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c733();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c736){s1=peg$c736;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c737);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c738();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c739){s1=peg$c739;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c740);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c738();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c741){s1=peg$c741;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c742);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c743();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c744){s1=peg$c744;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c745);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c743();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c746){s1=peg$c746;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c747);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c748();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c749){s1=peg$c749;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c750);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c748();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c751){s1=peg$c751;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c752);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c753();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c754){s1=peg$c754;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c755);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c753();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c756){s1=peg$c756;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c757);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c758();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,8)===peg$c759){s1=peg$c759;peg$currPos+=8;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c760);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c758();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c761){s1=peg$c761;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c762);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c763();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c764){s1=peg$c764;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c765);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c763();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c766){s1=peg$c766;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c767);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c768();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c769){s1=peg$c769;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c770);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c768();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c771){s1=peg$c771;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c772);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c773();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c774){s1=peg$c774;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c775);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c773();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c776){s1=peg$c776;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c777);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c778();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c779){s1=peg$c779;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c780);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c778();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c781){s1=peg$c781;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c782);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c783();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c784){s1=peg$c784;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c785);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c783();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c786){s1=peg$c786;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c787);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c783();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c788){s1=peg$c788;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c789);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c783();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c790){s1=peg$c790;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c791);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c792();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c793){s1=peg$c793;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c794);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c792();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c795){s1=peg$c795;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c796);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c797();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c798){s1=peg$c798;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c799);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c797();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c800){s1=peg$c800;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c801);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c802();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c803){s1=peg$c803;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c804);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c802();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,3)===peg$c805){s1=peg$c805;peg$currPos+=3;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c806);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c807();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,3)===peg$c808){s1=peg$c808;peg$currPos+=3;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c809);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c807();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c810){s1=peg$c810;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c811);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c812();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,4)===peg$c813){s1=peg$c813;peg$currPos+=4;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c814);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c812();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c815){s1=peg$c815;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c816);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c817();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,7)===peg$c818){s1=peg$c818;peg$currPos+=7;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c819);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c817();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c820){s1=peg$c820;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c821);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c822();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c823){s1=peg$c823;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c824);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c822();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c825){s1=peg$c825;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c826);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c827();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,9)===peg$c828){s1=peg$c828;peg$currPos+=9;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c829);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c827();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c830){s1=peg$c830;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c831);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c832();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c833){s1=peg$c833;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c834);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c832();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c835){s1=peg$c835;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c836);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c837();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c838){s1=peg$c838;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c839);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c837();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c840){s1=peg$c840;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c841);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c842();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,5)===peg$c843){s1=peg$c843;peg$currPos+=5;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c844);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c842();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c845){s1=peg$c845;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c846);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c847();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,10)===peg$c848){s1=peg$c848;peg$currPos+=10;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c849);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c847();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c850){s1=peg$c850;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c851);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c852();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,6)===peg$c853){s1=peg$c853;peg$currPos+=6;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c854);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c852();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c855){s1=peg$c855;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c856);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c857();}s0=s1;if(s0===peg$FAILED){s0=peg$currPos;if(input.substr(peg$currPos,11)===peg$c858){s1=peg$c858;peg$currPos+=11;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c859);}}if(s1!==peg$FAILED){peg$savedPos=s0;s1=peg$c857();}s0=s1;}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return s0;}function peg$parseSvgColor(){var s0,s1,s2;s0=peg$currPos;s1=peg$parseSvgColorLabel();if(s1!==peg$FAILED){s2=peg$parseWhitespace();if(s2!==peg$FAILED){s1=[s1,s2];s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseRgb3(){var s0,s1,s2,s3,s4,s5;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===35){s1=peg$c860;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c861);}}if(s1!==peg$FAILED){s2=peg$parseHexDigit();if(s2!==peg$FAILED){s3=peg$parseHexDigit();if(s3!==peg$FAILED){s4=peg$parseHexDigit();if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){peg$savedPos=s0;s1=peg$c862(s2,s3,s4);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseRgb6(){var s0,s1,s2,s3,s4,s5,s6,s7,s8;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===35){s1=peg$c860;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c861);}}if(s1!==peg$FAILED){s2=peg$parseHexDigit();if(s2!==peg$FAILED){s3=peg$parseHexDigit();if(s3!==peg$FAILED){s4=peg$parseHexDigit();if(s4!==peg$FAILED){s5=peg$parseHexDigit();if(s5!==peg$FAILED){s6=peg$parseHexDigit();if(s6!==peg$FAILED){s7=peg$parseHexDigit();if(s7!==peg$FAILED){s8=peg$parseWhitespace();if(s8!==peg$FAILED){peg$savedPos=s0;s1=peg$c863(s2,s3,s4,s5,s6,s7);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseRgba4(){var s0,s1,s2,s3,s4,s5,s6;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===35){s1=peg$c860;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c861);}}if(s1!==peg$FAILED){s2=peg$parseHexDigit();if(s2!==peg$FAILED){s3=peg$parseHexDigit();if(s3!==peg$FAILED){s4=peg$parseHexDigit();if(s4!==peg$FAILED){s5=peg$parseHexDigit();if(s5!==peg$FAILED){s6=peg$parseWhitespace();if(s6!==peg$FAILED){peg$savedPos=s0;s1=peg$c864(s2,s3,s4,s5);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseRgba8(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===35){s1=peg$c860;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c861);}}if(s1!==peg$FAILED){s2=peg$parseHexDigit();if(s2!==peg$FAILED){s3=peg$parseHexDigit();if(s3!==peg$FAILED){s4=peg$parseHexDigit();if(s4!==peg$FAILED){s5=peg$parseHexDigit();if(s5!==peg$FAILED){s6=peg$parseHexDigit();if(s6!==peg$FAILED){s7=peg$parseHexDigit();if(s7!==peg$FAILED){s8=peg$parseHexDigit();if(s8!==peg$FAILED){s9=peg$parseHexDigit();if(s9!==peg$FAILED){s10=peg$parseWhitespace();if(s10!==peg$FAILED){peg$savedPos=s0;s1=peg$c865(s2,s3,s4,s5,s6,s7,s8,s9);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseColor(){var s0,s1;peg$silentFails++;s0=peg$parseSvgColor();if(s0===peg$FAILED){s0=peg$parseRgb3();if(s0===peg$FAILED){s0=peg$parseRgb6();if(s0===peg$FAILED){s0=peg$parseRgba4();if(s0===peg$FAILED){s0=peg$parseRgba8();}}}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c866);}}return s0;}function peg$parseArrowItemKey(){var s0;if(input.substr(peg$currPos,9)===peg$c867){s0=peg$c867;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c868);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,10)===peg$c869){s0=peg$c869;peg$currPos+=10;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c870);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,10)===peg$c871){s0=peg$c871;peg$currPos+=10;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c872);}}}}return s0;}function peg$parseArrowItem(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){s2=peg$parseArrowItemKey();if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabel();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c877(s2,s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseSingleEdgeColor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;peg$silentFails++;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,10)===peg$c879){s2=peg$c879;peg$currPos+=10;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c880);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseColor();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c881(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c878);}}return s0;}function peg$parseArrowItems(){var s0,s1;s0=peg$parseSingleEdgeColor();if(s0===peg$FAILED){s0=[];s1=peg$parseArrowItem();if(s1!==peg$FAILED){while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseArrowItem();}}else{s0=peg$FAILED;}}return s0;}function peg$parseArrowDesc(){var s0,s1,s2,s3,s4,s5;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===123){s1=peg$c882;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c883);}}if(s1!==peg$FAILED){s2=peg$parseWhitespace();if(s2!==peg$FAILED){s3=peg$parseArrowItems();if(s3===peg$FAILED){s3=null;}if(s3!==peg$FAILED){s4=peg$parseWhitespace();if(s4!==peg$FAILED){if(input.charCodeAt(peg$currPos)===125){s5=peg$c884;peg$currPos++;}else{s5=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c885);}}if(s5!==peg$FAILED){peg$savedPos=s0;s1=peg$c886(s3);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseArrowProbability(){var s0,s1,s2;s0=peg$currPos;s1=peg$parseNonNegNumber();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===37){s2=peg$c887;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c888);}}if(s2!==peg$FAILED){peg$savedPos=s0;s1=peg$c889(s1);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseLabelList(){var s0,s1,s2,s3,s4,s5,s6;s0=peg$currPos;if(input.charCodeAt(peg$currPos)===91){s1=peg$c890;peg$currPos++;}else{s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c891);}}if(s1!==peg$FAILED){s2=peg$parseWhitespace();if(s2!==peg$FAILED){s3=[];s4=peg$currPos;s5=peg$parseLabel();if(s5!==peg$FAILED){s6=peg$parseWhitespace();if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}while(s4!==peg$FAILED){s3.push(s4);s4=peg$currPos;s5=peg$parseLabel();if(s5!==peg$FAILED){s6=peg$parseWhitespace();if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}}if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===93){s4=peg$c892;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c893);}}if(s4!==peg$FAILED){peg$savedPos=s0;s1=peg$c894(s3);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseLabelOrLabelList(){var s0;s0=peg$parseLabelList();if(s0===peg$FAILED){s0=peg$parseLabel();}return s0;}function peg$parseSubexp(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16,s17,s18;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){s2=peg$parseActionLabel();if(s2===peg$FAILED){s2=null;}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){s4=peg$parseArrowProbability();if(s4===peg$FAILED){s4=null;}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseArrowDesc();if(s6===peg$FAILED){s6=null;}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseArrow();if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){s10=peg$parseArrowDesc();if(s10===peg$FAILED){s10=null;}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){s12=peg$parseArrowProbability();if(s12===peg$FAILED){s12=null;}if(s12!==peg$FAILED){s13=peg$parseWhitespace();if(s13!==peg$FAILED){s14=peg$parseActionLabel();if(s14===peg$FAILED){s14=null;}if(s14!==peg$FAILED){s15=peg$parseWhitespace();if(s15!==peg$FAILED){s16=peg$parseLabelOrLabelList();if(s16!==peg$FAILED){s17=peg$parseWhitespace();if(s17!==peg$FAILED){s18=peg$parseSubexp();if(s18===peg$FAILED){s18=null;}if(s18!==peg$FAILED){peg$savedPos=s0;s1=peg$c895(s2,s4,s6,s8,s10,s12,s14,s16,s18);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseExp(){var s0,s1,s2,s3,s4,s5;s0=peg$currPos;s1=peg$parseLabelOrLabelList();if(s1!==peg$FAILED){s2=peg$parseSubexp();if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s4=peg$c875;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){peg$savedPos=s0;s1=peg$c896(s1,s2);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseValidationKey(){var s0;if(input.substr(peg$currPos,9)===peg$c897){s0=peg$c897;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c898);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,4)===peg$c899){s0=peg$c899;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c900);}}}return s0;}function peg$parseValidationItem(){var s0,s1,s2,s3,s4;s0=peg$currPos;s1=peg$parseValidationKey();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s2=peg$c873;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s2!==peg$FAILED){s3=peg$parseLabel();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s4=peg$c875;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s4!==peg$FAILED){peg$savedPos=s0;s1=peg$c901(s1,s3);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseValidationItems(){var s0,s1;s0=[];s1=peg$parseValidationItem();if(s1!==peg$FAILED){while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseValidationItem();}}else{s0=peg$FAILED;}return s0;}function peg$parseConfigValidation(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,10)===peg$c902){s2=peg$c902;peg$currPos+=10;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c903);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===123){s6=peg$c882;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c883);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseValidationItems();if(s8===peg$FAILED){s8=null;}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c904){s10=peg$c904;peg$currPos+=2;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c905);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){peg$savedPos=s0;s1=peg$c906(s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseGvizLayout(){var s0;if(input.substr(peg$currPos,3)===peg$c907){s0=peg$c907;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c908);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,5)===peg$c909){s0=peg$c909;peg$currPos+=5;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c910);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,3)===peg$c911){s0=peg$c911;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c912);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,5)===peg$c913){s0=peg$c913;peg$currPos+=5;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c914);}}}}}return s0;}function peg$parseStateItemShapeKey(){var s0;if(input.substr(peg$currPos,8)===peg$c915){s0=peg$c915;peg$currPos+=8;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c916);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,9)===peg$c917){s0=peg$c917;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c918);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,10)===peg$c919){s0=peg$c919;peg$currPos+=10;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c920);}}}}return s0;}function peg$parseStateItemShape(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){s2=peg$parseStateItemShapeKey();if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseGvizShape();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c877(s2,s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseStateItems(){var s0,s1;s0=[];s1=peg$parseStateItemShape();if(s1!==peg$FAILED){while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseStateItemShape();}}else{s0=peg$FAILED;}return s0;}function peg$parseConfigState(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,5)===peg$c921){s2=peg$c921;peg$currPos+=5;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c922);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===123){s6=peg$c882;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c883);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseStateItems();if(s8===peg$FAILED){s8=null;}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c904){s10=peg$c904;peg$currPos+=2;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c905);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){peg$savedPos=s0;s1=peg$c923(s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseActionKey(){var s0;if(input.substr(peg$currPos,9)===peg$c897){s0=peg$c897;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c898);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,4)===peg$c899){s0=peg$c899;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c900);}}}return s0;}function peg$parseActionItem(){var s0,s1,s2,s3,s4;s0=peg$currPos;s1=peg$parseActionKey();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s2=peg$c873;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s2!==peg$FAILED){s3=peg$parseLabel();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s4=peg$c875;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s4!==peg$FAILED){peg$savedPos=s0;s1=peg$c924(s1,s3);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseActionItems(){var s0,s1;s0=[];s1=peg$parseActionItem();if(s1!==peg$FAILED){while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseActionItem();}}else{s0=peg$FAILED;}return s0;}function peg$parseConfigAction(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,6)===peg$c925){s2=peg$c925;peg$currPos+=6;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c926);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===123){s6=peg$c882;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c883);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseActionItems();if(s8===peg$FAILED){s8=null;}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c904){s10=peg$c904;peg$currPos+=2;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c905);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){peg$savedPos=s0;s1=peg$c927(s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseTransitionKey(){var s0;if(input.substr(peg$currPos,9)===peg$c897){s0=peg$c897;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c898);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,4)===peg$c899){s0=peg$c899;peg$currPos+=4;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c900);}}}return s0;}function peg$parseTransitionItem(){var s0,s1,s2,s3,s4;s0=peg$currPos;s1=peg$parseTransitionKey();if(s1!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s2=peg$c873;peg$currPos++;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s2!==peg$FAILED){s3=peg$parseLabel();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s4=peg$c875;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s4!==peg$FAILED){peg$savedPos=s0;s1=peg$c928(s1,s3);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseTransitionItems(){var s0,s1;s0=peg$parseGraphDefaultEdgeColor();if(s0===peg$FAILED){s0=[];s1=peg$parseTransitionItem();if(s1!==peg$FAILED){while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseTransitionItem();}}else{s0=peg$FAILED;}}return s0;}function peg$parseGraphDefaultEdgeColor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;peg$silentFails++;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,10)===peg$c879){s2=peg$c879;peg$currPos+=10;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c880);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseColor();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c930(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c929);}}return s0;}function peg$parseConfigTransition(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,10)===peg$c931){s2=peg$c931;peg$currPos+=10;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c932);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===123){s6=peg$c882;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c883);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseTransitionItems();if(s8===peg$FAILED){s8=null;}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c904){s10=peg$c904;peg$currPos+=2;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c905);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){peg$savedPos=s0;s1=peg$c933(s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseConfigGraphLayout(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,12)===peg$c934){s2=peg$c934;peg$currPos+=12;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c935);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseGvizLayout();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c936(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseConfigStartNodes(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,12)===peg$c937){s2=peg$c937;peg$currPos+=12;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c938);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c939(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseConfigEndNodes(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,10)===peg$c940){s2=peg$c940;peg$currPos+=10;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c941);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c942(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseConfigGraphBgColor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,14)===peg$c943){s2=peg$c943;peg$currPos+=14;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c944);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseColor();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c945(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseConfig(){var s0,s1;peg$silentFails++;s0=peg$parseConfigGraphLayout();if(s0===peg$FAILED){s0=peg$parseConfigStartNodes();if(s0===peg$FAILED){s0=peg$parseConfigEndNodes();if(s0===peg$FAILED){s0=peg$parseConfigTransition();if(s0===peg$FAILED){s0=peg$parseConfigAction();if(s0===peg$FAILED){s0=peg$parseConfigState();if(s0===peg$FAILED){s0=peg$parseConfigValidation();if(s0===peg$FAILED){s0=peg$parseConfigGraphBgColor();}}}}}}}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c946);}}return s0;}function peg$parseLicenseOrLabelOrList(){var s0;if(input.substr(peg$currPos,3)===peg$c947){s0=peg$c947;peg$currPos+=3;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c948);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,12)===peg$c949){s0=peg$c949;peg$currPos+=12;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c950);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,12)===peg$c951){s0=peg$c951;peg$currPos+=12;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c952);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,10)===peg$c953){s0=peg$c953;peg$currPos+=10;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c954);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,11)===peg$c955){s0=peg$c955;peg$currPos+=11;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c956);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,13)===peg$c957){s0=peg$c957;peg$currPos+=13;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c958);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,6)===peg$c959){s0=peg$c959;peg$currPos+=6;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c960);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,6)===peg$c961){s0=peg$c961;peg$currPos+=6;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c962);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,9)===peg$c963){s0=peg$c963;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c964);}}if(s0===peg$FAILED){if(input.substr(peg$currPos,9)===peg$c965){s0=peg$c965;peg$currPos+=9;}else{s0=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c966);}}if(s0===peg$FAILED){s0=peg$parseLabel();if(s0===peg$FAILED){s0=peg$parseLabelList();}}}}}}}}}}}return s0;}function peg$parseStateColor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,5)===peg$c967){s2=peg$c967;peg$currPos+=5;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c968);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseColor();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c969(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseArbitraryStateQuality(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;peg$silentFails++;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){s2=peg$parseLabel();if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabel();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c971(s2,s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c970);}}return s0;}function peg$parseStateQuality(){var s0;s0=peg$parseStateColor();if(s0===peg$FAILED){s0=peg$parseArbitraryStateQuality();}return s0;}function peg$parseStateDef(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13;peg$silentFails++;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,5)===peg$c921){s2=peg$c921;peg$currPos+=5;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c922);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){s4=peg$parseLabel();if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===91){s6=peg$c890;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c891);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=[];s9=peg$parseStateQuality();while(s9!==peg$FAILED){s8.push(s9);s9=peg$parseStateQuality();}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.charCodeAt(peg$currPos)===93){s10=peg$c892;peg$currPos++;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c893);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s12=peg$c875;peg$currPos++;}else{s12=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s12!==peg$FAILED){s13=peg$parseWhitespace();if(s13!==peg$FAILED){peg$savedPos=s0;s1=peg$c973(s4,s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}peg$silentFails--;if(s0===peg$FAILED){s1=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c972);}}return s0;}function peg$parseMachineAuthor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,14)===peg$c974){s2=peg$c974;peg$currPos+=14;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c975);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelOrLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c976(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineContributor(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,19)===peg$c977){s2=peg$c977;peg$currPos+=19;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c978);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelOrLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c979(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineComment(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,15)===peg$c980){s2=peg$c980;peg$currPos+=15;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c981);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelOrLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c982(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineDefinition(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,18)===peg$c983){s2=peg$c983;peg$currPos+=18;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c984);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseURL();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c985(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineName(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,12)===peg$c986){s2=peg$c986;peg$currPos+=12;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c987);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabel();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c988(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineReference(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,17)===peg$c989){s2=peg$c989;peg$currPos+=17;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c990);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLabelOrLabelList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c991(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineVersion(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,15)===peg$c992){s2=peg$c992;peg$currPos+=15;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c993);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseSemVer();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c994(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseMachineLicense(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,15)===peg$c995){s2=peg$c995;peg$currPos+=15;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c996);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseLicenseOrLabelOrList();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c997(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseFslVersion(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,11)===peg$c998){s2=peg$c998;peg$currPos+=11;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c999);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s4=peg$c873;peg$currPos++;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){s6=peg$parseSemVer();if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s8=peg$c875;peg$currPos++;}else{s8=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){peg$savedPos=s0;s1=peg$c1000(s6);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseStateGroupDef(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,5)===peg$c1001){s2=peg$c1001;peg$currPos+=5;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1002);}}if(s2!==peg$FAILED){s3=peg$parseWhitespace();if(s3!==peg$FAILED){s4=peg$parseLabel();if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){if(input.charCodeAt(peg$currPos)===58){s6=peg$c873;peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c874);}}if(s6!==peg$FAILED){s7=peg$parseWhitespace();if(s7!==peg$FAILED){s8=peg$parseLabelOrLabelList();if(s8!==peg$FAILED){s9=peg$parseWhitespace();if(s9!==peg$FAILED){if(input.charCodeAt(peg$currPos)===59){s10=peg$c875;peg$currPos++;}else{s10=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c876);}}if(s10!==peg$FAILED){s11=peg$parseWhitespace();if(s11!==peg$FAILED){peg$savedPos=s0;s1=peg$c1003(s4,s8);s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}return s0;}function peg$parseComment(){var s0,s1,s2,s3,s4,s5,s6;s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c1004){s2=peg$c1004;peg$currPos+=2;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1005);}}if(s2!==peg$FAILED){s3=[];s4=peg$currPos;s5=peg$currPos;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c1006){s6=peg$c1006;peg$currPos+=2;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1007);}}peg$silentFails--;if(s6===peg$FAILED){s5=void 0;}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){if(input.length>peg$currPos){s6=input.charAt(peg$currPos);peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1008);}}if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}while(s4!==peg$FAILED){s3.push(s4);s4=peg$currPos;s5=peg$currPos;peg$silentFails++;if(input.substr(peg$currPos,2)===peg$c1006){s6=peg$c1006;peg$currPos+=2;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1007);}}peg$silentFails--;if(s6===peg$FAILED){s5=void 0;}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){if(input.length>peg$currPos){s6=input.charAt(peg$currPos);peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1008);}}if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}}if(s3!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c1006){s4=peg$c1006;peg$currPos+=2;}else{s4=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1007);}}if(s4!==peg$FAILED){s5=peg$parseWhitespace();if(s5!==peg$FAILED){peg$savedPos=s0;s1=peg$c1009();s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}if(s0===peg$FAILED){s0=peg$currPos;s1=peg$parseWhitespace();if(s1!==peg$FAILED){if(input.substr(peg$currPos,2)===peg$c1010){s2=peg$c1010;peg$currPos+=2;}else{s2=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1011);}}if(s2!==peg$FAILED){s3=[];s4=peg$currPos;s5=peg$currPos;peg$silentFails++;s6=peg$parseLineTerminator();peg$silentFails--;if(s6===peg$FAILED){s5=void 0;}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){if(input.length>peg$currPos){s6=input.charAt(peg$currPos);peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1008);}}if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}while(s4!==peg$FAILED){s3.push(s4);s4=peg$currPos;s5=peg$currPos;peg$silentFails++;s6=peg$parseLineTerminator();peg$silentFails--;if(s6===peg$FAILED){s5=void 0;}else{peg$currPos=s5;s5=peg$FAILED;}if(s5!==peg$FAILED){if(input.length>peg$currPos){s6=input.charAt(peg$currPos);peg$currPos++;}else{s6=peg$FAILED;if(peg$silentFails===0){peg$fail(peg$c1008);}}if(s6!==peg$FAILED){s5=[s5,s6];s4=s5;}else{peg$currPos=s4;s4=peg$FAILED;}}else{peg$currPos=s4;s4=peg$FAILED;}}if(s3!==peg$FAILED){s4=peg$parseWhitespace();if(s4!==peg$FAILED){s1=[s1,s2,s3,s4];s0=s1;}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}else{peg$currPos=s0;s0=peg$FAILED;}}return s0;}function peg$parseTerm(){var s0;s0=peg$parseComment();if(s0===peg$FAILED){s0=peg$parseExp();if(s0===peg$FAILED){s0=peg$parseStateDef();if(s0===peg$FAILED){s0=peg$parseMachineName();if(s0===peg$FAILED){s0=peg$parseMachineAuthor();if(s0===peg$FAILED){s0=peg$parseMachineContributor();if(s0===peg$FAILED){s0=peg$parseMachineComment();if(s0===peg$FAILED){s0=peg$parseMachineDefinition();if(s0===peg$FAILED){s0=peg$parseMachineVersion();if(s0===peg$FAILED){s0=peg$parseMachineLicense();if(s0===peg$FAILED){s0=peg$parseStateGroupDef();if(s0===peg$FAILED){s0=peg$parseConfig();}}}}}}}}}}}return s0;}function peg$parseTermList(){var s0,s1;s0=[];s1=peg$parseTerm();while(s1!==peg$FAILED){s0.push(s1);s1=peg$parseTerm();}return s0;}peg$result=peg$startRuleFunction();if(peg$result!==peg$FAILED&&peg$currPos===input.length){return peg$result;}else{if(peg$result!==peg$FAILED&&peg$currPos<input.length){peg$fail(peg$endExpectation());}throw peg$buildStructuredError(peg$maxFailExpected,peg$maxFailPos<input.length?input.charAt(peg$maxFailPos):null,peg$maxFailPos<input.length?peg$computeLocation(peg$maxFailPos,peg$maxFailPos+1):peg$computeLocation(peg$maxFailPos,peg$maxFailPos));}}module.exports={SyntaxError:peg$SyntaxError,parse:peg$parse};
},{}],2:[function(require,module,exports){
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var weighted_rand_select = function weighted_rand_select(options) {
var probability_property = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'probability';
if (!Array.isArray(options)) {
throw new TypeError('options must be a non-empty array of objects');
}
if (!(_typeof(options[0]) === 'object')) {
throw new TypeError('options must be a non-empty array of objects');
}
var frand = function frand(cap) {
return Math.random() * cap;
},
or_one = function or_one(item) {
return item === undefined ? 1 : item;
},
prob_sum = options.reduce(function (acc, val) {
return acc + or_one(val[probability_property]);
}, 0),
rnd = frand(prob_sum);
var cursor = 0,
cursor_sum = 0;
while ((cursor_sum += or_one(options[cursor++][probability_property])) <= rnd) {}
return options[cursor - 1];
};
var seq = function seq(n) {
return new Array(n).fill(true).map(function (_, i) {
return i;
});
};
var histograph = function histograph(a) {
return a.sort().reduce(function (m, v) {
return m.set(v, m.has(v) ? m.get(v) + 1 : 1), m;
}, new Map());
};
var weighted_sample_select = function weighted_sample_select(n, options, probability_property) {
return seq(n).map(function (i) {
return weighted_rand_select(options, probability_property);
});
};
var weighted_histo_key = function weighted_histo_key(n, options, probability_property, extract) {
return histograph(weighted_sample_select(n, options, probability_property).map(function (s) {
return s[extract];
}));
};
exports.seq = seq;
exports.histograph = histograph;
exports.weighted_histo_key = weighted_histo_key;
exports.weighted_rand_select = weighted_rand_select;
exports.weighted_sample_select = weighted_sample_select;
},{}],"jssm":[function(require,module,exports){
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.weighted_histo_key = exports.weighted_sample_select = exports.histograph = exports.weighted_rand_select = exports.seq = exports.arrow_right_kind = exports.arrow_left_kind = exports.arrow_direction = exports.sm = exports.compile = exports.parse = exports.make = exports.Machine = exports.version = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _jssmUtil = require('./jssm-util.js');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
// whargarbl lots of these return arrays could/should be sets
var parse = require('./jssm-dot.js').parse; // eslint-disable-line flowtype/no-weak-types // todo whargarbl remove any
var version = '5.5.0'; // replaced from package.js in build
function arrow_direction(arrow) {
switch (String(arrow)) {
case '->':case '=>':case '~>':
return 'right';
case '<-':case '<=':case '<~':
return 'left';
case '<->':case '<-=>':case '<-~>':
case '<=>':case '<=->':case '<=~>':
case '<~>':case '<~->':case '<~=>':
return 'both';
default:
throw new Error('arrow_direction: unknown arrow type ' + arrow);
}
}
function arrow_left_kind(arrow) {
switch (String(arrow)) {
case '->':case '=>':case '~>':
return 'none';
case '<-':case '<->':case '<-=>':case '<-~>':
return 'legal';
case '<=':case '<=>':case '<=->':case '<=~>':
return 'main';
case '<~':case '<~>':case '<~->':case '<~=>':
return 'forced';
default:
throw new Error('arrow_direction: unknown arrow type ' + arrow);
}
}
function arrow_right_kind(arrow) {
switch (String(arrow)) {
case '<-':case '<=':case '<~':
return 'none';
case '->':case '<->':case '<=->':case '<~->':
return 'legal';
case '=>':case '<=>':case '<-=>':case '<~=>':
return 'main';
case '~>':case '<~>':case '<-~>':case '<=~>':
return 'forced';
default:
throw new Error('arrow_direction: unknown arrow type ' + arrow);
}
}
function compile_rule_transition_step(acc, from, to, this_se, next_se) {
// todo flow describe the parser representation of a transition step extension
var edges = [];
var uFrom = Array.isArray(from) ? from : [from],
uTo = Array.isArray(to) ? to : [to];
uFrom.map(function (f) {
uTo.map(function (t) {
var rk = arrow_right_kind(this_se.kind),
lk = arrow_left_kind(this_se.kind);
var right = {
from: f,
to: t,
kind: rk,
forced_only: rk === 'forced',
main_path: rk === 'main'
};
if (this_se.r_action) {
right.action = this_se.r_action;
}
if (this_se.r_probability) {
right.probability = this_se.r_probability;
}
if (right.kind !== 'none') {
edges.push(right);
}
var left = {
from: t,
to: f,
kind: lk,
forced_only: lk === 'forced',
main_path: lk === 'main'
};
if (this_se.l_action) {
left.action = this_se.l_action;
}
if (this_se.l_probability) {
left.probability = this_se.l_probability;
}
if (left.kind !== 'none') {
edges.push(left);
}
});
});
var new_acc = acc.concat(edges);
if (next_se) {
return compile_rule_transition_step(new_acc, to, next_se.to, next_se, next_se.se);
} else {
return new_acc;
}
}
function compile_rule_handle_transition(rule) {
// todo flow describe the parser representation of a transition
return compile_rule_transition_step([], rule.from, rule.se.to, rule.se, rule.se.se);
}
function compile_rule_handler(rule) {
// todo flow describe the output of the parser
if (rule.key === 'transition') {
return { agg_as: 'transition', val: compile_rule_handle_transition(rule) };
}
var tautologies = ['graph_layout', 'start_states', 'end_states', 'machine_name', 'machine_version', 'machine_comment', 'machine_author', 'machine_contributor', 'machine_definition', 'machine_reference', 'machine_license', 'fsl_version'];
if (tautologies.includes(rule.key)) {
return { agg_as: rule.key, val: rule.value };
}
throw new Error('compile_rule_handler: Unknown rule: ' + JSON.stringify(rule));
}
function compile(tree) {
var _ref;
// todo flow describe the output of the parser
var results = {
graph_layout: [],
transition: [],
start_states: [],
end_states: [],
machine_name: [],
machine_version: []
};
tree.map(function (tr) {
var rule = compile_rule_handler(tr),
agg_as = rule.agg_as,
val = rule.val; // todo better types
results[agg_as] = results[agg_as].concat(val);
});
['graph_layout', 'machine_name', 'machine_version'].map(function (oneOnlyKey) {
if (results[oneOnlyKey].length > 1) {
throw new Error('May only have one ' + oneOnlyKey + ' statement maximum: ' + JSON.stringify(results[oneOnlyKey]));
}
});
var assembled_transitions = (_ref = []).concat.apply(_ref, _toConsumableArray(results['transition']));
var result_cfg = {
// whargarbl should be initial_state : results.initial_state[0],
start_states: results.start_states.length ? results.start_states : [assembled_transitions[0].from],
transitions: assembled_transitions
};
if (results.graph_layout.length) {
result_cfg.layout = results.graph_layout[0];
}
return result_cfg;
}
function make(plan) {
return compile(parse(plan));
}
var Machine = function () {
// whargarbl this badly needs to be broken up, monolith master
function Machine(_ref2) {
var _this = this;
var start_states = _ref2.start_states,
_ref2$complete = _ref2.complete,
complete = _ref2$complete === undefined ? [] : _ref2$complete,
transitions = _ref2.transitions,
_ref2$layout = _ref2.layout,
layout = _ref2$layout === undefined ? 'dot' : _ref2$layout;
_classCallCheck(this, Machine);
this._state = start_states[0];
this._states = new Map();
this._edges = [];
this._edge_map = new Map();
this._named_transitions = new Map();
this._actions = new Map();
this._reverse_actions = new Map();
this._reverse_action_targets = new Map(); // todo
this._layout = layout;
transitions.map(function (tr) {
if (tr.from === undefined) {
throw new Error('transition must define \'from\': ' + JSON.stringify(tr));
}
if (tr.to === undefined) {
throw new Error('transition must define \'to\': ' + JSON.stringify(tr));
}
// get the cursors. what a mess
var cursor_from = _this._states.get(tr.from) || { name: tr.from, from: [], to: [], complete: complete.includes(tr.from) };
if (!_this._states.has(tr.from)) {
_this._new_state(cursor_from);
}
var cursor_to = _this._states.get(tr.to) || { name: tr.to, from: [], to: [], complete: complete.includes(tr.to) };
if (!_this._states.has(tr.to)) {
_this._new_state(cursor_to);
}
// guard against existing connections being re-added
if (cursor_from.to.includes(tr.to)) {
throw new Error('already has ' + JSON.stringify(tr.from) + ' to ' + JSON.stringify(tr.to));
} else {
cursor_from.to.push(tr.to);
cursor_to.from.push(tr.from);
}
// add the edge; note its id
_this._edges.push(tr);
var thisEdgeId = _this._edges.length - 1;
// guard against repeating a transition name
if (tr.name) {
if (_this._named_transitions.has(tr.name)) {
throw new Error('named transition "' + JSON.stringify(tr.name) + '" already created');
} else {
_this._named_transitions.set(tr.name, thisEdgeId);
}
}
// set up the mapping, so that edges can be looked up by endpoint pairs
var from_mapping = _this._edge_map.get(tr.from) || new Map();
if (!_this._edge_map.has(tr.from)) {
_this._edge_map.set(tr.from, from_mapping);
}
// const to_mapping = from_mapping.get(tr.to);
from_mapping.set(tr.to, thisEdgeId); // already checked that this mapping doesn't exist, above
// set up the action mapping, so that actions can be looked up by origin
if (tr.action) {
// forward mapping first by action name
var actionMap = _this._actions.get(tr.action);
if (!actionMap) {
actionMap = new Map();
_this._actions.set(tr.action, actionMap);
}
if (actionMap.has(tr.from)) {
throw new Error('action ' + JSON.stringify(tr.action) + ' already attached to origin ' + JSON.stringify(tr.from));
} else {
actionMap.set(tr.from, thisEdgeId);
}
// reverse mapping first by state origin name
var rActionMap = _this._reverse_actions.get(tr.from);
if (!rActionMap) {
rActionMap = new Map();
_this._reverse_actions.set(tr.from, rActionMap);
}
// no need to test for reverse mapping pre-presence;
// forward mapping already covers collisions
rActionMap.set(tr.action, thisEdgeId);
// reverse mapping first by state target name
if (!_this._reverse_action_targets.has(tr.to)) {
_this._reverse_action_targets.set(tr.to, new Map());
}
/* todo comeback
fundamental problem is roActionMap needs to be a multimap
const roActionMap = this._reverse_action_targets.get(tr.to); // wasteful - already did has - refactor
if (roActionMap) {
if (roActionMap.has(tr.action)) {
throw new Error(`ro-action ${tr.to} already attached to action ${tr.action}`);
} else {
roActionMap.set(tr.action, thisEdgeId);
}
} else {
throw new Error('should be impossible - flow doesn\'t know .set precedes .get yet again. severe error?');
}
*/
}
});
}
_createClass(Machine, [{
key: '_new_state',
value: function _new_state(state_config) {
// whargarbl get that state_config any under control
if (this._states.has(state_config.name)) {
throw new Error('state ' + JSON.stringify(state_config.name) + ' already exists');
}
this._states.set(state_config.name, state_config);
return state_config.name;
}
}, {
key: 'state',
value: function state() {
return this._state;
}
/* whargarbl todo major
when we reimplement this, reintroduce this change to the is_final call
is_changing() : boolean {
return true; // todo whargarbl
}
*/
}, {
key: 'state_is_final',
value: function state_is_final(whichState) {
return this.state_is_terminal(whichState) && this.state_is_complete(whichState);
}
}, {
key: 'is_final',
value: function is_final() {
// return ((!this.is_changing()) && this.state_is_final(this.state()));
return this.state_is_final(this.state());
}
}, {
key: 'layout',
value: function layout() {
return String(this._layout);
}
}, {
key: 'machine_state',
value: function machine_state() {
return {
internal_state_impl_version: 1,
actions: this._actions,
edge_map: this._edge_map,
edges: this._edges,
named_transitions: this._named_transitions,
reverse_actions: this._reverse_actions,
// reverse_action_targets : this._reverse_action_targets,
state: this._state,
states: this._states
};
}
/*
load_machine_state() : boolean {
return false; // todo whargarbl
}
*/
}, {
key: 'states',
value: function states() {
return [].concat(_toConsumableArray(this._states.keys()));
}
}, {
key: 'state_for',
value: function state_for(whichState) {
var state = this._states.get(whichState);
if (state) {
return state;
} else {
throw new Error('no such state ' + JSON.stringify(state));
}
}
}, {
key: 'list_edges',
value: function list_edges() {
return this._edges;
}
}, {
key: 'list_named_transitions',
value: function list_named_transitions() {
return this._named_transitions;
}
}, {
key: 'list_actions',
value: function list_actions() {
return [].concat(_toConsumableArray(this._actions.keys()));
}
}, {
key: 'get_transition_by_state_names',
value: function get_transition_by_state_names(from, to) {
var emg = this._edge_map.get(from);
if (emg) {
return emg.get(to);
} else {
return undefined;
}
}
}, {
key: 'lookup_transition_for',
value: function lookup_transition_for(from, to) {
var id = this.get_transition_by_state_names(from, to);
return id === undefined || id === null ? undefined : this._edges[id];
}
}, {
key: 'list_transitions',
value: function list_transitions() {
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
return { entrances: this.list_entrances(whichState), exits: this.list_exits(whichState) };
}
}, {
key: 'list_entrances',
value: function list_entrances() {
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
return (this._states.get(whichState) || {}).from || [];
}
}, {
key: 'list_exits',
value: function list_exits() {
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
return (this._states.get(whichState) || {}).to || [];
}
}, {
key: 'probable_exits_for',
value: function probable_exits_for(whichState) {
var _this2 = this;
var wstate = this._states.get(whichState);
if (!wstate) {
throw new Error('No such state ' + JSON.stringify(whichState) + ' in probable_exits_for');
}
var wstate_to = wstate.to,
wtf = wstate_to.map(function (ws) {
return _this2.lookup_transition_for(_this2.state(), ws);
}).filter(Boolean);
return wtf;
}
}, {
key: 'probabilistic_transition',
value: function probabilistic_transition() {
var selected = (0, _jssmUtil.weighted_rand_select)(this.probable_exits_for(this.state()));
return this.transition(selected.to);
}
}, {
key: 'probabilistic_walk',
value: function probabilistic_walk(n) {
var _this3 = this;
return (0, _jssmUtil.seq)(n).map(function () {
var state_was = _this3.state();
_this3.probabilistic_transition();
return state_was;
}).concat([this.state()]);
}
}, {
key: 'probabilistic_histo_walk',
value: function probabilistic_histo_walk(n) {
return (0, _jssmUtil.histograph)(this.probabilistic_walk(n));
}
}, {
key: 'actions',
value: function actions() {
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
var wstate = this._reverse_actions.get(whichState);
if (wstate) {
return [].concat(_toConsumableArray(wstate.keys()));
} else {
throw new Error('No such state ' + JSON.stringify(whichState));
}
}
}, {
key: 'list_states_having_action',
value: function list_states_having_action(whichState) {
var wstate = this._actions.get(whichState);
if (wstate) {
return [].concat(_toConsumableArray(wstate.keys()));
} else {
throw new Error('No such state ' + JSON.stringify(whichState));
}
}
// comeback
/*
list_entrance_actions(whichState : mNT = this.state() ) : Array<mNT> {
return [... (this._reverse_action_targets.get(whichState) || new Map()).values()] // wasteful
.map( (edgeId:any) => (this._edges[edgeId] : any)) // whargarbl burn out any
.filter( (o:any) => o.to === whichState)
.map( filtered => filtered.from );
}
*/
}, {
key: 'list_exit_actions',
value: function list_exit_actions() {
var _this4 = this;
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
// these are mNT, not ?mNT
var ra_base = this._reverse_actions.get(whichState);
if (!ra_base) {
throw new Error('No such state ' + JSON.stringify(whichState));
}
return [].concat(_toConsumableArray(ra_base.values())).map(function (edgeId) {
return _this4._edges[edgeId];
}).filter(function (o) {
return o.from === whichState;
}).map(function (filtered) {
return filtered.action;
});
}
}, {
key: 'probable_action_exits',
value: function probable_action_exits() {
var _this5 = this;
var whichState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.state();
// these are mNT
var ra_base = this._reverse_actions.get(whichState);
if (!ra_base) {
throw new Error('No such state ' + JSON.stringify(whichState));
}
return [].concat(_toConsumableArray(ra_base.values())).map(function (edgeId) {
return _this5._edges[edgeId];
}).filter(function (o) {
return o.from === whichState;
}).map(function (filtered) {
return { action: filtered.action,
probability: filtered.probability };
});
}
}, {
key: 'is_unenterable',
value: function is_unenterable(whichState) {
// whargarbl should throw on unknown state
return this.list_entrances(whichState).length === 0;
}
}, {
key: 'has_unenterables',
value: function has_unenterables() {
var _this6 = this;
return this.states().some(function (x) {
return _this6.is_unenterable(x);
});
}
}, {
key: 'is_terminal',
value: function is_terminal() {
return this.state_is_terminal(this.state());
}
}, {
key: 'state_is_terminal',
value: function state_is_terminal(whichState) {
// whargarbl should throw on unknown state
return this.list_exits(whichState).length === 0;
}
}, {
key: 'has_terminals',
value: function has_terminals() {
var _this7 = this;
return this.states().some(function (x) {
return _this7.state_is_terminal(x);
});
}
}, {
key: 'is_complete',
value: function is_complete() {
return this.state_is_complete(this.state());
}
}, {
key: 'state_is_complete',
value: function state_is_complete(whichState) {
var wstate = this._states.get(whichState);
if (wstate) {
return wstate.complete;
} else {
throw new Error('No such state ' + JSON.stringify(whichState));
}
}
}, {
key: 'has_completes',
value: function has_completes() {
var _this8 = this;
return this.states().some(function (x) {
return _this8.state_is_complete(x);
});
}
}, {
key: 'action',
value: function action(name, newData) {
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
// todo major incomplete whargarbl comeback
if (this.valid_action(name, newData)) {
var edge = this.current_action_edge_for(name);
this._state = edge.to;
return true;
} else {
return false;
}
}
}, {
key: 'transition',
value: function transition(newState, newData) {
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
// todo major incomplete whargarbl comeback
if (this.valid_transition(newState, newData)) {
this._state = newState;
return true;
} else {
return false;
}
}
// can leave machine in inconsistent state. generally do not use
}, {
key: 'force_transition',
value: function force_transition(newState, newData) {
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
// todo major incomplete whargarbl comeback
if (this.valid_force_transition(newState, newData)) {
this._state = newState;
return true;
} else {
return false;
}
}
}, {
key: 'current_action_for',
value: function current_action_for(action) {
var action_base = this._actions.get(action);
return action_base ? action_base.get(this.state()) : undefined;
}
}, {
key: 'current_action_edge_for',
value: function current_action_edge_for(action) {
var idx = this.current_action_for(action);
if (idx === undefined || idx === null) {
throw new Error('No such action ' + JSON.stringify(action));
}
return this._edges[idx];
}
}, {
key: 'valid_action',
value: function valid_action(action, _newData) {
// todo comeback unignore newData
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
// todo major incomplete whargarbl comeback
return this.current_action_for(action) !== undefined;
}
}, {
key: 'valid_transition',
value: function valid_transition(newState, _newData) {
// todo comeback unignore newData
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
var transition_for = this.lookup_transition_for(this.state(), newState);
if (!transition_for) {
return false;
}
if (transition_for.forced_only) {
return false;
}
return true;
}
}, {
key: 'valid_force_transition',
value: function valid_force_transition(newState, _newData) {
// todo comeback unignore newData
// todo whargarbl implement hooks
// todo whargarbl implement data stuff
// todo major incomplete whargarbl comeback
return this.lookup_transition_for(this.state(), newState) !== undefined;
}
}]);
return Machine;
}();
function sm(template_strings /* , arguments */) {
var _arguments = arguments;
// foo`a${1}b${2}c` will come in as (['a','b','c'],1,2)
// this includes when a and c are empty strings
// therefore template_strings will always have one more el than template_args
// therefore map the smaller container and toss the last one on on the way out
return new Machine(make(template_strings.reduce(
// in general avoiding `arguments` is smart. however with the template
// string notation, as designed, it's not really worth the hassle
/* eslint-disable fp/no-arguments */
/* eslint-disable prefer-rest-params */
function (acc, val, idx) {
return '' + acc + _arguments[idx] + val;
} // arguments[0] is never loaded, so args doesn't need to be gated
/* eslint-enable prefer-rest-params */
/* eslint-enable fp/no-arguments */
)));
}
exports.version = version;
exports.Machine = Machine;
exports.make = make;
exports.parse = parse;
exports.compile = compile;
exports.sm = sm;
exports.arrow_direction = arrow_direction;
exports.arrow_left_kind = arrow_left_kind;
exports.arrow_right_kind = arrow_right_kind;
exports.seq = _jssmUtil.seq;
exports.weighted_rand_select = _jssmUtil.weighted_rand_select;
exports.histograph = _jssmUtil.histograph;
exports.weighted_sample_select = _jssmUtil.weighted_sample_select;
exports.weighted_histo_key = _jssmUtil.weighted_histo_key;
},{"./jssm-dot.js":1,"./jssm-util.js":2}]},{},[]);