1# -*- text -*-
2# Parsing Expression Grammar 'TEMPLATE'.
3# Generated for unknown, from file 'TEST'
4
5#
6# Grammar Start Expression
7#
8
9<<MAIN>>:
10         call              sym_Grammar
11         halt
12
13#
14# leaf Symbol 'ALNUM'
15#
16
17sym_ALNUM:
18# x
19#     '<'
20#     'a'
21#     'l'
22#     'n'
23#     'u'
24#     'm'
25#     '>'
26#     (WHITESPACE)
27
28         symbol_restore    ALNUM
29  found! jump              found_13
30         loc_push
31
32         call              sequence_10
33
34   fail! value_clear
35     ok! value_leaf        ALNUM
36         symbol_save       ALNUM
37         error_nonterminal ALNUM
38         loc_pop_discard
39
40found_13:
41     ok! ast_value_push
42         return
43
44sequence_10:
45# x
46#     '<'
47#     'a'
48#     'l'
49#     'n'
50#     'u'
51#     'm'
52#     '>'
53#     (WHITESPACE)
54
55         loc_push
56         error_clear
57
58         error_push
59
60         input_next        "t <"
61     ok! test_char         "<"
62
63         error_pop_merge
64   fail! jump              failed_11
65         error_push
66
67         input_next        "t a"
68     ok! test_char         "a"
69
70         error_pop_merge
71   fail! jump              failed_11
72         error_push
73
74         input_next        "t l"
75     ok! test_char         "l"
76
77         error_pop_merge
78   fail! jump              failed_11
79         error_push
80
81         input_next        "t n"
82     ok! test_char         "n"
83
84         error_pop_merge
85   fail! jump              failed_11
86         error_push
87
88         input_next        "t u"
89     ok! test_char         "u"
90
91         error_pop_merge
92   fail! jump              failed_11
93         error_push
94
95         input_next        "t m"
96     ok! test_char         "m"
97
98         error_pop_merge
99   fail! jump              failed_11
100         error_push
101
102         input_next        "t >"
103     ok! test_char         ">"
104
105         error_pop_merge
106   fail! jump              failed_11
107         error_push
108
109         call              sym_WHITESPACE
110
111         error_pop_merge
112   fail! jump              failed_11
113
114         loc_pop_discard
115         return
116
117failed_11:
118         loc_pop_rewind
119         return
120#
121# leaf Symbol 'ALPHA'
122#
123
124sym_ALPHA:
125# x
126#     '<'
127#     'a'
128#     'l'
129#     'p'
130#     'h'
131#     'a'
132#     '>'
133#     (WHITESPACE)
134
135         symbol_restore    ALPHA
136  found! jump              found_26
137         loc_push
138
139         call              sequence_23
140
141   fail! value_clear
142     ok! value_leaf        ALPHA
143         symbol_save       ALPHA
144         error_nonterminal ALPHA
145         loc_pop_discard
146
147found_26:
148     ok! ast_value_push
149         return
150
151sequence_23:
152# x
153#     '<'
154#     'a'
155#     'l'
156#     'p'
157#     'h'
158#     'a'
159#     '>'
160#     (WHITESPACE)
161
162         loc_push
163         error_clear
164
165         error_push
166
167         input_next        "t <"
168     ok! test_char         "<"
169
170         error_pop_merge
171   fail! jump              failed_24
172         error_push
173
174         input_next        "t a"
175     ok! test_char         "a"
176
177         error_pop_merge
178   fail! jump              failed_24
179         error_push
180
181         input_next        "t l"
182     ok! test_char         "l"
183
184         error_pop_merge
185   fail! jump              failed_24
186         error_push
187
188         input_next        "t p"
189     ok! test_char         "p"
190
191         error_pop_merge
192   fail! jump              failed_24
193         error_push
194
195         input_next        "t h"
196     ok! test_char         "h"
197
198         error_pop_merge
199   fail! jump              failed_24
200         error_push
201
202         input_next        "t a"
203     ok! test_char         "a"
204
205         error_pop_merge
206   fail! jump              failed_24
207         error_push
208
209         input_next        "t >"
210     ok! test_char         ">"
211
212         error_pop_merge
213   fail! jump              failed_24
214         error_push
215
216         call              sym_WHITESPACE
217
218         error_pop_merge
219   fail! jump              failed_24
220
221         loc_pop_discard
222         return
223
224failed_24:
225         loc_pop_rewind
226         return
227#
228# leaf Symbol 'AND'
229#
230
231sym_AND:
232# x
233#     '&'
234#     (WHITESPACE)
235
236         symbol_restore    AND
237  found! jump              found_33
238         loc_push
239
240         call              sequence_30
241
242   fail! value_clear
243     ok! value_leaf        AND
244         symbol_save       AND
245         error_nonterminal AND
246         loc_pop_discard
247
248found_33:
249     ok! ast_value_push
250         return
251
252sequence_30:
253# x
254#     '&'
255#     (WHITESPACE)
256
257         loc_push
258         error_clear
259
260         error_push
261
262         input_next        "t &"
263     ok! test_char         "&"
264
265         error_pop_merge
266   fail! jump              failed_31
267         error_push
268
269         call              sym_WHITESPACE
270
271         error_pop_merge
272   fail! jump              failed_31
273
274         loc_pop_discard
275         return
276
277failed_31:
278         loc_pop_rewind
279         return
280#
281# void Symbol 'APOSTROPH'
282#
283
284sym_APOSTROPH:
285# '''
286
287         symbol_restore    APOSTROPH
288  found! return
289         loc_push
290
291         input_next        "t '"
292     ok! test_char         "'"
293
294         value_clear
295         symbol_save       APOSTROPH
296         error_nonterminal APOSTROPH
297         loc_pop_discard
298         return
299#
300# leaf Symbol 'ASCII'
301#
302
303sym_ASCII:
304# x
305#     '<'
306#     'a'
307#     's'
308#     'c'
309#     'i'
310#     'i'
311#     '>'
312#     (WHITESPACE)
313
314         symbol_restore    ASCII
315  found! jump              found_48
316         loc_push
317
318         call              sequence_45
319
320   fail! value_clear
321     ok! value_leaf        ASCII
322         symbol_save       ASCII
323         error_nonterminal ASCII
324         loc_pop_discard
325
326found_48:
327     ok! ast_value_push
328         return
329
330sequence_45:
331# x
332#     '<'
333#     'a'
334#     's'
335#     'c'
336#     'i'
337#     'i'
338#     '>'
339#     (WHITESPACE)
340
341         loc_push
342         error_clear
343
344         error_push
345
346         input_next        "t <"
347     ok! test_char         "<"
348
349         error_pop_merge
350   fail! jump              failed_46
351         error_push
352
353         input_next        "t a"
354     ok! test_char         "a"
355
356         error_pop_merge
357   fail! jump              failed_46
358         error_push
359
360         input_next        "t s"
361     ok! test_char         "s"
362
363         error_pop_merge
364   fail! jump              failed_46
365         error_push
366
367         input_next        "t c"
368     ok! test_char         "c"
369
370         error_pop_merge
371   fail! jump              failed_46
372         error_push
373
374         input_next        "t i"
375     ok! test_char         "i"
376
377         error_pop_merge
378   fail! jump              failed_46
379         error_push
380
381         input_next        "t i"
382     ok! test_char         "i"
383
384         error_pop_merge
385   fail! jump              failed_46
386         error_push
387
388         input_next        "t >"
389     ok! test_char         ">"
390
391         error_pop_merge
392   fail! jump              failed_46
393         error_push
394
395         call              sym_WHITESPACE
396
397         error_pop_merge
398   fail! jump              failed_46
399
400         loc_pop_discard
401         return
402
403failed_46:
404         loc_pop_rewind
405         return
406#
407# value Symbol 'Attribute'
408#
409
410sym_Attribute:
411# x
412#     /
413#         (VOID)
414#         (LEAF)
415#     (COLON)
416
417         symbol_restore    Attribute
418  found! jump              found_59
419         loc_push
420         ast_push
421
422         call              sequence_56
423
424   fail! value_clear
425     ok! value_reduce      Attribute
426         symbol_save       Attribute
427         error_nonterminal Attribute
428         ast_pop_rewind
429         loc_pop_discard
430
431found_59:
432     ok! ast_value_push
433         return
434
435sequence_56:
436# x
437#     /
438#         (VOID)
439#         (LEAF)
440#     (COLON)
441
442         ast_push
443         loc_push
444         error_clear
445
446         error_push
447
448         call              choice_53
449
450         error_pop_merge
451   fail! jump              failed_57
452         error_push
453
454         call              sym_COLON
455
456         error_pop_merge
457   fail! jump              failed_57
458
459         ast_pop_discard
460         loc_pop_discard
461         return
462
463failed_57:
464         ast_pop_rewind
465         loc_pop_rewind
466         return
467
468choice_53:
469# /
470#     (VOID)
471#     (LEAF)
472
473         error_clear
474
475         ast_push
476         loc_push
477         error_push
478
479         call              sym_VOID
480
481         error_pop_merge
482     ok! jump              ok_52
483
484         ast_pop_rewind
485         loc_pop_rewind
486         ast_push
487         loc_push
488         error_push
489
490         call              sym_LEAF
491
492         error_pop_merge
493     ok! jump              ok_52
494
495         ast_pop_rewind
496         loc_pop_rewind
497         status_fail
498         return
499
500ok_52:
501         ast_pop_discard
502         loc_pop_discard
503         return
504#
505# value Symbol 'Char'
506#
507
508sym_Char:
509# /
510#     (CharSpecial)
511#     (CharOctalFull)
512#     (CharOctalPart)
513#     (CharUnicode)
514#     (CharUnescaped)
515
516         symbol_restore    Char
517  found! jump              found_69
518         loc_push
519         ast_push
520
521         call              choice_67
522
523   fail! value_clear
524     ok! value_reduce      Char
525         symbol_save       Char
526         error_nonterminal Char
527         ast_pop_rewind
528         loc_pop_discard
529
530found_69:
531     ok! ast_value_push
532         return
533
534choice_67:
535# /
536#     (CharSpecial)
537#     (CharOctalFull)
538#     (CharOctalPart)
539#     (CharUnicode)
540#     (CharUnescaped)
541
542         error_clear
543
544         ast_push
545         loc_push
546         error_push
547
548         call              sym_CharSpecial
549
550         error_pop_merge
551     ok! jump              ok_66
552
553         ast_pop_rewind
554         loc_pop_rewind
555         ast_push
556         loc_push
557         error_push
558
559         call              sym_CharOctalFull
560
561         error_pop_merge
562     ok! jump              ok_66
563
564         ast_pop_rewind
565         loc_pop_rewind
566         ast_push
567         loc_push
568         error_push
569
570         call              sym_CharOctalPart
571
572         error_pop_merge
573     ok! jump              ok_66
574
575         ast_pop_rewind
576         loc_pop_rewind
577         ast_push
578         loc_push
579         error_push
580
581         call              sym_CharUnicode
582
583         error_pop_merge
584     ok! jump              ok_66
585
586         ast_pop_rewind
587         loc_pop_rewind
588         ast_push
589         loc_push
590         error_push
591
592         call              sym_CharUnescaped
593
594         error_pop_merge
595     ok! jump              ok_66
596
597         ast_pop_rewind
598         loc_pop_rewind
599         status_fail
600         return
601
602ok_66:
603         ast_pop_discard
604         loc_pop_discard
605         return
606#
607# leaf Symbol 'CharOctalFull'
608#
609
610sym_CharOctalFull:
611# x
612#     '\'
613#     range (0 .. 2)
614#     range (0 .. 7)
615#     range (0 .. 7)
616
617         symbol_restore    CharOctalFull
618  found! jump              found_78
619         loc_push
620
621         call              sequence_75
622
623   fail! value_clear
624     ok! value_leaf        CharOctalFull
625         symbol_save       CharOctalFull
626         error_nonterminal CharOctalFull
627         loc_pop_discard
628
629found_78:
630     ok! ast_value_push
631         return
632
633sequence_75:
634# x
635#     '\'
636#     range (0 .. 2)
637#     range (0 .. 7)
638#     range (0 .. 7)
639
640         loc_push
641         error_clear
642
643         error_push
644
645         input_next        "t \"
646     ok! test_char         "\"
647
648         error_pop_merge
649   fail! jump              failed_76
650         error_push
651
652         input_next        ".. 0 2"
653     ok! test_range        "0"   "2"
654
655         error_pop_merge
656   fail! jump              failed_76
657         error_push
658
659         input_next        ".. 0 7"
660     ok! test_range        "0"   "7"
661
662         error_pop_merge
663   fail! jump              failed_76
664         error_push
665
666         input_next        ".. 0 7"
667     ok! test_range        "0"   "7"
668
669         error_pop_merge
670   fail! jump              failed_76
671
672         loc_pop_discard
673         return
674
675failed_76:
676         loc_pop_rewind
677         return
678#
679# leaf Symbol 'CharOctalPart'
680#
681
682sym_CharOctalPart:
683# x
684#     '\'
685#     range (0 .. 7)
686#     ?
687#         range (0 .. 7)
688
689         symbol_restore    CharOctalPart
690  found! jump              found_88
691         loc_push
692
693         call              sequence_85
694
695   fail! value_clear
696     ok! value_leaf        CharOctalPart
697         symbol_save       CharOctalPart
698         error_nonterminal CharOctalPart
699         loc_pop_discard
700
701found_88:
702     ok! ast_value_push
703         return
704
705sequence_85:
706# x
707#     '\'
708#     range (0 .. 7)
709#     ?
710#         range (0 .. 7)
711
712         loc_push
713         error_clear
714
715         error_push
716
717         input_next        "t \"
718     ok! test_char         "\"
719
720         error_pop_merge
721   fail! jump              failed_86
722         error_push
723
724         input_next        ".. 0 7"
725     ok! test_range        "0"   "7"
726
727         error_pop_merge
728   fail! jump              failed_86
729         error_push
730
731         call              optional_83
732
733         error_pop_merge
734   fail! jump              failed_86
735
736         loc_pop_discard
737         return
738
739failed_86:
740         loc_pop_rewind
741         return
742
743optional_83:
744# ?
745#     range (0 .. 7)
746
747         loc_push
748         error_push
749
750         input_next        ".. 0 7"
751     ok! test_range        "0"   "7"
752
753         error_pop_merge
754   fail! loc_pop_rewind
755     ok! loc_pop_discard
756         status_ok
757         return
758#
759# leaf Symbol 'CharSpecial'
760#
761
762sym_CharSpecial:
763# x
764#     '\'
765#     /
766#         'n'
767#         'r'
768#         't'
769#         '''
770#         '\"'
771#         '['
772#         ']'
773#         '\'
774
775         symbol_restore    CharSpecial
776  found! jump              found_105
777         loc_push
778
779         call              sequence_102
780
781   fail! value_clear
782     ok! value_leaf        CharSpecial
783         symbol_save       CharSpecial
784         error_nonterminal CharSpecial
785         loc_pop_discard
786
787found_105:
788     ok! ast_value_push
789         return
790
791sequence_102:
792# x
793#     '\'
794#     /
795#         'n'
796#         'r'
797#         't'
798#         '''
799#         '\"'
800#         '['
801#         ']'
802#         '\'
803
804         loc_push
805         error_clear
806
807         error_push
808
809         input_next        "t \"
810     ok! test_char         "\"
811
812         error_pop_merge
813   fail! jump              failed_103
814         error_push
815
816         call              choice_100
817
818         error_pop_merge
819   fail! jump              failed_103
820
821         loc_pop_discard
822         return
823
824failed_103:
825         loc_pop_rewind
826         return
827
828choice_100:
829# /
830#     'n'
831#     'r'
832#     't'
833#     '''
834#     '\"'
835#     '['
836#     ']'
837#     '\'
838
839         error_clear
840
841         loc_push
842         error_push
843
844         input_next        "t n"
845     ok! test_char         "n"
846
847         error_pop_merge
848     ok! jump              oknoast_99
849
850         loc_pop_rewind
851         loc_push
852         error_push
853
854         input_next        "t r"
855     ok! test_char         "r"
856
857         error_pop_merge
858     ok! jump              oknoast_99
859
860         loc_pop_rewind
861         loc_push
862         error_push
863
864         input_next        "t t"
865     ok! test_char         "t"
866
867         error_pop_merge
868     ok! jump              oknoast_99
869
870         loc_pop_rewind
871         loc_push
872         error_push
873
874         input_next        "t '"
875     ok! test_char         "'"
876
877         error_pop_merge
878     ok! jump              oknoast_99
879
880         loc_pop_rewind
881         loc_push
882         error_push
883
884         input_next        "t ""
885     ok! test_char         """
886
887         error_pop_merge
888     ok! jump              oknoast_99
889
890         loc_pop_rewind
891         loc_push
892         error_push
893
894         input_next        "t ["
895     ok! test_char         "["
896
897         error_pop_merge
898     ok! jump              oknoast_99
899
900         loc_pop_rewind
901         loc_push
902         error_push
903
904         input_next        "t ]"
905     ok! test_char         "]"
906
907         error_pop_merge
908     ok! jump              oknoast_99
909
910         loc_pop_rewind
911         loc_push
912         error_push
913
914         input_next        "t \"
915     ok! test_char         "\"
916
917         error_pop_merge
918     ok! jump              oknoast_99
919
920         loc_pop_rewind
921         status_fail
922         return
923
924oknoast_99:
925         loc_pop_discard
926         return
927#
928# leaf Symbol 'CharUnescaped'
929#
930
931sym_CharUnescaped:
932# x
933#     !
934#         '\'
935#     <dot>
936
937         symbol_restore    CharUnescaped
938  found! jump              found_114
939         loc_push
940
941         call              sequence_111
942
943   fail! value_clear
944     ok! value_leaf        CharUnescaped
945         symbol_save       CharUnescaped
946         error_nonterminal CharUnescaped
947         loc_pop_discard
948
949found_114:
950     ok! ast_value_push
951         return
952
953sequence_111:
954# x
955#     !
956#         '\'
957#     <dot>
958
959         loc_push
960         error_clear
961
962         error_push
963
964         call              notahead_108
965
966         error_pop_merge
967   fail! jump              failed_112
968         error_push
969
970         input_next        "dot"
971
972         error_pop_merge
973   fail! jump              failed_112
974
975         loc_pop_discard
976         return
977
978failed_112:
979         loc_pop_rewind
980         return
981
982notahead_108:
983# !
984#     '\'
985
986         loc_push
987
988         input_next        "t \"
989     ok! test_char         "\"
990
991         loc_pop_rewind
992         status_negate
993         return
994#
995# leaf Symbol 'CharUnicode'
996#
997
998sym_CharUnicode:
999# x
1000#     '\'
1001#     'u'
1002#     <xdigit>
1003#     ?
1004#         x
1005#             <xdigit>
1006#             ?
1007#                 x
1008#                     <xdigit>
1009#                     ?
1010#                         <xdigit>
1011
1012         symbol_restore    CharUnicode
1013  found! jump              found_137
1014         loc_push
1015
1016         call              sequence_134
1017
1018   fail! value_clear
1019     ok! value_leaf        CharUnicode
1020         symbol_save       CharUnicode
1021         error_nonterminal CharUnicode
1022         loc_pop_discard
1023
1024found_137:
1025     ok! ast_value_push
1026         return
1027
1028sequence_134:
1029# x
1030#     '\'
1031#     'u'
1032#     <xdigit>
1033#     ?
1034#         x
1035#             <xdigit>
1036#             ?
1037#                 x
1038#                     <xdigit>
1039#                     ?
1040#                         <xdigit>
1041
1042         loc_push
1043         error_clear
1044
1045         error_push
1046
1047         input_next        "t \"
1048     ok! test_char         "\"
1049
1050         error_pop_merge
1051   fail! jump              failed_135
1052         error_push
1053
1054         input_next        "t u"
1055     ok! test_char         "u"
1056
1057         error_pop_merge
1058   fail! jump              failed_135
1059         error_push
1060
1061         input_next        "xdigit"
1062     ok! test_xdigit
1063
1064         error_pop_merge
1065   fail! jump              failed_135
1066         error_push
1067
1068         call              optional_132
1069
1070         error_pop_merge
1071   fail! jump              failed_135
1072
1073         loc_pop_discard
1074         return
1075
1076failed_135:
1077         loc_pop_rewind
1078         return
1079
1080optional_132:
1081# ?
1082#     x
1083#         <xdigit>
1084#         ?
1085#             x
1086#                 <xdigit>
1087#                 ?
1088#                     <xdigit>
1089
1090         loc_push
1091         error_push
1092
1093         call              sequence_129
1094
1095         error_pop_merge
1096   fail! loc_pop_rewind
1097     ok! loc_pop_discard
1098         status_ok
1099         return
1100
1101sequence_129:
1102# x
1103#     <xdigit>
1104#     ?
1105#         x
1106#             <xdigit>
1107#             ?
1108#                 <xdigit>
1109
1110         loc_push
1111         error_clear
1112
1113         error_push
1114
1115         input_next        "xdigit"
1116     ok! test_xdigit
1117
1118         error_pop_merge
1119   fail! jump              failed_130
1120         error_push
1121
1122         call              optional_127
1123
1124         error_pop_merge
1125   fail! jump              failed_130
1126
1127         loc_pop_discard
1128         return
1129
1130failed_130:
1131         loc_pop_rewind
1132         return
1133
1134optional_127:
1135# ?
1136#     x
1137#         <xdigit>
1138#         ?
1139#             <xdigit>
1140
1141         loc_push
1142         error_push
1143
1144         call              sequence_124
1145
1146         error_pop_merge
1147   fail! loc_pop_rewind
1148     ok! loc_pop_discard
1149         status_ok
1150         return
1151
1152sequence_124:
1153# x
1154#     <xdigit>
1155#     ?
1156#         <xdigit>
1157
1158         loc_push
1159         error_clear
1160
1161         error_push
1162
1163         input_next        "xdigit"
1164     ok! test_xdigit
1165
1166         error_pop_merge
1167   fail! jump              failed_125
1168         error_push
1169
1170         call              optional_122
1171
1172         error_pop_merge
1173   fail! jump              failed_125
1174
1175         loc_pop_discard
1176         return
1177
1178failed_125:
1179         loc_pop_rewind
1180         return
1181
1182optional_122:
1183# ?
1184#     <xdigit>
1185
1186         loc_push
1187         error_push
1188
1189         input_next        "xdigit"
1190     ok! test_xdigit
1191
1192         error_pop_merge
1193   fail! loc_pop_rewind
1194     ok! loc_pop_discard
1195         status_ok
1196         return
1197#
1198# value Symbol 'Class'
1199#
1200
1201sym_Class:
1202# x
1203#     (OPENB)
1204#     *
1205#         x
1206#             !
1207#                 (CLOSEB)
1208#             (Range)
1209#     (CLOSEB)
1210#     (WHITESPACE)
1211
1212         symbol_restore    Class
1213  found! jump              found_157
1214         loc_push
1215         ast_push
1216
1217         call              sequence_153
1218
1219   fail! value_clear
1220     ok! value_reduce      Class
1221         symbol_save       Class
1222         error_nonterminal Class
1223         ast_pop_rewind
1224         loc_pop_discard
1225
1226found_157:
1227     ok! ast_value_push
1228         return
1229
1230sequence_153:
1231# x
1232#     (OPENB)
1233#     *
1234#         x
1235#             !
1236#                 (CLOSEB)
1237#             (Range)
1238#     (CLOSEB)
1239#     (WHITESPACE)
1240
1241         loc_push
1242         error_clear
1243
1244         error_push
1245
1246         call              sym_OPENB
1247
1248         error_pop_merge
1249   fail! jump              failednoast_155
1250         ast_push
1251         error_push
1252
1253         call              kleene_148
1254
1255         error_pop_merge
1256   fail! jump              failed_154
1257         error_push
1258
1259         call              sym_CLOSEB
1260
1261         error_pop_merge
1262   fail! jump              failed_154
1263         error_push
1264
1265         call              sym_WHITESPACE
1266
1267         error_pop_merge
1268   fail! jump              failed_154
1269
1270         ast_pop_discard
1271         loc_pop_discard
1272         return
1273
1274failed_154:
1275         ast_pop_rewind
1276
1277failednoast_155:
1278         loc_pop_rewind
1279         return
1280
1281kleene_148:
1282# *
1283#     x
1284#         !
1285#             (CLOSEB)
1286#         (Range)
1287
1288         loc_push
1289         error_push
1290
1291         call              sequence_144
1292
1293         error_pop_merge
1294   fail! jump              failed_149
1295         loc_pop_discard
1296         jump              kleene_148
1297
1298failed_149:
1299         loc_pop_rewind
1300         status_ok
1301         return
1302
1303sequence_144:
1304# x
1305#     !
1306#         (CLOSEB)
1307#     (Range)
1308
1309         loc_push
1310         error_clear
1311
1312         error_push
1313
1314         call              notahead_141
1315
1316         error_pop_merge
1317   fail! jump              failednoast_146
1318         ast_push
1319         error_push
1320
1321         call              sym_Range
1322
1323         error_pop_merge
1324   fail! jump              failed_145
1325
1326         ast_pop_discard
1327         loc_pop_discard
1328         return
1329
1330failed_145:
1331         ast_pop_rewind
1332
1333failednoast_146:
1334         loc_pop_rewind
1335         return
1336
1337notahead_141:
1338# !
1339#     (CLOSEB)
1340
1341         loc_push
1342
1343         call              sym_CLOSEB
1344
1345         loc_pop_rewind
1346         status_negate
1347         return
1348#
1349# void Symbol 'CLOSE'
1350#
1351
1352sym_CLOSE:
1353# x
1354#     '\)'
1355#     (WHITESPACE)
1356
1357         symbol_restore    CLOSE
1358  found! return
1359         loc_push
1360
1361         call              sequence_161
1362
1363         value_clear
1364         symbol_save       CLOSE
1365         error_nonterminal CLOSE
1366         loc_pop_discard
1367         return
1368
1369sequence_161:
1370# x
1371#     '\)'
1372#     (WHITESPACE)
1373
1374         loc_push
1375         error_clear
1376
1377         error_push
1378
1379         input_next        "t )"
1380     ok! test_char         ")"
1381
1382         error_pop_merge
1383   fail! jump              failed_162
1384         error_push
1385
1386         call              sym_WHITESPACE
1387
1388         error_pop_merge
1389   fail! jump              failed_162
1390
1391         loc_pop_discard
1392         return
1393
1394failed_162:
1395         loc_pop_rewind
1396         return
1397#
1398# void Symbol 'CLOSEB'
1399#
1400
1401sym_CLOSEB:
1402# ']'
1403
1404         symbol_restore    CLOSEB
1405  found! return
1406         loc_push
1407
1408         input_next        "t ]"
1409     ok! test_char         "]"
1410
1411         value_clear
1412         symbol_save       CLOSEB
1413         error_nonterminal CLOSEB
1414         loc_pop_discard
1415         return
1416#
1417# void Symbol 'COLON'
1418#
1419
1420sym_COLON:
1421# x
1422#     ':'
1423#     (WHITESPACE)
1424
1425         symbol_restore    COLON
1426  found! return
1427         loc_push
1428
1429         call              sequence_169
1430
1431         value_clear
1432         symbol_save       COLON
1433         error_nonterminal COLON
1434         loc_pop_discard
1435         return
1436
1437sequence_169:
1438# x
1439#     ':'
1440#     (WHITESPACE)
1441
1442         loc_push
1443         error_clear
1444
1445         error_push
1446
1447         input_next        "t :"
1448     ok! test_char         ":"
1449
1450         error_pop_merge
1451   fail! jump              failed_170
1452         error_push
1453
1454         call              sym_WHITESPACE
1455
1456         error_pop_merge
1457   fail! jump              failed_170
1458
1459         loc_pop_discard
1460         return
1461
1462failed_170:
1463         loc_pop_rewind
1464         return
1465#
1466# void Symbol 'COMMENT'
1467#
1468
1469sym_COMMENT:
1470# x
1471#     '#'
1472#     *
1473#         x
1474#             !
1475#                 (EOL)
1476#             <dot>
1477#     (EOL)
1478
1479         symbol_restore    COMMENT
1480  found! return
1481         loc_push
1482
1483         call              sequence_185
1484
1485         value_clear
1486         symbol_save       COMMENT
1487         error_nonterminal COMMENT
1488         loc_pop_discard
1489         return
1490
1491sequence_185:
1492# x
1493#     '#'
1494#     *
1495#         x
1496#             !
1497#                 (EOL)
1498#             <dot>
1499#     (EOL)
1500
1501         loc_push
1502         error_clear
1503
1504         error_push
1505
1506         input_next        "t #"
1507     ok! test_char         "#"
1508
1509         error_pop_merge
1510   fail! jump              failed_186
1511         error_push
1512
1513         call              kleene_181
1514
1515         error_pop_merge
1516   fail! jump              failed_186
1517         error_push
1518
1519         call              sym_EOL
1520
1521         error_pop_merge
1522   fail! jump              failed_186
1523
1524         loc_pop_discard
1525         return
1526
1527failed_186:
1528         loc_pop_rewind
1529         return
1530
1531kleene_181:
1532# *
1533#     x
1534#         !
1535#             (EOL)
1536#         <dot>
1537
1538         loc_push
1539         error_push
1540
1541         call              sequence_178
1542
1543         error_pop_merge
1544   fail! jump              failed_182
1545         loc_pop_discard
1546         jump              kleene_181
1547
1548failed_182:
1549         loc_pop_rewind
1550         status_ok
1551         return
1552
1553sequence_178:
1554# x
1555#     !
1556#         (EOL)
1557#     <dot>
1558
1559         loc_push
1560         error_clear
1561
1562         error_push
1563
1564         call              notahead_175
1565
1566         error_pop_merge
1567   fail! jump              failed_179
1568         error_push
1569
1570         input_next        "dot"
1571
1572         error_pop_merge
1573   fail! jump              failed_179
1574
1575         loc_pop_discard
1576         return
1577
1578failed_179:
1579         loc_pop_rewind
1580         return
1581
1582notahead_175:
1583# !
1584#     (EOL)
1585
1586         loc_push
1587
1588         call              sym_EOL
1589
1590         loc_pop_rewind
1591         status_negate
1592         return
1593#
1594# leaf Symbol 'CONTROL'
1595#
1596
1597sym_CONTROL:
1598# x
1599#     '<'
1600#     'c'
1601#     'o'
1602#     'n'
1603#     't'
1604#     'r'
1605#     'o'
1606#     'l'
1607#     '>'
1608#     (WHITESPACE)
1609
1610         symbol_restore    CONTROL
1611  found! jump              found_202
1612         loc_push
1613
1614         call              sequence_199
1615
1616   fail! value_clear
1617     ok! value_leaf        CONTROL
1618         symbol_save       CONTROL
1619         error_nonterminal CONTROL
1620         loc_pop_discard
1621
1622found_202:
1623     ok! ast_value_push
1624         return
1625
1626sequence_199:
1627# x
1628#     '<'
1629#     'c'
1630#     'o'
1631#     'n'
1632#     't'
1633#     'r'
1634#     'o'
1635#     'l'
1636#     '>'
1637#     (WHITESPACE)
1638
1639         loc_push
1640         error_clear
1641
1642         error_push
1643
1644         input_next        "t <"
1645     ok! test_char         "<"
1646
1647         error_pop_merge
1648   fail! jump              failed_200
1649         error_push
1650
1651         input_next        "t c"
1652     ok! test_char         "c"
1653
1654         error_pop_merge
1655   fail! jump              failed_200
1656         error_push
1657
1658         input_next        "t o"
1659     ok! test_char         "o"
1660
1661         error_pop_merge
1662   fail! jump              failed_200
1663         error_push
1664
1665         input_next        "t n"
1666     ok! test_char         "n"
1667
1668         error_pop_merge
1669   fail! jump              failed_200
1670         error_push
1671
1672         input_next        "t t"
1673     ok! test_char         "t"
1674
1675         error_pop_merge
1676   fail! jump              failed_200
1677         error_push
1678
1679         input_next        "t r"
1680     ok! test_char         "r"
1681
1682         error_pop_merge
1683   fail! jump              failed_200
1684         error_push
1685
1686         input_next        "t o"
1687     ok! test_char         "o"
1688
1689         error_pop_merge
1690   fail! jump              failed_200
1691         error_push
1692
1693         input_next        "t l"
1694     ok! test_char         "l"
1695
1696         error_pop_merge
1697   fail! jump              failed_200
1698         error_push
1699
1700         input_next        "t >"
1701     ok! test_char         ">"
1702
1703         error_pop_merge
1704   fail! jump              failed_200
1705         error_push
1706
1707         call              sym_WHITESPACE
1708
1709         error_pop_merge
1710   fail! jump              failed_200
1711
1712         loc_pop_discard
1713         return
1714
1715failed_200:
1716         loc_pop_rewind
1717         return
1718#
1719# void Symbol 'DAPOSTROPH'
1720#
1721
1722sym_DAPOSTROPH:
1723# '\"'
1724
1725         symbol_restore    DAPOSTROPH
1726  found! return
1727         loc_push
1728
1729         input_next        "t ""
1730     ok! test_char         """
1731
1732         value_clear
1733         symbol_save       DAPOSTROPH
1734         error_nonterminal DAPOSTROPH
1735         loc_pop_discard
1736         return
1737#
1738# leaf Symbol 'DDIGIT'
1739#
1740
1741sym_DDIGIT:
1742# x
1743#     '<'
1744#     'd'
1745#     'd'
1746#     'i'
1747#     'g'
1748#     'i'
1749#     't'
1750#     '>'
1751#     (WHITESPACE)
1752
1753         symbol_restore    DDIGIT
1754  found! jump              found_218
1755         loc_push
1756
1757         call              sequence_215
1758
1759   fail! value_clear
1760     ok! value_leaf        DDIGIT
1761         symbol_save       DDIGIT
1762         error_nonterminal DDIGIT
1763         loc_pop_discard
1764
1765found_218:
1766     ok! ast_value_push
1767         return
1768
1769sequence_215:
1770# x
1771#     '<'
1772#     'd'
1773#     'd'
1774#     'i'
1775#     'g'
1776#     'i'
1777#     't'
1778#     '>'
1779#     (WHITESPACE)
1780
1781         loc_push
1782         error_clear
1783
1784         error_push
1785
1786         input_next        "t <"
1787     ok! test_char         "<"
1788
1789         error_pop_merge
1790   fail! jump              failed_216
1791         error_push
1792
1793         input_next        "t d"
1794     ok! test_char         "d"
1795
1796         error_pop_merge
1797   fail! jump              failed_216
1798         error_push
1799
1800         input_next        "t d"
1801     ok! test_char         "d"
1802
1803         error_pop_merge
1804   fail! jump              failed_216
1805         error_push
1806
1807         input_next        "t i"
1808     ok! test_char         "i"
1809
1810         error_pop_merge
1811   fail! jump              failed_216
1812         error_push
1813
1814         input_next        "t g"
1815     ok! test_char         "g"
1816
1817         error_pop_merge
1818   fail! jump              failed_216
1819         error_push
1820
1821         input_next        "t i"
1822     ok! test_char         "i"
1823
1824         error_pop_merge
1825   fail! jump              failed_216
1826         error_push
1827
1828         input_next        "t t"
1829     ok! test_char         "t"
1830
1831         error_pop_merge
1832   fail! jump              failed_216
1833         error_push
1834
1835         input_next        "t >"
1836     ok! test_char         ">"
1837
1838         error_pop_merge
1839   fail! jump              failed_216
1840         error_push
1841
1842         call              sym_WHITESPACE
1843
1844         error_pop_merge
1845   fail! jump              failed_216
1846
1847         loc_pop_discard
1848         return
1849
1850failed_216:
1851         loc_pop_rewind
1852         return
1853#
1854# value Symbol 'Definition'
1855#
1856
1857sym_Definition:
1858# x
1859#     ?
1860#         (Attribute)
1861#     (Identifier)
1862#     (IS)
1863#     (Expression)
1864#     (SEMICOLON)
1865
1866         symbol_restore    Definition
1867  found! jump              found_230
1868         loc_push
1869         ast_push
1870
1871         call              sequence_227
1872
1873   fail! value_clear
1874     ok! value_reduce      Definition
1875         symbol_save       Definition
1876         error_nonterminal Definition
1877         ast_pop_rewind
1878         loc_pop_discard
1879
1880found_230:
1881     ok! ast_value_push
1882         return
1883
1884sequence_227:
1885# x
1886#     ?
1887#         (Attribute)
1888#     (Identifier)
1889#     (IS)
1890#     (Expression)
1891#     (SEMICOLON)
1892
1893         ast_push
1894         loc_push
1895         error_clear
1896
1897         error_push
1898
1899         call              optional_221
1900
1901         error_pop_merge
1902   fail! jump              failed_228
1903         error_push
1904
1905         call              sym_Identifier
1906
1907         error_pop_merge
1908   fail! jump              failed_228
1909         error_push
1910
1911         call              sym_IS
1912
1913         error_pop_merge
1914   fail! jump              failed_228
1915         error_push
1916
1917         call              sym_Expression
1918
1919         error_pop_merge
1920   fail! jump              failed_228
1921         error_push
1922
1923         call              sym_SEMICOLON
1924
1925         error_pop_merge
1926   fail! jump              failed_228
1927
1928         ast_pop_discard
1929         loc_pop_discard
1930         return
1931
1932failed_228:
1933         ast_pop_rewind
1934         loc_pop_rewind
1935         return
1936
1937optional_221:
1938# ?
1939#     (Attribute)
1940
1941         loc_push
1942         error_push
1943
1944         call              sym_Attribute
1945
1946         error_pop_merge
1947   fail! loc_pop_rewind
1948     ok! loc_pop_discard
1949         status_ok
1950         return
1951#
1952# leaf Symbol 'DIGIT'
1953#
1954
1955sym_DIGIT:
1956# x
1957#     '<'
1958#     'd'
1959#     'i'
1960#     'g'
1961#     'i'
1962#     't'
1963#     '>'
1964#     (WHITESPACE)
1965
1966         symbol_restore    DIGIT
1967  found! jump              found_243
1968         loc_push
1969
1970         call              sequence_240
1971
1972   fail! value_clear
1973     ok! value_leaf        DIGIT
1974         symbol_save       DIGIT
1975         error_nonterminal DIGIT
1976         loc_pop_discard
1977
1978found_243:
1979     ok! ast_value_push
1980         return
1981
1982sequence_240:
1983# x
1984#     '<'
1985#     'd'
1986#     'i'
1987#     'g'
1988#     'i'
1989#     't'
1990#     '>'
1991#     (WHITESPACE)
1992
1993         loc_push
1994         error_clear
1995
1996         error_push
1997
1998         input_next        "t <"
1999     ok! test_char         "<"
2000
2001         error_pop_merge
2002   fail! jump              failed_241
2003         error_push
2004
2005         input_next        "t d"
2006     ok! test_char         "d"
2007
2008         error_pop_merge
2009   fail! jump              failed_241
2010         error_push
2011
2012         input_next        "t i"
2013     ok! test_char         "i"
2014
2015         error_pop_merge
2016   fail! jump              failed_241
2017         error_push
2018
2019         input_next        "t g"
2020     ok! test_char         "g"
2021
2022         error_pop_merge
2023   fail! jump              failed_241
2024         error_push
2025
2026         input_next        "t i"
2027     ok! test_char         "i"
2028
2029         error_pop_merge
2030   fail! jump              failed_241
2031         error_push
2032
2033         input_next        "t t"
2034     ok! test_char         "t"
2035
2036         error_pop_merge
2037   fail! jump              failed_241
2038         error_push
2039
2040         input_next        "t >"
2041     ok! test_char         ">"
2042
2043         error_pop_merge
2044   fail! jump              failed_241
2045         error_push
2046
2047         call              sym_WHITESPACE
2048
2049         error_pop_merge
2050   fail! jump              failed_241
2051
2052         loc_pop_discard
2053         return
2054
2055failed_241:
2056         loc_pop_rewind
2057         return
2058#
2059# leaf Symbol 'DOT'
2060#
2061
2062sym_DOT:
2063# x
2064#     '.'
2065#     (WHITESPACE)
2066
2067         symbol_restore    DOT
2068  found! jump              found_250
2069         loc_push
2070
2071         call              sequence_247
2072
2073   fail! value_clear
2074     ok! value_leaf        DOT
2075         symbol_save       DOT
2076         error_nonterminal DOT
2077         loc_pop_discard
2078
2079found_250:
2080     ok! ast_value_push
2081         return
2082
2083sequence_247:
2084# x
2085#     '.'
2086#     (WHITESPACE)
2087
2088         loc_push
2089         error_clear
2090
2091         error_push
2092
2093         input_next        "t ."
2094     ok! test_char         "."
2095
2096         error_pop_merge
2097   fail! jump              failed_248
2098         error_push
2099
2100         call              sym_WHITESPACE
2101
2102         error_pop_merge
2103   fail! jump              failed_248
2104
2105         loc_pop_discard
2106         return
2107
2108failed_248:
2109         loc_pop_rewind
2110         return
2111#
2112# void Symbol 'EOF'
2113#
2114
2115sym_EOF:
2116# !
2117#     <dot>
2118
2119         symbol_restore    EOF
2120  found! return
2121         loc_push
2122
2123         call              notahead_253
2124
2125         value_clear
2126         symbol_save       EOF
2127         error_nonterminal EOF
2128         loc_pop_discard
2129         return
2130
2131notahead_253:
2132# !
2133#     <dot>
2134
2135         loc_push
2136
2137         input_next        "dot"
2138
2139         loc_pop_rewind
2140         status_negate
2141         return
2142#
2143# void Symbol 'EOL'
2144#
2145
2146sym_EOL:
2147# /
2148#     '\n'
2149#     '\r'
2150
2151         symbol_restore    EOL
2152  found! return
2153         loc_push
2154
2155         call              choice_259
2156
2157         value_clear
2158         symbol_save       EOL
2159         error_nonterminal EOL
2160         loc_pop_discard
2161         return
2162
2163choice_259:
2164# /
2165#     '\n'
2166#     '\r'
2167
2168         error_clear
2169
2170         loc_push
2171         error_push
2172
2173         input_next        "t <LF>"
2174     ok! test_char         "<LF>"
2175
2176         error_pop_merge
2177     ok! jump              oknoast_258
2178
2179         loc_pop_rewind
2180         loc_push
2181         error_push
2182
2183         input_next        "t <CR>"
2184     ok! test_char         "<CR>"
2185
2186         error_pop_merge
2187     ok! jump              oknoast_258
2188
2189         loc_pop_rewind
2190         status_fail
2191         return
2192
2193oknoast_258:
2194         loc_pop_discard
2195         return
2196#
2197# value Symbol 'Expression'
2198#
2199
2200sym_Expression:
2201# x
2202#     (Sequence)
2203#     *
2204#         x
2205#             (SLASH)
2206#             (Sequence)
2207
2208         symbol_restore    Expression
2209  found! jump              found_275
2210         loc_push
2211         ast_push
2212
2213         call              sequence_272
2214
2215   fail! value_clear
2216     ok! value_reduce      Expression
2217         symbol_save       Expression
2218         error_nonterminal Expression
2219         ast_pop_rewind
2220         loc_pop_discard
2221
2222found_275:
2223     ok! ast_value_push
2224         return
2225
2226sequence_272:
2227# x
2228#     (Sequence)
2229#     *
2230#         x
2231#             (SLASH)
2232#             (Sequence)
2233
2234         ast_push
2235         loc_push
2236         error_clear
2237
2238         error_push
2239
2240         call              sym_Sequence
2241
2242         error_pop_merge
2243   fail! jump              failed_273
2244         error_push
2245
2246         call              kleene_269
2247
2248         error_pop_merge
2249   fail! jump              failed_273
2250
2251         ast_pop_discard
2252         loc_pop_discard
2253         return
2254
2255failed_273:
2256         ast_pop_rewind
2257         loc_pop_rewind
2258         return
2259
2260kleene_269:
2261# *
2262#     x
2263#         (SLASH)
2264#         (Sequence)
2265
2266         loc_push
2267         error_push
2268
2269         call              sequence_265
2270
2271         error_pop_merge
2272   fail! jump              failed_270
2273         loc_pop_discard
2274         jump              kleene_269
2275
2276failed_270:
2277         loc_pop_rewind
2278         status_ok
2279         return
2280
2281sequence_265:
2282# x
2283#     (SLASH)
2284#     (Sequence)
2285
2286         loc_push
2287         error_clear
2288
2289         error_push
2290
2291         call              sym_SLASH
2292
2293         error_pop_merge
2294   fail! jump              failednoast_267
2295         ast_push
2296         error_push
2297
2298         call              sym_Sequence
2299
2300         error_pop_merge
2301   fail! jump              failed_266
2302
2303         ast_pop_discard
2304         loc_pop_discard
2305         return
2306
2307failed_266:
2308         ast_pop_rewind
2309
2310failednoast_267:
2311         loc_pop_rewind
2312         return
2313#
2314# void Symbol 'Final'
2315#
2316
2317sym_Final:
2318# x
2319#     'E'
2320#     'N'
2321#     'D'
2322#     (WHITESPACE)
2323#     (SEMICOLON)
2324#     (WHITESPACE)
2325
2326         symbol_restore    Final
2327  found! return
2328         loc_push
2329
2330         call              sequence_283
2331
2332         value_clear
2333         symbol_save       Final
2334         error_nonterminal Final
2335         loc_pop_discard
2336         return
2337
2338sequence_283:
2339# x
2340#     'E'
2341#     'N'
2342#     'D'
2343#     (WHITESPACE)
2344#     (SEMICOLON)
2345#     (WHITESPACE)
2346
2347         loc_push
2348         error_clear
2349
2350         error_push
2351
2352         input_next        "t E"
2353     ok! test_char         "E"
2354
2355         error_pop_merge
2356   fail! jump              failed_284
2357         error_push
2358
2359         input_next        "t N"
2360     ok! test_char         "N"
2361
2362         error_pop_merge
2363   fail! jump              failed_284
2364         error_push
2365
2366         input_next        "t D"
2367     ok! test_char         "D"
2368
2369         error_pop_merge
2370   fail! jump              failed_284
2371         error_push
2372
2373         call              sym_WHITESPACE
2374
2375         error_pop_merge
2376   fail! jump              failed_284
2377         error_push
2378
2379         call              sym_SEMICOLON
2380
2381         error_pop_merge
2382   fail! jump              failed_284
2383         error_push
2384
2385         call              sym_WHITESPACE
2386
2387         error_pop_merge
2388   fail! jump              failed_284
2389
2390         loc_pop_discard
2391         return
2392
2393failed_284:
2394         loc_pop_rewind
2395         return
2396#
2397# value Symbol 'Grammar'
2398#
2399
2400sym_Grammar:
2401# x
2402#     (WHITESPACE)
2403#     (Header)
2404#     *
2405#         (Definition)
2406#     (Final)
2407#     (EOF)
2408
2409         symbol_restore    Grammar
2410  found! jump              found_299
2411         loc_push
2412         ast_push
2413
2414         call              sequence_295
2415
2416   fail! value_clear
2417     ok! value_reduce      Grammar
2418         symbol_save       Grammar
2419         error_nonterminal Grammar
2420         ast_pop_rewind
2421         loc_pop_discard
2422
2423found_299:
2424     ok! ast_value_push
2425         return
2426
2427sequence_295:
2428# x
2429#     (WHITESPACE)
2430#     (Header)
2431#     *
2432#         (Definition)
2433#     (Final)
2434#     (EOF)
2435
2436         loc_push
2437         error_clear
2438
2439         error_push
2440
2441         call              sym_WHITESPACE
2442
2443         error_pop_merge
2444   fail! jump              failednoast_297
2445         ast_push
2446         error_push
2447
2448         call              sym_Header
2449
2450         error_pop_merge
2451   fail! jump              failed_296
2452         error_push
2453
2454         call              kleene_290
2455
2456         error_pop_merge
2457   fail! jump              failed_296
2458         error_push
2459
2460         call              sym_Final
2461
2462         error_pop_merge
2463   fail! jump              failed_296
2464         error_push
2465
2466         call              sym_EOF
2467
2468         error_pop_merge
2469   fail! jump              failed_296
2470
2471         ast_pop_discard
2472         loc_pop_discard
2473         return
2474
2475failed_296:
2476         ast_pop_rewind
2477
2478failednoast_297:
2479         loc_pop_rewind
2480         return
2481
2482kleene_290:
2483# *
2484#     (Definition)
2485
2486         loc_push
2487         error_push
2488
2489         call              sym_Definition
2490
2491         error_pop_merge
2492   fail! jump              failed_291
2493         loc_pop_discard
2494         jump              kleene_290
2495
2496failed_291:
2497         loc_pop_rewind
2498         status_ok
2499         return
2500#
2501# leaf Symbol 'GRAPH'
2502#
2503
2504sym_GRAPH:
2505# x
2506#     '<'
2507#     'g'
2508#     'r'
2509#     'a'
2510#     'p'
2511#     'h'
2512#     '>'
2513#     (WHITESPACE)
2514
2515         symbol_restore    GRAPH
2516  found! jump              found_312
2517         loc_push
2518
2519         call              sequence_309
2520
2521   fail! value_clear
2522     ok! value_leaf        GRAPH
2523         symbol_save       GRAPH
2524         error_nonterminal GRAPH
2525         loc_pop_discard
2526
2527found_312:
2528     ok! ast_value_push
2529         return
2530
2531sequence_309:
2532# x
2533#     '<'
2534#     'g'
2535#     'r'
2536#     'a'
2537#     'p'
2538#     'h'
2539#     '>'
2540#     (WHITESPACE)
2541
2542         loc_push
2543         error_clear
2544
2545         error_push
2546
2547         input_next        "t <"
2548     ok! test_char         "<"
2549
2550         error_pop_merge
2551   fail! jump              failed_310
2552         error_push
2553
2554         input_next        "t g"
2555     ok! test_char         "g"
2556
2557         error_pop_merge
2558   fail! jump              failed_310
2559         error_push
2560
2561         input_next        "t r"
2562     ok! test_char         "r"
2563
2564         error_pop_merge
2565   fail! jump              failed_310
2566         error_push
2567
2568         input_next        "t a"
2569     ok! test_char         "a"
2570
2571         error_pop_merge
2572   fail! jump              failed_310
2573         error_push
2574
2575         input_next        "t p"
2576     ok! test_char         "p"
2577
2578         error_pop_merge
2579   fail! jump              failed_310
2580         error_push
2581
2582         input_next        "t h"
2583     ok! test_char         "h"
2584
2585         error_pop_merge
2586   fail! jump              failed_310
2587         error_push
2588
2589         input_next        "t >"
2590     ok! test_char         ">"
2591
2592         error_pop_merge
2593   fail! jump              failed_310
2594         error_push
2595
2596         call              sym_WHITESPACE
2597
2598         error_pop_merge
2599   fail! jump              failed_310
2600
2601         loc_pop_discard
2602         return
2603
2604failed_310:
2605         loc_pop_rewind
2606         return
2607#
2608# value Symbol 'Header'
2609#
2610
2611sym_Header:
2612# x
2613#     (PEG)
2614#     (Identifier)
2615#     (StartExpr)
2616
2617         symbol_restore    Header
2618  found! jump              found_321
2619         loc_push
2620         ast_push
2621
2622         call              sequence_317
2623
2624   fail! value_clear
2625     ok! value_reduce      Header
2626         symbol_save       Header
2627         error_nonterminal Header
2628         ast_pop_rewind
2629         loc_pop_discard
2630
2631found_321:
2632     ok! ast_value_push
2633         return
2634
2635sequence_317:
2636# x
2637#     (PEG)
2638#     (Identifier)
2639#     (StartExpr)
2640
2641         loc_push
2642         error_clear
2643
2644         error_push
2645
2646         call              sym_PEG
2647
2648         error_pop_merge
2649   fail! jump              failednoast_319
2650         ast_push
2651         error_push
2652
2653         call              sym_Identifier
2654
2655         error_pop_merge
2656   fail! jump              failed_318
2657         error_push
2658
2659         call              sym_StartExpr
2660
2661         error_pop_merge
2662   fail! jump              failed_318
2663
2664         ast_pop_discard
2665         loc_pop_discard
2666         return
2667
2668failed_318:
2669         ast_pop_rewind
2670
2671failednoast_319:
2672         loc_pop_rewind
2673         return
2674#
2675# leaf Symbol 'Ident'
2676#
2677
2678sym_Ident:
2679# x
2680#     /
2681#         '_'
2682#         ':'
2683#         <alpha>
2684#     *
2685#         /
2686#             '_'
2687#             ':'
2688#             <alnum>
2689
2690         symbol_restore    Ident
2691  found! jump              found_341
2692         loc_push
2693
2694         call              sequence_338
2695
2696   fail! value_clear
2697     ok! value_leaf        Ident
2698         symbol_save       Ident
2699         error_nonterminal Ident
2700         loc_pop_discard
2701
2702found_341:
2703     ok! ast_value_push
2704         return
2705
2706sequence_338:
2707# x
2708#     /
2709#         '_'
2710#         ':'
2711#         <alpha>
2712#     *
2713#         /
2714#             '_'
2715#             ':'
2716#             <alnum>
2717
2718         loc_push
2719         error_clear
2720
2721         error_push
2722
2723         call              choice_327
2724
2725         error_pop_merge
2726   fail! jump              failed_339
2727         error_push
2728
2729         call              kleene_335
2730
2731         error_pop_merge
2732   fail! jump              failed_339
2733
2734         loc_pop_discard
2735         return
2736
2737failed_339:
2738         loc_pop_rewind
2739         return
2740
2741choice_327:
2742# /
2743#     '_'
2744#     ':'
2745#     <alpha>
2746
2747         error_clear
2748
2749         loc_push
2750         error_push
2751
2752         input_next        "t _"
2753     ok! test_char         "_"
2754
2755         error_pop_merge
2756     ok! jump              oknoast_326
2757
2758         loc_pop_rewind
2759         loc_push
2760         error_push
2761
2762         input_next        "t :"
2763     ok! test_char         ":"
2764
2765         error_pop_merge
2766     ok! jump              oknoast_326
2767
2768         loc_pop_rewind
2769         loc_push
2770         error_push
2771
2772         input_next        "alpha"
2773     ok! test_alpha
2774
2775         error_pop_merge
2776     ok! jump              oknoast_326
2777
2778         loc_pop_rewind
2779         status_fail
2780         return
2781
2782oknoast_326:
2783         loc_pop_discard
2784         return
2785
2786kleene_335:
2787# *
2788#     /
2789#         '_'
2790#         ':'
2791#         <alnum>
2792
2793         loc_push
2794         error_push
2795
2796         call              choice_333
2797
2798         error_pop_merge
2799   fail! jump              failed_336
2800         loc_pop_discard
2801         jump              kleene_335
2802
2803failed_336:
2804         loc_pop_rewind
2805         status_ok
2806         return
2807
2808choice_333:
2809# /
2810#     '_'
2811#     ':'
2812#     <alnum>
2813
2814         error_clear
2815
2816         loc_push
2817         error_push
2818
2819         input_next        "t _"
2820     ok! test_char         "_"
2821
2822         error_pop_merge
2823     ok! jump              oknoast_332
2824
2825         loc_pop_rewind
2826         loc_push
2827         error_push
2828
2829         input_next        "t :"
2830     ok! test_char         ":"
2831
2832         error_pop_merge
2833     ok! jump              oknoast_332
2834
2835         loc_pop_rewind
2836         loc_push
2837         error_push
2838
2839         input_next        "alnum"
2840     ok! test_alnum
2841
2842         error_pop_merge
2843     ok! jump              oknoast_332
2844
2845         loc_pop_rewind
2846         status_fail
2847         return
2848
2849oknoast_332:
2850         loc_pop_discard
2851         return
2852#
2853# value Symbol 'Identifier'
2854#
2855
2856sym_Identifier:
2857# x
2858#     (Ident)
2859#     (WHITESPACE)
2860
2861         symbol_restore    Identifier
2862  found! jump              found_348
2863         loc_push
2864         ast_push
2865
2866         call              sequence_345
2867
2868   fail! value_clear
2869     ok! value_reduce      Identifier
2870         symbol_save       Identifier
2871         error_nonterminal Identifier
2872         ast_pop_rewind
2873         loc_pop_discard
2874
2875found_348:
2876     ok! ast_value_push
2877         return
2878
2879sequence_345:
2880# x
2881#     (Ident)
2882#     (WHITESPACE)
2883
2884         ast_push
2885         loc_push
2886         error_clear
2887
2888         error_push
2889
2890         call              sym_Ident
2891
2892         error_pop_merge
2893   fail! jump              failed_346
2894         error_push
2895
2896         call              sym_WHITESPACE
2897
2898         error_pop_merge
2899   fail! jump              failed_346
2900
2901         ast_pop_discard
2902         loc_pop_discard
2903         return
2904
2905failed_346:
2906         ast_pop_rewind
2907         loc_pop_rewind
2908         return
2909#
2910# void Symbol 'IS'
2911#
2912
2913sym_IS:
2914# x
2915#     '<'
2916#     '-'
2917#     (WHITESPACE)
2918
2919         symbol_restore    IS
2920  found! return
2921         loc_push
2922
2923         call              sequence_353
2924
2925         value_clear
2926         symbol_save       IS
2927         error_nonterminal IS
2928         loc_pop_discard
2929         return
2930
2931sequence_353:
2932# x
2933#     '<'
2934#     '-'
2935#     (WHITESPACE)
2936
2937         loc_push
2938         error_clear
2939
2940         error_push
2941
2942         input_next        "t <"
2943     ok! test_char         "<"
2944
2945         error_pop_merge
2946   fail! jump              failed_354
2947         error_push
2948
2949         input_next        "t -"
2950     ok! test_char         "-"
2951
2952         error_pop_merge
2953   fail! jump              failed_354
2954         error_push
2955
2956         call              sym_WHITESPACE
2957
2958         error_pop_merge
2959   fail! jump              failed_354
2960
2961         loc_pop_discard
2962         return
2963
2964failed_354:
2965         loc_pop_rewind
2966         return
2967#
2968# leaf Symbol 'LEAF'
2969#
2970
2971sym_LEAF:
2972# x
2973#     'l'
2974#     'e'
2975#     'a'
2976#     'f'
2977#     (WHITESPACE)
2978
2979         symbol_restore    LEAF
2980  found! jump              found_365
2981         loc_push
2982
2983         call              sequence_362
2984
2985   fail! value_clear
2986     ok! value_leaf        LEAF
2987         symbol_save       LEAF
2988         error_nonterminal LEAF
2989         loc_pop_discard
2990
2991found_365:
2992     ok! ast_value_push
2993         return
2994
2995sequence_362:
2996# x
2997#     'l'
2998#     'e'
2999#     'a'
3000#     'f'
3001#     (WHITESPACE)
3002
3003         loc_push
3004         error_clear
3005
3006         error_push
3007
3008         input_next        "t l"
3009     ok! test_char         "l"
3010
3011         error_pop_merge
3012   fail! jump              failed_363
3013         error_push
3014
3015         input_next        "t e"
3016     ok! test_char         "e"
3017
3018         error_pop_merge
3019   fail! jump              failed_363
3020         error_push
3021
3022         input_next        "t a"
3023     ok! test_char         "a"
3024
3025         error_pop_merge
3026   fail! jump              failed_363
3027         error_push
3028
3029         input_next        "t f"
3030     ok! test_char         "f"
3031
3032         error_pop_merge
3033   fail! jump              failed_363
3034         error_push
3035
3036         call              sym_WHITESPACE
3037
3038         error_pop_merge
3039   fail! jump              failed_363
3040
3041         loc_pop_discard
3042         return
3043
3044failed_363:
3045         loc_pop_rewind
3046         return
3047#
3048# value Symbol 'Literal'
3049#
3050
3051sym_Literal:
3052# /
3053#     x
3054#         (APOSTROPH)
3055#         *
3056#             x
3057#                 !
3058#                     (APOSTROPH)
3059#                 (Char)
3060#         (APOSTROPH)
3061#         (WHITESPACE)
3062#     x
3063#         (DAPOSTROPH)
3064#         *
3065#             x
3066#                 !
3067#                     (DAPOSTROPH)
3068#                 (Char)
3069#         (DAPOSTROPH)
3070#         (WHITESPACE)
3071
3072         symbol_restore    Literal
3073  found! jump              found_406
3074         loc_push
3075         ast_push
3076
3077         call              choice_404
3078
3079   fail! value_clear
3080     ok! value_reduce      Literal
3081         symbol_save       Literal
3082         error_nonterminal Literal
3083         ast_pop_rewind
3084         loc_pop_discard
3085
3086found_406:
3087     ok! ast_value_push
3088         return
3089
3090choice_404:
3091# /
3092#     x
3093#         (APOSTROPH)
3094#         *
3095#             x
3096#                 !
3097#                     (APOSTROPH)
3098#                 (Char)
3099#         (APOSTROPH)
3100#         (WHITESPACE)
3101#     x
3102#         (DAPOSTROPH)
3103#         *
3104#             x
3105#                 !
3106#                     (DAPOSTROPH)
3107#                 (Char)
3108#         (DAPOSTROPH)
3109#         (WHITESPACE)
3110
3111         error_clear
3112
3113         ast_push
3114         loc_push
3115         error_push
3116
3117         call              sequence_381
3118
3119         error_pop_merge
3120     ok! jump              ok_403
3121
3122         ast_pop_rewind
3123         loc_pop_rewind
3124         ast_push
3125         loc_push
3126         error_push
3127
3128         call              sequence_399
3129
3130         error_pop_merge
3131     ok! jump              ok_403
3132
3133         ast_pop_rewind
3134         loc_pop_rewind
3135         status_fail
3136         return
3137
3138ok_403:
3139         ast_pop_discard
3140         loc_pop_discard
3141         return
3142
3143sequence_381:
3144# x
3145#     (APOSTROPH)
3146#     *
3147#         x
3148#             !
3149#                 (APOSTROPH)
3150#             (Char)
3151#     (APOSTROPH)
3152#     (WHITESPACE)
3153
3154         loc_push
3155         error_clear
3156
3157         error_push
3158
3159         call              sym_APOSTROPH
3160
3161         error_pop_merge
3162   fail! jump              failednoast_383
3163         ast_push
3164         error_push
3165
3166         call              kleene_376
3167
3168         error_pop_merge
3169   fail! jump              failed_382
3170         error_push
3171
3172         call              sym_APOSTROPH
3173
3174         error_pop_merge
3175   fail! jump              failed_382
3176         error_push
3177
3178         call              sym_WHITESPACE
3179
3180         error_pop_merge
3181   fail! jump              failed_382
3182
3183         ast_pop_discard
3184         loc_pop_discard
3185         return
3186
3187failed_382:
3188         ast_pop_rewind
3189
3190failednoast_383:
3191         loc_pop_rewind
3192         return
3193
3194kleene_376:
3195# *
3196#     x
3197#         !
3198#             (APOSTROPH)
3199#         (Char)
3200
3201         loc_push
3202         error_push
3203
3204         call              sequence_372
3205
3206         error_pop_merge
3207   fail! jump              failed_377
3208         loc_pop_discard
3209         jump              kleene_376
3210
3211failed_377:
3212         loc_pop_rewind
3213         status_ok
3214         return
3215
3216sequence_372:
3217# x
3218#     !
3219#         (APOSTROPH)
3220#     (Char)
3221
3222         loc_push
3223         error_clear
3224
3225         error_push
3226
3227         call              notahead_369
3228
3229         error_pop_merge
3230   fail! jump              failednoast_374
3231         ast_push
3232         error_push
3233
3234         call              sym_Char
3235
3236         error_pop_merge
3237   fail! jump              failed_373
3238
3239         ast_pop_discard
3240         loc_pop_discard
3241         return
3242
3243failed_373:
3244         ast_pop_rewind
3245
3246failednoast_374:
3247         loc_pop_rewind
3248         return
3249
3250notahead_369:
3251# !
3252#     (APOSTROPH)
3253
3254         loc_push
3255
3256         call              sym_APOSTROPH
3257
3258         loc_pop_rewind
3259         status_negate
3260         return
3261
3262sequence_399:
3263# x
3264#     (DAPOSTROPH)
3265#     *
3266#         x
3267#             !
3268#                 (DAPOSTROPH)
3269#             (Char)
3270#     (DAPOSTROPH)
3271#     (WHITESPACE)
3272
3273         loc_push
3274         error_clear
3275
3276         error_push
3277
3278         call              sym_DAPOSTROPH
3279
3280         error_pop_merge
3281   fail! jump              failednoast_401
3282         ast_push
3283         error_push
3284
3285         call              kleene_394
3286
3287         error_pop_merge
3288   fail! jump              failed_400
3289         error_push
3290
3291         call              sym_DAPOSTROPH
3292
3293         error_pop_merge
3294   fail! jump              failed_400
3295         error_push
3296
3297         call              sym_WHITESPACE
3298
3299         error_pop_merge
3300   fail! jump              failed_400
3301
3302         ast_pop_discard
3303         loc_pop_discard
3304         return
3305
3306failed_400:
3307         ast_pop_rewind
3308
3309failednoast_401:
3310         loc_pop_rewind
3311         return
3312
3313kleene_394:
3314# *
3315#     x
3316#         !
3317#             (DAPOSTROPH)
3318#         (Char)
3319
3320         loc_push
3321         error_push
3322
3323         call              sequence_390
3324
3325         error_pop_merge
3326   fail! jump              failed_395
3327         loc_pop_discard
3328         jump              kleene_394
3329
3330failed_395:
3331         loc_pop_rewind
3332         status_ok
3333         return
3334
3335sequence_390:
3336# x
3337#     !
3338#         (DAPOSTROPH)
3339#     (Char)
3340
3341         loc_push
3342         error_clear
3343
3344         error_push
3345
3346         call              notahead_387
3347
3348         error_pop_merge
3349   fail! jump              failednoast_392
3350         ast_push
3351         error_push
3352
3353         call              sym_Char
3354
3355         error_pop_merge
3356   fail! jump              failed_391
3357
3358         ast_pop_discard
3359         loc_pop_discard
3360         return
3361
3362failed_391:
3363         ast_pop_rewind
3364
3365failednoast_392:
3366         loc_pop_rewind
3367         return
3368
3369notahead_387:
3370# !
3371#     (DAPOSTROPH)
3372
3373         loc_push
3374
3375         call              sym_DAPOSTROPH
3376
3377         loc_pop_rewind
3378         status_negate
3379         return
3380#
3381# leaf Symbol 'LOWER'
3382#
3383
3384sym_LOWER:
3385# x
3386#     '<'
3387#     'l'
3388#     'o'
3389#     'w'
3390#     'e'
3391#     'r'
3392#     '>'
3393#     (WHITESPACE)
3394
3395         symbol_restore    LOWER
3396  found! jump              found_419
3397         loc_push
3398
3399         call              sequence_416
3400
3401   fail! value_clear
3402     ok! value_leaf        LOWER
3403         symbol_save       LOWER
3404         error_nonterminal LOWER
3405         loc_pop_discard
3406
3407found_419:
3408     ok! ast_value_push
3409         return
3410
3411sequence_416:
3412# x
3413#     '<'
3414#     'l'
3415#     'o'
3416#     'w'
3417#     'e'
3418#     'r'
3419#     '>'
3420#     (WHITESPACE)
3421
3422         loc_push
3423         error_clear
3424
3425         error_push
3426
3427         input_next        "t <"
3428     ok! test_char         "<"
3429
3430         error_pop_merge
3431   fail! jump              failed_417
3432         error_push
3433
3434         input_next        "t l"
3435     ok! test_char         "l"
3436
3437         error_pop_merge
3438   fail! jump              failed_417
3439         error_push
3440
3441         input_next        "t o"
3442     ok! test_char         "o"
3443
3444         error_pop_merge
3445   fail! jump              failed_417
3446         error_push
3447
3448         input_next        "t w"
3449     ok! test_char         "w"
3450
3451         error_pop_merge
3452   fail! jump              failed_417
3453         error_push
3454
3455         input_next        "t e"
3456     ok! test_char         "e"
3457
3458         error_pop_merge
3459   fail! jump              failed_417
3460         error_push
3461
3462         input_next        "t r"
3463     ok! test_char         "r"
3464
3465         error_pop_merge
3466   fail! jump              failed_417
3467         error_push
3468
3469         input_next        "t >"
3470     ok! test_char         ">"
3471
3472         error_pop_merge
3473   fail! jump              failed_417
3474         error_push
3475
3476         call              sym_WHITESPACE
3477
3478         error_pop_merge
3479   fail! jump              failed_417
3480
3481         loc_pop_discard
3482         return
3483
3484failed_417:
3485         loc_pop_rewind
3486         return
3487#
3488# leaf Symbol 'NOT'
3489#
3490
3491sym_NOT:
3492# x
3493#     '!'
3494#     (WHITESPACE)
3495
3496         symbol_restore    NOT
3497  found! jump              found_426
3498         loc_push
3499
3500         call              sequence_423
3501
3502   fail! value_clear
3503     ok! value_leaf        NOT
3504         symbol_save       NOT
3505         error_nonterminal NOT
3506         loc_pop_discard
3507
3508found_426:
3509     ok! ast_value_push
3510         return
3511
3512sequence_423:
3513# x
3514#     '!'
3515#     (WHITESPACE)
3516
3517         loc_push
3518         error_clear
3519
3520         error_push
3521
3522         input_next        "t !"
3523     ok! test_char         "!"
3524
3525         error_pop_merge
3526   fail! jump              failed_424
3527         error_push
3528
3529         call              sym_WHITESPACE
3530
3531         error_pop_merge
3532   fail! jump              failed_424
3533
3534         loc_pop_discard
3535         return
3536
3537failed_424:
3538         loc_pop_rewind
3539         return
3540#
3541# void Symbol 'OPEN'
3542#
3543
3544sym_OPEN:
3545# x
3546#     '\('
3547#     (WHITESPACE)
3548
3549         symbol_restore    OPEN
3550  found! return
3551         loc_push
3552
3553         call              sequence_430
3554
3555         value_clear
3556         symbol_save       OPEN
3557         error_nonterminal OPEN
3558         loc_pop_discard
3559         return
3560
3561sequence_430:
3562# x
3563#     '\('
3564#     (WHITESPACE)
3565
3566         loc_push
3567         error_clear
3568
3569         error_push
3570
3571         input_next        "t ("
3572     ok! test_char         "("
3573
3574         error_pop_merge
3575   fail! jump              failed_431
3576         error_push
3577
3578         call              sym_WHITESPACE
3579
3580         error_pop_merge
3581   fail! jump              failed_431
3582
3583         loc_pop_discard
3584         return
3585
3586failed_431:
3587         loc_pop_rewind
3588         return
3589#
3590# void Symbol 'OPENB'
3591#
3592
3593sym_OPENB:
3594# '['
3595
3596         symbol_restore    OPENB
3597  found! return
3598         loc_push
3599
3600         input_next        "t ["
3601     ok! test_char         "["
3602
3603         value_clear
3604         symbol_save       OPENB
3605         error_nonterminal OPENB
3606         loc_pop_discard
3607         return
3608#
3609# void Symbol 'PEG'
3610#
3611
3612sym_PEG:
3613# x
3614#     'P'
3615#     'E'
3616#     'G'
3617#     !
3618#         /
3619#             '_'
3620#             ':'
3621#             <alnum>
3622#     (WHITESPACE)
3623
3624         symbol_restore    PEG
3625  found! return
3626         loc_push
3627
3628         call              sequence_447
3629
3630         value_clear
3631         symbol_save       PEG
3632         error_nonterminal PEG
3633         loc_pop_discard
3634         return
3635
3636sequence_447:
3637# x
3638#     'P'
3639#     'E'
3640#     'G'
3641#     !
3642#         /
3643#             '_'
3644#             ':'
3645#             <alnum>
3646#     (WHITESPACE)
3647
3648         loc_push
3649         error_clear
3650
3651         error_push
3652
3653         input_next        "t P"
3654     ok! test_char         "P"
3655
3656         error_pop_merge
3657   fail! jump              failed_448
3658         error_push
3659
3660         input_next        "t E"
3661     ok! test_char         "E"
3662
3663         error_pop_merge
3664   fail! jump              failed_448
3665         error_push
3666
3667         input_next        "t G"
3668     ok! test_char         "G"
3669
3670         error_pop_merge
3671   fail! jump              failed_448
3672         error_push
3673
3674         call              notahead_444
3675
3676         error_pop_merge
3677   fail! jump              failed_448
3678         error_push
3679
3680         call              sym_WHITESPACE
3681
3682         error_pop_merge
3683   fail! jump              failed_448
3684
3685         loc_pop_discard
3686         return
3687
3688failed_448:
3689         loc_pop_rewind
3690         return
3691
3692notahead_444:
3693# !
3694#     /
3695#         '_'
3696#         ':'
3697#         <alnum>
3698
3699         loc_push
3700
3701         call              choice_333
3702
3703         loc_pop_rewind
3704         status_negate
3705         return
3706#
3707# leaf Symbol 'PLUS'
3708#
3709
3710sym_PLUS:
3711# x
3712#     '+'
3713#     (WHITESPACE)
3714
3715         symbol_restore    PLUS
3716  found! jump              found_456
3717         loc_push
3718
3719         call              sequence_453
3720
3721   fail! value_clear
3722     ok! value_leaf        PLUS
3723         symbol_save       PLUS
3724         error_nonterminal PLUS
3725         loc_pop_discard
3726
3727found_456:
3728     ok! ast_value_push
3729         return
3730
3731sequence_453:
3732# x
3733#     '+'
3734#     (WHITESPACE)
3735
3736         loc_push
3737         error_clear
3738
3739         error_push
3740
3741         input_next        "t +"
3742     ok! test_char         "+"
3743
3744         error_pop_merge
3745   fail! jump              failed_454
3746         error_push
3747
3748         call              sym_WHITESPACE
3749
3750         error_pop_merge
3751   fail! jump              failed_454
3752
3753         loc_pop_discard
3754         return
3755
3756failed_454:
3757         loc_pop_rewind
3758         return
3759#
3760# value Symbol 'Prefix'
3761#
3762
3763sym_Prefix:
3764# x
3765#     ?
3766#         /
3767#             (AND)
3768#             (NOT)
3769#     (Suffix)
3770
3771         symbol_restore    Prefix
3772  found! jump              found_469
3773         loc_push
3774         ast_push
3775
3776         call              sequence_466
3777
3778   fail! value_clear
3779     ok! value_reduce      Prefix
3780         symbol_save       Prefix
3781         error_nonterminal Prefix
3782         ast_pop_rewind
3783         loc_pop_discard
3784
3785found_469:
3786     ok! ast_value_push
3787         return
3788
3789sequence_466:
3790# x
3791#     ?
3792#         /
3793#             (AND)
3794#             (NOT)
3795#     (Suffix)
3796
3797         ast_push
3798         loc_push
3799         error_clear
3800
3801         error_push
3802
3803         call              optional_463
3804
3805         error_pop_merge
3806   fail! jump              failed_467
3807         error_push
3808
3809         call              sym_Suffix
3810
3811         error_pop_merge
3812   fail! jump              failed_467
3813
3814         ast_pop_discard
3815         loc_pop_discard
3816         return
3817
3818failed_467:
3819         ast_pop_rewind
3820         loc_pop_rewind
3821         return
3822
3823optional_463:
3824# ?
3825#     /
3826#         (AND)
3827#         (NOT)
3828
3829         loc_push
3830         error_push
3831
3832         call              choice_461
3833
3834         error_pop_merge
3835   fail! loc_pop_rewind
3836     ok! loc_pop_discard
3837         status_ok
3838         return
3839
3840choice_461:
3841# /
3842#     (AND)
3843#     (NOT)
3844
3845         error_clear
3846
3847         ast_push
3848         loc_push
3849         error_push
3850
3851         call              sym_AND
3852
3853         error_pop_merge
3854     ok! jump              ok_460
3855
3856         ast_pop_rewind
3857         loc_pop_rewind
3858         ast_push
3859         loc_push
3860         error_push
3861
3862         call              sym_NOT
3863
3864         error_pop_merge
3865     ok! jump              ok_460
3866
3867         ast_pop_rewind
3868         loc_pop_rewind
3869         status_fail
3870         return
3871
3872ok_460:
3873         ast_pop_discard
3874         loc_pop_discard
3875         return
3876#
3877# value Symbol 'Primary'
3878#
3879
3880sym_Primary:
3881# /
3882#     (ALNUM)
3883#     (ALPHA)
3884#     (ASCII)
3885#     (CONTROL)
3886#     (DDIGIT)
3887#     (DIGIT)
3888#     (GRAPH)
3889#     (LOWER)
3890#     (PRINTABLE)
3891#     (PUNCT)
3892#     (SPACE)
3893#     (UPPER)
3894#     (WORDCHAR)
3895#     (XDIGIT)
3896#     (Identifier)
3897#     x
3898#         (OPEN)
3899#         (Expression)
3900#         (CLOSE)
3901#     (Literal)
3902#     (Class)
3903#     (DOT)
3904
3905         symbol_restore    Primary
3906  found! jump              found_499
3907         loc_push
3908         ast_push
3909
3910         call              choice_497
3911
3912   fail! value_clear
3913     ok! value_reduce      Primary
3914         symbol_save       Primary
3915         error_nonterminal Primary
3916         ast_pop_rewind
3917         loc_pop_discard
3918
3919found_499:
3920     ok! ast_value_push
3921         return
3922
3923choice_497:
3924# /
3925#     (ALNUM)
3926#     (ALPHA)
3927#     (ASCII)
3928#     (CONTROL)
3929#     (DDIGIT)
3930#     (DIGIT)
3931#     (GRAPH)
3932#     (LOWER)
3933#     (PRINTABLE)
3934#     (PUNCT)
3935#     (SPACE)
3936#     (UPPER)
3937#     (WORDCHAR)
3938#     (XDIGIT)
3939#     (Identifier)
3940#     x
3941#         (OPEN)
3942#         (Expression)
3943#         (CLOSE)
3944#     (Literal)
3945#     (Class)
3946#     (DOT)
3947
3948         error_clear
3949
3950         ast_push
3951         loc_push
3952         error_push
3953
3954         call              sym_ALNUM
3955
3956         error_pop_merge
3957     ok! jump              ok_496
3958
3959         ast_pop_rewind
3960         loc_pop_rewind
3961         ast_push
3962         loc_push
3963         error_push
3964
3965         call              sym_ALPHA
3966
3967         error_pop_merge
3968     ok! jump              ok_496
3969
3970         ast_pop_rewind
3971         loc_pop_rewind
3972         ast_push
3973         loc_push
3974         error_push
3975
3976         call              sym_ASCII
3977
3978         error_pop_merge
3979     ok! jump              ok_496
3980
3981         ast_pop_rewind
3982         loc_pop_rewind
3983         ast_push
3984         loc_push
3985         error_push
3986
3987         call              sym_CONTROL
3988
3989         error_pop_merge
3990     ok! jump              ok_496
3991
3992         ast_pop_rewind
3993         loc_pop_rewind
3994         ast_push
3995         loc_push
3996         error_push
3997
3998         call              sym_DDIGIT
3999
4000         error_pop_merge
4001     ok! jump              ok_496
4002
4003         ast_pop_rewind
4004         loc_pop_rewind
4005         ast_push
4006         loc_push
4007         error_push
4008
4009         call              sym_DIGIT
4010
4011         error_pop_merge
4012     ok! jump              ok_496
4013
4014         ast_pop_rewind
4015         loc_pop_rewind
4016         ast_push
4017         loc_push
4018         error_push
4019
4020         call              sym_GRAPH
4021
4022         error_pop_merge
4023     ok! jump              ok_496
4024
4025         ast_pop_rewind
4026         loc_pop_rewind
4027         ast_push
4028         loc_push
4029         error_push
4030
4031         call              sym_LOWER
4032
4033         error_pop_merge
4034     ok! jump              ok_496
4035
4036         ast_pop_rewind
4037         loc_pop_rewind
4038         ast_push
4039         loc_push
4040         error_push
4041
4042         call              sym_PRINTABLE
4043
4044         error_pop_merge
4045     ok! jump              ok_496
4046
4047         ast_pop_rewind
4048         loc_pop_rewind
4049         ast_push
4050         loc_push
4051         error_push
4052
4053         call              sym_PUNCT
4054
4055         error_pop_merge
4056     ok! jump              ok_496
4057
4058         ast_pop_rewind
4059         loc_pop_rewind
4060         ast_push
4061         loc_push
4062         error_push
4063
4064         call              sym_SPACE
4065
4066         error_pop_merge
4067     ok! jump              ok_496
4068
4069         ast_pop_rewind
4070         loc_pop_rewind
4071         ast_push
4072         loc_push
4073         error_push
4074
4075         call              sym_UPPER
4076
4077         error_pop_merge
4078     ok! jump              ok_496
4079
4080         ast_pop_rewind
4081         loc_pop_rewind
4082         ast_push
4083         loc_push
4084         error_push
4085
4086         call              sym_WORDCHAR
4087
4088         error_pop_merge
4089     ok! jump              ok_496
4090
4091         ast_pop_rewind
4092         loc_pop_rewind
4093         ast_push
4094         loc_push
4095         error_push
4096
4097         call              sym_XDIGIT
4098
4099         error_pop_merge
4100     ok! jump              ok_496
4101
4102         ast_pop_rewind
4103         loc_pop_rewind
4104         ast_push
4105         loc_push
4106         error_push
4107
4108         call              sym_Identifier
4109
4110         error_pop_merge
4111     ok! jump              ok_496
4112
4113         ast_pop_rewind
4114         loc_pop_rewind
4115         ast_push
4116         loc_push
4117         error_push
4118
4119         call              sequence_489
4120
4121         error_pop_merge
4122     ok! jump              ok_496
4123
4124         ast_pop_rewind
4125         loc_pop_rewind
4126         ast_push
4127         loc_push
4128         error_push
4129
4130         call              sym_Literal
4131
4132         error_pop_merge
4133     ok! jump              ok_496
4134
4135         ast_pop_rewind
4136         loc_pop_rewind
4137         ast_push
4138         loc_push
4139         error_push
4140
4141         call              sym_Class
4142
4143         error_pop_merge
4144     ok! jump              ok_496
4145
4146         ast_pop_rewind
4147         loc_pop_rewind
4148         ast_push
4149         loc_push
4150         error_push
4151
4152         call              sym_DOT
4153
4154         error_pop_merge
4155     ok! jump              ok_496
4156
4157         ast_pop_rewind
4158         loc_pop_rewind
4159         status_fail
4160         return
4161
4162ok_496:
4163         ast_pop_discard
4164         loc_pop_discard
4165         return
4166
4167sequence_489:
4168# x
4169#     (OPEN)
4170#     (Expression)
4171#     (CLOSE)
4172
4173         loc_push
4174         error_clear
4175
4176         error_push
4177
4178         call              sym_OPEN
4179
4180         error_pop_merge
4181   fail! jump              failednoast_491
4182         ast_push
4183         error_push
4184
4185         call              sym_Expression
4186
4187         error_pop_merge
4188   fail! jump              failed_490
4189         error_push
4190
4191         call              sym_CLOSE
4192
4193         error_pop_merge
4194   fail! jump              failed_490
4195
4196         ast_pop_discard
4197         loc_pop_discard
4198         return
4199
4200failed_490:
4201         ast_pop_rewind
4202
4203failednoast_491:
4204         loc_pop_rewind
4205         return
4206#
4207# leaf Symbol 'PRINTABLE'
4208#
4209
4210sym_PRINTABLE:
4211# x
4212#     '<'
4213#     'p'
4214#     'r'
4215#     'i'
4216#     'n'
4217#     't'
4218#     '>'
4219#     (WHITESPACE)
4220
4221         symbol_restore    PRINTABLE
4222  found! jump              found_512
4223         loc_push
4224
4225         call              sequence_509
4226
4227   fail! value_clear
4228     ok! value_leaf        PRINTABLE
4229         symbol_save       PRINTABLE
4230         error_nonterminal PRINTABLE
4231         loc_pop_discard
4232
4233found_512:
4234     ok! ast_value_push
4235         return
4236
4237sequence_509:
4238# x
4239#     '<'
4240#     'p'
4241#     'r'
4242#     'i'
4243#     'n'
4244#     't'
4245#     '>'
4246#     (WHITESPACE)
4247
4248         loc_push
4249         error_clear
4250
4251         error_push
4252
4253         input_next        "t <"
4254     ok! test_char         "<"
4255
4256         error_pop_merge
4257   fail! jump              failed_510
4258         error_push
4259
4260         input_next        "t p"
4261     ok! test_char         "p"
4262
4263         error_pop_merge
4264   fail! jump              failed_510
4265         error_push
4266
4267         input_next        "t r"
4268     ok! test_char         "r"
4269
4270         error_pop_merge
4271   fail! jump              failed_510
4272         error_push
4273
4274         input_next        "t i"
4275     ok! test_char         "i"
4276
4277         error_pop_merge
4278   fail! jump              failed_510
4279         error_push
4280
4281         input_next        "t n"
4282     ok! test_char         "n"
4283
4284         error_pop_merge
4285   fail! jump              failed_510
4286         error_push
4287
4288         input_next        "t t"
4289     ok! test_char         "t"
4290
4291         error_pop_merge
4292   fail! jump              failed_510
4293         error_push
4294
4295         input_next        "t >"
4296     ok! test_char         ">"
4297
4298         error_pop_merge
4299   fail! jump              failed_510
4300         error_push
4301
4302         call              sym_WHITESPACE
4303
4304         error_pop_merge
4305   fail! jump              failed_510
4306
4307         loc_pop_discard
4308         return
4309
4310failed_510:
4311         loc_pop_rewind
4312         return
4313#
4314# leaf Symbol 'PUNCT'
4315#
4316
4317sym_PUNCT:
4318# x
4319#     '<'
4320#     'p'
4321#     'u'
4322#     'n'
4323#     'c'
4324#     't'
4325#     '>'
4326#     (WHITESPACE)
4327
4328         symbol_restore    PUNCT
4329  found! jump              found_525
4330         loc_push
4331
4332         call              sequence_522
4333
4334   fail! value_clear
4335     ok! value_leaf        PUNCT
4336         symbol_save       PUNCT
4337         error_nonterminal PUNCT
4338         loc_pop_discard
4339
4340found_525:
4341     ok! ast_value_push
4342         return
4343
4344sequence_522:
4345# x
4346#     '<'
4347#     'p'
4348#     'u'
4349#     'n'
4350#     'c'
4351#     't'
4352#     '>'
4353#     (WHITESPACE)
4354
4355         loc_push
4356         error_clear
4357
4358         error_push
4359
4360         input_next        "t <"
4361     ok! test_char         "<"
4362
4363         error_pop_merge
4364   fail! jump              failed_523
4365         error_push
4366
4367         input_next        "t p"
4368     ok! test_char         "p"
4369
4370         error_pop_merge
4371   fail! jump              failed_523
4372         error_push
4373
4374         input_next        "t u"
4375     ok! test_char         "u"
4376
4377         error_pop_merge
4378   fail! jump              failed_523
4379         error_push
4380
4381         input_next        "t n"
4382     ok! test_char         "n"
4383
4384         error_pop_merge
4385   fail! jump              failed_523
4386         error_push
4387
4388         input_next        "t c"
4389     ok! test_char         "c"
4390
4391         error_pop_merge
4392   fail! jump              failed_523
4393         error_push
4394
4395         input_next        "t t"
4396     ok! test_char         "t"
4397
4398         error_pop_merge
4399   fail! jump              failed_523
4400         error_push
4401
4402         input_next        "t >"
4403     ok! test_char         ">"
4404
4405         error_pop_merge
4406   fail! jump              failed_523
4407         error_push
4408
4409         call              sym_WHITESPACE
4410
4411         error_pop_merge
4412   fail! jump              failed_523
4413
4414         loc_pop_discard
4415         return
4416
4417failed_523:
4418         loc_pop_rewind
4419         return
4420#
4421# leaf Symbol 'QUESTION'
4422#
4423
4424sym_QUESTION:
4425# x
4426#     '?'
4427#     (WHITESPACE)
4428
4429         symbol_restore    QUESTION
4430  found! jump              found_532
4431         loc_push
4432
4433         call              sequence_529
4434
4435   fail! value_clear
4436     ok! value_leaf        QUESTION
4437         symbol_save       QUESTION
4438         error_nonterminal QUESTION
4439         loc_pop_discard
4440
4441found_532:
4442     ok! ast_value_push
4443         return
4444
4445sequence_529:
4446# x
4447#     '?'
4448#     (WHITESPACE)
4449
4450         loc_push
4451         error_clear
4452
4453         error_push
4454
4455         input_next        "t ?"
4456     ok! test_char         "?"
4457
4458         error_pop_merge
4459   fail! jump              failed_530
4460         error_push
4461
4462         call              sym_WHITESPACE
4463
4464         error_pop_merge
4465   fail! jump              failed_530
4466
4467         loc_pop_discard
4468         return
4469
4470failed_530:
4471         loc_pop_rewind
4472         return
4473#
4474# value Symbol 'Range'
4475#
4476
4477sym_Range:
4478# /
4479#     x
4480#         (Char)
4481#         (TO)
4482#         (Char)
4483#     (Char)
4484
4485         symbol_restore    Range
4486  found! jump              found_544
4487         loc_push
4488         ast_push
4489
4490         call              choice_542
4491
4492   fail! value_clear
4493     ok! value_reduce      Range
4494         symbol_save       Range
4495         error_nonterminal Range
4496         ast_pop_rewind
4497         loc_pop_discard
4498
4499found_544:
4500     ok! ast_value_push
4501         return
4502
4503choice_542:
4504# /
4505#     x
4506#         (Char)
4507#         (TO)
4508#         (Char)
4509#     (Char)
4510
4511         error_clear
4512
4513         ast_push
4514         loc_push
4515         error_push
4516
4517         call              sequence_537
4518
4519         error_pop_merge
4520     ok! jump              ok_541
4521
4522         ast_pop_rewind
4523         loc_pop_rewind
4524         ast_push
4525         loc_push
4526         error_push
4527
4528         call              sym_Char
4529
4530         error_pop_merge
4531     ok! jump              ok_541
4532
4533         ast_pop_rewind
4534         loc_pop_rewind
4535         status_fail
4536         return
4537
4538ok_541:
4539         ast_pop_discard
4540         loc_pop_discard
4541         return
4542
4543sequence_537:
4544# x
4545#     (Char)
4546#     (TO)
4547#     (Char)
4548
4549         ast_push
4550         loc_push
4551         error_clear
4552
4553         error_push
4554
4555         call              sym_Char
4556
4557         error_pop_merge
4558   fail! jump              failed_538
4559         error_push
4560
4561         call              sym_TO
4562
4563         error_pop_merge
4564   fail! jump              failed_538
4565         error_push
4566
4567         call              sym_Char
4568
4569         error_pop_merge
4570   fail! jump              failed_538
4571
4572         ast_pop_discard
4573         loc_pop_discard
4574         return
4575
4576failed_538:
4577         ast_pop_rewind
4578         loc_pop_rewind
4579         return
4580#
4581# void Symbol 'SEMICOLON'
4582#
4583
4584sym_SEMICOLON:
4585# x
4586#     ';'
4587#     (WHITESPACE)
4588
4589         symbol_restore    SEMICOLON
4590  found! return
4591         loc_push
4592
4593         call              sequence_548
4594
4595         value_clear
4596         symbol_save       SEMICOLON
4597         error_nonterminal SEMICOLON
4598         loc_pop_discard
4599         return
4600
4601sequence_548:
4602# x
4603#     ';'
4604#     (WHITESPACE)
4605
4606         loc_push
4607         error_clear
4608
4609         error_push
4610
4611         input_next        "t ;"
4612     ok! test_char         ";"
4613
4614         error_pop_merge
4615   fail! jump              failed_549
4616         error_push
4617
4618         call              sym_WHITESPACE
4619
4620         error_pop_merge
4621   fail! jump              failed_549
4622
4623         loc_pop_discard
4624         return
4625
4626failed_549:
4627         loc_pop_rewind
4628         return
4629#
4630# value Symbol 'Sequence'
4631#
4632
4633sym_Sequence:
4634# +
4635#     (Prefix)
4636
4637         symbol_restore    Sequence
4638  found! jump              found_557
4639         loc_push
4640         ast_push
4641
4642         call              poskleene_553
4643
4644   fail! value_clear
4645     ok! value_reduce      Sequence
4646         symbol_save       Sequence
4647         error_nonterminal Sequence
4648         ast_pop_rewind
4649         loc_pop_discard
4650
4651found_557:
4652     ok! ast_value_push
4653         return
4654
4655poskleene_553:
4656# +
4657#     (Prefix)
4658
4659         loc_push
4660
4661         call              sym_Prefix
4662
4663   fail! jump              failed_554
4664
4665loop_555:
4666         loc_pop_discard
4667         loc_push
4668         error_push
4669
4670         call              sym_Prefix
4671
4672         error_pop_merge
4673     ok! jump              loop_555
4674         status_ok
4675
4676failed_554:
4677         loc_pop_rewind
4678         return
4679#
4680# void Symbol 'SLASH'
4681#
4682
4683sym_SLASH:
4684# x
4685#     '/'
4686#     (WHITESPACE)
4687
4688         symbol_restore    SLASH
4689  found! return
4690         loc_push
4691
4692         call              sequence_561
4693
4694         value_clear
4695         symbol_save       SLASH
4696         error_nonterminal SLASH
4697         loc_pop_discard
4698         return
4699
4700sequence_561:
4701# x
4702#     '/'
4703#     (WHITESPACE)
4704
4705         loc_push
4706         error_clear
4707
4708         error_push
4709
4710         input_next        "t /"
4711     ok! test_char         "/"
4712
4713         error_pop_merge
4714   fail! jump              failed_562
4715         error_push
4716
4717         call              sym_WHITESPACE
4718
4719         error_pop_merge
4720   fail! jump              failed_562
4721
4722         loc_pop_discard
4723         return
4724
4725failed_562:
4726         loc_pop_rewind
4727         return
4728#
4729# leaf Symbol 'SPACE'
4730#
4731
4732sym_SPACE:
4733# x
4734#     '<'
4735#     's'
4736#     'p'
4737#     'a'
4738#     'c'
4739#     'e'
4740#     '>'
4741#     (WHITESPACE)
4742
4743         symbol_restore    SPACE
4744  found! jump              found_576
4745         loc_push
4746
4747         call              sequence_573
4748
4749   fail! value_clear
4750     ok! value_leaf        SPACE
4751         symbol_save       SPACE
4752         error_nonterminal SPACE
4753         loc_pop_discard
4754
4755found_576:
4756     ok! ast_value_push
4757         return
4758
4759sequence_573:
4760# x
4761#     '<'
4762#     's'
4763#     'p'
4764#     'a'
4765#     'c'
4766#     'e'
4767#     '>'
4768#     (WHITESPACE)
4769
4770         loc_push
4771         error_clear
4772
4773         error_push
4774
4775         input_next        "t <"
4776     ok! test_char         "<"
4777
4778         error_pop_merge
4779   fail! jump              failed_574
4780         error_push
4781
4782         input_next        "t s"
4783     ok! test_char         "s"
4784
4785         error_pop_merge
4786   fail! jump              failed_574
4787         error_push
4788
4789         input_next        "t p"
4790     ok! test_char         "p"
4791
4792         error_pop_merge
4793   fail! jump              failed_574
4794         error_push
4795
4796         input_next        "t a"
4797     ok! test_char         "a"
4798
4799         error_pop_merge
4800   fail! jump              failed_574
4801         error_push
4802
4803         input_next        "t c"
4804     ok! test_char         "c"
4805
4806         error_pop_merge
4807   fail! jump              failed_574
4808         error_push
4809
4810         input_next        "t e"
4811     ok! test_char         "e"
4812
4813         error_pop_merge
4814   fail! jump              failed_574
4815         error_push
4816
4817         input_next        "t >"
4818     ok! test_char         ">"
4819
4820         error_pop_merge
4821   fail! jump              failed_574
4822         error_push
4823
4824         call              sym_WHITESPACE
4825
4826         error_pop_merge
4827   fail! jump              failed_574
4828
4829         loc_pop_discard
4830         return
4831
4832failed_574:
4833         loc_pop_rewind
4834         return
4835#
4836# leaf Symbol 'STAR'
4837#
4838
4839sym_STAR:
4840# x
4841#     '*'
4842#     (WHITESPACE)
4843
4844         symbol_restore    STAR
4845  found! jump              found_583
4846         loc_push
4847
4848         call              sequence_580
4849
4850   fail! value_clear
4851     ok! value_leaf        STAR
4852         symbol_save       STAR
4853         error_nonterminal STAR
4854         loc_pop_discard
4855
4856found_583:
4857     ok! ast_value_push
4858         return
4859
4860sequence_580:
4861# x
4862#     '*'
4863#     (WHITESPACE)
4864
4865         loc_push
4866         error_clear
4867
4868         error_push
4869
4870         input_next        "t *"
4871     ok! test_char         "*"
4872
4873         error_pop_merge
4874   fail! jump              failed_581
4875         error_push
4876
4877         call              sym_WHITESPACE
4878
4879         error_pop_merge
4880   fail! jump              failed_581
4881
4882         loc_pop_discard
4883         return
4884
4885failed_581:
4886         loc_pop_rewind
4887         return
4888#
4889# value Symbol 'StartExpr'
4890#
4891
4892sym_StartExpr:
4893# x
4894#     (OPEN)
4895#     (Expression)
4896#     (CLOSE)
4897
4898         symbol_restore    StartExpr
4899  found! jump              found_589
4900         loc_push
4901         ast_push
4902
4903         call              sequence_489
4904
4905   fail! value_clear
4906     ok! value_reduce      StartExpr
4907         symbol_save       StartExpr
4908         error_nonterminal StartExpr
4909         ast_pop_rewind
4910         loc_pop_discard
4911
4912found_589:
4913     ok! ast_value_push
4914         return
4915#
4916# value Symbol 'Suffix'
4917#
4918
4919sym_Suffix:
4920# x
4921#     (Primary)
4922#     ?
4923#         /
4924#             (QUESTION)
4925#             (STAR)
4926#             (PLUS)
4927
4928         symbol_restore    Suffix
4929  found! jump              found_603
4930         loc_push
4931         ast_push
4932
4933         call              sequence_600
4934
4935   fail! value_clear
4936     ok! value_reduce      Suffix
4937         symbol_save       Suffix
4938         error_nonterminal Suffix
4939         ast_pop_rewind
4940         loc_pop_discard
4941
4942found_603:
4943     ok! ast_value_push
4944         return
4945
4946sequence_600:
4947# x
4948#     (Primary)
4949#     ?
4950#         /
4951#             (QUESTION)
4952#             (STAR)
4953#             (PLUS)
4954
4955         ast_push
4956         loc_push
4957         error_clear
4958
4959         error_push
4960
4961         call              sym_Primary
4962
4963         error_pop_merge
4964   fail! jump              failed_601
4965         error_push
4966
4967         call              optional_598
4968
4969         error_pop_merge
4970   fail! jump              failed_601
4971
4972         ast_pop_discard
4973         loc_pop_discard
4974         return
4975
4976failed_601:
4977         ast_pop_rewind
4978         loc_pop_rewind
4979         return
4980
4981optional_598:
4982# ?
4983#     /
4984#         (QUESTION)
4985#         (STAR)
4986#         (PLUS)
4987
4988         loc_push
4989         error_push
4990
4991         call              choice_596
4992
4993         error_pop_merge
4994   fail! loc_pop_rewind
4995     ok! loc_pop_discard
4996         status_ok
4997         return
4998
4999choice_596:
5000# /
5001#     (QUESTION)
5002#     (STAR)
5003#     (PLUS)
5004
5005         error_clear
5006
5007         ast_push
5008         loc_push
5009         error_push
5010
5011         call              sym_QUESTION
5012
5013         error_pop_merge
5014     ok! jump              ok_595
5015
5016         ast_pop_rewind
5017         loc_pop_rewind
5018         ast_push
5019         loc_push
5020         error_push
5021
5022         call              sym_STAR
5023
5024         error_pop_merge
5025     ok! jump              ok_595
5026
5027         ast_pop_rewind
5028         loc_pop_rewind
5029         ast_push
5030         loc_push
5031         error_push
5032
5033         call              sym_PLUS
5034
5035         error_pop_merge
5036     ok! jump              ok_595
5037
5038         ast_pop_rewind
5039         loc_pop_rewind
5040         status_fail
5041         return
5042
5043ok_595:
5044         ast_pop_discard
5045         loc_pop_discard
5046         return
5047#
5048# void Symbol 'TO'
5049#
5050
5051sym_TO:
5052# '-'
5053
5054         symbol_restore    TO
5055  found! return
5056         loc_push
5057
5058         input_next        "t -"
5059     ok! test_char         "-"
5060
5061         value_clear
5062         symbol_save       TO
5063         error_nonterminal TO
5064         loc_pop_discard
5065         return
5066#
5067# leaf Symbol 'UPPER'
5068#
5069
5070sym_UPPER:
5071# x
5072#     '<'
5073#     'u'
5074#     'p'
5075#     'p'
5076#     'e'
5077#     'r'
5078#     '>'
5079#     (WHITESPACE)
5080
5081         symbol_restore    UPPER
5082  found! jump              found_618
5083         loc_push
5084
5085         call              sequence_615
5086
5087   fail! value_clear
5088     ok! value_leaf        UPPER
5089         symbol_save       UPPER
5090         error_nonterminal UPPER
5091         loc_pop_discard
5092
5093found_618:
5094     ok! ast_value_push
5095         return
5096
5097sequence_615:
5098# x
5099#     '<'
5100#     'u'
5101#     'p'
5102#     'p'
5103#     'e'
5104#     'r'
5105#     '>'
5106#     (WHITESPACE)
5107
5108         loc_push
5109         error_clear
5110
5111         error_push
5112
5113         input_next        "t <"
5114     ok! test_char         "<"
5115
5116         error_pop_merge
5117   fail! jump              failed_616
5118         error_push
5119
5120         input_next        "t u"
5121     ok! test_char         "u"
5122
5123         error_pop_merge
5124   fail! jump              failed_616
5125         error_push
5126
5127         input_next        "t p"
5128     ok! test_char         "p"
5129
5130         error_pop_merge
5131   fail! jump              failed_616
5132         error_push
5133
5134         input_next        "t p"
5135     ok! test_char         "p"
5136
5137         error_pop_merge
5138   fail! jump              failed_616
5139         error_push
5140
5141         input_next        "t e"
5142     ok! test_char         "e"
5143
5144         error_pop_merge
5145   fail! jump              failed_616
5146         error_push
5147
5148         input_next        "t r"
5149     ok! test_char         "r"
5150
5151         error_pop_merge
5152   fail! jump              failed_616
5153         error_push
5154
5155         input_next        "t >"
5156     ok! test_char         ">"
5157
5158         error_pop_merge
5159   fail! jump              failed_616
5160         error_push
5161
5162         call              sym_WHITESPACE
5163
5164         error_pop_merge
5165   fail! jump              failed_616
5166
5167         loc_pop_discard
5168         return
5169
5170failed_616:
5171         loc_pop_rewind
5172         return
5173#
5174# leaf Symbol 'VOID'
5175#
5176
5177sym_VOID:
5178# x
5179#     'v'
5180#     'o'
5181#     'i'
5182#     'd'
5183#     (WHITESPACE)
5184
5185         symbol_restore    VOID
5186  found! jump              found_628
5187         loc_push
5188
5189         call              sequence_625
5190
5191   fail! value_clear
5192     ok! value_leaf        VOID
5193         symbol_save       VOID
5194         error_nonterminal VOID
5195         loc_pop_discard
5196
5197found_628:
5198     ok! ast_value_push
5199         return
5200
5201sequence_625:
5202# x
5203#     'v'
5204#     'o'
5205#     'i'
5206#     'd'
5207#     (WHITESPACE)
5208
5209         loc_push
5210         error_clear
5211
5212         error_push
5213
5214         input_next        "t v"
5215     ok! test_char         "v"
5216
5217         error_pop_merge
5218   fail! jump              failed_626
5219         error_push
5220
5221         input_next        "t o"
5222     ok! test_char         "o"
5223
5224         error_pop_merge
5225   fail! jump              failed_626
5226         error_push
5227
5228         input_next        "t i"
5229     ok! test_char         "i"
5230
5231         error_pop_merge
5232   fail! jump              failed_626
5233         error_push
5234
5235         input_next        "t d"
5236     ok! test_char         "d"
5237
5238         error_pop_merge
5239   fail! jump              failed_626
5240         error_push
5241
5242         call              sym_WHITESPACE
5243
5244         error_pop_merge
5245   fail! jump              failed_626
5246
5247         loc_pop_discard
5248         return
5249
5250failed_626:
5251         loc_pop_rewind
5252         return
5253#
5254# void Symbol 'WHITESPACE'
5255#
5256
5257sym_WHITESPACE:
5258# *
5259#     /
5260#         <space>
5261#         (COMMENT)
5262
5263         symbol_restore    WHITESPACE
5264  found! return
5265         loc_push
5266
5267         call              kleene_635
5268
5269         value_clear
5270         symbol_save       WHITESPACE
5271         error_nonterminal WHITESPACE
5272         loc_pop_discard
5273         return
5274
5275kleene_635:
5276# *
5277#     /
5278#         <space>
5279#         (COMMENT)
5280
5281         loc_push
5282         error_push
5283
5284         call              choice_633
5285
5286         error_pop_merge
5287   fail! jump              failed_636
5288         loc_pop_discard
5289         jump              kleene_635
5290
5291failed_636:
5292         loc_pop_rewind
5293         status_ok
5294         return
5295
5296choice_633:
5297# /
5298#     <space>
5299#     (COMMENT)
5300
5301         error_clear
5302
5303         loc_push
5304         error_push
5305
5306         input_next        "space"
5307     ok! test_space
5308
5309         error_pop_merge
5310     ok! jump              oknoast_632
5311
5312         loc_pop_rewind
5313         loc_push
5314         error_push
5315
5316         call              sym_COMMENT
5317
5318         error_pop_merge
5319     ok! jump              oknoast_632
5320
5321         loc_pop_rewind
5322         status_fail
5323         return
5324
5325oknoast_632:
5326         loc_pop_discard
5327         return
5328#
5329# leaf Symbol 'WORDCHAR'
5330#
5331
5332sym_WORDCHAR:
5333# x
5334#     '<'
5335#     'w'
5336#     'o'
5337#     'r'
5338#     'd'
5339#     'c'
5340#     'h'
5341#     'a'
5342#     'r'
5343#     '>'
5344#     (WHITESPACE)
5345
5346         symbol_restore    WORDCHAR
5347  found! jump              found_653
5348         loc_push
5349
5350         call              sequence_650
5351
5352   fail! value_clear
5353     ok! value_leaf        WORDCHAR
5354         symbol_save       WORDCHAR
5355         error_nonterminal WORDCHAR
5356         loc_pop_discard
5357
5358found_653:
5359     ok! ast_value_push
5360         return
5361
5362sequence_650:
5363# x
5364#     '<'
5365#     'w'
5366#     'o'
5367#     'r'
5368#     'd'
5369#     'c'
5370#     'h'
5371#     'a'
5372#     'r'
5373#     '>'
5374#     (WHITESPACE)
5375
5376         loc_push
5377         error_clear
5378
5379         error_push
5380
5381         input_next        "t <"
5382     ok! test_char         "<"
5383
5384         error_pop_merge
5385   fail! jump              failed_651
5386         error_push
5387
5388         input_next        "t w"
5389     ok! test_char         "w"
5390
5391         error_pop_merge
5392   fail! jump              failed_651
5393         error_push
5394
5395         input_next        "t o"
5396     ok! test_char         "o"
5397
5398         error_pop_merge
5399   fail! jump              failed_651
5400         error_push
5401
5402         input_next        "t r"
5403     ok! test_char         "r"
5404
5405         error_pop_merge
5406   fail! jump              failed_651
5407         error_push
5408
5409         input_next        "t d"
5410     ok! test_char         "d"
5411
5412         error_pop_merge
5413   fail! jump              failed_651
5414         error_push
5415
5416         input_next        "t c"
5417     ok! test_char         "c"
5418
5419         error_pop_merge
5420   fail! jump              failed_651
5421         error_push
5422
5423         input_next        "t h"
5424     ok! test_char         "h"
5425
5426         error_pop_merge
5427   fail! jump              failed_651
5428         error_push
5429
5430         input_next        "t a"
5431     ok! test_char         "a"
5432
5433         error_pop_merge
5434   fail! jump              failed_651
5435         error_push
5436
5437         input_next        "t r"
5438     ok! test_char         "r"
5439
5440         error_pop_merge
5441   fail! jump              failed_651
5442         error_push
5443
5444         input_next        "t >"
5445     ok! test_char         ">"
5446
5447         error_pop_merge
5448   fail! jump              failed_651
5449         error_push
5450
5451         call              sym_WHITESPACE
5452
5453         error_pop_merge
5454   fail! jump              failed_651
5455
5456         loc_pop_discard
5457         return
5458
5459failed_651:
5460         loc_pop_rewind
5461         return
5462#
5463# leaf Symbol 'XDIGIT'
5464#
5465
5466sym_XDIGIT:
5467# x
5468#     '<'
5469#     'x'
5470#     'd'
5471#     'i'
5472#     'g'
5473#     'i'
5474#     't'
5475#     '>'
5476#     (WHITESPACE)
5477
5478         symbol_restore    XDIGIT
5479  found! jump              found_667
5480         loc_push
5481
5482         call              sequence_664
5483
5484   fail! value_clear
5485     ok! value_leaf        XDIGIT
5486         symbol_save       XDIGIT
5487         error_nonterminal XDIGIT
5488         loc_pop_discard
5489
5490found_667:
5491     ok! ast_value_push
5492         return
5493
5494sequence_664:
5495# x
5496#     '<'
5497#     'x'
5498#     'd'
5499#     'i'
5500#     'g'
5501#     'i'
5502#     't'
5503#     '>'
5504#     (WHITESPACE)
5505
5506         loc_push
5507         error_clear
5508
5509         error_push
5510
5511         input_next        "t <"
5512     ok! test_char         "<"
5513
5514         error_pop_merge
5515   fail! jump              failed_665
5516         error_push
5517
5518         input_next        "t x"
5519     ok! test_char         "x"
5520
5521         error_pop_merge
5522   fail! jump              failed_665
5523         error_push
5524
5525         input_next        "t d"
5526     ok! test_char         "d"
5527
5528         error_pop_merge
5529   fail! jump              failed_665
5530         error_push
5531
5532         input_next        "t i"
5533     ok! test_char         "i"
5534
5535         error_pop_merge
5536   fail! jump              failed_665
5537         error_push
5538
5539         input_next        "t g"
5540     ok! test_char         "g"
5541
5542         error_pop_merge
5543   fail! jump              failed_665
5544         error_push
5545
5546         input_next        "t i"
5547     ok! test_char         "i"
5548
5549         error_pop_merge
5550   fail! jump              failed_665
5551         error_push
5552
5553         input_next        "t t"
5554     ok! test_char         "t"
5555
5556         error_pop_merge
5557   fail! jump              failed_665
5558         error_push
5559
5560         input_next        "t >"
5561     ok! test_char         ">"
5562
5563         error_pop_merge
5564   fail! jump              failed_665
5565         error_push
5566
5567         call              sym_WHITESPACE
5568
5569         error_pop_merge
5570   fail! jump              failed_665
5571
5572         loc_pop_discard
5573         return
5574
5575failed_665:
5576         loc_pop_rewind
5577         return
5578
5579#
5580#
5581