1 /* Generated by re2c 1.1.1 */
2 #include <stdlib.h>
3 #include "chunk.h"
4 #include "scanners.h"
5
_scan_at(bufsize_t (* scanner)(const unsigned char *),cmark_chunk * c,bufsize_t offset)6 bufsize_t _scan_at(bufsize_t (*scanner)(const unsigned char *), cmark_chunk *c, bufsize_t offset)
7 {
8 bufsize_t res;
9 unsigned char *ptr = (unsigned char *)c->data;
10
11 if (ptr == NULL || offset > c->len) {
12 return 0;
13 } else {
14 unsigned char lim = ptr[c->len];
15
16 ptr[c->len] = '\0';
17 res = scanner(ptr + offset);
18 ptr[c->len] = lim;
19 }
20
21 return res;
22 }
23
24
25
26 // Try to match a scheme including colon.
_scan_scheme(const unsigned char * p)27 bufsize_t _scan_scheme(const unsigned char *p)
28 {
29 const unsigned char *marker = NULL;
30 const unsigned char *start = p;
31
32 {
33 unsigned char yych;
34 yych = *p;
35 if (yych <= '@') goto yy2;
36 if (yych <= 'Z') goto yy4;
37 if (yych <= '`') goto yy2;
38 if (yych <= 'z') goto yy4;
39 yy2:
40 ++p;
41 yy3:
42 { return 0; }
43 yy4:
44 yych = *(marker = ++p);
45 if (yych <= '/') {
46 if (yych <= '+') {
47 if (yych <= '*') goto yy3;
48 } else {
49 if (yych <= ',') goto yy3;
50 if (yych >= '/') goto yy3;
51 }
52 } else {
53 if (yych <= 'Z') {
54 if (yych <= '9') goto yy5;
55 if (yych <= '@') goto yy3;
56 } else {
57 if (yych <= '`') goto yy3;
58 if (yych >= '{') goto yy3;
59 }
60 }
61 yy5:
62 yych = *++p;
63 if (yych <= '9') {
64 if (yych <= ',') {
65 if (yych == '+') goto yy7;
66 } else {
67 if (yych != '/') goto yy7;
68 }
69 } else {
70 if (yych <= 'Z') {
71 if (yych <= ':') goto yy8;
72 if (yych >= 'A') goto yy7;
73 } else {
74 if (yych <= '`') goto yy6;
75 if (yych <= 'z') goto yy7;
76 }
77 }
78 yy6:
79 p = marker;
80 goto yy3;
81 yy7:
82 yych = *++p;
83 if (yych <= '9') {
84 if (yych <= ',') {
85 if (yych == '+') goto yy10;
86 goto yy6;
87 } else {
88 if (yych == '/') goto yy6;
89 goto yy10;
90 }
91 } else {
92 if (yych <= 'Z') {
93 if (yych <= ':') goto yy8;
94 if (yych <= '@') goto yy6;
95 goto yy10;
96 } else {
97 if (yych <= '`') goto yy6;
98 if (yych <= 'z') goto yy10;
99 goto yy6;
100 }
101 }
102 yy8:
103 ++p;
104 { return (bufsize_t)(p - start); }
105 yy10:
106 yych = *++p;
107 if (yych <= '9') {
108 if (yych <= ',') {
109 if (yych != '+') goto yy6;
110 } else {
111 if (yych == '/') goto yy6;
112 }
113 } else {
114 if (yych <= 'Z') {
115 if (yych <= ':') goto yy8;
116 if (yych <= '@') goto yy6;
117 } else {
118 if (yych <= '`') goto yy6;
119 if (yych >= '{') goto yy6;
120 }
121 }
122 yych = *++p;
123 if (yych <= '9') {
124 if (yych <= ',') {
125 if (yych != '+') goto yy6;
126 } else {
127 if (yych == '/') goto yy6;
128 }
129 } else {
130 if (yych <= 'Z') {
131 if (yych <= ':') goto yy8;
132 if (yych <= '@') goto yy6;
133 } else {
134 if (yych <= '`') goto yy6;
135 if (yych >= '{') goto yy6;
136 }
137 }
138 yych = *++p;
139 if (yych <= '9') {
140 if (yych <= ',') {
141 if (yych != '+') goto yy6;
142 } else {
143 if (yych == '/') goto yy6;
144 }
145 } else {
146 if (yych <= 'Z') {
147 if (yych <= ':') goto yy8;
148 if (yych <= '@') goto yy6;
149 } else {
150 if (yych <= '`') goto yy6;
151 if (yych >= '{') goto yy6;
152 }
153 }
154 yych = *++p;
155 if (yych <= '9') {
156 if (yych <= ',') {
157 if (yych != '+') goto yy6;
158 } else {
159 if (yych == '/') goto yy6;
160 }
161 } else {
162 if (yych <= 'Z') {
163 if (yych <= ':') goto yy8;
164 if (yych <= '@') goto yy6;
165 } else {
166 if (yych <= '`') goto yy6;
167 if (yych >= '{') goto yy6;
168 }
169 }
170 yych = *++p;
171 if (yych <= '9') {
172 if (yych <= ',') {
173 if (yych != '+') goto yy6;
174 } else {
175 if (yych == '/') goto yy6;
176 }
177 } else {
178 if (yych <= 'Z') {
179 if (yych <= ':') goto yy8;
180 if (yych <= '@') goto yy6;
181 } else {
182 if (yych <= '`') goto yy6;
183 if (yych >= '{') goto yy6;
184 }
185 }
186 yych = *++p;
187 if (yych <= '9') {
188 if (yych <= ',') {
189 if (yych != '+') goto yy6;
190 } else {
191 if (yych == '/') goto yy6;
192 }
193 } else {
194 if (yych <= 'Z') {
195 if (yych <= ':') goto yy8;
196 if (yych <= '@') goto yy6;
197 } else {
198 if (yych <= '`') goto yy6;
199 if (yych >= '{') goto yy6;
200 }
201 }
202 yych = *++p;
203 if (yych <= '9') {
204 if (yych <= ',') {
205 if (yych != '+') goto yy6;
206 } else {
207 if (yych == '/') goto yy6;
208 }
209 } else {
210 if (yych <= 'Z') {
211 if (yych <= ':') goto yy8;
212 if (yych <= '@') goto yy6;
213 } else {
214 if (yych <= '`') goto yy6;
215 if (yych >= '{') goto yy6;
216 }
217 }
218 yych = *++p;
219 if (yych <= '9') {
220 if (yych <= ',') {
221 if (yych != '+') goto yy6;
222 } else {
223 if (yych == '/') goto yy6;
224 }
225 } else {
226 if (yych <= 'Z') {
227 if (yych <= ':') goto yy8;
228 if (yych <= '@') goto yy6;
229 } else {
230 if (yych <= '`') goto yy6;
231 if (yych >= '{') goto yy6;
232 }
233 }
234 yych = *++p;
235 if (yych <= '9') {
236 if (yych <= ',') {
237 if (yych != '+') goto yy6;
238 } else {
239 if (yych == '/') goto yy6;
240 }
241 } else {
242 if (yych <= 'Z') {
243 if (yych <= ':') goto yy8;
244 if (yych <= '@') goto yy6;
245 } else {
246 if (yych <= '`') goto yy6;
247 if (yych >= '{') goto yy6;
248 }
249 }
250 yych = *++p;
251 if (yych <= '9') {
252 if (yych <= ',') {
253 if (yych != '+') goto yy6;
254 } else {
255 if (yych == '/') goto yy6;
256 }
257 } else {
258 if (yych <= 'Z') {
259 if (yych <= ':') goto yy8;
260 if (yych <= '@') goto yy6;
261 } else {
262 if (yych <= '`') goto yy6;
263 if (yych >= '{') goto yy6;
264 }
265 }
266 yych = *++p;
267 if (yych <= '9') {
268 if (yych <= ',') {
269 if (yych != '+') goto yy6;
270 } else {
271 if (yych == '/') goto yy6;
272 }
273 } else {
274 if (yych <= 'Z') {
275 if (yych <= ':') goto yy8;
276 if (yych <= '@') goto yy6;
277 } else {
278 if (yych <= '`') goto yy6;
279 if (yych >= '{') goto yy6;
280 }
281 }
282 yych = *++p;
283 if (yych <= '9') {
284 if (yych <= ',') {
285 if (yych != '+') goto yy6;
286 } else {
287 if (yych == '/') goto yy6;
288 }
289 } else {
290 if (yych <= 'Z') {
291 if (yych <= ':') goto yy8;
292 if (yych <= '@') goto yy6;
293 } else {
294 if (yych <= '`') goto yy6;
295 if (yych >= '{') goto yy6;
296 }
297 }
298 yych = *++p;
299 if (yych <= '9') {
300 if (yych <= ',') {
301 if (yych != '+') goto yy6;
302 } else {
303 if (yych == '/') goto yy6;
304 }
305 } else {
306 if (yych <= 'Z') {
307 if (yych <= ':') goto yy8;
308 if (yych <= '@') goto yy6;
309 } else {
310 if (yych <= '`') goto yy6;
311 if (yych >= '{') goto yy6;
312 }
313 }
314 yych = *++p;
315 if (yych <= '9') {
316 if (yych <= ',') {
317 if (yych != '+') goto yy6;
318 } else {
319 if (yych == '/') goto yy6;
320 }
321 } else {
322 if (yych <= 'Z') {
323 if (yych <= ':') goto yy8;
324 if (yych <= '@') goto yy6;
325 } else {
326 if (yych <= '`') goto yy6;
327 if (yych >= '{') goto yy6;
328 }
329 }
330 yych = *++p;
331 if (yych <= '9') {
332 if (yych <= ',') {
333 if (yych != '+') goto yy6;
334 } else {
335 if (yych == '/') goto yy6;
336 }
337 } else {
338 if (yych <= 'Z') {
339 if (yych <= ':') goto yy8;
340 if (yych <= '@') goto yy6;
341 } else {
342 if (yych <= '`') goto yy6;
343 if (yych >= '{') goto yy6;
344 }
345 }
346 yych = *++p;
347 if (yych <= '9') {
348 if (yych <= ',') {
349 if (yych != '+') goto yy6;
350 } else {
351 if (yych == '/') goto yy6;
352 }
353 } else {
354 if (yych <= 'Z') {
355 if (yych <= ':') goto yy8;
356 if (yych <= '@') goto yy6;
357 } else {
358 if (yych <= '`') goto yy6;
359 if (yych >= '{') goto yy6;
360 }
361 }
362 yych = *++p;
363 if (yych <= '9') {
364 if (yych <= ',') {
365 if (yych != '+') goto yy6;
366 } else {
367 if (yych == '/') goto yy6;
368 }
369 } else {
370 if (yych <= 'Z') {
371 if (yych <= ':') goto yy8;
372 if (yych <= '@') goto yy6;
373 } else {
374 if (yych <= '`') goto yy6;
375 if (yych >= '{') goto yy6;
376 }
377 }
378 yych = *++p;
379 if (yych <= '9') {
380 if (yych <= ',') {
381 if (yych != '+') goto yy6;
382 } else {
383 if (yych == '/') goto yy6;
384 }
385 } else {
386 if (yych <= 'Z') {
387 if (yych <= ':') goto yy8;
388 if (yych <= '@') goto yy6;
389 } else {
390 if (yych <= '`') goto yy6;
391 if (yych >= '{') goto yy6;
392 }
393 }
394 yych = *++p;
395 if (yych <= '9') {
396 if (yych <= ',') {
397 if (yych != '+') goto yy6;
398 } else {
399 if (yych == '/') goto yy6;
400 }
401 } else {
402 if (yych <= 'Z') {
403 if (yych <= ':') goto yy8;
404 if (yych <= '@') goto yy6;
405 } else {
406 if (yych <= '`') goto yy6;
407 if (yych >= '{') goto yy6;
408 }
409 }
410 yych = *++p;
411 if (yych <= '9') {
412 if (yych <= ',') {
413 if (yych != '+') goto yy6;
414 } else {
415 if (yych == '/') goto yy6;
416 }
417 } else {
418 if (yych <= 'Z') {
419 if (yych <= ':') goto yy8;
420 if (yych <= '@') goto yy6;
421 } else {
422 if (yych <= '`') goto yy6;
423 if (yych >= '{') goto yy6;
424 }
425 }
426 yych = *++p;
427 if (yych <= '9') {
428 if (yych <= ',') {
429 if (yych != '+') goto yy6;
430 } else {
431 if (yych == '/') goto yy6;
432 }
433 } else {
434 if (yych <= 'Z') {
435 if (yych <= ':') goto yy8;
436 if (yych <= '@') goto yy6;
437 } else {
438 if (yych <= '`') goto yy6;
439 if (yych >= '{') goto yy6;
440 }
441 }
442 yych = *++p;
443 if (yych <= '9') {
444 if (yych <= ',') {
445 if (yych != '+') goto yy6;
446 } else {
447 if (yych == '/') goto yy6;
448 }
449 } else {
450 if (yych <= 'Z') {
451 if (yych <= ':') goto yy8;
452 if (yych <= '@') goto yy6;
453 } else {
454 if (yych <= '`') goto yy6;
455 if (yych >= '{') goto yy6;
456 }
457 }
458 yych = *++p;
459 if (yych <= '9') {
460 if (yych <= ',') {
461 if (yych != '+') goto yy6;
462 } else {
463 if (yych == '/') goto yy6;
464 }
465 } else {
466 if (yych <= 'Z') {
467 if (yych <= ':') goto yy8;
468 if (yych <= '@') goto yy6;
469 } else {
470 if (yych <= '`') goto yy6;
471 if (yych >= '{') goto yy6;
472 }
473 }
474 yych = *++p;
475 if (yych <= '9') {
476 if (yych <= ',') {
477 if (yych != '+') goto yy6;
478 } else {
479 if (yych == '/') goto yy6;
480 }
481 } else {
482 if (yych <= 'Z') {
483 if (yych <= ':') goto yy8;
484 if (yych <= '@') goto yy6;
485 } else {
486 if (yych <= '`') goto yy6;
487 if (yych >= '{') goto yy6;
488 }
489 }
490 yych = *++p;
491 if (yych <= '9') {
492 if (yych <= ',') {
493 if (yych != '+') goto yy6;
494 } else {
495 if (yych == '/') goto yy6;
496 }
497 } else {
498 if (yych <= 'Z') {
499 if (yych <= ':') goto yy8;
500 if (yych <= '@') goto yy6;
501 } else {
502 if (yych <= '`') goto yy6;
503 if (yych >= '{') goto yy6;
504 }
505 }
506 yych = *++p;
507 if (yych <= '9') {
508 if (yych <= ',') {
509 if (yych != '+') goto yy6;
510 } else {
511 if (yych == '/') goto yy6;
512 }
513 } else {
514 if (yych <= 'Z') {
515 if (yych <= ':') goto yy8;
516 if (yych <= '@') goto yy6;
517 } else {
518 if (yych <= '`') goto yy6;
519 if (yych >= '{') goto yy6;
520 }
521 }
522 yych = *++p;
523 if (yych <= '9') {
524 if (yych <= ',') {
525 if (yych != '+') goto yy6;
526 } else {
527 if (yych == '/') goto yy6;
528 }
529 } else {
530 if (yych <= 'Z') {
531 if (yych <= ':') goto yy8;
532 if (yych <= '@') goto yy6;
533 } else {
534 if (yych <= '`') goto yy6;
535 if (yych >= '{') goto yy6;
536 }
537 }
538 yych = *++p;
539 if (yych <= '9') {
540 if (yych <= ',') {
541 if (yych != '+') goto yy6;
542 } else {
543 if (yych == '/') goto yy6;
544 }
545 } else {
546 if (yych <= 'Z') {
547 if (yych <= ':') goto yy8;
548 if (yych <= '@') goto yy6;
549 } else {
550 if (yych <= '`') goto yy6;
551 if (yych >= '{') goto yy6;
552 }
553 }
554 yych = *++p;
555 if (yych == ':') goto yy8;
556 goto yy6;
557 }
558
559 }
560
561 // Try to match URI autolink after first <, returning number of chars matched.
_scan_autolink_uri(const unsigned char * p)562 bufsize_t _scan_autolink_uri(const unsigned char *p)
563 {
564 const unsigned char *marker = NULL;
565 const unsigned char *start = p;
566
567 {
568 unsigned char yych;
569 static const unsigned char yybm[] = {
570 0, 0, 0, 0, 0, 0, 0, 0,
571 0, 0, 0, 0, 0, 0, 0, 0,
572 0, 0, 0, 0, 0, 0, 0, 0,
573 0, 0, 0, 0, 0, 0, 0, 0,
574 0, 128, 128, 128, 128, 128, 128, 128,
575 128, 128, 128, 128, 128, 128, 128, 128,
576 128, 128, 128, 128, 128, 128, 128, 128,
577 128, 128, 128, 128, 0, 128, 0, 128,
578 128, 128, 128, 128, 128, 128, 128, 128,
579 128, 128, 128, 128, 128, 128, 128, 128,
580 128, 128, 128, 128, 128, 128, 128, 128,
581 128, 128, 128, 128, 128, 128, 128, 128,
582 128, 128, 128, 128, 128, 128, 128, 128,
583 128, 128, 128, 128, 128, 128, 128, 128,
584 128, 128, 128, 128, 128, 128, 128, 128,
585 128, 128, 128, 128, 128, 128, 128, 128,
586 0, 0, 0, 0, 0, 0, 0, 0,
587 0, 0, 0, 0, 0, 0, 0, 0,
588 0, 0, 0, 0, 0, 0, 0, 0,
589 0, 0, 0, 0, 0, 0, 0, 0,
590 0, 0, 0, 0, 0, 0, 0, 0,
591 0, 0, 0, 0, 0, 0, 0, 0,
592 0, 0, 0, 0, 0, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 0, 0, 0,
597 0, 0, 0, 0, 0, 0, 0, 0,
598 0, 0, 0, 0, 0, 0, 0, 0,
599 0, 0, 0, 0, 0, 0, 0, 0,
600 0, 0, 0, 0, 0, 0, 0, 0,
601 0, 0, 0, 0, 0, 0, 0, 0,
602 };
603 yych = *p;
604 if (yych <= '@') goto yy41;
605 if (yych <= 'Z') goto yy43;
606 if (yych <= '`') goto yy41;
607 if (yych <= 'z') goto yy43;
608 yy41:
609 ++p;
610 yy42:
611 { return 0; }
612 yy43:
613 yych = *(marker = ++p);
614 if (yych <= '/') {
615 if (yych <= '+') {
616 if (yych <= '*') goto yy42;
617 } else {
618 if (yych <= ',') goto yy42;
619 if (yych >= '/') goto yy42;
620 }
621 } else {
622 if (yych <= 'Z') {
623 if (yych <= '9') goto yy44;
624 if (yych <= '@') goto yy42;
625 } else {
626 if (yych <= '`') goto yy42;
627 if (yych >= '{') goto yy42;
628 }
629 }
630 yy44:
631 yych = *++p;
632 if (yych <= '9') {
633 if (yych <= ',') {
634 if (yych == '+') goto yy46;
635 } else {
636 if (yych != '/') goto yy46;
637 }
638 } else {
639 if (yych <= 'Z') {
640 if (yych <= ':') goto yy47;
641 if (yych >= 'A') goto yy46;
642 } else {
643 if (yych <= '`') goto yy45;
644 if (yych <= 'z') goto yy46;
645 }
646 }
647 yy45:
648 p = marker;
649 goto yy42;
650 yy46:
651 yych = *++p;
652 if (yych <= '9') {
653 if (yych <= ',') {
654 if (yych == '+') goto yy49;
655 goto yy45;
656 } else {
657 if (yych == '/') goto yy45;
658 goto yy49;
659 }
660 } else {
661 if (yych <= 'Z') {
662 if (yych <= ':') goto yy47;
663 if (yych <= '@') goto yy45;
664 goto yy49;
665 } else {
666 if (yych <= '`') goto yy45;
667 if (yych <= 'z') goto yy49;
668 goto yy45;
669 }
670 }
671 yy47:
672 yych = *++p;
673 if (yybm[0+yych] & 128) {
674 goto yy47;
675 }
676 if (yych <= 0xEC) {
677 if (yych <= 0xC1) {
678 if (yych <= '<') goto yy45;
679 if (yych <= '>') goto yy50;
680 goto yy45;
681 } else {
682 if (yych <= 0xDF) goto yy52;
683 if (yych <= 0xE0) goto yy53;
684 goto yy54;
685 }
686 } else {
687 if (yych <= 0xF0) {
688 if (yych <= 0xED) goto yy55;
689 if (yych <= 0xEF) goto yy54;
690 goto yy56;
691 } else {
692 if (yych <= 0xF3) goto yy57;
693 if (yych <= 0xF4) goto yy58;
694 goto yy45;
695 }
696 }
697 yy49:
698 yych = *++p;
699 if (yych <= '9') {
700 if (yych <= ',') {
701 if (yych == '+') goto yy59;
702 goto yy45;
703 } else {
704 if (yych == '/') goto yy45;
705 goto yy59;
706 }
707 } else {
708 if (yych <= 'Z') {
709 if (yych <= ':') goto yy47;
710 if (yych <= '@') goto yy45;
711 goto yy59;
712 } else {
713 if (yych <= '`') goto yy45;
714 if (yych <= 'z') goto yy59;
715 goto yy45;
716 }
717 }
718 yy50:
719 ++p;
720 { return (bufsize_t)(p - start); }
721 yy52:
722 yych = *++p;
723 if (yych <= 0x7F) goto yy45;
724 if (yych <= 0xBF) goto yy47;
725 goto yy45;
726 yy53:
727 yych = *++p;
728 if (yych <= 0x9F) goto yy45;
729 if (yych <= 0xBF) goto yy52;
730 goto yy45;
731 yy54:
732 yych = *++p;
733 if (yych <= 0x7F) goto yy45;
734 if (yych <= 0xBF) goto yy52;
735 goto yy45;
736 yy55:
737 yych = *++p;
738 if (yych <= 0x7F) goto yy45;
739 if (yych <= 0x9F) goto yy52;
740 goto yy45;
741 yy56:
742 yych = *++p;
743 if (yych <= 0x8F) goto yy45;
744 if (yych <= 0xBF) goto yy54;
745 goto yy45;
746 yy57:
747 yych = *++p;
748 if (yych <= 0x7F) goto yy45;
749 if (yych <= 0xBF) goto yy54;
750 goto yy45;
751 yy58:
752 yych = *++p;
753 if (yych <= 0x7F) goto yy45;
754 if (yych <= 0x8F) goto yy54;
755 goto yy45;
756 yy59:
757 yych = *++p;
758 if (yych <= '9') {
759 if (yych <= ',') {
760 if (yych != '+') goto yy45;
761 } else {
762 if (yych == '/') goto yy45;
763 }
764 } else {
765 if (yych <= 'Z') {
766 if (yych <= ':') goto yy47;
767 if (yych <= '@') goto yy45;
768 } else {
769 if (yych <= '`') goto yy45;
770 if (yych >= '{') goto yy45;
771 }
772 }
773 yych = *++p;
774 if (yych <= '9') {
775 if (yych <= ',') {
776 if (yych != '+') goto yy45;
777 } else {
778 if (yych == '/') goto yy45;
779 }
780 } else {
781 if (yych <= 'Z') {
782 if (yych <= ':') goto yy47;
783 if (yych <= '@') goto yy45;
784 } else {
785 if (yych <= '`') goto yy45;
786 if (yych >= '{') goto yy45;
787 }
788 }
789 yych = *++p;
790 if (yych <= '9') {
791 if (yych <= ',') {
792 if (yych != '+') goto yy45;
793 } else {
794 if (yych == '/') goto yy45;
795 }
796 } else {
797 if (yych <= 'Z') {
798 if (yych <= ':') goto yy47;
799 if (yych <= '@') goto yy45;
800 } else {
801 if (yych <= '`') goto yy45;
802 if (yych >= '{') goto yy45;
803 }
804 }
805 yych = *++p;
806 if (yych <= '9') {
807 if (yych <= ',') {
808 if (yych != '+') goto yy45;
809 } else {
810 if (yych == '/') goto yy45;
811 }
812 } else {
813 if (yych <= 'Z') {
814 if (yych <= ':') goto yy47;
815 if (yych <= '@') goto yy45;
816 } else {
817 if (yych <= '`') goto yy45;
818 if (yych >= '{') goto yy45;
819 }
820 }
821 yych = *++p;
822 if (yych <= '9') {
823 if (yych <= ',') {
824 if (yych != '+') goto yy45;
825 } else {
826 if (yych == '/') goto yy45;
827 }
828 } else {
829 if (yych <= 'Z') {
830 if (yych <= ':') goto yy47;
831 if (yych <= '@') goto yy45;
832 } else {
833 if (yych <= '`') goto yy45;
834 if (yych >= '{') goto yy45;
835 }
836 }
837 yych = *++p;
838 if (yych <= '9') {
839 if (yych <= ',') {
840 if (yych != '+') goto yy45;
841 } else {
842 if (yych == '/') goto yy45;
843 }
844 } else {
845 if (yych <= 'Z') {
846 if (yych <= ':') goto yy47;
847 if (yych <= '@') goto yy45;
848 } else {
849 if (yych <= '`') goto yy45;
850 if (yych >= '{') goto yy45;
851 }
852 }
853 yych = *++p;
854 if (yych <= '9') {
855 if (yych <= ',') {
856 if (yych != '+') goto yy45;
857 } else {
858 if (yych == '/') goto yy45;
859 }
860 } else {
861 if (yych <= 'Z') {
862 if (yych <= ':') goto yy47;
863 if (yych <= '@') goto yy45;
864 } else {
865 if (yych <= '`') goto yy45;
866 if (yych >= '{') goto yy45;
867 }
868 }
869 yych = *++p;
870 if (yych <= '9') {
871 if (yych <= ',') {
872 if (yych != '+') goto yy45;
873 } else {
874 if (yych == '/') goto yy45;
875 }
876 } else {
877 if (yych <= 'Z') {
878 if (yych <= ':') goto yy47;
879 if (yych <= '@') goto yy45;
880 } else {
881 if (yych <= '`') goto yy45;
882 if (yych >= '{') goto yy45;
883 }
884 }
885 yych = *++p;
886 if (yych <= '9') {
887 if (yych <= ',') {
888 if (yych != '+') goto yy45;
889 } else {
890 if (yych == '/') goto yy45;
891 }
892 } else {
893 if (yych <= 'Z') {
894 if (yych <= ':') goto yy47;
895 if (yych <= '@') goto yy45;
896 } else {
897 if (yych <= '`') goto yy45;
898 if (yych >= '{') goto yy45;
899 }
900 }
901 yych = *++p;
902 if (yych <= '9') {
903 if (yych <= ',') {
904 if (yych != '+') goto yy45;
905 } else {
906 if (yych == '/') goto yy45;
907 }
908 } else {
909 if (yych <= 'Z') {
910 if (yych <= ':') goto yy47;
911 if (yych <= '@') goto yy45;
912 } else {
913 if (yych <= '`') goto yy45;
914 if (yych >= '{') goto yy45;
915 }
916 }
917 yych = *++p;
918 if (yych <= '9') {
919 if (yych <= ',') {
920 if (yych != '+') goto yy45;
921 } else {
922 if (yych == '/') goto yy45;
923 }
924 } else {
925 if (yych <= 'Z') {
926 if (yych <= ':') goto yy47;
927 if (yych <= '@') goto yy45;
928 } else {
929 if (yych <= '`') goto yy45;
930 if (yych >= '{') goto yy45;
931 }
932 }
933 yych = *++p;
934 if (yych <= '9') {
935 if (yych <= ',') {
936 if (yych != '+') goto yy45;
937 } else {
938 if (yych == '/') goto yy45;
939 }
940 } else {
941 if (yych <= 'Z') {
942 if (yych <= ':') goto yy47;
943 if (yych <= '@') goto yy45;
944 } else {
945 if (yych <= '`') goto yy45;
946 if (yych >= '{') goto yy45;
947 }
948 }
949 yych = *++p;
950 if (yych <= '9') {
951 if (yych <= ',') {
952 if (yych != '+') goto yy45;
953 } else {
954 if (yych == '/') goto yy45;
955 }
956 } else {
957 if (yych <= 'Z') {
958 if (yych <= ':') goto yy47;
959 if (yych <= '@') goto yy45;
960 } else {
961 if (yych <= '`') goto yy45;
962 if (yych >= '{') goto yy45;
963 }
964 }
965 yych = *++p;
966 if (yych <= '9') {
967 if (yych <= ',') {
968 if (yych != '+') goto yy45;
969 } else {
970 if (yych == '/') goto yy45;
971 }
972 } else {
973 if (yych <= 'Z') {
974 if (yych <= ':') goto yy47;
975 if (yych <= '@') goto yy45;
976 } else {
977 if (yych <= '`') goto yy45;
978 if (yych >= '{') goto yy45;
979 }
980 }
981 yych = *++p;
982 if (yych <= '9') {
983 if (yych <= ',') {
984 if (yych != '+') goto yy45;
985 } else {
986 if (yych == '/') goto yy45;
987 }
988 } else {
989 if (yych <= 'Z') {
990 if (yych <= ':') goto yy47;
991 if (yych <= '@') goto yy45;
992 } else {
993 if (yych <= '`') goto yy45;
994 if (yych >= '{') goto yy45;
995 }
996 }
997 yych = *++p;
998 if (yych <= '9') {
999 if (yych <= ',') {
1000 if (yych != '+') goto yy45;
1001 } else {
1002 if (yych == '/') goto yy45;
1003 }
1004 } else {
1005 if (yych <= 'Z') {
1006 if (yych <= ':') goto yy47;
1007 if (yych <= '@') goto yy45;
1008 } else {
1009 if (yych <= '`') goto yy45;
1010 if (yych >= '{') goto yy45;
1011 }
1012 }
1013 yych = *++p;
1014 if (yych <= '9') {
1015 if (yych <= ',') {
1016 if (yych != '+') goto yy45;
1017 } else {
1018 if (yych == '/') goto yy45;
1019 }
1020 } else {
1021 if (yych <= 'Z') {
1022 if (yych <= ':') goto yy47;
1023 if (yych <= '@') goto yy45;
1024 } else {
1025 if (yych <= '`') goto yy45;
1026 if (yych >= '{') goto yy45;
1027 }
1028 }
1029 yych = *++p;
1030 if (yych <= '9') {
1031 if (yych <= ',') {
1032 if (yych != '+') goto yy45;
1033 } else {
1034 if (yych == '/') goto yy45;
1035 }
1036 } else {
1037 if (yych <= 'Z') {
1038 if (yych <= ':') goto yy47;
1039 if (yych <= '@') goto yy45;
1040 } else {
1041 if (yych <= '`') goto yy45;
1042 if (yych >= '{') goto yy45;
1043 }
1044 }
1045 yych = *++p;
1046 if (yych <= '9') {
1047 if (yych <= ',') {
1048 if (yych != '+') goto yy45;
1049 } else {
1050 if (yych == '/') goto yy45;
1051 }
1052 } else {
1053 if (yych <= 'Z') {
1054 if (yych <= ':') goto yy47;
1055 if (yych <= '@') goto yy45;
1056 } else {
1057 if (yych <= '`') goto yy45;
1058 if (yych >= '{') goto yy45;
1059 }
1060 }
1061 yych = *++p;
1062 if (yych <= '9') {
1063 if (yych <= ',') {
1064 if (yych != '+') goto yy45;
1065 } else {
1066 if (yych == '/') goto yy45;
1067 }
1068 } else {
1069 if (yych <= 'Z') {
1070 if (yych <= ':') goto yy47;
1071 if (yych <= '@') goto yy45;
1072 } else {
1073 if (yych <= '`') goto yy45;
1074 if (yych >= '{') goto yy45;
1075 }
1076 }
1077 yych = *++p;
1078 if (yych <= '9') {
1079 if (yych <= ',') {
1080 if (yych != '+') goto yy45;
1081 } else {
1082 if (yych == '/') goto yy45;
1083 }
1084 } else {
1085 if (yych <= 'Z') {
1086 if (yych <= ':') goto yy47;
1087 if (yych <= '@') goto yy45;
1088 } else {
1089 if (yych <= '`') goto yy45;
1090 if (yych >= '{') goto yy45;
1091 }
1092 }
1093 yych = *++p;
1094 if (yych <= '9') {
1095 if (yych <= ',') {
1096 if (yych != '+') goto yy45;
1097 } else {
1098 if (yych == '/') goto yy45;
1099 }
1100 } else {
1101 if (yych <= 'Z') {
1102 if (yych <= ':') goto yy47;
1103 if (yych <= '@') goto yy45;
1104 } else {
1105 if (yych <= '`') goto yy45;
1106 if (yych >= '{') goto yy45;
1107 }
1108 }
1109 yych = *++p;
1110 if (yych <= '9') {
1111 if (yych <= ',') {
1112 if (yych != '+') goto yy45;
1113 } else {
1114 if (yych == '/') goto yy45;
1115 }
1116 } else {
1117 if (yych <= 'Z') {
1118 if (yych <= ':') goto yy47;
1119 if (yych <= '@') goto yy45;
1120 } else {
1121 if (yych <= '`') goto yy45;
1122 if (yych >= '{') goto yy45;
1123 }
1124 }
1125 yych = *++p;
1126 if (yych <= '9') {
1127 if (yych <= ',') {
1128 if (yych != '+') goto yy45;
1129 } else {
1130 if (yych == '/') goto yy45;
1131 }
1132 } else {
1133 if (yych <= 'Z') {
1134 if (yych <= ':') goto yy47;
1135 if (yych <= '@') goto yy45;
1136 } else {
1137 if (yych <= '`') goto yy45;
1138 if (yych >= '{') goto yy45;
1139 }
1140 }
1141 yych = *++p;
1142 if (yych <= '9') {
1143 if (yych <= ',') {
1144 if (yych != '+') goto yy45;
1145 } else {
1146 if (yych == '/') goto yy45;
1147 }
1148 } else {
1149 if (yych <= 'Z') {
1150 if (yych <= ':') goto yy47;
1151 if (yych <= '@') goto yy45;
1152 } else {
1153 if (yych <= '`') goto yy45;
1154 if (yych >= '{') goto yy45;
1155 }
1156 }
1157 yych = *++p;
1158 if (yych <= '9') {
1159 if (yych <= ',') {
1160 if (yych != '+') goto yy45;
1161 } else {
1162 if (yych == '/') goto yy45;
1163 }
1164 } else {
1165 if (yych <= 'Z') {
1166 if (yych <= ':') goto yy47;
1167 if (yych <= '@') goto yy45;
1168 } else {
1169 if (yych <= '`') goto yy45;
1170 if (yych >= '{') goto yy45;
1171 }
1172 }
1173 yych = *++p;
1174 if (yych <= '9') {
1175 if (yych <= ',') {
1176 if (yych != '+') goto yy45;
1177 } else {
1178 if (yych == '/') goto yy45;
1179 }
1180 } else {
1181 if (yych <= 'Z') {
1182 if (yych <= ':') goto yy47;
1183 if (yych <= '@') goto yy45;
1184 } else {
1185 if (yych <= '`') goto yy45;
1186 if (yych >= '{') goto yy45;
1187 }
1188 }
1189 yych = *++p;
1190 if (yych == ':') goto yy47;
1191 goto yy45;
1192 }
1193
1194 }
1195
1196 // Try to match email autolink after first <, returning num of chars matched.
_scan_autolink_email(const unsigned char * p)1197 bufsize_t _scan_autolink_email(const unsigned char *p)
1198 {
1199 const unsigned char *marker = NULL;
1200 const unsigned char *start = p;
1201
1202 {
1203 unsigned char yych;
1204 static const unsigned char yybm[] = {
1205 0, 0, 0, 0, 0, 0, 0, 0,
1206 0, 0, 0, 0, 0, 0, 0, 0,
1207 0, 0, 0, 0, 0, 0, 0, 0,
1208 0, 0, 0, 0, 0, 0, 0, 0,
1209 0, 128, 0, 128, 128, 128, 128, 128,
1210 0, 0, 128, 128, 0, 128, 128, 128,
1211 128, 128, 128, 128, 128, 128, 128, 128,
1212 128, 128, 0, 0, 0, 128, 0, 128,
1213 0, 128, 128, 128, 128, 128, 128, 128,
1214 128, 128, 128, 128, 128, 128, 128, 128,
1215 128, 128, 128, 128, 128, 128, 128, 128,
1216 128, 128, 128, 0, 0, 0, 128, 128,
1217 128, 128, 128, 128, 128, 128, 128, 128,
1218 128, 128, 128, 128, 128, 128, 128, 128,
1219 128, 128, 128, 128, 128, 128, 128, 128,
1220 128, 128, 128, 128, 128, 128, 128, 0,
1221 0, 0, 0, 0, 0, 0, 0, 0,
1222 0, 0, 0, 0, 0, 0, 0, 0,
1223 0, 0, 0, 0, 0, 0, 0, 0,
1224 0, 0, 0, 0, 0, 0, 0, 0,
1225 0, 0, 0, 0, 0, 0, 0, 0,
1226 0, 0, 0, 0, 0, 0, 0, 0,
1227 0, 0, 0, 0, 0, 0, 0, 0,
1228 0, 0, 0, 0, 0, 0, 0, 0,
1229 0, 0, 0, 0, 0, 0, 0, 0,
1230 0, 0, 0, 0, 0, 0, 0, 0,
1231 0, 0, 0, 0, 0, 0, 0, 0,
1232 0, 0, 0, 0, 0, 0, 0, 0,
1233 0, 0, 0, 0, 0, 0, 0, 0,
1234 0, 0, 0, 0, 0, 0, 0, 0,
1235 0, 0, 0, 0, 0, 0, 0, 0,
1236 0, 0, 0, 0, 0, 0, 0, 0,
1237 };
1238 yych = *p;
1239 if (yych <= '9') {
1240 if (yych <= '\'') {
1241 if (yych == '!') goto yy91;
1242 if (yych >= '#') goto yy91;
1243 } else {
1244 if (yych <= ')') goto yy89;
1245 if (yych != ',') goto yy91;
1246 }
1247 } else {
1248 if (yych <= '?') {
1249 if (yych == '=') goto yy91;
1250 if (yych >= '?') goto yy91;
1251 } else {
1252 if (yych <= 'Z') {
1253 if (yych >= 'A') goto yy91;
1254 } else {
1255 if (yych <= ']') goto yy89;
1256 if (yych <= '~') goto yy91;
1257 }
1258 }
1259 }
1260 yy89:
1261 ++p;
1262 yy90:
1263 { return 0; }
1264 yy91:
1265 yych = *(marker = ++p);
1266 if (yych <= ',') {
1267 if (yych <= '"') {
1268 if (yych == '!') goto yy93;
1269 goto yy90;
1270 } else {
1271 if (yych <= '\'') goto yy93;
1272 if (yych <= ')') goto yy90;
1273 if (yych <= '+') goto yy93;
1274 goto yy90;
1275 }
1276 } else {
1277 if (yych <= '>') {
1278 if (yych <= '9') goto yy93;
1279 if (yych == '=') goto yy93;
1280 goto yy90;
1281 } else {
1282 if (yych <= 'Z') goto yy93;
1283 if (yych <= ']') goto yy90;
1284 if (yych <= '~') goto yy93;
1285 goto yy90;
1286 }
1287 }
1288 yy92:
1289 yych = *++p;
1290 yy93:
1291 if (yybm[0+yych] & 128) {
1292 goto yy92;
1293 }
1294 if (yych <= '>') goto yy94;
1295 if (yych <= '@') goto yy95;
1296 yy94:
1297 p = marker;
1298 goto yy90;
1299 yy95:
1300 yych = *++p;
1301 if (yych <= '@') {
1302 if (yych <= '/') goto yy94;
1303 if (yych >= ':') goto yy94;
1304 } else {
1305 if (yych <= 'Z') goto yy96;
1306 if (yych <= '`') goto yy94;
1307 if (yych >= '{') goto yy94;
1308 }
1309 yy96:
1310 yych = *++p;
1311 if (yych <= '=') {
1312 if (yych <= '.') {
1313 if (yych <= ',') goto yy94;
1314 if (yych >= '.') goto yy95;
1315 } else {
1316 if (yych <= '/') goto yy94;
1317 if (yych <= '9') goto yy98;
1318 goto yy94;
1319 }
1320 } else {
1321 if (yych <= 'Z') {
1322 if (yych <= '>') goto yy99;
1323 if (yych <= '@') goto yy94;
1324 goto yy98;
1325 } else {
1326 if (yych <= '`') goto yy94;
1327 if (yych <= 'z') goto yy98;
1328 goto yy94;
1329 }
1330 }
1331 yych = *++p;
1332 if (yych <= '9') {
1333 if (yych == '-') goto yy101;
1334 if (yych <= '/') goto yy94;
1335 goto yy102;
1336 } else {
1337 if (yych <= 'Z') {
1338 if (yych <= '@') goto yy94;
1339 goto yy102;
1340 } else {
1341 if (yych <= '`') goto yy94;
1342 if (yych <= 'z') goto yy102;
1343 goto yy94;
1344 }
1345 }
1346 yy98:
1347 yych = *++p;
1348 if (yych <= '=') {
1349 if (yych <= '.') {
1350 if (yych <= ',') goto yy94;
1351 if (yych <= '-') goto yy101;
1352 goto yy95;
1353 } else {
1354 if (yych <= '/') goto yy94;
1355 if (yych <= '9') goto yy102;
1356 goto yy94;
1357 }
1358 } else {
1359 if (yych <= 'Z') {
1360 if (yych <= '>') goto yy99;
1361 if (yych <= '@') goto yy94;
1362 goto yy102;
1363 } else {
1364 if (yych <= '`') goto yy94;
1365 if (yych <= 'z') goto yy102;
1366 goto yy94;
1367 }
1368 }
1369 yy99:
1370 ++p;
1371 { return (bufsize_t)(p - start); }
1372 yy101:
1373 yych = *++p;
1374 if (yych <= '9') {
1375 if (yych == '-') goto yy103;
1376 if (yych <= '/') goto yy94;
1377 goto yy104;
1378 } else {
1379 if (yych <= 'Z') {
1380 if (yych <= '@') goto yy94;
1381 goto yy104;
1382 } else {
1383 if (yych <= '`') goto yy94;
1384 if (yych <= 'z') goto yy104;
1385 goto yy94;
1386 }
1387 }
1388 yy102:
1389 yych = *++p;
1390 if (yych <= '=') {
1391 if (yych <= '.') {
1392 if (yych <= ',') goto yy94;
1393 if (yych >= '.') goto yy95;
1394 } else {
1395 if (yych <= '/') goto yy94;
1396 if (yych <= '9') goto yy104;
1397 goto yy94;
1398 }
1399 } else {
1400 if (yych <= 'Z') {
1401 if (yych <= '>') goto yy99;
1402 if (yych <= '@') goto yy94;
1403 goto yy104;
1404 } else {
1405 if (yych <= '`') goto yy94;
1406 if (yych <= 'z') goto yy104;
1407 goto yy94;
1408 }
1409 }
1410 yy103:
1411 yych = *++p;
1412 if (yych <= '9') {
1413 if (yych == '-') goto yy105;
1414 if (yych <= '/') goto yy94;
1415 goto yy106;
1416 } else {
1417 if (yych <= 'Z') {
1418 if (yych <= '@') goto yy94;
1419 goto yy106;
1420 } else {
1421 if (yych <= '`') goto yy94;
1422 if (yych <= 'z') goto yy106;
1423 goto yy94;
1424 }
1425 }
1426 yy104:
1427 yych = *++p;
1428 if (yych <= '=') {
1429 if (yych <= '.') {
1430 if (yych <= ',') goto yy94;
1431 if (yych >= '.') goto yy95;
1432 } else {
1433 if (yych <= '/') goto yy94;
1434 if (yych <= '9') goto yy106;
1435 goto yy94;
1436 }
1437 } else {
1438 if (yych <= 'Z') {
1439 if (yych <= '>') goto yy99;
1440 if (yych <= '@') goto yy94;
1441 goto yy106;
1442 } else {
1443 if (yych <= '`') goto yy94;
1444 if (yych <= 'z') goto yy106;
1445 goto yy94;
1446 }
1447 }
1448 yy105:
1449 yych = *++p;
1450 if (yych <= '9') {
1451 if (yych == '-') goto yy107;
1452 if (yych <= '/') goto yy94;
1453 goto yy108;
1454 } else {
1455 if (yych <= 'Z') {
1456 if (yych <= '@') goto yy94;
1457 goto yy108;
1458 } else {
1459 if (yych <= '`') goto yy94;
1460 if (yych <= 'z') goto yy108;
1461 goto yy94;
1462 }
1463 }
1464 yy106:
1465 yych = *++p;
1466 if (yych <= '=') {
1467 if (yych <= '.') {
1468 if (yych <= ',') goto yy94;
1469 if (yych >= '.') goto yy95;
1470 } else {
1471 if (yych <= '/') goto yy94;
1472 if (yych <= '9') goto yy108;
1473 goto yy94;
1474 }
1475 } else {
1476 if (yych <= 'Z') {
1477 if (yych <= '>') goto yy99;
1478 if (yych <= '@') goto yy94;
1479 goto yy108;
1480 } else {
1481 if (yych <= '`') goto yy94;
1482 if (yych <= 'z') goto yy108;
1483 goto yy94;
1484 }
1485 }
1486 yy107:
1487 yych = *++p;
1488 if (yych <= '9') {
1489 if (yych == '-') goto yy109;
1490 if (yych <= '/') goto yy94;
1491 goto yy110;
1492 } else {
1493 if (yych <= 'Z') {
1494 if (yych <= '@') goto yy94;
1495 goto yy110;
1496 } else {
1497 if (yych <= '`') goto yy94;
1498 if (yych <= 'z') goto yy110;
1499 goto yy94;
1500 }
1501 }
1502 yy108:
1503 yych = *++p;
1504 if (yych <= '=') {
1505 if (yych <= '.') {
1506 if (yych <= ',') goto yy94;
1507 if (yych >= '.') goto yy95;
1508 } else {
1509 if (yych <= '/') goto yy94;
1510 if (yych <= '9') goto yy110;
1511 goto yy94;
1512 }
1513 } else {
1514 if (yych <= 'Z') {
1515 if (yych <= '>') goto yy99;
1516 if (yych <= '@') goto yy94;
1517 goto yy110;
1518 } else {
1519 if (yych <= '`') goto yy94;
1520 if (yych <= 'z') goto yy110;
1521 goto yy94;
1522 }
1523 }
1524 yy109:
1525 yych = *++p;
1526 if (yych <= '9') {
1527 if (yych == '-') goto yy111;
1528 if (yych <= '/') goto yy94;
1529 goto yy112;
1530 } else {
1531 if (yych <= 'Z') {
1532 if (yych <= '@') goto yy94;
1533 goto yy112;
1534 } else {
1535 if (yych <= '`') goto yy94;
1536 if (yych <= 'z') goto yy112;
1537 goto yy94;
1538 }
1539 }
1540 yy110:
1541 yych = *++p;
1542 if (yych <= '=') {
1543 if (yych <= '.') {
1544 if (yych <= ',') goto yy94;
1545 if (yych >= '.') goto yy95;
1546 } else {
1547 if (yych <= '/') goto yy94;
1548 if (yych <= '9') goto yy112;
1549 goto yy94;
1550 }
1551 } else {
1552 if (yych <= 'Z') {
1553 if (yych <= '>') goto yy99;
1554 if (yych <= '@') goto yy94;
1555 goto yy112;
1556 } else {
1557 if (yych <= '`') goto yy94;
1558 if (yych <= 'z') goto yy112;
1559 goto yy94;
1560 }
1561 }
1562 yy111:
1563 yych = *++p;
1564 if (yych <= '9') {
1565 if (yych == '-') goto yy113;
1566 if (yych <= '/') goto yy94;
1567 goto yy114;
1568 } else {
1569 if (yych <= 'Z') {
1570 if (yych <= '@') goto yy94;
1571 goto yy114;
1572 } else {
1573 if (yych <= '`') goto yy94;
1574 if (yych <= 'z') goto yy114;
1575 goto yy94;
1576 }
1577 }
1578 yy112:
1579 yych = *++p;
1580 if (yych <= '=') {
1581 if (yych <= '.') {
1582 if (yych <= ',') goto yy94;
1583 if (yych >= '.') goto yy95;
1584 } else {
1585 if (yych <= '/') goto yy94;
1586 if (yych <= '9') goto yy114;
1587 goto yy94;
1588 }
1589 } else {
1590 if (yych <= 'Z') {
1591 if (yych <= '>') goto yy99;
1592 if (yych <= '@') goto yy94;
1593 goto yy114;
1594 } else {
1595 if (yych <= '`') goto yy94;
1596 if (yych <= 'z') goto yy114;
1597 goto yy94;
1598 }
1599 }
1600 yy113:
1601 yych = *++p;
1602 if (yych <= '9') {
1603 if (yych == '-') goto yy115;
1604 if (yych <= '/') goto yy94;
1605 goto yy116;
1606 } else {
1607 if (yych <= 'Z') {
1608 if (yych <= '@') goto yy94;
1609 goto yy116;
1610 } else {
1611 if (yych <= '`') goto yy94;
1612 if (yych <= 'z') goto yy116;
1613 goto yy94;
1614 }
1615 }
1616 yy114:
1617 yych = *++p;
1618 if (yych <= '=') {
1619 if (yych <= '.') {
1620 if (yych <= ',') goto yy94;
1621 if (yych >= '.') goto yy95;
1622 } else {
1623 if (yych <= '/') goto yy94;
1624 if (yych <= '9') goto yy116;
1625 goto yy94;
1626 }
1627 } else {
1628 if (yych <= 'Z') {
1629 if (yych <= '>') goto yy99;
1630 if (yych <= '@') goto yy94;
1631 goto yy116;
1632 } else {
1633 if (yych <= '`') goto yy94;
1634 if (yych <= 'z') goto yy116;
1635 goto yy94;
1636 }
1637 }
1638 yy115:
1639 yych = *++p;
1640 if (yych <= '9') {
1641 if (yych == '-') goto yy117;
1642 if (yych <= '/') goto yy94;
1643 goto yy118;
1644 } else {
1645 if (yych <= 'Z') {
1646 if (yych <= '@') goto yy94;
1647 goto yy118;
1648 } else {
1649 if (yych <= '`') goto yy94;
1650 if (yych <= 'z') goto yy118;
1651 goto yy94;
1652 }
1653 }
1654 yy116:
1655 yych = *++p;
1656 if (yych <= '=') {
1657 if (yych <= '.') {
1658 if (yych <= ',') goto yy94;
1659 if (yych >= '.') goto yy95;
1660 } else {
1661 if (yych <= '/') goto yy94;
1662 if (yych <= '9') goto yy118;
1663 goto yy94;
1664 }
1665 } else {
1666 if (yych <= 'Z') {
1667 if (yych <= '>') goto yy99;
1668 if (yych <= '@') goto yy94;
1669 goto yy118;
1670 } else {
1671 if (yych <= '`') goto yy94;
1672 if (yych <= 'z') goto yy118;
1673 goto yy94;
1674 }
1675 }
1676 yy117:
1677 yych = *++p;
1678 if (yych <= '9') {
1679 if (yych == '-') goto yy119;
1680 if (yych <= '/') goto yy94;
1681 goto yy120;
1682 } else {
1683 if (yych <= 'Z') {
1684 if (yych <= '@') goto yy94;
1685 goto yy120;
1686 } else {
1687 if (yych <= '`') goto yy94;
1688 if (yych <= 'z') goto yy120;
1689 goto yy94;
1690 }
1691 }
1692 yy118:
1693 yych = *++p;
1694 if (yych <= '=') {
1695 if (yych <= '.') {
1696 if (yych <= ',') goto yy94;
1697 if (yych >= '.') goto yy95;
1698 } else {
1699 if (yych <= '/') goto yy94;
1700 if (yych <= '9') goto yy120;
1701 goto yy94;
1702 }
1703 } else {
1704 if (yych <= 'Z') {
1705 if (yych <= '>') goto yy99;
1706 if (yych <= '@') goto yy94;
1707 goto yy120;
1708 } else {
1709 if (yych <= '`') goto yy94;
1710 if (yych <= 'z') goto yy120;
1711 goto yy94;
1712 }
1713 }
1714 yy119:
1715 yych = *++p;
1716 if (yych <= '9') {
1717 if (yych == '-') goto yy121;
1718 if (yych <= '/') goto yy94;
1719 goto yy122;
1720 } else {
1721 if (yych <= 'Z') {
1722 if (yych <= '@') goto yy94;
1723 goto yy122;
1724 } else {
1725 if (yych <= '`') goto yy94;
1726 if (yych <= 'z') goto yy122;
1727 goto yy94;
1728 }
1729 }
1730 yy120:
1731 yych = *++p;
1732 if (yych <= '=') {
1733 if (yych <= '.') {
1734 if (yych <= ',') goto yy94;
1735 if (yych >= '.') goto yy95;
1736 } else {
1737 if (yych <= '/') goto yy94;
1738 if (yych <= '9') goto yy122;
1739 goto yy94;
1740 }
1741 } else {
1742 if (yych <= 'Z') {
1743 if (yych <= '>') goto yy99;
1744 if (yych <= '@') goto yy94;
1745 goto yy122;
1746 } else {
1747 if (yych <= '`') goto yy94;
1748 if (yych <= 'z') goto yy122;
1749 goto yy94;
1750 }
1751 }
1752 yy121:
1753 yych = *++p;
1754 if (yych <= '9') {
1755 if (yych == '-') goto yy123;
1756 if (yych <= '/') goto yy94;
1757 goto yy124;
1758 } else {
1759 if (yych <= 'Z') {
1760 if (yych <= '@') goto yy94;
1761 goto yy124;
1762 } else {
1763 if (yych <= '`') goto yy94;
1764 if (yych <= 'z') goto yy124;
1765 goto yy94;
1766 }
1767 }
1768 yy122:
1769 yych = *++p;
1770 if (yych <= '=') {
1771 if (yych <= '.') {
1772 if (yych <= ',') goto yy94;
1773 if (yych >= '.') goto yy95;
1774 } else {
1775 if (yych <= '/') goto yy94;
1776 if (yych <= '9') goto yy124;
1777 goto yy94;
1778 }
1779 } else {
1780 if (yych <= 'Z') {
1781 if (yych <= '>') goto yy99;
1782 if (yych <= '@') goto yy94;
1783 goto yy124;
1784 } else {
1785 if (yych <= '`') goto yy94;
1786 if (yych <= 'z') goto yy124;
1787 goto yy94;
1788 }
1789 }
1790 yy123:
1791 yych = *++p;
1792 if (yych <= '9') {
1793 if (yych == '-') goto yy125;
1794 if (yych <= '/') goto yy94;
1795 goto yy126;
1796 } else {
1797 if (yych <= 'Z') {
1798 if (yych <= '@') goto yy94;
1799 goto yy126;
1800 } else {
1801 if (yych <= '`') goto yy94;
1802 if (yych <= 'z') goto yy126;
1803 goto yy94;
1804 }
1805 }
1806 yy124:
1807 yych = *++p;
1808 if (yych <= '=') {
1809 if (yych <= '.') {
1810 if (yych <= ',') goto yy94;
1811 if (yych >= '.') goto yy95;
1812 } else {
1813 if (yych <= '/') goto yy94;
1814 if (yych <= '9') goto yy126;
1815 goto yy94;
1816 }
1817 } else {
1818 if (yych <= 'Z') {
1819 if (yych <= '>') goto yy99;
1820 if (yych <= '@') goto yy94;
1821 goto yy126;
1822 } else {
1823 if (yych <= '`') goto yy94;
1824 if (yych <= 'z') goto yy126;
1825 goto yy94;
1826 }
1827 }
1828 yy125:
1829 yych = *++p;
1830 if (yych <= '9') {
1831 if (yych == '-') goto yy127;
1832 if (yych <= '/') goto yy94;
1833 goto yy128;
1834 } else {
1835 if (yych <= 'Z') {
1836 if (yych <= '@') goto yy94;
1837 goto yy128;
1838 } else {
1839 if (yych <= '`') goto yy94;
1840 if (yych <= 'z') goto yy128;
1841 goto yy94;
1842 }
1843 }
1844 yy126:
1845 yych = *++p;
1846 if (yych <= '=') {
1847 if (yych <= '.') {
1848 if (yych <= ',') goto yy94;
1849 if (yych >= '.') goto yy95;
1850 } else {
1851 if (yych <= '/') goto yy94;
1852 if (yych <= '9') goto yy128;
1853 goto yy94;
1854 }
1855 } else {
1856 if (yych <= 'Z') {
1857 if (yych <= '>') goto yy99;
1858 if (yych <= '@') goto yy94;
1859 goto yy128;
1860 } else {
1861 if (yych <= '`') goto yy94;
1862 if (yych <= 'z') goto yy128;
1863 goto yy94;
1864 }
1865 }
1866 yy127:
1867 yych = *++p;
1868 if (yych <= '9') {
1869 if (yych == '-') goto yy129;
1870 if (yych <= '/') goto yy94;
1871 goto yy130;
1872 } else {
1873 if (yych <= 'Z') {
1874 if (yych <= '@') goto yy94;
1875 goto yy130;
1876 } else {
1877 if (yych <= '`') goto yy94;
1878 if (yych <= 'z') goto yy130;
1879 goto yy94;
1880 }
1881 }
1882 yy128:
1883 yych = *++p;
1884 if (yych <= '=') {
1885 if (yych <= '.') {
1886 if (yych <= ',') goto yy94;
1887 if (yych >= '.') goto yy95;
1888 } else {
1889 if (yych <= '/') goto yy94;
1890 if (yych <= '9') goto yy130;
1891 goto yy94;
1892 }
1893 } else {
1894 if (yych <= 'Z') {
1895 if (yych <= '>') goto yy99;
1896 if (yych <= '@') goto yy94;
1897 goto yy130;
1898 } else {
1899 if (yych <= '`') goto yy94;
1900 if (yych <= 'z') goto yy130;
1901 goto yy94;
1902 }
1903 }
1904 yy129:
1905 yych = *++p;
1906 if (yych <= '9') {
1907 if (yych == '-') goto yy131;
1908 if (yych <= '/') goto yy94;
1909 goto yy132;
1910 } else {
1911 if (yych <= 'Z') {
1912 if (yych <= '@') goto yy94;
1913 goto yy132;
1914 } else {
1915 if (yych <= '`') goto yy94;
1916 if (yych <= 'z') goto yy132;
1917 goto yy94;
1918 }
1919 }
1920 yy130:
1921 yych = *++p;
1922 if (yych <= '=') {
1923 if (yych <= '.') {
1924 if (yych <= ',') goto yy94;
1925 if (yych >= '.') goto yy95;
1926 } else {
1927 if (yych <= '/') goto yy94;
1928 if (yych <= '9') goto yy132;
1929 goto yy94;
1930 }
1931 } else {
1932 if (yych <= 'Z') {
1933 if (yych <= '>') goto yy99;
1934 if (yych <= '@') goto yy94;
1935 goto yy132;
1936 } else {
1937 if (yych <= '`') goto yy94;
1938 if (yych <= 'z') goto yy132;
1939 goto yy94;
1940 }
1941 }
1942 yy131:
1943 yych = *++p;
1944 if (yych <= '9') {
1945 if (yych == '-') goto yy133;
1946 if (yych <= '/') goto yy94;
1947 goto yy134;
1948 } else {
1949 if (yych <= 'Z') {
1950 if (yych <= '@') goto yy94;
1951 goto yy134;
1952 } else {
1953 if (yych <= '`') goto yy94;
1954 if (yych <= 'z') goto yy134;
1955 goto yy94;
1956 }
1957 }
1958 yy132:
1959 yych = *++p;
1960 if (yych <= '=') {
1961 if (yych <= '.') {
1962 if (yych <= ',') goto yy94;
1963 if (yych >= '.') goto yy95;
1964 } else {
1965 if (yych <= '/') goto yy94;
1966 if (yych <= '9') goto yy134;
1967 goto yy94;
1968 }
1969 } else {
1970 if (yych <= 'Z') {
1971 if (yych <= '>') goto yy99;
1972 if (yych <= '@') goto yy94;
1973 goto yy134;
1974 } else {
1975 if (yych <= '`') goto yy94;
1976 if (yych <= 'z') goto yy134;
1977 goto yy94;
1978 }
1979 }
1980 yy133:
1981 yych = *++p;
1982 if (yych <= '9') {
1983 if (yych == '-') goto yy135;
1984 if (yych <= '/') goto yy94;
1985 goto yy136;
1986 } else {
1987 if (yych <= 'Z') {
1988 if (yych <= '@') goto yy94;
1989 goto yy136;
1990 } else {
1991 if (yych <= '`') goto yy94;
1992 if (yych <= 'z') goto yy136;
1993 goto yy94;
1994 }
1995 }
1996 yy134:
1997 yych = *++p;
1998 if (yych <= '=') {
1999 if (yych <= '.') {
2000 if (yych <= ',') goto yy94;
2001 if (yych >= '.') goto yy95;
2002 } else {
2003 if (yych <= '/') goto yy94;
2004 if (yych <= '9') goto yy136;
2005 goto yy94;
2006 }
2007 } else {
2008 if (yych <= 'Z') {
2009 if (yych <= '>') goto yy99;
2010 if (yych <= '@') goto yy94;
2011 goto yy136;
2012 } else {
2013 if (yych <= '`') goto yy94;
2014 if (yych <= 'z') goto yy136;
2015 goto yy94;
2016 }
2017 }
2018 yy135:
2019 yych = *++p;
2020 if (yych <= '9') {
2021 if (yych == '-') goto yy137;
2022 if (yych <= '/') goto yy94;
2023 goto yy138;
2024 } else {
2025 if (yych <= 'Z') {
2026 if (yych <= '@') goto yy94;
2027 goto yy138;
2028 } else {
2029 if (yych <= '`') goto yy94;
2030 if (yych <= 'z') goto yy138;
2031 goto yy94;
2032 }
2033 }
2034 yy136:
2035 yych = *++p;
2036 if (yych <= '=') {
2037 if (yych <= '.') {
2038 if (yych <= ',') goto yy94;
2039 if (yych >= '.') goto yy95;
2040 } else {
2041 if (yych <= '/') goto yy94;
2042 if (yych <= '9') goto yy138;
2043 goto yy94;
2044 }
2045 } else {
2046 if (yych <= 'Z') {
2047 if (yych <= '>') goto yy99;
2048 if (yych <= '@') goto yy94;
2049 goto yy138;
2050 } else {
2051 if (yych <= '`') goto yy94;
2052 if (yych <= 'z') goto yy138;
2053 goto yy94;
2054 }
2055 }
2056 yy137:
2057 yych = *++p;
2058 if (yych <= '9') {
2059 if (yych == '-') goto yy139;
2060 if (yych <= '/') goto yy94;
2061 goto yy140;
2062 } else {
2063 if (yych <= 'Z') {
2064 if (yych <= '@') goto yy94;
2065 goto yy140;
2066 } else {
2067 if (yych <= '`') goto yy94;
2068 if (yych <= 'z') goto yy140;
2069 goto yy94;
2070 }
2071 }
2072 yy138:
2073 yych = *++p;
2074 if (yych <= '=') {
2075 if (yych <= '.') {
2076 if (yych <= ',') goto yy94;
2077 if (yych >= '.') goto yy95;
2078 } else {
2079 if (yych <= '/') goto yy94;
2080 if (yych <= '9') goto yy140;
2081 goto yy94;
2082 }
2083 } else {
2084 if (yych <= 'Z') {
2085 if (yych <= '>') goto yy99;
2086 if (yych <= '@') goto yy94;
2087 goto yy140;
2088 } else {
2089 if (yych <= '`') goto yy94;
2090 if (yych <= 'z') goto yy140;
2091 goto yy94;
2092 }
2093 }
2094 yy139:
2095 yych = *++p;
2096 if (yych <= '9') {
2097 if (yych == '-') goto yy141;
2098 if (yych <= '/') goto yy94;
2099 goto yy142;
2100 } else {
2101 if (yych <= 'Z') {
2102 if (yych <= '@') goto yy94;
2103 goto yy142;
2104 } else {
2105 if (yych <= '`') goto yy94;
2106 if (yych <= 'z') goto yy142;
2107 goto yy94;
2108 }
2109 }
2110 yy140:
2111 yych = *++p;
2112 if (yych <= '=') {
2113 if (yych <= '.') {
2114 if (yych <= ',') goto yy94;
2115 if (yych >= '.') goto yy95;
2116 } else {
2117 if (yych <= '/') goto yy94;
2118 if (yych <= '9') goto yy142;
2119 goto yy94;
2120 }
2121 } else {
2122 if (yych <= 'Z') {
2123 if (yych <= '>') goto yy99;
2124 if (yych <= '@') goto yy94;
2125 goto yy142;
2126 } else {
2127 if (yych <= '`') goto yy94;
2128 if (yych <= 'z') goto yy142;
2129 goto yy94;
2130 }
2131 }
2132 yy141:
2133 yych = *++p;
2134 if (yych <= '9') {
2135 if (yych == '-') goto yy143;
2136 if (yych <= '/') goto yy94;
2137 goto yy144;
2138 } else {
2139 if (yych <= 'Z') {
2140 if (yych <= '@') goto yy94;
2141 goto yy144;
2142 } else {
2143 if (yych <= '`') goto yy94;
2144 if (yych <= 'z') goto yy144;
2145 goto yy94;
2146 }
2147 }
2148 yy142:
2149 yych = *++p;
2150 if (yych <= '=') {
2151 if (yych <= '.') {
2152 if (yych <= ',') goto yy94;
2153 if (yych >= '.') goto yy95;
2154 } else {
2155 if (yych <= '/') goto yy94;
2156 if (yych <= '9') goto yy144;
2157 goto yy94;
2158 }
2159 } else {
2160 if (yych <= 'Z') {
2161 if (yych <= '>') goto yy99;
2162 if (yych <= '@') goto yy94;
2163 goto yy144;
2164 } else {
2165 if (yych <= '`') goto yy94;
2166 if (yych <= 'z') goto yy144;
2167 goto yy94;
2168 }
2169 }
2170 yy143:
2171 yych = *++p;
2172 if (yych <= '9') {
2173 if (yych == '-') goto yy145;
2174 if (yych <= '/') goto yy94;
2175 goto yy146;
2176 } else {
2177 if (yych <= 'Z') {
2178 if (yych <= '@') goto yy94;
2179 goto yy146;
2180 } else {
2181 if (yych <= '`') goto yy94;
2182 if (yych <= 'z') goto yy146;
2183 goto yy94;
2184 }
2185 }
2186 yy144:
2187 yych = *++p;
2188 if (yych <= '=') {
2189 if (yych <= '.') {
2190 if (yych <= ',') goto yy94;
2191 if (yych >= '.') goto yy95;
2192 } else {
2193 if (yych <= '/') goto yy94;
2194 if (yych <= '9') goto yy146;
2195 goto yy94;
2196 }
2197 } else {
2198 if (yych <= 'Z') {
2199 if (yych <= '>') goto yy99;
2200 if (yych <= '@') goto yy94;
2201 goto yy146;
2202 } else {
2203 if (yych <= '`') goto yy94;
2204 if (yych <= 'z') goto yy146;
2205 goto yy94;
2206 }
2207 }
2208 yy145:
2209 yych = *++p;
2210 if (yych <= '9') {
2211 if (yych == '-') goto yy147;
2212 if (yych <= '/') goto yy94;
2213 goto yy148;
2214 } else {
2215 if (yych <= 'Z') {
2216 if (yych <= '@') goto yy94;
2217 goto yy148;
2218 } else {
2219 if (yych <= '`') goto yy94;
2220 if (yych <= 'z') goto yy148;
2221 goto yy94;
2222 }
2223 }
2224 yy146:
2225 yych = *++p;
2226 if (yych <= '=') {
2227 if (yych <= '.') {
2228 if (yych <= ',') goto yy94;
2229 if (yych >= '.') goto yy95;
2230 } else {
2231 if (yych <= '/') goto yy94;
2232 if (yych <= '9') goto yy148;
2233 goto yy94;
2234 }
2235 } else {
2236 if (yych <= 'Z') {
2237 if (yych <= '>') goto yy99;
2238 if (yych <= '@') goto yy94;
2239 goto yy148;
2240 } else {
2241 if (yych <= '`') goto yy94;
2242 if (yych <= 'z') goto yy148;
2243 goto yy94;
2244 }
2245 }
2246 yy147:
2247 yych = *++p;
2248 if (yych <= '9') {
2249 if (yych == '-') goto yy149;
2250 if (yych <= '/') goto yy94;
2251 goto yy150;
2252 } else {
2253 if (yych <= 'Z') {
2254 if (yych <= '@') goto yy94;
2255 goto yy150;
2256 } else {
2257 if (yych <= '`') goto yy94;
2258 if (yych <= 'z') goto yy150;
2259 goto yy94;
2260 }
2261 }
2262 yy148:
2263 yych = *++p;
2264 if (yych <= '=') {
2265 if (yych <= '.') {
2266 if (yych <= ',') goto yy94;
2267 if (yych >= '.') goto yy95;
2268 } else {
2269 if (yych <= '/') goto yy94;
2270 if (yych <= '9') goto yy150;
2271 goto yy94;
2272 }
2273 } else {
2274 if (yych <= 'Z') {
2275 if (yych <= '>') goto yy99;
2276 if (yych <= '@') goto yy94;
2277 goto yy150;
2278 } else {
2279 if (yych <= '`') goto yy94;
2280 if (yych <= 'z') goto yy150;
2281 goto yy94;
2282 }
2283 }
2284 yy149:
2285 yych = *++p;
2286 if (yych <= '9') {
2287 if (yych == '-') goto yy151;
2288 if (yych <= '/') goto yy94;
2289 goto yy152;
2290 } else {
2291 if (yych <= 'Z') {
2292 if (yych <= '@') goto yy94;
2293 goto yy152;
2294 } else {
2295 if (yych <= '`') goto yy94;
2296 if (yych <= 'z') goto yy152;
2297 goto yy94;
2298 }
2299 }
2300 yy150:
2301 yych = *++p;
2302 if (yych <= '=') {
2303 if (yych <= '.') {
2304 if (yych <= ',') goto yy94;
2305 if (yych >= '.') goto yy95;
2306 } else {
2307 if (yych <= '/') goto yy94;
2308 if (yych <= '9') goto yy152;
2309 goto yy94;
2310 }
2311 } else {
2312 if (yych <= 'Z') {
2313 if (yych <= '>') goto yy99;
2314 if (yych <= '@') goto yy94;
2315 goto yy152;
2316 } else {
2317 if (yych <= '`') goto yy94;
2318 if (yych <= 'z') goto yy152;
2319 goto yy94;
2320 }
2321 }
2322 yy151:
2323 yych = *++p;
2324 if (yych <= '9') {
2325 if (yych == '-') goto yy153;
2326 if (yych <= '/') goto yy94;
2327 goto yy154;
2328 } else {
2329 if (yych <= 'Z') {
2330 if (yych <= '@') goto yy94;
2331 goto yy154;
2332 } else {
2333 if (yych <= '`') goto yy94;
2334 if (yych <= 'z') goto yy154;
2335 goto yy94;
2336 }
2337 }
2338 yy152:
2339 yych = *++p;
2340 if (yych <= '=') {
2341 if (yych <= '.') {
2342 if (yych <= ',') goto yy94;
2343 if (yych >= '.') goto yy95;
2344 } else {
2345 if (yych <= '/') goto yy94;
2346 if (yych <= '9') goto yy154;
2347 goto yy94;
2348 }
2349 } else {
2350 if (yych <= 'Z') {
2351 if (yych <= '>') goto yy99;
2352 if (yych <= '@') goto yy94;
2353 goto yy154;
2354 } else {
2355 if (yych <= '`') goto yy94;
2356 if (yych <= 'z') goto yy154;
2357 goto yy94;
2358 }
2359 }
2360 yy153:
2361 yych = *++p;
2362 if (yych <= '9') {
2363 if (yych == '-') goto yy155;
2364 if (yych <= '/') goto yy94;
2365 goto yy156;
2366 } else {
2367 if (yych <= 'Z') {
2368 if (yych <= '@') goto yy94;
2369 goto yy156;
2370 } else {
2371 if (yych <= '`') goto yy94;
2372 if (yych <= 'z') goto yy156;
2373 goto yy94;
2374 }
2375 }
2376 yy154:
2377 yych = *++p;
2378 if (yych <= '=') {
2379 if (yych <= '.') {
2380 if (yych <= ',') goto yy94;
2381 if (yych >= '.') goto yy95;
2382 } else {
2383 if (yych <= '/') goto yy94;
2384 if (yych <= '9') goto yy156;
2385 goto yy94;
2386 }
2387 } else {
2388 if (yych <= 'Z') {
2389 if (yych <= '>') goto yy99;
2390 if (yych <= '@') goto yy94;
2391 goto yy156;
2392 } else {
2393 if (yych <= '`') goto yy94;
2394 if (yych <= 'z') goto yy156;
2395 goto yy94;
2396 }
2397 }
2398 yy155:
2399 yych = *++p;
2400 if (yych <= '9') {
2401 if (yych == '-') goto yy157;
2402 if (yych <= '/') goto yy94;
2403 goto yy158;
2404 } else {
2405 if (yych <= 'Z') {
2406 if (yych <= '@') goto yy94;
2407 goto yy158;
2408 } else {
2409 if (yych <= '`') goto yy94;
2410 if (yych <= 'z') goto yy158;
2411 goto yy94;
2412 }
2413 }
2414 yy156:
2415 yych = *++p;
2416 if (yych <= '=') {
2417 if (yych <= '.') {
2418 if (yych <= ',') goto yy94;
2419 if (yych >= '.') goto yy95;
2420 } else {
2421 if (yych <= '/') goto yy94;
2422 if (yych <= '9') goto yy158;
2423 goto yy94;
2424 }
2425 } else {
2426 if (yych <= 'Z') {
2427 if (yych <= '>') goto yy99;
2428 if (yych <= '@') goto yy94;
2429 goto yy158;
2430 } else {
2431 if (yych <= '`') goto yy94;
2432 if (yych <= 'z') goto yy158;
2433 goto yy94;
2434 }
2435 }
2436 yy157:
2437 yych = *++p;
2438 if (yych <= '9') {
2439 if (yych == '-') goto yy159;
2440 if (yych <= '/') goto yy94;
2441 goto yy160;
2442 } else {
2443 if (yych <= 'Z') {
2444 if (yych <= '@') goto yy94;
2445 goto yy160;
2446 } else {
2447 if (yych <= '`') goto yy94;
2448 if (yych <= 'z') goto yy160;
2449 goto yy94;
2450 }
2451 }
2452 yy158:
2453 yych = *++p;
2454 if (yych <= '=') {
2455 if (yych <= '.') {
2456 if (yych <= ',') goto yy94;
2457 if (yych >= '.') goto yy95;
2458 } else {
2459 if (yych <= '/') goto yy94;
2460 if (yych <= '9') goto yy160;
2461 goto yy94;
2462 }
2463 } else {
2464 if (yych <= 'Z') {
2465 if (yych <= '>') goto yy99;
2466 if (yych <= '@') goto yy94;
2467 goto yy160;
2468 } else {
2469 if (yych <= '`') goto yy94;
2470 if (yych <= 'z') goto yy160;
2471 goto yy94;
2472 }
2473 }
2474 yy159:
2475 yych = *++p;
2476 if (yych <= '9') {
2477 if (yych == '-') goto yy161;
2478 if (yych <= '/') goto yy94;
2479 goto yy162;
2480 } else {
2481 if (yych <= 'Z') {
2482 if (yych <= '@') goto yy94;
2483 goto yy162;
2484 } else {
2485 if (yych <= '`') goto yy94;
2486 if (yych <= 'z') goto yy162;
2487 goto yy94;
2488 }
2489 }
2490 yy160:
2491 yych = *++p;
2492 if (yych <= '=') {
2493 if (yych <= '.') {
2494 if (yych <= ',') goto yy94;
2495 if (yych >= '.') goto yy95;
2496 } else {
2497 if (yych <= '/') goto yy94;
2498 if (yych <= '9') goto yy162;
2499 goto yy94;
2500 }
2501 } else {
2502 if (yych <= 'Z') {
2503 if (yych <= '>') goto yy99;
2504 if (yych <= '@') goto yy94;
2505 goto yy162;
2506 } else {
2507 if (yych <= '`') goto yy94;
2508 if (yych <= 'z') goto yy162;
2509 goto yy94;
2510 }
2511 }
2512 yy161:
2513 yych = *++p;
2514 if (yych <= '9') {
2515 if (yych == '-') goto yy163;
2516 if (yych <= '/') goto yy94;
2517 goto yy164;
2518 } else {
2519 if (yych <= 'Z') {
2520 if (yych <= '@') goto yy94;
2521 goto yy164;
2522 } else {
2523 if (yych <= '`') goto yy94;
2524 if (yych <= 'z') goto yy164;
2525 goto yy94;
2526 }
2527 }
2528 yy162:
2529 yych = *++p;
2530 if (yych <= '=') {
2531 if (yych <= '.') {
2532 if (yych <= ',') goto yy94;
2533 if (yych >= '.') goto yy95;
2534 } else {
2535 if (yych <= '/') goto yy94;
2536 if (yych <= '9') goto yy164;
2537 goto yy94;
2538 }
2539 } else {
2540 if (yych <= 'Z') {
2541 if (yych <= '>') goto yy99;
2542 if (yych <= '@') goto yy94;
2543 goto yy164;
2544 } else {
2545 if (yych <= '`') goto yy94;
2546 if (yych <= 'z') goto yy164;
2547 goto yy94;
2548 }
2549 }
2550 yy163:
2551 yych = *++p;
2552 if (yych <= '9') {
2553 if (yych == '-') goto yy165;
2554 if (yych <= '/') goto yy94;
2555 goto yy166;
2556 } else {
2557 if (yych <= 'Z') {
2558 if (yych <= '@') goto yy94;
2559 goto yy166;
2560 } else {
2561 if (yych <= '`') goto yy94;
2562 if (yych <= 'z') goto yy166;
2563 goto yy94;
2564 }
2565 }
2566 yy164:
2567 yych = *++p;
2568 if (yych <= '=') {
2569 if (yych <= '.') {
2570 if (yych <= ',') goto yy94;
2571 if (yych >= '.') goto yy95;
2572 } else {
2573 if (yych <= '/') goto yy94;
2574 if (yych <= '9') goto yy166;
2575 goto yy94;
2576 }
2577 } else {
2578 if (yych <= 'Z') {
2579 if (yych <= '>') goto yy99;
2580 if (yych <= '@') goto yy94;
2581 goto yy166;
2582 } else {
2583 if (yych <= '`') goto yy94;
2584 if (yych <= 'z') goto yy166;
2585 goto yy94;
2586 }
2587 }
2588 yy165:
2589 yych = *++p;
2590 if (yych <= '9') {
2591 if (yych == '-') goto yy167;
2592 if (yych <= '/') goto yy94;
2593 goto yy168;
2594 } else {
2595 if (yych <= 'Z') {
2596 if (yych <= '@') goto yy94;
2597 goto yy168;
2598 } else {
2599 if (yych <= '`') goto yy94;
2600 if (yych <= 'z') goto yy168;
2601 goto yy94;
2602 }
2603 }
2604 yy166:
2605 yych = *++p;
2606 if (yych <= '=') {
2607 if (yych <= '.') {
2608 if (yych <= ',') goto yy94;
2609 if (yych >= '.') goto yy95;
2610 } else {
2611 if (yych <= '/') goto yy94;
2612 if (yych <= '9') goto yy168;
2613 goto yy94;
2614 }
2615 } else {
2616 if (yych <= 'Z') {
2617 if (yych <= '>') goto yy99;
2618 if (yych <= '@') goto yy94;
2619 goto yy168;
2620 } else {
2621 if (yych <= '`') goto yy94;
2622 if (yych <= 'z') goto yy168;
2623 goto yy94;
2624 }
2625 }
2626 yy167:
2627 yych = *++p;
2628 if (yych <= '9') {
2629 if (yych == '-') goto yy169;
2630 if (yych <= '/') goto yy94;
2631 goto yy170;
2632 } else {
2633 if (yych <= 'Z') {
2634 if (yych <= '@') goto yy94;
2635 goto yy170;
2636 } else {
2637 if (yych <= '`') goto yy94;
2638 if (yych <= 'z') goto yy170;
2639 goto yy94;
2640 }
2641 }
2642 yy168:
2643 yych = *++p;
2644 if (yych <= '=') {
2645 if (yych <= '.') {
2646 if (yych <= ',') goto yy94;
2647 if (yych >= '.') goto yy95;
2648 } else {
2649 if (yych <= '/') goto yy94;
2650 if (yych <= '9') goto yy170;
2651 goto yy94;
2652 }
2653 } else {
2654 if (yych <= 'Z') {
2655 if (yych <= '>') goto yy99;
2656 if (yych <= '@') goto yy94;
2657 goto yy170;
2658 } else {
2659 if (yych <= '`') goto yy94;
2660 if (yych <= 'z') goto yy170;
2661 goto yy94;
2662 }
2663 }
2664 yy169:
2665 yych = *++p;
2666 if (yych <= '9') {
2667 if (yych == '-') goto yy171;
2668 if (yych <= '/') goto yy94;
2669 goto yy172;
2670 } else {
2671 if (yych <= 'Z') {
2672 if (yych <= '@') goto yy94;
2673 goto yy172;
2674 } else {
2675 if (yych <= '`') goto yy94;
2676 if (yych <= 'z') goto yy172;
2677 goto yy94;
2678 }
2679 }
2680 yy170:
2681 yych = *++p;
2682 if (yych <= '=') {
2683 if (yych <= '.') {
2684 if (yych <= ',') goto yy94;
2685 if (yych >= '.') goto yy95;
2686 } else {
2687 if (yych <= '/') goto yy94;
2688 if (yych <= '9') goto yy172;
2689 goto yy94;
2690 }
2691 } else {
2692 if (yych <= 'Z') {
2693 if (yych <= '>') goto yy99;
2694 if (yych <= '@') goto yy94;
2695 goto yy172;
2696 } else {
2697 if (yych <= '`') goto yy94;
2698 if (yych <= 'z') goto yy172;
2699 goto yy94;
2700 }
2701 }
2702 yy171:
2703 yych = *++p;
2704 if (yych <= '9') {
2705 if (yych == '-') goto yy173;
2706 if (yych <= '/') goto yy94;
2707 goto yy174;
2708 } else {
2709 if (yych <= 'Z') {
2710 if (yych <= '@') goto yy94;
2711 goto yy174;
2712 } else {
2713 if (yych <= '`') goto yy94;
2714 if (yych <= 'z') goto yy174;
2715 goto yy94;
2716 }
2717 }
2718 yy172:
2719 yych = *++p;
2720 if (yych <= '=') {
2721 if (yych <= '.') {
2722 if (yych <= ',') goto yy94;
2723 if (yych >= '.') goto yy95;
2724 } else {
2725 if (yych <= '/') goto yy94;
2726 if (yych <= '9') goto yy174;
2727 goto yy94;
2728 }
2729 } else {
2730 if (yych <= 'Z') {
2731 if (yych <= '>') goto yy99;
2732 if (yych <= '@') goto yy94;
2733 goto yy174;
2734 } else {
2735 if (yych <= '`') goto yy94;
2736 if (yych <= 'z') goto yy174;
2737 goto yy94;
2738 }
2739 }
2740 yy173:
2741 yych = *++p;
2742 if (yych <= '9') {
2743 if (yych == '-') goto yy175;
2744 if (yych <= '/') goto yy94;
2745 goto yy176;
2746 } else {
2747 if (yych <= 'Z') {
2748 if (yych <= '@') goto yy94;
2749 goto yy176;
2750 } else {
2751 if (yych <= '`') goto yy94;
2752 if (yych <= 'z') goto yy176;
2753 goto yy94;
2754 }
2755 }
2756 yy174:
2757 yych = *++p;
2758 if (yych <= '=') {
2759 if (yych <= '.') {
2760 if (yych <= ',') goto yy94;
2761 if (yych >= '.') goto yy95;
2762 } else {
2763 if (yych <= '/') goto yy94;
2764 if (yych <= '9') goto yy176;
2765 goto yy94;
2766 }
2767 } else {
2768 if (yych <= 'Z') {
2769 if (yych <= '>') goto yy99;
2770 if (yych <= '@') goto yy94;
2771 goto yy176;
2772 } else {
2773 if (yych <= '`') goto yy94;
2774 if (yych <= 'z') goto yy176;
2775 goto yy94;
2776 }
2777 }
2778 yy175:
2779 yych = *++p;
2780 if (yych <= '9') {
2781 if (yych == '-') goto yy177;
2782 if (yych <= '/') goto yy94;
2783 goto yy178;
2784 } else {
2785 if (yych <= 'Z') {
2786 if (yych <= '@') goto yy94;
2787 goto yy178;
2788 } else {
2789 if (yych <= '`') goto yy94;
2790 if (yych <= 'z') goto yy178;
2791 goto yy94;
2792 }
2793 }
2794 yy176:
2795 yych = *++p;
2796 if (yych <= '=') {
2797 if (yych <= '.') {
2798 if (yych <= ',') goto yy94;
2799 if (yych >= '.') goto yy95;
2800 } else {
2801 if (yych <= '/') goto yy94;
2802 if (yych <= '9') goto yy178;
2803 goto yy94;
2804 }
2805 } else {
2806 if (yych <= 'Z') {
2807 if (yych <= '>') goto yy99;
2808 if (yych <= '@') goto yy94;
2809 goto yy178;
2810 } else {
2811 if (yych <= '`') goto yy94;
2812 if (yych <= 'z') goto yy178;
2813 goto yy94;
2814 }
2815 }
2816 yy177:
2817 yych = *++p;
2818 if (yych <= '9') {
2819 if (yych == '-') goto yy179;
2820 if (yych <= '/') goto yy94;
2821 goto yy180;
2822 } else {
2823 if (yych <= 'Z') {
2824 if (yych <= '@') goto yy94;
2825 goto yy180;
2826 } else {
2827 if (yych <= '`') goto yy94;
2828 if (yych <= 'z') goto yy180;
2829 goto yy94;
2830 }
2831 }
2832 yy178:
2833 yych = *++p;
2834 if (yych <= '=') {
2835 if (yych <= '.') {
2836 if (yych <= ',') goto yy94;
2837 if (yych >= '.') goto yy95;
2838 } else {
2839 if (yych <= '/') goto yy94;
2840 if (yych <= '9') goto yy180;
2841 goto yy94;
2842 }
2843 } else {
2844 if (yych <= 'Z') {
2845 if (yych <= '>') goto yy99;
2846 if (yych <= '@') goto yy94;
2847 goto yy180;
2848 } else {
2849 if (yych <= '`') goto yy94;
2850 if (yych <= 'z') goto yy180;
2851 goto yy94;
2852 }
2853 }
2854 yy179:
2855 yych = *++p;
2856 if (yych <= '9') {
2857 if (yych == '-') goto yy181;
2858 if (yych <= '/') goto yy94;
2859 goto yy182;
2860 } else {
2861 if (yych <= 'Z') {
2862 if (yych <= '@') goto yy94;
2863 goto yy182;
2864 } else {
2865 if (yych <= '`') goto yy94;
2866 if (yych <= 'z') goto yy182;
2867 goto yy94;
2868 }
2869 }
2870 yy180:
2871 yych = *++p;
2872 if (yych <= '=') {
2873 if (yych <= '.') {
2874 if (yych <= ',') goto yy94;
2875 if (yych >= '.') goto yy95;
2876 } else {
2877 if (yych <= '/') goto yy94;
2878 if (yych <= '9') goto yy182;
2879 goto yy94;
2880 }
2881 } else {
2882 if (yych <= 'Z') {
2883 if (yych <= '>') goto yy99;
2884 if (yych <= '@') goto yy94;
2885 goto yy182;
2886 } else {
2887 if (yych <= '`') goto yy94;
2888 if (yych <= 'z') goto yy182;
2889 goto yy94;
2890 }
2891 }
2892 yy181:
2893 yych = *++p;
2894 if (yych <= '9') {
2895 if (yych == '-') goto yy183;
2896 if (yych <= '/') goto yy94;
2897 goto yy184;
2898 } else {
2899 if (yych <= 'Z') {
2900 if (yych <= '@') goto yy94;
2901 goto yy184;
2902 } else {
2903 if (yych <= '`') goto yy94;
2904 if (yych <= 'z') goto yy184;
2905 goto yy94;
2906 }
2907 }
2908 yy182:
2909 yych = *++p;
2910 if (yych <= '=') {
2911 if (yych <= '.') {
2912 if (yych <= ',') goto yy94;
2913 if (yych >= '.') goto yy95;
2914 } else {
2915 if (yych <= '/') goto yy94;
2916 if (yych <= '9') goto yy184;
2917 goto yy94;
2918 }
2919 } else {
2920 if (yych <= 'Z') {
2921 if (yych <= '>') goto yy99;
2922 if (yych <= '@') goto yy94;
2923 goto yy184;
2924 } else {
2925 if (yych <= '`') goto yy94;
2926 if (yych <= 'z') goto yy184;
2927 goto yy94;
2928 }
2929 }
2930 yy183:
2931 yych = *++p;
2932 if (yych <= '9') {
2933 if (yych == '-') goto yy185;
2934 if (yych <= '/') goto yy94;
2935 goto yy186;
2936 } else {
2937 if (yych <= 'Z') {
2938 if (yych <= '@') goto yy94;
2939 goto yy186;
2940 } else {
2941 if (yych <= '`') goto yy94;
2942 if (yych <= 'z') goto yy186;
2943 goto yy94;
2944 }
2945 }
2946 yy184:
2947 yych = *++p;
2948 if (yych <= '=') {
2949 if (yych <= '.') {
2950 if (yych <= ',') goto yy94;
2951 if (yych >= '.') goto yy95;
2952 } else {
2953 if (yych <= '/') goto yy94;
2954 if (yych <= '9') goto yy186;
2955 goto yy94;
2956 }
2957 } else {
2958 if (yych <= 'Z') {
2959 if (yych <= '>') goto yy99;
2960 if (yych <= '@') goto yy94;
2961 goto yy186;
2962 } else {
2963 if (yych <= '`') goto yy94;
2964 if (yych <= 'z') goto yy186;
2965 goto yy94;
2966 }
2967 }
2968 yy185:
2969 yych = *++p;
2970 if (yych <= '9') {
2971 if (yych == '-') goto yy187;
2972 if (yych <= '/') goto yy94;
2973 goto yy188;
2974 } else {
2975 if (yych <= 'Z') {
2976 if (yych <= '@') goto yy94;
2977 goto yy188;
2978 } else {
2979 if (yych <= '`') goto yy94;
2980 if (yych <= 'z') goto yy188;
2981 goto yy94;
2982 }
2983 }
2984 yy186:
2985 yych = *++p;
2986 if (yych <= '=') {
2987 if (yych <= '.') {
2988 if (yych <= ',') goto yy94;
2989 if (yych >= '.') goto yy95;
2990 } else {
2991 if (yych <= '/') goto yy94;
2992 if (yych <= '9') goto yy188;
2993 goto yy94;
2994 }
2995 } else {
2996 if (yych <= 'Z') {
2997 if (yych <= '>') goto yy99;
2998 if (yych <= '@') goto yy94;
2999 goto yy188;
3000 } else {
3001 if (yych <= '`') goto yy94;
3002 if (yych <= 'z') goto yy188;
3003 goto yy94;
3004 }
3005 }
3006 yy187:
3007 yych = *++p;
3008 if (yych <= '9') {
3009 if (yych == '-') goto yy189;
3010 if (yych <= '/') goto yy94;
3011 goto yy190;
3012 } else {
3013 if (yych <= 'Z') {
3014 if (yych <= '@') goto yy94;
3015 goto yy190;
3016 } else {
3017 if (yych <= '`') goto yy94;
3018 if (yych <= 'z') goto yy190;
3019 goto yy94;
3020 }
3021 }
3022 yy188:
3023 yych = *++p;
3024 if (yych <= '=') {
3025 if (yych <= '.') {
3026 if (yych <= ',') goto yy94;
3027 if (yych >= '.') goto yy95;
3028 } else {
3029 if (yych <= '/') goto yy94;
3030 if (yych <= '9') goto yy190;
3031 goto yy94;
3032 }
3033 } else {
3034 if (yych <= 'Z') {
3035 if (yych <= '>') goto yy99;
3036 if (yych <= '@') goto yy94;
3037 goto yy190;
3038 } else {
3039 if (yych <= '`') goto yy94;
3040 if (yych <= 'z') goto yy190;
3041 goto yy94;
3042 }
3043 }
3044 yy189:
3045 yych = *++p;
3046 if (yych <= '9') {
3047 if (yych == '-') goto yy191;
3048 if (yych <= '/') goto yy94;
3049 goto yy192;
3050 } else {
3051 if (yych <= 'Z') {
3052 if (yych <= '@') goto yy94;
3053 goto yy192;
3054 } else {
3055 if (yych <= '`') goto yy94;
3056 if (yych <= 'z') goto yy192;
3057 goto yy94;
3058 }
3059 }
3060 yy190:
3061 yych = *++p;
3062 if (yych <= '=') {
3063 if (yych <= '.') {
3064 if (yych <= ',') goto yy94;
3065 if (yych >= '.') goto yy95;
3066 } else {
3067 if (yych <= '/') goto yy94;
3068 if (yych <= '9') goto yy192;
3069 goto yy94;
3070 }
3071 } else {
3072 if (yych <= 'Z') {
3073 if (yych <= '>') goto yy99;
3074 if (yych <= '@') goto yy94;
3075 goto yy192;
3076 } else {
3077 if (yych <= '`') goto yy94;
3078 if (yych <= 'z') goto yy192;
3079 goto yy94;
3080 }
3081 }
3082 yy191:
3083 yych = *++p;
3084 if (yych <= '9') {
3085 if (yych == '-') goto yy193;
3086 if (yych <= '/') goto yy94;
3087 goto yy194;
3088 } else {
3089 if (yych <= 'Z') {
3090 if (yych <= '@') goto yy94;
3091 goto yy194;
3092 } else {
3093 if (yych <= '`') goto yy94;
3094 if (yych <= 'z') goto yy194;
3095 goto yy94;
3096 }
3097 }
3098 yy192:
3099 yych = *++p;
3100 if (yych <= '=') {
3101 if (yych <= '.') {
3102 if (yych <= ',') goto yy94;
3103 if (yych >= '.') goto yy95;
3104 } else {
3105 if (yych <= '/') goto yy94;
3106 if (yych <= '9') goto yy194;
3107 goto yy94;
3108 }
3109 } else {
3110 if (yych <= 'Z') {
3111 if (yych <= '>') goto yy99;
3112 if (yych <= '@') goto yy94;
3113 goto yy194;
3114 } else {
3115 if (yych <= '`') goto yy94;
3116 if (yych <= 'z') goto yy194;
3117 goto yy94;
3118 }
3119 }
3120 yy193:
3121 yych = *++p;
3122 if (yych <= '9') {
3123 if (yych == '-') goto yy195;
3124 if (yych <= '/') goto yy94;
3125 goto yy196;
3126 } else {
3127 if (yych <= 'Z') {
3128 if (yych <= '@') goto yy94;
3129 goto yy196;
3130 } else {
3131 if (yych <= '`') goto yy94;
3132 if (yych <= 'z') goto yy196;
3133 goto yy94;
3134 }
3135 }
3136 yy194:
3137 yych = *++p;
3138 if (yych <= '=') {
3139 if (yych <= '.') {
3140 if (yych <= ',') goto yy94;
3141 if (yych >= '.') goto yy95;
3142 } else {
3143 if (yych <= '/') goto yy94;
3144 if (yych <= '9') goto yy196;
3145 goto yy94;
3146 }
3147 } else {
3148 if (yych <= 'Z') {
3149 if (yych <= '>') goto yy99;
3150 if (yych <= '@') goto yy94;
3151 goto yy196;
3152 } else {
3153 if (yych <= '`') goto yy94;
3154 if (yych <= 'z') goto yy196;
3155 goto yy94;
3156 }
3157 }
3158 yy195:
3159 yych = *++p;
3160 if (yych <= '9') {
3161 if (yych == '-') goto yy197;
3162 if (yych <= '/') goto yy94;
3163 goto yy198;
3164 } else {
3165 if (yych <= 'Z') {
3166 if (yych <= '@') goto yy94;
3167 goto yy198;
3168 } else {
3169 if (yych <= '`') goto yy94;
3170 if (yych <= 'z') goto yy198;
3171 goto yy94;
3172 }
3173 }
3174 yy196:
3175 yych = *++p;
3176 if (yych <= '=') {
3177 if (yych <= '.') {
3178 if (yych <= ',') goto yy94;
3179 if (yych >= '.') goto yy95;
3180 } else {
3181 if (yych <= '/') goto yy94;
3182 if (yych <= '9') goto yy198;
3183 goto yy94;
3184 }
3185 } else {
3186 if (yych <= 'Z') {
3187 if (yych <= '>') goto yy99;
3188 if (yych <= '@') goto yy94;
3189 goto yy198;
3190 } else {
3191 if (yych <= '`') goto yy94;
3192 if (yych <= 'z') goto yy198;
3193 goto yy94;
3194 }
3195 }
3196 yy197:
3197 yych = *++p;
3198 if (yych <= '9') {
3199 if (yych == '-') goto yy199;
3200 if (yych <= '/') goto yy94;
3201 goto yy200;
3202 } else {
3203 if (yych <= 'Z') {
3204 if (yych <= '@') goto yy94;
3205 goto yy200;
3206 } else {
3207 if (yych <= '`') goto yy94;
3208 if (yych <= 'z') goto yy200;
3209 goto yy94;
3210 }
3211 }
3212 yy198:
3213 yych = *++p;
3214 if (yych <= '=') {
3215 if (yych <= '.') {
3216 if (yych <= ',') goto yy94;
3217 if (yych >= '.') goto yy95;
3218 } else {
3219 if (yych <= '/') goto yy94;
3220 if (yych <= '9') goto yy200;
3221 goto yy94;
3222 }
3223 } else {
3224 if (yych <= 'Z') {
3225 if (yych <= '>') goto yy99;
3226 if (yych <= '@') goto yy94;
3227 goto yy200;
3228 } else {
3229 if (yych <= '`') goto yy94;
3230 if (yych <= 'z') goto yy200;
3231 goto yy94;
3232 }
3233 }
3234 yy199:
3235 yych = *++p;
3236 if (yych <= '9') {
3237 if (yych == '-') goto yy201;
3238 if (yych <= '/') goto yy94;
3239 goto yy202;
3240 } else {
3241 if (yych <= 'Z') {
3242 if (yych <= '@') goto yy94;
3243 goto yy202;
3244 } else {
3245 if (yych <= '`') goto yy94;
3246 if (yych <= 'z') goto yy202;
3247 goto yy94;
3248 }
3249 }
3250 yy200:
3251 yych = *++p;
3252 if (yych <= '=') {
3253 if (yych <= '.') {
3254 if (yych <= ',') goto yy94;
3255 if (yych >= '.') goto yy95;
3256 } else {
3257 if (yych <= '/') goto yy94;
3258 if (yych <= '9') goto yy202;
3259 goto yy94;
3260 }
3261 } else {
3262 if (yych <= 'Z') {
3263 if (yych <= '>') goto yy99;
3264 if (yych <= '@') goto yy94;
3265 goto yy202;
3266 } else {
3267 if (yych <= '`') goto yy94;
3268 if (yych <= 'z') goto yy202;
3269 goto yy94;
3270 }
3271 }
3272 yy201:
3273 yych = *++p;
3274 if (yych <= '9') {
3275 if (yych == '-') goto yy203;
3276 if (yych <= '/') goto yy94;
3277 goto yy204;
3278 } else {
3279 if (yych <= 'Z') {
3280 if (yych <= '@') goto yy94;
3281 goto yy204;
3282 } else {
3283 if (yych <= '`') goto yy94;
3284 if (yych <= 'z') goto yy204;
3285 goto yy94;
3286 }
3287 }
3288 yy202:
3289 yych = *++p;
3290 if (yych <= '=') {
3291 if (yych <= '.') {
3292 if (yych <= ',') goto yy94;
3293 if (yych >= '.') goto yy95;
3294 } else {
3295 if (yych <= '/') goto yy94;
3296 if (yych <= '9') goto yy204;
3297 goto yy94;
3298 }
3299 } else {
3300 if (yych <= 'Z') {
3301 if (yych <= '>') goto yy99;
3302 if (yych <= '@') goto yy94;
3303 goto yy204;
3304 } else {
3305 if (yych <= '`') goto yy94;
3306 if (yych <= 'z') goto yy204;
3307 goto yy94;
3308 }
3309 }
3310 yy203:
3311 yych = *++p;
3312 if (yych <= '9') {
3313 if (yych == '-') goto yy205;
3314 if (yych <= '/') goto yy94;
3315 goto yy206;
3316 } else {
3317 if (yych <= 'Z') {
3318 if (yych <= '@') goto yy94;
3319 goto yy206;
3320 } else {
3321 if (yych <= '`') goto yy94;
3322 if (yych <= 'z') goto yy206;
3323 goto yy94;
3324 }
3325 }
3326 yy204:
3327 yych = *++p;
3328 if (yych <= '=') {
3329 if (yych <= '.') {
3330 if (yych <= ',') goto yy94;
3331 if (yych >= '.') goto yy95;
3332 } else {
3333 if (yych <= '/') goto yy94;
3334 if (yych <= '9') goto yy206;
3335 goto yy94;
3336 }
3337 } else {
3338 if (yych <= 'Z') {
3339 if (yych <= '>') goto yy99;
3340 if (yych <= '@') goto yy94;
3341 goto yy206;
3342 } else {
3343 if (yych <= '`') goto yy94;
3344 if (yych <= 'z') goto yy206;
3345 goto yy94;
3346 }
3347 }
3348 yy205:
3349 yych = *++p;
3350 if (yych <= '9') {
3351 if (yych == '-') goto yy207;
3352 if (yych <= '/') goto yy94;
3353 goto yy208;
3354 } else {
3355 if (yych <= 'Z') {
3356 if (yych <= '@') goto yy94;
3357 goto yy208;
3358 } else {
3359 if (yych <= '`') goto yy94;
3360 if (yych <= 'z') goto yy208;
3361 goto yy94;
3362 }
3363 }
3364 yy206:
3365 yych = *++p;
3366 if (yych <= '=') {
3367 if (yych <= '.') {
3368 if (yych <= ',') goto yy94;
3369 if (yych >= '.') goto yy95;
3370 } else {
3371 if (yych <= '/') goto yy94;
3372 if (yych <= '9') goto yy208;
3373 goto yy94;
3374 }
3375 } else {
3376 if (yych <= 'Z') {
3377 if (yych <= '>') goto yy99;
3378 if (yych <= '@') goto yy94;
3379 goto yy208;
3380 } else {
3381 if (yych <= '`') goto yy94;
3382 if (yych <= 'z') goto yy208;
3383 goto yy94;
3384 }
3385 }
3386 yy207:
3387 yych = *++p;
3388 if (yych <= '9') {
3389 if (yych == '-') goto yy209;
3390 if (yych <= '/') goto yy94;
3391 goto yy210;
3392 } else {
3393 if (yych <= 'Z') {
3394 if (yych <= '@') goto yy94;
3395 goto yy210;
3396 } else {
3397 if (yych <= '`') goto yy94;
3398 if (yych <= 'z') goto yy210;
3399 goto yy94;
3400 }
3401 }
3402 yy208:
3403 yych = *++p;
3404 if (yych <= '=') {
3405 if (yych <= '.') {
3406 if (yych <= ',') goto yy94;
3407 if (yych >= '.') goto yy95;
3408 } else {
3409 if (yych <= '/') goto yy94;
3410 if (yych <= '9') goto yy210;
3411 goto yy94;
3412 }
3413 } else {
3414 if (yych <= 'Z') {
3415 if (yych <= '>') goto yy99;
3416 if (yych <= '@') goto yy94;
3417 goto yy210;
3418 } else {
3419 if (yych <= '`') goto yy94;
3420 if (yych <= 'z') goto yy210;
3421 goto yy94;
3422 }
3423 }
3424 yy209:
3425 yych = *++p;
3426 if (yych <= '9') {
3427 if (yych == '-') goto yy211;
3428 if (yych <= '/') goto yy94;
3429 goto yy212;
3430 } else {
3431 if (yych <= 'Z') {
3432 if (yych <= '@') goto yy94;
3433 goto yy212;
3434 } else {
3435 if (yych <= '`') goto yy94;
3436 if (yych <= 'z') goto yy212;
3437 goto yy94;
3438 }
3439 }
3440 yy210:
3441 yych = *++p;
3442 if (yych <= '=') {
3443 if (yych <= '.') {
3444 if (yych <= ',') goto yy94;
3445 if (yych >= '.') goto yy95;
3446 } else {
3447 if (yych <= '/') goto yy94;
3448 if (yych <= '9') goto yy212;
3449 goto yy94;
3450 }
3451 } else {
3452 if (yych <= 'Z') {
3453 if (yych <= '>') goto yy99;
3454 if (yych <= '@') goto yy94;
3455 goto yy212;
3456 } else {
3457 if (yych <= '`') goto yy94;
3458 if (yych <= 'z') goto yy212;
3459 goto yy94;
3460 }
3461 }
3462 yy211:
3463 yych = *++p;
3464 if (yych <= '9') {
3465 if (yych == '-') goto yy213;
3466 if (yych <= '/') goto yy94;
3467 goto yy214;
3468 } else {
3469 if (yych <= 'Z') {
3470 if (yych <= '@') goto yy94;
3471 goto yy214;
3472 } else {
3473 if (yych <= '`') goto yy94;
3474 if (yych <= 'z') goto yy214;
3475 goto yy94;
3476 }
3477 }
3478 yy212:
3479 yych = *++p;
3480 if (yych <= '=') {
3481 if (yych <= '.') {
3482 if (yych <= ',') goto yy94;
3483 if (yych >= '.') goto yy95;
3484 } else {
3485 if (yych <= '/') goto yy94;
3486 if (yych <= '9') goto yy214;
3487 goto yy94;
3488 }
3489 } else {
3490 if (yych <= 'Z') {
3491 if (yych <= '>') goto yy99;
3492 if (yych <= '@') goto yy94;
3493 goto yy214;
3494 } else {
3495 if (yych <= '`') goto yy94;
3496 if (yych <= 'z') goto yy214;
3497 goto yy94;
3498 }
3499 }
3500 yy213:
3501 yych = *++p;
3502 if (yych <= '9') {
3503 if (yych == '-') goto yy215;
3504 if (yych <= '/') goto yy94;
3505 goto yy216;
3506 } else {
3507 if (yych <= 'Z') {
3508 if (yych <= '@') goto yy94;
3509 goto yy216;
3510 } else {
3511 if (yych <= '`') goto yy94;
3512 if (yych <= 'z') goto yy216;
3513 goto yy94;
3514 }
3515 }
3516 yy214:
3517 yych = *++p;
3518 if (yych <= '=') {
3519 if (yych <= '.') {
3520 if (yych <= ',') goto yy94;
3521 if (yych >= '.') goto yy95;
3522 } else {
3523 if (yych <= '/') goto yy94;
3524 if (yych <= '9') goto yy216;
3525 goto yy94;
3526 }
3527 } else {
3528 if (yych <= 'Z') {
3529 if (yych <= '>') goto yy99;
3530 if (yych <= '@') goto yy94;
3531 goto yy216;
3532 } else {
3533 if (yych <= '`') goto yy94;
3534 if (yych <= 'z') goto yy216;
3535 goto yy94;
3536 }
3537 }
3538 yy215:
3539 yych = *++p;
3540 if (yych <= '9') {
3541 if (yych == '-') goto yy217;
3542 if (yych <= '/') goto yy94;
3543 goto yy218;
3544 } else {
3545 if (yych <= 'Z') {
3546 if (yych <= '@') goto yy94;
3547 goto yy218;
3548 } else {
3549 if (yych <= '`') goto yy94;
3550 if (yych <= 'z') goto yy218;
3551 goto yy94;
3552 }
3553 }
3554 yy216:
3555 yych = *++p;
3556 if (yych <= '=') {
3557 if (yych <= '.') {
3558 if (yych <= ',') goto yy94;
3559 if (yych >= '.') goto yy95;
3560 } else {
3561 if (yych <= '/') goto yy94;
3562 if (yych <= '9') goto yy218;
3563 goto yy94;
3564 }
3565 } else {
3566 if (yych <= 'Z') {
3567 if (yych <= '>') goto yy99;
3568 if (yych <= '@') goto yy94;
3569 goto yy218;
3570 } else {
3571 if (yych <= '`') goto yy94;
3572 if (yych <= 'z') goto yy218;
3573 goto yy94;
3574 }
3575 }
3576 yy217:
3577 yych = *++p;
3578 if (yych <= '9') {
3579 if (yych == '-') goto yy219;
3580 if (yych <= '/') goto yy94;
3581 goto yy220;
3582 } else {
3583 if (yych <= 'Z') {
3584 if (yych <= '@') goto yy94;
3585 goto yy220;
3586 } else {
3587 if (yych <= '`') goto yy94;
3588 if (yych <= 'z') goto yy220;
3589 goto yy94;
3590 }
3591 }
3592 yy218:
3593 yych = *++p;
3594 if (yych <= '=') {
3595 if (yych <= '.') {
3596 if (yych <= ',') goto yy94;
3597 if (yych >= '.') goto yy95;
3598 } else {
3599 if (yych <= '/') goto yy94;
3600 if (yych <= '9') goto yy220;
3601 goto yy94;
3602 }
3603 } else {
3604 if (yych <= 'Z') {
3605 if (yych <= '>') goto yy99;
3606 if (yych <= '@') goto yy94;
3607 goto yy220;
3608 } else {
3609 if (yych <= '`') goto yy94;
3610 if (yych <= 'z') goto yy220;
3611 goto yy94;
3612 }
3613 }
3614 yy219:
3615 yych = *++p;
3616 if (yych <= '@') {
3617 if (yych <= '/') goto yy94;
3618 if (yych <= '9') goto yy221;
3619 goto yy94;
3620 } else {
3621 if (yych <= 'Z') goto yy221;
3622 if (yych <= '`') goto yy94;
3623 if (yych <= 'z') goto yy221;
3624 goto yy94;
3625 }
3626 yy220:
3627 yych = *++p;
3628 if (yych <= '=') {
3629 if (yych <= '.') {
3630 if (yych <= '-') goto yy94;
3631 goto yy95;
3632 } else {
3633 if (yych <= '/') goto yy94;
3634 if (yych >= ':') goto yy94;
3635 }
3636 } else {
3637 if (yych <= 'Z') {
3638 if (yych <= '>') goto yy99;
3639 if (yych <= '@') goto yy94;
3640 } else {
3641 if (yych <= '`') goto yy94;
3642 if (yych >= '{') goto yy94;
3643 }
3644 }
3645 yy221:
3646 yych = *++p;
3647 if (yych == '.') goto yy95;
3648 if (yych == '>') goto yy99;
3649 goto yy94;
3650 }
3651
3652 }
3653
3654 // Try to match an HTML tag after first <, returning num of chars matched.
_scan_html_tag(const unsigned char * p)3655 bufsize_t _scan_html_tag(const unsigned char *p)
3656 {
3657 const unsigned char *marker = NULL;
3658 const unsigned char *start = p;
3659
3660 {
3661 unsigned char yych;
3662 static const unsigned char yybm[] = {
3663 /* table 1 .. 8: 0 */
3664 0, 250, 250, 250, 250, 250, 250, 250,
3665 250, 235, 235, 235, 235, 235, 250, 250,
3666 250, 250, 250, 250, 250, 250, 250, 250,
3667 250, 250, 250, 250, 250, 250, 250, 250,
3668 235, 250, 202, 250, 250, 250, 250, 170,
3669 250, 250, 250, 250, 250, 246, 254, 250,
3670 254, 254, 254, 254, 254, 254, 254, 254,
3671 254, 254, 254, 250, 234, 234, 232, 250,
3672 250, 254, 254, 254, 254, 254, 254, 254,
3673 254, 254, 254, 254, 254, 254, 254, 254,
3674 254, 254, 254, 254, 254, 254, 254, 254,
3675 254, 254, 254, 250, 250, 122, 250, 254,
3676 234, 254, 254, 254, 254, 254, 254, 254,
3677 254, 254, 254, 254, 254, 254, 254, 254,
3678 254, 254, 254, 254, 254, 254, 254, 254,
3679 254, 254, 254, 250, 250, 250, 250, 250,
3680 0, 0, 0, 0, 0, 0, 0, 0,
3681 0, 0, 0, 0, 0, 0, 0, 0,
3682 0, 0, 0, 0, 0, 0, 0, 0,
3683 0, 0, 0, 0, 0, 0, 0, 0,
3684 0, 0, 0, 0, 0, 0, 0, 0,
3685 0, 0, 0, 0, 0, 0, 0, 0,
3686 0, 0, 0, 0, 0, 0, 0, 0,
3687 0, 0, 0, 0, 0, 0, 0, 0,
3688 0, 0, 0, 0, 0, 0, 0, 0,
3689 0, 0, 0, 0, 0, 0, 0, 0,
3690 0, 0, 0, 0, 0, 0, 0, 0,
3691 0, 0, 0, 0, 0, 0, 0, 0,
3692 0, 0, 0, 0, 0, 0, 0, 0,
3693 0, 0, 0, 0, 0, 0, 0, 0,
3694 0, 0, 0, 0, 0, 0, 0, 0,
3695 0, 0, 0, 0, 0, 0, 0, 0,
3696 /* table 9 .. 11: 256 */
3697 0, 128, 128, 128, 128, 128, 128, 128,
3698 128, 128, 128, 128, 128, 128, 128, 128,
3699 128, 128, 128, 128, 128, 128, 128, 128,
3700 128, 128, 128, 128, 128, 128, 128, 128,
3701 128, 128, 128, 128, 128, 128, 128, 128,
3702 128, 128, 128, 128, 128, 192, 128, 128,
3703 192, 192, 192, 192, 192, 192, 192, 192,
3704 192, 192, 128, 128, 128, 128, 128, 0,
3705 128, 224, 224, 224, 224, 224, 224, 224,
3706 224, 224, 224, 224, 224, 224, 224, 224,
3707 224, 224, 224, 224, 224, 224, 224, 224,
3708 224, 224, 224, 128, 128, 128, 128, 128,
3709 128, 192, 192, 192, 192, 192, 192, 192,
3710 192, 192, 192, 192, 192, 192, 192, 192,
3711 192, 192, 192, 192, 192, 192, 192, 192,
3712 192, 192, 192, 128, 128, 128, 128, 128,
3713 0, 0, 0, 0, 0, 0, 0, 0,
3714 0, 0, 0, 0, 0, 0, 0, 0,
3715 0, 0, 0, 0, 0, 0, 0, 0,
3716 0, 0, 0, 0, 0, 0, 0, 0,
3717 0, 0, 0, 0, 0, 0, 0, 0,
3718 0, 0, 0, 0, 0, 0, 0, 0,
3719 0, 0, 0, 0, 0, 0, 0, 0,
3720 0, 0, 0, 0, 0, 0, 0, 0,
3721 0, 0, 0, 0, 0, 0, 0, 0,
3722 0, 0, 0, 0, 0, 0, 0, 0,
3723 0, 0, 0, 0, 0, 0, 0, 0,
3724 0, 0, 0, 0, 0, 0, 0, 0,
3725 0, 0, 0, 0, 0, 0, 0, 0,
3726 0, 0, 0, 0, 0, 0, 0, 0,
3727 0, 0, 0, 0, 0, 0, 0, 0,
3728 0, 0, 0, 0, 0, 0, 0, 0,
3729 };
3730 yych = *p;
3731 if (yych <= '>') {
3732 if (yych <= '!') {
3733 if (yych >= '!') goto yy226;
3734 } else {
3735 if (yych == '/') goto yy227;
3736 }
3737 } else {
3738 if (yych <= 'Z') {
3739 if (yych <= '?') goto yy228;
3740 if (yych >= 'A') goto yy229;
3741 } else {
3742 if (yych <= '`') goto yy224;
3743 if (yych <= 'z') goto yy229;
3744 }
3745 }
3746 yy224:
3747 ++p;
3748 yy225:
3749 { return 0; }
3750 yy226:
3751 yych = *(marker = ++p);
3752 if (yybm[256+yych] & 32) {
3753 goto yy232;
3754 }
3755 if (yych == '-') goto yy230;
3756 if (yych <= '@') goto yy225;
3757 if (yych <= '[') goto yy234;
3758 goto yy225;
3759 yy227:
3760 yych = *(marker = ++p);
3761 if (yych <= '@') goto yy225;
3762 if (yych <= 'Z') goto yy235;
3763 if (yych <= '`') goto yy225;
3764 if (yych <= 'z') goto yy235;
3765 goto yy225;
3766 yy228:
3767 yych = *(marker = ++p);
3768 if (yych <= 0x00) goto yy225;
3769 if (yych <= 0x7F) goto yy238;
3770 if (yych <= 0xC1) goto yy225;
3771 if (yych <= 0xF4) goto yy238;
3772 goto yy225;
3773 yy229:
3774 yych = *(marker = ++p);
3775 if (yych <= '.') {
3776 if (yych <= 0x1F) {
3777 if (yych <= 0x08) goto yy225;
3778 if (yych <= '\r') goto yy250;
3779 goto yy225;
3780 } else {
3781 if (yych <= ' ') goto yy250;
3782 if (yych == '-') goto yy250;
3783 goto yy225;
3784 }
3785 } else {
3786 if (yych <= '@') {
3787 if (yych <= '9') goto yy250;
3788 if (yych == '>') goto yy250;
3789 goto yy225;
3790 } else {
3791 if (yych <= 'Z') goto yy250;
3792 if (yych <= '`') goto yy225;
3793 if (yych <= 'z') goto yy250;
3794 goto yy225;
3795 }
3796 }
3797 yy230:
3798 yych = *++p;
3799 if (yych == '-') goto yy254;
3800 yy231:
3801 p = marker;
3802 goto yy225;
3803 yy232:
3804 yych = *++p;
3805 if (yybm[256+yych] & 32) {
3806 goto yy232;
3807 }
3808 if (yych <= 0x08) goto yy231;
3809 if (yych <= '\r') goto yy255;
3810 if (yych == ' ') goto yy255;
3811 goto yy231;
3812 yy234:
3813 yych = *++p;
3814 if (yych == 'C') goto yy257;
3815 if (yych == 'c') goto yy257;
3816 goto yy231;
3817 yy235:
3818 yych = *++p;
3819 if (yybm[256+yych] & 64) {
3820 goto yy235;
3821 }
3822 if (yych <= 0x1F) {
3823 if (yych <= 0x08) goto yy231;
3824 if (yych <= '\r') goto yy258;
3825 goto yy231;
3826 } else {
3827 if (yych <= ' ') goto yy258;
3828 if (yych == '>') goto yy252;
3829 goto yy231;
3830 }
3831 yy237:
3832 yych = *++p;
3833 yy238:
3834 if (yybm[256+yych] & 128) {
3835 goto yy237;
3836 }
3837 if (yych <= 0xEC) {
3838 if (yych <= 0xC1) {
3839 if (yych <= 0x00) goto yy231;
3840 if (yych >= '@') goto yy231;
3841 } else {
3842 if (yych <= 0xDF) goto yy240;
3843 if (yych <= 0xE0) goto yy241;
3844 goto yy242;
3845 }
3846 } else {
3847 if (yych <= 0xF0) {
3848 if (yych <= 0xED) goto yy243;
3849 if (yych <= 0xEF) goto yy242;
3850 goto yy244;
3851 } else {
3852 if (yych <= 0xF3) goto yy245;
3853 if (yych <= 0xF4) goto yy246;
3854 goto yy231;
3855 }
3856 }
3857 yych = *++p;
3858 if (yych <= 0xE0) {
3859 if (yych <= '>') {
3860 if (yych <= 0x00) goto yy231;
3861 if (yych <= '=') goto yy237;
3862 goto yy252;
3863 } else {
3864 if (yych <= 0x7F) goto yy237;
3865 if (yych <= 0xC1) goto yy231;
3866 if (yych >= 0xE0) goto yy241;
3867 }
3868 } else {
3869 if (yych <= 0xEF) {
3870 if (yych == 0xED) goto yy243;
3871 goto yy242;
3872 } else {
3873 if (yych <= 0xF0) goto yy244;
3874 if (yych <= 0xF3) goto yy245;
3875 if (yych <= 0xF4) goto yy246;
3876 goto yy231;
3877 }
3878 }
3879 yy240:
3880 yych = *++p;
3881 if (yych <= 0x7F) goto yy231;
3882 if (yych <= 0xBF) goto yy237;
3883 goto yy231;
3884 yy241:
3885 yych = *++p;
3886 if (yych <= 0x9F) goto yy231;
3887 if (yych <= 0xBF) goto yy240;
3888 goto yy231;
3889 yy242:
3890 yych = *++p;
3891 if (yych <= 0x7F) goto yy231;
3892 if (yych <= 0xBF) goto yy240;
3893 goto yy231;
3894 yy243:
3895 yych = *++p;
3896 if (yych <= 0x7F) goto yy231;
3897 if (yych <= 0x9F) goto yy240;
3898 goto yy231;
3899 yy244:
3900 yych = *++p;
3901 if (yych <= 0x8F) goto yy231;
3902 if (yych <= 0xBF) goto yy242;
3903 goto yy231;
3904 yy245:
3905 yych = *++p;
3906 if (yych <= 0x7F) goto yy231;
3907 if (yych <= 0xBF) goto yy242;
3908 goto yy231;
3909 yy246:
3910 yych = *++p;
3911 if (yych <= 0x7F) goto yy231;
3912 if (yych <= 0x8F) goto yy242;
3913 goto yy231;
3914 yy247:
3915 yych = *++p;
3916 if (yybm[0+yych] & 1) {
3917 goto yy247;
3918 }
3919 if (yych <= '>') {
3920 if (yych <= '9') {
3921 if (yych == '/') goto yy251;
3922 goto yy231;
3923 } else {
3924 if (yych <= ':') goto yy260;
3925 if (yych <= '=') goto yy231;
3926 goto yy252;
3927 }
3928 } else {
3929 if (yych <= '^') {
3930 if (yych <= '@') goto yy231;
3931 if (yych <= 'Z') goto yy260;
3932 goto yy231;
3933 } else {
3934 if (yych == '`') goto yy231;
3935 if (yych <= 'z') goto yy260;
3936 goto yy231;
3937 }
3938 }
3939 yy249:
3940 yych = *++p;
3941 yy250:
3942 if (yybm[0+yych] & 1) {
3943 goto yy247;
3944 }
3945 if (yych <= '=') {
3946 if (yych <= '.') {
3947 if (yych == '-') goto yy249;
3948 goto yy231;
3949 } else {
3950 if (yych <= '/') goto yy251;
3951 if (yych <= '9') goto yy249;
3952 goto yy231;
3953 }
3954 } else {
3955 if (yych <= 'Z') {
3956 if (yych <= '>') goto yy252;
3957 if (yych <= '@') goto yy231;
3958 goto yy249;
3959 } else {
3960 if (yych <= '`') goto yy231;
3961 if (yych <= 'z') goto yy249;
3962 goto yy231;
3963 }
3964 }
3965 yy251:
3966 yych = *++p;
3967 if (yych != '>') goto yy231;
3968 yy252:
3969 ++p;
3970 { return (bufsize_t)(p - start); }
3971 yy254:
3972 yych = *++p;
3973 if (yych == '-') goto yy264;
3974 if (yych == '>') goto yy231;
3975 goto yy263;
3976 yy255:
3977 yych = *++p;
3978 if (yybm[0+yych] & 2) {
3979 goto yy255;
3980 }
3981 if (yych <= 0xEC) {
3982 if (yych <= 0xC1) {
3983 if (yych <= 0x00) goto yy231;
3984 if (yych <= '>') goto yy252;
3985 goto yy231;
3986 } else {
3987 if (yych <= 0xDF) goto yy272;
3988 if (yych <= 0xE0) goto yy273;
3989 goto yy274;
3990 }
3991 } else {
3992 if (yych <= 0xF0) {
3993 if (yych <= 0xED) goto yy275;
3994 if (yych <= 0xEF) goto yy274;
3995 goto yy276;
3996 } else {
3997 if (yych <= 0xF3) goto yy277;
3998 if (yych <= 0xF4) goto yy278;
3999 goto yy231;
4000 }
4001 }
4002 yy257:
4003 yych = *++p;
4004 if (yych == 'D') goto yy279;
4005 if (yych == 'd') goto yy279;
4006 goto yy231;
4007 yy258:
4008 yych = *++p;
4009 if (yych <= 0x1F) {
4010 if (yych <= 0x08) goto yy231;
4011 if (yych <= '\r') goto yy258;
4012 goto yy231;
4013 } else {
4014 if (yych <= ' ') goto yy258;
4015 if (yych == '>') goto yy252;
4016 goto yy231;
4017 }
4018 yy260:
4019 yych = *++p;
4020 if (yybm[0+yych] & 4) {
4021 goto yy260;
4022 }
4023 if (yych <= ',') {
4024 if (yych <= '\r') {
4025 if (yych <= 0x08) goto yy231;
4026 goto yy280;
4027 } else {
4028 if (yych == ' ') goto yy280;
4029 goto yy231;
4030 }
4031 } else {
4032 if (yych <= '<') {
4033 if (yych <= '/') goto yy251;
4034 goto yy231;
4035 } else {
4036 if (yych <= '=') goto yy282;
4037 if (yych <= '>') goto yy252;
4038 goto yy231;
4039 }
4040 }
4041 yy262:
4042 yych = *++p;
4043 yy263:
4044 if (yybm[0+yych] & 8) {
4045 goto yy262;
4046 }
4047 if (yych <= 0xEC) {
4048 if (yych <= 0xC1) {
4049 if (yych <= 0x00) goto yy231;
4050 if (yych <= '-') goto yy284;
4051 goto yy231;
4052 } else {
4053 if (yych <= 0xDF) goto yy265;
4054 if (yych <= 0xE0) goto yy266;
4055 goto yy267;
4056 }
4057 } else {
4058 if (yych <= 0xF0) {
4059 if (yych <= 0xED) goto yy268;
4060 if (yych <= 0xEF) goto yy267;
4061 goto yy269;
4062 } else {
4063 if (yych <= 0xF3) goto yy270;
4064 if (yych <= 0xF4) goto yy271;
4065 goto yy231;
4066 }
4067 }
4068 yy264:
4069 yych = *++p;
4070 if (yych == '-') goto yy251;
4071 if (yych == '>') goto yy231;
4072 goto yy263;
4073 yy265:
4074 yych = *++p;
4075 if (yych <= 0x7F) goto yy231;
4076 if (yych <= 0xBF) goto yy262;
4077 goto yy231;
4078 yy266:
4079 yych = *++p;
4080 if (yych <= 0x9F) goto yy231;
4081 if (yych <= 0xBF) goto yy265;
4082 goto yy231;
4083 yy267:
4084 yych = *++p;
4085 if (yych <= 0x7F) goto yy231;
4086 if (yych <= 0xBF) goto yy265;
4087 goto yy231;
4088 yy268:
4089 yych = *++p;
4090 if (yych <= 0x7F) goto yy231;
4091 if (yych <= 0x9F) goto yy265;
4092 goto yy231;
4093 yy269:
4094 yych = *++p;
4095 if (yych <= 0x8F) goto yy231;
4096 if (yych <= 0xBF) goto yy267;
4097 goto yy231;
4098 yy270:
4099 yych = *++p;
4100 if (yych <= 0x7F) goto yy231;
4101 if (yych <= 0xBF) goto yy267;
4102 goto yy231;
4103 yy271:
4104 yych = *++p;
4105 if (yych <= 0x7F) goto yy231;
4106 if (yych <= 0x8F) goto yy267;
4107 goto yy231;
4108 yy272:
4109 yych = *++p;
4110 if (yych <= 0x7F) goto yy231;
4111 if (yych <= 0xBF) goto yy255;
4112 goto yy231;
4113 yy273:
4114 yych = *++p;
4115 if (yych <= 0x9F) goto yy231;
4116 if (yych <= 0xBF) goto yy272;
4117 goto yy231;
4118 yy274:
4119 yych = *++p;
4120 if (yych <= 0x7F) goto yy231;
4121 if (yych <= 0xBF) goto yy272;
4122 goto yy231;
4123 yy275:
4124 yych = *++p;
4125 if (yych <= 0x7F) goto yy231;
4126 if (yych <= 0x9F) goto yy272;
4127 goto yy231;
4128 yy276:
4129 yych = *++p;
4130 if (yych <= 0x8F) goto yy231;
4131 if (yych <= 0xBF) goto yy274;
4132 goto yy231;
4133 yy277:
4134 yych = *++p;
4135 if (yych <= 0x7F) goto yy231;
4136 if (yych <= 0xBF) goto yy274;
4137 goto yy231;
4138 yy278:
4139 yych = *++p;
4140 if (yych <= 0x7F) goto yy231;
4141 if (yych <= 0x8F) goto yy274;
4142 goto yy231;
4143 yy279:
4144 yych = *++p;
4145 if (yych == 'A') goto yy285;
4146 if (yych == 'a') goto yy285;
4147 goto yy231;
4148 yy280:
4149 yych = *++p;
4150 if (yych <= '<') {
4151 if (yych <= ' ') {
4152 if (yych <= 0x08) goto yy231;
4153 if (yych <= '\r') goto yy280;
4154 if (yych <= 0x1F) goto yy231;
4155 goto yy280;
4156 } else {
4157 if (yych <= '/') {
4158 if (yych <= '.') goto yy231;
4159 goto yy251;
4160 } else {
4161 if (yych == ':') goto yy260;
4162 goto yy231;
4163 }
4164 }
4165 } else {
4166 if (yych <= 'Z') {
4167 if (yych <= '=') goto yy282;
4168 if (yych <= '>') goto yy252;
4169 if (yych <= '@') goto yy231;
4170 goto yy260;
4171 } else {
4172 if (yych <= '_') {
4173 if (yych <= '^') goto yy231;
4174 goto yy260;
4175 } else {
4176 if (yych <= '`') goto yy231;
4177 if (yych <= 'z') goto yy260;
4178 goto yy231;
4179 }
4180 }
4181 }
4182 yy282:
4183 yych = *++p;
4184 if (yybm[0+yych] & 16) {
4185 goto yy286;
4186 }
4187 if (yych <= 0xE0) {
4188 if (yych <= '"') {
4189 if (yych <= 0x00) goto yy231;
4190 if (yych <= ' ') goto yy282;
4191 goto yy288;
4192 } else {
4193 if (yych <= '\'') goto yy290;
4194 if (yych <= 0xC1) goto yy231;
4195 if (yych <= 0xDF) goto yy292;
4196 goto yy293;
4197 }
4198 } else {
4199 if (yych <= 0xEF) {
4200 if (yych == 0xED) goto yy295;
4201 goto yy294;
4202 } else {
4203 if (yych <= 0xF0) goto yy296;
4204 if (yych <= 0xF3) goto yy297;
4205 if (yych <= 0xF4) goto yy298;
4206 goto yy231;
4207 }
4208 }
4209 yy284:
4210 yych = *++p;
4211 if (yybm[0+yych] & 8) {
4212 goto yy262;
4213 }
4214 if (yych <= 0xEC) {
4215 if (yych <= 0xC1) {
4216 if (yych <= 0x00) goto yy231;
4217 if (yych <= '-') goto yy251;
4218 goto yy231;
4219 } else {
4220 if (yych <= 0xDF) goto yy265;
4221 if (yych <= 0xE0) goto yy266;
4222 goto yy267;
4223 }
4224 } else {
4225 if (yych <= 0xF0) {
4226 if (yych <= 0xED) goto yy268;
4227 if (yych <= 0xEF) goto yy267;
4228 goto yy269;
4229 } else {
4230 if (yych <= 0xF3) goto yy270;
4231 if (yych <= 0xF4) goto yy271;
4232 goto yy231;
4233 }
4234 }
4235 yy285:
4236 yych = *++p;
4237 if (yych == 'T') goto yy299;
4238 if (yych == 't') goto yy299;
4239 goto yy231;
4240 yy286:
4241 yych = *++p;
4242 if (yybm[0+yych] & 16) {
4243 goto yy286;
4244 }
4245 if (yych <= 0xE0) {
4246 if (yych <= '=') {
4247 if (yych <= 0x00) goto yy231;
4248 if (yych <= ' ') goto yy247;
4249 goto yy231;
4250 } else {
4251 if (yych <= '>') goto yy252;
4252 if (yych <= 0xC1) goto yy231;
4253 if (yych <= 0xDF) goto yy292;
4254 goto yy293;
4255 }
4256 } else {
4257 if (yych <= 0xEF) {
4258 if (yych == 0xED) goto yy295;
4259 goto yy294;
4260 } else {
4261 if (yych <= 0xF0) goto yy296;
4262 if (yych <= 0xF3) goto yy297;
4263 if (yych <= 0xF4) goto yy298;
4264 goto yy231;
4265 }
4266 }
4267 yy288:
4268 yych = *++p;
4269 if (yybm[0+yych] & 32) {
4270 goto yy288;
4271 }
4272 if (yych <= 0xEC) {
4273 if (yych <= 0xC1) {
4274 if (yych <= 0x00) goto yy231;
4275 if (yych <= '"') goto yy300;
4276 goto yy231;
4277 } else {
4278 if (yych <= 0xDF) goto yy301;
4279 if (yych <= 0xE0) goto yy302;
4280 goto yy303;
4281 }
4282 } else {
4283 if (yych <= 0xF0) {
4284 if (yych <= 0xED) goto yy304;
4285 if (yych <= 0xEF) goto yy303;
4286 goto yy305;
4287 } else {
4288 if (yych <= 0xF3) goto yy306;
4289 if (yych <= 0xF4) goto yy307;
4290 goto yy231;
4291 }
4292 }
4293 yy290:
4294 yych = *++p;
4295 if (yybm[0+yych] & 64) {
4296 goto yy290;
4297 }
4298 if (yych <= 0xEC) {
4299 if (yych <= 0xC1) {
4300 if (yych <= 0x00) goto yy231;
4301 if (yych <= '\'') goto yy300;
4302 goto yy231;
4303 } else {
4304 if (yych <= 0xDF) goto yy308;
4305 if (yych <= 0xE0) goto yy309;
4306 goto yy310;
4307 }
4308 } else {
4309 if (yych <= 0xF0) {
4310 if (yych <= 0xED) goto yy311;
4311 if (yych <= 0xEF) goto yy310;
4312 goto yy312;
4313 } else {
4314 if (yych <= 0xF3) goto yy313;
4315 if (yych <= 0xF4) goto yy314;
4316 goto yy231;
4317 }
4318 }
4319 yy292:
4320 yych = *++p;
4321 if (yych <= 0x7F) goto yy231;
4322 if (yych <= 0xBF) goto yy286;
4323 goto yy231;
4324 yy293:
4325 yych = *++p;
4326 if (yych <= 0x9F) goto yy231;
4327 if (yych <= 0xBF) goto yy292;
4328 goto yy231;
4329 yy294:
4330 yych = *++p;
4331 if (yych <= 0x7F) goto yy231;
4332 if (yych <= 0xBF) goto yy292;
4333 goto yy231;
4334 yy295:
4335 yych = *++p;
4336 if (yych <= 0x7F) goto yy231;
4337 if (yych <= 0x9F) goto yy292;
4338 goto yy231;
4339 yy296:
4340 yych = *++p;
4341 if (yych <= 0x8F) goto yy231;
4342 if (yych <= 0xBF) goto yy294;
4343 goto yy231;
4344 yy297:
4345 yych = *++p;
4346 if (yych <= 0x7F) goto yy231;
4347 if (yych <= 0xBF) goto yy294;
4348 goto yy231;
4349 yy298:
4350 yych = *++p;
4351 if (yych <= 0x7F) goto yy231;
4352 if (yych <= 0x8F) goto yy294;
4353 goto yy231;
4354 yy299:
4355 yych = *++p;
4356 if (yych == 'A') goto yy315;
4357 if (yych == 'a') goto yy315;
4358 goto yy231;
4359 yy300:
4360 yych = *++p;
4361 if (yybm[0+yych] & 1) {
4362 goto yy247;
4363 }
4364 if (yych == '/') goto yy251;
4365 if (yych == '>') goto yy252;
4366 goto yy231;
4367 yy301:
4368 yych = *++p;
4369 if (yych <= 0x7F) goto yy231;
4370 if (yych <= 0xBF) goto yy288;
4371 goto yy231;
4372 yy302:
4373 yych = *++p;
4374 if (yych <= 0x9F) goto yy231;
4375 if (yych <= 0xBF) goto yy301;
4376 goto yy231;
4377 yy303:
4378 yych = *++p;
4379 if (yych <= 0x7F) goto yy231;
4380 if (yych <= 0xBF) goto yy301;
4381 goto yy231;
4382 yy304:
4383 yych = *++p;
4384 if (yych <= 0x7F) goto yy231;
4385 if (yych <= 0x9F) goto yy301;
4386 goto yy231;
4387 yy305:
4388 yych = *++p;
4389 if (yych <= 0x8F) goto yy231;
4390 if (yych <= 0xBF) goto yy303;
4391 goto yy231;
4392 yy306:
4393 yych = *++p;
4394 if (yych <= 0x7F) goto yy231;
4395 if (yych <= 0xBF) goto yy303;
4396 goto yy231;
4397 yy307:
4398 yych = *++p;
4399 if (yych <= 0x7F) goto yy231;
4400 if (yych <= 0x8F) goto yy303;
4401 goto yy231;
4402 yy308:
4403 yych = *++p;
4404 if (yych <= 0x7F) goto yy231;
4405 if (yych <= 0xBF) goto yy290;
4406 goto yy231;
4407 yy309:
4408 yych = *++p;
4409 if (yych <= 0x9F) goto yy231;
4410 if (yych <= 0xBF) goto yy308;
4411 goto yy231;
4412 yy310:
4413 yych = *++p;
4414 if (yych <= 0x7F) goto yy231;
4415 if (yych <= 0xBF) goto yy308;
4416 goto yy231;
4417 yy311:
4418 yych = *++p;
4419 if (yych <= 0x7F) goto yy231;
4420 if (yych <= 0x9F) goto yy308;
4421 goto yy231;
4422 yy312:
4423 yych = *++p;
4424 if (yych <= 0x8F) goto yy231;
4425 if (yych <= 0xBF) goto yy310;
4426 goto yy231;
4427 yy313:
4428 yych = *++p;
4429 if (yych <= 0x7F) goto yy231;
4430 if (yych <= 0xBF) goto yy310;
4431 goto yy231;
4432 yy314:
4433 yych = *++p;
4434 if (yych <= 0x7F) goto yy231;
4435 if (yych <= 0x8F) goto yy310;
4436 goto yy231;
4437 yy315:
4438 yych = *++p;
4439 if (yych != '[') goto yy231;
4440 yy316:
4441 yych = *++p;
4442 if (yybm[0+yych] & 128) {
4443 goto yy316;
4444 }
4445 if (yych <= 0xEC) {
4446 if (yych <= 0xC1) {
4447 if (yych <= 0x00) goto yy231;
4448 if (yych >= '^') goto yy231;
4449 } else {
4450 if (yych <= 0xDF) goto yy319;
4451 if (yych <= 0xE0) goto yy320;
4452 goto yy321;
4453 }
4454 } else {
4455 if (yych <= 0xF0) {
4456 if (yych <= 0xED) goto yy322;
4457 if (yych <= 0xEF) goto yy321;
4458 goto yy323;
4459 } else {
4460 if (yych <= 0xF3) goto yy324;
4461 if (yych <= 0xF4) goto yy325;
4462 goto yy231;
4463 }
4464 }
4465 yych = *++p;
4466 if (yybm[0+yych] & 128) {
4467 goto yy316;
4468 }
4469 if (yych <= 0xEC) {
4470 if (yych <= 0xC1) {
4471 if (yych <= 0x00) goto yy231;
4472 if (yych <= ']') goto yy326;
4473 goto yy231;
4474 } else {
4475 if (yych <= 0xDF) goto yy319;
4476 if (yych <= 0xE0) goto yy320;
4477 goto yy321;
4478 }
4479 } else {
4480 if (yych <= 0xF0) {
4481 if (yych <= 0xED) goto yy322;
4482 if (yych <= 0xEF) goto yy321;
4483 goto yy323;
4484 } else {
4485 if (yych <= 0xF3) goto yy324;
4486 if (yych <= 0xF4) goto yy325;
4487 goto yy231;
4488 }
4489 }
4490 yy319:
4491 yych = *++p;
4492 if (yych <= 0x7F) goto yy231;
4493 if (yych <= 0xBF) goto yy316;
4494 goto yy231;
4495 yy320:
4496 yych = *++p;
4497 if (yych <= 0x9F) goto yy231;
4498 if (yych <= 0xBF) goto yy319;
4499 goto yy231;
4500 yy321:
4501 yych = *++p;
4502 if (yych <= 0x7F) goto yy231;
4503 if (yych <= 0xBF) goto yy319;
4504 goto yy231;
4505 yy322:
4506 yych = *++p;
4507 if (yych <= 0x7F) goto yy231;
4508 if (yych <= 0x9F) goto yy319;
4509 goto yy231;
4510 yy323:
4511 yych = *++p;
4512 if (yych <= 0x8F) goto yy231;
4513 if (yych <= 0xBF) goto yy321;
4514 goto yy231;
4515 yy324:
4516 yych = *++p;
4517 if (yych <= 0x7F) goto yy231;
4518 if (yych <= 0xBF) goto yy321;
4519 goto yy231;
4520 yy325:
4521 yych = *++p;
4522 if (yych <= 0x7F) goto yy231;
4523 if (yych <= 0x8F) goto yy321;
4524 goto yy231;
4525 yy326:
4526 yych = *++p;
4527 if (yych <= 0xE0) {
4528 if (yych <= '>') {
4529 if (yych <= 0x00) goto yy231;
4530 if (yych <= '=') goto yy316;
4531 goto yy252;
4532 } else {
4533 if (yych <= 0x7F) goto yy316;
4534 if (yych <= 0xC1) goto yy231;
4535 if (yych <= 0xDF) goto yy319;
4536 goto yy320;
4537 }
4538 } else {
4539 if (yych <= 0xEF) {
4540 if (yych == 0xED) goto yy322;
4541 goto yy321;
4542 } else {
4543 if (yych <= 0xF0) goto yy323;
4544 if (yych <= 0xF3) goto yy324;
4545 if (yych <= 0xF4) goto yy325;
4546 goto yy231;
4547 }
4548 }
4549 }
4550
4551 }
4552
4553 // Try to (liberally) match an HTML tag after first <, returning num of chars matched.
_scan_liberal_html_tag(const unsigned char * p)4554 bufsize_t _scan_liberal_html_tag(const unsigned char *p)
4555 {
4556 const unsigned char *marker = NULL;
4557 const unsigned char *start = p;
4558
4559 {
4560 unsigned char yych;
4561 unsigned int yyaccept = 0;
4562 static const unsigned char yybm[] = {
4563 0, 64, 64, 64, 64, 64, 64, 64,
4564 64, 64, 0, 64, 64, 64, 64, 64,
4565 64, 64, 64, 64, 64, 64, 64, 64,
4566 64, 64, 64, 64, 64, 64, 64, 64,
4567 64, 64, 64, 64, 64, 64, 64, 64,
4568 64, 64, 64, 64, 64, 64, 64, 64,
4569 64, 64, 64, 64, 64, 64, 64, 64,
4570 64, 64, 64, 64, 64, 64, 128, 64,
4571 64, 64, 64, 64, 64, 64, 64, 64,
4572 64, 64, 64, 64, 64, 64, 64, 64,
4573 64, 64, 64, 64, 64, 64, 64, 64,
4574 64, 64, 64, 64, 64, 64, 64, 64,
4575 64, 64, 64, 64, 64, 64, 64, 64,
4576 64, 64, 64, 64, 64, 64, 64, 64,
4577 64, 64, 64, 64, 64, 64, 64, 64,
4578 64, 64, 64, 64, 64, 64, 64, 64,
4579 0, 0, 0, 0, 0, 0, 0, 0,
4580 0, 0, 0, 0, 0, 0, 0, 0,
4581 0, 0, 0, 0, 0, 0, 0, 0,
4582 0, 0, 0, 0, 0, 0, 0, 0,
4583 0, 0, 0, 0, 0, 0, 0, 0,
4584 0, 0, 0, 0, 0, 0, 0, 0,
4585 0, 0, 0, 0, 0, 0, 0, 0,
4586 0, 0, 0, 0, 0, 0, 0, 0,
4587 0, 0, 0, 0, 0, 0, 0, 0,
4588 0, 0, 0, 0, 0, 0, 0, 0,
4589 0, 0, 0, 0, 0, 0, 0, 0,
4590 0, 0, 0, 0, 0, 0, 0, 0,
4591 0, 0, 0, 0, 0, 0, 0, 0,
4592 0, 0, 0, 0, 0, 0, 0, 0,
4593 0, 0, 0, 0, 0, 0, 0, 0,
4594 0, 0, 0, 0, 0, 0, 0, 0,
4595 };
4596 yych = *p;
4597 if (yych <= 0xE0) {
4598 if (yych <= '\n') {
4599 if (yych <= 0x00) goto yy329;
4600 if (yych <= '\t') goto yy331;
4601 } else {
4602 if (yych <= 0x7F) goto yy331;
4603 if (yych <= 0xC1) goto yy329;
4604 if (yych <= 0xDF) goto yy332;
4605 goto yy333;
4606 }
4607 } else {
4608 if (yych <= 0xEF) {
4609 if (yych == 0xED) goto yy335;
4610 goto yy334;
4611 } else {
4612 if (yych <= 0xF0) goto yy336;
4613 if (yych <= 0xF3) goto yy337;
4614 if (yych <= 0xF4) goto yy338;
4615 }
4616 }
4617 yy329:
4618 ++p;
4619 yy330:
4620 { return 0; }
4621 yy331:
4622 yyaccept = 0;
4623 yych = *(marker = ++p);
4624 if (yych <= '\n') {
4625 if (yych <= 0x00) goto yy330;
4626 if (yych <= '\t') goto yy340;
4627 goto yy330;
4628 } else {
4629 if (yych <= 0x7F) goto yy340;
4630 if (yych <= 0xC1) goto yy330;
4631 if (yych <= 0xF4) goto yy340;
4632 goto yy330;
4633 }
4634 yy332:
4635 yyaccept = 0;
4636 yych = *(marker = ++p);
4637 if (yych <= 0x7F) goto yy330;
4638 if (yych <= 0xBF) goto yy339;
4639 goto yy330;
4640 yy333:
4641 yyaccept = 0;
4642 yych = *(marker = ++p);
4643 if (yych <= 0x9F) goto yy330;
4644 if (yych <= 0xBF) goto yy345;
4645 goto yy330;
4646 yy334:
4647 yyaccept = 0;
4648 yych = *(marker = ++p);
4649 if (yych <= 0x7F) goto yy330;
4650 if (yych <= 0xBF) goto yy345;
4651 goto yy330;
4652 yy335:
4653 yyaccept = 0;
4654 yych = *(marker = ++p);
4655 if (yych <= 0x7F) goto yy330;
4656 if (yych <= 0x9F) goto yy345;
4657 goto yy330;
4658 yy336:
4659 yyaccept = 0;
4660 yych = *(marker = ++p);
4661 if (yych <= 0x8F) goto yy330;
4662 if (yych <= 0xBF) goto yy347;
4663 goto yy330;
4664 yy337:
4665 yyaccept = 0;
4666 yych = *(marker = ++p);
4667 if (yych <= 0x7F) goto yy330;
4668 if (yych <= 0xBF) goto yy347;
4669 goto yy330;
4670 yy338:
4671 yyaccept = 0;
4672 yych = *(marker = ++p);
4673 if (yych <= 0x7F) goto yy330;
4674 if (yych <= 0x8F) goto yy347;
4675 goto yy330;
4676 yy339:
4677 yych = *++p;
4678 yy340:
4679 if (yybm[0+yych] & 64) {
4680 goto yy339;
4681 }
4682 if (yych <= 0xEC) {
4683 if (yych <= 0xC1) {
4684 if (yych <= '\n') goto yy341;
4685 if (yych <= '>') goto yy342;
4686 } else {
4687 if (yych <= 0xDF) goto yy345;
4688 if (yych <= 0xE0) goto yy346;
4689 goto yy347;
4690 }
4691 } else {
4692 if (yych <= 0xF0) {
4693 if (yych <= 0xED) goto yy348;
4694 if (yych <= 0xEF) goto yy347;
4695 goto yy349;
4696 } else {
4697 if (yych <= 0xF3) goto yy350;
4698 if (yych <= 0xF4) goto yy351;
4699 }
4700 }
4701 yy341:
4702 p = marker;
4703 if (yyaccept == 0) {
4704 goto yy330;
4705 } else {
4706 goto yy344;
4707 }
4708 yy342:
4709 yyaccept = 1;
4710 yych = *(marker = ++p);
4711 if (yybm[0+yych] & 64) {
4712 goto yy339;
4713 }
4714 if (yych <= 0xEC) {
4715 if (yych <= 0xC1) {
4716 if (yych <= '\n') goto yy344;
4717 if (yych <= '>') goto yy342;
4718 } else {
4719 if (yych <= 0xDF) goto yy345;
4720 if (yych <= 0xE0) goto yy346;
4721 goto yy347;
4722 }
4723 } else {
4724 if (yych <= 0xF0) {
4725 if (yych <= 0xED) goto yy348;
4726 if (yych <= 0xEF) goto yy347;
4727 goto yy349;
4728 } else {
4729 if (yych <= 0xF3) goto yy350;
4730 if (yych <= 0xF4) goto yy351;
4731 }
4732 }
4733 yy344:
4734 { return (bufsize_t)(p - start); }
4735 yy345:
4736 yych = *++p;
4737 if (yych <= 0x7F) goto yy341;
4738 if (yych <= 0xBF) goto yy339;
4739 goto yy341;
4740 yy346:
4741 yych = *++p;
4742 if (yych <= 0x9F) goto yy341;
4743 if (yych <= 0xBF) goto yy345;
4744 goto yy341;
4745 yy347:
4746 yych = *++p;
4747 if (yych <= 0x7F) goto yy341;
4748 if (yych <= 0xBF) goto yy345;
4749 goto yy341;
4750 yy348:
4751 yych = *++p;
4752 if (yych <= 0x7F) goto yy341;
4753 if (yych <= 0x9F) goto yy345;
4754 goto yy341;
4755 yy349:
4756 yych = *++p;
4757 if (yych <= 0x8F) goto yy341;
4758 if (yych <= 0xBF) goto yy347;
4759 goto yy341;
4760 yy350:
4761 yych = *++p;
4762 if (yych <= 0x7F) goto yy341;
4763 if (yych <= 0xBF) goto yy347;
4764 goto yy341;
4765 yy351:
4766 yych = *++p;
4767 if (yych <= 0x7F) goto yy341;
4768 if (yych <= 0x8F) goto yy347;
4769 goto yy341;
4770 }
4771
4772 }
4773
4774 // Try to match an HTML block tag start line, returning
4775 // an integer code for the type of block (1-6, matching the spec).
4776 // #7 is handled by a separate function, below.
_scan_html_block_start(const unsigned char * p)4777 bufsize_t _scan_html_block_start(const unsigned char *p)
4778 {
4779 const unsigned char *marker = NULL;
4780
4781 {
4782 unsigned char yych;
4783 yych = *p;
4784 if (yych == '<') goto yy356;
4785 ++p;
4786 yy355:
4787 { return 0; }
4788 yy356:
4789 yych = *(marker = ++p);
4790 switch (yych) {
4791 case '!': goto yy357;
4792 case '/': goto yy359;
4793 case '?': goto yy360;
4794 case 'A':
4795 case 'a': goto yy362;
4796 case 'B':
4797 case 'b': goto yy363;
4798 case 'C':
4799 case 'c': goto yy364;
4800 case 'D':
4801 case 'd': goto yy365;
4802 case 'F':
4803 case 'f': goto yy366;
4804 case 'H':
4805 case 'h': goto yy367;
4806 case 'I':
4807 case 'i': goto yy368;
4808 case 'L':
4809 case 'l': goto yy369;
4810 case 'M':
4811 case 'm': goto yy370;
4812 case 'N':
4813 case 'n': goto yy371;
4814 case 'O':
4815 case 'o': goto yy372;
4816 case 'P':
4817 case 'p': goto yy373;
4818 case 'S':
4819 case 's': goto yy374;
4820 case 'T':
4821 case 't': goto yy375;
4822 case 'U':
4823 case 'u': goto yy376;
4824 default: goto yy355;
4825 }
4826 yy357:
4827 yych = *++p;
4828 if (yych <= '@') {
4829 if (yych == '-') goto yy377;
4830 } else {
4831 if (yych <= 'Z') goto yy378;
4832 if (yych <= '[') goto yy380;
4833 }
4834 yy358:
4835 p = marker;
4836 goto yy355;
4837 yy359:
4838 yych = *++p;
4839 switch (yych) {
4840 case 'A':
4841 case 'a': goto yy362;
4842 case 'B':
4843 case 'b': goto yy363;
4844 case 'C':
4845 case 'c': goto yy364;
4846 case 'D':
4847 case 'd': goto yy365;
4848 case 'F':
4849 case 'f': goto yy366;
4850 case 'H':
4851 case 'h': goto yy367;
4852 case 'I':
4853 case 'i': goto yy368;
4854 case 'L':
4855 case 'l': goto yy369;
4856 case 'M':
4857 case 'm': goto yy370;
4858 case 'N':
4859 case 'n': goto yy371;
4860 case 'O':
4861 case 'o': goto yy372;
4862 case 'P':
4863 case 'p': goto yy381;
4864 case 'S':
4865 case 's': goto yy382;
4866 case 'T':
4867 case 't': goto yy375;
4868 case 'U':
4869 case 'u': goto yy376;
4870 default: goto yy358;
4871 }
4872 yy360:
4873 ++p;
4874 { return 3; }
4875 yy362:
4876 yych = *++p;
4877 if (yych <= 'S') {
4878 if (yych <= 'D') {
4879 if (yych <= 'C') goto yy358;
4880 goto yy383;
4881 } else {
4882 if (yych <= 'Q') goto yy358;
4883 if (yych <= 'R') goto yy384;
4884 goto yy385;
4885 }
4886 } else {
4887 if (yych <= 'q') {
4888 if (yych == 'd') goto yy383;
4889 goto yy358;
4890 } else {
4891 if (yych <= 'r') goto yy384;
4892 if (yych <= 's') goto yy385;
4893 goto yy358;
4894 }
4895 }
4896 yy363:
4897 yych = *++p;
4898 if (yych <= 'O') {
4899 if (yych <= 'K') {
4900 if (yych == 'A') goto yy386;
4901 goto yy358;
4902 } else {
4903 if (yych <= 'L') goto yy387;
4904 if (yych <= 'N') goto yy358;
4905 goto yy388;
4906 }
4907 } else {
4908 if (yych <= 'k') {
4909 if (yych == 'a') goto yy386;
4910 goto yy358;
4911 } else {
4912 if (yych <= 'l') goto yy387;
4913 if (yych == 'o') goto yy388;
4914 goto yy358;
4915 }
4916 }
4917 yy364:
4918 yych = *++p;
4919 if (yych <= 'O') {
4920 if (yych <= 'D') {
4921 if (yych == 'A') goto yy389;
4922 goto yy358;
4923 } else {
4924 if (yych <= 'E') goto yy390;
4925 if (yych <= 'N') goto yy358;
4926 goto yy391;
4927 }
4928 } else {
4929 if (yych <= 'd') {
4930 if (yych == 'a') goto yy389;
4931 goto yy358;
4932 } else {
4933 if (yych <= 'e') goto yy390;
4934 if (yych == 'o') goto yy391;
4935 goto yy358;
4936 }
4937 }
4938 yy365:
4939 yych = *++p;
4940 switch (yych) {
4941 case 'D':
4942 case 'L':
4943 case 'T':
4944 case 'd':
4945 case 'l':
4946 case 't': goto yy392;
4947 case 'E':
4948 case 'e': goto yy393;
4949 case 'I':
4950 case 'i': goto yy394;
4951 default: goto yy358;
4952 }
4953 yy366:
4954 yych = *++p;
4955 if (yych <= 'R') {
4956 if (yych <= 'N') {
4957 if (yych == 'I') goto yy395;
4958 goto yy358;
4959 } else {
4960 if (yych <= 'O') goto yy396;
4961 if (yych <= 'Q') goto yy358;
4962 goto yy397;
4963 }
4964 } else {
4965 if (yych <= 'n') {
4966 if (yych == 'i') goto yy395;
4967 goto yy358;
4968 } else {
4969 if (yych <= 'o') goto yy396;
4970 if (yych == 'r') goto yy397;
4971 goto yy358;
4972 }
4973 }
4974 yy367:
4975 yych = *++p;
4976 if (yych <= 'S') {
4977 if (yych <= 'D') {
4978 if (yych <= '0') goto yy358;
4979 if (yych <= '6') goto yy392;
4980 goto yy358;
4981 } else {
4982 if (yych <= 'E') goto yy398;
4983 if (yych == 'R') goto yy392;
4984 goto yy358;
4985 }
4986 } else {
4987 if (yych <= 'q') {
4988 if (yych <= 'T') goto yy399;
4989 if (yych == 'e') goto yy398;
4990 goto yy358;
4991 } else {
4992 if (yych <= 'r') goto yy392;
4993 if (yych == 't') goto yy399;
4994 goto yy358;
4995 }
4996 }
4997 yy368:
4998 yych = *++p;
4999 if (yych == 'F') goto yy400;
5000 if (yych == 'f') goto yy400;
5001 goto yy358;
5002 yy369:
5003 yych = *++p;
5004 if (yych <= 'I') {
5005 if (yych == 'E') goto yy401;
5006 if (yych <= 'H') goto yy358;
5007 goto yy402;
5008 } else {
5009 if (yych <= 'e') {
5010 if (yych <= 'd') goto yy358;
5011 goto yy401;
5012 } else {
5013 if (yych == 'i') goto yy402;
5014 goto yy358;
5015 }
5016 }
5017 yy370:
5018 yych = *++p;
5019 if (yych <= 'E') {
5020 if (yych == 'A') goto yy403;
5021 if (yych <= 'D') goto yy358;
5022 goto yy404;
5023 } else {
5024 if (yych <= 'a') {
5025 if (yych <= '`') goto yy358;
5026 goto yy403;
5027 } else {
5028 if (yych == 'e') goto yy404;
5029 goto yy358;
5030 }
5031 }
5032 yy371:
5033 yych = *++p;
5034 if (yych <= 'O') {
5035 if (yych == 'A') goto yy405;
5036 if (yych <= 'N') goto yy358;
5037 goto yy406;
5038 } else {
5039 if (yych <= 'a') {
5040 if (yych <= '`') goto yy358;
5041 goto yy405;
5042 } else {
5043 if (yych == 'o') goto yy406;
5044 goto yy358;
5045 }
5046 }
5047 yy372:
5048 yych = *++p;
5049 if (yych <= 'P') {
5050 if (yych == 'L') goto yy392;
5051 if (yych <= 'O') goto yy358;
5052 goto yy407;
5053 } else {
5054 if (yych <= 'l') {
5055 if (yych <= 'k') goto yy358;
5056 goto yy392;
5057 } else {
5058 if (yych == 'p') goto yy407;
5059 goto yy358;
5060 }
5061 }
5062 yy373:
5063 yych = *++p;
5064 if (yych <= '>') {
5065 if (yych <= ' ') {
5066 if (yych <= 0x08) goto yy358;
5067 if (yych <= '\r') goto yy408;
5068 if (yych <= 0x1F) goto yy358;
5069 goto yy408;
5070 } else {
5071 if (yych == '/') goto yy410;
5072 if (yych <= '=') goto yy358;
5073 goto yy408;
5074 }
5075 } else {
5076 if (yych <= 'R') {
5077 if (yych == 'A') goto yy411;
5078 if (yych <= 'Q') goto yy358;
5079 goto yy412;
5080 } else {
5081 if (yych <= 'a') {
5082 if (yych <= '`') goto yy358;
5083 goto yy411;
5084 } else {
5085 if (yych == 'r') goto yy412;
5086 goto yy358;
5087 }
5088 }
5089 }
5090 yy374:
5091 yych = *++p;
5092 switch (yych) {
5093 case 'C':
5094 case 'c': goto yy413;
5095 case 'E':
5096 case 'e': goto yy414;
5097 case 'O':
5098 case 'o': goto yy415;
5099 case 'T':
5100 case 't': goto yy416;
5101 case 'U':
5102 case 'u': goto yy417;
5103 default: goto yy358;
5104 }
5105 yy375:
5106 yych = *++p;
5107 switch (yych) {
5108 case 'A':
5109 case 'a': goto yy418;
5110 case 'B':
5111 case 'b': goto yy419;
5112 case 'D':
5113 case 'd': goto yy392;
5114 case 'F':
5115 case 'f': goto yy420;
5116 case 'H':
5117 case 'h': goto yy421;
5118 case 'I':
5119 case 'i': goto yy422;
5120 case 'R':
5121 case 'r': goto yy423;
5122 default: goto yy358;
5123 }
5124 yy376:
5125 yych = *++p;
5126 if (yych == 'L') goto yy392;
5127 if (yych == 'l') goto yy392;
5128 goto yy358;
5129 yy377:
5130 yych = *++p;
5131 if (yych == '-') goto yy424;
5132 goto yy358;
5133 yy378:
5134 ++p;
5135 { return 4; }
5136 yy380:
5137 yych = *++p;
5138 if (yych == 'C') goto yy426;
5139 if (yych == 'c') goto yy426;
5140 goto yy358;
5141 yy381:
5142 yych = *++p;
5143 if (yych <= '/') {
5144 if (yych <= 0x1F) {
5145 if (yych <= 0x08) goto yy358;
5146 if (yych <= '\r') goto yy408;
5147 goto yy358;
5148 } else {
5149 if (yych <= ' ') goto yy408;
5150 if (yych <= '.') goto yy358;
5151 goto yy410;
5152 }
5153 } else {
5154 if (yych <= '@') {
5155 if (yych == '>') goto yy408;
5156 goto yy358;
5157 } else {
5158 if (yych <= 'A') goto yy411;
5159 if (yych == 'a') goto yy411;
5160 goto yy358;
5161 }
5162 }
5163 yy382:
5164 yych = *++p;
5165 if (yych <= 'U') {
5166 if (yych <= 'N') {
5167 if (yych == 'E') goto yy414;
5168 goto yy358;
5169 } else {
5170 if (yych <= 'O') goto yy415;
5171 if (yych <= 'T') goto yy358;
5172 goto yy417;
5173 }
5174 } else {
5175 if (yych <= 'n') {
5176 if (yych == 'e') goto yy414;
5177 goto yy358;
5178 } else {
5179 if (yych <= 'o') goto yy415;
5180 if (yych == 'u') goto yy417;
5181 goto yy358;
5182 }
5183 }
5184 yy383:
5185 yych = *++p;
5186 if (yych == 'D') goto yy427;
5187 if (yych == 'd') goto yy427;
5188 goto yy358;
5189 yy384:
5190 yych = *++p;
5191 if (yych == 'T') goto yy428;
5192 if (yych == 't') goto yy428;
5193 goto yy358;
5194 yy385:
5195 yych = *++p;
5196 if (yych == 'I') goto yy429;
5197 if (yych == 'i') goto yy429;
5198 goto yy358;
5199 yy386:
5200 yych = *++p;
5201 if (yych == 'S') goto yy430;
5202 if (yych == 's') goto yy430;
5203 goto yy358;
5204 yy387:
5205 yych = *++p;
5206 if (yych == 'O') goto yy431;
5207 if (yych == 'o') goto yy431;
5208 goto yy358;
5209 yy388:
5210 yych = *++p;
5211 if (yych == 'D') goto yy432;
5212 if (yych == 'd') goto yy432;
5213 goto yy358;
5214 yy389:
5215 yych = *++p;
5216 if (yych == 'P') goto yy433;
5217 if (yych == 'p') goto yy433;
5218 goto yy358;
5219 yy390:
5220 yych = *++p;
5221 if (yych == 'N') goto yy434;
5222 if (yych == 'n') goto yy434;
5223 goto yy358;
5224 yy391:
5225 yych = *++p;
5226 if (yych == 'L') goto yy435;
5227 if (yych == 'l') goto yy435;
5228 goto yy358;
5229 yy392:
5230 yych = *++p;
5231 if (yych <= ' ') {
5232 if (yych <= 0x08) goto yy358;
5233 if (yych <= '\r') goto yy408;
5234 if (yych <= 0x1F) goto yy358;
5235 goto yy408;
5236 } else {
5237 if (yych <= '/') {
5238 if (yych <= '.') goto yy358;
5239 goto yy410;
5240 } else {
5241 if (yych == '>') goto yy408;
5242 goto yy358;
5243 }
5244 }
5245 yy393:
5246 yych = *++p;
5247 if (yych == 'T') goto yy436;
5248 if (yych == 't') goto yy436;
5249 goto yy358;
5250 yy394:
5251 yych = *++p;
5252 if (yych <= 'V') {
5253 if (yych <= 'Q') {
5254 if (yych == 'A') goto yy437;
5255 goto yy358;
5256 } else {
5257 if (yych <= 'R') goto yy392;
5258 if (yych <= 'U') goto yy358;
5259 goto yy392;
5260 }
5261 } else {
5262 if (yych <= 'q') {
5263 if (yych == 'a') goto yy437;
5264 goto yy358;
5265 } else {
5266 if (yych <= 'r') goto yy392;
5267 if (yych == 'v') goto yy392;
5268 goto yy358;
5269 }
5270 }
5271 yy395:
5272 yych = *++p;
5273 if (yych <= 'G') {
5274 if (yych == 'E') goto yy438;
5275 if (yych <= 'F') goto yy358;
5276 goto yy439;
5277 } else {
5278 if (yych <= 'e') {
5279 if (yych <= 'd') goto yy358;
5280 goto yy438;
5281 } else {
5282 if (yych == 'g') goto yy439;
5283 goto yy358;
5284 }
5285 }
5286 yy396:
5287 yych = *++p;
5288 if (yych <= 'R') {
5289 if (yych == 'O') goto yy434;
5290 if (yych <= 'Q') goto yy358;
5291 goto yy440;
5292 } else {
5293 if (yych <= 'o') {
5294 if (yych <= 'n') goto yy358;
5295 goto yy434;
5296 } else {
5297 if (yych == 'r') goto yy440;
5298 goto yy358;
5299 }
5300 }
5301 yy397:
5302 yych = *++p;
5303 if (yych == 'A') goto yy441;
5304 if (yych == 'a') goto yy441;
5305 goto yy358;
5306 yy398:
5307 yych = *++p;
5308 if (yych == 'A') goto yy442;
5309 if (yych == 'a') goto yy442;
5310 goto yy358;
5311 yy399:
5312 yych = *++p;
5313 if (yych == 'M') goto yy376;
5314 if (yych == 'm') goto yy376;
5315 goto yy358;
5316 yy400:
5317 yych = *++p;
5318 if (yych == 'R') goto yy443;
5319 if (yych == 'r') goto yy443;
5320 goto yy358;
5321 yy401:
5322 yych = *++p;
5323 if (yych == 'G') goto yy444;
5324 if (yych == 'g') goto yy444;
5325 goto yy358;
5326 yy402:
5327 yych = *++p;
5328 if (yych <= '/') {
5329 if (yych <= 0x1F) {
5330 if (yych <= 0x08) goto yy358;
5331 if (yych <= '\r') goto yy408;
5332 goto yy358;
5333 } else {
5334 if (yych <= ' ') goto yy408;
5335 if (yych <= '.') goto yy358;
5336 goto yy410;
5337 }
5338 } else {
5339 if (yych <= 'M') {
5340 if (yych == '>') goto yy408;
5341 goto yy358;
5342 } else {
5343 if (yych <= 'N') goto yy445;
5344 if (yych == 'n') goto yy445;
5345 goto yy358;
5346 }
5347 }
5348 yy403:
5349 yych = *++p;
5350 if (yych == 'I') goto yy446;
5351 if (yych == 'i') goto yy446;
5352 goto yy358;
5353 yy404:
5354 yych = *++p;
5355 if (yych == 'N') goto yy447;
5356 if (yych == 'n') goto yy447;
5357 goto yy358;
5358 yy405:
5359 yych = *++p;
5360 if (yych == 'V') goto yy392;
5361 if (yych == 'v') goto yy392;
5362 goto yy358;
5363 yy406:
5364 yych = *++p;
5365 if (yych == 'F') goto yy448;
5366 if (yych == 'f') goto yy448;
5367 goto yy358;
5368 yy407:
5369 yych = *++p;
5370 if (yych == 'T') goto yy449;
5371 if (yych == 't') goto yy449;
5372 goto yy358;
5373 yy408:
5374 ++p;
5375 { return 6; }
5376 yy410:
5377 yych = *++p;
5378 if (yych == '>') goto yy408;
5379 goto yy358;
5380 yy411:
5381 yych = *++p;
5382 if (yych == 'R') goto yy450;
5383 if (yych == 'r') goto yy450;
5384 goto yy358;
5385 yy412:
5386 yych = *++p;
5387 if (yych == 'E') goto yy451;
5388 if (yych == 'e') goto yy451;
5389 goto yy358;
5390 yy413:
5391 yych = *++p;
5392 if (yych == 'R') goto yy452;
5393 if (yych == 'r') goto yy452;
5394 goto yy358;
5395 yy414:
5396 yych = *++p;
5397 if (yych == 'C') goto yy433;
5398 if (yych == 'c') goto yy433;
5399 goto yy358;
5400 yy415:
5401 yych = *++p;
5402 if (yych == 'U') goto yy453;
5403 if (yych == 'u') goto yy453;
5404 goto yy358;
5405 yy416:
5406 yych = *++p;
5407 if (yych == 'Y') goto yy454;
5408 if (yych == 'y') goto yy454;
5409 goto yy358;
5410 yy417:
5411 yych = *++p;
5412 if (yych == 'M') goto yy455;
5413 if (yych == 'm') goto yy455;
5414 goto yy358;
5415 yy418:
5416 yych = *++p;
5417 if (yych == 'B') goto yy456;
5418 if (yych == 'b') goto yy456;
5419 goto yy358;
5420 yy419:
5421 yych = *++p;
5422 if (yych == 'O') goto yy388;
5423 if (yych == 'o') goto yy388;
5424 goto yy358;
5425 yy420:
5426 yych = *++p;
5427 if (yych == 'O') goto yy457;
5428 if (yych == 'o') goto yy457;
5429 goto yy358;
5430 yy421:
5431 yych = *++p;
5432 if (yych <= '/') {
5433 if (yych <= 0x1F) {
5434 if (yych <= 0x08) goto yy358;
5435 if (yych <= '\r') goto yy408;
5436 goto yy358;
5437 } else {
5438 if (yych <= ' ') goto yy408;
5439 if (yych <= '.') goto yy358;
5440 goto yy410;
5441 }
5442 } else {
5443 if (yych <= 'D') {
5444 if (yych == '>') goto yy408;
5445 goto yy358;
5446 } else {
5447 if (yych <= 'E') goto yy458;
5448 if (yych == 'e') goto yy458;
5449 goto yy358;
5450 }
5451 }
5452 yy422:
5453 yych = *++p;
5454 if (yych == 'T') goto yy456;
5455 if (yych == 't') goto yy456;
5456 goto yy358;
5457 yy423:
5458 yych = *++p;
5459 if (yych <= '/') {
5460 if (yych <= 0x1F) {
5461 if (yych <= 0x08) goto yy358;
5462 if (yych <= '\r') goto yy408;
5463 goto yy358;
5464 } else {
5465 if (yych <= ' ') goto yy408;
5466 if (yych <= '.') goto yy358;
5467 goto yy410;
5468 }
5469 } else {
5470 if (yych <= '@') {
5471 if (yych == '>') goto yy408;
5472 goto yy358;
5473 } else {
5474 if (yych <= 'A') goto yy459;
5475 if (yych == 'a') goto yy459;
5476 goto yy358;
5477 }
5478 }
5479 yy424:
5480 ++p;
5481 { return 2; }
5482 yy426:
5483 yych = *++p;
5484 if (yych == 'D') goto yy460;
5485 if (yych == 'd') goto yy460;
5486 goto yy358;
5487 yy427:
5488 yych = *++p;
5489 if (yych == 'R') goto yy461;
5490 if (yych == 'r') goto yy461;
5491 goto yy358;
5492 yy428:
5493 yych = *++p;
5494 if (yych == 'I') goto yy462;
5495 if (yych == 'i') goto yy462;
5496 goto yy358;
5497 yy429:
5498 yych = *++p;
5499 if (yych == 'D') goto yy463;
5500 if (yych == 'd') goto yy463;
5501 goto yy358;
5502 yy430:
5503 yych = *++p;
5504 if (yych == 'E') goto yy464;
5505 if (yych == 'e') goto yy464;
5506 goto yy358;
5507 yy431:
5508 yych = *++p;
5509 if (yych == 'C') goto yy465;
5510 if (yych == 'c') goto yy465;
5511 goto yy358;
5512 yy432:
5513 yych = *++p;
5514 if (yych == 'Y') goto yy392;
5515 if (yych == 'y') goto yy392;
5516 goto yy358;
5517 yy433:
5518 yych = *++p;
5519 if (yych == 'T') goto yy466;
5520 if (yych == 't') goto yy466;
5521 goto yy358;
5522 yy434:
5523 yych = *++p;
5524 if (yych == 'T') goto yy467;
5525 if (yych == 't') goto yy467;
5526 goto yy358;
5527 yy435:
5528 yych = *++p;
5529 if (yych <= '/') {
5530 if (yych <= 0x1F) {
5531 if (yych <= 0x08) goto yy358;
5532 if (yych <= '\r') goto yy408;
5533 goto yy358;
5534 } else {
5535 if (yych <= ' ') goto yy408;
5536 if (yych <= '.') goto yy358;
5537 goto yy410;
5538 }
5539 } else {
5540 if (yych <= 'F') {
5541 if (yych == '>') goto yy408;
5542 goto yy358;
5543 } else {
5544 if (yych <= 'G') goto yy468;
5545 if (yych == 'g') goto yy468;
5546 goto yy358;
5547 }
5548 }
5549 yy436:
5550 yych = *++p;
5551 if (yych == 'A') goto yy469;
5552 if (yych == 'a') goto yy469;
5553 goto yy358;
5554 yy437:
5555 yych = *++p;
5556 if (yych == 'L') goto yy470;
5557 if (yych == 'l') goto yy470;
5558 goto yy358;
5559 yy438:
5560 yych = *++p;
5561 if (yych == 'L') goto yy471;
5562 if (yych == 'l') goto yy471;
5563 goto yy358;
5564 yy439:
5565 yych = *++p;
5566 if (yych <= 'U') {
5567 if (yych == 'C') goto yy472;
5568 if (yych <= 'T') goto yy358;
5569 goto yy473;
5570 } else {
5571 if (yych <= 'c') {
5572 if (yych <= 'b') goto yy358;
5573 goto yy472;
5574 } else {
5575 if (yych == 'u') goto yy473;
5576 goto yy358;
5577 }
5578 }
5579 yy440:
5580 yych = *++p;
5581 if (yych == 'M') goto yy392;
5582 if (yych == 'm') goto yy392;
5583 goto yy358;
5584 yy441:
5585 yych = *++p;
5586 if (yych == 'M') goto yy474;
5587 if (yych == 'm') goto yy474;
5588 goto yy358;
5589 yy442:
5590 yych = *++p;
5591 if (yych == 'D') goto yy475;
5592 if (yych == 'd') goto yy475;
5593 goto yy358;
5594 yy443:
5595 yych = *++p;
5596 if (yych == 'A') goto yy476;
5597 if (yych == 'a') goto yy476;
5598 goto yy358;
5599 yy444:
5600 yych = *++p;
5601 if (yych == 'E') goto yy477;
5602 if (yych == 'e') goto yy477;
5603 goto yy358;
5604 yy445:
5605 yych = *++p;
5606 if (yych == 'K') goto yy392;
5607 if (yych == 'k') goto yy392;
5608 goto yy358;
5609 yy446:
5610 yych = *++p;
5611 if (yych == 'N') goto yy392;
5612 if (yych == 'n') goto yy392;
5613 goto yy358;
5614 yy447:
5615 yych = *++p;
5616 if (yych == 'U') goto yy478;
5617 if (yych == 'u') goto yy478;
5618 goto yy358;
5619 yy448:
5620 yych = *++p;
5621 if (yych == 'R') goto yy479;
5622 if (yych == 'r') goto yy479;
5623 goto yy358;
5624 yy449:
5625 yych = *++p;
5626 if (yych <= 'I') {
5627 if (yych == 'G') goto yy468;
5628 if (yych <= 'H') goto yy358;
5629 goto yy480;
5630 } else {
5631 if (yych <= 'g') {
5632 if (yych <= 'f') goto yy358;
5633 goto yy468;
5634 } else {
5635 if (yych == 'i') goto yy480;
5636 goto yy358;
5637 }
5638 }
5639 yy450:
5640 yych = *++p;
5641 if (yych == 'A') goto yy440;
5642 if (yych == 'a') goto yy440;
5643 goto yy358;
5644 yy451:
5645 yych = *++p;
5646 if (yych <= 0x1F) {
5647 if (yych <= 0x08) goto yy358;
5648 if (yych <= '\r') goto yy481;
5649 goto yy358;
5650 } else {
5651 if (yych <= ' ') goto yy481;
5652 if (yych == '>') goto yy481;
5653 goto yy358;
5654 }
5655 yy452:
5656 yych = *++p;
5657 if (yych == 'I') goto yy483;
5658 if (yych == 'i') goto yy483;
5659 goto yy358;
5660 yy453:
5661 yych = *++p;
5662 if (yych == 'R') goto yy484;
5663 if (yych == 'r') goto yy484;
5664 goto yy358;
5665 yy454:
5666 yych = *++p;
5667 if (yych == 'L') goto yy412;
5668 if (yych == 'l') goto yy412;
5669 goto yy358;
5670 yy455:
5671 yych = *++p;
5672 if (yych == 'M') goto yy485;
5673 if (yych == 'm') goto yy485;
5674 goto yy358;
5675 yy456:
5676 yych = *++p;
5677 if (yych == 'L') goto yy463;
5678 if (yych == 'l') goto yy463;
5679 goto yy358;
5680 yy457:
5681 yych = *++p;
5682 if (yych == 'O') goto yy486;
5683 if (yych == 'o') goto yy486;
5684 goto yy358;
5685 yy458:
5686 yych = *++p;
5687 if (yych == 'A') goto yy487;
5688 if (yych == 'a') goto yy487;
5689 goto yy358;
5690 yy459:
5691 yych = *++p;
5692 if (yych == 'C') goto yy445;
5693 if (yych == 'c') goto yy445;
5694 goto yy358;
5695 yy460:
5696 yych = *++p;
5697 if (yych == 'A') goto yy488;
5698 if (yych == 'a') goto yy488;
5699 goto yy358;
5700 yy461:
5701 yych = *++p;
5702 if (yych == 'E') goto yy489;
5703 if (yych == 'e') goto yy489;
5704 goto yy358;
5705 yy462:
5706 yych = *++p;
5707 if (yych == 'C') goto yy456;
5708 if (yych == 'c') goto yy456;
5709 goto yy358;
5710 yy463:
5711 yych = *++p;
5712 if (yych == 'E') goto yy392;
5713 if (yych == 'e') goto yy392;
5714 goto yy358;
5715 yy464:
5716 yych = *++p;
5717 if (yych <= '/') {
5718 if (yych <= 0x1F) {
5719 if (yych <= 0x08) goto yy358;
5720 if (yych <= '\r') goto yy408;
5721 goto yy358;
5722 } else {
5723 if (yych <= ' ') goto yy408;
5724 if (yych <= '.') goto yy358;
5725 goto yy410;
5726 }
5727 } else {
5728 if (yych <= 'E') {
5729 if (yych == '>') goto yy408;
5730 goto yy358;
5731 } else {
5732 if (yych <= 'F') goto yy490;
5733 if (yych == 'f') goto yy490;
5734 goto yy358;
5735 }
5736 }
5737 yy465:
5738 yych = *++p;
5739 if (yych == 'K') goto yy491;
5740 if (yych == 'k') goto yy491;
5741 goto yy358;
5742 yy466:
5743 yych = *++p;
5744 if (yych == 'I') goto yy480;
5745 if (yych == 'i') goto yy480;
5746 goto yy358;
5747 yy467:
5748 yych = *++p;
5749 if (yych == 'E') goto yy492;
5750 if (yych == 'e') goto yy492;
5751 goto yy358;
5752 yy468:
5753 yych = *++p;
5754 if (yych == 'R') goto yy493;
5755 if (yych == 'r') goto yy493;
5756 goto yy358;
5757 yy469:
5758 yych = *++p;
5759 if (yych == 'I') goto yy494;
5760 if (yych == 'i') goto yy494;
5761 goto yy358;
5762 yy470:
5763 yych = *++p;
5764 if (yych == 'O') goto yy495;
5765 if (yych == 'o') goto yy495;
5766 goto yy358;
5767 yy471:
5768 yych = *++p;
5769 if (yych == 'D') goto yy496;
5770 if (yych == 'd') goto yy496;
5771 goto yy358;
5772 yy472:
5773 yych = *++p;
5774 if (yych == 'A') goto yy389;
5775 if (yych == 'a') goto yy389;
5776 goto yy358;
5777 yy473:
5778 yych = *++p;
5779 if (yych == 'R') goto yy463;
5780 if (yych == 'r') goto yy463;
5781 goto yy358;
5782 yy474:
5783 yych = *++p;
5784 if (yych == 'E') goto yy497;
5785 if (yych == 'e') goto yy497;
5786 goto yy358;
5787 yy475:
5788 yych = *++p;
5789 if (yych <= '/') {
5790 if (yych <= 0x1F) {
5791 if (yych <= 0x08) goto yy358;
5792 if (yych <= '\r') goto yy408;
5793 goto yy358;
5794 } else {
5795 if (yych <= ' ') goto yy408;
5796 if (yych <= '.') goto yy358;
5797 goto yy410;
5798 }
5799 } else {
5800 if (yych <= 'D') {
5801 if (yych == '>') goto yy408;
5802 goto yy358;
5803 } else {
5804 if (yych <= 'E') goto yy492;
5805 if (yych == 'e') goto yy492;
5806 goto yy358;
5807 }
5808 }
5809 yy476:
5810 yych = *++p;
5811 if (yych == 'M') goto yy463;
5812 if (yych == 'm') goto yy463;
5813 goto yy358;
5814 yy477:
5815 yych = *++p;
5816 if (yych == 'N') goto yy487;
5817 if (yych == 'n') goto yy487;
5818 goto yy358;
5819 yy478:
5820 yych = *++p;
5821 if (yych <= '/') {
5822 if (yych <= 0x1F) {
5823 if (yych <= 0x08) goto yy358;
5824 if (yych <= '\r') goto yy408;
5825 goto yy358;
5826 } else {
5827 if (yych <= ' ') goto yy408;
5828 if (yych <= '.') goto yy358;
5829 goto yy410;
5830 }
5831 } else {
5832 if (yych <= 'H') {
5833 if (yych == '>') goto yy408;
5834 goto yy358;
5835 } else {
5836 if (yych <= 'I') goto yy498;
5837 if (yych == 'i') goto yy498;
5838 goto yy358;
5839 }
5840 }
5841 yy479:
5842 yych = *++p;
5843 if (yych == 'A') goto yy499;
5844 if (yych == 'a') goto yy499;
5845 goto yy358;
5846 yy480:
5847 yych = *++p;
5848 if (yych == 'O') goto yy446;
5849 if (yych == 'o') goto yy446;
5850 goto yy358;
5851 yy481:
5852 ++p;
5853 { return 1; }
5854 yy483:
5855 yych = *++p;
5856 if (yych == 'P') goto yy500;
5857 if (yych == 'p') goto yy500;
5858 goto yy358;
5859 yy484:
5860 yych = *++p;
5861 if (yych == 'C') goto yy463;
5862 if (yych == 'c') goto yy463;
5863 goto yy358;
5864 yy485:
5865 yych = *++p;
5866 if (yych == 'A') goto yy501;
5867 if (yych == 'a') goto yy501;
5868 goto yy358;
5869 yy486:
5870 yych = *++p;
5871 if (yych == 'T') goto yy392;
5872 if (yych == 't') goto yy392;
5873 goto yy358;
5874 yy487:
5875 yych = *++p;
5876 if (yych == 'D') goto yy392;
5877 if (yych == 'd') goto yy392;
5878 goto yy358;
5879 yy488:
5880 yych = *++p;
5881 if (yych == 'T') goto yy502;
5882 if (yych == 't') goto yy502;
5883 goto yy358;
5884 yy489:
5885 yych = *++p;
5886 if (yych == 'S') goto yy503;
5887 if (yych == 's') goto yy503;
5888 goto yy358;
5889 yy490:
5890 yych = *++p;
5891 if (yych == 'O') goto yy504;
5892 if (yych == 'o') goto yy504;
5893 goto yy358;
5894 yy491:
5895 yych = *++p;
5896 if (yych == 'Q') goto yy505;
5897 if (yych == 'q') goto yy505;
5898 goto yy358;
5899 yy492:
5900 yych = *++p;
5901 if (yych == 'R') goto yy392;
5902 if (yych == 'r') goto yy392;
5903 goto yy358;
5904 yy493:
5905 yych = *++p;
5906 if (yych == 'O') goto yy506;
5907 if (yych == 'o') goto yy506;
5908 goto yy358;
5909 yy494:
5910 yych = *++p;
5911 if (yych == 'L') goto yy503;
5912 if (yych == 'l') goto yy503;
5913 goto yy358;
5914 yy495:
5915 yych = *++p;
5916 if (yych == 'G') goto yy392;
5917 if (yych == 'g') goto yy392;
5918 goto yy358;
5919 yy496:
5920 yych = *++p;
5921 if (yych == 'S') goto yy507;
5922 if (yych == 's') goto yy507;
5923 goto yy358;
5924 yy497:
5925 yych = *++p;
5926 if (yych <= '/') {
5927 if (yych <= 0x1F) {
5928 if (yych <= 0x08) goto yy358;
5929 if (yych <= '\r') goto yy408;
5930 goto yy358;
5931 } else {
5932 if (yych <= ' ') goto yy408;
5933 if (yych <= '.') goto yy358;
5934 goto yy410;
5935 }
5936 } else {
5937 if (yych <= 'R') {
5938 if (yych == '>') goto yy408;
5939 goto yy358;
5940 } else {
5941 if (yych <= 'S') goto yy507;
5942 if (yych == 's') goto yy507;
5943 goto yy358;
5944 }
5945 }
5946 yy498:
5947 yych = *++p;
5948 if (yych == 'T') goto yy508;
5949 if (yych == 't') goto yy508;
5950 goto yy358;
5951 yy499:
5952 yych = *++p;
5953 if (yych == 'M') goto yy509;
5954 if (yych == 'm') goto yy509;
5955 goto yy358;
5956 yy500:
5957 yych = *++p;
5958 if (yych == 'T') goto yy451;
5959 if (yych == 't') goto yy451;
5960 goto yy358;
5961 yy501:
5962 yych = *++p;
5963 if (yych == 'R') goto yy432;
5964 if (yych == 'r') goto yy432;
5965 goto yy358;
5966 yy502:
5967 yych = *++p;
5968 if (yych == 'A') goto yy510;
5969 if (yych == 'a') goto yy510;
5970 goto yy358;
5971 yy503:
5972 yych = *++p;
5973 if (yych == 'S') goto yy392;
5974 if (yych == 's') goto yy392;
5975 goto yy358;
5976 yy504:
5977 yych = *++p;
5978 if (yych == 'N') goto yy486;
5979 if (yych == 'n') goto yy486;
5980 goto yy358;
5981 yy505:
5982 yych = *++p;
5983 if (yych == 'U') goto yy511;
5984 if (yych == 'u') goto yy511;
5985 goto yy358;
5986 yy506:
5987 yych = *++p;
5988 if (yych == 'U') goto yy512;
5989 if (yych == 'u') goto yy512;
5990 goto yy358;
5991 yy507:
5992 yych = *++p;
5993 if (yych == 'E') goto yy486;
5994 if (yych == 'e') goto yy486;
5995 goto yy358;
5996 yy508:
5997 yych = *++p;
5998 if (yych == 'E') goto yy440;
5999 if (yych == 'e') goto yy440;
6000 goto yy358;
6001 yy509:
6002 yych = *++p;
6003 if (yych == 'E') goto yy503;
6004 if (yych == 'e') goto yy503;
6005 goto yy358;
6006 yy510:
6007 yych = *++p;
6008 if (yych == '[') goto yy513;
6009 goto yy358;
6010 yy511:
6011 yych = *++p;
6012 if (yych == 'O') goto yy515;
6013 if (yych == 'o') goto yy515;
6014 goto yy358;
6015 yy512:
6016 yych = *++p;
6017 if (yych == 'P') goto yy392;
6018 if (yych == 'p') goto yy392;
6019 goto yy358;
6020 yy513:
6021 ++p;
6022 { return 5; }
6023 yy515:
6024 yych = *++p;
6025 if (yych == 'T') goto yy463;
6026 if (yych == 't') goto yy463;
6027 goto yy358;
6028 }
6029
6030 }
6031
6032 // Try to match an HTML block tag start line of type 7, returning
6033 // 7 if successful, 0 if not.
_scan_html_block_start_7(const unsigned char * p)6034 bufsize_t _scan_html_block_start_7(const unsigned char *p)
6035 {
6036 const unsigned char *marker = NULL;
6037
6038 {
6039 unsigned char yych;
6040 unsigned int yyaccept = 0;
6041 static const unsigned char yybm[] = {
6042 0, 224, 224, 224, 224, 224, 224, 224,
6043 224, 198, 210, 194, 198, 194, 224, 224,
6044 224, 224, 224, 224, 224, 224, 224, 224,
6045 224, 224, 224, 224, 224, 224, 224, 224,
6046 198, 224, 128, 224, 224, 224, 224, 64,
6047 224, 224, 224, 224, 224, 233, 232, 224,
6048 233, 233, 233, 233, 233, 233, 233, 233,
6049 233, 233, 232, 224, 192, 192, 192, 224,
6050 224, 233, 233, 233, 233, 233, 233, 233,
6051 233, 233, 233, 233, 233, 233, 233, 233,
6052 233, 233, 233, 233, 233, 233, 233, 233,
6053 233, 233, 233, 224, 224, 224, 224, 232,
6054 192, 233, 233, 233, 233, 233, 233, 233,
6055 233, 233, 233, 233, 233, 233, 233, 233,
6056 233, 233, 233, 233, 233, 233, 233, 233,
6057 233, 233, 233, 224, 224, 224, 224, 224,
6058 0, 0, 0, 0, 0, 0, 0, 0,
6059 0, 0, 0, 0, 0, 0, 0, 0,
6060 0, 0, 0, 0, 0, 0, 0, 0,
6061 0, 0, 0, 0, 0, 0, 0, 0,
6062 0, 0, 0, 0, 0, 0, 0, 0,
6063 0, 0, 0, 0, 0, 0, 0, 0,
6064 0, 0, 0, 0, 0, 0, 0, 0,
6065 0, 0, 0, 0, 0, 0, 0, 0,
6066 0, 0, 0, 0, 0, 0, 0, 0,
6067 0, 0, 0, 0, 0, 0, 0, 0,
6068 0, 0, 0, 0, 0, 0, 0, 0,
6069 0, 0, 0, 0, 0, 0, 0, 0,
6070 0, 0, 0, 0, 0, 0, 0, 0,
6071 0, 0, 0, 0, 0, 0, 0, 0,
6072 0, 0, 0, 0, 0, 0, 0, 0,
6073 0, 0, 0, 0, 0, 0, 0, 0,
6074 };
6075 yych = *p;
6076 if (yych == '<') goto yy520;
6077 ++p;
6078 yy519:
6079 { return 0; }
6080 yy520:
6081 yyaccept = 0;
6082 yych = *(marker = ++p);
6083 if (yych <= '@') {
6084 if (yych != '/') goto yy519;
6085 } else {
6086 if (yych <= 'Z') goto yy523;
6087 if (yych <= '`') goto yy519;
6088 if (yych <= 'z') goto yy523;
6089 goto yy519;
6090 }
6091 yych = *++p;
6092 if (yych <= '@') goto yy522;
6093 if (yych <= 'Z') goto yy525;
6094 if (yych <= '`') goto yy522;
6095 if (yych <= 'z') goto yy525;
6096 yy522:
6097 p = marker;
6098 if (yyaccept == 0) {
6099 goto yy519;
6100 } else {
6101 goto yy538;
6102 }
6103 yy523:
6104 yych = *++p;
6105 if (yybm[0+yych] & 2) {
6106 goto yy527;
6107 }
6108 if (yych <= '=') {
6109 if (yych <= '.') {
6110 if (yych == '-') goto yy523;
6111 goto yy522;
6112 } else {
6113 if (yych <= '/') goto yy529;
6114 if (yych <= '9') goto yy523;
6115 goto yy522;
6116 }
6117 } else {
6118 if (yych <= 'Z') {
6119 if (yych <= '>') goto yy530;
6120 if (yych <= '@') goto yy522;
6121 goto yy523;
6122 } else {
6123 if (yych <= '`') goto yy522;
6124 if (yych <= 'z') goto yy523;
6125 goto yy522;
6126 }
6127 }
6128 yy525:
6129 yych = *++p;
6130 if (yych <= '/') {
6131 if (yych <= 0x1F) {
6132 if (yych <= 0x08) goto yy522;
6133 if (yych <= '\r') goto yy532;
6134 goto yy522;
6135 } else {
6136 if (yych <= ' ') goto yy532;
6137 if (yych == '-') goto yy525;
6138 goto yy522;
6139 }
6140 } else {
6141 if (yych <= '@') {
6142 if (yych <= '9') goto yy525;
6143 if (yych == '>') goto yy530;
6144 goto yy522;
6145 } else {
6146 if (yych <= 'Z') goto yy525;
6147 if (yych <= '`') goto yy522;
6148 if (yych <= 'z') goto yy525;
6149 goto yy522;
6150 }
6151 }
6152 yy527:
6153 yych = *++p;
6154 if (yybm[0+yych] & 2) {
6155 goto yy527;
6156 }
6157 if (yych <= '>') {
6158 if (yych <= '9') {
6159 if (yych != '/') goto yy522;
6160 } else {
6161 if (yych <= ':') goto yy534;
6162 if (yych <= '=') goto yy522;
6163 goto yy530;
6164 }
6165 } else {
6166 if (yych <= '^') {
6167 if (yych <= '@') goto yy522;
6168 if (yych <= 'Z') goto yy534;
6169 goto yy522;
6170 } else {
6171 if (yych == '`') goto yy522;
6172 if (yych <= 'z') goto yy534;
6173 goto yy522;
6174 }
6175 }
6176 yy529:
6177 yych = *++p;
6178 if (yych != '>') goto yy522;
6179 yy530:
6180 yych = *++p;
6181 if (yybm[0+yych] & 4) {
6182 goto yy530;
6183 }
6184 if (yych <= 0x08) goto yy522;
6185 if (yych <= '\n') goto yy536;
6186 if (yych <= '\v') goto yy522;
6187 if (yych <= '\r') goto yy539;
6188 goto yy522;
6189 yy532:
6190 yych = *++p;
6191 if (yych <= 0x1F) {
6192 if (yych <= 0x08) goto yy522;
6193 if (yych <= '\r') goto yy532;
6194 goto yy522;
6195 } else {
6196 if (yych <= ' ') goto yy532;
6197 if (yych == '>') goto yy530;
6198 goto yy522;
6199 }
6200 yy534:
6201 yych = *++p;
6202 if (yybm[0+yych] & 8) {
6203 goto yy534;
6204 }
6205 if (yych <= ',') {
6206 if (yych <= '\r') {
6207 if (yych <= 0x08) goto yy522;
6208 goto yy540;
6209 } else {
6210 if (yych == ' ') goto yy540;
6211 goto yy522;
6212 }
6213 } else {
6214 if (yych <= '<') {
6215 if (yych <= '/') goto yy529;
6216 goto yy522;
6217 } else {
6218 if (yych <= '=') goto yy542;
6219 if (yych <= '>') goto yy530;
6220 goto yy522;
6221 }
6222 }
6223 yy536:
6224 yyaccept = 1;
6225 yych = *(marker = ++p);
6226 if (yybm[0+yych] & 4) {
6227 goto yy530;
6228 }
6229 if (yych <= 0x08) goto yy538;
6230 if (yych <= '\n') goto yy536;
6231 if (yych <= '\v') goto yy538;
6232 if (yych <= '\r') goto yy539;
6233 yy538:
6234 { return 7; }
6235 yy539:
6236 ++p;
6237 goto yy538;
6238 yy540:
6239 yych = *++p;
6240 if (yych <= '<') {
6241 if (yych <= ' ') {
6242 if (yych <= 0x08) goto yy522;
6243 if (yych <= '\r') goto yy540;
6244 if (yych <= 0x1F) goto yy522;
6245 goto yy540;
6246 } else {
6247 if (yych <= '/') {
6248 if (yych <= '.') goto yy522;
6249 goto yy529;
6250 } else {
6251 if (yych == ':') goto yy534;
6252 goto yy522;
6253 }
6254 }
6255 } else {
6256 if (yych <= 'Z') {
6257 if (yych <= '=') goto yy542;
6258 if (yych <= '>') goto yy530;
6259 if (yych <= '@') goto yy522;
6260 goto yy534;
6261 } else {
6262 if (yych <= '_') {
6263 if (yych <= '^') goto yy522;
6264 goto yy534;
6265 } else {
6266 if (yych <= '`') goto yy522;
6267 if (yych <= 'z') goto yy534;
6268 goto yy522;
6269 }
6270 }
6271 }
6272 yy542:
6273 yych = *++p;
6274 if (yybm[0+yych] & 32) {
6275 goto yy544;
6276 }
6277 if (yych <= 0xE0) {
6278 if (yych <= '"') {
6279 if (yych <= 0x00) goto yy522;
6280 if (yych <= ' ') goto yy542;
6281 goto yy546;
6282 } else {
6283 if (yych <= '\'') goto yy548;
6284 if (yych <= 0xC1) goto yy522;
6285 if (yych <= 0xDF) goto yy550;
6286 goto yy551;
6287 }
6288 } else {
6289 if (yych <= 0xEF) {
6290 if (yych == 0xED) goto yy553;
6291 goto yy552;
6292 } else {
6293 if (yych <= 0xF0) goto yy554;
6294 if (yych <= 0xF3) goto yy555;
6295 if (yych <= 0xF4) goto yy556;
6296 goto yy522;
6297 }
6298 }
6299 yy544:
6300 yych = *++p;
6301 if (yybm[0+yych] & 32) {
6302 goto yy544;
6303 }
6304 if (yych <= 0xE0) {
6305 if (yych <= '=') {
6306 if (yych <= 0x00) goto yy522;
6307 if (yych <= ' ') goto yy527;
6308 goto yy522;
6309 } else {
6310 if (yych <= '>') goto yy530;
6311 if (yych <= 0xC1) goto yy522;
6312 if (yych <= 0xDF) goto yy550;
6313 goto yy551;
6314 }
6315 } else {
6316 if (yych <= 0xEF) {
6317 if (yych == 0xED) goto yy553;
6318 goto yy552;
6319 } else {
6320 if (yych <= 0xF0) goto yy554;
6321 if (yych <= 0xF3) goto yy555;
6322 if (yych <= 0xF4) goto yy556;
6323 goto yy522;
6324 }
6325 }
6326 yy546:
6327 yych = *++p;
6328 if (yybm[0+yych] & 64) {
6329 goto yy546;
6330 }
6331 if (yych <= 0xEC) {
6332 if (yych <= 0xC1) {
6333 if (yych <= 0x00) goto yy522;
6334 if (yych <= '"') goto yy557;
6335 goto yy522;
6336 } else {
6337 if (yych <= 0xDF) goto yy558;
6338 if (yych <= 0xE0) goto yy559;
6339 goto yy560;
6340 }
6341 } else {
6342 if (yych <= 0xF0) {
6343 if (yych <= 0xED) goto yy561;
6344 if (yych <= 0xEF) goto yy560;
6345 goto yy562;
6346 } else {
6347 if (yych <= 0xF3) goto yy563;
6348 if (yych <= 0xF4) goto yy564;
6349 goto yy522;
6350 }
6351 }
6352 yy548:
6353 yych = *++p;
6354 if (yybm[0+yych] & 128) {
6355 goto yy548;
6356 }
6357 if (yych <= 0xEC) {
6358 if (yych <= 0xC1) {
6359 if (yych <= 0x00) goto yy522;
6360 if (yych <= '\'') goto yy557;
6361 goto yy522;
6362 } else {
6363 if (yych <= 0xDF) goto yy565;
6364 if (yych <= 0xE0) goto yy566;
6365 goto yy567;
6366 }
6367 } else {
6368 if (yych <= 0xF0) {
6369 if (yych <= 0xED) goto yy568;
6370 if (yych <= 0xEF) goto yy567;
6371 goto yy569;
6372 } else {
6373 if (yych <= 0xF3) goto yy570;
6374 if (yych <= 0xF4) goto yy571;
6375 goto yy522;
6376 }
6377 }
6378 yy550:
6379 yych = *++p;
6380 if (yych <= 0x7F) goto yy522;
6381 if (yych <= 0xBF) goto yy544;
6382 goto yy522;
6383 yy551:
6384 yych = *++p;
6385 if (yych <= 0x9F) goto yy522;
6386 if (yych <= 0xBF) goto yy550;
6387 goto yy522;
6388 yy552:
6389 yych = *++p;
6390 if (yych <= 0x7F) goto yy522;
6391 if (yych <= 0xBF) goto yy550;
6392 goto yy522;
6393 yy553:
6394 yych = *++p;
6395 if (yych <= 0x7F) goto yy522;
6396 if (yych <= 0x9F) goto yy550;
6397 goto yy522;
6398 yy554:
6399 yych = *++p;
6400 if (yych <= 0x8F) goto yy522;
6401 if (yych <= 0xBF) goto yy552;
6402 goto yy522;
6403 yy555:
6404 yych = *++p;
6405 if (yych <= 0x7F) goto yy522;
6406 if (yych <= 0xBF) goto yy552;
6407 goto yy522;
6408 yy556:
6409 yych = *++p;
6410 if (yych <= 0x7F) goto yy522;
6411 if (yych <= 0x8F) goto yy552;
6412 goto yy522;
6413 yy557:
6414 yych = *++p;
6415 if (yybm[0+yych] & 2) {
6416 goto yy527;
6417 }
6418 if (yych == '/') goto yy529;
6419 if (yych == '>') goto yy530;
6420 goto yy522;
6421 yy558:
6422 yych = *++p;
6423 if (yych <= 0x7F) goto yy522;
6424 if (yych <= 0xBF) goto yy546;
6425 goto yy522;
6426 yy559:
6427 yych = *++p;
6428 if (yych <= 0x9F) goto yy522;
6429 if (yych <= 0xBF) goto yy558;
6430 goto yy522;
6431 yy560:
6432 yych = *++p;
6433 if (yych <= 0x7F) goto yy522;
6434 if (yych <= 0xBF) goto yy558;
6435 goto yy522;
6436 yy561:
6437 yych = *++p;
6438 if (yych <= 0x7F) goto yy522;
6439 if (yych <= 0x9F) goto yy558;
6440 goto yy522;
6441 yy562:
6442 yych = *++p;
6443 if (yych <= 0x8F) goto yy522;
6444 if (yych <= 0xBF) goto yy560;
6445 goto yy522;
6446 yy563:
6447 yych = *++p;
6448 if (yych <= 0x7F) goto yy522;
6449 if (yych <= 0xBF) goto yy560;
6450 goto yy522;
6451 yy564:
6452 yych = *++p;
6453 if (yych <= 0x7F) goto yy522;
6454 if (yych <= 0x8F) goto yy560;
6455 goto yy522;
6456 yy565:
6457 yych = *++p;
6458 if (yych <= 0x7F) goto yy522;
6459 if (yych <= 0xBF) goto yy548;
6460 goto yy522;
6461 yy566:
6462 yych = *++p;
6463 if (yych <= 0x9F) goto yy522;
6464 if (yych <= 0xBF) goto yy565;
6465 goto yy522;
6466 yy567:
6467 yych = *++p;
6468 if (yych <= 0x7F) goto yy522;
6469 if (yych <= 0xBF) goto yy565;
6470 goto yy522;
6471 yy568:
6472 yych = *++p;
6473 if (yych <= 0x7F) goto yy522;
6474 if (yych <= 0x9F) goto yy565;
6475 goto yy522;
6476 yy569:
6477 yych = *++p;
6478 if (yych <= 0x8F) goto yy522;
6479 if (yych <= 0xBF) goto yy567;
6480 goto yy522;
6481 yy570:
6482 yych = *++p;
6483 if (yych <= 0x7F) goto yy522;
6484 if (yych <= 0xBF) goto yy567;
6485 goto yy522;
6486 yy571:
6487 yych = *++p;
6488 if (yych <= 0x7F) goto yy522;
6489 if (yych <= 0x8F) goto yy567;
6490 goto yy522;
6491 }
6492
6493 }
6494
6495 // Try to match an HTML block end line of type 1
_scan_html_block_end_1(const unsigned char * p)6496 bufsize_t _scan_html_block_end_1(const unsigned char *p)
6497 {
6498 const unsigned char *marker = NULL;
6499 const unsigned char *start = p;
6500
6501 {
6502 unsigned char yych;
6503 unsigned int yyaccept = 0;
6504 static const unsigned char yybm[] = {
6505 0, 64, 64, 64, 64, 64, 64, 64,
6506 64, 64, 0, 64, 64, 64, 64, 64,
6507 64, 64, 64, 64, 64, 64, 64, 64,
6508 64, 64, 64, 64, 64, 64, 64, 64,
6509 64, 64, 64, 64, 64, 64, 64, 64,
6510 64, 64, 64, 64, 64, 64, 64, 64,
6511 64, 64, 64, 64, 64, 64, 64, 64,
6512 64, 64, 64, 64, 128, 64, 64, 64,
6513 64, 64, 64, 64, 64, 64, 64, 64,
6514 64, 64, 64, 64, 64, 64, 64, 64,
6515 64, 64, 64, 64, 64, 64, 64, 64,
6516 64, 64, 64, 64, 64, 64, 64, 64,
6517 64, 64, 64, 64, 64, 64, 64, 64,
6518 64, 64, 64, 64, 64, 64, 64, 64,
6519 64, 64, 64, 64, 64, 64, 64, 64,
6520 64, 64, 64, 64, 64, 64, 64, 64,
6521 0, 0, 0, 0, 0, 0, 0, 0,
6522 0, 0, 0, 0, 0, 0, 0, 0,
6523 0, 0, 0, 0, 0, 0, 0, 0,
6524 0, 0, 0, 0, 0, 0, 0, 0,
6525 0, 0, 0, 0, 0, 0, 0, 0,
6526 0, 0, 0, 0, 0, 0, 0, 0,
6527 0, 0, 0, 0, 0, 0, 0, 0,
6528 0, 0, 0, 0, 0, 0, 0, 0,
6529 0, 0, 0, 0, 0, 0, 0, 0,
6530 0, 0, 0, 0, 0, 0, 0, 0,
6531 0, 0, 0, 0, 0, 0, 0, 0,
6532 0, 0, 0, 0, 0, 0, 0, 0,
6533 0, 0, 0, 0, 0, 0, 0, 0,
6534 0, 0, 0, 0, 0, 0, 0, 0,
6535 0, 0, 0, 0, 0, 0, 0, 0,
6536 0, 0, 0, 0, 0, 0, 0, 0,
6537 };
6538 yych = *p;
6539 if (yych <= 0xDF) {
6540 if (yych <= ';') {
6541 if (yych <= 0x00) goto yy574;
6542 if (yych != '\n') goto yy576;
6543 } else {
6544 if (yych <= '<') goto yy577;
6545 if (yych <= 0x7F) goto yy576;
6546 if (yych >= 0xC2) goto yy578;
6547 }
6548 } else {
6549 if (yych <= 0xEF) {
6550 if (yych <= 0xE0) goto yy579;
6551 if (yych == 0xED) goto yy581;
6552 goto yy580;
6553 } else {
6554 if (yych <= 0xF0) goto yy582;
6555 if (yych <= 0xF3) goto yy583;
6556 if (yych <= 0xF4) goto yy584;
6557 }
6558 }
6559 yy574:
6560 ++p;
6561 yy575:
6562 { return 0; }
6563 yy576:
6564 yyaccept = 0;
6565 yych = *(marker = ++p);
6566 if (yych <= '\n') {
6567 if (yych <= 0x00) goto yy575;
6568 if (yych <= '\t') goto yy586;
6569 goto yy575;
6570 } else {
6571 if (yych <= 0x7F) goto yy586;
6572 if (yych <= 0xC1) goto yy575;
6573 if (yych <= 0xF4) goto yy586;
6574 goto yy575;
6575 }
6576 yy577:
6577 yyaccept = 0;
6578 yych = *(marker = ++p);
6579 if (yych <= '.') {
6580 if (yych <= 0x00) goto yy575;
6581 if (yych == '\n') goto yy575;
6582 goto yy586;
6583 } else {
6584 if (yych <= 0x7F) {
6585 if (yych <= '/') goto yy597;
6586 goto yy586;
6587 } else {
6588 if (yych <= 0xC1) goto yy575;
6589 if (yych <= 0xF4) goto yy586;
6590 goto yy575;
6591 }
6592 }
6593 yy578:
6594 yyaccept = 0;
6595 yych = *(marker = ++p);
6596 if (yych <= 0x7F) goto yy575;
6597 if (yych <= 0xBF) goto yy585;
6598 goto yy575;
6599 yy579:
6600 yyaccept = 0;
6601 yych = *(marker = ++p);
6602 if (yych <= 0x9F) goto yy575;
6603 if (yych <= 0xBF) goto yy590;
6604 goto yy575;
6605 yy580:
6606 yyaccept = 0;
6607 yych = *(marker = ++p);
6608 if (yych <= 0x7F) goto yy575;
6609 if (yych <= 0xBF) goto yy590;
6610 goto yy575;
6611 yy581:
6612 yyaccept = 0;
6613 yych = *(marker = ++p);
6614 if (yych <= 0x7F) goto yy575;
6615 if (yych <= 0x9F) goto yy590;
6616 goto yy575;
6617 yy582:
6618 yyaccept = 0;
6619 yych = *(marker = ++p);
6620 if (yych <= 0x8F) goto yy575;
6621 if (yych <= 0xBF) goto yy592;
6622 goto yy575;
6623 yy583:
6624 yyaccept = 0;
6625 yych = *(marker = ++p);
6626 if (yych <= 0x7F) goto yy575;
6627 if (yych <= 0xBF) goto yy592;
6628 goto yy575;
6629 yy584:
6630 yyaccept = 0;
6631 yych = *(marker = ++p);
6632 if (yych <= 0x7F) goto yy575;
6633 if (yych <= 0x8F) goto yy592;
6634 goto yy575;
6635 yy585:
6636 yych = *++p;
6637 yy586:
6638 if (yybm[0+yych] & 64) {
6639 goto yy585;
6640 }
6641 if (yych <= 0xEC) {
6642 if (yych <= 0xC1) {
6643 if (yych <= '\n') goto yy587;
6644 if (yych <= '<') goto yy588;
6645 } else {
6646 if (yych <= 0xDF) goto yy590;
6647 if (yych <= 0xE0) goto yy591;
6648 goto yy592;
6649 }
6650 } else {
6651 if (yych <= 0xF0) {
6652 if (yych <= 0xED) goto yy593;
6653 if (yych <= 0xEF) goto yy592;
6654 goto yy594;
6655 } else {
6656 if (yych <= 0xF3) goto yy595;
6657 if (yych <= 0xF4) goto yy596;
6658 }
6659 }
6660 yy587:
6661 p = marker;
6662 if (yyaccept == 0) {
6663 goto yy575;
6664 } else {
6665 goto yy607;
6666 }
6667 yy588:
6668 yych = *++p;
6669 if (yybm[0+yych] & 128) {
6670 goto yy588;
6671 }
6672 if (yych <= 0xDF) {
6673 if (yych <= '.') {
6674 if (yych <= 0x00) goto yy587;
6675 if (yych == '\n') goto yy587;
6676 goto yy585;
6677 } else {
6678 if (yych <= '/') goto yy597;
6679 if (yych <= 0x7F) goto yy585;
6680 if (yych <= 0xC1) goto yy587;
6681 }
6682 } else {
6683 if (yych <= 0xEF) {
6684 if (yych <= 0xE0) goto yy591;
6685 if (yych == 0xED) goto yy593;
6686 goto yy592;
6687 } else {
6688 if (yych <= 0xF0) goto yy594;
6689 if (yych <= 0xF3) goto yy595;
6690 if (yych <= 0xF4) goto yy596;
6691 goto yy587;
6692 }
6693 }
6694 yy590:
6695 yych = *++p;
6696 if (yych <= 0x7F) goto yy587;
6697 if (yych <= 0xBF) goto yy585;
6698 goto yy587;
6699 yy591:
6700 yych = *++p;
6701 if (yych <= 0x9F) goto yy587;
6702 if (yych <= 0xBF) goto yy590;
6703 goto yy587;
6704 yy592:
6705 yych = *++p;
6706 if (yych <= 0x7F) goto yy587;
6707 if (yych <= 0xBF) goto yy590;
6708 goto yy587;
6709 yy593:
6710 yych = *++p;
6711 if (yych <= 0x7F) goto yy587;
6712 if (yych <= 0x9F) goto yy590;
6713 goto yy587;
6714 yy594:
6715 yych = *++p;
6716 if (yych <= 0x8F) goto yy587;
6717 if (yych <= 0xBF) goto yy592;
6718 goto yy587;
6719 yy595:
6720 yych = *++p;
6721 if (yych <= 0x7F) goto yy587;
6722 if (yych <= 0xBF) goto yy592;
6723 goto yy587;
6724 yy596:
6725 yych = *++p;
6726 if (yych <= 0x7F) goto yy587;
6727 if (yych <= 0x8F) goto yy592;
6728 goto yy587;
6729 yy597:
6730 yych = *++p;
6731 if (yybm[0+yych] & 128) {
6732 goto yy588;
6733 }
6734 if (yych <= 's') {
6735 if (yych <= 'P') {
6736 if (yych <= '\t') {
6737 if (yych <= 0x00) goto yy587;
6738 goto yy585;
6739 } else {
6740 if (yych <= '\n') goto yy587;
6741 if (yych <= 'O') goto yy585;
6742 }
6743 } else {
6744 if (yych <= 'o') {
6745 if (yych == 'S') goto yy599;
6746 goto yy585;
6747 } else {
6748 if (yych <= 'p') goto yy598;
6749 if (yych <= 'r') goto yy585;
6750 goto yy599;
6751 }
6752 }
6753 } else {
6754 if (yych <= 0xEC) {
6755 if (yych <= 0xC1) {
6756 if (yych <= 0x7F) goto yy585;
6757 goto yy587;
6758 } else {
6759 if (yych <= 0xDF) goto yy590;
6760 if (yych <= 0xE0) goto yy591;
6761 goto yy592;
6762 }
6763 } else {
6764 if (yych <= 0xF0) {
6765 if (yych <= 0xED) goto yy593;
6766 if (yych <= 0xEF) goto yy592;
6767 goto yy594;
6768 } else {
6769 if (yych <= 0xF3) goto yy595;
6770 if (yych <= 0xF4) goto yy596;
6771 goto yy587;
6772 }
6773 }
6774 }
6775 yy598:
6776 yych = *++p;
6777 if (yybm[0+yych] & 128) {
6778 goto yy588;
6779 }
6780 if (yych <= 0xC1) {
6781 if (yych <= 'Q') {
6782 if (yych <= 0x00) goto yy587;
6783 if (yych == '\n') goto yy587;
6784 goto yy585;
6785 } else {
6786 if (yych <= 'q') {
6787 if (yych <= 'R') goto yy600;
6788 goto yy585;
6789 } else {
6790 if (yych <= 'r') goto yy600;
6791 if (yych <= 0x7F) goto yy585;
6792 goto yy587;
6793 }
6794 }
6795 } else {
6796 if (yych <= 0xED) {
6797 if (yych <= 0xDF) goto yy590;
6798 if (yych <= 0xE0) goto yy591;
6799 if (yych <= 0xEC) goto yy592;
6800 goto yy593;
6801 } else {
6802 if (yych <= 0xF0) {
6803 if (yych <= 0xEF) goto yy592;
6804 goto yy594;
6805 } else {
6806 if (yych <= 0xF3) goto yy595;
6807 if (yych <= 0xF4) goto yy596;
6808 goto yy587;
6809 }
6810 }
6811 }
6812 yy599:
6813 yych = *++p;
6814 if (yybm[0+yych] & 128) {
6815 goto yy588;
6816 }
6817 if (yych <= 't') {
6818 if (yych <= 'C') {
6819 if (yych <= '\t') {
6820 if (yych <= 0x00) goto yy587;
6821 goto yy585;
6822 } else {
6823 if (yych <= '\n') goto yy587;
6824 if (yych <= 'B') goto yy585;
6825 goto yy601;
6826 }
6827 } else {
6828 if (yych <= 'b') {
6829 if (yych == 'T') goto yy602;
6830 goto yy585;
6831 } else {
6832 if (yych <= 'c') goto yy601;
6833 if (yych <= 's') goto yy585;
6834 goto yy602;
6835 }
6836 }
6837 } else {
6838 if (yych <= 0xEC) {
6839 if (yych <= 0xC1) {
6840 if (yych <= 0x7F) goto yy585;
6841 goto yy587;
6842 } else {
6843 if (yych <= 0xDF) goto yy590;
6844 if (yych <= 0xE0) goto yy591;
6845 goto yy592;
6846 }
6847 } else {
6848 if (yych <= 0xF0) {
6849 if (yych <= 0xED) goto yy593;
6850 if (yych <= 0xEF) goto yy592;
6851 goto yy594;
6852 } else {
6853 if (yych <= 0xF3) goto yy595;
6854 if (yych <= 0xF4) goto yy596;
6855 goto yy587;
6856 }
6857 }
6858 }
6859 yy600:
6860 yych = *++p;
6861 if (yybm[0+yych] & 128) {
6862 goto yy588;
6863 }
6864 if (yych <= 0xC1) {
6865 if (yych <= 'D') {
6866 if (yych <= 0x00) goto yy587;
6867 if (yych == '\n') goto yy587;
6868 goto yy585;
6869 } else {
6870 if (yych <= 'd') {
6871 if (yych <= 'E') goto yy603;
6872 goto yy585;
6873 } else {
6874 if (yych <= 'e') goto yy603;
6875 if (yych <= 0x7F) goto yy585;
6876 goto yy587;
6877 }
6878 }
6879 } else {
6880 if (yych <= 0xED) {
6881 if (yych <= 0xDF) goto yy590;
6882 if (yych <= 0xE0) goto yy591;
6883 if (yych <= 0xEC) goto yy592;
6884 goto yy593;
6885 } else {
6886 if (yych <= 0xF0) {
6887 if (yych <= 0xEF) goto yy592;
6888 goto yy594;
6889 } else {
6890 if (yych <= 0xF3) goto yy595;
6891 if (yych <= 0xF4) goto yy596;
6892 goto yy587;
6893 }
6894 }
6895 }
6896 yy601:
6897 yych = *++p;
6898 if (yybm[0+yych] & 128) {
6899 goto yy588;
6900 }
6901 if (yych <= 0xC1) {
6902 if (yych <= 'Q') {
6903 if (yych <= 0x00) goto yy587;
6904 if (yych == '\n') goto yy587;
6905 goto yy585;
6906 } else {
6907 if (yych <= 'q') {
6908 if (yych <= 'R') goto yy604;
6909 goto yy585;
6910 } else {
6911 if (yych <= 'r') goto yy604;
6912 if (yych <= 0x7F) goto yy585;
6913 goto yy587;
6914 }
6915 }
6916 } else {
6917 if (yych <= 0xED) {
6918 if (yych <= 0xDF) goto yy590;
6919 if (yych <= 0xE0) goto yy591;
6920 if (yych <= 0xEC) goto yy592;
6921 goto yy593;
6922 } else {
6923 if (yych <= 0xF0) {
6924 if (yych <= 0xEF) goto yy592;
6925 goto yy594;
6926 } else {
6927 if (yych <= 0xF3) goto yy595;
6928 if (yych <= 0xF4) goto yy596;
6929 goto yy587;
6930 }
6931 }
6932 }
6933 yy602:
6934 yych = *++p;
6935 if (yybm[0+yych] & 128) {
6936 goto yy588;
6937 }
6938 if (yych <= 0xC1) {
6939 if (yych <= 'X') {
6940 if (yych <= 0x00) goto yy587;
6941 if (yych == '\n') goto yy587;
6942 goto yy585;
6943 } else {
6944 if (yych <= 'x') {
6945 if (yych <= 'Y') goto yy605;
6946 goto yy585;
6947 } else {
6948 if (yych <= 'y') goto yy605;
6949 if (yych <= 0x7F) goto yy585;
6950 goto yy587;
6951 }
6952 }
6953 } else {
6954 if (yych <= 0xED) {
6955 if (yych <= 0xDF) goto yy590;
6956 if (yych <= 0xE0) goto yy591;
6957 if (yych <= 0xEC) goto yy592;
6958 goto yy593;
6959 } else {
6960 if (yych <= 0xF0) {
6961 if (yych <= 0xEF) goto yy592;
6962 goto yy594;
6963 } else {
6964 if (yych <= 0xF3) goto yy595;
6965 if (yych <= 0xF4) goto yy596;
6966 goto yy587;
6967 }
6968 }
6969 }
6970 yy603:
6971 yych = *++p;
6972 if (yybm[0+yych] & 128) {
6973 goto yy588;
6974 }
6975 if (yych <= 0xDF) {
6976 if (yych <= '=') {
6977 if (yych <= 0x00) goto yy587;
6978 if (yych == '\n') goto yy587;
6979 goto yy585;
6980 } else {
6981 if (yych <= '>') goto yy606;
6982 if (yych <= 0x7F) goto yy585;
6983 if (yych <= 0xC1) goto yy587;
6984 goto yy590;
6985 }
6986 } else {
6987 if (yych <= 0xEF) {
6988 if (yych <= 0xE0) goto yy591;
6989 if (yych == 0xED) goto yy593;
6990 goto yy592;
6991 } else {
6992 if (yych <= 0xF0) goto yy594;
6993 if (yych <= 0xF3) goto yy595;
6994 if (yych <= 0xF4) goto yy596;
6995 goto yy587;
6996 }
6997 }
6998 yy604:
6999 yych = *++p;
7000 if (yybm[0+yych] & 128) {
7001 goto yy588;
7002 }
7003 if (yych <= 0xC1) {
7004 if (yych <= 'H') {
7005 if (yych <= 0x00) goto yy587;
7006 if (yych == '\n') goto yy587;
7007 goto yy585;
7008 } else {
7009 if (yych <= 'h') {
7010 if (yych <= 'I') goto yy608;
7011 goto yy585;
7012 } else {
7013 if (yych <= 'i') goto yy608;
7014 if (yych <= 0x7F) goto yy585;
7015 goto yy587;
7016 }
7017 }
7018 } else {
7019 if (yych <= 0xED) {
7020 if (yych <= 0xDF) goto yy590;
7021 if (yych <= 0xE0) goto yy591;
7022 if (yych <= 0xEC) goto yy592;
7023 goto yy593;
7024 } else {
7025 if (yych <= 0xF0) {
7026 if (yych <= 0xEF) goto yy592;
7027 goto yy594;
7028 } else {
7029 if (yych <= 0xF3) goto yy595;
7030 if (yych <= 0xF4) goto yy596;
7031 goto yy587;
7032 }
7033 }
7034 }
7035 yy605:
7036 yych = *++p;
7037 if (yybm[0+yych] & 128) {
7038 goto yy588;
7039 }
7040 if (yych <= 0xC1) {
7041 if (yych <= 'K') {
7042 if (yych <= 0x00) goto yy587;
7043 if (yych == '\n') goto yy587;
7044 goto yy585;
7045 } else {
7046 if (yych <= 'k') {
7047 if (yych <= 'L') goto yy600;
7048 goto yy585;
7049 } else {
7050 if (yych <= 'l') goto yy600;
7051 if (yych <= 0x7F) goto yy585;
7052 goto yy587;
7053 }
7054 }
7055 } else {
7056 if (yych <= 0xED) {
7057 if (yych <= 0xDF) goto yy590;
7058 if (yych <= 0xE0) goto yy591;
7059 if (yych <= 0xEC) goto yy592;
7060 goto yy593;
7061 } else {
7062 if (yych <= 0xF0) {
7063 if (yych <= 0xEF) goto yy592;
7064 goto yy594;
7065 } else {
7066 if (yych <= 0xF3) goto yy595;
7067 if (yych <= 0xF4) goto yy596;
7068 goto yy587;
7069 }
7070 }
7071 }
7072 yy606:
7073 yyaccept = 1;
7074 yych = *(marker = ++p);
7075 if (yybm[0+yych] & 64) {
7076 goto yy585;
7077 }
7078 if (yych <= 0xEC) {
7079 if (yych <= 0xC1) {
7080 if (yych <= '\n') goto yy607;
7081 if (yych <= '<') goto yy588;
7082 } else {
7083 if (yych <= 0xDF) goto yy590;
7084 if (yych <= 0xE0) goto yy591;
7085 goto yy592;
7086 }
7087 } else {
7088 if (yych <= 0xF0) {
7089 if (yych <= 0xED) goto yy593;
7090 if (yych <= 0xEF) goto yy592;
7091 goto yy594;
7092 } else {
7093 if (yych <= 0xF3) goto yy595;
7094 if (yych <= 0xF4) goto yy596;
7095 }
7096 }
7097 yy607:
7098 { return (bufsize_t)(p - start); }
7099 yy608:
7100 yych = *++p;
7101 if (yybm[0+yych] & 128) {
7102 goto yy588;
7103 }
7104 if (yych <= 0xC1) {
7105 if (yych <= 'O') {
7106 if (yych <= 0x00) goto yy587;
7107 if (yych == '\n') goto yy587;
7108 goto yy585;
7109 } else {
7110 if (yych <= 'o') {
7111 if (yych >= 'Q') goto yy585;
7112 } else {
7113 if (yych <= 'p') goto yy609;
7114 if (yych <= 0x7F) goto yy585;
7115 goto yy587;
7116 }
7117 }
7118 } else {
7119 if (yych <= 0xED) {
7120 if (yych <= 0xDF) goto yy590;
7121 if (yych <= 0xE0) goto yy591;
7122 if (yych <= 0xEC) goto yy592;
7123 goto yy593;
7124 } else {
7125 if (yych <= 0xF0) {
7126 if (yych <= 0xEF) goto yy592;
7127 goto yy594;
7128 } else {
7129 if (yych <= 0xF3) goto yy595;
7130 if (yych <= 0xF4) goto yy596;
7131 goto yy587;
7132 }
7133 }
7134 }
7135 yy609:
7136 yych = *++p;
7137 if (yybm[0+yych] & 128) {
7138 goto yy588;
7139 }
7140 if (yych <= 0xC1) {
7141 if (yych <= 'S') {
7142 if (yych <= 0x00) goto yy587;
7143 if (yych == '\n') goto yy587;
7144 goto yy585;
7145 } else {
7146 if (yych <= 's') {
7147 if (yych <= 'T') goto yy603;
7148 goto yy585;
7149 } else {
7150 if (yych <= 't') goto yy603;
7151 if (yych <= 0x7F) goto yy585;
7152 goto yy587;
7153 }
7154 }
7155 } else {
7156 if (yych <= 0xED) {
7157 if (yych <= 0xDF) goto yy590;
7158 if (yych <= 0xE0) goto yy591;
7159 if (yych <= 0xEC) goto yy592;
7160 goto yy593;
7161 } else {
7162 if (yych <= 0xF0) {
7163 if (yych <= 0xEF) goto yy592;
7164 goto yy594;
7165 } else {
7166 if (yych <= 0xF3) goto yy595;
7167 if (yych <= 0xF4) goto yy596;
7168 goto yy587;
7169 }
7170 }
7171 }
7172 }
7173
7174 }
7175
7176 // Try to match an HTML block end line of type 2
_scan_html_block_end_2(const unsigned char * p)7177 bufsize_t _scan_html_block_end_2(const unsigned char *p)
7178 {
7179 const unsigned char *marker = NULL;
7180 const unsigned char *start = p;
7181
7182 {
7183 unsigned char yych;
7184 unsigned int yyaccept = 0;
7185 static const unsigned char yybm[] = {
7186 0, 64, 64, 64, 64, 64, 64, 64,
7187 64, 64, 0, 64, 64, 64, 64, 64,
7188 64, 64, 64, 64, 64, 64, 64, 64,
7189 64, 64, 64, 64, 64, 64, 64, 64,
7190 64, 64, 64, 64, 64, 64, 64, 64,
7191 64, 64, 64, 64, 64, 128, 64, 64,
7192 64, 64, 64, 64, 64, 64, 64, 64,
7193 64, 64, 64, 64, 64, 64, 64, 64,
7194 64, 64, 64, 64, 64, 64, 64, 64,
7195 64, 64, 64, 64, 64, 64, 64, 64,
7196 64, 64, 64, 64, 64, 64, 64, 64,
7197 64, 64, 64, 64, 64, 64, 64, 64,
7198 64, 64, 64, 64, 64, 64, 64, 64,
7199 64, 64, 64, 64, 64, 64, 64, 64,
7200 64, 64, 64, 64, 64, 64, 64, 64,
7201 64, 64, 64, 64, 64, 64, 64, 64,
7202 0, 0, 0, 0, 0, 0, 0, 0,
7203 0, 0, 0, 0, 0, 0, 0, 0,
7204 0, 0, 0, 0, 0, 0, 0, 0,
7205 0, 0, 0, 0, 0, 0, 0, 0,
7206 0, 0, 0, 0, 0, 0, 0, 0,
7207 0, 0, 0, 0, 0, 0, 0, 0,
7208 0, 0, 0, 0, 0, 0, 0, 0,
7209 0, 0, 0, 0, 0, 0, 0, 0,
7210 0, 0, 0, 0, 0, 0, 0, 0,
7211 0, 0, 0, 0, 0, 0, 0, 0,
7212 0, 0, 0, 0, 0, 0, 0, 0,
7213 0, 0, 0, 0, 0, 0, 0, 0,
7214 0, 0, 0, 0, 0, 0, 0, 0,
7215 0, 0, 0, 0, 0, 0, 0, 0,
7216 0, 0, 0, 0, 0, 0, 0, 0,
7217 0, 0, 0, 0, 0, 0, 0, 0,
7218 };
7219 yych = *p;
7220 if (yych <= 0xDF) {
7221 if (yych <= ',') {
7222 if (yych <= 0x00) goto yy612;
7223 if (yych != '\n') goto yy614;
7224 } else {
7225 if (yych <= '-') goto yy615;
7226 if (yych <= 0x7F) goto yy614;
7227 if (yych >= 0xC2) goto yy616;
7228 }
7229 } else {
7230 if (yych <= 0xEF) {
7231 if (yych <= 0xE0) goto yy617;
7232 if (yych == 0xED) goto yy619;
7233 goto yy618;
7234 } else {
7235 if (yych <= 0xF0) goto yy620;
7236 if (yych <= 0xF3) goto yy621;
7237 if (yych <= 0xF4) goto yy622;
7238 }
7239 }
7240 yy612:
7241 ++p;
7242 yy613:
7243 { return 0; }
7244 yy614:
7245 yyaccept = 0;
7246 yych = *(marker = ++p);
7247 if (yych <= '\n') {
7248 if (yych <= 0x00) goto yy613;
7249 if (yych <= '\t') goto yy624;
7250 goto yy613;
7251 } else {
7252 if (yych <= 0x7F) goto yy624;
7253 if (yych <= 0xC1) goto yy613;
7254 if (yych <= 0xF4) goto yy624;
7255 goto yy613;
7256 }
7257 yy615:
7258 yyaccept = 0;
7259 yych = *(marker = ++p);
7260 if (yybm[0+yych] & 128) {
7261 goto yy634;
7262 }
7263 if (yych <= '\n') {
7264 if (yych <= 0x00) goto yy613;
7265 if (yych <= '\t') goto yy624;
7266 goto yy613;
7267 } else {
7268 if (yych <= 0x7F) goto yy624;
7269 if (yych <= 0xC1) goto yy613;
7270 if (yych <= 0xF4) goto yy624;
7271 goto yy613;
7272 }
7273 yy616:
7274 yyaccept = 0;
7275 yych = *(marker = ++p);
7276 if (yych <= 0x7F) goto yy613;
7277 if (yych <= 0xBF) goto yy623;
7278 goto yy613;
7279 yy617:
7280 yyaccept = 0;
7281 yych = *(marker = ++p);
7282 if (yych <= 0x9F) goto yy613;
7283 if (yych <= 0xBF) goto yy627;
7284 goto yy613;
7285 yy618:
7286 yyaccept = 0;
7287 yych = *(marker = ++p);
7288 if (yych <= 0x7F) goto yy613;
7289 if (yych <= 0xBF) goto yy627;
7290 goto yy613;
7291 yy619:
7292 yyaccept = 0;
7293 yych = *(marker = ++p);
7294 if (yych <= 0x7F) goto yy613;
7295 if (yych <= 0x9F) goto yy627;
7296 goto yy613;
7297 yy620:
7298 yyaccept = 0;
7299 yych = *(marker = ++p);
7300 if (yych <= 0x8F) goto yy613;
7301 if (yych <= 0xBF) goto yy629;
7302 goto yy613;
7303 yy621:
7304 yyaccept = 0;
7305 yych = *(marker = ++p);
7306 if (yych <= 0x7F) goto yy613;
7307 if (yych <= 0xBF) goto yy629;
7308 goto yy613;
7309 yy622:
7310 yyaccept = 0;
7311 yych = *(marker = ++p);
7312 if (yych <= 0x7F) goto yy613;
7313 if (yych <= 0x8F) goto yy629;
7314 goto yy613;
7315 yy623:
7316 yych = *++p;
7317 yy624:
7318 if (yybm[0+yych] & 64) {
7319 goto yy623;
7320 }
7321 if (yych <= 0xEC) {
7322 if (yych <= 0xC1) {
7323 if (yych <= '\n') goto yy625;
7324 if (yych <= '-') goto yy626;
7325 } else {
7326 if (yych <= 0xDF) goto yy627;
7327 if (yych <= 0xE0) goto yy628;
7328 goto yy629;
7329 }
7330 } else {
7331 if (yych <= 0xF0) {
7332 if (yych <= 0xED) goto yy630;
7333 if (yych <= 0xEF) goto yy629;
7334 goto yy631;
7335 } else {
7336 if (yych <= 0xF3) goto yy632;
7337 if (yych <= 0xF4) goto yy633;
7338 }
7339 }
7340 yy625:
7341 p = marker;
7342 if (yyaccept == 0) {
7343 goto yy613;
7344 } else {
7345 goto yy637;
7346 }
7347 yy626:
7348 yych = *++p;
7349 if (yybm[0+yych] & 64) {
7350 goto yy623;
7351 }
7352 if (yych <= 0xEC) {
7353 if (yych <= 0xC1) {
7354 if (yych <= '\n') goto yy625;
7355 if (yych <= '-') goto yy634;
7356 goto yy625;
7357 } else {
7358 if (yych <= 0xDF) goto yy627;
7359 if (yych <= 0xE0) goto yy628;
7360 goto yy629;
7361 }
7362 } else {
7363 if (yych <= 0xF0) {
7364 if (yych <= 0xED) goto yy630;
7365 if (yych <= 0xEF) goto yy629;
7366 goto yy631;
7367 } else {
7368 if (yych <= 0xF3) goto yy632;
7369 if (yych <= 0xF4) goto yy633;
7370 goto yy625;
7371 }
7372 }
7373 yy627:
7374 yych = *++p;
7375 if (yych <= 0x7F) goto yy625;
7376 if (yych <= 0xBF) goto yy623;
7377 goto yy625;
7378 yy628:
7379 yych = *++p;
7380 if (yych <= 0x9F) goto yy625;
7381 if (yych <= 0xBF) goto yy627;
7382 goto yy625;
7383 yy629:
7384 yych = *++p;
7385 if (yych <= 0x7F) goto yy625;
7386 if (yych <= 0xBF) goto yy627;
7387 goto yy625;
7388 yy630:
7389 yych = *++p;
7390 if (yych <= 0x7F) goto yy625;
7391 if (yych <= 0x9F) goto yy627;
7392 goto yy625;
7393 yy631:
7394 yych = *++p;
7395 if (yych <= 0x8F) goto yy625;
7396 if (yych <= 0xBF) goto yy629;
7397 goto yy625;
7398 yy632:
7399 yych = *++p;
7400 if (yych <= 0x7F) goto yy625;
7401 if (yych <= 0xBF) goto yy629;
7402 goto yy625;
7403 yy633:
7404 yych = *++p;
7405 if (yych <= 0x7F) goto yy625;
7406 if (yych <= 0x8F) goto yy629;
7407 goto yy625;
7408 yy634:
7409 yych = *++p;
7410 if (yybm[0+yych] & 128) {
7411 goto yy634;
7412 }
7413 if (yych <= 0xDF) {
7414 if (yych <= '=') {
7415 if (yych <= 0x00) goto yy625;
7416 if (yych == '\n') goto yy625;
7417 goto yy623;
7418 } else {
7419 if (yych <= '>') goto yy636;
7420 if (yych <= 0x7F) goto yy623;
7421 if (yych <= 0xC1) goto yy625;
7422 goto yy627;
7423 }
7424 } else {
7425 if (yych <= 0xEF) {
7426 if (yych <= 0xE0) goto yy628;
7427 if (yych == 0xED) goto yy630;
7428 goto yy629;
7429 } else {
7430 if (yych <= 0xF0) goto yy631;
7431 if (yych <= 0xF3) goto yy632;
7432 if (yych <= 0xF4) goto yy633;
7433 goto yy625;
7434 }
7435 }
7436 yy636:
7437 yyaccept = 1;
7438 yych = *(marker = ++p);
7439 if (yybm[0+yych] & 64) {
7440 goto yy623;
7441 }
7442 if (yych <= 0xEC) {
7443 if (yych <= 0xC1) {
7444 if (yych <= '\n') goto yy637;
7445 if (yych <= '-') goto yy626;
7446 } else {
7447 if (yych <= 0xDF) goto yy627;
7448 if (yych <= 0xE0) goto yy628;
7449 goto yy629;
7450 }
7451 } else {
7452 if (yych <= 0xF0) {
7453 if (yych <= 0xED) goto yy630;
7454 if (yych <= 0xEF) goto yy629;
7455 goto yy631;
7456 } else {
7457 if (yych <= 0xF3) goto yy632;
7458 if (yych <= 0xF4) goto yy633;
7459 }
7460 }
7461 yy637:
7462 { return (bufsize_t)(p - start); }
7463 }
7464
7465 }
7466
7467 // Try to match an HTML block end line of type 3
_scan_html_block_end_3(const unsigned char * p)7468 bufsize_t _scan_html_block_end_3(const unsigned char *p)
7469 {
7470 const unsigned char *marker = NULL;
7471 const unsigned char *start = p;
7472
7473 {
7474 unsigned char yych;
7475 unsigned int yyaccept = 0;
7476 static const unsigned char yybm[] = {
7477 0, 64, 64, 64, 64, 64, 64, 64,
7478 64, 64, 0, 64, 64, 64, 64, 64,
7479 64, 64, 64, 64, 64, 64, 64, 64,
7480 64, 64, 64, 64, 64, 64, 64, 64,
7481 64, 64, 64, 64, 64, 64, 64, 64,
7482 64, 64, 64, 64, 64, 64, 64, 64,
7483 64, 64, 64, 64, 64, 64, 64, 64,
7484 64, 64, 64, 64, 64, 64, 64, 128,
7485 64, 64, 64, 64, 64, 64, 64, 64,
7486 64, 64, 64, 64, 64, 64, 64, 64,
7487 64, 64, 64, 64, 64, 64, 64, 64,
7488 64, 64, 64, 64, 64, 64, 64, 64,
7489 64, 64, 64, 64, 64, 64, 64, 64,
7490 64, 64, 64, 64, 64, 64, 64, 64,
7491 64, 64, 64, 64, 64, 64, 64, 64,
7492 64, 64, 64, 64, 64, 64, 64, 64,
7493 0, 0, 0, 0, 0, 0, 0, 0,
7494 0, 0, 0, 0, 0, 0, 0, 0,
7495 0, 0, 0, 0, 0, 0, 0, 0,
7496 0, 0, 0, 0, 0, 0, 0, 0,
7497 0, 0, 0, 0, 0, 0, 0, 0,
7498 0, 0, 0, 0, 0, 0, 0, 0,
7499 0, 0, 0, 0, 0, 0, 0, 0,
7500 0, 0, 0, 0, 0, 0, 0, 0,
7501 0, 0, 0, 0, 0, 0, 0, 0,
7502 0, 0, 0, 0, 0, 0, 0, 0,
7503 0, 0, 0, 0, 0, 0, 0, 0,
7504 0, 0, 0, 0, 0, 0, 0, 0,
7505 0, 0, 0, 0, 0, 0, 0, 0,
7506 0, 0, 0, 0, 0, 0, 0, 0,
7507 0, 0, 0, 0, 0, 0, 0, 0,
7508 0, 0, 0, 0, 0, 0, 0, 0,
7509 };
7510 yych = *p;
7511 if (yych <= 0xDF) {
7512 if (yych <= '>') {
7513 if (yych <= 0x00) goto yy640;
7514 if (yych != '\n') goto yy642;
7515 } else {
7516 if (yych <= '?') goto yy643;
7517 if (yych <= 0x7F) goto yy642;
7518 if (yych >= 0xC2) goto yy644;
7519 }
7520 } else {
7521 if (yych <= 0xEF) {
7522 if (yych <= 0xE0) goto yy645;
7523 if (yych == 0xED) goto yy647;
7524 goto yy646;
7525 } else {
7526 if (yych <= 0xF0) goto yy648;
7527 if (yych <= 0xF3) goto yy649;
7528 if (yych <= 0xF4) goto yy650;
7529 }
7530 }
7531 yy640:
7532 ++p;
7533 yy641:
7534 { return 0; }
7535 yy642:
7536 yyaccept = 0;
7537 yych = *(marker = ++p);
7538 if (yych <= '\n') {
7539 if (yych <= 0x00) goto yy641;
7540 if (yych <= '\t') goto yy652;
7541 goto yy641;
7542 } else {
7543 if (yych <= 0x7F) goto yy652;
7544 if (yych <= 0xC1) goto yy641;
7545 if (yych <= 0xF4) goto yy652;
7546 goto yy641;
7547 }
7548 yy643:
7549 yyaccept = 0;
7550 yych = *(marker = ++p);
7551 if (yych <= '=') {
7552 if (yych <= 0x00) goto yy641;
7553 if (yych == '\n') goto yy641;
7554 goto yy652;
7555 } else {
7556 if (yych <= 0x7F) {
7557 if (yych <= '>') goto yy663;
7558 goto yy652;
7559 } else {
7560 if (yych <= 0xC1) goto yy641;
7561 if (yych <= 0xF4) goto yy652;
7562 goto yy641;
7563 }
7564 }
7565 yy644:
7566 yyaccept = 0;
7567 yych = *(marker = ++p);
7568 if (yych <= 0x7F) goto yy641;
7569 if (yych <= 0xBF) goto yy651;
7570 goto yy641;
7571 yy645:
7572 yyaccept = 0;
7573 yych = *(marker = ++p);
7574 if (yych <= 0x9F) goto yy641;
7575 if (yych <= 0xBF) goto yy656;
7576 goto yy641;
7577 yy646:
7578 yyaccept = 0;
7579 yych = *(marker = ++p);
7580 if (yych <= 0x7F) goto yy641;
7581 if (yych <= 0xBF) goto yy656;
7582 goto yy641;
7583 yy647:
7584 yyaccept = 0;
7585 yych = *(marker = ++p);
7586 if (yych <= 0x7F) goto yy641;
7587 if (yych <= 0x9F) goto yy656;
7588 goto yy641;
7589 yy648:
7590 yyaccept = 0;
7591 yych = *(marker = ++p);
7592 if (yych <= 0x8F) goto yy641;
7593 if (yych <= 0xBF) goto yy658;
7594 goto yy641;
7595 yy649:
7596 yyaccept = 0;
7597 yych = *(marker = ++p);
7598 if (yych <= 0x7F) goto yy641;
7599 if (yych <= 0xBF) goto yy658;
7600 goto yy641;
7601 yy650:
7602 yyaccept = 0;
7603 yych = *(marker = ++p);
7604 if (yych <= 0x7F) goto yy641;
7605 if (yych <= 0x8F) goto yy658;
7606 goto yy641;
7607 yy651:
7608 yych = *++p;
7609 yy652:
7610 if (yybm[0+yych] & 64) {
7611 goto yy651;
7612 }
7613 if (yych <= 0xEC) {
7614 if (yych <= 0xC1) {
7615 if (yych <= '\n') goto yy653;
7616 if (yych <= '?') goto yy654;
7617 } else {
7618 if (yych <= 0xDF) goto yy656;
7619 if (yych <= 0xE0) goto yy657;
7620 goto yy658;
7621 }
7622 } else {
7623 if (yych <= 0xF0) {
7624 if (yych <= 0xED) goto yy659;
7625 if (yych <= 0xEF) goto yy658;
7626 goto yy660;
7627 } else {
7628 if (yych <= 0xF3) goto yy661;
7629 if (yych <= 0xF4) goto yy662;
7630 }
7631 }
7632 yy653:
7633 p = marker;
7634 if (yyaccept == 0) {
7635 goto yy641;
7636 } else {
7637 goto yy664;
7638 }
7639 yy654:
7640 yych = *++p;
7641 if (yybm[0+yych] & 128) {
7642 goto yy654;
7643 }
7644 if (yych <= 0xDF) {
7645 if (yych <= '=') {
7646 if (yych <= 0x00) goto yy653;
7647 if (yych == '\n') goto yy653;
7648 goto yy651;
7649 } else {
7650 if (yych <= '>') goto yy663;
7651 if (yych <= 0x7F) goto yy651;
7652 if (yych <= 0xC1) goto yy653;
7653 }
7654 } else {
7655 if (yych <= 0xEF) {
7656 if (yych <= 0xE0) goto yy657;
7657 if (yych == 0xED) goto yy659;
7658 goto yy658;
7659 } else {
7660 if (yych <= 0xF0) goto yy660;
7661 if (yych <= 0xF3) goto yy661;
7662 if (yych <= 0xF4) goto yy662;
7663 goto yy653;
7664 }
7665 }
7666 yy656:
7667 yych = *++p;
7668 if (yych <= 0x7F) goto yy653;
7669 if (yych <= 0xBF) goto yy651;
7670 goto yy653;
7671 yy657:
7672 yych = *++p;
7673 if (yych <= 0x9F) goto yy653;
7674 if (yych <= 0xBF) goto yy656;
7675 goto yy653;
7676 yy658:
7677 yych = *++p;
7678 if (yych <= 0x7F) goto yy653;
7679 if (yych <= 0xBF) goto yy656;
7680 goto yy653;
7681 yy659:
7682 yych = *++p;
7683 if (yych <= 0x7F) goto yy653;
7684 if (yych <= 0x9F) goto yy656;
7685 goto yy653;
7686 yy660:
7687 yych = *++p;
7688 if (yych <= 0x8F) goto yy653;
7689 if (yych <= 0xBF) goto yy658;
7690 goto yy653;
7691 yy661:
7692 yych = *++p;
7693 if (yych <= 0x7F) goto yy653;
7694 if (yych <= 0xBF) goto yy658;
7695 goto yy653;
7696 yy662:
7697 yych = *++p;
7698 if (yych <= 0x7F) goto yy653;
7699 if (yych <= 0x8F) goto yy658;
7700 goto yy653;
7701 yy663:
7702 yyaccept = 1;
7703 yych = *(marker = ++p);
7704 if (yybm[0+yych] & 64) {
7705 goto yy651;
7706 }
7707 if (yych <= 0xEC) {
7708 if (yych <= 0xC1) {
7709 if (yych <= '\n') goto yy664;
7710 if (yych <= '?') goto yy654;
7711 } else {
7712 if (yych <= 0xDF) goto yy656;
7713 if (yych <= 0xE0) goto yy657;
7714 goto yy658;
7715 }
7716 } else {
7717 if (yych <= 0xF0) {
7718 if (yych <= 0xED) goto yy659;
7719 if (yych <= 0xEF) goto yy658;
7720 goto yy660;
7721 } else {
7722 if (yych <= 0xF3) goto yy661;
7723 if (yych <= 0xF4) goto yy662;
7724 }
7725 }
7726 yy664:
7727 { return (bufsize_t)(p - start); }
7728 }
7729
7730 }
7731
7732 // Try to match an HTML block end line of type 4
_scan_html_block_end_4(const unsigned char * p)7733 bufsize_t _scan_html_block_end_4(const unsigned char *p)
7734 {
7735 const unsigned char *marker = NULL;
7736 const unsigned char *start = p;
7737
7738 {
7739 unsigned char yych;
7740 unsigned int yyaccept = 0;
7741 static const unsigned char yybm[] = {
7742 0, 128, 128, 128, 128, 128, 128, 128,
7743 128, 128, 0, 128, 128, 128, 128, 128,
7744 128, 128, 128, 128, 128, 128, 128, 128,
7745 128, 128, 128, 128, 128, 128, 128, 128,
7746 128, 128, 128, 128, 128, 128, 128, 128,
7747 128, 128, 128, 128, 128, 128, 128, 128,
7748 128, 128, 128, 128, 128, 128, 128, 128,
7749 128, 128, 128, 128, 128, 128, 64, 128,
7750 128, 128, 128, 128, 128, 128, 128, 128,
7751 128, 128, 128, 128, 128, 128, 128, 128,
7752 128, 128, 128, 128, 128, 128, 128, 128,
7753 128, 128, 128, 128, 128, 128, 128, 128,
7754 128, 128, 128, 128, 128, 128, 128, 128,
7755 128, 128, 128, 128, 128, 128, 128, 128,
7756 128, 128, 128, 128, 128, 128, 128, 128,
7757 128, 128, 128, 128, 128, 128, 128, 128,
7758 0, 0, 0, 0, 0, 0, 0, 0,
7759 0, 0, 0, 0, 0, 0, 0, 0,
7760 0, 0, 0, 0, 0, 0, 0, 0,
7761 0, 0, 0, 0, 0, 0, 0, 0,
7762 0, 0, 0, 0, 0, 0, 0, 0,
7763 0, 0, 0, 0, 0, 0, 0, 0,
7764 0, 0, 0, 0, 0, 0, 0, 0,
7765 0, 0, 0, 0, 0, 0, 0, 0,
7766 0, 0, 0, 0, 0, 0, 0, 0,
7767 0, 0, 0, 0, 0, 0, 0, 0,
7768 0, 0, 0, 0, 0, 0, 0, 0,
7769 0, 0, 0, 0, 0, 0, 0, 0,
7770 0, 0, 0, 0, 0, 0, 0, 0,
7771 0, 0, 0, 0, 0, 0, 0, 0,
7772 0, 0, 0, 0, 0, 0, 0, 0,
7773 0, 0, 0, 0, 0, 0, 0, 0,
7774 };
7775 yych = *p;
7776 if (yybm[0+yych] & 64) {
7777 goto yy670;
7778 }
7779 if (yych <= 0xE0) {
7780 if (yych <= '\n') {
7781 if (yych <= 0x00) goto yy667;
7782 if (yych <= '\t') goto yy669;
7783 } else {
7784 if (yych <= 0x7F) goto yy669;
7785 if (yych <= 0xC1) goto yy667;
7786 if (yych <= 0xDF) goto yy673;
7787 goto yy674;
7788 }
7789 } else {
7790 if (yych <= 0xEF) {
7791 if (yych == 0xED) goto yy676;
7792 goto yy675;
7793 } else {
7794 if (yych <= 0xF0) goto yy677;
7795 if (yych <= 0xF3) goto yy678;
7796 if (yych <= 0xF4) goto yy679;
7797 }
7798 }
7799 yy667:
7800 ++p;
7801 yy668:
7802 { return 0; }
7803 yy669:
7804 yyaccept = 0;
7805 yych = *(marker = ++p);
7806 if (yych <= '\n') {
7807 if (yych <= 0x00) goto yy668;
7808 if (yych <= '\t') goto yy681;
7809 goto yy668;
7810 } else {
7811 if (yych <= 0x7F) goto yy681;
7812 if (yych <= 0xC1) goto yy668;
7813 if (yych <= 0xF4) goto yy681;
7814 goto yy668;
7815 }
7816 yy670:
7817 yyaccept = 1;
7818 yych = *(marker = ++p);
7819 if (yybm[0+yych] & 128) {
7820 goto yy680;
7821 }
7822 if (yych <= 0xEC) {
7823 if (yych <= 0xC1) {
7824 if (yych <= '\n') goto yy672;
7825 if (yych <= '>') goto yy670;
7826 } else {
7827 if (yych <= 0xDF) goto yy683;
7828 if (yych <= 0xE0) goto yy684;
7829 goto yy685;
7830 }
7831 } else {
7832 if (yych <= 0xF0) {
7833 if (yych <= 0xED) goto yy686;
7834 if (yych <= 0xEF) goto yy685;
7835 goto yy687;
7836 } else {
7837 if (yych <= 0xF3) goto yy688;
7838 if (yych <= 0xF4) goto yy689;
7839 }
7840 }
7841 yy672:
7842 { return (bufsize_t)(p - start); }
7843 yy673:
7844 yyaccept = 0;
7845 yych = *(marker = ++p);
7846 if (yych <= 0x7F) goto yy668;
7847 if (yych <= 0xBF) goto yy680;
7848 goto yy668;
7849 yy674:
7850 yyaccept = 0;
7851 yych = *(marker = ++p);
7852 if (yych <= 0x9F) goto yy668;
7853 if (yych <= 0xBF) goto yy683;
7854 goto yy668;
7855 yy675:
7856 yyaccept = 0;
7857 yych = *(marker = ++p);
7858 if (yych <= 0x7F) goto yy668;
7859 if (yych <= 0xBF) goto yy683;
7860 goto yy668;
7861 yy676:
7862 yyaccept = 0;
7863 yych = *(marker = ++p);
7864 if (yych <= 0x7F) goto yy668;
7865 if (yych <= 0x9F) goto yy683;
7866 goto yy668;
7867 yy677:
7868 yyaccept = 0;
7869 yych = *(marker = ++p);
7870 if (yych <= 0x8F) goto yy668;
7871 if (yych <= 0xBF) goto yy685;
7872 goto yy668;
7873 yy678:
7874 yyaccept = 0;
7875 yych = *(marker = ++p);
7876 if (yych <= 0x7F) goto yy668;
7877 if (yych <= 0xBF) goto yy685;
7878 goto yy668;
7879 yy679:
7880 yyaccept = 0;
7881 yych = *(marker = ++p);
7882 if (yych <= 0x7F) goto yy668;
7883 if (yych <= 0x8F) goto yy685;
7884 goto yy668;
7885 yy680:
7886 yych = *++p;
7887 yy681:
7888 if (yybm[0+yych] & 128) {
7889 goto yy680;
7890 }
7891 if (yych <= 0xEC) {
7892 if (yych <= 0xC1) {
7893 if (yych <= '\n') goto yy682;
7894 if (yych <= '>') goto yy670;
7895 } else {
7896 if (yych <= 0xDF) goto yy683;
7897 if (yych <= 0xE0) goto yy684;
7898 goto yy685;
7899 }
7900 } else {
7901 if (yych <= 0xF0) {
7902 if (yych <= 0xED) goto yy686;
7903 if (yych <= 0xEF) goto yy685;
7904 goto yy687;
7905 } else {
7906 if (yych <= 0xF3) goto yy688;
7907 if (yych <= 0xF4) goto yy689;
7908 }
7909 }
7910 yy682:
7911 p = marker;
7912 if (yyaccept == 0) {
7913 goto yy668;
7914 } else {
7915 goto yy672;
7916 }
7917 yy683:
7918 yych = *++p;
7919 if (yych <= 0x7F) goto yy682;
7920 if (yych <= 0xBF) goto yy680;
7921 goto yy682;
7922 yy684:
7923 yych = *++p;
7924 if (yych <= 0x9F) goto yy682;
7925 if (yych <= 0xBF) goto yy683;
7926 goto yy682;
7927 yy685:
7928 yych = *++p;
7929 if (yych <= 0x7F) goto yy682;
7930 if (yych <= 0xBF) goto yy683;
7931 goto yy682;
7932 yy686:
7933 yych = *++p;
7934 if (yych <= 0x7F) goto yy682;
7935 if (yych <= 0x9F) goto yy683;
7936 goto yy682;
7937 yy687:
7938 yych = *++p;
7939 if (yych <= 0x8F) goto yy682;
7940 if (yych <= 0xBF) goto yy685;
7941 goto yy682;
7942 yy688:
7943 yych = *++p;
7944 if (yych <= 0x7F) goto yy682;
7945 if (yych <= 0xBF) goto yy685;
7946 goto yy682;
7947 yy689:
7948 yych = *++p;
7949 if (yych <= 0x7F) goto yy682;
7950 if (yych <= 0x8F) goto yy685;
7951 goto yy682;
7952 }
7953
7954 }
7955
7956 // Try to match an HTML block end line of type 5
_scan_html_block_end_5(const unsigned char * p)7957 bufsize_t _scan_html_block_end_5(const unsigned char *p)
7958 {
7959 const unsigned char *marker = NULL;
7960 const unsigned char *start = p;
7961
7962 {
7963 unsigned char yych;
7964 unsigned int yyaccept = 0;
7965 static const unsigned char yybm[] = {
7966 0, 64, 64, 64, 64, 64, 64, 64,
7967 64, 64, 0, 64, 64, 64, 64, 64,
7968 64, 64, 64, 64, 64, 64, 64, 64,
7969 64, 64, 64, 64, 64, 64, 64, 64,
7970 64, 64, 64, 64, 64, 64, 64, 64,
7971 64, 64, 64, 64, 64, 64, 64, 64,
7972 64, 64, 64, 64, 64, 64, 64, 64,
7973 64, 64, 64, 64, 64, 64, 64, 64,
7974 64, 64, 64, 64, 64, 64, 64, 64,
7975 64, 64, 64, 64, 64, 64, 64, 64,
7976 64, 64, 64, 64, 64, 64, 64, 64,
7977 64, 64, 64, 64, 64, 128, 64, 64,
7978 64, 64, 64, 64, 64, 64, 64, 64,
7979 64, 64, 64, 64, 64, 64, 64, 64,
7980 64, 64, 64, 64, 64, 64, 64, 64,
7981 64, 64, 64, 64, 64, 64, 64, 64,
7982 0, 0, 0, 0, 0, 0, 0, 0,
7983 0, 0, 0, 0, 0, 0, 0, 0,
7984 0, 0, 0, 0, 0, 0, 0, 0,
7985 0, 0, 0, 0, 0, 0, 0, 0,
7986 0, 0, 0, 0, 0, 0, 0, 0,
7987 0, 0, 0, 0, 0, 0, 0, 0,
7988 0, 0, 0, 0, 0, 0, 0, 0,
7989 0, 0, 0, 0, 0, 0, 0, 0,
7990 0, 0, 0, 0, 0, 0, 0, 0,
7991 0, 0, 0, 0, 0, 0, 0, 0,
7992 0, 0, 0, 0, 0, 0, 0, 0,
7993 0, 0, 0, 0, 0, 0, 0, 0,
7994 0, 0, 0, 0, 0, 0, 0, 0,
7995 0, 0, 0, 0, 0, 0, 0, 0,
7996 0, 0, 0, 0, 0, 0, 0, 0,
7997 0, 0, 0, 0, 0, 0, 0, 0,
7998 };
7999 yych = *p;
8000 if (yych <= 0xDF) {
8001 if (yych <= '\\') {
8002 if (yych <= 0x00) goto yy692;
8003 if (yych != '\n') goto yy694;
8004 } else {
8005 if (yych <= ']') goto yy695;
8006 if (yych <= 0x7F) goto yy694;
8007 if (yych >= 0xC2) goto yy696;
8008 }
8009 } else {
8010 if (yych <= 0xEF) {
8011 if (yych <= 0xE0) goto yy697;
8012 if (yych == 0xED) goto yy699;
8013 goto yy698;
8014 } else {
8015 if (yych <= 0xF0) goto yy700;
8016 if (yych <= 0xF3) goto yy701;
8017 if (yych <= 0xF4) goto yy702;
8018 }
8019 }
8020 yy692:
8021 ++p;
8022 yy693:
8023 { return 0; }
8024 yy694:
8025 yyaccept = 0;
8026 yych = *(marker = ++p);
8027 if (yych <= '\n') {
8028 if (yych <= 0x00) goto yy693;
8029 if (yych <= '\t') goto yy704;
8030 goto yy693;
8031 } else {
8032 if (yych <= 0x7F) goto yy704;
8033 if (yych <= 0xC1) goto yy693;
8034 if (yych <= 0xF4) goto yy704;
8035 goto yy693;
8036 }
8037 yy695:
8038 yyaccept = 0;
8039 yych = *(marker = ++p);
8040 if (yybm[0+yych] & 128) {
8041 goto yy714;
8042 }
8043 if (yych <= '\n') {
8044 if (yych <= 0x00) goto yy693;
8045 if (yych <= '\t') goto yy704;
8046 goto yy693;
8047 } else {
8048 if (yych <= 0x7F) goto yy704;
8049 if (yych <= 0xC1) goto yy693;
8050 if (yych <= 0xF4) goto yy704;
8051 goto yy693;
8052 }
8053 yy696:
8054 yyaccept = 0;
8055 yych = *(marker = ++p);
8056 if (yych <= 0x7F) goto yy693;
8057 if (yych <= 0xBF) goto yy703;
8058 goto yy693;
8059 yy697:
8060 yyaccept = 0;
8061 yych = *(marker = ++p);
8062 if (yych <= 0x9F) goto yy693;
8063 if (yych <= 0xBF) goto yy707;
8064 goto yy693;
8065 yy698:
8066 yyaccept = 0;
8067 yych = *(marker = ++p);
8068 if (yych <= 0x7F) goto yy693;
8069 if (yych <= 0xBF) goto yy707;
8070 goto yy693;
8071 yy699:
8072 yyaccept = 0;
8073 yych = *(marker = ++p);
8074 if (yych <= 0x7F) goto yy693;
8075 if (yych <= 0x9F) goto yy707;
8076 goto yy693;
8077 yy700:
8078 yyaccept = 0;
8079 yych = *(marker = ++p);
8080 if (yych <= 0x8F) goto yy693;
8081 if (yych <= 0xBF) goto yy709;
8082 goto yy693;
8083 yy701:
8084 yyaccept = 0;
8085 yych = *(marker = ++p);
8086 if (yych <= 0x7F) goto yy693;
8087 if (yych <= 0xBF) goto yy709;
8088 goto yy693;
8089 yy702:
8090 yyaccept = 0;
8091 yych = *(marker = ++p);
8092 if (yych <= 0x7F) goto yy693;
8093 if (yych <= 0x8F) goto yy709;
8094 goto yy693;
8095 yy703:
8096 yych = *++p;
8097 yy704:
8098 if (yybm[0+yych] & 64) {
8099 goto yy703;
8100 }
8101 if (yych <= 0xEC) {
8102 if (yych <= 0xC1) {
8103 if (yych <= '\n') goto yy705;
8104 if (yych <= ']') goto yy706;
8105 } else {
8106 if (yych <= 0xDF) goto yy707;
8107 if (yych <= 0xE0) goto yy708;
8108 goto yy709;
8109 }
8110 } else {
8111 if (yych <= 0xF0) {
8112 if (yych <= 0xED) goto yy710;
8113 if (yych <= 0xEF) goto yy709;
8114 goto yy711;
8115 } else {
8116 if (yych <= 0xF3) goto yy712;
8117 if (yych <= 0xF4) goto yy713;
8118 }
8119 }
8120 yy705:
8121 p = marker;
8122 if (yyaccept == 0) {
8123 goto yy693;
8124 } else {
8125 goto yy717;
8126 }
8127 yy706:
8128 yych = *++p;
8129 if (yybm[0+yych] & 64) {
8130 goto yy703;
8131 }
8132 if (yych <= 0xEC) {
8133 if (yych <= 0xC1) {
8134 if (yych <= '\n') goto yy705;
8135 if (yych <= ']') goto yy714;
8136 goto yy705;
8137 } else {
8138 if (yych <= 0xDF) goto yy707;
8139 if (yych <= 0xE0) goto yy708;
8140 goto yy709;
8141 }
8142 } else {
8143 if (yych <= 0xF0) {
8144 if (yych <= 0xED) goto yy710;
8145 if (yych <= 0xEF) goto yy709;
8146 goto yy711;
8147 } else {
8148 if (yych <= 0xF3) goto yy712;
8149 if (yych <= 0xF4) goto yy713;
8150 goto yy705;
8151 }
8152 }
8153 yy707:
8154 yych = *++p;
8155 if (yych <= 0x7F) goto yy705;
8156 if (yych <= 0xBF) goto yy703;
8157 goto yy705;
8158 yy708:
8159 yych = *++p;
8160 if (yych <= 0x9F) goto yy705;
8161 if (yych <= 0xBF) goto yy707;
8162 goto yy705;
8163 yy709:
8164 yych = *++p;
8165 if (yych <= 0x7F) goto yy705;
8166 if (yych <= 0xBF) goto yy707;
8167 goto yy705;
8168 yy710:
8169 yych = *++p;
8170 if (yych <= 0x7F) goto yy705;
8171 if (yych <= 0x9F) goto yy707;
8172 goto yy705;
8173 yy711:
8174 yych = *++p;
8175 if (yych <= 0x8F) goto yy705;
8176 if (yych <= 0xBF) goto yy709;
8177 goto yy705;
8178 yy712:
8179 yych = *++p;
8180 if (yych <= 0x7F) goto yy705;
8181 if (yych <= 0xBF) goto yy709;
8182 goto yy705;
8183 yy713:
8184 yych = *++p;
8185 if (yych <= 0x7F) goto yy705;
8186 if (yych <= 0x8F) goto yy709;
8187 goto yy705;
8188 yy714:
8189 yych = *++p;
8190 if (yybm[0+yych] & 128) {
8191 goto yy714;
8192 }
8193 if (yych <= 0xDF) {
8194 if (yych <= '=') {
8195 if (yych <= 0x00) goto yy705;
8196 if (yych == '\n') goto yy705;
8197 goto yy703;
8198 } else {
8199 if (yych <= '>') goto yy716;
8200 if (yych <= 0x7F) goto yy703;
8201 if (yych <= 0xC1) goto yy705;
8202 goto yy707;
8203 }
8204 } else {
8205 if (yych <= 0xEF) {
8206 if (yych <= 0xE0) goto yy708;
8207 if (yych == 0xED) goto yy710;
8208 goto yy709;
8209 } else {
8210 if (yych <= 0xF0) goto yy711;
8211 if (yych <= 0xF3) goto yy712;
8212 if (yych <= 0xF4) goto yy713;
8213 goto yy705;
8214 }
8215 }
8216 yy716:
8217 yyaccept = 1;
8218 yych = *(marker = ++p);
8219 if (yybm[0+yych] & 64) {
8220 goto yy703;
8221 }
8222 if (yych <= 0xEC) {
8223 if (yych <= 0xC1) {
8224 if (yych <= '\n') goto yy717;
8225 if (yych <= ']') goto yy706;
8226 } else {
8227 if (yych <= 0xDF) goto yy707;
8228 if (yych <= 0xE0) goto yy708;
8229 goto yy709;
8230 }
8231 } else {
8232 if (yych <= 0xF0) {
8233 if (yych <= 0xED) goto yy710;
8234 if (yych <= 0xEF) goto yy709;
8235 goto yy711;
8236 } else {
8237 if (yych <= 0xF3) goto yy712;
8238 if (yych <= 0xF4) goto yy713;
8239 }
8240 }
8241 yy717:
8242 { return (bufsize_t)(p - start); }
8243 }
8244
8245 }
8246
8247 // Try to match a link title (in single quotes, in double quotes, or
8248 // in parentheses), returning number of chars matched. Allow one
8249 // level of internal nesting (quotes within quotes).
_scan_link_title(const unsigned char * p)8250 bufsize_t _scan_link_title(const unsigned char *p)
8251 {
8252 const unsigned char *marker = NULL;
8253 const unsigned char *start = p;
8254
8255 {
8256 unsigned char yych;
8257 unsigned int yyaccept = 0;
8258 static const unsigned char yybm[] = {
8259 0, 208, 208, 208, 208, 208, 208, 208,
8260 208, 208, 208, 208, 208, 208, 208, 208,
8261 208, 208, 208, 208, 208, 208, 208, 208,
8262 208, 208, 208, 208, 208, 208, 208, 208,
8263 208, 208, 192, 208, 208, 208, 208, 144,
8264 80, 80, 208, 208, 208, 208, 208, 208,
8265 208, 208, 208, 208, 208, 208, 208, 208,
8266 208, 208, 208, 208, 208, 208, 208, 208,
8267 208, 208, 208, 208, 208, 208, 208, 208,
8268 208, 208, 208, 208, 208, 208, 208, 208,
8269 208, 208, 208, 208, 208, 208, 208, 208,
8270 208, 208, 208, 208, 32, 208, 208, 208,
8271 208, 208, 208, 208, 208, 208, 208, 208,
8272 208, 208, 208, 208, 208, 208, 208, 208,
8273 208, 208, 208, 208, 208, 208, 208, 208,
8274 208, 208, 208, 208, 208, 208, 208, 208,
8275 0, 0, 0, 0, 0, 0, 0, 0,
8276 0, 0, 0, 0, 0, 0, 0, 0,
8277 0, 0, 0, 0, 0, 0, 0, 0,
8278 0, 0, 0, 0, 0, 0, 0, 0,
8279 0, 0, 0, 0, 0, 0, 0, 0,
8280 0, 0, 0, 0, 0, 0, 0, 0,
8281 0, 0, 0, 0, 0, 0, 0, 0,
8282 0, 0, 0, 0, 0, 0, 0, 0,
8283 0, 0, 0, 0, 0, 0, 0, 0,
8284 0, 0, 0, 0, 0, 0, 0, 0,
8285 0, 0, 0, 0, 0, 0, 0, 0,
8286 0, 0, 0, 0, 0, 0, 0, 0,
8287 0, 0, 0, 0, 0, 0, 0, 0,
8288 0, 0, 0, 0, 0, 0, 0, 0,
8289 0, 0, 0, 0, 0, 0, 0, 0,
8290 0, 0, 0, 0, 0, 0, 0, 0,
8291 };
8292 yych = *p;
8293 if (yych <= '&') {
8294 if (yych == '"') goto yy722;
8295 } else {
8296 if (yych <= '\'') goto yy723;
8297 if (yych <= '(') goto yy724;
8298 }
8299 ++p;
8300 yy721:
8301 { return 0; }
8302 yy722:
8303 yyaccept = 0;
8304 yych = *(marker = ++p);
8305 if (yych <= 0x00) goto yy721;
8306 if (yych <= 0x7F) goto yy726;
8307 if (yych <= 0xC1) goto yy721;
8308 if (yych <= 0xF4) goto yy726;
8309 goto yy721;
8310 yy723:
8311 yyaccept = 0;
8312 yych = *(marker = ++p);
8313 if (yych <= 0x00) goto yy721;
8314 if (yych <= 0x7F) goto yy740;
8315 if (yych <= 0xC1) goto yy721;
8316 if (yych <= 0xF4) goto yy740;
8317 goto yy721;
8318 yy724:
8319 yyaccept = 0;
8320 yych = *(marker = ++p);
8321 if (yych <= '(') {
8322 if (yych <= 0x00) goto yy721;
8323 if (yych <= '\'') goto yy753;
8324 goto yy721;
8325 } else {
8326 if (yych <= 0x7F) goto yy753;
8327 if (yych <= 0xC1) goto yy721;
8328 if (yych <= 0xF4) goto yy753;
8329 goto yy721;
8330 }
8331 yy725:
8332 yych = *++p;
8333 yy726:
8334 if (yybm[0+yych] & 16) {
8335 goto yy725;
8336 }
8337 if (yych <= 0xE0) {
8338 if (yych <= '\\') {
8339 if (yych <= 0x00) goto yy727;
8340 if (yych <= '"') goto yy728;
8341 goto yy730;
8342 } else {
8343 if (yych <= 0xC1) goto yy727;
8344 if (yych <= 0xDF) goto yy732;
8345 goto yy733;
8346 }
8347 } else {
8348 if (yych <= 0xEF) {
8349 if (yych == 0xED) goto yy735;
8350 goto yy734;
8351 } else {
8352 if (yych <= 0xF0) goto yy736;
8353 if (yych <= 0xF3) goto yy737;
8354 if (yych <= 0xF4) goto yy738;
8355 }
8356 }
8357 yy727:
8358 p = marker;
8359 if (yyaccept <= 1) {
8360 if (yyaccept == 0) {
8361 goto yy721;
8362 } else {
8363 goto yy729;
8364 }
8365 } else {
8366 if (yyaccept == 2) {
8367 goto yy742;
8368 } else {
8369 goto yy755;
8370 }
8371 }
8372 yy728:
8373 ++p;
8374 yy729:
8375 { return (bufsize_t)(p - start); }
8376 yy730:
8377 yych = *++p;
8378 if (yybm[0+yych] & 16) {
8379 goto yy725;
8380 }
8381 if (yych <= 0xE0) {
8382 if (yych <= '\\') {
8383 if (yych <= 0x00) goto yy727;
8384 if (yych <= '"') goto yy765;
8385 goto yy730;
8386 } else {
8387 if (yych <= 0xC1) goto yy727;
8388 if (yych >= 0xE0) goto yy733;
8389 }
8390 } else {
8391 if (yych <= 0xEF) {
8392 if (yych == 0xED) goto yy735;
8393 goto yy734;
8394 } else {
8395 if (yych <= 0xF0) goto yy736;
8396 if (yych <= 0xF3) goto yy737;
8397 if (yych <= 0xF4) goto yy738;
8398 goto yy727;
8399 }
8400 }
8401 yy732:
8402 yych = *++p;
8403 if (yych <= 0x7F) goto yy727;
8404 if (yych <= 0xBF) goto yy725;
8405 goto yy727;
8406 yy733:
8407 yych = *++p;
8408 if (yych <= 0x9F) goto yy727;
8409 if (yych <= 0xBF) goto yy732;
8410 goto yy727;
8411 yy734:
8412 yych = *++p;
8413 if (yych <= 0x7F) goto yy727;
8414 if (yych <= 0xBF) goto yy732;
8415 goto yy727;
8416 yy735:
8417 yych = *++p;
8418 if (yych <= 0x7F) goto yy727;
8419 if (yych <= 0x9F) goto yy732;
8420 goto yy727;
8421 yy736:
8422 yych = *++p;
8423 if (yych <= 0x8F) goto yy727;
8424 if (yych <= 0xBF) goto yy734;
8425 goto yy727;
8426 yy737:
8427 yych = *++p;
8428 if (yych <= 0x7F) goto yy727;
8429 if (yych <= 0xBF) goto yy734;
8430 goto yy727;
8431 yy738:
8432 yych = *++p;
8433 if (yych <= 0x7F) goto yy727;
8434 if (yych <= 0x8F) goto yy734;
8435 goto yy727;
8436 yy739:
8437 yych = *++p;
8438 yy740:
8439 if (yybm[0+yych] & 64) {
8440 goto yy739;
8441 }
8442 if (yych <= 0xE0) {
8443 if (yych <= '\\') {
8444 if (yych <= 0x00) goto yy727;
8445 if (yych >= '(') goto yy743;
8446 } else {
8447 if (yych <= 0xC1) goto yy727;
8448 if (yych <= 0xDF) goto yy745;
8449 goto yy746;
8450 }
8451 } else {
8452 if (yych <= 0xEF) {
8453 if (yych == 0xED) goto yy748;
8454 goto yy747;
8455 } else {
8456 if (yych <= 0xF0) goto yy749;
8457 if (yych <= 0xF3) goto yy750;
8458 if (yych <= 0xF4) goto yy751;
8459 goto yy727;
8460 }
8461 }
8462 yy741:
8463 ++p;
8464 yy742:
8465 { return (bufsize_t)(p - start); }
8466 yy743:
8467 yych = *++p;
8468 if (yybm[0+yych] & 64) {
8469 goto yy739;
8470 }
8471 if (yych <= 0xE0) {
8472 if (yych <= '\\') {
8473 if (yych <= 0x00) goto yy727;
8474 if (yych <= '\'') goto yy766;
8475 goto yy743;
8476 } else {
8477 if (yych <= 0xC1) goto yy727;
8478 if (yych >= 0xE0) goto yy746;
8479 }
8480 } else {
8481 if (yych <= 0xEF) {
8482 if (yych == 0xED) goto yy748;
8483 goto yy747;
8484 } else {
8485 if (yych <= 0xF0) goto yy749;
8486 if (yych <= 0xF3) goto yy750;
8487 if (yych <= 0xF4) goto yy751;
8488 goto yy727;
8489 }
8490 }
8491 yy745:
8492 yych = *++p;
8493 if (yych <= 0x7F) goto yy727;
8494 if (yych <= 0xBF) goto yy739;
8495 goto yy727;
8496 yy746:
8497 yych = *++p;
8498 if (yych <= 0x9F) goto yy727;
8499 if (yych <= 0xBF) goto yy745;
8500 goto yy727;
8501 yy747:
8502 yych = *++p;
8503 if (yych <= 0x7F) goto yy727;
8504 if (yych <= 0xBF) goto yy745;
8505 goto yy727;
8506 yy748:
8507 yych = *++p;
8508 if (yych <= 0x7F) goto yy727;
8509 if (yych <= 0x9F) goto yy745;
8510 goto yy727;
8511 yy749:
8512 yych = *++p;
8513 if (yych <= 0x8F) goto yy727;
8514 if (yych <= 0xBF) goto yy747;
8515 goto yy727;
8516 yy750:
8517 yych = *++p;
8518 if (yych <= 0x7F) goto yy727;
8519 if (yych <= 0xBF) goto yy747;
8520 goto yy727;
8521 yy751:
8522 yych = *++p;
8523 if (yych <= 0x7F) goto yy727;
8524 if (yych <= 0x8F) goto yy747;
8525 goto yy727;
8526 yy752:
8527 yych = *++p;
8528 yy753:
8529 if (yybm[0+yych] & 128) {
8530 goto yy752;
8531 }
8532 if (yych <= 0xE0) {
8533 if (yych <= '\\') {
8534 if (yych <= '(') goto yy727;
8535 if (yych >= '*') goto yy756;
8536 } else {
8537 if (yych <= 0xC1) goto yy727;
8538 if (yych <= 0xDF) goto yy758;
8539 goto yy759;
8540 }
8541 } else {
8542 if (yych <= 0xEF) {
8543 if (yych == 0xED) goto yy761;
8544 goto yy760;
8545 } else {
8546 if (yych <= 0xF0) goto yy762;
8547 if (yych <= 0xF3) goto yy763;
8548 if (yych <= 0xF4) goto yy764;
8549 goto yy727;
8550 }
8551 }
8552 yy754:
8553 ++p;
8554 yy755:
8555 { return (bufsize_t)(p - start); }
8556 yy756:
8557 yych = *++p;
8558 if (yych <= 0xDF) {
8559 if (yych <= '[') {
8560 if (yych <= 0x00) goto yy727;
8561 if (yych == ')') goto yy767;
8562 goto yy752;
8563 } else {
8564 if (yych <= '\\') goto yy756;
8565 if (yych <= 0x7F) goto yy752;
8566 if (yych <= 0xC1) goto yy727;
8567 }
8568 } else {
8569 if (yych <= 0xEF) {
8570 if (yych <= 0xE0) goto yy759;
8571 if (yych == 0xED) goto yy761;
8572 goto yy760;
8573 } else {
8574 if (yych <= 0xF0) goto yy762;
8575 if (yych <= 0xF3) goto yy763;
8576 if (yych <= 0xF4) goto yy764;
8577 goto yy727;
8578 }
8579 }
8580 yy758:
8581 yych = *++p;
8582 if (yych <= 0x7F) goto yy727;
8583 if (yych <= 0xBF) goto yy752;
8584 goto yy727;
8585 yy759:
8586 yych = *++p;
8587 if (yych <= 0x9F) goto yy727;
8588 if (yych <= 0xBF) goto yy758;
8589 goto yy727;
8590 yy760:
8591 yych = *++p;
8592 if (yych <= 0x7F) goto yy727;
8593 if (yych <= 0xBF) goto yy758;
8594 goto yy727;
8595 yy761:
8596 yych = *++p;
8597 if (yych <= 0x7F) goto yy727;
8598 if (yych <= 0x9F) goto yy758;
8599 goto yy727;
8600 yy762:
8601 yych = *++p;
8602 if (yych <= 0x8F) goto yy727;
8603 if (yych <= 0xBF) goto yy760;
8604 goto yy727;
8605 yy763:
8606 yych = *++p;
8607 if (yych <= 0x7F) goto yy727;
8608 if (yych <= 0xBF) goto yy760;
8609 goto yy727;
8610 yy764:
8611 yych = *++p;
8612 if (yych <= 0x7F) goto yy727;
8613 if (yych <= 0x8F) goto yy760;
8614 goto yy727;
8615 yy765:
8616 yyaccept = 1;
8617 yych = *(marker = ++p);
8618 if (yybm[0+yych] & 16) {
8619 goto yy725;
8620 }
8621 if (yych <= 0xE0) {
8622 if (yych <= '\\') {
8623 if (yych <= 0x00) goto yy729;
8624 if (yych <= '"') goto yy728;
8625 goto yy730;
8626 } else {
8627 if (yych <= 0xC1) goto yy729;
8628 if (yych <= 0xDF) goto yy732;
8629 goto yy733;
8630 }
8631 } else {
8632 if (yych <= 0xEF) {
8633 if (yych == 0xED) goto yy735;
8634 goto yy734;
8635 } else {
8636 if (yych <= 0xF0) goto yy736;
8637 if (yych <= 0xF3) goto yy737;
8638 if (yych <= 0xF4) goto yy738;
8639 goto yy729;
8640 }
8641 }
8642 yy766:
8643 yyaccept = 2;
8644 yych = *(marker = ++p);
8645 if (yybm[0+yych] & 64) {
8646 goto yy739;
8647 }
8648 if (yych <= 0xE0) {
8649 if (yych <= '\\') {
8650 if (yych <= 0x00) goto yy742;
8651 if (yych <= '\'') goto yy741;
8652 goto yy743;
8653 } else {
8654 if (yych <= 0xC1) goto yy742;
8655 if (yych <= 0xDF) goto yy745;
8656 goto yy746;
8657 }
8658 } else {
8659 if (yych <= 0xEF) {
8660 if (yych == 0xED) goto yy748;
8661 goto yy747;
8662 } else {
8663 if (yych <= 0xF0) goto yy749;
8664 if (yych <= 0xF3) goto yy750;
8665 if (yych <= 0xF4) goto yy751;
8666 goto yy742;
8667 }
8668 }
8669 yy767:
8670 yyaccept = 3;
8671 yych = *(marker = ++p);
8672 if (yybm[0+yych] & 128) {
8673 goto yy752;
8674 }
8675 if (yych <= 0xE0) {
8676 if (yych <= '\\') {
8677 if (yych <= '(') goto yy755;
8678 if (yych <= ')') goto yy754;
8679 goto yy756;
8680 } else {
8681 if (yych <= 0xC1) goto yy755;
8682 if (yych <= 0xDF) goto yy758;
8683 goto yy759;
8684 }
8685 } else {
8686 if (yych <= 0xEF) {
8687 if (yych == 0xED) goto yy761;
8688 goto yy760;
8689 } else {
8690 if (yych <= 0xF0) goto yy762;
8691 if (yych <= 0xF3) goto yy763;
8692 if (yych <= 0xF4) goto yy764;
8693 goto yy755;
8694 }
8695 }
8696 }
8697
8698 }
8699
8700 // Match space characters, including newlines.
_scan_spacechars(const unsigned char * p)8701 bufsize_t _scan_spacechars(const unsigned char *p)
8702 {
8703 const unsigned char *start = p; \
8704
8705 {
8706 unsigned char yych;
8707 static const unsigned char yybm[] = {
8708 0, 0, 0, 0, 0, 0, 0, 0,
8709 0, 128, 128, 128, 128, 128, 0, 0,
8710 0, 0, 0, 0, 0, 0, 0, 0,
8711 0, 0, 0, 0, 0, 0, 0, 0,
8712 128, 0, 0, 0, 0, 0, 0, 0,
8713 0, 0, 0, 0, 0, 0, 0, 0,
8714 0, 0, 0, 0, 0, 0, 0, 0,
8715 0, 0, 0, 0, 0, 0, 0, 0,
8716 0, 0, 0, 0, 0, 0, 0, 0,
8717 0, 0, 0, 0, 0, 0, 0, 0,
8718 0, 0, 0, 0, 0, 0, 0, 0,
8719 0, 0, 0, 0, 0, 0, 0, 0,
8720 0, 0, 0, 0, 0, 0, 0, 0,
8721 0, 0, 0, 0, 0, 0, 0, 0,
8722 0, 0, 0, 0, 0, 0, 0, 0,
8723 0, 0, 0, 0, 0, 0, 0, 0,
8724 0, 0, 0, 0, 0, 0, 0, 0,
8725 0, 0, 0, 0, 0, 0, 0, 0,
8726 0, 0, 0, 0, 0, 0, 0, 0,
8727 0, 0, 0, 0, 0, 0, 0, 0,
8728 0, 0, 0, 0, 0, 0, 0, 0,
8729 0, 0, 0, 0, 0, 0, 0, 0,
8730 0, 0, 0, 0, 0, 0, 0, 0,
8731 0, 0, 0, 0, 0, 0, 0, 0,
8732 0, 0, 0, 0, 0, 0, 0, 0,
8733 0, 0, 0, 0, 0, 0, 0, 0,
8734 0, 0, 0, 0, 0, 0, 0, 0,
8735 0, 0, 0, 0, 0, 0, 0, 0,
8736 0, 0, 0, 0, 0, 0, 0, 0,
8737 0, 0, 0, 0, 0, 0, 0, 0,
8738 0, 0, 0, 0, 0, 0, 0, 0,
8739 0, 0, 0, 0, 0, 0, 0, 0,
8740 };
8741 yych = *p;
8742 if (yybm[0+yych] & 128) {
8743 goto yy772;
8744 }
8745 ++p;
8746 { return 0; }
8747 yy772:
8748 yych = *++p;
8749 if (yybm[0+yych] & 128) {
8750 goto yy772;
8751 }
8752 { return (bufsize_t)(p - start); }
8753 }
8754
8755 }
8756
8757 // Match ATX heading start.
_scan_atx_heading_start(const unsigned char * p)8758 bufsize_t _scan_atx_heading_start(const unsigned char *p)
8759 {
8760 const unsigned char *marker = NULL;
8761 const unsigned char *start = p;
8762
8763 {
8764 unsigned char yych;
8765 static const unsigned char yybm[] = {
8766 0, 0, 0, 0, 0, 0, 0, 0,
8767 0, 128, 0, 0, 0, 0, 0, 0,
8768 0, 0, 0, 0, 0, 0, 0, 0,
8769 0, 0, 0, 0, 0, 0, 0, 0,
8770 128, 0, 0, 0, 0, 0, 0, 0,
8771 0, 0, 0, 0, 0, 0, 0, 0,
8772 0, 0, 0, 0, 0, 0, 0, 0,
8773 0, 0, 0, 0, 0, 0, 0, 0,
8774 0, 0, 0, 0, 0, 0, 0, 0,
8775 0, 0, 0, 0, 0, 0, 0, 0,
8776 0, 0, 0, 0, 0, 0, 0, 0,
8777 0, 0, 0, 0, 0, 0, 0, 0,
8778 0, 0, 0, 0, 0, 0, 0, 0,
8779 0, 0, 0, 0, 0, 0, 0, 0,
8780 0, 0, 0, 0, 0, 0, 0, 0,
8781 0, 0, 0, 0, 0, 0, 0, 0,
8782 0, 0, 0, 0, 0, 0, 0, 0,
8783 0, 0, 0, 0, 0, 0, 0, 0,
8784 0, 0, 0, 0, 0, 0, 0, 0,
8785 0, 0, 0, 0, 0, 0, 0, 0,
8786 0, 0, 0, 0, 0, 0, 0, 0,
8787 0, 0, 0, 0, 0, 0, 0, 0,
8788 0, 0, 0, 0, 0, 0, 0, 0,
8789 0, 0, 0, 0, 0, 0, 0, 0,
8790 0, 0, 0, 0, 0, 0, 0, 0,
8791 0, 0, 0, 0, 0, 0, 0, 0,
8792 0, 0, 0, 0, 0, 0, 0, 0,
8793 0, 0, 0, 0, 0, 0, 0, 0,
8794 0, 0, 0, 0, 0, 0, 0, 0,
8795 0, 0, 0, 0, 0, 0, 0, 0,
8796 0, 0, 0, 0, 0, 0, 0, 0,
8797 0, 0, 0, 0, 0, 0, 0, 0,
8798 };
8799 yych = *p;
8800 if (yych == '#') goto yy779;
8801 ++p;
8802 yy778:
8803 { return 0; }
8804 yy779:
8805 yych = *(marker = ++p);
8806 if (yybm[0+yych] & 128) {
8807 goto yy780;
8808 }
8809 if (yych <= '\f') {
8810 if (yych <= 0x08) goto yy778;
8811 if (yych <= '\n') goto yy783;
8812 goto yy778;
8813 } else {
8814 if (yych <= '\r') goto yy783;
8815 if (yych == '#') goto yy784;
8816 goto yy778;
8817 }
8818 yy780:
8819 yych = *++p;
8820 if (yybm[0+yych] & 128) {
8821 goto yy780;
8822 }
8823 yy782:
8824 { return (bufsize_t)(p - start); }
8825 yy783:
8826 ++p;
8827 goto yy782;
8828 yy784:
8829 yych = *++p;
8830 if (yybm[0+yych] & 128) {
8831 goto yy780;
8832 }
8833 if (yych <= '\f') {
8834 if (yych <= 0x08) goto yy785;
8835 if (yych <= '\n') goto yy783;
8836 } else {
8837 if (yych <= '\r') goto yy783;
8838 if (yych == '#') goto yy786;
8839 }
8840 yy785:
8841 p = marker;
8842 goto yy778;
8843 yy786:
8844 yych = *++p;
8845 if (yybm[0+yych] & 128) {
8846 goto yy780;
8847 }
8848 if (yych <= '\f') {
8849 if (yych <= 0x08) goto yy785;
8850 if (yych <= '\n') goto yy783;
8851 goto yy785;
8852 } else {
8853 if (yych <= '\r') goto yy783;
8854 if (yych != '#') goto yy785;
8855 }
8856 yych = *++p;
8857 if (yybm[0+yych] & 128) {
8858 goto yy780;
8859 }
8860 if (yych <= '\f') {
8861 if (yych <= 0x08) goto yy785;
8862 if (yych <= '\n') goto yy783;
8863 goto yy785;
8864 } else {
8865 if (yych <= '\r') goto yy783;
8866 if (yych != '#') goto yy785;
8867 }
8868 yych = *++p;
8869 if (yybm[0+yych] & 128) {
8870 goto yy780;
8871 }
8872 if (yych <= '\f') {
8873 if (yych <= 0x08) goto yy785;
8874 if (yych <= '\n') goto yy783;
8875 goto yy785;
8876 } else {
8877 if (yych <= '\r') goto yy783;
8878 if (yych != '#') goto yy785;
8879 }
8880 yych = *++p;
8881 if (yybm[0+yych] & 128) {
8882 goto yy780;
8883 }
8884 if (yych <= 0x08) goto yy785;
8885 if (yych <= '\n') goto yy783;
8886 if (yych == '\r') goto yy783;
8887 goto yy785;
8888 }
8889
8890 }
8891
8892 // Match setext heading line. Return 1 for level-1 heading,
8893 // 2 for level-2, 0 for no match.
_scan_setext_heading_line(const unsigned char * p)8894 bufsize_t _scan_setext_heading_line(const unsigned char *p)
8895 {
8896 const unsigned char *marker = NULL;
8897
8898 {
8899 unsigned char yych;
8900 static const unsigned char yybm[] = {
8901 0, 0, 0, 0, 0, 0, 0, 0,
8902 0, 32, 0, 0, 0, 0, 0, 0,
8903 0, 0, 0, 0, 0, 0, 0, 0,
8904 0, 0, 0, 0, 0, 0, 0, 0,
8905 32, 0, 0, 0, 0, 0, 0, 0,
8906 0, 0, 0, 0, 0, 64, 0, 0,
8907 0, 0, 0, 0, 0, 0, 0, 0,
8908 0, 0, 0, 0, 0, 128, 0, 0,
8909 0, 0, 0, 0, 0, 0, 0, 0,
8910 0, 0, 0, 0, 0, 0, 0, 0,
8911 0, 0, 0, 0, 0, 0, 0, 0,
8912 0, 0, 0, 0, 0, 0, 0, 0,
8913 0, 0, 0, 0, 0, 0, 0, 0,
8914 0, 0, 0, 0, 0, 0, 0, 0,
8915 0, 0, 0, 0, 0, 0, 0, 0,
8916 0, 0, 0, 0, 0, 0, 0, 0,
8917 0, 0, 0, 0, 0, 0, 0, 0,
8918 0, 0, 0, 0, 0, 0, 0, 0,
8919 0, 0, 0, 0, 0, 0, 0, 0,
8920 0, 0, 0, 0, 0, 0, 0, 0,
8921 0, 0, 0, 0, 0, 0, 0, 0,
8922 0, 0, 0, 0, 0, 0, 0, 0,
8923 0, 0, 0, 0, 0, 0, 0, 0,
8924 0, 0, 0, 0, 0, 0, 0, 0,
8925 0, 0, 0, 0, 0, 0, 0, 0,
8926 0, 0, 0, 0, 0, 0, 0, 0,
8927 0, 0, 0, 0, 0, 0, 0, 0,
8928 0, 0, 0, 0, 0, 0, 0, 0,
8929 0, 0, 0, 0, 0, 0, 0, 0,
8930 0, 0, 0, 0, 0, 0, 0, 0,
8931 0, 0, 0, 0, 0, 0, 0, 0,
8932 0, 0, 0, 0, 0, 0, 0, 0,
8933 };
8934 yych = *p;
8935 if (yych == '-') goto yy794;
8936 if (yych == '=') goto yy795;
8937 ++p;
8938 yy793:
8939 { return 0; }
8940 yy794:
8941 yych = *(marker = ++p);
8942 if (yybm[0+yych] & 64) {
8943 goto yy801;
8944 }
8945 if (yych <= '\f') {
8946 if (yych <= 0x08) goto yy793;
8947 if (yych <= '\n') goto yy797;
8948 goto yy793;
8949 } else {
8950 if (yych <= '\r') goto yy797;
8951 if (yych == ' ') goto yy797;
8952 goto yy793;
8953 }
8954 yy795:
8955 yych = *(marker = ++p);
8956 if (yybm[0+yych] & 128) {
8957 goto yy807;
8958 }
8959 if (yych <= '\f') {
8960 if (yych <= 0x08) goto yy793;
8961 if (yych <= '\n') goto yy804;
8962 goto yy793;
8963 } else {
8964 if (yych <= '\r') goto yy804;
8965 if (yych == ' ') goto yy804;
8966 goto yy793;
8967 }
8968 yy796:
8969 yych = *++p;
8970 yy797:
8971 if (yybm[0+yych] & 32) {
8972 goto yy796;
8973 }
8974 if (yych <= 0x08) goto yy798;
8975 if (yych <= '\n') goto yy799;
8976 if (yych == '\r') goto yy799;
8977 yy798:
8978 p = marker;
8979 goto yy793;
8980 yy799:
8981 ++p;
8982 { return 2; }
8983 yy801:
8984 yych = *++p;
8985 if (yybm[0+yych] & 32) {
8986 goto yy796;
8987 }
8988 if (yych <= '\f') {
8989 if (yych <= 0x08) goto yy798;
8990 if (yych <= '\n') goto yy799;
8991 goto yy798;
8992 } else {
8993 if (yych <= '\r') goto yy799;
8994 if (yych == '-') goto yy801;
8995 goto yy798;
8996 }
8997 yy803:
8998 yych = *++p;
8999 yy804:
9000 if (yych <= '\f') {
9001 if (yych <= 0x08) goto yy798;
9002 if (yych <= '\t') goto yy803;
9003 if (yych >= '\v') goto yy798;
9004 } else {
9005 if (yych <= '\r') goto yy805;
9006 if (yych == ' ') goto yy803;
9007 goto yy798;
9008 }
9009 yy805:
9010 ++p;
9011 { return 1; }
9012 yy807:
9013 yych = *++p;
9014 if (yybm[0+yych] & 128) {
9015 goto yy807;
9016 }
9017 if (yych <= '\f') {
9018 if (yych <= 0x08) goto yy798;
9019 if (yych <= '\t') goto yy803;
9020 if (yych <= '\n') goto yy805;
9021 goto yy798;
9022 } else {
9023 if (yych <= '\r') goto yy805;
9024 if (yych == ' ') goto yy803;
9025 goto yy798;
9026 }
9027 }
9028
9029 }
9030
9031 // Scan an opening code fence.
_scan_open_code_fence(const unsigned char * p)9032 bufsize_t _scan_open_code_fence(const unsigned char *p)
9033 {
9034 const unsigned char *marker = NULL;
9035 const unsigned char *start = p;
9036
9037 {
9038 unsigned char yych;
9039 static const unsigned char yybm[] = {
9040 0, 192, 192, 192, 192, 192, 192, 192,
9041 192, 192, 0, 192, 192, 0, 192, 192,
9042 192, 192, 192, 192, 192, 192, 192, 192,
9043 192, 192, 192, 192, 192, 192, 192, 192,
9044 192, 192, 192, 192, 192, 192, 192, 192,
9045 192, 192, 192, 192, 192, 192, 192, 192,
9046 192, 192, 192, 192, 192, 192, 192, 192,
9047 192, 192, 192, 192, 192, 192, 192, 192,
9048 192, 192, 192, 192, 192, 192, 192, 192,
9049 192, 192, 192, 192, 192, 192, 192, 192,
9050 192, 192, 192, 192, 192, 192, 192, 192,
9051 192, 192, 192, 192, 192, 192, 192, 192,
9052 144, 192, 192, 192, 192, 192, 192, 192,
9053 192, 192, 192, 192, 192, 192, 192, 192,
9054 192, 192, 192, 192, 192, 192, 192, 192,
9055 192, 192, 192, 192, 192, 192, 224, 192,
9056 0, 0, 0, 0, 0, 0, 0, 0,
9057 0, 0, 0, 0, 0, 0, 0, 0,
9058 0, 0, 0, 0, 0, 0, 0, 0,
9059 0, 0, 0, 0, 0, 0, 0, 0,
9060 0, 0, 0, 0, 0, 0, 0, 0,
9061 0, 0, 0, 0, 0, 0, 0, 0,
9062 0, 0, 0, 0, 0, 0, 0, 0,
9063 0, 0, 0, 0, 0, 0, 0, 0,
9064 0, 0, 0, 0, 0, 0, 0, 0,
9065 0, 0, 0, 0, 0, 0, 0, 0,
9066 0, 0, 0, 0, 0, 0, 0, 0,
9067 0, 0, 0, 0, 0, 0, 0, 0,
9068 0, 0, 0, 0, 0, 0, 0, 0,
9069 0, 0, 0, 0, 0, 0, 0, 0,
9070 0, 0, 0, 0, 0, 0, 0, 0,
9071 0, 0, 0, 0, 0, 0, 0, 0,
9072 };
9073 yych = *p;
9074 if (yych == '`') goto yy813;
9075 if (yych == '~') goto yy814;
9076 ++p;
9077 yy812:
9078 { return 0; }
9079 yy813:
9080 yych = *(marker = ++p);
9081 if (yych == '`') goto yy815;
9082 goto yy812;
9083 yy814:
9084 yych = *(marker = ++p);
9085 if (yych == '~') goto yy817;
9086 goto yy812;
9087 yy815:
9088 yych = *++p;
9089 if (yybm[0+yych] & 16) {
9090 goto yy818;
9091 }
9092 yy816:
9093 p = marker;
9094 goto yy812;
9095 yy817:
9096 yych = *++p;
9097 if (yybm[0+yych] & 32) {
9098 goto yy820;
9099 }
9100 goto yy816;
9101 yy818:
9102 yych = *++p;
9103 if (yybm[0+yych] & 16) {
9104 goto yy818;
9105 }
9106 if (yych <= 0xDF) {
9107 if (yych <= '\f') {
9108 if (yych <= 0x00) goto yy816;
9109 if (yych == '\n') {
9110 marker = p;
9111 goto yy824;
9112 }
9113 marker = p;
9114 goto yy822;
9115 } else {
9116 if (yych <= '\r') {
9117 marker = p;
9118 goto yy824;
9119 }
9120 if (yych <= 0x7F) {
9121 marker = p;
9122 goto yy822;
9123 }
9124 if (yych <= 0xC1) goto yy816;
9125 marker = p;
9126 goto yy826;
9127 }
9128 } else {
9129 if (yych <= 0xEF) {
9130 if (yych <= 0xE0) {
9131 marker = p;
9132 goto yy827;
9133 }
9134 if (yych == 0xED) {
9135 marker = p;
9136 goto yy829;
9137 }
9138 marker = p;
9139 goto yy828;
9140 } else {
9141 if (yych <= 0xF0) {
9142 marker = p;
9143 goto yy830;
9144 }
9145 if (yych <= 0xF3) {
9146 marker = p;
9147 goto yy831;
9148 }
9149 if (yych <= 0xF4) {
9150 marker = p;
9151 goto yy832;
9152 }
9153 goto yy816;
9154 }
9155 }
9156 yy820:
9157 yych = *++p;
9158 if (yybm[0+yych] & 32) {
9159 goto yy820;
9160 }
9161 if (yych <= 0xDF) {
9162 if (yych <= '\f') {
9163 if (yych <= 0x00) goto yy816;
9164 if (yych == '\n') {
9165 marker = p;
9166 goto yy835;
9167 }
9168 marker = p;
9169 goto yy833;
9170 } else {
9171 if (yych <= '\r') {
9172 marker = p;
9173 goto yy835;
9174 }
9175 if (yych <= 0x7F) {
9176 marker = p;
9177 goto yy833;
9178 }
9179 if (yych <= 0xC1) goto yy816;
9180 marker = p;
9181 goto yy837;
9182 }
9183 } else {
9184 if (yych <= 0xEF) {
9185 if (yych <= 0xE0) {
9186 marker = p;
9187 goto yy838;
9188 }
9189 if (yych == 0xED) {
9190 marker = p;
9191 goto yy840;
9192 }
9193 marker = p;
9194 goto yy839;
9195 } else {
9196 if (yych <= 0xF0) {
9197 marker = p;
9198 goto yy841;
9199 }
9200 if (yych <= 0xF3) {
9201 marker = p;
9202 goto yy842;
9203 }
9204 if (yych <= 0xF4) {
9205 marker = p;
9206 goto yy843;
9207 }
9208 goto yy816;
9209 }
9210 }
9211 yy822:
9212 yych = *++p;
9213 if (yybm[0+yych] & 64) {
9214 goto yy822;
9215 }
9216 if (yych <= 0xEC) {
9217 if (yych <= 0xC1) {
9218 if (yych <= 0x00) goto yy816;
9219 if (yych >= 0x0E) goto yy816;
9220 } else {
9221 if (yych <= 0xDF) goto yy826;
9222 if (yych <= 0xE0) goto yy827;
9223 goto yy828;
9224 }
9225 } else {
9226 if (yych <= 0xF0) {
9227 if (yych <= 0xED) goto yy829;
9228 if (yych <= 0xEF) goto yy828;
9229 goto yy830;
9230 } else {
9231 if (yych <= 0xF3) goto yy831;
9232 if (yych <= 0xF4) goto yy832;
9233 goto yy816;
9234 }
9235 }
9236 yy824:
9237 ++p;
9238 p = marker;
9239 { return (bufsize_t)(p - start); }
9240 yy826:
9241 yych = *++p;
9242 if (yych <= 0x7F) goto yy816;
9243 if (yych <= 0xBF) goto yy822;
9244 goto yy816;
9245 yy827:
9246 yych = *++p;
9247 if (yych <= 0x9F) goto yy816;
9248 if (yych <= 0xBF) goto yy826;
9249 goto yy816;
9250 yy828:
9251 yych = *++p;
9252 if (yych <= 0x7F) goto yy816;
9253 if (yych <= 0xBF) goto yy826;
9254 goto yy816;
9255 yy829:
9256 yych = *++p;
9257 if (yych <= 0x7F) goto yy816;
9258 if (yych <= 0x9F) goto yy826;
9259 goto yy816;
9260 yy830:
9261 yych = *++p;
9262 if (yych <= 0x8F) goto yy816;
9263 if (yych <= 0xBF) goto yy828;
9264 goto yy816;
9265 yy831:
9266 yych = *++p;
9267 if (yych <= 0x7F) goto yy816;
9268 if (yych <= 0xBF) goto yy828;
9269 goto yy816;
9270 yy832:
9271 yych = *++p;
9272 if (yych <= 0x7F) goto yy816;
9273 if (yych <= 0x8F) goto yy828;
9274 goto yy816;
9275 yy833:
9276 yych = *++p;
9277 if (yybm[0+yych] & 128) {
9278 goto yy833;
9279 }
9280 if (yych <= 0xEC) {
9281 if (yych <= 0xC1) {
9282 if (yych <= 0x00) goto yy816;
9283 if (yych >= 0x0E) goto yy816;
9284 } else {
9285 if (yych <= 0xDF) goto yy837;
9286 if (yych <= 0xE0) goto yy838;
9287 goto yy839;
9288 }
9289 } else {
9290 if (yych <= 0xF0) {
9291 if (yych <= 0xED) goto yy840;
9292 if (yych <= 0xEF) goto yy839;
9293 goto yy841;
9294 } else {
9295 if (yych <= 0xF3) goto yy842;
9296 if (yych <= 0xF4) goto yy843;
9297 goto yy816;
9298 }
9299 }
9300 yy835:
9301 ++p;
9302 p = marker;
9303 { return (bufsize_t)(p - start); }
9304 yy837:
9305 yych = *++p;
9306 if (yych <= 0x7F) goto yy816;
9307 if (yych <= 0xBF) goto yy833;
9308 goto yy816;
9309 yy838:
9310 yych = *++p;
9311 if (yych <= 0x9F) goto yy816;
9312 if (yych <= 0xBF) goto yy837;
9313 goto yy816;
9314 yy839:
9315 yych = *++p;
9316 if (yych <= 0x7F) goto yy816;
9317 if (yych <= 0xBF) goto yy837;
9318 goto yy816;
9319 yy840:
9320 yych = *++p;
9321 if (yych <= 0x7F) goto yy816;
9322 if (yych <= 0x9F) goto yy837;
9323 goto yy816;
9324 yy841:
9325 yych = *++p;
9326 if (yych <= 0x8F) goto yy816;
9327 if (yych <= 0xBF) goto yy839;
9328 goto yy816;
9329 yy842:
9330 yych = *++p;
9331 if (yych <= 0x7F) goto yy816;
9332 if (yych <= 0xBF) goto yy839;
9333 goto yy816;
9334 yy843:
9335 yych = *++p;
9336 if (yych <= 0x7F) goto yy816;
9337 if (yych <= 0x8F) goto yy839;
9338 goto yy816;
9339 }
9340
9341 }
9342
9343 // Scan a closing code fence with length at least len.
_scan_close_code_fence(const unsigned char * p)9344 bufsize_t _scan_close_code_fence(const unsigned char *p)
9345 {
9346 const unsigned char *marker = NULL;
9347 const unsigned char *start = p;
9348
9349 {
9350 unsigned char yych;
9351 static const unsigned char yybm[] = {
9352 0, 0, 0, 0, 0, 0, 0, 0,
9353 0, 128, 0, 0, 0, 0, 0, 0,
9354 0, 0, 0, 0, 0, 0, 0, 0,
9355 0, 0, 0, 0, 0, 0, 0, 0,
9356 128, 0, 0, 0, 0, 0, 0, 0,
9357 0, 0, 0, 0, 0, 0, 0, 0,
9358 0, 0, 0, 0, 0, 0, 0, 0,
9359 0, 0, 0, 0, 0, 0, 0, 0,
9360 0, 0, 0, 0, 0, 0, 0, 0,
9361 0, 0, 0, 0, 0, 0, 0, 0,
9362 0, 0, 0, 0, 0, 0, 0, 0,
9363 0, 0, 0, 0, 0, 0, 0, 0,
9364 32, 0, 0, 0, 0, 0, 0, 0,
9365 0, 0, 0, 0, 0, 0, 0, 0,
9366 0, 0, 0, 0, 0, 0, 0, 0,
9367 0, 0, 0, 0, 0, 0, 64, 0,
9368 0, 0, 0, 0, 0, 0, 0, 0,
9369 0, 0, 0, 0, 0, 0, 0, 0,
9370 0, 0, 0, 0, 0, 0, 0, 0,
9371 0, 0, 0, 0, 0, 0, 0, 0,
9372 0, 0, 0, 0, 0, 0, 0, 0,
9373 0, 0, 0, 0, 0, 0, 0, 0,
9374 0, 0, 0, 0, 0, 0, 0, 0,
9375 0, 0, 0, 0, 0, 0, 0, 0,
9376 0, 0, 0, 0, 0, 0, 0, 0,
9377 0, 0, 0, 0, 0, 0, 0, 0,
9378 0, 0, 0, 0, 0, 0, 0, 0,
9379 0, 0, 0, 0, 0, 0, 0, 0,
9380 0, 0, 0, 0, 0, 0, 0, 0,
9381 0, 0, 0, 0, 0, 0, 0, 0,
9382 0, 0, 0, 0, 0, 0, 0, 0,
9383 0, 0, 0, 0, 0, 0, 0, 0,
9384 };
9385 yych = *p;
9386 if (yych == '`') goto yy848;
9387 if (yych == '~') goto yy849;
9388 ++p;
9389 yy847:
9390 { return 0; }
9391 yy848:
9392 yych = *(marker = ++p);
9393 if (yych == '`') goto yy850;
9394 goto yy847;
9395 yy849:
9396 yych = *(marker = ++p);
9397 if (yych == '~') goto yy852;
9398 goto yy847;
9399 yy850:
9400 yych = *++p;
9401 if (yybm[0+yych] & 32) {
9402 goto yy853;
9403 }
9404 yy851:
9405 p = marker;
9406 goto yy847;
9407 yy852:
9408 yych = *++p;
9409 if (yybm[0+yych] & 64) {
9410 goto yy855;
9411 }
9412 goto yy851;
9413 yy853:
9414 yych = *++p;
9415 if (yybm[0+yych] & 32) {
9416 goto yy853;
9417 }
9418 if (yych <= '\f') {
9419 if (yych <= 0x08) goto yy851;
9420 if (yych <= '\t') {
9421 marker = p;
9422 goto yy857;
9423 }
9424 if (yych <= '\n') {
9425 marker = p;
9426 goto yy859;
9427 }
9428 goto yy851;
9429 } else {
9430 if (yych <= '\r') {
9431 marker = p;
9432 goto yy859;
9433 }
9434 if (yych == ' ') {
9435 marker = p;
9436 goto yy857;
9437 }
9438 goto yy851;
9439 }
9440 yy855:
9441 yych = *++p;
9442 if (yybm[0+yych] & 64) {
9443 goto yy855;
9444 }
9445 if (yych <= '\f') {
9446 if (yych <= 0x08) goto yy851;
9447 if (yych <= '\t') {
9448 marker = p;
9449 goto yy861;
9450 }
9451 if (yych <= '\n') {
9452 marker = p;
9453 goto yy863;
9454 }
9455 goto yy851;
9456 } else {
9457 if (yych <= '\r') {
9458 marker = p;
9459 goto yy863;
9460 }
9461 if (yych == ' ') {
9462 marker = p;
9463 goto yy861;
9464 }
9465 goto yy851;
9466 }
9467 yy857:
9468 yych = *++p;
9469 if (yybm[0+yych] & 128) {
9470 goto yy857;
9471 }
9472 if (yych <= 0x08) goto yy851;
9473 if (yych <= '\n') goto yy859;
9474 if (yych != '\r') goto yy851;
9475 yy859:
9476 ++p;
9477 p = marker;
9478 { return (bufsize_t)(p - start); }
9479 yy861:
9480 yych = *++p;
9481 if (yych <= '\f') {
9482 if (yych <= 0x08) goto yy851;
9483 if (yych <= '\t') goto yy861;
9484 if (yych >= '\v') goto yy851;
9485 } else {
9486 if (yych <= '\r') goto yy863;
9487 if (yych == ' ') goto yy861;
9488 goto yy851;
9489 }
9490 yy863:
9491 ++p;
9492 p = marker;
9493 { return (bufsize_t)(p - start); }
9494 }
9495
9496 }
9497
9498 // Scans an entity.
9499 // Returns number of chars matched.
_scan_entity(const unsigned char * p)9500 bufsize_t _scan_entity(const unsigned char *p)
9501 {
9502 const unsigned char *marker = NULL;
9503 const unsigned char *start = p;
9504
9505 {
9506 unsigned char yych;
9507 yych = *p;
9508 if (yych == '&') goto yy869;
9509 ++p;
9510 yy868:
9511 { return 0; }
9512 yy869:
9513 yych = *(marker = ++p);
9514 if (yych <= '@') {
9515 if (yych != '#') goto yy868;
9516 } else {
9517 if (yych <= 'Z') goto yy872;
9518 if (yych <= '`') goto yy868;
9519 if (yych <= 'z') goto yy872;
9520 goto yy868;
9521 }
9522 yych = *++p;
9523 if (yych <= 'W') {
9524 if (yych <= '/') goto yy871;
9525 if (yych <= '9') goto yy873;
9526 } else {
9527 if (yych <= 'X') goto yy874;
9528 if (yych == 'x') goto yy874;
9529 }
9530 yy871:
9531 p = marker;
9532 goto yy868;
9533 yy872:
9534 yych = *++p;
9535 if (yych <= '@') {
9536 if (yych <= '/') goto yy871;
9537 if (yych <= '9') goto yy875;
9538 goto yy871;
9539 } else {
9540 if (yych <= 'Z') goto yy875;
9541 if (yych <= '`') goto yy871;
9542 if (yych <= 'z') goto yy875;
9543 goto yy871;
9544 }
9545 yy873:
9546 yych = *++p;
9547 if (yych <= '/') goto yy871;
9548 if (yych <= '9') goto yy876;
9549 if (yych == ';') goto yy877;
9550 goto yy871;
9551 yy874:
9552 yych = *++p;
9553 if (yych <= '@') {
9554 if (yych <= '/') goto yy871;
9555 if (yych <= '9') goto yy879;
9556 goto yy871;
9557 } else {
9558 if (yych <= 'F') goto yy879;
9559 if (yych <= '`') goto yy871;
9560 if (yych <= 'f') goto yy879;
9561 goto yy871;
9562 }
9563 yy875:
9564 yych = *++p;
9565 if (yych <= ';') {
9566 if (yych <= '/') goto yy871;
9567 if (yych <= '9') goto yy880;
9568 if (yych <= ':') goto yy871;
9569 goto yy877;
9570 } else {
9571 if (yych <= 'Z') {
9572 if (yych <= '@') goto yy871;
9573 goto yy880;
9574 } else {
9575 if (yych <= '`') goto yy871;
9576 if (yych <= 'z') goto yy880;
9577 goto yy871;
9578 }
9579 }
9580 yy876:
9581 yych = *++p;
9582 if (yych <= '/') goto yy871;
9583 if (yych <= '9') goto yy881;
9584 if (yych != ';') goto yy871;
9585 yy877:
9586 ++p;
9587 { return (bufsize_t)(p - start); }
9588 yy879:
9589 yych = *++p;
9590 if (yych <= ';') {
9591 if (yych <= '/') goto yy871;
9592 if (yych <= '9') goto yy882;
9593 if (yych <= ':') goto yy871;
9594 goto yy877;
9595 } else {
9596 if (yych <= 'F') {
9597 if (yych <= '@') goto yy871;
9598 goto yy882;
9599 } else {
9600 if (yych <= '`') goto yy871;
9601 if (yych <= 'f') goto yy882;
9602 goto yy871;
9603 }
9604 }
9605 yy880:
9606 yych = *++p;
9607 if (yych <= ';') {
9608 if (yych <= '/') goto yy871;
9609 if (yych <= '9') goto yy883;
9610 if (yych <= ':') goto yy871;
9611 goto yy877;
9612 } else {
9613 if (yych <= 'Z') {
9614 if (yych <= '@') goto yy871;
9615 goto yy883;
9616 } else {
9617 if (yych <= '`') goto yy871;
9618 if (yych <= 'z') goto yy883;
9619 goto yy871;
9620 }
9621 }
9622 yy881:
9623 yych = *++p;
9624 if (yych <= '/') goto yy871;
9625 if (yych <= '9') goto yy884;
9626 if (yych == ';') goto yy877;
9627 goto yy871;
9628 yy882:
9629 yych = *++p;
9630 if (yych <= ';') {
9631 if (yych <= '/') goto yy871;
9632 if (yych <= '9') goto yy885;
9633 if (yych <= ':') goto yy871;
9634 goto yy877;
9635 } else {
9636 if (yych <= 'F') {
9637 if (yych <= '@') goto yy871;
9638 goto yy885;
9639 } else {
9640 if (yych <= '`') goto yy871;
9641 if (yych <= 'f') goto yy885;
9642 goto yy871;
9643 }
9644 }
9645 yy883:
9646 yych = *++p;
9647 if (yych <= ';') {
9648 if (yych <= '/') goto yy871;
9649 if (yych <= '9') goto yy886;
9650 if (yych <= ':') goto yy871;
9651 goto yy877;
9652 } else {
9653 if (yych <= 'Z') {
9654 if (yych <= '@') goto yy871;
9655 goto yy886;
9656 } else {
9657 if (yych <= '`') goto yy871;
9658 if (yych <= 'z') goto yy886;
9659 goto yy871;
9660 }
9661 }
9662 yy884:
9663 yych = *++p;
9664 if (yych <= '/') goto yy871;
9665 if (yych <= '9') goto yy887;
9666 if (yych == ';') goto yy877;
9667 goto yy871;
9668 yy885:
9669 yych = *++p;
9670 if (yych <= ';') {
9671 if (yych <= '/') goto yy871;
9672 if (yych <= '9') goto yy888;
9673 if (yych <= ':') goto yy871;
9674 goto yy877;
9675 } else {
9676 if (yych <= 'F') {
9677 if (yych <= '@') goto yy871;
9678 goto yy888;
9679 } else {
9680 if (yych <= '`') goto yy871;
9681 if (yych <= 'f') goto yy888;
9682 goto yy871;
9683 }
9684 }
9685 yy886:
9686 yych = *++p;
9687 if (yych <= ';') {
9688 if (yych <= '/') goto yy871;
9689 if (yych <= '9') goto yy889;
9690 if (yych <= ':') goto yy871;
9691 goto yy877;
9692 } else {
9693 if (yych <= 'Z') {
9694 if (yych <= '@') goto yy871;
9695 goto yy889;
9696 } else {
9697 if (yych <= '`') goto yy871;
9698 if (yych <= 'z') goto yy889;
9699 goto yy871;
9700 }
9701 }
9702 yy887:
9703 yych = *++p;
9704 if (yych <= '/') goto yy871;
9705 if (yych <= '9') goto yy890;
9706 if (yych == ';') goto yy877;
9707 goto yy871;
9708 yy888:
9709 yych = *++p;
9710 if (yych <= ';') {
9711 if (yych <= '/') goto yy871;
9712 if (yych <= '9') goto yy891;
9713 if (yych <= ':') goto yy871;
9714 goto yy877;
9715 } else {
9716 if (yych <= 'F') {
9717 if (yych <= '@') goto yy871;
9718 goto yy891;
9719 } else {
9720 if (yych <= '`') goto yy871;
9721 if (yych <= 'f') goto yy891;
9722 goto yy871;
9723 }
9724 }
9725 yy889:
9726 yych = *++p;
9727 if (yych <= ';') {
9728 if (yych <= '/') goto yy871;
9729 if (yych <= '9') goto yy892;
9730 if (yych <= ':') goto yy871;
9731 goto yy877;
9732 } else {
9733 if (yych <= 'Z') {
9734 if (yych <= '@') goto yy871;
9735 goto yy892;
9736 } else {
9737 if (yych <= '`') goto yy871;
9738 if (yych <= 'z') goto yy892;
9739 goto yy871;
9740 }
9741 }
9742 yy890:
9743 yych = *++p;
9744 if (yych <= '/') goto yy871;
9745 if (yych <= '9') goto yy893;
9746 if (yych == ';') goto yy877;
9747 goto yy871;
9748 yy891:
9749 yych = *++p;
9750 if (yych <= ';') {
9751 if (yych <= '/') goto yy871;
9752 if (yych <= '9') goto yy893;
9753 if (yych <= ':') goto yy871;
9754 goto yy877;
9755 } else {
9756 if (yych <= 'F') {
9757 if (yych <= '@') goto yy871;
9758 goto yy893;
9759 } else {
9760 if (yych <= '`') goto yy871;
9761 if (yych <= 'f') goto yy893;
9762 goto yy871;
9763 }
9764 }
9765 yy892:
9766 yych = *++p;
9767 if (yych <= ';') {
9768 if (yych <= '/') goto yy871;
9769 if (yych <= '9') goto yy894;
9770 if (yych <= ':') goto yy871;
9771 goto yy877;
9772 } else {
9773 if (yych <= 'Z') {
9774 if (yych <= '@') goto yy871;
9775 goto yy894;
9776 } else {
9777 if (yych <= '`') goto yy871;
9778 if (yych <= 'z') goto yy894;
9779 goto yy871;
9780 }
9781 }
9782 yy893:
9783 yych = *++p;
9784 if (yych == ';') goto yy877;
9785 goto yy871;
9786 yy894:
9787 yych = *++p;
9788 if (yych <= ';') {
9789 if (yych <= '/') goto yy871;
9790 if (yych <= '9') goto yy895;
9791 if (yych <= ':') goto yy871;
9792 goto yy877;
9793 } else {
9794 if (yych <= 'Z') {
9795 if (yych <= '@') goto yy871;
9796 } else {
9797 if (yych <= '`') goto yy871;
9798 if (yych >= '{') goto yy871;
9799 }
9800 }
9801 yy895:
9802 yych = *++p;
9803 if (yych <= ';') {
9804 if (yych <= '/') goto yy871;
9805 if (yych <= '9') goto yy896;
9806 if (yych <= ':') goto yy871;
9807 goto yy877;
9808 } else {
9809 if (yych <= 'Z') {
9810 if (yych <= '@') goto yy871;
9811 } else {
9812 if (yych <= '`') goto yy871;
9813 if (yych >= '{') goto yy871;
9814 }
9815 }
9816 yy896:
9817 yych = *++p;
9818 if (yych <= ';') {
9819 if (yych <= '/') goto yy871;
9820 if (yych <= '9') goto yy897;
9821 if (yych <= ':') goto yy871;
9822 goto yy877;
9823 } else {
9824 if (yych <= 'Z') {
9825 if (yych <= '@') goto yy871;
9826 } else {
9827 if (yych <= '`') goto yy871;
9828 if (yych >= '{') goto yy871;
9829 }
9830 }
9831 yy897:
9832 yych = *++p;
9833 if (yych <= ';') {
9834 if (yych <= '/') goto yy871;
9835 if (yych <= '9') goto yy898;
9836 if (yych <= ':') goto yy871;
9837 goto yy877;
9838 } else {
9839 if (yych <= 'Z') {
9840 if (yych <= '@') goto yy871;
9841 } else {
9842 if (yych <= '`') goto yy871;
9843 if (yych >= '{') goto yy871;
9844 }
9845 }
9846 yy898:
9847 yych = *++p;
9848 if (yych <= ';') {
9849 if (yych <= '/') goto yy871;
9850 if (yych <= '9') goto yy899;
9851 if (yych <= ':') goto yy871;
9852 goto yy877;
9853 } else {
9854 if (yych <= 'Z') {
9855 if (yych <= '@') goto yy871;
9856 } else {
9857 if (yych <= '`') goto yy871;
9858 if (yych >= '{') goto yy871;
9859 }
9860 }
9861 yy899:
9862 yych = *++p;
9863 if (yych <= ';') {
9864 if (yych <= '/') goto yy871;
9865 if (yych <= '9') goto yy900;
9866 if (yych <= ':') goto yy871;
9867 goto yy877;
9868 } else {
9869 if (yych <= 'Z') {
9870 if (yych <= '@') goto yy871;
9871 } else {
9872 if (yych <= '`') goto yy871;
9873 if (yych >= '{') goto yy871;
9874 }
9875 }
9876 yy900:
9877 yych = *++p;
9878 if (yych <= ';') {
9879 if (yych <= '/') goto yy871;
9880 if (yych <= '9') goto yy901;
9881 if (yych <= ':') goto yy871;
9882 goto yy877;
9883 } else {
9884 if (yych <= 'Z') {
9885 if (yych <= '@') goto yy871;
9886 } else {
9887 if (yych <= '`') goto yy871;
9888 if (yych >= '{') goto yy871;
9889 }
9890 }
9891 yy901:
9892 yych = *++p;
9893 if (yych <= ';') {
9894 if (yych <= '/') goto yy871;
9895 if (yych <= '9') goto yy902;
9896 if (yych <= ':') goto yy871;
9897 goto yy877;
9898 } else {
9899 if (yych <= 'Z') {
9900 if (yych <= '@') goto yy871;
9901 } else {
9902 if (yych <= '`') goto yy871;
9903 if (yych >= '{') goto yy871;
9904 }
9905 }
9906 yy902:
9907 yych = *++p;
9908 if (yych <= ';') {
9909 if (yych <= '/') goto yy871;
9910 if (yych <= '9') goto yy903;
9911 if (yych <= ':') goto yy871;
9912 goto yy877;
9913 } else {
9914 if (yych <= 'Z') {
9915 if (yych <= '@') goto yy871;
9916 } else {
9917 if (yych <= '`') goto yy871;
9918 if (yych >= '{') goto yy871;
9919 }
9920 }
9921 yy903:
9922 yych = *++p;
9923 if (yych <= ';') {
9924 if (yych <= '/') goto yy871;
9925 if (yych <= '9') goto yy904;
9926 if (yych <= ':') goto yy871;
9927 goto yy877;
9928 } else {
9929 if (yych <= 'Z') {
9930 if (yych <= '@') goto yy871;
9931 } else {
9932 if (yych <= '`') goto yy871;
9933 if (yych >= '{') goto yy871;
9934 }
9935 }
9936 yy904:
9937 yych = *++p;
9938 if (yych <= ';') {
9939 if (yych <= '/') goto yy871;
9940 if (yych <= '9') goto yy905;
9941 if (yych <= ':') goto yy871;
9942 goto yy877;
9943 } else {
9944 if (yych <= 'Z') {
9945 if (yych <= '@') goto yy871;
9946 } else {
9947 if (yych <= '`') goto yy871;
9948 if (yych >= '{') goto yy871;
9949 }
9950 }
9951 yy905:
9952 yych = *++p;
9953 if (yych <= ';') {
9954 if (yych <= '/') goto yy871;
9955 if (yych <= '9') goto yy906;
9956 if (yych <= ':') goto yy871;
9957 goto yy877;
9958 } else {
9959 if (yych <= 'Z') {
9960 if (yych <= '@') goto yy871;
9961 } else {
9962 if (yych <= '`') goto yy871;
9963 if (yych >= '{') goto yy871;
9964 }
9965 }
9966 yy906:
9967 yych = *++p;
9968 if (yych <= ';') {
9969 if (yych <= '/') goto yy871;
9970 if (yych <= '9') goto yy907;
9971 if (yych <= ':') goto yy871;
9972 goto yy877;
9973 } else {
9974 if (yych <= 'Z') {
9975 if (yych <= '@') goto yy871;
9976 } else {
9977 if (yych <= '`') goto yy871;
9978 if (yych >= '{') goto yy871;
9979 }
9980 }
9981 yy907:
9982 yych = *++p;
9983 if (yych <= ';') {
9984 if (yych <= '/') goto yy871;
9985 if (yych <= '9') goto yy908;
9986 if (yych <= ':') goto yy871;
9987 goto yy877;
9988 } else {
9989 if (yych <= 'Z') {
9990 if (yych <= '@') goto yy871;
9991 } else {
9992 if (yych <= '`') goto yy871;
9993 if (yych >= '{') goto yy871;
9994 }
9995 }
9996 yy908:
9997 yych = *++p;
9998 if (yych <= ';') {
9999 if (yych <= '/') goto yy871;
10000 if (yych <= '9') goto yy909;
10001 if (yych <= ':') goto yy871;
10002 goto yy877;
10003 } else {
10004 if (yych <= 'Z') {
10005 if (yych <= '@') goto yy871;
10006 } else {
10007 if (yych <= '`') goto yy871;
10008 if (yych >= '{') goto yy871;
10009 }
10010 }
10011 yy909:
10012 yych = *++p;
10013 if (yych <= ';') {
10014 if (yych <= '/') goto yy871;
10015 if (yych <= '9') goto yy910;
10016 if (yych <= ':') goto yy871;
10017 goto yy877;
10018 } else {
10019 if (yych <= 'Z') {
10020 if (yych <= '@') goto yy871;
10021 } else {
10022 if (yych <= '`') goto yy871;
10023 if (yych >= '{') goto yy871;
10024 }
10025 }
10026 yy910:
10027 yych = *++p;
10028 if (yych <= ';') {
10029 if (yych <= '/') goto yy871;
10030 if (yych <= '9') goto yy911;
10031 if (yych <= ':') goto yy871;
10032 goto yy877;
10033 } else {
10034 if (yych <= 'Z') {
10035 if (yych <= '@') goto yy871;
10036 } else {
10037 if (yych <= '`') goto yy871;
10038 if (yych >= '{') goto yy871;
10039 }
10040 }
10041 yy911:
10042 yych = *++p;
10043 if (yych <= ';') {
10044 if (yych <= '/') goto yy871;
10045 if (yych <= '9') goto yy912;
10046 if (yych <= ':') goto yy871;
10047 goto yy877;
10048 } else {
10049 if (yych <= 'Z') {
10050 if (yych <= '@') goto yy871;
10051 } else {
10052 if (yych <= '`') goto yy871;
10053 if (yych >= '{') goto yy871;
10054 }
10055 }
10056 yy912:
10057 yych = *++p;
10058 if (yych <= ';') {
10059 if (yych <= '/') goto yy871;
10060 if (yych <= '9') goto yy913;
10061 if (yych <= ':') goto yy871;
10062 goto yy877;
10063 } else {
10064 if (yych <= 'Z') {
10065 if (yych <= '@') goto yy871;
10066 } else {
10067 if (yych <= '`') goto yy871;
10068 if (yych >= '{') goto yy871;
10069 }
10070 }
10071 yy913:
10072 yych = *++p;
10073 if (yych <= ';') {
10074 if (yych <= '/') goto yy871;
10075 if (yych <= '9') goto yy914;
10076 if (yych <= ':') goto yy871;
10077 goto yy877;
10078 } else {
10079 if (yych <= 'Z') {
10080 if (yych <= '@') goto yy871;
10081 } else {
10082 if (yych <= '`') goto yy871;
10083 if (yych >= '{') goto yy871;
10084 }
10085 }
10086 yy914:
10087 yych = *++p;
10088 if (yych <= ';') {
10089 if (yych <= '/') goto yy871;
10090 if (yych <= '9') goto yy915;
10091 if (yych <= ':') goto yy871;
10092 goto yy877;
10093 } else {
10094 if (yych <= 'Z') {
10095 if (yych <= '@') goto yy871;
10096 } else {
10097 if (yych <= '`') goto yy871;
10098 if (yych >= '{') goto yy871;
10099 }
10100 }
10101 yy915:
10102 yych = *++p;
10103 if (yych <= ';') {
10104 if (yych <= '/') goto yy871;
10105 if (yych <= '9') goto yy916;
10106 if (yych <= ':') goto yy871;
10107 goto yy877;
10108 } else {
10109 if (yych <= 'Z') {
10110 if (yych <= '@') goto yy871;
10111 } else {
10112 if (yych <= '`') goto yy871;
10113 if (yych >= '{') goto yy871;
10114 }
10115 }
10116 yy916:
10117 yych = *++p;
10118 if (yych <= ';') {
10119 if (yych <= '/') goto yy871;
10120 if (yych <= '9') goto yy917;
10121 if (yych <= ':') goto yy871;
10122 goto yy877;
10123 } else {
10124 if (yych <= 'Z') {
10125 if (yych <= '@') goto yy871;
10126 } else {
10127 if (yych <= '`') goto yy871;
10128 if (yych >= '{') goto yy871;
10129 }
10130 }
10131 yy917:
10132 yych = *++p;
10133 if (yych <= ';') {
10134 if (yych <= '/') goto yy871;
10135 if (yych <= '9') goto yy893;
10136 if (yych <= ':') goto yy871;
10137 goto yy877;
10138 } else {
10139 if (yych <= 'Z') {
10140 if (yych <= '@') goto yy871;
10141 goto yy893;
10142 } else {
10143 if (yych <= '`') goto yy871;
10144 if (yych <= 'z') goto yy893;
10145 goto yy871;
10146 }
10147 }
10148 }
10149
10150 }
10151
10152 // Returns positive value if a URL begins in a way that is potentially
10153 // dangerous, with javascript:, vbscript:, file:, or data:, otherwise 0.
_scan_dangerous_url(const unsigned char * p)10154 bufsize_t _scan_dangerous_url(const unsigned char *p)
10155 {
10156 const unsigned char *marker = NULL;
10157 const unsigned char *start = p;
10158
10159 {
10160 unsigned char yych;
10161 unsigned int yyaccept = 0;
10162 yych = *p;
10163 if (yych <= 'V') {
10164 if (yych <= 'F') {
10165 if (yych == 'D') goto yy922;
10166 if (yych >= 'F') goto yy923;
10167 } else {
10168 if (yych == 'J') goto yy924;
10169 if (yych >= 'V') goto yy925;
10170 }
10171 } else {
10172 if (yych <= 'f') {
10173 if (yych == 'd') goto yy922;
10174 if (yych >= 'f') goto yy923;
10175 } else {
10176 if (yych <= 'j') {
10177 if (yych >= 'j') goto yy924;
10178 } else {
10179 if (yych == 'v') goto yy925;
10180 }
10181 }
10182 }
10183 ++p;
10184 yy921:
10185 { return 0; }
10186 yy922:
10187 yyaccept = 0;
10188 yych = *(marker = ++p);
10189 if (yych == 'A') goto yy926;
10190 if (yych == 'a') goto yy926;
10191 goto yy921;
10192 yy923:
10193 yyaccept = 0;
10194 yych = *(marker = ++p);
10195 if (yych == 'I') goto yy928;
10196 if (yych == 'i') goto yy928;
10197 goto yy921;
10198 yy924:
10199 yyaccept = 0;
10200 yych = *(marker = ++p);
10201 if (yych == 'A') goto yy929;
10202 if (yych == 'a') goto yy929;
10203 goto yy921;
10204 yy925:
10205 yyaccept = 0;
10206 yych = *(marker = ++p);
10207 if (yych == 'B') goto yy930;
10208 if (yych == 'b') goto yy930;
10209 goto yy921;
10210 yy926:
10211 yych = *++p;
10212 if (yych == 'T') goto yy931;
10213 if (yych == 't') goto yy931;
10214 yy927:
10215 p = marker;
10216 if (yyaccept == 0) {
10217 goto yy921;
10218 } else {
10219 goto yy939;
10220 }
10221 yy928:
10222 yych = *++p;
10223 if (yych == 'L') goto yy932;
10224 if (yych == 'l') goto yy932;
10225 goto yy927;
10226 yy929:
10227 yych = *++p;
10228 if (yych == 'V') goto yy933;
10229 if (yych == 'v') goto yy933;
10230 goto yy927;
10231 yy930:
10232 yych = *++p;
10233 if (yych == 'S') goto yy934;
10234 if (yych == 's') goto yy934;
10235 goto yy927;
10236 yy931:
10237 yych = *++p;
10238 if (yych == 'A') goto yy935;
10239 if (yych == 'a') goto yy935;
10240 goto yy927;
10241 yy932:
10242 yych = *++p;
10243 if (yych == 'E') goto yy936;
10244 if (yych == 'e') goto yy936;
10245 goto yy927;
10246 yy933:
10247 yych = *++p;
10248 if (yych == 'A') goto yy930;
10249 if (yych == 'a') goto yy930;
10250 goto yy927;
10251 yy934:
10252 yych = *++p;
10253 if (yych == 'C') goto yy937;
10254 if (yych == 'c') goto yy937;
10255 goto yy927;
10256 yy935:
10257 yych = *++p;
10258 if (yych == ':') goto yy938;
10259 goto yy927;
10260 yy936:
10261 yych = *++p;
10262 if (yych == ':') goto yy940;
10263 goto yy927;
10264 yy937:
10265 yych = *++p;
10266 if (yych == 'R') goto yy941;
10267 if (yych == 'r') goto yy941;
10268 goto yy927;
10269 yy938:
10270 yyaccept = 1;
10271 yych = *(marker = ++p);
10272 if (yych == 'I') goto yy942;
10273 if (yych == 'i') goto yy942;
10274 yy939:
10275 { return (bufsize_t)(p - start); }
10276 yy940:
10277 ++p;
10278 goto yy939;
10279 yy941:
10280 yych = *++p;
10281 if (yych == 'I') goto yy943;
10282 if (yych == 'i') goto yy943;
10283 goto yy927;
10284 yy942:
10285 yych = *++p;
10286 if (yych == 'M') goto yy944;
10287 if (yych == 'm') goto yy944;
10288 goto yy927;
10289 yy943:
10290 yych = *++p;
10291 if (yych == 'P') goto yy945;
10292 if (yych == 'p') goto yy945;
10293 goto yy927;
10294 yy944:
10295 yych = *++p;
10296 if (yych == 'A') goto yy946;
10297 if (yych == 'a') goto yy946;
10298 goto yy927;
10299 yy945:
10300 yych = *++p;
10301 if (yych == 'T') goto yy936;
10302 if (yych == 't') goto yy936;
10303 goto yy927;
10304 yy946:
10305 yych = *++p;
10306 if (yych == 'G') goto yy947;
10307 if (yych != 'g') goto yy927;
10308 yy947:
10309 yych = *++p;
10310 if (yych == 'E') goto yy948;
10311 if (yych != 'e') goto yy927;
10312 yy948:
10313 yych = *++p;
10314 if (yych != '/') goto yy927;
10315 yych = *++p;
10316 if (yych <= 'W') {
10317 if (yych <= 'J') {
10318 if (yych == 'G') goto yy950;
10319 if (yych <= 'I') goto yy927;
10320 goto yy951;
10321 } else {
10322 if (yych == 'P') goto yy952;
10323 if (yych <= 'V') goto yy927;
10324 goto yy953;
10325 }
10326 } else {
10327 if (yych <= 'j') {
10328 if (yych == 'g') goto yy950;
10329 if (yych <= 'i') goto yy927;
10330 goto yy951;
10331 } else {
10332 if (yych <= 'p') {
10333 if (yych <= 'o') goto yy927;
10334 goto yy952;
10335 } else {
10336 if (yych == 'w') goto yy953;
10337 goto yy927;
10338 }
10339 }
10340 }
10341 yy950:
10342 yych = *++p;
10343 if (yych == 'I') goto yy954;
10344 if (yych == 'i') goto yy954;
10345 goto yy927;
10346 yy951:
10347 yych = *++p;
10348 if (yych == 'P') goto yy955;
10349 if (yych == 'p') goto yy955;
10350 goto yy927;
10351 yy952:
10352 yych = *++p;
10353 if (yych == 'N') goto yy956;
10354 if (yych == 'n') goto yy956;
10355 goto yy927;
10356 yy953:
10357 yych = *++p;
10358 if (yych == 'E') goto yy957;
10359 if (yych == 'e') goto yy957;
10360 goto yy927;
10361 yy954:
10362 yych = *++p;
10363 if (yych == 'F') goto yy958;
10364 if (yych == 'f') goto yy958;
10365 goto yy927;
10366 yy955:
10367 yych = *++p;
10368 if (yych == 'E') goto yy956;
10369 if (yych != 'e') goto yy927;
10370 yy956:
10371 yych = *++p;
10372 if (yych == 'G') goto yy958;
10373 if (yych == 'g') goto yy958;
10374 goto yy927;
10375 yy957:
10376 yych = *++p;
10377 if (yych == 'B') goto yy960;
10378 if (yych == 'b') goto yy960;
10379 goto yy927;
10380 yy958:
10381 ++p;
10382 { return 0; }
10383 yy960:
10384 yych = *++p;
10385 if (yych == 'P') goto yy958;
10386 if (yych == 'p') goto yy958;
10387 goto yy927;
10388 }
10389
10390 }
10391
10392 // Scans a footnote definition opening.
_scan_footnote_definition(const unsigned char * p)10393 bufsize_t _scan_footnote_definition(const unsigned char *p)
10394 {
10395 const unsigned char *marker = NULL;
10396 const unsigned char *start = p;
10397
10398 {
10399 unsigned char yych;
10400 static const unsigned char yybm[] = {
10401 0, 64, 64, 64, 64, 64, 64, 64,
10402 64, 128, 0, 64, 64, 0, 64, 64,
10403 64, 64, 64, 64, 64, 64, 64, 64,
10404 64, 64, 64, 64, 64, 64, 64, 64,
10405 128, 64, 64, 64, 64, 64, 64, 64,
10406 64, 64, 64, 64, 64, 64, 64, 64,
10407 64, 64, 64, 64, 64, 64, 64, 64,
10408 64, 64, 64, 64, 64, 64, 64, 64,
10409 64, 64, 64, 64, 64, 64, 64, 64,
10410 64, 64, 64, 64, 64, 64, 64, 64,
10411 64, 64, 64, 64, 64, 64, 64, 64,
10412 64, 64, 64, 64, 64, 0, 64, 64,
10413 64, 64, 64, 64, 64, 64, 64, 64,
10414 64, 64, 64, 64, 64, 64, 64, 64,
10415 64, 64, 64, 64, 64, 64, 64, 64,
10416 64, 64, 64, 64, 64, 64, 64, 64,
10417 0, 0, 0, 0, 0, 0, 0, 0,
10418 0, 0, 0, 0, 0, 0, 0, 0,
10419 0, 0, 0, 0, 0, 0, 0, 0,
10420 0, 0, 0, 0, 0, 0, 0, 0,
10421 0, 0, 0, 0, 0, 0, 0, 0,
10422 0, 0, 0, 0, 0, 0, 0, 0,
10423 0, 0, 0, 0, 0, 0, 0, 0,
10424 0, 0, 0, 0, 0, 0, 0, 0,
10425 0, 0, 0, 0, 0, 0, 0, 0,
10426 0, 0, 0, 0, 0, 0, 0, 0,
10427 0, 0, 0, 0, 0, 0, 0, 0,
10428 0, 0, 0, 0, 0, 0, 0, 0,
10429 0, 0, 0, 0, 0, 0, 0, 0,
10430 0, 0, 0, 0, 0, 0, 0, 0,
10431 0, 0, 0, 0, 0, 0, 0, 0,
10432 0, 0, 0, 0, 0, 0, 0, 0,
10433 };
10434 yych = *p;
10435 if (yych == '[') goto yy965;
10436 ++p;
10437 yy964:
10438 { return 0; }
10439 yy965:
10440 yych = *(marker = ++p);
10441 if (yych != '^') goto yy964;
10442 yych = *++p;
10443 if (yych != ']') goto yy969;
10444 yy967:
10445 p = marker;
10446 goto yy964;
10447 yy968:
10448 yych = *++p;
10449 yy969:
10450 if (yybm[0+yych] & 64) {
10451 goto yy968;
10452 }
10453 if (yych <= 0xEC) {
10454 if (yych <= 0xC1) {
10455 if (yych <= ' ') goto yy967;
10456 if (yych <= ']') goto yy977;
10457 goto yy967;
10458 } else {
10459 if (yych <= 0xDF) goto yy970;
10460 if (yych <= 0xE0) goto yy971;
10461 goto yy972;
10462 }
10463 } else {
10464 if (yych <= 0xF0) {
10465 if (yych <= 0xED) goto yy973;
10466 if (yych <= 0xEF) goto yy972;
10467 goto yy974;
10468 } else {
10469 if (yych <= 0xF3) goto yy975;
10470 if (yych <= 0xF4) goto yy976;
10471 goto yy967;
10472 }
10473 }
10474 yy970:
10475 yych = *++p;
10476 if (yych <= 0x7F) goto yy967;
10477 if (yych <= 0xBF) goto yy968;
10478 goto yy967;
10479 yy971:
10480 yych = *++p;
10481 if (yych <= 0x9F) goto yy967;
10482 if (yych <= 0xBF) goto yy970;
10483 goto yy967;
10484 yy972:
10485 yych = *++p;
10486 if (yych <= 0x7F) goto yy967;
10487 if (yych <= 0xBF) goto yy970;
10488 goto yy967;
10489 yy973:
10490 yych = *++p;
10491 if (yych <= 0x7F) goto yy967;
10492 if (yych <= 0x9F) goto yy970;
10493 goto yy967;
10494 yy974:
10495 yych = *++p;
10496 if (yych <= 0x8F) goto yy967;
10497 if (yych <= 0xBF) goto yy972;
10498 goto yy967;
10499 yy975:
10500 yych = *++p;
10501 if (yych <= 0x7F) goto yy967;
10502 if (yych <= 0xBF) goto yy972;
10503 goto yy967;
10504 yy976:
10505 yych = *++p;
10506 if (yych <= 0x7F) goto yy967;
10507 if (yych <= 0x8F) goto yy972;
10508 goto yy967;
10509 yy977:
10510 yych = *++p;
10511 if (yych != ':') goto yy967;
10512 yy978:
10513 yych = *++p;
10514 if (yybm[0+yych] & 128) {
10515 goto yy978;
10516 }
10517 { return (bufsize_t)(p - start); }
10518 }
10519
10520 }
10521