From f35a4019ae52a1e6ceef45f283bf977f021b9844 Mon Sep 17 00:00:00 2001 From: Kris Baker Date: Tue, 5 Feb 2019 18:27:23 -0700 Subject: [PATCH] Updates to most recent cmark-gfm changes, including addition of task list. --- Sources/libcmark_gfm/arena.c | 4 +- Sources/libcmark_gfm/autolink.c | 18 +- Sources/libcmark_gfm/blocks.c | 36 +- Sources/libcmark_gfm/cmark.c | 6 +- Sources/libcmark_gfm/commonmark.c | 18 +- Sources/libcmark_gfm/core-extensions.c | 6 +- Sources/libcmark_gfm/ext_scanners.c | 1258 +- Sources/libcmark_gfm/footnotes.c | 2 +- Sources/libcmark_gfm/houdini_href_e.c | 6 +- Sources/libcmark_gfm/html.c | 18 +- Sources/libcmark_gfm/include/autolink.h | 6 +- Sources/libcmark_gfm/include/buffer.h | 46 +- Sources/libcmark_gfm/include/chunk.h | 2 +- .../include/cmark-gfm-core-extensions.h | 28 + ...ension_api.h => cmark-gfm-extension_api.h} | 155 +- .../include/cmark-gfm-extensions_export.h | 42 + .../include/{cmark.h => cmark-gfm.h} | 210 +- .../libcmark_gfm/include/cmark-gfm_export.h | 42 + .../libcmark_gfm/include/cmark-gfm_version.h | 7 + Sources/libcmark_gfm/include/cmark_ctype.h | 12 +- Sources/libcmark_gfm/include/cmark_export.h | 42 - Sources/libcmark_gfm/include/cmark_version.h | 8 - .../include/cmarkextensions_export.h | 42 - .../libcmark_gfm/include/core-extensions.h | 25 - Sources/libcmark_gfm/include/ext_scanners.h | 4 +- Sources/libcmark_gfm/include/houdini.h | 12 +- Sources/libcmark_gfm/include/inlines.h | 2 +- Sources/libcmark_gfm/include/iterator.h | 2 +- Sources/libcmark_gfm/include/libcmark_gfm.h | 13 +- Sources/libcmark_gfm/include/node.h | 8 +- Sources/libcmark_gfm/include/plugin.h | 4 +- Sources/libcmark_gfm/include/registry.h | 8 +- Sources/libcmark_gfm/include/scanners.h | 2 +- Sources/libcmark_gfm/include/strikethrough.h | 6 +- .../libcmark_gfm/include/syntax_extension.h | 6 +- Sources/libcmark_gfm/include/table.h | 10 +- Sources/libcmark_gfm/include/tagfilter.h | 6 +- Sources/libcmark_gfm/include/tasklist.h | 8 + Sources/libcmark_gfm/include/utf8.h | 12 +- Sources/libcmark_gfm/inlines.c | 50 +- Sources/libcmark_gfm/iterator.c | 2 +- Sources/libcmark_gfm/latex.c | 2 +- Sources/libcmark_gfm/linked_list.c | 2 +- Sources/libcmark_gfm/man.c | 2 +- Sources/libcmark_gfm/node.c | 20 +- Sources/libcmark_gfm/plaintext.c | 22 + Sources/libcmark_gfm/references.c | 2 +- Sources/libcmark_gfm/registry.c | 2 +- Sources/libcmark_gfm/render.c | 5 +- Sources/libcmark_gfm/scanners.c | 28601 ++++++---------- Sources/libcmark_gfm/strikethrough.c | 20 +- Sources/libcmark_gfm/syntax_extension.c | 12 +- Sources/libcmark_gfm/table.c | 115 +- Sources/libcmark_gfm/tagfilter.c | 2 +- Sources/libcmark_gfm/tasklist.c | 127 + Sources/libcmark_gfm/xml.c | 13 +- libcmark_gfm.podspec | 2 +- libcmark_gfm.xcodeproj/project.pbxproj | 308 +- 58 files changed, 12289 insertions(+), 19162 deletions(-) create mode 100644 Sources/libcmark_gfm/include/cmark-gfm-core-extensions.h rename Sources/libcmark_gfm/include/{cmark_extension_api.h => cmark-gfm-extension_api.h} (91%) create mode 100644 Sources/libcmark_gfm/include/cmark-gfm-extensions_export.h rename Sources/libcmark_gfm/include/{cmark.h => cmark-gfm.h} (80%) create mode 100644 Sources/libcmark_gfm/include/cmark-gfm_export.h create mode 100644 Sources/libcmark_gfm/include/cmark-gfm_version.h delete mode 100644 Sources/libcmark_gfm/include/cmark_export.h delete mode 100644 Sources/libcmark_gfm/include/cmark_version.h delete mode 100644 Sources/libcmark_gfm/include/cmarkextensions_export.h delete mode 100644 Sources/libcmark_gfm/include/core-extensions.h create mode 100644 Sources/libcmark_gfm/include/tasklist.h create mode 100644 Sources/libcmark_gfm/tasklist.c diff --git a/Sources/libcmark_gfm/arena.c b/Sources/libcmark_gfm/arena.c index 801fb3c..83a1525 100644 --- a/Sources/libcmark_gfm/arena.c +++ b/Sources/libcmark_gfm/arena.c @@ -1,8 +1,8 @@ #include #include #include -#include "cmark.h" -#include "cmark_extension_api.h" +#include "cmark-gfm.h" +#include "cmark-gfm-extension_api.h" static struct arena_chunk { size_t sz, used; diff --git a/Sources/libcmark_gfm/autolink.c b/Sources/libcmark_gfm/autolink.c index a1bdbf7..41564ee 100644 --- a/Sources/libcmark_gfm/autolink.c +++ b/Sources/libcmark_gfm/autolink.c @@ -1,5 +1,5 @@ #include "autolink.h" -#include "parser.h" +#include #include #include @@ -269,7 +269,11 @@ static cmark_node *match(cmark_syntax_extension *ext, cmark_parser *parser, // inline was finished in inlines.c. } -static void postprocess_text(cmark_parser *parser, cmark_node *text, int offset) { +static void postprocess_text(cmark_parser *parser, cmark_node *text, int offset, int depth) { + // postprocess_text can recurse very deeply if there is a very long line of + // '@' only. Stop at a reasonable depth to ensure it cannot crash. + if (depth > 1000) return; + size_t link_end; uint8_t *data = text->as.literal.data, *at; @@ -307,7 +311,7 @@ static void postprocess_text(cmark_parser *parser, cmark_node *text, int offset) } if (rewind == 0 || ns > 0) { - postprocess_text(parser, text, max_rewind + 1 + offset); + postprocess_text(parser, text, max_rewind + 1 + offset, depth + 1); return; } @@ -327,14 +331,14 @@ static void postprocess_text(cmark_parser *parser, cmark_node *text, int offset) if (link_end < 2 || nb != 1 || np == 0 || (!cmark_isalpha(data[link_end - 1]) && data[link_end - 1] != '.')) { - postprocess_text(parser, text, max_rewind + 1 + offset); + postprocess_text(parser, text, max_rewind + 1 + offset, depth + 1); return; } link_end = autolink_delim(data, link_end); if (link_end == 0) { - postprocess_text(parser, text, max_rewind + 1 + offset); + postprocess_text(parser, text, max_rewind + 1 + offset, depth + 1); return; } @@ -369,7 +373,7 @@ static void postprocess_text(cmark_parser *parser, cmark_node *text, int offset) text->as.literal.len = offset + max_rewind - rewind; text->as.literal.data[text->as.literal.len] = 0; - postprocess_text(parser, post, 0); + postprocess_text(parser, post, 0, depth + 1); } static cmark_node *postprocess(cmark_syntax_extension *ext, cmark_parser *parser, cmark_node *root) { @@ -396,7 +400,7 @@ static cmark_node *postprocess(cmark_syntax_extension *ext, cmark_parser *parser } if (ev == CMARK_EVENT_ENTER && node->type == CMARK_NODE_TEXT) { - postprocess_text(parser, node, 0); + postprocess_text(parser, node, 0, /*depth*/0); } } diff --git a/Sources/libcmark_gfm/blocks.c b/Sources/libcmark_gfm/blocks.c index fb5dcf2..97661f3 100644 --- a/Sources/libcmark_gfm/blocks.c +++ b/Sources/libcmark_gfm/blocks.c @@ -13,7 +13,7 @@ #include "syntax_extension.h" #include "config.h" #include "parser.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "node.h" #include "references.h" #include "utf8.h" @@ -755,22 +755,24 @@ static void S_find_first_nonspace(cmark_parser *parser, cmark_chunk *input) { char c; int chars_to_tab = TAB_STOP - (parser->column % TAB_STOP); - parser->first_nonspace = parser->offset; - parser->first_nonspace_column = parser->column; - while ((c = peek_at(input, parser->first_nonspace))) { - if (c == ' ') { - parser->first_nonspace += 1; - parser->first_nonspace_column += 1; - chars_to_tab = chars_to_tab - 1; - if (chars_to_tab == 0) { + if (parser->first_nonspace <= parser->offset) { + parser->first_nonspace = parser->offset; + parser->first_nonspace_column = parser->column; + while ((c = peek_at(input, parser->first_nonspace))) { + if (c == ' ') { + parser->first_nonspace += 1; + parser->first_nonspace_column += 1; + chars_to_tab = chars_to_tab - 1; + if (chars_to_tab == 0) { + chars_to_tab = TAB_STOP; + } + } else if (c == '\t') { + parser->first_nonspace += 1; + parser->first_nonspace_column += chars_to_tab; chars_to_tab = TAB_STOP; + } else { + break; } - } else if (c == '\t') { - parser->first_nonspace += 1; - parser->first_nonspace_column += chars_to_tab; - chars_to_tab = TAB_STOP; - } else { - break; } } @@ -1137,6 +1139,7 @@ static void open_new_blocks(cmark_parser *parser, cmark_node **container, (*container)->internal_offset = matched; } else if ((!indented || cont_type == CMARK_NODE_LIST) && + parser->indent < 4 && (matched = parse_list_marker( parser->mem, input, parser->first_nonspace, (*container)->type == CMARK_NODE_PARAGRAPH, &data))) { @@ -1372,6 +1375,9 @@ static void S_process_line(cmark_parser *parser, const unsigned char *buffer, parser->offset = 0; parser->column = 0; + parser->first_nonspace = 0; + parser->first_nonspace_column = 0; + parser->indent = 0; parser->blank = false; parser->partially_consumed_tab = false; diff --git a/Sources/libcmark_gfm/cmark.c b/Sources/libcmark_gfm/cmark.c index f6b4cdf..b3fad4b 100644 --- a/Sources/libcmark_gfm/cmark.c +++ b/Sources/libcmark_gfm/cmark.c @@ -4,15 +4,15 @@ #include "registry.h" #include "node.h" #include "houdini.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "buffer.h" cmark_node_type CMARK_NODE_LAST_BLOCK = CMARK_NODE_FOOTNOTE_DEFINITION; cmark_node_type CMARK_NODE_LAST_INLINE = CMARK_NODE_FOOTNOTE_REFERENCE; -int cmark_version() { return CMARK_VERSION; } +int cmark_version() { return CMARK_GFM_VERSION; } -const char *cmark_version_string() { return CMARK_VERSION_STRING; } +const char *cmark_version_string() { return CMARK_GFM_VERSION_STRING; } static void *xcalloc(size_t nmem, size_t size) { void *ptr = calloc(nmem, size); diff --git a/Sources/libcmark_gfm/commonmark.c b/Sources/libcmark_gfm/commonmark.c index c0ba7ae..335c005 100644 --- a/Sources/libcmark_gfm/commonmark.c +++ b/Sources/libcmark_gfm/commonmark.c @@ -5,7 +5,7 @@ #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "node.h" #include "buffer.h" #include "utf8.h" @@ -35,7 +35,7 @@ static CMARK_INLINE void outc(cmark_renderer *renderer, cmark_node *node, c < 0x80 && escape != LITERAL && ((escape == NORMAL && (c == '*' || c == '_' || c == '[' || c == ']' || c == '#' || c == '<' || - c == '>' || c == '\\' || c == '`' || c == '!' || + c == '>' || c == '\\' || c == '`' || c == '~' || c == '!' || (c == '&' && cmark_isalpha(nextc)) || (c == '!' && nextc == '[') || (renderer->begin_content && (c == '-' || c == '+' || c == '=') && // begin_content doesn't get set to false til we've passed digits @@ -168,9 +168,11 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, int list_number; cmark_delim_type list_delim; int numticks; + bool extra_spaces; int i; bool entering = (ev_type == CMARK_EVENT_ENTER); const char *info, *code, *title; + char fencechar[2] = {'\0', '\0'}; size_t info_len, code_len; char listmarker[LISTMARKER_SIZE]; char *emph_delim; @@ -283,6 +285,7 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, } info = cmark_node_get_fence_info(node); info_len = strlen(info); + fencechar[0] = strchr(info, '`') == NULL ? '`' : '~'; code = cmark_node_get_literal(node); code_len = strlen(code); // use indented form if no info, and code doesn't @@ -302,7 +305,7 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, numticks = 3; } for (i = 0; i < numticks; i++) { - LIT("`"); + LIT(fencechar); } LIT(" "); OUT(info, false, LITERAL); @@ -310,7 +313,7 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, OUT(cmark_node_get_literal(node), false, LITERAL); CR(); for (i = 0; i < numticks; i++) { - LIT("`"); + LIT(fencechar); } } BLANKLINE(); @@ -369,14 +372,17 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, code = cmark_node_get_literal(node); code_len = strlen(code); numticks = shortest_unused_backtick_sequence(code); + extra_spaces = code_len == 0 || + code[0] == '`' || code[code_len - 1] == '`' || + code[0] == ' ' || code[code_len - 1] == ' '; for (i = 0; i < numticks; i++) { LIT("`"); } - if (code_len == 0 || code[0] == '`') { + if (extra_spaces) { LIT(" "); } OUT(cmark_node_get_literal(node), allow_wrap, LITERAL); - if (code_len == 0 || code[code_len - 1] == '`') { + if (extra_spaces) { LIT(" "); } for (i = 0; i < numticks; i++) { diff --git a/Sources/libcmark_gfm/core-extensions.c b/Sources/libcmark_gfm/core-extensions.c index 4659ab1..846e2bc 100644 --- a/Sources/libcmark_gfm/core-extensions.c +++ b/Sources/libcmark_gfm/core-extensions.c @@ -1,8 +1,9 @@ -#include "core-extensions.h" +#include "cmark-gfm-core-extensions.h" #include "autolink.h" #include "strikethrough.h" #include "table.h" #include "tagfilter.h" +#include "tasklist.h" #include "registry.h" #include "plugin.h" @@ -12,10 +13,11 @@ static int core_extensions_registration(cmark_plugin *plugin) { create_strikethrough_extension()); cmark_plugin_register_syntax_extension(plugin, create_autolink_extension()); cmark_plugin_register_syntax_extension(plugin, create_tagfilter_extension()); + cmark_plugin_register_syntax_extension(plugin, create_tasklist_extension()); return 1; } -void core_extensions_ensure_registered(void) { +void cmark_gfm_core_extensions_ensure_registered(void) { static int registered = 0; if (!registered) { diff --git a/Sources/libcmark_gfm/ext_scanners.c b/Sources/libcmark_gfm/ext_scanners.c index 7e0f5f2..c3de227 100644 --- a/Sources/libcmark_gfm/ext_scanners.c +++ b/Sources/libcmark_gfm/ext_scanners.c @@ -1,12 +1,12 @@ -/* Generated by re2c 0.15.3 */ -#include +/* Generated by re2c 1.1.1 */ #include "ext_scanners.h" +#include bufsize_t _ext_scan_at(bufsize_t (*scanner)(const unsigned char *), unsigned char *ptr, int len, bufsize_t offset) { bufsize_t res; - if (ptr == NULL || offset > len) { + if (ptr == NULL || offset >= len) { return 0; } else { unsigned char lim = ptr[len]; @@ -44,35 +44,35 @@ bufsize_t _scan_table_start(const unsigned char *p) { if (yych <= 0x1F) { if (yych <= '\t') { if (yych <= 0x08) - goto yy6; - goto yy3; + goto yy3; + goto yy4; } else { if (yych <= '\n') goto yy2; if (yych <= '\f') - goto yy3; - goto yy6; + goto yy4; + goto yy3; } } else { if (yych <= '-') { if (yych <= ' ') - goto yy3; + goto yy4; if (yych <= ',') - goto yy6; + goto yy3; goto yy5; } else { if (yych == ':') - goto yy4; - goto yy6; + goto yy6; + goto yy3; } } } else { if (yych <= 0xEC) { if (yych <= 0xC1) { if (yych <= '|') - goto yy3; + goto yy4; if (yych <= 0x7F) - goto yy6; + goto yy3; } else { if (yych <= 0xDF) goto yy7; @@ -83,80 +83,68 @@ bufsize_t _scan_table_start(const unsigned char *p) { } else { if (yych <= 0xF0) { if (yych <= 0xED) - goto yy14; + goto yy11; if (yych <= 0xEF) goto yy10; - goto yy11; + goto yy12; } else { if (yych <= 0xF3) - goto yy12; - if (yych <= 0xF4) goto yy13; + if (yych <= 0xF4) + goto yy14; } } } yy2 : { return 0; } yy3: - yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy22; - } - if (yych <= '\f') { - if (yych == '\t') - goto yy29; - if (yych <= '\n') - goto yy2; - goto yy29; - } else { - if (yych <= ' ') { - if (yych <= 0x1F) - goto yy2; - goto yy29; - } else { - if (yych == ':') - goto yy31; - goto yy2; - } - } + ++p; + goto yy2; yy4: yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy22; + if (yybm[0 + yych] & 64) { + goto yy15; } + if (yych == '-') + goto yy17; + if (yych == ':') + goto yy19; goto yy2; yy5: yych = *(marker = ++p); if (yybm[0 + yych] & 128) { - goto yy22; + goto yy17; } if (yych <= ' ') { if (yych <= 0x08) goto yy2; if (yych <= '\r') - goto yy16; + goto yy21; if (yych <= 0x1F) goto yy2; - goto yy16; + goto yy21; } else { if (yych <= ':') { if (yych <= '9') goto yy2; - goto yy15; + goto yy20; } else { if (yych == '|') - goto yy16; + goto yy21; goto yy2; } } yy6: - yych = *++p; + yych = *(marker = ++p); + if (yybm[0 + yych] & 128) { + goto yy17; + } goto yy2; yy7: yych = *++p; if (yych <= 0x7F) goto yy8; if (yych <= 0xBF) - goto yy6; + goto yy3; yy8: p = marker; goto yy2; @@ -176,14 +164,14 @@ bufsize_t _scan_table_start(const unsigned char *p) { goto yy8; yy11: yych = *++p; - if (yych <= 0x8F) + if (yych <= 0x7F) goto yy8; - if (yych <= 0xBF) - goto yy10; + if (yych <= 0x9F) + goto yy7; goto yy8; yy12: yych = *++p; - if (yych <= 0x7F) + if (yych <= 0x8F) goto yy8; if (yych <= 0xBF) goto yy10; @@ -192,191 +180,126 @@ bufsize_t _scan_table_start(const unsigned char *p) { yych = *++p; if (yych <= 0x7F) goto yy8; - if (yych <= 0x8F) + if (yych <= 0xBF) goto yy10; goto yy8; yy14: yych = *++p; if (yych <= 0x7F) goto yy8; - if (yych <= 0x9F) - goto yy7; + if (yych <= 0x8F) + goto yy10; goto yy8; yy15: - ++p; - yych = *p; - yy16: + yych = *++p; if (yybm[0 + yych] & 64) { goto yy15; } - if (yych <= '\r') { - if (yych <= 0x08) - goto yy8; - if (yych <= '\n') - goto yy20; + if (yych == '-') + goto yy17; + if (yych == ':') goto yy19; - } else { - if (yych != '|') - goto yy8; - } + goto yy8; yy17: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) - goto yy8; - if (yych <= '\t') - goto yy17; - goto yy20; - } else { - if (yych <= '\f') - goto yy17; - if (yych >= 0x0E) - goto yy8; - } - } else { - if (yych <= '-') { - if (yych <= ' ') - goto yy17; - if (yych <= ',') - goto yy8; - goto yy25; - } else { - if (yych == ':') - goto yy24; - goto yy8; - } - } - yy19: yych = *++p; - if (yych != '\n') - goto yy8; - yy20: - ++p; - { return (bufsize_t)(p - start); } - yy22: - ++p; - yych = *p; if (yybm[0 + yych] & 128) { - goto yy22; + goto yy17; } if (yych <= 0x1F) { if (yych <= '\n') { if (yych <= 0x08) goto yy8; if (yych <= '\t') - goto yy15; - goto yy20; + goto yy20; + goto yy22; } else { if (yych <= '\f') - goto yy15; + goto yy20; if (yych <= '\r') - goto yy19; + goto yy24; goto yy8; } } else { if (yych <= ':') { if (yych <= ' ') - goto yy15; + goto yy20; if (yych <= '9') goto yy8; - goto yy15; + goto yy20; } else { if (yych == '|') - goto yy17; - goto yy8; - } - } - yy24: - ++p; - yych = *p; - if (yych != '-') - goto yy8; - yy25: - ++p; - yych = *p; - if (yych <= ' ') { - if (yych <= '\n') { - if (yych <= 0x08) - goto yy8; - if (yych >= '\n') - goto yy20; - } else { - if (yych <= '\f') - goto yy27; - if (yych <= '\r') - goto yy19; - if (yych <= 0x1F) - goto yy8; - } - } else { - if (yych <= '9') { - if (yych == '-') goto yy25; goto yy8; - } else { - if (yych <= ':') - goto yy27; - if (yych == '|') - goto yy17; - goto yy8; } } - yy27: - ++p; - yych = *p; + yy19: + yych = *++p; + if (yybm[0 + yych] & 128) { + goto yy17; + } + goto yy8; + yy20: + yych = *++p; + yy21: if (yych <= '\r') { if (yych <= '\t') { if (yych <= 0x08) goto yy8; - goto yy27; + goto yy20; } else { if (yych <= '\n') - goto yy20; + goto yy22; if (yych <= '\f') - goto yy27; - goto yy19; + goto yy20; + goto yy24; } } else { if (yych <= ' ') { if (yych <= 0x1F) goto yy8; - goto yy27; + goto yy20; } else { if (yych == '|') - goto yy17; + goto yy25; goto yy8; } } - yy29: + yy22: ++p; - yych = *p; - if (yybm[0 + yych] & 128) { + { return (bufsize_t)(p - start); } + yy24: + yych = *++p; + if (yych == '\n') goto yy22; + goto yy8; + yy25: + yych = *++p; + if (yybm[0 + yych] & 128) { + goto yy17; } - if (yych <= '\f') { - if (yych == '\t') - goto yy29; - if (yych <= '\n') - goto yy8; - goto yy29; + if (yych <= '\r') { + if (yych <= '\t') { + if (yych <= 0x08) + goto yy8; + goto yy25; + } else { + if (yych <= '\n') + goto yy22; + if (yych <= '\f') + goto yy25; + goto yy24; + } } else { if (yych <= ' ') { if (yych <= 0x1F) goto yy8; - goto yy29; + goto yy25; } else { - if (yych != ':') - goto yy8; + if (yych == ':') + goto yy19; + goto yy8; } } - yy31: - ++p; - if (yybm[0 + (yych = *p)] & 128) { - goto yy22; - } - goto yy8; } } @@ -387,261 +310,180 @@ bufsize_t _scan_table_cell(const unsigned char *p) { { unsigned char yych; static const unsigned char yybm[] = { - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 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, 128, 128, 128, 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, 0, 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, + 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 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, 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, 0, 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 = *(marker = p); - if (yych <= 0x7F) { - if (yych <= '\r') { - if (yych == '\n') - goto yy34; - if (yych <= '\f') - goto yy36; - goto yy45; + if (yybm[0 + yych] & 64) { + goto yy30; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= '\n') + goto yy29; + if (yych <= '\r') + goto yy32; + goto yy34; } else { - if (yych <= '\\') { - if (yych <= '[') - goto yy36; - goto yy35; - } else { - if (yych == '|') - goto yy45; + if (yych <= '|') + goto yy32; + if (yych <= 0xC1) + goto yy29; + if (yych <= 0xDF) goto yy36; - } + goto yy38; } } else { - if (yych <= 0xED) { - if (yych <= 0xDF) { - if (yych >= 0xC2) - goto yy37; - } else { - if (yych <= 0xE0) - goto yy39; - if (yych <= 0xEC) - goto yy40; - goto yy44; - } + if (yych <= 0xEF) { + if (yych == 0xED) + goto yy40; + goto yy39; } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy40; + if (yych <= 0xF0) goto yy41; - } else { - if (yych <= 0xF3) - goto yy42; - if (yych <= 0xF4) - goto yy43; - } + if (yych <= 0xF3) + goto yy42; + if (yych <= 0xF4) + goto yy43; } } - yy34 : { return (bufsize_t)(p - start); } - yy35: + yy29 : { return (bufsize_t)(p - start); } + yy30: yych = *(marker = ++p); - if (yych == '|') - goto yy49; - goto yy50; - yy36: + if (yybm[0 + yych] & 64) { + goto yy30; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\r') + goto yy29; + if (yych <= '\\') + goto yy34; + goto yy29; + } else { + if (yych <= 0xDF) + goto yy36; + if (yych <= 0xE0) + goto yy38; + goto yy39; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) + goto yy40; + if (yych <= 0xEF) + goto yy39; + goto yy41; + } else { + if (yych <= 0xF3) + goto yy42; + if (yych <= 0xF4) + goto yy43; + goto yy29; + } + } + yy32: + ++p; + { return 0; } + yy34: yych = *(marker = ++p); - goto yy50; - yy37: - yych = *++p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0xBF) - goto yy36; - yy38: - p = marker; - goto yy34; - yy39: - yych = *++p; - if (yych <= 0x9F) - goto yy38; - if (yych <= 0xBF) - goto yy37; - goto yy38; - yy40: - yych = *++p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0xBF) - goto yy37; - goto yy38; - yy41: - yych = *++p; - if (yych <= 0x8F) - goto yy38; - if (yych <= 0xBF) - goto yy40; - goto yy38; - yy42: - yych = *++p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0xBF) - goto yy40; - goto yy38; - yy43: - yych = *++p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0x8F) - goto yy40; - goto yy38; - yy44: - yych = *++p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0x9F) - goto yy37; - goto yy38; - yy45: - ++p; - { return 0; } - yy47: - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy47; + if (yybm[0 + yych] & 128) { + goto yy34; } if (yych <= 0xDF) { if (yych <= '\f') { if (yych == '\n') - goto yy34; + goto yy29; + goto yy30; } else { if (yych <= '\r') - goto yy34; + goto yy29; if (yych <= 0x7F) - goto yy49; + goto yy30; if (yych <= 0xC1) - goto yy34; - goto yy51; + goto yy29; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) - goto yy52; + goto yy38; if (yych == 0xED) - goto yy57; - goto yy53; + goto yy40; + goto yy39; } else { if (yych <= 0xF0) - goto yy54; - if (yych <= 0xF3) - goto yy55; - if (yych <= 0xF4) - goto yy56; - goto yy34; - } - } - yy49: - marker = ++p; - yych = *p; - yy50: - if (yybm[0 + yych] & 128) { - goto yy49; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\r') - goto yy34; - if (yych <= '\\') - goto yy47; - goto yy34; - } else { - if (yych <= 0xDF) - goto yy51; - if (yych <= 0xE0) - goto yy52; - goto yy53; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy57; - if (yych <= 0xEF) - goto yy53; - goto yy54; - } else { + goto yy41; if (yych <= 0xF3) - goto yy55; + goto yy42; if (yych <= 0xF4) - goto yy56; - goto yy34; + goto yy43; + goto yy29; } } - yy51: - ++p; - yych = *p; + yy36: + yych = *++p; if (yych <= 0x7F) - goto yy38; + goto yy37; if (yych <= 0xBF) - goto yy49; - goto yy38; - yy52: - ++p; - yych = *p; + goto yy30; + yy37: + p = marker; + goto yy29; + yy38: + yych = *++p; if (yych <= 0x9F) - goto yy38; + goto yy37; if (yych <= 0xBF) - goto yy51; - goto yy38; - yy53: - ++p; - yych = *p; + goto yy36; + goto yy37; + yy39: + yych = *++p; if (yych <= 0x7F) - goto yy38; + goto yy37; if (yych <= 0xBF) - goto yy51; - goto yy38; - yy54: - ++p; - yych = *p; + goto yy36; + goto yy37; + yy40: + yych = *++p; + if (yych <= 0x7F) + goto yy37; + if (yych <= 0x9F) + goto yy36; + goto yy37; + yy41: + yych = *++p; if (yych <= 0x8F) - goto yy38; + goto yy37; if (yych <= 0xBF) - goto yy53; - goto yy38; - yy55: - ++p; - yych = *p; + goto yy39; + goto yy37; + yy42: + yych = *++p; if (yych <= 0x7F) - goto yy38; + goto yy37; if (yych <= 0xBF) - goto yy53; - goto yy38; - yy56: - ++p; - yych = *p; + goto yy39; + goto yy37; + yy43: + yych = *++p; if (yych <= 0x7F) - goto yy38; + goto yy37; if (yych <= 0x8F) - goto yy53; - goto yy38; - yy57: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy38; - if (yych <= 0x9F) - goto yy51; - goto yy38; + goto yy39; + goto yy37; } } @@ -671,116 +513,111 @@ bufsize_t _scan_table_cell_end(const unsigned char *p) { if (yych <= 0xDF) { if (yych <= '{') { if (yych != '\n') - goto yy63; + goto yy47; } else { if (yych <= '|') - goto yy61; + goto yy48; if (yych <= 0x7F) - goto yy63; + goto yy47; if (yych >= 0xC2) - goto yy64; + goto yy51; } } else { if (yych <= 0xEF) { if (yych <= 0xE0) - goto yy66; + goto yy53; if (yych == 0xED) - goto yy71; - goto yy67; + goto yy55; + goto yy54; } else { if (yych <= 0xF0) - goto yy68; + goto yy56; if (yych <= 0xF3) - goto yy69; + goto yy57; if (yych <= 0xF4) - goto yy70; + goto yy58; } } - yy60 : { return 0; } - yy61: + yy46 : { return 0; } + yy47: + ++p; + goto yy46; + yy48: yyaccept = 1; yych = *(marker = ++p); - goto yy73; - yy62 : { return (bufsize_t)(p - start); } - yy63: - yych = *++p; - goto yy60; - yy64: + if (yybm[0 + yych] & 128) { + goto yy48; + } + if (yych <= 0x08) + goto yy50; + if (yych <= '\n') + goto yy59; + if (yych <= '\r') + goto yy60; + yy50 : { return (bufsize_t)(p - start); } + yy51: yych = *++p; if (yych <= 0x7F) - goto yy65; + goto yy52; if (yych <= 0xBF) - goto yy63; - yy65: + goto yy47; + yy52: p = marker; if (yyaccept == 0) { - goto yy60; + goto yy46; } else { - goto yy62; + goto yy50; } - yy66: + yy53: yych = *++p; if (yych <= 0x9F) - goto yy65; + goto yy52; if (yych <= 0xBF) - goto yy64; - goto yy65; - yy67: + goto yy51; + goto yy52; + yy54: yych = *++p; if (yych <= 0x7F) - goto yy65; + goto yy52; if (yych <= 0xBF) - goto yy64; - goto yy65; - yy68: + goto yy51; + goto yy52; + yy55: + yych = *++p; + if (yych <= 0x7F) + goto yy52; + if (yych <= 0x9F) + goto yy51; + goto yy52; + yy56: yych = *++p; if (yych <= 0x8F) - goto yy65; + goto yy52; if (yych <= 0xBF) - goto yy67; - goto yy65; - yy69: + goto yy54; + goto yy52; + yy57: yych = *++p; if (yych <= 0x7F) - goto yy65; + goto yy52; if (yych <= 0xBF) - goto yy67; - goto yy65; - yy70: + goto yy54; + goto yy52; + yy58: yych = *++p; if (yych <= 0x7F) - goto yy65; + goto yy52; if (yych <= 0x8F) - goto yy67; - goto yy65; - yy71: - yych = *++p; - if (yych <= 0x7F) - goto yy65; - if (yych <= 0x9F) - goto yy64; - goto yy65; - yy72: - yyaccept = 1; - marker = ++p; - yych = *p; - yy73: - if (yybm[0 + yych] & 128) { - goto yy72; - } - if (yych <= 0x08) - goto yy62; - if (yych <= '\n') - goto yy75; - if (yych >= 0x0E) - goto yy62; - yych = *++p; - if (yych != '\n') - goto yy65; - yy75: + goto yy54; + goto yy52; + yy59: ++p; - yych = *p; - goto yy62; + goto yy50; + yy60: + yych = *++p; + if (yych == '\n') + goto yy59; + goto yy52; } } @@ -809,133 +646,514 @@ bufsize_t _scan_table_row_end(const unsigned char *p) { if (yych <= 0xC1) { if (yych <= '\f') { if (yych <= 0x08) - goto yy83; + goto yy64; if (yych == '\n') - goto yy81; - goto yy79; + goto yy66; + goto yy65; } else { if (yych <= 0x1F) { if (yych <= '\r') - goto yy80; - goto yy83; + goto yy68; + goto yy64; } else { if (yych <= ' ') - goto yy79; + goto yy65; if (yych <= 0x7F) - goto yy83; + goto yy64; } } } else { if (yych <= 0xED) { if (yych <= 0xDF) - goto yy84; + goto yy69; if (yych <= 0xE0) - goto yy86; + goto yy71; if (yych <= 0xEC) - goto yy87; - goto yy91; + goto yy72; + goto yy73; } else { if (yych <= 0xF0) { if (yych <= 0xEF) - goto yy87; - goto yy88; + goto yy72; + goto yy74; } else { if (yych <= 0xF3) - goto yy89; + goto yy75; if (yych <= 0xF4) - goto yy90; + goto yy76; } } } - yy78 : { return 0; } - yy79: + yy63 : { return 0; } + yy64: + ++p; + goto yy63; + yy65: yych = *(marker = ++p); if (yych <= 0x08) - goto yy78; + goto yy63; if (yych <= '\r') - goto yy94; + goto yy78; if (yych == ' ') - goto yy94; - goto yy78; - yy80: - yych = *++p; - if (yych != '\n') goto yy78; - yy81: + goto yy63; + yy66: ++p; { return (bufsize_t)(p - start); } - yy83: + yy68: yych = *++p; - goto yy78; - yy84: + if (yych == '\n') + goto yy66; + goto yy63; + yy69: yych = *++p; if (yych <= 0x7F) - goto yy85; + goto yy70; if (yych <= 0xBF) - goto yy83; - yy85: + goto yy64; + yy70: p = marker; - goto yy78; - yy86: + goto yy63; + yy71: yych = *++p; if (yych <= 0x9F) - goto yy85; + goto yy70; if (yych <= 0xBF) - goto yy84; - goto yy85; - yy87: + goto yy69; + goto yy70; + yy72: yych = *++p; if (yych <= 0x7F) - goto yy85; + goto yy70; if (yych <= 0xBF) - goto yy84; - goto yy85; - yy88: + goto yy69; + goto yy70; + yy73: + yych = *++p; + if (yych <= 0x7F) + goto yy70; + if (yych <= 0x9F) + goto yy69; + goto yy70; + yy74: yych = *++p; if (yych <= 0x8F) - goto yy85; + goto yy70; if (yych <= 0xBF) - goto yy87; - goto yy85; - yy89: + goto yy72; + goto yy70; + yy75: + yych = *++p; + if (yych <= 0x7F) + goto yy70; + if (yych <= 0xBF) + goto yy72; + goto yy70; + yy76: + yych = *++p; + if (yych <= 0x7F) + goto yy70; + if (yych <= 0x8F) + goto yy72; + goto yy70; + yy77: + yych = *++p; + yy78: + if (yybm[0 + yych] & 128) { + goto yy77; + } + if (yych <= 0x08) + goto yy70; + if (yych <= '\n') + goto yy66; + if (yych >= 0x0E) + goto yy70; + yych = *++p; + if (yych == '\n') + goto yy66; + goto yy70; + } +} +bufsize_t _scan_tasklist(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, 64, 0, 64, 64, 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, + 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, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 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 = *(marker = p); + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= '\t') { + if (yych <= 0x08) + goto yy83; + goto yy84; + } else { + if (yych <= '\n') + goto yy82; + if (yych <= '\f') + goto yy84; + goto yy83; + } + } else { + if (yych <= '+') { + if (yych <= ' ') + goto yy84; + if (yych <= ')') + goto yy83; + goto yy85; + } else { + if (yych == '-') + goto yy85; + goto yy83; + } + } + } else { + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '9') + goto yy86; + if (yych <= 0x7F) + goto yy83; + } else { + if (yych <= 0xDF) + goto yy87; + if (yych <= 0xE0) + goto yy89; + goto yy90; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) + goto yy91; + if (yych <= 0xEF) + goto yy90; + goto yy92; + } else { + if (yych <= 0xF3) + goto yy93; + if (yych <= 0xF4) + goto yy94; + } + } + } + yy82 : { return 0; } + yy83: + ++p; + goto yy82; + yy84: + yych = *(marker = ++p); + if (yybm[0 + yych] & 64) { + goto yy95; + } + if (yych <= ',') { + if (yych <= ')') + goto yy82; + if (yych <= '+') + goto yy97; + goto yy82; + } else { + if (yych <= '-') + goto yy97; + if (yych <= '/') + goto yy82; + if (yych <= '9') + goto yy98; + goto yy82; + } + yy85: + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych == '\t') + goto yy99; + goto yy82; + } else { + if (yych <= '\f') + goto yy99; + if (yych == ' ') + goto yy99; + goto yy82; + } + yy86: + yych = *(marker = ++p); + if (yych <= 0x1F) { + if (yych <= '\t') { + if (yych <= 0x08) + goto yy102; + goto yy97; + } else { + if (yych <= '\n') + goto yy82; + if (yych <= '\f') + goto yy97; + goto yy102; + } + } else { + if (yych <= 0x7F) { + if (yych <= ' ') + goto yy97; + goto yy102; + } else { + if (yych <= 0xC1) + goto yy82; + if (yych <= 0xF4) + goto yy102; + goto yy82; + } + } + yy87: yych = *++p; if (yych <= 0x7F) - goto yy85; + goto yy88; + if (yych <= 0xBF) + goto yy83; + yy88: + p = marker; + goto yy82; + yy89: + yych = *++p; + if (yych <= 0x9F) + goto yy88; if (yych <= 0xBF) goto yy87; - goto yy85; + goto yy88; yy90: yych = *++p; if (yych <= 0x7F) - goto yy85; - if (yych <= 0x8F) + goto yy88; + if (yych <= 0xBF) goto yy87; - goto yy85; + goto yy88; yy91: yych = *++p; if (yych <= 0x7F) - goto yy85; + goto yy88; if (yych <= 0x9F) - goto yy84; - goto yy85; + goto yy87; + goto yy88; yy92: yych = *++p; - if (yych == '\n') - goto yy81; - goto yy85; + if (yych <= 0x8F) + goto yy88; + if (yych <= 0xBF) + goto yy90; + goto yy88; yy93: - ++p; - yych = *p; + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0xBF) + goto yy90; + goto yy88; yy94: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0x8F) + goto yy90; + goto yy88; + yy95: + yych = *++p; + if (yybm[0 + yych] & 64) { + goto yy95; + } + if (yych <= ',') { + if (yych <= ')') + goto yy88; + if (yych >= ',') + goto yy88; + } else { + if (yych <= '-') + goto yy97; + if (yych <= '/') + goto yy88; + if (yych <= '9') + goto yy98; + goto yy88; + } + yy97: + yych = *++p; + if (yych == '[') + goto yy88; + goto yy100; + yy98: + yych = *++p; + if (yych <= '\n') { + if (yych == '\t') + goto yy97; + goto yy102; + } else { + if (yych <= '\f') + goto yy97; + if (yych == ' ') + goto yy97; + goto yy102; + } + yy99: + yych = *++p; + yy100: + if (yych <= '\f') { + if (yych == '\t') + goto yy99; + if (yych <= '\n') + goto yy88; + goto yy99; + } else { + if (yych <= ' ') { + if (yych <= 0x1F) + goto yy88; + goto yy99; + } else { + if (yych == '[') + goto yy110; + goto yy88; + } + } + yy101: + yych = *++p; + yy102: if (yybm[0 + yych] & 128) { - goto yy93; + goto yy101; } - if (yych <= 0x08) - goto yy85; - if (yych <= '\n') - goto yy81; - if (yych <= '\r') - goto yy92; - goto yy85; + if (yych <= 0xC1) { + if (yych <= '\f') { + if (yych <= 0x08) + goto yy97; + if (yych == '\n') + goto yy88; + goto yy99; + } else { + if (yych == ' ') + goto yy99; + if (yych <= 0x7F) + goto yy97; + goto yy88; + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) + goto yy103; + if (yych <= 0xE0) + goto yy104; + if (yych <= 0xEC) + goto yy105; + goto yy106; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) + goto yy105; + goto yy107; + } else { + if (yych <= 0xF3) + goto yy108; + if (yych <= 0xF4) + goto yy109; + goto yy88; + } + } + } + yy103: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0xBF) + goto yy97; + goto yy88; + yy104: + yych = *++p; + if (yych <= 0x9F) + goto yy88; + if (yych <= 0xBF) + goto yy103; + goto yy88; + yy105: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0xBF) + goto yy103; + goto yy88; + yy106: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0x9F) + goto yy103; + goto yy88; + yy107: + yych = *++p; + if (yych <= 0x8F) + goto yy88; + if (yych <= 0xBF) + goto yy105; + goto yy88; + yy108: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0xBF) + goto yy105; + goto yy88; + yy109: + yych = *++p; + if (yych <= 0x7F) + goto yy88; + if (yych <= 0x8F) + goto yy105; + goto yy88; + yy110: + yych = *++p; + if (yych <= 'W') { + if (yych != ' ') + goto yy88; + } else { + if (yych <= 'X') + goto yy111; + if (yych != 'x') + goto yy88; + } + yy111: + yych = *++p; + if (yych != ']') + goto yy88; + yych = *++p; + if (yych <= '\n') { + if (yych != '\t') + goto yy88; + } else { + if (yych <= '\f') + goto yy113; + if (yych != ' ') + goto yy88; + } + yy113: + yych = *++p; + if (yych <= '\n') { + if (yych == '\t') + goto yy113; + } else { + if (yych <= '\f') + goto yy113; + if (yych == ' ') + goto yy113; + } + { return (bufsize_t)(p - start); } } } diff --git a/Sources/libcmark_gfm/footnotes.c b/Sources/libcmark_gfm/footnotes.c index ccd452c..f2d2765 100644 --- a/Sources/libcmark_gfm/footnotes.c +++ b/Sources/libcmark_gfm/footnotes.c @@ -1,4 +1,4 @@ -#include "cmark.h" +#include "cmark-gfm.h" #include "parser.h" #include "footnotes.h" #include "inlines.h" diff --git a/Sources/libcmark_gfm/houdini_href_e.c b/Sources/libcmark_gfm/houdini_href_e.c index 9152803..1693891 100644 --- a/Sources/libcmark_gfm/houdini_href_e.c +++ b/Sources/libcmark_gfm/houdini_href_e.c @@ -7,7 +7,7 @@ /* * The following characters will not be escaped: * - * -_.+!*'(),%#@?=;:/,+&$ alphanum + * -_.+!*'(),%#@?=;:/,+&$~ alphanum * * Note that this character set is the addition of: * @@ -15,7 +15,7 @@ * - The characters which are *not* safe to be in * an URL because they are RESERVED characters. * - * We asume (lazily) that any RESERVED char that + * We assume (lazily) that any RESERVED char that * appears inside an URL is actually meant to * have its native function (i.e. as an URL * component/separator) and hence needs no escaping. @@ -35,7 +35,7 @@ static const char HREF_SAFE[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Sources/libcmark_gfm/html.c b/Sources/libcmark_gfm/html.c index e2718c8..d4d6cf1 100644 --- a/Sources/libcmark_gfm/html.c +++ b/Sources/libcmark_gfm/html.c @@ -4,7 +4,7 @@ #include #include "cmark_ctype.h" #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "houdini.h" #include "scanners.h" #include "syntax_extension.h" @@ -203,12 +203,20 @@ static int S_render_node(cmark_html_renderer *renderer, cmark_node *node, cmark_html_render_sourcepos(node, html, options); cmark_strbuf_puts(html, " lang=\""); escape_html(html, node->as.code.info.data, first_tag); + if (first_tag < node->as.code.info.len && (options & CMARK_OPT_FULL_INFO_STRING)) { + cmark_strbuf_puts(html, "\" data-meta=\""); + escape_html(html, node->as.code.info.data + first_tag + 1, node->as.code.info.len - first_tag - 1); + } cmark_strbuf_puts(html, "\">"); } else { cmark_strbuf_puts(html, "as.code.info.data, first_tag); + if (first_tag < node->as.code.info.len && (options & CMARK_OPT_FULL_INFO_STRING)) { + cmark_strbuf_puts(html, "\" data-meta=\""); + escape_html(html, node->as.code.info.data + first_tag + 1, node->as.code.info.len - first_tag - 1); + } cmark_strbuf_puts(html, "\">"); } } @@ -219,7 +227,7 @@ static int S_render_node(cmark_html_renderer *renderer, cmark_node *node, case CMARK_NODE_HTML_BLOCK: cmark_html_render_cr(html); - if (options & CMARK_OPT_SAFE) { + if (!(options & CMARK_OPT_UNSAFE)) { cmark_strbuf_puts(html, ""); } else if (renderer->filter_extensions) { filter_html_block(renderer, node->as.literal.data, node->as.literal.len); @@ -297,7 +305,7 @@ static int S_render_node(cmark_html_renderer *renderer, cmark_node *node, break; case CMARK_NODE_HTML_INLINE: - if (options & CMARK_OPT_SAFE) { + if (!(options & CMARK_OPT_UNSAFE)) { cmark_strbuf_puts(html, ""); } else { filtered = false; @@ -346,7 +354,7 @@ static int S_render_node(cmark_html_renderer *renderer, cmark_node *node, case CMARK_NODE_LINK: if (entering) { cmark_strbuf_puts(html, "as.link.url, 0))) { houdini_escape_href(html, node->as.link.url.data, node->as.link.url.len); @@ -364,7 +372,7 @@ static int S_render_node(cmark_html_renderer *renderer, cmark_node *node, case CMARK_NODE_IMAGE: if (entering) { cmark_strbuf_puts(html, "as.link.url, 0))) { houdini_escape_href(html, node->as.link.url.data, node->as.link.url.len); diff --git a/Sources/libcmark_gfm/include/autolink.h b/Sources/libcmark_gfm/include/autolink.h index ee2ea2f..4e17937 100644 --- a/Sources/libcmark_gfm/include/autolink.h +++ b/Sources/libcmark_gfm/include/autolink.h @@ -1,7 +1,7 @@ -#ifndef AUTOLINK_H -#define AUTOLINK_H +#ifndef CMARK_GFM_AUTOLINK_H +#define CMARK_GFM_AUTOLINK_H -#include "core-extensions.h" +#include "cmark-gfm-core-extensions.h" cmark_syntax_extension *create_autolink_extension(void); diff --git a/Sources/libcmark_gfm/include/buffer.h b/Sources/libcmark_gfm/include/buffer.h index 35af9c3..b85bb44 100644 --- a/Sources/libcmark_gfm/include/buffer.h +++ b/Sources/libcmark_gfm/include/buffer.h @@ -7,7 +7,7 @@ #include #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #ifdef __cplusplus extern "C" { @@ -30,32 +30,32 @@ extern unsigned char cmark_strbuf__initbuf[]; * For the cases where CMARK_BUF_INIT cannot be used to do static * initialization. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_init(cmark_mem *mem, cmark_strbuf *buf, bufsize_t initial_size); /** * Grow the buffer to hold at least `target_size` bytes. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_grow(cmark_strbuf *buf, bufsize_t target_size); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_free(cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_swap(cmark_strbuf *buf_a, cmark_strbuf *buf_b); -CMARK_EXPORT +CMARK_GFM_EXPORT bufsize_t cmark_strbuf_len(const cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_strbuf_cmp(const cmark_strbuf *a, const cmark_strbuf *b); -CMARK_EXPORT +CMARK_GFM_EXPORT unsigned char *cmark_strbuf_detach(cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_copy_cstr(char *data, bufsize_t datasize, const cmark_strbuf *buf); @@ -65,48 +65,48 @@ static CMARK_INLINE const char *cmark_strbuf_cstr(const cmark_strbuf *buf) { #define cmark_strbuf_at(buf, n) ((buf)->ptr[n]) -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_set(cmark_strbuf *buf, const unsigned char *data, bufsize_t len); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_sets(cmark_strbuf *buf, const char *string); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_putc(cmark_strbuf *buf, int c); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_put(cmark_strbuf *buf, const unsigned char *data, bufsize_t len); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_puts(cmark_strbuf *buf, const char *string); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_clear(cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT bufsize_t cmark_strbuf_strchr(const cmark_strbuf *buf, int c, bufsize_t pos); -CMARK_EXPORT +CMARK_GFM_EXPORT bufsize_t cmark_strbuf_strrchr(const cmark_strbuf *buf, int c, bufsize_t pos); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_drop(cmark_strbuf *buf, bufsize_t n); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_truncate(cmark_strbuf *buf, bufsize_t len); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_rtrim(cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_trim(cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_normalize_whitespace(cmark_strbuf *s); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_strbuf_unescape(cmark_strbuf *s); #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/include/chunk.h b/Sources/libcmark_gfm/include/chunk.h index aca8172..6308ac7 100644 --- a/Sources/libcmark_gfm/include/chunk.h +++ b/Sources/libcmark_gfm/include/chunk.h @@ -4,7 +4,7 @@ #include #include #include -#include "cmark.h" +#include "cmark-gfm.h" #include "buffer.h" //#include "memory.h" #include "cmark_ctype.h" diff --git a/Sources/libcmark_gfm/include/cmark-gfm-core-extensions.h b/Sources/libcmark_gfm/include/cmark-gfm-core-extensions.h new file mode 100644 index 0000000..dce8648 --- /dev/null +++ b/Sources/libcmark_gfm/include/cmark-gfm-core-extensions.h @@ -0,0 +1,28 @@ +#ifndef CMARK_GFM_CORE_EXTENSIONS_H +#define CMARK_GFM_CORE_EXTENSIONS_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "cmark-gfm-extension_api.h" +#include "cmark-gfm-extensions_export.h" +#include + +CMARK_GFM_EXTENSIONS_EXPORT +void cmark_gfm_core_extensions_ensure_registered(void); + +CMARK_GFM_EXTENSIONS_EXPORT +uint16_t cmark_gfm_extensions_get_table_columns(cmark_node *node); + +CMARK_GFM_EXTENSIONS_EXPORT +uint8_t *cmark_gfm_extensions_get_table_alignments(cmark_node *node); + +CMARK_GFM_EXTENSIONS_EXPORT +int cmark_gfm_extensions_get_table_row_is_header(cmark_node *node); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Sources/libcmark_gfm/include/cmark_extension_api.h b/Sources/libcmark_gfm/include/cmark-gfm-extension_api.h similarity index 91% rename from Sources/libcmark_gfm/include/cmark_extension_api.h rename to Sources/libcmark_gfm/include/cmark-gfm-extension_api.h index 57ff229..9403c4f 100644 --- a/Sources/libcmark_gfm/include/cmark_extension_api.h +++ b/Sources/libcmark_gfm/include/cmark-gfm-extension_api.h @@ -1,11 +1,11 @@ -#ifndef CMARK_CMARK_EXTENSION_API_H -#define CMARK_CMARK_EXTENSION_API_H +#ifndef CMARK_GFM_EXTENSION_API_H +#define CMARK_GFM_EXTENSION_API_H #ifdef __cplusplus extern "C" { #endif -#include "cmark.h" +#include "cmark-gfm.h" struct cmark_renderer; struct cmark_html_renderer; @@ -106,8 +106,6 @@ typedef struct cmark_plugin cmark_plugin; * with 'cmark_syntax_extension_set_private', * and optionally define a free function for this data. */ -typedef struct cmark_syntax_extension cmark_syntax_extension; - typedef struct subject cmark_inline_parser; /** Exposed raw for now */ @@ -170,7 +168,7 @@ typedef int (*cmark_plugin_init_func)(cmark_plugin *plugin); * This takes ownership of 'extension', one should not call * 'cmark_syntax_extension_free' on a registered extension. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_plugin_register_syntax_extension(cmark_plugin *plugin, cmark_syntax_extension *extension); @@ -180,7 +178,7 @@ int cmark_plugin_register_syntax_extension(cmark_plugin *plugin, * It can then be attached to a cmark_parser * with the cmark_parser_attach_syntax_extension method. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_syntax_extension *cmark_find_syntax_extension(const char *name); /** Should create and add a new open block to 'parent_container' if @@ -238,6 +236,9 @@ typedef int (*cmark_commonmark_escape_func) (cmark_syntax_extension *extension, cmark_node *node, int c); +typedef const char* (*cmark_xml_attr_func) (cmark_syntax_extension *extension, + cmark_node *node); + typedef void (*cmark_html_render_func) (cmark_syntax_extension *extension, struct cmark_html_renderer *renderer, cmark_node *node, @@ -254,149 +255,165 @@ typedef cmark_node *(*cmark_postprocess_func) (cmark_syntax_extension *extension typedef int (*cmark_ispunct_func) (char c); +typedef void (*cmark_opaque_alloc_func) (cmark_syntax_extension *extension, + cmark_mem *mem, + cmark_node *node); + typedef void (*cmark_opaque_free_func) (cmark_syntax_extension *extension, cmark_mem *mem, cmark_node *node); /** Free a cmark_syntax_extension. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_free (cmark_mem *mem, cmark_syntax_extension *extension); /** Return a newly-constructed cmark_syntax_extension, named 'name'. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_syntax_extension *cmark_syntax_extension_new (const char *name); -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node_type cmark_syntax_extension_add_node(int is_inline); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_emphasis(cmark_syntax_extension *extension, int emphasis); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_open_block_func(cmark_syntax_extension *extension, cmark_open_block_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_match_block_func(cmark_syntax_extension *extension, cmark_match_block_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_match_inline_func(cmark_syntax_extension *extension, cmark_match_inline_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_inline_from_delim_func(cmark_syntax_extension *extension, cmark_inline_from_delim_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_special_inline_chars(cmark_syntax_extension *extension, cmark_llist *special_chars); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_get_type_string_func(cmark_syntax_extension *extension, cmark_get_type_string_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_can_contain_func(cmark_syntax_extension *extension, cmark_can_contain_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_contains_inlines_func(cmark_syntax_extension *extension, cmark_contains_inlines_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_commonmark_render_func(cmark_syntax_extension *extension, cmark_common_render_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_plaintext_render_func(cmark_syntax_extension *extension, cmark_common_render_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_latex_render_func(cmark_syntax_extension *extension, cmark_common_render_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT +void cmark_syntax_extension_set_xml_attr_func(cmark_syntax_extension *extension, + cmark_xml_attr_func func); + + /** See the documentation for 'cmark_syntax_extension' + */ +CMARK_GFM_EXPORT void cmark_syntax_extension_set_man_render_func(cmark_syntax_extension *extension, cmark_common_render_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_html_render_func(cmark_syntax_extension *extension, cmark_html_render_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_html_filter_func(cmark_syntax_extension *extension, cmark_html_filter_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_commonmark_escape_func(cmark_syntax_extension *extension, cmark_commonmark_escape_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_private(cmark_syntax_extension *extension, void *priv, cmark_free_func free_func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void *cmark_syntax_extension_get_private(cmark_syntax_extension *extension); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_syntax_extension_set_postprocess_func(cmark_syntax_extension *extension, cmark_postprocess_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT +void cmark_syntax_extension_set_opaque_alloc_func(cmark_syntax_extension *extension, + cmark_opaque_alloc_func func); + +/** See the documentation for 'cmark_syntax_extension' + */ +CMARK_GFM_EXPORT void cmark_syntax_extension_set_opaque_free_func(cmark_syntax_extension *extension, cmark_opaque_free_func func); /** See the documentation for 'cmark_syntax_extension' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parser_set_backslash_ispunct_func(cmark_parser *parser, cmark_ispunct_func func); /** Return the index of the line currently being parsed, starting with 1. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_line_number(cmark_parser *parser); /** Return the offset in bytes in the line being processed. @@ -407,7 +424,7 @@ int cmark_parser_get_line_number(cmark_parser *parser); * * Here, offset will first be 0, then 5 (the index of the 'f' character). */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_offset(cmark_parser *parser); /** @@ -441,7 +458,7 @@ int cmark_parser_get_offset(cmark_parser *parser); * cmark_parser_has_partially_consumed_tab() will now return * 'true'. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_column(cmark_parser *parser); /** Return the absolute index in bytes of the first nonspace @@ -456,7 +473,7 @@ int cmark_parser_get_column(cmark_parser *parser); * 0 offset (16) first_nonspace (28) * ``` */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_first_nonspace(cmark_parser *parser); /** Return the absolute index of the first nonspace column coming after 'offset' @@ -466,7 +483,7 @@ int cmark_parser_get_first_nonspace(cmark_parser *parser); * See the documentation for cmark_parser_get_first_nonspace() and * cmark_parser_get_column() for more information. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_first_nonspace_column(cmark_parser *parser); /** Return the difference between the values returned by @@ -476,7 +493,7 @@ int cmark_parser_get_first_nonspace_column(cmark_parser *parser); * This is not a byte offset, as it can count one tab as multiple * characters. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_indent(cmark_parser *parser); /** Return 'true' if the line currently being processed has been entirely @@ -507,7 +524,7 @@ int cmark_parser_get_indent(cmark_parser *parser); * * At this point, this function will now return 'true'. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_is_blank(cmark_parser *parser); /** Return 'true' if the value returned by cmark_parser_get_offset() @@ -516,13 +533,13 @@ int cmark_parser_is_blank(cmark_parser *parser); * See the documentation for cmark_parser_get_column() for more * information. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_has_partially_consumed_tab(cmark_parser *parser); /** Return the length in bytes of the previously processed line, excluding potential * newline (\n) and carriage return (\r) trailing characters. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_get_last_line_length(cmark_parser *parser); /** Add a child to 'parent' during the parsing process. @@ -531,7 +548,7 @@ int cmark_parser_get_last_line_length(cmark_parser *parser); * this function will back up till it hits a node that can, closing * blocks as appropriate. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node*cmark_parser_add_child(cmark_parser *parser, cmark_node *parent, cmark_node_type block_type, @@ -542,14 +559,14 @@ cmark_node*cmark_parser_add_child(cmark_parser *parser, * See the documentation of cmark_parser_get_offset() and * cmark_parser_get_column() for more information. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parser_advance_offset(cmark_parser *parser, const char *input, int count, int columns); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parser_feed_reentrant(cmark_parser *parser, const char *buffer, size_t len); /** Attach the syntax 'extension' to the 'parser', to provide extra syntax @@ -559,33 +576,33 @@ void cmark_parser_feed_reentrant(cmark_parser *parser, const char *buffer, size_ * Returns 'true' if the 'extension' was successfully attached, * 'false' otherwise. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_parser_attach_syntax_extension(cmark_parser *parser, cmark_syntax_extension *extension); /** Change the type of 'node'. * * Return 0 if the type could be changed, 1 otherwise. */ -CMARK_EXPORT int cmark_node_set_type(cmark_node *node, cmark_node_type type); +CMARK_GFM_EXPORT int cmark_node_set_type(cmark_node *node, cmark_node_type type); /** Return the string content for all types of 'node'. * The pointer stays valid as long as 'node' isn't freed. */ -CMARK_EXPORT const char *cmark_node_get_string_content(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_string_content(cmark_node *node); /** Set the string 'content' for all types of 'node'. * Copies 'content'. */ -CMARK_EXPORT int cmark_node_set_string_content(cmark_node *node, const char *content); +CMARK_GFM_EXPORT int cmark_node_set_string_content(cmark_node *node, const char *content); /** Get the syntax extension responsible for the creation of 'node'. * Return NULL if 'node' was created because it matched standard syntax rules. */ -CMARK_EXPORT cmark_syntax_extension *cmark_node_get_syntax_extension(cmark_node *node); +CMARK_GFM_EXPORT cmark_syntax_extension *cmark_node_get_syntax_extension(cmark_node *node); /** Set the syntax extension responsible for creating 'node'. */ -CMARK_EXPORT int cmark_node_set_syntax_extension(cmark_node *node, +CMARK_GFM_EXPORT int cmark_node_set_syntax_extension(cmark_node *node, cmark_syntax_extension *extension); /** @@ -600,63 +617,63 @@ CMARK_EXPORT int cmark_node_set_syntax_extension(cmark_node *node, typedef int (*cmark_inline_predicate)(int c); /** Advance the current inline parsing offset */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_inline_parser_advance_offset(cmark_inline_parser *parser); /** Get the current inline parsing offset */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_get_offset(cmark_inline_parser *parser); /** Set the offset in bytes in the chunk being processed by the given inline parser. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_inline_parser_set_offset(cmark_inline_parser *parser, int offset); /** Gets the cmark_chunk being operated on by the given inline parser. * Use cmark_inline_parser_get_offset to get our current position in the chunk. */ -CMARK_EXPORT +CMARK_GFM_EXPORT struct cmark_chunk *cmark_inline_parser_get_chunk(cmark_inline_parser *parser); /** Returns 1 if the inline parser is currently in a bracket; pass 1 for 'image' * if you want to know about an image-type bracket, 0 for link-type. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_in_bracket(cmark_inline_parser *parser, int image); /** Remove the last n characters from the last child of the given node. * This only works where all n characters are in the single last child, and the last * child is CMARK_NODE_TEXT. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_node_unput(cmark_node *node, int n); /** Get the character located at the current inline parsing offset */ -CMARK_EXPORT +CMARK_GFM_EXPORT unsigned char cmark_inline_parser_peek_char(cmark_inline_parser *parser); /** Get the character located 'pos' bytes in the current line. */ -CMARK_EXPORT +CMARK_GFM_EXPORT unsigned char cmark_inline_parser_peek_at(cmark_inline_parser *parser, int pos); /** Whether the inline parser has reached the end of the current line */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_is_eof(cmark_inline_parser *parser); /** Get the characters located after the current inline parsing offset * while 'pred' matches. Free after usage. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_inline_parser_take_while(cmark_inline_parser *parser, cmark_inline_predicate pred); /** Push a delimiter on the delimiter stack. * See < for * more information on the parameters */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_inline_parser_push_delimiter(cmark_inline_parser *parser, unsigned char c, int can_open, @@ -665,16 +682,16 @@ void cmark_inline_parser_push_delimiter(cmark_inline_parser *parser, /** Remove 'delim' from the delimiter stack */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_inline_parser_remove_delimiter(cmark_inline_parser *parser, delimiter *delim); -CMARK_EXPORT +CMARK_GFM_EXPORT delimiter *cmark_inline_parser_get_last_delimiter(cmark_inline_parser *parser); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_get_line(cmark_inline_parser *parser); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_get_column(cmark_inline_parser *parser); /** Convenience function to scan a given delimiter. @@ -691,7 +708,7 @@ int cmark_inline_parser_get_column(cmark_inline_parser *parser); * Returns the number of delimiters encountered, in the limit * of 'max_delims', and advances the inline parsing offset. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_inline_parser_scan_delimiters(cmark_inline_parser *parser, int max_delims, unsigned char c, @@ -700,16 +717,16 @@ int cmark_inline_parser_scan_delimiters(cmark_inline_parser *parser, int *punct_before, int *punct_after); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_manage_extensions_special_characters(cmark_parser *parser, int add); -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_llist *cmark_parser_get_syntax_extensions(cmark_parser *parser); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_arena_push(void); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_arena_pop(void); #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/include/cmark-gfm-extensions_export.h b/Sources/libcmark_gfm/include/cmark-gfm-extensions_export.h new file mode 100644 index 0000000..69c0bd7 --- /dev/null +++ b/Sources/libcmark_gfm/include/cmark-gfm-extensions_export.h @@ -0,0 +1,42 @@ + +#ifndef CMARK_GFM_EXTENSIONS_EXPORT_H +#define CMARK_GFM_EXTENSIONS_EXPORT_H + +#ifdef CMARK_GFM_EXTENSIONS_STATIC_DEFINE +# define CMARK_GFM_EXTENSIONS_EXPORT +# define CMARK_GFM_EXTENSIONS_NO_EXPORT +#else +# ifndef CMARK_GFM_EXTENSIONS_EXPORT +# ifdef libcmark_gfm_extensions_EXPORTS + /* We are building this library */ +# define CMARK_GFM_EXTENSIONS_EXPORT __attribute__((visibility("default"))) +# else + /* We are using this library */ +# define CMARK_GFM_EXTENSIONS_EXPORT __attribute__((visibility("default"))) +# endif +# endif + +# ifndef CMARK_GFM_EXTENSIONS_NO_EXPORT +# define CMARK_GFM_EXTENSIONS_NO_EXPORT __attribute__((visibility("hidden"))) +# endif +#endif + +#ifndef CMARK_GFM_EXTENSIONS_DEPRECATED +# define CMARK_GFM_EXTENSIONS_DEPRECATED __attribute__ ((__deprecated__)) +#endif + +#ifndef CMARK_GFM_EXTENSIONS_DEPRECATED_EXPORT +# define CMARK_GFM_EXTENSIONS_DEPRECATED_EXPORT CMARK_GFM_EXTENSIONS_EXPORT CMARK_GFM_EXTENSIONS_DEPRECATED +#endif + +#ifndef CMARK_GFM_EXTENSIONS_DEPRECATED_NO_EXPORT +# define CMARK_GFM_EXTENSIONS_DEPRECATED_NO_EXPORT CMARK_GFM_EXTENSIONS_NO_EXPORT CMARK_GFM_EXTENSIONS_DEPRECATED +#endif + +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef CMARK_GFM_EXTENSIONS_NO_DEPRECATED +# define CMARK_GFM_EXTENSIONS_NO_DEPRECATED +# endif +#endif + +#endif /* CMARK_GFM_EXTENSIONS_EXPORT_H */ diff --git a/Sources/libcmark_gfm/include/cmark.h b/Sources/libcmark_gfm/include/cmark-gfm.h similarity index 80% rename from Sources/libcmark_gfm/include/cmark.h rename to Sources/libcmark_gfm/include/cmark-gfm.h index d6bc9ec..6baac9a 100644 --- a/Sources/libcmark_gfm/include/cmark.h +++ b/Sources/libcmark_gfm/include/cmark-gfm.h @@ -1,10 +1,10 @@ -#ifndef CMARK_CMARK_H -#define CMARK_CMARK_H +#ifndef CMARK_GFM_H +#define CMARK_GFM_H #include #include -#include "cmark_export.h" -#include "cmark_version.h" +#include "cmark-gfm_export.h" +#include "cmark-gfm_version.h" #ifdef __cplusplus extern "C" { @@ -25,7 +25,7 @@ extern "C" { * UTF-8-encoded string. It is the caller's responsibility * to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_markdown_to_html(const char *text, size_t len, int options); /** ## Node Structure @@ -92,6 +92,7 @@ typedef enum { typedef struct cmark_node cmark_node; typedef struct cmark_parser cmark_parser; typedef struct cmark_iter cmark_iter; +typedef struct cmark_syntax_extension cmark_syntax_extension; /** * ## Custom memory allocator support @@ -106,27 +107,22 @@ typedef struct cmark_mem { void (*free)(void *); } cmark_mem; -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wstrict-prototypes" - /** The default memory allocator; uses the system's calloc, * realloc and free. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_mem *cmark_get_default_mem_allocator(); /** An arena allocator; uses system calloc to allocate large * slabs of memory. Memory in these slabs is not reused at all. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_mem *cmark_get_arena_mem_allocator(); -#pragma clang diagnostic pop - /** Resets the arena allocator, quickly returning all used memory * to the operating system. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_arena_reset(void); /** Callback for freeing user data with a 'cmark_mem' context. @@ -156,7 +152,7 @@ typedef struct _cmark_llist /** Append an element to the linked list, return the possibly modified * head of the list. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_llist * cmark_llist_append (cmark_mem * mem, cmark_llist * head, void * data); @@ -164,14 +160,14 @@ cmark_llist * cmark_llist_append (cmark_mem * mem, /** Free the list starting with 'head', calling 'free_func' with the * data pointer of each of its elements */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_llist_free_full (cmark_mem * mem, cmark_llist * head, cmark_free_func free_func); /** Free the list starting with 'head' */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_llist_free (cmark_mem * mem, cmark_llist * head); @@ -183,18 +179,25 @@ void cmark_llist_free (cmark_mem * mem, * other required properties, which it is the caller's responsibility * to assign. */ -CMARK_EXPORT cmark_node *cmark_node_new(cmark_node_type type); +CMARK_GFM_EXPORT cmark_node *cmark_node_new(cmark_node_type type); /** Same as `cmark_node_new`, but explicitly listing the memory * allocator used to allocate the node. Note: be sure to use the same * allocator for every node in a tree, or bad things can happen. */ -CMARK_EXPORT cmark_node *cmark_node_new_with_mem(cmark_node_type type, +CMARK_GFM_EXPORT cmark_node *cmark_node_new_with_mem(cmark_node_type type, cmark_mem *mem); +CMARK_GFM_EXPORT cmark_node *cmark_node_new_with_ext(cmark_node_type type, + cmark_syntax_extension *extension); + +CMARK_GFM_EXPORT cmark_node *cmark_node_new_with_mem_and_ext(cmark_node_type type, + cmark_mem *mem, + cmark_syntax_extension *extension); + /** Frees the memory allocated for a node and any children. */ -CMARK_EXPORT void cmark_node_free(cmark_node *node); +CMARK_GFM_EXPORT void cmark_node_free(cmark_node *node); /** * ## Tree Traversal @@ -203,24 +206,24 @@ CMARK_EXPORT void cmark_node_free(cmark_node *node); /** Returns the next node in the sequence after 'node', or NULL if * there is none. */ -CMARK_EXPORT cmark_node *cmark_node_next(cmark_node *node); +CMARK_GFM_EXPORT cmark_node *cmark_node_next(cmark_node *node); /** Returns the previous node in the sequence after 'node', or NULL if * there is none. */ -CMARK_EXPORT cmark_node *cmark_node_previous(cmark_node *node); +CMARK_GFM_EXPORT cmark_node *cmark_node_previous(cmark_node *node); /** Returns the parent of 'node', or NULL if there is none. */ -CMARK_EXPORT cmark_node *cmark_node_parent(cmark_node *node); +CMARK_GFM_EXPORT cmark_node *cmark_node_parent(cmark_node *node); /** Returns the first child of 'node', or NULL if 'node' has no children. */ -CMARK_EXPORT cmark_node *cmark_node_first_child(cmark_node *node); +CMARK_GFM_EXPORT cmark_node *cmark_node_first_child(cmark_node *node); /** Returns the last child of 'node', or NULL if 'node' has no children. */ -CMARK_EXPORT cmark_node *cmark_node_last_child(cmark_node *node); +CMARK_GFM_EXPORT cmark_node *cmark_node_last_child(cmark_node *node); /** * ## Iterator @@ -279,40 +282,40 @@ typedef enum { * The memory allocated for the iterator should be released using * 'cmark_iter_free' when it is no longer needed. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_iter *cmark_iter_new(cmark_node *root); /** Frees the memory allocated for an iterator. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_iter_free(cmark_iter *iter); /** Advances to the next node and returns the event type (`CMARK_EVENT_ENTER`, * `CMARK_EVENT_EXIT` or `CMARK_EVENT_DONE`). */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_event_type cmark_iter_next(cmark_iter *iter); /** Returns the current node. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node *cmark_iter_get_node(cmark_iter *iter); /** Returns the current event type. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_event_type cmark_iter_get_event_type(cmark_iter *iter); /** Returns the root node. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node *cmark_iter_get_root(cmark_iter *iter); /** Resets the iterator so that the current node is 'current' and * the event type is 'event_type'. The new current node must be a * descendant of the root node or the root node itself. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_iter_reset(cmark_iter *iter, cmark_node *current, cmark_event_type event_type); @@ -322,42 +325,42 @@ void cmark_iter_reset(cmark_iter *iter, cmark_node *current, /** Returns the user data of 'node'. */ -CMARK_EXPORT void *cmark_node_get_user_data(cmark_node *node); +CMARK_GFM_EXPORT void *cmark_node_get_user_data(cmark_node *node); /** Sets arbitrary user data for 'node'. Returns 1 on success, * 0 on failure. */ -CMARK_EXPORT int cmark_node_set_user_data(cmark_node *node, void *user_data); +CMARK_GFM_EXPORT int cmark_node_set_user_data(cmark_node *node, void *user_data); /** Set free function for user data */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_node_set_user_data_free_func(cmark_node *node, cmark_free_func free_func); /** Returns the type of 'node', or `CMARK_NODE_NONE` on error. */ -CMARK_EXPORT cmark_node_type cmark_node_get_type(cmark_node *node); +CMARK_GFM_EXPORT cmark_node_type cmark_node_get_type(cmark_node *node); /** Like 'cmark_node_get_type', but returns a string representation of the type, or `""`. */ -CMARK_EXPORT +CMARK_GFM_EXPORT const char *cmark_node_get_type_string(cmark_node *node); /** Returns the string contents of 'node', or an empty string if none is set. Returns NULL if called on a node that does not have string content. */ -CMARK_EXPORT const char *cmark_node_get_literal(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_literal(cmark_node *node); /** Sets the string contents of 'node'. Returns 1 on success, * 0 on failure. */ -CMARK_EXPORT int cmark_node_set_literal(cmark_node *node, const char *content); +CMARK_GFM_EXPORT int cmark_node_set_literal(cmark_node *node, const char *content); /** Returns the heading level of 'node', or 0 if 'node' is not a heading. */ -CMARK_EXPORT int cmark_node_get_heading_level(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_heading_level(cmark_node *node); /* For backwards compatibility */ #define cmark_node_get_header_level cmark_node_get_heading_level @@ -365,126 +368,126 @@ CMARK_EXPORT int cmark_node_get_heading_level(cmark_node *node); /** Sets the heading level of 'node', returning 1 on success and 0 on error. */ -CMARK_EXPORT int cmark_node_set_heading_level(cmark_node *node, int level); +CMARK_GFM_EXPORT int cmark_node_set_heading_level(cmark_node *node, int level); /** Returns the list type of 'node', or `CMARK_NO_LIST` if 'node' * is not a list. */ -CMARK_EXPORT cmark_list_type cmark_node_get_list_type(cmark_node *node); +CMARK_GFM_EXPORT cmark_list_type cmark_node_get_list_type(cmark_node *node); /** Sets the list type of 'node', returning 1 on success and 0 on error. */ -CMARK_EXPORT int cmark_node_set_list_type(cmark_node *node, +CMARK_GFM_EXPORT int cmark_node_set_list_type(cmark_node *node, cmark_list_type type); /** Returns the list delimiter type of 'node', or `CMARK_NO_DELIM` if 'node' * is not a list. */ -CMARK_EXPORT cmark_delim_type cmark_node_get_list_delim(cmark_node *node); +CMARK_GFM_EXPORT cmark_delim_type cmark_node_get_list_delim(cmark_node *node); /** Sets the list delimiter type of 'node', returning 1 on success and 0 * on error. */ -CMARK_EXPORT int cmark_node_set_list_delim(cmark_node *node, +CMARK_GFM_EXPORT int cmark_node_set_list_delim(cmark_node *node, cmark_delim_type delim); /** Returns starting number of 'node', if it is an ordered list, otherwise 0. */ -CMARK_EXPORT int cmark_node_get_list_start(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_list_start(cmark_node *node); /** Sets starting number of 'node', if it is an ordered list. Returns 1 * on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_set_list_start(cmark_node *node, int start); +CMARK_GFM_EXPORT int cmark_node_set_list_start(cmark_node *node, int start); /** Returns 1 if 'node' is a tight list, 0 otherwise. */ -CMARK_EXPORT int cmark_node_get_list_tight(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_list_tight(cmark_node *node); /** Sets the "tightness" of a list. Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_set_list_tight(cmark_node *node, int tight); +CMARK_GFM_EXPORT int cmark_node_set_list_tight(cmark_node *node, int tight); /** Returns the info string from a fenced code block. */ -CMARK_EXPORT const char *cmark_node_get_fence_info(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_fence_info(cmark_node *node); /** Sets the info string in a fenced code block, returning 1 on * success and 0 on failure. */ -CMARK_EXPORT int cmark_node_set_fence_info(cmark_node *node, const char *info); +CMARK_GFM_EXPORT int cmark_node_set_fence_info(cmark_node *node, const char *info); /** Sets code blocks fencing details */ -CMARK_EXPORT int cmark_node_set_fenced(cmark_node * node, int fenced, +CMARK_GFM_EXPORT int cmark_node_set_fenced(cmark_node * node, int fenced, int length, int offset, char character); /** Returns code blocks fencing details */ -CMARK_EXPORT int cmark_node_get_fenced(cmark_node *node, int *length, int *offset, char *character); +CMARK_GFM_EXPORT int cmark_node_get_fenced(cmark_node *node, int *length, int *offset, char *character); /** Returns the URL of a link or image 'node', or an empty string if no URL is set. Returns NULL if called on a node that is not a link or image. */ -CMARK_EXPORT const char *cmark_node_get_url(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_url(cmark_node *node); /** Sets the URL of a link or image 'node'. Returns 1 on success, * 0 on failure. */ -CMARK_EXPORT int cmark_node_set_url(cmark_node *node, const char *url); +CMARK_GFM_EXPORT int cmark_node_set_url(cmark_node *node, const char *url); /** Returns the title of a link or image 'node', or an empty string if no title is set. Returns NULL if called on a node that is not a link or image. */ -CMARK_EXPORT const char *cmark_node_get_title(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_title(cmark_node *node); /** Sets the title of a link or image 'node'. Returns 1 on success, * 0 on failure. */ -CMARK_EXPORT int cmark_node_set_title(cmark_node *node, const char *title); +CMARK_GFM_EXPORT int cmark_node_set_title(cmark_node *node, const char *title); /** Returns the literal "on enter" text for a custom 'node', or an empty string if no on_enter is set. Returns NULL if called on a non-custom node. */ -CMARK_EXPORT const char *cmark_node_get_on_enter(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_on_enter(cmark_node *node); /** Sets the literal text to render "on enter" for a custom 'node'. Any children of the node will be rendered after this text. Returns 1 on success 0 on failure. */ -CMARK_EXPORT int cmark_node_set_on_enter(cmark_node *node, +CMARK_GFM_EXPORT int cmark_node_set_on_enter(cmark_node *node, const char *on_enter); /** Returns the literal "on exit" text for a custom 'node', or an empty string if no on_exit is set. Returns NULL if called on a non-custom node. */ -CMARK_EXPORT const char *cmark_node_get_on_exit(cmark_node *node); +CMARK_GFM_EXPORT const char *cmark_node_get_on_exit(cmark_node *node); /** Sets the literal text to render "on exit" for a custom 'node'. Any children of the node will be rendered before this text. Returns 1 on success 0 on failure. */ -CMARK_EXPORT int cmark_node_set_on_exit(cmark_node *node, const char *on_exit); +CMARK_GFM_EXPORT int cmark_node_set_on_exit(cmark_node *node, const char *on_exit); /** Returns the line on which 'node' begins. */ -CMARK_EXPORT int cmark_node_get_start_line(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_start_line(cmark_node *node); /** Returns the column at which 'node' begins. */ -CMARK_EXPORT int cmark_node_get_start_column(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_start_column(cmark_node *node); /** Returns the line on which 'node' ends. */ -CMARK_EXPORT int cmark_node_get_end_line(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_end_line(cmark_node *node); /** Returns the column at which 'node' ends. */ -CMARK_EXPORT int cmark_node_get_end_column(cmark_node *node); +CMARK_GFM_EXPORT int cmark_node_get_end_column(cmark_node *node); /** * ## Tree Manipulation @@ -493,40 +496,40 @@ CMARK_EXPORT int cmark_node_get_end_column(cmark_node *node); /** Unlinks a 'node', removing it from the tree, but not freeing its * memory. (Use 'cmark_node_free' for that.) */ -CMARK_EXPORT void cmark_node_unlink(cmark_node *node); +CMARK_GFM_EXPORT void cmark_node_unlink(cmark_node *node); /** Inserts 'sibling' before 'node'. Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_insert_before(cmark_node *node, +CMARK_GFM_EXPORT int cmark_node_insert_before(cmark_node *node, cmark_node *sibling); /** Inserts 'sibling' after 'node'. Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_insert_after(cmark_node *node, cmark_node *sibling); +CMARK_GFM_EXPORT int cmark_node_insert_after(cmark_node *node, cmark_node *sibling); /** Replaces 'oldnode' with 'newnode' and unlinks 'oldnode' (but does * not free its memory). * Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_replace(cmark_node *oldnode, cmark_node *newnode); +CMARK_GFM_EXPORT int cmark_node_replace(cmark_node *oldnode, cmark_node *newnode); /** Adds 'child' to the beginning of the children of 'node'. * Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_prepend_child(cmark_node *node, cmark_node *child); +CMARK_GFM_EXPORT int cmark_node_prepend_child(cmark_node *node, cmark_node *child); /** Adds 'child' to the end of the children of 'node'. * Returns 1 on success, 0 on failure. */ -CMARK_EXPORT int cmark_node_append_child(cmark_node *node, cmark_node *child); +CMARK_GFM_EXPORT int cmark_node_append_child(cmark_node *node, cmark_node *child); /** Consolidates adjacent text nodes. */ -CMARK_EXPORT void cmark_consolidate_text_nodes(cmark_node *root); +CMARK_GFM_EXPORT void cmark_consolidate_text_nodes(cmark_node *root); /** Ensures a node and all its children own their own chunk memory. */ -CMARK_EXPORT void cmark_node_own(cmark_node *root); +CMARK_GFM_EXPORT void cmark_node_own(cmark_node *root); /** * ## Parsing @@ -552,27 +555,27 @@ CMARK_EXPORT void cmark_node_own(cmark_node *root); /** Creates a new parser object. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_parser *cmark_parser_new(int options); /** Creates a new parser object with the given memory allocator */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_parser *cmark_parser_new_with_mem(int options, cmark_mem *mem); /** Frees memory allocated for a parser object. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parser_free(cmark_parser *parser); /** Feeds a string of length 'len' to 'parser'. */ -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parser_feed(cmark_parser *parser, const char *buffer, size_t len); /** Finish parsing and return a pointer to a tree of nodes. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node *cmark_parser_finish(cmark_parser *parser); /** Parse a CommonMark document in 'buffer' of length 'len'. @@ -580,14 +583,14 @@ cmark_node *cmark_parser_finish(cmark_parser *parser); * the node tree should be released using 'cmark_node_free' * when it is no longer needed. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node *cmark_parse_document(const char *buffer, size_t len, int options); /** Parse a CommonMark document in file 'f', returning a pointer to * a tree of nodes. The memory allocated for the node tree should be * released using 'cmark_node_free' when it is no longer needed. */ -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_node *cmark_parse_file(FILE *f, int options); /** @@ -597,74 +600,74 @@ cmark_node *cmark_parse_file(FILE *f, int options); /** Render a 'node' tree as XML. It is the caller's responsibility * to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_xml(cmark_node *root, int options); /** As for 'cmark_render_xml', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_xml_with_mem(cmark_node *root, int options, cmark_mem *mem); /** Render a 'node' tree as an HTML fragment. It is up to the user * to add an appropriate header and footer. It is the caller's * responsibility to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_html(cmark_node *root, int options, cmark_llist *extensions); /** As for 'cmark_render_html', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_html_with_mem(cmark_node *root, int options, cmark_llist *extensions, cmark_mem *mem); /** Render a 'node' tree as a groff man page, without the header. * It is the caller's responsibility to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_man(cmark_node *root, int options, int width); /** As for 'cmark_render_man', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_man_with_mem(cmark_node *root, int options, int width, cmark_mem *mem); /** Render a 'node' tree as a commonmark document. * It is the caller's responsibility to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_commonmark(cmark_node *root, int options, int width); /** As for 'cmark_render_commonmark', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_commonmark_with_mem(cmark_node *root, int options, int width, cmark_mem *mem); /** Render a 'node' tree as a plain text document. * It is the caller's responsibility to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_plaintext(cmark_node *root, int options, int width); /** As for 'cmark_render_plaintext', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_plaintext_with_mem(cmark_node *root, int options, int width, cmark_mem *mem); /** Render a 'node' tree as a LaTeX document. * It is the caller's responsibility to free the returned buffer. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_latex(cmark_node *root, int options, int width); /** As for 'cmark_render_latex', but specifying the allocator to use for * the resulting string. */ -CMARK_EXPORT +CMARK_GFM_EXPORT char *cmark_render_latex_with_mem(cmark_node *root, int options, int width, cmark_mem *mem); /** @@ -687,14 +690,6 @@ char *cmark_render_latex_with_mem(cmark_node *root, int options, int width, cmar */ #define CMARK_OPT_HARDBREAKS (1 << 2) -/** Suppress raw HTML and unsafe links (`javascript:`, `vbscript:`, - * `file:`, and `data:`, except for `image/png`, `image/gif`, - * `image/jpeg`, or `image/webp` mime types). Raw HTML is replaced - * by a placeholder HTML comment. Unsafe links are replaced by - * empty strings. - */ -#define CMARK_OPT_SAFE (1 << 3) - /** Render `softbreak` elements as spaces. */ #define CMARK_OPT_NOBREAKS (1 << 4) @@ -738,6 +733,19 @@ char *cmark_render_latex_with_mem(cmark_node *root, int options, int width, cmar */ #define CMARK_OPT_TABLE_PREFER_STYLE_ATTRIBUTES (1 << 15) +/** Include the remainder of the info string in code blocks in + * a separate attribute. + */ +#define CMARK_OPT_FULL_INFO_STRING (1 << 16) + +/** Allow raw HTML and unsafe links, `javascript:`, `vbscript:`, `file:`, and + * all `data:` URLs -- by default, only `image/png`, `image/gif`, `image/jpeg`, + * or `image/webp` mime types are allowed. Without this option, raw HTML is + * replaced by a placeholder HTML comment, and unsafe links are replaced by + * empty strings. + */ +#define CMARK_OPT_UNSAFE (1 << 17) + /** * ## Version information */ @@ -751,13 +759,13 @@ char *cmark_render_latex_with_mem(cmark_node *root, int options, int width, cmar * * In hexadecimal format, the number 0x010203 represents version 1.2.3. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_version(void); /** The library version string for runtime checks. Also available as * macro CMARK_VERSION_STRING for compile time checks. */ -CMARK_EXPORT +CMARK_GFM_EXPORT const char *cmark_version_string(void); /** # AUTHORS diff --git a/Sources/libcmark_gfm/include/cmark-gfm_export.h b/Sources/libcmark_gfm/include/cmark-gfm_export.h new file mode 100644 index 0000000..699d737 --- /dev/null +++ b/Sources/libcmark_gfm/include/cmark-gfm_export.h @@ -0,0 +1,42 @@ + +#ifndef CMARK_GFM_EXPORT_H +#define CMARK_GFM_EXPORT_H + +#ifdef CMARK_GFM_STATIC_DEFINE +# define CMARK_GFM_EXPORT +# define CMARK_GFM_NO_EXPORT +#else +# ifndef CMARK_GFM_EXPORT +# ifdef libcmark_gfm_EXPORTS + /* We are building this library */ +# define CMARK_GFM_EXPORT __attribute__((visibility("default"))) +# else + /* We are using this library */ +# define CMARK_GFM_EXPORT __attribute__((visibility("default"))) +# endif +# endif + +# ifndef CMARK_GFM_NO_EXPORT +# define CMARK_GFM_NO_EXPORT __attribute__((visibility("hidden"))) +# endif +#endif + +#ifndef CMARK_GFM_DEPRECATED +# define CMARK_GFM_DEPRECATED __attribute__ ((__deprecated__)) +#endif + +#ifndef CMARK_GFM_DEPRECATED_EXPORT +# define CMARK_GFM_DEPRECATED_EXPORT CMARK_GFM_EXPORT CMARK_GFM_DEPRECATED +#endif + +#ifndef CMARK_GFM_DEPRECATED_NO_EXPORT +# define CMARK_GFM_DEPRECATED_NO_EXPORT CMARK_GFM_NO_EXPORT CMARK_GFM_DEPRECATED +#endif + +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef CMARK_GFM_NO_DEPRECATED +# define CMARK_GFM_NO_DEPRECATED +# endif +#endif + +#endif /* CMARK_GFM_EXPORT_H */ diff --git a/Sources/libcmark_gfm/include/cmark-gfm_version.h b/Sources/libcmark_gfm/include/cmark-gfm_version.h new file mode 100644 index 0000000..f323380 --- /dev/null +++ b/Sources/libcmark_gfm/include/cmark-gfm_version.h @@ -0,0 +1,7 @@ +#ifndef CMARK_GFM_VERSION_H +#define CMARK_GFM_VERSION_H + +#define CMARK_GFM_VERSION ((0 << 24) | (28 << 16) | (3 << 8) | 20) +#define CMARK_GFM_VERSION_STRING "0.28.3.gfm.20" + +#endif diff --git a/Sources/libcmark_gfm/include/cmark_ctype.h b/Sources/libcmark_gfm/include/cmark_ctype.h index 4b90940..67c1cb0 100644 --- a/Sources/libcmark_gfm/include/cmark_ctype.h +++ b/Sources/libcmark_gfm/include/cmark_ctype.h @@ -5,25 +5,25 @@ extern "C" { #endif -#include "cmark_export.h" +#include "cmark-gfm_export.h" /** Locale-independent versions of functions from ctype.h. * We want cmark to behave the same no matter what the system locale. */ -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_isspace(char c); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_ispunct(char c); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_isalnum(char c); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_isdigit(char c); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_isalpha(char c); #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/include/cmark_export.h b/Sources/libcmark_gfm/include/cmark_export.h deleted file mode 100644 index cbf02d5..0000000 --- a/Sources/libcmark_gfm/include/cmark_export.h +++ /dev/null @@ -1,42 +0,0 @@ - -#ifndef CMARK_EXPORT_H -#define CMARK_EXPORT_H - -#ifdef CMARK_STATIC_DEFINE -# define CMARK_EXPORT -# define CMARK_NO_EXPORT -#else -# ifndef CMARK_EXPORT -# ifdef libcmark_gfm_EXPORTS - /* We are building this library */ -# define CMARK_EXPORT __attribute__((visibility("default"))) -# else - /* We are using this library */ -# define CMARK_EXPORT __attribute__((visibility("default"))) -# endif -# endif - -# ifndef CMARK_NO_EXPORT -# define CMARK_NO_EXPORT __attribute__((visibility("hidden"))) -# endif -#endif - -#ifndef CMARK_DEPRECATED -# define CMARK_DEPRECATED __attribute__ ((__deprecated__)) -#endif - -#ifndef CMARK_DEPRECATED_EXPORT -# define CMARK_DEPRECATED_EXPORT CMARK_EXPORT CMARK_DEPRECATED -#endif - -#ifndef CMARK_DEPRECATED_NO_EXPORT -# define CMARK_DEPRECATED_NO_EXPORT CMARK_NO_EXPORT CMARK_DEPRECATED -#endif - -#if 0 /* DEFINE_NO_DEPRECATED */ -# ifndef CMARK_NO_DEPRECATED -# define CMARK_NO_DEPRECATED -# endif -#endif - -#endif diff --git a/Sources/libcmark_gfm/include/cmark_version.h b/Sources/libcmark_gfm/include/cmark_version.h deleted file mode 100644 index e652669..0000000 --- a/Sources/libcmark_gfm/include/cmark_version.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CMARK_VERSION_H -#define CMARK_VERSION_H - -#define CMARK_VERSION ((0 << 24) | (28 << 16) | (3 << 8) | 11) -#define CMARK_VERSION_STRING "0.28.3.gfm.11" -#define CMARK_GFM_VERSION 11 - -#endif diff --git a/Sources/libcmark_gfm/include/cmarkextensions_export.h b/Sources/libcmark_gfm/include/cmarkextensions_export.h deleted file mode 100644 index f646aa8..0000000 --- a/Sources/libcmark_gfm/include/cmarkextensions_export.h +++ /dev/null @@ -1,42 +0,0 @@ - -#ifndef CMARKEXTENSIONS_EXPORT_H -#define CMARKEXTENSIONS_EXPORT_H - -#ifdef CMARKEXTENSIONS_STATIC_DEFINE -# define CMARKEXTENSIONS_EXPORT -# define CMARKEXTENSIONS_NO_EXPORT -#else -# ifndef CMARKEXTENSIONS_EXPORT -# ifdef libcmark_gfmextensions_EXPORTS - /* We are building this library */ -# define CMARKEXTENSIONS_EXPORT __attribute__((visibility("default"))) -# else - /* We are using this library */ -# define CMARKEXTENSIONS_EXPORT __attribute__((visibility("default"))) -# endif -# endif - -# ifndef CMARKEXTENSIONS_NO_EXPORT -# define CMARKEXTENSIONS_NO_EXPORT __attribute__((visibility("hidden"))) -# endif -#endif - -#ifndef CMARKEXTENSIONS_DEPRECATED -# define CMARKEXTENSIONS_DEPRECATED __attribute__ ((__deprecated__)) -#endif - -#ifndef CMARKEXTENSIONS_DEPRECATED_EXPORT -# define CMARKEXTENSIONS_DEPRECATED_EXPORT CMARKEXTENSIONS_EXPORT CMARKEXTENSIONS_DEPRECATED -#endif - -#ifndef CMARKEXTENSIONS_DEPRECATED_NO_EXPORT -# define CMARKEXTENSIONS_DEPRECATED_NO_EXPORT CMARKEXTENSIONS_NO_EXPORT CMARKEXTENSIONS_DEPRECATED -#endif - -#if 0 /* DEFINE_NO_DEPRECATED */ -# ifndef CMARKEXTENSIONS_NO_DEPRECATED -# define CMARKEXTENSIONS_NO_DEPRECATED -# endif -#endif - -#endif diff --git a/Sources/libcmark_gfm/include/core-extensions.h b/Sources/libcmark_gfm/include/core-extensions.h deleted file mode 100644 index a9fd0cb..0000000 --- a/Sources/libcmark_gfm/include/core-extensions.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef CORE_EXTENSIONS_H -#define CORE_EXTENSIONS_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include "cmark_extension_api.h" -#include "cmarkextensions_export.h" -#include - -CMARKEXTENSIONS_EXPORT -void core_extensions_ensure_registered(void); - -CMARKEXTENSIONS_EXPORT -uint16_t cmarkextensions_get_table_columns(cmark_node *node); - -CMARKEXTENSIONS_EXPORT -uint8_t *cmarkextensions_get_table_alignments(cmark_node *node); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/Sources/libcmark_gfm/include/ext_scanners.h b/Sources/libcmark_gfm/include/ext_scanners.h index 53584d8..6dd4a72 100644 --- a/Sources/libcmark_gfm/include/ext_scanners.h +++ b/Sources/libcmark_gfm/include/ext_scanners.h @@ -1,5 +1,5 @@ #include "chunk.h" -#include "cmark.h" +#include "cmark-gfm.h" #ifdef __cplusplus extern "C" { @@ -11,11 +11,13 @@ bufsize_t _scan_table_start(const unsigned char *p); bufsize_t _scan_table_cell(const unsigned char *p); bufsize_t _scan_table_cell_end(const unsigned char *p); bufsize_t _scan_table_row_end(const unsigned char *p); +bufsize_t _scan_tasklist(const unsigned char *p); #define scan_table_start(c, l, n) _ext_scan_at(&_scan_table_start, c, l, n) #define scan_table_cell(c, l, n) _ext_scan_at(&_scan_table_cell, c, l, n) #define scan_table_cell_end(c, l, n) _ext_scan_at(&_scan_table_cell_end, c, l, n) #define scan_table_row_end(c, l, n) _ext_scan_at(&_scan_table_row_end, c, l, n) +#define scan_tasklist(c, l, n) _ext_scan_at(&_scan_tasklist, c, l, n) #ifdef __cplusplus } diff --git a/Sources/libcmark_gfm/include/houdini.h b/Sources/libcmark_gfm/include/houdini.h index 7852c3a..7625b04 100644 --- a/Sources/libcmark_gfm/include/houdini.h +++ b/Sources/libcmark_gfm/include/houdini.h @@ -31,22 +31,22 @@ extern "C" { #define HOUDINI_ESCAPED_SIZE(x) (((x)*12) / 10) #define HOUDINI_UNESCAPED_SIZE(x) (x) -CMARK_EXPORT +CMARK_GFM_EXPORT bufsize_t houdini_unescape_ent(cmark_strbuf *ob, const uint8_t *src, bufsize_t size); -CMARK_EXPORT +CMARK_GFM_EXPORT int houdini_escape_html(cmark_strbuf *ob, const uint8_t *src, bufsize_t size); -CMARK_EXPORT +CMARK_GFM_EXPORT int houdini_escape_html0(cmark_strbuf *ob, const uint8_t *src, bufsize_t size, int secure); -CMARK_EXPORT +CMARK_GFM_EXPORT int houdini_unescape_html(cmark_strbuf *ob, const uint8_t *src, bufsize_t size); -CMARK_EXPORT +CMARK_GFM_EXPORT void houdini_unescape_html_f(cmark_strbuf *ob, const uint8_t *src, bufsize_t size); -CMARK_EXPORT +CMARK_GFM_EXPORT int houdini_escape_href(cmark_strbuf *ob, const uint8_t *src, bufsize_t size); diff --git a/Sources/libcmark_gfm/include/inlines.h b/Sources/libcmark_gfm/include/inlines.h index 8c8174c..7dd91bf 100644 --- a/Sources/libcmark_gfm/include/inlines.h +++ b/Sources/libcmark_gfm/include/inlines.h @@ -10,7 +10,7 @@ extern "C" { cmark_chunk cmark_clean_url(cmark_mem *mem, cmark_chunk *url); cmark_chunk cmark_clean_title(cmark_mem *mem, cmark_chunk *title); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_parse_inlines(cmark_parser *parser, cmark_node *parent, cmark_map *refmap, diff --git a/Sources/libcmark_gfm/include/iterator.h b/Sources/libcmark_gfm/include/iterator.h index 103d61e..aec058f 100644 --- a/Sources/libcmark_gfm/include/iterator.h +++ b/Sources/libcmark_gfm/include/iterator.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include "cmark.h" +#include "cmark-gfm.h" //#include "memory.h" typedef struct { diff --git a/Sources/libcmark_gfm/include/libcmark_gfm.h b/Sources/libcmark_gfm/include/libcmark_gfm.h index b2c2976..e009809 100644 --- a/Sources/libcmark_gfm/include/libcmark_gfm.h +++ b/Sources/libcmark_gfm/include/libcmark_gfm.h @@ -12,14 +12,14 @@ #include "autolink.h" #include "buffer.h" #include "chunk.h" -#include "cmark.h" #include "cmark_ctype.h" -#include "cmark_export.h" -#include "cmark_extension_api.h" -#include "cmark_version.h" -#include "cmarkextensions_export.h" +#include "cmark-gfm_export.h" +#include "cmark-gfm_version.h" +#include "cmark-gfm-core-extensions.h" +#include "cmark-gfm-extension_api.h" +#include "cmark-gfm-extensions_export.h" +#include "cmark-gfm.h" #include "config.h" -#include "core-extensions.h" #include "ext_scanners.h" #include "footnotes.h" #include "houdini.h" @@ -38,6 +38,7 @@ #include "syntax_extension.h" #include "table.h" #include "tagfilter.h" +#include "tasklist.h" #include "utf8.h" #endif /* libcmark_gfm_h */ diff --git a/Sources/libcmark_gfm/include/node.h b/Sources/libcmark_gfm/include/node.h index 1d8aa50..0a39255 100644 --- a/Sources/libcmark_gfm/include/node.h +++ b/Sources/libcmark_gfm/include/node.h @@ -8,8 +8,8 @@ extern "C" { #include #include -#include "cmark.h" -#include "cmark_extension_api.h" +#include "cmark-gfm.h" +#include "cmark-gfm-extension_api.h" #include "buffer.h" #include "chunk.h" @@ -89,7 +89,7 @@ struct cmark_node { static CMARK_INLINE cmark_mem *cmark_node_mem(cmark_node *node) { return node->content.mem; } -CMARK_EXPORT int cmark_node_check(cmark_node *node, FILE *out); +CMARK_GFM_EXPORT int cmark_node_check(cmark_node *node, FILE *out); static CMARK_INLINE bool CMARK_NODE_TYPE_BLOCK_P(cmark_node_type node_type) { return (node_type & CMARK_NODE_TYPE_MASK) == CMARK_NODE_TYPE_BLOCK; @@ -107,7 +107,7 @@ static CMARK_INLINE bool CMARK_NODE_INLINE_P(cmark_node *node) { return node != NULL && CMARK_NODE_TYPE_INLINE_P((cmark_node_type) node->type); } -CMARK_EXPORT bool cmark_node_can_contain_type(cmark_node *node, cmark_node_type child_type); +CMARK_GFM_EXPORT bool cmark_node_can_contain_type(cmark_node *node, cmark_node_type child_type); #ifdef __cplusplus } diff --git a/Sources/libcmark_gfm/include/plugin.h b/Sources/libcmark_gfm/include/plugin.h index b9e9d29..7bcbd19 100644 --- a/Sources/libcmark_gfm/include/plugin.h +++ b/Sources/libcmark_gfm/include/plugin.h @@ -5,8 +5,8 @@ extern "C" { #endif -#include "cmark.h" -#include "cmark_extension_api.h" +#include "cmark-gfm.h" +#include "cmark-gfm-extension_api.h" /** * cmark_plugin: diff --git a/Sources/libcmark_gfm/include/registry.h b/Sources/libcmark_gfm/include/registry.h index 0f0fbae..fece2b6 100644 --- a/Sources/libcmark_gfm/include/registry.h +++ b/Sources/libcmark_gfm/include/registry.h @@ -5,16 +5,16 @@ extern "C" { #endif -#include "cmark.h" +#include "cmark-gfm.h" #include "plugin.h" -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_register_plugin(cmark_plugin_init_func reg_fn); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_release_plugins(void); -CMARK_EXPORT +CMARK_GFM_EXPORT cmark_llist *cmark_list_syntax_extensions(cmark_mem *mem); #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/include/scanners.h b/Sources/libcmark_gfm/include/scanners.h index ffdbaeb..1e5c8cc 100644 --- a/Sources/libcmark_gfm/include/scanners.h +++ b/Sources/libcmark_gfm/include/scanners.h @@ -1,7 +1,7 @@ #ifndef CMARK_SCANNERS_H #define CMARK_SCANNERS_H -#include "cmark.h" +#include "cmark-gfm.h" #include "chunk.h" #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/include/strikethrough.h b/Sources/libcmark_gfm/include/strikethrough.h index 1c43f57..a52a2b4 100644 --- a/Sources/libcmark_gfm/include/strikethrough.h +++ b/Sources/libcmark_gfm/include/strikethrough.h @@ -1,7 +1,7 @@ -#ifndef STRIKETHROUGH_H -#define STRIKETHROUGH_H +#ifndef CMARK_GFM_STRIKETHROUGH_H +#define CMARK_GFM_STRIKETHROUGH_H -#include "core-extensions.h" +#include "cmark-gfm-core-extensions.h" extern cmark_node_type CMARK_NODE_STRIKETHROUGH; cmark_syntax_extension *create_strikethrough_extension(void); diff --git a/Sources/libcmark_gfm/include/syntax_extension.h b/Sources/libcmark_gfm/include/syntax_extension.h index f51f1f4..a5fe11e 100644 --- a/Sources/libcmark_gfm/include/syntax_extension.h +++ b/Sources/libcmark_gfm/include/syntax_extension.h @@ -1,8 +1,8 @@ #ifndef CMARK_SYNTAX_EXTENSION_H #define CMARK_SYNTAX_EXTENSION_H -#include "cmark.h" -#include "cmark_extension_api.h" +#include "cmark-gfm.h" +#include "cmark-gfm-extension_api.h" #include "config.h" struct cmark_syntax_extension { @@ -21,10 +21,12 @@ struct cmark_syntax_extension { cmark_common_render_func commonmark_render_func; cmark_common_render_func plaintext_render_func; cmark_common_render_func latex_render_func; + cmark_xml_attr_func xml_attr_func; cmark_common_render_func man_render_func; cmark_html_render_func html_render_func; cmark_html_filter_func html_filter_func; cmark_postprocess_func postprocess_func; + cmark_opaque_alloc_func opaque_alloc_func; cmark_opaque_free_func opaque_free_func; cmark_commonmark_escape_func commonmark_escape_func; }; diff --git a/Sources/libcmark_gfm/include/table.h b/Sources/libcmark_gfm/include/table.h index ff630b2..f6a0634 100644 --- a/Sources/libcmark_gfm/include/table.h +++ b/Sources/libcmark_gfm/include/table.h @@ -1,7 +1,11 @@ -#ifndef TABLE_H -#define TABLE_H +#ifndef CMARK_GFM_TABLE_H +#define CMARK_GFM_TABLE_H -#include "core-extensions.h" +#include "cmark-gfm-core-extensions.h" + + +extern cmark_node_type CMARK_NODE_TABLE, CMARK_NODE_TABLE_ROW, + CMARK_NODE_TABLE_CELL; cmark_syntax_extension *create_table_extension(void); diff --git a/Sources/libcmark_gfm/include/tagfilter.h b/Sources/libcmark_gfm/include/tagfilter.h index 4068b50..9a5f388 100644 --- a/Sources/libcmark_gfm/include/tagfilter.h +++ b/Sources/libcmark_gfm/include/tagfilter.h @@ -1,7 +1,7 @@ -#ifndef TAGFILTER_H -#define TAGFILTER_H +#ifndef CMARK_GFM_TAGFILTER_H +#define CMARK_GFM_TAGFILTER_H -#include "core-extensions.h" +#include "cmark-gfm-core-extensions.h" cmark_syntax_extension *create_tagfilter_extension(void); diff --git a/Sources/libcmark_gfm/include/tasklist.h b/Sources/libcmark_gfm/include/tasklist.h new file mode 100644 index 0000000..26e9d96 --- /dev/null +++ b/Sources/libcmark_gfm/include/tasklist.h @@ -0,0 +1,8 @@ +#ifndef TASKLIST_H +#define TASKLIST_H + +#include "cmark-gfm-core-extensions.h" + +cmark_syntax_extension *create_tasklist_extension(void); + +#endif diff --git a/Sources/libcmark_gfm/include/utf8.h b/Sources/libcmark_gfm/include/utf8.h index 5e64344..04ec161 100644 --- a/Sources/libcmark_gfm/include/utf8.h +++ b/Sources/libcmark_gfm/include/utf8.h @@ -8,24 +8,24 @@ extern "C" { #endif -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_utf8proc_case_fold(cmark_strbuf *dest, const uint8_t *str, bufsize_t len); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_utf8proc_encode_char(int32_t uc, cmark_strbuf *buf); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_utf8proc_iterate(const uint8_t *str, bufsize_t str_len, int32_t *dst); -CMARK_EXPORT +CMARK_GFM_EXPORT void cmark_utf8proc_check(cmark_strbuf *dest, const uint8_t *line, bufsize_t size); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_utf8proc_is_space(int32_t uc); -CMARK_EXPORT +CMARK_GFM_EXPORT int cmark_utf8proc_is_punctuation(int32_t uc); #ifdef __cplusplus diff --git a/Sources/libcmark_gfm/inlines.c b/Sources/libcmark_gfm/inlines.c index 7597392..63caeeb 100644 --- a/Sources/libcmark_gfm/inlines.c +++ b/Sources/libcmark_gfm/inlines.c @@ -7,7 +7,7 @@ #include "node.h" #include "parser.h" #include "references.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "houdini.h" #include "utf8.h" #include "scanners.h" @@ -321,6 +321,37 @@ static bufsize_t scan_to_closing_backticks(subject *subj, return 0; } +// Destructively modify string, converting newlines to +// spaces, then removing a single leading + trailing space. +static void S_normalize_code(cmark_strbuf *s) { + bufsize_t r, w; + + for (r = 0, w = 0; r < s->size; ++r) { + switch (s->ptr[r]) { + case '\r': + if (s->ptr[r + 1] != '\n') { + s->ptr[w++] = ' '; + } + break; + case '\n': + s->ptr[w++] = ' '; + break; + default: + s->ptr[w++] = s->ptr[r]; + } + } + + // begins and ends with space? + if (s->ptr[0] == ' ' && s->ptr[w - 1] == ' ') { + cmark_strbuf_drop(s, 1); + cmark_strbuf_truncate(s, w - 2); + } else { + cmark_strbuf_truncate(s, w); + } + +} + + // Parse backtick code section or raw backticks, return an inline. // Assumes that the subject has a backtick at the current position. static cmark_node *handle_backticks(subject *subj, int options) { @@ -336,8 +367,7 @@ static cmark_node *handle_backticks(subject *subj, int options) { cmark_strbuf_set(&buf, subj->input.data + startpos, endpos - startpos - openticks.len); - cmark_strbuf_trim(&buf); - cmark_strbuf_normalize_whitespace(&buf); + S_normalize_code(&buf); cmark_node *node = make_code(subj, startpos, endpos - openticks.len - 1, cmark_chunk_buf_detach(&buf)); adjust_subj_node_newlines(subj, node, endpos - startpos, openticks.len, options); @@ -345,6 +375,7 @@ static cmark_node *handle_backticks(subject *subj, int options) { } } + // Scan ***, **, or * and return number scanned, or 0. // Advances position. static int scan_delims(subject *subj, unsigned char c, bool *can_open, @@ -729,9 +760,10 @@ static delimiter *S_insert_emph(subject *subj, delimiter *opener, } cmark_node_insert_after(opener_inl, emph); - emph->start_line = emph->end_line = subj->line; - emph->start_column = opener_inl->start_column + subj->column_offset; - emph->end_column = closer_inl->end_column + subj->column_offset; + emph->start_line = opener_inl->start_line; + emph->end_line = closer_inl->end_line; + emph->start_column = opener_inl->start_column; + emph->end_column = closer_inl->end_column; // if opener has 0 characters, remove it and its associated inline if (opener_num_chars == 0) { @@ -972,7 +1004,7 @@ static bufsize_t manual_scan_link_url(cmark_chunk *input, bufsize_t offset, break; } else if (input->data[i] == '\\') i += 2; - else if (cmark_isspace(input->data[i]) || input->data[i] == '<') + else if (input->data[i] == '\n' || input->data[i] == '<') return manual_scan_link_url_2(input, offset, output); else ++i; @@ -1410,7 +1442,7 @@ bufsize_t cmark_parse_reference_inline(cmark_mem *mem, cmark_chunk *input, // parse optional link_title beforetitle = subj.pos; spnl(&subj); - matchlen = scan_link_title(&subj.input, subj.pos); + matchlen = subj.pos == beforetitle ? 0 : scan_link_title(&subj.input, subj.pos); if (matchlen) { title = cmark_chunk_dup(&subj.input, subj.pos, matchlen); subj.pos += matchlen; @@ -1520,7 +1552,7 @@ int cmark_inline_parser_scan_delimiters(cmark_inline_parser *parser, } } - while (peek_char(parser) == c && numdelims <= max_delims) { + while (peek_char(parser) == c && numdelims < max_delims) { numdelims++; advance(parser); } diff --git a/Sources/libcmark_gfm/iterator.c b/Sources/libcmark_gfm/iterator.c index 5557dff..13fdb76 100644 --- a/Sources/libcmark_gfm/iterator.c +++ b/Sources/libcmark_gfm/iterator.c @@ -3,7 +3,7 @@ #include "config.h" #include "node.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "iterator.h" cmark_iter *cmark_iter_new(cmark_node *root) { diff --git a/Sources/libcmark_gfm/latex.c b/Sources/libcmark_gfm/latex.c index 1767cee..8be15b0 100644 --- a/Sources/libcmark_gfm/latex.c +++ b/Sources/libcmark_gfm/latex.c @@ -4,7 +4,7 @@ #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "node.h" #include "buffer.h" #include "utf8.h" diff --git a/Sources/libcmark_gfm/linked_list.c b/Sources/libcmark_gfm/linked_list.c index f8bc604..8c26dc5 100644 --- a/Sources/libcmark_gfm/linked_list.c +++ b/Sources/libcmark_gfm/linked_list.c @@ -1,6 +1,6 @@ #include -#include "cmark.h" +#include "cmark-gfm.h" cmark_llist *cmark_llist_append(cmark_mem *mem, cmark_llist *head, void *data) { cmark_llist *tmp; diff --git a/Sources/libcmark_gfm/man.c b/Sources/libcmark_gfm/man.c index 1e1a69d..441a96e 100644 --- a/Sources/libcmark_gfm/man.c +++ b/Sources/libcmark_gfm/man.c @@ -4,7 +4,7 @@ #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "node.h" #include "buffer.h" #include "utf8.h" diff --git a/Sources/libcmark_gfm/node.c b/Sources/libcmark_gfm/node.c index 3f94834..0118d65 100644 --- a/Sources/libcmark_gfm/node.c +++ b/Sources/libcmark_gfm/node.c @@ -69,10 +69,11 @@ static bool S_can_contain(cmark_node *node, cmark_node *child) { return cmark_node_can_contain_type(node, (cmark_node_type) child->type); } -cmark_node *cmark_node_new_with_mem(cmark_node_type type, cmark_mem *mem) { +cmark_node *cmark_node_new_with_mem_and_ext(cmark_node_type type, cmark_mem *mem, cmark_syntax_extension *extension) { cmark_node *node = (cmark_node *)mem->calloc(1, sizeof(*node)); cmark_strbuf_init(mem, &node->content, 0); node->type = (uint16_t)type; + node->extension = extension; switch (node->type) { case CMARK_NODE_HEADING: @@ -91,12 +92,25 @@ cmark_node *cmark_node_new_with_mem(cmark_node_type type, cmark_mem *mem) { break; } + if (node->extension && node->extension->opaque_alloc_func) { + node->extension->opaque_alloc_func(node->extension, mem, node); + } + return node; } -cmark_node *cmark_node_new(cmark_node_type type) { +cmark_node *cmark_node_new_with_ext(cmark_node_type type, cmark_syntax_extension *extension) { extern cmark_mem CMARK_DEFAULT_MEM_ALLOCATOR; - return cmark_node_new_with_mem(type, &CMARK_DEFAULT_MEM_ALLOCATOR); + return cmark_node_new_with_mem_and_ext(type, &CMARK_DEFAULT_MEM_ALLOCATOR, extension); +} + +cmark_node *cmark_node_new_with_mem(cmark_node_type type, cmark_mem *mem) +{ + return cmark_node_new_with_mem_and_ext(type, mem, NULL); +} + +cmark_node *cmark_node_new(cmark_node_type type) { + return cmark_node_new_with_ext(type, NULL); } static void free_node_as(cmark_node *node) { diff --git a/Sources/libcmark_gfm/plaintext.c b/Sources/libcmark_gfm/plaintext.c index 910adf4..b25e4a3 100644 --- a/Sources/libcmark_gfm/plaintext.c +++ b/Sources/libcmark_gfm/plaintext.c @@ -191,6 +191,28 @@ static int S_render_node(cmark_renderer *renderer, cmark_node *node, case CMARK_NODE_IMAGE: break; + case CMARK_NODE_FOOTNOTE_REFERENCE: + if (entering) { + LIT("[^"); + OUT(cmark_chunk_to_cstr(renderer->mem, &node->as.literal), false, LITERAL); + LIT("]"); + } + break; + + case CMARK_NODE_FOOTNOTE_DEFINITION: + if (entering) { + renderer->footnote_ix += 1; + LIT("[^"); + char n[32]; + snprintf(n, sizeof(n), "%d", renderer->footnote_ix); + OUT(n, false, LITERAL); + LIT("]: "); + + cmark_strbuf_puts(renderer->prefix, " "); + } else { + cmark_strbuf_truncate(renderer->prefix, renderer->prefix->size - 4); + } + break; default: assert(false); break; diff --git a/Sources/libcmark_gfm/references.c b/Sources/libcmark_gfm/references.c index 2cd4b44..7e7f34b 100644 --- a/Sources/libcmark_gfm/references.c +++ b/Sources/libcmark_gfm/references.c @@ -1,4 +1,4 @@ -#include "cmark.h" +#include "cmark-gfm.h" #include "parser.h" #include "references.h" #include "inlines.h" diff --git a/Sources/libcmark_gfm/registry.c b/Sources/libcmark_gfm/registry.c index 3ff01f2..f4f2040 100644 --- a/Sources/libcmark_gfm/registry.c +++ b/Sources/libcmark_gfm/registry.c @@ -3,7 +3,7 @@ #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "syntax_extension.h" #include "registry.h" #include "plugin.h" diff --git a/Sources/libcmark_gfm/render.c b/Sources/libcmark_gfm/render.c index 7f09024..df46d45 100644 --- a/Sources/libcmark_gfm/render.c +++ b/Sources/libcmark_gfm/render.c @@ -1,7 +1,7 @@ #include #include "buffer.h" #include "chunk.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "utf8.h" #include "render.h" #include "node.h" @@ -57,6 +57,7 @@ static void S_out(cmark_renderer *renderer, cmark_node *node, } } renderer->column = 0; + renderer->last_breakable = 0; renderer->begin_line = true; renderer->begin_content = true; renderer->need_cr -= 1; @@ -188,7 +189,7 @@ char *cmark_render(cmark_mem *mem, cmark_node *root, int options, int width, } // ensure final newline - if (renderer.buffer->ptr[renderer.buffer->size - 1] != '\n') { + if (renderer.buffer->size == 0 || renderer.buffer->ptr[renderer.buffer->size - 1] != '\n') { cmark_strbuf_putc(renderer.buffer, '\n'); } diff --git a/Sources/libcmark_gfm/scanners.c b/Sources/libcmark_gfm/scanners.c index 4c56995..765b863 100644 --- a/Sources/libcmark_gfm/scanners.c +++ b/Sources/libcmark_gfm/scanners.c @@ -1,18195 +1,10694 @@ -/* Generated by re2c 0.15.3 */ +/* Generated by re2c 1.1.1 */ #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; +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]; + 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; - } + ptr[c->len] = '\0'; + res = scanner(ptr + offset); + ptr[c->len] = lim; + } - return res; + return res; } + + // Try to match a scheme including colon. -bufsize_t _scan_scheme(const unsigned char *p) { +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 yy9; - } else { - if (yych != '/') - goto yy9; - } - } else { - if (yych <= 'Z') { - if (yych <= ':') - goto yy7; - if (yych >= 'A') - goto yy9; - } else { - if (yych <= '`') - goto yy6; - if (yych <= 'z') - goto yy9; - } - } - yy6: - p = marker; - goto yy3; - yy7: - ++p; - { return (bufsize_t)(p - start); } - yy9: - yych = *++p; - if (yych <= '9') { - if (yych <= ',') { - if (yych != '+') - goto yy6; - } else { - if (yych == '/') - goto yy6; - } - } else { - if (yych <= 'Z') { - if (yych <= ':') - goto yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - 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 yy7; - if (yych <= '@') - goto yy6; - } else { - if (yych <= '`') - goto yy6; - if (yych >= '{') - goto yy6; - } - } - ++p; - if ((yych = *p) == ':') - goto yy7; - goto yy6; - } +{ + 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) { +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 yy48; - } else { - if (yych != '/') - goto yy48; - } - } else { - if (yych <= 'Z') { - if (yych <= ':') - goto yy46; - if (yych >= 'A') - goto yy48; - } else { - if (yych <= '`') - goto yy45; - if (yych <= 'z') - goto yy48; - } - } - yy45: - p = marker; - goto yy42; - yy46: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy46; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '<') - goto yy45; - if (yych <= '>') - goto yy85; - goto yy45; - } else { - if (yych <= 0xDF) - goto yy78; - if (yych <= 0xE0) - goto yy79; - goto yy80; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy84; - if (yych <= 0xEF) - goto yy80; - goto yy81; - } else { - if (yych <= 0xF3) - goto yy82; - if (yych <= 0xF4) - goto yy83; - goto yy45; - } - } - yy48: - yych = *++p; - if (yych <= '9') { - if (yych <= ',') { - if (yych != '+') - goto yy45; - } else { - if (yych == '/') - goto yy45; - } - } else { - if (yych <= 'Z') { - if (yych <= ':') - goto yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - 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 yy46; - if (yych <= '@') - goto yy45; - } else { - if (yych <= '`') - goto yy45; - if (yych >= '{') - goto yy45; - } - } - yych = *++p; - if (yych == ':') - goto yy46; - goto yy45; - yy78: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy45; - if (yych <= 0xBF) - goto yy46; - goto yy45; - yy79: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy45; - if (yych <= 0xBF) - goto yy78; - goto yy45; - yy80: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy45; - if (yych <= 0xBF) - goto yy78; - goto yy45; - yy81: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy45; - if (yych <= 0xBF) - goto yy80; - goto yy45; - yy82: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy45; - if (yych <= 0xBF) - goto yy80; - goto yy45; - yy83: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy45; - if (yych <= 0x8F) - goto yy80; - goto yy45; - yy84: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy45; - if (yych <= 0x9F) - goto yy78; - goto yy45; - yy85: - ++p; - { return (bufsize_t)(p - start); } - } +{ + 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) { +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 yy95; - goto yy90; - } else { - if (yych <= '\'') - goto yy95; - if (yych <= ')') - goto yy90; - if (yych <= '+') - goto yy95; - goto yy90; - } - } else { - if (yych <= '>') { - if (yych <= '9') - goto yy95; - if (yych == '=') - goto yy95; - goto yy90; - } else { - if (yych <= 'Z') - goto yy95; - if (yych <= ']') - goto yy90; - if (yych <= '~') - goto yy95; - goto yy90; - } - } - yy92: - yych = *++p; - if (yych <= '@') { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy96; - } else { - if (yych <= 'Z') - goto yy96; - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy96; - } - yy93: - p = marker; - goto yy90; - yy94: - ++p; - yych = *p; - yy95: - if (yybm[0 + yych] & 128) { - goto yy94; - } - if (yych <= '>') - goto yy93; - if (yych <= '@') - goto yy92; - goto yy93; - yy96: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy98; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych >= ':') - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy227; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy226; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy226; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy226; - goto yy93; - } - } - yy98: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy227; - if (yych <= '/') - goto yy93; - goto yy226; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - goto yy226; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy226; - goto yy93; - } - } - yy99: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy102; - goto yy93; - } else { - if (yych <= 'Z') - goto yy102; - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy102; - goto yy93; - } - yy100: - ++p; - { return (bufsize_t)(p - start); } - yy102: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy104; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych >= ':') - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy106; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy105; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy105; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy105; - goto yy93; - } - } - yy104: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy106; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy105: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy108; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy107; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy107; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy107; - goto yy93; - } - } - yy106: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy108; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy107: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy110; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy109; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy109; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy109; - goto yy93; - } - } - yy108: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy110; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy109: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy112; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy111; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy111; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy111; - goto yy93; - } - } - yy110: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy112; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy111: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy114; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy113; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy113; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy113; - goto yy93; - } - } - yy112: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy114; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy113: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy116; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy115; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy115; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy115; - goto yy93; - } - } - yy114: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy116; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy115: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy118; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy117; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy117; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy117; - goto yy93; - } - } - yy116: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy118; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy117: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy120; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy119; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy119; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy119; - goto yy93; - } - } - yy118: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy120; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy119: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy122; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy121; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy121; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy121; - goto yy93; - } - } - yy120: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy122; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy121: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy124; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy123; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy123; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy123; - goto yy93; - } - } - yy122: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy124; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy123: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy126; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy125; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy125; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy125; - goto yy93; - } - } - yy124: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy126; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy125: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy128; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy127; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy127; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy127; - goto yy93; - } - } - yy126: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy128; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy127: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy130; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy129; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy129; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy129; - goto yy93; - } - } - yy128: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy130; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy129: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy132; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy131; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy131; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy131; - goto yy93; - } - } - yy130: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy132; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy131: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy134; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy133; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy133; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy133; - goto yy93; - } - } - yy132: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy134; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy133: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy136; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy135; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy135; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy135; - goto yy93; - } - } - yy134: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy136; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy135: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy138; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy137; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy137; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy137; - goto yy93; - } - } - yy136: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy138; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy137: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy140; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy139; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy139; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy139; - goto yy93; - } - } - yy138: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy140; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy139: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy142; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy141; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy141; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy141; - goto yy93; - } - } - yy140: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy142; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy141: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy144; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy143; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy143; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy143; - goto yy93; - } - } - yy142: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy144; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy143: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy146; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy145; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy145; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy145; - goto yy93; - } - } - yy144: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy146; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy145: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy148; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy147; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy147; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy147; - goto yy93; - } - } - yy146: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy148; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy147: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy150; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy149; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy149; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy149; - goto yy93; - } - } - yy148: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy150; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy149: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy152; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy151; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy151; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy151; - goto yy93; - } - } - yy150: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy152; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy151: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy154; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy153; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy153; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy153; - goto yy93; - } - } - yy152: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy154; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy153: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy156; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy155; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy155; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy155; - goto yy93; - } - } - yy154: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy156; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy155: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy158; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy157; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy157; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy157; - goto yy93; - } - } - yy156: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy158; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy157: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy160; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy159; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy159; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy159; - goto yy93; - } - } - yy158: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy160; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy159: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy162; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy161; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy161; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy161; - goto yy93; - } - } - yy160: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy162; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy161: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy164; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy163; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy163; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy163; - goto yy93; - } - } - yy162: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy164; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy163: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy166; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy165; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy165; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy165; - goto yy93; - } - } - yy164: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy166; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy165: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy168; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy167; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy167; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy167; - goto yy93; - } - } - yy166: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy168; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy167: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy170; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy169; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy169; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy169; - goto yy93; - } - } - yy168: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy170; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy169: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy172; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy171; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy171; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy171; - goto yy93; - } - } - yy170: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy172; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy171: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy174; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy173; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy173; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy173; - goto yy93; - } - } - yy172: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy174; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy173: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy176; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy175; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy175; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy175; - goto yy93; - } - } - yy174: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy176; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy175: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy178; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy177; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy177; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy177; - goto yy93; - } - } - yy176: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy178; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy177: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy180; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy179; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy179; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy179; - goto yy93; - } - } - yy178: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy180; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy179: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy182; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy181; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy181; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy181; - goto yy93; - } - } - yy180: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy182; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy181: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy184; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy183; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy183; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy183; - goto yy93; - } - } - yy182: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy184; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy183: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy186; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy185; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy185; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy185; - goto yy93; - } - } - yy184: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy186; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy185: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy188; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy187; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy187; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy187; - goto yy93; - } - } - yy186: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy188; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy187: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy190; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy189; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy189; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy189; - goto yy93; - } - } - yy188: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy190; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy189: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy192; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy191; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy191; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy191; - goto yy93; - } - } - yy190: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy192; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy191: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy194; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy193; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy193; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy193; - goto yy93; - } - } - yy192: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy194; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy193: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy196; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy195; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy195; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy195; - goto yy93; - } - } - yy194: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy196; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy195: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy198; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy197; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy197; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy197; - goto yy93; - } - } - yy196: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy198; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy197: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy200; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy199; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy199; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy199; - goto yy93; - } - } - yy198: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy200; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy199: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy202; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy201; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy201; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy201; - goto yy93; - } - } - yy200: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy202; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy201: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy204; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy203; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy203; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy203; - goto yy93; - } - } - yy202: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy204; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy203: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy206; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy205; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy205; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy205; - goto yy93; - } - } - yy204: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy206; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy205: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy208; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy207; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy207; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy207; - goto yy93; - } - } - yy206: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy208; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy207: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy210; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy209; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy209; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy209; - goto yy93; - } - } - yy208: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy210; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy209: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy212; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy211; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy211; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy211; - goto yy93; - } - } - yy210: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy212; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy211: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy214; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy213; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy213; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy213; - goto yy93; - } - } - yy212: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy214; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy213: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy216; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy215; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy215; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy215; - goto yy93; - } - } - yy214: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy216; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy215: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy218; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy217; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy217; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy217; - goto yy93; - } - } - yy216: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy218; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy217: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy220; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy219; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy219; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy219; - goto yy93; - } - } - yy218: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy220; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy219: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy222; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy221; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy221; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy221; - goto yy93; - } - } - yy220: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy222; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy221: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy224; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy223; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy223; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy223; - goto yy93; - } - } - yy222: - ++p; - yych = *p; - if (yych <= '9') { - if (yych == '-') - goto yy224; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy223: - ++p; - yych = *p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= '-') - goto yy93; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy225; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy225; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy225; - goto yy93; - } - } - yy224: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '/') - goto yy93; - if (yych >= ':') - goto yy93; - } else { - if (yych <= 'Z') - goto yy225; - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - yy225: - ++p; - yych = *p; - if (yych == '.') - goto yy99; - if (yych == '>') - goto yy100; - goto yy93; - yy226: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy229; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy228; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy228; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy228; - goto yy93; - } - } - yy227: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy229; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy228: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy231; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy230; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy230; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy230; - goto yy93; - } - } - yy229: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy231; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy230: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy233; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy232; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy232; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy232; - goto yy93; - } - } - yy231: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy233; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy232: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy235; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy234; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy234; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy234; - goto yy93; - } - } - yy233: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy235; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy234: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy237; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy236; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy236; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy236; - goto yy93; - } - } - yy235: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy237; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy236: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy239; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy238; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy238; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy238; - goto yy93; - } - } - yy237: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy239; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy238: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy241; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy240; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy240; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy240; - goto yy93; - } - } - yy239: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy241; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy240: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy243; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy242; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy242; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy242; - goto yy93; - } - } - yy241: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy243; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy242: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy245; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy244; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy244; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy244; - goto yy93; - } - } - yy243: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy245; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy244: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy247; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy246; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy246; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy246; - goto yy93; - } - } - yy245: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy247; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy246: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy249; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy248; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy248; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy248; - goto yy93; - } - } - yy247: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy249; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy248: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy251; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy250; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy250; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy250; - goto yy93; - } - } - yy249: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy251; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy250: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy253; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy252; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy252; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy252; - goto yy93; - } - } - yy251: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy253; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy252: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy255; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy254; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy254; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy254; - goto yy93; - } - } - yy253: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy255; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy254: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy257; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy256; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy256; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy256; - goto yy93; - } - } - yy255: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy257; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy256: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy259; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy258; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy258; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy258; - goto yy93; - } - } - yy257: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy259; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy258: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy261; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy260; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy260; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy260; - goto yy93; - } - } - yy259: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy261; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy260: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy263; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy262; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy262; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy262; - goto yy93; - } - } - yy261: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy263; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy262: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy265; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy264; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy264; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy264; - goto yy93; - } - } - yy263: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy265; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy264: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy267; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy266; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy266; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy266; - goto yy93; - } - } - yy265: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy267; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy266: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy269; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy268; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy268; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy268; - goto yy93; - } - } - yy267: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy269; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy268: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy271; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy270; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy270; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy270; - goto yy93; - } - } - yy269: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy271; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy270: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy273; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy272; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy272; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy272; - goto yy93; - } - } - yy271: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy273; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy272: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy275; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy274; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy274; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy274; - goto yy93; - } - } - yy273: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy275; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy274: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy277; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy276; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy276; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy276; - goto yy93; - } - } - yy275: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy277; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy276: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy279; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy278; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy278; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy278; - goto yy93; - } - } - yy277: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy279; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy278: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy281; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy280; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy280; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy280; - goto yy93; - } - } - yy279: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy281; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy280: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy283; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy282; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy282; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy282; - goto yy93; - } - } - yy281: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy283; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy282: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy285; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy284; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy284; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy284; - goto yy93; - } - } - yy283: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy285; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy284: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy287; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy286; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy286; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy286; - goto yy93; - } - } - yy285: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy287; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy286: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy289; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy288; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy288; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy288; - goto yy93; - } - } - yy287: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy289; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy288: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy291; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy290; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy290; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy290; - goto yy93; - } - } - yy289: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy291; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy290: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy293; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy292; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy292; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy292; - goto yy93; - } - } - yy291: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy293; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy292: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy295; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy294; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy294; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy294; - goto yy93; - } - } - yy293: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy295; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy294: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy297; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy296; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy296; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy296; - goto yy93; - } - } - yy295: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy297; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy296: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy299; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy298; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy298; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy298; - goto yy93; - } - } - yy297: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy299; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy298: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy301; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy300; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy300; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy300; - goto yy93; - } - } - yy299: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy301; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy300: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy303; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy302; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy302; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy302; - goto yy93; - } - } - yy301: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy303; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy302: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy305; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy304; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy304; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy304; - goto yy93; - } - } - yy303: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy305; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy304: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy307; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy306; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy306; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy306; - goto yy93; - } - } - yy305: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy307; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy306: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy309; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy308; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy308; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy308; - goto yy93; - } - } - yy307: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy309; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy308: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy311; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy310; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy310; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy310; - goto yy93; - } - } - yy309: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy311; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy310: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy313; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy312; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy312; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy312; - goto yy93; - } - } - yy311: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy313; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy312: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy315; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy314; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy314; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy314; - goto yy93; - } - } - yy313: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy315; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy314: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy317; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy316; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy316; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy316; - goto yy93; - } - } - yy315: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy317; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy316: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy319; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy318; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy318; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy318; - goto yy93; - } - } - yy317: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy319; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy318: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy321; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy320; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy320; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy320; - goto yy93; - } - } - yy319: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy321; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy320: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy323; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy322; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy322; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy322; - goto yy93; - } - } - yy321: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy323; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy322: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy325; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy324; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy324; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy324; - goto yy93; - } - } - yy323: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy325; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy324: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy327; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy326; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy326; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy326; - goto yy93; - } - } - yy325: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy327; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy326: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy329; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy328; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy328; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy328; - goto yy93; - } - } - yy327: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy329; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy328: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy331; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy330; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy330; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy330; - goto yy93; - } - } - yy329: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy331; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy330: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy333; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy332; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy332; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy332; - goto yy93; - } - } - yy331: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy333; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy332: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy335; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy334; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy334; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy334; - goto yy93; - } - } - yy333: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy335; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy334: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy337; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy336; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy336; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy336; - goto yy93; - } - } - yy335: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy337; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy336: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy339; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy338; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy338; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy338; - goto yy93; - } - } - yy337: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy339; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy338: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy341; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy340; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy340; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy340; - goto yy93; - } - } - yy339: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy341; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy340: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy343; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy342; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy342; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy342; - goto yy93; - } - } - yy341: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy343; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy342: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= ',') - goto yy93; - if (yych <= '-') - goto yy345; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy344; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy344; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy344; - goto yy93; - } - } - yy343: - yych = *++p; - if (yych <= '9') { - if (yych == '-') - goto yy345; - if (yych <= '/') - goto yy93; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy93; - } else { - if (yych <= '`') - goto yy93; - if (yych >= '{') - goto yy93; - } - } - yy344: - yych = *++p; - if (yych <= '=') { - if (yych <= '.') { - if (yych <= '-') - goto yy93; - goto yy99; - } else { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy225; - goto yy93; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy100; - if (yych <= '@') - goto yy93; - goto yy225; - } else { - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy225; - goto yy93; - } - } - yy345: - ++p; - if ((yych = *p) <= '@') { - if (yych <= '/') - goto yy93; - if (yych <= '9') - goto yy225; - goto yy93; - } else { - if (yych <= 'Z') - goto yy225; - if (yych <= '`') - goto yy93; - if (yych <= 'z') - goto yy225; - goto yy93; - } - } +{ + 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) { +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, 239, 239, 239, 239, 239, 239, 239, 239, 238, 238, 238, 238, 238, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 238, 239, 234, 239, 239, 239, 239, 236, 239, 239, 239, - 239, 239, 207, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 238, 238, 174, 231, 239, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 239, 239, 111, 239, 239, 238, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 64, 64, 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, - 160, 128, 0, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 128, 0, - 0, 0, 0, 0, 0, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 0, 0, 0, 0, 128, 0, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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 yy350; - } else { - if (yych == '/') - goto yy351; - } - } else { - if (yych <= 'Z') { - if (yych <= '?') - goto yy352; - if (yych >= 'A') - goto yy353; - } else { - if (yych <= '`') - goto yy348; - if (yych <= 'z') - goto yy353; - } - } - yy348: - ++p; - yy349 : { return 0; } - yy350: - yych = *(marker = ++p); - if (yybm[0 + yych] & 16) { - goto yy426; - } - if (yych == '-') - goto yy428; - if (yych <= '@') - goto yy349; - if (yych <= '[') - goto yy425; - goto yy349; - yy351: - yych = *(marker = ++p); - if (yych <= '@') - goto yy349; - if (yych <= 'Z') - goto yy421; - if (yych <= '`') - goto yy349; - if (yych <= 'z') - goto yy421; - goto yy349; - yy352: - yych = *(marker = ++p); - if (yych <= 0x00) - goto yy349; - if (yych <= 0x7F) - goto yy405; - if (yych <= 0xC1) - goto yy349; - if (yych <= 0xF4) - goto yy405; - goto yy349; - yy353: - yych = *(marker = ++p); - if (yybm[256 + yych] & 64) { - goto yy357; - } - if (yych <= '=') { - if (yych <= '.') { - if (yych != '-') - goto yy349; - } else { - if (yych <= '/') - goto yy359; - if (yych >= ':') - goto yy349; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy360; - if (yych <= '@') - goto yy349; - } else { - if (yych <= '`') - goto yy349; - if (yych >= '{') - goto yy349; - } - } - yy354: - ++p; - yych = *p; - if (yybm[256 + yych] & 64) { - goto yy357; - } - if (yych <= '=') { - if (yych <= '.') { - if (yych == '-') - goto yy354; - } else { - if (yych <= '/') - goto yy359; - if (yych <= '9') - goto yy354; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy360; - if (yych >= 'A') - goto yy354; - } else { - if (yych <= '`') - goto yy356; - if (yych <= 'z') - goto yy354; - } - } - yy356: - p = marker; - goto yy349; - yy357: - ++p; - yych = *p; - if (yybm[256 + yych] & 64) { - goto yy357; - } - if (yych <= '>') { - if (yych <= '9') { - if (yych != '/') - goto yy356; - } else { - if (yych <= ':') - goto yy362; - if (yych <= '=') - goto yy356; - goto yy360; - } - } else { - if (yych <= '^') { - if (yych <= '@') - goto yy356; - if (yych <= 'Z') - goto yy362; - goto yy356; - } else { - if (yych == '`') - goto yy356; - if (yych <= 'z') - goto yy362; - goto yy356; - } - } - yy359: - yych = *++p; - if (yych != '>') - goto yy356; - yy360: - ++p; - { return (bufsize_t)(p - start); } - yy362: - ++p; - yych = *p; - if (yybm[256 + yych] & 128) { - goto yy362; - } - if (yych <= ',') { - if (yych <= '\r') { - if (yych <= 0x08) - goto yy356; - } else { - if (yych != ' ') - goto yy356; - } - } else { - if (yych <= '<') { - if (yych <= '/') - goto yy359; - goto yy356; - } else { - if (yych <= '=') - goto yy366; - if (yych <= '>') - goto yy360; - goto yy356; - } - } - yy364: - ++p; - yych = *p; - if (yych <= '<') { - if (yych <= ' ') { - if (yych <= 0x08) - goto yy356; - if (yych <= '\r') - goto yy364; - if (yych <= 0x1F) - goto yy356; - goto yy364; - } else { - if (yych <= '/') { - if (yych <= '.') - goto yy356; - goto yy359; - } else { - if (yych == ':') - goto yy362; - goto yy356; - } - } - } else { - if (yych <= 'Z') { - if (yych <= '=') - goto yy366; - if (yych <= '>') - goto yy360; - if (yych <= '@') - goto yy356; - goto yy362; - } else { - if (yych <= '_') { - if (yych <= '^') - goto yy356; - goto yy362; - } else { - if (yych <= '`') - goto yy356; - if (yych <= 'z') - goto yy362; - goto yy356; - } - } - } - yy366: - ++p; - yych = *p; - if (yybm[0 + yych] & 1) { - goto yy368; - } - if (yych <= 0xE0) { - if (yych <= '"') { - if (yych <= 0x00) - goto yy356; - if (yych >= '!') - goto yy379; - } else { - if (yych <= '\'') - goto yy377; - if (yych <= 0xC1) - goto yy356; - if (yych <= 0xDF) - goto yy370; - goto yy371; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - ++p; - yych = *p; - if (yybm[0 + yych] & 1) { - goto yy368; - } - if (yych <= 0xDF) { - if (yych <= '\'') { - if (yych <= 0x00) - goto yy356; - if (yych <= ' ') - goto yy402; - if (yych <= '"') - goto yy379; - goto yy377; - } else { - if (yych == '>') - goto yy360; - if (yych <= 0xC1) - goto yy356; - goto yy370; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy371; - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - yy368: - ++p; - yych = *p; - if (yybm[0 + yych] & 1) { - goto yy368; - } - if (yych <= 0xE0) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy356; - if (yych <= ' ') - goto yy396; - goto yy356; - } else { - if (yych <= '>') - goto yy360; - if (yych <= 0xC1) - goto yy356; - if (yych >= 0xE0) - goto yy371; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - yy370: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy368; - goto yy356; - yy371: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy370; - goto yy356; - yy372: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy370; - goto yy356; - yy373: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy372; - goto yy356; - yy374: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy372; - goto yy356; - yy375: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy372; - goto yy356; - yy376: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy370; - goto yy356; - yy377: - ++p; - yych = *p; - if (yybm[0 + yych] & 2) { - goto yy377; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '\'') - goto yy388; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy389; - if (yych <= 0xE0) - goto yy390; - goto yy391; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy395; - if (yych <= 0xEF) - goto yy391; - goto yy392; - } else { - if (yych <= 0xF3) - goto yy393; - if (yych <= 0xF4) - goto yy394; - goto yy356; - } - } - yy379: - ++p; - yych = *p; - if (yybm[0 + yych] & 4) { - goto yy379; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '"') - goto yy388; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy381; - if (yych <= 0xE0) - goto yy382; - goto yy383; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy387; - if (yych <= 0xEF) - goto yy383; - goto yy384; - } else { - if (yych <= 0xF3) - goto yy385; - if (yych <= 0xF4) - goto yy386; - goto yy356; - } - } - yy381: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy379; - goto yy356; - yy382: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy381; - goto yy356; - yy383: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy381; - goto yy356; - yy384: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy383; - goto yy356; - yy385: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy383; - goto yy356; - yy386: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy383; - goto yy356; - yy387: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy381; - goto yy356; - yy388: - ++p; - yych = *p; - if (yybm[256 + yych] & 64) { - goto yy357; - } - if (yych == '/') - goto yy359; - if (yych == '>') - goto yy360; - goto yy356; - yy389: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy377; - goto yy356; - yy390: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy389; - goto yy356; - yy391: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy389; - goto yy356; - yy392: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy391; - goto yy356; - yy393: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy391; - goto yy356; - yy394: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy391; - goto yy356; - yy395: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy389; - goto yy356; - yy396: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '"') { - if (yych <= '\r') { - if (yych <= 0x00) - goto yy356; - if (yych <= 0x08) - goto yy368; - goto yy396; - } else { - if (yych == ' ') - goto yy396; - if (yych <= '!') - goto yy368; - goto yy356; - } - } else { - if (yych <= ':') { - if (yych == '\'') - goto yy356; - if (yych <= '9') - goto yy368; - } else { - if (yych <= ';') - goto yy368; - if (yych <= '=') - goto yy356; - if (yych <= '>') - goto yy360; - goto yy368; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy398; - if (yych <= '^') - goto yy368; - if (yych >= '`') - goto yy356; - } else { - if (yych <= 'z') - goto yy398; - if (yych <= 0x7F) - goto yy368; - if (yych <= 0xC1) - goto yy356; - goto yy370; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy371; - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - } - yy398: - ++p; - yych = *p; - if (yych <= '>') { - if (yych <= '&') { - if (yych <= 0x1F) { - if (yych <= 0x00) - goto yy356; - if (yych <= 0x08) - goto yy368; - if (yych >= 0x0E) - goto yy368; - } else { - if (yych <= ' ') - goto yy400; - if (yych == '"') - goto yy356; - goto yy368; - } - } else { - if (yych <= '/') { - if (yych <= '\'') - goto yy356; - if (yych <= ',') - goto yy368; - if (yych <= '.') - goto yy398; - goto yy368; - } else { - if (yych <= ';') { - if (yych <= ':') - goto yy398; - goto yy368; - } else { - if (yych <= '<') - goto yy356; - if (yych <= '=') - goto yy366; - goto yy360; - } - } - } - } else { - if (yych <= 0xC1) { - if (yych <= '_') { - if (yych <= '@') - goto yy368; - if (yych <= 'Z') - goto yy398; - if (yych <= '^') - goto yy368; - goto yy398; - } else { - if (yych <= '`') - goto yy356; - if (yych <= 'z') - goto yy398; - if (yych <= 0x7F) - goto yy368; - goto yy356; - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy370; - if (yych <= 0xE0) - goto yy371; - if (yych <= 0xEC) - goto yy372; - goto yy376; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy372; - goto yy373; - } else { - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - } - } - yy400: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '&') { - if (yych <= 0x1F) { - if (yych <= 0x00) - goto yy356; - if (yych <= 0x08) - goto yy368; - if (yych <= '\r') - goto yy400; - goto yy368; - } else { - if (yych <= ' ') - goto yy400; - if (yych == '"') - goto yy356; - goto yy368; - } - } else { - if (yych <= ';') { - if (yych <= '\'') - goto yy356; - if (yych == ':') - goto yy398; - goto yy368; - } else { - if (yych <= '<') - goto yy356; - if (yych <= '=') - goto yy366; - if (yych <= '>') - goto yy360; - goto yy368; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy398; - if (yych <= '^') - goto yy368; - if (yych <= '_') - goto yy398; - goto yy356; - } else { - if (yych <= 'z') - goto yy398; - if (yych <= 0x7F) - goto yy368; - if (yych <= 0xC1) - goto yy356; - goto yy370; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy371; - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - } - yy402: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '"') { - if (yych <= '\r') { - if (yych <= 0x00) - goto yy356; - if (yych <= 0x08) - goto yy368; - goto yy402; - } else { - if (yych == ' ') - goto yy402; - if (yych <= '!') - goto yy368; - goto yy379; - } - } else { - if (yych <= ':') { - if (yych == '\'') - goto yy377; - if (yych <= '9') - goto yy368; - goto yy398; - } else { - if (yych <= ';') - goto yy368; - if (yych <= '=') - goto yy356; - if (yych <= '>') - goto yy360; - goto yy368; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy398; - if (yych <= '^') - goto yy368; - if (yych <= '_') - goto yy398; - goto yy356; - } else { - if (yych <= 'z') - goto yy398; - if (yych <= 0x7F) - goto yy368; - if (yych <= 0xC1) - goto yy356; - goto yy370; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy371; - if (yych == 0xED) - goto yy376; - goto yy372; - } else { - if (yych <= 0xF0) - goto yy373; - if (yych <= 0xF3) - goto yy374; - if (yych <= 0xF4) - goto yy375; - goto yy356; - } - } - } - yy404: - ++p; - yych = *p; - yy405: - if (yybm[0 + yych] & 8) { - goto yy404; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '?') - goto yy413; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy406; - if (yych <= 0xE0) - goto yy407; - goto yy408; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy412; - if (yych <= 0xEF) - goto yy408; - goto yy409; - } else { - if (yych <= 0xF3) - goto yy410; - if (yych <= 0xF4) - goto yy411; - goto yy356; - } - } - yy406: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy404; - goto yy356; - yy407: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy406; - goto yy356; - yy408: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy406; - goto yy356; - yy409: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy408; - goto yy356; - yy410: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy408; - goto yy356; - yy411: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy408; - goto yy356; - yy412: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy406; - goto yy356; - yy413: - ++p; - yych = *p; - if (yych <= 0xE0) { - if (yych <= '>') { - if (yych <= 0x00) - goto yy356; - if (yych <= '=') - goto yy404; - goto yy360; - } else { - if (yych <= 0x7F) - goto yy404; - if (yych <= 0xC1) - goto yy356; - if (yych >= 0xE0) - goto yy415; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy420; - goto yy416; - } else { - if (yych <= 0xF0) - goto yy417; - if (yych <= 0xF3) - goto yy418; - if (yych <= 0xF4) - goto yy419; - goto yy356; - } - } - yy414: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy404; - goto yy356; - yy415: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy414; - goto yy356; - yy416: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy414; - goto yy356; - yy417: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy416; - goto yy356; - yy418: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy416; - goto yy356; - yy419: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy416; - goto yy356; - yy420: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy414; - goto yy356; - yy421: - ++p; - yych = *p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy356; - if (yych >= 0x0E) - goto yy356; - } else { - if (yych <= ' ') - goto yy423; - if (yych == '-') - goto yy421; - goto yy356; - } - } else { - if (yych <= '@') { - if (yych <= '9') - goto yy421; - if (yych == '>') - goto yy360; - goto yy356; - } else { - if (yych <= 'Z') - goto yy421; - if (yych <= '`') - goto yy356; - if (yych <= 'z') - goto yy421; - goto yy356; - } - } - yy423: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy356; - if (yych <= '\r') - goto yy423; - goto yy356; - } else { - if (yych <= ' ') - goto yy423; - if (yych == '>') - goto yy360; - goto yy356; - } - yy425: - yych = *++p; - if (yych == 'C') - goto yy461; - if (yych == 'c') - goto yy461; - goto yy356; - yy426: - ++p; - yych = *p; - if (yybm[0 + yych] & 16) { - goto yy426; - } - if (yych <= 0x08) - goto yy356; - if (yych <= '\r') - goto yy450; - if (yych == ' ') - goto yy450; - goto yy356; - yy428: - yych = *++p; - if (yych != '-') - goto yy356; - yych = *++p; - if (yych <= 0xE0) { - if (yych <= '=') { - if (yych != '-') - goto yy432; - } else { - if (yych <= '>') - goto yy356; - if (yych <= 0xC1) - goto yy432; - if (yych <= 0xDF) - goto yy433; - goto yy434; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy439; - goto yy435; - } else { - if (yych <= 0xF0) - goto yy436; - if (yych <= 0xF3) - goto yy437; - if (yych <= 0xF4) - goto yy438; - goto yy432; - } - } - yych = *++p; - if (yych <= 0xE0) { - if (yych <= '=') { - if (yych == '-') - goto yy449; - goto yy432; - } else { - if (yych <= '>') - goto yy356; - if (yych <= 0xC1) - goto yy432; - if (yych <= 0xDF) - goto yy433; - goto yy434; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy439; - goto yy435; - } else { - if (yych <= 0xF0) - goto yy436; - if (yych <= 0xF3) - goto yy437; - if (yych <= 0xF4) - goto yy438; - goto yy432; - } - } - yy431: - ++p; - yych = *p; - yy432: - if (yybm[0 + yych] & 32) { - goto yy431; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '-') - goto yy440; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy441; - if (yych <= 0xE0) - goto yy442; - goto yy443; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy447; - if (yych <= 0xEF) - goto yy443; - goto yy444; - } else { - if (yych <= 0xF3) - goto yy445; - if (yych <= 0xF4) - goto yy446; - goto yy356; - } - } - yy433: - yych = *++p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy431; - goto yy356; - yy434: - yych = *++p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy433; - goto yy356; - yy435: - yych = *++p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy433; - goto yy356; - yy436: - yych = *++p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy435; - goto yy356; - yy437: - yych = *++p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy435; - goto yy356; - yy438: - yych = *++p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy435; - goto yy356; - yy439: - yych = *++p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy433; - goto yy356; - yy440: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy431; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '-') - goto yy448; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy441; - if (yych <= 0xE0) - goto yy442; - goto yy443; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy447; - if (yych <= 0xEF) - goto yy443; - goto yy444; - } else { - if (yych <= 0xF3) - goto yy445; - if (yych <= 0xF4) - goto yy446; - goto yy356; - } - } - yy441: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy431; - goto yy356; - yy442: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy441; - goto yy356; - yy443: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy441; - goto yy356; - yy444: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy443; - goto yy356; - yy445: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy443; - goto yy356; - yy446: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy443; - goto yy356; - yy447: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy441; - goto yy356; - yy448: - yych = *++p; - if (yych == '>') - goto yy360; - goto yy356; - yy449: - yych = *++p; - if (yych == '>') - goto yy360; - goto yy356; - yy450: - ++p; - yych = *p; - if (yych <= 0xC1) { - if (yych <= 0x1F) { - if (yych <= 0x00) - goto yy356; - if (yych <= 0x08) - goto yy452; - if (yych <= '\r') - goto yy450; - } else { - if (yych <= '=') { - if (yych <= ' ') - goto yy450; - } else { - if (yych <= '>') - goto yy360; - if (yych >= 0x80) - goto yy356; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy454; - if (yych <= 0xE0) - goto yy455; - if (yych <= 0xEC) - goto yy456; - goto yy460; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy456; - goto yy457; - } else { - if (yych <= 0xF3) - goto yy458; - if (yych <= 0xF4) - goto yy459; - goto yy356; - } - } - } - yy452: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy452; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= '>') - goto yy360; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy454; - if (yych <= 0xE0) - goto yy455; - goto yy456; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy460; - if (yych <= 0xEF) - goto yy456; - goto yy457; - } else { - if (yych <= 0xF3) - goto yy458; - if (yych <= 0xF4) - goto yy459; - goto yy356; - } - } - yy454: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy452; - goto yy356; - yy455: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy454; - goto yy356; - yy456: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy454; - goto yy356; - yy457: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy456; - goto yy356; - yy458: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy456; - goto yy356; - yy459: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy456; - goto yy356; - yy460: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy454; - goto yy356; - yy461: - yych = *++p; - if (yych == 'D') - goto yy462; - if (yych != 'd') - goto yy356; - yy462: - yych = *++p; - if (yych == 'A') - goto yy463; - if (yych != 'a') - goto yy356; - yy463: - yych = *++p; - if (yych == 'T') - goto yy464; - if (yych != 't') - goto yy356; - yy464: - yych = *++p; - if (yych == 'A') - goto yy465; - if (yych != 'a') - goto yy356; - yy465: - yych = *++p; - if (yych != '[') - goto yy356; - yy466: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy466; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych <= ']') - goto yy475; - goto yy356; - } else { - if (yych <= 0xDF) - goto yy468; - if (yych <= 0xE0) - goto yy469; - goto yy470; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy474; - if (yych <= 0xEF) - goto yy470; - goto yy471; - } else { - if (yych <= 0xF3) - goto yy472; - if (yych <= 0xF4) - goto yy473; - goto yy356; - } - } - yy468: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy466; - goto yy356; - yy469: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy468; - goto yy356; - yy470: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy468; - goto yy356; - yy471: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy470; - goto yy356; - yy472: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy470; - goto yy356; - yy473: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy470; - goto yy356; - yy474: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy468; - goto yy356; - yy475: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy466; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy356; - if (yych >= '^') - goto yy356; - } else { - if (yych <= 0xDF) - goto yy477; - if (yych <= 0xE0) - goto yy478; - goto yy479; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy483; - if (yych <= 0xEF) - goto yy479; - goto yy480; - } else { - if (yych <= 0xF3) - goto yy481; - if (yych <= 0xF4) - goto yy482; - goto yy356; - } - } - ++p; - yych = *p; - if (yych <= 0xE0) { - if (yych <= '>') { - if (yych <= 0x00) - goto yy356; - if (yych <= '=') - goto yy466; - goto yy360; - } else { - if (yych <= 0x7F) - goto yy466; - if (yych <= 0xC1) - goto yy356; - if (yych <= 0xDF) - goto yy484; - goto yy485; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy490; - goto yy486; - } else { - if (yych <= 0xF0) - goto yy487; - if (yych <= 0xF3) - goto yy488; - if (yych <= 0xF4) - goto yy489; - goto yy356; - } - } - yy477: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy466; - goto yy356; - yy478: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy477; - goto yy356; - yy479: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy477; - goto yy356; - yy480: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy479; - goto yy356; - yy481: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy479; - goto yy356; - yy482: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy479; - goto yy356; - yy483: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy477; - goto yy356; - yy484: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy466; - goto yy356; - yy485: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy356; - if (yych <= 0xBF) - goto yy484; - goto yy356; - yy486: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy484; - goto yy356; - yy487: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy356; - if (yych <= 0xBF) - goto yy486; - goto yy356; - yy488: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0xBF) - goto yy486; - goto yy356; - yy489: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x8F) - goto yy486; - goto yy356; - yy490: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy356; - if (yych <= 0x9F) - goto yy484; - goto yy356; - } +{ + 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) { +// 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 yy493; - if (yych <= '\t') - goto yy495; - } else { - if (yych <= 0x7F) - goto yy495; - if (yych <= 0xC1) - goto yy493; - if (yych <= 0xDF) - goto yy496; - goto yy497; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy499; - goto yy498; - } else { - if (yych <= 0xF0) - goto yy500; - if (yych <= 0xF3) - goto yy501; - if (yych <= 0xF4) - goto yy502; - } - } - yy493: - ++p; - yy494 : { return 0; } - yy495: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy494; - if (yych <= '\t') - goto yy507; - goto yy494; - } else { - if (yych <= 0x7F) - goto yy507; - if (yych <= 0xC1) - goto yy494; - if (yych <= 0xF4) - goto yy507; - goto yy494; - } - yy496: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy494; - if (yych <= 0xBF) - goto yy506; - goto yy494; - yy497: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy494; - if (yych <= 0xBF) - goto yy505; - goto yy494; - yy498: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy494; - if (yych <= 0xBF) - goto yy505; - goto yy494; - yy499: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy494; - if (yych <= 0x9F) - goto yy505; - goto yy494; - yy500: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy494; - if (yych <= 0xBF) - goto yy503; - goto yy494; - yy501: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy494; - if (yych <= 0xBF) - goto yy503; - goto yy494; - yy502: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy494; - if (yych >= 0x90) - goto yy494; - yy503: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy504; - if (yych <= 0xBF) - goto yy505; - yy504: - p = marker; - if (yyaccept == 0) { - goto yy494; - } else { - goto yy510; - } - yy505: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy504; - if (yych >= 0xC0) - goto yy504; - yy506: - ++p; - yych = *p; - yy507: - if (yybm[0 + yych] & 64) { - goto yy506; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy504; - if (yych >= '?') - goto yy504; - } else { - if (yych <= 0xDF) - goto yy505; - if (yych <= 0xE0) - goto yy511; - goto yy503; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy515; - if (yych <= 0xEF) - goto yy503; - goto yy512; - } else { - if (yych <= 0xF3) - goto yy513; - if (yych <= 0xF4) - goto yy514; - goto yy504; - } - } - yy508: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy506; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy510; - if (yych <= '>') - goto yy508; - } else { - if (yych <= 0xDF) - goto yy505; - if (yych <= 0xE0) - goto yy511; - goto yy503; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy515; - if (yych <= 0xEF) - goto yy503; - goto yy512; - } else { - if (yych <= 0xF3) - goto yy513; - if (yych <= 0xF4) - goto yy514; - } - } - yy510 : { return (bufsize_t)(p - start); } - yy511: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy504; - if (yych <= 0xBF) - goto yy505; - goto yy504; - yy512: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy504; - if (yych <= 0xBF) - goto yy503; - goto yy504; - yy513: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy504; - if (yych <= 0xBF) - goto yy503; - goto yy504; - yy514: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy504; - if (yych <= 0x8F) - goto yy503; - goto yy504; - yy515: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy504; - if (yych <= 0x9F) - goto yy505; - goto yy504; - } +{ + 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) { +bufsize_t _scan_html_block_start(const unsigned char *p) +{ const unsigned char *marker = NULL; - { - unsigned char yych; - yych = *p; - if (yych == '<') - goto yy520; - ++p; - yy519 : { return 0; } - yy520: - yych = *(marker = ++p); - switch (yych) { - case '!': - goto yy538; - case '/': - goto yy521; - case '?': - goto yy539; - case 'A': - case 'a': - goto yy524; - case 'B': - case 'b': - goto yy525; - case 'C': - case 'c': - goto yy526; - case 'D': - case 'd': - goto yy527; - case 'F': - case 'f': - goto yy528; - case 'H': - case 'h': - goto yy529; - case 'I': - case 'i': - goto yy530; - case 'L': - case 'l': - goto yy531; - case 'M': - case 'm': - goto yy532; - case 'N': - case 'n': - goto yy533; - case 'O': - case 'o': - goto yy534; - case 'P': - case 'p': - goto yy523; - case 'S': - case 's': - goto yy535; - case 'T': - case 't': - goto yy536; - case 'U': - case 'u': - goto yy537; - default: - goto yy519; - } - yy521: - yych = *++p; - switch (yych) { - case 'A': - case 'a': - goto yy524; - case 'B': - case 'b': - goto yy525; - case 'C': - case 'c': - goto yy526; - case 'D': - case 'd': - goto yy527; - case 'F': - case 'f': - goto yy528; - case 'H': - case 'h': - goto yy529; - case 'I': - case 'i': - goto yy530; - case 'L': - case 'l': - goto yy531; - case 'M': - case 'm': - goto yy532; - case 'N': - case 'n': - goto yy533; - case 'O': - case 'o': - goto yy534; - case 'P': - case 'p': - goto yy723; - case 'S': - case 's': - goto yy724; - case 'T': - case 't': - goto yy536; - case 'U': - case 'u': - goto yy537; - default: - goto yy522; - } - yy522: - p = marker; - goto yy519; - yy523: - yych = *++p; - if (yych <= '>') { - if (yych <= ' ') { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - if (yych <= 0x1F) - goto yy522; - goto yy555; - } else { - if (yych == '/') - goto yy557; - if (yych <= '=') - goto yy522; - goto yy555; - } - } else { - if (yych <= 'R') { - if (yych == 'A') - goto yy720; - if (yych <= 'Q') - goto yy522; - goto yy719; - } else { - if (yych <= 'a') { - if (yych <= '`') - goto yy522; - goto yy720; - } else { - if (yych == 'r') - goto yy719; - goto yy522; - } - } - } - yy524: - yych = *++p; - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= 'C') - goto yy522; - goto yy708; - } else { - if (yych <= 'Q') - goto yy522; - if (yych <= 'R') - goto yy707; - goto yy706; - } - } else { - if (yych <= 'q') { - if (yych == 'd') - goto yy708; - goto yy522; - } else { - if (yych <= 'r') - goto yy707; - if (yych <= 's') - goto yy706; - goto yy522; - } - } - yy525: - yych = *++p; - if (yych <= 'O') { - if (yych <= 'K') { - if (yych == 'A') - goto yy692; - goto yy522; - } else { - if (yych <= 'L') - goto yy691; - if (yych <= 'N') - goto yy522; - goto yy690; - } - } else { - if (yych <= 'k') { - if (yych == 'a') - goto yy692; - goto yy522; - } else { - if (yych <= 'l') - goto yy691; - if (yych == 'o') - goto yy690; - goto yy522; - } - } - yy526: - yych = *++p; - if (yych <= 'O') { - if (yych <= 'D') { - if (yych == 'A') - goto yy677; - goto yy522; - } else { - if (yych <= 'E') - goto yy676; - if (yych <= 'N') - goto yy522; - goto yy675; - } - } else { - if (yych <= 'd') { - if (yych == 'a') - goto yy677; - goto yy522; - } else { - if (yych <= 'e') - goto yy676; - if (yych == 'o') - goto yy675; - goto yy522; - } - } - yy527: - yych = *++p; - switch (yych) { - case 'D': - case 'L': - case 'T': - case 'd': - case 'l': - case 't': - goto yy554; - case 'E': - case 'e': - goto yy667; - case 'I': - case 'i': - goto yy666; - default: - goto yy522; - } - yy528: - yych = *++p; - if (yych <= 'R') { - if (yych <= 'N') { - if (yych == 'I') - goto yy642; - goto yy522; - } else { - if (yych <= 'O') - goto yy641; - if (yych <= 'Q') - goto yy522; - goto yy640; - } - } else { - if (yych <= 'n') { - if (yych == 'i') - goto yy642; - goto yy522; - } else { - if (yych <= 'o') - goto yy641; - if (yych == 'r') - goto yy640; - goto yy522; - } - } - yy529: - yych = *++p; - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= '0') - goto yy522; - if (yych <= '6') - goto yy554; - goto yy522; - } else { - if (yych <= 'E') - goto yy635; - if (yych == 'R') - goto yy554; - goto yy522; - } - } else { - if (yych <= 'q') { - if (yych <= 'T') - goto yy634; - if (yych == 'e') - goto yy635; - goto yy522; - } else { - if (yych <= 'r') - goto yy554; - if (yych == 't') - goto yy634; - goto yy522; - } - } - yy530: - yych = *++p; - if (yych == 'F') - goto yy630; - if (yych == 'f') - goto yy630; - goto yy522; - yy531: - yych = *++p; - if (yych <= 'I') { - if (yych == 'E') - goto yy625; - if (yych <= 'H') - goto yy522; - goto yy624; - } else { - if (yych <= 'e') { - if (yych <= 'd') - goto yy522; - goto yy625; - } else { - if (yych == 'i') - goto yy624; - goto yy522; - } - } - yy532: - yych = *++p; - if (yych <= 'E') { - if (yych == 'A') - goto yy616; - if (yych <= 'D') - goto yy522; - goto yy615; - } else { - if (yych <= 'a') { - if (yych <= '`') - goto yy522; - goto yy616; - } else { - if (yych == 'e') - goto yy615; - goto yy522; - } - } - yy533: - yych = *++p; - if (yych <= 'O') { - if (yych == 'A') - goto yy609; - if (yych <= 'N') - goto yy522; - goto yy608; - } else { - if (yych <= 'a') { - if (yych <= '`') - goto yy522; - goto yy609; - } else { - if (yych == 'o') - goto yy608; - goto yy522; - } - } - yy534: - yych = *++p; - if (yych <= 'P') { - if (yych == 'L') - goto yy554; - if (yych <= 'O') - goto yy522; - goto yy600; - } else { - if (yych <= 'l') { - if (yych <= 'k') - goto yy522; - goto yy554; - } else { - if (yych == 'p') - goto yy600; - goto yy522; - } - } - yy535: - yych = *++p; - switch (yych) { - case 'C': - case 'c': - goto yy577; - case 'E': - case 'e': - goto yy580; - case 'O': - case 'o': - goto yy579; - case 'T': - case 't': - goto yy576; - case 'U': - case 'u': - goto yy578; - default: - goto yy522; - } - yy536: - yych = *++p; - switch (yych) { - case 'A': - case 'a': - goto yy563; - case 'B': - case 'b': - goto yy562; - case 'D': - case 'd': - goto yy554; - case 'F': - case 'f': - goto yy561; - case 'H': - case 'h': - goto yy560; - case 'I': - case 'i': - goto yy559; - case 'R': - case 'r': - goto yy558; - default: - goto yy522; - } - yy537: - yych = *++p; - if (yych == 'L') - goto yy554; - if (yych == 'l') - goto yy554; - goto yy522; - yy538: - yych = *++p; - if (yych <= '@') { - if (yych == '-') - goto yy541; - goto yy522; - } else { - if (yych <= 'Z') - goto yy542; - if (yych <= '[') - goto yy544; - goto yy522; - } - yy539: - ++p; - { return 3; } - yy541: - yych = *++p; - if (yych == '-') - goto yy552; - goto yy522; - yy542: - ++p; - { return 4; } - yy544: - yych = *++p; - if (yych == 'C') - goto yy545; - if (yych != 'c') - goto yy522; - yy545: - yych = *++p; - if (yych == 'D') - goto yy546; - if (yych != 'd') - goto yy522; - yy546: - yych = *++p; - if (yych == 'A') - goto yy547; - if (yych != 'a') - goto yy522; - yy547: - yych = *++p; - if (yych == 'T') - goto yy548; - if (yych != 't') - goto yy522; - yy548: - yych = *++p; - if (yych == 'A') - goto yy549; - if (yych != 'a') - goto yy522; - yy549: - yych = *++p; - if (yych != '[') - goto yy522; - ++p; - { return 5; } - yy552: - ++p; - { return 2; } - yy554: - yych = *++p; - if (yych <= ' ') { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - if (yych <= 0x1F) - goto yy522; - } else { - if (yych <= '/') { - if (yych <= '.') - goto yy522; - goto yy557; - } else { - if (yych != '>') - goto yy522; - } - } - yy555: - ++p; - { return 6; } - yy557: - yych = *++p; - if (yych == '>') - goto yy555; - goto yy522; - yy558: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= '@') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'A') - goto yy574; - if (yych == 'a') - goto yy574; - goto yy522; - } - } - yy559: - yych = *++p; - if (yych == 'T') - goto yy572; - if (yych == 't') - goto yy572; - goto yy522; - yy560: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'D') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'E') - goto yy570; - if (yych == 'e') - goto yy570; - goto yy522; - } - } - yy561: - yych = *++p; - if (yych == 'O') - goto yy568; - if (yych == 'o') - goto yy568; - goto yy522; - yy562: - yych = *++p; - if (yych == 'O') - goto yy566; - if (yych == 'o') - goto yy566; - goto yy522; - yy563: - yych = *++p; - if (yych == 'B') - goto yy564; - if (yych != 'b') - goto yy522; - yy564: - yych = *++p; - if (yych == 'L') - goto yy565; - if (yych != 'l') - goto yy522; - yy565: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy566: - yych = *++p; - if (yych == 'D') - goto yy567; - if (yych != 'd') - goto yy522; - yy567: - yych = *++p; - if (yych == 'Y') - goto yy554; - if (yych == 'y') - goto yy554; - goto yy522; - yy568: - yych = *++p; - if (yych == 'O') - goto yy569; - if (yych != 'o') - goto yy522; - yy569: - yych = *++p; - if (yych == 'T') - goto yy554; - if (yych == 't') - goto yy554; - goto yy522; - yy570: - yych = *++p; - if (yych == 'A') - goto yy571; - if (yych != 'a') - goto yy522; - yy571: - yych = *++p; - if (yych == 'D') - goto yy554; - if (yych == 'd') - goto yy554; - goto yy522; - yy572: - yych = *++p; - if (yych == 'L') - goto yy573; - if (yych != 'l') - goto yy522; - yy573: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy574: - yych = *++p; - if (yych == 'C') - goto yy575; - if (yych != 'c') - goto yy522; - yy575: - yych = *++p; - if (yych == 'K') - goto yy554; - if (yych == 'k') - goto yy554; - goto yy522; - yy576: - yych = *++p; - if (yych == 'Y') - goto yy598; - if (yych == 'y') - goto yy598; - goto yy522; - yy577: - yych = *++p; - if (yych == 'R') - goto yy592; - if (yych == 'r') - goto yy592; - goto yy522; - yy578: - yych = *++p; - if (yych == 'M') - goto yy588; - if (yych == 'm') - goto yy588; - goto yy522; - yy579: - yych = *++p; - if (yych == 'U') - goto yy585; - if (yych == 'u') - goto yy585; - goto yy522; - yy580: - yych = *++p; - if (yych == 'C') - goto yy581; - if (yych != 'c') - goto yy522; - yy581: - yych = *++p; - if (yych == 'T') - goto yy582; - if (yych != 't') - goto yy522; - yy582: - yych = *++p; - if (yych == 'I') - goto yy583; - if (yych != 'i') - goto yy522; - yy583: - yych = *++p; - if (yych == 'O') - goto yy584; - if (yych != 'o') - goto yy522; - yy584: - yych = *++p; - if (yych == 'N') - goto yy554; - if (yych == 'n') - goto yy554; - goto yy522; - yy585: - yych = *++p; - if (yych == 'R') - goto yy586; - if (yych != 'r') - goto yy522; - yy586: - yych = *++p; - if (yych == 'C') - goto yy587; - if (yych != 'c') - goto yy522; - yy587: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy588: - yych = *++p; - if (yych == 'M') - goto yy589; - if (yych != 'm') - goto yy522; - yy589: - yych = *++p; - if (yych == 'A') - goto yy590; - if (yych != 'a') - goto yy522; - yy590: - yych = *++p; - if (yych == 'R') - goto yy591; - if (yych != 'r') - goto yy522; - yy591: - yych = *++p; - if (yych == 'Y') - goto yy554; - if (yych == 'y') - goto yy554; - goto yy522; - yy592: - yych = *++p; - if (yych == 'I') - goto yy593; - if (yych != 'i') - goto yy522; - yy593: - yych = *++p; - if (yych == 'P') - goto yy594; - if (yych != 'p') - goto yy522; - yy594: - yych = *++p; - if (yych == 'T') - goto yy595; - if (yych != 't') - goto yy522; - yy595: - yych = *++p; - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych >= 0x0E) - goto yy522; - } else { - if (yych <= ' ') - goto yy596; - if (yych != '>') - goto yy522; - } - yy596: - ++p; - { return 1; } - yy598: - yych = *++p; - if (yych == 'L') - goto yy599; - if (yych != 'l') - goto yy522; - yy599: - yych = *++p; - if (yych == 'E') - goto yy595; - if (yych == 'e') - goto yy595; - goto yy522; - yy600: - yych = *++p; - if (yych == 'T') - goto yy601; - if (yych != 't') - goto yy522; - yy601: - yych = *++p; - if (yych <= 'I') { - if (yych == 'G') - goto yy603; - if (yych <= 'H') - goto yy522; - } else { - if (yych <= 'g') { - if (yych <= 'f') - goto yy522; - goto yy603; - } else { - if (yych != 'i') - goto yy522; - } - } - yych = *++p; - if (yych == 'O') - goto yy607; - if (yych == 'o') - goto yy607; - goto yy522; - yy603: - yych = *++p; - if (yych == 'R') - goto yy604; - if (yych != 'r') - goto yy522; - yy604: - yych = *++p; - if (yych == 'O') - goto yy605; - if (yych != 'o') - goto yy522; - yy605: - yych = *++p; - if (yych == 'U') - goto yy606; - if (yych != 'u') - goto yy522; - yy606: - yych = *++p; - if (yych == 'P') - goto yy554; - if (yych == 'p') - goto yy554; - goto yy522; - yy607: - yych = *++p; - if (yych == 'N') - goto yy554; - if (yych == 'n') - goto yy554; - goto yy522; - yy608: - yych = *++p; - if (yych == 'F') - goto yy610; - if (yych == 'f') - goto yy610; - goto yy522; - yy609: - yych = *++p; - if (yych == 'V') - goto yy554; - if (yych == 'v') - goto yy554; - goto yy522; - yy610: - yych = *++p; - if (yych == 'R') - goto yy611; - if (yych != 'r') - goto yy522; - yy611: - yych = *++p; - if (yych == 'A') - goto yy612; - if (yych != 'a') - goto yy522; - yy612: - yych = *++p; - if (yych == 'M') - goto yy613; - if (yych != 'm') - goto yy522; - yy613: - yych = *++p; - if (yych == 'E') - goto yy614; - if (yych != 'e') - goto yy522; - yy614: - yych = *++p; - if (yych == 'S') - goto yy554; - if (yych == 's') - goto yy554; - goto yy522; - yy615: - yych = *++p; - if (yych <= 'T') { - if (yych == 'N') - goto yy618; - if (yych <= 'S') - goto yy522; - goto yy619; - } else { - if (yych <= 'n') { - if (yych <= 'm') - goto yy522; - goto yy618; - } else { - if (yych == 't') - goto yy619; - goto yy522; - } - } - yy616: - yych = *++p; - if (yych == 'I') - goto yy617; - if (yych != 'i') - goto yy522; - yy617: - yych = *++p; - if (yych == 'N') - goto yy554; - if (yych == 'n') - goto yy554; - goto yy522; - yy618: - yych = *++p; - if (yych == 'U') - goto yy620; - if (yych == 'u') - goto yy620; - goto yy522; - yy619: - yych = *++p; - if (yych == 'A') - goto yy554; - if (yych == 'a') - goto yy554; - goto yy522; - yy620: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'H') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'I') - goto yy621; - if (yych != 'i') - goto yy522; - } - } - yy621: - yych = *++p; - if (yych == 'T') - goto yy622; - if (yych != 't') - goto yy522; - yy622: - yych = *++p; - if (yych == 'E') - goto yy623; - if (yych != 'e') - goto yy522; - yy623: - yych = *++p; - if (yych == 'M') - goto yy554; - if (yych == 'm') - goto yy554; - goto yy522; - yy624: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'M') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'N') - goto yy629; - if (yych == 'n') - goto yy629; - goto yy522; - } - } - yy625: - yych = *++p; - if (yych == 'G') - goto yy626; - if (yych != 'g') - goto yy522; - yy626: - yych = *++p; - if (yych == 'E') - goto yy627; - if (yych != 'e') - goto yy522; - yy627: - yych = *++p; - if (yych == 'N') - goto yy628; - if (yych != 'n') - goto yy522; - yy628: - yych = *++p; - if (yych == 'D') - goto yy554; - if (yych == 'd') - goto yy554; - goto yy522; - yy629: - yych = *++p; - if (yych == 'K') - goto yy554; - if (yych == 'k') - goto yy554; - goto yy522; - yy630: - yych = *++p; - if (yych == 'R') - goto yy631; - if (yych != 'r') - goto yy522; - yy631: - yych = *++p; - if (yych == 'A') - goto yy632; - if (yych != 'a') - goto yy522; - yy632: - yych = *++p; - if (yych == 'M') - goto yy633; - if (yych != 'm') - goto yy522; - yy633: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy634: - yych = *++p; - if (yych == 'M') - goto yy639; - if (yych == 'm') - goto yy639; - goto yy522; - yy635: - yych = *++p; - if (yych == 'A') - goto yy636; - if (yych != 'a') - goto yy522; - yy636: - yych = *++p; - if (yych == 'D') - goto yy637; - if (yych != 'd') - goto yy522; - yy637: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'D') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'E') - goto yy638; - if (yych != 'e') - goto yy522; - } - } - yy638: - yych = *++p; - if (yych == 'R') - goto yy554; - if (yych == 'r') - goto yy554; - goto yy522; - yy639: - yych = *++p; - if (yych == 'L') - goto yy554; - if (yych == 'l') - goto yy554; - goto yy522; - yy640: - yych = *++p; - if (yych == 'A') - goto yy661; - if (yych == 'a') - goto yy661; - goto yy522; - yy641: - yych = *++p; - if (yych <= 'R') { - if (yych == 'O') - goto yy657; - if (yych <= 'Q') - goto yy522; - goto yy658; - } else { - if (yych <= 'o') { - if (yych <= 'n') - goto yy522; - goto yy657; - } else { - if (yych == 'r') - goto yy658; - goto yy522; - } - } - yy642: - yych = *++p; - if (yych <= 'G') { - if (yych == 'E') - goto yy643; - if (yych <= 'F') - goto yy522; - goto yy644; - } else { - if (yych <= 'e') { - if (yych <= 'd') - goto yy522; - } else { - if (yych == 'g') - goto yy644; - goto yy522; - } - } - yy643: - yych = *++p; - if (yych == 'L') - goto yy653; - if (yych == 'l') - goto yy653; - goto yy522; - yy644: - yych = *++p; - if (yych <= 'U') { - if (yych == 'C') - goto yy646; - if (yych <= 'T') - goto yy522; - } else { - if (yych <= 'c') { - if (yych <= 'b') - goto yy522; - goto yy646; - } else { - if (yych != 'u') - goto yy522; - } - } - yych = *++p; - if (yych == 'R') - goto yy652; - if (yych == 'r') - goto yy652; - goto yy522; - yy646: - yych = *++p; - if (yych == 'A') - goto yy647; - if (yych != 'a') - goto yy522; - yy647: - yych = *++p; - if (yych == 'P') - goto yy648; - if (yych != 'p') - goto yy522; - yy648: - yych = *++p; - if (yych == 'T') - goto yy649; - if (yych != 't') - goto yy522; - yy649: - yych = *++p; - if (yych == 'I') - goto yy650; - if (yych != 'i') - goto yy522; - yy650: - yych = *++p; - if (yych == 'O') - goto yy651; - if (yych != 'o') - goto yy522; - yy651: - yych = *++p; - if (yych == 'N') - goto yy554; - if (yych == 'n') - goto yy554; - goto yy522; - yy652: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy653: - yych = *++p; - if (yych == 'D') - goto yy654; - if (yych != 'd') - goto yy522; - yy654: - yych = *++p; - if (yych == 'S') - goto yy655; - if (yych != 's') - goto yy522; - yy655: - yych = *++p; - if (yych == 'E') - goto yy656; - if (yych != 'e') - goto yy522; - yy656: - yych = *++p; - if (yych == 'T') - goto yy554; - if (yych == 't') - goto yy554; - goto yy522; - yy657: - yych = *++p; - if (yych == 'T') - goto yy659; - if (yych == 't') - goto yy659; - goto yy522; - yy658: - yych = *++p; - if (yych == 'M') - goto yy554; - if (yych == 'm') - goto yy554; - goto yy522; - yy659: - yych = *++p; - if (yych == 'E') - goto yy660; - if (yych != 'e') - goto yy522; - yy660: - yych = *++p; - if (yych == 'R') - goto yy554; - if (yych == 'r') - goto yy554; - goto yy522; - yy661: - yych = *++p; - if (yych == 'M') - goto yy662; - if (yych != 'm') - goto yy522; - yy662: - yych = *++p; - if (yych == 'E') - goto yy663; - if (yych != 'e') - goto yy522; - yy663: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'R') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'S') - goto yy664; - if (yych != 's') - goto yy522; - } - } - yy664: - yych = *++p; - if (yych == 'E') - goto yy665; - if (yych != 'e') - goto yy522; - yy665: - yych = *++p; - if (yych == 'T') - goto yy554; - if (yych == 't') - goto yy554; - goto yy522; - yy666: - yych = *++p; - if (yych <= 'V') { - if (yych <= 'Q') { - if (yych == 'A') - goto yy672; - goto yy522; - } else { - if (yych <= 'R') - goto yy554; - if (yych <= 'U') - goto yy522; - goto yy554; - } - } else { - if (yych <= 'q') { - if (yych == 'a') - goto yy672; - goto yy522; - } else { - if (yych <= 'r') - goto yy554; - if (yych == 'v') - goto yy554; - goto yy522; - } - } - yy667: - yych = *++p; - if (yych == 'T') - goto yy668; - if (yych != 't') - goto yy522; - yy668: - yych = *++p; - if (yych == 'A') - goto yy669; - if (yych != 'a') - goto yy522; - yy669: - yych = *++p; - if (yych == 'I') - goto yy670; - if (yych != 'i') - goto yy522; - yy670: - yych = *++p; - if (yych == 'L') - goto yy671; - if (yych != 'l') - goto yy522; - yy671: - yych = *++p; - if (yych == 'S') - goto yy554; - if (yych == 's') - goto yy554; - goto yy522; - yy672: - yych = *++p; - if (yych == 'L') - goto yy673; - if (yych != 'l') - goto yy522; - yy673: - yych = *++p; - if (yych == 'O') - goto yy674; - if (yych != 'o') - goto yy522; - yy674: - yych = *++p; - if (yych == 'G') - goto yy554; - if (yych == 'g') - goto yy554; - goto yy522; - yy675: - yych = *++p; - if (yych == 'L') - goto yy685; - if (yych == 'l') - goto yy685; - goto yy522; - yy676: - yych = *++p; - if (yych == 'N') - goto yy682; - if (yych == 'n') - goto yy682; - goto yy522; - yy677: - yych = *++p; - if (yych == 'P') - goto yy678; - if (yych != 'p') - goto yy522; - yy678: - yych = *++p; - if (yych == 'T') - goto yy679; - if (yych != 't') - goto yy522; - yy679: - yych = *++p; - if (yych == 'I') - goto yy680; - if (yych != 'i') - goto yy522; - yy680: - yych = *++p; - if (yych == 'O') - goto yy681; - if (yych != 'o') - goto yy522; - yy681: - yych = *++p; - if (yych == 'N') - goto yy554; - if (yych == 'n') - goto yy554; - goto yy522; - yy682: - yych = *++p; - if (yych == 'T') - goto yy683; - if (yych != 't') - goto yy522; - yy683: - yych = *++p; - if (yych == 'E') - goto yy684; - if (yych != 'e') - goto yy522; - yy684: - yych = *++p; - if (yych == 'R') - goto yy554; - if (yych == 'r') - goto yy554; - goto yy522; - yy685: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'F') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'G') - goto yy686; - if (yych != 'g') - goto yy522; - } - } - yy686: - yych = *++p; - if (yych == 'R') - goto yy687; - if (yych != 'r') - goto yy522; - yy687: - yych = *++p; - if (yych == 'O') - goto yy688; - if (yych != 'o') - goto yy522; - yy688: - yych = *++p; - if (yych == 'U') - goto yy689; - if (yych != 'u') - goto yy522; - yy689: - yych = *++p; - if (yych == 'P') - goto yy554; - if (yych == 'p') - goto yy554; - goto yy522; - yy690: - yych = *++p; - if (yych == 'D') - goto yy705; - if (yych == 'd') - goto yy705; - goto yy522; - yy691: - yych = *++p; - if (yych == 'O') - goto yy698; - if (yych == 'o') - goto yy698; - goto yy522; - yy692: - yych = *++p; - if (yych == 'S') - goto yy693; - if (yych != 's') - goto yy522; - yy693: - yych = *++p; - if (yych == 'E') - goto yy694; - if (yych != 'e') - goto yy522; - yy694: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= 'E') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'F') - goto yy695; - if (yych != 'f') - goto yy522; - } - } - yy695: - yych = *++p; - if (yych == 'O') - goto yy696; - if (yych != 'o') - goto yy522; - yy696: - yych = *++p; - if (yych == 'N') - goto yy697; - if (yych != 'n') - goto yy522; - yy697: - yych = *++p; - if (yych == 'T') - goto yy554; - if (yych == 't') - goto yy554; - goto yy522; - yy698: - yych = *++p; - if (yych == 'C') - goto yy699; - if (yych != 'c') - goto yy522; - yy699: - yych = *++p; - if (yych == 'K') - goto yy700; - if (yych != 'k') - goto yy522; - yy700: - yych = *++p; - if (yych == 'Q') - goto yy701; - if (yych != 'q') - goto yy522; - yy701: - yych = *++p; - if (yych == 'U') - goto yy702; - if (yych != 'u') - goto yy522; - yy702: - yych = *++p; - if (yych == 'O') - goto yy703; - if (yych != 'o') - goto yy522; - yy703: - yych = *++p; - if (yych == 'T') - goto yy704; - if (yych != 't') - goto yy522; - yy704: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy705: - yych = *++p; - if (yych == 'Y') - goto yy554; - if (yych == 'y') - goto yy554; - goto yy522; - yy706: - yych = *++p; - if (yych == 'I') - goto yy717; - if (yych == 'i') - goto yy717; - goto yy522; - yy707: - yych = *++p; - if (yych == 'T') - goto yy713; - if (yych == 't') - goto yy713; - goto yy522; - yy708: - yych = *++p; - if (yych == 'D') - goto yy709; - if (yych != 'd') - goto yy522; - yy709: - yych = *++p; - if (yych == 'R') - goto yy710; - if (yych != 'r') - goto yy522; - yy710: - yych = *++p; - if (yych == 'E') - goto yy711; - if (yych != 'e') - goto yy522; - yy711: - yych = *++p; - if (yych == 'S') - goto yy712; - if (yych != 's') - goto yy522; - yy712: - yych = *++p; - if (yych == 'S') - goto yy554; - if (yych == 's') - goto yy554; - goto yy522; - yy713: - yych = *++p; - if (yych == 'I') - goto yy714; - if (yych != 'i') - goto yy522; - yy714: - yych = *++p; - if (yych == 'C') - goto yy715; - if (yych != 'c') - goto yy522; - yy715: - yych = *++p; - if (yych == 'L') - goto yy716; - if (yych != 'l') - goto yy522; - yy716: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy717: - yych = *++p; - if (yych == 'D') - goto yy718; - if (yych != 'd') - goto yy522; - yy718: - yych = *++p; - if (yych == 'E') - goto yy554; - if (yych == 'e') - goto yy554; - goto yy522; - yy719: - yych = *++p; - if (yych == 'E') - goto yy595; - if (yych == 'e') - goto yy595; - goto yy522; - yy720: - yych = *++p; - if (yych == 'R') - goto yy721; - if (yych != 'r') - goto yy522; - yy721: - yych = *++p; - if (yych == 'A') - goto yy722; - if (yych != 'a') - goto yy522; - yy722: - yych = *++p; - if (yych == 'M') - goto yy554; - if (yych == 'm') - goto yy554; - goto yy522; - yy723: - yych = *++p; - if (yych <= '/') { - if (yych <= 0x1F) { - if (yych <= 0x08) - goto yy522; - if (yych <= '\r') - goto yy555; - goto yy522; - } else { - if (yych <= ' ') - goto yy555; - if (yych <= '.') - goto yy522; - goto yy557; - } - } else { - if (yych <= '@') { - if (yych == '>') - goto yy555; - goto yy522; - } else { - if (yych <= 'A') - goto yy720; - if (yych == 'a') - goto yy720; - goto yy522; - } - } - yy724: - ++p; - if ((yych = *p) <= 'U') { - if (yych <= 'N') { - if (yych == 'E') - goto yy580; - goto yy522; - } else { - if (yych <= 'O') - goto yy579; - if (yych <= 'T') - goto yy522; - goto yy578; - } - } else { - if (yych <= 'n') { - if (yych == 'e') - goto yy580; - goto yy522; - } else { - if (yych <= 'o') - goto yy579; - if (yych == 'u') - goto yy578; - goto yy522; - } - } - } +{ + unsigned char yych; + yych = *p; + if (yych == '<') goto yy356; + ++p; +yy355: + { return 0; } +yy356: + yych = *(marker = ++p); + switch (yych) { + case '!': goto yy357; + case '/': goto yy359; + case '?': goto yy360; + case 'A': + case 'a': goto yy362; + case 'B': + case 'b': goto yy363; + case 'C': + case 'c': goto yy364; + case 'D': + case 'd': goto yy365; + case 'F': + case 'f': goto yy366; + case 'H': + case 'h': goto yy367; + case 'I': + case 'i': goto yy368; + case 'L': + case 'l': goto yy369; + case 'M': + case 'm': goto yy370; + case 'N': + case 'n': goto yy371; + case 'O': + case 'o': goto yy372; + case 'P': + case 'p': goto yy373; + case 'S': + case 's': goto yy374; + case 'T': + case 't': goto yy375; + case 'U': + case 'u': goto yy376; + default: goto yy355; + } +yy357: + yych = *++p; + if (yych <= '@') { + if (yych == '-') goto yy377; + } else { + if (yych <= 'Z') goto yy378; + if (yych <= '[') goto yy380; + } +yy358: + p = marker; + goto yy355; +yy359: + yych = *++p; + switch (yych) { + case 'A': + case 'a': goto yy362; + case 'B': + case 'b': goto yy363; + case 'C': + case 'c': goto yy364; + case 'D': + case 'd': goto yy365; + case 'F': + case 'f': goto yy366; + case 'H': + case 'h': goto yy367; + case 'I': + case 'i': goto yy368; + case 'L': + case 'l': goto yy369; + case 'M': + case 'm': goto yy370; + case 'N': + case 'n': goto yy371; + case 'O': + case 'o': goto yy372; + case 'P': + case 'p': goto yy381; + case 'S': + case 's': goto yy382; + case 'T': + case 't': goto yy375; + case 'U': + case 'u': goto yy376; + default: goto yy358; + } +yy360: + ++p; + { return 3; } +yy362: + yych = *++p; + if (yych <= 'S') { + if (yych <= 'D') { + if (yych <= 'C') goto yy358; + goto yy383; + } else { + if (yych <= 'Q') goto yy358; + if (yych <= 'R') goto yy384; + goto yy385; + } + } else { + if (yych <= 'q') { + if (yych == 'd') goto yy383; + goto yy358; + } else { + if (yych <= 'r') goto yy384; + if (yych <= 's') goto yy385; + goto yy358; + } + } +yy363: + yych = *++p; + if (yych <= 'O') { + if (yych <= 'K') { + if (yych == 'A') goto yy386; + goto yy358; + } else { + if (yych <= 'L') goto yy387; + if (yych <= 'N') goto yy358; + goto yy388; + } + } else { + if (yych <= 'k') { + if (yych == 'a') goto yy386; + goto yy358; + } else { + if (yych <= 'l') goto yy387; + if (yych == 'o') goto yy388; + goto yy358; + } + } +yy364: + yych = *++p; + if (yych <= 'O') { + if (yych <= 'D') { + if (yych == 'A') goto yy389; + goto yy358; + } else { + if (yych <= 'E') goto yy390; + if (yych <= 'N') goto yy358; + goto yy391; + } + } else { + if (yych <= 'd') { + if (yych == 'a') goto yy389; + goto yy358; + } else { + if (yych <= 'e') goto yy390; + if (yych == 'o') goto yy391; + goto yy358; + } + } +yy365: + yych = *++p; + switch (yych) { + case 'D': + case 'L': + case 'T': + case 'd': + case 'l': + case 't': goto yy392; + case 'E': + case 'e': goto yy393; + case 'I': + case 'i': goto yy394; + default: goto yy358; + } +yy366: + yych = *++p; + if (yych <= 'R') { + if (yych <= 'N') { + if (yych == 'I') goto yy395; + goto yy358; + } else { + if (yych <= 'O') goto yy396; + if (yych <= 'Q') goto yy358; + goto yy397; + } + } else { + if (yych <= 'n') { + if (yych == 'i') goto yy395; + goto yy358; + } else { + if (yych <= 'o') goto yy396; + if (yych == 'r') goto yy397; + goto yy358; + } + } +yy367: + yych = *++p; + if (yych <= 'S') { + if (yych <= 'D') { + if (yych <= '0') goto yy358; + if (yych <= '6') goto yy392; + goto yy358; + } else { + if (yych <= 'E') goto yy398; + if (yych == 'R') goto yy392; + goto yy358; + } + } else { + if (yych <= 'q') { + if (yych <= 'T') goto yy399; + if (yych == 'e') goto yy398; + goto yy358; + } else { + if (yych <= 'r') goto yy392; + if (yych == 't') goto yy399; + goto yy358; + } + } +yy368: + yych = *++p; + if (yych == 'F') goto yy400; + if (yych == 'f') goto yy400; + goto yy358; +yy369: + yych = *++p; + if (yych <= 'I') { + if (yych == 'E') goto yy401; + if (yych <= 'H') goto yy358; + goto yy402; + } else { + if (yych <= 'e') { + if (yych <= 'd') goto yy358; + goto yy401; + } else { + if (yych == 'i') goto yy402; + goto yy358; + } + } +yy370: + yych = *++p; + if (yych <= 'E') { + if (yych == 'A') goto yy403; + if (yych <= 'D') goto yy358; + goto yy404; + } else { + if (yych <= 'a') { + if (yych <= '`') goto yy358; + goto yy403; + } else { + if (yych == 'e') goto yy404; + goto yy358; + } + } +yy371: + yych = *++p; + if (yych <= 'O') { + if (yych == 'A') goto yy405; + if (yych <= 'N') goto yy358; + goto yy406; + } else { + if (yych <= 'a') { + if (yych <= '`') goto yy358; + goto yy405; + } else { + if (yych == 'o') goto yy406; + goto yy358; + } + } +yy372: + yych = *++p; + if (yych <= 'P') { + if (yych == 'L') goto yy392; + if (yych <= 'O') goto yy358; + goto yy407; + } else { + if (yych <= 'l') { + if (yych <= 'k') goto yy358; + goto yy392; + } else { + if (yych == 'p') goto yy407; + goto yy358; + } + } +yy373: + yych = *++p; + if (yych <= '>') { + if (yych <= ' ') { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + if (yych <= 0x1F) goto yy358; + goto yy408; + } else { + if (yych == '/') goto yy410; + if (yych <= '=') goto yy358; + goto yy408; + } + } else { + if (yych <= 'R') { + if (yych == 'A') goto yy411; + if (yych <= 'Q') goto yy358; + goto yy412; + } else { + if (yych <= 'a') { + if (yych <= '`') goto yy358; + goto yy411; + } else { + if (yych == 'r') goto yy412; + goto yy358; + } + } + } +yy374: + yych = *++p; + switch (yych) { + case 'C': + case 'c': goto yy413; + case 'E': + case 'e': goto yy414; + case 'O': + case 'o': goto yy415; + case 'T': + case 't': goto yy416; + case 'U': + case 'u': goto yy417; + default: goto yy358; + } +yy375: + yych = *++p; + switch (yych) { + case 'A': + case 'a': goto yy418; + case 'B': + case 'b': goto yy419; + case 'D': + case 'd': goto yy392; + case 'F': + case 'f': goto yy420; + case 'H': + case 'h': goto yy421; + case 'I': + case 'i': goto yy422; + case 'R': + case 'r': goto yy423; + default: goto yy358; + } +yy376: + yych = *++p; + if (yych == 'L') goto yy392; + if (yych == 'l') goto yy392; + goto yy358; +yy377: + yych = *++p; + if (yych == '-') goto yy424; + goto yy358; +yy378: + ++p; + { return 4; } +yy380: + yych = *++p; + if (yych == 'C') goto yy426; + if (yych == 'c') goto yy426; + goto yy358; +yy381: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= '@') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'A') goto yy411; + if (yych == 'a') goto yy411; + goto yy358; + } + } +yy382: + yych = *++p; + if (yych <= 'U') { + if (yych <= 'N') { + if (yych == 'E') goto yy414; + goto yy358; + } else { + if (yych <= 'O') goto yy415; + if (yych <= 'T') goto yy358; + goto yy417; + } + } else { + if (yych <= 'n') { + if (yych == 'e') goto yy414; + goto yy358; + } else { + if (yych <= 'o') goto yy415; + if (yych == 'u') goto yy417; + goto yy358; + } + } +yy383: + yych = *++p; + if (yych == 'D') goto yy427; + if (yych == 'd') goto yy427; + goto yy358; +yy384: + yych = *++p; + if (yych == 'T') goto yy428; + if (yych == 't') goto yy428; + goto yy358; +yy385: + yych = *++p; + if (yych == 'I') goto yy429; + if (yych == 'i') goto yy429; + goto yy358; +yy386: + yych = *++p; + if (yych == 'S') goto yy430; + if (yych == 's') goto yy430; + goto yy358; +yy387: + yych = *++p; + if (yych == 'O') goto yy431; + if (yych == 'o') goto yy431; + goto yy358; +yy388: + yych = *++p; + if (yych == 'D') goto yy432; + if (yych == 'd') goto yy432; + goto yy358; +yy389: + yych = *++p; + if (yych == 'P') goto yy433; + if (yych == 'p') goto yy433; + goto yy358; +yy390: + yych = *++p; + if (yych == 'N') goto yy434; + if (yych == 'n') goto yy434; + goto yy358; +yy391: + yych = *++p; + if (yych == 'L') goto yy435; + if (yych == 'l') goto yy435; + goto yy358; +yy392: + yych = *++p; + if (yych <= ' ') { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + if (yych <= 0x1F) goto yy358; + goto yy408; + } else { + if (yych <= '/') { + if (yych <= '.') goto yy358; + goto yy410; + } else { + if (yych == '>') goto yy408; + goto yy358; + } + } +yy393: + yych = *++p; + if (yych == 'T') goto yy436; + if (yych == 't') goto yy436; + goto yy358; +yy394: + yych = *++p; + if (yych <= 'V') { + if (yych <= 'Q') { + if (yych == 'A') goto yy437; + goto yy358; + } else { + if (yych <= 'R') goto yy392; + if (yych <= 'U') goto yy358; + goto yy392; + } + } else { + if (yych <= 'q') { + if (yych == 'a') goto yy437; + goto yy358; + } else { + if (yych <= 'r') goto yy392; + if (yych == 'v') goto yy392; + goto yy358; + } + } +yy395: + yych = *++p; + if (yych <= 'G') { + if (yych == 'E') goto yy438; + if (yych <= 'F') goto yy358; + goto yy439; + } else { + if (yych <= 'e') { + if (yych <= 'd') goto yy358; + goto yy438; + } else { + if (yych == 'g') goto yy439; + goto yy358; + } + } +yy396: + yych = *++p; + if (yych <= 'R') { + if (yych == 'O') goto yy434; + if (yych <= 'Q') goto yy358; + goto yy440; + } else { + if (yych <= 'o') { + if (yych <= 'n') goto yy358; + goto yy434; + } else { + if (yych == 'r') goto yy440; + goto yy358; + } + } +yy397: + yych = *++p; + if (yych == 'A') goto yy441; + if (yych == 'a') goto yy441; + goto yy358; +yy398: + yych = *++p; + if (yych == 'A') goto yy442; + if (yych == 'a') goto yy442; + goto yy358; +yy399: + yych = *++p; + if (yych == 'M') goto yy376; + if (yych == 'm') goto yy376; + goto yy358; +yy400: + yych = *++p; + if (yych == 'R') goto yy443; + if (yych == 'r') goto yy443; + goto yy358; +yy401: + yych = *++p; + if (yych == 'G') goto yy444; + if (yych == 'g') goto yy444; + goto yy358; +yy402: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'M') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'N') goto yy445; + if (yych == 'n') goto yy445; + goto yy358; + } + } +yy403: + yych = *++p; + if (yych == 'I') goto yy446; + if (yych == 'i') goto yy446; + goto yy358; +yy404: + yych = *++p; + if (yych == 'N') goto yy447; + if (yych == 'n') goto yy447; + goto yy358; +yy405: + yych = *++p; + if (yych == 'V') goto yy392; + if (yych == 'v') goto yy392; + goto yy358; +yy406: + yych = *++p; + if (yych == 'F') goto yy448; + if (yych == 'f') goto yy448; + goto yy358; +yy407: + yych = *++p; + if (yych == 'T') goto yy449; + if (yych == 't') goto yy449; + goto yy358; +yy408: + ++p; + { return 6; } +yy410: + yych = *++p; + if (yych == '>') goto yy408; + goto yy358; +yy411: + yych = *++p; + if (yych == 'R') goto yy450; + if (yych == 'r') goto yy450; + goto yy358; +yy412: + yych = *++p; + if (yych == 'E') goto yy451; + if (yych == 'e') goto yy451; + goto yy358; +yy413: + yych = *++p; + if (yych == 'R') goto yy452; + if (yych == 'r') goto yy452; + goto yy358; +yy414: + yych = *++p; + if (yych == 'C') goto yy433; + if (yych == 'c') goto yy433; + goto yy358; +yy415: + yych = *++p; + if (yych == 'U') goto yy453; + if (yych == 'u') goto yy453; + goto yy358; +yy416: + yych = *++p; + if (yych == 'Y') goto yy454; + if (yych == 'y') goto yy454; + goto yy358; +yy417: + yych = *++p; + if (yych == 'M') goto yy455; + if (yych == 'm') goto yy455; + goto yy358; +yy418: + yych = *++p; + if (yych == 'B') goto yy456; + if (yych == 'b') goto yy456; + goto yy358; +yy419: + yych = *++p; + if (yych == 'O') goto yy388; + if (yych == 'o') goto yy388; + goto yy358; +yy420: + yych = *++p; + if (yych == 'O') goto yy457; + if (yych == 'o') goto yy457; + goto yy358; +yy421: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'D') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'E') goto yy458; + if (yych == 'e') goto yy458; + goto yy358; + } + } +yy422: + yych = *++p; + if (yych == 'T') goto yy456; + if (yych == 't') goto yy456; + goto yy358; +yy423: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= '@') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'A') goto yy459; + if (yych == 'a') goto yy459; + goto yy358; + } + } +yy424: + ++p; + { return 2; } +yy426: + yych = *++p; + if (yych == 'D') goto yy460; + if (yych == 'd') goto yy460; + goto yy358; +yy427: + yych = *++p; + if (yych == 'R') goto yy461; + if (yych == 'r') goto yy461; + goto yy358; +yy428: + yych = *++p; + if (yych == 'I') goto yy462; + if (yych == 'i') goto yy462; + goto yy358; +yy429: + yych = *++p; + if (yych == 'D') goto yy463; + if (yych == 'd') goto yy463; + goto yy358; +yy430: + yych = *++p; + if (yych == 'E') goto yy464; + if (yych == 'e') goto yy464; + goto yy358; +yy431: + yych = *++p; + if (yych == 'C') goto yy465; + if (yych == 'c') goto yy465; + goto yy358; +yy432: + yych = *++p; + if (yych == 'Y') goto yy392; + if (yych == 'y') goto yy392; + goto yy358; +yy433: + yych = *++p; + if (yych == 'T') goto yy466; + if (yych == 't') goto yy466; + goto yy358; +yy434: + yych = *++p; + if (yych == 'T') goto yy467; + if (yych == 't') goto yy467; + goto yy358; +yy435: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'F') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'G') goto yy468; + if (yych == 'g') goto yy468; + goto yy358; + } + } +yy436: + yych = *++p; + if (yych == 'A') goto yy469; + if (yych == 'a') goto yy469; + goto yy358; +yy437: + yych = *++p; + if (yych == 'L') goto yy470; + if (yych == 'l') goto yy470; + goto yy358; +yy438: + yych = *++p; + if (yych == 'L') goto yy471; + if (yych == 'l') goto yy471; + goto yy358; +yy439: + yych = *++p; + if (yych <= 'U') { + if (yych == 'C') goto yy472; + if (yych <= 'T') goto yy358; + goto yy473; + } else { + if (yych <= 'c') { + if (yych <= 'b') goto yy358; + goto yy472; + } else { + if (yych == 'u') goto yy473; + goto yy358; + } + } +yy440: + yych = *++p; + if (yych == 'M') goto yy392; + if (yych == 'm') goto yy392; + goto yy358; +yy441: + yych = *++p; + if (yych == 'M') goto yy474; + if (yych == 'm') goto yy474; + goto yy358; +yy442: + yych = *++p; + if (yych == 'D') goto yy475; + if (yych == 'd') goto yy475; + goto yy358; +yy443: + yych = *++p; + if (yych == 'A') goto yy476; + if (yych == 'a') goto yy476; + goto yy358; +yy444: + yych = *++p; + if (yych == 'E') goto yy477; + if (yych == 'e') goto yy477; + goto yy358; +yy445: + yych = *++p; + if (yych == 'K') goto yy392; + if (yych == 'k') goto yy392; + goto yy358; +yy446: + yych = *++p; + if (yych == 'N') goto yy392; + if (yych == 'n') goto yy392; + goto yy358; +yy447: + yych = *++p; + if (yych == 'U') goto yy478; + if (yych == 'u') goto yy478; + goto yy358; +yy448: + yych = *++p; + if (yych == 'R') goto yy479; + if (yych == 'r') goto yy479; + goto yy358; +yy449: + yych = *++p; + if (yych <= 'I') { + if (yych == 'G') goto yy468; + if (yych <= 'H') goto yy358; + goto yy480; + } else { + if (yych <= 'g') { + if (yych <= 'f') goto yy358; + goto yy468; + } else { + if (yych == 'i') goto yy480; + goto yy358; + } + } +yy450: + yych = *++p; + if (yych == 'A') goto yy440; + if (yych == 'a') goto yy440; + goto yy358; +yy451: + yych = *++p; + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy481; + goto yy358; + } else { + if (yych <= ' ') goto yy481; + if (yych == '>') goto yy481; + goto yy358; + } +yy452: + yych = *++p; + if (yych == 'I') goto yy483; + if (yych == 'i') goto yy483; + goto yy358; +yy453: + yych = *++p; + if (yych == 'R') goto yy484; + if (yych == 'r') goto yy484; + goto yy358; +yy454: + yych = *++p; + if (yych == 'L') goto yy412; + if (yych == 'l') goto yy412; + goto yy358; +yy455: + yych = *++p; + if (yych == 'M') goto yy485; + if (yych == 'm') goto yy485; + goto yy358; +yy456: + yych = *++p; + if (yych == 'L') goto yy463; + if (yych == 'l') goto yy463; + goto yy358; +yy457: + yych = *++p; + if (yych == 'O') goto yy486; + if (yych == 'o') goto yy486; + goto yy358; +yy458: + yych = *++p; + if (yych == 'A') goto yy487; + if (yych == 'a') goto yy487; + goto yy358; +yy459: + yych = *++p; + if (yych == 'C') goto yy445; + if (yych == 'c') goto yy445; + goto yy358; +yy460: + yych = *++p; + if (yych == 'A') goto yy488; + if (yych == 'a') goto yy488; + goto yy358; +yy461: + yych = *++p; + if (yych == 'E') goto yy489; + if (yych == 'e') goto yy489; + goto yy358; +yy462: + yych = *++p; + if (yych == 'C') goto yy456; + if (yych == 'c') goto yy456; + goto yy358; +yy463: + yych = *++p; + if (yych == 'E') goto yy392; + if (yych == 'e') goto yy392; + goto yy358; +yy464: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'E') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'F') goto yy490; + if (yych == 'f') goto yy490; + goto yy358; + } + } +yy465: + yych = *++p; + if (yych == 'K') goto yy491; + if (yych == 'k') goto yy491; + goto yy358; +yy466: + yych = *++p; + if (yych == 'I') goto yy480; + if (yych == 'i') goto yy480; + goto yy358; +yy467: + yych = *++p; + if (yych == 'E') goto yy492; + if (yych == 'e') goto yy492; + goto yy358; +yy468: + yych = *++p; + if (yych == 'R') goto yy493; + if (yych == 'r') goto yy493; + goto yy358; +yy469: + yych = *++p; + if (yych == 'I') goto yy494; + if (yych == 'i') goto yy494; + goto yy358; +yy470: + yych = *++p; + if (yych == 'O') goto yy495; + if (yych == 'o') goto yy495; + goto yy358; +yy471: + yych = *++p; + if (yych == 'D') goto yy496; + if (yych == 'd') goto yy496; + goto yy358; +yy472: + yych = *++p; + if (yych == 'A') goto yy389; + if (yych == 'a') goto yy389; + goto yy358; +yy473: + yych = *++p; + if (yych == 'R') goto yy463; + if (yych == 'r') goto yy463; + goto yy358; +yy474: + yych = *++p; + if (yych == 'E') goto yy497; + if (yych == 'e') goto yy497; + goto yy358; +yy475: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'D') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'E') goto yy492; + if (yych == 'e') goto yy492; + goto yy358; + } + } +yy476: + yych = *++p; + if (yych == 'M') goto yy463; + if (yych == 'm') goto yy463; + goto yy358; +yy477: + yych = *++p; + if (yych == 'N') goto yy487; + if (yych == 'n') goto yy487; + goto yy358; +yy478: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'H') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'I') goto yy498; + if (yych == 'i') goto yy498; + goto yy358; + } + } +yy479: + yych = *++p; + if (yych == 'A') goto yy499; + if (yych == 'a') goto yy499; + goto yy358; +yy480: + yych = *++p; + if (yych == 'O') goto yy446; + if (yych == 'o') goto yy446; + goto yy358; +yy481: + ++p; + { return 1; } +yy483: + yych = *++p; + if (yych == 'P') goto yy500; + if (yych == 'p') goto yy500; + goto yy358; +yy484: + yych = *++p; + if (yych == 'C') goto yy463; + if (yych == 'c') goto yy463; + goto yy358; +yy485: + yych = *++p; + if (yych == 'A') goto yy501; + if (yych == 'a') goto yy501; + goto yy358; +yy486: + yych = *++p; + if (yych == 'T') goto yy392; + if (yych == 't') goto yy392; + goto yy358; +yy487: + yych = *++p; + if (yych == 'D') goto yy392; + if (yych == 'd') goto yy392; + goto yy358; +yy488: + yych = *++p; + if (yych == 'T') goto yy502; + if (yych == 't') goto yy502; + goto yy358; +yy489: + yych = *++p; + if (yych == 'S') goto yy503; + if (yych == 's') goto yy503; + goto yy358; +yy490: + yych = *++p; + if (yych == 'O') goto yy504; + if (yych == 'o') goto yy504; + goto yy358; +yy491: + yych = *++p; + if (yych == 'Q') goto yy505; + if (yych == 'q') goto yy505; + goto yy358; +yy492: + yych = *++p; + if (yych == 'R') goto yy392; + if (yych == 'r') goto yy392; + goto yy358; +yy493: + yych = *++p; + if (yych == 'O') goto yy506; + if (yych == 'o') goto yy506; + goto yy358; +yy494: + yych = *++p; + if (yych == 'L') goto yy503; + if (yych == 'l') goto yy503; + goto yy358; +yy495: + yych = *++p; + if (yych == 'G') goto yy392; + if (yych == 'g') goto yy392; + goto yy358; +yy496: + yych = *++p; + if (yych == 'S') goto yy507; + if (yych == 's') goto yy507; + goto yy358; +yy497: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy358; + if (yych <= '\r') goto yy408; + goto yy358; + } else { + if (yych <= ' ') goto yy408; + if (yych <= '.') goto yy358; + goto yy410; + } + } else { + if (yych <= 'R') { + if (yych == '>') goto yy408; + goto yy358; + } else { + if (yych <= 'S') goto yy507; + if (yych == 's') goto yy507; + goto yy358; + } + } +yy498: + yych = *++p; + if (yych == 'T') goto yy508; + if (yych == 't') goto yy508; + goto yy358; +yy499: + yych = *++p; + if (yych == 'M') goto yy509; + if (yych == 'm') goto yy509; + goto yy358; +yy500: + yych = *++p; + if (yych == 'T') goto yy451; + if (yych == 't') goto yy451; + goto yy358; +yy501: + yych = *++p; + if (yych == 'R') goto yy432; + if (yych == 'r') goto yy432; + goto yy358; +yy502: + yych = *++p; + if (yych == 'A') goto yy510; + if (yych == 'a') goto yy510; + goto yy358; +yy503: + yych = *++p; + if (yych == 'S') goto yy392; + if (yych == 's') goto yy392; + goto yy358; +yy504: + yych = *++p; + if (yych == 'N') goto yy486; + if (yych == 'n') goto yy486; + goto yy358; +yy505: + yych = *++p; + if (yych == 'U') goto yy511; + if (yych == 'u') goto yy511; + goto yy358; +yy506: + yych = *++p; + if (yych == 'U') goto yy512; + if (yych == 'u') goto yy512; + goto yy358; +yy507: + yych = *++p; + if (yych == 'E') goto yy486; + if (yych == 'e') goto yy486; + goto yy358; +yy508: + yych = *++p; + if (yych == 'E') goto yy440; + if (yych == 'e') goto yy440; + goto yy358; +yy509: + yych = *++p; + if (yych == 'E') goto yy503; + if (yych == 'e') goto yy503; + goto yy358; +yy510: + yych = *++p; + if (yych == '[') goto yy513; + goto yy358; +yy511: + yych = *++p; + if (yych == 'O') goto yy515; + if (yych == 'o') goto yy515; + goto yy358; +yy512: + yych = *++p; + if (yych == 'P') goto yy392; + if (yych == 'p') goto yy392; + goto yy358; +yy513: + ++p; + { return 5; } +yy515: + yych = *++p; + if (yych == 'T') goto yy463; + if (yych == 't') goto yy463; + goto yy358; +} + } // Try to match an HTML block tag start line of type 7, returning // 7 if successful, 0 if not. -bufsize_t _scan_html_block_start_7(const unsigned char *p) { +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, 202, 194, 198, 194, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 198, 224, 64, 224, 224, 224, 224, 128, 224, 224, - 224, 224, 224, 241, 240, 224, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 240, 224, 192, 192, 192, 224, 224, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 224, 224, 224, 224, 240, 192, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 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 yy729; - ++p; - yy728 : { return 0; } - yy729: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '@') { - if (yych == '/') - goto yy733; - goto yy728; - } else { - if (yych <= 'Z') - goto yy730; - if (yych <= '`') - goto yy728; - if (yych >= '{') - goto yy728; - } - yy730: - ++p; - yych = *p; - if (yybm[0 + yych] & 1) { - goto yy730; - } - if (yych <= ' ') { - if (yych <= 0x08) - goto yy732; - if (yych <= '\r') - goto yy744; - if (yych >= ' ') - goto yy744; - } else { - if (yych <= '/') { - if (yych >= '/') - goto yy746; - } else { - if (yych == '>') - goto yy738; - } - } - yy732: - p = marker; - if (yyaccept == 0) { - goto yy728; - } else { - goto yy742; - } - yy733: - yych = *++p; - if (yych <= '@') - goto yy732; - if (yych <= 'Z') - goto yy734; - if (yych <= '`') - goto yy732; - if (yych >= '{') - goto yy732; - yy734: - ++p; - yych = *p; - if (yybm[0 + yych] & 2) { - goto yy736; - } - if (yych <= '=') { - if (yych <= '-') { - if (yych <= ',') - goto yy732; - goto yy734; - } else { - if (yych <= '/') - goto yy732; - if (yych <= '9') - goto yy734; - goto yy732; - } - } else { - if (yych <= 'Z') { - if (yych <= '>') - goto yy738; - if (yych <= '@') - goto yy732; - goto yy734; - } else { - if (yych <= '`') - goto yy732; - if (yych <= 'z') - goto yy734; - goto yy732; - } - } - yy736: - ++p; - yych = *p; - if (yybm[0 + yych] & 2) { - goto yy736; - } - if (yych != '>') - goto yy732; - yy738: - ++p; - yych = *p; - if (yybm[0 + yych] & 4) { - goto yy738; - } - if (yych <= 0x08) - goto yy732; - if (yych <= '\n') - goto yy740; - if (yych <= '\v') - goto yy732; - if (yych <= '\r') - goto yy743; - goto yy732; - yy740: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 4) { - goto yy738; - } - if (yych <= 0x08) - goto yy742; - if (yych <= '\n') - goto yy740; - if (yych <= '\v') - goto yy742; - if (yych <= '\r') - goto yy743; - yy742 : { return 7; } - yy743: - yych = *++p; - goto yy742; - yy744: - ++p; - yych = *p; - if (yych <= ':') { - if (yych <= ' ') { - if (yych <= 0x08) - goto yy732; - if (yych <= '\r') - goto yy744; - if (yych <= 0x1F) - goto yy732; - goto yy744; - } else { - if (yych == '/') - goto yy746; - if (yych <= '9') - goto yy732; - goto yy747; - } - } else { - if (yych <= 'Z') { - if (yych == '>') - goto yy738; - if (yych <= '@') - goto yy732; - goto yy747; - } else { - if (yych <= '_') { - if (yych <= '^') - goto yy732; - goto yy747; - } else { - if (yych <= '`') - goto yy732; - if (yych <= 'z') - goto yy747; - goto yy732; - } - } - } - yy746: - yych = *++p; - if (yych == '>') - goto yy738; - goto yy732; - yy747: - ++p; - yych = *p; - if (yybm[0 + yych] & 16) { - goto yy747; - } - if (yych <= ',') { - if (yych <= '\r') { - if (yych <= 0x08) - goto yy732; - } else { - if (yych != ' ') - goto yy732; - } - } else { - if (yych <= '<') { - if (yych <= '/') - goto yy746; - goto yy732; - } else { - if (yych <= '=') - goto yy751; - if (yych <= '>') - goto yy738; - goto yy732; - } - } - yy749: - ++p; - yych = *p; - if (yych <= '<') { - if (yych <= ' ') { - if (yych <= 0x08) - goto yy732; - if (yych <= '\r') - goto yy749; - if (yych <= 0x1F) - goto yy732; - goto yy749; - } else { - if (yych <= '/') { - if (yych <= '.') - goto yy732; - goto yy746; - } else { - if (yych == ':') - goto yy747; - goto yy732; - } - } - } else { - if (yych <= 'Z') { - if (yych <= '=') - goto yy751; - if (yych <= '>') - goto yy738; - if (yych <= '@') - goto yy732; - goto yy747; - } else { - if (yych <= '_') { - if (yych <= '^') - goto yy732; - goto yy747; - } else { - if (yych <= '`') - goto yy732; - if (yych <= 'z') - goto yy747; - goto yy732; - } - } - } - yy751: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy753; - } - if (yych <= 0xE0) { - if (yych <= '"') { - if (yych <= 0x00) - goto yy732; - if (yych >= '!') - goto yy764; - } else { - if (yych <= '\'') - goto yy762; - if (yych <= 0xC1) - goto yy732; - if (yych <= 0xDF) - goto yy755; - goto yy756; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy753; - } - if (yych <= 0xDF) { - if (yych <= '\'') { - if (yych <= 0x00) - goto yy732; - if (yych <= ' ') - goto yy787; - if (yych <= '"') - goto yy764; - goto yy762; - } else { - if (yych == '>') - goto yy738; - if (yych <= 0xC1) - goto yy732; - goto yy755; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy756; - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - yy753: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy753; - } - if (yych <= 0xE0) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy732; - if (yych <= ' ') - goto yy781; - goto yy732; - } else { - if (yych <= '>') - goto yy738; - if (yych <= 0xC1) - goto yy732; - if (yych >= 0xE0) - goto yy756; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - yy755: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy753; - goto yy732; - yy756: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy732; - if (yych <= 0xBF) - goto yy755; - goto yy732; - yy757: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy755; - goto yy732; - yy758: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy732; - if (yych <= 0xBF) - goto yy757; - goto yy732; - yy759: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy757; - goto yy732; - yy760: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x8F) - goto yy757; - goto yy732; - yy761: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x9F) - goto yy755; - goto yy732; - yy762: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy762; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy732; - if (yych <= '\'') - goto yy773; - goto yy732; - } else { - if (yych <= 0xDF) - goto yy774; - if (yych <= 0xE0) - goto yy775; - goto yy776; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy780; - if (yych <= 0xEF) - goto yy776; - goto yy777; - } else { - if (yych <= 0xF3) - goto yy778; - if (yych <= 0xF4) - goto yy779; - goto yy732; - } - } - yy764: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy764; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy732; - if (yych <= '"') - goto yy773; - goto yy732; - } else { - if (yych <= 0xDF) - goto yy766; - if (yych <= 0xE0) - goto yy767; - goto yy768; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy772; - if (yych <= 0xEF) - goto yy768; - goto yy769; - } else { - if (yych <= 0xF3) - goto yy770; - if (yych <= 0xF4) - goto yy771; - goto yy732; - } - } - yy766: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy764; - goto yy732; - yy767: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy732; - if (yych <= 0xBF) - goto yy766; - goto yy732; - yy768: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy766; - goto yy732; - yy769: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy732; - if (yych <= 0xBF) - goto yy768; - goto yy732; - yy770: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy768; - goto yy732; - yy771: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x8F) - goto yy768; - goto yy732; - yy772: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x9F) - goto yy766; - goto yy732; - yy773: - ++p; - yych = *p; - if (yych <= ' ') { - if (yych <= 0x08) - goto yy732; - if (yych <= '\r') - goto yy744; - if (yych <= 0x1F) - goto yy732; - goto yy744; - } else { - if (yych <= '/') { - if (yych <= '.') - goto yy732; - goto yy746; - } else { - if (yych == '>') - goto yy738; - goto yy732; - } - } - yy774: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy762; - goto yy732; - yy775: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy732; - if (yych <= 0xBF) - goto yy774; - goto yy732; - yy776: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy774; - goto yy732; - yy777: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy732; - if (yych <= 0xBF) - goto yy776; - goto yy732; - yy778: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0xBF) - goto yy776; - goto yy732; - yy779: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x8F) - goto yy776; - goto yy732; - yy780: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy732; - if (yych <= 0x9F) - goto yy774; - goto yy732; - yy781: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '"') { - if (yych <= '\r') { - if (yych <= 0x00) - goto yy732; - if (yych <= 0x08) - goto yy753; - goto yy781; - } else { - if (yych == ' ') - goto yy781; - if (yych <= '!') - goto yy753; - goto yy732; - } - } else { - if (yych <= ':') { - if (yych == '\'') - goto yy732; - if (yych <= '9') - goto yy753; - } else { - if (yych <= ';') - goto yy753; - if (yych <= '=') - goto yy732; - if (yych <= '>') - goto yy738; - goto yy753; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy783; - if (yych <= '^') - goto yy753; - if (yych >= '`') - goto yy732; - } else { - if (yych <= 'z') - goto yy783; - if (yych <= 0x7F) - goto yy753; - if (yych <= 0xC1) - goto yy732; - goto yy755; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy756; - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - } - yy783: - ++p; - yych = *p; - if (yych <= '>') { - if (yych <= '&') { - if (yych <= 0x1F) { - if (yych <= 0x00) - goto yy732; - if (yych <= 0x08) - goto yy753; - if (yych >= 0x0E) - goto yy753; - } else { - if (yych <= ' ') - goto yy785; - if (yych == '"') - goto yy732; - goto yy753; - } - } else { - if (yych <= '/') { - if (yych <= '\'') - goto yy732; - if (yych <= ',') - goto yy753; - if (yych <= '.') - goto yy783; - goto yy753; - } else { - if (yych <= ';') { - if (yych <= ':') - goto yy783; - goto yy753; - } else { - if (yych <= '<') - goto yy732; - if (yych <= '=') - goto yy751; - goto yy738; - } - } - } - } else { - if (yych <= 0xC1) { - if (yych <= '_') { - if (yych <= '@') - goto yy753; - if (yych <= 'Z') - goto yy783; - if (yych <= '^') - goto yy753; - goto yy783; - } else { - if (yych <= '`') - goto yy732; - if (yych <= 'z') - goto yy783; - if (yych <= 0x7F) - goto yy753; - goto yy732; - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy755; - if (yych <= 0xE0) - goto yy756; - if (yych <= 0xEC) - goto yy757; - goto yy761; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy757; - goto yy758; - } else { - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - } - } - yy785: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '&') { - if (yych <= 0x1F) { - if (yych <= 0x00) - goto yy732; - if (yych <= 0x08) - goto yy753; - if (yych <= '\r') - goto yy785; - goto yy753; - } else { - if (yych <= ' ') - goto yy785; - if (yych == '"') - goto yy732; - goto yy753; - } - } else { - if (yych <= ';') { - if (yych <= '\'') - goto yy732; - if (yych == ':') - goto yy783; - goto yy753; - } else { - if (yych <= '<') - goto yy732; - if (yych <= '=') - goto yy751; - if (yych <= '>') - goto yy738; - goto yy753; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy783; - if (yych <= '^') - goto yy753; - if (yych <= '_') - goto yy783; - goto yy732; - } else { - if (yych <= 'z') - goto yy783; - if (yych <= 0x7F) - goto yy753; - if (yych <= 0xC1) - goto yy732; - goto yy755; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy756; - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - } - yy787: - ++p; - yych = *p; - if (yych <= '@') { - if (yych <= '"') { - if (yych <= '\r') { - if (yych <= 0x00) - goto yy732; - if (yych <= 0x08) - goto yy753; - goto yy787; - } else { - if (yych == ' ') - goto yy787; - if (yych <= '!') - goto yy753; - goto yy764; - } - } else { - if (yych <= ':') { - if (yych == '\'') - goto yy762; - if (yych <= '9') - goto yy753; - goto yy783; - } else { - if (yych <= ';') - goto yy753; - if (yych <= '=') - goto yy732; - if (yych <= '>') - goto yy738; - goto yy753; - } - } - } else { - if (yych <= 0xDF) { - if (yych <= '`') { - if (yych <= 'Z') - goto yy783; - if (yych <= '^') - goto yy753; - if (yych <= '_') - goto yy783; - goto yy732; - } else { - if (yych <= 'z') - goto yy783; - if (yych <= 0x7F) - goto yy753; - if (yych <= 0xC1) - goto yy732; - goto yy755; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy756; - if (yych == 0xED) - goto yy761; - goto yy757; - } else { - if (yych <= 0xF0) - goto yy758; - if (yych <= 0xF3) - goto yy759; - if (yych <= 0xF4) - goto yy760; - goto yy732; - } - } - } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 224, 224, 224, 224, 224, 224, 224, + 224, 198, 210, 194, 198, 194, 224, 224, + 224, 224, 224, 224, 224, 224, 224, 224, + 224, 224, 224, 224, 224, 224, 224, 224, + 198, 224, 128, 224, 224, 224, 224, 64, + 224, 224, 224, 224, 224, 233, 232, 224, + 233, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 232, 224, 192, 192, 192, 224, + 224, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 224, 224, 224, 224, 232, + 192, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 233, 233, 233, 233, 233, + 233, 233, 233, 224, 224, 224, 224, 224, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '<') goto yy520; + ++p; +yy519: + { return 0; } +yy520: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '@') { + if (yych != '/') goto yy519; + } else { + if (yych <= 'Z') goto yy523; + if (yych <= '`') goto yy519; + if (yych <= 'z') goto yy523; + goto yy519; + } + yych = *++p; + if (yych <= '@') goto yy522; + if (yych <= 'Z') goto yy525; + if (yych <= '`') goto yy522; + if (yych <= 'z') goto yy525; +yy522: + p = marker; + if (yyaccept == 0) { + goto yy519; + } else { + goto yy538; + } +yy523: + yych = *++p; + if (yybm[0+yych] & 2) { + goto yy527; + } + if (yych <= '=') { + if (yych <= '.') { + if (yych == '-') goto yy523; + goto yy522; + } else { + if (yych <= '/') goto yy529; + if (yych <= '9') goto yy523; + goto yy522; + } + } else { + if (yych <= 'Z') { + if (yych <= '>') goto yy530; + if (yych <= '@') goto yy522; + goto yy523; + } else { + if (yych <= '`') goto yy522; + if (yych <= 'z') goto yy523; + goto yy522; + } + } +yy525: + yych = *++p; + if (yych <= '/') { + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy522; + if (yych <= '\r') goto yy532; + goto yy522; + } else { + if (yych <= ' ') goto yy532; + if (yych == '-') goto yy525; + goto yy522; + } + } else { + if (yych <= '@') { + if (yych <= '9') goto yy525; + if (yych == '>') goto yy530; + goto yy522; + } else { + if (yych <= 'Z') goto yy525; + if (yych <= '`') goto yy522; + if (yych <= 'z') goto yy525; + goto yy522; + } + } +yy527: + yych = *++p; + if (yybm[0+yych] & 2) { + goto yy527; + } + if (yych <= '>') { + if (yych <= '9') { + if (yych != '/') goto yy522; + } else { + if (yych <= ':') goto yy534; + if (yych <= '=') goto yy522; + goto yy530; + } + } else { + if (yych <= '^') { + if (yych <= '@') goto yy522; + if (yych <= 'Z') goto yy534; + goto yy522; + } else { + if (yych == '`') goto yy522; + if (yych <= 'z') goto yy534; + goto yy522; + } + } +yy529: + yych = *++p; + if (yych != '>') goto yy522; +yy530: + yych = *++p; + if (yybm[0+yych] & 4) { + goto yy530; + } + if (yych <= 0x08) goto yy522; + if (yych <= '\n') goto yy536; + if (yych <= '\v') goto yy522; + if (yych <= '\r') goto yy539; + goto yy522; +yy532: + yych = *++p; + if (yych <= 0x1F) { + if (yych <= 0x08) goto yy522; + if (yych <= '\r') goto yy532; + goto yy522; + } else { + if (yych <= ' ') goto yy532; + if (yych == '>') goto yy530; + goto yy522; + } +yy534: + yych = *++p; + if (yybm[0+yych] & 8) { + goto yy534; + } + if (yych <= ',') { + if (yych <= '\r') { + if (yych <= 0x08) goto yy522; + goto yy540; + } else { + if (yych == ' ') goto yy540; + goto yy522; + } + } else { + if (yych <= '<') { + if (yych <= '/') goto yy529; + goto yy522; + } else { + if (yych <= '=') goto yy542; + if (yych <= '>') goto yy530; + goto yy522; + } + } +yy536: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 4) { + goto yy530; + } + if (yych <= 0x08) goto yy538; + if (yych <= '\n') goto yy536; + if (yych <= '\v') goto yy538; + if (yych <= '\r') goto yy539; +yy538: + { return 7; } +yy539: + ++p; + goto yy538; +yy540: + yych = *++p; + if (yych <= '<') { + if (yych <= ' ') { + if (yych <= 0x08) goto yy522; + if (yych <= '\r') goto yy540; + if (yych <= 0x1F) goto yy522; + goto yy540; + } else { + if (yych <= '/') { + if (yych <= '.') goto yy522; + goto yy529; + } else { + if (yych == ':') goto yy534; + goto yy522; + } + } + } else { + if (yych <= 'Z') { + if (yych <= '=') goto yy542; + if (yych <= '>') goto yy530; + if (yych <= '@') goto yy522; + goto yy534; + } else { + if (yych <= '_') { + if (yych <= '^') goto yy522; + goto yy534; + } else { + if (yych <= '`') goto yy522; + if (yych <= 'z') goto yy534; + goto yy522; + } + } + } +yy542: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy544; + } + if (yych <= 0xE0) { + if (yych <= '"') { + if (yych <= 0x00) goto yy522; + if (yych <= ' ') goto yy542; + goto yy546; + } else { + if (yych <= '\'') goto yy548; + if (yych <= 0xC1) goto yy522; + if (yych <= 0xDF) goto yy550; + goto yy551; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy553; + goto yy552; + } else { + if (yych <= 0xF0) goto yy554; + if (yych <= 0xF3) goto yy555; + if (yych <= 0xF4) goto yy556; + goto yy522; + } + } +yy544: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy544; + } + if (yych <= 0xE0) { + if (yych <= '=') { + if (yych <= 0x00) goto yy522; + if (yych <= ' ') goto yy527; + goto yy522; + } else { + if (yych <= '>') goto yy530; + if (yych <= 0xC1) goto yy522; + if (yych <= 0xDF) goto yy550; + goto yy551; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy553; + goto yy552; + } else { + if (yych <= 0xF0) goto yy554; + if (yych <= 0xF3) goto yy555; + if (yych <= 0xF4) goto yy556; + goto yy522; + } + } +yy546: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy546; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x00) goto yy522; + if (yych <= '"') goto yy557; + goto yy522; + } else { + if (yych <= 0xDF) goto yy558; + if (yych <= 0xE0) goto yy559; + goto yy560; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy561; + if (yych <= 0xEF) goto yy560; + goto yy562; + } else { + if (yych <= 0xF3) goto yy563; + if (yych <= 0xF4) goto yy564; + goto yy522; + } + } +yy548: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy548; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x00) goto yy522; + if (yych <= '\'') goto yy557; + goto yy522; + } else { + if (yych <= 0xDF) goto yy565; + if (yych <= 0xE0) goto yy566; + goto yy567; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy568; + if (yych <= 0xEF) goto yy567; + goto yy569; + } else { + if (yych <= 0xF3) goto yy570; + if (yych <= 0xF4) goto yy571; + goto yy522; + } + } +yy550: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy544; + goto yy522; +yy551: + yych = *++p; + if (yych <= 0x9F) goto yy522; + if (yych <= 0xBF) goto yy550; + goto yy522; +yy552: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy550; + goto yy522; +yy553: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x9F) goto yy550; + goto yy522; +yy554: + yych = *++p; + if (yych <= 0x8F) goto yy522; + if (yych <= 0xBF) goto yy552; + goto yy522; +yy555: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy552; + goto yy522; +yy556: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x8F) goto yy552; + goto yy522; +yy557: + yych = *++p; + if (yybm[0+yych] & 2) { + goto yy527; + } + if (yych == '/') goto yy529; + if (yych == '>') goto yy530; + goto yy522; +yy558: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy546; + goto yy522; +yy559: + yych = *++p; + if (yych <= 0x9F) goto yy522; + if (yych <= 0xBF) goto yy558; + goto yy522; +yy560: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy558; + goto yy522; +yy561: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x9F) goto yy558; + goto yy522; +yy562: + yych = *++p; + if (yych <= 0x8F) goto yy522; + if (yych <= 0xBF) goto yy560; + goto yy522; +yy563: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy560; + goto yy522; +yy564: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x8F) goto yy560; + goto yy522; +yy565: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy548; + goto yy522; +yy566: + yych = *++p; + if (yych <= 0x9F) goto yy522; + if (yych <= 0xBF) goto yy565; + goto yy522; +yy567: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy565; + goto yy522; +yy568: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x9F) goto yy565; + goto yy522; +yy569: + yych = *++p; + if (yych <= 0x8F) goto yy522; + if (yych <= 0xBF) goto yy567; + goto yy522; +yy570: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0xBF) goto yy567; + goto yy522; +yy571: + yych = *++p; + if (yych <= 0x7F) goto yy522; + if (yych <= 0x8F) goto yy567; + goto yy522; +} + } // Try to match an HTML block end line of type 1 -bufsize_t _scan_html_block_end_1(const unsigned char *p) { +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 yy791; - if (yych != '\n') - goto yy793; - } else { - if (yych <= '<') - goto yy794; - if (yych <= 0x7F) - goto yy793; - if (yych >= 0xC2) - goto yy795; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy796; - if (yych == 0xED) - goto yy798; - goto yy797; - } else { - if (yych <= 0xF0) - goto yy799; - if (yych <= 0xF3) - goto yy800; - if (yych <= 0xF4) - goto yy801; - } - } - yy791: - ++p; - yy792 : { return 0; } - yy793: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy792; - if (yych <= '\t') - goto yy806; - goto yy792; - } else { - if (yych <= 0x7F) - goto yy806; - if (yych <= 0xC1) - goto yy792; - if (yych <= 0xF4) - goto yy806; - goto yy792; - } - yy794: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '.') { - if (yych <= 0x00) - goto yy792; - if (yych == '\n') - goto yy792; - goto yy806; - } else { - if (yych <= 0x7F) { - if (yych <= '/') - goto yy814; - goto yy806; - } else { - if (yych <= 0xC1) - goto yy792; - if (yych <= 0xF4) - goto yy806; - goto yy792; - } - } - yy795: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy792; - if (yych <= 0xBF) - goto yy805; - goto yy792; - yy796: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy792; - if (yych <= 0xBF) - goto yy804; - goto yy792; - yy797: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy792; - if (yych <= 0xBF) - goto yy804; - goto yy792; - yy798: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy792; - if (yych <= 0x9F) - goto yy804; - goto yy792; - yy799: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy792; - if (yych <= 0xBF) - goto yy802; - goto yy792; - yy800: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy792; - if (yych <= 0xBF) - goto yy802; - goto yy792; - yy801: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy792; - if (yych >= 0x90) - goto yy792; - yy802: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy803; - if (yych <= 0xBF) - goto yy804; - yy803: - p = marker; - if (yyaccept == 0) { - goto yy792; - } else { - goto yy820; - } - yy804: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy803; - if (yych >= 0xC0) - goto yy803; - yy805: - ++p; - yych = *p; - yy806: - if (yybm[0 + yych] & 64) { - goto yy805; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy803; - if (yych >= '=') - goto yy803; - } else { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - goto yy802; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy813; - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - yy807: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xDF) { - if (yych <= '.') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= '/') - goto yy814; - if (yych <= 0x7F) - goto yy805; - if (yych <= 0xC1) - goto yy803; - goto yy804; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy809; - if (yych == 0xED) - goto yy813; - goto yy802; - } else { - if (yych <= 0xF0) - goto yy810; - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - yy809: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy803; - if (yych <= 0xBF) - goto yy804; - goto yy803; - yy810: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy803; - if (yych <= 0xBF) - goto yy802; - goto yy803; - yy811: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy803; - if (yych <= 0xBF) - goto yy802; - goto yy803; - yy812: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy803; - if (yych <= 0x8F) - goto yy802; - goto yy803; - yy813: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy803; - if (yych <= 0x9F) - goto yy804; - goto yy803; - yy814: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 's') { - if (yych <= 'P') { - if (yych <= '\t') { - if (yych <= 0x00) - goto yy803; - goto yy805; - } else { - if (yych <= '\n') - goto yy803; - if (yych <= 'O') - goto yy805; - goto yy816; - } - } else { - if (yych <= 'o') { - if (yych != 'S') - goto yy805; - } else { - if (yych <= 'p') - goto yy816; - if (yych <= 'r') - goto yy805; - } - } - } else { - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x7F) - goto yy805; - goto yy803; - } else { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - goto yy802; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy813; - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 't') { - if (yych <= 'C') { - if (yych <= '\t') { - if (yych <= 0x00) - goto yy803; - goto yy805; - } else { - if (yych <= '\n') - goto yy803; - if (yych <= 'B') - goto yy805; - goto yy821; - } - } else { - if (yych <= 'b') { - if (yych == 'T') - goto yy822; - goto yy805; - } else { - if (yych <= 'c') - goto yy821; - if (yych <= 's') - goto yy805; - goto yy822; - } - } - } else { - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x7F) - goto yy805; - goto yy803; - } else { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - goto yy802; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy813; - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy816: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'Q') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'q') { - if (yych >= 'S') - goto yy805; - } else { - if (yych <= 'r') - goto yy817; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy817: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'D') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'd') { - if (yych >= 'F') - goto yy805; - } else { - if (yych <= 'e') - goto yy818; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy818: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xDF) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= '>') - goto yy819; - if (yych <= 0x7F) - goto yy805; - if (yych <= 0xC1) - goto yy803; - goto yy804; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy809; - if (yych == 0xED) - goto yy813; - goto yy802; - } else { - if (yych <= 0xF0) - goto yy810; - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - yy819: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy805; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy820; - if (yych <= '<') - goto yy807; - } else { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - goto yy802; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy813; - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - } - } - yy820 : { return (bufsize_t)(p - start); } - yy821: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'Q') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'q') { - if (yych <= 'R') - goto yy825; - goto yy805; - } else { - if (yych <= 'r') - goto yy825; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy822: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'X') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'x') { - if (yych >= 'Z') - goto yy805; - } else { - if (yych <= 'y') - goto yy823; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy823: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'K') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'k') { - if (yych >= 'M') - goto yy805; - } else { - if (yych <= 'l') - goto yy824; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy824: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'D') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'd') { - if (yych <= 'E') - goto yy818; - goto yy805; - } else { - if (yych <= 'e') - goto yy818; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy825: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'H') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'h') { - if (yych >= 'J') - goto yy805; - } else { - if (yych <= 'i') - goto yy826; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy826: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'O') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 'o') { - if (yych >= 'Q') - goto yy805; - } else { - if (yych <= 'p') - goto yy827; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - yy827: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy807; - } - if (yych <= 0xC1) { - if (yych <= 'S') { - if (yych <= 0x00) - goto yy803; - if (yych == '\n') - goto yy803; - goto yy805; - } else { - if (yych <= 's') { - if (yych <= 'T') - goto yy818; - goto yy805; - } else { - if (yych <= 't') - goto yy818; - if (yych <= 0x7F) - goto yy805; - goto yy803; - } - } - } else { - if (yych <= 0xED) { - if (yych <= 0xDF) - goto yy804; - if (yych <= 0xE0) - goto yy809; - if (yych <= 0xEC) - goto yy802; - goto yy813; - } else { - if (yych <= 0xF0) { - if (yych <= 0xEF) - goto yy802; - goto yy810; - } else { - if (yych <= 0xF3) - goto yy811; - if (yych <= 0xF4) - goto yy812; - goto yy803; - } - } - } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 0, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 128, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= 0xDF) { + if (yych <= ';') { + if (yych <= 0x00) goto yy574; + if (yych != '\n') goto yy576; + } else { + if (yych <= '<') goto yy577; + if (yych <= 0x7F) goto yy576; + if (yych >= 0xC2) goto yy578; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy579; + if (yych == 0xED) goto yy581; + goto yy580; + } else { + if (yych <= 0xF0) goto yy582; + if (yych <= 0xF3) goto yy583; + if (yych <= 0xF4) goto yy584; + } + } +yy574: + ++p; +yy575: + { return 0; } +yy576: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych <= 0x00) goto yy575; + if (yych <= '\t') goto yy586; + goto yy575; + } else { + if (yych <= 0x7F) goto yy586; + if (yych <= 0xC1) goto yy575; + if (yych <= 0xF4) goto yy586; + goto yy575; + } +yy577: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '.') { + if (yych <= 0x00) goto yy575; + if (yych == '\n') goto yy575; + goto yy586; + } else { + if (yych <= 0x7F) { + if (yych <= '/') goto yy597; + goto yy586; + } else { + if (yych <= 0xC1) goto yy575; + if (yych <= 0xF4) goto yy586; + goto yy575; + } + } +yy578: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy575; + if (yych <= 0xBF) goto yy585; + goto yy575; +yy579: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x9F) goto yy575; + if (yych <= 0xBF) goto yy590; + goto yy575; +yy580: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy575; + if (yych <= 0xBF) goto yy590; + goto yy575; +yy581: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy575; + if (yych <= 0x9F) goto yy590; + goto yy575; +yy582: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x8F) goto yy575; + if (yych <= 0xBF) goto yy592; + goto yy575; +yy583: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy575; + if (yych <= 0xBF) goto yy592; + goto yy575; +yy584: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy575; + if (yych <= 0x8F) goto yy592; + goto yy575; +yy585: + yych = *++p; +yy586: + if (yybm[0+yych] & 64) { + goto yy585; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy587; + if (yych <= '<') goto yy588; + } else { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + goto yy592; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy593; + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + } + } +yy587: + p = marker; + if (yyaccept == 0) { + goto yy575; + } else { + goto yy607; + } +yy588: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xDF) { + if (yych <= '.') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= '/') goto yy597; + if (yych <= 0x7F) goto yy585; + if (yych <= 0xC1) goto yy587; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy591; + if (yych == 0xED) goto yy593; + goto yy592; + } else { + if (yych <= 0xF0) goto yy594; + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } +yy590: + yych = *++p; + if (yych <= 0x7F) goto yy587; + if (yych <= 0xBF) goto yy585; + goto yy587; +yy591: + yych = *++p; + if (yych <= 0x9F) goto yy587; + if (yych <= 0xBF) goto yy590; + goto yy587; +yy592: + yych = *++p; + if (yych <= 0x7F) goto yy587; + if (yych <= 0xBF) goto yy590; + goto yy587; +yy593: + yych = *++p; + if (yych <= 0x7F) goto yy587; + if (yych <= 0x9F) goto yy590; + goto yy587; +yy594: + yych = *++p; + if (yych <= 0x8F) goto yy587; + if (yych <= 0xBF) goto yy592; + goto yy587; +yy595: + yych = *++p; + if (yych <= 0x7F) goto yy587; + if (yych <= 0xBF) goto yy592; + goto yy587; +yy596: + yych = *++p; + if (yych <= 0x7F) goto yy587; + if (yych <= 0x8F) goto yy592; + goto yy587; +yy597: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 's') { + if (yych <= 'P') { + if (yych <= '\t') { + if (yych <= 0x00) goto yy587; + goto yy585; + } else { + if (yych <= '\n') goto yy587; + if (yych <= 'O') goto yy585; + } + } else { + if (yych <= 'o') { + if (yych == 'S') goto yy599; + goto yy585; + } else { + if (yych <= 'p') goto yy598; + if (yych <= 'r') goto yy585; + goto yy599; + } + } + } else { + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x7F) goto yy585; + goto yy587; + } else { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + goto yy592; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy593; + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy598: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'Q') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'q') { + if (yych <= 'R') goto yy600; + goto yy585; + } else { + if (yych <= 'r') goto yy600; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy599: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 't') { + if (yych <= 'C') { + if (yych <= '\t') { + if (yych <= 0x00) goto yy587; + goto yy585; + } else { + if (yych <= '\n') goto yy587; + if (yych <= 'B') goto yy585; + goto yy601; + } + } else { + if (yych <= 'b') { + if (yych == 'T') goto yy602; + goto yy585; + } else { + if (yych <= 'c') goto yy601; + if (yych <= 's') goto yy585; + goto yy602; + } + } + } else { + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x7F) goto yy585; + goto yy587; + } else { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + goto yy592; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy593; + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy600: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'D') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'd') { + if (yych <= 'E') goto yy603; + goto yy585; + } else { + if (yych <= 'e') goto yy603; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy601: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'Q') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'q') { + if (yych <= 'R') goto yy604; + goto yy585; + } else { + if (yych <= 'r') goto yy604; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy602: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'X') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'x') { + if (yych <= 'Y') goto yy605; + goto yy585; + } else { + if (yych <= 'y') goto yy605; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy603: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xDF) { + if (yych <= '=') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= '>') goto yy606; + if (yych <= 0x7F) goto yy585; + if (yych <= 0xC1) goto yy587; + goto yy590; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy591; + if (yych == 0xED) goto yy593; + goto yy592; + } else { + if (yych <= 0xF0) goto yy594; + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } +yy604: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'H') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'h') { + if (yych <= 'I') goto yy608; + goto yy585; + } else { + if (yych <= 'i') goto yy608; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy605: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'K') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'k') { + if (yych <= 'L') goto yy600; + goto yy585; + } else { + if (yych <= 'l') goto yy600; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy606: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy585; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy607; + if (yych <= '<') goto yy588; + } else { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + goto yy592; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy593; + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + } + } +yy607: + { return (bufsize_t)(p - start); } +yy608: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'O') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 'o') { + if (yych >= 'Q') goto yy585; + } else { + if (yych <= 'p') goto yy609; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +yy609: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy588; + } + if (yych <= 0xC1) { + if (yych <= 'S') { + if (yych <= 0x00) goto yy587; + if (yych == '\n') goto yy587; + goto yy585; + } else { + if (yych <= 's') { + if (yych <= 'T') goto yy603; + goto yy585; + } else { + if (yych <= 't') goto yy603; + if (yych <= 0x7F) goto yy585; + goto yy587; + } + } + } else { + if (yych <= 0xED) { + if (yych <= 0xDF) goto yy590; + if (yych <= 0xE0) goto yy591; + if (yych <= 0xEC) goto yy592; + goto yy593; + } else { + if (yych <= 0xF0) { + if (yych <= 0xEF) goto yy592; + goto yy594; + } else { + if (yych <= 0xF3) goto yy595; + if (yych <= 0xF4) goto yy596; + goto yy587; + } + } + } +} + } // Try to match an HTML block end line of type 2 -bufsize_t _scan_html_block_end_2(const unsigned char *p) { +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 yy830; - if (yych != '\n') - goto yy832; - } else { - if (yych <= '-') - goto yy833; - if (yych <= 0x7F) - goto yy832; - if (yych >= 0xC2) - goto yy834; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy835; - if (yych == 0xED) - goto yy837; - goto yy836; - } else { - if (yych <= 0xF0) - goto yy838; - if (yych <= 0xF3) - goto yy839; - if (yych <= 0xF4) - goto yy840; - } - } - yy830: - ++p; - yy831 : { return 0; } - yy832: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy831; - if (yych <= '\t') - goto yy845; - goto yy831; - } else { - if (yych <= 0x7F) - goto yy845; - if (yych <= 0xC1) - goto yy831; - if (yych <= 0xF4) - goto yy845; - goto yy831; - } - yy833: - yyaccept = 0; - yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy852; - } - if (yych <= '\n') { - if (yych <= 0x00) - goto yy831; - if (yych <= '\t') - goto yy845; - goto yy831; - } else { - if (yych <= 0x7F) - goto yy845; - if (yych <= 0xC1) - goto yy831; - if (yych <= 0xF4) - goto yy845; - goto yy831; - } - yy834: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy831; - if (yych <= 0xBF) - goto yy844; - goto yy831; - yy835: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy831; - if (yych <= 0xBF) - goto yy843; - goto yy831; - yy836: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy831; - if (yych <= 0xBF) - goto yy843; - goto yy831; - yy837: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy831; - if (yych <= 0x9F) - goto yy843; - goto yy831; - yy838: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy831; - if (yych <= 0xBF) - goto yy841; - goto yy831; - yy839: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy831; - if (yych <= 0xBF) - goto yy841; - goto yy831; - yy840: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy831; - if (yych >= 0x90) - goto yy831; - yy841: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy842; - if (yych <= 0xBF) - goto yy843; - yy842: - p = marker; - if (yyaccept == 0) { - goto yy831; - } else { - goto yy855; - } - yy843: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy842; - if (yych >= 0xC0) - goto yy842; - yy844: - ++p; - yych = *p; - yy845: - if (yybm[0 + yych] & 64) { - goto yy844; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy842; - if (yych >= '.') - goto yy842; - } else { - if (yych <= 0xDF) - goto yy843; - if (yych <= 0xE0) - goto yy847; - goto yy841; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy851; - if (yych <= 0xEF) - goto yy841; - goto yy848; - } else { - if (yych <= 0xF3) - goto yy849; - if (yych <= 0xF4) - goto yy850; - goto yy842; - } - } - yy846: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy844; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy842; - if (yych <= '-') - goto yy852; - goto yy842; - } else { - if (yych <= 0xDF) - goto yy843; - if (yych >= 0xE1) - goto yy841; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy851; - if (yych <= 0xEF) - goto yy841; - goto yy848; - } else { - if (yych <= 0xF3) - goto yy849; - if (yych <= 0xF4) - goto yy850; - goto yy842; - } - } - yy847: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy842; - if (yych <= 0xBF) - goto yy843; - goto yy842; - yy848: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy842; - if (yych <= 0xBF) - goto yy841; - goto yy842; - yy849: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy842; - if (yych <= 0xBF) - goto yy841; - goto yy842; - yy850: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy842; - if (yych <= 0x8F) - goto yy841; - goto yy842; - yy851: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy842; - if (yych <= 0x9F) - goto yy843; - goto yy842; - yy852: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy852; - } - if (yych <= 0xDF) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy842; - if (yych == '\n') - goto yy842; - goto yy844; - } else { - if (yych <= '>') - goto yy854; - if (yych <= 0x7F) - goto yy844; - if (yych <= 0xC1) - goto yy842; - goto yy843; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy847; - if (yych == 0xED) - goto yy851; - goto yy841; - } else { - if (yych <= 0xF0) - goto yy848; - if (yych <= 0xF3) - goto yy849; - if (yych <= 0xF4) - goto yy850; - goto yy842; - } - } - yy854: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy844; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy855; - if (yych <= '-') - goto yy846; - } else { - if (yych <= 0xDF) - goto yy843; - if (yych <= 0xE0) - goto yy847; - goto yy841; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy851; - if (yych <= 0xEF) - goto yy841; - goto yy848; - } else { - if (yych <= 0xF3) - goto yy849; - if (yych <= 0xF4) - goto yy850; - } - } - yy855 : { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 0, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 128, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= 0xDF) { + if (yych <= ',') { + if (yych <= 0x00) goto yy612; + if (yych != '\n') goto yy614; + } else { + if (yych <= '-') goto yy615; + if (yych <= 0x7F) goto yy614; + if (yych >= 0xC2) goto yy616; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy617; + if (yych == 0xED) goto yy619; + goto yy618; + } else { + if (yych <= 0xF0) goto yy620; + if (yych <= 0xF3) goto yy621; + if (yych <= 0xF4) goto yy622; + } + } +yy612: + ++p; +yy613: + { return 0; } +yy614: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych <= 0x00) goto yy613; + if (yych <= '\t') goto yy624; + goto yy613; + } else { + if (yych <= 0x7F) goto yy624; + if (yych <= 0xC1) goto yy613; + if (yych <= 0xF4) goto yy624; + goto yy613; + } +yy615: + yyaccept = 0; + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy634; + } + if (yych <= '\n') { + if (yych <= 0x00) goto yy613; + if (yych <= '\t') goto yy624; + goto yy613; + } else { + if (yych <= 0x7F) goto yy624; + if (yych <= 0xC1) goto yy613; + if (yych <= 0xF4) goto yy624; + goto yy613; + } +yy616: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy613; + if (yych <= 0xBF) goto yy623; + goto yy613; +yy617: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x9F) goto yy613; + if (yych <= 0xBF) goto yy627; + goto yy613; +yy618: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy613; + if (yych <= 0xBF) goto yy627; + goto yy613; +yy619: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy613; + if (yych <= 0x9F) goto yy627; + goto yy613; +yy620: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x8F) goto yy613; + if (yych <= 0xBF) goto yy629; + goto yy613; +yy621: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy613; + if (yych <= 0xBF) goto yy629; + goto yy613; +yy622: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy613; + if (yych <= 0x8F) goto yy629; + goto yy613; +yy623: + yych = *++p; +yy624: + if (yybm[0+yych] & 64) { + goto yy623; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy625; + if (yych <= '-') goto yy626; + } else { + if (yych <= 0xDF) goto yy627; + if (yych <= 0xE0) goto yy628; + goto yy629; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy630; + if (yych <= 0xEF) goto yy629; + goto yy631; + } else { + if (yych <= 0xF3) goto yy632; + if (yych <= 0xF4) goto yy633; + } + } +yy625: + p = marker; + if (yyaccept == 0) { + goto yy613; + } else { + goto yy637; + } +yy626: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy623; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy625; + if (yych <= '-') goto yy634; + goto yy625; + } else { + if (yych <= 0xDF) goto yy627; + if (yych <= 0xE0) goto yy628; + goto yy629; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy630; + if (yych <= 0xEF) goto yy629; + goto yy631; + } else { + if (yych <= 0xF3) goto yy632; + if (yych <= 0xF4) goto yy633; + goto yy625; + } + } +yy627: + yych = *++p; + if (yych <= 0x7F) goto yy625; + if (yych <= 0xBF) goto yy623; + goto yy625; +yy628: + yych = *++p; + if (yych <= 0x9F) goto yy625; + if (yych <= 0xBF) goto yy627; + goto yy625; +yy629: + yych = *++p; + if (yych <= 0x7F) goto yy625; + if (yych <= 0xBF) goto yy627; + goto yy625; +yy630: + yych = *++p; + if (yych <= 0x7F) goto yy625; + if (yych <= 0x9F) goto yy627; + goto yy625; +yy631: + yych = *++p; + if (yych <= 0x8F) goto yy625; + if (yych <= 0xBF) goto yy629; + goto yy625; +yy632: + yych = *++p; + if (yych <= 0x7F) goto yy625; + if (yych <= 0xBF) goto yy629; + goto yy625; +yy633: + yych = *++p; + if (yych <= 0x7F) goto yy625; + if (yych <= 0x8F) goto yy629; + goto yy625; +yy634: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy634; + } + if (yych <= 0xDF) { + if (yych <= '=') { + if (yych <= 0x00) goto yy625; + if (yych == '\n') goto yy625; + goto yy623; + } else { + if (yych <= '>') goto yy636; + if (yych <= 0x7F) goto yy623; + if (yych <= 0xC1) goto yy625; + goto yy627; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy628; + if (yych == 0xED) goto yy630; + goto yy629; + } else { + if (yych <= 0xF0) goto yy631; + if (yych <= 0xF3) goto yy632; + if (yych <= 0xF4) goto yy633; + goto yy625; + } + } +yy636: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy623; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy637; + if (yych <= '-') goto yy626; + } else { + if (yych <= 0xDF) goto yy627; + if (yych <= 0xE0) goto yy628; + goto yy629; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy630; + if (yych <= 0xEF) goto yy629; + goto yy631; + } else { + if (yych <= 0xF3) goto yy632; + if (yych <= 0xF4) goto yy633; + } + } +yy637: + { return (bufsize_t)(p - start); } +} + } // Try to match an HTML block end line of type 3 -bufsize_t _scan_html_block_end_3(const unsigned char *p) { +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 yy858; - if (yych != '\n') - goto yy860; - } else { - if (yych <= '?') - goto yy861; - if (yych <= 0x7F) - goto yy860; - if (yych >= 0xC2) - goto yy862; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy863; - if (yych == 0xED) - goto yy865; - goto yy864; - } else { - if (yych <= 0xF0) - goto yy866; - if (yych <= 0xF3) - goto yy867; - if (yych <= 0xF4) - goto yy868; - } - } - yy858: - ++p; - yy859 : { return 0; } - yy860: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy859; - if (yych <= '\t') - goto yy873; - goto yy859; - } else { - if (yych <= 0x7F) - goto yy873; - if (yych <= 0xC1) - goto yy859; - if (yych <= 0xF4) - goto yy873; - goto yy859; - } - yy861: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '=') { - if (yych <= 0x00) - goto yy859; - if (yych == '\n') - goto yy859; - goto yy873; - } else { - if (yych <= 0x7F) { - if (yych <= '>') - goto yy881; - goto yy873; - } else { - if (yych <= 0xC1) - goto yy859; - if (yych <= 0xF4) - goto yy873; - goto yy859; - } - } - yy862: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy859; - if (yych <= 0xBF) - goto yy872; - goto yy859; - yy863: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy859; - if (yych <= 0xBF) - goto yy871; - goto yy859; - yy864: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy859; - if (yych <= 0xBF) - goto yy871; - goto yy859; - yy865: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy859; - if (yych <= 0x9F) - goto yy871; - goto yy859; - yy866: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy859; - if (yych <= 0xBF) - goto yy869; - goto yy859; - yy867: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy859; - if (yych <= 0xBF) - goto yy869; - goto yy859; - yy868: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy859; - if (yych >= 0x90) - goto yy859; - yy869: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy870; - if (yych <= 0xBF) - goto yy871; - yy870: - p = marker; - if (yyaccept == 0) { - goto yy859; - } else { - goto yy882; - } - yy871: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy870; - if (yych >= 0xC0) - goto yy870; - yy872: - ++p; - yych = *p; - yy873: - if (yybm[0 + yych] & 64) { - goto yy872; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy870; - if (yych >= '@') - goto yy870; - } else { - if (yych <= 0xDF) - goto yy871; - if (yych <= 0xE0) - goto yy876; - goto yy869; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy880; - if (yych <= 0xEF) - goto yy869; - goto yy877; - } else { - if (yych <= 0xF3) - goto yy878; - if (yych <= 0xF4) - goto yy879; - goto yy870; - } - } - yy874: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy874; - } - if (yych <= 0xDF) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy870; - if (yych == '\n') - goto yy870; - goto yy872; - } else { - if (yych <= '>') - goto yy881; - if (yych <= 0x7F) - goto yy872; - if (yych <= 0xC1) - goto yy870; - goto yy871; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy876; - if (yych == 0xED) - goto yy880; - goto yy869; - } else { - if (yych <= 0xF0) - goto yy877; - if (yych <= 0xF3) - goto yy878; - if (yych <= 0xF4) - goto yy879; - goto yy870; - } - } - yy876: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy870; - if (yych <= 0xBF) - goto yy871; - goto yy870; - yy877: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy870; - if (yych <= 0xBF) - goto yy869; - goto yy870; - yy878: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy870; - if (yych <= 0xBF) - goto yy869; - goto yy870; - yy879: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy870; - if (yych <= 0x8F) - goto yy869; - goto yy870; - yy880: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy870; - if (yych <= 0x9F) - goto yy871; - goto yy870; - yy881: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy872; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy882; - if (yych <= '?') - goto yy874; - } else { - if (yych <= 0xDF) - goto yy871; - if (yych <= 0xE0) - goto yy876; - goto yy869; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy880; - if (yych <= 0xEF) - goto yy869; - goto yy877; - } else { - if (yych <= 0xF3) - goto yy878; - if (yych <= 0xF4) - goto yy879; - } - } - yy882 : { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 0, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 128, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= 0xDF) { + if (yych <= '>') { + if (yych <= 0x00) goto yy640; + if (yych != '\n') goto yy642; + } else { + if (yych <= '?') goto yy643; + if (yych <= 0x7F) goto yy642; + if (yych >= 0xC2) goto yy644; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy645; + if (yych == 0xED) goto yy647; + goto yy646; + } else { + if (yych <= 0xF0) goto yy648; + if (yych <= 0xF3) goto yy649; + if (yych <= 0xF4) goto yy650; + } + } +yy640: + ++p; +yy641: + { return 0; } +yy642: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych <= 0x00) goto yy641; + if (yych <= '\t') goto yy652; + goto yy641; + } else { + if (yych <= 0x7F) goto yy652; + if (yych <= 0xC1) goto yy641; + if (yych <= 0xF4) goto yy652; + goto yy641; + } +yy643: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '=') { + if (yych <= 0x00) goto yy641; + if (yych == '\n') goto yy641; + goto yy652; + } else { + if (yych <= 0x7F) { + if (yych <= '>') goto yy663; + goto yy652; + } else { + if (yych <= 0xC1) goto yy641; + if (yych <= 0xF4) goto yy652; + goto yy641; + } + } +yy644: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy641; + if (yych <= 0xBF) goto yy651; + goto yy641; +yy645: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x9F) goto yy641; + if (yych <= 0xBF) goto yy656; + goto yy641; +yy646: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy641; + if (yych <= 0xBF) goto yy656; + goto yy641; +yy647: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy641; + if (yych <= 0x9F) goto yy656; + goto yy641; +yy648: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x8F) goto yy641; + if (yych <= 0xBF) goto yy658; + goto yy641; +yy649: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy641; + if (yych <= 0xBF) goto yy658; + goto yy641; +yy650: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy641; + if (yych <= 0x8F) goto yy658; + goto yy641; +yy651: + yych = *++p; +yy652: + if (yybm[0+yych] & 64) { + goto yy651; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy653; + if (yych <= '?') goto yy654; + } else { + if (yych <= 0xDF) goto yy656; + if (yych <= 0xE0) goto yy657; + goto yy658; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy659; + if (yych <= 0xEF) goto yy658; + goto yy660; + } else { + if (yych <= 0xF3) goto yy661; + if (yych <= 0xF4) goto yy662; + } + } +yy653: + p = marker; + if (yyaccept == 0) { + goto yy641; + } else { + goto yy664; + } +yy654: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy654; + } + if (yych <= 0xDF) { + if (yych <= '=') { + if (yych <= 0x00) goto yy653; + if (yych == '\n') goto yy653; + goto yy651; + } else { + if (yych <= '>') goto yy663; + if (yych <= 0x7F) goto yy651; + if (yych <= 0xC1) goto yy653; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy657; + if (yych == 0xED) goto yy659; + goto yy658; + } else { + if (yych <= 0xF0) goto yy660; + if (yych <= 0xF3) goto yy661; + if (yych <= 0xF4) goto yy662; + goto yy653; + } + } +yy656: + yych = *++p; + if (yych <= 0x7F) goto yy653; + if (yych <= 0xBF) goto yy651; + goto yy653; +yy657: + yych = *++p; + if (yych <= 0x9F) goto yy653; + if (yych <= 0xBF) goto yy656; + goto yy653; +yy658: + yych = *++p; + if (yych <= 0x7F) goto yy653; + if (yych <= 0xBF) goto yy656; + goto yy653; +yy659: + yych = *++p; + if (yych <= 0x7F) goto yy653; + if (yych <= 0x9F) goto yy656; + goto yy653; +yy660: + yych = *++p; + if (yych <= 0x8F) goto yy653; + if (yych <= 0xBF) goto yy658; + goto yy653; +yy661: + yych = *++p; + if (yych <= 0x7F) goto yy653; + if (yych <= 0xBF) goto yy658; + goto yy653; +yy662: + yych = *++p; + if (yych <= 0x7F) goto yy653; + if (yych <= 0x8F) goto yy658; + goto yy653; +yy663: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy651; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy664; + if (yych <= '?') goto yy654; + } else { + if (yych <= 0xDF) goto yy656; + if (yych <= 0xE0) goto yy657; + goto yy658; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy659; + if (yych <= 0xEF) goto yy658; + goto yy660; + } else { + if (yych <= 0xF3) goto yy661; + if (yych <= 0xF4) goto yy662; + } + } +yy664: + { return (bufsize_t)(p - start); } +} + } // Try to match an HTML block end line of type 4 -bufsize_t _scan_html_block_end_4(const unsigned char *p) { +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, 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 <= 0xDF) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy885; - if (yych != '\n') - goto yy887; - } else { - if (yych <= '>') - goto yy888; - if (yych <= 0x7F) - goto yy887; - if (yych >= 0xC2) - goto yy890; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy891; - if (yych == 0xED) - goto yy893; - goto yy892; - } else { - if (yych <= 0xF0) - goto yy894; - if (yych <= 0xF3) - goto yy895; - if (yych <= 0xF4) - goto yy896; - } - } - yy885: - ++p; - yy886 : { return 0; } - yy887: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy886; - if (yych <= '\t') - goto yy901; - goto yy886; - } else { - if (yych <= 0x7F) - goto yy901; - if (yych <= 0xC1) - goto yy886; - if (yych <= 0xF4) - goto yy901; - goto yy886; - } - yy888: - yyaccept = 1; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy889; - if (yych <= '\t') - goto yy901; - } else { - if (yych <= 0x7F) - goto yy901; - if (yych <= 0xC1) - goto yy889; - if (yych <= 0xF4) - goto yy901; - } - yy889 : { return (bufsize_t)(p - start); } - yy890: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy886; - if (yych <= 0xBF) - goto yy900; - goto yy886; - yy891: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy886; - if (yych <= 0xBF) - goto yy899; - goto yy886; - yy892: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy886; - if (yych <= 0xBF) - goto yy899; - goto yy886; - yy893: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy886; - if (yych <= 0x9F) - goto yy899; - goto yy886; - yy894: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy886; - if (yych <= 0xBF) - goto yy897; - goto yy886; - yy895: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy886; - if (yych <= 0xBF) - goto yy897; - goto yy886; - yy896: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy886; - if (yych >= 0x90) - goto yy886; - yy897: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy898; - if (yych <= 0xBF) - goto yy899; - yy898: - p = marker; - if (yyaccept == 0) { - goto yy886; - } else { - goto yy889; - } - yy899: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy898; - if (yych >= 0xC0) - goto yy898; - yy900: - ++p; - yych = *p; - yy901: - if (yybm[0 + yych] & 64) { - goto yy900; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy898; - if (yych >= '?') - goto yy898; - } else { - if (yych <= 0xDF) - goto yy899; - if (yych <= 0xE0) - goto yy904; - goto yy897; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy908; - if (yych <= 0xEF) - goto yy897; - goto yy905; - } else { - if (yych <= 0xF3) - goto yy906; - if (yych <= 0xF4) - goto yy907; - goto yy898; - } - } - yy902: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy900; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy889; - if (yych <= '>') - goto yy902; - goto yy889; - } else { - if (yych <= 0xDF) - goto yy899; - if (yych >= 0xE1) - goto yy897; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy908; - if (yych <= 0xEF) - goto yy897; - goto yy905; - } else { - if (yych <= 0xF3) - goto yy906; - if (yych <= 0xF4) - goto yy907; - goto yy889; - } - } - yy904: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy898; - if (yych <= 0xBF) - goto yy899; - goto yy898; - yy905: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy898; - if (yych <= 0xBF) - goto yy897; - goto yy898; - yy906: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy898; - if (yych <= 0xBF) - goto yy897; - goto yy898; - yy907: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy898; - if (yych <= 0x8F) - goto yy897; - goto yy898; - yy908: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy898; - if (yych <= 0x9F) - goto yy899; - goto yy898; - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 0, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 64, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yybm[0+yych] & 64) { + goto yy670; + } + if (yych <= 0xE0) { + if (yych <= '\n') { + if (yych <= 0x00) goto yy667; + if (yych <= '\t') goto yy669; + } else { + if (yych <= 0x7F) goto yy669; + if (yych <= 0xC1) goto yy667; + if (yych <= 0xDF) goto yy673; + goto yy674; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy676; + goto yy675; + } else { + if (yych <= 0xF0) goto yy677; + if (yych <= 0xF3) goto yy678; + if (yych <= 0xF4) goto yy679; + } + } +yy667: + ++p; +yy668: + { return 0; } +yy669: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych <= 0x00) goto yy668; + if (yych <= '\t') goto yy681; + goto yy668; + } else { + if (yych <= 0x7F) goto yy681; + if (yych <= 0xC1) goto yy668; + if (yych <= 0xF4) goto yy681; + goto yy668; + } +yy670: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy680; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy672; + if (yych <= '>') goto yy670; + } else { + if (yych <= 0xDF) goto yy683; + if (yych <= 0xE0) goto yy684; + goto yy685; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy686; + if (yych <= 0xEF) goto yy685; + goto yy687; + } else { + if (yych <= 0xF3) goto yy688; + if (yych <= 0xF4) goto yy689; + } + } +yy672: + { return (bufsize_t)(p - start); } +yy673: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy668; + if (yych <= 0xBF) goto yy680; + goto yy668; +yy674: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x9F) goto yy668; + if (yych <= 0xBF) goto yy683; + goto yy668; +yy675: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy668; + if (yych <= 0xBF) goto yy683; + goto yy668; +yy676: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy668; + if (yych <= 0x9F) goto yy683; + goto yy668; +yy677: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x8F) goto yy668; + if (yych <= 0xBF) goto yy685; + goto yy668; +yy678: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy668; + if (yych <= 0xBF) goto yy685; + goto yy668; +yy679: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy668; + if (yych <= 0x8F) goto yy685; + goto yy668; +yy680: + yych = *++p; +yy681: + if (yybm[0+yych] & 128) { + goto yy680; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy682; + if (yych <= '>') goto yy670; + } else { + if (yych <= 0xDF) goto yy683; + if (yych <= 0xE0) goto yy684; + goto yy685; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy686; + if (yych <= 0xEF) goto yy685; + goto yy687; + } else { + if (yych <= 0xF3) goto yy688; + if (yych <= 0xF4) goto yy689; + } + } +yy682: + p = marker; + if (yyaccept == 0) { + goto yy668; + } else { + goto yy672; + } +yy683: + yych = *++p; + if (yych <= 0x7F) goto yy682; + if (yych <= 0xBF) goto yy680; + goto yy682; +yy684: + yych = *++p; + if (yych <= 0x9F) goto yy682; + if (yych <= 0xBF) goto yy683; + goto yy682; +yy685: + yych = *++p; + if (yych <= 0x7F) goto yy682; + if (yych <= 0xBF) goto yy683; + goto yy682; +yy686: + yych = *++p; + if (yych <= 0x7F) goto yy682; + if (yych <= 0x9F) goto yy683; + goto yy682; +yy687: + yych = *++p; + if (yych <= 0x8F) goto yy682; + if (yych <= 0xBF) goto yy685; + goto yy682; +yy688: + yych = *++p; + if (yych <= 0x7F) goto yy682; + if (yych <= 0xBF) goto yy685; + goto yy682; +yy689: + yych = *++p; + if (yych <= 0x7F) goto yy682; + if (yych <= 0x8F) goto yy685; + goto yy682; +} + } // Try to match an HTML block end line of type 5 -bufsize_t _scan_html_block_end_5(const unsigned char *p) { +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 yy911; - if (yych != '\n') - goto yy913; - } else { - if (yych <= ']') - goto yy914; - if (yych <= 0x7F) - goto yy913; - if (yych >= 0xC2) - goto yy915; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy916; - if (yych == 0xED) - goto yy918; - goto yy917; - } else { - if (yych <= 0xF0) - goto yy919; - if (yych <= 0xF3) - goto yy920; - if (yych <= 0xF4) - goto yy921; - } - } - yy911: - ++p; - yy912 : { return 0; } - yy913: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= '\n') { - if (yych <= 0x00) - goto yy912; - if (yych <= '\t') - goto yy926; - goto yy912; - } else { - if (yych <= 0x7F) - goto yy926; - if (yych <= 0xC1) - goto yy912; - if (yych <= 0xF4) - goto yy926; - goto yy912; - } - yy914: - yyaccept = 0; - yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy933; - } - if (yych <= '\n') { - if (yych <= 0x00) - goto yy912; - if (yych <= '\t') - goto yy926; - goto yy912; - } else { - if (yych <= 0x7F) - goto yy926; - if (yych <= 0xC1) - goto yy912; - if (yych <= 0xF4) - goto yy926; - goto yy912; - } - yy915: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy912; - if (yych <= 0xBF) - goto yy925; - goto yy912; - yy916: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x9F) - goto yy912; - if (yych <= 0xBF) - goto yy924; - goto yy912; - yy917: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy912; - if (yych <= 0xBF) - goto yy924; - goto yy912; - yy918: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy912; - if (yych <= 0x9F) - goto yy924; - goto yy912; - yy919: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x8F) - goto yy912; - if (yych <= 0xBF) - goto yy922; - goto yy912; - yy920: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy912; - if (yych <= 0xBF) - goto yy922; - goto yy912; - yy921: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x7F) - goto yy912; - if (yych >= 0x90) - goto yy912; - yy922: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy923; - if (yych <= 0xBF) - goto yy924; - yy923: - p = marker; - if (yyaccept == 0) { - goto yy912; - } else { - goto yy936; - } - yy924: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy923; - if (yych >= 0xC0) - goto yy923; - yy925: - ++p; - yych = *p; - yy926: - if (yybm[0 + yych] & 64) { - goto yy925; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy923; - if (yych >= '^') - goto yy923; - } else { - if (yych <= 0xDF) - goto yy924; - if (yych <= 0xE0) - goto yy928; - goto yy922; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy932; - if (yych <= 0xEF) - goto yy922; - goto yy929; - } else { - if (yych <= 0xF3) - goto yy930; - if (yych <= 0xF4) - goto yy931; - goto yy923; - } - } - yy927: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy925; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy923; - if (yych <= ']') - goto yy933; - goto yy923; - } else { - if (yych <= 0xDF) - goto yy924; - if (yych >= 0xE1) - goto yy922; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy932; - if (yych <= 0xEF) - goto yy922; - goto yy929; - } else { - if (yych <= 0xF3) - goto yy930; - if (yych <= 0xF4) - goto yy931; - goto yy923; - } - } - yy928: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy923; - if (yych <= 0xBF) - goto yy924; - goto yy923; - yy929: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy923; - if (yych <= 0xBF) - goto yy922; - goto yy923; - yy930: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy923; - if (yych <= 0xBF) - goto yy922; - goto yy923; - yy931: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy923; - if (yych <= 0x8F) - goto yy922; - goto yy923; - yy932: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy923; - if (yych <= 0x9F) - goto yy924; - goto yy923; - yy933: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy933; - } - if (yych <= 0xDF) { - if (yych <= '=') { - if (yych <= 0x00) - goto yy923; - if (yych == '\n') - goto yy923; - goto yy925; - } else { - if (yych <= '>') - goto yy935; - if (yych <= 0x7F) - goto yy925; - if (yych <= 0xC1) - goto yy923; - goto yy924; - } - } else { - if (yych <= 0xEF) { - if (yych <= 0xE0) - goto yy928; - if (yych == 0xED) - goto yy932; - goto yy922; - } else { - if (yych <= 0xF0) - goto yy929; - if (yych <= 0xF3) - goto yy930; - if (yych <= 0xF4) - goto yy931; - goto yy923; - } - } - yy935: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy925; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= '\n') - goto yy936; - if (yych <= ']') - goto yy927; - } else { - if (yych <= 0xDF) - goto yy924; - if (yych <= 0xE0) - goto yy928; - goto yy922; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy932; - if (yych <= 0xEF) - goto yy922; - goto yy929; - } else { - if (yych <= 0xF3) - goto yy930; - if (yych <= 0xF4) - goto yy931; - } - } - yy936 : { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 0, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 128, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= 0xDF) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy692; + if (yych != '\n') goto yy694; + } else { + if (yych <= ']') goto yy695; + if (yych <= 0x7F) goto yy694; + if (yych >= 0xC2) goto yy696; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy697; + if (yych == 0xED) goto yy699; + goto yy698; + } else { + if (yych <= 0xF0) goto yy700; + if (yych <= 0xF3) goto yy701; + if (yych <= 0xF4) goto yy702; + } + } +yy692: + ++p; +yy693: + { return 0; } +yy694: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= '\n') { + if (yych <= 0x00) goto yy693; + if (yych <= '\t') goto yy704; + goto yy693; + } else { + if (yych <= 0x7F) goto yy704; + if (yych <= 0xC1) goto yy693; + if (yych <= 0xF4) goto yy704; + goto yy693; + } +yy695: + yyaccept = 0; + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy714; + } + if (yych <= '\n') { + if (yych <= 0x00) goto yy693; + if (yych <= '\t') goto yy704; + goto yy693; + } else { + if (yych <= 0x7F) goto yy704; + if (yych <= 0xC1) goto yy693; + if (yych <= 0xF4) goto yy704; + goto yy693; + } +yy696: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy693; + if (yych <= 0xBF) goto yy703; + goto yy693; +yy697: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x9F) goto yy693; + if (yych <= 0xBF) goto yy707; + goto yy693; +yy698: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy693; + if (yych <= 0xBF) goto yy707; + goto yy693; +yy699: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy693; + if (yych <= 0x9F) goto yy707; + goto yy693; +yy700: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x8F) goto yy693; + if (yych <= 0xBF) goto yy709; + goto yy693; +yy701: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy693; + if (yych <= 0xBF) goto yy709; + goto yy693; +yy702: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x7F) goto yy693; + if (yych <= 0x8F) goto yy709; + goto yy693; +yy703: + yych = *++p; +yy704: + if (yybm[0+yych] & 64) { + goto yy703; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy705; + if (yych <= ']') goto yy706; + } else { + if (yych <= 0xDF) goto yy707; + if (yych <= 0xE0) goto yy708; + goto yy709; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy710; + if (yych <= 0xEF) goto yy709; + goto yy711; + } else { + if (yych <= 0xF3) goto yy712; + if (yych <= 0xF4) goto yy713; + } + } +yy705: + p = marker; + if (yyaccept == 0) { + goto yy693; + } else { + goto yy717; + } +yy706: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy703; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy705; + if (yych <= ']') goto yy714; + goto yy705; + } else { + if (yych <= 0xDF) goto yy707; + if (yych <= 0xE0) goto yy708; + goto yy709; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy710; + if (yych <= 0xEF) goto yy709; + goto yy711; + } else { + if (yych <= 0xF3) goto yy712; + if (yych <= 0xF4) goto yy713; + goto yy705; + } + } +yy707: + yych = *++p; + if (yych <= 0x7F) goto yy705; + if (yych <= 0xBF) goto yy703; + goto yy705; +yy708: + yych = *++p; + if (yych <= 0x9F) goto yy705; + if (yych <= 0xBF) goto yy707; + goto yy705; +yy709: + yych = *++p; + if (yych <= 0x7F) goto yy705; + if (yych <= 0xBF) goto yy707; + goto yy705; +yy710: + yych = *++p; + if (yych <= 0x7F) goto yy705; + if (yych <= 0x9F) goto yy707; + goto yy705; +yy711: + yych = *++p; + if (yych <= 0x8F) goto yy705; + if (yych <= 0xBF) goto yy709; + goto yy705; +yy712: + yych = *++p; + if (yych <= 0x7F) goto yy705; + if (yych <= 0xBF) goto yy709; + goto yy705; +yy713: + yych = *++p; + if (yych <= 0x7F) goto yy705; + if (yych <= 0x8F) goto yy709; + goto yy705; +yy714: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy714; + } + if (yych <= 0xDF) { + if (yych <= '=') { + if (yych <= 0x00) goto yy705; + if (yych == '\n') goto yy705; + goto yy703; + } else { + if (yych <= '>') goto yy716; + if (yych <= 0x7F) goto yy703; + if (yych <= 0xC1) goto yy705; + goto yy707; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) goto yy708; + if (yych == 0xED) goto yy710; + goto yy709; + } else { + if (yych <= 0xF0) goto yy711; + if (yych <= 0xF3) goto yy712; + if (yych <= 0xF4) goto yy713; + goto yy705; + } + } +yy716: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy703; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= '\n') goto yy717; + if (yych <= ']') goto yy706; + } else { + if (yych <= 0xDF) goto yy707; + if (yych <= 0xE0) goto yy708; + goto yy709; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy710; + if (yych <= 0xEF) goto yy709; + goto yy711; + } else { + if (yych <= 0xF3) goto yy712; + if (yych <= 0xF4) goto yy713; + } + } +yy717: + { return (bufsize_t)(p - start); } +} + } // Try to match a link title (in single quotes, in double quotes, or // in parentheses), returning number of chars matched. Allow one // level of internal nesting (quotes within quotes). -bufsize_t _scan_link_title(const unsigned char *p) { +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, 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, 224, - 224, 224, 224, 224, 224, 224, 96, 224, 224, 224, 224, 160, 224, 192, - 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, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 16, 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, 224, 224, 224, 224, 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 <= '&') { - if (yych == '"') - goto yy941; - } else { - if (yych <= '\'') - goto yy942; - if (yych <= '(') - goto yy943; - } - ++p; - yy940 : { return 0; } - yy941: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x00) - goto yy940; - if (yych <= 0x7F) - goto yy976; - if (yych <= 0xC1) - goto yy940; - if (yych <= 0xF4) - goto yy976; - goto yy940; - yy942: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x00) - goto yy940; - if (yych <= 0x7F) - goto yy962; - if (yych <= 0xC1) - goto yy940; - if (yych <= 0xF4) - goto yy962; - goto yy940; - yy943: - yyaccept = 0; - yych = *(marker = ++p); - if (yych <= 0x00) - goto yy940; - if (yych <= 0x7F) - goto yy948; - if (yych <= 0xC1) - goto yy940; - if (yych <= 0xF4) - goto yy948; - goto yy940; - yy944: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy947; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= ')') - goto yy958; - goto yy944; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych <= 0xDF) - goto yy949; - goto yy950; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy955; - goto yy951; - } else { - if (yych <= 0xF0) - goto yy952; - if (yych <= 0xF3) - goto yy953; - if (yych <= 0xF4) - goto yy954; - } - } - yy946: - p = marker; - if (yyaccept <= 1) { - if (yyaccept == 0) { - goto yy940; - } else { - goto yy957; - } - } else { - if (yyaccept == 2) { - goto yy971; - } else { - goto yy985; - } - } - yy947: - ++p; - yych = *p; - yy948: - if (yybm[0 + yych] & 32) { - goto yy947; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= ')') - goto yy956; - goto yy944; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych >= 0xE0) - goto yy950; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy955; - goto yy951; - } else { - if (yych <= 0xF0) - goto yy952; - if (yych <= 0xF3) - goto yy953; - if (yych <= 0xF4) - goto yy954; - goto yy946; - } - } - yy949: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy947; - goto yy946; - yy950: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy946; - if (yych <= 0xBF) - goto yy949; - goto yy946; - yy951: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy949; - goto yy946; - yy952: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy946; - if (yych <= 0xBF) - goto yy951; - goto yy946; - yy953: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy951; - goto yy946; - yy954: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x8F) - goto yy951; - goto yy946; - yy955: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x9F) - goto yy949; - goto yy946; - yy956: - ++p; - yy957 : { return (bufsize_t)(p - start); } - yy958: - yyaccept = 1; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy947; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy957; - if (yych <= ')') - goto yy956; - goto yy944; - } else { - if (yych <= 0xC1) - goto yy957; - if (yych <= 0xDF) - goto yy949; - goto yy950; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy955; - goto yy951; - } else { - if (yych <= 0xF0) - goto yy952; - if (yych <= 0xF3) - goto yy953; - if (yych <= 0xF4) - goto yy954; - goto yy957; - } - } - yy959: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy961; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= '\'') - goto yy972; - goto yy959; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych <= 0xDF) - goto yy963; - goto yy964; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy969; - goto yy965; - } else { - if (yych <= 0xF0) - goto yy966; - if (yych <= 0xF3) - goto yy967; - if (yych <= 0xF4) - goto yy968; - goto yy946; - } - } - yy961: - ++p; - yych = *p; - yy962: - if (yybm[0 + yych] & 64) { - goto yy961; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= '\'') - goto yy970; - goto yy959; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych >= 0xE0) - goto yy964; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy969; - goto yy965; - } else { - if (yych <= 0xF0) - goto yy966; - if (yych <= 0xF3) - goto yy967; - if (yych <= 0xF4) - goto yy968; - goto yy946; - } - } - yy963: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy961; - goto yy946; - yy964: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy946; - if (yych <= 0xBF) - goto yy963; - goto yy946; - yy965: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy963; - goto yy946; - yy966: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy946; - if (yych <= 0xBF) - goto yy965; - goto yy946; - yy967: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy965; - goto yy946; - yy968: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x8F) - goto yy965; - goto yy946; - yy969: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x9F) - goto yy963; - goto yy946; - yy970: - ++p; - yy971 : { return (bufsize_t)(p - start); } - yy972: - yyaccept = 2; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy961; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy971; - if (yych <= '\'') - goto yy970; - goto yy959; - } else { - if (yych <= 0xC1) - goto yy971; - if (yych <= 0xDF) - goto yy963; - goto yy964; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy969; - goto yy965; - } else { - if (yych <= 0xF0) - goto yy966; - if (yych <= 0xF3) - goto yy967; - if (yych <= 0xF4) - goto yy968; - goto yy971; - } - } - yy973: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy975; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= '"') - goto yy986; - goto yy973; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych <= 0xDF) - goto yy977; - goto yy978; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy983; - goto yy979; - } else { - if (yych <= 0xF0) - goto yy980; - if (yych <= 0xF3) - goto yy981; - if (yych <= 0xF4) - goto yy982; - goto yy946; - } - } - yy975: - ++p; - yych = *p; - yy976: - if (yybm[0 + yych] & 128) { - goto yy975; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy946; - if (yych <= '"') - goto yy984; - goto yy973; - } else { - if (yych <= 0xC1) - goto yy946; - if (yych >= 0xE0) - goto yy978; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy983; - goto yy979; - } else { - if (yych <= 0xF0) - goto yy980; - if (yych <= 0xF3) - goto yy981; - if (yych <= 0xF4) - goto yy982; - goto yy946; - } - } - yy977: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy975; - goto yy946; - yy978: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy946; - if (yych <= 0xBF) - goto yy977; - goto yy946; - yy979: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy977; - goto yy946; - yy980: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy946; - if (yych <= 0xBF) - goto yy979; - goto yy946; - yy981: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0xBF) - goto yy979; - goto yy946; - yy982: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x8F) - goto yy979; - goto yy946; - yy983: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy946; - if (yych <= 0x9F) - goto yy977; - goto yy946; - yy984: - ++p; - yy985 : { return (bufsize_t)(p - start); } - yy986: - yyaccept = 3; - marker = ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy975; - } - if (yych <= 0xE0) { - if (yych <= '\\') { - if (yych <= 0x00) - goto yy985; - if (yych <= '"') - goto yy984; - goto yy973; - } else { - if (yych <= 0xC1) - goto yy985; - if (yych <= 0xDF) - goto yy977; - goto yy978; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy983; - goto yy979; - } else { - if (yych <= 0xF0) - goto yy980; - if (yych <= 0xF3) - goto yy981; - if (yych <= 0xF4) - goto yy982; - goto yy985; - } - } - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 0, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 192, 208, 208, 208, 208, 144, + 208, 80, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 32, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= '&') { + if (yych == '"') goto yy722; + } else { + if (yych <= '\'') goto yy723; + if (yych <= '(') goto yy724; + } + ++p; +yy721: + { return 0; } +yy722: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x00) goto yy721; + if (yych <= 0x7F) goto yy726; + if (yych <= 0xC1) goto yy721; + if (yych <= 0xF4) goto yy726; + goto yy721; +yy723: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x00) goto yy721; + if (yych <= 0x7F) goto yy740; + if (yych <= 0xC1) goto yy721; + if (yych <= 0xF4) goto yy740; + goto yy721; +yy724: + yyaccept = 0; + yych = *(marker = ++p); + if (yych <= 0x00) goto yy721; + if (yych <= 0x7F) goto yy753; + if (yych <= 0xC1) goto yy721; + if (yych <= 0xF4) goto yy753; + goto yy721; +yy725: + yych = *++p; +yy726: + if (yybm[0+yych] & 16) { + goto yy725; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych <= '"') goto yy728; + goto yy730; + } else { + if (yych <= 0xC1) goto yy727; + if (yych <= 0xDF) goto yy732; + goto yy733; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy735; + goto yy734; + } else { + if (yych <= 0xF0) goto yy736; + if (yych <= 0xF3) goto yy737; + if (yych <= 0xF4) goto yy738; + } + } +yy727: + p = marker; + if (yyaccept <= 1) { + if (yyaccept == 0) { + goto yy721; + } else { + goto yy729; + } + } else { + if (yyaccept == 2) { + goto yy742; + } else { + goto yy755; + } + } +yy728: + ++p; +yy729: + { return (bufsize_t)(p - start); } +yy730: + yych = *++p; + if (yybm[0+yych] & 16) { + goto yy725; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych <= '"') goto yy765; + goto yy730; + } else { + if (yych <= 0xC1) goto yy727; + if (yych >= 0xE0) goto yy733; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy735; + goto yy734; + } else { + if (yych <= 0xF0) goto yy736; + if (yych <= 0xF3) goto yy737; + if (yych <= 0xF4) goto yy738; + goto yy727; + } + } +yy732: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy725; + goto yy727; +yy733: + yych = *++p; + if (yych <= 0x9F) goto yy727; + if (yych <= 0xBF) goto yy732; + goto yy727; +yy734: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy732; + goto yy727; +yy735: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x9F) goto yy732; + goto yy727; +yy736: + yych = *++p; + if (yych <= 0x8F) goto yy727; + if (yych <= 0xBF) goto yy734; + goto yy727; +yy737: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy734; + goto yy727; +yy738: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x8F) goto yy734; + goto yy727; +yy739: + yych = *++p; +yy740: + if (yybm[0+yych] & 64) { + goto yy739; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych >= '(') goto yy743; + } else { + if (yych <= 0xC1) goto yy727; + if (yych <= 0xDF) goto yy745; + goto yy746; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy748; + goto yy747; + } else { + if (yych <= 0xF0) goto yy749; + if (yych <= 0xF3) goto yy750; + if (yych <= 0xF4) goto yy751; + goto yy727; + } + } +yy741: + ++p; +yy742: + { return (bufsize_t)(p - start); } +yy743: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy739; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych <= '\'') goto yy766; + goto yy743; + } else { + if (yych <= 0xC1) goto yy727; + if (yych >= 0xE0) goto yy746; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy748; + goto yy747; + } else { + if (yych <= 0xF0) goto yy749; + if (yych <= 0xF3) goto yy750; + if (yych <= 0xF4) goto yy751; + goto yy727; + } + } +yy745: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy739; + goto yy727; +yy746: + yych = *++p; + if (yych <= 0x9F) goto yy727; + if (yych <= 0xBF) goto yy745; + goto yy727; +yy747: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy745; + goto yy727; +yy748: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x9F) goto yy745; + goto yy727; +yy749: + yych = *++p; + if (yych <= 0x8F) goto yy727; + if (yych <= 0xBF) goto yy747; + goto yy727; +yy750: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy747; + goto yy727; +yy751: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x8F) goto yy747; + goto yy727; +yy752: + yych = *++p; +yy753: + if (yybm[0+yych] & 128) { + goto yy752; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych >= '*') goto yy756; + } else { + if (yych <= 0xC1) goto yy727; + if (yych <= 0xDF) goto yy758; + goto yy759; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy761; + goto yy760; + } else { + if (yych <= 0xF0) goto yy762; + if (yych <= 0xF3) goto yy763; + if (yych <= 0xF4) goto yy764; + goto yy727; + } + } +yy754: + ++p; +yy755: + { return (bufsize_t)(p - start); } +yy756: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy752; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy727; + if (yych <= ')') goto yy767; + goto yy756; + } else { + if (yych <= 0xC1) goto yy727; + if (yych >= 0xE0) goto yy759; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy761; + goto yy760; + } else { + if (yych <= 0xF0) goto yy762; + if (yych <= 0xF3) goto yy763; + if (yych <= 0xF4) goto yy764; + goto yy727; + } + } +yy758: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy752; + goto yy727; +yy759: + yych = *++p; + if (yych <= 0x9F) goto yy727; + if (yych <= 0xBF) goto yy758; + goto yy727; +yy760: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy758; + goto yy727; +yy761: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x9F) goto yy758; + goto yy727; +yy762: + yych = *++p; + if (yych <= 0x8F) goto yy727; + if (yych <= 0xBF) goto yy760; + goto yy727; +yy763: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0xBF) goto yy760; + goto yy727; +yy764: + yych = *++p; + if (yych <= 0x7F) goto yy727; + if (yych <= 0x8F) goto yy760; + goto yy727; +yy765: + yyaccept = 1; + yych = *(marker = ++p); + if (yybm[0+yych] & 16) { + goto yy725; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy729; + if (yych <= '"') goto yy728; + goto yy730; + } else { + if (yych <= 0xC1) goto yy729; + if (yych <= 0xDF) goto yy732; + goto yy733; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy735; + goto yy734; + } else { + if (yych <= 0xF0) goto yy736; + if (yych <= 0xF3) goto yy737; + if (yych <= 0xF4) goto yy738; + goto yy729; + } + } +yy766: + yyaccept = 2; + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy739; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy742; + if (yych <= '\'') goto yy741; + goto yy743; + } else { + if (yych <= 0xC1) goto yy742; + if (yych <= 0xDF) goto yy745; + goto yy746; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy748; + goto yy747; + } else { + if (yych <= 0xF0) goto yy749; + if (yych <= 0xF3) goto yy750; + if (yych <= 0xF4) goto yy751; + goto yy742; + } + } +yy767: + yyaccept = 3; + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy752; + } + if (yych <= 0xE0) { + if (yych <= '\\') { + if (yych <= 0x00) goto yy755; + if (yych <= ')') goto yy754; + goto yy756; + } else { + if (yych <= 0xC1) goto yy755; + if (yych <= 0xDF) goto yy758; + goto yy759; + } + } else { + if (yych <= 0xEF) { + if (yych == 0xED) goto yy761; + goto yy760; + } else { + if (yych <= 0xF0) goto yy762; + if (yych <= 0xF3) goto yy763; + if (yych <= 0xF4) goto yy764; + goto yy755; + } + } +} + } // Match space characters, including newlines. -bufsize_t _scan_spacechars(const unsigned char *p) { - const unsigned char *start = p; +bufsize_t _scan_spacechars(const unsigned char *p) +{ + const unsigned char *start = p; \ + +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 128, 128, 128, 128, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yybm[0+yych] & 128) { + goto yy772; + } + ++p; + { return 0; } +yy772: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy772; + } + { return (bufsize_t)(p - start); } +} - { - 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 (yych <= 0x08) - goto yy989; - if (yych <= '\r') - goto yy991; - if (yych == ' ') - goto yy991; - yy989: - ++p; - { return 0; } - yy991: - ++p; - yych = *p; - goto yy994; - yy992 : { return (bufsize_t)(p - start); } - yy993: - ++p; - yych = *p; - yy994: - if (yybm[0 + yych] & 128) { - goto yy993; - } - goto yy992; - } } // Match ATX heading start. -bufsize_t _scan_atx_heading_start(const unsigned char *p) { +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 yy999; - ++p; - yy998 : { return 0; } - yy999: - yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy1002; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy998; - if (yych >= '\v') - goto yy998; - } else { - if (yych <= '\r') - goto yy1000; - if (yych == '#') - goto yy1004; - goto yy998; - } - yy1000: - ++p; - yy1001 : { return (bufsize_t)(p - start); } - yy1002: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy1002; - } - goto yy1001; - yy1004: - yych = *++p; - if (yybm[0 + yych] & 128) { - goto yy1002; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1005; - if (yych <= '\n') - goto yy1000; - } else { - if (yych <= '\r') - goto yy1000; - if (yych == '#') - goto yy1006; - } - yy1005: - p = marker; - goto yy998; - yy1006: - yych = *++p; - if (yybm[0 + yych] & 128) { - goto yy1002; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1005; - if (yych <= '\n') - goto yy1000; - goto yy1005; - } else { - if (yych <= '\r') - goto yy1000; - if (yych != '#') - goto yy1005; - } - yych = *++p; - if (yybm[0 + yych] & 128) { - goto yy1002; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1005; - if (yych <= '\n') - goto yy1000; - goto yy1005; - } else { - if (yych <= '\r') - goto yy1000; - if (yych != '#') - goto yy1005; - } - yych = *++p; - if (yybm[0 + yych] & 128) { - goto yy1002; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1005; - if (yych <= '\n') - goto yy1000; - goto yy1005; - } else { - if (yych <= '\r') - goto yy1000; - if (yych != '#') - goto yy1005; - } - ++p; - if (yybm[0 + (yych = *p)] & 128) { - goto yy1002; - } - if (yych <= 0x08) - goto yy1005; - if (yych <= '\n') - goto yy1000; - if (yych == '\r') - goto yy1000; - goto yy1005; - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '#') goto yy779; + ++p; +yy778: + { return 0; } +yy779: + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy778; + if (yych <= '\n') goto yy783; + goto yy778; + } else { + if (yych <= '\r') goto yy783; + if (yych == '#') goto yy784; + goto yy778; + } +yy780: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } +yy782: + { return (bufsize_t)(p - start); } +yy783: + ++p; + goto yy782; +yy784: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy785; + if (yych <= '\n') goto yy783; + } else { + if (yych <= '\r') goto yy783; + if (yych == '#') goto yy786; + } +yy785: + p = marker; + goto yy778; +yy786: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy785; + if (yych <= '\n') goto yy783; + goto yy785; + } else { + if (yych <= '\r') goto yy783; + if (yych != '#') goto yy785; + } + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy785; + if (yych <= '\n') goto yy783; + goto yy785; + } else { + if (yych <= '\r') goto yy783; + if (yych != '#') goto yy785; + } + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy785; + if (yych <= '\n') goto yy783; + goto yy785; + } else { + if (yych <= '\r') goto yy783; + if (yych != '#') goto yy785; + } + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy780; + } + if (yych <= 0x08) goto yy785; + if (yych <= '\n') goto yy783; + if (yych == '\r') goto yy783; + goto yy785; +} + } // Match setext heading line. Return 1 for level-1 heading, // 2 for level-2, 0 for no match. -bufsize_t _scan_setext_heading_line(const unsigned char *p) { +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, 128, 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, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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 yy1014; - if (yych == '=') - goto yy1015; - ++p; - yy1013 : { return 0; } - yy1014: - yych = *(marker = ++p); - if (yybm[0 + yych] & 128) { - goto yy1027; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1013; - if (yych <= '\n') - goto yy1024; - goto yy1013; - } else { - if (yych <= '\r') - goto yy1024; - if (yych == ' ') - goto yy1024; - goto yy1013; - } - yy1015: - yych = *(marker = ++p); - if (yybm[0 + yych] & 64) { - goto yy1021; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1013; - if (yych <= '\n') - goto yy1017; - goto yy1013; - } else { - if (yych <= '\r') - goto yy1017; - if (yych == ' ') - goto yy1017; - goto yy1013; - } - yy1016: - ++p; - yych = *p; - yy1017: - if (yybm[0 + yych] & 32) { - goto yy1016; - } - if (yych <= 0x08) - goto yy1018; - if (yych <= '\n') - goto yy1019; - if (yych == '\r') - goto yy1019; - yy1018: - p = marker; - goto yy1013; - yy1019: - ++p; - { return 1; } - yy1021: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy1016; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1018; - if (yych <= '\n') - goto yy1019; - goto yy1018; - } else { - if (yych <= '\r') - goto yy1019; - if (yych == '=') - goto yy1021; - goto yy1018; - } - yy1023: - ++p; - yych = *p; - yy1024: - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1018; - if (yych <= '\t') - goto yy1023; - if (yych >= '\v') - goto yy1018; - } else { - if (yych <= '\r') - goto yy1025; - if (yych == ' ') - goto yy1023; - goto yy1018; - } - yy1025: - ++p; - { return 2; } - yy1027: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy1027; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1018; - if (yych <= '\t') - goto yy1023; - if (yych <= '\n') - goto yy1025; - goto yy1018; - } else { - if (yych <= '\r') - goto yy1025; - if (yych == ' ') - goto yy1023; - goto yy1018; - } - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 32, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 32, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 64, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '-') goto yy794; + if (yych == '=') goto yy795; + ++p; +yy793: + { return 0; } +yy794: + yych = *(marker = ++p); + if (yybm[0+yych] & 64) { + goto yy801; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy793; + if (yych <= '\n') goto yy797; + goto yy793; + } else { + if (yych <= '\r') goto yy797; + if (yych == ' ') goto yy797; + goto yy793; + } +yy795: + yych = *(marker = ++p); + if (yybm[0+yych] & 128) { + goto yy807; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy793; + if (yych <= '\n') goto yy804; + goto yy793; + } else { + if (yych <= '\r') goto yy804; + if (yych == ' ') goto yy804; + goto yy793; + } +yy796: + yych = *++p; +yy797: + if (yybm[0+yych] & 32) { + goto yy796; + } + if (yych <= 0x08) goto yy798; + if (yych <= '\n') goto yy799; + if (yych == '\r') goto yy799; +yy798: + p = marker; + goto yy793; +yy799: + ++p; + { return 2; } +yy801: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy796; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy798; + if (yych <= '\n') goto yy799; + goto yy798; + } else { + if (yych <= '\r') goto yy799; + if (yych == '-') goto yy801; + goto yy798; + } +yy803: + yych = *++p; +yy804: + if (yych <= '\f') { + if (yych <= 0x08) goto yy798; + if (yych <= '\t') goto yy803; + if (yych >= '\v') goto yy798; + } else { + if (yych <= '\r') goto yy805; + if (yych == ' ') goto yy803; + goto yy798; + } +yy805: + ++p; + { return 1; } +yy807: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy807; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy798; + if (yych <= '\t') goto yy803; + if (yych <= '\n') goto yy805; + goto yy798; + } else { + if (yych <= '\r') goto yy805; + if (yych == ' ') goto yy803; + goto yy798; + } +} + } // Scan a thematic break line: "...three or more hyphens, asterisks, // or underscores on a line by themselves. If you wish, you may use // spaces between the hyphens or asterisks." -bufsize_t _scan_thematic_break(const unsigned char *p) { +bufsize_t _scan_thematic_break(const unsigned char *p) +{ const unsigned char *marker = NULL; const unsigned char *start = p; - { - unsigned char yych; - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 128, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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 yy1033; - } else { - if (yych <= '-') - goto yy1034; - if (yych == '_') - goto yy1035; - } - ++p; - yy1032 : { return 0; } - yy1033: - yych = *(marker = ++p); - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1057; - goto yy1032; - } else { - if (yych <= ' ') - goto yy1057; - if (yych == '*') - goto yy1059; - goto yy1032; - } - yy1034: - yych = *(marker = ++p); - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1047; - goto yy1032; - } else { - if (yych <= ' ') - goto yy1047; - if (yych == '-') - goto yy1049; - goto yy1032; - } - yy1035: - yych = *(marker = ++p); - if (yybm[0 + yych] & 16) { - goto yy1036; - } - if (yych == '_') - goto yy1039; - goto yy1032; - yy1036: - ++p; - yych = *p; - if (yybm[0 + yych] & 16) { - goto yy1036; - } - if (yych == '_') - goto yy1039; - yy1038: - p = marker; - goto yy1032; - yy1039: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1039; - goto yy1038; - } else { - if (yych <= ' ') - goto yy1039; - if (yych != '_') - goto yy1038; - } - yy1041: - ++p; - yych = *p; - if (yych <= '\r') { - if (yych <= '\t') { - if (yych <= 0x08) - goto yy1038; - goto yy1041; - } else { - if (yych <= '\n') - goto yy1043; - if (yych <= '\f') - goto yy1038; - } - } else { - if (yych <= ' ') { - if (yych <= 0x1F) - goto yy1038; - goto yy1041; - } else { - if (yych == '_') - goto yy1045; - goto yy1038; - } - } - yy1043: - ++p; - { return (bufsize_t)(p - start); } - yy1045: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy1045; - } - if (yych <= 0x08) - goto yy1038; - if (yych <= '\n') - goto yy1043; - if (yych == '\r') - goto yy1043; - goto yy1038; - yy1047: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1047; - goto yy1038; - } else { - if (yych <= ' ') - goto yy1047; - if (yych != '-') - goto yy1038; - } - yy1049: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1049; - goto yy1038; - } else { - if (yych <= ' ') - goto yy1049; - if (yych != '-') - goto yy1038; - } - yy1051: - ++p; - yych = *p; - if (yych <= '\r') { - if (yych <= '\t') { - if (yych <= 0x08) - goto yy1038; - goto yy1051; - } else { - if (yych <= '\n') - goto yy1053; - if (yych <= '\f') - goto yy1038; - } - } else { - if (yych <= ' ') { - if (yych <= 0x1F) - goto yy1038; - goto yy1051; - } else { - if (yych == '-') - goto yy1055; - goto yy1038; - } - } - yy1053: - ++p; - { return (bufsize_t)(p - start); } - yy1055: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy1055; - } - if (yych <= 0x08) - goto yy1038; - if (yych <= '\n') - goto yy1053; - if (yych == '\r') - goto yy1053; - goto yy1038; - yy1057: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1057; - goto yy1038; - } else { - if (yych <= ' ') - goto yy1057; - if (yych != '*') - goto yy1038; - } - yy1059: - ++p; - yych = *p; - if (yych <= 0x1F) { - if (yych == '\t') - goto yy1059; - goto yy1038; - } else { - if (yych <= ' ') - goto yy1059; - if (yych != '*') - goto yy1038; - } - yy1061: - ++p; - yych = *p; - if (yych <= '\r') { - if (yych <= '\t') { - if (yych <= 0x08) - goto yy1038; - goto yy1061; - } else { - if (yych <= '\n') - goto yy1063; - if (yych <= '\f') - goto yy1038; - } - } else { - if (yych <= ' ') { - if (yych <= 0x1F) - goto yy1038; - goto yy1061; - } else { - if (yych == '*') - goto yy1065; - goto yy1038; - } - } - yy1063: - ++p; - { return (bufsize_t)(p - start); } - yy1065: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy1065; - } - if (yych <= 0x08) - goto yy1038; - if (yych <= '\n') - goto yy1063; - if (yych == '\r') - goto yy1063; - goto yy1038; - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 240, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 240, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32, 0, 0, 64, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 128, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych <= ',') { + if (yych == '*') goto yy813; + } else { + if (yych <= '-') goto yy814; + if (yych == '_') goto yy815; + } + ++p; +yy812: + { return 0; } +yy813: + yych = *(marker = ++p); + if (yybm[0+yych] & 16) { + goto yy816; + } + if (yych == '*') goto yy819; + goto yy812; +yy814: + yych = *(marker = ++p); + if (yych <= 0x1F) { + if (yych == '\t') goto yy821; + goto yy812; + } else { + if (yych <= ' ') goto yy821; + if (yych == '-') goto yy823; + goto yy812; + } +yy815: + yych = *(marker = ++p); + if (yych <= 0x1F) { + if (yych == '\t') goto yy825; + goto yy812; + } else { + if (yych <= ' ') goto yy825; + if (yych == '_') goto yy827; + goto yy812; + } +yy816: + yych = *++p; + if (yybm[0+yych] & 16) { + goto yy816; + } + if (yych == '*') goto yy819; +yy818: + p = marker; + goto yy812; +yy819: + yych = *++p; + if (yych <= 0x1F) { + if (yych == '\t') goto yy819; + goto yy818; + } else { + if (yych <= ' ') goto yy819; + if (yych == '*') goto yy829; + goto yy818; + } +yy821: + yych = *++p; + if (yych <= 0x1F) { + if (yych == '\t') goto yy821; + goto yy818; + } else { + if (yych <= ' ') goto yy821; + if (yych != '-') goto yy818; + } +yy823: + yych = *++p; + if (yych <= 0x1F) { + if (yych == '\t') goto yy823; + goto yy818; + } else { + if (yych <= ' ') goto yy823; + if (yych == '-') goto yy831; + goto yy818; + } +yy825: + yych = *++p; + if (yych <= 0x1F) { + if (yych == '\t') goto yy825; + goto yy818; + } else { + if (yych <= ' ') goto yy825; + if (yych != '_') goto yy818; + } +yy827: + yych = *++p; + if (yych <= 0x1F) { + if (yych == '\t') goto yy827; + goto yy818; + } else { + if (yych <= ' ') goto yy827; + if (yych == '_') goto yy833; + goto yy818; + } +yy829: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy829; + } + if (yych <= 0x08) goto yy818; + if (yych <= '\n') goto yy835; + if (yych == '\r') goto yy835; + goto yy818; +yy831: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy831; + } + if (yych <= 0x08) goto yy818; + if (yych <= '\n') goto yy837; + if (yych == '\r') goto yy837; + goto yy818; +yy833: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy833; + } + if (yych <= 0x08) goto yy818; + if (yych <= '\n') goto yy839; + if (yych == '\r') goto yy839; + goto yy818; +yy835: + ++p; + { return (bufsize_t)(p - start); } +yy837: + ++p; + { return (bufsize_t)(p - start); } +yy839: + ++p; + { return (bufsize_t)(p - start); } +} + } // Scan an opening code fence. -bufsize_t _scan_open_code_fence(const unsigned char *p) { +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, 160, 160, 160, 160, 160, 160, 160, 160, 160, 0, 160, 160, 0, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 96, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 144, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 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 yy1071; - if (yych == '~') - goto yy1072; - ++p; - yy1070 : { return 0; } - yy1071: - yych = *(marker = ++p); - if (yych == '`') - goto yy1088; - goto yy1070; - yy1072: - yych = *(marker = ++p); - if (yych != '~') - goto yy1070; - yych = *++p; - if (yybm[0 + yych] & 16) { - goto yy1075; - } - yy1074: - p = marker; - goto yy1070; - yy1075: - ++p; - yych = *p; - marker = p; - if (yybm[0 + yych] & 32) { - goto yy1077; - } - if (yych <= 0xE0) { - if (yych <= '~') { - if (yych <= 0x00) - goto yy1074; - if (yych <= '\r') - goto yy1086; - goto yy1075; - } else { - if (yych <= 0xC1) - goto yy1074; - if (yych <= 0xDF) - goto yy1079; - goto yy1080; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy1085; - goto yy1081; - } else { - if (yych <= 0xF0) - goto yy1082; - if (yych <= 0xF3) - goto yy1083; - if (yych <= 0xF4) - goto yy1084; - goto yy1074; - } - } - yy1077: - ++p; - yych = *p; - if (yybm[0 + yych] & 32) { - goto yy1077; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy1074; - if (yych <= '\r') - goto yy1086; - goto yy1074; - } else { - if (yych <= 0xDF) - goto yy1079; - if (yych <= 0xE0) - goto yy1080; - goto yy1081; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy1085; - if (yych <= 0xEF) - goto yy1081; - goto yy1082; - } else { - if (yych <= 0xF3) - goto yy1083; - if (yych <= 0xF4) - goto yy1084; - goto yy1074; - } - } - yy1079: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1077; - goto yy1074; - yy1080: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy1074; - if (yych <= 0xBF) - goto yy1079; - goto yy1074; - yy1081: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1079; - goto yy1074; - yy1082: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy1074; - if (yych <= 0xBF) - goto yy1081; - goto yy1074; - yy1083: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1081; - goto yy1074; - yy1084: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0x8F) - goto yy1081; - goto yy1074; - yy1085: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0x9F) - goto yy1079; - goto yy1074; - yy1086: - ++p; - p = marker; - { return (bufsize_t)(p - start); } - yy1088: - yych = *++p; - if (yybm[0 + yych] & 64) { - goto yy1089; - } - goto yy1074; - yy1089: - ++p; - yych = *p; - marker = p; - if (yybm[0 + yych] & 128) { - goto yy1091; - } - if (yych <= 0xE0) { - if (yych <= '`') { - if (yych <= 0x00) - goto yy1074; - if (yych <= '\r') - goto yy1100; - goto yy1089; - } else { - if (yych <= 0xC1) - goto yy1074; - if (yych <= 0xDF) - goto yy1093; - goto yy1094; - } - } else { - if (yych <= 0xEF) { - if (yych == 0xED) - goto yy1099; - goto yy1095; - } else { - if (yych <= 0xF0) - goto yy1096; - if (yych <= 0xF3) - goto yy1097; - if (yych <= 0xF4) - goto yy1098; - goto yy1074; - } - } - yy1091: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy1091; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= 0x00) - goto yy1074; - if (yych <= '\r') - goto yy1100; - goto yy1074; - } else { - if (yych <= 0xDF) - goto yy1093; - if (yych <= 0xE0) - goto yy1094; - goto yy1095; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy1099; - if (yych <= 0xEF) - goto yy1095; - goto yy1096; - } else { - if (yych <= 0xF3) - goto yy1097; - if (yych <= 0xF4) - goto yy1098; - goto yy1074; - } - } - yy1093: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1091; - goto yy1074; - yy1094: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy1074; - if (yych <= 0xBF) - goto yy1093; - goto yy1074; - yy1095: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1093; - goto yy1074; - yy1096: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy1074; - if (yych <= 0xBF) - goto yy1095; - goto yy1074; - yy1097: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0xBF) - goto yy1095; - goto yy1074; - yy1098: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0x8F) - goto yy1095; - goto yy1074; - yy1099: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1074; - if (yych <= 0x9F) - goto yy1093; - goto yy1074; - yy1100: - ++p; - p = marker; - { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 0, 192, 192, 0, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 144, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 192, 192, 192, 224, 192, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '`') goto yy845; + if (yych == '~') goto yy846; + ++p; +yy844: + { return 0; } +yy845: + yych = *(marker = ++p); + if (yych == '`') goto yy847; + goto yy844; +yy846: + yych = *(marker = ++p); + if (yych == '~') goto yy849; + goto yy844; +yy847: + yych = *++p; + if (yybm[0+yych] & 16) { + goto yy850; + } +yy848: + p = marker; + goto yy844; +yy849: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy852; + } + goto yy848; +yy850: + yych = *++p; + if (yybm[0+yych] & 16) { + goto yy850; + } + if (yych <= 0xDF) { + if (yych <= '\f') { + if (yych <= 0x00) goto yy848; + if (yych == '\n') { + marker = p; + goto yy856; + } + marker = p; + goto yy854; + } else { + if (yych <= '\r') { + marker = p; + goto yy856; + } + if (yych <= 0x7F) { + marker = p; + goto yy854; + } + if (yych <= 0xC1) goto yy848; + marker = p; + goto yy858; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) { + marker = p; + goto yy859; + } + if (yych == 0xED) { + marker = p; + goto yy861; + } + marker = p; + goto yy860; + } else { + if (yych <= 0xF0) { + marker = p; + goto yy862; + } + if (yych <= 0xF3) { + marker = p; + goto yy863; + } + if (yych <= 0xF4) { + marker = p; + goto yy864; + } + goto yy848; + } + } +yy852: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy852; + } + if (yych <= 0xDF) { + if (yych <= '\f') { + if (yych <= 0x00) goto yy848; + if (yych == '\n') { + marker = p; + goto yy867; + } + marker = p; + goto yy865; + } else { + if (yych <= '\r') { + marker = p; + goto yy867; + } + if (yych <= 0x7F) { + marker = p; + goto yy865; + } + if (yych <= 0xC1) goto yy848; + marker = p; + goto yy869; + } + } else { + if (yych <= 0xEF) { + if (yych <= 0xE0) { + marker = p; + goto yy870; + } + if (yych == 0xED) { + marker = p; + goto yy872; + } + marker = p; + goto yy871; + } else { + if (yych <= 0xF0) { + marker = p; + goto yy873; + } + if (yych <= 0xF3) { + marker = p; + goto yy874; + } + if (yych <= 0xF4) { + marker = p; + goto yy875; + } + goto yy848; + } + } +yy854: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy854; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x00) goto yy848; + if (yych >= 0x0E) goto yy848; + } else { + if (yych <= 0xDF) goto yy858; + if (yych <= 0xE0) goto yy859; + goto yy860; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy861; + if (yych <= 0xEF) goto yy860; + goto yy862; + } else { + if (yych <= 0xF3) goto yy863; + if (yych <= 0xF4) goto yy864; + goto yy848; + } + } +yy856: + ++p; + p = marker; + { return (bufsize_t)(p - start); } +yy858: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy854; + goto yy848; +yy859: + yych = *++p; + if (yych <= 0x9F) goto yy848; + if (yych <= 0xBF) goto yy858; + goto yy848; +yy860: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy858; + goto yy848; +yy861: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0x9F) goto yy858; + goto yy848; +yy862: + yych = *++p; + if (yych <= 0x8F) goto yy848; + if (yych <= 0xBF) goto yy860; + goto yy848; +yy863: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy860; + goto yy848; +yy864: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0x8F) goto yy860; + goto yy848; +yy865: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy865; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= 0x00) goto yy848; + if (yych >= 0x0E) goto yy848; + } else { + if (yych <= 0xDF) goto yy869; + if (yych <= 0xE0) goto yy870; + goto yy871; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy872; + if (yych <= 0xEF) goto yy871; + goto yy873; + } else { + if (yych <= 0xF3) goto yy874; + if (yych <= 0xF4) goto yy875; + goto yy848; + } + } +yy867: + ++p; + p = marker; + { return (bufsize_t)(p - start); } +yy869: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy865; + goto yy848; +yy870: + yych = *++p; + if (yych <= 0x9F) goto yy848; + if (yych <= 0xBF) goto yy869; + goto yy848; +yy871: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy869; + goto yy848; +yy872: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0x9F) goto yy869; + goto yy848; +yy873: + yych = *++p; + if (yych <= 0x8F) goto yy848; + if (yych <= 0xBF) goto yy871; + goto yy848; +yy874: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0xBF) goto yy871; + goto yy848; +yy875: + yych = *++p; + if (yych <= 0x7F) goto yy848; + if (yych <= 0x8F) goto yy871; + goto yy848; +} + } // Scan a closing code fence with length at least len. -bufsize_t _scan_close_code_fence(const unsigned char *p) { +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, 64, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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 yy1106; - if (yych == '~') - goto yy1107; - ++p; - yy1105 : { return 0; } - yy1106: - yych = *(marker = ++p); - if (yych == '`') - goto yy1116; - goto yy1105; - yy1107: - yych = *(marker = ++p); - if (yych != '~') - goto yy1105; - yych = *++p; - if (yybm[0 + yych] & 32) { - goto yy1110; - } - yy1109: - p = marker; - goto yy1105; - yy1110: - ++p; - yych = *p; - marker = p; - if (yybm[0 + yych] & 64) { - goto yy1112; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1109; - if (yych <= '\n') - goto yy1114; - goto yy1109; - } else { - if (yych <= '\r') - goto yy1114; - if (yych == '~') - goto yy1110; - goto yy1109; - } - yy1112: - ++p; - yych = *p; - if (yybm[0 + yych] & 64) { - goto yy1112; - } - if (yych <= 0x08) - goto yy1109; - if (yych <= '\n') - goto yy1114; - if (yych != '\r') - goto yy1109; - yy1114: - ++p; - p = marker; - { return (bufsize_t)(p - start); } - yy1116: - yych = *++p; - if (yybm[0 + yych] & 128) { - goto yy1117; - } - goto yy1109; - yy1117: - ++p; - yych = *p; - marker = p; - if (yybm[0 + yych] & 128) { - goto yy1117; - } - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1109; - if (yych <= '\t') - goto yy1119; - if (yych <= '\n') - goto yy1121; - goto yy1109; - } else { - if (yych <= '\r') - goto yy1121; - if (yych != ' ') - goto yy1109; - } - yy1119: - ++p; - yych = *p; - if (yych <= '\f') { - if (yych <= 0x08) - goto yy1109; - if (yych <= '\t') - goto yy1119; - if (yych >= '\v') - goto yy1109; - } else { - if (yych <= '\r') - goto yy1121; - if (yych == ' ') - goto yy1119; - goto yy1109; - } - yy1121: - ++p; - p = marker; - { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 32, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 64, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '`') goto yy880; + if (yych == '~') goto yy881; + ++p; +yy879: + { return 0; } +yy880: + yych = *(marker = ++p); + if (yych == '`') goto yy882; + goto yy879; +yy881: + yych = *(marker = ++p); + if (yych == '~') goto yy884; + goto yy879; +yy882: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy885; + } +yy883: + p = marker; + goto yy879; +yy884: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy887; + } + goto yy883; +yy885: + yych = *++p; + if (yybm[0+yych] & 32) { + goto yy885; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy883; + if (yych <= '\t') { + marker = p; + goto yy889; + } + if (yych <= '\n') { + marker = p; + goto yy891; + } + goto yy883; + } else { + if (yych <= '\r') { + marker = p; + goto yy891; + } + if (yych == ' ') { + marker = p; + goto yy889; + } + goto yy883; + } +yy887: + yych = *++p; + if (yybm[0+yych] & 64) { + goto yy887; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy883; + if (yych <= '\t') { + marker = p; + goto yy893; + } + if (yych <= '\n') { + marker = p; + goto yy895; + } + goto yy883; + } else { + if (yych <= '\r') { + marker = p; + goto yy895; + } + if (yych == ' ') { + marker = p; + goto yy893; + } + goto yy883; + } +yy889: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy889; + } + if (yych <= 0x08) goto yy883; + if (yych <= '\n') goto yy891; + if (yych != '\r') goto yy883; +yy891: + ++p; + p = marker; + { return (bufsize_t)(p - start); } +yy893: + yych = *++p; + if (yych <= '\f') { + if (yych <= 0x08) goto yy883; + if (yych <= '\t') goto yy893; + if (yych >= '\v') goto yy883; + } else { + if (yych <= '\r') goto yy895; + if (yych == ' ') goto yy893; + goto yy883; + } +yy895: + ++p; + p = marker; + { return (bufsize_t)(p - start); } +} + } // Scans an entity. // Returns number of chars matched. -bufsize_t _scan_entity(const unsigned char *p) { +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 yy1127; - ++p; - yy1126 : { return 0; } - yy1127: - yych = *(marker = ++p); - if (yych <= '@') { - if (yych != '#') - goto yy1126; - } else { - if (yych <= 'Z') - goto yy1130; - if (yych <= '`') - goto yy1126; - if (yych <= 'z') - goto yy1130; - goto yy1126; - } - yych = *++p; - if (yych <= 'W') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1165; - } else { - if (yych <= 'X') - goto yy1164; - if (yych == 'x') - goto yy1164; - } - yy1129: - p = marker; - goto yy1126; - yy1130: - yych = *++p; - if (yych <= '@') { - if (yych <= '/') - goto yy1129; - if (yych >= ':') - goto yy1129; - } else { - if (yych <= 'Z') - goto yy1131; - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - yy1131: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1134; - if (yych <= ':') - goto yy1129; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - goto yy1134; - } else { - if (yych <= '`') - goto yy1129; - if (yych <= 'z') - goto yy1134; - goto yy1129; - } - } - yy1132: - ++p; - { return (bufsize_t)(p - start); } - yy1134: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1135; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1135: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1136; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1136: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1137; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1137: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1138; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1138: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1139; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1139: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1140; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1140: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1141; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1141: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1142; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1142: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1143; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1143: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1144; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1144: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1145; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1145: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1146; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1146: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1147; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1147: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1148; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1148: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1149; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1149: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1150; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1150: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1151; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1151: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1152; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1152: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1153; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1153: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1154; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1154: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1155; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1155: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1156; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1156: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1157; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1157: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1158; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1158: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1159; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1159: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1160; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1160: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1161; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1161: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1162; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1162: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1163; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'Z') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= '{') - goto yy1129; - } - } - yy1163: - yych = *++p; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1164: - yych = *++p; - if (yych <= '@') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1172; - goto yy1129; - } else { - if (yych <= 'F') - goto yy1172; - if (yych <= '`') - goto yy1129; - if (yych <= 'f') - goto yy1172; - goto yy1129; - } - yy1165: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1166; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1166: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1167; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1167: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1168; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1168: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1169; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1169: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1170; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1170: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1171; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1171: - yych = *++p; - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1163; - if (yych == ';') - goto yy1132; - goto yy1129; - yy1172: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1173; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1173: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1174; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1174: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1175; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1175: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1176; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1176: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1177; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1177: - yych = *++p; - if (yych <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1178; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - } else { - if (yych <= '`') - goto yy1129; - if (yych >= 'g') - goto yy1129; - } - } - yy1178: - ++p; - if ((yych = *p) <= ';') { - if (yych <= '/') - goto yy1129; - if (yych <= '9') - goto yy1163; - if (yych <= ':') - goto yy1129; - goto yy1132; - } else { - if (yych <= 'F') { - if (yych <= '@') - goto yy1129; - goto yy1163; - } else { - if (yych <= '`') - goto yy1129; - if (yych <= 'f') - goto yy1163; - goto yy1129; - } - } - } +{ + unsigned char yych; + yych = *p; + if (yych == '&') goto yy901; + ++p; +yy900: + { return 0; } +yy901: + yych = *(marker = ++p); + if (yych <= '@') { + if (yych != '#') goto yy900; + } else { + if (yych <= 'Z') goto yy904; + if (yych <= '`') goto yy900; + if (yych <= 'z') goto yy904; + goto yy900; + } + yych = *++p; + if (yych <= 'W') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy905; + } else { + if (yych <= 'X') goto yy906; + if (yych == 'x') goto yy906; + } +yy903: + p = marker; + goto yy900; +yy904: + yych = *++p; + if (yych <= '@') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy907; + goto yy903; + } else { + if (yych <= 'Z') goto yy907; + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy907; + goto yy903; + } +yy905: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy908; + if (yych == ';') goto yy909; + goto yy903; +yy906: + yych = *++p; + if (yych <= '@') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy911; + goto yy903; + } else { + if (yych <= 'F') goto yy911; + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy911; + goto yy903; + } +yy907: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy912; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy912; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy912; + goto yy903; + } + } +yy908: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy913; + if (yych != ';') goto yy903; +yy909: + ++p; + { return (bufsize_t)(p - start); } +yy911: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy914; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'F') { + if (yych <= '@') goto yy903; + goto yy914; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy914; + goto yy903; + } + } +yy912: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy915; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy915; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy915; + goto yy903; + } + } +yy913: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy916; + if (yych == ';') goto yy909; + goto yy903; +yy914: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy917; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'F') { + if (yych <= '@') goto yy903; + goto yy917; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy917; + goto yy903; + } + } +yy915: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy918; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy918; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy918; + goto yy903; + } + } +yy916: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy919; + if (yych == ';') goto yy909; + goto yy903; +yy917: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy920; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'F') { + if (yych <= '@') goto yy903; + goto yy920; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy920; + goto yy903; + } + } +yy918: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy921; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy921; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy921; + goto yy903; + } + } +yy919: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy922; + if (yych == ';') goto yy909; + goto yy903; +yy920: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy923; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'F') { + if (yych <= '@') goto yy903; + goto yy923; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy923; + goto yy903; + } + } +yy921: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy924; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy924; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy924; + goto yy903; + } + } +yy922: + yych = *++p; + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy925; + if (yych == ';') goto yy909; + goto yy903; +yy923: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy925; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'F') { + if (yych <= '@') goto yy903; + goto yy925; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'f') goto yy925; + goto yy903; + } + } +yy924: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy926; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy926; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy926; + goto yy903; + } + } +yy925: + yych = *++p; + if (yych == ';') goto yy909; + goto yy903; +yy926: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy927; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy927: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy928; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy928: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy929; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy929: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy930; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy930: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy931; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy931: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy932; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy932: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy933; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy933: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy934; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy934: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy935; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy935: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy936; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy936: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy937; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy937: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy938; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy938: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy939; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy939: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy940; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy940: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy941; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy941: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy942; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy942: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy943; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy943: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy944; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy944: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy945; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy945: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy946; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy946: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy947; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy947: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy948; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy948: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy949; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + } else { + if (yych <= '`') goto yy903; + if (yych >= '{') goto yy903; + } + } +yy949: + yych = *++p; + if (yych <= ';') { + if (yych <= '/') goto yy903; + if (yych <= '9') goto yy925; + if (yych <= ':') goto yy903; + goto yy909; + } else { + if (yych <= 'Z') { + if (yych <= '@') goto yy903; + goto yy925; + } else { + if (yych <= '`') goto yy903; + if (yych <= 'z') goto yy925; + goto yy903; + } + } +} + } // Returns positive value if a URL begins in a way that is potentially // dangerous, with javascript:, vbscript:, file:, or data:, otherwise 0. -bufsize_t _scan_dangerous_url(const unsigned char *p) { +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 yy1183; - if (yych >= 'F') - goto yy1184; - } else { - if (yych == 'J') - goto yy1185; - if (yych >= 'V') - goto yy1186; - } - } else { - if (yych <= 'f') { - if (yych == 'd') - goto yy1183; - if (yych >= 'f') - goto yy1184; - } else { - if (yych <= 'j') { - if (yych >= 'j') - goto yy1185; - } else { - if (yych == 'v') - goto yy1186; - } - } - } - ++p; - yy1182 : { return 0; } - yy1183: - yyaccept = 0; - yych = *(marker = ++p); - if (yych == 'A') - goto yy1209; - if (yych == 'a') - goto yy1209; - goto yy1182; - yy1184: - yyaccept = 0; - yych = *(marker = ++p); - if (yych == 'I') - goto yy1206; - if (yych == 'i') - goto yy1206; - goto yy1182; - yy1185: - yyaccept = 0; - yych = *(marker = ++p); - if (yych == 'A') - goto yy1197; - if (yych == 'a') - goto yy1197; - goto yy1182; - yy1186: - yyaccept = 0; - yych = *(marker = ++p); - if (yych == 'B') - goto yy1187; - if (yych != 'b') - goto yy1182; - yy1187: - yych = *++p; - if (yych == 'S') - goto yy1189; - if (yych == 's') - goto yy1189; - yy1188: - p = marker; - if (yyaccept == 0) { - goto yy1182; - } else { - goto yy1196; - } - yy1189: - yych = *++p; - if (yych == 'C') - goto yy1190; - if (yych != 'c') - goto yy1188; - yy1190: - yych = *++p; - if (yych == 'R') - goto yy1191; - if (yych != 'r') - goto yy1188; - yy1191: - yych = *++p; - if (yych == 'I') - goto yy1192; - if (yych != 'i') - goto yy1188; - yy1192: - yych = *++p; - if (yych == 'P') - goto yy1193; - if (yych != 'p') - goto yy1188; - yy1193: - yych = *++p; - if (yych == 'T') - goto yy1194; - if (yych != 't') - goto yy1188; - yy1194: - yych = *++p; - if (yych != ':') - goto yy1188; - yy1195: - ++p; - yy1196 : { return (bufsize_t)(p - start); } - yy1197: - yych = *++p; - if (yych == 'V') - goto yy1198; - if (yych != 'v') - goto yy1188; - yy1198: - yych = *++p; - if (yych == 'A') - goto yy1199; - if (yych != 'a') - goto yy1188; - yy1199: - yych = *++p; - if (yych == 'S') - goto yy1200; - if (yych != 's') - goto yy1188; - yy1200: - yych = *++p; - if (yych == 'C') - goto yy1201; - if (yych != 'c') - goto yy1188; - yy1201: - yych = *++p; - if (yych == 'R') - goto yy1202; - if (yych != 'r') - goto yy1188; - yy1202: - yych = *++p; - if (yych == 'I') - goto yy1203; - if (yych != 'i') - goto yy1188; - yy1203: - yych = *++p; - if (yych == 'P') - goto yy1204; - if (yych != 'p') - goto yy1188; - yy1204: - yych = *++p; - if (yych == 'T') - goto yy1205; - if (yych != 't') - goto yy1188; - yy1205: - yych = *++p; - if (yych == ':') - goto yy1195; - goto yy1188; - yy1206: - yych = *++p; - if (yych == 'L') - goto yy1207; - if (yych != 'l') - goto yy1188; - yy1207: - yych = *++p; - if (yych == 'E') - goto yy1208; - if (yych != 'e') - goto yy1188; - yy1208: - yych = *++p; - if (yych == ':') - goto yy1195; - goto yy1188; - yy1209: - yych = *++p; - if (yych == 'T') - goto yy1210; - if (yych != 't') - goto yy1188; - yy1210: - yych = *++p; - if (yych == 'A') - goto yy1211; - if (yych != 'a') - goto yy1188; - yy1211: - yych = *++p; - if (yych != ':') - goto yy1188; - yyaccept = 1; - yych = *(marker = ++p); - if (yych == 'I') - goto yy1213; - if (yych != 'i') - goto yy1196; - yy1213: - yych = *++p; - if (yych == 'M') - goto yy1214; - if (yych != 'm') - goto yy1188; - yy1214: - yych = *++p; - if (yych == 'A') - goto yy1215; - if (yych != 'a') - goto yy1188; - yy1215: - yych = *++p; - if (yych == 'G') - goto yy1216; - if (yych != 'g') - goto yy1188; - yy1216: - yych = *++p; - if (yych == 'E') - goto yy1217; - if (yych != 'e') - goto yy1188; - yy1217: - yych = *++p; - if (yych != '/') - goto yy1188; - yych = *++p; - if (yych <= 'W') { - if (yych <= 'J') { - if (yych == 'G') - goto yy1220; - if (yych <= 'I') - goto yy1188; - goto yy1221; - } else { - if (yych == 'P') - goto yy1219; - if (yych <= 'V') - goto yy1188; - goto yy1222; - } - } else { - if (yych <= 'j') { - if (yych == 'g') - goto yy1220; - if (yych <= 'i') - goto yy1188; - goto yy1221; - } else { - if (yych <= 'p') { - if (yych <= 'o') - goto yy1188; - } else { - if (yych == 'w') - goto yy1222; - goto yy1188; - } - } - } - yy1219: - yych = *++p; - if (yych == 'N') - goto yy1230; - if (yych == 'n') - goto yy1230; - goto yy1188; - yy1220: - yych = *++p; - if (yych == 'I') - goto yy1229; - if (yych == 'i') - goto yy1229; - goto yy1188; - yy1221: - yych = *++p; - if (yych == 'P') - goto yy1227; - if (yych == 'p') - goto yy1227; - goto yy1188; - yy1222: - yych = *++p; - if (yych == 'E') - goto yy1223; - if (yych != 'e') - goto yy1188; - yy1223: - yych = *++p; - if (yych == 'B') - goto yy1224; - if (yych != 'b') - goto yy1188; - yy1224: - yych = *++p; - if (yych == 'P') - goto yy1225; - if (yych != 'p') - goto yy1188; - yy1225: - ++p; - { return 0; } - yy1227: - yych = *++p; - if (yych == 'E') - goto yy1228; - if (yych != 'e') - goto yy1188; - yy1228: - yych = *++p; - if (yych == 'G') - goto yy1225; - if (yych == 'g') - goto yy1225; - goto yy1188; - yy1229: - yych = *++p; - if (yych == 'F') - goto yy1225; - if (yych == 'f') - goto yy1225; - goto yy1188; - yy1230: - ++p; - if ((yych = *p) == 'G') - goto yy1225; - if (yych == 'g') - goto yy1225; - goto yy1188; - } +{ + unsigned char yych; + unsigned int yyaccept = 0; + yych = *p; + if (yych <= 'V') { + if (yych <= 'F') { + if (yych == 'D') goto yy954; + if (yych >= 'F') goto yy955; + } else { + if (yych == 'J') goto yy956; + if (yych >= 'V') goto yy957; + } + } else { + if (yych <= 'f') { + if (yych == 'd') goto yy954; + if (yych >= 'f') goto yy955; + } else { + if (yych <= 'j') { + if (yych >= 'j') goto yy956; + } else { + if (yych == 'v') goto yy957; + } + } + } + ++p; +yy953: + { return 0; } +yy954: + yyaccept = 0; + yych = *(marker = ++p); + if (yych == 'A') goto yy958; + if (yych == 'a') goto yy958; + goto yy953; +yy955: + yyaccept = 0; + yych = *(marker = ++p); + if (yych == 'I') goto yy960; + if (yych == 'i') goto yy960; + goto yy953; +yy956: + yyaccept = 0; + yych = *(marker = ++p); + if (yych == 'A') goto yy961; + if (yych == 'a') goto yy961; + goto yy953; +yy957: + yyaccept = 0; + yych = *(marker = ++p); + if (yych == 'B') goto yy962; + if (yych == 'b') goto yy962; + goto yy953; +yy958: + yych = *++p; + if (yych == 'T') goto yy963; + if (yych == 't') goto yy963; +yy959: + p = marker; + if (yyaccept == 0) { + goto yy953; + } else { + goto yy971; + } +yy960: + yych = *++p; + if (yych == 'L') goto yy964; + if (yych == 'l') goto yy964; + goto yy959; +yy961: + yych = *++p; + if (yych == 'V') goto yy965; + if (yych == 'v') goto yy965; + goto yy959; +yy962: + yych = *++p; + if (yych == 'S') goto yy966; + if (yych == 's') goto yy966; + goto yy959; +yy963: + yych = *++p; + if (yych == 'A') goto yy967; + if (yych == 'a') goto yy967; + goto yy959; +yy964: + yych = *++p; + if (yych == 'E') goto yy968; + if (yych == 'e') goto yy968; + goto yy959; +yy965: + yych = *++p; + if (yych == 'A') goto yy962; + if (yych == 'a') goto yy962; + goto yy959; +yy966: + yych = *++p; + if (yych == 'C') goto yy969; + if (yych == 'c') goto yy969; + goto yy959; +yy967: + yych = *++p; + if (yych == ':') goto yy970; + goto yy959; +yy968: + yych = *++p; + if (yych == ':') goto yy972; + goto yy959; +yy969: + yych = *++p; + if (yych == 'R') goto yy973; + if (yych == 'r') goto yy973; + goto yy959; +yy970: + yyaccept = 1; + yych = *(marker = ++p); + if (yych == 'I') goto yy974; + if (yych == 'i') goto yy974; +yy971: + { return (bufsize_t)(p - start); } +yy972: + ++p; + goto yy971; +yy973: + yych = *++p; + if (yych == 'I') goto yy975; + if (yych == 'i') goto yy975; + goto yy959; +yy974: + yych = *++p; + if (yych == 'M') goto yy976; + if (yych == 'm') goto yy976; + goto yy959; +yy975: + yych = *++p; + if (yych == 'P') goto yy977; + if (yych == 'p') goto yy977; + goto yy959; +yy976: + yych = *++p; + if (yych == 'A') goto yy978; + if (yych == 'a') goto yy978; + goto yy959; +yy977: + yych = *++p; + if (yych == 'T') goto yy968; + if (yych == 't') goto yy968; + goto yy959; +yy978: + yych = *++p; + if (yych == 'G') goto yy979; + if (yych != 'g') goto yy959; +yy979: + yych = *++p; + if (yych == 'E') goto yy980; + if (yych != 'e') goto yy959; +yy980: + yych = *++p; + if (yych != '/') goto yy959; + yych = *++p; + if (yych <= 'W') { + if (yych <= 'J') { + if (yych == 'G') goto yy982; + if (yych <= 'I') goto yy959; + goto yy983; + } else { + if (yych == 'P') goto yy984; + if (yych <= 'V') goto yy959; + goto yy985; + } + } else { + if (yych <= 'j') { + if (yych == 'g') goto yy982; + if (yych <= 'i') goto yy959; + goto yy983; + } else { + if (yych <= 'p') { + if (yych <= 'o') goto yy959; + goto yy984; + } else { + if (yych == 'w') goto yy985; + goto yy959; + } + } + } +yy982: + yych = *++p; + if (yych == 'I') goto yy986; + if (yych == 'i') goto yy986; + goto yy959; +yy983: + yych = *++p; + if (yych == 'P') goto yy987; + if (yych == 'p') goto yy987; + goto yy959; +yy984: + yych = *++p; + if (yych == 'N') goto yy988; + if (yych == 'n') goto yy988; + goto yy959; +yy985: + yych = *++p; + if (yych == 'E') goto yy989; + if (yych == 'e') goto yy989; + goto yy959; +yy986: + yych = *++p; + if (yych == 'F') goto yy990; + if (yych == 'f') goto yy990; + goto yy959; +yy987: + yych = *++p; + if (yych == 'E') goto yy988; + if (yych != 'e') goto yy959; +yy988: + yych = *++p; + if (yych == 'G') goto yy990; + if (yych == 'g') goto yy990; + goto yy959; +yy989: + yych = *++p; + if (yych == 'B') goto yy992; + if (yych == 'b') goto yy992; + goto yy959; +yy990: + ++p; + { return 0; } +yy992: + yych = *++p; + if (yych == 'P') goto yy990; + if (yych == 'p') goto yy990; + goto yy959; +} + } // Scans a footnote definition opening. -bufsize_t _scan_footnote_definition(const unsigned char *p) { +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 yy1235; - ++p; - yy1234 : { return 0; } - yy1235: - yych = *(marker = ++p); - if (yych != '^') - goto yy1234; - yych = *++p; - if (yych != ']') - goto yy1239; - yy1237: - p = marker; - goto yy1234; - yy1238: - ++p; - yych = *p; - yy1239: - if (yybm[0 + yych] & 64) { - goto yy1238; - } - if (yych <= 0xEC) { - if (yych <= 0xC1) { - if (yych <= ' ') - goto yy1237; - if (yych <= ']') - goto yy1247; - goto yy1237; - } else { - if (yych <= 0xDF) - goto yy1240; - if (yych <= 0xE0) - goto yy1241; - goto yy1242; - } - } else { - if (yych <= 0xF0) { - if (yych <= 0xED) - goto yy1246; - if (yych <= 0xEF) - goto yy1242; - goto yy1243; - } else { - if (yych <= 0xF3) - goto yy1244; - if (yych <= 0xF4) - goto yy1245; - goto yy1237; - } - } - yy1240: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1237; - if (yych <= 0xBF) - goto yy1238; - goto yy1237; - yy1241: - ++p; - yych = *p; - if (yych <= 0x9F) - goto yy1237; - if (yych <= 0xBF) - goto yy1240; - goto yy1237; - yy1242: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1237; - if (yych <= 0xBF) - goto yy1240; - goto yy1237; - yy1243: - ++p; - yych = *p; - if (yych <= 0x8F) - goto yy1237; - if (yych <= 0xBF) - goto yy1242; - goto yy1237; - yy1244: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1237; - if (yych <= 0xBF) - goto yy1242; - goto yy1237; - yy1245: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1237; - if (yych <= 0x8F) - goto yy1242; - goto yy1237; - yy1246: - ++p; - yych = *p; - if (yych <= 0x7F) - goto yy1237; - if (yych <= 0x9F) - goto yy1240; - goto yy1237; - yy1247: - yych = *++p; - if (yych != ':') - goto yy1237; - yy1248: - ++p; - yych = *p; - if (yybm[0 + yych] & 128) { - goto yy1248; - } - { return (bufsize_t)(p - start); } - } +{ + unsigned char yych; + static const unsigned char yybm[] = { + 0, 64, 64, 64, 64, 64, 64, 64, + 64, 128, 0, 64, 64, 0, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 128, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 0, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + yych = *p; + if (yych == '[') goto yy997; + ++p; +yy996: + { return 0; } +yy997: + yych = *(marker = ++p); + if (yych != '^') goto yy996; + yych = *++p; + if (yych != ']') goto yy1001; +yy999: + p = marker; + goto yy996; +yy1000: + yych = *++p; +yy1001: + if (yybm[0+yych] & 64) { + goto yy1000; + } + if (yych <= 0xEC) { + if (yych <= 0xC1) { + if (yych <= ' ') goto yy999; + if (yych <= ']') goto yy1009; + goto yy999; + } else { + if (yych <= 0xDF) goto yy1002; + if (yych <= 0xE0) goto yy1003; + goto yy1004; + } + } else { + if (yych <= 0xF0) { + if (yych <= 0xED) goto yy1005; + if (yych <= 0xEF) goto yy1004; + goto yy1006; + } else { + if (yych <= 0xF3) goto yy1007; + if (yych <= 0xF4) goto yy1008; + goto yy999; + } + } +yy1002: + yych = *++p; + if (yych <= 0x7F) goto yy999; + if (yych <= 0xBF) goto yy1000; + goto yy999; +yy1003: + yych = *++p; + if (yych <= 0x9F) goto yy999; + if (yych <= 0xBF) goto yy1002; + goto yy999; +yy1004: + yych = *++p; + if (yych <= 0x7F) goto yy999; + if (yych <= 0xBF) goto yy1002; + goto yy999; +yy1005: + yych = *++p; + if (yych <= 0x7F) goto yy999; + if (yych <= 0x9F) goto yy1002; + goto yy999; +yy1006: + yych = *++p; + if (yych <= 0x8F) goto yy999; + if (yych <= 0xBF) goto yy1004; + goto yy999; +yy1007: + yych = *++p; + if (yych <= 0x7F) goto yy999; + if (yych <= 0xBF) goto yy1004; + goto yy999; +yy1008: + yych = *++p; + if (yych <= 0x7F) goto yy999; + if (yych <= 0x8F) goto yy1004; + goto yy999; +yy1009: + yych = *++p; + if (yych != ':') goto yy999; +yy1010: + yych = *++p; + if (yybm[0+yych] & 128) { + goto yy1010; + } + { return (bufsize_t)(p - start); } +} + } diff --git a/Sources/libcmark_gfm/strikethrough.c b/Sources/libcmark_gfm/strikethrough.c index 4b76481..8145d23 100644 --- a/Sources/libcmark_gfm/strikethrough.c +++ b/Sources/libcmark_gfm/strikethrough.c @@ -1,6 +1,6 @@ #include "strikethrough.h" -#include "parser.h" -#include "render.h" +#include +#include cmark_node_type CMARK_NODE_STRIKETHROUGH; @@ -27,7 +27,8 @@ static cmark_node *match(cmark_syntax_extension *self, cmark_parser *parser, res->start_line = res->end_line = cmark_inline_parser_get_line(inline_parser); res->start_column = cmark_inline_parser_get_column(inline_parser) - delims; - if (left_flanking || right_flanking) { + if ((left_flanking || right_flanking) && + (delims == 2 || (!(parser->options & CMARK_OPT_STRIKETHROUGH_DOUBLE_TILDE) && delims == 1))) { cmark_inline_parser_push_delimiter(inline_parser, character, left_flanking, right_flanking, res); } @@ -45,12 +46,14 @@ static delimiter *insert(cmark_syntax_extension *self, cmark_parser *parser, strikethrough = opener->inl_text; + if (opener->inl_text->as.literal.len != closer->inl_text->as.literal.len) + goto done; + if (!cmark_node_set_type(strikethrough, CMARK_NODE_STRIKETHROUGH)) goto done; cmark_node_set_syntax_extension(strikethrough, self); - cmark_node_set_string_content(strikethrough, "~"); tmp = cmark_node_next(opener->inl_text); while (tmp) { @@ -93,7 +96,7 @@ static int can_contain(cmark_syntax_extension *extension, cmark_node *node, static void commonmark_render(cmark_syntax_extension *extension, cmark_renderer *renderer, cmark_node *node, cmark_event_type ev_type, int options) { - renderer->out(renderer, node, cmark_node_get_string_content(node), false, LITERAL); + renderer->out(renderer, node, "~~", false, LITERAL); } static void latex_render(cmark_syntax_extension *extension, @@ -132,6 +135,12 @@ static void html_render(cmark_syntax_extension *extension, } } +static void plaintext_render(cmark_syntax_extension *extension, + cmark_renderer *renderer, cmark_node *node, + cmark_event_type ev_type, int options) { + renderer->out(renderer, node, "~", false, LITERAL); +} + cmark_syntax_extension *create_strikethrough_extension(void) { cmark_syntax_extension *ext = cmark_syntax_extension_new("strikethrough"); cmark_llist *special_chars = NULL; @@ -142,6 +151,7 @@ cmark_syntax_extension *create_strikethrough_extension(void) { cmark_syntax_extension_set_latex_render_func(ext, latex_render); cmark_syntax_extension_set_man_render_func(ext, man_render); cmark_syntax_extension_set_html_render_func(ext, html_render); + cmark_syntax_extension_set_plaintext_render_func(ext, plaintext_render); CMARK_NODE_STRIKETHROUGH = cmark_syntax_extension_add_node(1); cmark_syntax_extension_set_match_inline_func(ext, match); diff --git a/Sources/libcmark_gfm/syntax_extension.c b/Sources/libcmark_gfm/syntax_extension.c index d079efa..d24fe43 100644 --- a/Sources/libcmark_gfm/syntax_extension.c +++ b/Sources/libcmark_gfm/syntax_extension.c @@ -1,7 +1,7 @@ #include #include -#include "cmark.h" +#include "cmark-gfm.h" #include "syntax_extension.h" #include "buffer.h" @@ -97,6 +97,11 @@ void cmark_syntax_extension_set_latex_render_func(cmark_syntax_extension *extens extension->latex_render_func = func; } +void cmark_syntax_extension_set_xml_attr_func(cmark_syntax_extension *extension, + cmark_xml_attr_func func) { + extension->xml_attr_func = func; +} + void cmark_syntax_extension_set_man_render_func(cmark_syntax_extension *extension, cmark_common_render_func func) { extension->man_render_func = func; @@ -128,6 +133,11 @@ void *cmark_syntax_extension_get_private(cmark_syntax_extension *extension) { return extension->priv; } +void cmark_syntax_extension_set_opaque_alloc_func(cmark_syntax_extension *extension, + cmark_opaque_alloc_func func) { + extension->opaque_alloc_func = func; +} + void cmark_syntax_extension_set_opaque_free_func(cmark_syntax_extension *extension, cmark_opaque_free_func func) { extension->opaque_free_func = func; diff --git a/Sources/libcmark_gfm/table.c b/Sources/libcmark_gfm/table.c index 044343d..9829c3d 100644 --- a/Sources/libcmark_gfm/table.c +++ b/Sources/libcmark_gfm/table.c @@ -1,14 +1,15 @@ -#include "cmark_extension_api.h" -#include "html.h" -#include "inlines.h" -#include "parser.h" -#include "references.h" +#include +#include +#include +#include +#include #include -#include "render.h" +#include #include "ext_scanners.h" #include "strikethrough.h" #include "table.h" +#include "cmark-gfm-core-extensions.h" cmark_node_type CMARK_NODE_TABLE, CMARK_NODE_TABLE_ROW, CMARK_NODE_TABLE_CELL; @@ -113,7 +114,7 @@ static table_row *row_from_string(cmark_syntax_extension *self, cmark_parser *parser, unsigned char *string, int len) { table_row *row = NULL; - bufsize_t cell_matched, pipe_matched, offset; + bufsize_t cell_matched = 1, pipe_matched = 1, offset; row = (table_row *)parser->mem->calloc(1, sizeof(table_row)); row->n_columns = 0; @@ -121,7 +122,9 @@ static table_row *row_from_string(cmark_syntax_extension *self, offset = scan_table_cell_end(string, len, 0); - do { + // Parse the cells of the row. Stop if we reach the end of the input, or if we + // cannot detect any more cells. + while (offset < len && (cell_matched || pipe_matched)) { cell_matched = scan_table_cell(string, len, offset); pipe_matched = scan_table_cell_end(string, len, offset + cell_matched); @@ -148,7 +151,7 @@ static table_row *row_from_string(cmark_syntax_extension *self, pipe_matched = scan_table_row_end(string, len, offset); offset += pipe_matched; } - } while ((cell_matched || pipe_matched) && offset < len); + } if (offset != len || !row->n_columns) { free_table_row(parser->mem, row); @@ -380,7 +383,8 @@ static int can_contain(cmark_syntax_extension *extension, cmark_node *node, child_type == CMARK_NODE_EMPH || child_type == CMARK_NODE_STRONG || child_type == CMARK_NODE_LINK || child_type == CMARK_NODE_IMAGE || child_type == CMARK_NODE_STRIKETHROUGH || - child_type == CMARK_NODE_HTML_INLINE; + child_type == CMARK_NODE_HTML_INLINE || + child_type == CMARK_NODE_FOOTNOTE_REFERENCE; } return false; } @@ -487,6 +491,27 @@ static void latex_render(cmark_syntax_extension *extension, } } +static const char *xml_attr(cmark_syntax_extension *extension, + cmark_node *node) { + if (node->type == CMARK_NODE_TABLE_CELL) { + if (cmark_gfm_extensions_get_table_row_is_header(node->parent)) { + uint8_t *alignments = get_table_alignments(node->parent->parent); + int i = 0; + cmark_node *n; + for (n = node->parent->first_child; n; n = n->next, ++i) + if (n == node) + break; + switch (alignments[i]) { + case 'l': return " align=\"left\""; + case 'c': return " align=\"center\""; + case 'r': return " align=\"right\""; + } + } + } + + return NULL; +} + static void man_render(cmark_syntax_extension *extension, cmark_renderer *renderer, cmark_node *node, cmark_event_type ev_type, int options) { @@ -542,6 +567,18 @@ static void man_render(cmark_syntax_extension *extension, } } +static void html_table_add_align(cmark_strbuf* html, const char* align, int options) { + if (options & CMARK_OPT_TABLE_PREFER_STYLE_ATTRIBUTES) { + cmark_strbuf_puts(html, " style=\"text-align: "); + cmark_strbuf_puts(html, align); + cmark_strbuf_puts(html, "\""); + } else { + cmark_strbuf_puts(html, " align=\""); + cmark_strbuf_puts(html, align); + cmark_strbuf_puts(html, "\""); + } +} + struct html_table_state { unsigned need_closing_table_body : 1; unsigned in_table_header : 1; @@ -566,10 +603,15 @@ static void html_render(cmark_syntax_extension *extension, cmark_strbuf_putc(html, '>'); table_state->need_closing_table_body = false; } else { - if (table_state->need_closing_table_body) + if (table_state->need_closing_table_body) { + cmark_html_render_cr(html); cmark_strbuf_puts(html, ""); + cmark_html_render_cr(html); + } table_state->need_closing_table_body = false; - cmark_strbuf_puts(html, "\n"); + cmark_html_render_cr(html); + cmark_strbuf_puts(html, ""); + cmark_html_render_cr(html); } } else if (node->type == CMARK_NODE_TABLE_ROW) { if (entering) { @@ -611,9 +653,9 @@ static void html_render(cmark_syntax_extension *extension, break; switch (alignments[i]) { - case 'l': cmark_strbuf_puts(html, " align=\"left\""); break; - case 'c': cmark_strbuf_puts(html, " align=\"center\""); break; - case 'r': cmark_strbuf_puts(html, " align=\"right\""); break; + case 'l': html_table_add_align(html, "left", options); break; + case 'c': html_table_add_align(html, "center", options); break; + case 'r': html_table_add_align(html, "right", options); break; } cmark_html_render_sourcepos(node, html, options); @@ -630,6 +672,16 @@ static void html_render(cmark_syntax_extension *extension, } } +static void opaque_alloc(cmark_syntax_extension *self, cmark_mem *mem, cmark_node *node) { + if (node->type == CMARK_NODE_TABLE) { + node->as.opaque = mem->calloc(1, sizeof(node_table)); + } else if (node->type == CMARK_NODE_TABLE_ROW) { + node->as.opaque = mem->calloc(1, sizeof(node_table_row)); + } else if (node->type == CMARK_NODE_TABLE_CELL) { + node->as.opaque = mem->calloc(1, sizeof(node_cell)); + } +} + static void opaque_free(cmark_syntax_extension *self, cmark_mem *mem, cmark_node *node) { if (node->type == CMARK_NODE_TABLE) { free_node_table(mem, node->as.opaque); @@ -657,8 +709,10 @@ cmark_syntax_extension *create_table_extension(void) { cmark_syntax_extension_set_commonmark_render_func(self, commonmark_render); cmark_syntax_extension_set_plaintext_render_func(self, commonmark_render); cmark_syntax_extension_set_latex_render_func(self, latex_render); + cmark_syntax_extension_set_xml_attr_func(self, xml_attr); cmark_syntax_extension_set_man_render_func(self, man_render); cmark_syntax_extension_set_html_render_func(self, html_render); + cmark_syntax_extension_set_opaque_alloc_func(self, opaque_alloc); cmark_syntax_extension_set_opaque_free_func(self, opaque_free); cmark_syntax_extension_set_commonmark_escape_func(self, escape); CMARK_NODE_TABLE = cmark_syntax_extension_add_node(0); @@ -668,16 +722,43 @@ cmark_syntax_extension *create_table_extension(void) { return self; } -uint16_t cmarkextensions_get_table_columns(cmark_node *node) { +uint16_t cmark_gfm_extensions_get_table_columns(cmark_node *node) { if (node->type != CMARK_NODE_TABLE) return 0; return ((node_table *)node->as.opaque)->n_columns; } -uint8_t *cmarkextensions_get_table_alignments(cmark_node *node) { +uint8_t *cmark_gfm_extensions_get_table_alignments(cmark_node *node) { if (node->type != CMARK_NODE_TABLE) return 0; return ((node_table *)node->as.opaque)->alignments; } + +int cmark_gfm_extensions_set_table_columns(cmark_node *node, uint16_t n_columns) { + return set_n_table_columns(node, n_columns); +} + +int cmark_gfm_extensions_set_table_alignments(cmark_node *node, uint16_t ncols, uint8_t *alignments) { + uint8_t *a = (uint8_t *)cmark_node_mem(node)->calloc(1, ncols); + memcpy(a, alignments, ncols); + return set_table_alignments(node, a); +} + +int cmark_gfm_extensions_get_table_row_is_header(cmark_node *node) +{ + if (!node || node->type != CMARK_NODE_TABLE_ROW) + return 0; + + return ((node_table_row *)node->as.opaque)->is_header; +} + +int cmark_gfm_extensions_set_table_row_is_header(cmark_node *node, int is_header) +{ + if (!node || node->type != CMARK_NODE_TABLE_ROW) + return 0; + + ((node_table_row *)node->as.opaque)->is_header = (is_header != 0); + return 1; +} diff --git a/Sources/libcmark_gfm/tagfilter.c b/Sources/libcmark_gfm/tagfilter.c index 554943e..262352e 100644 --- a/Sources/libcmark_gfm/tagfilter.c +++ b/Sources/libcmark_gfm/tagfilter.c @@ -1,5 +1,5 @@ #include "tagfilter.h" -#include "parser.h" +#include #include static const char *blacklist[] = { diff --git a/Sources/libcmark_gfm/tasklist.c b/Sources/libcmark_gfm/tasklist.c new file mode 100644 index 0000000..7351a44 --- /dev/null +++ b/Sources/libcmark_gfm/tasklist.c @@ -0,0 +1,127 @@ +#include "tasklist.h" +#include +#include +#include +#include "ext_scanners.h" + +typedef enum { + CMARK_TASKLIST_NOCHECKED, + CMARK_TASKLIST_CHECKED, +} cmark_tasklist_type; + +static const char *get_type_string(cmark_syntax_extension *extension, cmark_node *node) { + return "tasklist"; +} + +static bool parse_node_item_prefix(cmark_parser *parser, const char *input, + cmark_node *container) { + bool res = false; + + if (parser->indent >= + container->as.list.marker_offset + container->as.list.padding) { + cmark_parser_advance_offset(parser, input, container->as.list.marker_offset + + container->as.list.padding, + true); + res = true; + } else if (parser->blank && container->first_child != NULL) { + // if container->first_child is NULL, then the opening line + // of the list item was blank after the list marker; in this + // case, we are done with the list item. + cmark_parser_advance_offset(parser, input, parser->first_nonspace - parser->offset, + false); + res = true; + } + return res; +} + +static int matches(cmark_syntax_extension *self, cmark_parser *parser, + unsigned char *input, int len, + cmark_node *parent_container) { + return parse_node_item_prefix(parser, (const char*)input, parent_container); +} + +static int can_contain(cmark_syntax_extension *extension, cmark_node *node, + cmark_node_type child_type) { + return (node->type == CMARK_NODE_ITEM) ? 1 : 0; +} + +static cmark_node *open_tasklist_item(cmark_syntax_extension *self, + int indented, cmark_parser *parser, + cmark_node *parent_container, + unsigned char *input, int len) { + cmark_node_type node_type = cmark_node_get_type(parent_container); + if (node_type != CMARK_NODE_ITEM) { + return NULL; + } + + bufsize_t matched = scan_tasklist(input, len, 0); + if (!matched) { + return NULL; + } + + cmark_node_set_syntax_extension(parent_container, self); + cmark_parser_advance_offset(parser, (char *)input, 3, false); + + long userdata; + if (strstr((char*)input, "[x]")) { + userdata = CMARK_TASKLIST_CHECKED; + } else { + userdata = CMARK_TASKLIST_NOCHECKED; + } + cmark_node_set_user_data(parent_container, (void*)userdata); + + return NULL; +} + +static void commonmark_render(cmark_syntax_extension *extension, + cmark_renderer *renderer, cmark_node *node, + cmark_event_type ev_type, int options) { + bool entering = (ev_type == CMARK_EVENT_ENTER); + if (entering) { + renderer->cr(renderer); + long userdata = (long)cmark_node_get_user_data(node); + if (userdata == CMARK_TASKLIST_CHECKED) { + renderer->out(renderer, node, " - [x] ", false, LITERAL); + } else { + renderer->out(renderer, node, " - [ ] ", false, LITERAL); + } + cmark_strbuf_puts(renderer->prefix, " "); + } else { + cmark_strbuf_truncate(renderer->prefix, renderer->prefix->size - 4); + renderer->cr(renderer); + } +} + +static void html_render(cmark_syntax_extension *extension, + cmark_html_renderer *renderer, cmark_node *node, + cmark_event_type ev_type, int options) { + bool entering = (ev_type == CMARK_EVENT_ENTER); + if (entering) { + cmark_html_render_cr(renderer->html); + cmark_strbuf_puts(renderer->html, "
  • html, options); + cmark_strbuf_putc(renderer->html, '>'); + long userdata = (long)cmark_node_get_user_data(node); + if (userdata == CMARK_TASKLIST_CHECKED) { + cmark_strbuf_puts(renderer->html, " "); + } else { + cmark_strbuf_puts(renderer->html, " "); + } + } else { + cmark_strbuf_puts(renderer->html, "
  • \n"); + } +} + +cmark_syntax_extension *create_tasklist_extension(void) { + cmark_syntax_extension *ext = cmark_syntax_extension_new("tasklist"); + + cmark_syntax_extension_set_match_block_func(ext, matches); + cmark_syntax_extension_set_get_type_string_func(ext, get_type_string); + cmark_syntax_extension_set_open_block_func(ext, open_tasklist_item); + cmark_syntax_extension_set_can_contain_func(ext, can_contain); + cmark_syntax_extension_set_commonmark_render_func(ext, commonmark_render); + cmark_syntax_extension_set_plaintext_render_func(ext, commonmark_render); + cmark_syntax_extension_set_html_render_func(ext, html_render); + + return ext; +} diff --git a/Sources/libcmark_gfm/xml.c b/Sources/libcmark_gfm/xml.c index ea53b99..2975bf9 100644 --- a/Sources/libcmark_gfm/xml.c +++ b/Sources/libcmark_gfm/xml.c @@ -4,10 +4,11 @@ #include #include "config.h" -#include "cmark.h" +#include "cmark-gfm.h" #include "node.h" #include "buffer.h" #include "houdini.h" +#include "syntax_extension.h" #define BUFFER_SIZE 100 @@ -50,6 +51,12 @@ static int S_render_node(cmark_node *node, cmark_event_type ev_type, cmark_strbuf_puts(xml, buffer); } + if (node->extension && node->extension->xml_attr_func) { + const char* r = node->extension->xml_attr_func(node->extension, node); + if (r != NULL) + cmark_strbuf_puts(xml, r); + } + literal = false; switch (node->type) { @@ -60,7 +67,7 @@ static int S_render_node(cmark_node *node, cmark_event_type ev_type, case CMARK_NODE_CODE: case CMARK_NODE_HTML_BLOCK: case CMARK_NODE_HTML_INLINE: - cmark_strbuf_puts(xml, ">"); + cmark_strbuf_puts(xml, " xml:space=\"preserve\">"); escape_xml(xml, node->as.literal.data, node->as.literal.len); cmark_strbuf_puts(xml, "as.code.info.data, node->as.code.info.len); cmark_strbuf_putc(xml, '"'); } - cmark_strbuf_puts(xml, ">"); + cmark_strbuf_puts(xml, " xml:space=\"preserve\">"); escape_xml(xml, node->as.code.literal.data, node->as.code.literal.len); cmark_strbuf_puts(xml, ""; }; + A2201FF8220A649C00DE9A56 /* cmark-gfm-extension_api.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm-extension_api.h"; sourceTree = ""; }; + A2201FF9220A649C00DE9A56 /* cmark-gfm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm.h"; sourceTree = ""; }; + A220200B220A684300DE9A56 /* entities.inc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.pascal; path = entities.inc; sourceTree = ""; }; + A220200C220A684300DE9A56 /* case_fold_switch.inc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.pascal; path = case_fold_switch.inc; sourceTree = ""; }; + A2202015220A686F00DE9A56 /* html.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = html.h; sourceTree = ""; }; + A2202016220A686F00DE9A56 /* autolink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = autolink.h; sourceTree = ""; }; + A2202017220A686F00DE9A56 /* ext_scanners.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ext_scanners.h; sourceTree = ""; }; + A2202018220A686F00DE9A56 /* strikethrough.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = strikethrough.h; sourceTree = ""; }; + A2202019220A686F00DE9A56 /* cmark-gfm-core-extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm-core-extensions.h"; sourceTree = ""; }; + A220201A220A686F00DE9A56 /* cmark-gfm_export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm_export.h"; sourceTree = ""; }; + A220201B220A686F00DE9A56 /* table.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = table.h; sourceTree = ""; }; + A220201C220A686F00DE9A56 /* tagfilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tagfilter.h; sourceTree = ""; }; + A220201D220A687000DE9A56 /* tasklist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tasklist.h; sourceTree = ""; }; + A2202042220A68A400DE9A56 /* cmark-gfm_version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm_version.h"; sourceTree = ""; }; + A2202047220A68C700DE9A56 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = ""; }; + A220204C220A690200DE9A56 /* cmark-gfm-extensions_export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "cmark-gfm-extensions_export.h"; sourceTree = ""; }; A288C74C1FEF4F6D00667F4A /* libcmark_gfm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libcmark_gfm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; A288C7591FEF500200667F4A /* xml.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = xml.c; sourceTree = ""; }; A288C75A1FEF500200667F4A /* strikethrough.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strikethrough.c; sourceTree = ""; }; @@ -280,36 +313,21 @@ A288C7631FEF500200667F4A /* latex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = latex.c; sourceTree = ""; }; A288C7641FEF500200667F4A /* houdini_href_e.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = houdini_href_e.c; sourceTree = ""; }; A288C7651FEF500200667F4A /* syntax_extension.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = syntax_extension.c; sourceTree = ""; }; - A288C7661FEF500200667F4A /* case_fold_switch.inc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.pascal; path = case_fold_switch.inc; sourceTree = ""; }; - A288C7671FEF500200667F4A /* entities.inc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.pascal; path = entities.inc; sourceTree = ""; }; A288C7681FEF500200667F4A /* ext_scanners.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ext_scanners.c; sourceTree = ""; }; A288C7691FEF500200667F4A /* tagfilter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = tagfilter.c; sourceTree = ""; }; A288C76A1FEF500200667F4A /* houdini_html_e.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = houdini_html_e.c; sourceTree = ""; }; - A288C76C1FEF500200667F4A /* cmarkextensions_export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmarkextensions_export.h; sourceTree = ""; }; - A288C76D1FEF500200667F4A /* cmark_export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmark_export.h; sourceTree = ""; }; - A288C76E1FEF500200667F4A /* html.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = html.h; sourceTree = ""; }; A288C7701FEF500200667F4A /* plugin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = plugin.h; sourceTree = ""; }; A288C7711FEF500200667F4A /* map.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = map.h; sourceTree = ""; }; - A288C7721FEF500200667F4A /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = ""; }; A288C7731FEF500200667F4A /* chunk.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = chunk.h; sourceTree = ""; }; A288C7741FEF500200667F4A /* footnotes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = footnotes.h; sourceTree = ""; }; A288C7751FEF500200667F4A /* parser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parser.h; sourceTree = ""; }; A288C7761FEF500200667F4A /* scanners.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scanners.h; sourceTree = ""; }; A288C7781FEF500200667F4A /* node.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = node.h; sourceTree = ""; }; - A288C7791FEF500200667F4A /* core-extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "core-extensions.h"; sourceTree = ""; }; A288C77B1FEF500200667F4A /* registry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = registry.h; sourceTree = ""; }; - A288C77C1FEF500200667F4A /* cmark_version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmark_version.h; sourceTree = ""; }; - A288C77D1FEF500200667F4A /* autolink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = autolink.h; sourceTree = ""; }; A288C77E1FEF500200667F4A /* cmark_ctype.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmark_ctype.h; sourceTree = ""; }; A288C77F1FEF500200667F4A /* buffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = buffer.h; sourceTree = ""; }; - A288C7801FEF500200667F4A /* cmark.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmark.h; sourceTree = ""; }; - A288C7811FEF500200667F4A /* strikethrough.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = strikethrough.h; sourceTree = ""; }; - A288C7821FEF500200667F4A /* cmark_extension_api.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmark_extension_api.h; sourceTree = ""; }; A288C7831FEF500200667F4A /* syntax_extension.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = syntax_extension.h; sourceTree = ""; }; A288C7841FEF500200667F4A /* inlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inlines.h; sourceTree = ""; }; - A288C7851FEF500200667F4A /* table.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = table.h; sourceTree = ""; }; - A288C7861FEF500200667F4A /* tagfilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tagfilter.h; sourceTree = ""; }; - A288C7871FEF500200667F4A /* ext_scanners.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ext_scanners.h; sourceTree = ""; }; A288C7881FEF500200667F4A /* houdini.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = houdini.h; sourceTree = ""; }; A288C7891FEF500200667F4A /* iterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iterator.h; sourceTree = ""; }; A288C78A1FEF500200667F4A /* utf8.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utf8.h; sourceTree = ""; }; @@ -335,7 +353,7 @@ A288C8451FEF509300667F4A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; A288C8471FEF511A00667F4A /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; }; A288C8481FEF511A00667F4A /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; - A288C8491FEF51AD00667F4A /* libcmark_gfm.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; fileEncoding = 4; path = libcmark_gfm.podspec; sourceTree = ""; }; + A288C8491FEF51AD00667F4A /* libcmark_gfm.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; fileEncoding = 4; path = libcmark_gfm.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; A2BD076A1FEF60DB005E1FC7 /* libcmark_gfm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libcmark_gfm.h; sourceTree = ""; }; A2BD07801FEF6B65005E1FC7 /* libcmark_gfm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libcmark_gfm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; A2BD078D1FEF6B76005E1FC7 /* libcmark_gfm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libcmark_gfm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -414,19 +432,16 @@ A288C75E1FEF500200667F4A /* autolink.c */, A288C75F1FEF500200667F4A /* blocks.c */, A288C75D1FEF500200667F4A /* buffer.c */, - A288C7661FEF500200667F4A /* case_fold_switch.inc */, A288C7601FEF500200667F4A /* cmark_ctype.c */, A288C75B1FEF500200667F4A /* cmark.c */, A288C7941FEF500200667F4A /* commonmark.c */, A288C79E1FEF500200667F4A /* core-extensions.c */, - A288C7671FEF500200667F4A /* entities.inc */, A288C7681FEF500200667F4A /* ext_scanners.c */, A288C79A1FEF500200667F4A /* footnotes.c */, A288C7641FEF500200667F4A /* houdini_href_e.c */, A288C76A1FEF500200667F4A /* houdini_html_e.c */, A288C79B1FEF500200667F4A /* houdini_html_u.c */, A288C7971FEF500200667F4A /* html.c */, - A288C76B1FEF500200667F4A /* include */, A288C7621FEF500200667F4A /* inlines.c */, A288C7911FEF500200667F4A /* iterator.c */, A288C7631FEF500200667F4A /* latex.c */, @@ -444,8 +459,12 @@ A288C7651FEF500200667F4A /* syntax_extension.c */, A288C7611FEF500200667F4A /* table.c */, A288C7691FEF500200667F4A /* tagfilter.c */, + A2201FF2220A648400DE9A56 /* tasklist.c */, A288C78E1FEF500200667F4A /* utf8.c */, A288C7591FEF500200667F4A /* xml.c */, + A220200C220A684300DE9A56 /* case_fold_switch.inc */, + A220200B220A684300DE9A56 /* entities.inc */, + A288C76B1FEF500200667F4A /* include */, ); path = libcmark_gfm; sourceTree = ""; @@ -453,21 +472,21 @@ A288C76B1FEF500200667F4A /* include */ = { isa = PBXGroup; children = ( - A288C77D1FEF500200667F4A /* autolink.h */, + A2202016220A686F00DE9A56 /* autolink.h */, A288C77F1FEF500200667F4A /* buffer.h */, A288C7731FEF500200667F4A /* chunk.h */, A288C77E1FEF500200667F4A /* cmark_ctype.h */, - A288C76D1FEF500200667F4A /* cmark_export.h */, - A288C7821FEF500200667F4A /* cmark_extension_api.h */, - A288C77C1FEF500200667F4A /* cmark_version.h */, - A288C7801FEF500200667F4A /* cmark.h */, - A288C76C1FEF500200667F4A /* cmarkextensions_export.h */, - A288C7721FEF500200667F4A /* config.h */, - A288C7791FEF500200667F4A /* core-extensions.h */, - A288C7871FEF500200667F4A /* ext_scanners.h */, + A220201A220A686F00DE9A56 /* cmark-gfm_export.h */, + A2202042220A68A400DE9A56 /* cmark-gfm_version.h */, + A2202019220A686F00DE9A56 /* cmark-gfm-core-extensions.h */, + A2201FF8220A649C00DE9A56 /* cmark-gfm-extension_api.h */, + A220204C220A690200DE9A56 /* cmark-gfm-extensions_export.h */, + A2201FF9220A649C00DE9A56 /* cmark-gfm.h */, + A2202047220A68C700DE9A56 /* config.h */, + A2202017220A686F00DE9A56 /* ext_scanners.h */, A288C7741FEF500200667F4A /* footnotes.h */, A288C7881FEF500200667F4A /* houdini.h */, - A288C76E1FEF500200667F4A /* html.h */, + A2202015220A686F00DE9A56 /* html.h */, A288C7841FEF500200667F4A /* inlines.h */, A288C7891FEF500200667F4A /* iterator.h */, A2BD076A1FEF60DB005E1FC7 /* libcmark_gfm.h */, @@ -479,10 +498,11 @@ A288C77B1FEF500200667F4A /* registry.h */, A288C78C1FEF500200667F4A /* render.h */, A288C7761FEF500200667F4A /* scanners.h */, - A288C7811FEF500200667F4A /* strikethrough.h */, + A2202018220A686F00DE9A56 /* strikethrough.h */, A288C7831FEF500200667F4A /* syntax_extension.h */, - A288C7851FEF500200667F4A /* table.h */, - A288C7861FEF500200667F4A /* tagfilter.h */, + A220201B220A686F00DE9A56 /* table.h */, + A220201C220A686F00DE9A56 /* tagfilter.h */, + A220201D220A687000DE9A56 /* tasklist.h */, A288C78A1FEF500200667F4A /* utf8.h */, ); path = include; @@ -498,34 +518,35 @@ A288C7EF1FEF500200667F4A /* parser.h in Headers */, A288C7EE1FEF500200667F4A /* footnotes.h in Headers */, A2BD076B1FEF60DB005E1FC7 /* libcmark_gfm.h in Headers */, + A2202026220A687000DE9A56 /* ext_scanners.h in Headers */, + A220201E220A687000DE9A56 /* html.h in Headers */, A288C8021FEF500200667F4A /* iterator.h in Headers */, + A220204D220A690300DE9A56 /* cmark-gfm-extensions_export.h in Headers */, A288C7F21FEF500200667F4A /* node.h in Headers */, A288C8041FEF500200667F4A /* references.h in Headers */, + A2202022220A687000DE9A56 /* autolink.h in Headers */, A288C8051FEF500200667F4A /* render.h in Headers */, A288C8031FEF500200667F4A /* utf8.h in Headers */, A288C8011FEF500200667F4A /* houdini.h in Headers */, - A288C7F91FEF500200667F4A /* cmark.h in Headers */, - A288C7E71FEF500200667F4A /* cmark_export.h in Headers */, - A288C7FE1FEF500200667F4A /* table.h in Headers */, A288C7EA1FEF500200667F4A /* plugin.h in Headers */, - A288C7FA1FEF500200667F4A /* strikethrough.h in Headers */, - A288C7FF1FEF500200667F4A /* tagfilter.h in Headers */, A288C7EB1FEF500200667F4A /* map.h in Headers */, + A2202032220A687000DE9A56 /* cmark-gfm_export.h in Headers */, A288C7F01FEF500200667F4A /* scanners.h in Headers */, - A288C7FB1FEF500200667F4A /* cmark_extension_api.h in Headers */, - A288C7E81FEF500200667F4A /* html.h in Headers */, + A220202E220A687000DE9A56 /* cmark-gfm-core-extensions.h in Headers */, A288C7FC1FEF500200667F4A /* syntax_extension.h in Headers */, + A2202036220A687000DE9A56 /* table.h in Headers */, + A220202A220A687000DE9A56 /* strikethrough.h in Headers */, A288C7F81FEF500200667F4A /* buffer.h in Headers */, - A288C7EC1FEF500200667F4A /* config.h in Headers */, A288C7F41FEF500200667F4A /* registry.h in Headers */, - A288C7F51FEF500200667F4A /* cmark_version.h in Headers */, A288C7FD1FEF500200667F4A /* inlines.h in Headers */, + A220203E220A687000DE9A56 /* tasklist.h in Headers */, + A220203A220A687000DE9A56 /* tagfilter.h in Headers */, + A2201FFD220A649C00DE9A56 /* cmark-gfm.h in Headers */, A288C7ED1FEF500200667F4A /* chunk.h in Headers */, A288C7F71FEF500200667F4A /* cmark_ctype.h in Headers */, - A288C7F61FEF500200667F4A /* autolink.h in Headers */, - A288C8001FEF500200667F4A /* ext_scanners.h in Headers */, - A288C7E61FEF500200667F4A /* cmarkextensions_export.h in Headers */, - A288C7F31FEF500200667F4A /* core-extensions.h in Headers */, + A2201FFC220A649C00DE9A56 /* cmark-gfm-extension_api.h in Headers */, + A2202048220A68C700DE9A56 /* config.h in Headers */, + A2202043220A68A400DE9A56 /* cmark-gfm_version.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -533,37 +554,38 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - A2BD080D1FEF6BAD005E1FC7 /* cmark.h in Headers */, - A2BD081F1FEF6BAD005E1FC7 /* strikethrough.h in Headers */, - A2BD08141FEF6BAD005E1FC7 /* html.h in Headers */, - A2BD080C1FEF6BAD005E1FC7 /* cmark_version.h in Headers */, A2BD08231FEF6BAD005E1FC7 /* utf8.h in Headers */, A2BD08051FEF6BAD005E1FC7 /* libcmark_gfm.h in Headers */, - A2BD08061FEF6BAD005E1FC7 /* autolink.h in Headers */, - A2BD080B1FEF6BAD005E1FC7 /* cmark_extension_api.h in Headers */, - A2BD08101FEF6BAD005E1FC7 /* core-extensions.h in Headers */, - A2BD08111FEF6BAD005E1FC7 /* ext_scanners.h in Headers */, A2BD08161FEF6BAD005E1FC7 /* iterator.h in Headers */, + A2202027220A687000DE9A56 /* ext_scanners.h in Headers */, + A220201F220A687000DE9A56 /* html.h in Headers */, A2BD081C1FEF6BAD005E1FC7 /* registry.h in Headers */, + A220204E220A690300DE9A56 /* cmark-gfm-extensions_export.h in Headers */, A2BD08201FEF6BAD005E1FC7 /* syntax_extension.h in Headers */, A2BD081A1FEF6BAD005E1FC7 /* plugin.h in Headers */, - A2BD08211FEF6BAD005E1FC7 /* table.h in Headers */, + A2202023220A687000DE9A56 /* autolink.h in Headers */, A2BD08081FEF6BAD005E1FC7 /* chunk.h in Headers */, A2BD08181FEF6BAD005E1FC7 /* node.h in Headers */, A2BD081D1FEF6BAD005E1FC7 /* render.h in Headers */, A2BD08191FEF6BAD005E1FC7 /* parser.h in Headers */, A2BD08151FEF6BAD005E1FC7 /* inlines.h in Headers */, - A2BD080A1FEF6BAD005E1FC7 /* cmark_export.h in Headers */, + A2202033220A687000DE9A56 /* cmark-gfm_export.h in Headers */, A2BD08071FEF6BAD005E1FC7 /* buffer.h in Headers */, + A220202F220A687000DE9A56 /* cmark-gfm-core-extensions.h in Headers */, A2BD08131FEF6BAD005E1FC7 /* houdini.h in Headers */, + A2202037220A687000DE9A56 /* table.h in Headers */, + A220202B220A687000DE9A56 /* strikethrough.h in Headers */, A2BD081E1FEF6BAD005E1FC7 /* scanners.h in Headers */, - A2BD08221FEF6BAD005E1FC7 /* tagfilter.h in Headers */, + A2202001220A64A500DE9A56 /* cmark-gfm.h in Headers */, A2BD08121FEF6BAD005E1FC7 /* footnotes.h in Headers */, + A220203F220A687000DE9A56 /* tasklist.h in Headers */, + A220203B220A687000DE9A56 /* tagfilter.h in Headers */, A2BD08171FEF6BAD005E1FC7 /* map.h in Headers */, - A2BD080F1FEF6BAD005E1FC7 /* config.h in Headers */, A2BD08091FEF6BAD005E1FC7 /* cmark_ctype.h in Headers */, + A2202000220A64A500DE9A56 /* cmark-gfm-extension_api.h in Headers */, A2BD081B1FEF6BAD005E1FC7 /* references.h in Headers */, - A2BD080E1FEF6BAD005E1FC7 /* cmarkextensions_export.h in Headers */, + A2202049220A68C700DE9A56 /* config.h in Headers */, + A2202044220A68A400DE9A56 /* cmark-gfm_version.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -571,37 +593,38 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - A2BD082C1FEF6BAE005E1FC7 /* cmark.h in Headers */, - A2BD083E1FEF6BAE005E1FC7 /* strikethrough.h in Headers */, - A2BD08331FEF6BAE005E1FC7 /* html.h in Headers */, - A2BD082B1FEF6BAE005E1FC7 /* cmark_version.h in Headers */, A2BD08421FEF6BAE005E1FC7 /* utf8.h in Headers */, A2BD08241FEF6BAE005E1FC7 /* libcmark_gfm.h in Headers */, - A2BD08251FEF6BAE005E1FC7 /* autolink.h in Headers */, - A2BD082A1FEF6BAE005E1FC7 /* cmark_extension_api.h in Headers */, - A2BD082F1FEF6BAE005E1FC7 /* core-extensions.h in Headers */, - A2BD08301FEF6BAE005E1FC7 /* ext_scanners.h in Headers */, A2BD08351FEF6BAE005E1FC7 /* iterator.h in Headers */, + A2202028220A687000DE9A56 /* ext_scanners.h in Headers */, + A2202020220A687000DE9A56 /* html.h in Headers */, A2BD083B1FEF6BAE005E1FC7 /* registry.h in Headers */, + A220204F220A690300DE9A56 /* cmark-gfm-extensions_export.h in Headers */, A2BD083F1FEF6BAE005E1FC7 /* syntax_extension.h in Headers */, A2BD08391FEF6BAE005E1FC7 /* plugin.h in Headers */, - A2BD08401FEF6BAE005E1FC7 /* table.h in Headers */, + A2202024220A687000DE9A56 /* autolink.h in Headers */, A2BD08271FEF6BAE005E1FC7 /* chunk.h in Headers */, A2BD08371FEF6BAE005E1FC7 /* node.h in Headers */, A2BD083C1FEF6BAE005E1FC7 /* render.h in Headers */, A2BD08381FEF6BAE005E1FC7 /* parser.h in Headers */, A2BD08341FEF6BAE005E1FC7 /* inlines.h in Headers */, - A2BD08291FEF6BAE005E1FC7 /* cmark_export.h in Headers */, + A2202034220A687000DE9A56 /* cmark-gfm_export.h in Headers */, A2BD08261FEF6BAE005E1FC7 /* buffer.h in Headers */, + A2202030220A687000DE9A56 /* cmark-gfm-core-extensions.h in Headers */, A2BD08321FEF6BAE005E1FC7 /* houdini.h in Headers */, + A2202038220A687000DE9A56 /* table.h in Headers */, + A220202C220A687000DE9A56 /* strikethrough.h in Headers */, A2BD083D1FEF6BAE005E1FC7 /* scanners.h in Headers */, - A2BD08411FEF6BAE005E1FC7 /* tagfilter.h in Headers */, + A2202005220A64A500DE9A56 /* cmark-gfm.h in Headers */, A2BD08311FEF6BAE005E1FC7 /* footnotes.h in Headers */, + A2202040220A687000DE9A56 /* tasklist.h in Headers */, + A220203C220A687000DE9A56 /* tagfilter.h in Headers */, A2BD08361FEF6BAE005E1FC7 /* map.h in Headers */, - A2BD082E1FEF6BAE005E1FC7 /* config.h in Headers */, A2BD08281FEF6BAE005E1FC7 /* cmark_ctype.h in Headers */, + A2202004220A64A500DE9A56 /* cmark-gfm-extension_api.h in Headers */, A2BD083A1FEF6BAE005E1FC7 /* references.h in Headers */, - A2BD082D1FEF6BAE005E1FC7 /* cmarkextensions_export.h in Headers */, + A220204A220A68C700DE9A56 /* config.h in Headers */, + A2202045220A68A400DE9A56 /* cmark-gfm_version.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -609,37 +632,38 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - A2BD084B1FEF6BAF005E1FC7 /* cmark.h in Headers */, - A2BD085D1FEF6BAF005E1FC7 /* strikethrough.h in Headers */, - A2BD08521FEF6BAF005E1FC7 /* html.h in Headers */, - A2BD084A1FEF6BAF005E1FC7 /* cmark_version.h in Headers */, A2BD08611FEF6BAF005E1FC7 /* utf8.h in Headers */, A2BD08431FEF6BAF005E1FC7 /* libcmark_gfm.h in Headers */, - A2BD08441FEF6BAF005E1FC7 /* autolink.h in Headers */, - A2BD08491FEF6BAF005E1FC7 /* cmark_extension_api.h in Headers */, - A2BD084E1FEF6BAF005E1FC7 /* core-extensions.h in Headers */, - A2BD084F1FEF6BAF005E1FC7 /* ext_scanners.h in Headers */, A2BD08541FEF6BAF005E1FC7 /* iterator.h in Headers */, + A2202029220A687000DE9A56 /* ext_scanners.h in Headers */, + A2202021220A687000DE9A56 /* html.h in Headers */, A2BD085A1FEF6BAF005E1FC7 /* registry.h in Headers */, + A2202050220A690300DE9A56 /* cmark-gfm-extensions_export.h in Headers */, A2BD085E1FEF6BAF005E1FC7 /* syntax_extension.h in Headers */, A2BD08581FEF6BAF005E1FC7 /* plugin.h in Headers */, - A2BD085F1FEF6BAF005E1FC7 /* table.h in Headers */, + A2202025220A687000DE9A56 /* autolink.h in Headers */, A2BD08461FEF6BAF005E1FC7 /* chunk.h in Headers */, A2BD08561FEF6BAF005E1FC7 /* node.h in Headers */, A2BD085B1FEF6BAF005E1FC7 /* render.h in Headers */, A2BD08571FEF6BAF005E1FC7 /* parser.h in Headers */, A2BD08531FEF6BAF005E1FC7 /* inlines.h in Headers */, - A2BD08481FEF6BAF005E1FC7 /* cmark_export.h in Headers */, + A2202035220A687000DE9A56 /* cmark-gfm_export.h in Headers */, A2BD08451FEF6BAF005E1FC7 /* buffer.h in Headers */, + A2202031220A687000DE9A56 /* cmark-gfm-core-extensions.h in Headers */, A2BD08511FEF6BAF005E1FC7 /* houdini.h in Headers */, + A2202039220A687000DE9A56 /* table.h in Headers */, + A220202D220A687000DE9A56 /* strikethrough.h in Headers */, A2BD085C1FEF6BAF005E1FC7 /* scanners.h in Headers */, - A2BD08601FEF6BAF005E1FC7 /* tagfilter.h in Headers */, + A2202009220A64A600DE9A56 /* cmark-gfm.h in Headers */, A2BD08501FEF6BAF005E1FC7 /* footnotes.h in Headers */, + A2202041220A687000DE9A56 /* tasklist.h in Headers */, + A220203D220A687000DE9A56 /* tagfilter.h in Headers */, A2BD08551FEF6BAF005E1FC7 /* map.h in Headers */, - A2BD084D1FEF6BAF005E1FC7 /* config.h in Headers */, A2BD08471FEF6BAF005E1FC7 /* cmark_ctype.h in Headers */, + A2202008220A64A600DE9A56 /* cmark-gfm-extension_api.h in Headers */, A2BD08591FEF6BAF005E1FC7 /* references.h in Headers */, - A2BD084C1FEF6BAF005E1FC7 /* cmarkextensions_export.h in Headers */, + A220204B220A68C700DE9A56 /* config.h in Headers */, + A2202046220A68A400DE9A56 /* cmark-gfm_version.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -803,6 +827,7 @@ files = ( A288C8111FEF500200667F4A /* plugin.c in Sources */, A288C7DB1FEF500200667F4A /* cmark_ctype.c in Sources */, + A220200D220A684300DE9A56 /* entities.inc in Sources */, A288C7DA1FEF500200667F4A /* blocks.c in Sources */, A288C7D61FEF500200667F4A /* cmark.c in Sources */, A288C7DE1FEF500200667F4A /* latex.c in Sources */, @@ -815,6 +840,7 @@ A288C8091FEF500200667F4A /* render.c in Sources */, A288C7D41FEF500200667F4A /* xml.c in Sources */, A288C7E41FEF500200667F4A /* tagfilter.c in Sources */, + A2201FF3220A648400DE9A56 /* tasklist.c in Sources */, A288C8071FEF500200667F4A /* utf8.c in Sources */, A288C7E01FEF500200667F4A /* syntax_extension.c in Sources */, A288C80D1FEF500200667F4A /* commonmark.c in Sources */, @@ -824,6 +850,7 @@ A288C7D91FEF500200667F4A /* autolink.c in Sources */, A288C80A1FEF500200667F4A /* iterator.c in Sources */, A288C80B1FEF500200667F4A /* arena.c in Sources */, + A220200E220A684300DE9A56 /* case_fold_switch.inc in Sources */, A288C7DD1FEF500200667F4A /* inlines.c in Sources */, A288C80E1FEF500200667F4A /* map.c in Sources */, A288C7D71FEF500200667F4A /* man.c in Sources */, @@ -848,6 +875,7 @@ A2BD07A91FEF6BA4005E1FC7 /* core-extensions.c in Sources */, A2BD07A71FEF6BA4005E1FC7 /* cmark.c in Sources */, A2BD07A81FEF6BA4005E1FC7 /* commonmark.c in Sources */, + A220200F220A684700DE9A56 /* case_fold_switch.inc in Sources */, A2BD07B11FEF6BA4005E1FC7 /* iterator.c in Sources */, A2BD07B81FEF6BA4005E1FC7 /* plugin.c in Sources */, A2BD07A41FEF6BA4005E1FC7 /* blocks.c in Sources */, @@ -855,11 +883,13 @@ A2BD07AB1FEF6BA4005E1FC7 /* footnotes.c in Sources */, A2BD07BC1FEF6BA4005E1FC7 /* scanners.c in Sources */, A2BD07B71FEF6BA4005E1FC7 /* plaintext.c in Sources */, + A2201FF6220A648900DE9A56 /* tasklist.c in Sources */, A2BD07A31FEF6BA4005E1FC7 /* autolink.c in Sources */, A2BD07A21FEF6BA4005E1FC7 /* arena.c in Sources */, A2BD07B21FEF6BA4005E1FC7 /* latex.c in Sources */, A2BD07B51FEF6BA4005E1FC7 /* map.c in Sources */, A2BD07C01FEF6BA4005E1FC7 /* tagfilter.c in Sources */, + A2202010220A684700DE9A56 /* entities.inc in Sources */, A2BD07BE1FEF6BA4005E1FC7 /* syntax_extension.c in Sources */, A2BD07B91FEF6BA4005E1FC7 /* references.c in Sources */, A2BD07B31FEF6BA4005E1FC7 /* linked_list.c in Sources */, @@ -888,6 +918,7 @@ A2BD07CA1FEF6BA5005E1FC7 /* core-extensions.c in Sources */, A2BD07C81FEF6BA5005E1FC7 /* cmark.c in Sources */, A2BD07C91FEF6BA5005E1FC7 /* commonmark.c in Sources */, + A2202011220A684800DE9A56 /* case_fold_switch.inc in Sources */, A2BD07D21FEF6BA5005E1FC7 /* iterator.c in Sources */, A2BD07D91FEF6BA5005E1FC7 /* plugin.c in Sources */, A2BD07C51FEF6BA5005E1FC7 /* blocks.c in Sources */, @@ -895,11 +926,13 @@ A2BD07CC1FEF6BA5005E1FC7 /* footnotes.c in Sources */, A2BD07DD1FEF6BA5005E1FC7 /* scanners.c in Sources */, A2BD07D81FEF6BA5005E1FC7 /* plaintext.c in Sources */, + A2201FF5220A648900DE9A56 /* tasklist.c in Sources */, A2BD07C41FEF6BA5005E1FC7 /* autolink.c in Sources */, A2BD07C31FEF6BA5005E1FC7 /* arena.c in Sources */, A2BD07D31FEF6BA5005E1FC7 /* latex.c in Sources */, A2BD07D61FEF6BA5005E1FC7 /* map.c in Sources */, A2BD07E11FEF6BA5005E1FC7 /* tagfilter.c in Sources */, + A2202012220A684800DE9A56 /* entities.inc in Sources */, A2BD07DF1FEF6BA5005E1FC7 /* syntax_extension.c in Sources */, A2BD07DA1FEF6BA5005E1FC7 /* references.c in Sources */, A2BD07D41FEF6BA5005E1FC7 /* linked_list.c in Sources */, @@ -928,6 +961,7 @@ A2BD07EB1FEF6BA5005E1FC7 /* core-extensions.c in Sources */, A2BD07E91FEF6BA5005E1FC7 /* cmark.c in Sources */, A2BD07EA1FEF6BA5005E1FC7 /* commonmark.c in Sources */, + A2202013220A684800DE9A56 /* case_fold_switch.inc in Sources */, A2BD07F31FEF6BA5005E1FC7 /* iterator.c in Sources */, A2BD07FA1FEF6BA5005E1FC7 /* plugin.c in Sources */, A2BD07E61FEF6BA5005E1FC7 /* blocks.c in Sources */, @@ -935,11 +969,13 @@ A2BD07ED1FEF6BA5005E1FC7 /* footnotes.c in Sources */, A2BD07FE1FEF6BA5005E1FC7 /* scanners.c in Sources */, A2BD07F91FEF6BA5005E1FC7 /* plaintext.c in Sources */, + A2201FF4220A648800DE9A56 /* tasklist.c in Sources */, A2BD07E51FEF6BA5005E1FC7 /* autolink.c in Sources */, A2BD07E41FEF6BA5005E1FC7 /* arena.c in Sources */, A2BD07F41FEF6BA5005E1FC7 /* latex.c in Sources */, A2BD07F71FEF6BA5005E1FC7 /* map.c in Sources */, A2BD08021FEF6BA5005E1FC7 /* tagfilter.c in Sources */, + A2202014220A684800DE9A56 /* entities.inc in Sources */, A2BD08001FEF6BA5005E1FC7 /* syntax_extension.c in Sources */, A2BD07FB1FEF6BA5005E1FC7 /* references.c in Sources */, A2BD07F51FEF6BA5005E1FC7 /* linked_list.c in Sources */,