/* Generated by re2c 1.3 */ #include #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; if (yych <= 'U') { if (yych <= 'D') { if (yych == 'C') goto yy413; goto yy358; } else { if (yych <= 'E') goto yy414; if (yych <= 'S') goto yy358; if (yych <= 'T') goto yy415; goto yy416; } } else { if (yych <= 'e') { if (yych == 'c') goto yy413; if (yych <= 'd') goto yy358; goto yy414; } else { if (yych <= 's') goto yy358; if (yych <= 't') goto yy415; if (yych <= 'u') goto yy416; goto yy358; } } yy375: yych = *++p; switch (yych) { case 'A': case 'a': goto yy417; case 'B': case 'b': goto yy418; case 'D': case 'd': goto yy392; case 'F': case 'f': goto yy419; case 'H': case 'h': goto yy420; case 'I': case 'i': goto yy421; case 'R': case 'r': goto yy422; default: goto yy358; } yy376: yych = *++p; if (yych == 'L') goto yy392; if (yych == 'l') goto yy392; goto yy358; yy377: yych = *++p; if (yych == '-') goto yy423; goto yy358; yy378: ++p; { return 4; } yy380: yych = *++p; if (yych == 'C') goto yy425; if (yych == 'c') goto yy425; 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 == 'E') goto yy414; if (yych <= 'T') goto yy358; goto yy416; } else { if (yych <= 'e') { if (yych <= 'd') goto yy358; goto yy414; } else { if (yych == 'u') goto yy416; goto yy358; } } yy383: yych = *++p; if (yych == 'D') goto yy426; if (yych == 'd') goto yy426; goto yy358; yy384: yych = *++p; if (yych == 'T') goto yy427; if (yych == 't') goto yy427; goto yy358; yy385: yych = *++p; if (yych == 'I') goto yy428; if (yych == 'i') goto yy428; goto yy358; yy386: yych = *++p; if (yych == 'S') goto yy429; if (yych == 's') goto yy429; goto yy358; yy387: yych = *++p; if (yych == 'O') goto yy430; if (yych == 'o') goto yy430; goto yy358; yy388: yych = *++p; if (yych == 'D') goto yy431; if (yych == 'd') goto yy431; goto yy358; yy389: yych = *++p; if (yych == 'P') goto yy432; if (yych == 'p') goto yy432; goto yy358; yy390: yych = *++p; if (yych == 'N') goto yy433; if (yych == 'n') goto yy433; goto yy358; yy391: yych = *++p; if (yych == 'L') goto yy434; if (yych == 'l') goto yy434; 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 yy435; if (yych == 't') goto yy435; goto yy358; yy394: yych = *++p; if (yych <= 'V') { if (yych <= 'Q') { if (yych == 'A') goto yy436; goto yy358; } else { if (yych <= 'R') goto yy392; if (yych <= 'U') goto yy358; goto yy392; } } else { if (yych <= 'q') { if (yych == 'a') goto yy436; 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 yy437; if (yych <= 'F') goto yy358; goto yy438; } else { if (yych <= 'e') { if (yych <= 'd') goto yy358; goto yy437; } else { if (yych == 'g') goto yy438; goto yy358; } } yy396: yych = *++p; if (yych <= 'R') { if (yych == 'O') goto yy433; if (yych <= 'Q') goto yy358; goto yy439; } else { if (yych <= 'o') { if (yych <= 'n') goto yy358; goto yy433; } else { if (yych == 'r') goto yy439; goto yy358; } } yy397: yych = *++p; if (yych == 'A') goto yy440; if (yych == 'a') goto yy440; goto yy358; yy398: yych = *++p; if (yych == 'A') goto yy441; if (yych == 'a') goto yy441; goto yy358; yy399: yych = *++p; if (yych == 'M') goto yy376; if (yych == 'm') goto yy376; goto yy358; yy400: yych = *++p; if (yych == 'R') goto yy442; if (yych == 'r') goto yy442; goto yy358; yy401: yych = *++p; if (yych == 'G') goto yy443; if (yych == 'g') goto yy443; 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 yy444; if (yych == 'n') goto yy444; goto yy358; } } yy403: yych = *++p; if (yych == 'I') goto yy445; if (yych == 'i') goto yy445; goto yy358; yy404: yych = *++p; if (yych == 'N') goto yy446; if (yych == 'n') goto yy446; goto yy358; yy405: yych = *++p; if (yych == 'V') goto yy392; if (yych == 'v') goto yy392; goto yy358; yy406: yych = *++p; if (yych == 'F') goto yy447; if (yych == 'f') goto yy447; goto yy358; yy407: yych = *++p; if (yych == 'T') goto yy448; if (yych == 't') goto yy448; goto yy358; yy408: ++p; { return 6; } yy410: yych = *++p; if (yych == '>') goto yy408; goto yy358; yy411: yych = *++p; if (yych == 'R') goto yy449; if (yych == 'r') goto yy449; goto yy358; yy412: yych = *++p; if (yych == 'E') goto yy450; if (yych == 'e') goto yy450; goto yy358; yy413: yych = *++p; if (yych == 'R') goto yy451; if (yych == 'r') goto yy451; goto yy358; yy414: yych = *++p; if (yych == 'C') goto yy432; if (yych == 'c') goto yy432; goto yy358; yy415: yych = *++p; if (yych == 'Y') goto yy452; if (yych == 'y') goto yy452; goto yy358; yy416: yych = *++p; if (yych == 'M') goto yy453; if (yych == 'm') goto yy453; goto yy358; yy417: yych = *++p; if (yych == 'B') goto yy454; if (yych == 'b') goto yy454; goto yy358; yy418: yych = *++p; if (yych == 'O') goto yy388; if (yych == 'o') goto yy388; goto yy358; yy419: yych = *++p; if (yych == 'O') goto yy455; if (yych == 'o') goto yy455; goto yy358; yy420: 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 yy456; if (yych == 'e') goto yy456; goto yy358; } } yy421: yych = *++p; if (yych == 'T') goto yy454; if (yych == 't') goto yy454; goto yy358; yy422: 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 yy457; if (yych == 'a') goto yy457; goto yy358; } } yy423: ++p; { return 2; } yy425: yych = *++p; if (yych == 'D') goto yy458; if (yych == 'd') goto yy458; goto yy358; yy426: yych = *++p; if (yych == 'R') goto yy459; if (yych == 'r') goto yy459; goto yy358; yy427: yych = *++p; if (yych == 'I') goto yy460; if (yych == 'i') goto yy460; goto yy358; yy428: yych = *++p; if (yych == 'D') goto yy461; if (yych == 'd') goto yy461; goto yy358; yy429: yych = *++p; if (yych == 'E') goto yy462; if (yych == 'e') goto yy462; goto yy358; yy430: yych = *++p; if (yych == 'C') goto yy463; if (yych == 'c') goto yy463; goto yy358; yy431: yych = *++p; if (yych == 'Y') goto yy392; if (yych == 'y') goto yy392; goto yy358; yy432: yych = *++p; if (yych == 'T') goto yy464; if (yych == 't') goto yy464; goto yy358; yy433: yych = *++p; if (yych == 'T') goto yy465; if (yych == 't') goto yy465; goto yy358; yy434: 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 yy466; if (yych == 'g') goto yy466; goto yy358; } } yy435: yych = *++p; if (yych == 'A') goto yy467; if (yych == 'a') goto yy467; goto yy358; yy436: yych = *++p; if (yych == 'L') goto yy468; if (yych == 'l') goto yy468; goto yy358; yy437: yych = *++p; if (yych == 'L') goto yy469; if (yych == 'l') goto yy469; goto yy358; yy438: yych = *++p; if (yych <= 'U') { if (yych == 'C') goto yy470; if (yych <= 'T') goto yy358; goto yy471; } else { if (yych <= 'c') { if (yych <= 'b') goto yy358; goto yy470; } else { if (yych == 'u') goto yy471; goto yy358; } } yy439: yych = *++p; if (yych == 'M') goto yy392; if (yych == 'm') goto yy392; goto yy358; yy440: yych = *++p; if (yych == 'M') goto yy472; if (yych == 'm') goto yy472; goto yy358; yy441: yych = *++p; if (yych == 'D') goto yy473; if (yych == 'd') goto yy473; goto yy358; yy442: yych = *++p; if (yych == 'A') goto yy474; if (yych == 'a') goto yy474; goto yy358; yy443: yych = *++p; if (yych == 'E') goto yy475; if (yych == 'e') goto yy475; goto yy358; yy444: yych = *++p; if (yych == 'K') goto yy392; if (yych == 'k') goto yy392; goto yy358; yy445: yych = *++p; if (yych == 'N') goto yy392; if (yych == 'n') goto yy392; goto yy358; yy446: yych = *++p; if (yych == 'U') goto yy476; if (yych == 'u') goto yy476; goto yy358; yy447: yych = *++p; if (yych == 'R') goto yy477; if (yych == 'r') goto yy477; goto yy358; yy448: yych = *++p; if (yych <= 'I') { if (yych == 'G') goto yy466; if (yych <= 'H') goto yy358; goto yy478; } else { if (yych <= 'g') { if (yych <= 'f') goto yy358; goto yy466; } else { if (yych == 'i') goto yy478; goto yy358; } } yy449: yych = *++p; if (yych == 'A') goto yy439; if (yych == 'a') goto yy439; goto yy358; yy450: yych = *++p; if (yych <= 0x1F) { if (yych <= 0x08) goto yy358; if (yych <= '\r') goto yy479; goto yy358; } else { if (yych <= ' ') goto yy479; if (yych == '>') goto yy479; goto yy358; } yy451: yych = *++p; if (yych == 'I') goto yy481; if (yych == 'i') goto yy481; goto yy358; yy452: yych = *++p; if (yych == 'L') goto yy412; if (yych == 'l') goto yy412; goto yy358; yy453: yych = *++p; if (yych == 'M') goto yy482; if (yych == 'm') goto yy482; goto yy358; yy454: yych = *++p; if (yych == 'L') goto yy461; if (yych == 'l') goto yy461; goto yy358; yy455: yych = *++p; if (yych == 'O') goto yy483; if (yych == 'o') goto yy483; goto yy358; yy456: yych = *++p; if (yych == 'A') goto yy484; if (yych == 'a') goto yy484; goto yy358; yy457: yych = *++p; if (yych == 'C') goto yy444; if (yych == 'c') goto yy444; goto yy358; yy458: yych = *++p; if (yych == 'A') goto yy485; if (yych == 'a') goto yy485; goto yy358; yy459: yych = *++p; if (yych == 'E') goto yy486; if (yych == 'e') goto yy486; goto yy358; yy460: yych = *++p; if (yych == 'C') goto yy454; if (yych == 'c') goto yy454; goto yy358; yy461: yych = *++p; if (yych == 'E') goto yy392; if (yych == 'e') goto yy392; goto yy358; yy462: 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 yy487; if (yych == 'f') goto yy487; goto yy358; } } yy463: yych = *++p; if (yych == 'K') goto yy488; if (yych == 'k') goto yy488; goto yy358; yy464: yych = *++p; if (yych == 'I') goto yy478; if (yych == 'i') goto yy478; goto yy358; yy465: yych = *++p; if (yych == 'E') goto yy489; if (yych == 'e') goto yy489; goto yy358; yy466: yych = *++p; if (yych == 'R') goto yy490; if (yych == 'r') goto yy490; goto yy358; yy467: yych = *++p; if (yych == 'I') goto yy491; if (yych == 'i') goto yy491; goto yy358; yy468: yych = *++p; if (yych == 'O') goto yy492; if (yych == 'o') goto yy492; goto yy358; yy469: yych = *++p; if (yych == 'D') goto yy493; if (yych == 'd') goto yy493; goto yy358; yy470: yych = *++p; if (yych == 'A') goto yy389; if (yych == 'a') goto yy389; goto yy358; yy471: yych = *++p; if (yych == 'R') goto yy461; if (yych == 'r') goto yy461; goto yy358; yy472: yych = *++p; if (yych == 'E') goto yy494; if (yych == 'e') goto yy494; goto yy358; yy473: 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 yy489; if (yych == 'e') goto yy489; goto yy358; } } yy474: yych = *++p; if (yych == 'M') goto yy461; if (yych == 'm') goto yy461; goto yy358; yy475: yych = *++p; if (yych == 'N') goto yy484; if (yych == 'n') goto yy484; goto yy358; yy476: 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 yy495; if (yych == 'i') goto yy495; goto yy358; } } yy477: yych = *++p; if (yych == 'A') goto yy496; if (yych == 'a') goto yy496; goto yy358; yy478: yych = *++p; if (yych == 'O') goto yy445; if (yych == 'o') goto yy445; goto yy358; yy479: ++p; { return 1; } yy481: yych = *++p; if (yych == 'P') goto yy497; if (yych == 'p') goto yy497; goto yy358; yy482: yych = *++p; if (yych == 'A') goto yy498; if (yych == 'a') goto yy498; goto yy358; yy483: yych = *++p; if (yych == 'T') goto yy392; if (yych == 't') goto yy392; goto yy358; yy484: yych = *++p; if (yych == 'D') goto yy392; if (yych == 'd') goto yy392; goto yy358; yy485: yych = *++p; if (yych == 'T') goto yy499; if (yych == 't') goto yy499; goto yy358; yy486: yych = *++p; if (yych == 'S') goto yy500; if (yych == 's') goto yy500; goto yy358; yy487: yych = *++p; if (yych == 'O') goto yy501; if (yych == 'o') goto yy501; goto yy358; yy488: yych = *++p; if (yych == 'Q') goto yy502; if (yych == 'q') goto yy502; goto yy358; yy489: yych = *++p; if (yych == 'R') goto yy392; if (yych == 'r') goto yy392; goto yy358; yy490: yych = *++p; if (yych == 'O') goto yy503; if (yych == 'o') goto yy503; goto yy358; yy491: yych = *++p; if (yych == 'L') goto yy500; if (yych == 'l') goto yy500; goto yy358; yy492: yych = *++p; if (yych == 'G') goto yy392; if (yych == 'g') goto yy392; goto yy358; yy493: yych = *++p; if (yych == 'S') goto yy504; if (yych == 's') goto yy504; goto yy358; yy494: 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 yy504; if (yych == 's') goto yy504; goto yy358; } } yy495: yych = *++p; if (yych == 'T') goto yy505; if (yych == 't') goto yy505; goto yy358; yy496: yych = *++p; if (yych == 'M') goto yy506; if (yych == 'm') goto yy506; goto yy358; yy497: yych = *++p; if (yych == 'T') goto yy450; if (yych == 't') goto yy450; goto yy358; yy498: yych = *++p; if (yych == 'R') goto yy431; if (yych == 'r') goto yy431; goto yy358; yy499: yych = *++p; if (yych == 'A') goto yy507; if (yych == 'a') goto yy507; goto yy358; yy500: yych = *++p; if (yych == 'S') goto yy392; if (yych == 's') goto yy392; goto yy358; yy501: yych = *++p; if (yych == 'N') goto yy483; if (yych == 'n') goto yy483; goto yy358; yy502: yych = *++p; if (yych == 'U') goto yy508; if (yych == 'u') goto yy508; goto yy358; yy503: yych = *++p; if (yych == 'U') goto yy509; if (yych == 'u') goto yy509; goto yy358; yy504: yych = *++p; if (yych == 'E') goto yy483; if (yych == 'e') goto yy483; goto yy358; yy505: yych = *++p; if (yych == 'E') goto yy439; if (yych == 'e') goto yy439; goto yy358; yy506: yych = *++p; if (yych == 'E') goto yy500; if (yych == 'e') goto yy500; goto yy358; yy507: yych = *++p; if (yych == '[') goto yy510; goto yy358; yy508: yych = *++p; if (yych == 'O') goto yy512; if (yych == 'o') goto yy512; goto yy358; yy509: yych = *++p; if (yych == 'P') goto yy392; if (yych == 'p') goto yy392; goto yy358; yy510: ++p; { return 5; } yy512: yych = *++p; if (yych == 'T') goto yy461; if (yych == 't') goto yy461; 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 yy517; ++p; yy516: { return 0; } yy517: yyaccept = 0; yych = *(marker = ++p); if (yych <= '@') { if (yych != '/') goto yy516; } else { if (yych <= 'Z') goto yy520; if (yych <= '`') goto yy516; if (yych <= 'z') goto yy520; goto yy516; } yych = *++p; if (yych <= '@') goto yy519; if (yych <= 'Z') goto yy522; if (yych <= '`') goto yy519; if (yych <= 'z') goto yy522; yy519: p = marker; if (yyaccept == 0) { goto yy516; } else { goto yy535; } yy520: yych = *++p; if (yybm[0+yych] & 2) { goto yy524; } if (yych <= '=') { if (yych <= '.') { if (yych == '-') goto yy520; goto yy519; } else { if (yych <= '/') goto yy526; if (yych <= '9') goto yy520; goto yy519; } } else { if (yych <= 'Z') { if (yych <= '>') goto yy527; if (yych <= '@') goto yy519; goto yy520; } else { if (yych <= '`') goto yy519; if (yych <= 'z') goto yy520; goto yy519; } } yy522: yych = *++p; if (yych <= '/') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy519; if (yych <= '\r') goto yy529; goto yy519; } else { if (yych <= ' ') goto yy529; if (yych == '-') goto yy522; goto yy519; } } else { if (yych <= '@') { if (yych <= '9') goto yy522; if (yych == '>') goto yy527; goto yy519; } else { if (yych <= 'Z') goto yy522; if (yych <= '`') goto yy519; if (yych <= 'z') goto yy522; goto yy519; } } yy524: yych = *++p; if (yybm[0+yych] & 2) { goto yy524; } if (yych <= '>') { if (yych <= '9') { if (yych != '/') goto yy519; } else { if (yych <= ':') goto yy531; if (yych <= '=') goto yy519; goto yy527; } } else { if (yych <= '^') { if (yych <= '@') goto yy519; if (yych <= 'Z') goto yy531; goto yy519; } else { if (yych == '`') goto yy519; if (yych <= 'z') goto yy531; goto yy519; } } yy526: yych = *++p; if (yych != '>') goto yy519; yy527: yych = *++p; if (yybm[0+yych] & 4) { goto yy527; } if (yych <= 0x08) goto yy519; if (yych <= '\n') goto yy533; if (yych <= '\v') goto yy519; if (yych <= '\r') goto yy536; goto yy519; yy529: yych = *++p; if (yych <= 0x1F) { if (yych <= 0x08) goto yy519; if (yych <= '\r') goto yy529; goto yy519; } else { if (yych <= ' ') goto yy529; if (yych == '>') goto yy527; goto yy519; } yy531: yych = *++p; if (yybm[0+yych] & 8) { goto yy531; } if (yych <= ',') { if (yych <= '\r') { if (yych <= 0x08) goto yy519; goto yy537; } else { if (yych == ' ') goto yy537; goto yy519; } } else { if (yych <= '<') { if (yych <= '/') goto yy526; goto yy519; } else { if (yych <= '=') goto yy539; if (yych <= '>') goto yy527; goto yy519; } } yy533: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 4) { goto yy527; } if (yych <= 0x08) goto yy535; if (yych <= '\n') goto yy533; if (yych <= '\v') goto yy535; if (yych <= '\r') goto yy536; yy535: { return 7; } yy536: ++p; goto yy535; yy537: yych = *++p; if (yych <= '<') { if (yych <= ' ') { if (yych <= 0x08) goto yy519; if (yych <= '\r') goto yy537; if (yych <= 0x1F) goto yy519; goto yy537; } else { if (yych <= '/') { if (yych <= '.') goto yy519; goto yy526; } else { if (yych == ':') goto yy531; goto yy519; } } } else { if (yych <= 'Z') { if (yych <= '=') goto yy539; if (yych <= '>') goto yy527; if (yych <= '@') goto yy519; goto yy531; } else { if (yych <= '_') { if (yych <= '^') goto yy519; goto yy531; } else { if (yych <= '`') goto yy519; if (yych <= 'z') goto yy531; goto yy519; } } } yy539: yych = *++p; if (yybm[0+yych] & 32) { goto yy541; } if (yych <= 0xE0) { if (yych <= '"') { if (yych <= 0x00) goto yy519; if (yych <= ' ') goto yy539; goto yy543; } else { if (yych <= '\'') goto yy545; if (yych <= 0xC1) goto yy519; if (yych <= 0xDF) goto yy547; goto yy548; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy550; goto yy549; } else { if (yych <= 0xF0) goto yy551; if (yych <= 0xF3) goto yy552; if (yych <= 0xF4) goto yy553; goto yy519; } } yy541: yych = *++p; if (yybm[0+yych] & 32) { goto yy541; } if (yych <= 0xE0) { if (yych <= '=') { if (yych <= 0x00) goto yy519; if (yych <= ' ') goto yy524; goto yy519; } else { if (yych <= '>') goto yy527; if (yych <= 0xC1) goto yy519; if (yych <= 0xDF) goto yy547; goto yy548; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy550; goto yy549; } else { if (yych <= 0xF0) goto yy551; if (yych <= 0xF3) goto yy552; if (yych <= 0xF4) goto yy553; goto yy519; } } yy543: yych = *++p; if (yybm[0+yych] & 64) { goto yy543; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x00) goto yy519; if (yych <= '"') goto yy554; goto yy519; } else { if (yych <= 0xDF) goto yy555; if (yych <= 0xE0) goto yy556; goto yy557; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy558; if (yych <= 0xEF) goto yy557; goto yy559; } else { if (yych <= 0xF3) goto yy560; if (yych <= 0xF4) goto yy561; goto yy519; } } yy545: yych = *++p; if (yybm[0+yych] & 128) { goto yy545; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x00) goto yy519; if (yych <= '\'') goto yy554; goto yy519; } else { if (yych <= 0xDF) goto yy562; if (yych <= 0xE0) goto yy563; goto yy564; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy565; if (yych <= 0xEF) goto yy564; goto yy566; } else { if (yych <= 0xF3) goto yy567; if (yych <= 0xF4) goto yy568; goto yy519; } } yy547: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy541; goto yy519; yy548: yych = *++p; if (yych <= 0x9F) goto yy519; if (yych <= 0xBF) goto yy547; goto yy519; yy549: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy547; goto yy519; yy550: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x9F) goto yy547; goto yy519; yy551: yych = *++p; if (yych <= 0x8F) goto yy519; if (yych <= 0xBF) goto yy549; goto yy519; yy552: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy549; goto yy519; yy553: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x8F) goto yy549; goto yy519; yy554: yych = *++p; if (yybm[0+yych] & 2) { goto yy524; } if (yych == '/') goto yy526; if (yych == '>') goto yy527; goto yy519; yy555: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy543; goto yy519; yy556: yych = *++p; if (yych <= 0x9F) goto yy519; if (yych <= 0xBF) goto yy555; goto yy519; yy557: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy555; goto yy519; yy558: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x9F) goto yy555; goto yy519; yy559: yych = *++p; if (yych <= 0x8F) goto yy519; if (yych <= 0xBF) goto yy557; goto yy519; yy560: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy557; goto yy519; yy561: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x8F) goto yy557; goto yy519; yy562: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy545; goto yy519; yy563: yych = *++p; if (yych <= 0x9F) goto yy519; if (yych <= 0xBF) goto yy562; goto yy519; yy564: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy562; goto yy519; yy565: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x9F) goto yy562; goto yy519; yy566: yych = *++p; if (yych <= 0x8F) goto yy519; if (yych <= 0xBF) goto yy564; goto yy519; yy567: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0xBF) goto yy564; goto yy519; yy568: yych = *++p; if (yych <= 0x7F) goto yy519; if (yych <= 0x8F) goto yy564; goto yy519; } } // 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 yy571; if (yych != '\n') goto yy573; } else { if (yych <= '<') goto yy574; if (yych <= 0x7F) goto yy573; if (yych >= 0xC2) goto yy575; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy576; if (yych == 0xED) goto yy578; goto yy577; } else { if (yych <= 0xF0) goto yy579; if (yych <= 0xF3) goto yy580; if (yych <= 0xF4) goto yy581; } } yy571: ++p; yy572: { return 0; } yy573: yyaccept = 0; yych = *(marker = ++p); if (yych <= '\n') { if (yych <= 0x00) goto yy572; if (yych <= '\t') goto yy583; goto yy572; } else { if (yych <= 0x7F) goto yy583; if (yych <= 0xC1) goto yy572; if (yych <= 0xF4) goto yy583; goto yy572; } yy574: yyaccept = 0; yych = *(marker = ++p); if (yych <= '.') { if (yych <= 0x00) goto yy572; if (yych == '\n') goto yy572; goto yy583; } else { if (yych <= 0x7F) { if (yych <= '/') goto yy594; goto yy583; } else { if (yych <= 0xC1) goto yy572; if (yych <= 0xF4) goto yy583; goto yy572; } } yy575: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy572; if (yych <= 0xBF) goto yy582; goto yy572; yy576: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x9F) goto yy572; if (yych <= 0xBF) goto yy587; goto yy572; yy577: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy572; if (yych <= 0xBF) goto yy587; goto yy572; yy578: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy572; if (yych <= 0x9F) goto yy587; goto yy572; yy579: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x8F) goto yy572; if (yych <= 0xBF) goto yy589; goto yy572; yy580: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy572; if (yych <= 0xBF) goto yy589; goto yy572; yy581: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy572; if (yych <= 0x8F) goto yy589; goto yy572; yy582: yych = *++p; yy583: if (yybm[0+yych] & 64) { goto yy582; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy584; if (yych <= '<') goto yy585; } else { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; goto yy589; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy590; if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; } } yy584: p = marker; if (yyaccept == 0) { goto yy572; } else { goto yy604; } yy585: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xDF) { if (yych <= '.') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= '/') goto yy594; if (yych <= 0x7F) goto yy582; if (yych <= 0xC1) goto yy584; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy588; if (yych == 0xED) goto yy590; goto yy589; } else { if (yych <= 0xF0) goto yy591; if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } yy587: yych = *++p; if (yych <= 0x7F) goto yy584; if (yych <= 0xBF) goto yy582; goto yy584; yy588: yych = *++p; if (yych <= 0x9F) goto yy584; if (yych <= 0xBF) goto yy587; goto yy584; yy589: yych = *++p; if (yych <= 0x7F) goto yy584; if (yych <= 0xBF) goto yy587; goto yy584; yy590: yych = *++p; if (yych <= 0x7F) goto yy584; if (yych <= 0x9F) goto yy587; goto yy584; yy591: yych = *++p; if (yych <= 0x8F) goto yy584; if (yych <= 0xBF) goto yy589; goto yy584; yy592: yych = *++p; if (yych <= 0x7F) goto yy584; if (yych <= 0xBF) goto yy589; goto yy584; yy593: yych = *++p; if (yych <= 0x7F) goto yy584; if (yych <= 0x8F) goto yy589; goto yy584; yy594: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 's') { if (yych <= 'P') { if (yych <= '\t') { if (yych <= 0x00) goto yy584; goto yy582; } else { if (yych <= '\n') goto yy584; if (yych <= 'O') goto yy582; } } else { if (yych <= 'o') { if (yych == 'S') goto yy596; goto yy582; } else { if (yych <= 'p') goto yy595; if (yych <= 'r') goto yy582; goto yy596; } } } else { if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x7F) goto yy582; goto yy584; } else { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; goto yy589; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy590; if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy595: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'Q') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'q') { if (yych <= 'R') goto yy597; goto yy582; } else { if (yych <= 'r') goto yy597; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy596: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 't') { if (yych <= 'C') { if (yych <= '\t') { if (yych <= 0x00) goto yy584; goto yy582; } else { if (yych <= '\n') goto yy584; if (yych <= 'B') goto yy582; goto yy598; } } else { if (yych <= 'b') { if (yych == 'T') goto yy599; goto yy582; } else { if (yych <= 'c') goto yy598; if (yych <= 's') goto yy582; goto yy599; } } } else { if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x7F) goto yy582; goto yy584; } else { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; goto yy589; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy590; if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy597: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'D') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'd') { if (yych <= 'E') goto yy600; goto yy582; } else { if (yych <= 'e') goto yy600; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy598: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'Q') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'q') { if (yych <= 'R') goto yy601; goto yy582; } else { if (yych <= 'r') goto yy601; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy599: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'X') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'x') { if (yych <= 'Y') goto yy602; goto yy582; } else { if (yych <= 'y') goto yy602; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy600: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xDF) { if (yych <= '=') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= '>') goto yy603; if (yych <= 0x7F) goto yy582; if (yych <= 0xC1) goto yy584; goto yy587; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy588; if (yych == 0xED) goto yy590; goto yy589; } else { if (yych <= 0xF0) goto yy591; if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } yy601: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'H') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'h') { if (yych <= 'I') goto yy605; goto yy582; } else { if (yych <= 'i') goto yy605; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy602: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'K') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'k') { if (yych <= 'L') goto yy597; goto yy582; } else { if (yych <= 'l') goto yy597; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy603: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy582; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy604; if (yych <= '<') goto yy585; } else { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; goto yy589; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy590; if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; } } yy604: { return (bufsize_t)(p - start); } yy605: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'O') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 'o') { if (yych >= 'Q') goto yy582; } else { if (yych <= 'p') goto yy606; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } yy606: yych = *++p; if (yybm[0+yych] & 128) { goto yy585; } if (yych <= 0xC1) { if (yych <= 'S') { if (yych <= 0x00) goto yy584; if (yych == '\n') goto yy584; goto yy582; } else { if (yych <= 's') { if (yych <= 'T') goto yy600; goto yy582; } else { if (yych <= 't') goto yy600; if (yych <= 0x7F) goto yy582; goto yy584; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) goto yy587; if (yych <= 0xE0) goto yy588; if (yych <= 0xEC) goto yy589; goto yy590; } else { if (yych <= 0xF0) { if (yych <= 0xEF) goto yy589; goto yy591; } else { if (yych <= 0xF3) goto yy592; if (yych <= 0xF4) goto yy593; goto yy584; } } } } } // 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 yy609; if (yych != '\n') goto yy611; } else { if (yych <= '-') goto yy612; if (yych <= 0x7F) goto yy611; if (yych >= 0xC2) goto yy613; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy614; if (yych == 0xED) goto yy616; goto yy615; } else { if (yych <= 0xF0) goto yy617; if (yych <= 0xF3) goto yy618; if (yych <= 0xF4) goto yy619; } } yy609: ++p; yy610: { return 0; } yy611: yyaccept = 0; yych = *(marker = ++p); if (yych <= '\n') { if (yych <= 0x00) goto yy610; if (yych <= '\t') goto yy621; goto yy610; } else { if (yych <= 0x7F) goto yy621; if (yych <= 0xC1) goto yy610; if (yych <= 0xF4) goto yy621; goto yy610; } yy612: yyaccept = 0; yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy631; } if (yych <= '\n') { if (yych <= 0x00) goto yy610; if (yych <= '\t') goto yy621; goto yy610; } else { if (yych <= 0x7F) goto yy621; if (yych <= 0xC1) goto yy610; if (yych <= 0xF4) goto yy621; goto yy610; } yy613: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy610; if (yych <= 0xBF) goto yy620; goto yy610; yy614: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x9F) goto yy610; if (yych <= 0xBF) goto yy624; goto yy610; yy615: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy610; if (yych <= 0xBF) goto yy624; goto yy610; yy616: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy610; if (yych <= 0x9F) goto yy624; goto yy610; yy617: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x8F) goto yy610; if (yych <= 0xBF) goto yy626; goto yy610; yy618: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy610; if (yych <= 0xBF) goto yy626; goto yy610; yy619: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy610; if (yych <= 0x8F) goto yy626; goto yy610; yy620: yych = *++p; yy621: if (yybm[0+yych] & 64) { goto yy620; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy622; if (yych <= '-') goto yy623; } else { if (yych <= 0xDF) goto yy624; if (yych <= 0xE0) goto yy625; goto yy626; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy627; if (yych <= 0xEF) goto yy626; goto yy628; } else { if (yych <= 0xF3) goto yy629; if (yych <= 0xF4) goto yy630; } } yy622: p = marker; if (yyaccept == 0) { goto yy610; } else { goto yy634; } yy623: yych = *++p; if (yybm[0+yych] & 64) { goto yy620; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy622; if (yych <= '-') goto yy631; goto yy622; } else { if (yych <= 0xDF) goto yy624; if (yych <= 0xE0) goto yy625; goto yy626; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy627; if (yych <= 0xEF) goto yy626; goto yy628; } else { if (yych <= 0xF3) goto yy629; if (yych <= 0xF4) goto yy630; goto yy622; } } yy624: yych = *++p; if (yych <= 0x7F) goto yy622; if (yych <= 0xBF) goto yy620; goto yy622; yy625: yych = *++p; if (yych <= 0x9F) goto yy622; if (yych <= 0xBF) goto yy624; goto yy622; yy626: yych = *++p; if (yych <= 0x7F) goto yy622; if (yych <= 0xBF) goto yy624; goto yy622; yy627: yych = *++p; if (yych <= 0x7F) goto yy622; if (yych <= 0x9F) goto yy624; goto yy622; yy628: yych = *++p; if (yych <= 0x8F) goto yy622; if (yych <= 0xBF) goto yy626; goto yy622; yy629: yych = *++p; if (yych <= 0x7F) goto yy622; if (yych <= 0xBF) goto yy626; goto yy622; yy630: yych = *++p; if (yych <= 0x7F) goto yy622; if (yych <= 0x8F) goto yy626; goto yy622; yy631: yych = *++p; if (yybm[0+yych] & 128) { goto yy631; } if (yych <= 0xDF) { if (yych <= '=') { if (yych <= 0x00) goto yy622; if (yych == '\n') goto yy622; goto yy620; } else { if (yych <= '>') goto yy633; if (yych <= 0x7F) goto yy620; if (yych <= 0xC1) goto yy622; goto yy624; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy625; if (yych == 0xED) goto yy627; goto yy626; } else { if (yych <= 0xF0) goto yy628; if (yych <= 0xF3) goto yy629; if (yych <= 0xF4) goto yy630; goto yy622; } } yy633: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy620; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy634; if (yych <= '-') goto yy623; } else { if (yych <= 0xDF) goto yy624; if (yych <= 0xE0) goto yy625; goto yy626; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy627; if (yych <= 0xEF) goto yy626; goto yy628; } else { if (yych <= 0xF3) goto yy629; if (yych <= 0xF4) goto yy630; } } yy634: { 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 yy637; if (yych != '\n') goto yy639; } else { if (yych <= '?') goto yy640; if (yych <= 0x7F) goto yy639; if (yych >= 0xC2) goto yy641; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy642; if (yych == 0xED) goto yy644; goto yy643; } else { if (yych <= 0xF0) goto yy645; if (yych <= 0xF3) goto yy646; if (yych <= 0xF4) goto yy647; } } yy637: ++p; yy638: { return 0; } yy639: yyaccept = 0; yych = *(marker = ++p); if (yych <= '\n') { if (yych <= 0x00) goto yy638; if (yych <= '\t') goto yy649; goto yy638; } else { if (yych <= 0x7F) goto yy649; if (yych <= 0xC1) goto yy638; if (yych <= 0xF4) goto yy649; goto yy638; } yy640: yyaccept = 0; yych = *(marker = ++p); if (yych <= '=') { if (yych <= 0x00) goto yy638; if (yych == '\n') goto yy638; goto yy649; } else { if (yych <= 0x7F) { if (yych <= '>') goto yy660; goto yy649; } else { if (yych <= 0xC1) goto yy638; if (yych <= 0xF4) goto yy649; goto yy638; } } yy641: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy638; if (yych <= 0xBF) goto yy648; goto yy638; yy642: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x9F) goto yy638; if (yych <= 0xBF) goto yy653; goto yy638; yy643: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy638; if (yych <= 0xBF) goto yy653; goto yy638; yy644: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy638; if (yych <= 0x9F) goto yy653; goto yy638; yy645: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x8F) goto yy638; if (yych <= 0xBF) goto yy655; goto yy638; yy646: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy638; if (yych <= 0xBF) goto yy655; goto yy638; yy647: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy638; if (yych <= 0x8F) goto yy655; goto yy638; yy648: yych = *++p; yy649: if (yybm[0+yych] & 64) { goto yy648; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy650; if (yych <= '?') goto yy651; } else { if (yych <= 0xDF) goto yy653; if (yych <= 0xE0) goto yy654; goto yy655; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy656; if (yych <= 0xEF) goto yy655; goto yy657; } else { if (yych <= 0xF3) goto yy658; if (yych <= 0xF4) goto yy659; } } yy650: p = marker; if (yyaccept == 0) { goto yy638; } else { goto yy661; } yy651: yych = *++p; if (yybm[0+yych] & 128) { goto yy651; } if (yych <= 0xDF) { if (yych <= '=') { if (yych <= 0x00) goto yy650; if (yych == '\n') goto yy650; goto yy648; } else { if (yych <= '>') goto yy660; if (yych <= 0x7F) goto yy648; if (yych <= 0xC1) goto yy650; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy654; if (yych == 0xED) goto yy656; goto yy655; } else { if (yych <= 0xF0) goto yy657; if (yych <= 0xF3) goto yy658; if (yych <= 0xF4) goto yy659; goto yy650; } } yy653: yych = *++p; if (yych <= 0x7F) goto yy650; if (yych <= 0xBF) goto yy648; goto yy650; yy654: yych = *++p; if (yych <= 0x9F) goto yy650; if (yych <= 0xBF) goto yy653; goto yy650; yy655: yych = *++p; if (yych <= 0x7F) goto yy650; if (yych <= 0xBF) goto yy653; goto yy650; yy656: yych = *++p; if (yych <= 0x7F) goto yy650; if (yych <= 0x9F) goto yy653; goto yy650; yy657: yych = *++p; if (yych <= 0x8F) goto yy650; if (yych <= 0xBF) goto yy655; goto yy650; yy658: yych = *++p; if (yych <= 0x7F) goto yy650; if (yych <= 0xBF) goto yy655; goto yy650; yy659: yych = *++p; if (yych <= 0x7F) goto yy650; if (yych <= 0x8F) goto yy655; goto yy650; yy660: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy648; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy661; if (yych <= '?') goto yy651; } else { if (yych <= 0xDF) goto yy653; if (yych <= 0xE0) goto yy654; goto yy655; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy656; if (yych <= 0xEF) goto yy655; goto yy657; } else { if (yych <= 0xF3) goto yy658; if (yych <= 0xF4) goto yy659; } } yy661: { 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 yy667; } if (yych <= 0xE0) { if (yych <= '\n') { if (yych <= 0x00) goto yy664; if (yych <= '\t') goto yy666; } else { if (yych <= 0x7F) goto yy666; if (yych <= 0xC1) goto yy664; if (yych <= 0xDF) goto yy670; goto yy671; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy673; goto yy672; } else { if (yych <= 0xF0) goto yy674; if (yych <= 0xF3) goto yy675; if (yych <= 0xF4) goto yy676; } } yy664: ++p; yy665: { return 0; } yy666: yyaccept = 0; yych = *(marker = ++p); if (yych <= '\n') { if (yych <= 0x00) goto yy665; if (yych <= '\t') goto yy678; goto yy665; } else { if (yych <= 0x7F) goto yy678; if (yych <= 0xC1) goto yy665; if (yych <= 0xF4) goto yy678; goto yy665; } yy667: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy677; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy669; if (yych <= '>') goto yy667; } else { if (yych <= 0xDF) goto yy680; if (yych <= 0xE0) goto yy681; goto yy682; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy683; if (yych <= 0xEF) goto yy682; goto yy684; } else { if (yych <= 0xF3) goto yy685; if (yych <= 0xF4) goto yy686; } } yy669: { return (bufsize_t)(p - start); } yy670: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy665; if (yych <= 0xBF) goto yy677; goto yy665; yy671: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x9F) goto yy665; if (yych <= 0xBF) goto yy680; goto yy665; yy672: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy665; if (yych <= 0xBF) goto yy680; goto yy665; yy673: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy665; if (yych <= 0x9F) goto yy680; goto yy665; yy674: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x8F) goto yy665; if (yych <= 0xBF) goto yy682; goto yy665; yy675: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy665; if (yych <= 0xBF) goto yy682; goto yy665; yy676: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy665; if (yych <= 0x8F) goto yy682; goto yy665; yy677: yych = *++p; yy678: if (yybm[0+yych] & 128) { goto yy677; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy679; if (yych <= '>') goto yy667; } else { if (yych <= 0xDF) goto yy680; if (yych <= 0xE0) goto yy681; goto yy682; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy683; if (yych <= 0xEF) goto yy682; goto yy684; } else { if (yych <= 0xF3) goto yy685; if (yych <= 0xF4) goto yy686; } } yy679: p = marker; if (yyaccept == 0) { goto yy665; } else { goto yy669; } yy680: yych = *++p; if (yych <= 0x7F) goto yy679; if (yych <= 0xBF) goto yy677; goto yy679; yy681: yych = *++p; if (yych <= 0x9F) goto yy679; if (yych <= 0xBF) goto yy680; goto yy679; yy682: yych = *++p; if (yych <= 0x7F) goto yy679; if (yych <= 0xBF) goto yy680; goto yy679; yy683: yych = *++p; if (yych <= 0x7F) goto yy679; if (yych <= 0x9F) goto yy680; goto yy679; yy684: yych = *++p; if (yych <= 0x8F) goto yy679; if (yych <= 0xBF) goto yy682; goto yy679; yy685: yych = *++p; if (yych <= 0x7F) goto yy679; if (yych <= 0xBF) goto yy682; goto yy679; yy686: yych = *++p; if (yych <= 0x7F) goto yy679; if (yych <= 0x8F) goto yy682; goto yy679; } } // 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 yy689; if (yych != '\n') goto yy691; } else { if (yych <= ']') goto yy692; if (yych <= 0x7F) goto yy691; if (yych >= 0xC2) goto yy693; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy694; if (yych == 0xED) goto yy696; goto yy695; } else { if (yych <= 0xF0) goto yy697; if (yych <= 0xF3) goto yy698; if (yych <= 0xF4) goto yy699; } } yy689: ++p; yy690: { return 0; } yy691: yyaccept = 0; yych = *(marker = ++p); if (yych <= '\n') { if (yych <= 0x00) goto yy690; if (yych <= '\t') goto yy701; goto yy690; } else { if (yych <= 0x7F) goto yy701; if (yych <= 0xC1) goto yy690; if (yych <= 0xF4) goto yy701; goto yy690; } yy692: yyaccept = 0; yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy711; } if (yych <= '\n') { if (yych <= 0x00) goto yy690; if (yych <= '\t') goto yy701; goto yy690; } else { if (yych <= 0x7F) goto yy701; if (yych <= 0xC1) goto yy690; if (yych <= 0xF4) goto yy701; goto yy690; } yy693: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy690; if (yych <= 0xBF) goto yy700; goto yy690; yy694: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x9F) goto yy690; if (yych <= 0xBF) goto yy704; goto yy690; yy695: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy690; if (yych <= 0xBF) goto yy704; goto yy690; yy696: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy690; if (yych <= 0x9F) goto yy704; goto yy690; yy697: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x8F) goto yy690; if (yych <= 0xBF) goto yy706; goto yy690; yy698: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy690; if (yych <= 0xBF) goto yy706; goto yy690; yy699: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x7F) goto yy690; if (yych <= 0x8F) goto yy706; goto yy690; yy700: yych = *++p; yy701: if (yybm[0+yych] & 64) { goto yy700; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy702; if (yych <= ']') goto yy703; } else { if (yych <= 0xDF) goto yy704; if (yych <= 0xE0) goto yy705; goto yy706; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy707; if (yych <= 0xEF) goto yy706; goto yy708; } else { if (yych <= 0xF3) goto yy709; if (yych <= 0xF4) goto yy710; } } yy702: p = marker; if (yyaccept == 0) { goto yy690; } else { goto yy714; } yy703: yych = *++p; if (yybm[0+yych] & 64) { goto yy700; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy702; if (yych <= ']') goto yy711; goto yy702; } else { if (yych <= 0xDF) goto yy704; if (yych <= 0xE0) goto yy705; goto yy706; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy707; if (yych <= 0xEF) goto yy706; goto yy708; } else { if (yych <= 0xF3) goto yy709; if (yych <= 0xF4) goto yy710; goto yy702; } } yy704: yych = *++p; if (yych <= 0x7F) goto yy702; if (yych <= 0xBF) goto yy700; goto yy702; yy705: yych = *++p; if (yych <= 0x9F) goto yy702; if (yych <= 0xBF) goto yy704; goto yy702; yy706: yych = *++p; if (yych <= 0x7F) goto yy702; if (yych <= 0xBF) goto yy704; goto yy702; yy707: yych = *++p; if (yych <= 0x7F) goto yy702; if (yych <= 0x9F) goto yy704; goto yy702; yy708: yych = *++p; if (yych <= 0x8F) goto yy702; if (yych <= 0xBF) goto yy706; goto yy702; yy709: yych = *++p; if (yych <= 0x7F) goto yy702; if (yych <= 0xBF) goto yy706; goto yy702; yy710: yych = *++p; if (yych <= 0x7F) goto yy702; if (yych <= 0x8F) goto yy706; goto yy702; yy711: yych = *++p; if (yybm[0+yych] & 128) { goto yy711; } if (yych <= 0xDF) { if (yych <= '=') { if (yych <= 0x00) goto yy702; if (yych == '\n') goto yy702; goto yy700; } else { if (yych <= '>') goto yy713; if (yych <= 0x7F) goto yy700; if (yych <= 0xC1) goto yy702; goto yy704; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy705; if (yych == 0xED) goto yy707; goto yy706; } else { if (yych <= 0xF0) goto yy708; if (yych <= 0xF3) goto yy709; if (yych <= 0xF4) goto yy710; goto yy702; } } yy713: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy700; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '\n') goto yy714; if (yych <= ']') goto yy703; } else { if (yych <= 0xDF) goto yy704; if (yych <= 0xE0) goto yy705; goto yy706; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy707; if (yych <= 0xEF) goto yy706; goto yy708; } else { if (yych <= 0xF3) goto yy709; if (yych <= 0xF4) goto yy710; } } yy714: { 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, 80, 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 yy719; } else { if (yych <= '\'') goto yy720; if (yych <= '(') goto yy721; } ++p; yy718: { return 0; } yy719: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x00) goto yy718; if (yych <= 0x7F) goto yy723; if (yych <= 0xC1) goto yy718; if (yych <= 0xF4) goto yy723; goto yy718; yy720: yyaccept = 0; yych = *(marker = ++p); if (yych <= 0x00) goto yy718; if (yych <= 0x7F) goto yy737; if (yych <= 0xC1) goto yy718; if (yych <= 0xF4) goto yy737; goto yy718; yy721: yyaccept = 0; yych = *(marker = ++p); if (yych <= '(') { if (yych <= 0x00) goto yy718; if (yych <= '\'') goto yy750; goto yy718; } else { if (yych <= 0x7F) goto yy750; if (yych <= 0xC1) goto yy718; if (yych <= 0xF4) goto yy750; goto yy718; } yy722: yych = *++p; yy723: if (yybm[0+yych] & 16) { goto yy722; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy724; if (yych <= '"') goto yy725; goto yy727; } else { if (yych <= 0xC1) goto yy724; if (yych <= 0xDF) goto yy729; goto yy730; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy732; goto yy731; } else { if (yych <= 0xF0) goto yy733; if (yych <= 0xF3) goto yy734; if (yych <= 0xF4) goto yy735; } } yy724: p = marker; if (yyaccept <= 1) { if (yyaccept == 0) { goto yy718; } else { goto yy726; } } else { if (yyaccept == 2) { goto yy739; } else { goto yy752; } } yy725: ++p; yy726: { return (bufsize_t)(p - start); } yy727: yych = *++p; if (yybm[0+yych] & 16) { goto yy722; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy724; if (yych <= '"') goto yy762; goto yy727; } else { if (yych <= 0xC1) goto yy724; if (yych >= 0xE0) goto yy730; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy732; goto yy731; } else { if (yych <= 0xF0) goto yy733; if (yych <= 0xF3) goto yy734; if (yych <= 0xF4) goto yy735; goto yy724; } } yy729: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy722; goto yy724; yy730: yych = *++p; if (yych <= 0x9F) goto yy724; if (yych <= 0xBF) goto yy729; goto yy724; yy731: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy729; goto yy724; yy732: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x9F) goto yy729; goto yy724; yy733: yych = *++p; if (yych <= 0x8F) goto yy724; if (yych <= 0xBF) goto yy731; goto yy724; yy734: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy731; goto yy724; yy735: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x8F) goto yy731; goto yy724; yy736: yych = *++p; yy737: if (yybm[0+yych] & 64) { goto yy736; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy724; if (yych >= '(') goto yy740; } else { if (yych <= 0xC1) goto yy724; if (yych <= 0xDF) goto yy742; goto yy743; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy745; goto yy744; } else { if (yych <= 0xF0) goto yy746; if (yych <= 0xF3) goto yy747; if (yych <= 0xF4) goto yy748; goto yy724; } } yy738: ++p; yy739: { return (bufsize_t)(p - start); } yy740: yych = *++p; if (yybm[0+yych] & 64) { goto yy736; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy724; if (yych <= '\'') goto yy763; goto yy740; } else { if (yych <= 0xC1) goto yy724; if (yych >= 0xE0) goto yy743; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy745; goto yy744; } else { if (yych <= 0xF0) goto yy746; if (yych <= 0xF3) goto yy747; if (yych <= 0xF4) goto yy748; goto yy724; } } yy742: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy736; goto yy724; yy743: yych = *++p; if (yych <= 0x9F) goto yy724; if (yych <= 0xBF) goto yy742; goto yy724; yy744: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy742; goto yy724; yy745: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x9F) goto yy742; goto yy724; yy746: yych = *++p; if (yych <= 0x8F) goto yy724; if (yych <= 0xBF) goto yy744; goto yy724; yy747: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy744; goto yy724; yy748: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x8F) goto yy744; goto yy724; yy749: yych = *++p; yy750: if (yybm[0+yych] & 128) { goto yy749; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= '(') goto yy724; if (yych >= '*') goto yy753; } else { if (yych <= 0xC1) goto yy724; if (yych <= 0xDF) goto yy755; goto yy756; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy758; goto yy757; } else { if (yych <= 0xF0) goto yy759; if (yych <= 0xF3) goto yy760; if (yych <= 0xF4) goto yy761; goto yy724; } } yy751: ++p; yy752: { return (bufsize_t)(p - start); } yy753: yych = *++p; if (yych <= 0xDF) { if (yych <= '[') { if (yych <= 0x00) goto yy724; if (yych == ')') goto yy764; goto yy749; } else { if (yych <= '\\') goto yy753; if (yych <= 0x7F) goto yy749; if (yych <= 0xC1) goto yy724; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) goto yy756; if (yych == 0xED) goto yy758; goto yy757; } else { if (yych <= 0xF0) goto yy759; if (yych <= 0xF3) goto yy760; if (yych <= 0xF4) goto yy761; goto yy724; } } yy755: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy749; goto yy724; yy756: yych = *++p; if (yych <= 0x9F) goto yy724; if (yych <= 0xBF) goto yy755; goto yy724; yy757: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy755; goto yy724; yy758: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x9F) goto yy755; goto yy724; yy759: yych = *++p; if (yych <= 0x8F) goto yy724; if (yych <= 0xBF) goto yy757; goto yy724; yy760: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0xBF) goto yy757; goto yy724; yy761: yych = *++p; if (yych <= 0x7F) goto yy724; if (yych <= 0x8F) goto yy757; goto yy724; yy762: yyaccept = 1; yych = *(marker = ++p); if (yybm[0+yych] & 16) { goto yy722; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy726; if (yych <= '"') goto yy725; goto yy727; } else { if (yych <= 0xC1) goto yy726; if (yych <= 0xDF) goto yy729; goto yy730; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy732; goto yy731; } else { if (yych <= 0xF0) goto yy733; if (yych <= 0xF3) goto yy734; if (yych <= 0xF4) goto yy735; goto yy726; } } yy763: yyaccept = 2; yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy736; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= 0x00) goto yy739; if (yych <= '\'') goto yy738; goto yy740; } else { if (yych <= 0xC1) goto yy739; if (yych <= 0xDF) goto yy742; goto yy743; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy745; goto yy744; } else { if (yych <= 0xF0) goto yy746; if (yych <= 0xF3) goto yy747; if (yych <= 0xF4) goto yy748; goto yy739; } } yy764: yyaccept = 3; yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy749; } if (yych <= 0xE0) { if (yych <= '\\') { if (yych <= '(') goto yy752; if (yych <= ')') goto yy751; goto yy753; } else { if (yych <= 0xC1) goto yy752; if (yych <= 0xDF) goto yy755; goto yy756; } } else { if (yych <= 0xEF) { if (yych == 0xED) goto yy758; goto yy757; } else { if (yych <= 0xF0) goto yy759; if (yych <= 0xF3) goto yy760; if (yych <= 0xF4) goto yy761; goto yy752; } } } } // 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 yy769; } ++p; { return 0; } yy769: yych = *++p; if (yybm[0+yych] & 128) { goto yy769; } { 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 yy776; ++p; yy775: { return 0; } yy776: yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy777; } if (yych <= '\f') { if (yych <= 0x08) goto yy775; if (yych <= '\n') goto yy780; goto yy775; } else { if (yych <= '\r') goto yy780; if (yych == '#') goto yy781; goto yy775; } yy777: yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } yy779: { return (bufsize_t)(p - start); } yy780: ++p; goto yy779; yy781: yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } if (yych <= '\f') { if (yych <= 0x08) goto yy782; if (yych <= '\n') goto yy780; } else { if (yych <= '\r') goto yy780; if (yych == '#') goto yy783; } yy782: p = marker; goto yy775; yy783: yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } if (yych <= '\f') { if (yych <= 0x08) goto yy782; if (yych <= '\n') goto yy780; goto yy782; } else { if (yych <= '\r') goto yy780; if (yych != '#') goto yy782; } yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } if (yych <= '\f') { if (yych <= 0x08) goto yy782; if (yych <= '\n') goto yy780; goto yy782; } else { if (yych <= '\r') goto yy780; if (yych != '#') goto yy782; } yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } if (yych <= '\f') { if (yych <= 0x08) goto yy782; if (yych <= '\n') goto yy780; goto yy782; } else { if (yych <= '\r') goto yy780; if (yych != '#') goto yy782; } yych = *++p; if (yybm[0+yych] & 128) { goto yy777; } if (yych <= 0x08) goto yy782; if (yych <= '\n') goto yy780; if (yych == '\r') goto yy780; goto yy782; } } // 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 yy791; if (yych == '=') goto yy792; ++p; yy790: { return 0; } yy791: yych = *(marker = ++p); if (yybm[0+yych] & 64) { goto yy798; } if (yych <= '\f') { if (yych <= 0x08) goto yy790; if (yych <= '\n') goto yy794; goto yy790; } else { if (yych <= '\r') goto yy794; if (yych == ' ') goto yy794; goto yy790; } yy792: yych = *(marker = ++p); if (yybm[0+yych] & 128) { goto yy804; } if (yych <= '\f') { if (yych <= 0x08) goto yy790; if (yych <= '\n') goto yy801; goto yy790; } else { if (yych <= '\r') goto yy801; if (yych == ' ') goto yy801; goto yy790; } yy793: yych = *++p; yy794: if (yybm[0+yych] & 32) { goto yy793; } if (yych <= 0x08) goto yy795; if (yych <= '\n') goto yy796; if (yych == '\r') goto yy796; yy795: p = marker; goto yy790; yy796: ++p; { return 2; } yy798: yych = *++p; if (yybm[0+yych] & 32) { goto yy793; } if (yych <= '\f') { if (yych <= 0x08) goto yy795; if (yych <= '\n') goto yy796; goto yy795; } else { if (yych <= '\r') goto yy796; if (yych == '-') goto yy798; goto yy795; } yy800: yych = *++p; yy801: if (yych <= '\f') { if (yych <= 0x08) goto yy795; if (yych <= '\t') goto yy800; if (yych >= '\v') goto yy795; } else { if (yych <= '\r') goto yy802; if (yych == ' ') goto yy800; goto yy795; } yy802: ++p; { return 1; } yy804: yych = *++p; if (yybm[0+yych] & 128) { goto yy804; } if (yych <= '\f') { if (yych <= 0x08) goto yy795; if (yych <= '\t') goto yy800; if (yych <= '\n') goto yy802; goto yy795; } else { if (yych <= '\r') goto yy802; if (yych == ' ') goto yy800; goto yy795; } } } // 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 yy810; if (yych == '~') goto yy811; ++p; yy809: { return 0; } yy810: yych = *(marker = ++p); if (yych == '`') goto yy812; goto yy809; yy811: yych = *(marker = ++p); if (yych == '~') goto yy814; goto yy809; yy812: yych = *++p; if (yybm[0+yych] & 16) { goto yy815; } yy813: p = marker; goto yy809; yy814: yych = *++p; if (yybm[0+yych] & 32) { goto yy817; } goto yy813; yy815: yych = *++p; if (yybm[0+yych] & 16) { goto yy815; } if (yych <= 0xDF) { if (yych <= '\f') { if (yych <= 0x00) goto yy813; if (yych == '\n') { marker = p; goto yy821; } marker = p; goto yy819; } else { if (yych <= '\r') { marker = p; goto yy821; } if (yych <= 0x7F) { marker = p; goto yy819; } if (yych <= 0xC1) goto yy813; marker = p; goto yy823; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) { marker = p; goto yy824; } if (yych == 0xED) { marker = p; goto yy826; } marker = p; goto yy825; } else { if (yych <= 0xF0) { marker = p; goto yy827; } if (yych <= 0xF3) { marker = p; goto yy828; } if (yych <= 0xF4) { marker = p; goto yy829; } goto yy813; } } yy817: yych = *++p; if (yybm[0+yych] & 32) { goto yy817; } if (yych <= 0xDF) { if (yych <= '\f') { if (yych <= 0x00) goto yy813; if (yych == '\n') { marker = p; goto yy832; } marker = p; goto yy830; } else { if (yych <= '\r') { marker = p; goto yy832; } if (yych <= 0x7F) { marker = p; goto yy830; } if (yych <= 0xC1) goto yy813; marker = p; goto yy834; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) { marker = p; goto yy835; } if (yych == 0xED) { marker = p; goto yy837; } marker = p; goto yy836; } else { if (yych <= 0xF0) { marker = p; goto yy838; } if (yych <= 0xF3) { marker = p; goto yy839; } if (yych <= 0xF4) { marker = p; goto yy840; } goto yy813; } } yy819: yych = *++p; if (yybm[0+yych] & 64) { goto yy819; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x00) goto yy813; if (yych >= 0x0E) goto yy813; } else { if (yych <= 0xDF) goto yy823; if (yych <= 0xE0) goto yy824; goto yy825; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy826; if (yych <= 0xEF) goto yy825; goto yy827; } else { if (yych <= 0xF3) goto yy828; if (yych <= 0xF4) goto yy829; goto yy813; } } yy821: ++p; p = marker; { return (bufsize_t)(p - start); } yy823: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy819; goto yy813; yy824: yych = *++p; if (yych <= 0x9F) goto yy813; if (yych <= 0xBF) goto yy823; goto yy813; yy825: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy823; goto yy813; yy826: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0x9F) goto yy823; goto yy813; yy827: yych = *++p; if (yych <= 0x8F) goto yy813; if (yych <= 0xBF) goto yy825; goto yy813; yy828: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy825; goto yy813; yy829: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0x8F) goto yy825; goto yy813; yy830: yych = *++p; if (yybm[0+yych] & 128) { goto yy830; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= 0x00) goto yy813; if (yych >= 0x0E) goto yy813; } else { if (yych <= 0xDF) goto yy834; if (yych <= 0xE0) goto yy835; goto yy836; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy837; if (yych <= 0xEF) goto yy836; goto yy838; } else { if (yych <= 0xF3) goto yy839; if (yych <= 0xF4) goto yy840; goto yy813; } } yy832: ++p; p = marker; { return (bufsize_t)(p - start); } yy834: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy830; goto yy813; yy835: yych = *++p; if (yych <= 0x9F) goto yy813; if (yych <= 0xBF) goto yy834; goto yy813; yy836: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy834; goto yy813; yy837: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0x9F) goto yy834; goto yy813; yy838: yych = *++p; if (yych <= 0x8F) goto yy813; if (yych <= 0xBF) goto yy836; goto yy813; yy839: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0xBF) goto yy836; goto yy813; yy840: yych = *++p; if (yych <= 0x7F) goto yy813; if (yych <= 0x8F) goto yy836; goto yy813; } } // 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 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] & 32) { goto yy850; } yy848: p = marker; goto yy844; yy849: yych = *++p; if (yybm[0+yych] & 64) { goto yy852; } goto yy848; yy850: yych = *++p; if (yybm[0+yych] & 32) { goto yy850; } if (yych <= '\f') { if (yych <= 0x08) goto yy848; if (yych <= '\t') { marker = p; goto yy854; } if (yych <= '\n') { marker = p; goto yy856; } goto yy848; } else { if (yych <= '\r') { marker = p; goto yy856; } if (yych == ' ') { marker = p; goto yy854; } goto yy848; } yy852: yych = *++p; if (yybm[0+yych] & 64) { goto yy852; } if (yych <= '\f') { if (yych <= 0x08) goto yy848; if (yych <= '\t') { marker = p; goto yy858; } if (yych <= '\n') { marker = p; goto yy860; } goto yy848; } else { if (yych <= '\r') { marker = p; goto yy860; } if (yych == ' ') { marker = p; goto yy858; } goto yy848; } yy854: yych = *++p; if (yybm[0+yych] & 128) { goto yy854; } if (yych <= 0x08) goto yy848; if (yych <= '\n') goto yy856; if (yych != '\r') goto yy848; yy856: ++p; p = marker; { return (bufsize_t)(p - start); } yy858: yych = *++p; if (yych <= '\f') { if (yych <= 0x08) goto yy848; if (yych <= '\t') goto yy858; if (yych >= '\v') goto yy848; } else { if (yych <= '\r') goto yy860; if (yych == ' ') goto yy858; goto yy848; } yy860: ++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 yy866; ++p; yy865: { return 0; } yy866: yych = *(marker = ++p); if (yych <= '@') { if (yych != '#') goto yy865; } else { if (yych <= 'Z') goto yy869; if (yych <= '`') goto yy865; if (yych <= 'z') goto yy869; goto yy865; } yych = *++p; if (yych <= 'W') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy870; } else { if (yych <= 'X') goto yy871; if (yych == 'x') goto yy871; } yy868: p = marker; goto yy865; yy869: yych = *++p; if (yych <= '@') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy872; goto yy868; } else { if (yych <= 'Z') goto yy872; if (yych <= '`') goto yy868; if (yych <= 'z') goto yy872; goto yy868; } yy870: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy873; if (yych == ';') goto yy874; goto yy868; yy871: yych = *++p; if (yych <= '@') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy876; goto yy868; } else { if (yych <= 'F') goto yy876; if (yych <= '`') goto yy868; if (yych <= 'f') goto yy876; goto yy868; } yy872: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy877; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy877; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy877; goto yy868; } } yy873: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy878; if (yych != ';') goto yy868; yy874: ++p; { return (bufsize_t)(p - start); } yy876: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy879; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'F') { if (yych <= '@') goto yy868; goto yy879; } else { if (yych <= '`') goto yy868; if (yych <= 'f') goto yy879; goto yy868; } } yy877: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy880; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy880; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy880; goto yy868; } } yy878: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy881; if (yych == ';') goto yy874; goto yy868; yy879: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy882; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'F') { if (yych <= '@') goto yy868; goto yy882; } else { if (yych <= '`') goto yy868; if (yych <= 'f') goto yy882; goto yy868; } } yy880: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy883; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy883; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy883; goto yy868; } } yy881: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy884; if (yych == ';') goto yy874; goto yy868; yy882: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy885; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'F') { if (yych <= '@') goto yy868; goto yy885; } else { if (yych <= '`') goto yy868; if (yych <= 'f') goto yy885; goto yy868; } } yy883: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy886; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy886; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy886; goto yy868; } } yy884: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy887; if (yych == ';') goto yy874; goto yy868; yy885: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy888; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'F') { if (yych <= '@') goto yy868; goto yy888; } else { if (yych <= '`') goto yy868; if (yych <= 'f') goto yy888; goto yy868; } } yy886: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy889; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy889; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy889; goto yy868; } } yy887: yych = *++p; if (yych <= '/') goto yy868; if (yych <= '9') goto yy890; if (yych == ';') goto yy874; goto yy868; yy888: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy890; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'F') { if (yych <= '@') goto yy868; goto yy890; } else { if (yych <= '`') goto yy868; if (yych <= 'f') goto yy890; goto yy868; } } yy889: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy891; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy891; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy891; goto yy868; } } yy890: yych = *++p; if (yych == ';') goto yy874; goto yy868; yy891: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy892; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy892: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy893; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy893: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy894; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy894: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy895; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy895: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy896; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy896: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy897; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy897: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy898; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy898: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy899; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy899: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy900; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy900: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy901; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy901: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy902; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy902: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy903; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy903: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy904; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy904: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy905; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy905: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy906; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy906: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy907; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy907: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy908; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy908: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy909; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy909: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy910; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy910: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy911; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy911: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy912; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy912: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy913; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy913: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy914; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; } else { if (yych <= '`') goto yy868; if (yych >= '{') goto yy868; } } yy914: yych = *++p; if (yych <= ';') { if (yych <= '/') goto yy868; if (yych <= '9') goto yy890; if (yych <= ':') goto yy868; goto yy874; } else { if (yych <= 'Z') { if (yych <= '@') goto yy868; goto yy890; } else { if (yych <= '`') goto yy868; if (yych <= 'z') goto yy890; goto yy868; } } } } // 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 yy919; if (yych >= 'F') goto yy920; } else { if (yych == 'J') goto yy921; if (yych >= 'V') goto yy922; } } else { if (yych <= 'f') { if (yych == 'd') goto yy919; if (yych >= 'f') goto yy920; } else { if (yych <= 'j') { if (yych >= 'j') goto yy921; } else { if (yych == 'v') goto yy922; } } } ++p; yy918: { return 0; } yy919: yyaccept = 0; yych = *(marker = ++p); if (yych == 'A') goto yy923; if (yych == 'a') goto yy923; goto yy918; yy920: yyaccept = 0; yych = *(marker = ++p); if (yych == 'I') goto yy925; if (yych == 'i') goto yy925; goto yy918; yy921: yyaccept = 0; yych = *(marker = ++p); if (yych == 'A') goto yy926; if (yych == 'a') goto yy926; goto yy918; yy922: yyaccept = 0; yych = *(marker = ++p); if (yych == 'B') goto yy927; if (yych == 'b') goto yy927; goto yy918; yy923: yych = *++p; if (yych == 'T') goto yy928; if (yych == 't') goto yy928; yy924: p = marker; if (yyaccept == 0) { goto yy918; } else { goto yy936; } yy925: yych = *++p; if (yych == 'L') goto yy929; if (yych == 'l') goto yy929; goto yy924; yy926: yych = *++p; if (yych == 'V') goto yy930; if (yych == 'v') goto yy930; goto yy924; yy927: yych = *++p; if (yych == 'S') goto yy931; if (yych == 's') goto yy931; goto yy924; yy928: yych = *++p; if (yych == 'A') goto yy932; if (yych == 'a') goto yy932; goto yy924; yy929: yych = *++p; if (yych == 'E') goto yy933; if (yych == 'e') goto yy933; goto yy924; yy930: yych = *++p; if (yych == 'A') goto yy927; if (yych == 'a') goto yy927; goto yy924; yy931: yych = *++p; if (yych == 'C') goto yy934; if (yych == 'c') goto yy934; goto yy924; yy932: yych = *++p; if (yych == ':') goto yy935; goto yy924; yy933: yych = *++p; if (yych == ':') goto yy937; goto yy924; yy934: yych = *++p; if (yych == 'R') goto yy938; if (yych == 'r') goto yy938; goto yy924; yy935: yyaccept = 1; yych = *(marker = ++p); if (yych == 'I') goto yy939; if (yych == 'i') goto yy939; yy936: { return (bufsize_t)(p - start); } yy937: ++p; goto yy936; yy938: yych = *++p; if (yych == 'I') goto yy940; if (yych == 'i') goto yy940; goto yy924; yy939: yych = *++p; if (yych == 'M') goto yy941; if (yych == 'm') goto yy941; goto yy924; yy940: yych = *++p; if (yych == 'P') goto yy942; if (yych == 'p') goto yy942; goto yy924; yy941: yych = *++p; if (yych == 'A') goto yy943; if (yych == 'a') goto yy943; goto yy924; yy942: yych = *++p; if (yych == 'T') goto yy933; if (yych == 't') goto yy933; goto yy924; yy943: yych = *++p; if (yych == 'G') goto yy944; if (yych != 'g') goto yy924; yy944: yych = *++p; if (yych == 'E') goto yy945; if (yych != 'e') goto yy924; yy945: yych = *++p; if (yych != '/') goto yy924; yych = *++p; if (yych <= 'W') { if (yych <= 'J') { if (yych == 'G') goto yy947; if (yych <= 'I') goto yy924; goto yy948; } else { if (yych == 'P') goto yy949; if (yych <= 'V') goto yy924; goto yy950; } } else { if (yych <= 'j') { if (yych == 'g') goto yy947; if (yych <= 'i') goto yy924; goto yy948; } else { if (yych <= 'p') { if (yych <= 'o') goto yy924; goto yy949; } else { if (yych == 'w') goto yy950; goto yy924; } } } yy947: yych = *++p; if (yych == 'I') goto yy951; if (yych == 'i') goto yy951; goto yy924; yy948: yych = *++p; if (yych == 'P') goto yy952; if (yych == 'p') goto yy952; goto yy924; yy949: yych = *++p; if (yych == 'N') goto yy953; if (yych == 'n') goto yy953; goto yy924; yy950: yych = *++p; if (yych == 'E') goto yy954; if (yych == 'e') goto yy954; goto yy924; yy951: yych = *++p; if (yych == 'F') goto yy955; if (yych == 'f') goto yy955; goto yy924; yy952: yych = *++p; if (yych == 'E') goto yy953; if (yych != 'e') goto yy924; yy953: yych = *++p; if (yych == 'G') goto yy955; if (yych == 'g') goto yy955; goto yy924; yy954: yych = *++p; if (yych == 'B') goto yy957; if (yych == 'b') goto yy957; goto yy924; yy955: ++p; { return 0; } yy957: yych = *++p; if (yych == 'P') goto yy955; if (yych == 'p') goto yy955; goto yy924; } } // 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 yy962; ++p; yy961: { return 0; } yy962: yych = *(marker = ++p); if (yych != '^') goto yy961; yych = *++p; if (yych != ']') goto yy966; yy964: p = marker; goto yy961; yy965: yych = *++p; yy966: if (yybm[0+yych] & 64) { goto yy965; } if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= ' ') goto yy964; if (yych <= ']') goto yy974; goto yy964; } else { if (yych <= 0xDF) goto yy967; if (yych <= 0xE0) goto yy968; goto yy969; } } else { if (yych <= 0xF0) { if (yych <= 0xED) goto yy970; if (yych <= 0xEF) goto yy969; goto yy971; } else { if (yych <= 0xF3) goto yy972; if (yych <= 0xF4) goto yy973; goto yy964; } } yy967: yych = *++p; if (yych <= 0x7F) goto yy964; if (yych <= 0xBF) goto yy965; goto yy964; yy968: yych = *++p; if (yych <= 0x9F) goto yy964; if (yych <= 0xBF) goto yy967; goto yy964; yy969: yych = *++p; if (yych <= 0x7F) goto yy964; if (yych <= 0xBF) goto yy967; goto yy964; yy970: yych = *++p; if (yych <= 0x7F) goto yy964; if (yych <= 0x9F) goto yy967; goto yy964; yy971: yych = *++p; if (yych <= 0x8F) goto yy964; if (yych <= 0xBF) goto yy969; goto yy964; yy972: yych = *++p; if (yych <= 0x7F) goto yy964; if (yych <= 0xBF) goto yy969; goto yy964; yy973: yych = *++p; if (yych <= 0x7F) goto yy964; if (yych <= 0x8F) goto yy969; goto yy964; yy974: yych = *++p; if (yych != ':') goto yy964; yy975: yych = *++p; if (yybm[0+yych] & 128) { goto yy975; } { return (bufsize_t)(p - start); } } }