cmark-gfm-0.1.7: cbits/scanners.c
/* Generated by re2c 1.1.1 */
#include <stdlib.h>
#include "chunk.h"
#include "scanners.h"
bufsize_t _scan_at(bufsize_t (*scanner)(const unsigned char *), cmark_chunk *c, bufsize_t offset)
{
bufsize_t res;
unsigned char *ptr = (unsigned char *)c->data;
if (ptr == NULL || offset > c->len) {
return 0;
} else {
unsigned char lim = ptr[c->len];
ptr[c->len] = '\0';
res = scanner(ptr + offset);
ptr[c->len] = lim;
}
return res;
}
// Try to match a scheme including colon.
bufsize_t _scan_scheme(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
yych = *p;
if (yych <= '@') goto yy2;
if (yych <= 'Z') goto yy4;
if (yych <= '`') goto yy2;
if (yych <= 'z') goto yy4;
yy2:
++p;
yy3:
{ return 0; }
yy4:
yych = *(marker = ++p);
if (yych <= '/') {
if (yych <= '+') {
if (yych <= '*') goto yy3;
} else {
if (yych <= ',') goto yy3;
if (yych >= '/') goto yy3;
}
} else {
if (yych <= 'Z') {
if (yych <= '9') goto yy5;
if (yych <= '@') goto yy3;
} else {
if (yych <= '`') goto yy3;
if (yych >= '{') goto yy3;
}
}
yy5:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych == '+') goto yy7;
} else {
if (yych != '/') goto yy7;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych >= 'A') goto yy7;
} else {
if (yych <= '`') goto yy6;
if (yych <= 'z') goto yy7;
}
}
yy6:
p = marker;
goto yy3;
yy7:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych == '+') goto yy10;
goto yy6;
} else {
if (yych == '/') goto yy6;
goto yy10;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
goto yy10;
} else {
if (yych <= '`') goto yy6;
if (yych <= 'z') goto yy10;
goto yy6;
}
}
yy8:
++p;
{ return (bufsize_t)(p - start); }
yy10:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy6;
} else {
if (yych == '/') goto yy6;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy8;
if (yych <= '@') goto yy6;
} else {
if (yych <= '`') goto yy6;
if (yych >= '{') goto yy6;
}
}
yych = *++p;
if (yych == ':') goto yy8;
goto yy6;
}
}
// Try to match URI autolink after first <, returning number of chars matched.
bufsize_t _scan_autolink_uri(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 0, 128, 0, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= '@') goto yy41;
if (yych <= 'Z') goto yy43;
if (yych <= '`') goto yy41;
if (yych <= 'z') goto yy43;
yy41:
++p;
yy42:
{ return 0; }
yy43:
yych = *(marker = ++p);
if (yych <= '/') {
if (yych <= '+') {
if (yych <= '*') goto yy42;
} else {
if (yych <= ',') goto yy42;
if (yych >= '/') goto yy42;
}
} else {
if (yych <= 'Z') {
if (yych <= '9') goto yy44;
if (yych <= '@') goto yy42;
} else {
if (yych <= '`') goto yy42;
if (yych >= '{') goto yy42;
}
}
yy44:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych == '+') goto yy46;
} else {
if (yych != '/') goto yy46;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych >= 'A') goto yy46;
} else {
if (yych <= '`') goto yy45;
if (yych <= 'z') goto yy46;
}
}
yy45:
p = marker;
goto yy42;
yy46:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych == '+') goto yy49;
goto yy45;
} else {
if (yych == '/') goto yy45;
goto yy49;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
goto yy49;
} else {
if (yych <= '`') goto yy45;
if (yych <= 'z') goto yy49;
goto yy45;
}
}
yy47:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy47;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '<') goto yy45;
if (yych <= '>') goto yy50;
goto yy45;
} else {
if (yych <= 0xDF) goto yy52;
if (yych <= 0xE0) goto yy53;
goto yy54;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy55;
if (yych <= 0xEF) goto yy54;
goto yy56;
} else {
if (yych <= 0xF3) goto yy57;
if (yych <= 0xF4) goto yy58;
goto yy45;
}
}
yy49:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych == '+') goto yy59;
goto yy45;
} else {
if (yych == '/') goto yy45;
goto yy59;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
goto yy59;
} else {
if (yych <= '`') goto yy45;
if (yych <= 'z') goto yy59;
goto yy45;
}
}
yy50:
++p;
{ return (bufsize_t)(p - start); }
yy52:
yych = *++p;
if (yych <= 0x7F) goto yy45;
if (yych <= 0xBF) goto yy47;
goto yy45;
yy53:
yych = *++p;
if (yych <= 0x9F) goto yy45;
if (yych <= 0xBF) goto yy52;
goto yy45;
yy54:
yych = *++p;
if (yych <= 0x7F) goto yy45;
if (yych <= 0xBF) goto yy52;
goto yy45;
yy55:
yych = *++p;
if (yych <= 0x7F) goto yy45;
if (yych <= 0x9F) goto yy52;
goto yy45;
yy56:
yych = *++p;
if (yych <= 0x8F) goto yy45;
if (yych <= 0xBF) goto yy54;
goto yy45;
yy57:
yych = *++p;
if (yych <= 0x7F) goto yy45;
if (yych <= 0xBF) goto yy54;
goto yy45;
yy58:
yych = *++p;
if (yych <= 0x7F) goto yy45;
if (yych <= 0x8F) goto yy54;
goto yy45;
yy59:
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych <= '9') {
if (yych <= ',') {
if (yych != '+') goto yy45;
} else {
if (yych == '/') goto yy45;
}
} else {
if (yych <= 'Z') {
if (yych <= ':') goto yy47;
if (yych <= '@') goto yy45;
} else {
if (yych <= '`') goto yy45;
if (yych >= '{') goto yy45;
}
}
yych = *++p;
if (yych == ':') goto yy47;
goto yy45;
}
}
// Try to match email autolink after first <, returning num of chars matched.
bufsize_t _scan_autolink_email(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 0, 128, 128, 128, 128, 128,
0, 0, 128, 128, 0, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 0, 0, 0, 128, 0, 128,
0, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 0, 0, 0, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= '9') {
if (yych <= '\'') {
if (yych == '!') goto yy91;
if (yych >= '#') goto yy91;
} else {
if (yych <= ')') goto yy89;
if (yych != ',') goto yy91;
}
} else {
if (yych <= '?') {
if (yych == '=') goto yy91;
if (yych >= '?') goto yy91;
} else {
if (yych <= 'Z') {
if (yych >= 'A') goto yy91;
} else {
if (yych <= ']') goto yy89;
if (yych <= '~') goto yy91;
}
}
}
yy89:
++p;
yy90:
{ return 0; }
yy91:
yych = *(marker = ++p);
if (yych <= ',') {
if (yych <= '"') {
if (yych == '!') goto yy93;
goto yy90;
} else {
if (yych <= '\'') goto yy93;
if (yych <= ')') goto yy90;
if (yych <= '+') goto yy93;
goto yy90;
}
} else {
if (yych <= '>') {
if (yych <= '9') goto yy93;
if (yych == '=') goto yy93;
goto yy90;
} else {
if (yych <= 'Z') goto yy93;
if (yych <= ']') goto yy90;
if (yych <= '~') goto yy93;
goto yy90;
}
}
yy92:
yych = *++p;
yy93:
if (yybm[0+yych] & 128) {
goto yy92;
}
if (yych <= '>') goto yy94;
if (yych <= '@') goto yy95;
yy94:
p = marker;
goto yy90;
yy95:
yych = *++p;
if (yych <= '@') {
if (yych <= '/') goto yy94;
if (yych >= ':') goto yy94;
} else {
if (yych <= 'Z') goto yy96;
if (yych <= '`') goto yy94;
if (yych >= '{') goto yy94;
}
yy96:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy98;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy98;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy98;
goto yy94;
}
}
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy101;
if (yych <= '/') goto yy94;
goto yy102;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy102;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy102;
goto yy94;
}
}
yy98:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych <= '-') goto yy101;
goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy102;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy102;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy102;
goto yy94;
}
}
yy99:
++p;
{ return (bufsize_t)(p - start); }
yy101:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy103;
if (yych <= '/') goto yy94;
goto yy104;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy104;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy104;
goto yy94;
}
}
yy102:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy104;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy104;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy104;
goto yy94;
}
}
yy103:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy105;
if (yych <= '/') goto yy94;
goto yy106;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy106;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy106;
goto yy94;
}
}
yy104:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy106;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy106;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy106;
goto yy94;
}
}
yy105:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy107;
if (yych <= '/') goto yy94;
goto yy108;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy108;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy108;
goto yy94;
}
}
yy106:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy108;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy108;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy108;
goto yy94;
}
}
yy107:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy109;
if (yych <= '/') goto yy94;
goto yy110;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy110;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy110;
goto yy94;
}
}
yy108:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy110;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy110;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy110;
goto yy94;
}
}
yy109:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy111;
if (yych <= '/') goto yy94;
goto yy112;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy112;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy112;
goto yy94;
}
}
yy110:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy112;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy112;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy112;
goto yy94;
}
}
yy111:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy113;
if (yych <= '/') goto yy94;
goto yy114;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy114;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy114;
goto yy94;
}
}
yy112:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy114;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy114;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy114;
goto yy94;
}
}
yy113:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy115;
if (yych <= '/') goto yy94;
goto yy116;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy116;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy116;
goto yy94;
}
}
yy114:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy116;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy116;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy116;
goto yy94;
}
}
yy115:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy117;
if (yych <= '/') goto yy94;
goto yy118;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy118;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy118;
goto yy94;
}
}
yy116:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy118;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy118;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy118;
goto yy94;
}
}
yy117:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy119;
if (yych <= '/') goto yy94;
goto yy120;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy120;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy120;
goto yy94;
}
}
yy118:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy120;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy120;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy120;
goto yy94;
}
}
yy119:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy121;
if (yych <= '/') goto yy94;
goto yy122;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy122;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy122;
goto yy94;
}
}
yy120:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy122;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy122;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy122;
goto yy94;
}
}
yy121:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy123;
if (yych <= '/') goto yy94;
goto yy124;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy124;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy124;
goto yy94;
}
}
yy122:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy124;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy124;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy124;
goto yy94;
}
}
yy123:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy125;
if (yych <= '/') goto yy94;
goto yy126;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy126;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy126;
goto yy94;
}
}
yy124:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy126;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy126;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy126;
goto yy94;
}
}
yy125:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy127;
if (yych <= '/') goto yy94;
goto yy128;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy128;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy128;
goto yy94;
}
}
yy126:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy128;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy128;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy128;
goto yy94;
}
}
yy127:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy129;
if (yych <= '/') goto yy94;
goto yy130;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy130;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy130;
goto yy94;
}
}
yy128:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy130;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy130;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy130;
goto yy94;
}
}
yy129:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy131;
if (yych <= '/') goto yy94;
goto yy132;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy132;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy132;
goto yy94;
}
}
yy130:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy132;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy132;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy132;
goto yy94;
}
}
yy131:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy133;
if (yych <= '/') goto yy94;
goto yy134;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy134;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy134;
goto yy94;
}
}
yy132:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy134;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy134;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy134;
goto yy94;
}
}
yy133:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy135;
if (yych <= '/') goto yy94;
goto yy136;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy136;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy136;
goto yy94;
}
}
yy134:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy136;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy136;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy136;
goto yy94;
}
}
yy135:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy137;
if (yych <= '/') goto yy94;
goto yy138;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy138;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy138;
goto yy94;
}
}
yy136:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy138;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy138;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy138;
goto yy94;
}
}
yy137:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy139;
if (yych <= '/') goto yy94;
goto yy140;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy140;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy140;
goto yy94;
}
}
yy138:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy140;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy140;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy140;
goto yy94;
}
}
yy139:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy141;
if (yych <= '/') goto yy94;
goto yy142;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy142;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy142;
goto yy94;
}
}
yy140:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy142;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy142;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy142;
goto yy94;
}
}
yy141:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy143;
if (yych <= '/') goto yy94;
goto yy144;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy144;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy144;
goto yy94;
}
}
yy142:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy144;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy144;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy144;
goto yy94;
}
}
yy143:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy145;
if (yych <= '/') goto yy94;
goto yy146;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy146;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy146;
goto yy94;
}
}
yy144:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy146;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy146;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy146;
goto yy94;
}
}
yy145:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy147;
if (yych <= '/') goto yy94;
goto yy148;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy148;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy148;
goto yy94;
}
}
yy146:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy148;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy148;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy148;
goto yy94;
}
}
yy147:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy149;
if (yych <= '/') goto yy94;
goto yy150;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy150;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy150;
goto yy94;
}
}
yy148:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy150;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy150;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy150;
goto yy94;
}
}
yy149:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy151;
if (yych <= '/') goto yy94;
goto yy152;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy152;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy152;
goto yy94;
}
}
yy150:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy152;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy152;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy152;
goto yy94;
}
}
yy151:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy153;
if (yych <= '/') goto yy94;
goto yy154;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy154;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy154;
goto yy94;
}
}
yy152:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy154;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy154;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy154;
goto yy94;
}
}
yy153:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy155;
if (yych <= '/') goto yy94;
goto yy156;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy156;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy156;
goto yy94;
}
}
yy154:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy156;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy156;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy156;
goto yy94;
}
}
yy155:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy157;
if (yych <= '/') goto yy94;
goto yy158;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy158;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy158;
goto yy94;
}
}
yy156:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy158;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy158;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy158;
goto yy94;
}
}
yy157:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy159;
if (yych <= '/') goto yy94;
goto yy160;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy160;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy160;
goto yy94;
}
}
yy158:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy160;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy160;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy160;
goto yy94;
}
}
yy159:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy161;
if (yych <= '/') goto yy94;
goto yy162;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy162;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy162;
goto yy94;
}
}
yy160:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy162;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy162;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy162;
goto yy94;
}
}
yy161:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy163;
if (yych <= '/') goto yy94;
goto yy164;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy164;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy164;
goto yy94;
}
}
yy162:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy164;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy164;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy164;
goto yy94;
}
}
yy163:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy165;
if (yych <= '/') goto yy94;
goto yy166;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy166;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy166;
goto yy94;
}
}
yy164:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy166;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy166;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy166;
goto yy94;
}
}
yy165:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy167;
if (yych <= '/') goto yy94;
goto yy168;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy168;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy168;
goto yy94;
}
}
yy166:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy168;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy168;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy168;
goto yy94;
}
}
yy167:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy169;
if (yych <= '/') goto yy94;
goto yy170;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy170;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy170;
goto yy94;
}
}
yy168:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy170;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy170;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy170;
goto yy94;
}
}
yy169:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy171;
if (yych <= '/') goto yy94;
goto yy172;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy172;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy172;
goto yy94;
}
}
yy170:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy172;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy172;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy172;
goto yy94;
}
}
yy171:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy173;
if (yych <= '/') goto yy94;
goto yy174;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy174;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy174;
goto yy94;
}
}
yy172:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy174;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy174;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy174;
goto yy94;
}
}
yy173:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy175;
if (yych <= '/') goto yy94;
goto yy176;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy176;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy176;
goto yy94;
}
}
yy174:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy176;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy176;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy176;
goto yy94;
}
}
yy175:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy177;
if (yych <= '/') goto yy94;
goto yy178;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy178;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy178;
goto yy94;
}
}
yy176:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy178;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy178;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy178;
goto yy94;
}
}
yy177:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy179;
if (yych <= '/') goto yy94;
goto yy180;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy180;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy180;
goto yy94;
}
}
yy178:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy180;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy180;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy180;
goto yy94;
}
}
yy179:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy181;
if (yych <= '/') goto yy94;
goto yy182;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy182;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy182;
goto yy94;
}
}
yy180:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy182;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy182;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy182;
goto yy94;
}
}
yy181:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy183;
if (yych <= '/') goto yy94;
goto yy184;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy184;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy184;
goto yy94;
}
}
yy182:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy184;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy184;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy184;
goto yy94;
}
}
yy183:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy185;
if (yych <= '/') goto yy94;
goto yy186;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy186;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy186;
goto yy94;
}
}
yy184:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy186;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy186;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy186;
goto yy94;
}
}
yy185:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy187;
if (yych <= '/') goto yy94;
goto yy188;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy188;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy188;
goto yy94;
}
}
yy186:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy188;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy188;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy188;
goto yy94;
}
}
yy187:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy189;
if (yych <= '/') goto yy94;
goto yy190;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy190;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy190;
goto yy94;
}
}
yy188:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy190;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy190;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy190;
goto yy94;
}
}
yy189:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy191;
if (yych <= '/') goto yy94;
goto yy192;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy192;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy192;
goto yy94;
}
}
yy190:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy192;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy192;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy192;
goto yy94;
}
}
yy191:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy193;
if (yych <= '/') goto yy94;
goto yy194;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy194;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy194;
goto yy94;
}
}
yy192:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy194;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy194;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy194;
goto yy94;
}
}
yy193:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy195;
if (yych <= '/') goto yy94;
goto yy196;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy196;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy196;
goto yy94;
}
}
yy194:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy196;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy196;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy196;
goto yy94;
}
}
yy195:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy197;
if (yych <= '/') goto yy94;
goto yy198;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy198;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy198;
goto yy94;
}
}
yy196:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy198;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy198;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy198;
goto yy94;
}
}
yy197:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy199;
if (yych <= '/') goto yy94;
goto yy200;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy200;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy200;
goto yy94;
}
}
yy198:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy200;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy200;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy200;
goto yy94;
}
}
yy199:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy201;
if (yych <= '/') goto yy94;
goto yy202;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy202;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy202;
goto yy94;
}
}
yy200:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy202;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy202;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy202;
goto yy94;
}
}
yy201:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy203;
if (yych <= '/') goto yy94;
goto yy204;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy204;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy204;
goto yy94;
}
}
yy202:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy204;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy204;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy204;
goto yy94;
}
}
yy203:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy205;
if (yych <= '/') goto yy94;
goto yy206;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy206;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy206;
goto yy94;
}
}
yy204:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy206;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy206;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy206;
goto yy94;
}
}
yy205:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy207;
if (yych <= '/') goto yy94;
goto yy208;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy208;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy208;
goto yy94;
}
}
yy206:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy208;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy208;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy208;
goto yy94;
}
}
yy207:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy209;
if (yych <= '/') goto yy94;
goto yy210;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy210;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy210;
goto yy94;
}
}
yy208:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy210;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy210;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy210;
goto yy94;
}
}
yy209:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy211;
if (yych <= '/') goto yy94;
goto yy212;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy212;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy212;
goto yy94;
}
}
yy210:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy212;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy212;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy212;
goto yy94;
}
}
yy211:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy213;
if (yych <= '/') goto yy94;
goto yy214;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy214;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy214;
goto yy94;
}
}
yy212:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy214;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy214;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy214;
goto yy94;
}
}
yy213:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy215;
if (yych <= '/') goto yy94;
goto yy216;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy216;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy216;
goto yy94;
}
}
yy214:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy216;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy216;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy216;
goto yy94;
}
}
yy215:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy217;
if (yych <= '/') goto yy94;
goto yy218;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy218;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy218;
goto yy94;
}
}
yy216:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy218;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy218;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy218;
goto yy94;
}
}
yy217:
yych = *++p;
if (yych <= '9') {
if (yych == '-') goto yy219;
if (yych <= '/') goto yy94;
goto yy220;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy94;
goto yy220;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy220;
goto yy94;
}
}
yy218:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= ',') goto yy94;
if (yych >= '.') goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy220;
goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
goto yy220;
} else {
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy220;
goto yy94;
}
}
yy219:
yych = *++p;
if (yych <= '@') {
if (yych <= '/') goto yy94;
if (yych <= '9') goto yy221;
goto yy94;
} else {
if (yych <= 'Z') goto yy221;
if (yych <= '`') goto yy94;
if (yych <= 'z') goto yy221;
goto yy94;
}
yy220:
yych = *++p;
if (yych <= '=') {
if (yych <= '.') {
if (yych <= '-') goto yy94;
goto yy95;
} else {
if (yych <= '/') goto yy94;
if (yych >= ':') goto yy94;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy99;
if (yych <= '@') goto yy94;
} else {
if (yych <= '`') goto yy94;
if (yych >= '{') goto yy94;
}
}
yy221:
yych = *++p;
if (yych == '.') goto yy95;
if (yych == '>') goto yy99;
goto yy94;
}
}
// Try to match an HTML tag after first <, returning num of chars matched.
bufsize_t _scan_html_tag(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
/* table 1 .. 8: 0 */
0, 250, 250, 250, 250, 250, 250, 250,
250, 235, 235, 235, 235, 235, 250, 250,
250, 250, 250, 250, 250, 250, 250, 250,
250, 250, 250, 250, 250, 250, 250, 250,
235, 250, 202, 250, 250, 250, 250, 170,
250, 250, 250, 250, 250, 246, 254, 250,
254, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 250, 234, 234, 232, 250,
250, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 250, 250, 122, 250, 254,
234, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 254, 254, 254, 254, 254,
254, 254, 254, 250, 250, 250, 250, 250,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
/* table 9 .. 11: 256 */
0, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 192, 128, 128,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 128, 128, 128, 128, 128, 0,
128, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 128, 128, 128, 128, 128,
128, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 128, 128, 128, 128, 128,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= '>') {
if (yych <= '!') {
if (yych >= '!') goto yy226;
} else {
if (yych == '/') goto yy227;
}
} else {
if (yych <= 'Z') {
if (yych <= '?') goto yy228;
if (yych >= 'A') goto yy229;
} else {
if (yych <= '`') goto yy224;
if (yych <= 'z') goto yy229;
}
}
yy224:
++p;
yy225:
{ return 0; }
yy226:
yych = *(marker = ++p);
if (yybm[256+yych] & 32) {
goto yy232;
}
if (yych == '-') goto yy230;
if (yych <= '@') goto yy225;
if (yych <= '[') goto yy234;
goto yy225;
yy227:
yych = *(marker = ++p);
if (yych <= '@') goto yy225;
if (yych <= 'Z') goto yy235;
if (yych <= '`') goto yy225;
if (yych <= 'z') goto yy235;
goto yy225;
yy228:
yych = *(marker = ++p);
if (yych <= 0x00) goto yy225;
if (yych <= 0x7F) goto yy238;
if (yych <= 0xC1) goto yy225;
if (yych <= 0xF4) goto yy238;
goto yy225;
yy229:
yych = *(marker = ++p);
if (yych <= '.') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy225;
if (yych <= '\r') goto yy250;
goto yy225;
} else {
if (yych <= ' ') goto yy250;
if (yych == '-') goto yy250;
goto yy225;
}
} else {
if (yych <= '@') {
if (yych <= '9') goto yy250;
if (yych == '>') goto yy250;
goto yy225;
} else {
if (yych <= 'Z') goto yy250;
if (yych <= '`') goto yy225;
if (yych <= 'z') goto yy250;
goto yy225;
}
}
yy230:
yych = *++p;
if (yych == '-') goto yy254;
yy231:
p = marker;
goto yy225;
yy232:
yych = *++p;
if (yybm[256+yych] & 32) {
goto yy232;
}
if (yych <= 0x08) goto yy231;
if (yych <= '\r') goto yy255;
if (yych == ' ') goto yy255;
goto yy231;
yy234:
yych = *++p;
if (yych == 'C') goto yy257;
if (yych == 'c') goto yy257;
goto yy231;
yy235:
yych = *++p;
if (yybm[256+yych] & 64) {
goto yy235;
}
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy231;
if (yych <= '\r') goto yy258;
goto yy231;
} else {
if (yych <= ' ') goto yy258;
if (yych == '>') goto yy252;
goto yy231;
}
yy237:
yych = *++p;
yy238:
if (yybm[256+yych] & 128) {
goto yy237;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych >= '@') goto yy231;
} else {
if (yych <= 0xDF) goto yy240;
if (yych <= 0xE0) goto yy241;
goto yy242;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy243;
if (yych <= 0xEF) goto yy242;
goto yy244;
} else {
if (yych <= 0xF3) goto yy245;
if (yych <= 0xF4) goto yy246;
goto yy231;
}
}
yych = *++p;
if (yych <= 0xE0) {
if (yych <= '>') {
if (yych <= 0x00) goto yy231;
if (yych <= '=') goto yy237;
goto yy252;
} else {
if (yych <= 0x7F) goto yy237;
if (yych <= 0xC1) goto yy231;
if (yych >= 0xE0) goto yy241;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy243;
goto yy242;
} else {
if (yych <= 0xF0) goto yy244;
if (yych <= 0xF3) goto yy245;
if (yych <= 0xF4) goto yy246;
goto yy231;
}
}
yy240:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy237;
goto yy231;
yy241:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy240;
goto yy231;
yy242:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy240;
goto yy231;
yy243:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy240;
goto yy231;
yy244:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy242;
goto yy231;
yy245:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy242;
goto yy231;
yy246:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy242;
goto yy231;
yy247:
yych = *++p;
if (yybm[0+yych] & 1) {
goto yy247;
}
if (yych <= '>') {
if (yych <= '9') {
if (yych == '/') goto yy251;
goto yy231;
} else {
if (yych <= ':') goto yy260;
if (yych <= '=') goto yy231;
goto yy252;
}
} else {
if (yych <= '^') {
if (yych <= '@') goto yy231;
if (yych <= 'Z') goto yy260;
goto yy231;
} else {
if (yych == '`') goto yy231;
if (yych <= 'z') goto yy260;
goto yy231;
}
}
yy249:
yych = *++p;
yy250:
if (yybm[0+yych] & 1) {
goto yy247;
}
if (yych <= '=') {
if (yych <= '.') {
if (yych == '-') goto yy249;
goto yy231;
} else {
if (yych <= '/') goto yy251;
if (yych <= '9') goto yy249;
goto yy231;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy252;
if (yych <= '@') goto yy231;
goto yy249;
} else {
if (yych <= '`') goto yy231;
if (yych <= 'z') goto yy249;
goto yy231;
}
}
yy251:
yych = *++p;
if (yych != '>') goto yy231;
yy252:
++p;
{ return (bufsize_t)(p - start); }
yy254:
yych = *++p;
if (yych == '-') goto yy264;
if (yych == '>') goto yy231;
goto yy263;
yy255:
yych = *++p;
if (yybm[0+yych] & 2) {
goto yy255;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= '>') goto yy252;
goto yy231;
} else {
if (yych <= 0xDF) goto yy272;
if (yych <= 0xE0) goto yy273;
goto yy274;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy275;
if (yych <= 0xEF) goto yy274;
goto yy276;
} else {
if (yych <= 0xF3) goto yy277;
if (yych <= 0xF4) goto yy278;
goto yy231;
}
}
yy257:
yych = *++p;
if (yych == 'D') goto yy279;
if (yych == 'd') goto yy279;
goto yy231;
yy258:
yych = *++p;
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy231;
if (yych <= '\r') goto yy258;
goto yy231;
} else {
if (yych <= ' ') goto yy258;
if (yych == '>') goto yy252;
goto yy231;
}
yy260:
yych = *++p;
if (yybm[0+yych] & 4) {
goto yy260;
}
if (yych <= ',') {
if (yych <= '\r') {
if (yych <= 0x08) goto yy231;
goto yy280;
} else {
if (yych == ' ') goto yy280;
goto yy231;
}
} else {
if (yych <= '<') {
if (yych <= '/') goto yy251;
goto yy231;
} else {
if (yych <= '=') goto yy282;
if (yych <= '>') goto yy252;
goto yy231;
}
}
yy262:
yych = *++p;
yy263:
if (yybm[0+yych] & 8) {
goto yy262;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= '-') goto yy284;
goto yy231;
} else {
if (yych <= 0xDF) goto yy265;
if (yych <= 0xE0) goto yy266;
goto yy267;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy268;
if (yych <= 0xEF) goto yy267;
goto yy269;
} else {
if (yych <= 0xF3) goto yy270;
if (yych <= 0xF4) goto yy271;
goto yy231;
}
}
yy264:
yych = *++p;
if (yych == '-') goto yy251;
if (yych == '>') goto yy231;
goto yy263;
yy265:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy262;
goto yy231;
yy266:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy265;
goto yy231;
yy267:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy265;
goto yy231;
yy268:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy265;
goto yy231;
yy269:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy267;
goto yy231;
yy270:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy267;
goto yy231;
yy271:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy267;
goto yy231;
yy272:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy255;
goto yy231;
yy273:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy272;
goto yy231;
yy274:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy272;
goto yy231;
yy275:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy272;
goto yy231;
yy276:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy274;
goto yy231;
yy277:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy274;
goto yy231;
yy278:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy274;
goto yy231;
yy279:
yych = *++p;
if (yych == 'A') goto yy285;
if (yych == 'a') goto yy285;
goto yy231;
yy280:
yych = *++p;
if (yych <= '<') {
if (yych <= ' ') {
if (yych <= 0x08) goto yy231;
if (yych <= '\r') goto yy280;
if (yych <= 0x1F) goto yy231;
goto yy280;
} else {
if (yych <= '/') {
if (yych <= '.') goto yy231;
goto yy251;
} else {
if (yych == ':') goto yy260;
goto yy231;
}
}
} else {
if (yych <= 'Z') {
if (yych <= '=') goto yy282;
if (yych <= '>') goto yy252;
if (yych <= '@') goto yy231;
goto yy260;
} else {
if (yych <= '_') {
if (yych <= '^') goto yy231;
goto yy260;
} else {
if (yych <= '`') goto yy231;
if (yych <= 'z') goto yy260;
goto yy231;
}
}
}
yy282:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy286;
}
if (yych <= 0xE0) {
if (yych <= '"') {
if (yych <= 0x00) goto yy231;
if (yych <= ' ') goto yy282;
goto yy288;
} else {
if (yych <= '\'') goto yy290;
if (yych <= 0xC1) goto yy231;
if (yych <= 0xDF) goto yy292;
goto yy293;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy295;
goto yy294;
} else {
if (yych <= 0xF0) goto yy296;
if (yych <= 0xF3) goto yy297;
if (yych <= 0xF4) goto yy298;
goto yy231;
}
}
yy284:
yych = *++p;
if (yybm[0+yych] & 8) {
goto yy262;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= '-') goto yy251;
goto yy231;
} else {
if (yych <= 0xDF) goto yy265;
if (yych <= 0xE0) goto yy266;
goto yy267;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy268;
if (yych <= 0xEF) goto yy267;
goto yy269;
} else {
if (yych <= 0xF3) goto yy270;
if (yych <= 0xF4) goto yy271;
goto yy231;
}
}
yy285:
yych = *++p;
if (yych == 'T') goto yy299;
if (yych == 't') goto yy299;
goto yy231;
yy286:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy286;
}
if (yych <= 0xE0) {
if (yych <= '=') {
if (yych <= 0x00) goto yy231;
if (yych <= ' ') goto yy247;
goto yy231;
} else {
if (yych <= '>') goto yy252;
if (yych <= 0xC1) goto yy231;
if (yych <= 0xDF) goto yy292;
goto yy293;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy295;
goto yy294;
} else {
if (yych <= 0xF0) goto yy296;
if (yych <= 0xF3) goto yy297;
if (yych <= 0xF4) goto yy298;
goto yy231;
}
}
yy288:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy288;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= '"') goto yy300;
goto yy231;
} else {
if (yych <= 0xDF) goto yy301;
if (yych <= 0xE0) goto yy302;
goto yy303;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy304;
if (yych <= 0xEF) goto yy303;
goto yy305;
} else {
if (yych <= 0xF3) goto yy306;
if (yych <= 0xF4) goto yy307;
goto yy231;
}
}
yy290:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy290;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= '\'') goto yy300;
goto yy231;
} else {
if (yych <= 0xDF) goto yy308;
if (yych <= 0xE0) goto yy309;
goto yy310;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy311;
if (yych <= 0xEF) goto yy310;
goto yy312;
} else {
if (yych <= 0xF3) goto yy313;
if (yych <= 0xF4) goto yy314;
goto yy231;
}
}
yy292:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy286;
goto yy231;
yy293:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy292;
goto yy231;
yy294:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy292;
goto yy231;
yy295:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy292;
goto yy231;
yy296:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy294;
goto yy231;
yy297:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy294;
goto yy231;
yy298:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy294;
goto yy231;
yy299:
yych = *++p;
if (yych == 'A') goto yy315;
if (yych == 'a') goto yy315;
goto yy231;
yy300:
yych = *++p;
if (yybm[0+yych] & 1) {
goto yy247;
}
if (yych == '/') goto yy251;
if (yych == '>') goto yy252;
goto yy231;
yy301:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy288;
goto yy231;
yy302:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy301;
goto yy231;
yy303:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy301;
goto yy231;
yy304:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy301;
goto yy231;
yy305:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy303;
goto yy231;
yy306:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy303;
goto yy231;
yy307:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy303;
goto yy231;
yy308:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy290;
goto yy231;
yy309:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy308;
goto yy231;
yy310:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy308;
goto yy231;
yy311:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy308;
goto yy231;
yy312:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy310;
goto yy231;
yy313:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy310;
goto yy231;
yy314:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy310;
goto yy231;
yy315:
yych = *++p;
if (yych != '[') goto yy231;
yy316:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy316;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych >= '^') goto yy231;
} else {
if (yych <= 0xDF) goto yy319;
if (yych <= 0xE0) goto yy320;
goto yy321;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy322;
if (yych <= 0xEF) goto yy321;
goto yy323;
} else {
if (yych <= 0xF3) goto yy324;
if (yych <= 0xF4) goto yy325;
goto yy231;
}
}
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy316;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy231;
if (yych <= ']') goto yy326;
goto yy231;
} else {
if (yych <= 0xDF) goto yy319;
if (yych <= 0xE0) goto yy320;
goto yy321;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy322;
if (yych <= 0xEF) goto yy321;
goto yy323;
} else {
if (yych <= 0xF3) goto yy324;
if (yych <= 0xF4) goto yy325;
goto yy231;
}
}
yy319:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy316;
goto yy231;
yy320:
yych = *++p;
if (yych <= 0x9F) goto yy231;
if (yych <= 0xBF) goto yy319;
goto yy231;
yy321:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy319;
goto yy231;
yy322:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x9F) goto yy319;
goto yy231;
yy323:
yych = *++p;
if (yych <= 0x8F) goto yy231;
if (yych <= 0xBF) goto yy321;
goto yy231;
yy324:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0xBF) goto yy321;
goto yy231;
yy325:
yych = *++p;
if (yych <= 0x7F) goto yy231;
if (yych <= 0x8F) goto yy321;
goto yy231;
yy326:
yych = *++p;
if (yych <= 0xE0) {
if (yych <= '>') {
if (yych <= 0x00) goto yy231;
if (yych <= '=') goto yy316;
goto yy252;
} else {
if (yych <= 0x7F) goto yy316;
if (yych <= 0xC1) goto yy231;
if (yych <= 0xDF) goto yy319;
goto yy320;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy322;
goto yy321;
} else {
if (yych <= 0xF0) goto yy323;
if (yych <= 0xF3) goto yy324;
if (yych <= 0xF4) goto yy325;
goto yy231;
}
}
}
}
// Try to (liberally) match an HTML tag after first <, returning num of chars matched.
bufsize_t _scan_liberal_html_tag(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 128, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xE0) {
if (yych <= '\n') {
if (yych <= 0x00) goto yy329;
if (yych <= '\t') goto yy331;
} else {
if (yych <= 0x7F) goto yy331;
if (yych <= 0xC1) goto yy329;
if (yych <= 0xDF) goto yy332;
goto yy333;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy335;
goto yy334;
} else {
if (yych <= 0xF0) goto yy336;
if (yych <= 0xF3) goto yy337;
if (yych <= 0xF4) goto yy338;
}
}
yy329:
++p;
yy330:
{ return 0; }
yy331:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy330;
if (yych <= '\t') goto yy340;
goto yy330;
} else {
if (yych <= 0x7F) goto yy340;
if (yych <= 0xC1) goto yy330;
if (yych <= 0xF4) goto yy340;
goto yy330;
}
yy332:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy330;
if (yych <= 0xBF) goto yy339;
goto yy330;
yy333:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy330;
if (yych <= 0xBF) goto yy345;
goto yy330;
yy334:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy330;
if (yych <= 0xBF) goto yy345;
goto yy330;
yy335:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy330;
if (yych <= 0x9F) goto yy345;
goto yy330;
yy336:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy330;
if (yych <= 0xBF) goto yy347;
goto yy330;
yy337:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy330;
if (yych <= 0xBF) goto yy347;
goto yy330;
yy338:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy330;
if (yych <= 0x8F) goto yy347;
goto yy330;
yy339:
yych = *++p;
yy340:
if (yybm[0+yych] & 64) {
goto yy339;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy341;
if (yych <= '>') goto yy342;
} else {
if (yych <= 0xDF) goto yy345;
if (yych <= 0xE0) goto yy346;
goto yy347;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy348;
if (yych <= 0xEF) goto yy347;
goto yy349;
} else {
if (yych <= 0xF3) goto yy350;
if (yych <= 0xF4) goto yy351;
}
}
yy341:
p = marker;
if (yyaccept == 0) {
goto yy330;
} else {
goto yy344;
}
yy342:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy339;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy344;
if (yych <= '>') goto yy342;
} else {
if (yych <= 0xDF) goto yy345;
if (yych <= 0xE0) goto yy346;
goto yy347;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy348;
if (yych <= 0xEF) goto yy347;
goto yy349;
} else {
if (yych <= 0xF3) goto yy350;
if (yych <= 0xF4) goto yy351;
}
}
yy344:
{ return (bufsize_t)(p - start); }
yy345:
yych = *++p;
if (yych <= 0x7F) goto yy341;
if (yych <= 0xBF) goto yy339;
goto yy341;
yy346:
yych = *++p;
if (yych <= 0x9F) goto yy341;
if (yych <= 0xBF) goto yy345;
goto yy341;
yy347:
yych = *++p;
if (yych <= 0x7F) goto yy341;
if (yych <= 0xBF) goto yy345;
goto yy341;
yy348:
yych = *++p;
if (yych <= 0x7F) goto yy341;
if (yych <= 0x9F) goto yy345;
goto yy341;
yy349:
yych = *++p;
if (yych <= 0x8F) goto yy341;
if (yych <= 0xBF) goto yy347;
goto yy341;
yy350:
yych = *++p;
if (yych <= 0x7F) goto yy341;
if (yych <= 0xBF) goto yy347;
goto yy341;
yy351:
yych = *++p;
if (yych <= 0x7F) goto yy341;
if (yych <= 0x8F) goto yy347;
goto yy341;
}
}
// Try to match an HTML block tag start line, returning
// an integer code for the type of block (1-6, matching the spec).
// #7 is handled by a separate function, below.
bufsize_t _scan_html_block_start(const unsigned char *p)
{
const unsigned char *marker = NULL;
{
unsigned char yych;
yych = *p;
if (yych == '<') goto yy356;
++p;
yy355:
{ return 0; }
yy356:
yych = *(marker = ++p);
switch (yych) {
case '!': goto yy357;
case '/': goto yy359;
case '?': goto yy360;
case 'A':
case 'a': goto yy362;
case 'B':
case 'b': goto yy363;
case 'C':
case 'c': goto yy364;
case 'D':
case 'd': goto yy365;
case 'F':
case 'f': goto yy366;
case 'H':
case 'h': goto yy367;
case 'I':
case 'i': goto yy368;
case 'L':
case 'l': goto yy369;
case 'M':
case 'm': goto yy370;
case 'N':
case 'n': goto yy371;
case 'O':
case 'o': goto yy372;
case 'P':
case 'p': goto yy373;
case 'S':
case 's': goto yy374;
case 'T':
case 't': goto yy375;
case 'U':
case 'u': goto yy376;
default: goto yy355;
}
yy357:
yych = *++p;
if (yych <= '@') {
if (yych == '-') goto yy377;
} else {
if (yych <= 'Z') goto yy378;
if (yych <= '[') goto yy380;
}
yy358:
p = marker;
goto yy355;
yy359:
yych = *++p;
switch (yych) {
case 'A':
case 'a': goto yy362;
case 'B':
case 'b': goto yy363;
case 'C':
case 'c': goto yy364;
case 'D':
case 'd': goto yy365;
case 'F':
case 'f': goto yy366;
case 'H':
case 'h': goto yy367;
case 'I':
case 'i': goto yy368;
case 'L':
case 'l': goto yy369;
case 'M':
case 'm': goto yy370;
case 'N':
case 'n': goto yy371;
case 'O':
case 'o': goto yy372;
case 'P':
case 'p': goto yy381;
case 'S':
case 's': goto yy382;
case 'T':
case 't': goto yy375;
case 'U':
case 'u': goto yy376;
default: goto yy358;
}
yy360:
++p;
{ return 3; }
yy362:
yych = *++p;
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= 'C') goto yy358;
goto yy383;
} else {
if (yych <= 'Q') goto yy358;
if (yych <= 'R') goto yy384;
goto yy385;
}
} else {
if (yych <= 'q') {
if (yych == 'd') goto yy383;
goto yy358;
} else {
if (yych <= 'r') goto yy384;
if (yych <= 's') goto yy385;
goto yy358;
}
}
yy363:
yych = *++p;
if (yych <= 'O') {
if (yych <= 'K') {
if (yych == 'A') goto yy386;
goto yy358;
} else {
if (yych <= 'L') goto yy387;
if (yych <= 'N') goto yy358;
goto yy388;
}
} else {
if (yych <= 'k') {
if (yych == 'a') goto yy386;
goto yy358;
} else {
if (yych <= 'l') goto yy387;
if (yych == 'o') goto yy388;
goto yy358;
}
}
yy364:
yych = *++p;
if (yych <= 'O') {
if (yych <= 'D') {
if (yych == 'A') goto yy389;
goto yy358;
} else {
if (yych <= 'E') goto yy390;
if (yych <= 'N') goto yy358;
goto yy391;
}
} else {
if (yych <= 'd') {
if (yych == 'a') goto yy389;
goto yy358;
} else {
if (yych <= 'e') goto yy390;
if (yych == 'o') goto yy391;
goto yy358;
}
}
yy365:
yych = *++p;
switch (yych) {
case 'D':
case 'L':
case 'T':
case 'd':
case 'l':
case 't': goto yy392;
case 'E':
case 'e': goto yy393;
case 'I':
case 'i': goto yy394;
default: goto yy358;
}
yy366:
yych = *++p;
if (yych <= 'R') {
if (yych <= 'N') {
if (yych == 'I') goto yy395;
goto yy358;
} else {
if (yych <= 'O') goto yy396;
if (yych <= 'Q') goto yy358;
goto yy397;
}
} else {
if (yych <= 'n') {
if (yych == 'i') goto yy395;
goto yy358;
} else {
if (yych <= 'o') goto yy396;
if (yych == 'r') goto yy397;
goto yy358;
}
}
yy367:
yych = *++p;
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= '0') goto yy358;
if (yych <= '6') goto yy392;
goto yy358;
} else {
if (yych <= 'E') goto yy398;
if (yych == 'R') goto yy392;
goto yy358;
}
} else {
if (yych <= 'q') {
if (yych <= 'T') goto yy399;
if (yych == 'e') goto yy398;
goto yy358;
} else {
if (yych <= 'r') goto yy392;
if (yych == 't') goto yy399;
goto yy358;
}
}
yy368:
yych = *++p;
if (yych == 'F') goto yy400;
if (yych == 'f') goto yy400;
goto yy358;
yy369:
yych = *++p;
if (yych <= 'I') {
if (yych == 'E') goto yy401;
if (yych <= 'H') goto yy358;
goto yy402;
} else {
if (yych <= 'e') {
if (yych <= 'd') goto yy358;
goto yy401;
} else {
if (yych == 'i') goto yy402;
goto yy358;
}
}
yy370:
yych = *++p;
if (yych <= 'E') {
if (yych == 'A') goto yy403;
if (yych <= 'D') goto yy358;
goto yy404;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy358;
goto yy403;
} else {
if (yych == 'e') goto yy404;
goto yy358;
}
}
yy371:
yych = *++p;
if (yych <= 'O') {
if (yych == 'A') goto yy405;
if (yych <= 'N') goto yy358;
goto yy406;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy358;
goto yy405;
} else {
if (yych == 'o') goto yy406;
goto yy358;
}
}
yy372:
yych = *++p;
if (yych <= 'P') {
if (yych == 'L') goto yy392;
if (yych <= 'O') goto yy358;
goto yy407;
} else {
if (yych <= 'l') {
if (yych <= 'k') goto yy358;
goto yy392;
} else {
if (yych == 'p') goto yy407;
goto yy358;
}
}
yy373:
yych = *++p;
if (yych <= '>') {
if (yych <= ' ') {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
if (yych <= 0x1F) goto yy358;
goto yy408;
} else {
if (yych == '/') goto yy410;
if (yych <= '=') goto yy358;
goto yy408;
}
} else {
if (yych <= 'R') {
if (yych == 'A') goto yy411;
if (yych <= 'Q') goto yy358;
goto yy412;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy358;
goto yy411;
} else {
if (yych == 'r') goto yy412;
goto yy358;
}
}
}
yy374:
yych = *++p;
switch (yych) {
case 'C':
case 'c': goto yy413;
case 'E':
case 'e': goto yy414;
case 'O':
case 'o': goto yy415;
case 'T':
case 't': goto yy416;
case 'U':
case 'u': goto yy417;
default: goto yy358;
}
yy375:
yych = *++p;
switch (yych) {
case 'A':
case 'a': goto yy418;
case 'B':
case 'b': goto yy419;
case 'D':
case 'd': goto yy392;
case 'F':
case 'f': goto yy420;
case 'H':
case 'h': goto yy421;
case 'I':
case 'i': goto yy422;
case 'R':
case 'r': goto yy423;
default: goto yy358;
}
yy376:
yych = *++p;
if (yych == 'L') goto yy392;
if (yych == 'l') goto yy392;
goto yy358;
yy377:
yych = *++p;
if (yych == '-') goto yy424;
goto yy358;
yy378:
++p;
{ return 4; }
yy380:
yych = *++p;
if (yych == 'C') goto yy426;
if (yych == 'c') goto yy426;
goto yy358;
yy381:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= '@') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'A') goto yy411;
if (yych == 'a') goto yy411;
goto yy358;
}
}
yy382:
yych = *++p;
if (yych <= 'U') {
if (yych <= 'N') {
if (yych == 'E') goto yy414;
goto yy358;
} else {
if (yych <= 'O') goto yy415;
if (yych <= 'T') goto yy358;
goto yy417;
}
} else {
if (yych <= 'n') {
if (yych == 'e') goto yy414;
goto yy358;
} else {
if (yych <= 'o') goto yy415;
if (yych == 'u') goto yy417;
goto yy358;
}
}
yy383:
yych = *++p;
if (yych == 'D') goto yy427;
if (yych == 'd') goto yy427;
goto yy358;
yy384:
yych = *++p;
if (yych == 'T') goto yy428;
if (yych == 't') goto yy428;
goto yy358;
yy385:
yych = *++p;
if (yych == 'I') goto yy429;
if (yych == 'i') goto yy429;
goto yy358;
yy386:
yych = *++p;
if (yych == 'S') goto yy430;
if (yych == 's') goto yy430;
goto yy358;
yy387:
yych = *++p;
if (yych == 'O') goto yy431;
if (yych == 'o') goto yy431;
goto yy358;
yy388:
yych = *++p;
if (yych == 'D') goto yy432;
if (yych == 'd') goto yy432;
goto yy358;
yy389:
yych = *++p;
if (yych == 'P') goto yy433;
if (yych == 'p') goto yy433;
goto yy358;
yy390:
yych = *++p;
if (yych == 'N') goto yy434;
if (yych == 'n') goto yy434;
goto yy358;
yy391:
yych = *++p;
if (yych == 'L') goto yy435;
if (yych == 'l') goto yy435;
goto yy358;
yy392:
yych = *++p;
if (yych <= ' ') {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
if (yych <= 0x1F) goto yy358;
goto yy408;
} else {
if (yych <= '/') {
if (yych <= '.') goto yy358;
goto yy410;
} else {
if (yych == '>') goto yy408;
goto yy358;
}
}
yy393:
yych = *++p;
if (yych == 'T') goto yy436;
if (yych == 't') goto yy436;
goto yy358;
yy394:
yych = *++p;
if (yych <= 'V') {
if (yych <= 'Q') {
if (yych == 'A') goto yy437;
goto yy358;
} else {
if (yych <= 'R') goto yy392;
if (yych <= 'U') goto yy358;
goto yy392;
}
} else {
if (yych <= 'q') {
if (yych == 'a') goto yy437;
goto yy358;
} else {
if (yych <= 'r') goto yy392;
if (yych == 'v') goto yy392;
goto yy358;
}
}
yy395:
yych = *++p;
if (yych <= 'G') {
if (yych == 'E') goto yy438;
if (yych <= 'F') goto yy358;
goto yy439;
} else {
if (yych <= 'e') {
if (yych <= 'd') goto yy358;
goto yy438;
} else {
if (yych == 'g') goto yy439;
goto yy358;
}
}
yy396:
yych = *++p;
if (yych <= 'R') {
if (yych == 'O') goto yy434;
if (yych <= 'Q') goto yy358;
goto yy440;
} else {
if (yych <= 'o') {
if (yych <= 'n') goto yy358;
goto yy434;
} else {
if (yych == 'r') goto yy440;
goto yy358;
}
}
yy397:
yych = *++p;
if (yych == 'A') goto yy441;
if (yych == 'a') goto yy441;
goto yy358;
yy398:
yych = *++p;
if (yych == 'A') goto yy442;
if (yych == 'a') goto yy442;
goto yy358;
yy399:
yych = *++p;
if (yych == 'M') goto yy376;
if (yych == 'm') goto yy376;
goto yy358;
yy400:
yych = *++p;
if (yych == 'R') goto yy443;
if (yych == 'r') goto yy443;
goto yy358;
yy401:
yych = *++p;
if (yych == 'G') goto yy444;
if (yych == 'g') goto yy444;
goto yy358;
yy402:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'M') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'N') goto yy445;
if (yych == 'n') goto yy445;
goto yy358;
}
}
yy403:
yych = *++p;
if (yych == 'I') goto yy446;
if (yych == 'i') goto yy446;
goto yy358;
yy404:
yych = *++p;
if (yych == 'N') goto yy447;
if (yych == 'n') goto yy447;
goto yy358;
yy405:
yych = *++p;
if (yych == 'V') goto yy392;
if (yych == 'v') goto yy392;
goto yy358;
yy406:
yych = *++p;
if (yych == 'F') goto yy448;
if (yych == 'f') goto yy448;
goto yy358;
yy407:
yych = *++p;
if (yych == 'T') goto yy449;
if (yych == 't') goto yy449;
goto yy358;
yy408:
++p;
{ return 6; }
yy410:
yych = *++p;
if (yych == '>') goto yy408;
goto yy358;
yy411:
yych = *++p;
if (yych == 'R') goto yy450;
if (yych == 'r') goto yy450;
goto yy358;
yy412:
yych = *++p;
if (yych == 'E') goto yy451;
if (yych == 'e') goto yy451;
goto yy358;
yy413:
yych = *++p;
if (yych == 'R') goto yy452;
if (yych == 'r') goto yy452;
goto yy358;
yy414:
yych = *++p;
if (yych == 'C') goto yy433;
if (yych == 'c') goto yy433;
goto yy358;
yy415:
yych = *++p;
if (yych == 'U') goto yy453;
if (yych == 'u') goto yy453;
goto yy358;
yy416:
yych = *++p;
if (yych == 'Y') goto yy454;
if (yych == 'y') goto yy454;
goto yy358;
yy417:
yych = *++p;
if (yych == 'M') goto yy455;
if (yych == 'm') goto yy455;
goto yy358;
yy418:
yych = *++p;
if (yych == 'B') goto yy456;
if (yych == 'b') goto yy456;
goto yy358;
yy419:
yych = *++p;
if (yych == 'O') goto yy388;
if (yych == 'o') goto yy388;
goto yy358;
yy420:
yych = *++p;
if (yych == 'O') goto yy457;
if (yych == 'o') goto yy457;
goto yy358;
yy421:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'D') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'E') goto yy458;
if (yych == 'e') goto yy458;
goto yy358;
}
}
yy422:
yych = *++p;
if (yych == 'T') goto yy456;
if (yych == 't') goto yy456;
goto yy358;
yy423:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= '@') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'A') goto yy459;
if (yych == 'a') goto yy459;
goto yy358;
}
}
yy424:
++p;
{ return 2; }
yy426:
yych = *++p;
if (yych == 'D') goto yy460;
if (yych == 'd') goto yy460;
goto yy358;
yy427:
yych = *++p;
if (yych == 'R') goto yy461;
if (yych == 'r') goto yy461;
goto yy358;
yy428:
yych = *++p;
if (yych == 'I') goto yy462;
if (yych == 'i') goto yy462;
goto yy358;
yy429:
yych = *++p;
if (yych == 'D') goto yy463;
if (yych == 'd') goto yy463;
goto yy358;
yy430:
yych = *++p;
if (yych == 'E') goto yy464;
if (yych == 'e') goto yy464;
goto yy358;
yy431:
yych = *++p;
if (yych == 'C') goto yy465;
if (yych == 'c') goto yy465;
goto yy358;
yy432:
yych = *++p;
if (yych == 'Y') goto yy392;
if (yych == 'y') goto yy392;
goto yy358;
yy433:
yych = *++p;
if (yych == 'T') goto yy466;
if (yych == 't') goto yy466;
goto yy358;
yy434:
yych = *++p;
if (yych == 'T') goto yy467;
if (yych == 't') goto yy467;
goto yy358;
yy435:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'F') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'G') goto yy468;
if (yych == 'g') goto yy468;
goto yy358;
}
}
yy436:
yych = *++p;
if (yych == 'A') goto yy469;
if (yych == 'a') goto yy469;
goto yy358;
yy437:
yych = *++p;
if (yych == 'L') goto yy470;
if (yych == 'l') goto yy470;
goto yy358;
yy438:
yych = *++p;
if (yych == 'L') goto yy471;
if (yych == 'l') goto yy471;
goto yy358;
yy439:
yych = *++p;
if (yych <= 'U') {
if (yych == 'C') goto yy472;
if (yych <= 'T') goto yy358;
goto yy473;
} else {
if (yych <= 'c') {
if (yych <= 'b') goto yy358;
goto yy472;
} else {
if (yych == 'u') goto yy473;
goto yy358;
}
}
yy440:
yych = *++p;
if (yych == 'M') goto yy392;
if (yych == 'm') goto yy392;
goto yy358;
yy441:
yych = *++p;
if (yych == 'M') goto yy474;
if (yych == 'm') goto yy474;
goto yy358;
yy442:
yych = *++p;
if (yych == 'D') goto yy475;
if (yych == 'd') goto yy475;
goto yy358;
yy443:
yych = *++p;
if (yych == 'A') goto yy476;
if (yych == 'a') goto yy476;
goto yy358;
yy444:
yych = *++p;
if (yych == 'E') goto yy477;
if (yych == 'e') goto yy477;
goto yy358;
yy445:
yych = *++p;
if (yych == 'K') goto yy392;
if (yych == 'k') goto yy392;
goto yy358;
yy446:
yych = *++p;
if (yych == 'N') goto yy392;
if (yych == 'n') goto yy392;
goto yy358;
yy447:
yych = *++p;
if (yych == 'U') goto yy478;
if (yych == 'u') goto yy478;
goto yy358;
yy448:
yych = *++p;
if (yych == 'R') goto yy479;
if (yych == 'r') goto yy479;
goto yy358;
yy449:
yych = *++p;
if (yych <= 'I') {
if (yych == 'G') goto yy468;
if (yych <= 'H') goto yy358;
goto yy480;
} else {
if (yych <= 'g') {
if (yych <= 'f') goto yy358;
goto yy468;
} else {
if (yych == 'i') goto yy480;
goto yy358;
}
}
yy450:
yych = *++p;
if (yych == 'A') goto yy440;
if (yych == 'a') goto yy440;
goto yy358;
yy451:
yych = *++p;
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy481;
goto yy358;
} else {
if (yych <= ' ') goto yy481;
if (yych == '>') goto yy481;
goto yy358;
}
yy452:
yych = *++p;
if (yych == 'I') goto yy483;
if (yych == 'i') goto yy483;
goto yy358;
yy453:
yych = *++p;
if (yych == 'R') goto yy484;
if (yych == 'r') goto yy484;
goto yy358;
yy454:
yych = *++p;
if (yych == 'L') goto yy412;
if (yych == 'l') goto yy412;
goto yy358;
yy455:
yych = *++p;
if (yych == 'M') goto yy485;
if (yych == 'm') goto yy485;
goto yy358;
yy456:
yych = *++p;
if (yych == 'L') goto yy463;
if (yych == 'l') goto yy463;
goto yy358;
yy457:
yych = *++p;
if (yych == 'O') goto yy486;
if (yych == 'o') goto yy486;
goto yy358;
yy458:
yych = *++p;
if (yych == 'A') goto yy487;
if (yych == 'a') goto yy487;
goto yy358;
yy459:
yych = *++p;
if (yych == 'C') goto yy445;
if (yych == 'c') goto yy445;
goto yy358;
yy460:
yych = *++p;
if (yych == 'A') goto yy488;
if (yych == 'a') goto yy488;
goto yy358;
yy461:
yych = *++p;
if (yych == 'E') goto yy489;
if (yych == 'e') goto yy489;
goto yy358;
yy462:
yych = *++p;
if (yych == 'C') goto yy456;
if (yych == 'c') goto yy456;
goto yy358;
yy463:
yych = *++p;
if (yych == 'E') goto yy392;
if (yych == 'e') goto yy392;
goto yy358;
yy464:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'E') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'F') goto yy490;
if (yych == 'f') goto yy490;
goto yy358;
}
}
yy465:
yych = *++p;
if (yych == 'K') goto yy491;
if (yych == 'k') goto yy491;
goto yy358;
yy466:
yych = *++p;
if (yych == 'I') goto yy480;
if (yych == 'i') goto yy480;
goto yy358;
yy467:
yych = *++p;
if (yych == 'E') goto yy492;
if (yych == 'e') goto yy492;
goto yy358;
yy468:
yych = *++p;
if (yych == 'R') goto yy493;
if (yych == 'r') goto yy493;
goto yy358;
yy469:
yych = *++p;
if (yych == 'I') goto yy494;
if (yych == 'i') goto yy494;
goto yy358;
yy470:
yych = *++p;
if (yych == 'O') goto yy495;
if (yych == 'o') goto yy495;
goto yy358;
yy471:
yych = *++p;
if (yych == 'D') goto yy496;
if (yych == 'd') goto yy496;
goto yy358;
yy472:
yych = *++p;
if (yych == 'A') goto yy389;
if (yych == 'a') goto yy389;
goto yy358;
yy473:
yych = *++p;
if (yych == 'R') goto yy463;
if (yych == 'r') goto yy463;
goto yy358;
yy474:
yych = *++p;
if (yych == 'E') goto yy497;
if (yych == 'e') goto yy497;
goto yy358;
yy475:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'D') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'E') goto yy492;
if (yych == 'e') goto yy492;
goto yy358;
}
}
yy476:
yych = *++p;
if (yych == 'M') goto yy463;
if (yych == 'm') goto yy463;
goto yy358;
yy477:
yych = *++p;
if (yych == 'N') goto yy487;
if (yych == 'n') goto yy487;
goto yy358;
yy478:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'H') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'I') goto yy498;
if (yych == 'i') goto yy498;
goto yy358;
}
}
yy479:
yych = *++p;
if (yych == 'A') goto yy499;
if (yych == 'a') goto yy499;
goto yy358;
yy480:
yych = *++p;
if (yych == 'O') goto yy446;
if (yych == 'o') goto yy446;
goto yy358;
yy481:
++p;
{ return 1; }
yy483:
yych = *++p;
if (yych == 'P') goto yy500;
if (yych == 'p') goto yy500;
goto yy358;
yy484:
yych = *++p;
if (yych == 'C') goto yy463;
if (yych == 'c') goto yy463;
goto yy358;
yy485:
yych = *++p;
if (yych == 'A') goto yy501;
if (yych == 'a') goto yy501;
goto yy358;
yy486:
yych = *++p;
if (yych == 'T') goto yy392;
if (yych == 't') goto yy392;
goto yy358;
yy487:
yych = *++p;
if (yych == 'D') goto yy392;
if (yych == 'd') goto yy392;
goto yy358;
yy488:
yych = *++p;
if (yych == 'T') goto yy502;
if (yych == 't') goto yy502;
goto yy358;
yy489:
yych = *++p;
if (yych == 'S') goto yy503;
if (yych == 's') goto yy503;
goto yy358;
yy490:
yych = *++p;
if (yych == 'O') goto yy504;
if (yych == 'o') goto yy504;
goto yy358;
yy491:
yych = *++p;
if (yych == 'Q') goto yy505;
if (yych == 'q') goto yy505;
goto yy358;
yy492:
yych = *++p;
if (yych == 'R') goto yy392;
if (yych == 'r') goto yy392;
goto yy358;
yy493:
yych = *++p;
if (yych == 'O') goto yy506;
if (yych == 'o') goto yy506;
goto yy358;
yy494:
yych = *++p;
if (yych == 'L') goto yy503;
if (yych == 'l') goto yy503;
goto yy358;
yy495:
yych = *++p;
if (yych == 'G') goto yy392;
if (yych == 'g') goto yy392;
goto yy358;
yy496:
yych = *++p;
if (yych == 'S') goto yy507;
if (yych == 's') goto yy507;
goto yy358;
yy497:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy358;
if (yych <= '\r') goto yy408;
goto yy358;
} else {
if (yych <= ' ') goto yy408;
if (yych <= '.') goto yy358;
goto yy410;
}
} else {
if (yych <= 'R') {
if (yych == '>') goto yy408;
goto yy358;
} else {
if (yych <= 'S') goto yy507;
if (yych == 's') goto yy507;
goto yy358;
}
}
yy498:
yych = *++p;
if (yych == 'T') goto yy508;
if (yych == 't') goto yy508;
goto yy358;
yy499:
yych = *++p;
if (yych == 'M') goto yy509;
if (yych == 'm') goto yy509;
goto yy358;
yy500:
yych = *++p;
if (yych == 'T') goto yy451;
if (yych == 't') goto yy451;
goto yy358;
yy501:
yych = *++p;
if (yych == 'R') goto yy432;
if (yych == 'r') goto yy432;
goto yy358;
yy502:
yych = *++p;
if (yych == 'A') goto yy510;
if (yych == 'a') goto yy510;
goto yy358;
yy503:
yych = *++p;
if (yych == 'S') goto yy392;
if (yych == 's') goto yy392;
goto yy358;
yy504:
yych = *++p;
if (yych == 'N') goto yy486;
if (yych == 'n') goto yy486;
goto yy358;
yy505:
yych = *++p;
if (yych == 'U') goto yy511;
if (yych == 'u') goto yy511;
goto yy358;
yy506:
yych = *++p;
if (yych == 'U') goto yy512;
if (yych == 'u') goto yy512;
goto yy358;
yy507:
yych = *++p;
if (yych == 'E') goto yy486;
if (yych == 'e') goto yy486;
goto yy358;
yy508:
yych = *++p;
if (yych == 'E') goto yy440;
if (yych == 'e') goto yy440;
goto yy358;
yy509:
yych = *++p;
if (yych == 'E') goto yy503;
if (yych == 'e') goto yy503;
goto yy358;
yy510:
yych = *++p;
if (yych == '[') goto yy513;
goto yy358;
yy511:
yych = *++p;
if (yych == 'O') goto yy515;
if (yych == 'o') goto yy515;
goto yy358;
yy512:
yych = *++p;
if (yych == 'P') goto yy392;
if (yych == 'p') goto yy392;
goto yy358;
yy513:
++p;
{ return 5; }
yy515:
yych = *++p;
if (yych == 'T') goto yy463;
if (yych == 't') goto yy463;
goto yy358;
}
}
// Try to match an HTML block tag start line of type 7, returning
// 7 if successful, 0 if not.
bufsize_t _scan_html_block_start_7(const unsigned char *p)
{
const unsigned char *marker = NULL;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 224, 224, 224, 224, 224, 224, 224,
224, 198, 210, 194, 198, 194, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
198, 224, 128, 224, 224, 224, 224, 64,
224, 224, 224, 224, 224, 233, 232, 224,
233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 232, 224, 192, 192, 192, 224,
224, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 224, 224, 224, 224, 232,
192, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 224, 224, 224, 224, 224,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '<') goto yy520;
++p;
yy519:
{ return 0; }
yy520:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '@') {
if (yych != '/') goto yy519;
} else {
if (yych <= 'Z') goto yy523;
if (yych <= '`') goto yy519;
if (yych <= 'z') goto yy523;
goto yy519;
}
yych = *++p;
if (yych <= '@') goto yy522;
if (yych <= 'Z') goto yy525;
if (yych <= '`') goto yy522;
if (yych <= 'z') goto yy525;
yy522:
p = marker;
if (yyaccept == 0) {
goto yy519;
} else {
goto yy538;
}
yy523:
yych = *++p;
if (yybm[0+yych] & 2) {
goto yy527;
}
if (yych <= '=') {
if (yych <= '.') {
if (yych == '-') goto yy523;
goto yy522;
} else {
if (yych <= '/') goto yy529;
if (yych <= '9') goto yy523;
goto yy522;
}
} else {
if (yych <= 'Z') {
if (yych <= '>') goto yy530;
if (yych <= '@') goto yy522;
goto yy523;
} else {
if (yych <= '`') goto yy522;
if (yych <= 'z') goto yy523;
goto yy522;
}
}
yy525:
yych = *++p;
if (yych <= '/') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy522;
if (yych <= '\r') goto yy532;
goto yy522;
} else {
if (yych <= ' ') goto yy532;
if (yych == '-') goto yy525;
goto yy522;
}
} else {
if (yych <= '@') {
if (yych <= '9') goto yy525;
if (yych == '>') goto yy530;
goto yy522;
} else {
if (yych <= 'Z') goto yy525;
if (yych <= '`') goto yy522;
if (yych <= 'z') goto yy525;
goto yy522;
}
}
yy527:
yych = *++p;
if (yybm[0+yych] & 2) {
goto yy527;
}
if (yych <= '>') {
if (yych <= '9') {
if (yych != '/') goto yy522;
} else {
if (yych <= ':') goto yy534;
if (yych <= '=') goto yy522;
goto yy530;
}
} else {
if (yych <= '^') {
if (yych <= '@') goto yy522;
if (yych <= 'Z') goto yy534;
goto yy522;
} else {
if (yych == '`') goto yy522;
if (yych <= 'z') goto yy534;
goto yy522;
}
}
yy529:
yych = *++p;
if (yych != '>') goto yy522;
yy530:
yych = *++p;
if (yybm[0+yych] & 4) {
goto yy530;
}
if (yych <= 0x08) goto yy522;
if (yych <= '\n') goto yy536;
if (yych <= '\v') goto yy522;
if (yych <= '\r') goto yy539;
goto yy522;
yy532:
yych = *++p;
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy522;
if (yych <= '\r') goto yy532;
goto yy522;
} else {
if (yych <= ' ') goto yy532;
if (yych == '>') goto yy530;
goto yy522;
}
yy534:
yych = *++p;
if (yybm[0+yych] & 8) {
goto yy534;
}
if (yych <= ',') {
if (yych <= '\r') {
if (yych <= 0x08) goto yy522;
goto yy540;
} else {
if (yych == ' ') goto yy540;
goto yy522;
}
} else {
if (yych <= '<') {
if (yych <= '/') goto yy529;
goto yy522;
} else {
if (yych <= '=') goto yy542;
if (yych <= '>') goto yy530;
goto yy522;
}
}
yy536:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 4) {
goto yy530;
}
if (yych <= 0x08) goto yy538;
if (yych <= '\n') goto yy536;
if (yych <= '\v') goto yy538;
if (yych <= '\r') goto yy539;
yy538:
{ return 7; }
yy539:
++p;
goto yy538;
yy540:
yych = *++p;
if (yych <= '<') {
if (yych <= ' ') {
if (yych <= 0x08) goto yy522;
if (yych <= '\r') goto yy540;
if (yych <= 0x1F) goto yy522;
goto yy540;
} else {
if (yych <= '/') {
if (yych <= '.') goto yy522;
goto yy529;
} else {
if (yych == ':') goto yy534;
goto yy522;
}
}
} else {
if (yych <= 'Z') {
if (yych <= '=') goto yy542;
if (yych <= '>') goto yy530;
if (yych <= '@') goto yy522;
goto yy534;
} else {
if (yych <= '_') {
if (yych <= '^') goto yy522;
goto yy534;
} else {
if (yych <= '`') goto yy522;
if (yych <= 'z') goto yy534;
goto yy522;
}
}
}
yy542:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy544;
}
if (yych <= 0xE0) {
if (yych <= '"') {
if (yych <= 0x00) goto yy522;
if (yych <= ' ') goto yy542;
goto yy546;
} else {
if (yych <= '\'') goto yy548;
if (yych <= 0xC1) goto yy522;
if (yych <= 0xDF) goto yy550;
goto yy551;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy553;
goto yy552;
} else {
if (yych <= 0xF0) goto yy554;
if (yych <= 0xF3) goto yy555;
if (yych <= 0xF4) goto yy556;
goto yy522;
}
}
yy544:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy544;
}
if (yych <= 0xE0) {
if (yych <= '=') {
if (yych <= 0x00) goto yy522;
if (yych <= ' ') goto yy527;
goto yy522;
} else {
if (yych <= '>') goto yy530;
if (yych <= 0xC1) goto yy522;
if (yych <= 0xDF) goto yy550;
goto yy551;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy553;
goto yy552;
} else {
if (yych <= 0xF0) goto yy554;
if (yych <= 0xF3) goto yy555;
if (yych <= 0xF4) goto yy556;
goto yy522;
}
}
yy546:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy546;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy522;
if (yych <= '"') goto yy557;
goto yy522;
} else {
if (yych <= 0xDF) goto yy558;
if (yych <= 0xE0) goto yy559;
goto yy560;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy561;
if (yych <= 0xEF) goto yy560;
goto yy562;
} else {
if (yych <= 0xF3) goto yy563;
if (yych <= 0xF4) goto yy564;
goto yy522;
}
}
yy548:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy548;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy522;
if (yych <= '\'') goto yy557;
goto yy522;
} else {
if (yych <= 0xDF) goto yy565;
if (yych <= 0xE0) goto yy566;
goto yy567;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy568;
if (yych <= 0xEF) goto yy567;
goto yy569;
} else {
if (yych <= 0xF3) goto yy570;
if (yych <= 0xF4) goto yy571;
goto yy522;
}
}
yy550:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy544;
goto yy522;
yy551:
yych = *++p;
if (yych <= 0x9F) goto yy522;
if (yych <= 0xBF) goto yy550;
goto yy522;
yy552:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy550;
goto yy522;
yy553:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x9F) goto yy550;
goto yy522;
yy554:
yych = *++p;
if (yych <= 0x8F) goto yy522;
if (yych <= 0xBF) goto yy552;
goto yy522;
yy555:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy552;
goto yy522;
yy556:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x8F) goto yy552;
goto yy522;
yy557:
yych = *++p;
if (yybm[0+yych] & 2) {
goto yy527;
}
if (yych == '/') goto yy529;
if (yych == '>') goto yy530;
goto yy522;
yy558:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy546;
goto yy522;
yy559:
yych = *++p;
if (yych <= 0x9F) goto yy522;
if (yych <= 0xBF) goto yy558;
goto yy522;
yy560:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy558;
goto yy522;
yy561:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x9F) goto yy558;
goto yy522;
yy562:
yych = *++p;
if (yych <= 0x8F) goto yy522;
if (yych <= 0xBF) goto yy560;
goto yy522;
yy563:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy560;
goto yy522;
yy564:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x8F) goto yy560;
goto yy522;
yy565:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy548;
goto yy522;
yy566:
yych = *++p;
if (yych <= 0x9F) goto yy522;
if (yych <= 0xBF) goto yy565;
goto yy522;
yy567:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy565;
goto yy522;
yy568:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x9F) goto yy565;
goto yy522;
yy569:
yych = *++p;
if (yych <= 0x8F) goto yy522;
if (yych <= 0xBF) goto yy567;
goto yy522;
yy570:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0xBF) goto yy567;
goto yy522;
yy571:
yych = *++p;
if (yych <= 0x7F) goto yy522;
if (yych <= 0x8F) goto yy567;
goto yy522;
}
}
// Try to match an HTML block end line of type 1
bufsize_t _scan_html_block_end_1(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 128, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xDF) {
if (yych <= ';') {
if (yych <= 0x00) goto yy574;
if (yych != '\n') goto yy576;
} else {
if (yych <= '<') goto yy577;
if (yych <= 0x7F) goto yy576;
if (yych >= 0xC2) goto yy578;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy579;
if (yych == 0xED) goto yy581;
goto yy580;
} else {
if (yych <= 0xF0) goto yy582;
if (yych <= 0xF3) goto yy583;
if (yych <= 0xF4) goto yy584;
}
}
yy574:
++p;
yy575:
{ return 0; }
yy576:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy575;
if (yych <= '\t') goto yy586;
goto yy575;
} else {
if (yych <= 0x7F) goto yy586;
if (yych <= 0xC1) goto yy575;
if (yych <= 0xF4) goto yy586;
goto yy575;
}
yy577:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '.') {
if (yych <= 0x00) goto yy575;
if (yych == '\n') goto yy575;
goto yy586;
} else {
if (yych <= 0x7F) {
if (yych <= '/') goto yy597;
goto yy586;
} else {
if (yych <= 0xC1) goto yy575;
if (yych <= 0xF4) goto yy586;
goto yy575;
}
}
yy578:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy575;
if (yych <= 0xBF) goto yy585;
goto yy575;
yy579:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy575;
if (yych <= 0xBF) goto yy590;
goto yy575;
yy580:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy575;
if (yych <= 0xBF) goto yy590;
goto yy575;
yy581:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy575;
if (yych <= 0x9F) goto yy590;
goto yy575;
yy582:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy575;
if (yych <= 0xBF) goto yy592;
goto yy575;
yy583:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy575;
if (yych <= 0xBF) goto yy592;
goto yy575;
yy584:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy575;
if (yych <= 0x8F) goto yy592;
goto yy575;
yy585:
yych = *++p;
yy586:
if (yybm[0+yych] & 64) {
goto yy585;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy587;
if (yych <= '<') goto yy588;
} else {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
goto yy592;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy593;
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
}
}
yy587:
p = marker;
if (yyaccept == 0) {
goto yy575;
} else {
goto yy607;
}
yy588:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xDF) {
if (yych <= '.') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= '/') goto yy597;
if (yych <= 0x7F) goto yy585;
if (yych <= 0xC1) goto yy587;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy591;
if (yych == 0xED) goto yy593;
goto yy592;
} else {
if (yych <= 0xF0) goto yy594;
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
yy590:
yych = *++p;
if (yych <= 0x7F) goto yy587;
if (yych <= 0xBF) goto yy585;
goto yy587;
yy591:
yych = *++p;
if (yych <= 0x9F) goto yy587;
if (yych <= 0xBF) goto yy590;
goto yy587;
yy592:
yych = *++p;
if (yych <= 0x7F) goto yy587;
if (yych <= 0xBF) goto yy590;
goto yy587;
yy593:
yych = *++p;
if (yych <= 0x7F) goto yy587;
if (yych <= 0x9F) goto yy590;
goto yy587;
yy594:
yych = *++p;
if (yych <= 0x8F) goto yy587;
if (yych <= 0xBF) goto yy592;
goto yy587;
yy595:
yych = *++p;
if (yych <= 0x7F) goto yy587;
if (yych <= 0xBF) goto yy592;
goto yy587;
yy596:
yych = *++p;
if (yych <= 0x7F) goto yy587;
if (yych <= 0x8F) goto yy592;
goto yy587;
yy597:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 's') {
if (yych <= 'P') {
if (yych <= '\t') {
if (yych <= 0x00) goto yy587;
goto yy585;
} else {
if (yych <= '\n') goto yy587;
if (yych <= 'O') goto yy585;
}
} else {
if (yych <= 'o') {
if (yych == 'S') goto yy599;
goto yy585;
} else {
if (yych <= 'p') goto yy598;
if (yych <= 'r') goto yy585;
goto yy599;
}
}
} else {
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x7F) goto yy585;
goto yy587;
} else {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
goto yy592;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy593;
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy598:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'Q') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'q') {
if (yych <= 'R') goto yy600;
goto yy585;
} else {
if (yych <= 'r') goto yy600;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy599:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 't') {
if (yych <= 'C') {
if (yych <= '\t') {
if (yych <= 0x00) goto yy587;
goto yy585;
} else {
if (yych <= '\n') goto yy587;
if (yych <= 'B') goto yy585;
goto yy601;
}
} else {
if (yych <= 'b') {
if (yych == 'T') goto yy602;
goto yy585;
} else {
if (yych <= 'c') goto yy601;
if (yych <= 's') goto yy585;
goto yy602;
}
}
} else {
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x7F) goto yy585;
goto yy587;
} else {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
goto yy592;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy593;
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy600:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'D') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'd') {
if (yych <= 'E') goto yy603;
goto yy585;
} else {
if (yych <= 'e') goto yy603;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy601:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'Q') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'q') {
if (yych <= 'R') goto yy604;
goto yy585;
} else {
if (yych <= 'r') goto yy604;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy602:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'X') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'x') {
if (yych <= 'Y') goto yy605;
goto yy585;
} else {
if (yych <= 'y') goto yy605;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy603:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xDF) {
if (yych <= '=') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= '>') goto yy606;
if (yych <= 0x7F) goto yy585;
if (yych <= 0xC1) goto yy587;
goto yy590;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy591;
if (yych == 0xED) goto yy593;
goto yy592;
} else {
if (yych <= 0xF0) goto yy594;
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
yy604:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'H') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'h') {
if (yych <= 'I') goto yy608;
goto yy585;
} else {
if (yych <= 'i') goto yy608;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy605:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'K') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'k') {
if (yych <= 'L') goto yy600;
goto yy585;
} else {
if (yych <= 'l') goto yy600;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy606:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy585;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy607;
if (yych <= '<') goto yy588;
} else {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
goto yy592;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy593;
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
}
}
yy607:
{ return (bufsize_t)(p - start); }
yy608:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'O') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 'o') {
if (yych >= 'Q') goto yy585;
} else {
if (yych <= 'p') goto yy609;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
yy609:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy588;
}
if (yych <= 0xC1) {
if (yych <= 'S') {
if (yych <= 0x00) goto yy587;
if (yych == '\n') goto yy587;
goto yy585;
} else {
if (yych <= 's') {
if (yych <= 'T') goto yy603;
goto yy585;
} else {
if (yych <= 't') goto yy603;
if (yych <= 0x7F) goto yy585;
goto yy587;
}
}
} else {
if (yych <= 0xED) {
if (yych <= 0xDF) goto yy590;
if (yych <= 0xE0) goto yy591;
if (yych <= 0xEC) goto yy592;
goto yy593;
} else {
if (yych <= 0xF0) {
if (yych <= 0xEF) goto yy592;
goto yy594;
} else {
if (yych <= 0xF3) goto yy595;
if (yych <= 0xF4) goto yy596;
goto yy587;
}
}
}
}
}
// Try to match an HTML block end line of type 2
bufsize_t _scan_html_block_end_2(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 128, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xDF) {
if (yych <= ',') {
if (yych <= 0x00) goto yy612;
if (yych != '\n') goto yy614;
} else {
if (yych <= '-') goto yy615;
if (yych <= 0x7F) goto yy614;
if (yych >= 0xC2) goto yy616;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy617;
if (yych == 0xED) goto yy619;
goto yy618;
} else {
if (yych <= 0xF0) goto yy620;
if (yych <= 0xF3) goto yy621;
if (yych <= 0xF4) goto yy622;
}
}
yy612:
++p;
yy613:
{ return 0; }
yy614:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy613;
if (yych <= '\t') goto yy624;
goto yy613;
} else {
if (yych <= 0x7F) goto yy624;
if (yych <= 0xC1) goto yy613;
if (yych <= 0xF4) goto yy624;
goto yy613;
}
yy615:
yyaccept = 0;
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy634;
}
if (yych <= '\n') {
if (yych <= 0x00) goto yy613;
if (yych <= '\t') goto yy624;
goto yy613;
} else {
if (yych <= 0x7F) goto yy624;
if (yych <= 0xC1) goto yy613;
if (yych <= 0xF4) goto yy624;
goto yy613;
}
yy616:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy613;
if (yych <= 0xBF) goto yy623;
goto yy613;
yy617:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy613;
if (yych <= 0xBF) goto yy627;
goto yy613;
yy618:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy613;
if (yych <= 0xBF) goto yy627;
goto yy613;
yy619:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy613;
if (yych <= 0x9F) goto yy627;
goto yy613;
yy620:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy613;
if (yych <= 0xBF) goto yy629;
goto yy613;
yy621:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy613;
if (yych <= 0xBF) goto yy629;
goto yy613;
yy622:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy613;
if (yych <= 0x8F) goto yy629;
goto yy613;
yy623:
yych = *++p;
yy624:
if (yybm[0+yych] & 64) {
goto yy623;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy625;
if (yych <= '-') goto yy626;
} else {
if (yych <= 0xDF) goto yy627;
if (yych <= 0xE0) goto yy628;
goto yy629;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy630;
if (yych <= 0xEF) goto yy629;
goto yy631;
} else {
if (yych <= 0xF3) goto yy632;
if (yych <= 0xF4) goto yy633;
}
}
yy625:
p = marker;
if (yyaccept == 0) {
goto yy613;
} else {
goto yy637;
}
yy626:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy623;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy625;
if (yych <= '-') goto yy634;
goto yy625;
} else {
if (yych <= 0xDF) goto yy627;
if (yych <= 0xE0) goto yy628;
goto yy629;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy630;
if (yych <= 0xEF) goto yy629;
goto yy631;
} else {
if (yych <= 0xF3) goto yy632;
if (yych <= 0xF4) goto yy633;
goto yy625;
}
}
yy627:
yych = *++p;
if (yych <= 0x7F) goto yy625;
if (yych <= 0xBF) goto yy623;
goto yy625;
yy628:
yych = *++p;
if (yych <= 0x9F) goto yy625;
if (yych <= 0xBF) goto yy627;
goto yy625;
yy629:
yych = *++p;
if (yych <= 0x7F) goto yy625;
if (yych <= 0xBF) goto yy627;
goto yy625;
yy630:
yych = *++p;
if (yych <= 0x7F) goto yy625;
if (yych <= 0x9F) goto yy627;
goto yy625;
yy631:
yych = *++p;
if (yych <= 0x8F) goto yy625;
if (yych <= 0xBF) goto yy629;
goto yy625;
yy632:
yych = *++p;
if (yych <= 0x7F) goto yy625;
if (yych <= 0xBF) goto yy629;
goto yy625;
yy633:
yych = *++p;
if (yych <= 0x7F) goto yy625;
if (yych <= 0x8F) goto yy629;
goto yy625;
yy634:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy634;
}
if (yych <= 0xDF) {
if (yych <= '=') {
if (yych <= 0x00) goto yy625;
if (yych == '\n') goto yy625;
goto yy623;
} else {
if (yych <= '>') goto yy636;
if (yych <= 0x7F) goto yy623;
if (yych <= 0xC1) goto yy625;
goto yy627;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy628;
if (yych == 0xED) goto yy630;
goto yy629;
} else {
if (yych <= 0xF0) goto yy631;
if (yych <= 0xF3) goto yy632;
if (yych <= 0xF4) goto yy633;
goto yy625;
}
}
yy636:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy623;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy637;
if (yych <= '-') goto yy626;
} else {
if (yych <= 0xDF) goto yy627;
if (yych <= 0xE0) goto yy628;
goto yy629;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy630;
if (yych <= 0xEF) goto yy629;
goto yy631;
} else {
if (yych <= 0xF3) goto yy632;
if (yych <= 0xF4) goto yy633;
}
}
yy637:
{ return (bufsize_t)(p - start); }
}
}
// Try to match an HTML block end line of type 3
bufsize_t _scan_html_block_end_3(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 128,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xDF) {
if (yych <= '>') {
if (yych <= 0x00) goto yy640;
if (yych != '\n') goto yy642;
} else {
if (yych <= '?') goto yy643;
if (yych <= 0x7F) goto yy642;
if (yych >= 0xC2) goto yy644;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy645;
if (yych == 0xED) goto yy647;
goto yy646;
} else {
if (yych <= 0xF0) goto yy648;
if (yych <= 0xF3) goto yy649;
if (yych <= 0xF4) goto yy650;
}
}
yy640:
++p;
yy641:
{ return 0; }
yy642:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy641;
if (yych <= '\t') goto yy652;
goto yy641;
} else {
if (yych <= 0x7F) goto yy652;
if (yych <= 0xC1) goto yy641;
if (yych <= 0xF4) goto yy652;
goto yy641;
}
yy643:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '=') {
if (yych <= 0x00) goto yy641;
if (yych == '\n') goto yy641;
goto yy652;
} else {
if (yych <= 0x7F) {
if (yych <= '>') goto yy663;
goto yy652;
} else {
if (yych <= 0xC1) goto yy641;
if (yych <= 0xF4) goto yy652;
goto yy641;
}
}
yy644:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy641;
if (yych <= 0xBF) goto yy651;
goto yy641;
yy645:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy641;
if (yych <= 0xBF) goto yy656;
goto yy641;
yy646:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy641;
if (yych <= 0xBF) goto yy656;
goto yy641;
yy647:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy641;
if (yych <= 0x9F) goto yy656;
goto yy641;
yy648:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy641;
if (yych <= 0xBF) goto yy658;
goto yy641;
yy649:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy641;
if (yych <= 0xBF) goto yy658;
goto yy641;
yy650:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy641;
if (yych <= 0x8F) goto yy658;
goto yy641;
yy651:
yych = *++p;
yy652:
if (yybm[0+yych] & 64) {
goto yy651;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy653;
if (yych <= '?') goto yy654;
} else {
if (yych <= 0xDF) goto yy656;
if (yych <= 0xE0) goto yy657;
goto yy658;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy659;
if (yych <= 0xEF) goto yy658;
goto yy660;
} else {
if (yych <= 0xF3) goto yy661;
if (yych <= 0xF4) goto yy662;
}
}
yy653:
p = marker;
if (yyaccept == 0) {
goto yy641;
} else {
goto yy664;
}
yy654:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy654;
}
if (yych <= 0xDF) {
if (yych <= '=') {
if (yych <= 0x00) goto yy653;
if (yych == '\n') goto yy653;
goto yy651;
} else {
if (yych <= '>') goto yy663;
if (yych <= 0x7F) goto yy651;
if (yych <= 0xC1) goto yy653;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy657;
if (yych == 0xED) goto yy659;
goto yy658;
} else {
if (yych <= 0xF0) goto yy660;
if (yych <= 0xF3) goto yy661;
if (yych <= 0xF4) goto yy662;
goto yy653;
}
}
yy656:
yych = *++p;
if (yych <= 0x7F) goto yy653;
if (yych <= 0xBF) goto yy651;
goto yy653;
yy657:
yych = *++p;
if (yych <= 0x9F) goto yy653;
if (yych <= 0xBF) goto yy656;
goto yy653;
yy658:
yych = *++p;
if (yych <= 0x7F) goto yy653;
if (yych <= 0xBF) goto yy656;
goto yy653;
yy659:
yych = *++p;
if (yych <= 0x7F) goto yy653;
if (yych <= 0x9F) goto yy656;
goto yy653;
yy660:
yych = *++p;
if (yych <= 0x8F) goto yy653;
if (yych <= 0xBF) goto yy658;
goto yy653;
yy661:
yych = *++p;
if (yych <= 0x7F) goto yy653;
if (yych <= 0xBF) goto yy658;
goto yy653;
yy662:
yych = *++p;
if (yych <= 0x7F) goto yy653;
if (yych <= 0x8F) goto yy658;
goto yy653;
yy663:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy651;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy664;
if (yych <= '?') goto yy654;
} else {
if (yych <= 0xDF) goto yy656;
if (yych <= 0xE0) goto yy657;
goto yy658;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy659;
if (yych <= 0xEF) goto yy658;
goto yy660;
} else {
if (yych <= 0xF3) goto yy661;
if (yych <= 0xF4) goto yy662;
}
}
yy664:
{ return (bufsize_t)(p - start); }
}
}
// Try to match an HTML block end line of type 4
bufsize_t _scan_html_block_end_4(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 128, 128, 128, 128, 128, 128, 128,
128, 128, 0, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 64, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yybm[0+yych] & 64) {
goto yy670;
}
if (yych <= 0xE0) {
if (yych <= '\n') {
if (yych <= 0x00) goto yy667;
if (yych <= '\t') goto yy669;
} else {
if (yych <= 0x7F) goto yy669;
if (yych <= 0xC1) goto yy667;
if (yych <= 0xDF) goto yy673;
goto yy674;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy676;
goto yy675;
} else {
if (yych <= 0xF0) goto yy677;
if (yych <= 0xF3) goto yy678;
if (yych <= 0xF4) goto yy679;
}
}
yy667:
++p;
yy668:
{ return 0; }
yy669:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy668;
if (yych <= '\t') goto yy681;
goto yy668;
} else {
if (yych <= 0x7F) goto yy681;
if (yych <= 0xC1) goto yy668;
if (yych <= 0xF4) goto yy681;
goto yy668;
}
yy670:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy680;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy672;
if (yych <= '>') goto yy670;
} else {
if (yych <= 0xDF) goto yy683;
if (yych <= 0xE0) goto yy684;
goto yy685;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy686;
if (yych <= 0xEF) goto yy685;
goto yy687;
} else {
if (yych <= 0xF3) goto yy688;
if (yych <= 0xF4) goto yy689;
}
}
yy672:
{ return (bufsize_t)(p - start); }
yy673:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy668;
if (yych <= 0xBF) goto yy680;
goto yy668;
yy674:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy668;
if (yych <= 0xBF) goto yy683;
goto yy668;
yy675:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy668;
if (yych <= 0xBF) goto yy683;
goto yy668;
yy676:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy668;
if (yych <= 0x9F) goto yy683;
goto yy668;
yy677:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy668;
if (yych <= 0xBF) goto yy685;
goto yy668;
yy678:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy668;
if (yych <= 0xBF) goto yy685;
goto yy668;
yy679:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy668;
if (yych <= 0x8F) goto yy685;
goto yy668;
yy680:
yych = *++p;
yy681:
if (yybm[0+yych] & 128) {
goto yy680;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy682;
if (yych <= '>') goto yy670;
} else {
if (yych <= 0xDF) goto yy683;
if (yych <= 0xE0) goto yy684;
goto yy685;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy686;
if (yych <= 0xEF) goto yy685;
goto yy687;
} else {
if (yych <= 0xF3) goto yy688;
if (yych <= 0xF4) goto yy689;
}
}
yy682:
p = marker;
if (yyaccept == 0) {
goto yy668;
} else {
goto yy672;
}
yy683:
yych = *++p;
if (yych <= 0x7F) goto yy682;
if (yych <= 0xBF) goto yy680;
goto yy682;
yy684:
yych = *++p;
if (yych <= 0x9F) goto yy682;
if (yych <= 0xBF) goto yy683;
goto yy682;
yy685:
yych = *++p;
if (yych <= 0x7F) goto yy682;
if (yych <= 0xBF) goto yy683;
goto yy682;
yy686:
yych = *++p;
if (yych <= 0x7F) goto yy682;
if (yych <= 0x9F) goto yy683;
goto yy682;
yy687:
yych = *++p;
if (yych <= 0x8F) goto yy682;
if (yych <= 0xBF) goto yy685;
goto yy682;
yy688:
yych = *++p;
if (yych <= 0x7F) goto yy682;
if (yych <= 0xBF) goto yy685;
goto yy682;
yy689:
yych = *++p;
if (yych <= 0x7F) goto yy682;
if (yych <= 0x8F) goto yy685;
goto yy682;
}
}
// Try to match an HTML block end line of type 5
bufsize_t _scan_html_block_end_5(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 128, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xDF) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy692;
if (yych != '\n') goto yy694;
} else {
if (yych <= ']') goto yy695;
if (yych <= 0x7F) goto yy694;
if (yych >= 0xC2) goto yy696;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy697;
if (yych == 0xED) goto yy699;
goto yy698;
} else {
if (yych <= 0xF0) goto yy700;
if (yych <= 0xF3) goto yy701;
if (yych <= 0xF4) goto yy702;
}
}
yy692:
++p;
yy693:
{ return 0; }
yy694:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00) goto yy693;
if (yych <= '\t') goto yy704;
goto yy693;
} else {
if (yych <= 0x7F) goto yy704;
if (yych <= 0xC1) goto yy693;
if (yych <= 0xF4) goto yy704;
goto yy693;
}
yy695:
yyaccept = 0;
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy714;
}
if (yych <= '\n') {
if (yych <= 0x00) goto yy693;
if (yych <= '\t') goto yy704;
goto yy693;
} else {
if (yych <= 0x7F) goto yy704;
if (yych <= 0xC1) goto yy693;
if (yych <= 0xF4) goto yy704;
goto yy693;
}
yy696:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy693;
if (yych <= 0xBF) goto yy703;
goto yy693;
yy697:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F) goto yy693;
if (yych <= 0xBF) goto yy707;
goto yy693;
yy698:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy693;
if (yych <= 0xBF) goto yy707;
goto yy693;
yy699:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy693;
if (yych <= 0x9F) goto yy707;
goto yy693;
yy700:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F) goto yy693;
if (yych <= 0xBF) goto yy709;
goto yy693;
yy701:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy693;
if (yych <= 0xBF) goto yy709;
goto yy693;
yy702:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F) goto yy693;
if (yych <= 0x8F) goto yy709;
goto yy693;
yy703:
yych = *++p;
yy704:
if (yybm[0+yych] & 64) {
goto yy703;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy705;
if (yych <= ']') goto yy706;
} else {
if (yych <= 0xDF) goto yy707;
if (yych <= 0xE0) goto yy708;
goto yy709;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy710;
if (yych <= 0xEF) goto yy709;
goto yy711;
} else {
if (yych <= 0xF3) goto yy712;
if (yych <= 0xF4) goto yy713;
}
}
yy705:
p = marker;
if (yyaccept == 0) {
goto yy693;
} else {
goto yy717;
}
yy706:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy703;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy705;
if (yych <= ']') goto yy714;
goto yy705;
} else {
if (yych <= 0xDF) goto yy707;
if (yych <= 0xE0) goto yy708;
goto yy709;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy710;
if (yych <= 0xEF) goto yy709;
goto yy711;
} else {
if (yych <= 0xF3) goto yy712;
if (yych <= 0xF4) goto yy713;
goto yy705;
}
}
yy707:
yych = *++p;
if (yych <= 0x7F) goto yy705;
if (yych <= 0xBF) goto yy703;
goto yy705;
yy708:
yych = *++p;
if (yych <= 0x9F) goto yy705;
if (yych <= 0xBF) goto yy707;
goto yy705;
yy709:
yych = *++p;
if (yych <= 0x7F) goto yy705;
if (yych <= 0xBF) goto yy707;
goto yy705;
yy710:
yych = *++p;
if (yych <= 0x7F) goto yy705;
if (yych <= 0x9F) goto yy707;
goto yy705;
yy711:
yych = *++p;
if (yych <= 0x8F) goto yy705;
if (yych <= 0xBF) goto yy709;
goto yy705;
yy712:
yych = *++p;
if (yych <= 0x7F) goto yy705;
if (yych <= 0xBF) goto yy709;
goto yy705;
yy713:
yych = *++p;
if (yych <= 0x7F) goto yy705;
if (yych <= 0x8F) goto yy709;
goto yy705;
yy714:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy714;
}
if (yych <= 0xDF) {
if (yych <= '=') {
if (yych <= 0x00) goto yy705;
if (yych == '\n') goto yy705;
goto yy703;
} else {
if (yych <= '>') goto yy716;
if (yych <= 0x7F) goto yy703;
if (yych <= 0xC1) goto yy705;
goto yy707;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) goto yy708;
if (yych == 0xED) goto yy710;
goto yy709;
} else {
if (yych <= 0xF0) goto yy711;
if (yych <= 0xF3) goto yy712;
if (yych <= 0xF4) goto yy713;
goto yy705;
}
}
yy716:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy703;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n') goto yy717;
if (yych <= ']') goto yy706;
} else {
if (yych <= 0xDF) goto yy707;
if (yych <= 0xE0) goto yy708;
goto yy709;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy710;
if (yych <= 0xEF) goto yy709;
goto yy711;
} else {
if (yych <= 0xF3) goto yy712;
if (yych <= 0xF4) goto yy713;
}
}
yy717:
{ return (bufsize_t)(p - start); }
}
}
// Try to match a link title (in single quotes, in double quotes, or
// in parentheses), returning number of chars matched. Allow one
// level of internal nesting (quotes within quotes).
bufsize_t _scan_link_title(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 192, 208, 208, 208, 208, 144,
208, 80, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 32, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
208, 208, 208, 208, 208, 208, 208, 208,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= '&') {
if (yych == '"') goto yy722;
} else {
if (yych <= '\'') goto yy723;
if (yych <= '(') goto yy724;
}
++p;
yy721:
{ return 0; }
yy722:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x00) goto yy721;
if (yych <= 0x7F) goto yy726;
if (yych <= 0xC1) goto yy721;
if (yych <= 0xF4) goto yy726;
goto yy721;
yy723:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x00) goto yy721;
if (yych <= 0x7F) goto yy740;
if (yych <= 0xC1) goto yy721;
if (yych <= 0xF4) goto yy740;
goto yy721;
yy724:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x00) goto yy721;
if (yych <= 0x7F) goto yy753;
if (yych <= 0xC1) goto yy721;
if (yych <= 0xF4) goto yy753;
goto yy721;
yy725:
yych = *++p;
yy726:
if (yybm[0+yych] & 16) {
goto yy725;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych <= '"') goto yy728;
goto yy730;
} else {
if (yych <= 0xC1) goto yy727;
if (yych <= 0xDF) goto yy732;
goto yy733;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy735;
goto yy734;
} else {
if (yych <= 0xF0) goto yy736;
if (yych <= 0xF3) goto yy737;
if (yych <= 0xF4) goto yy738;
}
}
yy727:
p = marker;
if (yyaccept <= 1) {
if (yyaccept == 0) {
goto yy721;
} else {
goto yy729;
}
} else {
if (yyaccept == 2) {
goto yy742;
} else {
goto yy755;
}
}
yy728:
++p;
yy729:
{ return (bufsize_t)(p - start); }
yy730:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy725;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych <= '"') goto yy765;
goto yy730;
} else {
if (yych <= 0xC1) goto yy727;
if (yych >= 0xE0) goto yy733;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy735;
goto yy734;
} else {
if (yych <= 0xF0) goto yy736;
if (yych <= 0xF3) goto yy737;
if (yych <= 0xF4) goto yy738;
goto yy727;
}
}
yy732:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy725;
goto yy727;
yy733:
yych = *++p;
if (yych <= 0x9F) goto yy727;
if (yych <= 0xBF) goto yy732;
goto yy727;
yy734:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy732;
goto yy727;
yy735:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x9F) goto yy732;
goto yy727;
yy736:
yych = *++p;
if (yych <= 0x8F) goto yy727;
if (yych <= 0xBF) goto yy734;
goto yy727;
yy737:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy734;
goto yy727;
yy738:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x8F) goto yy734;
goto yy727;
yy739:
yych = *++p;
yy740:
if (yybm[0+yych] & 64) {
goto yy739;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych >= '(') goto yy743;
} else {
if (yych <= 0xC1) goto yy727;
if (yych <= 0xDF) goto yy745;
goto yy746;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy748;
goto yy747;
} else {
if (yych <= 0xF0) goto yy749;
if (yych <= 0xF3) goto yy750;
if (yych <= 0xF4) goto yy751;
goto yy727;
}
}
yy741:
++p;
yy742:
{ return (bufsize_t)(p - start); }
yy743:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy739;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych <= '\'') goto yy766;
goto yy743;
} else {
if (yych <= 0xC1) goto yy727;
if (yych >= 0xE0) goto yy746;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy748;
goto yy747;
} else {
if (yych <= 0xF0) goto yy749;
if (yych <= 0xF3) goto yy750;
if (yych <= 0xF4) goto yy751;
goto yy727;
}
}
yy745:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy739;
goto yy727;
yy746:
yych = *++p;
if (yych <= 0x9F) goto yy727;
if (yych <= 0xBF) goto yy745;
goto yy727;
yy747:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy745;
goto yy727;
yy748:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x9F) goto yy745;
goto yy727;
yy749:
yych = *++p;
if (yych <= 0x8F) goto yy727;
if (yych <= 0xBF) goto yy747;
goto yy727;
yy750:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy747;
goto yy727;
yy751:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x8F) goto yy747;
goto yy727;
yy752:
yych = *++p;
yy753:
if (yybm[0+yych] & 128) {
goto yy752;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych >= '*') goto yy756;
} else {
if (yych <= 0xC1) goto yy727;
if (yych <= 0xDF) goto yy758;
goto yy759;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy761;
goto yy760;
} else {
if (yych <= 0xF0) goto yy762;
if (yych <= 0xF3) goto yy763;
if (yych <= 0xF4) goto yy764;
goto yy727;
}
}
yy754:
++p;
yy755:
{ return (bufsize_t)(p - start); }
yy756:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy752;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy727;
if (yych <= ')') goto yy767;
goto yy756;
} else {
if (yych <= 0xC1) goto yy727;
if (yych >= 0xE0) goto yy759;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy761;
goto yy760;
} else {
if (yych <= 0xF0) goto yy762;
if (yych <= 0xF3) goto yy763;
if (yych <= 0xF4) goto yy764;
goto yy727;
}
}
yy758:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy752;
goto yy727;
yy759:
yych = *++p;
if (yych <= 0x9F) goto yy727;
if (yych <= 0xBF) goto yy758;
goto yy727;
yy760:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy758;
goto yy727;
yy761:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x9F) goto yy758;
goto yy727;
yy762:
yych = *++p;
if (yych <= 0x8F) goto yy727;
if (yych <= 0xBF) goto yy760;
goto yy727;
yy763:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0xBF) goto yy760;
goto yy727;
yy764:
yych = *++p;
if (yych <= 0x7F) goto yy727;
if (yych <= 0x8F) goto yy760;
goto yy727;
yy765:
yyaccept = 1;
yych = *(marker = ++p);
if (yybm[0+yych] & 16) {
goto yy725;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy729;
if (yych <= '"') goto yy728;
goto yy730;
} else {
if (yych <= 0xC1) goto yy729;
if (yych <= 0xDF) goto yy732;
goto yy733;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy735;
goto yy734;
} else {
if (yych <= 0xF0) goto yy736;
if (yych <= 0xF3) goto yy737;
if (yych <= 0xF4) goto yy738;
goto yy729;
}
}
yy766:
yyaccept = 2;
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy739;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy742;
if (yych <= '\'') goto yy741;
goto yy743;
} else {
if (yych <= 0xC1) goto yy742;
if (yych <= 0xDF) goto yy745;
goto yy746;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy748;
goto yy747;
} else {
if (yych <= 0xF0) goto yy749;
if (yych <= 0xF3) goto yy750;
if (yych <= 0xF4) goto yy751;
goto yy742;
}
}
yy767:
yyaccept = 3;
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy752;
}
if (yych <= 0xE0) {
if (yych <= '\\') {
if (yych <= 0x00) goto yy755;
if (yych <= ')') goto yy754;
goto yy756;
} else {
if (yych <= 0xC1) goto yy755;
if (yych <= 0xDF) goto yy758;
goto yy759;
}
} else {
if (yych <= 0xEF) {
if (yych == 0xED) goto yy761;
goto yy760;
} else {
if (yych <= 0xF0) goto yy762;
if (yych <= 0xF3) goto yy763;
if (yych <= 0xF4) goto yy764;
goto yy755;
}
}
}
}
// Match space characters, including newlines.
bufsize_t _scan_spacechars(const unsigned char *p)
{
const unsigned char *start = p; \
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 128, 128, 128, 128, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
128, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yybm[0+yych] & 128) {
goto yy772;
}
++p;
{ return 0; }
yy772:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy772;
}
{ return (bufsize_t)(p - start); }
}
}
// Match ATX heading start.
bufsize_t _scan_atx_heading_start(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
128, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '#') goto yy779;
++p;
yy778:
{ return 0; }
yy779:
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy778;
if (yych <= '\n') goto yy783;
goto yy778;
} else {
if (yych <= '\r') goto yy783;
if (yych == '#') goto yy784;
goto yy778;
}
yy780:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
yy782:
{ return (bufsize_t)(p - start); }
yy783:
++p;
goto yy782;
yy784:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy785;
if (yych <= '\n') goto yy783;
} else {
if (yych <= '\r') goto yy783;
if (yych == '#') goto yy786;
}
yy785:
p = marker;
goto yy778;
yy786:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy785;
if (yych <= '\n') goto yy783;
goto yy785;
} else {
if (yych <= '\r') goto yy783;
if (yych != '#') goto yy785;
}
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy785;
if (yych <= '\n') goto yy783;
goto yy785;
} else {
if (yych <= '\r') goto yy783;
if (yych != '#') goto yy785;
}
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy785;
if (yych <= '\n') goto yy783;
goto yy785;
} else {
if (yych <= '\r') goto yy783;
if (yych != '#') goto yy785;
}
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy780;
}
if (yych <= 0x08) goto yy785;
if (yych <= '\n') goto yy783;
if (yych == '\r') goto yy783;
goto yy785;
}
}
// Match setext heading line. Return 1 for level-1 heading,
// 2 for level-2, 0 for no match.
bufsize_t _scan_setext_heading_line(const unsigned char *p)
{
const unsigned char *marker = NULL;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 32, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
32, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 64, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 128, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '-') goto yy794;
if (yych == '=') goto yy795;
++p;
yy793:
{ return 0; }
yy794:
yych = *(marker = ++p);
if (yybm[0+yych] & 64) {
goto yy801;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy793;
if (yych <= '\n') goto yy797;
goto yy793;
} else {
if (yych <= '\r') goto yy797;
if (yych == ' ') goto yy797;
goto yy793;
}
yy795:
yych = *(marker = ++p);
if (yybm[0+yych] & 128) {
goto yy807;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy793;
if (yych <= '\n') goto yy804;
goto yy793;
} else {
if (yych <= '\r') goto yy804;
if (yych == ' ') goto yy804;
goto yy793;
}
yy796:
yych = *++p;
yy797:
if (yybm[0+yych] & 32) {
goto yy796;
}
if (yych <= 0x08) goto yy798;
if (yych <= '\n') goto yy799;
if (yych == '\r') goto yy799;
yy798:
p = marker;
goto yy793;
yy799:
++p;
{ return 2; }
yy801:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy796;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy798;
if (yych <= '\n') goto yy799;
goto yy798;
} else {
if (yych <= '\r') goto yy799;
if (yych == '-') goto yy801;
goto yy798;
}
yy803:
yych = *++p;
yy804:
if (yych <= '\f') {
if (yych <= 0x08) goto yy798;
if (yych <= '\t') goto yy803;
if (yych >= '\v') goto yy798;
} else {
if (yych <= '\r') goto yy805;
if (yych == ' ') goto yy803;
goto yy798;
}
yy805:
++p;
{ return 1; }
yy807:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy807;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy798;
if (yych <= '\t') goto yy803;
if (yych <= '\n') goto yy805;
goto yy798;
} else {
if (yych <= '\r') goto yy805;
if (yych == ' ') goto yy803;
goto yy798;
}
}
}
// Scan a thematic break line: "...three or more hyphens, asterisks,
// or underscores on a line by themselves. If you wish, you may use
// spaces between the hyphens or asterisks."
bufsize_t _scan_thematic_break(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 240, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
240, 0, 0, 0, 0, 0, 0, 0,
0, 0, 32, 0, 0, 64, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 128,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych <= ',') {
if (yych == '*') goto yy813;
} else {
if (yych <= '-') goto yy814;
if (yych == '_') goto yy815;
}
++p;
yy812:
{ return 0; }
yy813:
yych = *(marker = ++p);
if (yybm[0+yych] & 16) {
goto yy816;
}
if (yych == '*') goto yy819;
goto yy812;
yy814:
yych = *(marker = ++p);
if (yych <= 0x1F) {
if (yych == '\t') goto yy821;
goto yy812;
} else {
if (yych <= ' ') goto yy821;
if (yych == '-') goto yy823;
goto yy812;
}
yy815:
yych = *(marker = ++p);
if (yych <= 0x1F) {
if (yych == '\t') goto yy825;
goto yy812;
} else {
if (yych <= ' ') goto yy825;
if (yych == '_') goto yy827;
goto yy812;
}
yy816:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy816;
}
if (yych == '*') goto yy819;
yy818:
p = marker;
goto yy812;
yy819:
yych = *++p;
if (yych <= 0x1F) {
if (yych == '\t') goto yy819;
goto yy818;
} else {
if (yych <= ' ') goto yy819;
if (yych == '*') goto yy829;
goto yy818;
}
yy821:
yych = *++p;
if (yych <= 0x1F) {
if (yych == '\t') goto yy821;
goto yy818;
} else {
if (yych <= ' ') goto yy821;
if (yych != '-') goto yy818;
}
yy823:
yych = *++p;
if (yych <= 0x1F) {
if (yych == '\t') goto yy823;
goto yy818;
} else {
if (yych <= ' ') goto yy823;
if (yych == '-') goto yy831;
goto yy818;
}
yy825:
yych = *++p;
if (yych <= 0x1F) {
if (yych == '\t') goto yy825;
goto yy818;
} else {
if (yych <= ' ') goto yy825;
if (yych != '_') goto yy818;
}
yy827:
yych = *++p;
if (yych <= 0x1F) {
if (yych == '\t') goto yy827;
goto yy818;
} else {
if (yych <= ' ') goto yy827;
if (yych == '_') goto yy833;
goto yy818;
}
yy829:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy829;
}
if (yych <= 0x08) goto yy818;
if (yych <= '\n') goto yy835;
if (yych == '\r') goto yy835;
goto yy818;
yy831:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy831;
}
if (yych <= 0x08) goto yy818;
if (yych <= '\n') goto yy837;
if (yych == '\r') goto yy837;
goto yy818;
yy833:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy833;
}
if (yych <= 0x08) goto yy818;
if (yych <= '\n') goto yy839;
if (yych == '\r') goto yy839;
goto yy818;
yy835:
++p;
{ return (bufsize_t)(p - start); }
yy837:
++p;
{ return (bufsize_t)(p - start); }
yy839:
++p;
{ return (bufsize_t)(p - start); }
}
}
// Scan an opening code fence.
bufsize_t _scan_open_code_fence(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 192, 192, 192, 192, 192, 192, 192,
192, 192, 0, 192, 192, 0, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
144, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 192, 192,
192, 192, 192, 192, 192, 192, 224, 192,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '`') goto yy845;
if (yych == '~') goto yy846;
++p;
yy844:
{ return 0; }
yy845:
yych = *(marker = ++p);
if (yych == '`') goto yy847;
goto yy844;
yy846:
yych = *(marker = ++p);
if (yych == '~') goto yy849;
goto yy844;
yy847:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy850;
}
yy848:
p = marker;
goto yy844;
yy849:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy852;
}
goto yy848;
yy850:
yych = *++p;
if (yybm[0+yych] & 16) {
goto yy850;
}
if (yych <= 0xDF) {
if (yych <= '\f') {
if (yych <= 0x00) goto yy848;
if (yych == '\n') {
marker = p;
goto yy856;
}
marker = p;
goto yy854;
} else {
if (yych <= '\r') {
marker = p;
goto yy856;
}
if (yych <= 0x7F) {
marker = p;
goto yy854;
}
if (yych <= 0xC1) goto yy848;
marker = p;
goto yy858;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) {
marker = p;
goto yy859;
}
if (yych == 0xED) {
marker = p;
goto yy861;
}
marker = p;
goto yy860;
} else {
if (yych <= 0xF0) {
marker = p;
goto yy862;
}
if (yych <= 0xF3) {
marker = p;
goto yy863;
}
if (yych <= 0xF4) {
marker = p;
goto yy864;
}
goto yy848;
}
}
yy852:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy852;
}
if (yych <= 0xDF) {
if (yych <= '\f') {
if (yych <= 0x00) goto yy848;
if (yych == '\n') {
marker = p;
goto yy867;
}
marker = p;
goto yy865;
} else {
if (yych <= '\r') {
marker = p;
goto yy867;
}
if (yych <= 0x7F) {
marker = p;
goto yy865;
}
if (yych <= 0xC1) goto yy848;
marker = p;
goto yy869;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0) {
marker = p;
goto yy870;
}
if (yych == 0xED) {
marker = p;
goto yy872;
}
marker = p;
goto yy871;
} else {
if (yych <= 0xF0) {
marker = p;
goto yy873;
}
if (yych <= 0xF3) {
marker = p;
goto yy874;
}
if (yych <= 0xF4) {
marker = p;
goto yy875;
}
goto yy848;
}
}
yy854:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy854;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy848;
if (yych >= 0x0E) goto yy848;
} else {
if (yych <= 0xDF) goto yy858;
if (yych <= 0xE0) goto yy859;
goto yy860;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy861;
if (yych <= 0xEF) goto yy860;
goto yy862;
} else {
if (yych <= 0xF3) goto yy863;
if (yych <= 0xF4) goto yy864;
goto yy848;
}
}
yy856:
++p;
p = marker;
{ return (bufsize_t)(p - start); }
yy858:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy854;
goto yy848;
yy859:
yych = *++p;
if (yych <= 0x9F) goto yy848;
if (yych <= 0xBF) goto yy858;
goto yy848;
yy860:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy858;
goto yy848;
yy861:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0x9F) goto yy858;
goto yy848;
yy862:
yych = *++p;
if (yych <= 0x8F) goto yy848;
if (yych <= 0xBF) goto yy860;
goto yy848;
yy863:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy860;
goto yy848;
yy864:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0x8F) goto yy860;
goto yy848;
yy865:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy865;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= 0x00) goto yy848;
if (yych >= 0x0E) goto yy848;
} else {
if (yych <= 0xDF) goto yy869;
if (yych <= 0xE0) goto yy870;
goto yy871;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy872;
if (yych <= 0xEF) goto yy871;
goto yy873;
} else {
if (yych <= 0xF3) goto yy874;
if (yych <= 0xF4) goto yy875;
goto yy848;
}
}
yy867:
++p;
p = marker;
{ return (bufsize_t)(p - start); }
yy869:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy865;
goto yy848;
yy870:
yych = *++p;
if (yych <= 0x9F) goto yy848;
if (yych <= 0xBF) goto yy869;
goto yy848;
yy871:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy869;
goto yy848;
yy872:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0x9F) goto yy869;
goto yy848;
yy873:
yych = *++p;
if (yych <= 0x8F) goto yy848;
if (yych <= 0xBF) goto yy871;
goto yy848;
yy874:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0xBF) goto yy871;
goto yy848;
yy875:
yych = *++p;
if (yych <= 0x7F) goto yy848;
if (yych <= 0x8F) goto yy871;
goto yy848;
}
}
// Scan a closing code fence with length at least len.
bufsize_t _scan_close_code_fence(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
128, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
32, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 64, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '`') goto yy880;
if (yych == '~') goto yy881;
++p;
yy879:
{ return 0; }
yy880:
yych = *(marker = ++p);
if (yych == '`') goto yy882;
goto yy879;
yy881:
yych = *(marker = ++p);
if (yych == '~') goto yy884;
goto yy879;
yy882:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy885;
}
yy883:
p = marker;
goto yy879;
yy884:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy887;
}
goto yy883;
yy885:
yych = *++p;
if (yybm[0+yych] & 32) {
goto yy885;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy883;
if (yych <= '\t') {
marker = p;
goto yy889;
}
if (yych <= '\n') {
marker = p;
goto yy891;
}
goto yy883;
} else {
if (yych <= '\r') {
marker = p;
goto yy891;
}
if (yych == ' ') {
marker = p;
goto yy889;
}
goto yy883;
}
yy887:
yych = *++p;
if (yybm[0+yych] & 64) {
goto yy887;
}
if (yych <= '\f') {
if (yych <= 0x08) goto yy883;
if (yych <= '\t') {
marker = p;
goto yy893;
}
if (yych <= '\n') {
marker = p;
goto yy895;
}
goto yy883;
} else {
if (yych <= '\r') {
marker = p;
goto yy895;
}
if (yych == ' ') {
marker = p;
goto yy893;
}
goto yy883;
}
yy889:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy889;
}
if (yych <= 0x08) goto yy883;
if (yych <= '\n') goto yy891;
if (yych != '\r') goto yy883;
yy891:
++p;
p = marker;
{ return (bufsize_t)(p - start); }
yy893:
yych = *++p;
if (yych <= '\f') {
if (yych <= 0x08) goto yy883;
if (yych <= '\t') goto yy893;
if (yych >= '\v') goto yy883;
} else {
if (yych <= '\r') goto yy895;
if (yych == ' ') goto yy893;
goto yy883;
}
yy895:
++p;
p = marker;
{ return (bufsize_t)(p - start); }
}
}
// Scans an entity.
// Returns number of chars matched.
bufsize_t _scan_entity(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
yych = *p;
if (yych == '&') goto yy901;
++p;
yy900:
{ return 0; }
yy901:
yych = *(marker = ++p);
if (yych <= '@') {
if (yych != '#') goto yy900;
} else {
if (yych <= 'Z') goto yy904;
if (yych <= '`') goto yy900;
if (yych <= 'z') goto yy904;
goto yy900;
}
yych = *++p;
if (yych <= 'W') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy905;
} else {
if (yych <= 'X') goto yy906;
if (yych == 'x') goto yy906;
}
yy903:
p = marker;
goto yy900;
yy904:
yych = *++p;
if (yych <= '@') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy907;
goto yy903;
} else {
if (yych <= 'Z') goto yy907;
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy907;
goto yy903;
}
yy905:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy908;
if (yych == ';') goto yy909;
goto yy903;
yy906:
yych = *++p;
if (yych <= '@') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy911;
goto yy903;
} else {
if (yych <= 'F') goto yy911;
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy911;
goto yy903;
}
yy907:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy912;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy912;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy912;
goto yy903;
}
}
yy908:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy913;
if (yych != ';') goto yy903;
yy909:
++p;
{ return (bufsize_t)(p - start); }
yy911:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy914;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'F') {
if (yych <= '@') goto yy903;
goto yy914;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy914;
goto yy903;
}
}
yy912:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy915;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy915;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy915;
goto yy903;
}
}
yy913:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy916;
if (yych == ';') goto yy909;
goto yy903;
yy914:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy917;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'F') {
if (yych <= '@') goto yy903;
goto yy917;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy917;
goto yy903;
}
}
yy915:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy918;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy918;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy918;
goto yy903;
}
}
yy916:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy919;
if (yych == ';') goto yy909;
goto yy903;
yy917:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy920;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'F') {
if (yych <= '@') goto yy903;
goto yy920;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy920;
goto yy903;
}
}
yy918:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy921;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy921;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy921;
goto yy903;
}
}
yy919:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy922;
if (yych == ';') goto yy909;
goto yy903;
yy920:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy923;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'F') {
if (yych <= '@') goto yy903;
goto yy923;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy923;
goto yy903;
}
}
yy921:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy924;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy924;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy924;
goto yy903;
}
}
yy922:
yych = *++p;
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy925;
if (yych == ';') goto yy909;
goto yy903;
yy923:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy925;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'F') {
if (yych <= '@') goto yy903;
goto yy925;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'f') goto yy925;
goto yy903;
}
}
yy924:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy926;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy926;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy926;
goto yy903;
}
}
yy925:
yych = *++p;
if (yych == ';') goto yy909;
goto yy903;
yy926:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy927;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy927:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy928;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy928:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy929;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy929:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy930;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy930:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy931;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy931:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy932;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy932:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy933;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy933:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy934;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy934:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy935;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy935:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy936;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy936:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy937;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy937:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy938;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy938:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy939;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy939:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy940;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy940:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy941;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy941:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy942;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy942:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy943;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy943:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy944;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy944:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy945;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy945:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy946;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy946:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy947;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy947:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy948;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy948:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy949;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
} else {
if (yych <= '`') goto yy903;
if (yych >= '{') goto yy903;
}
}
yy949:
yych = *++p;
if (yych <= ';') {
if (yych <= '/') goto yy903;
if (yych <= '9') goto yy925;
if (yych <= ':') goto yy903;
goto yy909;
} else {
if (yych <= 'Z') {
if (yych <= '@') goto yy903;
goto yy925;
} else {
if (yych <= '`') goto yy903;
if (yych <= 'z') goto yy925;
goto yy903;
}
}
}
}
// Returns positive value if a URL begins in a way that is potentially
// dangerous, with javascript:, vbscript:, file:, or data:, otherwise 0.
bufsize_t _scan_dangerous_url(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
yych = *p;
if (yych <= 'V') {
if (yych <= 'F') {
if (yych == 'D') goto yy954;
if (yych >= 'F') goto yy955;
} else {
if (yych == 'J') goto yy956;
if (yych >= 'V') goto yy957;
}
} else {
if (yych <= 'f') {
if (yych == 'd') goto yy954;
if (yych >= 'f') goto yy955;
} else {
if (yych <= 'j') {
if (yych >= 'j') goto yy956;
} else {
if (yych == 'v') goto yy957;
}
}
}
++p;
yy953:
{ return 0; }
yy954:
yyaccept = 0;
yych = *(marker = ++p);
if (yych == 'A') goto yy958;
if (yych == 'a') goto yy958;
goto yy953;
yy955:
yyaccept = 0;
yych = *(marker = ++p);
if (yych == 'I') goto yy960;
if (yych == 'i') goto yy960;
goto yy953;
yy956:
yyaccept = 0;
yych = *(marker = ++p);
if (yych == 'A') goto yy961;
if (yych == 'a') goto yy961;
goto yy953;
yy957:
yyaccept = 0;
yych = *(marker = ++p);
if (yych == 'B') goto yy962;
if (yych == 'b') goto yy962;
goto yy953;
yy958:
yych = *++p;
if (yych == 'T') goto yy963;
if (yych == 't') goto yy963;
yy959:
p = marker;
if (yyaccept == 0) {
goto yy953;
} else {
goto yy971;
}
yy960:
yych = *++p;
if (yych == 'L') goto yy964;
if (yych == 'l') goto yy964;
goto yy959;
yy961:
yych = *++p;
if (yych == 'V') goto yy965;
if (yych == 'v') goto yy965;
goto yy959;
yy962:
yych = *++p;
if (yych == 'S') goto yy966;
if (yych == 's') goto yy966;
goto yy959;
yy963:
yych = *++p;
if (yych == 'A') goto yy967;
if (yych == 'a') goto yy967;
goto yy959;
yy964:
yych = *++p;
if (yych == 'E') goto yy968;
if (yych == 'e') goto yy968;
goto yy959;
yy965:
yych = *++p;
if (yych == 'A') goto yy962;
if (yych == 'a') goto yy962;
goto yy959;
yy966:
yych = *++p;
if (yych == 'C') goto yy969;
if (yych == 'c') goto yy969;
goto yy959;
yy967:
yych = *++p;
if (yych == ':') goto yy970;
goto yy959;
yy968:
yych = *++p;
if (yych == ':') goto yy972;
goto yy959;
yy969:
yych = *++p;
if (yych == 'R') goto yy973;
if (yych == 'r') goto yy973;
goto yy959;
yy970:
yyaccept = 1;
yych = *(marker = ++p);
if (yych == 'I') goto yy974;
if (yych == 'i') goto yy974;
yy971:
{ return (bufsize_t)(p - start); }
yy972:
++p;
goto yy971;
yy973:
yych = *++p;
if (yych == 'I') goto yy975;
if (yych == 'i') goto yy975;
goto yy959;
yy974:
yych = *++p;
if (yych == 'M') goto yy976;
if (yych == 'm') goto yy976;
goto yy959;
yy975:
yych = *++p;
if (yych == 'P') goto yy977;
if (yych == 'p') goto yy977;
goto yy959;
yy976:
yych = *++p;
if (yych == 'A') goto yy978;
if (yych == 'a') goto yy978;
goto yy959;
yy977:
yych = *++p;
if (yych == 'T') goto yy968;
if (yych == 't') goto yy968;
goto yy959;
yy978:
yych = *++p;
if (yych == 'G') goto yy979;
if (yych != 'g') goto yy959;
yy979:
yych = *++p;
if (yych == 'E') goto yy980;
if (yych != 'e') goto yy959;
yy980:
yych = *++p;
if (yych != '/') goto yy959;
yych = *++p;
if (yych <= 'W') {
if (yych <= 'J') {
if (yych == 'G') goto yy982;
if (yych <= 'I') goto yy959;
goto yy983;
} else {
if (yych == 'P') goto yy984;
if (yych <= 'V') goto yy959;
goto yy985;
}
} else {
if (yych <= 'j') {
if (yych == 'g') goto yy982;
if (yych <= 'i') goto yy959;
goto yy983;
} else {
if (yych <= 'p') {
if (yych <= 'o') goto yy959;
goto yy984;
} else {
if (yych == 'w') goto yy985;
goto yy959;
}
}
}
yy982:
yych = *++p;
if (yych == 'I') goto yy986;
if (yych == 'i') goto yy986;
goto yy959;
yy983:
yych = *++p;
if (yych == 'P') goto yy987;
if (yych == 'p') goto yy987;
goto yy959;
yy984:
yych = *++p;
if (yych == 'N') goto yy988;
if (yych == 'n') goto yy988;
goto yy959;
yy985:
yych = *++p;
if (yych == 'E') goto yy989;
if (yych == 'e') goto yy989;
goto yy959;
yy986:
yych = *++p;
if (yych == 'F') goto yy990;
if (yych == 'f') goto yy990;
goto yy959;
yy987:
yych = *++p;
if (yych == 'E') goto yy988;
if (yych != 'e') goto yy959;
yy988:
yych = *++p;
if (yych == 'G') goto yy990;
if (yych == 'g') goto yy990;
goto yy959;
yy989:
yych = *++p;
if (yych == 'B') goto yy992;
if (yych == 'b') goto yy992;
goto yy959;
yy990:
++p;
{ return 0; }
yy992:
yych = *++p;
if (yych == 'P') goto yy990;
if (yych == 'p') goto yy990;
goto yy959;
}
}
// Scans a footnote definition opening.
bufsize_t _scan_footnote_definition(const unsigned char *p)
{
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64,
64, 128, 0, 64, 64, 0, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
128, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 0, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
yych = *p;
if (yych == '[') goto yy997;
++p;
yy996:
{ return 0; }
yy997:
yych = *(marker = ++p);
if (yych != '^') goto yy996;
yych = *++p;
if (yych != ']') goto yy1001;
yy999:
p = marker;
goto yy996;
yy1000:
yych = *++p;
yy1001:
if (yybm[0+yych] & 64) {
goto yy1000;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= ' ') goto yy999;
if (yych <= ']') goto yy1009;
goto yy999;
} else {
if (yych <= 0xDF) goto yy1002;
if (yych <= 0xE0) goto yy1003;
goto yy1004;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED) goto yy1005;
if (yych <= 0xEF) goto yy1004;
goto yy1006;
} else {
if (yych <= 0xF3) goto yy1007;
if (yych <= 0xF4) goto yy1008;
goto yy999;
}
}
yy1002:
yych = *++p;
if (yych <= 0x7F) goto yy999;
if (yych <= 0xBF) goto yy1000;
goto yy999;
yy1003:
yych = *++p;
if (yych <= 0x9F) goto yy999;
if (yych <= 0xBF) goto yy1002;
goto yy999;
yy1004:
yych = *++p;
if (yych <= 0x7F) goto yy999;
if (yych <= 0xBF) goto yy1002;
goto yy999;
yy1005:
yych = *++p;
if (yych <= 0x7F) goto yy999;
if (yych <= 0x9F) goto yy1002;
goto yy999;
yy1006:
yych = *++p;
if (yych <= 0x8F) goto yy999;
if (yych <= 0xBF) goto yy1004;
goto yy999;
yy1007:
yych = *++p;
if (yych <= 0x7F) goto yy999;
if (yych <= 0xBF) goto yy1004;
goto yy999;
yy1008:
yych = *++p;
if (yych <= 0x7F) goto yy999;
if (yych <= 0x8F) goto yy1004;
goto yy999;
yy1009:
yych = *++p;
if (yych != ':') goto yy999;
yy1010:
yych = *++p;
if (yybm[0+yych] & 128) {
goto yy1010;
}
{ return (bufsize_t)(p - start); }
}
}