cmark (empty) → 0.1.0.0
raw patch · 41 files changed
+35586/−0 lines, 41 filesdep +basedep +mtldep +sybsetup-changed
Dependencies added: base, mtl, syb, text
Files
- CMark.hsc +268/−0
- LICENSE +103/−0
- README.md +79/−0
- Setup.hs +2/−0
- cmark.cabal +127/−0
- cmark/bench.h +27/−0
- cmark/blocks.c +887/−0
- cmark/buffer.c +381/−0
- cmark/buffer.h +113/−0
- cmark/case_fold_switch.inc +2637/−0
- cmark/chunk.h +110/−0
- cmark/cmark.c +24/−0
- cmark/cmark.h +561/−0
- cmark/cmark_ctype.c +53/−0
- cmark/cmark_ctype.h +24/−0
- cmark/cmark_export.h +35/−0
- cmark/cmark_version.h +7/−0
- cmark/config.h +23/−0
- cmark/debug.h +36/−0
- cmark/houdini.h +52/−0
- cmark/houdini_href_e.c +107/−0
- cmark/houdini_html_e.c +81/−0
- cmark/houdini_html_u.c +116/−0
- cmark/html.c +322/−0
- cmark/html_unescape.h +13375/−0
- cmark/inlines.c +1145/−0
- cmark/inlines.h +19/−0
- cmark/iterator.c +146/−0
- cmark/iterator.h +25/−0
- cmark/main.c +166/−0
- cmark/man.c +284/−0
- cmark/node.c +873/−0
- cmark/node.h +82/−0
- cmark/parser.h +29/−0
- cmark/references.c +154/−0
- cmark/references.h +37/−0
- cmark/scanners.c +12392/−0
- cmark/scanners.h +39/−0
- cmark/utf8.c +453/−0
- cmark/utf8.h +22/−0
- cmark/xml.c +170/−0
+ CMark.hsc view
@@ -0,0 +1,268 @@+{-# LANGUAGE CPP, ForeignFunctionInterface, GeneralizedNewtypeDeriving,+ DeriveGeneric, DeriveDataTypeable, FlexibleContexts #-}++module CMark (+ Node(..)+ , NodeType(..)+ , PosInfo(..)+ , DelimType(..)+ , ListType(..)+ , Tightness+ , Url+ , Title+ , Level+ , Info+ , CMarkOption+ , markdownToHtml+ , parseDocument+ , optSourcePos+ , optNormalize+ , optHardBreaks+ , optSmart+ ) where++import Foreign+import Foreign.C.Types+import Foreign.C.String (CString)+import qualified System.IO.Unsafe as Unsafe+import GHC.Generics (Generic)+import Data.Generics (Data, Typeable)+import Data.Bits ( (.|.) )+import Data.Text (Text, pack, empty)+import qualified Data.Text.Foreign as TF++#include <cmark.h>++type NodePtr = Ptr ()++data Node = Node (Maybe PosInfo) NodeType [Node]+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++data DelimType =+ PERIOD_DELIM+ | PAREN_DELIM+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++data ListType =+ BULLET_LIST+ | ORDERED_LIST+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++type Url = Text++type Title = Text++type Level = Int++type Info = Text++data Tightness = TIGHT | LOOSE+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++data NodeType =+ DOCUMENT+ | HRULE+ | PARAGRAPH+ | BLOCK_QUOTE+ | HTML Text+ | CODE_BLOCK Info Text+ | HEADER Level+ | LIST ListType Tightness+ | ITEM+ | TEXT Text+ | SOFTBREAK+ | LINEBREAK+ | INLINE_HTML Text+ | CODE Text+ | EMPH+ | STRONG+ | LINK Url Title+ | IMAGE Url Title+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++data PosInfo = PosInfo{ startLine :: Int+ , startColumn :: Int+ , endLine :: Int+ , endColumn :: Int+ }+ deriving (Show, Read, Eq, Ord, Typeable, Data, Generic)++-- | A type for PCRE compile-time options. These are newtyped CInts,+-- which can be bitwise-or'd together, using '(Data.Bits..|.)'+newtype CMarkOption = CMarkOption { unCMarkOption :: CInt }++-- | Combine a list of options into a single option, using bitwise or.+combineOptions :: [CMarkOption] -> CInt+combineOptions = foldr ((.|.) . unCMarkOption) 0++-- Include a @data-sourcepos@ attribute on block elements.+optSourcePos :: CMarkOption+optSourcePos = CMarkOption #const CMARK_OPT_SOURCEPOS++-- Render @softbreak@ elements as hard line breaks.+optHardBreaks :: CMarkOption+optHardBreaks = CMarkOption #const CMARK_OPT_HARDBREAKS++-- Normalize the document by consolidating adjacent text nodes.+optNormalize :: CMarkOption+optNormalize = CMarkOption #const CMARK_OPT_NORMALIZE++-- Convert straight quotes to curly, @---@ to em-dash, @--@ to en-dash.+optSmart :: CMarkOption+optSmart = CMarkOption #const CMARK_OPT_SMART++ptrToNodeType :: NodePtr -> NodeType+ptrToNodeType ptr =+ case (c_cmark_node_get_type ptr) of+ #const CMARK_NODE_DOCUMENT+ -> DOCUMENT+ #const CMARK_NODE_HRULE+ -> HRULE+ #const CMARK_NODE_PARAGRAPH+ -> PARAGRAPH+ #const CMARK_NODE_BLOCK_QUOTE+ -> BLOCK_QUOTE+ #const CMARK_NODE_HTML+ -> HTML literal+ #const CMARK_NODE_CODE_BLOCK+ -> CODE_BLOCK info literal+ #const CMARK_NODE_LIST+ -> LIST listType tightness+ #const CMARK_NODE_ITEM+ -> ITEM+ #const CMARK_NODE_HEADER+ -> HEADER level+ #const CMARK_NODE_EMPH+ -> EMPH+ #const CMARK_NODE_STRONG+ -> STRONG+ #const CMARK_NODE_LINK+ -> LINK url title+ #const CMARK_NODE_IMAGE+ -> IMAGE url title+ #const CMARK_NODE_TEXT+ -> TEXT literal+ #const CMARK_NODE_CODE+ -> CODE literal+ #const CMARK_NODE_INLINE_HTML+ -> INLINE_HTML literal+ #const CMARK_NODE_SOFTBREAK+ -> SOFTBREAK+ #const CMARK_NODE_LINEBREAK+ -> LINEBREAK+ where literal = peekCString $ c_cmark_node_get_literal ptr+ level = c_cmark_node_get_header_level ptr+ listType = case c_cmark_node_get_list_type ptr of+ (#const CMARK_ORDERED_LIST) -> ORDERED_LIST+ (#const CMARK_BULLET_LIST) -> BULLET_LIST+ _ -> BULLET_LIST+ delimType = case c_cmark_node_get_list_delim ptr of+ (#const CMARK_PERIOD_DELIM) -> PERIOD_DELIM+ (#const CMARK_PAREN_DELIM) -> PAREN_DELIM+ _ -> PERIOD_DELIM+ tightness = case c_cmark_node_get_list_type ptr of+ 1 -> TIGHT+ _ -> LOOSE+ url = peekCString $ c_cmark_node_get_url ptr+ title = peekCString $ c_cmark_node_get_title ptr+ info = peekCString $ c_cmark_node_get_fence_info ptr++getPosInfo :: NodePtr -> Maybe PosInfo+getPosInfo ptr =+ case (c_cmark_node_get_start_line ptr,+ c_cmark_node_get_start_column ptr,+ c_cmark_node_get_end_line ptr,+ c_cmark_node_get_end_column ptr) of+ (0, 0, 0, 0) -> Nothing+ (sl, sc, el, ec) -> Just PosInfo{ startLine = sl+ , startColumn = sc+ , endLine = el+ , endColumn = ec }++handleNode :: (Maybe PosInfo -> NodeType -> [a] -> a) -> NodePtr -> a+handleNode f ptr = f posinfo (ptrToNodeType ptr) children+ where children = handleNodes f $ c_cmark_node_first_child ptr+ posinfo = getPosInfo ptr+ handleNodes f ptr =+ if ptr == nullPtr+ then []+ else handleNode f ptr : handleNodes f (c_cmark_node_next ptr)++toNode :: NodePtr -> Node+toNode = handleNode Node++foreign import ccall "string.h strlen"+ c_strlen :: CString -> Int++foreign import ccall "cmark.h cmark_markdown_to_html"+ c_cmark_markdown_to_html :: CString -> Int -> CInt -> CString++foreign import ccall "cmark.h cmark_parse_document"+ c_cmark_parse_document :: CString -> Int -> CInt -> NodePtr++foreign import ccall "cmark.h cmark_node_get_type"+ c_cmark_node_get_type :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_first_child"+ c_cmark_node_first_child :: NodePtr -> NodePtr++foreign import ccall "cmark.h cmark_node_next"+ c_cmark_node_next :: NodePtr -> NodePtr++foreign import ccall "cmark.h cmark_node_get_literal"+ c_cmark_node_get_literal :: NodePtr -> CString++foreign import ccall "cmark.h cmark_node_get_url"+ c_cmark_node_get_url :: NodePtr -> CString++foreign import ccall "cmark.h cmark_node_get_title"+ c_cmark_node_get_title :: NodePtr -> CString++foreign import ccall "cmark.h cmark_node_get_header_level"+ c_cmark_node_get_header_level :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_list_type"+ c_cmark_node_get_list_type :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_list_tight"+ c_cmark_node_get_list_tight :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_list_delim"+ c_cmark_node_get_list_delim :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_fence_info"+ c_cmark_node_get_fence_info :: NodePtr -> CString++foreign import ccall "cmark.h cmark_node_get_start_line"+ c_cmark_node_get_start_line :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_start_column"+ c_cmark_node_get_start_column :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_end_line"+ c_cmark_node_get_end_line :: NodePtr -> Int++foreign import ccall "cmark.h cmark_node_get_end_column"+ c_cmark_node_get_end_column :: NodePtr -> Int++-- | Convert CommonMark formatted text to Html, using cmark's+-- built-in renderer.+markdownToHtml :: [CMarkOption] -> Text -> Text+markdownToHtml opts s = io $+ TF.withCStringLen s $ \(ptr, len) ->+ return (peekCString $ c_cmark_markdown_to_html ptr len (combineOptions opts))++-- | Convert CommonMark formatted text to a structured 'Node' tree,+-- which can be transformed or rendered using Haskell code.+parseDocument :: [CMarkOption] -> Text -> Node+parseDocument opts s = io $+ TF.withCStringLen s $ \(ptr, len) ->+ return $ toNode $ c_cmark_parse_document ptr len (combineOptions opts)++io :: IO a -> a+io = Unsafe.unsafePerformIO++peekCString :: CString -> Text+peekCString str+ | str == nullPtr = empty+ | otherwise = io $ TF.peekCStringLen (str, c_strlen str)
+ LICENSE view
@@ -0,0 +1,103 @@+Copyright (c) 2014, John MacFarlane++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++ * Redistributions of source code must retain the above copyright+ notice, this list of conditions and the following disclaimer.++ * Redistributions in binary form must reproduce the above+ copyright notice, this list of conditions and the following+ disclaimer in the documentation and/or other materials provided+ with the distribution.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.++----++houdini.h, houdini_href_e.c, houdini_html_e.c, houdini_html_u.c,+html_unescape.gperf, html_unescape.h++derive from https://github.com/vmg/houdini (with some modifications)++Copyright (C) 2012 Vicent Martí++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.++-----++buffer.h, buffer.c, chunk.h++are derived from code (C) 2012 Github, Inc.++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.++-----++utf8.c and utf8.c++are derived from utf8proc+(<http://www.public-software-group.org/utf8proc>),+(C) 2009 Public Software Group e. V., Berlin, Germany.++Permission is hereby granted, free of charge, to any person obtaining a+copy of this software and associated documentation files (the "Software"),+to deal in the Software without restriction, including without limitation+the rights to use, copy, modify, merge, publish, distribute, sublicense,+and/or sell copies of the Software, and to permit persons to whom the+Software is furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in+all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER+DEALINGS IN THE SOFTWARE.
+ README.md view
@@ -0,0 +1,79 @@+cmark-hs+========++This package provides Haskell bindings for [libcmark], the reference+parser for [CommonMark]. It includes sources for [libcmark], and+does not require prior installation of the C library.++cmark provides the following advantages over existing Markdown+libraries for Haskell:++ - **Speed:** Conversion speed is on par with the [sundown] library:+ about 30 times faster than [pandoc], 24 times+ faster than the Haskell [markdown] package, 8 times faster than+ [cheapskate].++ - **Memory footprint:** Memory footprint is on par with [sundown].+ On one sample, the library uses a fourth the memory that [markdown]+ uses, and less than a tenth the memory that [pandoc] uses.++ - **Robustness:** cmark can handle whatever is thrown at it,+ without the exponential blowups in parsing time one can sometimes+ get with other libraries. For example, the input produced by+ this command will tie [markdown] and [pandoc] in knots:++ python -c "print ((500 * '[') + 'hi' + (500 * ']') + '(url)')"++ cmark handles it easily, with no slowdown.++ - **Accuracy:** cmark passes the CommonMark spec's suite of over+ 500 conformance tests.++ - **Standardization:** Since there is a spec and a comprehensive suite+ of tests, we can have a high degree of confidence that any two+ CommonMark implementations will behave the same. Thus, for+ example, one could use this library for server-side rendering+ and [commonmark.js] for client-side previewing.++ - **Ease of installation:** cmark has minimal dependencies.++cmark does not provide Haskell versions of the whole [libcmark]+API, which is built around mutable `cmark_node` objects. Instead, it+provides two functions:++ - `markdownToHtml` uses [libcmark]'s parser and renderer for a+ maximally efficient conversion of CommonMark to HTML (as a Text).+ ("Smart punctuation" and a few other options can be enabled.)++ ``` haskell+ Prelude CMark Data.Text> markdownToHtml [optSmart] (pack "dog's *breakfast*")+ "<p>dog\8217s <em>breakfast</em></p>\n"+ ```++ - `parseDocument` uses [libcmark]'s parser to produce a `Node` tree+ that can be processed further using Haskell. One can transform+ the tree using generics, convert it to another kind of+ structure (such as a Pandoc object that can be rendered using+ pandoc's renderers) or render it using a custom rendering+ function.++ ``` haskell+ Prelude CMark Data.Text> parseDocument [optSmart] (pack "dog's *breakfast*")+ Node (Just (PosInfo {startLine = 1, startColumn = 1, endLine = 1, endColumn = 17})) DOCUMENT [Node (Just (PosInfo {startLine = 1, startColumn = 1, endLine = 1, endColumn = 17})) PARAGRAPH [Node Nothing (TEXT "dog") [],Node Nothing (TEXT "\8217") [],Node Nothing (TEXT "s ") [],Node Nothing EMPH [Node Nothing (TEXT "breakfast") []]]]+ ```++**A note on security:** This library does not attempt to sanitize+HTML output. We recommend using [xss-sanitize] to filter the output.++**A note on stability:** There is a good chance the API will change+significantly after this early release.++[CommonMark]: http://commonmark.org+[libcmark]: http://github.com/jgm/cmark+[benchmarks]: https://github.com/jgm/cmark/blob/master/benchmarks.md+[cheapskate]: https://hackage.haskell.org/package/cheapskate+[pandoc]: https://hackage.haskell.org/package/pandoc+[sundown]: https://hackage.haskell.org/package/sundown+[markdown]: https://hackage.haskell.org/package/markdown+[commonmark.js]: http://github.com/jgm/commonmark.js+[xss-sanitize]: https://hackage.haskell.org/package/xss-sanitize
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ cmark.cabal view
@@ -0,0 +1,127 @@+name: cmark+version: 0.1.0.0+synopsis: Haskell bindings to libcmark, CommonMark parser and renderer+description:+ This package provides Haskell bindings for+ <http://github.com/jgm/cmark libcmark>, the reference parser for+ <http://commonmark.org CommonMark>. It includes sources for+ <http://github.com/jgm/cmark libcmark>, and does not require prior+ installation of the C library.+ .+ cmark provides the following advantages over existing Markdown libraries+ for Haskell:+ .+ - __Speed:__ Conversion speed is on par with the+ <https://hackage.haskell.org/package/sundown sundown> library: about+ 30 times faster than+ <https://hackage.haskell.org/package/pandoc pandoc>, 24 times faster+ than the Haskell+ <https://hackage.haskell.org/package/markdown markdown> package, 8+ times faster than+ <https://hackage.haskell.org/package/cheapskate cheapskate>.+ .+ - __Memory footprint:__ Memory footprint is on par with+ <https://hackage.haskell.org/package/sundown sundown>. On one+ sample, the library uses a fourth the memory that+ <https://hackage.haskell.org/package/markdown markdown> uses, and+ less than a tenth the memory that+ <https://hackage.haskell.org/package/pandoc pandoc> uses.+ .+ - __Robustness:__ cmark can handle whatever is thrown at it, without+ the exponential blowups in parsing time one can sometimes get with+ other libraries.+ .+ - __Accuracy:__ cmark passes the CommonMark spec\'s suite of over 500+ conformance tests.+ .+ - __Standardization:__ Since there is a spec and a comprehensive suite+ of tests, we can have a high degree of confidence that any two+ CommonMark implementations will behave the same. Thus, for example,+ one could use this library for server-side rendering and+ <http://github.com/jgm/commonmark.js commonmark.js> for client-side+ previewing.+ .+ - __Ease of installation:__ cmark has minimal dependencies.+ .+ cmark does not provide Haskell versions of the whole+ <http://github.com/jgm/cmark libcmark> API, which is built around+ mutable @cmark_node@ objects. Instead, it provides two functions:+ .+ - @markdownToHtml@ uses <http://github.com/jgm/cmark libcmark>\'s+ parser and renderer for a maximally efficient conversion of+ CommonMark to HTML (as a Text). (\"Smart punctuation\" and a few+ other options can be enabled.)+ .+ - @parseDocument@ uses <http://github.com/jgm/cmark libcmark>\'s+ parser to produce a @Node@ tree that can be processed further using+ Haskell. One can transform the tree using generics, convert it to+ another kind of structure (such as a Pandoc object that can be+ rendered using pandoc\'s renderers) or render it using a custom+ rendering function.+ .+ __A note on security:__ This library does not attempt to sanitize HTML+ output. We recommend using+ <https://hackage.haskell.org/package/xss-sanitize xss-sanitize> to+ filter the output.+ .+ __A note on stability:__ There is a good chance the API will change+ significantly after this early release.++homepage: https://github.com/jgm/commonmark-hs+license: BSD2+license-file: LICENSE+author: John MacFarlane+maintainer: jgm@berkeley.edu+copyright: (C) 2015 John MacFarlane+category: Text+build-type: Simple+extra-source-files: README.md+ cmark/bench.h+ cmark/chunk.h+ cmark/cmark_export.h+ cmark/debug.h+ cmark/inlines.h+ cmark/cmark.h+ cmark/houdini.h+ cmark/references.h+ cmark/utf8.h+ cmark/parser.h+ cmark/cmark_version.h+ cmark/html_unescape.h+ cmark/iterator.h+ cmark/node.h+ cmark/buffer.h+ cmark/cmark_ctype.h+ cmark/config.h+ cmark/scanners.h+ cmark/case_fold_switch.inc+cabal-version: >=1.10++Source-repository head+ type: git+ location: git://github.com/jgm/cmark-hs.git++library+ exposed-modules: CMark+ build-depends: base >=4.6 && < 4.8, mtl, syb, text >= 1.1 && < 1.3+ default-language: Haskell2010+ ghc-options: -Wall+ Include-dirs: cmark+ Includes: cmark.h+ c-sources: cmark/houdini_html_u.c+ cmark/man.c+ cmark/references.c+ cmark/utf8.c+ cmark/blocks.c+ cmark/cmark.c+ cmark/html.c+ cmark/iterator.c+ cmark/node.c+ cmark/buffer.c+ cmark/cmark_ctype.c+ cmark/houdini_href_e.c+ cmark/scanners.c+ cmark/xml.c+ cmark/houdini_html_e.c+ cmark/inlines.c+ cmark/main.c
+ cmark/bench.h view
@@ -0,0 +1,27 @@+#ifndef CMARK_BENCH_H+#define CMARK_BENCH_H++#include <stdio.h>+#include <time.h>++#ifdef TIMER+float _cmark_start_time;+float _cmark_end_time;+float _cmark_save_time;++#define start_timer() \+ _cmark_save_time = _cmark_start_time; \+ _cmark_start_time = (float)clock()/CLOCKS_PER_SEC++#define end_timer(M) \+ _cmark_end_time = (float)clock()/CLOCKS_PER_SEC; \+ fprintf(stderr, "[TIME] (%s:%d) %4.f ns " M "\n", __FILE__, \+ __LINE__, (_cmark_end_time - _cmark_start_time) * 1000000); \+ _cmark_start_time = _cmark_save_time;++#else+#define start_timer()+#define end_timer(M)+#endif++#endif
+ cmark/blocks.c view
@@ -0,0 +1,887 @@+#include <stdlib.h>+#include <assert.h>+#include <stdio.h>++#include "cmark_ctype.h"+#include "config.h"+#include "parser.h"+#include "cmark.h"+#include "node.h"+#include "references.h"+#include "utf8.h"+#include "scanners.h"+#include "inlines.h"+#include "houdini.h"+#include "buffer.h"+#include "debug.h"++#define CODE_INDENT 4+#define peek_at(i, n) (i)->data[n]++static void+S_parser_feed(cmark_parser *parser, const unsigned char *buffer, size_t len,+ bool eof);++static void+S_process_line(cmark_parser *parser, const unsigned char *buffer,+ size_t bytes);++static cmark_node* make_block(cmark_node_type tag, int start_line, int start_column)+{+ cmark_node* e;++ e = (cmark_node *)calloc(1, sizeof(*e));+ if(e != NULL) {+ e->type = tag;+ e->open = true;+ e->start_line = start_line;+ e->start_column = start_column;+ e->end_line = start_line;+ cmark_strbuf_init(&e->string_content, 32);+ }++ return e;+}++// Create a root document node.+static cmark_node* make_document()+{+ cmark_node *e = make_block(NODE_DOCUMENT, 1, 1);+ return e;+}++cmark_parser *cmark_parser_new(int options)+{+ cmark_parser *parser = (cmark_parser*)malloc(sizeof(cmark_parser));+ cmark_node *document = make_document();+ cmark_strbuf *line = (cmark_strbuf*)malloc(sizeof(cmark_strbuf));+ cmark_strbuf *buf = (cmark_strbuf*)malloc(sizeof(cmark_strbuf));+ cmark_strbuf_init(line, 256);+ cmark_strbuf_init(buf, 0);++ parser->refmap = cmark_reference_map_new();+ parser->root = document;+ parser->current = document;+ parser->line_number = 0;+ parser->curline = line;+ parser->last_line_length = 0;+ parser->linebuf = buf;+ parser->options = options;++ return parser;+}++void cmark_parser_free(cmark_parser *parser)+{+ cmark_strbuf_free(parser->curline);+ free(parser->curline);+ cmark_strbuf_free(parser->linebuf);+ free(parser->linebuf);+ cmark_reference_map_free(parser->refmap);+ free(parser);+}++static cmark_node*+finalize(cmark_parser *parser, cmark_node* b);++// Returns true if line has only space characters, else false.+static bool is_blank(cmark_strbuf *s, int offset)+{+ while (offset < s->size) {+ switch (s->ptr[offset]) {+ case '\n':+ return true;+ case ' ':+ offset++;+ break;+ default:+ return false;+ }+ }++ return true;+}++static inline bool can_contain(cmark_node_type parent_type, cmark_node_type child_type)+{+ return ( parent_type == NODE_DOCUMENT ||+ parent_type == NODE_BLOCK_QUOTE ||+ parent_type == NODE_ITEM ||+ (parent_type == NODE_LIST && child_type == NODE_ITEM) );+}++static inline bool accepts_lines(cmark_node_type block_type)+{+ return (block_type == NODE_PARAGRAPH ||+ block_type == NODE_HEADER ||+ block_type == NODE_CODE_BLOCK);+}++static void add_line(cmark_node* node, cmark_chunk *ch, int offset)+{+ assert(node->open);+ cmark_strbuf_put(&node->string_content, ch->data + offset, ch->len - offset);+}++static void remove_trailing_blank_lines(cmark_strbuf *ln)+{+ int i;++ for (i = ln->size - 1; i >= 0; --i) {+ unsigned char c = ln->ptr[i];++ if (c != ' ' && c != '\t' && c != '\r' && c != '\n')+ break;+ }++ if (i < 0) {+ cmark_strbuf_clear(ln);+ return;+ }++ i = cmark_strbuf_strchr(ln, '\n', i);+ if (i >= 0)+ cmark_strbuf_truncate(ln, i);+}++// Check to see if a node ends with a blank line, descending+// if needed into lists and sublists.+static bool ends_with_blank_line(cmark_node* node)+{+ cmark_node *cur = node;+ while (cur != NULL) {+ if (cur->last_line_blank) {+ return true;+ }+ if (cur->type == NODE_LIST || cur->type == NODE_ITEM) {+ cur = cur->last_child;+ } else {+ cur = NULL;+ }+ }+ return false;+}++// Break out of all containing lists+static int break_out_of_lists(cmark_parser *parser, cmark_node ** bptr)+{+ cmark_node *container = *bptr;+ cmark_node *b = parser->root;+ // find first containing NODE_LIST:+ while (b && b->type != NODE_LIST) {+ b = b->last_child;+ }+ if (b) {+ while (container && container != b) {+ container = finalize(parser, container);+ }+ finalize(parser, b);+ *bptr = b->parent;+ }+ return 0;+}+++static cmark_node*+finalize(cmark_parser *parser, cmark_node* b)+{+ int firstlinelen;+ int pos;+ cmark_node* item;+ cmark_node* subitem;+ cmark_node* parent;++ parent = b->parent;++ assert(b->open); // shouldn't call finalize on closed blocks+ b->open = false;++ if (parser->curline->size == 0) {+ // end of input - line number has not been incremented+ b->end_line = parser->line_number;+ b->end_column = parser->last_line_length;+ } else if (b->type == NODE_DOCUMENT ||+ (b->type == NODE_CODE_BLOCK && b->as.code.fenced) ||+ (b->type == NODE_HEADER && b->as.header.setext)) {+ b->end_line = parser->line_number;+ b->end_column = parser->curline->size -+ (parser->curline->ptr[parser->curline->size - 1] == '\n' ?+ 1 : 0);+ } else {+ b->end_line = parser->line_number - 1;+ b->end_column = parser->last_line_length;+ }++ switch (b->type) {+ case NODE_PARAGRAPH:+ while (cmark_strbuf_at(&b->string_content, 0) == '[' &&+ (pos = cmark_parse_reference_inline(&b->string_content, parser->refmap))) {++ cmark_strbuf_drop(&b->string_content, pos);+ }+ if (is_blank(&b->string_content, 0)) {+ // remove blank node (former reference def)+ cmark_node_free(b);+ }+ break;++ case NODE_CODE_BLOCK:+ if (!b->as.code.fenced) { // indented code+ remove_trailing_blank_lines(&b->string_content);+ cmark_strbuf_putc(&b->string_content, '\n');+ } else {++ // first line of contents becomes info+ firstlinelen = cmark_strbuf_strchr(&b->string_content, '\n', 0);++ cmark_strbuf tmp = GH_BUF_INIT;+ houdini_unescape_html_f(+ &tmp,+ b->string_content.ptr,+ firstlinelen+ );+ cmark_strbuf_trim(&tmp);+ cmark_strbuf_unescape(&tmp);+ b->as.code.info = cmark_chunk_buf_detach(&tmp);++ cmark_strbuf_drop(&b->string_content, firstlinelen + 1);+ }+ b->as.code.literal = cmark_chunk_buf_detach(&b->string_content);+ break;++ case NODE_HTML:+ b->as.literal = cmark_chunk_buf_detach(&b->string_content);+ break;++ case NODE_LIST: // determine tight/loose status+ b->as.list.tight = true; // tight by default+ item = b->first_child;++ while (item) {+ // check for non-final non-empty list item ending with blank line:+ if (item->last_line_blank && item->next) {+ b->as.list.tight = false;+ break;+ }+ // recurse into children of list item, to see if there are+ // spaces between them:+ subitem = item->first_child;+ while (subitem) {+ if (ends_with_blank_line(subitem) &&+ (item->next || subitem->next)) {+ b->as.list.tight = false;+ break;+ }+ subitem = subitem->next;+ }+ if (!(b->as.list.tight)) {+ break;+ }+ item = item->next;+ }++ break;++ default:+ break;+ }+ return parent;+}++// Add a node as child of another. Return pointer to child.+static cmark_node* add_child(cmark_parser *parser, cmark_node* parent,+ cmark_node_type block_type, int start_column)+{+ assert(parent);++ // if 'parent' isn't the kind of node that can accept this child,+ // then back up til we hit a node that can.+ while (!can_contain(parent->type, block_type)) {+ parent = finalize(parser, parent);+ }++ cmark_node* child = make_block(block_type, parser->line_number, start_column);+ child->parent = parent;++ if (parent->last_child) {+ parent->last_child->next = child;+ child->prev = parent->last_child;+ } else {+ parent->first_child = child;+ child->prev = NULL;+ }+ parent->last_child = child;+ return child;+}+++// Walk through node and all children, recursively, parsing+// string content into inline content where appropriate.+static void process_inlines(cmark_node* root, cmark_reference_map *refmap, int options)+{+ cmark_iter *iter = cmark_iter_new(root);+ cmark_node *cur;+ cmark_event_type ev_type;++ while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ cur = cmark_iter_get_node(iter);+ if (ev_type == CMARK_EVENT_ENTER) {+ if (cur->type == NODE_PARAGRAPH ||+ cur->type == NODE_HEADER) {+ cmark_parse_inlines(cur, refmap, options);+ }+ }+ }++ cmark_iter_free(iter);+}++// Attempts to parse a list item marker (bullet or enumerated).+// On success, returns length of the marker, and populates+// data with the details. On failure, returns 0.+static int parse_list_marker(cmark_chunk *input, int pos, cmark_list **dataptr)+{+ unsigned char c;+ int startpos;+ cmark_list *data;++ startpos = pos;+ c = peek_at(input, pos);++ if ((c == '*' || c == '-' || c == '+') && !scan_hrule(input, pos)) {+ pos++;+ if (!cmark_isspace(peek_at(input, pos))) {+ return 0;+ }+ data = (cmark_list *)calloc(1, sizeof(*data));+ if(data == NULL) {+ return 0;+ } else {+ data->marker_offset = 0; // will be adjusted later+ data->list_type = CMARK_BULLET_LIST;+ data->bullet_char = c;+ data->start = 1;+ data->delimiter = CMARK_PERIOD_DELIM;+ data->tight = false;+ }+ } else if (cmark_isdigit(c)) {+ int start = 0;++ do {+ start = (10 * start) + (peek_at(input, pos) - '0');+ pos++;+ } while (cmark_isdigit(peek_at(input, pos)));++ c = peek_at(input, pos);+ if (c == '.' || c == ')') {+ pos++;+ if (!cmark_isspace(peek_at(input, pos))) {+ return 0;+ }+ data = (cmark_list *)calloc(1, sizeof(*data));+ if(data == NULL) {+ return 0;+ } else {+ data->marker_offset = 0; // will be adjusted later+ data->list_type = CMARK_ORDERED_LIST;+ data->bullet_char = 0;+ data->start = start;+ data->delimiter = (c == '.' ? CMARK_PERIOD_DELIM : CMARK_PAREN_DELIM);+ data->tight = false;+ }+ } else {+ return 0;+ }++ } else {+ return 0;+ }++ *dataptr = data;+ return (pos - startpos);+}++// Return 1 if list item belongs in list, else 0.+static int lists_match(cmark_list *list_data, cmark_list *item_data)+{+ return (list_data->list_type == item_data->list_type &&+ list_data->delimiter == item_data->delimiter &&+ // list_data->marker_offset == item_data.marker_offset &&+ list_data->bullet_char == item_data->bullet_char);+}++static cmark_node *finalize_document(cmark_parser *parser)+{+ while (parser->current != parser->root) {+ parser->current = finalize(parser, parser->current);+ }++ finalize(parser, parser->root);+ process_inlines(parser->root, parser->refmap, parser->options);++ return parser->root;+}++cmark_node *cmark_parse_file(FILE *f, int options)+{+ unsigned char buffer[4096];+ cmark_parser *parser = cmark_parser_new(options);+ size_t bytes;+ cmark_node *document;++ while ((bytes = fread(buffer, 1, sizeof(buffer), f)) > 0) {+ bool eof = bytes < sizeof(buffer);+ S_parser_feed(parser, buffer, bytes, eof);+ if (eof) {+ break;+ }+ }++ document = cmark_parser_finish(parser);+ cmark_parser_free(parser);+ return document;+}++cmark_node *cmark_parse_document(const char *buffer, size_t len, int options)+{+ cmark_parser *parser = cmark_parser_new(options);+ cmark_node *document;++ S_parser_feed(parser, (const unsigned char *)buffer, len, true);++ document = cmark_parser_finish(parser);+ cmark_parser_free(parser);+ return document;+}++void+cmark_parser_feed(cmark_parser *parser, const char *buffer, size_t len)+{+ S_parser_feed(parser, (const unsigned char *)buffer, len, false);+}++static void+S_parser_feed(cmark_parser *parser, const unsigned char *buffer, size_t len,+ bool eof)+{+ const unsigned char *end = buffer + len;++ while (buffer < end) {+ const unsigned char *eol+ = (const unsigned char *)memchr(buffer, '\n',+ end - buffer);+ size_t line_len;++ if (eol) {+ line_len = eol + 1 - buffer;+ } else if (eof) {+ line_len = end - buffer;+ } else {+ cmark_strbuf_put(parser->linebuf, buffer, end - buffer);+ break;+ }++ if (parser->linebuf->size > 0) {+ cmark_strbuf_put(parser->linebuf, buffer, line_len);+ S_process_line(parser, parser->linebuf->ptr,+ parser->linebuf->size);+ cmark_strbuf_clear(parser->linebuf);+ } else {+ S_process_line(parser, buffer, line_len);+ }++ buffer += line_len;+ }+}++static void chop_trailing_hashtags(cmark_chunk *ch)+{+ int n, orig_n;++ cmark_chunk_rtrim(ch);+ orig_n = n = ch->len - 1;++ // if string ends in space followed by #s, remove these:+ while (n >= 0 && peek_at(ch, n) == '#')+ n--;++ // Check for a be a space before the final #s:+ if (n != orig_n && n >= 0 && peek_at(ch, n) == ' ') {+ ch->len = n;+ cmark_chunk_rtrim(ch);+ }+}++static void+S_process_line(cmark_parser *parser, const unsigned char *buffer, size_t bytes)+{+ cmark_node* last_matched_container;+ int offset = 0;+ int matched = 0;+ int lev = 0;+ int i;+ cmark_list *data = NULL;+ bool all_matched = true;+ cmark_node* container;+ bool blank = false;+ int first_nonspace;+ int indent;+ cmark_chunk input;+ bool maybe_lazy;++ utf8proc_detab(parser->curline, buffer, bytes);++ // Add a newline to the end if not present:+ // TODO this breaks abstraction:+ if (parser->curline->ptr[parser->curline->size - 1] != '\n') {+ cmark_strbuf_putc(parser->curline, '\n');+ }+ input.data = parser->curline->ptr;+ input.len = parser->curline->size;++ // container starts at the document root.+ container = parser->root;++ parser->line_number++;++ // for each containing node, try to parse the associated line start.+ // bail out on failure: container will point to the last matching node.++ while (container->last_child && container->last_child->open) {+ container = container->last_child;++ first_nonspace = offset;+ while (peek_at(&input, first_nonspace) == ' ') {+ first_nonspace++;+ }++ indent = first_nonspace - offset;+ blank = peek_at(&input, first_nonspace) == '\n';++ if (container->type == NODE_BLOCK_QUOTE) {+ matched = indent <= 3 && peek_at(&input, first_nonspace) == '>';+ if (matched) {+ offset = first_nonspace + 1;+ if (peek_at(&input, offset) == ' ')+ offset++;+ } else {+ all_matched = false;+ }++ } else if (container->type == NODE_ITEM) {++ if (indent >= container->as.list.marker_offset ++ container->as.list.padding) {+ offset += container->as.list.marker_offset ++ container->as.list.padding;+ } else if (blank) {+ offset = first_nonspace;+ } else {+ all_matched = false;+ }++ } else if (container->type == NODE_CODE_BLOCK) {++ if (!container->as.code.fenced) { // indented+ if (indent >= CODE_INDENT) {+ offset += CODE_INDENT;+ } else if (blank) {+ offset = first_nonspace;+ } else {+ all_matched = false;+ }+ } else { // fenced+ matched = 0;+ if (indent <= 3 &&+ (peek_at(&input, first_nonspace) ==+ container->as.code.fence_char)) {+ matched = scan_close_code_fence(&input,+ first_nonspace);+ }+ if (matched >= container->as.code.fence_length) {+ // closing fence - and since we're at+ // the end of a line, we can return:+ all_matched = false;+ offset += matched;+ parser->current = finalize(parser, container);+ goto finished;+ } else {+ // skip opt. spaces of fence offset+ i = container->as.code.fence_offset;+ while (i > 0 &&+ peek_at(&input, offset) == ' ') {+ offset++;+ i--;+ }+ }+ }+ } else if (container->type == NODE_HEADER) {++ // a header can never contain more than one line+ all_matched = false;++ } else if (container->type == NODE_HTML) {++ if (blank) {+ all_matched = false;+ }++ } else if (container->type == NODE_PARAGRAPH) {++ if (blank) {+ all_matched = false;+ }++ }++ if (!all_matched) {+ container = container->parent; // back up to last matching node+ break;+ }+ }++ last_matched_container = container;++ // check to see if we've hit 2nd blank line, break out of list:+ if (blank && container->last_line_blank) {+ break_out_of_lists(parser, &container);+ }++ maybe_lazy = parser->current->type == NODE_PARAGRAPH;+ // try new container starts:+ while (container->type != NODE_CODE_BLOCK &&+ container->type != NODE_HTML) {++ first_nonspace = offset;+ while (peek_at(&input, first_nonspace) == ' ')+ first_nonspace++;++ indent = first_nonspace - offset;+ blank = peek_at(&input, first_nonspace) == '\n';++ if (indent >= CODE_INDENT) {+ if (!maybe_lazy && !blank) {+ offset += CODE_INDENT;+ container = add_child(parser, container, NODE_CODE_BLOCK, offset + 1);+ container->as.code.fenced = false;+ container->as.code.fence_char = 0;+ container->as.code.fence_length = 0;+ container->as.code.fence_offset = 0;+ container->as.code.info = cmark_chunk_literal("");+ } else { // indent > 4 in lazy line+ break;+ }++ } else if (peek_at(&input, first_nonspace) == '>') {++ offset = first_nonspace + 1;+ // optional following character+ if (peek_at(&input, offset) == ' ')+ offset++;+ container = add_child(parser, container, NODE_BLOCK_QUOTE, offset + 1);++ } else if ((matched = scan_atx_header_start(&input, first_nonspace))) {++ offset = first_nonspace + matched;+ container = add_child(parser, container, NODE_HEADER, offset + 1);++ int hashpos = cmark_chunk_strchr(&input, '#', first_nonspace);+ int level = 0;++ while (peek_at(&input, hashpos) == '#') {+ level++;+ hashpos++;+ }+ container->as.header.level = level;+ container->as.header.setext = false;++ } else if ((matched = scan_open_code_fence(&input, first_nonspace))) {++ container = add_child(parser, container, NODE_CODE_BLOCK, first_nonspace + 1);+ container->as.code.fenced = true;+ container->as.code.fence_char = peek_at(&input, first_nonspace);+ container->as.code.fence_length = matched;+ container->as.code.fence_offset = first_nonspace - offset;+ container->as.code.info = cmark_chunk_literal("");+ offset = first_nonspace + matched;++ } else if ((matched = scan_html_block_tag(&input, first_nonspace))) {++ container = add_child(parser, container, NODE_HTML, first_nonspace + 1);+ // note, we don't adjust offset because the tag is part of the text++ } else if (container->type == NODE_PARAGRAPH &&+ (lev = scan_setext_header_line(&input, first_nonspace)) &&+ // check that there is only one line in the paragraph:+ cmark_strbuf_strrchr(&container->string_content, '\n',+ cmark_strbuf_len(&container->string_content) - 2) < 0) {++ container->type = NODE_HEADER;+ container->as.header.level = lev;+ container->as.header.setext = true;+ offset = input.len - 1;++ } else if (!(container->type == NODE_PARAGRAPH && !all_matched) &&+ (matched = scan_hrule(&input, first_nonspace))) {++ // it's only now that we know the line is not part of a setext header:+ container = add_child(parser, container, NODE_HRULE, first_nonspace + 1);+ container = finalize(parser, container);+ offset = input.len - 1;++ } else if ((matched = parse_list_marker(&input, first_nonspace, &data))) {++ // compute padding:+ offset = first_nonspace + matched;+ i = 0;+ while (i <= 5 && peek_at(&input, offset + i) == ' ') {+ i++;+ }+ // i = number of spaces after marker, up to 5+ if (i >= 5 || i < 1 || peek_at(&input, offset) == '\n') {+ data->padding = matched + 1;+ if (i > 0) {+ offset += 1;+ }+ } else {+ data->padding = matched + i;+ offset += i;+ }++ // check container; if it's a list, see if this list item+ // can continue the list; otherwise, create a list container.++ data->marker_offset = indent;++ if (container->type != NODE_LIST ||+ !lists_match(&container->as.list, data)) {+ container = add_child(parser, container, NODE_LIST,+ first_nonspace + 1);++ memcpy(&container->as.list, data, sizeof(*data));+ }++ // add the list item+ container = add_child(parser, container, NODE_ITEM,+ first_nonspace + 1);+ /* TODO: static */+ memcpy(&container->as.list, data, sizeof(*data));+ free(data);+ } else {+ break;+ }++ if (accepts_lines(container->type)) {+ // if it's a line container, it can't contain other containers+ break;+ }+ maybe_lazy = false;+ }++ // what remains at offset is a text line. add the text to the+ // appropriate container.++ first_nonspace = offset;+ while (peek_at(&input, first_nonspace) == ' ')+ first_nonspace++;++ indent = first_nonspace - offset;+ blank = peek_at(&input, first_nonspace) == '\n';++ if (blank && container->last_child) {+ container->last_child->last_line_blank = true;+ }++ // block quote lines are never blank as they start with >+ // and we don't count blanks in fenced code for purposes of tight/loose+ // lists or breaking out of lists. we also don't set last_line_blank+ // on an empty list item.+ container->last_line_blank = (blank &&+ container->type != NODE_BLOCK_QUOTE &&+ container->type != NODE_HEADER &&+ !(container->type == NODE_CODE_BLOCK &&+ container->as.code.fenced) &&+ !(container->type == NODE_ITEM &&+ container->first_child == NULL &&+ container->start_line == parser->line_number));++ cmark_node *cont = container;+ while (cont->parent) {+ cont->parent->last_line_blank = false;+ cont = cont->parent;+ }++ if (parser->current != last_matched_container &&+ container == last_matched_container &&+ !blank &&+ parser->current->type == NODE_PARAGRAPH &&+ cmark_strbuf_len(&parser->current->string_content) > 0) {++ add_line(parser->current, &input, offset);++ } else { // not a lazy continuation++ // finalize any blocks that were not matched and set cur to container:+ while (parser->current != last_matched_container) {+ parser->current = finalize(parser, parser->current);+ assert(parser->current != NULL);+ }++ if (container->type == NODE_CODE_BLOCK ||+ container->type == NODE_HTML) {++ add_line(container, &input, offset);++ } else if (blank) {++ // ??? do nothing++ } else if (accepts_lines(container->type)) {++ if (container->type == NODE_HEADER &&+ container->as.header.setext == false) {+ chop_trailing_hashtags(&input);+ }+ add_line(container, &input, first_nonspace);++ } else {+ // create paragraph container for line+ container = add_child(parser, container, NODE_PARAGRAPH, first_nonspace + 1);+ add_line(container, &input, first_nonspace);++ }++ parser->current = container;+ }+finished:+ parser->last_line_length = parser->curline->size -+ (parser->curline->ptr[parser->curline->size - 1] == '\n' ?+ 1 : 0);+ ;+ cmark_strbuf_clear(parser->curline);++}++cmark_node *cmark_parser_finish(cmark_parser *parser)+{+ if (parser->linebuf->size) {+ S_process_line(parser, parser->linebuf->ptr,+ parser->linebuf->size);+ cmark_strbuf_clear(parser->linebuf);+ }++ finalize_document(parser);++ if (parser->options & CMARK_OPT_NORMALIZE) {+ cmark_consolidate_text_nodes(parser->root);+ }++ cmark_strbuf_free(parser->curline);++#if CMARK_DEBUG_NODES+ if (cmark_node_check(parser->root, stderr)) {+ abort();+ }+#endif+ return parser->root;+}
+ cmark/buffer.c view
@@ -0,0 +1,381 @@+#include <stdarg.h>+#include <string.h>+#include <assert.h>+#include <string.h>+#include <stdio.h>+#include <stdlib.h>++#include "config.h"+#include "cmark_ctype.h"+#include "buffer.h"++/* Used as default value for cmark_strbuf->ptr so that people can always+ * assume ptr is non-NULL and zero terminated even for new cmark_strbufs.+ */+unsigned char cmark_strbuf__initbuf[1];+unsigned char cmark_strbuf__oom[1];++#define ENSURE_SIZE(b, d) \+ if ((d) > buf->asize && cmark_strbuf_grow(b, (d)) < 0) \+ return -1;++#ifndef MIN+#define MIN(x,y) ((x<y) ? x : y)+#endif++void cmark_strbuf_init(cmark_strbuf *buf, int initial_size)+{+ buf->asize = 0;+ buf->size = 0;+ buf->ptr = cmark_strbuf__initbuf;++ if (initial_size)+ cmark_strbuf_grow(buf, initial_size);+}++int cmark_strbuf_try_grow(cmark_strbuf *buf, int target_size, bool mark_oom)+{+ unsigned char *new_ptr;+ int new_size;++ if (buf->ptr == cmark_strbuf__oom)+ return -1;++ if (target_size <= buf->asize)+ return 0;++ if (buf->asize == 0) {+ new_size = target_size;+ new_ptr = NULL;+ } else {+ new_size = buf->asize;+ new_ptr = buf->ptr;+ }++ /* grow the buffer size by 1.5, until it's big enough+ * to fit our target size */+ while (new_size < target_size)+ new_size = (new_size << 1) - (new_size >> 1);++ /* round allocation up to multiple of 8 */+ new_size = (new_size + 7) & ~7;++ new_ptr = (unsigned char *)realloc(new_ptr, new_size);++ if (!new_ptr) {+ if (mark_oom)+ buf->ptr = cmark_strbuf__oom;+ return -1;+ }++ buf->asize = new_size;+ buf->ptr = new_ptr;++ /* truncate the existing buffer size if necessary */+ if (buf->size >= buf->asize)+ buf->size = buf->asize - 1;+ buf->ptr[buf->size] = '\0';++ return 0;+}++int cmark_strbuf_grow(cmark_strbuf *buf, int target_size)+{+ return cmark_strbuf_try_grow(buf, target_size, true);+}++bool cmark_strbuf_oom(const cmark_strbuf *buf)+{+ return (buf->ptr == cmark_strbuf__oom);+}++size_t cmark_strbuf_len(const cmark_strbuf *buf)+{+ return buf->size;+}++void cmark_strbuf_free(cmark_strbuf *buf)+{+ if (!buf) return;++ if (buf->ptr != cmark_strbuf__initbuf && buf->ptr != cmark_strbuf__oom)+ free(buf->ptr);++ cmark_strbuf_init(buf, 0);+}++void cmark_strbuf_clear(cmark_strbuf *buf)+{+ buf->size = 0;++ if (buf->asize > 0)+ buf->ptr[0] = '\0';+}++int cmark_strbuf_set(cmark_strbuf *buf, const unsigned char *data, int len)+{+ if (len <= 0 || data == NULL) {+ cmark_strbuf_clear(buf);+ } else {+ if (data != buf->ptr) {+ ENSURE_SIZE(buf, len + 1);+ memmove(buf->ptr, data, len);+ }+ buf->size = len;+ buf->ptr[buf->size] = '\0';+ }+ return 0;+}++int cmark_strbuf_sets(cmark_strbuf *buf, const char *string)+{+ return cmark_strbuf_set(buf,+ (const unsigned char *)string,+ string ? strlen(string) : 0);+}++int cmark_strbuf_putc(cmark_strbuf *buf, int c)+{+ ENSURE_SIZE(buf, buf->size + 2);+ buf->ptr[buf->size++] = c;+ buf->ptr[buf->size] = '\0';+ return 0;+}++int cmark_strbuf_put(cmark_strbuf *buf, const unsigned char *data, int len)+{+ if (len <= 0)+ return 0;++ ENSURE_SIZE(buf, buf->size + len + 1);+ memmove(buf->ptr + buf->size, data, len);+ buf->size += len;+ buf->ptr[buf->size] = '\0';+ return 0;+}++int cmark_strbuf_puts(cmark_strbuf *buf, const char *string)+{+ return cmark_strbuf_put(buf, (const unsigned char *)string, strlen(string));+}++int cmark_strbuf_vprintf(cmark_strbuf *buf, const char *format, va_list ap)+{+ const int expected_size = buf->size + (strlen(format) * 2);+ int len;++ ENSURE_SIZE(buf, expected_size);++ while (1) {+ va_list args;+ va_copy(args, ap);++ len = vsnprintf(+ (char *)buf->ptr + buf->size,+ buf->asize - buf->size,+ format, args+ );++ va_end(args);++ if (len < 0) {+ free(buf->ptr);+ buf->ptr = cmark_strbuf__oom;+ return -1;+ }++ if (len + 1 <= buf->asize - buf->size) {+ buf->size += len;+ break;+ }++ ENSURE_SIZE(buf, buf->size + len + 1);+ }++ return 0;+}++int cmark_strbuf_printf(cmark_strbuf *buf, const char *format, ...)+{+ int r;+ va_list ap;++ va_start(ap, format);+ r = cmark_strbuf_vprintf(buf, format, ap);+ va_end(ap);++ return r;+}++void cmark_strbuf_copy_cstr(char *data, int datasize, const cmark_strbuf *buf)+{+ int copylen;++ assert(data && datasize && buf);++ data[0] = '\0';++ if (buf->size == 0 || buf->asize <= 0)+ return;++ copylen = buf->size;+ if (copylen > datasize - 1)+ copylen = datasize - 1;+ memmove(data, buf->ptr, copylen);+ data[copylen] = '\0';+}++void cmark_strbuf_swap(cmark_strbuf *buf_a, cmark_strbuf *buf_b)+{+ cmark_strbuf t = *buf_a;+ *buf_a = *buf_b;+ *buf_b = t;+}++unsigned char *cmark_strbuf_detach(cmark_strbuf *buf)+{+ unsigned char *data = buf->ptr;++ if (buf->asize == 0 || buf->ptr == cmark_strbuf__oom) {+ /* return an empty string */+ return (unsigned char *)calloc(1, 1);+ }++ cmark_strbuf_init(buf, 0);+ return data;+}++void cmark_strbuf_attach(cmark_strbuf *buf, unsigned char *ptr, int asize)+{+ cmark_strbuf_free(buf);++ if (ptr) {+ buf->ptr = ptr;+ buf->size = strlen((char *)ptr);+ if (asize)+ buf->asize = (asize < buf->size) ? buf->size + 1 : asize;+ else /* pass 0 to fall back on strlen + 1 */+ buf->asize = buf->size + 1;+ } else {+ cmark_strbuf_grow(buf, asize);+ }+}++int cmark_strbuf_cmp(const cmark_strbuf *a, const cmark_strbuf *b)+{+ int result = memcmp(a->ptr, b->ptr, MIN(a->size, b->size));+ return (result != 0) ? result :+ (a->size < b->size) ? -1 : (a->size > b->size) ? 1 : 0;+}++int cmark_strbuf_strchr(const cmark_strbuf *buf, int c, int pos)+{+ const unsigned char *p = (unsigned char *)memchr(buf->ptr + pos, c, buf->size - pos);+ if (!p)+ return -1;++ return (int)(p - (const unsigned char *)buf->ptr);+}++int cmark_strbuf_strrchr(const cmark_strbuf *buf, int c, int pos)+{+ int i;++ for (i = pos; i >= 0; i--) {+ if (buf->ptr[i] == (unsigned char) c)+ return i;+ }++ return -1;+}++void cmark_strbuf_truncate(cmark_strbuf *buf, int len)+{+ if (len < buf->size) {+ buf->size = len;+ buf->ptr[buf->size] = '\0';+ }+}++void cmark_strbuf_drop(cmark_strbuf *buf, int n)+{+ if (n > 0) {+ buf->size = buf->size - n;+ if (buf->size)+ memmove(buf->ptr, buf->ptr + n, buf->size);++ buf->ptr[buf->size] = '\0';+ }+}++void cmark_strbuf_rtrim(cmark_strbuf *buf)+{+ if (!buf->size)+ return;++ while (buf->size > 0) {+ if (!cmark_isspace(buf->ptr[buf->size - 1]))+ break;++ buf->size--;+ }++ buf->ptr[buf->size] = '\0';+}++void cmark_strbuf_trim(cmark_strbuf *buf)+{+ int i = 0;++ if (!buf->size)+ return;++ while (i < buf->size && cmark_isspace(buf->ptr[i]))+ i++;++ cmark_strbuf_drop(buf, i);++ cmark_strbuf_rtrim(buf);+}++// Destructively modify string, collapsing consecutive+// space and newline characters into a single space.+void cmark_strbuf_normalize_whitespace(cmark_strbuf *s)+{+ bool last_char_was_space = false;+ int r, w;++ for (r = 0, w = 0; r < s->size; ++r) {+ switch (s->ptr[r]) {+ case ' ':+ case '\n':+ if (last_char_was_space)+ break;++ s->ptr[w++] = ' ';+ last_char_was_space = true;+ break;++ default:+ s->ptr[w++] = s->ptr[r];+ last_char_was_space = false;+ }+ }++ cmark_strbuf_truncate(s, w);+}++// Destructively unescape a string: remove backslashes before punctuation chars.+extern void cmark_strbuf_unescape(cmark_strbuf *buf)+{+ int r, w;++ for (r = 0, w = 0; r < buf->size; ++r) {+ if (buf->ptr[r] == '\\' && cmark_ispunct(buf->ptr[r + 1]))+ continue;++ buf->ptr[w++] = buf->ptr[r];+ }++ cmark_strbuf_truncate(buf, w);+}
+ cmark/buffer.h view
@@ -0,0 +1,113 @@+#ifndef CMARK_BUFFER_H+#define CMARK_BUFFER_H++#include <stddef.h>+#include <stdarg.h>+#include "config.h"++#ifdef __cplusplus+extern "C" {+#endif++typedef struct {+ unsigned char *ptr;+ int asize, size;+} cmark_strbuf;++extern unsigned char cmark_strbuf__initbuf[];++extern unsigned char cmark_strbuf__oom[];++#define GH_BUF_INIT { cmark_strbuf__initbuf, 0, 0 }++/**+ * Initialize a cmark_strbuf structure.+ *+ * For the cases where GH_BUF_INIT cannot be used to do static+ * initialization.+ */+void cmark_strbuf_init(cmark_strbuf *buf, int initial_size);++/**+ * Attempt to grow the buffer to hold at least `target_size` bytes.+ *+ * If the allocation fails, this will return an error. If mark_oom is true,+ * this will mark the buffer as invalid for future operations; if false,+ * existing buffer content will be preserved, but calling code must handle+ * that buffer was not expanded.+ */+int cmark_strbuf_try_grow(cmark_strbuf *buf, int target_size, bool mark_oom);++/**+ * Grow the buffer to hold at least `target_size` bytes.+ *+ * If the allocation fails, this will return an error and the buffer will be+ * marked as invalid for future operations, invaliding contents.+ *+ * @return 0 on success or -1 on failure+ */+int cmark_strbuf_grow(cmark_strbuf *buf, int target_size);++void cmark_strbuf_free(cmark_strbuf *buf);+void cmark_strbuf_swap(cmark_strbuf *buf_a, cmark_strbuf *buf_b);++/**+ * Test if there have been any reallocation failures with this cmark_strbuf.+ *+ * Any function that writes to a cmark_strbuf can fail due to memory allocation+ * issues. If one fails, the cmark_strbuf will be marked with an OOM error and+ * further calls to modify the buffer will fail. Check cmark_strbuf_oom() at the+ * end of your sequence and it will be true if you ran out of memory at any+ * point with that buffer.+ *+ * @return false if no error, true if allocation error+ */+bool cmark_strbuf_oom(const cmark_strbuf *buf);++size_t cmark_strbuf_len(const cmark_strbuf *buf);++int cmark_strbuf_cmp(const cmark_strbuf *a, const cmark_strbuf *b);++void cmark_strbuf_attach(cmark_strbuf *buf, unsigned char *ptr, int asize);+unsigned char *cmark_strbuf_detach(cmark_strbuf *buf);+void cmark_strbuf_copy_cstr(char *data, int datasize, const cmark_strbuf *buf);++static inline const char *cmark_strbuf_cstr(const cmark_strbuf *buf)+{+ return (char *)buf->ptr;+}++#define cmark_strbuf_at(buf, n) ((buf)->ptr[n])++/*+ * Functions below that return int value error codes will return 0 on+ * success or -1 on failure (which generally means an allocation failed).+ * Using a cmark_strbuf where the allocation has failed with result in -1 from+ * all further calls using that buffer. As a result, you can ignore the+ * return code of these functions and call them in a series then just call+ * cmark_strbuf_oom at the end.+ */+int cmark_strbuf_set(cmark_strbuf *buf, const unsigned char *data, int len);+int cmark_strbuf_sets(cmark_strbuf *buf, const char *string);+int cmark_strbuf_putc(cmark_strbuf *buf, int c);+int cmark_strbuf_put(cmark_strbuf *buf, const unsigned char *data, int len);+int cmark_strbuf_puts(cmark_strbuf *buf, const char *string);+int cmark_strbuf_printf(cmark_strbuf *buf, const char *format, ...)+CMARK_ATTRIBUTE((format (printf, 2, 3)));+int cmark_strbuf_vprintf(cmark_strbuf *buf, const char *format, va_list ap);+void cmark_strbuf_clear(cmark_strbuf *buf);++int cmark_strbuf_strchr(const cmark_strbuf *buf, int c, int pos);+int cmark_strbuf_strrchr(const cmark_strbuf *buf, int c, int pos);+void cmark_strbuf_drop(cmark_strbuf *buf, int n);+void cmark_strbuf_truncate(cmark_strbuf *buf, int len);+void cmark_strbuf_rtrim(cmark_strbuf *buf);+void cmark_strbuf_trim(cmark_strbuf *buf);+void cmark_strbuf_normalize_whitespace(cmark_strbuf *s);+void cmark_strbuf_unescape(cmark_strbuf *s);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/case_fold_switch.inc view
@@ -0,0 +1,2637 @@+ switch (c) {+ case 0x0041:+ bufpush(0x0061);+ break;+ case 0x0042:+ bufpush(0x0062);+ break;+ case 0x0043:+ bufpush(0x0063);+ break;+ case 0x0044:+ bufpush(0x0064);+ break;+ case 0x0045:+ bufpush(0x0065);+ break;+ case 0x0046:+ bufpush(0x0066);+ break;+ case 0x0047:+ bufpush(0x0067);+ break;+ case 0x0048:+ bufpush(0x0068);+ break;+ case 0x0049:+ bufpush(0x0069);+ break;+ case 0x004A:+ bufpush(0x006A);+ break;+ case 0x004B:+ bufpush(0x006B);+ break;+ case 0x004C:+ bufpush(0x006C);+ break;+ case 0x004D:+ bufpush(0x006D);+ break;+ case 0x004E:+ bufpush(0x006E);+ break;+ case 0x004F:+ bufpush(0x006F);+ break;+ case 0x0050:+ bufpush(0x0070);+ break;+ case 0x0051:+ bufpush(0x0071);+ break;+ case 0x0052:+ bufpush(0x0072);+ break;+ case 0x0053:+ bufpush(0x0073);+ break;+ case 0x0054:+ bufpush(0x0074);+ break;+ case 0x0055:+ bufpush(0x0075);+ break;+ case 0x0056:+ bufpush(0x0076);+ break;+ case 0x0057:+ bufpush(0x0077);+ break;+ case 0x0058:+ bufpush(0x0078);+ break;+ case 0x0059:+ bufpush(0x0079);+ break;+ case 0x005A:+ bufpush(0x007A);+ break;+ case 0x00B5:+ bufpush(0x03BC);+ break;+ case 0x00C0:+ bufpush(0x00E0);+ break;+ case 0x00C1:+ bufpush(0x00E1);+ break;+ case 0x00C2:+ bufpush(0x00E2);+ break;+ case 0x00C3:+ bufpush(0x00E3);+ break;+ case 0x00C4:+ bufpush(0x00E4);+ break;+ case 0x00C5:+ bufpush(0x00E5);+ break;+ case 0x00C6:+ bufpush(0x00E6);+ break;+ case 0x00C7:+ bufpush(0x00E7);+ break;+ case 0x00C8:+ bufpush(0x00E8);+ break;+ case 0x00C9:+ bufpush(0x00E9);+ break;+ case 0x00CA:+ bufpush(0x00EA);+ break;+ case 0x00CB:+ bufpush(0x00EB);+ break;+ case 0x00CC:+ bufpush(0x00EC);+ break;+ case 0x00CD:+ bufpush(0x00ED);+ break;+ case 0x00CE:+ bufpush(0x00EE);+ break;+ case 0x00CF:+ bufpush(0x00EF);+ break;+ case 0x00D0:+ bufpush(0x00F0);+ break;+ case 0x00D1:+ bufpush(0x00F1);+ break;+ case 0x00D2:+ bufpush(0x00F2);+ break;+ case 0x00D3:+ bufpush(0x00F3);+ break;+ case 0x00D4:+ bufpush(0x00F4);+ break;+ case 0x00D5:+ bufpush(0x00F5);+ break;+ case 0x00D6:+ bufpush(0x00F6);+ break;+ case 0x00D8:+ bufpush(0x00F8);+ break;+ case 0x00D9:+ bufpush(0x00F9);+ break;+ case 0x00DA:+ bufpush(0x00FA);+ break;+ case 0x00DB:+ bufpush(0x00FB);+ break;+ case 0x00DC:+ bufpush(0x00FC);+ break;+ case 0x00DD:+ bufpush(0x00FD);+ break;+ case 0x00DE:+ bufpush(0x00FE);+ break;+ case 0x00DF:+ bufpush(0x0073);+ bufpush(0x0073);+ break;+ case 0x0100:+ bufpush(0x0101);+ break;+ case 0x0102:+ bufpush(0x0103);+ break;+ case 0x0104:+ bufpush(0x0105);+ break;+ case 0x0106:+ bufpush(0x0107);+ break;+ case 0x0108:+ bufpush(0x0109);+ break;+ case 0x010A:+ bufpush(0x010B);+ break;+ case 0x010C:+ bufpush(0x010D);+ break;+ case 0x010E:+ bufpush(0x010F);+ break;+ case 0x0110:+ bufpush(0x0111);+ break;+ case 0x0112:+ bufpush(0x0113);+ break;+ case 0x0114:+ bufpush(0x0115);+ break;+ case 0x0116:+ bufpush(0x0117);+ break;+ case 0x0118:+ bufpush(0x0119);+ break;+ case 0x011A:+ bufpush(0x011B);+ break;+ case 0x011C:+ bufpush(0x011D);+ break;+ case 0x011E:+ bufpush(0x011F);+ break;+ case 0x0120:+ bufpush(0x0121);+ break;+ case 0x0122:+ bufpush(0x0123);+ break;+ case 0x0124:+ bufpush(0x0125);+ break;+ case 0x0126:+ bufpush(0x0127);+ break;+ case 0x0128:+ bufpush(0x0129);+ break;+ case 0x012A:+ bufpush(0x012B);+ break;+ case 0x012C:+ bufpush(0x012D);+ break;+ case 0x012E:+ bufpush(0x012F);+ break;+ case 0x0130:+ bufpush(0x0069);+ bufpush(0x0307);+ break;+ case 0x0132:+ bufpush(0x0133);+ break;+ case 0x0134:+ bufpush(0x0135);+ break;+ case 0x0136:+ bufpush(0x0137);+ break;+ case 0x0139:+ bufpush(0x013A);+ break;+ case 0x013B:+ bufpush(0x013C);+ break;+ case 0x013D:+ bufpush(0x013E);+ break;+ case 0x013F:+ bufpush(0x0140);+ break;+ case 0x0141:+ bufpush(0x0142);+ break;+ case 0x0143:+ bufpush(0x0144);+ break;+ case 0x0145:+ bufpush(0x0146);+ break;+ case 0x0147:+ bufpush(0x0148);+ break;+ case 0x0149:+ bufpush(0x02BC);+ bufpush(0x006E);+ break;+ case 0x014A:+ bufpush(0x014B);+ break;+ case 0x014C:+ bufpush(0x014D);+ break;+ case 0x014E:+ bufpush(0x014F);+ break;+ case 0x0150:+ bufpush(0x0151);+ break;+ case 0x0152:+ bufpush(0x0153);+ break;+ case 0x0154:+ bufpush(0x0155);+ break;+ case 0x0156:+ bufpush(0x0157);+ break;+ case 0x0158:+ bufpush(0x0159);+ break;+ case 0x015A:+ bufpush(0x015B);+ break;+ case 0x015C:+ bufpush(0x015D);+ break;+ case 0x015E:+ bufpush(0x015F);+ break;+ case 0x0160:+ bufpush(0x0161);+ break;+ case 0x0162:+ bufpush(0x0163);+ break;+ case 0x0164:+ bufpush(0x0165);+ break;+ case 0x0166:+ bufpush(0x0167);+ break;+ case 0x0168:+ bufpush(0x0169);+ break;+ case 0x016A:+ bufpush(0x016B);+ break;+ case 0x016C:+ bufpush(0x016D);+ break;+ case 0x016E:+ bufpush(0x016F);+ break;+ case 0x0170:+ bufpush(0x0171);+ break;+ case 0x0172:+ bufpush(0x0173);+ break;+ case 0x0174:+ bufpush(0x0175);+ break;+ case 0x0176:+ bufpush(0x0177);+ break;+ case 0x0178:+ bufpush(0x00FF);+ break;+ case 0x0179:+ bufpush(0x017A);+ break;+ case 0x017B:+ bufpush(0x017C);+ break;+ case 0x017D:+ bufpush(0x017E);+ break;+ case 0x017F:+ bufpush(0x0073);+ break;+ case 0x0181:+ bufpush(0x0253);+ break;+ case 0x0182:+ bufpush(0x0183);+ break;+ case 0x0184:+ bufpush(0x0185);+ break;+ case 0x0186:+ bufpush(0x0254);+ break;+ case 0x0187:+ bufpush(0x0188);+ break;+ case 0x0189:+ bufpush(0x0256);+ break;+ case 0x018A:+ bufpush(0x0257);+ break;+ case 0x018B:+ bufpush(0x018C);+ break;+ case 0x018E:+ bufpush(0x01DD);+ break;+ case 0x018F:+ bufpush(0x0259);+ break;+ case 0x0190:+ bufpush(0x025B);+ break;+ case 0x0191:+ bufpush(0x0192);+ break;+ case 0x0193:+ bufpush(0x0260);+ break;+ case 0x0194:+ bufpush(0x0263);+ break;+ case 0x0196:+ bufpush(0x0269);+ break;+ case 0x0197:+ bufpush(0x0268);+ break;+ case 0x0198:+ bufpush(0x0199);+ break;+ case 0x019C:+ bufpush(0x026F);+ break;+ case 0x019D:+ bufpush(0x0272);+ break;+ case 0x019F:+ bufpush(0x0275);+ break;+ case 0x01A0:+ bufpush(0x01A1);+ break;+ case 0x01A2:+ bufpush(0x01A3);+ break;+ case 0x01A4:+ bufpush(0x01A5);+ break;+ case 0x01A6:+ bufpush(0x0280);+ break;+ case 0x01A7:+ bufpush(0x01A8);+ break;+ case 0x01A9:+ bufpush(0x0283);+ break;+ case 0x01AC:+ bufpush(0x01AD);+ break;+ case 0x01AE:+ bufpush(0x0288);+ break;+ case 0x01AF:+ bufpush(0x01B0);+ break;+ case 0x01B1:+ bufpush(0x028A);+ break;+ case 0x01B2:+ bufpush(0x028B);+ break;+ case 0x01B3:+ bufpush(0x01B4);+ break;+ case 0x01B5:+ bufpush(0x01B6);+ break;+ case 0x01B7:+ bufpush(0x0292);+ break;+ case 0x01B8:+ bufpush(0x01B9);+ break;+ case 0x01BC:+ bufpush(0x01BD);+ break;+ case 0x01C4:+ bufpush(0x01C6);+ break;+ case 0x01C5:+ bufpush(0x01C6);+ break;+ case 0x01C7:+ bufpush(0x01C9);+ break;+ case 0x01C8:+ bufpush(0x01C9);+ break;+ case 0x01CA:+ bufpush(0x01CC);+ break;+ case 0x01CB:+ bufpush(0x01CC);+ break;+ case 0x01CD:+ bufpush(0x01CE);+ break;+ case 0x01CF:+ bufpush(0x01D0);+ break;+ case 0x01D1:+ bufpush(0x01D2);+ break;+ case 0x01D3:+ bufpush(0x01D4);+ break;+ case 0x01D5:+ bufpush(0x01D6);+ break;+ case 0x01D7:+ bufpush(0x01D8);+ break;+ case 0x01D9:+ bufpush(0x01DA);+ break;+ case 0x01DB:+ bufpush(0x01DC);+ break;+ case 0x01DE:+ bufpush(0x01DF);+ break;+ case 0x01E0:+ bufpush(0x01E1);+ break;+ case 0x01E2:+ bufpush(0x01E3);+ break;+ case 0x01E4:+ bufpush(0x01E5);+ break;+ case 0x01E6:+ bufpush(0x01E7);+ break;+ case 0x01E8:+ bufpush(0x01E9);+ break;+ case 0x01EA:+ bufpush(0x01EB);+ break;+ case 0x01EC:+ bufpush(0x01ED);+ break;+ case 0x01EE:+ bufpush(0x01EF);+ break;+ case 0x01F0:+ bufpush(0x006A);+ bufpush(0x030C);+ break;+ case 0x01F1:+ bufpush(0x01F3);+ break;+ case 0x01F2:+ bufpush(0x01F3);+ break;+ case 0x01F4:+ bufpush(0x01F5);+ break;+ case 0x01F6:+ bufpush(0x0195);+ break;+ case 0x01F7:+ bufpush(0x01BF);+ break;+ case 0x01F8:+ bufpush(0x01F9);+ break;+ case 0x01FA:+ bufpush(0x01FB);+ break;+ case 0x01FC:+ bufpush(0x01FD);+ break;+ case 0x01FE:+ bufpush(0x01FF);+ break;+ case 0x0200:+ bufpush(0x0201);+ break;+ case 0x0202:+ bufpush(0x0203);+ break;+ case 0x0204:+ bufpush(0x0205);+ break;+ case 0x0206:+ bufpush(0x0207);+ break;+ case 0x0208:+ bufpush(0x0209);+ break;+ case 0x020A:+ bufpush(0x020B);+ break;+ case 0x020C:+ bufpush(0x020D);+ break;+ case 0x020E:+ bufpush(0x020F);+ break;+ case 0x0210:+ bufpush(0x0211);+ break;+ case 0x0212:+ bufpush(0x0213);+ break;+ case 0x0214:+ bufpush(0x0215);+ break;+ case 0x0216:+ bufpush(0x0217);+ break;+ case 0x0218:+ bufpush(0x0219);+ break;+ case 0x021A:+ bufpush(0x021B);+ break;+ case 0x021C:+ bufpush(0x021D);+ break;+ case 0x021E:+ bufpush(0x021F);+ break;+ case 0x0220:+ bufpush(0x019E);+ break;+ case 0x0222:+ bufpush(0x0223);+ break;+ case 0x0224:+ bufpush(0x0225);+ break;+ case 0x0226:+ bufpush(0x0227);+ break;+ case 0x0228:+ bufpush(0x0229);+ break;+ case 0x022A:+ bufpush(0x022B);+ break;+ case 0x022C:+ bufpush(0x022D);+ break;+ case 0x022E:+ bufpush(0x022F);+ break;+ case 0x0230:+ bufpush(0x0231);+ break;+ case 0x0232:+ bufpush(0x0233);+ break;+ case 0x0345:+ bufpush(0x03B9);+ break;+ case 0x0386:+ bufpush(0x03AC);+ break;+ case 0x0388:+ bufpush(0x03AD);+ break;+ case 0x0389:+ bufpush(0x03AE);+ break;+ case 0x038A:+ bufpush(0x03AF);+ break;+ case 0x038C:+ bufpush(0x03CC);+ break;+ case 0x038E:+ bufpush(0x03CD);+ break;+ case 0x038F:+ bufpush(0x03CE);+ break;+ case 0x0390:+ bufpush(0x03B9);+ bufpush(0x0308);+ bufpush(0x0301);+ break;+ case 0x0391:+ bufpush(0x03B1);+ break;+ case 0x0392:+ bufpush(0x03B2);+ break;+ case 0x0393:+ bufpush(0x03B3);+ break;+ case 0x0394:+ bufpush(0x03B4);+ break;+ case 0x0395:+ bufpush(0x03B5);+ break;+ case 0x0396:+ bufpush(0x03B6);+ break;+ case 0x0397:+ bufpush(0x03B7);+ break;+ case 0x0398:+ bufpush(0x03B8);+ break;+ case 0x0399:+ bufpush(0x03B9);+ break;+ case 0x039A:+ bufpush(0x03BA);+ break;+ case 0x039B:+ bufpush(0x03BB);+ break;+ case 0x039C:+ bufpush(0x03BC);+ break;+ case 0x039D:+ bufpush(0x03BD);+ break;+ case 0x039E:+ bufpush(0x03BE);+ break;+ case 0x039F:+ bufpush(0x03BF);+ break;+ case 0x03A0:+ bufpush(0x03C0);+ break;+ case 0x03A1:+ bufpush(0x03C1);+ break;+ case 0x03A3:+ bufpush(0x03C3);+ break;+ case 0x03A4:+ bufpush(0x03C4);+ break;+ case 0x03A5:+ bufpush(0x03C5);+ break;+ case 0x03A6:+ bufpush(0x03C6);+ break;+ case 0x03A7:+ bufpush(0x03C7);+ break;+ case 0x03A8:+ bufpush(0x03C8);+ break;+ case 0x03A9:+ bufpush(0x03C9);+ break;+ case 0x03AA:+ bufpush(0x03CA);+ break;+ case 0x03AB:+ bufpush(0x03CB);+ break;+ case 0x03B0:+ bufpush(0x03C5);+ bufpush(0x0308);+ bufpush(0x0301);+ break;+ case 0x03C2:+ bufpush(0x03C3);+ break;+ case 0x03D0:+ bufpush(0x03B2);+ break;+ case 0x03D1:+ bufpush(0x03B8);+ break;+ case 0x03D5:+ bufpush(0x03C6);+ break;+ case 0x03D6:+ bufpush(0x03C0);+ break;+ case 0x03D8:+ bufpush(0x03D9);+ break;+ case 0x03DA:+ bufpush(0x03DB);+ break;+ case 0x03DC:+ bufpush(0x03DD);+ break;+ case 0x03DE:+ bufpush(0x03DF);+ break;+ case 0x03E0:+ bufpush(0x03E1);+ break;+ case 0x03E2:+ bufpush(0x03E3);+ break;+ case 0x03E4:+ bufpush(0x03E5);+ break;+ case 0x03E6:+ bufpush(0x03E7);+ break;+ case 0x03E8:+ bufpush(0x03E9);+ break;+ case 0x03EA:+ bufpush(0x03EB);+ break;+ case 0x03EC:+ bufpush(0x03ED);+ break;+ case 0x03EE:+ bufpush(0x03EF);+ break;+ case 0x03F0:+ bufpush(0x03BA);+ break;+ case 0x03F1:+ bufpush(0x03C1);+ break;+ case 0x03F2:+ bufpush(0x03C3);+ break;+ case 0x03F4:+ bufpush(0x03B8);+ break;+ case 0x03F5:+ bufpush(0x03B5);+ break;+ case 0x0400:+ bufpush(0x0450);+ break;+ case 0x0401:+ bufpush(0x0451);+ break;+ case 0x0402:+ bufpush(0x0452);+ break;+ case 0x0403:+ bufpush(0x0453);+ break;+ case 0x0404:+ bufpush(0x0454);+ break;+ case 0x0405:+ bufpush(0x0455);+ break;+ case 0x0406:+ bufpush(0x0456);+ break;+ case 0x0407:+ bufpush(0x0457);+ break;+ case 0x0408:+ bufpush(0x0458);+ break;+ case 0x0409:+ bufpush(0x0459);+ break;+ case 0x040A:+ bufpush(0x045A);+ break;+ case 0x040B:+ bufpush(0x045B);+ break;+ case 0x040C:+ bufpush(0x045C);+ break;+ case 0x040D:+ bufpush(0x045D);+ break;+ case 0x040E:+ bufpush(0x045E);+ break;+ case 0x040F:+ bufpush(0x045F);+ break;+ case 0x0410:+ bufpush(0x0430);+ break;+ case 0x0411:+ bufpush(0x0431);+ break;+ case 0x0412:+ bufpush(0x0432);+ break;+ case 0x0413:+ bufpush(0x0433);+ break;+ case 0x0414:+ bufpush(0x0434);+ break;+ case 0x0415:+ bufpush(0x0435);+ break;+ case 0x0416:+ bufpush(0x0436);+ break;+ case 0x0417:+ bufpush(0x0437);+ break;+ case 0x0418:+ bufpush(0x0438);+ break;+ case 0x0419:+ bufpush(0x0439);+ break;+ case 0x041A:+ bufpush(0x043A);+ break;+ case 0x041B:+ bufpush(0x043B);+ break;+ case 0x041C:+ bufpush(0x043C);+ break;+ case 0x041D:+ bufpush(0x043D);+ break;+ case 0x041E:+ bufpush(0x043E);+ break;+ case 0x041F:+ bufpush(0x043F);+ break;+ case 0x0420:+ bufpush(0x0440);+ break;+ case 0x0421:+ bufpush(0x0441);+ break;+ case 0x0422:+ bufpush(0x0442);+ break;+ case 0x0423:+ bufpush(0x0443);+ break;+ case 0x0424:+ bufpush(0x0444);+ break;+ case 0x0425:+ bufpush(0x0445);+ break;+ case 0x0426:+ bufpush(0x0446);+ break;+ case 0x0427:+ bufpush(0x0447);+ break;+ case 0x0428:+ bufpush(0x0448);+ break;+ case 0x0429:+ bufpush(0x0449);+ break;+ case 0x042A:+ bufpush(0x044A);+ break;+ case 0x042B:+ bufpush(0x044B);+ break;+ case 0x042C:+ bufpush(0x044C);+ break;+ case 0x042D:+ bufpush(0x044D);+ break;+ case 0x042E:+ bufpush(0x044E);+ break;+ case 0x042F:+ bufpush(0x044F);+ break;+ case 0x0460:+ bufpush(0x0461);+ break;+ case 0x0462:+ bufpush(0x0463);+ break;+ case 0x0464:+ bufpush(0x0465);+ break;+ case 0x0466:+ bufpush(0x0467);+ break;+ case 0x0468:+ bufpush(0x0469);+ break;+ case 0x046A:+ bufpush(0x046B);+ break;+ case 0x046C:+ bufpush(0x046D);+ break;+ case 0x046E:+ bufpush(0x046F);+ break;+ case 0x0470:+ bufpush(0x0471);+ break;+ case 0x0472:+ bufpush(0x0473);+ break;+ case 0x0474:+ bufpush(0x0475);+ break;+ case 0x0476:+ bufpush(0x0477);+ break;+ case 0x0478:+ bufpush(0x0479);+ break;+ case 0x047A:+ bufpush(0x047B);+ break;+ case 0x047C:+ bufpush(0x047D);+ break;+ case 0x047E:+ bufpush(0x047F);+ break;+ case 0x0480:+ bufpush(0x0481);+ break;+ case 0x048A:+ bufpush(0x048B);+ break;+ case 0x048C:+ bufpush(0x048D);+ break;+ case 0x048E:+ bufpush(0x048F);+ break;+ case 0x0490:+ bufpush(0x0491);+ break;+ case 0x0492:+ bufpush(0x0493);+ break;+ case 0x0494:+ bufpush(0x0495);+ break;+ case 0x0496:+ bufpush(0x0497);+ break;+ case 0x0498:+ bufpush(0x0499);+ break;+ case 0x049A:+ bufpush(0x049B);+ break;+ case 0x049C:+ bufpush(0x049D);+ break;+ case 0x049E:+ bufpush(0x049F);+ break;+ case 0x04A0:+ bufpush(0x04A1);+ break;+ case 0x04A2:+ bufpush(0x04A3);+ break;+ case 0x04A4:+ bufpush(0x04A5);+ break;+ case 0x04A6:+ bufpush(0x04A7);+ break;+ case 0x04A8:+ bufpush(0x04A9);+ break;+ case 0x04AA:+ bufpush(0x04AB);+ break;+ case 0x04AC:+ bufpush(0x04AD);+ break;+ case 0x04AE:+ bufpush(0x04AF);+ break;+ case 0x04B0:+ bufpush(0x04B1);+ break;+ case 0x04B2:+ bufpush(0x04B3);+ break;+ case 0x04B4:+ bufpush(0x04B5);+ break;+ case 0x04B6:+ bufpush(0x04B7);+ break;+ case 0x04B8:+ bufpush(0x04B9);+ break;+ case 0x04BA:+ bufpush(0x04BB);+ break;+ case 0x04BC:+ bufpush(0x04BD);+ break;+ case 0x04BE:+ bufpush(0x04BF);+ break;+ case 0x04C1:+ bufpush(0x04C2);+ break;+ case 0x04C3:+ bufpush(0x04C4);+ break;+ case 0x04C5:+ bufpush(0x04C6);+ break;+ case 0x04C7:+ bufpush(0x04C8);+ break;+ case 0x04C9:+ bufpush(0x04CA);+ break;+ case 0x04CB:+ bufpush(0x04CC);+ break;+ case 0x04CD:+ bufpush(0x04CE);+ break;+ case 0x04D0:+ bufpush(0x04D1);+ break;+ case 0x04D2:+ bufpush(0x04D3);+ break;+ case 0x04D4:+ bufpush(0x04D5);+ break;+ case 0x04D6:+ bufpush(0x04D7);+ break;+ case 0x04D8:+ bufpush(0x04D9);+ break;+ case 0x04DA:+ bufpush(0x04DB);+ break;+ case 0x04DC:+ bufpush(0x04DD);+ break;+ case 0x04DE:+ bufpush(0x04DF);+ break;+ case 0x04E0:+ bufpush(0x04E1);+ break;+ case 0x04E2:+ bufpush(0x04E3);+ break;+ case 0x04E4:+ bufpush(0x04E5);+ break;+ case 0x04E6:+ bufpush(0x04E7);+ break;+ case 0x04E8:+ bufpush(0x04E9);+ break;+ case 0x04EA:+ bufpush(0x04EB);+ break;+ case 0x04EC:+ bufpush(0x04ED);+ break;+ case 0x04EE:+ bufpush(0x04EF);+ break;+ case 0x04F0:+ bufpush(0x04F1);+ break;+ case 0x04F2:+ bufpush(0x04F3);+ break;+ case 0x04F4:+ bufpush(0x04F5);+ break;+ case 0x04F8:+ bufpush(0x04F9);+ break;+ case 0x0500:+ bufpush(0x0501);+ break;+ case 0x0502:+ bufpush(0x0503);+ break;+ case 0x0504:+ bufpush(0x0505);+ break;+ case 0x0506:+ bufpush(0x0507);+ break;+ case 0x0508:+ bufpush(0x0509);+ break;+ case 0x050A:+ bufpush(0x050B);+ break;+ case 0x050C:+ bufpush(0x050D);+ break;+ case 0x050E:+ bufpush(0x050F);+ break;+ case 0x0531:+ bufpush(0x0561);+ break;+ case 0x0532:+ bufpush(0x0562);+ break;+ case 0x0533:+ bufpush(0x0563);+ break;+ case 0x0534:+ bufpush(0x0564);+ break;+ case 0x0535:+ bufpush(0x0565);+ break;+ case 0x0536:+ bufpush(0x0566);+ break;+ case 0x0537:+ bufpush(0x0567);+ break;+ case 0x0538:+ bufpush(0x0568);+ break;+ case 0x0539:+ bufpush(0x0569);+ break;+ case 0x053A:+ bufpush(0x056A);+ break;+ case 0x053B:+ bufpush(0x056B);+ break;+ case 0x053C:+ bufpush(0x056C);+ break;+ case 0x053D:+ bufpush(0x056D);+ break;+ case 0x053E:+ bufpush(0x056E);+ break;+ case 0x053F:+ bufpush(0x056F);+ break;+ case 0x0540:+ bufpush(0x0570);+ break;+ case 0x0541:+ bufpush(0x0571);+ break;+ case 0x0542:+ bufpush(0x0572);+ break;+ case 0x0543:+ bufpush(0x0573);+ break;+ case 0x0544:+ bufpush(0x0574);+ break;+ case 0x0545:+ bufpush(0x0575);+ break;+ case 0x0546:+ bufpush(0x0576);+ break;+ case 0x0547:+ bufpush(0x0577);+ break;+ case 0x0548:+ bufpush(0x0578);+ break;+ case 0x0549:+ bufpush(0x0579);+ break;+ case 0x054A:+ bufpush(0x057A);+ break;+ case 0x054B:+ bufpush(0x057B);+ break;+ case 0x054C:+ bufpush(0x057C);+ break;+ case 0x054D:+ bufpush(0x057D);+ break;+ case 0x054E:+ bufpush(0x057E);+ break;+ case 0x054F:+ bufpush(0x057F);+ break;+ case 0x0550:+ bufpush(0x0580);+ break;+ case 0x0551:+ bufpush(0x0581);+ break;+ case 0x0552:+ bufpush(0x0582);+ break;+ case 0x0553:+ bufpush(0x0583);+ break;+ case 0x0554:+ bufpush(0x0584);+ break;+ case 0x0555:+ bufpush(0x0585);+ break;+ case 0x0556:+ bufpush(0x0586);+ break;+ case 0x0587:+ bufpush(0x0565);+ bufpush(0x0582);+ break;+ case 0x1E00:+ bufpush(0x1E01);+ break;+ case 0x1E02:+ bufpush(0x1E03);+ break;+ case 0x1E04:+ bufpush(0x1E05);+ break;+ case 0x1E06:+ bufpush(0x1E07);+ break;+ case 0x1E08:+ bufpush(0x1E09);+ break;+ case 0x1E0A:+ bufpush(0x1E0B);+ break;+ case 0x1E0C:+ bufpush(0x1E0D);+ break;+ case 0x1E0E:+ bufpush(0x1E0F);+ break;+ case 0x1E10:+ bufpush(0x1E11);+ break;+ case 0x1E12:+ bufpush(0x1E13);+ break;+ case 0x1E14:+ bufpush(0x1E15);+ break;+ case 0x1E16:+ bufpush(0x1E17);+ break;+ case 0x1E18:+ bufpush(0x1E19);+ break;+ case 0x1E1A:+ bufpush(0x1E1B);+ break;+ case 0x1E1C:+ bufpush(0x1E1D);+ break;+ case 0x1E1E:+ bufpush(0x1E1F);+ break;+ case 0x1E20:+ bufpush(0x1E21);+ break;+ case 0x1E22:+ bufpush(0x1E23);+ break;+ case 0x1E24:+ bufpush(0x1E25);+ break;+ case 0x1E26:+ bufpush(0x1E27);+ break;+ case 0x1E28:+ bufpush(0x1E29);+ break;+ case 0x1E2A:+ bufpush(0x1E2B);+ break;+ case 0x1E2C:+ bufpush(0x1E2D);+ break;+ case 0x1E2E:+ bufpush(0x1E2F);+ break;+ case 0x1E30:+ bufpush(0x1E31);+ break;+ case 0x1E32:+ bufpush(0x1E33);+ break;+ case 0x1E34:+ bufpush(0x1E35);+ break;+ case 0x1E36:+ bufpush(0x1E37);+ break;+ case 0x1E38:+ bufpush(0x1E39);+ break;+ case 0x1E3A:+ bufpush(0x1E3B);+ break;+ case 0x1E3C:+ bufpush(0x1E3D);+ break;+ case 0x1E3E:+ bufpush(0x1E3F);+ break;+ case 0x1E40:+ bufpush(0x1E41);+ break;+ case 0x1E42:+ bufpush(0x1E43);+ break;+ case 0x1E44:+ bufpush(0x1E45);+ break;+ case 0x1E46:+ bufpush(0x1E47);+ break;+ case 0x1E48:+ bufpush(0x1E49);+ break;+ case 0x1E4A:+ bufpush(0x1E4B);+ break;+ case 0x1E4C:+ bufpush(0x1E4D);+ break;+ case 0x1E4E:+ bufpush(0x1E4F);+ break;+ case 0x1E50:+ bufpush(0x1E51);+ break;+ case 0x1E52:+ bufpush(0x1E53);+ break;+ case 0x1E54:+ bufpush(0x1E55);+ break;+ case 0x1E56:+ bufpush(0x1E57);+ break;+ case 0x1E58:+ bufpush(0x1E59);+ break;+ case 0x1E5A:+ bufpush(0x1E5B);+ break;+ case 0x1E5C:+ bufpush(0x1E5D);+ break;+ case 0x1E5E:+ bufpush(0x1E5F);+ break;+ case 0x1E60:+ bufpush(0x1E61);+ break;+ case 0x1E62:+ bufpush(0x1E63);+ break;+ case 0x1E64:+ bufpush(0x1E65);+ break;+ case 0x1E66:+ bufpush(0x1E67);+ break;+ case 0x1E68:+ bufpush(0x1E69);+ break;+ case 0x1E6A:+ bufpush(0x1E6B);+ break;+ case 0x1E6C:+ bufpush(0x1E6D);+ break;+ case 0x1E6E:+ bufpush(0x1E6F);+ break;+ case 0x1E70:+ bufpush(0x1E71);+ break;+ case 0x1E72:+ bufpush(0x1E73);+ break;+ case 0x1E74:+ bufpush(0x1E75);+ break;+ case 0x1E76:+ bufpush(0x1E77);+ break;+ case 0x1E78:+ bufpush(0x1E79);+ break;+ case 0x1E7A:+ bufpush(0x1E7B);+ break;+ case 0x1E7C:+ bufpush(0x1E7D);+ break;+ case 0x1E7E:+ bufpush(0x1E7F);+ break;+ case 0x1E80:+ bufpush(0x1E81);+ break;+ case 0x1E82:+ bufpush(0x1E83);+ break;+ case 0x1E84:+ bufpush(0x1E85);+ break;+ case 0x1E86:+ bufpush(0x1E87);+ break;+ case 0x1E88:+ bufpush(0x1E89);+ break;+ case 0x1E8A:+ bufpush(0x1E8B);+ break;+ case 0x1E8C:+ bufpush(0x1E8D);+ break;+ case 0x1E8E:+ bufpush(0x1E8F);+ break;+ case 0x1E90:+ bufpush(0x1E91);+ break;+ case 0x1E92:+ bufpush(0x1E93);+ break;+ case 0x1E94:+ bufpush(0x1E95);+ break;+ case 0x1E96:+ bufpush(0x0068);+ bufpush(0x0331);+ break;+ case 0x1E97:+ bufpush(0x0074);+ bufpush(0x0308);+ break;+ case 0x1E98:+ bufpush(0x0077);+ bufpush(0x030A);+ break;+ case 0x1E99:+ bufpush(0x0079);+ bufpush(0x030A);+ break;+ case 0x1E9A:+ bufpush(0x0061);+ bufpush(0x02BE);+ break;+ case 0x1E9B:+ bufpush(0x1E61);+ break;+ case 0x1EA0:+ bufpush(0x1EA1);+ break;+ case 0x1EA2:+ bufpush(0x1EA3);+ break;+ case 0x1EA4:+ bufpush(0x1EA5);+ break;+ case 0x1EA6:+ bufpush(0x1EA7);+ break;+ case 0x1EA8:+ bufpush(0x1EA9);+ break;+ case 0x1EAA:+ bufpush(0x1EAB);+ break;+ case 0x1EAC:+ bufpush(0x1EAD);+ break;+ case 0x1EAE:+ bufpush(0x1EAF);+ break;+ case 0x1EB0:+ bufpush(0x1EB1);+ break;+ case 0x1EB2:+ bufpush(0x1EB3);+ break;+ case 0x1EB4:+ bufpush(0x1EB5);+ break;+ case 0x1EB6:+ bufpush(0x1EB7);+ break;+ case 0x1EB8:+ bufpush(0x1EB9);+ break;+ case 0x1EBA:+ bufpush(0x1EBB);+ break;+ case 0x1EBC:+ bufpush(0x1EBD);+ break;+ case 0x1EBE:+ bufpush(0x1EBF);+ break;+ case 0x1EC0:+ bufpush(0x1EC1);+ break;+ case 0x1EC2:+ bufpush(0x1EC3);+ break;+ case 0x1EC4:+ bufpush(0x1EC5);+ break;+ case 0x1EC6:+ bufpush(0x1EC7);+ break;+ case 0x1EC8:+ bufpush(0x1EC9);+ break;+ case 0x1ECA:+ bufpush(0x1ECB);+ break;+ case 0x1ECC:+ bufpush(0x1ECD);+ break;+ case 0x1ECE:+ bufpush(0x1ECF);+ break;+ case 0x1ED0:+ bufpush(0x1ED1);+ break;+ case 0x1ED2:+ bufpush(0x1ED3);+ break;+ case 0x1ED4:+ bufpush(0x1ED5);+ break;+ case 0x1ED6:+ bufpush(0x1ED7);+ break;+ case 0x1ED8:+ bufpush(0x1ED9);+ break;+ case 0x1EDA:+ bufpush(0x1EDB);+ break;+ case 0x1EDC:+ bufpush(0x1EDD);+ break;+ case 0x1EDE:+ bufpush(0x1EDF);+ break;+ case 0x1EE0:+ bufpush(0x1EE1);+ break;+ case 0x1EE2:+ bufpush(0x1EE3);+ break;+ case 0x1EE4:+ bufpush(0x1EE5);+ break;+ case 0x1EE6:+ bufpush(0x1EE7);+ break;+ case 0x1EE8:+ bufpush(0x1EE9);+ break;+ case 0x1EEA:+ bufpush(0x1EEB);+ break;+ case 0x1EEC:+ bufpush(0x1EED);+ break;+ case 0x1EEE:+ bufpush(0x1EEF);+ break;+ case 0x1EF0:+ bufpush(0x1EF1);+ break;+ case 0x1EF2:+ bufpush(0x1EF3);+ break;+ case 0x1EF4:+ bufpush(0x1EF5);+ break;+ case 0x1EF6:+ bufpush(0x1EF7);+ break;+ case 0x1EF8:+ bufpush(0x1EF9);+ break;+ case 0x1F08:+ bufpush(0x1F00);+ break;+ case 0x1F09:+ bufpush(0x1F01);+ break;+ case 0x1F0A:+ bufpush(0x1F02);+ break;+ case 0x1F0B:+ bufpush(0x1F03);+ break;+ case 0x1F0C:+ bufpush(0x1F04);+ break;+ case 0x1F0D:+ bufpush(0x1F05);+ break;+ case 0x1F0E:+ bufpush(0x1F06);+ break;+ case 0x1F0F:+ bufpush(0x1F07);+ break;+ case 0x1F18:+ bufpush(0x1F10);+ break;+ case 0x1F19:+ bufpush(0x1F11);+ break;+ case 0x1F1A:+ bufpush(0x1F12);+ break;+ case 0x1F1B:+ bufpush(0x1F13);+ break;+ case 0x1F1C:+ bufpush(0x1F14);+ break;+ case 0x1F1D:+ bufpush(0x1F15);+ break;+ case 0x1F28:+ bufpush(0x1F20);+ break;+ case 0x1F29:+ bufpush(0x1F21);+ break;+ case 0x1F2A:+ bufpush(0x1F22);+ break;+ case 0x1F2B:+ bufpush(0x1F23);+ break;+ case 0x1F2C:+ bufpush(0x1F24);+ break;+ case 0x1F2D:+ bufpush(0x1F25);+ break;+ case 0x1F2E:+ bufpush(0x1F26);+ break;+ case 0x1F2F:+ bufpush(0x1F27);+ break;+ case 0x1F38:+ bufpush(0x1F30);+ break;+ case 0x1F39:+ bufpush(0x1F31);+ break;+ case 0x1F3A:+ bufpush(0x1F32);+ break;+ case 0x1F3B:+ bufpush(0x1F33);+ break;+ case 0x1F3C:+ bufpush(0x1F34);+ break;+ case 0x1F3D:+ bufpush(0x1F35);+ break;+ case 0x1F3E:+ bufpush(0x1F36);+ break;+ case 0x1F3F:+ bufpush(0x1F37);+ break;+ case 0x1F48:+ bufpush(0x1F40);+ break;+ case 0x1F49:+ bufpush(0x1F41);+ break;+ case 0x1F4A:+ bufpush(0x1F42);+ break;+ case 0x1F4B:+ bufpush(0x1F43);+ break;+ case 0x1F4C:+ bufpush(0x1F44);+ break;+ case 0x1F4D:+ bufpush(0x1F45);+ break;+ case 0x1F50:+ bufpush(0x03C5);+ bufpush(0x0313);+ break;+ case 0x1F52:+ bufpush(0x03C5);+ bufpush(0x0313);+ bufpush(0x0300);+ break;+ case 0x1F54:+ bufpush(0x03C5);+ bufpush(0x0313);+ bufpush(0x0301);+ break;+ case 0x1F56:+ bufpush(0x03C5);+ bufpush(0x0313);+ bufpush(0x0342);+ break;+ case 0x1F59:+ bufpush(0x1F51);+ break;+ case 0x1F5B:+ bufpush(0x1F53);+ break;+ case 0x1F5D:+ bufpush(0x1F55);+ break;+ case 0x1F5F:+ bufpush(0x1F57);+ break;+ case 0x1F68:+ bufpush(0x1F60);+ break;+ case 0x1F69:+ bufpush(0x1F61);+ break;+ case 0x1F6A:+ bufpush(0x1F62);+ break;+ case 0x1F6B:+ bufpush(0x1F63);+ break;+ case 0x1F6C:+ bufpush(0x1F64);+ break;+ case 0x1F6D:+ bufpush(0x1F65);+ break;+ case 0x1F6E:+ bufpush(0x1F66);+ break;+ case 0x1F6F:+ bufpush(0x1F67);+ break;+ case 0x1F80:+ bufpush(0x1F00);+ bufpush(0x03B9);+ break;+ case 0x1F81:+ bufpush(0x1F01);+ bufpush(0x03B9);+ break;+ case 0x1F82:+ bufpush(0x1F02);+ bufpush(0x03B9);+ break;+ case 0x1F83:+ bufpush(0x1F03);+ bufpush(0x03B9);+ break;+ case 0x1F84:+ bufpush(0x1F04);+ bufpush(0x03B9);+ break;+ case 0x1F85:+ bufpush(0x1F05);+ bufpush(0x03B9);+ break;+ case 0x1F86:+ bufpush(0x1F06);+ bufpush(0x03B9);+ break;+ case 0x1F87:+ bufpush(0x1F07);+ bufpush(0x03B9);+ break;+ case 0x1F88:+ bufpush(0x1F00);+ bufpush(0x03B9);+ break;+ case 0x1F89:+ bufpush(0x1F01);+ bufpush(0x03B9);+ break;+ case 0x1F8A:+ bufpush(0x1F02);+ bufpush(0x03B9);+ break;+ case 0x1F8B:+ bufpush(0x1F03);+ bufpush(0x03B9);+ break;+ case 0x1F8C:+ bufpush(0x1F04);+ bufpush(0x03B9);+ break;+ case 0x1F8D:+ bufpush(0x1F05);+ bufpush(0x03B9);+ break;+ case 0x1F8E:+ bufpush(0x1F06);+ bufpush(0x03B9);+ break;+ case 0x1F8F:+ bufpush(0x1F07);+ bufpush(0x03B9);+ break;+ case 0x1F90:+ bufpush(0x1F20);+ bufpush(0x03B9);+ break;+ case 0x1F91:+ bufpush(0x1F21);+ bufpush(0x03B9);+ break;+ case 0x1F92:+ bufpush(0x1F22);+ bufpush(0x03B9);+ break;+ case 0x1F93:+ bufpush(0x1F23);+ bufpush(0x03B9);+ break;+ case 0x1F94:+ bufpush(0x1F24);+ bufpush(0x03B9);+ break;+ case 0x1F95:+ bufpush(0x1F25);+ bufpush(0x03B9);+ break;+ case 0x1F96:+ bufpush(0x1F26);+ bufpush(0x03B9);+ break;+ case 0x1F97:+ bufpush(0x1F27);+ bufpush(0x03B9);+ break;+ case 0x1F98:+ bufpush(0x1F20);+ bufpush(0x03B9);+ break;+ case 0x1F99:+ bufpush(0x1F21);+ bufpush(0x03B9);+ break;+ case 0x1F9A:+ bufpush(0x1F22);+ bufpush(0x03B9);+ break;+ case 0x1F9B:+ bufpush(0x1F23);+ bufpush(0x03B9);+ break;+ case 0x1F9C:+ bufpush(0x1F24);+ bufpush(0x03B9);+ break;+ case 0x1F9D:+ bufpush(0x1F25);+ bufpush(0x03B9);+ break;+ case 0x1F9E:+ bufpush(0x1F26);+ bufpush(0x03B9);+ break;+ case 0x1F9F:+ bufpush(0x1F27);+ bufpush(0x03B9);+ break;+ case 0x1FA0:+ bufpush(0x1F60);+ bufpush(0x03B9);+ break;+ case 0x1FA1:+ bufpush(0x1F61);+ bufpush(0x03B9);+ break;+ case 0x1FA2:+ bufpush(0x1F62);+ bufpush(0x03B9);+ break;+ case 0x1FA3:+ bufpush(0x1F63);+ bufpush(0x03B9);+ break;+ case 0x1FA4:+ bufpush(0x1F64);+ bufpush(0x03B9);+ break;+ case 0x1FA5:+ bufpush(0x1F65);+ bufpush(0x03B9);+ break;+ case 0x1FA6:+ bufpush(0x1F66);+ bufpush(0x03B9);+ break;+ case 0x1FA7:+ bufpush(0x1F67);+ bufpush(0x03B9);+ break;+ case 0x1FA8:+ bufpush(0x1F60);+ bufpush(0x03B9);+ break;+ case 0x1FA9:+ bufpush(0x1F61);+ bufpush(0x03B9);+ break;+ case 0x1FAA:+ bufpush(0x1F62);+ bufpush(0x03B9);+ break;+ case 0x1FAB:+ bufpush(0x1F63);+ bufpush(0x03B9);+ break;+ case 0x1FAC:+ bufpush(0x1F64);+ bufpush(0x03B9);+ break;+ case 0x1FAD:+ bufpush(0x1F65);+ bufpush(0x03B9);+ break;+ case 0x1FAE:+ bufpush(0x1F66);+ bufpush(0x03B9);+ break;+ case 0x1FAF:+ bufpush(0x1F67);+ bufpush(0x03B9);+ break;+ case 0x1FB2:+ bufpush(0x1F70);+ bufpush(0x03B9);+ break;+ case 0x1FB3:+ bufpush(0x03B1);+ bufpush(0x03B9);+ break;+ case 0x1FB4:+ bufpush(0x03AC);+ bufpush(0x03B9);+ break;+ case 0x1FB6:+ bufpush(0x03B1);+ bufpush(0x0342);+ break;+ case 0x1FB7:+ bufpush(0x03B1);+ bufpush(0x0342);+ bufpush(0x03B9);+ break;+ case 0x1FB8:+ bufpush(0x1FB0);+ break;+ case 0x1FB9:+ bufpush(0x1FB1);+ break;+ case 0x1FBA:+ bufpush(0x1F70);+ break;+ case 0x1FBB:+ bufpush(0x1F71);+ break;+ case 0x1FBC:+ bufpush(0x03B1);+ bufpush(0x03B9);+ break;+ case 0x1FBE:+ bufpush(0x03B9);+ break;+ case 0x1FC2:+ bufpush(0x1F74);+ bufpush(0x03B9);+ break;+ case 0x1FC3:+ bufpush(0x03B7);+ bufpush(0x03B9);+ break;+ case 0x1FC4:+ bufpush(0x03AE);+ bufpush(0x03B9);+ break;+ case 0x1FC6:+ bufpush(0x03B7);+ bufpush(0x0342);+ break;+ case 0x1FC7:+ bufpush(0x03B7);+ bufpush(0x0342);+ bufpush(0x03B9);+ break;+ case 0x1FC8:+ bufpush(0x1F72);+ break;+ case 0x1FC9:+ bufpush(0x1F73);+ break;+ case 0x1FCA:+ bufpush(0x1F74);+ break;+ case 0x1FCB:+ bufpush(0x1F75);+ break;+ case 0x1FCC:+ bufpush(0x03B7);+ bufpush(0x03B9);+ break;+ case 0x1FD2:+ bufpush(0x03B9);+ bufpush(0x0308);+ bufpush(0x0300);+ break;+ case 0x1FD3:+ bufpush(0x03B9);+ bufpush(0x0308);+ bufpush(0x0301);+ break;+ case 0x1FD6:+ bufpush(0x03B9);+ bufpush(0x0342);+ break;+ case 0x1FD7:+ bufpush(0x03B9);+ bufpush(0x0308);+ bufpush(0x0342);+ break;+ case 0x1FD8:+ bufpush(0x1FD0);+ break;+ case 0x1FD9:+ bufpush(0x1FD1);+ break;+ case 0x1FDA:+ bufpush(0x1F76);+ break;+ case 0x1FDB:+ bufpush(0x1F77);+ break;+ case 0x1FE2:+ bufpush(0x03C5);+ bufpush(0x0308);+ bufpush(0x0300);+ break;+ case 0x1FE3:+ bufpush(0x03C5);+ bufpush(0x0308);+ bufpush(0x0301);+ break;+ case 0x1FE4:+ bufpush(0x03C1);+ bufpush(0x0313);+ break;+ case 0x1FE6:+ bufpush(0x03C5);+ bufpush(0x0342);+ break;+ case 0x1FE7:+ bufpush(0x03C5);+ bufpush(0x0308);+ bufpush(0x0342);+ break;+ case 0x1FE8:+ bufpush(0x1FE0);+ break;+ case 0x1FE9:+ bufpush(0x1FE1);+ break;+ case 0x1FEA:+ bufpush(0x1F7A);+ break;+ case 0x1FEB:+ bufpush(0x1F7B);+ break;+ case 0x1FEC:+ bufpush(0x1FE5);+ break;+ case 0x1FF2:+ bufpush(0x1F7C);+ bufpush(0x03B9);+ break;+ case 0x1FF3:+ bufpush(0x03C9);+ bufpush(0x03B9);+ break;+ case 0x1FF4:+ bufpush(0x03CE);+ bufpush(0x03B9);+ break;+ case 0x1FF6:+ bufpush(0x03C9);+ bufpush(0x0342);+ break;+ case 0x1FF7:+ bufpush(0x03C9);+ bufpush(0x0342);+ bufpush(0x03B9);+ break;+ case 0x1FF8:+ bufpush(0x1F78);+ break;+ case 0x1FF9:+ bufpush(0x1F79);+ break;+ case 0x1FFA:+ bufpush(0x1F7C);+ break;+ case 0x1FFB:+ bufpush(0x1F7D);+ break;+ case 0x1FFC:+ bufpush(0x03C9);+ bufpush(0x03B9);+ break;+ case 0x2126:+ bufpush(0x03C9);+ break;+ case 0x212A:+ bufpush(0x006B);+ break;+ case 0x212B:+ bufpush(0x00E5);+ break;+ case 0x2160:+ bufpush(0x2170);+ break;+ case 0x2161:+ bufpush(0x2171);+ break;+ case 0x2162:+ bufpush(0x2172);+ break;+ case 0x2163:+ bufpush(0x2173);+ break;+ case 0x2164:+ bufpush(0x2174);+ break;+ case 0x2165:+ bufpush(0x2175);+ break;+ case 0x2166:+ bufpush(0x2176);+ break;+ case 0x2167:+ bufpush(0x2177);+ break;+ case 0x2168:+ bufpush(0x2178);+ break;+ case 0x2169:+ bufpush(0x2179);+ break;+ case 0x216A:+ bufpush(0x217A);+ break;+ case 0x216B:+ bufpush(0x217B);+ break;+ case 0x216C:+ bufpush(0x217C);+ break;+ case 0x216D:+ bufpush(0x217D);+ break;+ case 0x216E:+ bufpush(0x217E);+ break;+ case 0x216F:+ bufpush(0x217F);+ break;+ case 0x24B6:+ bufpush(0x24D0);+ break;+ case 0x24B7:+ bufpush(0x24D1);+ break;+ case 0x24B8:+ bufpush(0x24D2);+ break;+ case 0x24B9:+ bufpush(0x24D3);+ break;+ case 0x24BA:+ bufpush(0x24D4);+ break;+ case 0x24BB:+ bufpush(0x24D5);+ break;+ case 0x24BC:+ bufpush(0x24D6);+ break;+ case 0x24BD:+ bufpush(0x24D7);+ break;+ case 0x24BE:+ bufpush(0x24D8);+ break;+ case 0x24BF:+ bufpush(0x24D9);+ break;+ case 0x24C0:+ bufpush(0x24DA);+ break;+ case 0x24C1:+ bufpush(0x24DB);+ break;+ case 0x24C2:+ bufpush(0x24DC);+ break;+ case 0x24C3:+ bufpush(0x24DD);+ break;+ case 0x24C4:+ bufpush(0x24DE);+ break;+ case 0x24C5:+ bufpush(0x24DF);+ break;+ case 0x24C6:+ bufpush(0x24E0);+ break;+ case 0x24C7:+ bufpush(0x24E1);+ break;+ case 0x24C8:+ bufpush(0x24E2);+ break;+ case 0x24C9:+ bufpush(0x24E3);+ break;+ case 0x24CA:+ bufpush(0x24E4);+ break;+ case 0x24CB:+ bufpush(0x24E5);+ break;+ case 0x24CC:+ bufpush(0x24E6);+ break;+ case 0x24CD:+ bufpush(0x24E7);+ break;+ case 0x24CE:+ bufpush(0x24E8);+ break;+ case 0x24CF:+ bufpush(0x24E9);+ break;+ case 0xFB00:+ bufpush(0x0066);+ bufpush(0x0066);+ break;+ case 0xFB01:+ bufpush(0x0066);+ bufpush(0x0069);+ break;+ case 0xFB02:+ bufpush(0x0066);+ bufpush(0x006C);+ break;+ case 0xFB03:+ bufpush(0x0066);+ bufpush(0x0066);+ bufpush(0x0069);+ break;+ case 0xFB04:+ bufpush(0x0066);+ bufpush(0x0066);+ bufpush(0x006C);+ break;+ case 0xFB05:+ bufpush(0x0073);+ bufpush(0x0074);+ break;+ case 0xFB06:+ bufpush(0x0073);+ bufpush(0x0074);+ break;+ case 0xFB13:+ bufpush(0x0574);+ bufpush(0x0576);+ break;+ case 0xFB14:+ bufpush(0x0574);+ bufpush(0x0565);+ break;+ case 0xFB15:+ bufpush(0x0574);+ bufpush(0x056B);+ break;+ case 0xFB16:+ bufpush(0x057E);+ bufpush(0x0576);+ break;+ case 0xFB17:+ bufpush(0x0574);+ bufpush(0x056D);+ break;+ case 0xFF21:+ bufpush(0xFF41);+ break;+ case 0xFF22:+ bufpush(0xFF42);+ break;+ case 0xFF23:+ bufpush(0xFF43);+ break;+ case 0xFF24:+ bufpush(0xFF44);+ break;+ case 0xFF25:+ bufpush(0xFF45);+ break;+ case 0xFF26:+ bufpush(0xFF46);+ break;+ case 0xFF27:+ bufpush(0xFF47);+ break;+ case 0xFF28:+ bufpush(0xFF48);+ break;+ case 0xFF29:+ bufpush(0xFF49);+ break;+ case 0xFF2A:+ bufpush(0xFF4A);+ break;+ case 0xFF2B:+ bufpush(0xFF4B);+ break;+ case 0xFF2C:+ bufpush(0xFF4C);+ break;+ case 0xFF2D:+ bufpush(0xFF4D);+ break;+ case 0xFF2E:+ bufpush(0xFF4E);+ break;+ case 0xFF2F:+ bufpush(0xFF4F);+ break;+ case 0xFF30:+ bufpush(0xFF50);+ break;+ case 0xFF31:+ bufpush(0xFF51);+ break;+ case 0xFF32:+ bufpush(0xFF52);+ break;+ case 0xFF33:+ bufpush(0xFF53);+ break;+ case 0xFF34:+ bufpush(0xFF54);+ break;+ case 0xFF35:+ bufpush(0xFF55);+ break;+ case 0xFF36:+ bufpush(0xFF56);+ break;+ case 0xFF37:+ bufpush(0xFF57);+ break;+ case 0xFF38:+ bufpush(0xFF58);+ break;+ case 0xFF39:+ bufpush(0xFF59);+ break;+ case 0xFF3A:+ bufpush(0xFF5A);+ break;+ case 0x10400:+ bufpush(0x10428);+ break;+ case 0x10401:+ bufpush(0x10429);+ break;+ case 0x10402:+ bufpush(0x1042A);+ break;+ case 0x10403:+ bufpush(0x1042B);+ break;+ case 0x10404:+ bufpush(0x1042C);+ break;+ case 0x10405:+ bufpush(0x1042D);+ break;+ case 0x10406:+ bufpush(0x1042E);+ break;+ case 0x10407:+ bufpush(0x1042F);+ break;+ case 0x10408:+ bufpush(0x10430);+ break;+ case 0x10409:+ bufpush(0x10431);+ break;+ case 0x1040A:+ bufpush(0x10432);+ break;+ case 0x1040B:+ bufpush(0x10433);+ break;+ case 0x1040C:+ bufpush(0x10434);+ break;+ case 0x1040D:+ bufpush(0x10435);+ break;+ case 0x1040E:+ bufpush(0x10436);+ break;+ case 0x1040F:+ bufpush(0x10437);+ break;+ case 0x10410:+ bufpush(0x10438);+ break;+ case 0x10411:+ bufpush(0x10439);+ break;+ case 0x10412:+ bufpush(0x1043A);+ break;+ case 0x10413:+ bufpush(0x1043B);+ break;+ case 0x10414:+ bufpush(0x1043C);+ break;+ case 0x10415:+ bufpush(0x1043D);+ break;+ case 0x10416:+ bufpush(0x1043E);+ break;+ case 0x10417:+ bufpush(0x1043F);+ break;+ case 0x10418:+ bufpush(0x10440);+ break;+ case 0x10419:+ bufpush(0x10441);+ break;+ case 0x1041A:+ bufpush(0x10442);+ break;+ case 0x1041B:+ bufpush(0x10443);+ break;+ case 0x1041C:+ bufpush(0x10444);+ break;+ case 0x1041D:+ bufpush(0x10445);+ break;+ case 0x1041E:+ bufpush(0x10446);+ break;+ case 0x1041F:+ bufpush(0x10447);+ break;+ case 0x10420:+ bufpush(0x10448);+ break;+ case 0x10421:+ bufpush(0x10449);+ break;+ case 0x10422:+ bufpush(0x1044A);+ break;+ case 0x10423:+ bufpush(0x1044B);+ break;+ case 0x10424:+ bufpush(0x1044C);+ break;+ case 0x10425:+ bufpush(0x1044D);+ break;+ default:+ bufpush(c);+ }
+ cmark/chunk.h view
@@ -0,0 +1,110 @@+#ifndef CMARK_CHUNK_H+#define CMARK_CHUNK_H++#include <string.h>+#include <stdlib.h>+#include <assert.h>+#include "cmark_ctype.h"+#include "buffer.h"++typedef struct {+ unsigned char *data;+ int len;+ int alloc; // also implies a NULL-terminated string+} cmark_chunk;++static inline void cmark_chunk_free(cmark_chunk *c)+{+ if (c->alloc)+ free(c->data);++ c->data = NULL;+ c->alloc = 0;+ c->len = 0;+}++static inline void cmark_chunk_ltrim(cmark_chunk *c)+{+ assert(!c->alloc);++ while (c->len && cmark_isspace(c->data[0])) {+ c->data++;+ c->len--;+ }+}++static inline void cmark_chunk_rtrim(cmark_chunk *c)+{+ while (c->len > 0) {+ if (!cmark_isspace(c->data[c->len - 1]))+ break;++ c->len--;+ }+}++static inline void cmark_chunk_trim(cmark_chunk *c)+{+ cmark_chunk_ltrim(c);+ cmark_chunk_rtrim(c);+}++static inline int cmark_chunk_strchr(cmark_chunk *ch, int c, int offset)+{+ const unsigned char *p = (unsigned char *)memchr(ch->data + offset, c, ch->len - offset);+ return p ? (int)(p - ch->data) : ch->len;+}++static inline const char *cmark_chunk_to_cstr(cmark_chunk *c)+{+ unsigned char *str;++ if (c->alloc) {+ return (char *)c->data;+ }+ str = (unsigned char *)malloc(c->len + 1);+ if(str != NULL) {+ memcpy(str, c->data, c->len);+ str[c->len] = 0;+ }+ c->data = str;+ c->alloc = 1;++ return (char *)str;+}++static inline void cmark_chunk_set_cstr(cmark_chunk *c, const char *str)+{+ if (c->alloc) {+ free(c->data);+ }+ c->len = strlen(str);+ c->data = (unsigned char *)malloc(c->len + 1);+ c->alloc = 1;+ memcpy(c->data, str, c->len + 1);+}++static inline cmark_chunk cmark_chunk_literal(const char *data)+{+ cmark_chunk c = {(unsigned char *)data, data ? strlen(data) : 0, 0};+ return c;+}++static inline cmark_chunk cmark_chunk_dup(const cmark_chunk *ch, int pos, int len)+{+ cmark_chunk c = {ch->data + pos, len, 0};+ return c;+}++static inline cmark_chunk cmark_chunk_buf_detach(cmark_strbuf *buf)+{+ cmark_chunk c;++ c.len = buf->size;+ c.data = cmark_strbuf_detach(buf);+ c.alloc = 1;++ return c;+}++#endif
+ cmark/cmark.c view
@@ -0,0 +1,24 @@+#include <stdlib.h>+#include <assert.h>+#include <stdio.h>+#include "node.h"+#include "houdini.h"+#include "cmark.h"+#include "buffer.h"++const int cmark_version = CMARK_VERSION;+const char cmark_version_string[] = CMARK_VERSION_STRING;++char *cmark_markdown_to_html(const char *text, int len, int options)+{+ cmark_node *doc;+ char *result;++ doc = cmark_parse_document(text, len, options);++ result = cmark_render_html(doc, options);+ cmark_node_free(doc);++ return result;+}+
+ cmark/cmark.h view
@@ -0,0 +1,561 @@+#ifndef CMARK_H+#define CMARK_H++#include <stdio.h>+#include <cmark_export.h>+#include <cmark_version.h>++#ifdef __cplusplus+extern "C" {+#endif++/** # NAME+ *+ * **cmark** - CommonMark parsing, manipulating, and rendering+ */++/** # DESCRIPTION+ *+ * ## Simple Interface+ */++/** Convert 'text' (assumed to be a UTF-8 encoded string with length+ * 'len' from CommonMark Markdown to HTML, returning a null-terminated,+ * UTF-8-encoded string.+ */+CMARK_EXPORT+char *cmark_markdown_to_html(const char *text, int len, int options);++/** ## Node Structure+ */++typedef enum {+ /* Error status */+ CMARK_NODE_NONE,++ /* Block */+ CMARK_NODE_DOCUMENT,+ CMARK_NODE_BLOCK_QUOTE,+ CMARK_NODE_LIST,+ CMARK_NODE_ITEM,+ CMARK_NODE_CODE_BLOCK,+ CMARK_NODE_HTML,+ CMARK_NODE_PARAGRAPH,+ CMARK_NODE_HEADER,+ CMARK_NODE_HRULE,++ CMARK_NODE_FIRST_BLOCK = CMARK_NODE_DOCUMENT,+ CMARK_NODE_LAST_BLOCK = CMARK_NODE_HRULE,++ /* Inline */+ CMARK_NODE_TEXT,+ CMARK_NODE_SOFTBREAK,+ CMARK_NODE_LINEBREAK,+ CMARK_NODE_CODE,+ CMARK_NODE_INLINE_HTML,+ CMARK_NODE_EMPH,+ CMARK_NODE_STRONG,+ CMARK_NODE_LINK,+ CMARK_NODE_IMAGE,++ CMARK_NODE_FIRST_INLINE = CMARK_NODE_TEXT,+ CMARK_NODE_LAST_INLINE = CMARK_NODE_IMAGE,+} cmark_node_type;+++typedef enum {+ CMARK_NO_LIST,+ CMARK_BULLET_LIST,+ CMARK_ORDERED_LIST+} cmark_list_type;++typedef enum {+ CMARK_NO_DELIM,+ CMARK_PERIOD_DELIM,+ CMARK_PAREN_DELIM+} cmark_delim_type;++typedef struct cmark_node cmark_node;+typedef struct cmark_parser cmark_parser;+typedef struct cmark_iter cmark_iter;++typedef enum {+ CMARK_EVENT_NONE,+ CMARK_EVENT_DONE,+ CMARK_EVENT_ENTER,+ CMARK_EVENT_EXIT+} cmark_event_type;++/**+ * ## Creating and Destroying Nodes+ */++/** Creates a new node of type 'type'. Note that the node may have+ * other required properties, which it is the caller's responsibility+ * to assign.+ */+CMARK_EXPORT cmark_node*+cmark_node_new(cmark_node_type type);++/** Frees the memory allocated for a node.+ */+CMARK_EXPORT void+cmark_node_free(cmark_node *node);++/**+ * ## Tree Traversal+ */++/** 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);++/** 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);++/** Returns the parent of 'node', or NULL if there is none.+ */+CMARK_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);++/** Returns the last child of 'node', or NULL if 'node' has no children.+ */+CMARK_EXPORT cmark_node*+cmark_node_last_child(cmark_node *node);++/**+ * ## Iterator+ *+ * An iterator will walk through a tree of nodes, starting from a root+ * node, returning one node at a time, together with information about+ * whether the node is being entered or exited. The iterator will+ * first descend to a child node, if there is one. When there is no+ * child, the iterator will go to the next sibling. When there is no+ * next sibling, the iterator will return to the parent (but with+ * a 'cmark_event_type' of `CMARK_EVENT_EXIT`). The iterator will+ * return `CMARK_EVENT_DONE` when it reaches the root node again.+ * One natural application is an HTML renderer, where an `ENTER` event+ * outputs an open tag and an `EXIT` event outputs a close tag.+ * An iterator might also be used to transform an AST in some systematic+ * way, for example, turning all level-3 headers into regular paragraphs.+ *+ * void+ * usage_example(cmark_node *root) {+ * cmark_event_type ev_type;+ * cmark_iter *iter = cmark_iter_new(root);+ *+ * while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ * cmark_node *cur = cmark_iter_get_node(iter);+ * // Do something with `cur` and `ev_type`+ * }+ *+ * cmark_iter_free(iter);+ * }+ *+ * Iterators will never return `EXIT` events for leaf nodes, which are nodes+ * of type:+ *+ * * CMARK_NODE_HTML+ * * CMARK_NODE_HRULE+ * * CMARK_NODE_CODE_BLOCK+ * * CMARK_NODE_TEXT+ * * CMARK_NODE_SOFTBREAK+ * * CMARK_NODE_LINEBREAK+ * * CMARK_NODE_CODE+ * * CMARK_NODE_INLINE_HTML+ *+ * Nodes must only be modified after an `EXIT` event, or an `ENTER` event for+ * leaf nodes.+ */++/** Creates a new iterator starting at 'root'. The current node and event+ * type are undefined until `cmark_iter_next` is called for the first time.+ */+CMARK_EXPORT+cmark_iter*+cmark_iter_new(cmark_node *root);++/** Frees the memory allocated for an iterator.+ */+CMARK_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_event_type+cmark_iter_next(cmark_iter *iter);++/** Returns the current node.+ */+CMARK_EXPORT+cmark_node*+cmark_iter_get_node(cmark_iter *iter);++/** Returns the current event type.+ */+CMARK_EXPORT+cmark_event_type+cmark_iter_get_event_type(cmark_iter *iter);++/** Returns the root node.+ */+CMARK_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+void+cmark_iter_reset(cmark_iter *iter, cmark_node *current,+ cmark_event_type event_type);++/**+ * ## Accessors+ */++/** Returns the user data of 'node'.+ */+CMARK_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);++/** Returns the type of 'node', or `CMARK_NODE_NONE` on error.+ */+CMARK_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 `"<unknown>"`.+ */+CMARK_EXPORT+const char*+cmark_node_get_type_string(cmark_node *node);++/** Returns the string contents of 'node', or NULL if none.+ */+CMARK_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);++/** Returns the header level of 'node', or 0 if 'node' is not a header.+ */+CMARK_EXPORT int+cmark_node_get_header_level(cmark_node *node);++/** Sets the header level of 'node', returning 1 on success and 0 on error.+ */+CMARK_EXPORT int+cmark_node_set_header_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);++/** 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_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);++/** 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_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);++/** 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);++/** Returns 1 if 'node' is a tight list, 0 otherwise.+ */+CMARK_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);++/** Returns the info string from a fenced code block, or NULL if none.+ */+CMARK_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);++/** Gets the URL of a link or image 'node', or NULL if none.+ */+CMARK_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);++/** Gets the title of a link or image 'node', or NULL if none.+ */+CMARK_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);++/** Returns the line on which 'node' begins.+ */+CMARK_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);++/** Returns the line on which 'node' ends.+ */+CMARK_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);++/**+ * ## Tree Manipulation+ */++/** 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);++/** Inserts 'sibling' before 'node'. Returns 1 on success, 0 on failure.+ */+CMARK_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);++/** 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);++/** 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);++/** Consolidates adjacent text nodes.+ */+CMARK_EXPORT void+cmark_consolidate_text_nodes(cmark_node *root);++/**+ * ## Parsing+ *+ * Simple interface:+ *+ * cmark_node *document = cmark_parse_document("Hello *world*", 12,+ * CMARK_OPT_DEFAULT);+ *+ * Streaming interface:+ *+ * cmark_parser *parser = cmark_parser_new(CMARK_OPT_DEFAULT);+ * FILE *fp = fopen("myfile.md", "r");+ * while ((bytes = fread(buffer, 1, sizeof(buffer), fp)) > 0) {+ * cmark_parser_feed(parser, buffer, bytes);+ * if (bytes < sizeof(buffer)) {+ * break;+ * }+ * }+ * document = cmark_parser_finish(parser);+ * cmark_parser_free(parser);+ */++/** Creates a new parser object.+ */+CMARK_EXPORT+cmark_parser *cmark_parser_new(int options);++/** Frees memory allocated for a parser object.+ */+CMARK_EXPORT+void cmark_parser_free(cmark_parser *parser);++/** Feeds a string of length 'len' to 'parser'.+ */+CMARK_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_node *cmark_parser_finish(cmark_parser *parser);++/** Parse a CommonMark document in 'buffer' of length 'len'.+ * Returns a pointer to a tree of nodes.+ */+CMARK_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.+ */+CMARK_EXPORT+cmark_node *cmark_parse_file(FILE *f, int options);++/**+ * ## Rendering+ */++/** Render a 'node' tree as XML.+ */+CMARK_EXPORT+char *cmark_render_xml(cmark_node *root, int options);++/** Render a 'node' tree as an HTML fragment. It is up to the user+ * to add an appropriate header and footer.+ */+CMARK_EXPORT+char *cmark_render_html(cmark_node *root, int options);++/** Render a 'node' tree as a groff man page, without the header.+ */+CMARK_EXPORT+char *cmark_render_man(cmark_node *root, int options);++/** Default writer options.+ */+#define CMARK_OPT_DEFAULT 0++/** Include a `data-sourcepos` attribute on all block elements.+ */+#define CMARK_OPT_SOURCEPOS 1++/** Render `softbreak` elements as hard line breaks.+ */+#define CMARK_OPT_HARDBREAKS 2++/** Normalize tree by consolidating adjacent text nodes.+ */+#define CMARK_OPT_NORMALIZE 4++/** Convert straight quotes to curly, --- to em dashes, -- to en dashes.+ */+#define CMARK_OPT_SMART 8++/**+ * ## Version information+ */++/** The library version as integer for runtime checks. Also available as+ * macro CMARK_VERSION for compile time checks.+ *+ * * Bits 16-23 contain the major version.+ * * Bits 8-15 contain the minor version.+ * * Bits 0-7 contain the patchlevel.+ *+ * In hexadecimal format, the number 0x010203 represents version 1.2.3.+ */+CMARK_EXPORT+extern const int cmark_version;++/** The library version string for runtime checks. Also available as+ * macro CMARK_VERSION_STRING for compile time checks.+ */+CMARK_EXPORT+extern const char cmark_version_string[];++/** # AUTHORS+ *+ * John MacFarlane, Vicent Marti, Kārlis Gaņģis, Nick Wellnhofer.+ */++#ifndef CMARK_NO_SHORT_NAMES+#define NODE_DOCUMENT CMARK_NODE_DOCUMENT+#define NODE_BLOCK_QUOTE CMARK_NODE_BLOCK_QUOTE+#define NODE_LIST CMARK_NODE_LIST+#define NODE_ITEM CMARK_NODE_ITEM+#define NODE_CODE_BLOCK CMARK_NODE_CODE_BLOCK+#define NODE_HTML CMARK_NODE_HTML+#define NODE_PARAGRAPH CMARK_NODE_PARAGRAPH+#define NODE_HEADER CMARK_NODE_HEADER+#define NODE_HRULE CMARK_NODE_HRULE+#define NODE_TEXT CMARK_NODE_TEXT+#define NODE_SOFTBREAK CMARK_NODE_SOFTBREAK+#define NODE_LINEBREAK CMARK_NODE_LINEBREAK+#define NODE_CODE CMARK_NODE_CODE+#define NODE_INLINE_HTML CMARK_NODE_INLINE_HTML+#define NODE_EMPH CMARK_NODE_EMPH+#define NODE_STRONG CMARK_NODE_STRONG+#define NODE_LINK CMARK_NODE_LINK+#define NODE_IMAGE CMARK_NODE_IMAGE+#define NODE_LINK_LABEL CMARK_NODE_LINK_LABEL+#define BULLET_LIST CMARK_BULLET_LIST+#define ORDERED_LIST CMARK_ORDERED_LIST+#define PERIOD_DELIM CMARK_PERIOD_DELIM+#define PAREN_DELIM CMARK_PAREN_DELIM+#endif++#ifdef __cplusplus+}+#endif++#endif
+ cmark/cmark_ctype.c view
@@ -0,0 +1,53 @@+#include <stdint.h>++#include "cmark_ctype.h"++/** 1 = space, 2 = punct, 3 = digit, 4 = alpha, 0 = other+ */+static const int8_t cmark_ctype_class[256] = {+ /* 0 1 2 3 4 5 6 7 8 9 a b c d e f */+ /* 0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0,+ /* 1 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* 2 */ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,+ /* 3 */ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2,+ /* 4 */ 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,+ /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2,+ /* 6 */ 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,+ /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 0,+ /* 8 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* 9 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* a */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* b */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* c */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* d */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* e */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ /* f */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0+};++/**+ * Returns 1 if c is a "whitespace" character as defined by the spec.+ */+int cmark_isspace(char c)+{+ return cmark_ctype_class[(int8_t)c] == 1;+}++/**+ * Returns 1 if c is an ascii punctuation character.+ */+int cmark_ispunct(char c)+{+ return cmark_ctype_class[(int8_t)c] == 2;+}++int cmark_isalnum(char c)+{+ int8_t result;+ result = cmark_ctype_class[(int8_t)c];+ return (result == 3 || result == 4);+}++int cmark_isdigit(char c)+{+ return cmark_ctype_class[(int8_t)c] == 3;+}
+ cmark/cmark_ctype.h view
@@ -0,0 +1,24 @@+#ifndef CMARK_CMARK_CTYPE_H+#define CMARK_CMARK_CTYPE_H++#ifdef __cplusplus+extern "C" {+#endif++/** Locale-independent versions of functions from ctype.h.+ * We want cmark to behave the same no matter what the system locale.+ */++int cmark_isspace(char c);++int cmark_ispunct(char c);++int cmark_isalnum(char c);++int cmark_isdigit(char c);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/cmark_export.h view
@@ -0,0 +1,35 @@++#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_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__))+# define CMARK_DEPRECATED_EXPORT CMARK_EXPORT __attribute__ ((__deprecated__))+# define CMARK_DEPRECATED_NO_EXPORT CMARK_NO_EXPORT __attribute__ ((__deprecated__))+#endif++#define DEFINE_NO_DEPRECATED 0+#if DEFINE_NO_DEPRECATED+# define CMARK_NO_DEPRECATED+#endif++#endif
+ cmark/cmark_version.h view
@@ -0,0 +1,7 @@+#ifndef CMARK_VERSION_H+#define CMARK_VERSION_H++#define CMARK_VERSION ((0 << 16) | (18 << 8) | 1)+#define CMARK_VERSION_STRING "0.18.1"++#endif
+ cmark/config.h view
@@ -0,0 +1,23 @@+#define HAVE_STDBOOL_H++#ifdef HAVE_STDBOOL_H+ #include <stdbool.h>+#elif !defined(__cplusplus)+ typedef char bool;+#endif++/* #undef HAVE___BUILTIN_EXPECT */++#define HAVE___ATTRIBUTE__++#ifdef HAVE___ATTRIBUTE__+ #define CMARK_ATTRIBUTE(list) __attribute__ (list)+#else+ #define CMARK_ATTRIBUTE(list)+#endif++#define HAVE_VA_COPY++#ifndef HAVE_VA_COPY+ #define va_copy(dest, src) ((dest) = (src))+#endif
+ cmark/debug.h view
@@ -0,0 +1,36 @@+#ifndef CMARK_DEBUG_H+#define CMARK_DEBUG_H+#include <stdio.h>+#include <errno.h>+#include <string.h>++#ifdef NDEBUG+#define debug(M, ...)+#else+#define debug(M, ...) \+ fprintf(stderr, "DEBUG %s:%d: " M "\n", __FILE__, __LINE__, ##__VA_ARGS__)+#endif++#define clean_errno() (errno == 0 ? "None" : strerror(errno))++#define log_err(M, ...) \+ fprintf(stderr, "[ERROR] (%s:%d: errno: %s) " M "\n", __FILE__, __LINE__, \+ clean_errno(), ##__VA_ARGS__)++#define log_warn(M, ...) \+ fprintf(stderr, "[WARN] (%s:%d: errno: %s) " M "\n", __FILE__, __LINE__, \+ clean_errno(), ##__VA_ARGS__)++#define log_info(M, ...) fprintf(stderr, "[INFO] (%s:%d) " M "\n", __FILE__, \+ __LINE__, ##__VA_ARGS__)++#define check(A, M, ...) \+ if(!(A)) { log_err(M, ##__VA_ARGS__); errno=0; goto error; }++#define sentinel(M, ...) \+ { log_err(M, ##__VA_ARGS__); errno=0; goto error; }++#define check_debug(A, M, ...) \+ if(!(A)) { debug(M, ##__VA_ARGS__); errno=0; goto error; }++#endif
+ cmark/houdini.h view
@@ -0,0 +1,52 @@+#ifndef CMARK_HOUDINI_H+#define CMARK_HOUDINI_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include "config.h"+#include "buffer.h"++#ifdef HAVE___BUILTIN_EXPECT+# define likely(x) __builtin_expect((x),1)+# define unlikely(x) __builtin_expect((x),0)+#else+# define likely(x) (x)+# define unlikely(x) (x)+#endif++#ifdef HOUDINI_USE_LOCALE+# define _isxdigit(c) isxdigit(c)+# define _isdigit(c) isdigit(c)+#else+/*+ * Helper _isdigit methods -- do not trust the current locale+ * */+# define _isxdigit(c) (strchr("0123456789ABCDEFabcdef", (c)) != NULL)+# define _isdigit(c) ((c) >= '0' && (c) <= '9')+#endif++#define HOUDINI_ESCAPED_SIZE(x) (((x) * 12) / 10)+#define HOUDINI_UNESCAPED_SIZE(x) (x)++extern size_t houdini_unescape_ent(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_html(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_html0(cmark_strbuf *ob, const uint8_t *src, size_t size, int secure);+extern int houdini_unescape_html(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern void houdini_unescape_html_f(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_xml(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_uri(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_url(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_href(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_unescape_uri(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_unescape_url(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_escape_js(cmark_strbuf *ob, const uint8_t *src, size_t size);+extern int houdini_unescape_js(cmark_strbuf *ob, const uint8_t *src, size_t size);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/houdini_href_e.c view
@@ -0,0 +1,107 @@+#include <assert.h>+#include <stdio.h>+#include <string.h>++#include "houdini.h"++/*+ * The following characters will not be escaped:+ *+ * -_.+!*'(),%#@?=;:/,+&$ alphanum+ *+ * Note that this character set is the addition of:+ *+ * - The characters which are safe to be in an URL+ * - The characters which are *not* safe to be in+ * an URL because they are RESERVED characters.+ *+ * We asume (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.+ *+ * There are two exceptions: the chacters & (amp)+ * and ' (single quote) do not appear in the table.+ * They are meant to appear in the URL as components,+ * yet they require special HTML-entity escaping+ * to generate valid HTML markup.+ *+ * All other characters will be escaped to %XX.+ *+ */+static const char HREF_SAFE[] = {+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,+ 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,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+};++int+houdini_escape_href(cmark_strbuf *ob, const uint8_t *src, size_t size)+{+ static const uint8_t hex_chars[] = "0123456789ABCDEF";+ size_t i = 0, org;+ uint8_t hex_str[3];++ hex_str[0] = '%';++ while (i < size) {+ org = i;+ while (i < size && HREF_SAFE[src[i]] != 0)+ i++;++ if (likely(i > org))+ cmark_strbuf_put(ob, src + org, i - org);++ /* escaping */+ if (i >= size)+ break;++ switch (src[i]) {+ /* amp appears all the time in URLs, but needs+ * HTML-entity escaping to be inside an href */+ case '&':+ cmark_strbuf_puts(ob, "&");+ break;++ /* the single quote is a valid URL character+ * according to the standard; it needs HTML+ * entity escaping too */+ case '\'':+ cmark_strbuf_puts(ob, "'");+ break;++ /* the space can be escaped to %20 or a plus+ * sign. we're going with the generic escape+ * for now. the plus thing is more commonly seen+ * when building GET strings */+#if 0+ case ' ':+ cmark_strbuf_putc(ob, '+');+ break;+#endif++ /* every other character goes with a %XX escaping */+ default:+ hex_str[1] = hex_chars[(src[i] >> 4) & 0xF];+ hex_str[2] = hex_chars[src[i] & 0xF];+ cmark_strbuf_put(ob, hex_str, 3);+ }++ i++;+ }++ return 1;+}
+ cmark/houdini_html_e.c view
@@ -0,0 +1,81 @@+#include <assert.h>+#include <stdio.h>+#include <string.h>++#include "houdini.h"++/**+ * According to the OWASP rules:+ *+ * & --> &+ * < --> <+ * > --> >+ * " --> "+ * ' --> ' ' is not recommended+ * / --> / forward slash is included as it helps end an HTML entity+ *+ */+static const char HTML_ESCAPE_TABLE[] = {+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 1, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 4,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+};++static const char *HTML_ESCAPES[] = {+ "",+ """,+ "&",+ "'",+ "/",+ "<",+ ">"+};++int+houdini_escape_html0(cmark_strbuf *ob, const uint8_t *src, size_t size, int secure)+{+ size_t i = 0, org, esc = 0;++ while (i < size) {+ org = i;+ while (i < size && (esc = HTML_ESCAPE_TABLE[src[i]]) == 0)+ i++;++ if (i > org)+ cmark_strbuf_put(ob, src + org, i - org);++ /* escaping */+ if (unlikely(i >= size))+ break;++ /* The forward slash is only escaped in secure mode */+ if ((src[i] == '/' || src[i] == '\'') && !secure) {+ cmark_strbuf_putc(ob, src[i]);+ } else {+ cmark_strbuf_puts(ob, HTML_ESCAPES[esc]);+ }++ i++;+ }++ return 1;+}++int+houdini_escape_html(cmark_strbuf *ob, const uint8_t *src, size_t size)+{+ return houdini_escape_html0(ob, src, size, 1);+}
+ cmark/houdini_html_u.c view
@@ -0,0 +1,116 @@+#include <assert.h>+#include <stdio.h>+#include <string.h>++#include "buffer.h"+#include "houdini.h"+#include "utf8.h"+#include "html_unescape.h"++size_t+houdini_unescape_ent(cmark_strbuf *ob, const uint8_t *src, size_t size)+{+ size_t i = 0;++ if (size > 3 && src[0] == '#') {+ int codepoint = 0;++ if (_isdigit(src[1])) {+ for (i = 1; i < size && _isdigit(src[i]); ++i) {+ int cp = (codepoint * 10) + (src[i] - '0');++ if (cp < codepoint)+ return 0;++ codepoint = cp;+ }+ }++ else if (src[1] == 'x' || src[1] == 'X') {+ for (i = 2; i < size && _isxdigit(src[i]); ++i) {+ int cp = (codepoint * 16) + ((src[i] | 32) % 39 - 9);++ if (cp < codepoint)+ return 0;++ codepoint = cp;+ }+ }++ if (i < size && src[i] == ';' && codepoint) {+ utf8proc_encode_char(codepoint, ob);+ return i + 1;+ }+ }++ else {+ if (size > MAX_WORD_LENGTH)+ size = MAX_WORD_LENGTH;++ for (i = MIN_WORD_LENGTH; i < size; ++i) {+ if (src[i] == ' ')+ break;++ if (src[i] == ';') {+ const struct html_ent *entity = find_entity((char *)src, i);++ if (entity != NULL) {+ int len = 0;+ while (len < 4 && entity->utf8[len] != '\0') {+ ++len;+ }+ cmark_strbuf_put(ob, entity->utf8, len);+ return i + 1;+ }++ break;+ }+ }+ }++ return 0;+}++int+houdini_unescape_html(cmark_strbuf *ob, const uint8_t *src, size_t size)+{+ size_t i = 0, org, ent;++ while (i < size) {+ org = i;+ while (i < size && src[i] != '&')+ i++;++ if (likely(i > org)) {+ if (unlikely(org == 0)) {+ if (i >= size)+ return 0;++ cmark_strbuf_grow(ob, HOUDINI_UNESCAPED_SIZE(size));+ }++ cmark_strbuf_put(ob, src + org, i - org);+ }++ /* escaping */+ if (i >= size)+ break;++ i++;++ ent = houdini_unescape_ent(ob, src + i, size - i);+ i += ent;++ /* not really an entity */+ if (ent == 0)+ cmark_strbuf_putc(ob, '&');+ }++ return 1;+}++void houdini_unescape_html_f(cmark_strbuf *ob, const uint8_t *src, size_t size)+{+ if (!houdini_unescape_html(ob, src, size))+ cmark_strbuf_put(ob, src, size);+}
+ cmark/html.c view
@@ -0,0 +1,322 @@+#include <stdlib.h>+#include <stdio.h>+#include <string.h>+#include <assert.h>++#include "config.h"+#include "cmark.h"+#include "node.h"+#include "buffer.h"+#include "houdini.h"++// Functions to convert cmark_nodes to HTML strings.++static void escape_html(cmark_strbuf *dest, const unsigned char *source, int length)+{+ if (length < 0)+ length = strlen((char *)source);++ houdini_escape_html0(dest, source, (size_t)length, 0);+}++static void escape_href(cmark_strbuf *dest, const unsigned char *source, int length)+{+ if (length < 0)+ length = strlen((char *)source);++ houdini_escape_href(dest, source, (size_t)length);+}++static inline void cr(cmark_strbuf *html)+{+ if (html->size && html->ptr[html->size - 1] != '\n')+ cmark_strbuf_putc(html, '\n');+}++struct render_state {+ cmark_strbuf* html;+ cmark_node *plain;+};++static void+S_render_sourcepos(cmark_node *node, cmark_strbuf *html, int options)+{+ if (CMARK_OPT_SOURCEPOS & options) {+ cmark_strbuf_printf(html, " data-sourcepos=\"%d:%d-%d:%d\"",+ cmark_node_get_start_line(node),+ cmark_node_get_start_column(node),+ cmark_node_get_end_line(node),+ cmark_node_get_end_column(node));+ }+}++static int+S_render_node(cmark_node *node, cmark_event_type ev_type,+ struct render_state *state, int options)+{+ cmark_node *parent;+ cmark_node *grandparent;+ cmark_strbuf *html = state->html;+ char start_header[] = "<h0";+ char end_header[] = "</h0";+ bool tight;++ bool entering = (ev_type == CMARK_EVENT_ENTER);++ if (state->plain == node) { // back at original node+ state->plain = NULL;+ }++ if (state->plain != NULL) {+ switch(node->type) {+ case CMARK_NODE_TEXT:+ case CMARK_NODE_CODE:+ case CMARK_NODE_INLINE_HTML:+ escape_html(html, node->as.literal.data,+ node->as.literal.len);+ break;++ case CMARK_NODE_LINEBREAK:+ case CMARK_NODE_SOFTBREAK:+ cmark_strbuf_putc(html, ' ');+ break;++ default:+ break;+ }+ return 1;+ }++ switch (node->type) {+ case CMARK_NODE_DOCUMENT:+ break;++ case CMARK_NODE_BLOCK_QUOTE:+ if (entering) {+ cr(html);+ cmark_strbuf_puts(html, "<blockquote");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, ">\n");+ } else {+ cr(html);+ cmark_strbuf_puts(html, "</blockquote>\n");+ }+ break;++ case CMARK_NODE_LIST: {+ cmark_list_type list_type = node->as.list.list_type;+ int start = node->as.list.start;++ if (entering) {+ cr(html);+ if (list_type == CMARK_BULLET_LIST) {+ cmark_strbuf_puts(html, "<ul");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, ">\n");+ } else if (start == 1) {+ cmark_strbuf_puts(html, "<ol");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, ">\n");+ } else {+ cmark_strbuf_printf(html,+ "<ol start=\"%d\"",+ start);+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, ">\n");+ }+ } else {+ cmark_strbuf_puts(html,+ list_type == CMARK_BULLET_LIST ?+ "</ul>\n" : "</ol>\n");+ }+ break;+ }++ case CMARK_NODE_ITEM:+ if (entering) {+ cr(html);+ cmark_strbuf_puts(html, "<li");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_putc(html, '>');+ } else {+ cmark_strbuf_puts(html, "</li>\n");+ }+ break;++ case CMARK_NODE_HEADER:+ if (entering) {+ cr(html);+ start_header[2] = '0' + node->as.header.level;+ cmark_strbuf_puts(html, start_header);+ S_render_sourcepos(node, html, options);+ cmark_strbuf_putc(html, '>');+ } else {+ end_header[3] = '0' + node->as.header.level;+ cmark_strbuf_puts(html, end_header);+ cmark_strbuf_puts(html, ">\n");+ }+ break;++ case CMARK_NODE_CODE_BLOCK:+ cr(html);++ if (!node->as.code.fenced || node->as.code.info.len == 0) {+ cmark_strbuf_puts(html, "<pre");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, "><code>");+ } else {+ int first_tag = 0;+ while (first_tag < node->as.code.info.len &&+ node->as.code.info.data[first_tag] != ' ') {+ first_tag += 1;+ }++ cmark_strbuf_puts(html, "<pre");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, "><code class=\"language-");+ escape_html(html, node->as.code.info.data, first_tag);+ cmark_strbuf_puts(html, "\">");+ }++ escape_html(html, node->as.code.literal.data,+ node->as.code.literal.len);+ cmark_strbuf_puts(html, "</code></pre>\n");+ break;++ case CMARK_NODE_HTML:+ cr(html);+ cmark_strbuf_put(html, node->as.literal.data, node->as.literal.len);+ break;++ case CMARK_NODE_HRULE:+ cr(html);+ cmark_strbuf_puts(html, "<hr");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_puts(html, " />\n");+ break;++ case CMARK_NODE_PARAGRAPH:+ parent = cmark_node_parent(node);+ grandparent = cmark_node_parent(parent);+ if (grandparent != NULL &&+ grandparent->type == CMARK_NODE_LIST) {+ tight = grandparent->as.list.tight;+ } else {+ tight = false;+ }+ if (!tight) {+ if (entering) {+ cr(html);+ cmark_strbuf_puts(html, "<p");+ S_render_sourcepos(node, html, options);+ cmark_strbuf_putc(html, '>');+ } else {+ cmark_strbuf_puts(html, "</p>\n");+ }+ }+ break;++ case CMARK_NODE_TEXT:+ escape_html(html, node->as.literal.data, node->as.literal.len);+ break;++ case CMARK_NODE_LINEBREAK:+ cmark_strbuf_puts(html, "<br />\n");+ break;++ case CMARK_NODE_SOFTBREAK:+ if (options & CMARK_OPT_HARDBREAKS) {+ cmark_strbuf_puts(html, "<br />\n");+ } else {+ cmark_strbuf_putc(html, '\n');+ }+ break;++ case CMARK_NODE_CODE:+ cmark_strbuf_puts(html, "<code>");+ escape_html(html, node->as.literal.data, node->as.literal.len);+ cmark_strbuf_puts(html, "</code>");+ break;++ case CMARK_NODE_INLINE_HTML:+ cmark_strbuf_put(html, node->as.literal.data, node->as.literal.len);+ break;++ case CMARK_NODE_STRONG:+ if (entering) {+ cmark_strbuf_puts(html, "<strong>");+ } else {+ cmark_strbuf_puts(html, "</strong>");+ }+ break;++ case CMARK_NODE_EMPH:+ if (entering) {+ cmark_strbuf_puts(html, "<em>");+ } else {+ cmark_strbuf_puts(html, "</em>");+ }+ break;++ case CMARK_NODE_LINK:+ if (entering) {+ cmark_strbuf_puts(html, "<a href=\"");+ if (node->as.link.url)+ escape_href(html, node->as.link.url, -1);++ if (node->as.link.title) {+ cmark_strbuf_puts(html, "\" title=\"");+ escape_html(html, node->as.link.title, -1);+ }++ cmark_strbuf_puts(html, "\">");+ } else {+ cmark_strbuf_puts(html, "</a>");+ }+ break;++ case CMARK_NODE_IMAGE:+ if (entering) {+ cmark_strbuf_puts(html, "<img src=\"");+ if (node->as.link.url)+ escape_href(html, node->as.link.url, -1);++ cmark_strbuf_puts(html, "\" alt=\"");+ state->plain = node;+ } else {+ if (node->as.link.title) {+ cmark_strbuf_puts(html, "\" title=\"");+ escape_html(html, node->as.link.title, -1);+ }++ cmark_strbuf_puts(html, "\" />");+ }+ break;++ default:+ assert(false);+ break;+ }++ // cmark_strbuf_putc(html, 'x');+ return 1;+}++char *cmark_render_html(cmark_node *root, int options)+{+ char *result;+ cmark_strbuf html = GH_BUF_INIT;+ cmark_event_type ev_type;+ cmark_node *cur;+ struct render_state state = { &html, NULL };+ cmark_iter *iter = cmark_iter_new(root);++ while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ cur = cmark_iter_get_node(iter);+ S_render_node(cur, ev_type, &state, options);+ }+ result = (char *)cmark_strbuf_detach(&html);++ cmark_iter_free(iter);+ return result;+}
+ cmark/html_unescape.h view
@@ -0,0 +1,13375 @@+/* ANSI-C code produced by gperf version 3.0.3 */+/* Command-line: /Library/Developer/CommandLineTools/usr/bin/gperf -L ANSI-C -I -t -N find_entity -H hash_entity -K entity -C -l -F ',{0}' --null-strings -m5 -P -Q entity_pool src/html_unescape.gperf */+/* Computed positions: -k'1-7,10,12,$' */++#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \+ && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \+ && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \+ && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \+ && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \+ && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \+ && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \+ && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \+ && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \+ && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \+ && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \+ && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \+ && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \+ && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \+ && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \+ && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \+ && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \+ && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \+ && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \+ && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \+ && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \+ && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))+/* The character set is not based on ISO-646. */+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."+#endif++#line 1 "src/html_unescape.gperf"+struct html_ent {+ int entity;+ unsigned char utf8[4];+};+#include <string.h>+#include <stddef.h>++#define TOTAL_KEYWORDS 2125+#define MIN_WORD_LENGTH 2+#define MAX_WORD_LENGTH 31+#define MIN_HASH_VALUE 39+#define MAX_HASH_VALUE 16000+/* maximum key range = 15962, duplicates = 0 */++#ifdef __GNUC__+__inline+#else+#ifdef __cplusplus+inline+#endif+#endif+static unsigned int+hash_entity (register const char *str, register unsigned int len)+{+ static const unsigned short asso_values[] =+ {+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 2,+ 3, 7, 2, 4, 8, 16001, 10, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 1890, 1538, 220, 165, 1045,+ 535, 1971, 1187, 1262, 35, 126, 201, 133, 350, 1487,+ 1965, 3, 478, 134, 8, 147, 73, 41, 23, 212,+ 9, 16001, 2, 16001, 2, 16001, 16001, 4154, 29, 3168,+ 429, 10, 146, 1925, 2307, 280, 1313, 1924, 4, 651,+ 27, 1031, 65, 176, 2, 6, 17, 15, 107, 482,+ 3207, 3865, 757, 131, 178, 4, 4, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001,+ 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001, 16001+ };+ register unsigned int hval = len;++ switch (hval)+ {+ default:+ hval += asso_values[(unsigned char)str[11]];+ /*FALLTHROUGH*/+ case 11:+ case 10:+ hval += asso_values[(unsigned char)str[9]];+ /*FALLTHROUGH*/+ case 9:+ case 8:+ case 7:+ hval += asso_values[(unsigned char)str[6]];+ /*FALLTHROUGH*/+ case 6:+ hval += asso_values[(unsigned char)str[5]];+ /*FALLTHROUGH*/+ case 5:+ hval += asso_values[(unsigned char)str[4]+1];+ /*FALLTHROUGH*/+ case 4:+ hval += asso_values[(unsigned char)str[3]+3];+ /*FALLTHROUGH*/+ case 3:+ hval += asso_values[(unsigned char)str[2]+1];+ /*FALLTHROUGH*/+ case 2:+ hval += asso_values[(unsigned char)str[1]+4];+ /*FALLTHROUGH*/+ case 1:+ hval += asso_values[(unsigned char)str[0]];+ break;+ }+ return hval + asso_values[(unsigned char)str[len - 1]];+}++struct entity_pool_t+ {+ char entity_pool_str39[sizeof("rarr")];+ char entity_pool_str41[sizeof("larr")];+ char entity_pool_str49[sizeof("lat")];+ char entity_pool_str52[sizeof("uarr")];+ char entity_pool_str55[sizeof("npr")];+ char entity_pool_str62[sizeof("rarrtl")];+ char entity_pool_str64[sizeof("larrtl")];+ char entity_pool_str65[sizeof("roarr")];+ char entity_pool_str67[sizeof("loarr")];+ char entity_pool_str68[sizeof("not")];+ char entity_pool_str69[sizeof("rpar")];+ char entity_pool_str70[sizeof("bot")];+ char entity_pool_str71[sizeof("lpar")];+ char entity_pool_str73[sizeof("spar")];+ char entity_pool_str75[sizeof("ll")];+ char entity_pool_str76[sizeof("uharr")];+ char entity_pool_str77[sizeof("epar")];+ char entity_pool_str81[sizeof("el")];+ char entity_pool_str83[sizeof("rotimes")];+ char entity_pool_str85[sizeof("lotimes")];+ char entity_pool_str86[sizeof("par")];+ char entity_pool_str88[sizeof("nharr")];+ char entity_pool_str94[sizeof("npar")];+ char entity_pool_str97[sizeof("tprime")];+ char entity_pool_str101[sizeof("els")];+ char entity_pool_str102[sizeof("eparsl")];+ char entity_pool_str104[sizeof("ensp")];+ char entity_pool_str109[sizeof("bprime")];+ char entity_pool_str110[sizeof("lnap")];+ char entity_pool_str111[sizeof("blk14")];+ char entity_pool_str115[sizeof("blk12")];+ char entity_pool_str117[sizeof("blk34")];+ char entity_pool_str119[sizeof("nparsl")];+ char entity_pool_str123[sizeof("nldr")];+ char entity_pool_str124[sizeof("rlarr")];+ char entity_pool_str125[sizeof("npart")];+ char entity_pool_str126[sizeof("llarr")];+ char entity_pool_str127[sizeof("nlt")];+ char entity_pool_str128[sizeof("slarr")];+ char entity_pool_str138[sizeof("nparallel")];+ char entity_pool_str143[sizeof("Tau")];+ char entity_pool_str144[sizeof("varr")];+ char entity_pool_str146[sizeof("squ")];+ char entity_pool_str149[sizeof("nlarr")];+ char entity_pool_str152[sizeof("tau")];+ char entity_pool_str165[sizeof("lne")];+ char entity_pool_str166[sizeof("rrarr")];+ char entity_pool_str168[sizeof("lrarr")];+ char entity_pool_str170[sizeof("srarr")];+ char entity_pool_str171[sizeof("rharul")];+ char entity_pool_str173[sizeof("lharul")];+ char entity_pool_str174[sizeof("erarr")];+ char entity_pool_str176[sizeof("pr")];+ char entity_pool_str177[sizeof("rharu")];+ char entity_pool_str179[sizeof("lharu")];+ char entity_pool_str184[sizeof("Uarr")];+ char entity_pool_str188[sizeof("nGt")];+ char entity_pool_str190[sizeof("bne")];+ char entity_pool_str191[sizeof("nrarr")];+ char entity_pool_str194[sizeof("swarr")];+ char entity_pool_str198[sizeof("rarrap")];+ char entity_pool_str200[sizeof("upuparrows")];+ char entity_pool_str202[sizeof("Darr")];+ char entity_pool_str205[sizeof("rbarr")];+ char entity_pool_str206[sizeof("Dot")];+ char entity_pool_str207[sizeof("lbarr")];+ char entity_pool_str215[sizeof("nwarr")];+ char entity_pool_str217[sizeof("smt")];+ char entity_pool_str222[sizeof("emsp14")];+ char entity_pool_str223[sizeof("rarrpl")];+ char entity_pool_str225[sizeof("larrpl")];+ char entity_pool_str230[sizeof("phmmat")];+ char entity_pool_str232[sizeof("emsp13")];+ char entity_pool_str234[sizeof("LT")];+ char entity_pool_str238[sizeof("Larr")];+ char entity_pool_str239[sizeof("rbrkslu")];+ char entity_pool_str241[sizeof("lbrkslu")];+ char entity_pool_str243[sizeof("napos")];+ char entity_pool_str251[sizeof("nle")];+ char entity_pool_str253[sizeof("rHar")];+ char entity_pool_str255[sizeof("lHar")];+ char entity_pool_str256[sizeof("qprime")];+ char entity_pool_str258[sizeof("lap")];+ char entity_pool_str265[sizeof("nbsp")];+ char entity_pool_str266[sizeof("uHar")];+ char entity_pool_str267[sizeof("top")];+ char entity_pool_str269[sizeof("Vbar")];+ char entity_pool_str272[sizeof("Ll")];+ char entity_pool_str276[sizeof("prap")];+ char entity_pool_str278[sizeof("emsp")];+ char entity_pool_str281[sizeof("nap")];+ char entity_pool_str294[sizeof("looparrowleft")];+ char entity_pool_str296[sizeof("le")];+ char entity_pool_str300[sizeof("sharp")];+ char entity_pool_str302[sizeof("ee")];+ char entity_pool_str310[sizeof("les")];+ char entity_pool_str311[sizeof("in")];+ char entity_pool_str312[sizeof("prop")];+ char entity_pool_str314[sizeof("topbot")];+ char entity_pool_str317[sizeof("int")];+ char entity_pool_str319[sizeof("ne")];+ char entity_pool_str329[sizeof("nprcue")];+ char entity_pool_str331[sizeof("pre")];+ char entity_pool_str332[sizeof("epsi")];+ char entity_pool_str337[sizeof("upsi")];+ char entity_pool_str338[sizeof("there4")];+ char entity_pool_str342[sizeof("rbrke")];+ char entity_pool_str343[sizeof("searr")];+ char entity_pool_str344[sizeof("lbrke")];+ char entity_pool_str346[sizeof("blacktriangle")];+ char entity_pool_str349[sizeof("lneq")];+ char entity_pool_str352[sizeof("lneqq")];+ char entity_pool_str354[sizeof("plus")];+ char entity_pool_str355[sizeof("nles")];+ char entity_pool_str356[sizeof("nedot")];+ char entity_pool_str357[sizeof("blacktriangleleft")];+ char entity_pool_str358[sizeof("blacktriangleright")];+ char entity_pool_str364[sizeof("nearr")];+ char entity_pool_str367[sizeof("blacktriangledown")];+ char entity_pool_str373[sizeof("nless")];+ char entity_pool_str374[sizeof("emacr")];+ char entity_pool_str378[sizeof("vprop")];+ char entity_pool_str379[sizeof("umacr")];+ char entity_pool_str383[sizeof("smeparsl")];+ char entity_pool_str387[sizeof("Map")];+ char entity_pool_str390[sizeof("plusdu")];+ char entity_pool_str391[sizeof("Not")];+ char entity_pool_str408[sizeof("Verbar")];+ char entity_pool_str426[sizeof("perp")];+ char entity_pool_str430[sizeof("fltns")];+ char entity_pool_str431[sizeof("plusmn")];+ char entity_pool_str435[sizeof("nleq")];+ char entity_pool_str438[sizeof("nleqq")];+ char entity_pool_str440[sizeof("frac34")];+ char entity_pool_str441[sizeof("frac14")];+ char entity_pool_str442[sizeof("verbar")];+ char entity_pool_str443[sizeof("frac12")];+ char entity_pool_str444[sizeof("frac35")];+ char entity_pool_str445[sizeof("frac15")];+ char entity_pool_str446[sizeof("frac45")];+ char entity_pool_str449[sizeof("frac25")];+ char entity_pool_str451[sizeof("frac13")];+ char entity_pool_str453[sizeof("frac16")];+ char entity_pool_str454[sizeof("prurel")];+ char entity_pool_str455[sizeof("frac23")];+ char entity_pool_str456[sizeof("frac38")];+ char entity_pool_str457[sizeof("frac18")];+ char entity_pool_str458[sizeof("frac56")];+ char entity_pool_str462[sizeof("frac58")];+ char entity_pool_str464[sizeof("frac78")];+ char entity_pool_str465[sizeof("leq")];+ char entity_pool_str466[sizeof("darr")];+ char entity_pool_str469[sizeof("Upsi")];+ char entity_pool_str470[sizeof("dot")];+ char entity_pool_str471[sizeof("phone")];+ char entity_pool_str474[sizeof("Cap")];+ char entity_pool_str478[sizeof("blacksquare")];+ char entity_pool_str479[sizeof("rnmid")];+ char entity_pool_str483[sizeof("leqq")];+ char entity_pool_str486[sizeof("intcal")];+ char entity_pool_str490[sizeof("dharr")];+ char entity_pool_str494[sizeof("rhard")];+ char entity_pool_str496[sizeof("lhard")];+ char entity_pool_str505[sizeof("pluse")];+ char entity_pool_str511[sizeof("Umacr")];+ char entity_pool_str512[sizeof("Vee")];+ char entity_pool_str515[sizeof("Rarr")];+ char entity_pool_str527[sizeof("Cross")];+ char entity_pool_str529[sizeof("rsqb")];+ char entity_pool_str531[sizeof("lsqb")];+ char entity_pool_str538[sizeof("Rarrtl")];+ char entity_pool_str541[sizeof("esdot")];+ char entity_pool_str546[sizeof("vee")];+ char entity_pool_str547[sizeof("nbumpe")];+ char entity_pool_str553[sizeof("llcorner")];+ char entity_pool_str554[sizeof("fpartint")];+ char entity_pool_str558[sizeof("squf")];+ char entity_pool_str559[sizeof("plankv")];+ char entity_pool_str562[sizeof("eqvparsl")];+ char entity_pool_str564[sizeof("ulcorner")];+ char entity_pool_str566[sizeof("wp")];+ char entity_pool_str571[sizeof("lozf")];+ char entity_pool_str575[sizeof("COPY")];+ char entity_pool_str577[sizeof("ulcorn")];+ char entity_pool_str582[sizeof("veebar")];+ char entity_pool_str584[sizeof("part")];+ char entity_pool_str589[sizeof("square")];+ char entity_pool_str591[sizeof("nbump")];+ char entity_pool_str592[sizeof("bernou")];+ char entity_pool_str593[sizeof("wr")];+ char entity_pool_str594[sizeof("rBarr")];+ char entity_pool_str595[sizeof("lrcorner")];+ char entity_pool_str596[sizeof("lBarr")];+ char entity_pool_str599[sizeof("bnot")];+ char entity_pool_str601[sizeof("semi")];+ char entity_pool_str606[sizeof("urcorner")];+ char entity_pool_str612[sizeof("NotSubset")];+ char entity_pool_str614[sizeof("ropf")];+ char entity_pool_str615[sizeof("Qopf")];+ char entity_pool_str616[sizeof("lopf")];+ char entity_pool_str618[sizeof("sopf")];+ char entity_pool_str619[sizeof("urcorn")];+ char entity_pool_str620[sizeof("Topf")];+ char entity_pool_str621[sizeof("Zopf")];+ char entity_pool_str622[sizeof("eopf")];+ char entity_pool_str626[sizeof("ropar")];+ char entity_pool_str627[sizeof("uopf")];+ char entity_pool_str628[sizeof("lopar")];+ char entity_pool_str629[sizeof("topf")];+ char entity_pool_str635[sizeof("Xopf")];+ char entity_pool_str639[sizeof("nopf")];+ char entity_pool_str641[sizeof("bopf")];+ char entity_pool_str642[sizeof("epsiv")];+ char entity_pool_str643[sizeof("fnof")];+ char entity_pool_str644[sizeof("imacr")];+ char entity_pool_str647[sizeof("Jopf")];+ char entity_pool_str649[sizeof("nhpar")];+ char entity_pool_str653[sizeof("Wopf")];+ char entity_pool_str658[sizeof("Sqrt")];+ char entity_pool_str659[sizeof("nsub")];+ char entity_pool_str661[sizeof("napid")];+ char entity_pool_str664[sizeof("NotSuperset")];+ char entity_pool_str667[sizeof("brvbar")];+ char entity_pool_str670[sizeof("sol")];+ char entity_pool_str675[sizeof("easter")];+ char entity_pool_str677[sizeof("popf")];+ char entity_pool_str680[sizeof("dHar")];+ char entity_pool_str685[sizeof("Vopf")];+ char entity_pool_str690[sizeof("nsupset")];+ char entity_pool_str691[sizeof("nsup")];+ char entity_pool_str692[sizeof("vBar")];+ char entity_pool_str694[sizeof("nsubset")];+ char entity_pool_str700[sizeof("thkap")];+ char entity_pool_str704[sizeof("nis")];+ char entity_pool_str705[sizeof("profsurf")];+ char entity_pool_str706[sizeof("solb")];+ char entity_pool_str710[sizeof("lnsim")];+ char entity_pool_str712[sizeof("solbar")];+ char entity_pool_str717[sizeof("Square")];+ char entity_pool_str719[sizeof("vopf")];+ char entity_pool_str723[sizeof("uharl")];+ char entity_pool_str725[sizeof("ulcrop")];+ char entity_pool_str729[sizeof("eqsim")];+ char entity_pool_str730[sizeof("equiv")];+ char entity_pool_str733[sizeof("ell")];+ char entity_pool_str734[sizeof("smashp")];+ char entity_pool_str735[sizeof("mp")];+ char entity_pool_str738[sizeof("Kopf")];+ char entity_pool_str741[sizeof("simrarr")];+ char entity_pool_str743[sizeof("flat")];+ char entity_pool_str745[sizeof("Mopf")];+ char entity_pool_str746[sizeof("Sopf")];+ char entity_pool_str747[sizeof("mldr")];+ char entity_pool_str748[sizeof("rlm")];+ char entity_pool_str749[sizeof("iprod")];+ char entity_pool_str756[sizeof("lparlt")];+ char entity_pool_str758[sizeof("fopf")];+ char entity_pool_str759[sizeof("Uopf")];+ char entity_pool_str763[sizeof("varsubsetneq")];+ char entity_pool_str764[sizeof("varsubsetneqq")];+ char entity_pool_str767[sizeof("urcrop")];+ char entity_pool_str768[sizeof("LessLess")];+ char entity_pool_str770[sizeof("Re")];+ char entity_pool_str773[sizeof("NotNestedLessLess")];+ char entity_pool_str777[sizeof("Dopf")];+ char entity_pool_str779[sizeof("forkv")];+ char entity_pool_str781[sizeof("nsqsube")];+ char entity_pool_str783[sizeof("nsupe")];+ char entity_pool_str787[sizeof("nsube")];+ char entity_pool_str788[sizeof("qopf")];+ char entity_pool_str789[sizeof("rlhar")];+ char entity_pool_str792[sizeof("lrm")];+ char entity_pool_str796[sizeof("nlsim")];+ char entity_pool_str798[sizeof("pound")];+ char entity_pool_str799[sizeof("varsupsetneq")];+ char entity_pool_str800[sizeof("varsupsetneqq")];+ char entity_pool_str802[sizeof("bnequiv")];+ char entity_pool_str813[sizeof("Lopf")];+ char entity_pool_str817[sizeof("nsqsupe")];+ char entity_pool_str820[sizeof("rarrlp")];+ char entity_pool_str821[sizeof("wedbar")];+ char entity_pool_str822[sizeof("larrlp")];+ char entity_pool_str824[sizeof("Yopf")];+ char entity_pool_str829[sizeof("NotReverseElement")];+ char entity_pool_str832[sizeof("Copf")];+ char entity_pool_str833[sizeof("lrhar")];+ char entity_pool_str848[sizeof("parsl")];+ char entity_pool_str849[sizeof("uml")];+ char entity_pool_str850[sizeof("marker")];+ char entity_pool_str851[sizeof("nsupseteq")];+ char entity_pool_str855[sizeof("nsubseteq")];+ char entity_pool_str861[sizeof("squarf")];+ char entity_pool_str862[sizeof("Vert")];+ char entity_pool_str874[sizeof("SquareSupersetEqual")];+ char entity_pool_str876[sizeof("prsim")];+ char entity_pool_str879[sizeof("SquareSubsetEqual")];+ char entity_pool_str882[sizeof("SquareSuperset")];+ char entity_pool_str887[sizeof("SquareSubset")];+ char entity_pool_str888[sizeof("nvap")];+ char entity_pool_str892[sizeof("iopf")];+ char entity_pool_str894[sizeof("pm")];+ char entity_pool_str896[sizeof("vert")];+ char entity_pool_str898[sizeof("thetav")];+ char entity_pool_str901[sizeof("loz")];+ char entity_pool_str905[sizeof("map")];+ char entity_pool_str920[sizeof("lesseqqgtr")];+ char entity_pool_str934[sizeof("rscr")];+ char entity_pool_str935[sizeof("Qscr")];+ char entity_pool_str936[sizeof("lscr")];+ char entity_pool_str938[sizeof("sscr")];+ char entity_pool_str940[sizeof("Tscr")];+ char entity_pool_str941[sizeof("Zscr")];+ char entity_pool_str942[sizeof("escr")];+ char entity_pool_str947[sizeof("uscr")];+ char entity_pool_str949[sizeof("tscr")];+ char entity_pool_str951[sizeof("imof")];+ char entity_pool_str952[sizeof("Coproduct")];+ char entity_pool_str955[sizeof("Xscr")];+ char entity_pool_str956[sizeof("Xi")];+ char entity_pool_str959[sizeof("nscr")];+ char entity_pool_str960[sizeof("ni")];+ char entity_pool_str961[sizeof("bscr")];+ char entity_pool_str962[sizeof("Nopf")];+ char entity_pool_str967[sizeof("Jscr")];+ char entity_pool_str968[sizeof("preceq")];+ char entity_pool_str971[sizeof("nvrArr")];+ char entity_pool_str972[sizeof("backprime")];+ char entity_pool_str973[sizeof("Wscr")];+ char entity_pool_str975[sizeof("varphi")];+ char entity_pool_str984[sizeof("nsmid")];+ char entity_pool_str991[sizeof("dlcorn")];+ char entity_pool_str997[sizeof("pscr")];+ char entity_pool_str998[sizeof("pi")];+ char entity_pool_str1005[sizeof("Vscr")];+ char entity_pool_str1011[sizeof("nesim")];+ char entity_pool_str1021[sizeof("simne")];+ char entity_pool_str1028[sizeof("nsupseteqq")];+ char entity_pool_str1032[sizeof("nsubseteqq")];+ char entity_pool_str1033[sizeof("drcorn")];+ char entity_pool_str1038[sizeof("rbrace")];+ char entity_pool_str1039[sizeof("vscr")];+ char entity_pool_str1040[sizeof("lbrace")];+ char entity_pool_str1041[sizeof("dopf")];+ char entity_pool_str1049[sizeof("frasl")];+ char entity_pool_str1055[sizeof("LessTilde")];+ char entity_pool_str1058[sizeof("Kscr")];+ char entity_pool_str1064[sizeof("pluscir")];+ char entity_pool_str1065[sizeof("Mscr")];+ char entity_pool_str1066[sizeof("Sscr")];+ char entity_pool_str1067[sizeof("rbrksld")];+ char entity_pool_str1069[sizeof("lbrksld")];+ char entity_pool_str1070[sizeof("RBarr")];+ char entity_pool_str1073[sizeof("sqcaps")];+ char entity_pool_str1074[sizeof("rArr")];+ char entity_pool_str1075[sizeof("bNot")];+ char entity_pool_str1076[sizeof("lArr")];+ char entity_pool_str1078[sizeof("fscr")];+ char entity_pool_str1079[sizeof("Uscr")];+ char entity_pool_str1087[sizeof("uArr")];+ char entity_pool_str1090[sizeof("Ropf")];+ char entity_pool_str1094[sizeof("wopf")];+ char entity_pool_str1097[sizeof("Dscr")];+ char entity_pool_str1098[sizeof("opar")];+ char entity_pool_str1099[sizeof("seswar")];+ char entity_pool_str1103[sizeof("Del")];+ char entity_pool_str1104[sizeof("rAarr")];+ char entity_pool_str1105[sizeof("rho")];+ char entity_pool_str1106[sizeof("lAarr")];+ char entity_pool_str1107[sizeof("preccurlyeq")];+ char entity_pool_str1108[sizeof("qscr")];+ char entity_pool_str1111[sizeof("macr")];+ char entity_pool_str1115[sizeof("notin")];+ char entity_pool_str1120[sizeof("equivDD")];+ char entity_pool_str1125[sizeof("sqcap")];+ char entity_pool_str1127[sizeof("nspar")];+ char entity_pool_str1131[sizeof("olt")];+ char entity_pool_str1132[sizeof("ratio")];+ char entity_pool_str1133[sizeof("Lscr")];+ char entity_pool_str1137[sizeof("dharl")];+ char entity_pool_str1139[sizeof("dlcrop")];+ char entity_pool_str1140[sizeof("DoubleDot")];+ char entity_pool_str1141[sizeof("dotplus")];+ char entity_pool_str1142[sizeof("or")];+ char entity_pool_str1144[sizeof("Yscr")];+ char entity_pool_str1147[sizeof("Fopf")];+ char entity_pool_str1152[sizeof("Cscr")];+ char entity_pool_str1153[sizeof("olarr")];+ char entity_pool_str1154[sizeof("nrarrw")];+ char entity_pool_str1159[sizeof("lvertneqq")];+ char entity_pool_str1160[sizeof("eqslantgtr")];+ char entity_pool_str1164[sizeof("thorn")];+ char entity_pool_str1169[sizeof("eqslantless")];+ char entity_pool_str1172[sizeof("incare")];+ char entity_pool_str1179[sizeof("vArr")];+ char entity_pool_str1180[sizeof("rppolint")];+ char entity_pool_str1181[sizeof("drcrop")];+ char entity_pool_str1187[sizeof("parallel")];+ char entity_pool_str1195[sizeof("orarr")];+ char entity_pool_str1196[sizeof("ssmile")];+ char entity_pool_str1200[sizeof("DoubleLeftTee")];+ char entity_pool_str1201[sizeof("erDot")];+ char entity_pool_str1202[sizeof("diams")];+ char entity_pool_str1203[sizeof("ssetmn")];+ char entity_pool_str1208[sizeof("oS")];+ char entity_pool_str1212[sizeof("iscr")];+ char entity_pool_str1213[sizeof("ii")];+ char entity_pool_str1214[sizeof("rect")];+ char entity_pool_str1217[sizeof("nsccue")];+ char entity_pool_str1218[sizeof("sect")];+ char entity_pool_str1220[sizeof("mlcp")];+ char entity_pool_str1224[sizeof("oror")];+ char entity_pool_str1226[sizeof("DoubleContourIntegral")];+ char entity_pool_str1230[sizeof("equals")];+ char entity_pool_str1232[sizeof("Hat")];+ char entity_pool_str1236[sizeof("sstarf")];+ char entity_pool_str1237[sizeof("mstpos")];+ char entity_pool_str1239[sizeof("die")];+ char entity_pool_str1240[sizeof("measuredangle")];+ char entity_pool_str1252[sizeof("forall")];+ char entity_pool_str1255[sizeof("notinvb")];+ char entity_pool_str1263[sizeof("mopf")];+ char entity_pool_str1270[sizeof("niv")];+ char entity_pool_str1280[sizeof("vBarv")];+ char entity_pool_str1282[sizeof("Nscr")];+ char entity_pool_str1284[sizeof("period")];+ char entity_pool_str1292[sizeof("becaus")];+ char entity_pool_str1298[sizeof("between")];+ char entity_pool_str1299[sizeof("Int")];+ char entity_pool_str1307[sizeof("because")];+ char entity_pool_str1308[sizeof("piv")];+ char entity_pool_str1326[sizeof("rfr")];+ char entity_pool_str1327[sizeof("Qfr")];+ char entity_pool_str1328[sizeof("lfr")];+ char entity_pool_str1330[sizeof("sfr")];+ char entity_pool_str1331[sizeof("nleftrightarrow")];+ char entity_pool_str1332[sizeof("Tfr")];+ char entity_pool_str1333[sizeof("Zfr")];+ char entity_pool_str1334[sizeof("efr")];+ char entity_pool_str1338[sizeof("sim")];+ char entity_pool_str1339[sizeof("ufr")];+ char entity_pool_str1340[sizeof("roplus")];+ char entity_pool_str1341[sizeof("tfr")];+ char entity_pool_str1342[sizeof("loplus")];+ char entity_pool_str1347[sizeof("Xfr")];+ char entity_pool_str1350[sizeof("real")];+ char entity_pool_str1351[sizeof("nfr")];+ char entity_pool_str1353[sizeof("bfr")];+ char entity_pool_str1355[sizeof("NotHumpEqual")];+ char entity_pool_str1359[sizeof("Jfr")];+ char entity_pool_str1361[sizeof("dscr")];+ char entity_pool_str1365[sizeof("Wfr")];+ char entity_pool_str1367[sizeof("blacklozenge")];+ char entity_pool_str1369[sizeof("zopf")];+ char entity_pool_str1370[sizeof("reals")];+ char entity_pool_str1372[sizeof("NotCupCap")];+ char entity_pool_str1375[sizeof("simplus")];+ char entity_pool_str1377[sizeof("ForAll")];+ char entity_pool_str1389[sizeof("pfr")];+ char entity_pool_str1395[sizeof("omacr")];+ char entity_pool_str1397[sizeof("Vfr")];+ char entity_pool_str1409[sizeof("Emacr")];+ char entity_pool_str1410[sizeof("Rscr")];+ char entity_pool_str1414[sizeof("wscr")];+ char entity_pool_str1423[sizeof("ShortUpArrow")];+ char entity_pool_str1429[sizeof("setmn")];+ char entity_pool_str1431[sizeof("vfr")];+ char entity_pool_str1450[sizeof("Kfr")];+ char entity_pool_str1455[sizeof("operp")];+ char entity_pool_str1457[sizeof("Mfr")];+ char entity_pool_str1458[sizeof("Sfr")];+ char entity_pool_str1461[sizeof("nltrie")];+ char entity_pool_str1467[sizeof("Fscr")];+ char entity_pool_str1470[sizeof("ffr")];+ char entity_pool_str1471[sizeof("Ufr")];+ char entity_pool_str1473[sizeof("shortmid")];+ char entity_pool_str1488[sizeof("nvsim")];+ char entity_pool_str1489[sizeof("Dfr")];+ char entity_pool_str1490[sizeof("lessdot")];+ char entity_pool_str1493[sizeof("profline")];+ char entity_pool_str1500[sizeof("qfr")];+ char entity_pool_str1501[sizeof("dArr")];+ char entity_pool_str1503[sizeof("nrtrie")];+ char entity_pool_str1507[sizeof("ShortRightArrow")];+ char entity_pool_str1515[sizeof("Therefore")];+ char entity_pool_str1519[sizeof("DD")];+ char entity_pool_str1524[sizeof("therefore")];+ char entity_pool_str1525[sizeof("Lfr")];+ char entity_pool_str1532[sizeof("target")];+ char entity_pool_str1535[sizeof("Element")];+ char entity_pool_str1536[sizeof("Yfr")];+ char entity_pool_str1537[sizeof("ClockwiseContourIntegral")];+ char entity_pool_str1542[sizeof("olcir")];+ char entity_pool_str1544[sizeof("Cfr")];+ char entity_pool_str1559[sizeof("female")];+ char entity_pool_str1560[sizeof("nsucceq")];+ char entity_pool_str1561[sizeof("oast")];+ char entity_pool_str1568[sizeof("percnt")];+ char entity_pool_str1578[sizeof("ordf")];+ char entity_pool_str1580[sizeof("ord")];+ char entity_pool_str1581[sizeof("Rho")];+ char entity_pool_str1583[sizeof("mscr")];+ char entity_pool_str1585[sizeof("nvrtrie")];+ char entity_pool_str1589[sizeof("lnE")];+ char entity_pool_str1597[sizeof("nhArr")];+ char entity_pool_str1598[sizeof("Or")];+ char entity_pool_str1602[sizeof("divide")];+ char entity_pool_str1604[sizeof("ifr")];+ char entity_pool_str1605[sizeof("elinters")];+ char entity_pool_str1615[sizeof("bsol")];+ char entity_pool_str1616[sizeof("nvlArr")];+ char entity_pool_str1626[sizeof("Imacr")];+ char entity_pool_str1628[sizeof("backsimeq")];+ char entity_pool_str1629[sizeof("twixt")];+ char entity_pool_str1630[sizeof("olcross")];+ char entity_pool_str1639[sizeof("rarrsim")];+ char entity_pool_str1640[sizeof("DoubleDownArrow")];+ char entity_pool_str1641[sizeof("larrsim")];+ char entity_pool_str1642[sizeof("emptyset")];+ char entity_pool_str1643[sizeof("oopf")];+ char entity_pool_str1645[sizeof("exist")];+ char entity_pool_str1648[sizeof("llhard")];+ char entity_pool_str1656[sizeof("excl")];+ char entity_pool_str1657[sizeof("Eopf")];+ char entity_pool_str1658[sizeof("nlArr")];+ char entity_pool_str1663[sizeof("thinsp")];+ char entity_pool_str1664[sizeof("NotSubsetEqual")];+ char entity_pool_str1665[sizeof("phi")];+ char entity_pool_str1666[sizeof("DoubleLeftArrow")];+ char entity_pool_str1668[sizeof("topcir")];+ char entity_pool_str1672[sizeof("div")];+ char entity_pool_str1674[sizeof("Nfr")];+ char entity_pool_str1675[sizeof("nlE")];+ char entity_pool_str1689[sizeof("zscr")];+ char entity_pool_str1690[sizeof("lrhard")];+ char entity_pool_str1697[sizeof("lltri")];+ char entity_pool_str1700[sizeof("nrArr")];+ char entity_pool_str1701[sizeof("NotSupersetEqual")];+ char entity_pool_str1703[sizeof("swArr")];+ char entity_pool_str1704[sizeof("ThickSpace")];+ char entity_pool_str1708[sizeof("ultri")];+ char entity_pool_str1709[sizeof("notnivb")];+ char entity_pool_str1711[sizeof("prime")];+ char entity_pool_str1714[sizeof("primes")];+ char entity_pool_str1716[sizeof("ohm")];+ char entity_pool_str1719[sizeof("CircleTimes")];+ char entity_pool_str1720[sizeof("nltri")];+ char entity_pool_str1723[sizeof("siml")];+ char entity_pool_str1724[sizeof("nwArr")];+ char entity_pool_str1727[sizeof("varpi")];+ char entity_pool_str1730[sizeof("orv")];+ char entity_pool_str1735[sizeof("setminus")];+ char entity_pool_str1739[sizeof("lrtri")];+ char entity_pool_str1743[sizeof("permil")];+ char entity_pool_str1744[sizeof("mid")];+ char entity_pool_str1750[sizeof("urtri")];+ char entity_pool_str1753[sizeof("dfr")];+ char entity_pool_str1754[sizeof("mho")];+ char entity_pool_str1755[sizeof("prE")];+ char entity_pool_str1759[sizeof("vsupne")];+ char entity_pool_str1762[sizeof("nrtri")];+ char entity_pool_str1763[sizeof("vsubne")];+ char entity_pool_str1765[sizeof("eDot")];+ char entity_pool_str1778[sizeof("lesges")];+ char entity_pool_str1781[sizeof("backepsilon")];+ char entity_pool_str1783[sizeof("ratail")];+ char entity_pool_str1785[sizeof("latail")];+ char entity_pool_str1788[sizeof("UpEquilibrium")];+ char entity_pool_str1791[sizeof("epsilon")];+ char entity_pool_str1796[sizeof("upsilon")];+ char entity_pool_str1798[sizeof("midast")];+ char entity_pool_str1799[sizeof("Hopf")];+ char entity_pool_str1800[sizeof("vltri")];+ char entity_pool_str1802[sizeof("Rfr")];+ char entity_pool_str1805[sizeof("Wedge")];+ char entity_pool_str1806[sizeof("wfr")];+ char entity_pool_str1812[sizeof("barwed")];+ char entity_pool_str1815[sizeof("malt")];+ char entity_pool_str1820[sizeof("Chi")];+ char entity_pool_str1821[sizeof("emptyv")];+ char entity_pool_str1822[sizeof("notni")];+ char entity_pool_str1827[sizeof("LessGreater")];+ char entity_pool_str1829[sizeof("diam")];+ char entity_pool_str1842[sizeof("vrtri")];+ char entity_pool_str1849[sizeof("CircleMinus")];+ char entity_pool_str1851[sizeof("Omacr")];+ char entity_pool_str1852[sizeof("seArr")];+ char entity_pool_str1859[sizeof("Ffr")];+ char entity_pool_str1865[sizeof("precneqq")];+ char entity_pool_str1867[sizeof("Diamond")];+ char entity_pool_str1868[sizeof("ordm")];+ char entity_pool_str1873[sizeof("neArr")];+ char entity_pool_str1874[sizeof("Iopf")];+ char entity_pool_str1875[sizeof("CircleDot")];+ char entity_pool_str1878[sizeof("prnap")];+ char entity_pool_str1884[sizeof("dotminus")];+ char entity_pool_str1903[sizeof("nshortmid")];+ char entity_pool_str1905[sizeof("bottom")];+ char entity_pool_str1907[sizeof("pointint")];+ char entity_pool_str1917[sizeof("SquareUnion")];+ char entity_pool_str1925[sizeof("jopf")];+ char entity_pool_str1928[sizeof("Upsilon")];+ char entity_pool_str1936[sizeof("Colone")];+ char entity_pool_str1938[sizeof("nvlt")];+ char entity_pool_str1941[sizeof("NestedLessLess")];+ char entity_pool_str1942[sizeof("Colon")];+ char entity_pool_str1945[sizeof("bsolhsub")];+ char entity_pool_str1949[sizeof("DoubleLeftRightArrow")];+ char entity_pool_str1950[sizeof("plussim")];+ char entity_pool_str1959[sizeof("image")];+ char entity_pool_str1960[sizeof("egs")];+ char entity_pool_str1963[sizeof("oscr")];+ char entity_pool_str1964[sizeof("swnwar")];+ char entity_pool_str1969[sizeof("zeetrf")];+ char entity_pool_str1973[sizeof("maltese")];+ char entity_pool_str1975[sizeof("mfr")];+ char entity_pool_str1976[sizeof("rarrfs")];+ char entity_pool_str1977[sizeof("Escr")];+ char entity_pool_str1978[sizeof("larrfs")];+ char entity_pool_str1985[sizeof("mnplus")];+ char entity_pool_str1986[sizeof("ngt")];+ char entity_pool_str1987[sizeof("ngtr")];+ char entity_pool_str1996[sizeof("gl")];+ char entity_pool_str2003[sizeof("diamondsuit")];+ char entity_pool_str2004[sizeof("GT")];+ char entity_pool_str2014[sizeof("lesssim")];+ char entity_pool_str2015[sizeof("dsol")];+ char entity_pool_str2023[sizeof("upharpoonleft")];+ char entity_pool_str2024[sizeof("SquareIntersection")];+ char entity_pool_str2025[sizeof("lsime")];+ char entity_pool_str2027[sizeof("nLt")];+ char entity_pool_str2029[sizeof("NotLess")];+ char entity_pool_str2031[sizeof("gnap")];+ char entity_pool_str2035[sizeof("scap")];+ char entity_pool_str2038[sizeof("mapstoleft")];+ char entity_pool_str2039[sizeof("NotLessLess")];+ char entity_pool_str2043[sizeof("rfloor")];+ char entity_pool_str2045[sizeof("lfloor")];+ char entity_pool_str2048[sizeof("nsime")];+ char entity_pool_str2050[sizeof("bsime")];+ char entity_pool_str2051[sizeof("NotLessEqual")];+ char entity_pool_str2052[sizeof("NotLessTilde")];+ char entity_pool_str2056[sizeof("ncap")];+ char entity_pool_str2059[sizeof("NotLessGreater")];+ char entity_pool_str2070[sizeof("precsim")];+ char entity_pool_str2072[sizeof("looparrowright")];+ char entity_pool_str2076[sizeof("Pr")];+ char entity_pool_str2077[sizeof("rcub")];+ char entity_pool_str2078[sizeof("mapstoup")];+ char entity_pool_str2079[sizeof("lcub")];+ char entity_pool_str2081[sizeof("zfr")];+ char entity_pool_str2084[sizeof("uparrow")];+ char entity_pool_str2086[sizeof("gne")];+ char entity_pool_str2090[sizeof("sce")];+ char entity_pool_str2091[sizeof("Im")];+ char entity_pool_str2096[sizeof("rcaron")];+ char entity_pool_str2098[sizeof("lcaron")];+ char entity_pool_str2099[sizeof("Oopf")];+ char entity_pool_str2100[sizeof("scaron")];+ char entity_pool_str2101[sizeof("backsim")];+ char entity_pool_str2102[sizeof("Tcaron")];+ char entity_pool_str2103[sizeof("Zcaron")];+ char entity_pool_str2104[sizeof("ecaron")];+ char entity_pool_str2106[sizeof("Bernoullis")];+ char entity_pool_str2110[sizeof("nge")];+ char entity_pool_str2111[sizeof("tcaron")];+ char entity_pool_str2113[sizeof("fork")];+ char entity_pool_str2119[sizeof("Hscr")];+ char entity_pool_str2121[sizeof("ncaron")];+ char entity_pool_str2122[sizeof("elsdot")];+ char entity_pool_str2124[sizeof("tbrk")];+ char entity_pool_str2128[sizeof("triplus")];+ char entity_pool_str2131[sizeof("diamond")];+ char entity_pool_str2134[sizeof("ncup")];+ char entity_pool_str2136[sizeof("bbrk")];+ char entity_pool_str2138[sizeof("frown")];+ char entity_pool_str2139[sizeof("bkarow")];+ char entity_pool_str2141[sizeof("spades")];+ char entity_pool_str2143[sizeof("psi")];+ char entity_pool_str2150[sizeof("Bopf")];+ char entity_pool_str2156[sizeof("dollar")];+ char entity_pool_str2164[sizeof("disin")];+ char entity_pool_str2170[sizeof("spadesuit")];+ char entity_pool_str2176[sizeof("NotTilde")];+ char entity_pool_str2177[sizeof("doublebarwedge")];+ char entity_pool_str2179[sizeof("gap")];+ char entity_pool_str2186[sizeof("bbrktbrk")];+ char entity_pool_str2189[sizeof("swarrow")];+ char entity_pool_str2190[sizeof("bepsi")];+ char entity_pool_str2194[sizeof("Iscr")];+ char entity_pool_str2198[sizeof("NotTildeFullEqual")];+ char entity_pool_str2199[sizeof("eqcolon")];+ char entity_pool_str2202[sizeof("tint")];+ char entity_pool_str2205[sizeof("intprod")];+ char entity_pool_str2207[sizeof("nsupE")];+ char entity_pool_str2210[sizeof("nwarrow")];+ char entity_pool_str2211[sizeof("nsubE")];+ char entity_pool_str2214[sizeof("nges")];+ char entity_pool_str2216[sizeof("Uparrow")];+ char entity_pool_str2217[sizeof("ge")];+ char entity_pool_str2218[sizeof("OpenCurlyDoubleQuote")];+ char entity_pool_str2223[sizeof("smallsetminus")];+ char entity_pool_str2228[sizeof("Scaron")];+ char entity_pool_str2230[sizeof("nvltrie")];+ char entity_pool_str2231[sizeof("ges")];+ char entity_pool_str2232[sizeof("blank")];+ char entity_pool_str2233[sizeof("QUOT")];+ char entity_pool_str2238[sizeof("block")];+ char entity_pool_str2239[sizeof("trade")];+ char entity_pool_str2245[sizeof("jscr")];+ char entity_pool_str2246[sizeof("wedge")];+ char entity_pool_str2254[sizeof("Amacr")];+ char entity_pool_str2256[sizeof("Equal")];+ char entity_pool_str2259[sizeof("Dcaron")];+ char entity_pool_str2262[sizeof("DotDot")];+ char entity_pool_str2270[sizeof("gneq")];+ char entity_pool_str2271[sizeof("varpropto")];+ char entity_pool_str2273[sizeof("gneqq")];+ char entity_pool_str2274[sizeof("Proportional")];+ char entity_pool_str2279[sizeof("isins")];+ char entity_pool_str2281[sizeof("eDDot")];+ char entity_pool_str2282[sizeof("isin")];+ char entity_pool_str2286[sizeof("TripleDot")];+ char entity_pool_str2290[sizeof("Fouriertrf")];+ char entity_pool_str2291[sizeof("Proportion")];+ char entity_pool_str2294[sizeof("ngeq")];+ char entity_pool_str2295[sizeof("Lcaron")];+ char entity_pool_str2297[sizeof("ngeqq")];+ char entity_pool_str2313[sizeof("lE")];+ char entity_pool_str2314[sizeof("Ccaron")];+ char entity_pool_str2320[sizeof("bsemi")];+ char entity_pool_str2326[sizeof("propto")];+ char entity_pool_str2331[sizeof("lesdot")];+ char entity_pool_str2332[sizeof("Conint")];+ char entity_pool_str2334[sizeof("And")];+ char entity_pool_str2338[sizeof("searrow")];+ char entity_pool_str2343[sizeof("orslope")];+ char entity_pool_str2344[sizeof("harr")];+ char entity_pool_str2350[sizeof("late")];+ char entity_pool_str2352[sizeof("CenterDot")];+ char entity_pool_str2355[sizeof("ofr")];+ char entity_pool_str2359[sizeof("nearrow")];+ char entity_pool_str2361[sizeof("qint")];+ char entity_pool_str2364[sizeof("lates")];+ char entity_pool_str2365[sizeof("kappav")];+ char entity_pool_str2368[sizeof("horbar")];+ char entity_pool_str2369[sizeof("Efr")];+ char entity_pool_str2370[sizeof("hoarr")];+ char entity_pool_str2371[sizeof("npre")];+ char entity_pool_str2377[sizeof("inodot")];+ char entity_pool_str2379[sizeof("udarr")];+ char entity_pool_str2386[sizeof("geq")];+ char entity_pool_str2391[sizeof("nsimeq")];+ char entity_pool_str2404[sizeof("geqq")];+ char entity_pool_str2407[sizeof("efDot")];+ char entity_pool_str2410[sizeof("rpargt")];+ char entity_pool_str2419[sizeof("Oscr")];+ char entity_pool_str2422[sizeof("plusdo")];+ char entity_pool_str2425[sizeof("lagran")];+ char entity_pool_str2429[sizeof("thicksim")];+ char entity_pool_str2440[sizeof("precnsim")];+ char entity_pool_str2444[sizeof("Ncaron")];+ char entity_pool_str2449[sizeof("napE")];+ char entity_pool_str2457[sizeof("iiint")];+ char entity_pool_str2470[sizeof("Bscr")];+ char entity_pool_str2483[sizeof("mapstodown")];+ char entity_pool_str2486[sizeof("varrho")];+ char entity_pool_str2488[sizeof("isinsv")];+ char entity_pool_str2491[sizeof("nvHarr")];+ char entity_pool_str2494[sizeof("NotLeftTriangleBar")];+ char entity_pool_str2496[sizeof("equest")];+ char entity_pool_str2498[sizeof("NotLeftTriangleEqual")];+ char entity_pool_str2499[sizeof("NotLeftTriangle")];+ char entity_pool_str2502[sizeof("Aopf")];+ char entity_pool_str2503[sizeof("hbar")];+ char entity_pool_str2507[sizeof("vangrt")];+ char entity_pool_str2511[sizeof("Hfr")];+ char entity_pool_str2517[sizeof("range")];+ char entity_pool_str2518[sizeof("smte")];+ char entity_pool_str2519[sizeof("lsim")];+ char entity_pool_str2521[sizeof("npolint")];+ char entity_pool_str2523[sizeof("dcaron")];+ char entity_pool_str2525[sizeof("esim")];+ char entity_pool_str2527[sizeof("Union")];+ char entity_pool_str2532[sizeof("smtes")];+ char entity_pool_str2536[sizeof("kopf")];+ char entity_pool_str2537[sizeof("gopf")];+ char entity_pool_str2542[sizeof("nsim")];+ char entity_pool_str2544[sizeof("bsim")];+ char entity_pool_str2546[sizeof("SmallCircle")];+ char entity_pool_str2548[sizeof("NotDoubleVerticalBar")];+ char entity_pool_str2549[sizeof("NotNestedGreaterGreater")];+ char entity_pool_str2565[sizeof("EqualTilde")];+ char entity_pool_str2568[sizeof("notindot")];+ char entity_pool_str2572[sizeof("Rcaron")];+ char entity_pool_str2577[sizeof("Popf")];+ char entity_pool_str2583[sizeof("Gopf")];+ char entity_pool_str2586[sizeof("Ifr")];+ char entity_pool_str2589[sizeof("wedgeq")];+ char entity_pool_str2595[sizeof("prod")];+ char entity_pool_str2617[sizeof("osol")];+ char entity_pool_str2624[sizeof("DoubleUpArrow")];+ char entity_pool_str2627[sizeof("Congruent")];+ char entity_pool_str2631[sizeof("gnsim")];+ char entity_pool_str2635[sizeof("scsim")];+ char entity_pool_str2637[sizeof("jfr")];+ char entity_pool_str2645[sizeof("upsih")];+ char entity_pool_str2650[sizeof("nLl")];+ char entity_pool_str2653[sizeof("DoubleUpDownArrow")];+ char entity_pool_str2655[sizeof("ngsim")];+ char entity_pool_str2664[sizeof("hearts")];+ char entity_pool_str2666[sizeof("lesseqgtr")];+ char entity_pool_str2670[sizeof("nesear")];+ char entity_pool_str2676[sizeof("Exists")];+ char entity_pool_str2687[sizeof("smile")];+ char entity_pool_str2689[sizeof("uwangle")];+ char entity_pool_str2693[sizeof("heartsuit")];+ char entity_pool_str2700[sizeof("HorizontalLine")];+ char entity_pool_str2703[sizeof("GreaterLess")];+ char entity_pool_str2705[sizeof("rsaquo")];+ char entity_pool_str2707[sizeof("lsaquo")];+ char entity_pool_str2709[sizeof("realine")];+ char entity_pool_str2710[sizeof("Dashv")];+ char entity_pool_str2714[sizeof("simdot")];+ char entity_pool_str2715[sizeof("GreaterEqual")];+ char entity_pool_str2716[sizeof("GreaterTilde")];+ char entity_pool_str2721[sizeof("GreaterEqualLess")];+ char entity_pool_str2723[sizeof("GreaterGreater")];+ char entity_pool_str2737[sizeof("rceil")];+ char entity_pool_str2739[sizeof("lceil")];+ char entity_pool_str2743[sizeof("lessgtr")];+ char entity_pool_str2746[sizeof("oline")];+ char entity_pool_str2753[sizeof("thksim")];+ char entity_pool_str2755[sizeof("InvisibleTimes")];+ char entity_pool_str2762[sizeof("race")];+ char entity_pool_str2766[sizeof("iquest")];+ char entity_pool_str2774[sizeof("imagline")];+ char entity_pool_str2779[sizeof("UpTee")];+ char entity_pool_str2781[sizeof("midcir")];+ char entity_pool_str2790[sizeof("ofcir")];+ char entity_pool_str2793[sizeof("ddarr")];+ char entity_pool_str2800[sizeof("rangd")];+ char entity_pool_str2802[sizeof("langd")];+ char entity_pool_str2808[sizeof("Equilibrium")];+ char entity_pool_str2809[sizeof("parsim")];+ char entity_pool_str2810[sizeof("Vdashl")];+ char entity_pool_str2811[sizeof("Ofr")];+ char entity_pool_str2816[sizeof("Because")];+ char entity_pool_str2818[sizeof("rAtail")];+ char entity_pool_str2820[sizeof("lAtail")];+ char entity_pool_str2821[sizeof("ominus")];+ char entity_pool_str2822[sizeof("Ascr")];+ char entity_pool_str2826[sizeof("Epsilon")];+ char entity_pool_str2832[sizeof("ShortLeftArrow")];+ char entity_pool_str2845[sizeof("isinv")];+ char entity_pool_str2847[sizeof("micro")];+ char entity_pool_str2851[sizeof("zcaron")];+ char entity_pool_str2856[sizeof("kscr")];+ char entity_pool_str2857[sizeof("gscr")];+ char entity_pool_str2862[sizeof("Bfr")];+ char entity_pool_str2863[sizeof("gel")];+ char entity_pool_str2864[sizeof("hercon")];+ char entity_pool_str2871[sizeof("triminus")];+ char entity_pool_str2877[sizeof("egrave")];+ char entity_pool_str2881[sizeof("sdot")];+ char entity_pool_str2882[sizeof("ugrave")];+ char entity_pool_str2884[sizeof("Zdot")];+ char entity_pool_str2885[sizeof("edot")];+ char entity_pool_str2890[sizeof("NotTildeTilde")];+ char entity_pool_str2892[sizeof("tdot")];+ char entity_pool_str2897[sizeof("Pscr")];+ char entity_pool_str2898[sizeof("Pi")];+ char entity_pool_str2903[sizeof("Gscr")];+ char entity_pool_str2910[sizeof("plustwo")];+ char entity_pool_str2914[sizeof("NotElement")];+ char entity_pool_str2916[sizeof("PlusMinus")];+ char entity_pool_str2919[sizeof("hopf")];+ char entity_pool_str2920[sizeof("gammad")];+ char entity_pool_str2922[sizeof("mDDot")];+ char entity_pool_str2926[sizeof("divideontimes")];+ char entity_pool_str2940[sizeof("doteq")];+ char entity_pool_str2956[sizeof("varepsilon")];+ char entity_pool_str2963[sizeof("Precedes")];+ char entity_pool_str2966[sizeof("Gammad")];+ char entity_pool_str2974[sizeof("dashv")];+ char entity_pool_str2979[sizeof("NotCongruent")];+ char entity_pool_str2982[sizeof("ubreve")];+ char entity_pool_str2990[sizeof("ogt")];+ char entity_pool_str2994[sizeof("RoundImplies")];+ char entity_pool_str3002[sizeof("PrecedesSlantEqual")];+ char entity_pool_str3005[sizeof("sime")];+ char entity_pool_str3014[sizeof("Ugrave")];+ char entity_pool_str3016[sizeof("dbkarow")];+ char entity_pool_str3021[sizeof("sdote")];+ char entity_pool_str3023[sizeof("veeeq")];+ char entity_pool_str3027[sizeof("mapsto")];+ char entity_pool_str3030[sizeof("times")];+ char entity_pool_str3033[sizeof("rangle")];+ char entity_pool_str3035[sizeof("langle")];+ char entity_pool_str3038[sizeof("leftarrowtail")];+ char entity_pool_str3039[sizeof("hamilt")];+ char entity_pool_str3044[sizeof("udhar")];+ char entity_pool_str3053[sizeof("nisd")];+ char entity_pool_str3055[sizeof("rfisht")];+ char entity_pool_str3057[sizeof("lfisht")];+ char entity_pool_str3058[sizeof("harrcir")];+ char entity_pool_str3066[sizeof("OpenCurlyQuote")];+ char entity_pool_str3068[sizeof("ufisht")];+ char entity_pool_str3069[sizeof("NotHumpDownHump")];+ char entity_pool_str3072[sizeof("LeftTee")];+ char entity_pool_str3074[sizeof("rsh")];+ char entity_pool_str3076[sizeof("lsh")];+ char entity_pool_str3080[sizeof("gvertneqq")];+ char entity_pool_str3083[sizeof("timesb")];+ char entity_pool_str3092[sizeof("scpolint")];+ char entity_pool_str3095[sizeof("Cdot")];+ char entity_pool_str3103[sizeof("dwangle")];+ char entity_pool_str3114[sizeof("Ubreve")];+ char entity_pool_str3132[sizeof("LeftUpVector")];+ char entity_pool_str3135[sizeof("LeftUpVectorBar")];+ char entity_pool_str3139[sizeof("Ecaron")];+ char entity_pool_str3142[sizeof("homtht")];+ char entity_pool_str3147[sizeof("igrave")];+ char entity_pool_str3155[sizeof("npreceq")];+ char entity_pool_str3156[sizeof("ecolon")];+ char entity_pool_str3167[sizeof("dd")];+ char entity_pool_str3174[sizeof("simeq")];+ char entity_pool_str3179[sizeof("notinE")];+ char entity_pool_str3198[sizeof("bigoplus")];+ char entity_pool_str3214[sizeof("Afr")];+ char entity_pool_str3215[sizeof("leftarrow")];+ char entity_pool_str3216[sizeof("oint")];+ char entity_pool_str3218[sizeof("Tab")];+ char entity_pool_str3227[sizeof("ogon")];+ char entity_pool_str3230[sizeof("lt")];+ char entity_pool_str3231[sizeof("nLeftrightarrow")];+ char entity_pool_str3235[sizeof("rarrb")];+ char entity_pool_str3237[sizeof("larrb")];+ char entity_pool_str3239[sizeof("hscr")];+ char entity_pool_str3246[sizeof("LeftUpDownVector")];+ char entity_pool_str3248[sizeof("kfr")];+ char entity_pool_str3249[sizeof("gfr")];+ char entity_pool_str3250[sizeof("UpArrowBar")];+ char entity_pool_str3259[sizeof("nsce")];+ char entity_pool_str3260[sizeof("ltdot")];+ char entity_pool_str3261[sizeof("gesl")];+ char entity_pool_str3262[sizeof("xodot")];+ char entity_pool_str3263[sizeof("star")];+ char entity_pool_str3266[sizeof("lowbar")];+ char entity_pool_str3268[sizeof("xharr")];+ char entity_pool_str3269[sizeof("ecir")];+ char entity_pool_str3271[sizeof("utdot")];+ char entity_pool_str3272[sizeof("natur")];+ char entity_pool_str3273[sizeof("Lsh")];+ char entity_pool_str3274[sizeof("infin")];+ char entity_pool_str3276[sizeof("comp")];+ char entity_pool_str3278[sizeof("sigmav")];+ char entity_pool_str3285[sizeof("xotime")];+ char entity_pool_str3289[sizeof("Pfr")];+ char entity_pool_str3295[sizeof("Gfr")];+ char entity_pool_str3298[sizeof("bigcap")];+ char entity_pool_str3300[sizeof("simlE")];+ char entity_pool_str3319[sizeof("iiiint")];+ char entity_pool_str3320[sizeof("barwedge")];+ char entity_pool_str3321[sizeof("Barwed")];+ char entity_pool_str3329[sizeof("xlarr")];+ char entity_pool_str3330[sizeof("LessEqualGreater")];+ char entity_pool_str3332[sizeof("crarr")];+ char entity_pool_str3333[sizeof("isindot")];+ char entity_pool_str3335[sizeof("commat")];+ char entity_pool_str3342[sizeof("middot")];+ char entity_pool_str3349[sizeof("lesdotor")];+ char entity_pool_str3356[sizeof("sigmaf")];+ char entity_pool_str3366[sizeof("rarrbfs")];+ char entity_pool_str3368[sizeof("larrbfs")];+ char entity_pool_str3371[sizeof("xrarr")];+ char entity_pool_str3376[sizeof("bigcup")];+ char entity_pool_str3378[sizeof("clubs")];+ char entity_pool_str3379[sizeof("hArr")];+ char entity_pool_str3380[sizeof("rtrie")];+ char entity_pool_str3382[sizeof("ltrie")];+ char entity_pool_str3383[sizeof("imped")];+ char entity_pool_str3388[sizeof("eogon")];+ char entity_pool_str3389[sizeof("rx")];+ char entity_pool_str3390[sizeof("ltrPar")];+ char entity_pool_str3391[sizeof("Star")];+ char entity_pool_str3393[sizeof("uogon")];+ char entity_pool_str3396[sizeof("Tilde")];+ char entity_pool_str3398[sizeof("half")];+ char entity_pool_str3405[sizeof("tilde")];+ char entity_pool_str3412[sizeof("Leftarrow")];+ char entity_pool_str3417[sizeof("gesles")];+ char entity_pool_str3422[sizeof("cap")];+ char entity_pool_str3423[sizeof("strns")];+ char entity_pool_str3427[sizeof("Lt")];+ char entity_pool_str3439[sizeof("prnE")];+ char entity_pool_str3447[sizeof("sqsupe")];+ char entity_pool_str3462[sizeof("sqsupset")];+ char entity_pool_str3467[sizeof("tridot")];+ char entity_pool_str3468[sizeof("order")];+ char entity_pool_str3471[sizeof("caps")];+ char entity_pool_str3475[sizeof("cross")];+ char entity_pool_str3482[sizeof("dfisht")];+ char entity_pool_str3487[sizeof("xmap")];+ char entity_pool_str3491[sizeof("sqsup")];+ char entity_pool_str3503[sizeof("rtri")];+ char entity_pool_str3505[sizeof("ltri")];+ char entity_pool_str3506[sizeof("it")];+ char entity_pool_str3507[sizeof("rmoust")];+ char entity_pool_str3509[sizeof("lmoust")];+ char entity_pool_str3510[sizeof("gnE")];+ char entity_pool_str3511[sizeof("lgE")];+ char entity_pool_str3514[sizeof("scE")];+ char entity_pool_str3516[sizeof("utri")];+ char entity_pool_str3518[sizeof("vellip")];+ char entity_pool_str3520[sizeof("ETH")];+ char entity_pool_str3523[sizeof("lmidot")];+ char entity_pool_str3525[sizeof("Uogon")];+ char entity_pool_str3526[sizeof("CounterClockwiseContourIntegral")];+ char entity_pool_str3534[sizeof("ngE")];+ char entity_pool_str3535[sizeof("nwnear")];+ char entity_pool_str3543[sizeof("lesg")];+ char entity_pool_str3546[sizeof("plusb")];+ char entity_pool_str3550[sizeof("Rsh")];+ char entity_pool_str3555[sizeof("copysr")];+ char entity_pool_str3557[sizeof("infintie")];+ char entity_pool_str3559[sizeof("imath")];+ char entity_pool_str3560[sizeof("Esim")];+ char entity_pool_str3565[sizeof("Phi")];+ char entity_pool_str3573[sizeof("glE")];+ char entity_pool_str3579[sizeof("vnsup")];+ char entity_pool_str3582[sizeof("simgE")];+ char entity_pool_str3586[sizeof("DoubleLongLeftArrow")];+ char entity_pool_str3591[sizeof("DoubleLongLeftRightArrow")];+ char entity_pool_str3594[sizeof("nvgt")];+ char entity_pool_str3607[sizeof("Mellintrf")];+ char entity_pool_str3611[sizeof("Prime")];+ char entity_pool_str3615[sizeof("iinfin")];+ char entity_pool_str3620[sizeof("ReverseElement")];+ char entity_pool_str3627[sizeof("EmptySmallSquare")];+ char entity_pool_str3628[sizeof("radic")];+ char entity_pool_str3631[sizeof("hfr")];+ char entity_pool_str3632[sizeof("zdot")];+ char entity_pool_str3633[sizeof("male")];+ char entity_pool_str3635[sizeof("rarrc")];+ char entity_pool_str3636[sizeof("prec")];+ char entity_pool_str3637[sizeof("scnap")];+ char entity_pool_str3641[sizeof("DifferentialD")];+ char entity_pool_str3643[sizeof("models")];+ char entity_pool_str3657[sizeof("ltcir")];+ char entity_pool_str3658[sizeof("iogon")];+ char entity_pool_str3665[sizeof("capcap")];+ char entity_pool_str3667[sizeof("iff")];+ char entity_pool_str3669[sizeof("ddotseq")];+ char entity_pool_str3671[sizeof("CirclePlus")];+ char entity_pool_str3676[sizeof("rthree")];+ char entity_pool_str3678[sizeof("lthree")];+ char entity_pool_str3681[sizeof("PrecedesTilde")];+ char entity_pool_str3685[sizeof("dtdot")];+ char entity_pool_str3687[sizeof("clubsuit")];+ char entity_pool_str3689[sizeof("racute")];+ char entity_pool_str3691[sizeof("lacute")];+ char entity_pool_str3692[sizeof("trpezium")];+ char entity_pool_str3693[sizeof("sacute")];+ char entity_pool_str3696[sizeof("Zacute")];+ char entity_pool_str3697[sizeof("eacute")];+ char entity_pool_str3699[sizeof("TildeTilde")];+ char entity_pool_str3701[sizeof("Uarrocir")];+ char entity_pool_str3702[sizeof("uacute")];+ char entity_pool_str3703[sizeof("lowast")];+ char entity_pool_str3714[sizeof("nacute")];+ char entity_pool_str3716[sizeof("NotPrecedes")];+ char entity_pool_str3720[sizeof("Lmidot")];+ char entity_pool_str3725[sizeof("UpArrow")];+ char entity_pool_str3727[sizeof("rarrw")];+ char entity_pool_str3738[sizeof("DownTee")];+ char entity_pool_str3742[sizeof("FilledSmallSquare")];+ char entity_pool_str3743[sizeof("capcup")];+ char entity_pool_str3749[sizeof("GreaterFullEqual")];+ char entity_pool_str3756[sizeof("nvle")];+ char entity_pool_str3758[sizeof("trie")];+ char entity_pool_str3764[sizeof("omicron")];+ char entity_pool_str3766[sizeof("DoubleRightTee")];+ char entity_pool_str3767[sizeof("Cconint")];+ char entity_pool_str3768[sizeof("rsquor")];+ char entity_pool_str3770[sizeof("lsquor")];+ char entity_pool_str3772[sizeof("zigrarr")];+ char entity_pool_str3780[sizeof("copf")];+ char entity_pool_str3782[sizeof("ContourIntegral")];+ char entity_pool_str3798[sizeof("hairsp")];+ char entity_pool_str3799[sizeof("sqsupseteq")];+ char entity_pool_str3800[sizeof("csub")];+ char entity_pool_str3801[sizeof("upharpoonright")];+ char entity_pool_str3805[sizeof("DownBreve")];+ char entity_pool_str3817[sizeof("ShortDownArrow")];+ char entity_pool_str3819[sizeof("xopf")];+ char entity_pool_str3821[sizeof("Sacute")];+ char entity_pool_str3829[sizeof("vsupnE")];+ char entity_pool_str3830[sizeof("cir")];+ char entity_pool_str3831[sizeof("plusacir")];+ char entity_pool_str3832[sizeof("csup")];+ char entity_pool_str3833[sizeof("vsubnE")];+ char entity_pool_str3834[sizeof("Uacute")];+ char entity_pool_str3836[sizeof("isinE")];+ char entity_pool_str3845[sizeof("gEl")];+ char entity_pool_str3851[sizeof("sqcups")];+ char entity_pool_str3853[sizeof("smid")];+ char entity_pool_str3855[sizeof("lg")];+ char entity_pool_str3857[sizeof("DoubleLongRightArrow")];+ char entity_pool_str3858[sizeof("NotPrecedesSlantEqual")];+ char entity_pool_str3861[sizeof("eg")];+ char entity_pool_str3864[sizeof("AMP")];+ char entity_pool_str3874[sizeof("nmid")];+ char entity_pool_str3883[sizeof("timesd")];+ char entity_pool_str3886[sizeof("DownLeftVector")];+ char entity_pool_str3887[sizeof("zwnj")];+ char entity_pool_str3888[sizeof("Lacute")];+ char entity_pool_str3889[sizeof("DownLeftVectorBar")];+ char entity_pool_str3898[sizeof("ograve")];+ char entity_pool_str3899[sizeof("Yacute")];+ char entity_pool_str3903[sizeof("sqcup")];+ char entity_pool_str3906[sizeof("odot")];+ char entity_pool_str3907[sizeof("Cacute")];+ char entity_pool_str3909[sizeof("nu")];+ char entity_pool_str3910[sizeof("tritime")];+ char entity_pool_str3912[sizeof("Egrave")];+ char entity_pool_str3913[sizeof("eplus")];+ char entity_pool_str3915[sizeof("backcong")];+ char entity_pool_str3918[sizeof("uplus")];+ char entity_pool_str3920[sizeof("Edot")];+ char entity_pool_str3924[sizeof("csupe")];+ char entity_pool_str3926[sizeof("simg")];+ char entity_pool_str3927[sizeof("UpperRightArrow")];+ char entity_pool_str3928[sizeof("csube")];+ char entity_pool_str3930[sizeof("dtri")];+ char entity_pool_str3931[sizeof("prnsim")];+ char entity_pool_str3936[sizeof("boxUr")];+ char entity_pool_str3937[sizeof("uuarr")];+ char entity_pool_str3945[sizeof("DownLeftTeeVector")];+ char entity_pool_str3946[sizeof("gsime")];+ char entity_pool_str3950[sizeof("bigotimes")];+ char entity_pool_str3951[sizeof("Dagger")];+ char entity_pool_str3954[sizeof("Intersection")];+ char entity_pool_str3967[sizeof("iacute")];+ char entity_pool_str3969[sizeof("prcue")];+ char entity_pool_str3981[sizeof("egsdot")];+ char entity_pool_str3987[sizeof("Implies")];+ char entity_pool_str3988[sizeof("VDash")];+ char entity_pool_str3996[sizeof("bump")];+ char entity_pool_str4015[sizeof("Mu")];+ char entity_pool_str4022[sizeof("vDash")];+ char entity_pool_str4028[sizeof("lvnE")];+ char entity_pool_str4033[sizeof("LeftTeeArrow")];+ char entity_pool_str4037[sizeof("Nacute")];+ char entity_pool_str4042[sizeof("UnderBrace")];+ char entity_pool_str4043[sizeof("Psi")];+ char entity_pool_str4047[sizeof("rhov")];+ char entity_pool_str4049[sizeof("lescc")];+ char entity_pool_str4055[sizeof("sup1")];+ char entity_pool_str4058[sizeof("sup2")];+ char entity_pool_str4066[sizeof("sup3")];+ char entity_pool_str4071[sizeof("bigodot")];+ char entity_pool_str4078[sizeof("Downarrow")];+ char entity_pool_str4080[sizeof("xsqcup")];+ char entity_pool_str4082[sizeof("barvee")];+ char entity_pool_str4087[sizeof("NegativeMediumSpace")];+ char entity_pool_str4088[sizeof("bumpe")];+ char entity_pool_str4100[sizeof("cscr")];+ char entity_pool_str4109[sizeof("nsc")];+ char entity_pool_str4115[sizeof("sup")];+ char entity_pool_str4122[sizeof("cedil")];+ char entity_pool_str4125[sizeof("boxVr")];+ char entity_pool_str4127[sizeof("origof")];+ char entity_pool_str4128[sizeof("zwj")];+ char entity_pool_str4129[sizeof("Igrave")];+ char entity_pool_str4137[sizeof("Idot")];+ char entity_pool_str4139[sizeof("xscr")];+ char entity_pool_str4140[sizeof("xi")];+ char entity_pool_str4144[sizeof("nGtv")];+ char entity_pool_str4153[sizeof("boxHu")];+ char entity_pool_str4163[sizeof("THORN")];+ char entity_pool_str4165[sizeof("Racute")];+ char entity_pool_str4167[sizeof("rarrhk")];+ char entity_pool_str4169[sizeof("larrhk")];+ char entity_pool_str4177[sizeof("rtriltri")];+ char entity_pool_str4189[sizeof("boxV")];+ char entity_pool_str4215[sizeof("dagger")];+ char entity_pool_str4220[sizeof("Omicron")];+ char entity_pool_str4226[sizeof("DoubleVerticalBar")];+ char entity_pool_str4229[sizeof("nexists")];+ char entity_pool_str4232[sizeof("Nu")];+ char entity_pool_str4233[sizeof("nexist")];+ char entity_pool_str4234[sizeof("gE")];+ char entity_pool_str4238[sizeof("ap")];+ char entity_pool_str4243[sizeof("Sup")];+ char entity_pool_str4244[sizeof("doteqdot")];+ char entity_pool_str4247[sizeof("eng")];+ char entity_pool_str4249[sizeof("caron")];+ char entity_pool_str4251[sizeof("boxHU")];+ char entity_pool_str4252[sizeof("gesdot")];+ char entity_pool_str4257[sizeof("ReverseEquilibrium")];+ char entity_pool_str4262[sizeof("boxUL")];+ char entity_pool_str4264[sizeof("supmult")];+ char entity_pool_str4267[sizeof("pitchfork")];+ char entity_pool_str4272[sizeof("numsp")];+ char entity_pool_str4285[sizeof("rang")];+ char entity_pool_str4287[sizeof("lang")];+ char entity_pool_str4290[sizeof("ocir")];+ char entity_pool_str4292[sizeof("rationals")];+ char entity_pool_str4294[sizeof("coprod")];+ char entity_pool_str4307[sizeof("ltlarr")];+ char entity_pool_str4308[sizeof("breve")];+ char entity_pool_str4310[sizeof("nang")];+ char entity_pool_str4315[sizeof("swarhk")];+ char entity_pool_str4322[sizeof("raquo")];+ char entity_pool_str4324[sizeof("laquo")];+ char entity_pool_str4325[sizeof("supsub")];+ char entity_pool_str4329[sizeof("Cup")];+ char entity_pool_str4330[sizeof("ape")];+ char entity_pool_str4331[sizeof("quest")];+ char entity_pool_str4336[sizeof("nwarhk")];+ char entity_pool_str4340[sizeof("supset")];+ char entity_pool_str4342[sizeof("downarrow")];+ char entity_pool_str4351[sizeof("duarr")];+ char entity_pool_str4353[sizeof("apos")];+ char entity_pool_str4354[sizeof("Ograve")];+ char entity_pool_str4355[sizeof("shortparallel")];+ char entity_pool_str4364[sizeof("nsucc")];+ char entity_pool_str4368[sizeof("LongLeftArrow")];+ char entity_pool_str4377[sizeof("lesdoto")];+ char entity_pool_str4384[sizeof("supne")];+ char entity_pool_str4388[sizeof("nGg")];+ char entity_pool_str4396[sizeof("raemptyv")];+ char entity_pool_str4397[sizeof("supsup")];+ char entity_pool_str4398[sizeof("laemptyv")];+ char entity_pool_str4401[sizeof("topfork")];+ char entity_pool_str4423[sizeof("Eogon")];+ char entity_pool_str4429[sizeof("risingdotseq")];+ char entity_pool_str4431[sizeof("bumpeq")];+ char entity_pool_str4435[sizeof("lstrok")];+ char entity_pool_str4439[sizeof("Tstrok")];+ char entity_pool_str4440[sizeof("gsim")];+ char entity_pool_str4443[sizeof("bemptyv")];+ char entity_pool_str4444[sizeof("zacute")];+ char entity_pool_str4445[sizeof("gsiml")];+ char entity_pool_str4448[sizeof("tstrok")];+ char entity_pool_str4450[sizeof("roang")];+ char entity_pool_str4451[sizeof("boxVL")];+ char entity_pool_str4452[sizeof("loang")];+ char entity_pool_str4456[sizeof("nleqslant")];+ char entity_pool_str4462[sizeof("sbquo")];+ char entity_pool_str4464[sizeof("searhk")];+ char entity_pool_str4465[sizeof("lnapprox")];+ char entity_pool_str4468[sizeof("Supset")];+ char entity_pool_str4470[sizeof("boxHd")];+ char entity_pool_str4471[sizeof("varkappa")];+ char entity_pool_str4475[sizeof("circeq")];+ char entity_pool_str4477[sizeof("yopf")];+ char entity_pool_str4479[sizeof("UnionPlus")];+ char entity_pool_str4484[sizeof("Lang")];+ char entity_pool_str4485[sizeof("nearhk")];+ char entity_pool_str4486[sizeof("shcy")];+ char entity_pool_str4492[sizeof("cfr")];+ char entity_pool_str4506[sizeof("Kappa")];+ char entity_pool_str4507[sizeof("ljcy")];+ char entity_pool_str4508[sizeof("MediumSpace")];+ char entity_pool_str4511[sizeof("supseteq")];+ char entity_pool_str4512[sizeof("supseteqq")];+ char entity_pool_str4517[sizeof("reg")];+ char entity_pool_str4518[sizeof("amacr")];+ char entity_pool_str4519[sizeof("leg")];+ char entity_pool_str4524[sizeof("weierp")];+ char entity_pool_str4525[sizeof("TScy")];+ char entity_pool_str4529[sizeof("supsetneq")];+ char entity_pool_str4530[sizeof("njcy")];+ char entity_pool_str4531[sizeof("xfr")];+ char entity_pool_str4533[sizeof("mu")];+ char entity_pool_str4539[sizeof("nvinfin")];+ char entity_pool_str4540[sizeof("boxUR")];+ char entity_pool_str4545[sizeof("xoplus")];+ char entity_pool_str4551[sizeof("leftleftarrows")];+ char entity_pool_str4552[sizeof("sum")];+ char entity_pool_str4559[sizeof("beth")];+ char entity_pool_str4563[sizeof("complement")];+ char entity_pool_str4573[sizeof("num")];+ char entity_pool_str4574[sizeof("amp")];+ char entity_pool_str4583[sizeof("boxUl")];+ char entity_pool_str4590[sizeof("NotGreater")];+ char entity_pool_str4591[sizeof("boxplus")];+ char entity_pool_str4592[sizeof("jmath")];+ char entity_pool_str4594[sizeof("sfrown")];+ char entity_pool_str4596[sizeof("Dstrok")];+ char entity_pool_str4598[sizeof("and")];+ char entity_pool_str4599[sizeof("NotGreaterGreater")];+ char entity_pool_str4606[sizeof("NotGreaterSlantEqual")];+ char entity_pool_str4608[sizeof("NotGreaterLess")];+ char entity_pool_str4609[sizeof("quot")];+ char entity_pool_str4616[sizeof("NotGreaterFullEqual")];+ char entity_pool_str4617[sizeof("hyphen")];+ char entity_pool_str4618[sizeof("planck")];+ char entity_pool_str4620[sizeof("TildeEqual")];+ char entity_pool_str4627[sizeof("tosa")];+ char entity_pool_str4632[sizeof("Lstrok")];+ char entity_pool_str4635[sizeof("shy")];+ char entity_pool_str4639[sizeof("xnis")];+ char entity_pool_str4640[sizeof("Iogon")];+ char entity_pool_str4643[sizeof("DZcy")];+ char entity_pool_str4645[sizeof("ohbar")];+ char entity_pool_str4652[sizeof("cirscir")];+ char entity_pool_str4654[sizeof("sext")];+ char entity_pool_str4668[sizeof("para")];+ char entity_pool_str4671[sizeof("ast")];+ char entity_pool_str4678[sizeof("questeq")];+ char entity_pool_str4680[sizeof("Sum")];+ char entity_pool_str4682[sizeof("DScy")];+ char entity_pool_str4684[sizeof("ENG")];+ char entity_pool_str4686[sizeof("ZHcy")];+ char entity_pool_str4689[sizeof("longleftarrow")];+ char entity_pool_str4691[sizeof("dash")];+ char entity_pool_str4699[sizeof("DownTeeArrow")];+ char entity_pool_str4706[sizeof("supsetneqq")];+ char entity_pool_str4714[sizeof("profalar")];+ char entity_pool_str4718[sizeof("oacute")];+ char entity_pool_str4729[sizeof("boxVR")];+ char entity_pool_str4732[sizeof("Eacute")];+ char entity_pool_str4738[sizeof("supplus")];+ char entity_pool_str4740[sizeof("hookleftarrow")];+ char entity_pool_str4743[sizeof("CloseCurlyQuote")];+ char entity_pool_str4746[sizeof("trisb")];+ char entity_pool_str4747[sizeof("dotsquare")];+ char entity_pool_str4751[sizeof("rtimes")];+ char entity_pool_str4753[sizeof("ltimes")];+ char entity_pool_str4756[sizeof("toea")];+ char entity_pool_str4757[sizeof("Agrave")];+ char entity_pool_str4760[sizeof("Assign")];+ char entity_pool_str4761[sizeof("Rang")];+ char entity_pool_str4762[sizeof("iocy")];+ char entity_pool_str4764[sizeof("NotPrecedesEqual")];+ char entity_pool_str4766[sizeof("aopf")];+ char entity_pool_str4768[sizeof("chi")];+ char entity_pool_str4771[sizeof("quaternions")];+ char entity_pool_str4772[sizeof("boxVl")];+ char entity_pool_str4773[sizeof("NotGreaterEqual")];+ char entity_pool_str4777[sizeof("xhArr")];+ char entity_pool_str4791[sizeof("orderof")];+ char entity_pool_str4794[sizeof("rsquo")];+ char entity_pool_str4796[sizeof("lsquo")];+ char entity_pool_str4797[sizeof("yscr")];+ char entity_pool_str4800[sizeof("gdot")];+ char entity_pool_str4802[sizeof("NotSquareSubsetEqual")];+ char entity_pool_str4803[sizeof("KHcy")];+ char entity_pool_str4809[sizeof("bsolb")];+ char entity_pool_str4810[sizeof("NotSquareSubset")];+ char entity_pool_str4811[sizeof("SHcy")];+ char entity_pool_str4821[sizeof("YIcy")];+ char entity_pool_str4825[sizeof("cwint")];+ char entity_pool_str4828[sizeof("Theta")];+ char entity_pool_str4837[sizeof("theta")];+ char entity_pool_str4838[sizeof("xlArr")];+ char entity_pool_str4840[sizeof("NotSquareSupersetEqual")];+ char entity_pool_str4843[sizeof("demptyv")];+ char entity_pool_str4844[sizeof("triangle")];+ char entity_pool_str4846[sizeof("Gdot")];+ char entity_pool_str4848[sizeof("NotSquareSuperset")];+ char entity_pool_str4857[sizeof("Abreve")];+ char entity_pool_str4860[sizeof("dstrok")];+ char entity_pool_str4861[sizeof("pertenk")];+ char entity_pool_str4866[sizeof("rbrack")];+ char entity_pool_str4868[sizeof("lbrack")];+ char entity_pool_str4872[sizeof("odsold")];+ char entity_pool_str4878[sizeof("omid")];+ char entity_pool_str4880[sizeof("xrArr")];+ char entity_pool_str4882[sizeof("triangleleft")];+ char entity_pool_str4883[sizeof("NotGreaterTilde")];+ char entity_pool_str4884[sizeof("colone")];+ char entity_pool_str4886[sizeof("Longleftarrow")];+ char entity_pool_str4888[sizeof("iota")];+ char entity_pool_str4890[sizeof("colon")];+ char entity_pool_str4891[sizeof("Zeta")];+ char entity_pool_str4892[sizeof("gbreve")];+ char entity_pool_str4897[sizeof("CHcy")];+ char entity_pool_str4900[sizeof("YUcy")];+ char entity_pool_str4901[sizeof("REG")];+ char entity_pool_str4902[sizeof("szlig")];+ char entity_pool_str4909[sizeof("dzcy")];+ char entity_pool_str4911[sizeof("beta")];+ char entity_pool_str4918[sizeof("euro")];+ char entity_pool_str4921[sizeof("LeftArrow")];+ char entity_pool_str4924[sizeof("CapitalDifferentialD")];+ char entity_pool_str4926[sizeof("ring")];+ char entity_pool_str4927[sizeof("Laplacetrf")];+ char entity_pool_str4932[sizeof("djcy")];+ char entity_pool_str4934[sizeof("oplus")];+ char entity_pool_str4937[sizeof("integers")];+ char entity_pool_str4938[sizeof("Gbreve")];+ char entity_pool_str4940[sizeof("ubrcy")];+ char entity_pool_str4941[sizeof("euml")];+ char entity_pool_str4944[sizeof("deg")];+ char entity_pool_str4946[sizeof("uuml")];+ char entity_pool_str4949[sizeof("Iacute")];+ char entity_pool_str4950[sizeof("succeq")];+ char entity_pool_str4952[sizeof("KJcy")];+ char entity_pool_str4961[sizeof("CupCap")];+ char entity_pool_str4975[sizeof("tscy")];+ char entity_pool_str4982[sizeof("cent")];+ char entity_pool_str4991[sizeof("DJcy")];+ char entity_pool_str5009[sizeof("TildeFullEqual")];+ char entity_pool_str5011[sizeof("triangleq")];+ char entity_pool_str5016[sizeof("duhar")];+ char entity_pool_str5025[sizeof("LeftDoubleBracket")];+ char entity_pool_str5027[sizeof("LJcy")];+ char entity_pool_str5036[sizeof("iecy")];+ char entity_pool_str5043[sizeof("trianglelefteq")];+ char entity_pool_str5049[sizeof("nequiv")];+ char entity_pool_str5055[sizeof("nshortparallel")];+ char entity_pool_str5062[sizeof("ndash")];+ char entity_pool_str5063[sizeof("bowtie")];+ char entity_pool_str5065[sizeof("fjlig")];+ char entity_pool_str5072[sizeof("Ubrcy")];+ char entity_pool_str5074[sizeof("vartheta")];+ char entity_pool_str5078[sizeof("Uuml")];+ char entity_pool_str5084[sizeof("vartriangleright")];+ char entity_pool_str5085[sizeof("vartriangleleft")];+ char entity_pool_str5086[sizeof("ascr")];+ char entity_pool_str5089[sizeof("succcurlyeq")];+ char entity_pool_str5093[sizeof("cwconint")];+ char entity_pool_str5101[sizeof("sc")];+ char entity_pool_str5103[sizeof("fllig")];+ char entity_pool_str5105[sizeof("circledast")];+ char entity_pool_str5108[sizeof("Vdash")];+ char entity_pool_str5112[sizeof("nVdash")];+ char entity_pool_str5120[sizeof("suplarr")];+ char entity_pool_str5124[sizeof("robrk")];+ char entity_pool_str5126[sizeof("lobrk")];+ char entity_pool_str5142[sizeof("vdash")];+ char entity_pool_str5143[sizeof("Yuml")];+ char entity_pool_str5151[sizeof("gt")];+ char entity_pool_str5156[sizeof("ccaps")];+ char entity_pool_str5173[sizeof("Succeeds")];+ char entity_pool_str5174[sizeof("Oacute")];+ char entity_pool_str5175[sizeof("TRADE")];+ char entity_pool_str5176[sizeof("NJcy")];+ char entity_pool_str5181[sizeof("gtdot")];+ char entity_pool_str5189[sizeof("yfr")];+ char entity_pool_str5192[sizeof("compfn")];+ char entity_pool_str5197[sizeof("Gt")];+ char entity_pool_str5198[sizeof("scnE")];+ char entity_pool_str5199[sizeof("ijlig")];+ char entity_pool_str5203[sizeof("circledS")];+ char entity_pool_str5206[sizeof("yen")];+ char entity_pool_str5208[sizeof("thetasym")];+ char entity_pool_str5211[sizeof("iuml")];+ char entity_pool_str5212[sizeof("SucceedsSlantEqual")];+ char entity_pool_str5217[sizeof("boxH")];+ char entity_pool_str5218[sizeof("mumap")];+ char entity_pool_str5222[sizeof("rightrightarrows")];+ char entity_pool_str5227[sizeof("coloneq")];+ char entity_pool_str5229[sizeof("Sc")];+ char entity_pool_str5230[sizeof("glj")];+ char entity_pool_str5231[sizeof("iexcl")];+ char entity_pool_str5234[sizeof("ccups")];+ char entity_pool_str5236[sizeof("xcap")];+ char entity_pool_str5237[sizeof("zhcy")];+ char entity_pool_str5241[sizeof("boxHD")];+ char entity_pool_str5250[sizeof("leqslant")];+ char entity_pool_str5252[sizeof("UpperLeftArrow")];+ char entity_pool_str5257[sizeof("dblac")];+ char entity_pool_str5260[sizeof("puncsp")];+ char entity_pool_str5262[sizeof("ccaron")];+ char entity_pool_str5264[sizeof("rbbrk")];+ char entity_pool_str5266[sizeof("lbbrk")];+ char entity_pool_str5268[sizeof("Aogon")];+ char entity_pool_str5269[sizeof("LeftTriangleBar")];+ char entity_pool_str5272[sizeof("gesdotol")];+ char entity_pool_str5273[sizeof("LeftTriangleEqual")];+ char entity_pool_str5274[sizeof("LeftTriangle")];+ char entity_pool_str5280[sizeof("conint")];+ char entity_pool_str5283[sizeof("drbkarow")];+ char entity_pool_str5295[sizeof("rtrif")];+ char entity_pool_str5297[sizeof("ltrif")];+ char entity_pool_str5300[sizeof("ReverseUpEquilibrium")];+ char entity_pool_str5306[sizeof("LeftCeiling")];+ char entity_pool_str5308[sizeof("utrif")];+ char entity_pool_str5314[sizeof("xcup")];+ char entity_pool_str5319[sizeof("fallingdotseq")];+ char entity_pool_str5325[sizeof("rcedil")];+ char entity_pool_str5327[sizeof("lcedil")];+ char entity_pool_str5329[sizeof("scedil")];+ char entity_pool_str5331[sizeof("Tcedil")];+ char entity_pool_str5333[sizeof("starf")];+ char entity_pool_str5334[sizeof("boxminus")];+ char entity_pool_str5340[sizeof("tcedil")];+ char entity_pool_str5341[sizeof("ZeroWidthSpace")];+ char entity_pool_str5350[sizeof("ncedil")];+ char entity_pool_str5358[sizeof("phiv")];+ char entity_pool_str5375[sizeof("ic")];+ char entity_pool_str5384[sizeof("capdot")];+ char entity_pool_str5387[sizeof("dscy")];+ char entity_pool_str5397[sizeof("check")];+ char entity_pool_str5398[sizeof("ovbar")];+ char entity_pool_str5405[sizeof("ntriangleleft")];+ char entity_pool_str5411[sizeof("RightTee")];+ char entity_pool_str5412[sizeof("nvge")];+ char entity_pool_str5424[sizeof("leftrightsquigarrow")];+ char entity_pool_str5431[sizeof("lozenge")];+ char entity_pool_str5434[sizeof("RightTriangleBar")];+ char entity_pool_str5436[sizeof("RightTeeVector")];+ char entity_pool_str5438[sizeof("RightTriangleEqual")];+ char entity_pool_str5439[sizeof("RightTriangle")];+ char entity_pool_str5449[sizeof("Kcedil")];+ char entity_pool_str5457[sizeof("Scedil")];+ char entity_pool_str5468[sizeof("cirfnint")];+ char entity_pool_str5471[sizeof("empty")];+ char entity_pool_str5478[sizeof("afr")];+ char entity_pool_str5482[sizeof("DiacriticalTilde")];+ char entity_pool_str5489[sizeof("LeftDownVector")];+ char entity_pool_str5492[sizeof("LeftDownVectorBar")];+ char entity_pool_str5501[sizeof("lEg")];+ char entity_pool_str5509[sizeof("ApplyFunction")];+ char entity_pool_str5512[sizeof("bumpE")];+ char entity_pool_str5524[sizeof("Lcedil")];+ char entity_pool_str5528[sizeof("caret")];+ char entity_pool_str5530[sizeof("Barv")];+ char entity_pool_str5543[sizeof("Ccedil")];+ char entity_pool_str5547[sizeof("circledR")];+ char entity_pool_str5548[sizeof("LeftDownTeeVector")];+ char entity_pool_str5552[sizeof("tshcy")];+ char entity_pool_str5556[sizeof("DotEqual")];+ char entity_pool_str5564[sizeof("centerdot")];+ char entity_pool_str5566[sizeof("ntrianglelefteq")];+ char entity_pool_str5568[sizeof("minus")];+ char entity_pool_str5570[sizeof("gimel")];+ char entity_pool_str5577[sizeof("Aacute")];+ char entity_pool_str5578[sizeof("gtcir")];+ char entity_pool_str5583[sizeof("gtrarr")];+ char entity_pool_str5584[sizeof("bull")];+ char entity_pool_str5587[sizeof("DownArrow")];+ char entity_pool_str5593[sizeof("rdquor")];+ char entity_pool_str5595[sizeof("ldquor")];+ char entity_pool_str5598[sizeof("intlarhk")];+ char entity_pool_str5602[sizeof("utilde")];+ char entity_pool_str5612[sizeof("gacute")];+ char entity_pool_str5614[sizeof("ntilde")];+ char entity_pool_str5615[sizeof("af")];+ char entity_pool_str5618[sizeof("Hstrok")];+ char entity_pool_str5620[sizeof("exponentiale")];+ char entity_pool_str5621[sizeof("minusb")];+ char entity_pool_str5625[sizeof("RightUpTeeVector")];+ char entity_pool_str5630[sizeof("UpTeeArrow")];+ char entity_pool_str5639[sizeof("zeta")];+ char entity_pool_str5644[sizeof("DiacriticalDot")];+ char entity_pool_str5645[sizeof("DiacriticalDoubleAcute")];+ char entity_pool_str5663[sizeof("nleftarrow")];+ char entity_pool_str5664[sizeof("hkswarow")];+ char entity_pool_str5666[sizeof("iiota")];+ char entity_pool_str5669[sizeof("apacir")];+ char entity_pool_str5673[sizeof("Ncedil")];+ char entity_pool_str5678[sizeof("capand")];+ char entity_pool_str5686[sizeof("mdash")];+ char entity_pool_str5689[sizeof("filig")];+ char entity_pool_str5690[sizeof("scnsim")];+ char entity_pool_str5699[sizeof("realpart")];+ char entity_pool_str5703[sizeof("leftthreetimes")];+ char entity_pool_str5704[sizeof("asymp")];+ char entity_pool_str5718[sizeof("hellip")];+ char entity_pool_str5722[sizeof("dtrif")];+ char entity_pool_str5724[sizeof("NotExists")];+ char entity_pool_str5728[sizeof("sccue")];+ char entity_pool_str5733[sizeof("YAcy")];+ char entity_pool_str5734[sizeof("Utilde")];+ char entity_pool_str5741[sizeof("NotEqual")];+ char entity_pool_str5747[sizeof("ThinSpace")];+ char entity_pool_str5754[sizeof("apE")];+ char entity_pool_str5762[sizeof("bullet")];+ char entity_pool_str5765[sizeof("CloseCurlyDoubleQuote")];+ char entity_pool_str5766[sizeof("Delta")];+ char entity_pool_str5776[sizeof("gg")];+ char entity_pool_str5780[sizeof("otimes")];+ char entity_pool_str5799[sizeof("wreath")];+ char entity_pool_str5801[sizeof("Rcedil")];+ char entity_pool_str5807[sizeof("eth")];+ char entity_pool_str5808[sizeof("supnE")];+ char entity_pool_str5811[sizeof("awint")];+ char entity_pool_str5817[sizeof("Breve")];+ char entity_pool_str5822[sizeof("Gg")];+ char entity_pool_str5824[sizeof("HumpEqual")];+ char entity_pool_str5837[sizeof("Lleftarrow")];+ char entity_pool_str5838[sizeof("boxdr")];+ char entity_pool_str5847[sizeof("succneqq")];+ char entity_pool_str5848[sizeof("uring")];+ char entity_pool_str5849[sizeof("LessSlantEqual")];+ char entity_pool_str5860[sizeof("nvdash")];+ char entity_pool_str5866[sizeof("Hacek")];+ char entity_pool_str5867[sizeof("itilde")];+ char entity_pool_str5870[sizeof("Iota")];+ char entity_pool_str5872[sizeof("IOcy")];+ char entity_pool_str5884[sizeof("boxDr")];+ char entity_pool_str5891[sizeof("SucceedsTilde")];+ char entity_pool_str5905[sizeof("LeftFloor")];+ char entity_pool_str5906[sizeof("Vvdash")];+ char entity_pool_str5923[sizeof("triangledown")];+ char entity_pool_str5927[sizeof("LongLeftRightArrow")];+ char entity_pool_str5928[sizeof("RightFloor")];+ char entity_pool_str5931[sizeof("DownRightTeeVector")];+ char entity_pool_str5933[sizeof("quatint")];+ char entity_pool_str5937[sizeof("Ntilde")];+ char entity_pool_str5940[sizeof("Bumpeq")];+ char entity_pool_str5949[sizeof("gvnE")];+ char entity_pool_str5951[sizeof("boxhu")];+ char entity_pool_str5956[sizeof("gtlPar")];+ char entity_pool_str5959[sizeof("nprec")];+ char entity_pool_str5962[sizeof("ouml")];+ char entity_pool_str5970[sizeof("gescc")];+ char entity_pool_str5976[sizeof("Euml")];+ char entity_pool_str5980[sizeof("Uring")];+ char entity_pool_str5982[sizeof("UnderBracket")];+ char entity_pool_str5983[sizeof("nLtv")];+ char entity_pool_str5984[sizeof("LeftArrowBar")];+ char entity_pool_str5985[sizeof("ncongdot")];+ char entity_pool_str6003[sizeof("asympeq")];+ char entity_pool_str6023[sizeof("minusdu")];+ char entity_pool_str6030[sizeof("delta")];+ char entity_pool_str6032[sizeof("harrw")];+ char entity_pool_str6038[sizeof("andslope")];+ char entity_pool_str6043[sizeof("cdot")];+ char entity_pool_str6048[sizeof("Cayleys")];+ char entity_pool_str6049[sizeof("boxhU")];+ char entity_pool_str6052[sizeof("succsim")];+ char entity_pool_str6061[sizeof("cirE")];+ char entity_pool_str6062[sizeof("sdotb")];+ char entity_pool_str6066[sizeof("odash")];+ char entity_pool_str6067[sizeof("cirmid")];+ char entity_pool_str6068[sizeof("suphsub")];+ char entity_pool_str6069[sizeof("supdsub")];+ char entity_pool_str6077[sizeof("supdot")];+ char entity_pool_str6079[sizeof("awconint")];+ char entity_pool_str6084[sizeof("TSHcy")];+ char entity_pool_str6087[sizeof("grave")];+ char entity_pool_str6101[sizeof("lsimg")];+ char entity_pool_str6106[sizeof("UpArrowDownArrow")];+ char entity_pool_str6121[sizeof("LeftVector")];+ char entity_pool_str6122[sizeof("DoubleRightArrow")];+ char entity_pool_str6129[sizeof("NegativeThinSpace")];+ char entity_pool_str6140[sizeof("lhblk")];+ char entity_pool_str6146[sizeof("cire")];+ char entity_pool_str6147[sizeof("nVDash")];+ char entity_pool_str6151[sizeof("uhblk")];+ char entity_pool_str6155[sizeof("imagpart")];+ char entity_pool_str6161[sizeof("RightUpDownVector")];+ char entity_pool_str6164[sizeof("boxdL")];+ char entity_pool_str6176[sizeof("gla")];+ char entity_pool_str6193[sizeof("Iuml")];+ char entity_pool_str6203[sizeof("oelig")];+ char entity_pool_str6208[sizeof("NotLessSlantEqual")];+ char entity_pool_str6210[sizeof("boxDL")];+ char entity_pool_str6215[sizeof("gamma")];+ char entity_pool_str6236[sizeof("Otimes")];+ char entity_pool_str6248[sizeof("longleftrightarrow")];+ char entity_pool_str6261[sizeof("Gamma")];+ char entity_pool_str6262[sizeof("bigwedge")];+ char entity_pool_str6268[sizeof("boxhd")];+ char entity_pool_str6283[sizeof("supE")];+ char entity_pool_str6292[sizeof("LeftUpTeeVector")];+ char entity_pool_str6298[sizeof("gesdoto")];+ char entity_pool_str6304[sizeof("kappa")];+ char entity_pool_str6315[sizeof("ngeqslant")];+ char entity_pool_str6340[sizeof("gtrless")];+ char entity_pool_str6351[sizeof("fflig")];+ char entity_pool_str6352[sizeof("bigsqcup")];+ char entity_pool_str6367[sizeof("kgreen")];+ char entity_pool_str6368[sizeof("supe")];+ char entity_pool_str6370[sizeof("boxtimes")];+ char entity_pool_str6386[sizeof("gnapprox")];+ char entity_pool_str6394[sizeof("downdownarrows")];+ char entity_pool_str6403[sizeof("biguplus")];+ char entity_pool_str6404[sizeof("khcy")];+ char entity_pool_str6406[sizeof("ddagger")];+ char entity_pool_str6418[sizeof("Ouml")];+ char entity_pool_str6420[sizeof("Beta")];+ char entity_pool_str6421[sizeof("minusd")];+ char entity_pool_str6422[sizeof("succnsim")];+ char entity_pool_str6424[sizeof("ctdot")];+ char entity_pool_str6427[sizeof("kjcy")];+ char entity_pool_str6428[sizeof("gjcy")];+ char entity_pool_str6430[sizeof("ncong")];+ char entity_pool_str6431[sizeof("xvee")];+ char entity_pool_str6432[sizeof("bcong")];+ char entity_pool_str6439[sizeof("sqsube")];+ char entity_pool_str6442[sizeof("boxdR")];+ char entity_pool_str6445[sizeof("Longleftrightarrow")];+ char entity_pool_str6447[sizeof("sqsub")];+ char entity_pool_str6451[sizeof("DownLeftRightVector")];+ char entity_pool_str6454[sizeof("sqsubset")];+ char entity_pool_str6456[sizeof("NotVerticalBar")];+ char entity_pool_str6461[sizeof("NotEqualTilde")];+ char entity_pool_str6485[sizeof("boxdl")];+ char entity_pool_str6488[sizeof("boxDR")];+ char entity_pool_str6490[sizeof("andand")];+ char entity_pool_str6502[sizeof("RightVector")];+ char entity_pool_str6504[sizeof("IJlig")];+ char entity_pool_str6505[sizeof("NotTildeEqual")];+ char entity_pool_str6509[sizeof("angzarr")];+ char entity_pool_str6515[sizeof("angrt")];+ char entity_pool_str6521[sizeof("acd")];+ char entity_pool_str6524[sizeof("andd")];+ char entity_pool_str6526[sizeof("nrarrc")];+ char entity_pool_str6527[sizeof("VeryThinSpace")];+ char entity_pool_str6529[sizeof("Superset")];+ char entity_pool_str6531[sizeof("boxDl")];+ char entity_pool_str6535[sizeof("vnsub")];+ char entity_pool_str6538[sizeof("ccupssm")];+ char entity_pool_str6548[sizeof("varnothing")];+ char entity_pool_str6552[sizeof("rcy")];+ char entity_pool_str6554[sizeof("lcy")];+ char entity_pool_str6556[sizeof("scy")];+ char entity_pool_str6558[sizeof("Tcy")];+ char entity_pool_str6559[sizeof("Zcy")];+ char entity_pool_str6560[sizeof("ecy")];+ char entity_pool_str6561[sizeof("rdsh")];+ char entity_pool_str6563[sizeof("ldsh")];+ char entity_pool_str6565[sizeof("ucy")];+ char entity_pool_str6566[sizeof("boxVH")];+ char entity_pool_str6567[sizeof("tcy")];+ char entity_pool_str6577[sizeof("ncy")];+ char entity_pool_str6579[sizeof("bcy")];+ char entity_pool_str6580[sizeof("ntgl")];+ char entity_pool_str6585[sizeof("Jcy")];+ char entity_pool_str6600[sizeof("congdot")];+ char entity_pool_str6607[sizeof("angst")];+ char entity_pool_str6609[sizeof("RightDownTeeVector")];+ char entity_pool_str6612[sizeof("OverParenthesis")];+ char entity_pool_str6613[sizeof("ltquest")];+ char entity_pool_str6615[sizeof("pcy")];+ char entity_pool_str6618[sizeof("otilde")];+ char entity_pool_str6619[sizeof("rdquo")];+ char entity_pool_str6621[sizeof("ldquo")];+ char entity_pool_str6623[sizeof("Vcy")];+ char entity_pool_str6626[sizeof("capbrcup")];+ char entity_pool_str6646[sizeof("bdquo")];+ char entity_pool_str6650[sizeof("DownArrowBar")];+ char entity_pool_str6657[sizeof("vcy")];+ char entity_pool_str6665[sizeof("angrtvb")];+ char entity_pool_str6676[sizeof("Kcy")];+ char entity_pool_str6683[sizeof("Mcy")];+ char entity_pool_str6684[sizeof("Scy")];+ char entity_pool_str6691[sizeof("NewLine")];+ char entity_pool_str6696[sizeof("fcy")];+ char entity_pool_str6697[sizeof("Ucy")];+ char entity_pool_str6704[sizeof("boxVh")];+ char entity_pool_str6715[sizeof("Dcy")];+ char entity_pool_str6738[sizeof("hstrok")];+ char entity_pool_str6751[sizeof("Lcy")];+ char entity_pool_str6762[sizeof("Ycy")];+ char entity_pool_str6775[sizeof("supsim")];+ char entity_pool_str6789[sizeof("NonBreakingSpace")];+ char entity_pool_str6790[sizeof("OverBar")];+ char entity_pool_str6791[sizeof("sqsubseteq")];+ char entity_pool_str6797[sizeof("GJcy")];+ char entity_pool_str6800[sizeof("OverBrace")];+ char entity_pool_str6806[sizeof("eqcirc")];+ char entity_pool_str6819[sizeof("OverBracket")];+ char entity_pool_str6821[sizeof("Auml")];+ char entity_pool_str6829[sizeof("acute")];+ char entity_pool_str6830[sizeof("icy")];+ char entity_pool_str6849[sizeof("Itilde")];+ char entity_pool_str6850[sizeof("HilbertSpace")];+ char entity_pool_str6854[sizeof("omega")];+ char entity_pool_str6855[sizeof("cacute")];+ char entity_pool_str6861[sizeof("scirc")];+ char entity_pool_str6865[sizeof("ecirc")];+ char entity_pool_str6870[sizeof("ucirc")];+ char entity_pool_str6872[sizeof("GreaterSlantEqual")];+ char entity_pool_str6890[sizeof("Jcirc")];+ char entity_pool_str6895[sizeof("nvDash")];+ char entity_pool_str6896[sizeof("Wcirc")];+ char entity_pool_str6900[sizeof("Ncy")];+ char entity_pool_str6921[sizeof("RightTeeArrow")];+ char entity_pool_str6942[sizeof("LessFullEqual")];+ char entity_pool_str6958[sizeof("ltcc")];+ char entity_pool_str6963[sizeof("aleph")];+ char entity_pool_str6979[sizeof("dcy")];+ char entity_pool_str6989[sizeof("Scirc")];+ char entity_pool_str6991[sizeof("lessapprox")];+ char entity_pool_str7000[sizeof("IEcy")];+ char entity_pool_str7001[sizeof("LowerRightArrow")];+ char entity_pool_str7002[sizeof("Ucirc")];+ char entity_pool_str7021[sizeof("agrave")];+ char entity_pool_str7023[sizeof("MinusPlus")];+ char entity_pool_str7024[sizeof("bigvee")];+ char entity_pool_str7028[sizeof("Rcy")];+ char entity_pool_str7034[sizeof("suphsol")];+ char entity_pool_str7037[sizeof("EmptyVerySmallSquare")];+ char entity_pool_str7039[sizeof("boxhD")];+ char entity_pool_str7047[sizeof("precapprox")];+ char entity_pool_str7066[sizeof("angrtvbd")];+ char entity_pool_str7067[sizeof("Ycirc")];+ char entity_pool_str7071[sizeof("sub")];+ char entity_pool_str7074[sizeof("Otilde")];+ char entity_pool_str7075[sizeof("Ccirc")];+ char entity_pool_str7085[sizeof("Fcy")];+ char entity_pool_str7090[sizeof("complexes")];+ char entity_pool_str7096[sizeof("subrarr")];+ char entity_pool_str7115[sizeof("InvisibleComma")];+ char entity_pool_str7120[sizeof("boxur")];+ char entity_pool_str7121[sizeof("abreve")];+ char entity_pool_str7127[sizeof("ntlg")];+ char entity_pool_str7135[sizeof("icirc")];+ char entity_pool_str7142[sizeof("xdtri")];+ char entity_pool_str7143[sizeof("circ")];+ char entity_pool_str7168[sizeof("gtrdot")];+ char entity_pool_str7171[sizeof("geqslant")];+ char entity_pool_str7183[sizeof("ntriangleright")];+ char entity_pool_str7198[sizeof("cuepr")];+ char entity_pool_str7199[sizeof("Sub")];+ char entity_pool_str7201[sizeof("mcy")];+ char entity_pool_str7212[sizeof("timesbar")];+ char entity_pool_str7214[sizeof("hksearow")];+ char entity_pool_str7217[sizeof("sigma")];+ char entity_pool_str7224[sizeof("cupor")];+ char entity_pool_str7230[sizeof("oslash")];+ char entity_pool_str7231[sizeof("dzigrarr")];+ char entity_pool_str7234[sizeof("leftrightharpoons")];+ char entity_pool_str7245[sizeof("rightleftharpoons")];+ char entity_pool_str7247[sizeof("kcedil")];+ char entity_pool_str7256[sizeof("submult")];+ char entity_pool_str7260[sizeof("curren")];+ char entity_pool_str7269[sizeof("LeftTeeVector")];+ char entity_pool_str7274[sizeof("bigstar")];+ char entity_pool_str7277[sizeof("cup")];+ char entity_pool_str7278[sizeof("LongRightArrow")];+ char entity_pool_str7294[sizeof("Gcedil")];+ char entity_pool_str7296[sizeof("PrecedesEqual")];+ char entity_pool_str7307[sizeof("zcy")];+ char entity_pool_str7309[sizeof("planckh")];+ char entity_pool_str7310[sizeof("Omega")];+ char entity_pool_str7317[sizeof("subsub")];+ char entity_pool_str7325[sizeof("rdca")];+ char entity_pool_str7326[sizeof("cups")];+ char entity_pool_str7327[sizeof("ldca")];+ char entity_pool_str7332[sizeof("subset")];+ char entity_pool_str7333[sizeof("NotSucceeds")];+ char entity_pool_str7334[sizeof("LeftArrowRightArrow")];+ char entity_pool_str7337[sizeof("wcirc")];+ char entity_pool_str7338[sizeof("RightAngleBracket")];+ char entity_pool_str7344[sizeof("ntrianglerighteq")];+ char entity_pool_str7345[sizeof("Sigma")];+ char entity_pool_str7350[sizeof("NotSucceedsTilde")];+ char entity_pool_str7364[sizeof("DiacriticalAcute")];+ char entity_pool_str7376[sizeof("subne")];+ char entity_pool_str7378[sizeof("Product")];+ char entity_pool_str7385[sizeof("circleddash")];+ char entity_pool_str7389[sizeof("subsup")];+ char entity_pool_str7397[sizeof("copy")];+ char entity_pool_str7403[sizeof("eta")];+ char entity_pool_str7409[sizeof("angmsd")];+ char entity_pool_str7434[sizeof("natural")];+ char entity_pool_str7436[sizeof("supedot")];+ char entity_pool_str7437[sizeof("naturals")];+ char entity_pool_str7443[sizeof("triangleright")];+ char entity_pool_str7445[sizeof("DiacriticalGrave")];+ char entity_pool_str7446[sizeof("boxuL")];+ char entity_pool_str7447[sizeof("cong")];+ char entity_pool_str7451[sizeof("telrec")];+ char entity_pool_str7454[sizeof("comma")];+ char entity_pool_str7460[sizeof("Subset")];+ char entity_pool_str7475[sizeof("NotSucceedsSlantEqual")];+ char entity_pool_str7476[sizeof("gtreqless")];+ char entity_pool_str7477[sizeof("Atilde")];+ char entity_pool_str7484[sizeof("curarr")];+ char entity_pool_str7491[sizeof("cudarrr")];+ char entity_pool_str7495[sizeof("cudarrl")];+ char entity_pool_str7503[sizeof("subseteq")];+ char entity_pool_str7504[sizeof("subseteqq")];+ char entity_pool_str7505[sizeof("rightsquigarrow")];+ char entity_pool_str7520[sizeof("cupcap")];+ char entity_pool_str7521[sizeof("subsetneq")];+ char entity_pool_str7532[sizeof("aogon")];+ char entity_pool_str7533[sizeof("notinvc")];+ char entity_pool_str7534[sizeof("rightthreetimes")];+ char entity_pool_str7552[sizeof("yacute")];+ char entity_pool_str7563[sizeof("nLeftarrow")];+ char entity_pool_str7581[sizeof("ocy")];+ char entity_pool_str7582[sizeof("cemptyv")];+ char entity_pool_str7595[sizeof("Ecy")];+ char entity_pool_str7598[sizeof("cupcup")];+ char entity_pool_str7604[sizeof("trianglerighteq")];+ char entity_pool_str7615[sizeof("LeftRightArrow")];+ char entity_pool_str7618[sizeof("succ")];+ char entity_pool_str7631[sizeof("DownArrowUpArrow")];+ char entity_pool_str7641[sizeof("OElig")];+ char entity_pool_str7648[sizeof("chcy")];+ char entity_pool_str7649[sizeof("gtreqqless")];+ char entity_pool_str7655[sizeof("angle")];+ char entity_pool_str7662[sizeof("acE")];+ char entity_pool_str7668[sizeof("rmoustache")];+ char entity_pool_str7670[sizeof("lmoustache")];+ char entity_pool_str7674[sizeof("NegativeVeryThinSpace")];+ char entity_pool_str7677[sizeof("napprox")];+ char entity_pool_str7686[sizeof("Oslash")];+ char entity_pool_str7698[sizeof("subsetneqq")];+ char entity_pool_str7723[sizeof("Aring")];+ char entity_pool_str7724[sizeof("boxuR")];+ char entity_pool_str7730[sizeof("subplus")];+ char entity_pool_str7742[sizeof("xwedge")];+ char entity_pool_str7767[sizeof("boxul")];+ char entity_pool_str7778[sizeof("boxvr")];+ char entity_pool_str7800[sizeof("HumpDownHump")];+ char entity_pool_str7812[sizeof("Icy")];+ char entity_pool_str7828[sizeof("approxeq")];+ char entity_pool_str7841[sizeof("aacute")];+ char entity_pool_str7842[sizeof("apid")];+ char entity_pool_str7859[sizeof("UpDownArrow")];+ char entity_pool_str7861[sizeof("NestedGreaterGreater")];+ char entity_pool_str7863[sizeof("jcy")];+ char entity_pool_str7866[sizeof("gtrsim")];+ char entity_pool_str7876[sizeof("boxv")];+ char entity_pool_str7886[sizeof("ocirc")];+ char entity_pool_str7900[sizeof("Ecirc")];+ char entity_pool_str7987[sizeof("notnivc")];+ char entity_pool_str8006[sizeof("bigtriangleup")];+ char entity_pool_str8032[sizeof("daleth")];+ char entity_pool_str8037[sizeof("Ocy")];+ char entity_pool_str8042[sizeof("Hcirc")];+ char entity_pool_str8043[sizeof("RightVectorBar")];+ char entity_pool_str8044[sizeof("AElig")];+ char entity_pool_str8063[sizeof("FilledVerySmallSquare")];+ char entity_pool_str8084[sizeof("ggg")];+ char entity_pool_str8088[sizeof("Bcy")];+ char entity_pool_str8099[sizeof("Poincareplane")];+ char entity_pool_str8104[sizeof("boxvL")];+ char entity_pool_str8107[sizeof("PartialD")];+ char entity_pool_str8117[sizeof("Icirc")];+ char entity_pool_str8129[sizeof("cularr")];+ char entity_pool_str8135[sizeof("boxh")];+ char entity_pool_str8142[sizeof("andv")];+ char entity_pool_str8144[sizeof("sung")];+ char entity_pool_str8148[sizeof("RightDoubleBracket")];+ char entity_pool_str8168[sizeof("jcirc")];+ char entity_pool_str8174[sizeof("UnderBar")];+ char entity_pool_str8241[sizeof("RightArrow")];+ char entity_pool_str8242[sizeof("circledcirc")];+ char entity_pool_str8243[sizeof("Alpha")];+ char entity_pool_str8251[sizeof("leftharpoonup")];+ char entity_pool_str8258[sizeof("cularrp")];+ char entity_pool_str8260[sizeof("RightArrowLeftArrow")];+ char entity_pool_str8281[sizeof("varsigma")];+ char entity_pool_str8300[sizeof("numero")];+ char entity_pool_str8310[sizeof("ffllig")];+ char entity_pool_str8326[sizeof("LowerLeftArrow")];+ char entity_pool_str8340[sizeof("expectation")];+ char entity_pool_str8342[sizeof("Ocirc")];+ char entity_pool_str8351[sizeof("yacy")];+ char entity_pool_str8375[sizeof("lambda")];+ char entity_pool_str8381[sizeof("NotSucceedsEqual")];+ char entity_pool_str8382[sizeof("boxvR")];+ char entity_pool_str8384[sizeof("bigtriangledown")];+ char entity_pool_str8391[sizeof("ang")];+ char entity_pool_str8404[sizeof("xuplus")];+ char entity_pool_str8424[sizeof("nabla")];+ char entity_pool_str8425[sizeof("boxvl")];+ char entity_pool_str8438[sizeof("Eta")];+ char entity_pool_str8440[sizeof("Acy")];+ char entity_pool_str8474[sizeof("kcy")];+ char entity_pool_str8475[sizeof("gcy")];+ char entity_pool_str8485[sizeof("LeftRightVector")];+ char entity_pool_str8491[sizeof("ccedil")];+ char entity_pool_str8495[sizeof("Backslash")];+ char entity_pool_str8506[sizeof("hslash")];+ char entity_pool_str8515[sizeof("Pcy")];+ char entity_pool_str8521[sizeof("Gcy")];+ char entity_pool_str8534[sizeof("gtquest")];+ char entity_pool_str8572[sizeof("Lambda")];+ char entity_pool_str8627[sizeof("odiv")];+ char entity_pool_str8629[sizeof("leftharpoondown")];+ char entity_pool_str8672[sizeof("longmapsto")];+ char entity_pool_str8677[sizeof("Jukcy")];+ char entity_pool_str8687[sizeof("ldrdhar")];+ char entity_pool_str8700[sizeof("xutri")];+ char entity_pool_str8701[sizeof("nRightarrow")];+ char entity_pool_str8725[sizeof("ExponentialE")];+ char entity_pool_str8735[sizeof("nrightarrow")];+ char entity_pool_str8745[sizeof("Acirc")];+ char entity_pool_str8746[sizeof("NoBreak")];+ char entity_pool_str8780[sizeof("gcirc")];+ char entity_pool_str8784[sizeof("ange")];+ char entity_pool_str8785[sizeof("curarrm")];+ char entity_pool_str8791[sizeof("SHCHcy")];+ char entity_pool_str8796[sizeof("yuml")];+ char entity_pool_str8800[sizeof("subnE")];+ char entity_pool_str8803[sizeof("DDotrahd")];+ char entity_pool_str8810[sizeof("RuleDelayed")];+ char entity_pool_str8826[sizeof("Gcirc")];+ char entity_pool_str8843[sizeof("Jsercy")];+ char entity_pool_str8879[sizeof("gtcc")];+ char entity_pool_str8922[sizeof("iukcy")];+ char entity_pool_str8956[sizeof("updownarrow")];+ char entity_pool_str8962[sizeof("curlyvee")];+ char entity_pool_str8972[sizeof("ffilig")];+ char entity_pool_str8992[sizeof("yicy")];+ char entity_pool_str9015[sizeof("divonx")];+ char entity_pool_str9026[sizeof("gtrapprox")];+ char entity_pool_str9069[sizeof("subdot")];+ char entity_pool_str9079[sizeof("leftrightarrows")];+ char entity_pool_str9085[sizeof("auml")];+ char entity_pool_str9088[sizeof("Updownarrow")];+ char entity_pool_str9090[sizeof("rightleftarrows")];+ char entity_pool_str9151[sizeof("DownRightVector")];+ char entity_pool_str9154[sizeof("DownRightVectorBar")];+ char entity_pool_str9162[sizeof("hcirc")];+ char entity_pool_str9186[sizeof("Rrightarrow")];+ char entity_pool_str9217[sizeof("longrightarrow")];+ char entity_pool_str9239[sizeof("cupdot")];+ char entity_pool_str9249[sizeof("ac")];+ char entity_pool_str9268[sizeof("hookrightarrow")];+ char entity_pool_str9271[sizeof("NegativeThickSpace")];+ char entity_pool_str9275[sizeof("subE")];+ char entity_pool_str9307[sizeof("twoheadrightarrow")];+ char entity_pool_str9320[sizeof("downharpoonright")];+ char entity_pool_str9321[sizeof("downharpoonleft")];+ char entity_pool_str9326[sizeof("aelig")];+ char entity_pool_str9330[sizeof("rdldhar")];+ char entity_pool_str9349[sizeof("curlywedge")];+ char entity_pool_str9351[sizeof("hybull")];+ char entity_pool_str9360[sizeof("sube")];+ char entity_pool_str9414[sizeof("Longrightarrow")];+ char entity_pool_str9484[sizeof("Cedilla")];+ char entity_pool_str9505[sizeof("notinva")];+ char entity_pool_str9506[sizeof("SucceedsEqual")];+ char entity_pool_str9554[sizeof("leftrightarrow")];+ char entity_pool_str9580[sizeof("straightepsilon")];+ char entity_pool_str9627[sizeof("amalg")];+ char entity_pool_str9741[sizeof("atilde")];+ char entity_pool_str9747[sizeof("RightCeiling")];+ char entity_pool_str9751[sizeof("Leftrightarrow")];+ char entity_pool_str9767[sizeof("subsim")];+ char entity_pool_str9788[sizeof("VerticalLine")];+ char entity_pool_str9801[sizeof("RightUpVector")];+ char entity_pool_str9804[sizeof("RightUpVectorBar")];+ char entity_pool_str9829[sizeof("RightDownVector")];+ char entity_pool_str9832[sizeof("RightDownVectorBar")];+ char entity_pool_str9836[sizeof("alefsym")];+ char entity_pool_str9852[sizeof("circlearrowright")];+ char entity_pool_str9853[sizeof("circlearrowleft")];+ char entity_pool_str9904[sizeof("Iukcy")];+ char entity_pool_str9936[sizeof("otimesas")];+ char entity_pool_str9944[sizeof("intercal")];+ char entity_pool_str9952[sizeof("thickapprox")];+ char entity_pool_str9955[sizeof("jukcy")];+ char entity_pool_str9959[sizeof("notniva")];+ char entity_pool_str9963[sizeof("precnapprox")];+ char entity_pool_str9983[sizeof("cuvee")];+ char entity_pool_str9987[sizeof("aring")];+ char entity_pool_str10023[sizeof("ccirc")];+ char entity_pool_str10029[sizeof("rightarrow")];+ char entity_pool_str10061[sizeof("Integral")];+ char entity_pool_str10062[sizeof("xcirc")];+ char entity_pool_str10121[sizeof("jsercy")];+ char entity_pool_str10206[sizeof("checkmark")];+ char entity_pool_str10208[sizeof("VerticalTilde")];+ char entity_pool_str10219[sizeof("boxvH")];+ char entity_pool_str10240[sizeof("NotRightTriangleBar")];+ char entity_pool_str10244[sizeof("NotRightTriangleEqual")];+ char entity_pool_str10245[sizeof("NotRightTriangle")];+ char entity_pool_str10278[sizeof("LeftVectorBar")];+ char entity_pool_str10357[sizeof("boxvh")];+ char entity_pool_str10395[sizeof("boxbox")];+ char entity_pool_str10415[sizeof("ycy")];+ char entity_pool_str10428[sizeof("subedot")];+ char entity_pool_str10445[sizeof("SOFTcy")];+ char entity_pool_str10505[sizeof("Rightarrow")];+ char entity_pool_str10507[sizeof("alpha")];+ char entity_pool_str10528[sizeof("shchcy")];+ char entity_pool_str10584[sizeof("softcy")];+ char entity_pool_str10704[sizeof("acy")];+ char entity_pool_str10720[sizeof("ycirc")];+ char entity_pool_str10791[sizeof("bigcirc")];+ char entity_pool_str10808[sizeof("ImaginaryI")];+ char entity_pool_str10847[sizeof("approx")];+ char entity_pool_str10851[sizeof("SupersetEqual")];+ char entity_pool_str10879[sizeof("vzigzag")];+ char entity_pool_str10888[sizeof("cuesc")];+ char entity_pool_str10947[sizeof("UnderParenthesis")];+ char entity_pool_str11009[sizeof("acirc")];+ char entity_pool_str11029[sizeof("succapprox")];+ char entity_pool_str11047[sizeof("mcomma")];+ char entity_pool_str11146[sizeof("angmsdae")];+ char entity_pool_str11165[sizeof("angmsdab")];+ char entity_pool_str11282[sizeof("angmsdaf")];+ char entity_pool_str11366[sizeof("angsph")];+ char entity_pool_str11527[sizeof("luruhar")];+ char entity_pool_str11565[sizeof("angmsdad")];+ char entity_pool_str11664[sizeof("twoheadleftarrow")];+ char entity_pool_str11720[sizeof("cylcty")];+ char entity_pool_str11791[sizeof("straightphi")];+ char entity_pool_str11840[sizeof("multimap")];+ char entity_pool_str11918[sizeof("RightArrowBar")];+ char entity_pool_str12012[sizeof("ldrushar")];+ char entity_pool_str12103[sizeof("LeftAngleBracket")];+ char entity_pool_str12170[sizeof("ruluhar")];+ char entity_pool_str12202[sizeof("curlyeqprec")];+ char entity_pool_str12206[sizeof("yucy")];+ char entity_pool_str12288[sizeof("lurdshar")];+ char entity_pool_str12413[sizeof("hardcy")];+ char entity_pool_str12461[sizeof("rightharpoondown")];+ char entity_pool_str12497[sizeof("rightharpoonup")];+ char entity_pool_str12502[sizeof("HARDcy")];+ char entity_pool_str12651[sizeof("SubsetEqual")];+ char entity_pool_str12809[sizeof("digamma")];+ char entity_pool_str12892[sizeof("udblac")];+ char entity_pool_str12985[sizeof("SuchThat")];+ char entity_pool_str12991[sizeof("cuwed")];+ char entity_pool_str13024[sizeof("Udblac")];+ char entity_pool_str13061[sizeof("angmsdag")];+ char entity_pool_str13443[sizeof("angmsdah")];+ char entity_pool_str13643[sizeof("VerticalBar")];+ char entity_pool_str13659[sizeof("VerticalSeparator")];+ char entity_pool_str13709[sizeof("rightarrowtail")];+ char entity_pool_str13908[sizeof("odblac")];+ char entity_pool_str13945[sizeof("succnapprox")];+ char entity_pool_str14304[sizeof("angmsdac")];+ char entity_pool_str14364[sizeof("Odblac")];+ char entity_pool_str14620[sizeof("cupbrcap")];+ char entity_pool_str15290[sizeof("angmsdaa")];+ char entity_pool_str15360[sizeof("curlyeqsucc")];+ char entity_pool_str15729[sizeof("curvearrowleft")];+ char entity_pool_str16000[sizeof("curvearrowright")];+ };+static const struct entity_pool_t entity_pool_contents =+ {+ "rarr",+ "larr",+ "lat",+ "uarr",+ "npr",+ "rarrtl",+ "larrtl",+ "roarr",+ "loarr",+ "not",+ "rpar",+ "bot",+ "lpar",+ "spar",+ "ll",+ "uharr",+ "epar",+ "el",+ "rotimes",+ "lotimes",+ "par",+ "nharr",+ "npar",+ "tprime",+ "els",+ "eparsl",+ "ensp",+ "bprime",+ "lnap",+ "blk14",+ "blk12",+ "blk34",+ "nparsl",+ "nldr",+ "rlarr",+ "npart",+ "llarr",+ "nlt",+ "slarr",+ "nparallel",+ "Tau",+ "varr",+ "squ",+ "nlarr",+ "tau",+ "lne",+ "rrarr",+ "lrarr",+ "srarr",+ "rharul",+ "lharul",+ "erarr",+ "pr",+ "rharu",+ "lharu",+ "Uarr",+ "nGt",+ "bne",+ "nrarr",+ "swarr",+ "rarrap",+ "upuparrows",+ "Darr",+ "rbarr",+ "Dot",+ "lbarr",+ "nwarr",+ "smt",+ "emsp14",+ "rarrpl",+ "larrpl",+ "phmmat",+ "emsp13",+ "LT",+ "Larr",+ "rbrkslu",+ "lbrkslu",+ "napos",+ "nle",+ "rHar",+ "lHar",+ "qprime",+ "lap",+ "nbsp",+ "uHar",+ "top",+ "Vbar",+ "Ll",+ "prap",+ "emsp",+ "nap",+ "looparrowleft",+ "le",+ "sharp",+ "ee",+ "les",+ "in",+ "prop",+ "topbot",+ "int",+ "ne",+ "nprcue",+ "pre",+ "epsi",+ "upsi",+ "there4",+ "rbrke",+ "searr",+ "lbrke",+ "blacktriangle",+ "lneq",+ "lneqq",+ "plus",+ "nles",+ "nedot",+ "blacktriangleleft",+ "blacktriangleright",+ "nearr",+ "blacktriangledown",+ "nless",+ "emacr",+ "vprop",+ "umacr",+ "smeparsl",+ "Map",+ "plusdu",+ "Not",+ "Verbar",+ "perp",+ "fltns",+ "plusmn",+ "nleq",+ "nleqq",+ "frac34",+ "frac14",+ "verbar",+ "frac12",+ "frac35",+ "frac15",+ "frac45",+ "frac25",+ "frac13",+ "frac16",+ "prurel",+ "frac23",+ "frac38",+ "frac18",+ "frac56",+ "frac58",+ "frac78",+ "leq",+ "darr",+ "Upsi",+ "dot",+ "phone",+ "Cap",+ "blacksquare",+ "rnmid",+ "leqq",+ "intcal",+ "dharr",+ "rhard",+ "lhard",+ "pluse",+ "Umacr",+ "Vee",+ "Rarr",+ "Cross",+ "rsqb",+ "lsqb",+ "Rarrtl",+ "esdot",+ "vee",+ "nbumpe",+ "llcorner",+ "fpartint",+ "squf",+ "plankv",+ "eqvparsl",+ "ulcorner",+ "wp",+ "lozf",+ "COPY",+ "ulcorn",+ "veebar",+ "part",+ "square",+ "nbump",+ "bernou",+ "wr",+ "rBarr",+ "lrcorner",+ "lBarr",+ "bnot",+ "semi",+ "urcorner",+ "NotSubset",+ "ropf",+ "Qopf",+ "lopf",+ "sopf",+ "urcorn",+ "Topf",+ "Zopf",+ "eopf",+ "ropar",+ "uopf",+ "lopar",+ "topf",+ "Xopf",+ "nopf",+ "bopf",+ "epsiv",+ "fnof",+ "imacr",+ "Jopf",+ "nhpar",+ "Wopf",+ "Sqrt",+ "nsub",+ "napid",+ "NotSuperset",+ "brvbar",+ "sol",+ "easter",+ "popf",+ "dHar",+ "Vopf",+ "nsupset",+ "nsup",+ "vBar",+ "nsubset",+ "thkap",+ "nis",+ "profsurf",+ "solb",+ "lnsim",+ "solbar",+ "Square",+ "vopf",+ "uharl",+ "ulcrop",+ "eqsim",+ "equiv",+ "ell",+ "smashp",+ "mp",+ "Kopf",+ "simrarr",+ "flat",+ "Mopf",+ "Sopf",+ "mldr",+ "rlm",+ "iprod",+ "lparlt",+ "fopf",+ "Uopf",+ "varsubsetneq",+ "varsubsetneqq",+ "urcrop",+ "LessLess",+ "Re",+ "NotNestedLessLess",+ "Dopf",+ "forkv",+ "nsqsube",+ "nsupe",+ "nsube",+ "qopf",+ "rlhar",+ "lrm",+ "nlsim",+ "pound",+ "varsupsetneq",+ "varsupsetneqq",+ "bnequiv",+ "Lopf",+ "nsqsupe",+ "rarrlp",+ "wedbar",+ "larrlp",+ "Yopf",+ "NotReverseElement",+ "Copf",+ "lrhar",+ "parsl",+ "uml",+ "marker",+ "nsupseteq",+ "nsubseteq",+ "squarf",+ "Vert",+ "SquareSupersetEqual",+ "prsim",+ "SquareSubsetEqual",+ "SquareSuperset",+ "SquareSubset",+ "nvap",+ "iopf",+ "pm",+ "vert",+ "thetav",+ "loz",+ "map",+ "lesseqqgtr",+ "rscr",+ "Qscr",+ "lscr",+ "sscr",+ "Tscr",+ "Zscr",+ "escr",+ "uscr",+ "tscr",+ "imof",+ "Coproduct",+ "Xscr",+ "Xi",+ "nscr",+ "ni",+ "bscr",+ "Nopf",+ "Jscr",+ "preceq",+ "nvrArr",+ "backprime",+ "Wscr",+ "varphi",+ "nsmid",+ "dlcorn",+ "pscr",+ "pi",+ "Vscr",+ "nesim",+ "simne",+ "nsupseteqq",+ "nsubseteqq",+ "drcorn",+ "rbrace",+ "vscr",+ "lbrace",+ "dopf",+ "frasl",+ "LessTilde",+ "Kscr",+ "pluscir",+ "Mscr",+ "Sscr",+ "rbrksld",+ "lbrksld",+ "RBarr",+ "sqcaps",+ "rArr",+ "bNot",+ "lArr",+ "fscr",+ "Uscr",+ "uArr",+ "Ropf",+ "wopf",+ "Dscr",+ "opar",+ "seswar",+ "Del",+ "rAarr",+ "rho",+ "lAarr",+ "preccurlyeq",+ "qscr",+ "macr",+ "notin",+ "equivDD",+ "sqcap",+ "nspar",+ "olt",+ "ratio",+ "Lscr",+ "dharl",+ "dlcrop",+ "DoubleDot",+ "dotplus",+ "or",+ "Yscr",+ "Fopf",+ "Cscr",+ "olarr",+ "nrarrw",+ "lvertneqq",+ "eqslantgtr",+ "thorn",+ "eqslantless",+ "incare",+ "vArr",+ "rppolint",+ "drcrop",+ "parallel",+ "orarr",+ "ssmile",+ "DoubleLeftTee",+ "erDot",+ "diams",+ "ssetmn",+ "oS",+ "iscr",+ "ii",+ "rect",+ "nsccue",+ "sect",+ "mlcp",+ "oror",+ "DoubleContourIntegral",+ "equals",+ "Hat",+ "sstarf",+ "mstpos",+ "die",+ "measuredangle",+ "forall",+ "notinvb",+ "mopf",+ "niv",+ "vBarv",+ "Nscr",+ "period",+ "becaus",+ "between",+ "Int",+ "because",+ "piv",+ "rfr",+ "Qfr",+ "lfr",+ "sfr",+ "nleftrightarrow",+ "Tfr",+ "Zfr",+ "efr",+ "sim",+ "ufr",+ "roplus",+ "tfr",+ "loplus",+ "Xfr",+ "real",+ "nfr",+ "bfr",+ "NotHumpEqual",+ "Jfr",+ "dscr",+ "Wfr",+ "blacklozenge",+ "zopf",+ "reals",+ "NotCupCap",+ "simplus",+ "ForAll",+ "pfr",+ "omacr",+ "Vfr",+ "Emacr",+ "Rscr",+ "wscr",+ "ShortUpArrow",+ "setmn",+ "vfr",+ "Kfr",+ "operp",+ "Mfr",+ "Sfr",+ "nltrie",+ "Fscr",+ "ffr",+ "Ufr",+ "shortmid",+ "nvsim",+ "Dfr",+ "lessdot",+ "profline",+ "qfr",+ "dArr",+ "nrtrie",+ "ShortRightArrow",+ "Therefore",+ "DD",+ "therefore",+ "Lfr",+ "target",+ "Element",+ "Yfr",+ "ClockwiseContourIntegral",+ "olcir",+ "Cfr",+ "female",+ "nsucceq",+ "oast",+ "percnt",+ "ordf",+ "ord",+ "Rho",+ "mscr",+ "nvrtrie",+ "lnE",+ "nhArr",+ "Or",+ "divide",+ "ifr",+ "elinters",+ "bsol",+ "nvlArr",+ "Imacr",+ "backsimeq",+ "twixt",+ "olcross",+ "rarrsim",+ "DoubleDownArrow",+ "larrsim",+ "emptyset",+ "oopf",+ "exist",+ "llhard",+ "excl",+ "Eopf",+ "nlArr",+ "thinsp",+ "NotSubsetEqual",+ "phi",+ "DoubleLeftArrow",+ "topcir",+ "div",+ "Nfr",+ "nlE",+ "zscr",+ "lrhard",+ "lltri",+ "nrArr",+ "NotSupersetEqual",+ "swArr",+ "ThickSpace",+ "ultri",+ "notnivb",+ "prime",+ "primes",+ "ohm",+ "CircleTimes",+ "nltri",+ "siml",+ "nwArr",+ "varpi",+ "orv",+ "setminus",+ "lrtri",+ "permil",+ "mid",+ "urtri",+ "dfr",+ "mho",+ "prE",+ "vsupne",+ "nrtri",+ "vsubne",+ "eDot",+ "lesges",+ "backepsilon",+ "ratail",+ "latail",+ "UpEquilibrium",+ "epsilon",+ "upsilon",+ "midast",+ "Hopf",+ "vltri",+ "Rfr",+ "Wedge",+ "wfr",+ "barwed",+ "malt",+ "Chi",+ "emptyv",+ "notni",+ "LessGreater",+ "diam",+ "vrtri",+ "CircleMinus",+ "Omacr",+ "seArr",+ "Ffr",+ "precneqq",+ "Diamond",+ "ordm",+ "neArr",+ "Iopf",+ "CircleDot",+ "prnap",+ "dotminus",+ "nshortmid",+ "bottom",+ "pointint",+ "SquareUnion",+ "jopf",+ "Upsilon",+ "Colone",+ "nvlt",+ "NestedLessLess",+ "Colon",+ "bsolhsub",+ "DoubleLeftRightArrow",+ "plussim",+ "image",+ "egs",+ "oscr",+ "swnwar",+ "zeetrf",+ "maltese",+ "mfr",+ "rarrfs",+ "Escr",+ "larrfs",+ "mnplus",+ "ngt",+ "ngtr",+ "gl",+ "diamondsuit",+ "GT",+ "lesssim",+ "dsol",+ "upharpoonleft",+ "SquareIntersection",+ "lsime",+ "nLt",+ "NotLess",+ "gnap",+ "scap",+ "mapstoleft",+ "NotLessLess",+ "rfloor",+ "lfloor",+ "nsime",+ "bsime",+ "NotLessEqual",+ "NotLessTilde",+ "ncap",+ "NotLessGreater",+ "precsim",+ "looparrowright",+ "Pr",+ "rcub",+ "mapstoup",+ "lcub",+ "zfr",+ "uparrow",+ "gne",+ "sce",+ "Im",+ "rcaron",+ "lcaron",+ "Oopf",+ "scaron",+ "backsim",+ "Tcaron",+ "Zcaron",+ "ecaron",+ "Bernoullis",+ "nge",+ "tcaron",+ "fork",+ "Hscr",+ "ncaron",+ "elsdot",+ "tbrk",+ "triplus",+ "diamond",+ "ncup",+ "bbrk",+ "frown",+ "bkarow",+ "spades",+ "psi",+ "Bopf",+ "dollar",+ "disin",+ "spadesuit",+ "NotTilde",+ "doublebarwedge",+ "gap",+ "bbrktbrk",+ "swarrow",+ "bepsi",+ "Iscr",+ "NotTildeFullEqual",+ "eqcolon",+ "tint",+ "intprod",+ "nsupE",+ "nwarrow",+ "nsubE",+ "nges",+ "Uparrow",+ "ge",+ "OpenCurlyDoubleQuote",+ "smallsetminus",+ "Scaron",+ "nvltrie",+ "ges",+ "blank",+ "QUOT",+ "block",+ "trade",+ "jscr",+ "wedge",+ "Amacr",+ "Equal",+ "Dcaron",+ "DotDot",+ "gneq",+ "varpropto",+ "gneqq",+ "Proportional",+ "isins",+ "eDDot",+ "isin",+ "TripleDot",+ "Fouriertrf",+ "Proportion",+ "ngeq",+ "Lcaron",+ "ngeqq",+ "lE",+ "Ccaron",+ "bsemi",+ "propto",+ "lesdot",+ "Conint",+ "And",+ "searrow",+ "orslope",+ "harr",+ "late",+ "CenterDot",+ "ofr",+ "nearrow",+ "qint",+ "lates",+ "kappav",+ "horbar",+ "Efr",+ "hoarr",+ "npre",+ "inodot",+ "udarr",+ "geq",+ "nsimeq",+ "geqq",+ "efDot",+ "rpargt",+ "Oscr",+ "plusdo",+ "lagran",+ "thicksim",+ "precnsim",+ "Ncaron",+ "napE",+ "iiint",+ "Bscr",+ "mapstodown",+ "varrho",+ "isinsv",+ "nvHarr",+ "NotLeftTriangleBar",+ "equest",+ "NotLeftTriangleEqual",+ "NotLeftTriangle",+ "Aopf",+ "hbar",+ "vangrt",+ "Hfr",+ "range",+ "smte",+ "lsim",+ "npolint",+ "dcaron",+ "esim",+ "Union",+ "smtes",+ "kopf",+ "gopf",+ "nsim",+ "bsim",+ "SmallCircle",+ "NotDoubleVerticalBar",+ "NotNestedGreaterGreater",+ "EqualTilde",+ "notindot",+ "Rcaron",+ "Popf",+ "Gopf",+ "Ifr",+ "wedgeq",+ "prod",+ "osol",+ "DoubleUpArrow",+ "Congruent",+ "gnsim",+ "scsim",+ "jfr",+ "upsih",+ "nLl",+ "DoubleUpDownArrow",+ "ngsim",+ "hearts",+ "lesseqgtr",+ "nesear",+ "Exists",+ "smile",+ "uwangle",+ "heartsuit",+ "HorizontalLine",+ "GreaterLess",+ "rsaquo",+ "lsaquo",+ "realine",+ "Dashv",+ "simdot",+ "GreaterEqual",+ "GreaterTilde",+ "GreaterEqualLess",+ "GreaterGreater",+ "rceil",+ "lceil",+ "lessgtr",+ "oline",+ "thksim",+ "InvisibleTimes",+ "race",+ "iquest",+ "imagline",+ "UpTee",+ "midcir",+ "ofcir",+ "ddarr",+ "rangd",+ "langd",+ "Equilibrium",+ "parsim",+ "Vdashl",+ "Ofr",+ "Because",+ "rAtail",+ "lAtail",+ "ominus",+ "Ascr",+ "Epsilon",+ "ShortLeftArrow",+ "isinv",+ "micro",+ "zcaron",+ "kscr",+ "gscr",+ "Bfr",+ "gel",+ "hercon",+ "triminus",+ "egrave",+ "sdot",+ "ugrave",+ "Zdot",+ "edot",+ "NotTildeTilde",+ "tdot",+ "Pscr",+ "Pi",+ "Gscr",+ "plustwo",+ "NotElement",+ "PlusMinus",+ "hopf",+ "gammad",+ "mDDot",+ "divideontimes",+ "doteq",+ "varepsilon",+ "Precedes",+ "Gammad",+ "dashv",+ "NotCongruent",+ "ubreve",+ "ogt",+ "RoundImplies",+ "PrecedesSlantEqual",+ "sime",+ "Ugrave",+ "dbkarow",+ "sdote",+ "veeeq",+ "mapsto",+ "times",+ "rangle",+ "langle",+ "leftarrowtail",+ "hamilt",+ "udhar",+ "nisd",+ "rfisht",+ "lfisht",+ "harrcir",+ "OpenCurlyQuote",+ "ufisht",+ "NotHumpDownHump",+ "LeftTee",+ "rsh",+ "lsh",+ "gvertneqq",+ "timesb",+ "scpolint",+ "Cdot",+ "dwangle",+ "Ubreve",+ "LeftUpVector",+ "LeftUpVectorBar",+ "Ecaron",+ "homtht",+ "igrave",+ "npreceq",+ "ecolon",+ "dd",+ "simeq",+ "notinE",+ "bigoplus",+ "Afr",+ "leftarrow",+ "oint",+ "Tab",+ "ogon",+ "lt",+ "nLeftrightarrow",+ "rarrb",+ "larrb",+ "hscr",+ "LeftUpDownVector",+ "kfr",+ "gfr",+ "UpArrowBar",+ "nsce",+ "ltdot",+ "gesl",+ "xodot",+ "star",+ "lowbar",+ "xharr",+ "ecir",+ "utdot",+ "natur",+ "Lsh",+ "infin",+ "comp",+ "sigmav",+ "xotime",+ "Pfr",+ "Gfr",+ "bigcap",+ "simlE",+ "iiiint",+ "barwedge",+ "Barwed",+ "xlarr",+ "LessEqualGreater",+ "crarr",+ "isindot",+ "commat",+ "middot",+ "lesdotor",+ "sigmaf",+ "rarrbfs",+ "larrbfs",+ "xrarr",+ "bigcup",+ "clubs",+ "hArr",+ "rtrie",+ "ltrie",+ "imped",+ "eogon",+ "rx",+ "ltrPar",+ "Star",+ "uogon",+ "Tilde",+ "half",+ "tilde",+ "Leftarrow",+ "gesles",+ "cap",+ "strns",+ "Lt",+ "prnE",+ "sqsupe",+ "sqsupset",+ "tridot",+ "order",+ "caps",+ "cross",+ "dfisht",+ "xmap",+ "sqsup",+ "rtri",+ "ltri",+ "it",+ "rmoust",+ "lmoust",+ "gnE",+ "lgE",+ "scE",+ "utri",+ "vellip",+ "ETH",+ "lmidot",+ "Uogon",+ "CounterClockwiseContourIntegral",+ "ngE",+ "nwnear",+ "lesg",+ "plusb",+ "Rsh",+ "copysr",+ "infintie",+ "imath",+ "Esim",+ "Phi",+ "glE",+ "vnsup",+ "simgE",+ "DoubleLongLeftArrow",+ "DoubleLongLeftRightArrow",+ "nvgt",+ "Mellintrf",+ "Prime",+ "iinfin",+ "ReverseElement",+ "EmptySmallSquare",+ "radic",+ "hfr",+ "zdot",+ "male",+ "rarrc",+ "prec",+ "scnap",+ "DifferentialD",+ "models",+ "ltcir",+ "iogon",+ "capcap",+ "iff",+ "ddotseq",+ "CirclePlus",+ "rthree",+ "lthree",+ "PrecedesTilde",+ "dtdot",+ "clubsuit",+ "racute",+ "lacute",+ "trpezium",+ "sacute",+ "Zacute",+ "eacute",+ "TildeTilde",+ "Uarrocir",+ "uacute",+ "lowast",+ "nacute",+ "NotPrecedes",+ "Lmidot",+ "UpArrow",+ "rarrw",+ "DownTee",+ "FilledSmallSquare",+ "capcup",+ "GreaterFullEqual",+ "nvle",+ "trie",+ "omicron",+ "DoubleRightTee",+ "Cconint",+ "rsquor",+ "lsquor",+ "zigrarr",+ "copf",+ "ContourIntegral",+ "hairsp",+ "sqsupseteq",+ "csub",+ "upharpoonright",+ "DownBreve",+ "ShortDownArrow",+ "xopf",+ "Sacute",+ "vsupnE",+ "cir",+ "plusacir",+ "csup",+ "vsubnE",+ "Uacute",+ "isinE",+ "gEl",+ "sqcups",+ "smid",+ "lg",+ "DoubleLongRightArrow",+ "NotPrecedesSlantEqual",+ "eg",+ "AMP",+ "nmid",+ "timesd",+ "DownLeftVector",+ "zwnj",+ "Lacute",+ "DownLeftVectorBar",+ "ograve",+ "Yacute",+ "sqcup",+ "odot",+ "Cacute",+ "nu",+ "tritime",+ "Egrave",+ "eplus",+ "backcong",+ "uplus",+ "Edot",+ "csupe",+ "simg",+ "UpperRightArrow",+ "csube",+ "dtri",+ "prnsim",+ "boxUr",+ "uuarr",+ "DownLeftTeeVector",+ "gsime",+ "bigotimes",+ "Dagger",+ "Intersection",+ "iacute",+ "prcue",+ "egsdot",+ "Implies",+ "VDash",+ "bump",+ "Mu",+ "vDash",+ "lvnE",+ "LeftTeeArrow",+ "Nacute",+ "UnderBrace",+ "Psi",+ "rhov",+ "lescc",+ "sup1",+ "sup2",+ "sup3",+ "bigodot",+ "Downarrow",+ "xsqcup",+ "barvee",+ "NegativeMediumSpace",+ "bumpe",+ "cscr",+ "nsc",+ "sup",+ "cedil",+ "boxVr",+ "origof",+ "zwj",+ "Igrave",+ "Idot",+ "xscr",+ "xi",+ "nGtv",+ "boxHu",+ "THORN",+ "Racute",+ "rarrhk",+ "larrhk",+ "rtriltri",+ "boxV",+ "dagger",+ "Omicron",+ "DoubleVerticalBar",+ "nexists",+ "Nu",+ "nexist",+ "gE",+ "ap",+ "Sup",+ "doteqdot",+ "eng",+ "caron",+ "boxHU",+ "gesdot",+ "ReverseEquilibrium",+ "boxUL",+ "supmult",+ "pitchfork",+ "numsp",+ "rang",+ "lang",+ "ocir",+ "rationals",+ "coprod",+ "ltlarr",+ "breve",+ "nang",+ "swarhk",+ "raquo",+ "laquo",+ "supsub",+ "Cup",+ "ape",+ "quest",+ "nwarhk",+ "supset",+ "downarrow",+ "duarr",+ "apos",+ "Ograve",+ "shortparallel",+ "nsucc",+ "LongLeftArrow",+ "lesdoto",+ "supne",+ "nGg",+ "raemptyv",+ "supsup",+ "laemptyv",+ "topfork",+ "Eogon",+ "risingdotseq",+ "bumpeq",+ "lstrok",+ "Tstrok",+ "gsim",+ "bemptyv",+ "zacute",+ "gsiml",+ "tstrok",+ "roang",+ "boxVL",+ "loang",+ "nleqslant",+ "sbquo",+ "searhk",+ "lnapprox",+ "Supset",+ "boxHd",+ "varkappa",+ "circeq",+ "yopf",+ "UnionPlus",+ "Lang",+ "nearhk",+ "shcy",+ "cfr",+ "Kappa",+ "ljcy",+ "MediumSpace",+ "supseteq",+ "supseteqq",+ "reg",+ "amacr",+ "leg",+ "weierp",+ "TScy",+ "supsetneq",+ "njcy",+ "xfr",+ "mu",+ "nvinfin",+ "boxUR",+ "xoplus",+ "leftleftarrows",+ "sum",+ "beth",+ "complement",+ "num",+ "amp",+ "boxUl",+ "NotGreater",+ "boxplus",+ "jmath",+ "sfrown",+ "Dstrok",+ "and",+ "NotGreaterGreater",+ "NotGreaterSlantEqual",+ "NotGreaterLess",+ "quot",+ "NotGreaterFullEqual",+ "hyphen",+ "planck",+ "TildeEqual",+ "tosa",+ "Lstrok",+ "shy",+ "xnis",+ "Iogon",+ "DZcy",+ "ohbar",+ "cirscir",+ "sext",+ "para",+ "ast",+ "questeq",+ "Sum",+ "DScy",+ "ENG",+ "ZHcy",+ "longleftarrow",+ "dash",+ "DownTeeArrow",+ "supsetneqq",+ "profalar",+ "oacute",+ "boxVR",+ "Eacute",+ "supplus",+ "hookleftarrow",+ "CloseCurlyQuote",+ "trisb",+ "dotsquare",+ "rtimes",+ "ltimes",+ "toea",+ "Agrave",+ "Assign",+ "Rang",+ "iocy",+ "NotPrecedesEqual",+ "aopf",+ "chi",+ "quaternions",+ "boxVl",+ "NotGreaterEqual",+ "xhArr",+ "orderof",+ "rsquo",+ "lsquo",+ "yscr",+ "gdot",+ "NotSquareSubsetEqual",+ "KHcy",+ "bsolb",+ "NotSquareSubset",+ "SHcy",+ "YIcy",+ "cwint",+ "Theta",+ "theta",+ "xlArr",+ "NotSquareSupersetEqual",+ "demptyv",+ "triangle",+ "Gdot",+ "NotSquareSuperset",+ "Abreve",+ "dstrok",+ "pertenk",+ "rbrack",+ "lbrack",+ "odsold",+ "omid",+ "xrArr",+ "triangleleft",+ "NotGreaterTilde",+ "colone",+ "Longleftarrow",+ "iota",+ "colon",+ "Zeta",+ "gbreve",+ "CHcy",+ "YUcy",+ "REG",+ "szlig",+ "dzcy",+ "beta",+ "euro",+ "LeftArrow",+ "CapitalDifferentialD",+ "ring",+ "Laplacetrf",+ "djcy",+ "oplus",+ "integers",+ "Gbreve",+ "ubrcy",+ "euml",+ "deg",+ "uuml",+ "Iacute",+ "succeq",+ "KJcy",+ "CupCap",+ "tscy",+ "cent",+ "DJcy",+ "TildeFullEqual",+ "triangleq",+ "duhar",+ "LeftDoubleBracket",+ "LJcy",+ "iecy",+ "trianglelefteq",+ "nequiv",+ "nshortparallel",+ "ndash",+ "bowtie",+ "fjlig",+ "Ubrcy",+ "vartheta",+ "Uuml",+ "vartriangleright",+ "vartriangleleft",+ "ascr",+ "succcurlyeq",+ "cwconint",+ "sc",+ "fllig",+ "circledast",+ "Vdash",+ "nVdash",+ "suplarr",+ "robrk",+ "lobrk",+ "vdash",+ "Yuml",+ "gt",+ "ccaps",+ "Succeeds",+ "Oacute",+ "TRADE",+ "NJcy",+ "gtdot",+ "yfr",+ "compfn",+ "Gt",+ "scnE",+ "ijlig",+ "circledS",+ "yen",+ "thetasym",+ "iuml",+ "SucceedsSlantEqual",+ "boxH",+ "mumap",+ "rightrightarrows",+ "coloneq",+ "Sc",+ "glj",+ "iexcl",+ "ccups",+ "xcap",+ "zhcy",+ "boxHD",+ "leqslant",+ "UpperLeftArrow",+ "dblac",+ "puncsp",+ "ccaron",+ "rbbrk",+ "lbbrk",+ "Aogon",+ "LeftTriangleBar",+ "gesdotol",+ "LeftTriangleEqual",+ "LeftTriangle",+ "conint",+ "drbkarow",+ "rtrif",+ "ltrif",+ "ReverseUpEquilibrium",+ "LeftCeiling",+ "utrif",+ "xcup",+ "fallingdotseq",+ "rcedil",+ "lcedil",+ "scedil",+ "Tcedil",+ "starf",+ "boxminus",+ "tcedil",+ "ZeroWidthSpace",+ "ncedil",+ "phiv",+ "ic",+ "capdot",+ "dscy",+ "check",+ "ovbar",+ "ntriangleleft",+ "RightTee",+ "nvge",+ "leftrightsquigarrow",+ "lozenge",+ "RightTriangleBar",+ "RightTeeVector",+ "RightTriangleEqual",+ "RightTriangle",+ "Kcedil",+ "Scedil",+ "cirfnint",+ "empty",+ "afr",+ "DiacriticalTilde",+ "LeftDownVector",+ "LeftDownVectorBar",+ "lEg",+ "ApplyFunction",+ "bumpE",+ "Lcedil",+ "caret",+ "Barv",+ "Ccedil",+ "circledR",+ "LeftDownTeeVector",+ "tshcy",+ "DotEqual",+ "centerdot",+ "ntrianglelefteq",+ "minus",+ "gimel",+ "Aacute",+ "gtcir",+ "gtrarr",+ "bull",+ "DownArrow",+ "rdquor",+ "ldquor",+ "intlarhk",+ "utilde",+ "gacute",+ "ntilde",+ "af",+ "Hstrok",+ "exponentiale",+ "minusb",+ "RightUpTeeVector",+ "UpTeeArrow",+ "zeta",+ "DiacriticalDot",+ "DiacriticalDoubleAcute",+ "nleftarrow",+ "hkswarow",+ "iiota",+ "apacir",+ "Ncedil",+ "capand",+ "mdash",+ "filig",+ "scnsim",+ "realpart",+ "leftthreetimes",+ "asymp",+ "hellip",+ "dtrif",+ "NotExists",+ "sccue",+ "YAcy",+ "Utilde",+ "NotEqual",+ "ThinSpace",+ "apE",+ "bullet",+ "CloseCurlyDoubleQuote",+ "Delta",+ "gg",+ "otimes",+ "wreath",+ "Rcedil",+ "eth",+ "supnE",+ "awint",+ "Breve",+ "Gg",+ "HumpEqual",+ "Lleftarrow",+ "boxdr",+ "succneqq",+ "uring",+ "LessSlantEqual",+ "nvdash",+ "Hacek",+ "itilde",+ "Iota",+ "IOcy",+ "boxDr",+ "SucceedsTilde",+ "LeftFloor",+ "Vvdash",+ "triangledown",+ "LongLeftRightArrow",+ "RightFloor",+ "DownRightTeeVector",+ "quatint",+ "Ntilde",+ "Bumpeq",+ "gvnE",+ "boxhu",+ "gtlPar",+ "nprec",+ "ouml",+ "gescc",+ "Euml",+ "Uring",+ "UnderBracket",+ "nLtv",+ "LeftArrowBar",+ "ncongdot",+ "asympeq",+ "minusdu",+ "delta",+ "harrw",+ "andslope",+ "cdot",+ "Cayleys",+ "boxhU",+ "succsim",+ "cirE",+ "sdotb",+ "odash",+ "cirmid",+ "suphsub",+ "supdsub",+ "supdot",+ "awconint",+ "TSHcy",+ "grave",+ "lsimg",+ "UpArrowDownArrow",+ "LeftVector",+ "DoubleRightArrow",+ "NegativeThinSpace",+ "lhblk",+ "cire",+ "nVDash",+ "uhblk",+ "imagpart",+ "RightUpDownVector",+ "boxdL",+ "gla",+ "Iuml",+ "oelig",+ "NotLessSlantEqual",+ "boxDL",+ "gamma",+ "Otimes",+ "longleftrightarrow",+ "Gamma",+ "bigwedge",+ "boxhd",+ "supE",+ "LeftUpTeeVector",+ "gesdoto",+ "kappa",+ "ngeqslant",+ "gtrless",+ "fflig",+ "bigsqcup",+ "kgreen",+ "supe",+ "boxtimes",+ "gnapprox",+ "downdownarrows",+ "biguplus",+ "khcy",+ "ddagger",+ "Ouml",+ "Beta",+ "minusd",+ "succnsim",+ "ctdot",+ "kjcy",+ "gjcy",+ "ncong",+ "xvee",+ "bcong",+ "sqsube",+ "boxdR",+ "Longleftrightarrow",+ "sqsub",+ "DownLeftRightVector",+ "sqsubset",+ "NotVerticalBar",+ "NotEqualTilde",+ "boxdl",+ "boxDR",+ "andand",+ "RightVector",+ "IJlig",+ "NotTildeEqual",+ "angzarr",+ "angrt",+ "acd",+ "andd",+ "nrarrc",+ "VeryThinSpace",+ "Superset",+ "boxDl",+ "vnsub",+ "ccupssm",+ "varnothing",+ "rcy",+ "lcy",+ "scy",+ "Tcy",+ "Zcy",+ "ecy",+ "rdsh",+ "ldsh",+ "ucy",+ "boxVH",+ "tcy",+ "ncy",+ "bcy",+ "ntgl",+ "Jcy",+ "congdot",+ "angst",+ "RightDownTeeVector",+ "OverParenthesis",+ "ltquest",+ "pcy",+ "otilde",+ "rdquo",+ "ldquo",+ "Vcy",+ "capbrcup",+ "bdquo",+ "DownArrowBar",+ "vcy",+ "angrtvb",+ "Kcy",+ "Mcy",+ "Scy",+ "NewLine",+ "fcy",+ "Ucy",+ "boxVh",+ "Dcy",+ "hstrok",+ "Lcy",+ "Ycy",+ "supsim",+ "NonBreakingSpace",+ "OverBar",+ "sqsubseteq",+ "GJcy",+ "OverBrace",+ "eqcirc",+ "OverBracket",+ "Auml",+ "acute",+ "icy",+ "Itilde",+ "HilbertSpace",+ "omega",+ "cacute",+ "scirc",+ "ecirc",+ "ucirc",+ "GreaterSlantEqual",+ "Jcirc",+ "nvDash",+ "Wcirc",+ "Ncy",+ "RightTeeArrow",+ "LessFullEqual",+ "ltcc",+ "aleph",+ "dcy",+ "Scirc",+ "lessapprox",+ "IEcy",+ "LowerRightArrow",+ "Ucirc",+ "agrave",+ "MinusPlus",+ "bigvee",+ "Rcy",+ "suphsol",+ "EmptyVerySmallSquare",+ "boxhD",+ "precapprox",+ "angrtvbd",+ "Ycirc",+ "sub",+ "Otilde",+ "Ccirc",+ "Fcy",+ "complexes",+ "subrarr",+ "InvisibleComma",+ "boxur",+ "abreve",+ "ntlg",+ "icirc",+ "xdtri",+ "circ",+ "gtrdot",+ "geqslant",+ "ntriangleright",+ "cuepr",+ "Sub",+ "mcy",+ "timesbar",+ "hksearow",+ "sigma",+ "cupor",+ "oslash",+ "dzigrarr",+ "leftrightharpoons",+ "rightleftharpoons",+ "kcedil",+ "submult",+ "curren",+ "LeftTeeVector",+ "bigstar",+ "cup",+ "LongRightArrow",+ "Gcedil",+ "PrecedesEqual",+ "zcy",+ "planckh",+ "Omega",+ "subsub",+ "rdca",+ "cups",+ "ldca",+ "subset",+ "NotSucceeds",+ "LeftArrowRightArrow",+ "wcirc",+ "RightAngleBracket",+ "ntrianglerighteq",+ "Sigma",+ "NotSucceedsTilde",+ "DiacriticalAcute",+ "subne",+ "Product",+ "circleddash",+ "subsup",+ "copy",+ "eta",+ "angmsd",+ "natural",+ "supedot",+ "naturals",+ "triangleright",+ "DiacriticalGrave",+ "boxuL",+ "cong",+ "telrec",+ "comma",+ "Subset",+ "NotSucceedsSlantEqual",+ "gtreqless",+ "Atilde",+ "curarr",+ "cudarrr",+ "cudarrl",+ "subseteq",+ "subseteqq",+ "rightsquigarrow",+ "cupcap",+ "subsetneq",+ "aogon",+ "notinvc",+ "rightthreetimes",+ "yacute",+ "nLeftarrow",+ "ocy",+ "cemptyv",+ "Ecy",+ "cupcup",+ "trianglerighteq",+ "LeftRightArrow",+ "succ",+ "DownArrowUpArrow",+ "OElig",+ "chcy",+ "gtreqqless",+ "angle",+ "acE",+ "rmoustache",+ "lmoustache",+ "NegativeVeryThinSpace",+ "napprox",+ "Oslash",+ "subsetneqq",+ "Aring",+ "boxuR",+ "subplus",+ "xwedge",+ "boxul",+ "boxvr",+ "HumpDownHump",+ "Icy",+ "approxeq",+ "aacute",+ "apid",+ "UpDownArrow",+ "NestedGreaterGreater",+ "jcy",+ "gtrsim",+ "boxv",+ "ocirc",+ "Ecirc",+ "notnivc",+ "bigtriangleup",+ "daleth",+ "Ocy",+ "Hcirc",+ "RightVectorBar",+ "AElig",+ "FilledVerySmallSquare",+ "ggg",+ "Bcy",+ "Poincareplane",+ "boxvL",+ "PartialD",+ "Icirc",+ "cularr",+ "boxh",+ "andv",+ "sung",+ "RightDoubleBracket",+ "jcirc",+ "UnderBar",+ "RightArrow",+ "circledcirc",+ "Alpha",+ "leftharpoonup",+ "cularrp",+ "RightArrowLeftArrow",+ "varsigma",+ "numero",+ "ffllig",+ "LowerLeftArrow",+ "expectation",+ "Ocirc",+ "yacy",+ "lambda",+ "NotSucceedsEqual",+ "boxvR",+ "bigtriangledown",+ "ang",+ "xuplus",+ "nabla",+ "boxvl",+ "Eta",+ "Acy",+ "kcy",+ "gcy",+ "LeftRightVector",+ "ccedil",+ "Backslash",+ "hslash",+ "Pcy",+ "Gcy",+ "gtquest",+ "Lambda",+ "odiv",+ "leftharpoondown",+ "longmapsto",+ "Jukcy",+ "ldrdhar",+ "xutri",+ "nRightarrow",+ "ExponentialE",+ "nrightarrow",+ "Acirc",+ "NoBreak",+ "gcirc",+ "ange",+ "curarrm",+ "SHCHcy",+ "yuml",+ "subnE",+ "DDotrahd",+ "RuleDelayed",+ "Gcirc",+ "Jsercy",+ "gtcc",+ "iukcy",+ "updownarrow",+ "curlyvee",+ "ffilig",+ "yicy",+ "divonx",+ "gtrapprox",+ "subdot",+ "leftrightarrows",+ "auml",+ "Updownarrow",+ "rightleftarrows",+ "DownRightVector",+ "DownRightVectorBar",+ "hcirc",+ "Rrightarrow",+ "longrightarrow",+ "cupdot",+ "ac",+ "hookrightarrow",+ "NegativeThickSpace",+ "subE",+ "twoheadrightarrow",+ "downharpoonright",+ "downharpoonleft",+ "aelig",+ "rdldhar",+ "curlywedge",+ "hybull",+ "sube",+ "Longrightarrow",+ "Cedilla",+ "notinva",+ "SucceedsEqual",+ "leftrightarrow",+ "straightepsilon",+ "amalg",+ "atilde",+ "RightCeiling",+ "Leftrightarrow",+ "subsim",+ "VerticalLine",+ "RightUpVector",+ "RightUpVectorBar",+ "RightDownVector",+ "RightDownVectorBar",+ "alefsym",+ "circlearrowright",+ "circlearrowleft",+ "Iukcy",+ "otimesas",+ "intercal",+ "thickapprox",+ "jukcy",+ "notniva",+ "precnapprox",+ "cuvee",+ "aring",+ "ccirc",+ "rightarrow",+ "Integral",+ "xcirc",+ "jsercy",+ "checkmark",+ "VerticalTilde",+ "boxvH",+ "NotRightTriangleBar",+ "NotRightTriangleEqual",+ "NotRightTriangle",+ "LeftVectorBar",+ "boxvh",+ "boxbox",+ "ycy",+ "subedot",+ "SOFTcy",+ "Rightarrow",+ "alpha",+ "shchcy",+ "softcy",+ "acy",+ "ycirc",+ "bigcirc",+ "ImaginaryI",+ "approx",+ "SupersetEqual",+ "vzigzag",+ "cuesc",+ "UnderParenthesis",+ "acirc",+ "succapprox",+ "mcomma",+ "angmsdae",+ "angmsdab",+ "angmsdaf",+ "angsph",+ "luruhar",+ "angmsdad",+ "twoheadleftarrow",+ "cylcty",+ "straightphi",+ "multimap",+ "RightArrowBar",+ "ldrushar",+ "LeftAngleBracket",+ "ruluhar",+ "curlyeqprec",+ "yucy",+ "lurdshar",+ "hardcy",+ "rightharpoondown",+ "rightharpoonup",+ "HARDcy",+ "SubsetEqual",+ "digamma",+ "udblac",+ "SuchThat",+ "cuwed",+ "Udblac",+ "angmsdag",+ "angmsdah",+ "VerticalBar",+ "VerticalSeparator",+ "rightarrowtail",+ "odblac",+ "succnapprox",+ "angmsdac",+ "Odblac",+ "cupbrcap",+ "angmsdaa",+ "curlyeqsucc",+ "curvearrowleft",+ "curvearrowright"+ };+#define entity_pool ((const char *) &entity_pool_contents)+const struct html_ent *+find_entity (register const char *str, register unsigned int len)+{+ static const unsigned char lengthtable[] =+ {+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 4,+ 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 4, 0, 0, 3,+ 0, 0, 0, 0, 0, 0, 6, 0, 6, 5, 0, 5, 3, 4,+ 3, 4, 0, 4, 0, 2, 5, 4, 0, 0, 0, 2, 0, 7,+ 0, 7, 3, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 6,+ 0, 0, 0, 3, 6, 0, 4, 0, 0, 0, 0, 6, 4, 5,+ 0, 0, 0, 5, 0, 5, 0, 6, 0, 0, 0, 4, 5, 5,+ 5, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0,+ 0, 0, 0, 3, 4, 0, 3, 0, 0, 5, 0, 0, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 0,+ 5, 0, 5, 6, 0, 6, 5, 0, 2, 5, 0, 5, 0, 0,+ 0, 0, 4, 0, 0, 0, 3, 0, 3, 5, 0, 0, 5, 0,+ 0, 0, 6, 0, 10, 0, 4, 0, 0, 5, 3, 5, 0, 0,+ 0, 0, 0, 0, 0, 5, 0, 3, 0, 0, 0, 0, 6, 6,+ 0, 6, 0, 0, 0, 0, 6, 0, 6, 0, 2, 0, 0, 0,+ 4, 7, 0, 7, 0, 5, 0, 0, 0, 0, 0, 0, 0, 3,+ 0, 4, 0, 4, 6, 0, 3, 0, 0, 0, 0, 0, 0, 4,+ 4, 3, 0, 4, 0, 0, 2, 0, 0, 0, 4, 0, 4, 0,+ 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 13, 0, 2, 0, 0, 0, 5, 0, 2, 0, 0, 0, 0, 0,+ 0, 0, 3, 2, 4, 0, 6, 0, 0, 3, 0, 2, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 6, 0, 3, 4, 0, 0, 0,+ 0, 4, 6, 0, 0, 0, 5, 5, 5, 0, 13, 0, 0, 4,+ 0, 0, 5, 0, 4, 4, 5, 17, 18, 0, 0, 0, 0, 0,+ 5, 0, 0, 17, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0,+ 5, 5, 0, 0, 0, 8, 0, 0, 0, 3, 0, 0, 6, 3,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 6, 0, 0,+ 0, 4, 0, 0, 5, 0, 6, 6, 6, 6, 6, 6, 6, 0,+ 0, 6, 0, 6, 0, 6, 6, 6, 6, 6, 6, 0, 0, 0,+ 6, 0, 6, 3, 4, 0, 0, 4, 3, 5, 0, 0, 3, 0,+ 0, 0, 11, 5, 0, 0, 0, 4, 0, 0, 6, 0, 0, 0,+ 5, 0, 0, 0, 5, 0, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 5, 0, 0, 0, 0, 0, 5, 3, 0, 0, 4, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 4, 0, 4,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 5, 0, 0, 0, 0,+ 3, 6, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 4, 6,+ 0, 0, 8, 0, 8, 0, 2, 0, 0, 0, 0, 4, 0, 0,+ 0, 4, 0, 6, 0, 0, 0, 0, 6, 0, 4, 0, 0, 0,+ 0, 6, 0, 5, 6, 2, 5, 8, 5, 0, 0, 4, 0, 4,+ 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 9, 0, 4, 4,+ 4, 0, 4, 6, 4, 4, 4, 0, 0, 0, 5, 4, 5, 4,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 4, 0, 4, 5, 4,+ 5, 0, 0, 4, 0, 5, 0, 0, 0, 4, 0, 0, 0, 0,+ 4, 4, 0, 5, 0, 0, 11, 0, 0, 6, 0, 0, 3, 0,+ 0, 0, 0, 6, 0, 4, 0, 0, 4, 0, 0, 0, 0, 4,+ 0, 0, 0, 0, 7, 4, 4, 0, 7, 0, 0, 0, 0, 0,+ 5, 0, 0, 0, 3, 8, 4, 0, 0, 0, 5, 0, 6, 0,+ 0, 0, 0, 6, 0, 4, 0, 0, 0, 5, 0, 6, 0, 0,+ 0, 5, 5, 0, 0, 3, 6, 2, 0, 0, 4, 0, 0, 7,+ 0, 4, 0, 4, 4, 4, 3, 5, 0, 0, 0, 0, 0, 0,+ 6, 0, 4, 4, 0, 0, 0, 12, 13, 0, 0, 6, 8, 0,+ 2, 0, 0, 17, 0, 0, 0, 4, 0, 5, 0, 7, 0, 5,+ 0, 0, 0, 5, 4, 5, 0, 0, 3, 0, 0, 0, 5, 0,+ 5, 12, 13, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 4, 0, 0, 0, 7, 0, 0, 6, 6, 6, 0, 4, 0,+ 0, 0, 0, 17, 0, 0, 4, 5, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 5, 3, 6, 9, 0, 0,+ 0, 9, 0, 0, 0, 0, 0, 6, 4, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 19, 0, 5, 0, 0, 17, 0, 0,+ 14, 0, 0, 0, 0, 12, 4, 0, 0, 0, 4, 0, 2, 0,+ 4, 0, 6, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 0,+ 4, 0, 4, 4, 4, 0, 0, 0, 0, 4, 0, 4, 0, 4,+ 9, 0, 0, 4, 2, 0, 0, 4, 2, 4, 4, 0, 0, 0,+ 0, 4, 6, 0, 0, 6, 9, 4, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 4, 0, 0,+ 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 10, 6, 0, 0,+ 0, 0, 6, 4, 6, 4, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 9, 0, 0, 4, 0, 0, 0, 0, 0,+ 7, 4, 4, 7, 0, 7, 5, 0, 0, 6, 4, 4, 4, 0,+ 4, 4, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0,+ 0, 0, 4, 0, 0, 4, 4, 6, 0, 0, 0, 3, 5, 3,+ 5, 11, 4, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0, 0,+ 7, 0, 0, 0, 0, 5, 0, 5, 0, 0, 0, 3, 5, 4,+ 0, 0, 0, 5, 0, 6, 9, 7, 2, 0, 4, 0, 0, 4,+ 0, 0, 0, 0, 4, 5, 6, 0, 0, 0, 0, 9, 10, 0,+ 0, 0, 5, 0, 0, 0, 0, 11, 0, 0, 6, 0, 0, 0,+ 0, 0, 0, 4, 8, 6, 0, 0, 0, 0, 0, 8, 0, 0,+ 0, 0, 0, 0, 0, 5, 6, 0, 0, 0, 13, 5, 5, 6,+ 0, 0, 0, 0, 2, 0, 0, 0, 4, 2, 4, 0, 0, 6,+ 4, 0, 4, 0, 0, 0, 4, 0, 21, 0, 0, 0, 6, 0,+ 3, 0, 0, 0, 6, 6, 0, 3, 13, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 7, 0, 0, 0, 0,+ 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 4, 0, 6, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 7, 3, 0, 0,+ 0, 0, 0, 0, 0, 7, 3, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0,+ 3, 15, 3, 3, 3, 0, 0, 0, 3, 3, 6, 3, 6, 0,+ 0, 0, 0, 3, 0, 0, 4, 3, 0, 3, 0, 12, 0, 0,+ 0, 3, 0, 4, 0, 0, 0, 3, 0, 12, 0, 4, 5, 0,+ 9, 0, 0, 7, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 3, 0, 0, 0, 0, 0, 5, 0, 3, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 4, 0, 0, 0,+ 4, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0,+ 0, 5, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 5,+ 0, 3, 3, 0, 0, 6, 0, 0, 0, 0, 0, 4, 0, 0,+ 3, 3, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 3, 7, 0, 0, 8, 0, 0, 0, 0,+ 0, 0, 3, 4, 0, 6, 0, 0, 0, 15, 0, 0, 0, 0,+ 0, 0, 0, 9, 0, 0, 0, 2, 0, 0, 0, 0, 9, 3,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 7, 3, 24, 0, 0,+ 0, 0, 5, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 6, 7, 4, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 3, 3,+ 0, 4, 0, 7, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,+ 0, 5, 2, 0, 0, 0, 6, 0, 3, 8, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 4, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 5, 0, 9, 5, 7, 0, 0, 0, 0, 0, 0, 0,+ 0, 7, 15, 7, 8, 4, 0, 5, 0, 0, 6, 0, 0, 0,+ 0, 0, 0, 0, 4, 4, 5, 0, 0, 0, 0, 6, 14, 3,+ 15, 0, 6, 0, 0, 0, 3, 0, 3, 3, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 0, 0, 0,+ 0, 0, 0, 5, 0, 0, 5, 16, 0, 5, 10, 0, 0, 0,+ 5, 7, 0, 5, 0, 0, 6, 0, 3, 0, 0, 11, 5, 0,+ 0, 4, 5, 0, 0, 5, 0, 0, 3, 0, 0, 0, 0, 8,+ 0, 0, 0, 5, 0, 0, 0, 6, 3, 0, 0, 0, 0, 0,+ 5, 0, 0, 3, 3, 3, 0, 0, 0, 6, 0, 0, 5, 6,+ 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 11, 0, 6, 0, 6, 0, 0, 13, 0, 0, 7,+ 0, 0, 0, 0, 7, 0, 6, 4, 5, 0, 3, 0, 0, 5,+ 3, 0, 0, 0, 0, 0, 6, 0, 0, 4, 0, 0, 0, 0,+ 3, 6, 5, 0, 0, 0, 0, 11, 0, 4, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0,+ 0, 11, 0, 5, 5, 0, 0, 0, 0, 0, 0, 3, 0, 0,+ 0, 0, 0, 8, 0, 7, 4, 0, 0, 0, 0, 5, 4, 9,+ 0, 0, 5, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,+ 0, 6, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,+ 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 7, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 4, 0, 0, 14, 5, 0, 0, 8,+ 0, 0, 0, 20, 7, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 3, 0, 0, 4, 6, 0, 0, 0, 0, 6, 0, 0, 0, 7,+ 0, 3, 6, 4, 6, 0, 0, 0, 0, 0, 0, 6, 3, 4,+ 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,+ 0, 11, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 4,+ 0, 0, 0, 0, 0, 0, 0, 13, 18, 5, 0, 3, 0, 7,+ 0, 4, 0, 0, 0, 4, 0, 0, 10, 11, 0, 0, 0, 6,+ 0, 6, 0, 0, 5, 0, 5, 12, 12, 0, 0, 0, 4, 0,+ 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,+ 14, 0, 0, 0, 2, 4, 8, 4, 0, 3, 0, 0, 7, 0,+ 3, 0, 0, 0, 3, 2, 0, 0, 0, 0, 6, 0, 6, 4,+ 6, 7, 6, 6, 6, 0, 10, 0, 0, 0, 3, 6, 0, 4,+ 0, 0, 0, 0, 0, 4, 0, 6, 6, 0, 4, 0, 0, 0,+ 7, 0, 0, 7, 0, 0, 4, 0, 4, 0, 5, 6, 0, 6,+ 0, 3, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0,+ 9, 0, 0, 0, 0, 0, 8, 14, 0, 3, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 7, 5, 0, 0, 0, 4, 0, 0, 0,+ 17, 7, 0, 0, 4, 0, 0, 7, 0, 5, 0, 0, 7, 5,+ 0, 0, 4, 0, 7, 2, 20, 0, 0, 0, 0, 13, 0, 0,+ 0, 0, 6, 0, 7, 3, 5, 4, 0, 0, 0, 0, 5, 5,+ 0, 0, 0, 0, 0, 4, 5, 0, 0, 0, 0, 0, 0, 0,+ 5, 0, 5, 0, 0, 6, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 4, 9, 0, 5, 12, 0, 0, 0, 0, 5, 0, 5,+ 4, 0, 0, 0, 9, 0, 0, 0, 10, 10, 0, 0, 4, 6,+ 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 2, 6, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 6, 6, 0, 3, 0, 0, 0,+ 7, 0, 0, 0, 0, 7, 4, 0, 0, 0, 0, 0, 4, 0,+ 9, 0, 0, 3, 0, 0, 0, 7, 0, 4, 0, 0, 5, 6,+ 0, 0, 6, 3, 5, 4, 0, 0, 0, 0, 0, 6, 0, 5,+ 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 5,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0,+ 6, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 8, 0, 0, 0, 6, 0, 0, 0, 0, 4,+ 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 10, 0, 0, 6, 0, 6, 0, 0, 6,+ 0, 0, 18, 0, 6, 0, 20, 15, 0, 0, 4, 4, 0, 0,+ 0, 6, 0, 0, 0, 3, 0, 0, 0, 0, 0, 5, 4, 4,+ 0, 7, 0, 6, 0, 4, 0, 5, 0, 0, 0, 0, 5, 0,+ 0, 0, 4, 4, 0, 0, 0, 0, 4, 0, 4, 0, 11, 0,+ 20, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 10, 0, 0, 8, 0, 0, 0, 6, 0, 0, 0,+ 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 3, 0, 0, 6,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4,+ 0, 0, 0, 0, 0, 0, 13, 0, 0, 9, 0, 0, 0, 5,+ 0, 0, 0, 5, 0, 3, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 3, 0, 0, 17, 0, 5, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 9, 0, 0, 0, 6, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 7, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 14, 0,+ 0, 11, 0, 6, 0, 6, 0, 7, 5, 0, 0, 0, 6, 12,+ 12, 0, 0, 0, 0, 16, 0, 14, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 5, 0, 5, 0, 0, 0, 7,+ 0, 0, 5, 0, 0, 0, 0, 0, 0, 6, 0, 14, 0, 0,+ 0, 0, 0, 0, 4, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 5, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 5, 0, 0, 0, 0, 0, 0,+ 5, 0, 5, 0, 0, 0, 0, 0, 11, 6, 6, 3, 0, 0,+ 0, 0, 7, 0, 6, 0, 6, 6, 4, 0, 0, 0, 7, 0,+ 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 0, 5, 0, 0, 0, 6, 0, 0, 0, 0,+ 4, 4, 0, 0, 0, 0, 3, 3, 6, 0, 0, 0, 0, 0,+ 0, 8, 0, 0, 0, 0, 0, 6, 0, 0, 0, 4, 6, 0,+ 4, 4, 0, 0, 0, 0, 13, 0, 4, 0, 0, 0, 0, 4,+ 2, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 7, 0,+ 0, 0, 10, 0, 9, 0, 0, 4, 6, 0, 5, 0, 0, 0,+ 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 10, 0, 0, 0, 0, 0, 0, 8, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 12, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 12, 0,+ 0, 0, 0, 0, 0, 0, 18, 0, 0, 4, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 7, 0, 0, 0, 0, 5, 0, 5,+ 0, 0, 0, 6, 0, 0, 5, 0, 0, 6, 0, 6, 0, 0,+ 13, 6, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 4, 0, 6, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0,+ 14, 0, 6, 15, 0, 0, 7, 0, 3, 0, 3, 0, 0, 0,+ 9, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0,+ 0, 4, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 15,+ 0, 0, 0, 6, 0, 0, 6, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 7, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 3, 9, 4, 0, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 2, 15, 0, 0,+ 0, 5, 0, 5, 0, 4, 0, 0, 0, 0, 0, 0, 16, 0,+ 3, 3, 10, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 4,+ 5, 4, 0, 0, 6, 0, 5, 4, 0, 5, 5, 3, 5, 0,+ 4, 0, 6, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 3,+ 0, 0, 0, 0, 0, 3, 0, 0, 6, 0, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 6, 8, 6, 0, 0, 0, 0, 0, 0, 0, 5, 16, 0,+ 5, 7, 0, 6, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,+ 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 7, 0, 7, 0, 0, 5, 0, 0,+ 0, 0, 6, 0, 5, 4, 5, 0, 5, 5, 0, 0, 0, 0,+ 5, 2, 6, 4, 0, 5, 0, 0, 5, 0, 4, 0, 0, 0,+ 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,+ 0, 6, 0, 0, 0, 0, 3, 5, 0, 0, 0, 2, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0,+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 8, 0, 0, 0, 0, 6, 5, 0, 0, 4,+ 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,+ 0, 4, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 4, 0, 4, 2, 6, 0, 6, 3, 3, 0, 0,+ 3, 0, 4, 0, 6, 0, 3, 0, 0, 6, 0, 5, 31, 0,+ 0, 0, 0, 0, 0, 0, 3, 6, 0, 0, 0, 0, 0, 0,+ 0, 4, 0, 0, 5, 0, 0, 0, 3, 0, 0, 0, 0, 6,+ 0, 8, 0, 5, 4, 0, 0, 0, 0, 3, 0, 0, 0, 0,+ 0, 0, 0, 3, 0, 0, 0, 0, 0, 5, 0, 0, 5, 0,+ 0, 0, 19, 0, 0, 0, 0, 24, 0, 0, 4, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 5,+ 0, 0, 0, 6, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0,+ 0, 16, 5, 0, 0, 3, 4, 4, 0, 5, 4, 5, 0, 0,+ 0, 13, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 6, 0, 3,+ 0, 7, 0, 10, 0, 0, 0, 0, 6, 0, 6, 0, 0, 13,+ 0, 0, 0, 5, 0, 8, 0, 6, 0, 6, 8, 6, 0, 0,+ 6, 6, 0, 10, 0, 8, 6, 6, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 11, 0, 0, 0, 6, 0, 0, 0,+ 0, 7, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 7, 0, 0, 0, 17, 6, 0, 0, 0, 0, 0, 16, 0, 0,+ 0, 0, 0, 0, 4, 0, 4, 0, 0, 0, 0, 0, 7, 0,+ 14, 7, 6, 0, 6, 0, 7, 0, 0, 0, 0, 0, 0, 0,+ 4, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 10, 4, 14, 0, 0, 0, 9, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 4, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 6, 3, 8, 4, 6, 6, 0,+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,+ 0, 6, 0, 4, 0, 2, 0, 20, 21, 0, 0, 2, 0, 0,+ 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0,+ 0, 0, 0, 0, 0, 6, 0, 0, 14, 4, 6, 17, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 5, 0, 0,+ 4, 6, 0, 2, 7, 0, 6, 5, 0, 8, 0, 0, 5, 0,+ 4, 0, 0, 0, 5, 0, 4, 15, 5, 0, 4, 6, 0, 0,+ 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 17, 5, 0,+ 0, 0, 9, 6, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 6, 0, 5, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 7, 5, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 0,+ 0, 12, 0, 0, 0, 6, 0, 0, 0, 0, 10, 3, 0, 0,+ 0, 4, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 7, 0, 0,+ 0, 0, 0, 0, 9, 0, 6, 0, 6, 0, 0, 0, 0, 19,+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0,+ 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 5, 0, 6, 3, 6,+ 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 2, 0, 0, 0,+ 4, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 5, 0, 6, 0, 6, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 6, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 17, 0,+ 0, 7, 0, 0, 2, 6, 2, 0, 0, 0, 2, 0, 0, 0,+ 0, 3, 8, 0, 0, 3, 0, 5, 0, 5, 6, 0, 0, 0,+ 0, 18, 0, 0, 0, 0, 5, 0, 7, 0, 0, 9, 0, 0,+ 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 4, 0, 4, 0, 0, 4, 0, 9, 0, 6, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 5, 0, 4, 0,+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 5, 0, 5, 6,+ 0, 0, 0, 3, 3, 5, 0, 0, 0, 0, 6, 0, 0, 0,+ 6, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 4,+ 6, 13, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 13, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0,+ 0, 0, 5, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0,+ 8, 6, 8, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 12, 0, 6, 0, 0, 0, 6, 0, 0,+ 0, 6, 4, 0, 0, 7, 6, 5, 0, 0, 6, 0, 5, 5,+ 5, 0, 0, 0, 9, 0, 0, 0, 0, 0, 5, 0, 6, 8,+ 0, 0, 6, 0, 5, 8, 0, 0, 0, 6, 0, 4, 0, 9,+ 0, 0, 0, 0, 4, 6, 4, 0, 0, 0, 0, 0, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 4,+ 11, 0, 0, 8, 9, 0, 0, 0, 0, 3, 5, 3, 0, 0,+ 0, 0, 6, 4, 0, 0, 0, 9, 4, 3, 0, 2, 0, 0,+ 0, 0, 0, 7, 5, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 14, 3, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 10,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0,+ 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 10, 7,+ 5, 0, 6, 0, 6, 0, 3, 17, 0, 0, 0, 0, 0, 0,+ 20, 0, 14, 4, 0, 0, 0, 0, 0, 0, 19, 6, 6, 0,+ 10, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 6, 0,+ 0, 3, 0, 0, 0, 4, 5, 0, 0, 4, 0, 5, 0, 0,+ 0, 0, 0, 0, 7, 0, 4, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 0, 3, 0, 0, 0, 0,+ 0, 0, 7, 0, 3, 0, 4, 0, 3, 0, 4, 0, 0, 13,+ 0, 4, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0,+ 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 6, 0, 0, 0, 0, 0, 7, 0, 13, 0, 0, 15, 0, 0,+ 5, 9, 0, 0, 0, 6, 0, 6, 0, 0, 4, 6, 0, 0,+ 6, 4, 4, 0, 16, 0, 4, 0, 3, 0, 0, 11, 5, 15,+ 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 7, 0, 0, 5, 0, 5, 4, 0, 0, 4, 0,+ 20, 4, 0, 0, 0, 0, 0, 5, 15, 4, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 5, 0,+ 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 22, 0, 0, 7,+ 8, 0, 4, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 6, 7, 0, 0, 0, 0, 6, 0, 6, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 4, 0, 5, 0, 12, 15, 6, 0,+ 13, 0, 4, 0, 5, 4, 6, 0, 0, 0, 0, 4, 0, 0,+ 4, 3, 5, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 0,+ 0, 0, 0, 0, 4, 0, 0, 9, 0, 0, 20, 0, 4, 10,+ 0, 0, 0, 0, 4, 0, 5, 0, 0, 8, 6, 0, 5, 4,+ 0, 0, 3, 0, 4, 0, 0, 6, 6, 0, 4, 0, 0, 0,+ 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 4, 0,+ 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 9,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 17,+ 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0,+ 0, 0, 0, 14, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 14, 0, 0, 0, 0, 0, 0, 5, 6, 0, 5, 0, 0,+ 0, 0, 0, 0, 5, 0, 8, 0, 0, 0, 4, 0, 0, 0,+ 0, 0, 16, 15, 4, 0, 0, 11, 0, 0, 0, 8, 0, 0,+ 0, 0, 0, 0, 0, 2, 0, 5, 0, 10, 0, 0, 5, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0,+ 5, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 4, 0, 0, 0, 0, 0, 0, 0, 2,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 8, 6, 5, 4, 0, 0, 0,+ 0, 5, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 6, 0,+ 0, 0, 0, 2, 4, 5, 0, 0, 0, 8, 0, 0, 3, 0,+ 8, 0, 0, 4, 18, 0, 0, 0, 0, 4, 5, 0, 0, 0,+ 16, 0, 0, 0, 0, 7, 0, 2, 3, 5, 0, 0, 5, 0,+ 4, 4, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 8, 0, 14, 0, 0, 0, 0, 5, 0, 0, 6, 0, 6, 0,+ 5, 0, 5, 0, 5, 15, 0, 0, 8, 17, 12, 0, 0, 0,+ 0, 0, 6, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 0, 5, 0, 0, 20, 0, 0, 0, 0, 0,+ 11, 0, 5, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 13,+ 0, 0, 0, 0, 0, 6, 0, 6, 0, 6, 0, 6, 0, 5,+ 8, 0, 0, 0, 0, 0, 6, 14, 0, 0, 0, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 4, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0,+ 0, 13, 0, 0, 0, 0, 0, 8, 4, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 7,+ 0, 0, 16, 0, 14, 0, 18, 13, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 3, 0, 0, 0, 16, 0, 0, 0, 0, 0,+ 0, 14, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 3,+ 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 5, 0,+ 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 8, 17, 0, 0, 0, 5, 0, 0, 0, 8, 0,+ 0, 0, 0, 0, 0, 0, 9, 0, 15, 0, 5, 0, 5, 0,+ 0, 0, 0, 0, 0, 6, 5, 0, 0, 0, 0, 6, 4, 0,+ 0, 9, 0, 0, 0, 0, 0, 6, 0, 6, 0, 0, 8, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,+ 6, 2, 0, 0, 6, 0, 12, 6, 0, 0, 0, 16, 0, 0,+ 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0,+ 0, 0, 14, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 10, 8, 0, 5, 0, 0, 6,+ 0, 0, 0, 6, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 5, 0, 0, 5, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 8, 0, 0, 0, 14, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 5, 0, 9, 0,+ 0, 0, 5, 0, 0, 0, 0, 4, 6, 0, 0, 0, 0, 0,+ 0, 8, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0,+ 3, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 21, 5, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 6, 0, 6, 0, 0, 0, 0, 0, 3, 5, 0,+ 0, 5, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 2, 0,+ 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10,+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 8, 5, 14, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 5, 6, 0, 0, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 13, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 12, 0, 0, 0, 18, 10, 0, 0, 18, 0, 7, 0, 0,+ 0, 6, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 4,+ 0, 5, 0, 0, 0, 0, 6, 0, 0, 5, 0, 0, 4, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 4, 0,+ 0, 0, 5, 0, 12, 4, 12, 8, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 5, 0, 5, 0,+ 0, 0, 0, 0, 8, 0, 0, 0, 0, 4, 0, 0, 0, 0,+ 7, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 4,+ 5, 0, 0, 0, 5, 6, 7, 7, 0, 0, 0, 0, 0, 0,+ 0, 6, 0, 8, 0, 0, 0, 0, 5, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 10, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0,+ 4, 6, 0, 0, 0, 5, 0, 0, 0, 8, 0, 0, 0, 0,+ 0, 17, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 5, 0, 0, 0, 0, 17, 0, 5, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 8, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0,+ 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 7, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 4, 0,+ 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0,+ 0, 0, 0, 0, 0, 8, 4, 0, 7, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 4, 0, 4, 6, 8, 0, 5, 0,+ 0, 4, 4, 0, 5, 4, 5, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 5, 0, 0, 18, 0, 5, 0, 0, 0, 19, 0, 0,+ 8, 0, 14, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 0, 0, 5, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 11, 0, 5, 13, 0, 0, 0, 7,+ 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 3, 0, 0,+ 4, 0, 6, 13, 0, 8, 0, 5, 0, 0, 0, 5, 0, 0,+ 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0,+ 3, 0, 3, 0, 3, 0, 3, 3, 3, 4, 0, 4, 0, 3,+ 5, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3,+ 4, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 5,+ 0, 18, 0, 0, 15, 7, 0, 3, 0, 0, 6, 5, 0, 5,+ 0, 3, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 12, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,+ 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0,+ 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 7,+ 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 5, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,+ 7, 10, 0, 0, 0, 0, 0, 4, 0, 0, 9, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 11, 0, 4, 0, 0, 0, 0, 0, 0, 0, 5, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 6, 12, 0, 0, 0, 5, 6, 0, 0, 0, 0,+ 0, 5, 0, 0, 0, 5, 0, 0, 0, 0, 5, 0, 17, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 5, 0, 0, 0, 0, 6, 5, 0, 0, 0, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 4, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 5, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,+ 4, 15, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 6, 0, 9, 6, 0, 0, 0,+ 3, 0, 0, 0, 0, 0, 7, 0, 0, 20, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 5, 0, 0,+ 0, 3, 0, 0, 6, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 3, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 7, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 14, 0, 0, 0, 0, 5, 6, 0, 0, 0, 0,+ 0, 4, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0,+ 0, 0, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 5, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 8, 0, 0, 5, 0, 0, 0, 0, 0, 0,+ 5, 0, 0, 0, 0, 0, 6, 8, 0, 0, 17, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 17, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 7, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 0, 13, 0, 0, 0, 0, 7, 0, 0, 3, 14, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,+ 0, 7, 5, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 4, 4, 4, 0, 0, 0, 0, 6, 11, 19, 0,+ 0, 5, 17, 0, 0, 0, 0, 0, 16, 5, 0, 0, 0, 0,+ 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,+ 7, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 3, 0, 0,+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 7, 0, 7, 8, 0, 0, 0, 0, 0, 13, 0, 16, 5, 4,+ 0, 0, 0, 6, 0, 0, 5, 0, 0, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21,+ 9, 6, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 7, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 8,+ 9, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 6, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 5, 7, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 3, 7, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 6, 0, 0, 0,+ 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,+ 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 4, 10, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 10, 0, 10, 0,+ 0, 0, 21, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0,+ 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 6, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 11, 0, 20, 0, 3, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,+ 0, 3, 0, 0, 0, 0, 5, 14, 5, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 5, 0,+ 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 4, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 0, 0,+ 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 8, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 5, 0, 0,+ 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 7, 0,+ 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 5, 0,+ 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 16, 5, 0, 15, 0,+ 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 15, 0, 0, 0, 0, 0, 6, 0, 0, 0, 9, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,+ 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 4, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 5, 11, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 5, 0, 0, 0, 4, 7, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 8, 0, 0,+ 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 4,+ 0, 0, 11, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 18, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 14, 0, 0, 18, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 15, 0, 0,+ 0, 0, 5, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,+ 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,+ 0, 0, 0, 12, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 13, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 15, 0, 0, 18, 0, 0, 0, 7, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 15, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0,+ 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 11, 0,+ 0, 5, 0, 0, 0, 7, 0, 0, 0, 11, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 5, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 9, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 21, 16, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 10, 0, 5, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,+ 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 4, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 5,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15+ };+ static const struct html_ent wordlist[] =+ {+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1501 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str39), {226, 134, 146, 0}},+ {-1,{0}},+#line 833 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str41), {226, 134, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 844 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str49), {226, 170, 171, 0}},+ {-1,{0}}, {-1,{0}},+#line 1903 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str52), {226, 134, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 1235 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str55), {226, 138, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1510 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str62), {226, 134, 163, 0}},+ {-1,{0}},+#line 841 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str64), {226, 134, 162, 0}},+#line 1601 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str65), {226, 135, 190, 0}},+ {-1,{0}},+#line 963 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str67), {226, 135, 189, 0}},+#line 1168 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str68), {194, 172, 0}},+#line 1609 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str69), {41, 0}},+#line 146 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str70), {226, 138, 165, 0}},+#line 989 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str71), {40, 0}},+ {-1,{0}},+#line 1715 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str73), {226, 136, 165, 0}},+ {-1,{0}},+#line 945 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str75), {226, 137, 170, 0}},+#line 1926 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str76), {226, 134, 190, 0}},+#line 505 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str77), {226, 139, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 482 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str81), {226, 170, 153, 0}},+ {-1,{0}},+#line 1607 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str83), {226, 168, 181, 0}},+ {-1,{0}},+#line 981 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str85), {226, 168, 180, 0}},+#line 1388 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str86), {226, 136, 165, 0}},+ {-1,{0}},+#line 1132 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str88), {226, 134, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1231 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str94), {226, 136, 166, 0}},+ {-1,{0}}, {-1,{0}},+#line 1872 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str97), {226, 128, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 486 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str101), {226, 170, 149, 0}},+#line 506 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str102), {226, 167, 163, 0}},+ {-1,{0}},+#line 500 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str104), {226, 128, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 193 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str109), {226, 128, 181, 0}},+#line 955 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str110), {226, 170, 137, 0}},+#line 137 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str111), {226, 150, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 136 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str115), {226, 150, 146, 0}},+ {-1,{0}},+#line 138 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str117), {226, 150, 147, 0}},+ {-1,{0}},+#line 1232 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str119), {226, 171, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1143 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str123), {226, 128, 165, 0}},+#line 1594 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str124), {226, 135, 132, 0}},+#line 1233 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str125), {226, 136, 130, 0}},+#line 944 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str126), {226, 135, 135, 0}},+#line 1158 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str127), {226, 137, 174, 0}},+#line 1696 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str128), {226, 134, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1230 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str138), {226, 136, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1825 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str143), {206, 164, 0}},+#line 1991 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str144), {226, 134, 149, 0}},+ {-1,{0}},+#line 1738 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str146), {226, 150, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 1141 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str149), {226, 134, 154, 0}},+ {-1,{0}}, {-1,{0}},+#line 1826 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str152), {207, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 957 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str165), {226, 170, 135, 0}},+#line 1612 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str166), {226, 135, 137, 0}},+ {-1,{0}},+#line 991 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str168), {226, 135, 134, 0}},+ {-1,{0}},+#line 1740 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str170), {226, 134, 146, 0}},+#line 1556 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str171), {226, 165, 172, 0}},+ {-1,{0}},+#line 940 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str173), {226, 165, 170, 0}},+#line 525 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str174), {226, 165, 177, 0}},+ {-1,{0}},+#line 1433 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str176), {226, 137, 186, 0}},+#line 1555 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str177), {226, 135, 128, 0}},+ {-1,{0}},+#line 939 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str179), {226, 134, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1904 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str184), {226, 134, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1128 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str188), {226, 137, 171, 0}},+ {-1,{0}},+#line 140 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str190), {61, 0}},+#line 1241 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str191), {226, 134, 155, 0}},+ {-1,{0}}, {-1,{0}},+#line 1818 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str194), {226, 134, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1497 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str198), {226, 165, 181, 0}},+ {-1,{0}},+#line 1966 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str200), {226, 135, 136, 0}},+ {-1,{0}},+#line 344 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str202), {226, 134, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 1516 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str205), {226, 164, 141, 0}},+#line 397 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str206), {194, 168, 0}},+#line 847 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str207), {226, 164, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1306 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str215), {226, 134, 150, 0}},+ {-1,{0}},+#line 1703 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str217), {226, 170, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 496 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str222), {226, 128, 133, 0}},+#line 1507 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str223), {226, 165, 133, 0}},+ {-1,{0}},+#line 839 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str225), {226, 164, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1405 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str230), {226, 132, 179, 0}},+ {-1,{0}},+#line 495 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str232), {226, 128, 132, 0}},+ {-1,{0}},+#line 1013 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str234), {60, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 834 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str238), {226, 134, 158, 0}},+#line 1524 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str239), {226, 166, 144, 0}},+ {-1,{0}},+#line 854 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str241), {226, 166, 141, 0}},+ {-1,{0}},+#line 1081 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str243), {197, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1145 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str251), {226, 137, 176, 0}},+ {-1,{0}},+#line 1553 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str253), {226, 165, 164, 0}},+ {-1,{0}},+#line 937 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str255), {226, 165, 162, 0}},+#line 1476 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str256), {226, 129, 151, 0}},+ {-1,{0}},+#line 828 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str258), {226, 170, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1086 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str265), {194, 160, 0}},+#line 1924 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str266), {226, 165, 163, 0}},+#line 1867 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str267), {226, 138, 164, 0}},+ {-1,{0}},+#line 2003 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str269), {226, 171, 171, 0}},+ {-1,{0}}, {-1,{0}},+#line 946 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str272), {226, 139, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1431 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str276), {226, 170, 183, 0}},+ {-1,{0}},+#line 497 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str278), {226, 128, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 1078 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str281), {226, 137, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 975 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str294), {226, 134, 171, 0}},+ {-1,{0}},+#line 869 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str296), {226, 137, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1669 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str300), {226, 153, 175, 0}},+ {-1,{0}},+#line 473 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str302), {226, 133, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 913 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str310), {226, 169, 189, 0}},+#line 744 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str311), {226, 136, 136, 0}},+#line 1460 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str312), {226, 136, 157, 0}},+ {-1,{0}},+#line 1865 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str314), {226, 140, 182, 0}},+ {-1,{0}}, {-1,{0}},+#line 749 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str317), {226, 136, 171, 0}},+ {-1,{0}},+#line 1104 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str319), {226, 137, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1236 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str329), {226, 139, 160, 0}},+ {-1,{0}},+#line 1446 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str331), {226, 170, 175, 0}},+#line 508 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str332), {206, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1959 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str337), {207, 133, 0}},+#line 1838 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str338), {226, 136, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1522 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str342), {226, 166, 140, 0}},+#line 1657 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str343), {226, 134, 152, 0}},+#line 852 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str344), {226, 166, 139, 0}},+ {-1,{0}},+#line 131 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str346), {226, 150, 180, 0}},+ {-1,{0}}, {-1,{0}},+#line 959 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str349), {226, 170, 135, 0}},+ {-1,{0}}, {-1,{0}},+#line 960 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str352), {226, 137, 168, 0}},+ {-1,{0}},+#line 1417 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str354), {43, 0}},+#line 1153 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str355), {226, 169, 189, 0}},+#line 1105 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str356), {226, 137, 144, 0}},+#line 133 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str357), {226, 151, 130, 0}},+#line 134 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str358), {226, 150, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1101 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str364), {226, 134, 151, 0}},+ {-1,{0}}, {-1,{0}},+#line 132 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str367), {226, 150, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1154 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str373), {226, 137, 174, 0}},+#line 489 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str374), {196, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2033 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str378), {226, 136, 157, 0}},+#line 1933 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str379), {197, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1700 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str383), {226, 167, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1032 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str387), {226, 164, 133, 0}},+ {-1,{0}}, {-1,{0}},+#line 1419 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str390), {226, 168, 165, 0}},+#line 1167 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str391), {226, 171, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2018 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str408), {226, 128, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1398 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str426), {226, 138, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 560 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str430), {226, 150, 177, 0}},+#line 1422 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str431), {194, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1150 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str435), {226, 137, 176, 0}},+ {-1,{0}}, {-1,{0}},+#line 1151 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str438), {226, 137, 166, 0}},+ {-1,{0}},+#line 578 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str440), {194, 190, 0}},+#line 572 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str441), {194, 188, 0}},+#line 2017 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str442), {124, 0}},+#line 570 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str443), {194, 189, 0}},+#line 579 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str444), {226, 133, 151, 0}},+#line 573 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str445), {226, 133, 149, 0}},+#line 581 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str446), {226, 133, 152, 0}},+ {-1,{0}}, {-1,{0}},+#line 577 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str449), {226, 133, 150, 0}},+ {-1,{0}},+#line 571 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str451), {226, 133, 147, 0}},+ {-1,{0}},+#line 574 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str453), {226, 133, 153, 0}},+#line 1465 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str454), {226, 138, 176, 0}},+#line 576 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str455), {226, 133, 148, 0}},+#line 580 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str456), {226, 133, 156, 0}},+#line 575 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str457), {226, 133, 155, 0}},+#line 582 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str458), {226, 133, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 583 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str462), {226, 133, 157, 0}},+ {-1,{0}},+#line 584 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str464), {226, 133, 158, 0}},+#line 909 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str465), {226, 137, 164, 0}},+#line 343 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str466), {226, 134, 147, 0}},+ {-1,{0}}, {-1,{0}},+#line 1960 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str469), {207, 146, 0}},+#line 398 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str470), {203, 153, 0}},+#line 1406 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str471), {226, 152, 142, 0}},+ {-1,{0}}, {-1,{0}},+#line 218 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str474), {226, 139, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 130 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str478), {226, 150, 170, 0}},+#line 1599 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str479), {226, 171, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 910 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str483), {226, 137, 166, 0}},+ {-1,{0}}, {-1,{0}},+#line 748 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str486), {226, 138, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 371 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str490), {226, 135, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1554 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str494), {226, 135, 129, 0}},+ {-1,{0}},+#line 938 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str496), {226, 134, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1420 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str505), {226, 169, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1932 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str511), {197, 170, 0}},+#line 2014 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str512), {226, 139, 129, 0}},+ {-1,{0}}, {-1,{0}},+#line 1502 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str515), {226, 134, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 303 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str527), {226, 168, 175, 0}},+ {-1,{0}},+#line 1619 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str529), {93, 0}},+ {-1,{0}},+#line 1005 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str531), {91, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1509 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str538), {226, 164, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 529 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str541), {226, 137, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2013 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str546), {226, 136, 168, 0}},+#line 1088 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str547), {226, 137, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 947 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str553), {226, 140, 158, 0}},+#line 569 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str554), {226, 168, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1739 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str558), {226, 150, 170, 0}},+#line 1413 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str559), {226, 132, 143, 0}},+ {-1,{0}}, {-1,{0}},+#line 524 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str562), {226, 167, 165, 0}},+ {-1,{0}},+#line 1929 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str564), {226, 140, 156, 0}},+ {-1,{0}},+#line 2054 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str566), {226, 132, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 988 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str571), {226, 167, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 298 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str575), {194, 169, 0}},+ {-1,{0}},+#line 1928 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str577), {226, 140, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2012 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str582), {226, 138, 187, 0}},+ {-1,{0}},+#line 1391 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str584), {226, 136, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1729 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str589), {226, 150, 161, 0}},+ {-1,{0}},+#line 1087 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str591), {226, 137, 142, 0}},+#line 107 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str592), {226, 132, 172, 0}},+#line 2055 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str593), {226, 137, 128, 0}},+#line 1517 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str594), {226, 164, 143, 0}},+#line 992 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str595), {226, 140, 159, 0}},+#line 848 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str596), {226, 164, 142, 0}},+ {-1,{0}}, {-1,{0}},+#line 143 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str599), {226, 140, 144, 0}},+ {-1,{0}},+#line 1661 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str601), {59, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1968 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str606), {226, 140, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1217 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str612), {226, 138, 130, 0}},+ {-1,{0}},+#line 1604 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str614), {240, 157, 149, 163}},+#line 1475 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str615), {226, 132, 154, 0}},+#line 979 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str616), {240, 157, 149, 157}},+ {-1,{0}},+#line 1712 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str618), {240, 157, 149, 164}},+#line 1967 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str619), {226, 140, 157, 0}},+#line 1868 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str620), {240, 157, 149, 139}},+#line 2126 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str621), {226, 132, 164, 0}},+#line 504 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str622), {240, 157, 149, 150}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1603 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str626), {226, 166, 134, 0}},+#line 1944 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str627), {240, 157, 149, 166}},+#line 977 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str628), {226, 166, 133, 0}},+#line 1869 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str629), {240, 157, 149, 165}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2074 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str635), {240, 157, 149, 143}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1165 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str639), {240, 157, 149, 159}},+ {-1,{0}},+#line 145 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str641), {240, 157, 149, 147}},+#line 511 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str642), {207, 181, 0}},+#line 561 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str643), {198, 146, 0}},+#line 733 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str644), {196, 171, 0}},+ {-1,{0}}, {-1,{0}},+#line 791 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str647), {240, 157, 149, 129}},+ {-1,{0}},+#line 1134 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str649), {226, 171, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2052 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str653), {240, 157, 149, 142}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1720 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str658), {226, 136, 154, 0}},+#line 1262 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str659), {226, 138, 132, 0}},+ {-1,{0}},+#line 1080 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str661), {226, 137, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 1223 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str664), {226, 138, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 196 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str667), {194, 166, 0}},+ {-1,{0}}, {-1,{0}},+#line 1710 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str670), {47, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 460 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str675), {226, 169, 174, 0}},+ {-1,{0}},+#line 1428 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str677), {240, 157, 149, 161}},+ {-1,{0}}, {-1,{0}},+#line 369 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str680), {226, 165, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2031 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str685), {240, 157, 149, 141}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1273 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str690), {226, 138, 131, 0}},+#line 1270 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str691), {226, 138, 133, 0}},+#line 2002 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str692), {226, 171, 168, 0}},+ {-1,{0}},+#line 1265 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str694), {226, 138, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1850 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str700), {226, 137, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1136 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str704), {226, 139, 188, 0}},+#line 1459 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str705), {226, 140, 147, 0}},+#line 1709 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str706), {226, 167, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 961 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str710), {226, 139, 166, 0}},+ {-1,{0}},+#line 1708 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str712), {226, 140, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1730 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str717), {226, 150, 161, 0}},+ {-1,{0}},+#line 2032 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str719), {240, 157, 149, 167}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1925 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str723), {226, 134, 191, 0}},+ {-1,{0}},+#line 1930 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str725), {226, 140, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 514 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str729), {226, 137, 130, 0}},+#line 522 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str730), {226, 137, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 485 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str733), {226, 132, 147, 0}},+#line 1699 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str734), {226, 168, 179, 0}},+#line 1066 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str735), {226, 136, 147, 0}},+ {-1,{0}}, {-1,{0}},+#line 813 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str738), {240, 157, 149, 130}},+ {-1,{0}}, {-1,{0}},+#line 1695 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str741), {226, 165, 178, 0}},+ {-1,{0}},+#line 558 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str743), {226, 153, 173, 0}},+ {-1,{0}},+#line 1064 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str745), {240, 157, 149, 132}},+#line 1711 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str746), {240, 157, 149, 138}},+#line 1061 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str747), {226, 128, 166, 0}},+#line 1596 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str748), {226, 128, 143, 0}},+#line 767 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str749), {226, 168, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 990 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str756), {226, 166, 147, 0}},+ {-1,{0}},+#line 563 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str758), {240, 157, 149, 151}},+#line 1943 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str759), {240, 157, 149, 140}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1995 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str763), {226, 138, 138, 0}},+#line 1996 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str764), {226, 171, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 1969 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str767), {226, 140, 142, 0}},+#line 927 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str768), {226, 170, 161, 0}},+ {-1,{0}},+#line 1542 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str770), {226, 132, 156, 0}},+ {-1,{0}}, {-1,{0}},+#line 1201 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str773), {226, 170, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 395 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str777), {240, 157, 148, 187}},+ {-1,{0}},+#line 567 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str779), {226, 171, 153, 0}},+ {-1,{0}},+#line 1260 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str781), {226, 139, 162, 0}},+ {-1,{0}},+#line 1272 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str783), {226, 138, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1264 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str787), {226, 138, 136, 0}},+#line 1474 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str788), {240, 157, 149, 162}},+#line 1595 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str789), {226, 135, 140, 0}},+ {-1,{0}}, {-1,{0}},+#line 995 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str792), {226, 128, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1156 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str796), {226, 137, 180, 0}},+ {-1,{0}},+#line 1430 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str798), {194, 163, 0}},+#line 1997 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str799), {226, 138, 139, 0}},+#line 1998 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str800), {226, 171, 140, 0}},+ {-1,{0}},+#line 141 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str802), {226, 137, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 978 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str813), {240, 157, 149, 131}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1261 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str817), {226, 139, 163, 0}},+ {-1,{0}}, {-1,{0}},+#line 1506 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str820), {226, 134, 172, 0}},+#line 2045 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str821), {226, 169, 159, 0}},+#line 838 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str822), {226, 134, 171, 0}},+ {-1,{0}},+#line 2100 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str824), {240, 157, 149, 144}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1209 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str829), {226, 136, 140, 0}},+ {-1,{0}}, {-1,{0}},+#line 294 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str832), {226, 132, 130, 0}},+#line 993 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str833), {226, 135, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1390 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str848), {226, 171, 189, 0}},+#line 1934 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str849), {194, 168, 0}},+#line 1038 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str850), {226, 150, 174, 0}},+#line 1274 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str851), {226, 138, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1266 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str855), {226, 138, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1737 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str861), {226, 150, 170, 0}},+#line 2020 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str862), {226, 128, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1735 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str874), {226, 138, 146, 0}},+ {-1,{0}},+#line 1464 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str876), {226, 137, 190, 0}},+ {-1,{0}}, {-1,{0}},+#line 1733 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str879), {226, 138, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 1734 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str882), {226, 138, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1732 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str887), {226, 138, 143, 0}},+#line 1289 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str888), {226, 137, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 764 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str892), {240, 157, 149, 154}},+ {-1,{0}},+#line 1425 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str894), {194, 177, 0}},+ {-1,{0}},+#line 2019 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str896), {124, 0}},+ {-1,{0}},+#line 1844 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str898), {207, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 986 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str901), {226, 151, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1033 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str905), {226, 134, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 922 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str920), {226, 170, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1615 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str934), {240, 157, 147, 135}},+#line 1477 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str935), {240, 157, 146, 172}},+#line 998 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str936), {240, 157, 147, 129}},+ {-1,{0}},+#line 1742 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str938), {240, 157, 147, 136}},+ {-1,{0}},+#line 1890 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str940), {240, 157, 146, 175}},+#line 2127 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str941), {240, 157, 146, 181}},+#line 527 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str942), {226, 132, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1974 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str947), {240, 157, 147, 138}},+ {-1,{0}},+#line 1891 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str949), {240, 157, 147, 137}},+ {-1,{0}},+#line 740 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str951), {226, 138, 183, 0}},+#line 296 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str952), {226, 136, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 2080 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str955), {240, 157, 146, 179}},+#line 2067 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str956), {206, 158, 0}},+ {-1,{0}}, {-1,{0}},+#line 1252 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str959), {240, 157, 147, 131}},+#line 1135 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str960), {226, 136, 139, 0}},+#line 197 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str961), {240, 157, 146, 183}},+#line 1166 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str962), {226, 132, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 793 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str967), {240, 157, 146, 165}},+#line 1442 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str968), {226, 170, 175, 0}},+ {-1,{0}}, {-1,{0}},+#line 1302 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str971), {226, 164, 131, 0}},+#line 87 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str972), {226, 128, 181, 0}},+#line 2057 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str973), {240, 157, 146, 178}},+ {-1,{0}},+#line 1988 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str975), {207, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1258 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str984), {226, 136, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 392 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str991), {226, 140, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1467 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str997), {240, 157, 147, 133}},+#line 1408 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str998), {207, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2035 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1005), {240, 157, 146, 177}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1112 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1011), {226, 137, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1693 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1021), {226, 137, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1275 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1028), {226, 171, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1267 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1032), {226, 171, 133, 0}},+#line 440 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1033), {226, 140, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1520 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1038), {125, 0}},+#line 2036 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1039), {240, 157, 147, 139}},+#line 850 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1040), {123, 0}},+#line 396 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1041), {240, 157, 149, 149}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 585 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1049), {226, 129, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 930 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1055), {226, 137, 178, 0}},+ {-1,{0}}, {-1,{0}},+#line 815 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1058), {240, 157, 146, 166}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1416 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1064), {226, 168, 162, 0}},+#line 1068 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1065), {226, 132, 179, 0}},+#line 1741 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1066), {240, 157, 146, 174}},+#line 1523 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1067), {226, 166, 142, 0}},+ {-1,{0}},+#line 853 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1069), {226, 166, 143, 0}},+#line 1518 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1070), {226, 164, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 1717 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1073), {226, 138, 147, 0}},+#line 1503 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1074), {226, 135, 146, 0}},+#line 142 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1075), {226, 171, 173, 0}},+#line 835 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1076), {226, 135, 144, 0}},+ {-1,{0}},+#line 587 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1078), {240, 157, 146, 187}},+#line 1973 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1079), {240, 157, 146, 176}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1905 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1087), {226, 135, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 1605 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1090), {226, 132, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2053 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1094), {240, 157, 149, 168}},+ {-1,{0}}, {-1,{0}},+#line 442 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1097), {240, 157, 146, 159}},+#line 1351 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1098), {226, 166, 183, 0}},+#line 1662 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1099), {226, 164, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 362 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1103), {226, 136, 135, 0}},+#line 1485 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1104), {226, 135, 155, 0}},+#line 1558 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1105), {207, 129, 0}},+#line 817 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1106), {226, 135, 154, 0}},+#line 1437 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1107), {226, 137, 188, 0}},+#line 1478 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1108), {240, 157, 147, 134}},+ {-1,{0}}, {-1,{0}},+#line 1028 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1111), {194, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1185 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1115), {226, 136, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 523 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1120), {226, 169, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1716 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1125), {226, 138, 147, 0}},+ {-1,{0}},+#line 1259 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1127), {226, 136, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1340 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1131), {226, 167, 128, 0}},+#line 1514 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1132), {226, 136, 182, 0}},+#line 999 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1133), {226, 132, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 370 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1137), {226, 135, 131, 0}},+ {-1,{0}},+#line 393 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1139), {226, 140, 141, 0}},+#line 408 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1140), {194, 168, 0}},+#line 404 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1141), {226, 136, 148, 0}},+#line 1358 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1142), {226, 136, 168, 0}},+ {-1,{0}},+#line 2102 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1144), {240, 157, 146, 180}},+ {-1,{0}}, {-1,{0}},+#line 562 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1147), {240, 157, 148, 189}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 304 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1152), {240, 157, 146, 158}},+#line 1336 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1153), {226, 134, 186, 0}},+#line 1243 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1154), {226, 134, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1026 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1159), {226, 137, 168, 0}},+#line 515 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1160), {226, 170, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1853 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1164), {195, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 516 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1169), {226, 170, 149, 0}},+ {-1,{0}}, {-1,{0}},+#line 743 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1172), {226, 132, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1992 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1179), {226, 135, 149, 0}},+#line 1611 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1180), {226, 168, 146, 0}},+#line 441 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1181), {226, 140, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1387 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1187), {226, 136, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1356 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1195), {226, 134, 187, 0}},+#line 1744 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1196), {226, 140, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 412 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1200), {226, 171, 164, 0}},+#line 526 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1201), {226, 137, 147, 0}},+#line 381 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1202), {226, 153, 166, 0}},+#line 1743 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1203), {226, 136, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1368 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1208), {226, 147, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 769 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1212), {240, 157, 146, 190}},+#line 725 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1213), {226, 133, 136, 0}},+#line 1543 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1214), {226, 150, 173, 0}},+ {-1,{0}}, {-1,{0}},+#line 1249 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1217), {226, 139, 161, 0}},+#line 1660 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1218), {194, 167, 0}},+ {-1,{0}},+#line 1060 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1220), {226, 171, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1365 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1224), {226, 169, 150, 0}},+ {-1,{0}},+#line 407 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1226), {226, 136, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 518 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1230), {61, 0}},+ {-1,{0}},+#line 679 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1232), {94, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1745 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1236), {226, 139, 134, 0}},+#line 1069 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1237), {226, 136, 190, 0}},+ {-1,{0}},+#line 382 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1239), {194, 168, 0}},+#line 1044 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1240), {226, 136, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 564 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1252), {226, 136, 128, 0}},+ {-1,{0}}, {-1,{0}},+#line 1189 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1255), {226, 139, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1065 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1263), {240, 157, 149, 158}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1138 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1270), {226, 136, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2004 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1280), {226, 171, 169, 0}},+ {-1,{0}},+#line 1251 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1282), {240, 157, 146, 169}},+ {-1,{0}},+#line 1396 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1284), {46, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 102 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1292), {226, 136, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 112 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1298), {226, 137, 172, 0}},+#line 750 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1299), {226, 136, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 103 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1307), {226, 136, 181, 0}},+#line 1410 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1308), {207, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1551 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1326), {240, 157, 148, 175}},+#line 1471 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1327), {240, 157, 148, 148}},+#line 934 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1328), {240, 157, 148, 169}},+ {-1,{0}},+#line 1667 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1330), {240, 157, 148, 176}},+#line 1148 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1331), {226, 134, 174, 0}},+#line 1836 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1332), {240, 157, 148, 151}},+#line 2121 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1333), {226, 132, 168, 0}},+#line 476 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1334), {240, 157, 148, 162}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1685 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1338), {226, 136, 188, 0}},+#line 1921 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1339), {240, 157, 148, 178}},+#line 1606 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1340), {226, 168, 174, 0}},+#line 1837 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1341), {240, 157, 148, 177}},+#line 980 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1342), {226, 168, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2063 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1347), {240, 157, 148, 155}},+ {-1,{0}}, {-1,{0}},+#line 1538 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1350), {226, 132, 156, 0}},+#line 1119 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1351), {240, 157, 148, 171}},+ {-1,{0}},+#line 114 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1353), {240, 157, 148, 159}},+ {-1,{0}},+#line 1184 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1355), {226, 137, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 788 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1359), {240, 157, 148, 141}},+ {-1,{0}},+#line 443 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1361), {240, 157, 146, 185}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2050 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1365), {240, 157, 148, 154}},+ {-1,{0}},+#line 129 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1367), {226, 167, 171, 0}},+ {-1,{0}},+#line 2125 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1369), {240, 157, 149, 171}},+#line 1541 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1370), {226, 132, 157, 0}},+ {-1,{0}},+#line 1170 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1372), {226, 137, 173, 0}},+ {-1,{0}}, {-1,{0}},+#line 1694 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1375), {226, 168, 164, 0}},+ {-1,{0}},+#line 565 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1377), {226, 136, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1401 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1389), {240, 157, 148, 173}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1342 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1395), {197, 141, 0}},+ {-1,{0}},+#line 2026 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1397), {240, 157, 148, 153}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 488 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1409), {196, 146, 0}},+#line 1616 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1410), {226, 132, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2058 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1414), {240, 157, 147, 140}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1679 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1423), {226, 134, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1664 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1429), {226, 136, 150, 0}},+ {-1,{0}},+#line 2027 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1431), {240, 157, 148, 179}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 806 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1450), {240, 157, 148, 142}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1354 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1455), {226, 166, 185, 0}},+ {-1,{0}},+#line 1047 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1457), {240, 157, 148, 144}},+#line 1666 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1458), {240, 157, 148, 150}},+ {-1,{0}}, {-1,{0}},+#line 1160 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1461), {226, 139, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 588 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1467), {226, 132, 177, 0}},+ {-1,{0}}, {-1,{0}},+#line 553 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1470), {240, 157, 148, 163}},+#line 1920 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1471), {240, 157, 148, 152}},+ {-1,{0}},+#line 1676 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1473), {226, 136, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1304 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1488), {226, 136, 188, 0}},+#line 367 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1489), {240, 157, 148, 135}},+#line 920 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1490), {226, 139, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 1458 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1493), {226, 140, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1472 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1500), {240, 157, 148, 174}},+#line 345 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1501), {226, 135, 147, 0}},+ {-1,{0}},+#line 1247 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1503), {226, 139, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1678 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1507), {226, 134, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1840 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1515), {226, 136, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 357 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1519), {226, 133, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1839 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1524), {226, 136, 180, 0}},+#line 933 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1525), {240, 157, 148, 143}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1824 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1532), {226, 140, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 483 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1535), {226, 136, 136, 0}},+#line 2096 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1536), {240, 157, 148, 156}},+#line 271 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1537), {226, 136, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1337 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1542), {226, 166, 190, 0}},+ {-1,{0}},+#line 245 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1544), {226, 132, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 548 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1559), {226, 153, 128, 0}},+#line 1269 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1560), {226, 170, 176, 0}},+#line 1312 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1561), {226, 138, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1395 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1568), {37, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1362 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1578), {194, 170, 0}},+ {-1,{0}},+#line 1359 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1580), {226, 169, 157, 0}},+#line 1557 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1581), {206, 161, 0}},+ {-1,{0}},+#line 1067 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1583), {240, 157, 147, 130}},+ {-1,{0}},+#line 1303 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1585), {226, 138, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 958 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1589), {226, 137, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1133 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1597), {226, 135, 142, 0}},+#line 1357 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1598), {226, 169, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 387 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1602), {195, 183, 0}},+ {-1,{0}},+#line 721 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1604), {240, 157, 148, 166}},+#line 484 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1605), {226, 143, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 203 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1615), {92, 0}},+#line 1298 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1616), {226, 164, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 732 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1626), {196, 170, 0}},+ {-1,{0}},+#line 89 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1628), {226, 139, 141, 0}},+#line 1898 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1629), {226, 137, 172, 0}},+#line 1338 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1630), {226, 166, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1508 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1639), {226, 165, 180, 0}},+#line 409 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1640), {226, 135, 147, 0}},+#line 840 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1641), {226, 165, 179, 0}},+#line 491 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1642), {226, 136, 133, 0}},+#line 1350 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1643), {240, 157, 149, 160}},+ {-1,{0}},+#line 540 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1645), {226, 136, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 949 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1648), {226, 165, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 539 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1656), {33, 0}},+#line 503 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1657), {240, 157, 148, 188}},+#line 1142 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1658), {226, 135, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1849 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1663), {226, 128, 137, 0}},+#line 1218 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1664), {226, 138, 136, 0}},+#line 1403 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1665), {207, 134, 0}},+#line 410 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1666), {226, 135, 144, 0}},+ {-1,{0}},+#line 1866 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1668), {226, 171, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 386 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1672), {195, 183, 0}},+ {-1,{0}},+#line 1118 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1674), {240, 157, 148, 145}},+#line 1144 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1675), {226, 137, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2128 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1689), {240, 157, 147, 143}},+#line 994 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1690), {226, 165, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 950 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1697), {226, 151, 186, 0}},+ {-1,{0}}, {-1,{0}},+#line 1242 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1700), {226, 135, 143, 0}},+#line 1224 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1701), {226, 138, 137, 0}},+ {-1,{0}},+#line 1819 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1703), {226, 135, 153, 0}},+#line 1847 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1704), {226, 129, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1931 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1708), {226, 151, 184, 0}},+#line 1204 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1709), {226, 139, 190, 0}},+ {-1,{0}},+#line 1449 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1711), {226, 128, 178, 0}},+ {-1,{0}}, {-1,{0}},+#line 1451 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1714), {226, 132, 153, 0}},+ {-1,{0}},+#line 1334 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1716), {206, 169, 0}},+ {-1,{0}}, {-1,{0}},+#line 264 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1719), {226, 138, 151, 0}},+#line 1159 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1720), {226, 139, 170, 0}},+ {-1,{0}}, {-1,{0}},+#line 1691 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1723), {226, 170, 157, 0}},+#line 1307 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1724), {226, 135, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 1989 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1727), {207, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 1367 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1730), {226, 169, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1663 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1735), {226, 136, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 996 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1739), {226, 138, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1397 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1743), {226, 128, 176, 0}},+#line 1053 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1744), {226, 136, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1972 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1750), {226, 151, 185, 0}},+ {-1,{0}}, {-1,{0}},+#line 368 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1753), {240, 157, 148, 161}},+#line 1049 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1754), {226, 132, 167, 0}},+#line 1447 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1755), {226, 170, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2040 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1759), {226, 138, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 1246 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1762), {226, 139, 171, 0}},+#line 2038 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1763), {226, 138, 138, 0}},+ {-1,{0}},+#line 472 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1765), {226, 137, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 918 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1778), {226, 170, 147, 0}},+ {-1,{0}}, {-1,{0}},+#line 86 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1781), {207, 182, 0}},+ {-1,{0}},+#line 1512 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1783), {226, 164, 154, 0}},+ {-1,{0}},+#line 842 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1785), {226, 164, 153, 0}},+ {-1,{0}}, {-1,{0}},+#line 1953 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1788), {226, 165, 174, 0}},+ {-1,{0}}, {-1,{0}},+#line 510 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1791), {206, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1963 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1796), {207, 133, 0}},+ {-1,{0}},+#line 1051 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1798), {42, 0}},+#line 697 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1799), {226, 132, 141, 0}},+#line 2028 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1800), {226, 138, 178, 0}},+ {-1,{0}},+#line 1552 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1802), {226, 132, 156, 0}},+ {-1,{0}}, {-1,{0}},+#line 2047 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1805), {226, 139, 128, 0}},+#line 2051 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1806), {240, 157, 148, 180}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 93 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1812), {226, 140, 133, 0}},+ {-1,{0}}, {-1,{0}},+#line 1030 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1815), {226, 156, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 250 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1820), {206, 167, 0}},+#line 493 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1821), {226, 136, 133, 0}},+#line 1202 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1822), {226, 136, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 925 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1827), {226, 137, 182, 0}},+ {-1,{0}},+#line 377 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1829), {226, 139, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2034 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1842), {226, 138, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 262 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1849), {226, 138, 150, 0}},+ {-1,{0}},+#line 1341 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1851), {197, 140, 0}},+#line 1658 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1852), {226, 135, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 552 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1859), {240, 157, 148, 137}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1444 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1865), {226, 170, 181, 0}},+ {-1,{0}},+#line 379 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1867), {226, 139, 132, 0}},+#line 1363 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1868), {194, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1102 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1873), {226, 135, 151, 0}},+#line 763 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1874), {240, 157, 149, 128}},+#line 259 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1875), {226, 138, 153, 0}},+ {-1,{0}}, {-1,{0}},+#line 1452 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1878), {226, 170, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 403 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1884), {226, 136, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1253 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1903), {226, 136, 164, 0}},+ {-1,{0}},+#line 147 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1905), {226, 138, 165, 0}},+ {-1,{0}},+#line 1427 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1907), {226, 168, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1736 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1917), {226, 138, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 792 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1925), {240, 157, 149, 155}},+ {-1,{0}}, {-1,{0}},+#line 1962 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1928), {206, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 278 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1936), {226, 169, 180, 0}},+ {-1,{0}},+#line 1300 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1938), {60, 0}},+ {-1,{0}}, {-1,{0}},+#line 1114 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1941), {226, 137, 170, 0}},+#line 277 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1942), {226, 136, 183, 0}},+ {-1,{0}}, {-1,{0}},+#line 204 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1945), {226, 159, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 411 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1949), {226, 135, 148, 0}},+#line 1423 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1950), {226, 168, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 734 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1959), {226, 132, 145, 0}},+#line 480 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1960), {226, 170, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 1370 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1963), {226, 132, 180, 0}},+#line 1821 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1964), {226, 164, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2116 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1969), {226, 132, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1031 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1973), {226, 156, 160, 0}},+ {-1,{0}},+#line 1048 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1975), {240, 157, 148, 170}},+#line 1504 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1976), {226, 164, 158, 0}},+#line 528 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1977), {226, 132, 176, 0}},+#line 836 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1978), {226, 164, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1062 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1985), {226, 136, 147, 0}},+#line 1129 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1986), {226, 137, 175, 0}},+#line 1130 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1987), {226, 137, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 627 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str1996), {226, 137, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 380 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2003), {226, 153, 166, 0}},+#line 655 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2004), {62, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 928 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2014), {226, 137, 178, 0}},+#line 446 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2015), {226, 167, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1954 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2023), {226, 134, 191, 0}},+#line 1731 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2024), {226, 138, 147, 0}},+#line 1003 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2025), {226, 170, 141, 0}},+ {-1,{0}},+#line 1157 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2027), {226, 137, 170, 0}},+ {-1,{0}},+#line 1194 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2029), {226, 137, 174, 0}},+ {-1,{0}},+#line 630 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2031), {226, 170, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1634 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2035), {226, 170, 184, 0}},+ {-1,{0}}, {-1,{0}},+#line 1036 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2038), {226, 134, 164, 0}},+#line 1197 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2039), {226, 137, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1550 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2043), {226, 140, 139, 0}},+ {-1,{0}},+#line 932 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2045), {226, 140, 138, 0}},+ {-1,{0}}, {-1,{0}},+#line 1256 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2048), {226, 137, 132, 0}},+ {-1,{0}},+#line 201 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2050), {226, 139, 141, 0}},+#line 1195 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2051), {226, 137, 176, 0}},+#line 1199 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2052), {226, 137, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1089 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2056), {226, 169, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 1196 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2059), {226, 137, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1448 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2070), {226, 137, 190, 0}},+ {-1,{0}},+#line 976 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2072), {226, 134, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1432 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2076), {226, 170, 187, 0}},+#line 1530 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2077), {125, 0}},+#line 1037 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2078), {226, 134, 165, 0}},+#line 860 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2079), {123, 0}},+ {-1,{0}},+#line 2120 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2081), {240, 157, 148, 183}},+ {-1,{0}}, {-1,{0}},+#line 1946 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2084), {226, 134, 145, 0}},+ {-1,{0}},+#line 632 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2086), {226, 170, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1640 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2090), {226, 170, 176, 0}},+#line 739 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2091), {226, 132, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1526 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2096), {197, 153, 0}},+ {-1,{0}},+#line 856 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2098), {196, 190, 0}},+#line 1349 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2099), {240, 157, 149, 134}},+#line 1636 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2100), {197, 161, 0}},+#line 88 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2101), {226, 136, 189, 0}},+#line 1828 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2102), {197, 164, 0}},+#line 2110 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2103), {197, 189, 0}},+#line 462 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2104), {196, 155, 0}},+ {-1,{0}},+#line 108 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2106), {226, 132, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1121 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2110), {226, 137, 177, 0}},+#line 1829 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2111), {197, 165, 0}},+ {-1,{0}},+#line 566 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2113), {226, 139, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 701 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2119), {226, 132, 139, 0}},+ {-1,{0}},+#line 1091 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2121), {197, 136, 0}},+#line 487 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2122), {226, 170, 151, 0}},+ {-1,{0}},+#line 1827 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2124), {226, 142, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1886 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2128), {226, 168, 185, 0}},+ {-1,{0}}, {-1,{0}},+#line 378 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2131), {226, 139, 132, 0}},+ {-1,{0}}, {-1,{0}},+#line 1096 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2134), {226, 169, 130, 0}},+ {-1,{0}},+#line 96 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2136), {226, 142, 181, 0}},+ {-1,{0}},+#line 586 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2138), {226, 140, 162, 0}},+#line 128 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2139), {226, 164, 141, 0}},+ {-1,{0}},+#line 1713 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2141), {226, 153, 160, 0}},+ {-1,{0}},+#line 1469 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2143), {207, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 144 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2150), {240, 157, 148, 185}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 394 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2156), {36, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 385 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2164), {226, 139, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1714 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2170), {226, 153, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1225 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2176), {226, 137, 129, 0}},+#line 406 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2177), {226, 140, 134, 0}},+ {-1,{0}},+#line 594 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2179), {226, 170, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 97 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2186), {226, 142, 182, 0}},+ {-1,{0}}, {-1,{0}},+#line 1820 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2189), {226, 134, 153, 0}},+#line 106 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2190), {207, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 770 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2194), {226, 132, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1227 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2198), {226, 137, 135, 0}},+#line 513 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2199), {226, 137, 149, 0}},+ {-1,{0}}, {-1,{0}},+#line 1863 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2202), {226, 136, 173, 0}},+ {-1,{0}}, {-1,{0}},+#line 756 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2205), {226, 168, 188, 0}},+ {-1,{0}},+#line 1271 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2207), {226, 171, 134, 0}},+ {-1,{0}}, {-1,{0}},+#line 1308 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2210), {226, 134, 150, 0}},+#line 1263 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2211), {226, 171, 133, 0}},+ {-1,{0}}, {-1,{0}},+#line 1125 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2214), {226, 169, 190, 0}},+ {-1,{0}},+#line 1948 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2216), {226, 135, 145, 0}},+#line 604 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2217), {226, 137, 165, 0}},+#line 1352 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2218), {226, 128, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1698 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2223), {226, 136, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1635 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2228), {197, 160, 0}},+ {-1,{0}},+#line 1301 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2230), {226, 138, 180, 0}},+#line 612 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2231), {226, 169, 190, 0}},+#line 135 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2232), {226, 144, 163, 0}},+#line 1484 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2233), {34, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 139 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2238), {226, 150, 136, 0}},+#line 1873 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2239), {226, 132, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 794 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2245), {240, 157, 146, 191}},+#line 2046 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2246), {226, 136, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 29 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2254), {196, 128, 0}},+ {-1,{0}},+#line 517 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2256), {226, 169, 181, 0}},+ {-1,{0}}, {-1,{0}},+#line 351 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2259), {196, 142, 0}},+ {-1,{0}}, {-1,{0}},+#line 399 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2262), {226, 131, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 634 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2270), {226, 170, 136, 0}},+#line 1990 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2271), {226, 136, 157, 0}},+ {-1,{0}},+#line 635 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2273), {226, 137, 169, 0}},+#line 1461 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2274), {226, 136, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 774 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2279), {226, 139, 180, 0}},+ {-1,{0}},+#line 469 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2281), {226, 169, 183, 0}},+#line 771 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2282), {226, 136, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1885 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2286), {226, 131, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 568 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2290), {226, 132, 177, 0}},+#line 1462 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2291), {226, 136, 183, 0}},+ {-1,{0}}, {-1,{0}},+#line 1122 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2294), {226, 137, 177, 0}},+#line 855 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2295), {196, 189, 0}},+ {-1,{0}},+#line 1123 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2297), {226, 137, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 870 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2313), {226, 137, 166, 0}},+#line 227 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2314), {196, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 199 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2320), {226, 129, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1463 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2326), {226, 136, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 914 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2331), {226, 169, 191, 0}},+#line 291 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2332), {226, 136, 175, 0}},+ {-1,{0}},+#line 35 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2334), {226, 169, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1659 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2338), {226, 134, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1366 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2343), {226, 169, 151, 0}},+#line 676 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2344), {226, 134, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 845 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2350), {226, 170, 173, 0}},+ {-1,{0}},+#line 243 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2352), {194, 183, 0}},+ {-1,{0}}, {-1,{0}},+#line 1328 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2355), {240, 157, 148, 172}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1103 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2359), {226, 134, 151, 0}},+ {-1,{0}},+#line 1473 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2361), {226, 168, 140, 0}},+ {-1,{0}}, {-1,{0}},+#line 846 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2364), {226, 170, 173, 0}},+#line 801 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2365), {207, 176, 0}},+ {-1,{0}}, {-1,{0}},+#line 698 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2368), {226, 128, 149, 0}},+#line 475 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2369), {240, 157, 148, 136}},+#line 692 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2370), {226, 135, 191, 0}},+#line 1239 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2371), {226, 170, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 747 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2377), {196, 177, 0}},+ {-1,{0}},+#line 1915 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2379), {226, 135, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 608 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2386), {226, 137, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1257 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2391), {226, 137, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 609 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2404), {226, 137, 167, 0}},+ {-1,{0}}, {-1,{0}},+#line 474 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2407), {226, 137, 146, 0}},+ {-1,{0}}, {-1,{0}},+#line 1610 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2410), {226, 166, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1369 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2419), {240, 157, 146, 170}},+ {-1,{0}}, {-1,{0}},+#line 1418 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2422), {226, 136, 148, 0}},+ {-1,{0}}, {-1,{0}},+#line 821 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2425), {226, 132, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1846 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2429), {226, 136, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1445 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2440), {226, 139, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1090 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2444), {197, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1079 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2449), {226, 169, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 727 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2457), {226, 136, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 198 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2470), {226, 132, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1035 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2483), {226, 134, 167, 0}},+ {-1,{0}}, {-1,{0}},+#line 1993 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2486), {207, 177, 0}},+ {-1,{0}},+#line 775 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2488), {226, 139, 179, 0}},+ {-1,{0}}, {-1,{0}},+#line 1296 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2491), {226, 164, 132, 0}},+ {-1,{0}}, {-1,{0}},+#line 1191 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2494), {226, 167, 143, 0}},+ {-1,{0}},+#line 520 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2496), {226, 137, 159, 0}},+ {-1,{0}},+#line 1193 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2498), {226, 139, 172, 0}},+#line 1192 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2499), {226, 139, 170, 0}},+ {-1,{0}}, {-1,{0}},+#line 60 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2502), {240, 157, 148, 184}},+#line 680 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2503), {226, 132, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1984 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2507), {226, 166, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 688 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2511), {226, 132, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1494 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2517), {226, 166, 165, 0}},+#line 1704 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2518), {226, 170, 172, 0}},+#line 1002 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2519), {226, 137, 178, 0}},+ {-1,{0}},+#line 1234 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2521), {226, 168, 148, 0}},+ {-1,{0}},+#line 352 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2523), {196, 143, 0}},+ {-1,{0}},+#line 531 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2525), {226, 137, 130, 0}},+ {-1,{0}},+#line 1939 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2527), {226, 139, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1705 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2532), {226, 170, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 814 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2536), {240, 157, 149, 156}},+#line 638 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2537), {240, 157, 149, 152}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1255 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2542), {226, 137, 129, 0}},+ {-1,{0}},+#line 200 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2544), {226, 136, 189, 0}},+ {-1,{0}},+#line 1697 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2546), {226, 136, 152, 0}},+ {-1,{0}},+#line 1171 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2548), {226, 136, 166, 0}},+#line 1200 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2549), {226, 170, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 519 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2565), {226, 137, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 1186 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2568), {226, 139, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1525 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2572), {197, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1429 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2577), {226, 132, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 637 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2583), {240, 157, 148, 190}},+ {-1,{0}}, {-1,{0}},+#line 722 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2586), {226, 132, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 2048 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2589), {226, 137, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1455 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2595), {226, 136, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1373 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2617), {226, 138, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 418 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2624), {226, 135, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 289 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2627), {226, 137, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 636 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2631), {226, 139, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1650 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2635), {226, 137, 191, 0}},+ {-1,{0}},+#line 789 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2637), {240, 157, 148, 167}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1961 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2645), {207, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1155 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2650), {226, 139, 152, 0}},+ {-1,{0}}, {-1,{0}},+#line 419 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2653), {226, 135, 149, 0}},+ {-1,{0}},+#line 1127 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2655), {226, 137, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 683 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2664), {226, 153, 165, 0}},+ {-1,{0}},+#line 921 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2666), {226, 139, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1111 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2670), {226, 164, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 541 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2676), {226, 136, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1702 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2687), {226, 140, 163, 0}},+ {-1,{0}},+#line 1983 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2689), {226, 166, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 684 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2693), {226, 153, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 699 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2700), {226, 148, 128, 0}},+ {-1,{0}}, {-1,{0}},+#line 644 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2703), {226, 137, 183, 0}},+ {-1,{0}},+#line 1614 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2705), {226, 128, 186, 0}},+ {-1,{0}},+#line 997 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2707), {226, 128, 185, 0}},+ {-1,{0}},+#line 1539 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2709), {226, 132, 155, 0}},+#line 347 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2710), {226, 171, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1686 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2714), {226, 169, 170, 0}},+#line 640 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2715), {226, 137, 165, 0}},+#line 646 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2716), {226, 137, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 641 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2721), {226, 139, 155, 0}},+ {-1,{0}},+#line 643 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2723), {226, 170, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1529 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2737), {226, 140, 137, 0}},+ {-1,{0}},+#line 859 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2739), {226, 140, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 926 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2743), {226, 137, 182, 0}},+ {-1,{0}}, {-1,{0}},+#line 1339 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2746), {226, 128, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1851 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2753), {226, 136, 188, 0}},+ {-1,{0}},+#line 758 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2755), {226, 129, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1486 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2762), {226, 136, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 768 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2766), {194, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 736 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2774), {226, 132, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1965 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2779), {226, 138, 165, 0}},+ {-1,{0}},+#line 1052 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2781), {226, 171, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1326 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2790), {226, 166, 191, 0}},+ {-1,{0}}, {-1,{0}},+#line 356 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2793), {226, 135, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1493 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2800), {226, 166, 146, 0}},+ {-1,{0}},+#line 826 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2802), {226, 166, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 521 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2808), {226, 135, 140, 0}},+#line 1389 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2809), {226, 171, 179, 0}},+#line 2011 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2810), {226, 171, 166, 0}},+#line 1327 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2811), {240, 157, 148, 146}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 104 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2816), {226, 136, 181, 0}},+ {-1,{0}},+#line 1513 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2818), {226, 164, 156, 0}},+ {-1,{0}},+#line 843 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2820), {226, 164, 155, 0}},+#line 1348 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2821), {226, 138, 150, 0}},+#line 73 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2822), {240, 157, 146, 156}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 509 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2826), {206, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1675 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2832), {226, 134, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 776 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2845), {226, 136, 136, 0}},+ {-1,{0}},+#line 1050 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2847), {194, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2111 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2851), {197, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 816 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2856), {240, 157, 147, 128}},+#line 648 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2857), {226, 132, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 113 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2862), {240, 157, 148, 133}},+#line 607 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2863), {226, 139, 155, 0}},+#line 686 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2864), {226, 138, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1884 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2871), {226, 168, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 479 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2877), {195, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1654 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2881), {226, 139, 133, 0}},+#line 1923 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2882), {195, 185, 0}},+ {-1,{0}},+#line 2114 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2884), {197, 187, 0}},+#line 471 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2885), {196, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1228 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2890), {226, 137, 137, 0}},+ {-1,{0}},+#line 1834 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2892), {226, 131, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1466 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2897), {240, 157, 146, 171}},+#line 1407 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2898), {206, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 647 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2903), {240, 157, 146, 162}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1424 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2910), {226, 168, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1172 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2914), {226, 136, 137, 0}},+ {-1,{0}},+#line 1421 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2916), {194, 177, 0}},+ {-1,{0}}, {-1,{0}},+#line 696 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2919), {240, 157, 149, 153}},+#line 593 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2920), {207, 157, 0}},+ {-1,{0}},+#line 1043 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2922), {226, 136, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 388 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2926), {226, 139, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 400 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2940), {226, 137, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1985 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2956), {207, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1438 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2963), {226, 137, 186, 0}},+ {-1,{0}}, {-1,{0}},+#line 592 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2966), {207, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 348 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2974), {226, 138, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1169 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2979), {226, 137, 162, 0}},+ {-1,{0}}, {-1,{0}},+#line 1910 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2982), {197, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1332 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2990), {226, 167, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1608 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str2994), {226, 165, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1440 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3002), {226, 137, 188, 0}},+ {-1,{0}}, {-1,{0}},+#line 1687 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3005), {226, 137, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1922 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3014), {195, 153, 0}},+ {-1,{0}},+#line 349 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3016), {226, 164, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1655 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3021), {226, 169, 166, 0}},+ {-1,{0}},+#line 2015 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3023), {226, 137, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1034 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3027), {226, 134, 166, 0}},+ {-1,{0}}, {-1,{0}},+#line 1861 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3030), {195, 151, 0}},+ {-1,{0}}, {-1,{0}},+#line 1495 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3033), {226, 159, 169, 0}},+ {-1,{0}},+#line 827 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3035), {226, 159, 168, 0}},+ {-1,{0}}, {-1,{0}},+#line 877 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3038), {226, 134, 162, 0}},+#line 672 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3039), {226, 132, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1918 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3044), {226, 165, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1137 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3053), {226, 139, 186, 0}},+ {-1,{0}},+#line 1549 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3055), {226, 165, 189, 0}},+ {-1,{0}},+#line 931 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3057), {226, 165, 188, 0}},+#line 675 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3058), {226, 165, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1353 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3066), {226, 128, 152, 0}},+ {-1,{0}},+#line 1919 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3068), {226, 165, 190, 0}},+#line 1183 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3069), {226, 137, 142, 0}},+ {-1,{0}}, {-1,{0}},+#line 895 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3072), {226, 138, 163, 0}},+ {-1,{0}},+#line 1617 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3074), {226, 134, 177, 0}},+ {-1,{0}},+#line 1000 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3076), {226, 134, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 667 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3080), {226, 137, 169, 0}},+ {-1,{0}}, {-1,{0}},+#line 1860 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3083), {226, 138, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1649 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3092), {226, 168, 147, 0}},+ {-1,{0}}, {-1,{0}},+#line 236 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3095), {196, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 454 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3103), {226, 166, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1909 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3114), {197, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 904 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3132), {226, 134, 191, 0}},+ {-1,{0}}, {-1,{0}},+#line 903 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3135), {226, 165, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 461 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3139), {196, 154, 0}},+ {-1,{0}}, {-1,{0}},+#line 693 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3142), {226, 136, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 724 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3147), {195, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1238 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3155), {226, 170, 175, 0}},+#line 466 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3156), {226, 137, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 358 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3167), {226, 133, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1688 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3174), {226, 137, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1187 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3179), {226, 139, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 119 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3198), {226, 168, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 21 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3214), {240, 157, 148, 132}},+#line 873 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3215), {226, 134, 144, 0}},+#line 1335 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3216), {226, 136, 174, 0}},+ {-1,{0}},+#line 1823 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3218), {9, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1329 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3227), {203, 155, 0}},+ {-1,{0}}, {-1,{0}},+#line 1012 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3230), {60, 0}},+#line 1149 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3231), {226, 135, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1498 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3235), {226, 135, 165, 0}},+ {-1,{0}},+#line 831 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3237), {226, 135, 164, 0}},+ {-1,{0}},+#line 700 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3239), {240, 157, 146, 189}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 901 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3246), {226, 165, 145, 0}},+ {-1,{0}},+#line 807 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3248), {240, 157, 148, 168}},+#line 619 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3249), {240, 157, 148, 164}},+#line 1945 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3250), {226, 164, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1250 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3259), {226, 170, 176, 0}},+#line 1015 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3260), {226, 139, 150, 0}},+#line 616 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3261), {226, 139, 155, 0}},+#line 2073 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3262), {226, 168, 128, 0}},+#line 1747 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3263), {226, 152, 134, 0}},+ {-1,{0}}, {-1,{0}},+#line 983 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3266), {95, 0}},+ {-1,{0}},+#line 2065 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3268), {226, 159, 183, 0}},+#line 465 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3269), {226, 137, 150, 0}},+ {-1,{0}},+#line 1975 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3271), {226, 139, 176, 0}},+#line 1085 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3272), {226, 153, 174, 0}},+#line 1001 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3273), {226, 134, 176, 0}},+#line 745 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3274), {226, 136, 158, 0}},+ {-1,{0}},+#line 283 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3276), {226, 136, 129, 0}},+ {-1,{0}},+#line 1684 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3278), {207, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2077 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3285), {226, 168, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1400 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3289), {240, 157, 148, 147}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 618 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3295), {240, 157, 148, 138}},+ {-1,{0}}, {-1,{0}},+#line 115 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3298), {226, 139, 130, 0}},+ {-1,{0}},+#line 1692 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3300), {226, 170, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 726 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3319), {226, 168, 140, 0}},+#line 95 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3320), {226, 140, 133, 0}},+#line 94 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3321), {226, 140, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2069 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3329), {226, 159, 181, 0}},+#line 923 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3330), {226, 139, 154, 0}},+ {-1,{0}},+#line 301 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3332), {226, 134, 181, 0}},+#line 772 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3333), {226, 139, 181, 0}},+ {-1,{0}},+#line 282 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3335), {64, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1054 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3342), {194, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 916 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3349), {226, 170, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1683 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3356), {207, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1499 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3366), {226, 164, 160, 0}},+ {-1,{0}},+#line 832 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3368), {226, 164, 159, 0}},+ {-1,{0}}, {-1,{0}},+#line 2078 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3371), {226, 159, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 117 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3376), {226, 139, 131, 0}},+ {-1,{0}},+#line 274 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3378), {226, 153, 163, 0}},+#line 677 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3379), {226, 135, 148, 0}},+#line 1625 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3380), {226, 138, 181, 0}},+ {-1,{0}},+#line 1021 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3382), {226, 138, 180, 0}},+#line 741 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3383), {198, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 502 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3388), {196, 153, 0}},+#line 1630 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3389), {226, 132, 158, 0}},+#line 1023 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3390), {226, 166, 150, 0}},+#line 1746 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3391), {226, 139, 134, 0}},+ {-1,{0}},+#line 1942 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3393), {197, 179, 0}},+ {-1,{0}}, {-1,{0}},+#line 1855 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3396), {226, 136, 188, 0}},+ {-1,{0}},+#line 671 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3398), {194, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1854 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3405), {203, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 875 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3412), {226, 135, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 617 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3417), {226, 170, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 217 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3422), {226, 136, 169, 0}},+#line 1751 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3423), {194, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1014 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3427), {226, 137, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1453 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3439), {226, 170, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1726 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3447), {226, 138, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1727 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3462), {226, 138, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1882 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3467), {226, 151, 172, 0}},+#line 1360 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3468), {226, 132, 180, 0}},+ {-1,{0}}, {-1,{0}},+#line 222 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3471), {226, 136, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 302 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3475), {226, 156, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 366 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3482), {226, 165, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2071 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3487), {226, 159, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1725 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3491), {226, 138, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1624 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3503), {226, 150, 185, 0}},+ {-1,{0}},+#line 1020 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3505), {226, 151, 131, 0}},+#line 777 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3506), {226, 129, 162, 0}},+#line 1598 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3507), {226, 142, 177, 0}},+ {-1,{0}},+#line 954 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3509), {226, 142, 176, 0}},+#line 633 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3510), {226, 137, 169, 0}},+#line 936 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3511), {226, 170, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 1641 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3514), {226, 170, 180, 0}},+ {-1,{0}},+#line 1978 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3516), {226, 150, 181, 0}},+ {-1,{0}},+#line 2016 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3518), {226, 139, 174, 0}},+ {-1,{0}},+#line 534 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3520), {195, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 952 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3523), {197, 128, 0}},+ {-1,{0}},+#line 1941 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3525), {197, 178, 0}},+#line 300 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3526), {226, 136, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1120 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3534), {226, 137, 167, 0}},+#line 1309 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3535), {226, 164, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 917 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3543), {226, 139, 154, 0}},+ {-1,{0}}, {-1,{0}},+#line 1415 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3546), {226, 138, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1618 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3550), {226, 134, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 299 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3555), {226, 132, 151, 0}},+ {-1,{0}},+#line 746 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3557), {226, 167, 157, 0}},+ {-1,{0}},+#line 738 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3559), {196, 177, 0}},+#line 530 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3560), {226, 169, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1402 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3565), {206, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 628 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3573), {226, 170, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2030 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3579), {226, 138, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 1690 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3582), {226, 170, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 413 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3586), {226, 159, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 414 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3591), {226, 159, 186, 0}},+ {-1,{0}}, {-1,{0}},+#line 1295 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3594), {62, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1046 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3607), {226, 132, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1450 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3611), {226, 128, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 728 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3615), {226, 167, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1546 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3620), {226, 136, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 492 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3627), {226, 151, 187, 0}},+#line 1489 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3628), {226, 136, 154, 0}},+ {-1,{0}}, {-1,{0}},+#line 687 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3631), {240, 157, 148, 165}},+#line 2115 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3632), {197, 188, 0}},+#line 1029 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3633), {226, 153, 130, 0}},+ {-1,{0}},+#line 1500 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3635), {226, 164, 179, 0}},+#line 1436 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3636), {226, 137, 186, 0}},+#line 1646 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3637), {226, 170, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 383 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3641), {226, 133, 134, 0}},+ {-1,{0}},+#line 1063 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3643), {226, 138, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1011 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3657), {226, 169, 185, 0}},+#line 762 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3658), {196, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 216 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3665), {226, 169, 139, 0}},+ {-1,{0}},+#line 720 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3667), {226, 135, 148, 0}},+ {-1,{0}},+#line 360 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3669), {226, 169, 183, 0}},+ {-1,{0}},+#line 263 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3671), {226, 138, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1622 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3676), {226, 139, 140, 0}},+ {-1,{0}},+#line 1016 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3678), {226, 139, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 1441 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3681), {226, 137, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 449 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3685), {226, 139, 177, 0}},+ {-1,{0}},+#line 275 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3687), {226, 153, 163, 0}},+ {-1,{0}},+#line 1488 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3689), {197, 149, 0}},+ {-1,{0}},+#line 819 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3691), {196, 186, 0}},+#line 1889 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3692), {226, 143, 162, 0}},+#line 1632 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3693), {197, 155, 0}},+ {-1,{0}}, {-1,{0}},+#line 2108 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3696), {197, 185, 0}},+#line 459 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3697), {195, 169, 0}},+ {-1,{0}},+#line 1858 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3699), {226, 137, 136, 0}},+ {-1,{0}},+#line 1906 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3701), {226, 165, 137, 0}},+#line 1902 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3702), {195, 186, 0}},+#line 982 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3703), {226, 136, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1076 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3714), {197, 132, 0}},+ {-1,{0}},+#line 1206 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3716), {226, 138, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 951 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3720), {196, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1947 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3725), {226, 134, 145, 0}},+ {-1,{0}},+#line 1511 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3727), {226, 134, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 438 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3738), {226, 138, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 555 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3742), {226, 151, 188, 0}},+#line 219 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3743), {226, 169, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 642 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3749), {226, 137, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1299 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3756), {226, 137, 164, 0}},+ {-1,{0}},+#line 1883 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3758), {226, 137, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1346 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3764), {206, 191, 0}},+ {-1,{0}},+#line 417 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3766), {226, 138, 168, 0}},+#line 233 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3767), {226, 136, 176, 0}},+#line 1621 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3768), {226, 128, 153, 0}},+ {-1,{0}},+#line 1007 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3770), {226, 128, 154, 0}},+ {-1,{0}},+#line 2124 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3772), {226, 135, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 293 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3780), {240, 157, 149, 148}},+ {-1,{0}},+#line 292 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3782), {226, 136, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 670 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3798), {226, 128, 138, 0}},+#line 1728 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3799), {226, 138, 146, 0}},+#line 306 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3800), {226, 171, 143, 0}},+#line 1955 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3801), {226, 134, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 426 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3805), {204, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1674 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3817), {226, 134, 147, 0}},+ {-1,{0}},+#line 2075 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3819), {240, 157, 149, 169}},+ {-1,{0}},+#line 1631 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3821), {197, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2039 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3829), {226, 171, 140, 0}},+#line 265 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3830), {226, 151, 139, 0}},+#line 1414 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3831), {226, 168, 163, 0}},+#line 308 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3832), {226, 171, 144, 0}},+#line 2037 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3833), {226, 171, 139, 0}},+#line 1901 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3834), {195, 154, 0}},+ {-1,{0}},+#line 773 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3836), {226, 139, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 606 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3845), {226, 170, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1719 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3851), {226, 138, 148, 0}},+ {-1,{0}},+#line 1701 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3853), {226, 136, 163, 0}},+ {-1,{0}},+#line 935 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3855), {226, 137, 182, 0}},+ {-1,{0}},+#line 415 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3857), {226, 159, 185, 0}},+#line 1208 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3858), {226, 139, 160, 0}},+ {-1,{0}}, {-1,{0}},+#line 477 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3861), {226, 170, 154, 0}},+ {-1,{0}}, {-1,{0}},+#line 33 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3864), {38, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1162 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3874), {226, 136, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1862 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3883), {226, 168, 176, 0}},+ {-1,{0}}, {-1,{0}},+#line 433 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3886), {226, 134, 189, 0}},+#line 2130 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3887), {226, 128, 140, 0}},+#line 818 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3888), {196, 185, 0}},+#line 432 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3889), {226, 165, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1331 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3898), {195, 178, 0}},+#line 2087 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3899), {195, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1718 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3903), {226, 138, 148, 0}},+ {-1,{0}}, {-1,{0}},+#line 1322 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3906), {226, 138, 153, 0}},+#line 212 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3907), {196, 134, 0}},+ {-1,{0}},+#line 1285 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3909), {206, 189, 0}},+#line 1888 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3910), {226, 168, 187, 0}},+ {-1,{0}},+#line 478 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3912), {195, 136, 0}},+#line 507 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3913), {226, 169, 177, 0}},+ {-1,{0}},+#line 85 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3915), {226, 137, 140, 0}},+ {-1,{0}}, {-1,{0}},+#line 1956 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3918), {226, 138, 142, 0}},+ {-1,{0}},+#line 470 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3920), {196, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 309 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3924), {226, 171, 146, 0}},+ {-1,{0}},+#line 1689 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3926), {226, 170, 158, 0}},+#line 1958 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3927), {226, 134, 151, 0}},+#line 307 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3928), {226, 171, 145, 0}},+ {-1,{0}},+#line 450 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3930), {226, 150, 191, 0}},+#line 1454 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3931), {226, 139, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 177 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3936), {226, 149, 153, 0}},+#line 1980 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3937), {226, 135, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 431 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3945), {226, 165, 158, 0}},+#line 650 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3946), {226, 170, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 120 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3950), {226, 168, 130, 0}},+#line 341 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3951), {226, 128, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 754 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3954), {226, 139, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 710 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3967), {195, 173, 0}},+ {-1,{0}},+#line 1434 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3969), {226, 137, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 481 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3981), {226, 170, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 742 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3987), {226, 135, 146, 0}},+#line 2010 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3988), {226, 138, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 207 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str3996), {226, 137, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1070 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4015), {206, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2008 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4022), {226, 138, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1027 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4028), {226, 137, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 894 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4033), {226, 134, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1075 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4037), {197, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1936 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4042), {226, 143, 159, 0}},+#line 1468 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4043), {206, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1559 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4047), {207, 177, 0}},+ {-1,{0}},+#line 912 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4049), {226, 170, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1789 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4055), {194, 185, 0}},+ {-1,{0}}, {-1,{0}},+#line 1790 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4058), {194, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1791 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4066), {194, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 118 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4071), {226, 168, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 424 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4078), {226, 135, 147, 0}},+ {-1,{0}},+#line 2082 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4080), {226, 168, 134, 0}},+ {-1,{0}},+#line 92 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4082), {226, 138, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1106 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4087), {226, 128, 139, 0}},+#line 209 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4088), {226, 137, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 305 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4100), {240, 157, 146, 184}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1248 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4109), {226, 138, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1792 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4115), {226, 138, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 238 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4122), {194, 184, 0}},+ {-1,{0}}, {-1,{0}},+#line 191 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4125), {226, 149, 159, 0}},+ {-1,{0}},+#line 1364 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4127), {226, 138, 182, 0}},+#line 2129 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4128), {226, 128, 141, 0}},+#line 723 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4129), {195, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 716 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4137), {196, 176, 0}},+ {-1,{0}},+#line 2081 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4139), {240, 157, 147, 141}},+#line 2068 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4140), {206, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1131 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4144), {226, 137, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 165 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4153), {226, 149, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1852 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4163), {195, 158, 0}},+ {-1,{0}},+#line 1487 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4165), {197, 148, 0}},+ {-1,{0}},+#line 1505 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4167), {226, 134, 170, 0}},+ {-1,{0}},+#line 837 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4169), {226, 134, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1627 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4177), {226, 167, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 180 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4189), {226, 149, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 340 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4215), {226, 128, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1345 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4220), {206, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 420 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4226), {226, 136, 165, 0}},+ {-1,{0}}, {-1,{0}},+#line 1117 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4229), {226, 136, 132, 0}},+ {-1,{0}}, {-1,{0}},+#line 1284 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4232), {206, 157, 0}},+#line 1116 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4233), {226, 136, 132, 0}},+#line 605 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4234), {226, 137, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 63 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4238), {226, 137, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1793 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4243), {226, 139, 145, 0}},+#line 401 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4244), {226, 137, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 499 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4247), {197, 139, 0}},+ {-1,{0}},+#line 224 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4249), {203, 135, 0}},+ {-1,{0}},+#line 167 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4251), {226, 149, 169, 0}},+#line 613 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4252), {226, 170, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1547 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4257), {226, 135, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 174 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4262), {226, 149, 157, 0}},+ {-1,{0}},+#line 1804 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4264), {226, 171, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 1409 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4267), {226, 139, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1288 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4272), {226, 128, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1491 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4285), {226, 159, 169, 0}},+ {-1,{0}},+#line 824 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4287), {226, 159, 168, 0}},+ {-1,{0}}, {-1,{0}},+#line 1315 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4290), {226, 138, 154, 0}},+ {-1,{0}},+#line 1515 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4292), {226, 132, 154, 0}},+ {-1,{0}},+#line 295 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4294), {226, 136, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1018 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4307), {226, 165, 182, 0}},+#line 194 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4308), {203, 152, 0}},+ {-1,{0}},+#line 1077 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4310), {226, 136, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1817 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4315), {226, 164, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1496 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4322), {194, 187, 0}},+ {-1,{0}},+#line 830 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4324), {194, 171, 0}},+#line 1815 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4325), {226, 171, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 321 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4329), {226, 139, 147, 0}},+#line 65 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4330), {226, 137, 138, 0}},+#line 1481 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4331), {63, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1305 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4336), {226, 164, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1808 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4340), {226, 138, 131, 0}},+ {-1,{0}},+#line 422 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4342), {226, 134, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 452 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4351), {226, 135, 181, 0}},+ {-1,{0}},+#line 67 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4353), {39, 0}},+#line 1330 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4354), {195, 146, 0}},+#line 1677 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4355), {226, 136, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1268 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4364), {226, 138, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 966 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4368), {226, 159, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 915 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4377), {226, 170, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1806 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4384), {226, 138, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1126 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4388), {226, 139, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1490 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4396), {226, 166, 179, 0}},+#line 1816 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4397), {226, 171, 150, 0}},+#line 820 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4398), {226, 166, 180, 0}},+ {-1,{0}}, {-1,{0}},+#line 1870 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4401), {226, 171, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 501 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4423), {196, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1593 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4429), {226, 137, 147, 0}},+ {-1,{0}},+#line 211 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4431), {226, 137, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1009 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4435), {197, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1896 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4439), {197, 166, 0}},+#line 649 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4440), {226, 137, 179, 0}},+ {-1,{0}}, {-1,{0}},+#line 105 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4443), {226, 166, 176, 0}},+#line 2109 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4444), {197, 186, 0}},+#line 651 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4445), {226, 170, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 1897 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4448), {197, 167, 0}},+ {-1,{0}},+#line 1600 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4450), {226, 159, 173, 0}},+#line 188 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4451), {226, 149, 163, 0}},+#line 962 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4452), {226, 159, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1152 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4456), {226, 169, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1633 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4462), {226, 128, 154, 0}},+ {-1,{0}},+#line 1656 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4464), {226, 164, 165, 0}},+#line 956 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4465), {226, 170, 137, 0}},+ {-1,{0}}, {-1,{0}},+#line 1809 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4468), {226, 139, 145, 0}},+ {-1,{0}},+#line 161 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4470), {226, 149, 164, 0}},+#line 1986 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4471), {207, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 253 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4475), {226, 137, 151, 0}},+ {-1,{0}},+#line 2101 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4477), {240, 157, 149, 170}},+ {-1,{0}},+#line 1940 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4479), {226, 138, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 825 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4484), {226, 159, 170, 0}},+#line 1100 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4485), {226, 164, 164, 0}},+#line 1673 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4486), {209, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 244 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4492), {240, 157, 148, 160}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 799 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4506), {206, 154, 0}},+#line 943 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4507), {209, 153, 0}},+#line 1045 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4508), {226, 129, 159, 0}},+ {-1,{0}}, {-1,{0}},+#line 1810 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4511), {226, 138, 135, 0}},+#line 1811 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4512), {226, 171, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1544 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4517), {194, 174, 0}},+#line 30 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4518), {196, 129, 0}},+#line 908 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4519), {226, 139, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2049 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4524), {226, 132, 152, 0}},+#line 1892 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4525), {208, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1812 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4529), {226, 138, 139, 0}},+#line 1140 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4530), {209, 154, 0}},+#line 2064 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4531), {240, 157, 148, 181}},+ {-1,{0}},+#line 1071 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4533), {206, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1297 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4539), {226, 167, 158, 0}},+#line 178 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4540), {226, 149, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2076 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4545), {226, 168, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 886 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4551), {226, 135, 135, 0}},+#line 1786 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4552), {226, 136, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 111 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4559), {226, 132, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 285 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4563), {226, 136, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1286 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4573), {35, 0}},+#line 32 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4574), {38, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 173 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4583), {226, 149, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1176 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4590), {226, 137, 175, 0}},+#line 169 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4591), {226, 138, 158, 0}},+#line 790 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4592), {200, 183, 0}},+ {-1,{0}},+#line 1668 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4594), {226, 140, 162, 0}},+ {-1,{0}},+#line 447 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4596), {196, 144, 0}},+ {-1,{0}},+#line 36 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4598), {226, 136, 167, 0}},+#line 1179 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4599), {226, 137, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1181 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4606), {226, 169, 190, 0}},+ {-1,{0}},+#line 1180 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4608), {226, 137, 185, 0}},+#line 1483 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4609), {34, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1178 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4616), {226, 137, 167, 0}},+#line 708 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4617), {226, 128, 144, 0}},+#line 1411 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4618), {226, 132, 143, 0}},+ {-1,{0}},+#line 1856 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4620), {226, 137, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1871 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4627), {226, 164, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1008 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4632), {197, 129, 0}},+ {-1,{0}}, {-1,{0}},+#line 1680 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4635), {194, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2072 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4639), {226, 139, 187, 0}},+#line 761 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4640), {196, 174, 0}},+ {-1,{0}}, {-1,{0}},+#line 455 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4643), {208, 143, 0}},+ {-1,{0}},+#line 1333 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4645), {226, 166, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 270 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4652), {226, 167, 130, 0}},+ {-1,{0}},+#line 1665 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4654), {226, 156, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1386 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4668), {194, 182, 0}},+ {-1,{0}}, {-1,{0}},+#line 76 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4671), {42, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1482 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4678), {226, 137, 159, 0}},+ {-1,{0}},+#line 1787 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4680), {226, 136, 145, 0}},+ {-1,{0}},+#line 444 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4682), {208, 133, 0}},+ {-1,{0}},+#line 498 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4684), {197, 138, 0}},+ {-1,{0}},+#line 2122 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4686), {208, 150, 0}},+ {-1,{0}}, {-1,{0}},+#line 965 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4689), {226, 159, 181, 0}},+ {-1,{0}},+#line 346 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4691), {226, 128, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 437 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4699), {226, 134, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1813 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4706), {226, 171, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1457 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4714), {226, 140, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1311 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4718), {195, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 192 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4729), {226, 149, 160, 0}},+ {-1,{0}}, {-1,{0}},+#line 458 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4732), {195, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1807 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4738), {226, 171, 128, 0}},+ {-1,{0}},+#line 694 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4740), {226, 134, 169, 0}},+ {-1,{0}}, {-1,{0}},+#line 273 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4743), {226, 128, 153, 0}},+ {-1,{0}}, {-1,{0}},+#line 1887 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4746), {226, 167, 141, 0}},+#line 405 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4747), {226, 138, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1623 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4751), {226, 139, 138, 0}},+ {-1,{0}},+#line 1017 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4753), {226, 139, 137, 0}},+ {-1,{0}}, {-1,{0}},+#line 1864 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4756), {226, 164, 168, 0}},+#line 23 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4757), {195, 128, 0}},+ {-1,{0}}, {-1,{0}},+#line 75 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4760), {226, 137, 148, 0}},+#line 1492 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4761), {226, 159, 171, 0}},+#line 760 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4762), {209, 145, 0}},+ {-1,{0}},+#line 1207 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4764), {226, 170, 175, 0}},+ {-1,{0}},+#line 61 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4766), {240, 157, 149, 146}},+ {-1,{0}},+#line 251 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4768), {207, 135, 0}},+ {-1,{0}}, {-1,{0}},+#line 1479 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4771), {226, 132, 141, 0}},+#line 187 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4772), {226, 149, 162, 0}},+#line 1177 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4773), {226, 137, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2066 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4777), {226, 159, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1361 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4791), {226, 132, 180, 0}},+ {-1,{0}}, {-1,{0}},+#line 1620 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4794), {226, 128, 153, 0}},+ {-1,{0}},+#line 1006 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4796), {226, 128, 152, 0}},+#line 2103 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4797), {240, 157, 147, 142}},+ {-1,{0}}, {-1,{0}},+#line 603 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4800), {196, 161, 0}},+ {-1,{0}},+#line 1214 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4802), {226, 139, 162, 0}},+#line 809 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4803), {208, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 202 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4809), {226, 167, 133, 0}},+#line 1213 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4810), {226, 138, 143, 0}},+#line 1672 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4811), {208, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2098 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4821), {208, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 338 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4825), {226, 136, 177, 0}},+ {-1,{0}}, {-1,{0}},+#line 1841 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4828), {206, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1842 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4837), {206, 184, 0}},+#line 2070 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4838), {226, 159, 184, 0}},+ {-1,{0}},+#line 1216 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4840), {226, 139, 163, 0}},+ {-1,{0}}, {-1,{0}},+#line 365 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4843), {226, 166, 177, 0}},+#line 1875 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4844), {226, 150, 181, 0}},+ {-1,{0}},+#line 602 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4846), {196, 160, 0}},+ {-1,{0}},+#line 1215 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4848), {226, 138, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 8 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4857), {196, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 448 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4860), {196, 145, 0}},+#line 1399 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4861), {226, 128, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1521 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4866), {93, 0}},+ {-1,{0}},+#line 851 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4868), {91, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1323 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4872), {226, 166, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1347 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4878), {226, 166, 182, 0}},+ {-1,{0}},+#line 2079 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4880), {226, 159, 185, 0}},+ {-1,{0}},+#line 1877 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4882), {226, 151, 131, 0}},+#line 1182 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4883), {226, 137, 181, 0}},+#line 279 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4884), {226, 137, 148, 0}},+ {-1,{0}},+#line 967 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4886), {226, 159, 184, 0}},+ {-1,{0}},+#line 766 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4888), {206, 185, 0}},+ {-1,{0}},+#line 276 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4890), {58, 0}},+#line 2118 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4891), {206, 150, 0}},+#line 596 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4892), {196, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 246 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4897), {208, 167, 0}},+ {-1,{0}}, {-1,{0}},+#line 2104 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4900), {208, 174, 0}},+#line 1545 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4901), {194, 174, 0}},+#line 1822 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4902), {195, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 456 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4909), {209, 159, 0}},+ {-1,{0}},+#line 110 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4911), {206, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 538 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4918), {226, 130, 172, 0}},+ {-1,{0}}, {-1,{0}},+#line 874 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4921), {226, 134, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 221 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4924), {226, 133, 133, 0}},+ {-1,{0}},+#line 1592 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4926), {203, 154, 0}},+#line 829 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4927), {226, 132, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 391 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4932), {209, 146, 0}},+ {-1,{0}},+#line 1355 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4934), {226, 138, 149, 0}},+ {-1,{0}}, {-1,{0}},+#line 751 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4937), {226, 132, 164, 0}},+#line 595 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4938), {196, 158, 0}},+ {-1,{0}},+#line 1908 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4940), {209, 158, 0}},+#line 537 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4941), {195, 171, 0}},+ {-1,{0}}, {-1,{0}},+#line 361 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4944), {194, 176, 0}},+ {-1,{0}},+#line 1982 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4946), {195, 188, 0}},+ {-1,{0}}, {-1,{0}},+#line 709 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4949), {195, 141, 0}},+#line 1780 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4950), {226, 170, 176, 0}},+ {-1,{0}},+#line 811 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4952), {208, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 319 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4961), {226, 137, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1893 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4975), {209, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 241 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4982), {194, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 390 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str4991), {208, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1857 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5009), {226, 137, 133, 0}},+ {-1,{0}},+#line 1879 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5011), {226, 137, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 453 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5016), {226, 165, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 879 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5025), {226, 159, 166, 0}},+ {-1,{0}},+#line 942 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5027), {208, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 718 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5036), {208, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1878 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5043), {226, 138, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1110 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5049), {226, 137, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1254 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5055), {226, 136, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1099 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5062), {226, 128, 147, 0}},+#line 148 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5063), {226, 139, 136, 0}},+ {-1,{0}},+#line 557 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5065), {102, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1907 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5072), {208, 142, 0}},+ {-1,{0}},+#line 1999 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5074), {207, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1981 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5078), {195, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2001 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5084), {226, 138, 179, 0}},+#line 2000 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5085), {226, 138, 178, 0}},+#line 74 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5086), {240, 157, 146, 182}},+ {-1,{0}}, {-1,{0}},+#line 1775 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5089), {226, 137, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 337 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5093), {226, 136, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1638 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5101), {226, 137, 187, 0}},+ {-1,{0}},+#line 559 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5103), {239, 172, 130, 0}},+ {-1,{0}},+#line 256 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5105), {226, 138, 155, 0}},+ {-1,{0}}, {-1,{0}},+#line 2009 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5108), {226, 138, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1292 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5112), {226, 138, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1803 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5120), {226, 165, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1602 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5124), {226, 159, 167, 0}},+ {-1,{0}},+#line 964 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5126), {226, 159, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2007 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5142), {226, 138, 162, 0}},+#line 2107 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5143), {197, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 654 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5151), {62, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 226 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5156), {226, 169, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1776 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5173), {226, 137, 187, 0}},+#line 1310 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5174), {195, 147, 0}},+#line 1874 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5175), {226, 132, 162, 0}},+#line 1139 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5176), {208, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 657 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5181), {226, 139, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2097 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5189), {240, 157, 148, 182}},+ {-1,{0}}, {-1,{0}},+#line 284 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5192), {226, 136, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 656 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5197), {226, 137, 171, 0}},+#line 1647 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5198), {226, 170, 182, 0}},+#line 731 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5199), {196, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 261 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5203), {226, 147, 136, 0}},+ {-1,{0}}, {-1,{0}},+#line 2095 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5206), {194, 165, 0}},+ {-1,{0}},+#line 1843 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5208), {207, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 783 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5211), {195, 175, 0}},+#line 1778 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5212), {226, 137, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 159 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5217), {226, 149, 144, 0}},+#line 1073 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5218), {226, 138, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1577 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5222), {226, 135, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 280 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5227), {226, 137, 148, 0}},+ {-1,{0}},+#line 1637 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5229), {226, 170, 188, 0}},+#line 629 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5230), {226, 170, 164, 0}},+#line 719 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5231), {194, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 234 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5234), {226, 169, 140, 0}},+ {-1,{0}},+#line 2059 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5236), {226, 139, 130, 0}},+#line 2123 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5237), {208, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 163 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5241), {226, 149, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 911 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5250), {226, 169, 189, 0}},+ {-1,{0}},+#line 1957 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5252), {226, 134, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 350 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5257), {203, 157, 0}},+ {-1,{0}}, {-1,{0}},+#line 1470 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5260), {226, 128, 136, 0}},+ {-1,{0}},+#line 228 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5262), {196, 141, 0}},+ {-1,{0}},+#line 1519 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5264), {226, 157, 179, 0}},+ {-1,{0}},+#line 849 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5266), {226, 157, 178, 0}},+ {-1,{0}},+#line 58 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5268), {196, 132, 0}},+#line 898 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5269), {226, 167, 143, 0}},+ {-1,{0}}, {-1,{0}},+#line 615 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5272), {226, 170, 132, 0}},+#line 900 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5273), {226, 138, 180, 0}},+#line 899 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5274), {226, 138, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 290 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5280), {226, 136, 174, 0}},+ {-1,{0}}, {-1,{0}},+#line 439 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5283), {226, 164, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1626 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5295), {226, 150, 184, 0}},+ {-1,{0}},+#line 1022 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5297), {226, 151, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 1548 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5300), {226, 165, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 878 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5306), {226, 140, 136, 0}},+ {-1,{0}},+#line 1979 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5308), {226, 150, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2061 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5314), {226, 139, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 545 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5319), {226, 137, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1528 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5325), {197, 151, 0}},+ {-1,{0}},+#line 858 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5327), {196, 188, 0}},+ {-1,{0}},+#line 1643 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5329), {197, 159, 0}},+ {-1,{0}},+#line 1830 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5331), {197, 162, 0}},+ {-1,{0}},+#line 1748 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5333), {226, 152, 133, 0}},+#line 168 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5334), {226, 138, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1831 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5340), {197, 163, 0}},+#line 2117 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5341), {226, 128, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1093 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5350), {197, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1404 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5358), {207, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 711 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5375), {226, 129, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 220 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5384), {226, 169, 128, 0}},+ {-1,{0}}, {-1,{0}},+#line 445 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5387), {209, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 248 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5397), {226, 156, 147, 0}},+#line 1381 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5398), {226, 140, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1280 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5405), {226, 139, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1580 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5411), {226, 138, 162, 0}},+#line 1294 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5412), {226, 137, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 892 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5424), {226, 134, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 987 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5431), {226, 151, 138, 0}},+ {-1,{0}}, {-1,{0}},+#line 1583 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5434), {226, 167, 144, 0}},+ {-1,{0}},+#line 1581 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5436), {226, 165, 155, 0}},+ {-1,{0}},+#line 1585 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5438), {226, 138, 181, 0}},+#line 1584 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5439), {226, 138, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 802 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5449), {196, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1642 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5457), {197, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 268 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5468), {226, 168, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 490 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5471), {226, 136, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 22 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5478), {240, 157, 148, 158}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 376 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5482), {203, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 882 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5489), {226, 135, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 881 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5492), {226, 165, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 907 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5501), {226, 170, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 68 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5509), {226, 129, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 208 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5512), {226, 170, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 857 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5524), {196, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 223 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5528), {226, 129, 129, 0}},+ {-1,{0}},+#line 91 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5530), {226, 171, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 229 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5543), {195, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 260 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5547), {194, 174, 0}},+#line 880 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5548), {226, 165, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1895 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5552), {209, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 402 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5556), {226, 137, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 242 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5564), {194, 183, 0}},+ {-1,{0}},+#line 1281 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5566), {226, 139, 172, 0}},+ {-1,{0}},+#line 1056 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5568), {226, 136, 146, 0}},+ {-1,{0}},+#line 623 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5570), {226, 132, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 6 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5577), {195, 129, 0}},+#line 653 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5578), {226, 169, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 661 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5583), {226, 165, 184, 0}},+#line 205 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5584), {226, 128, 162, 0}},+ {-1,{0}}, {-1,{0}},+#line 423 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5587), {226, 134, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1536 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5593), {226, 128, 157, 0}},+ {-1,{0}},+#line 865 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5595), {226, 128, 158, 0}},+ {-1,{0}}, {-1,{0}},+#line 755 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5598), {226, 168, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1977 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5602), {197, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 589 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5612), {199, 181, 0}},+ {-1,{0}},+#line 1278 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5614), {195, 177, 0}},+#line 20 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5615), {226, 129, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 703 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5618), {196, 166, 0}},+ {-1,{0}},+#line 543 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5620), {226, 133, 135, 0}},+#line 1055 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5621), {226, 138, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1587 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5625), {226, 165, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1964 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5630), {226, 134, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2119 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5639), {206, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 373 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5644), {203, 153, 0}},+#line 374 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5645), {203, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1146 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5663), {226, 134, 154, 0}},+#line 691 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5664), {226, 164, 166, 0}},+ {-1,{0}},+#line 729 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5666), {226, 132, 169, 0}},+ {-1,{0}}, {-1,{0}},+#line 62 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5669), {226, 169, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1092 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5673), {197, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 214 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5678), {226, 169, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1042 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5686), {226, 128, 148, 0}},+ {-1,{0}}, {-1,{0}},+#line 554 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5689), {239, 172, 129, 0}},+#line 1648 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5690), {226, 139, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1540 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5699), {226, 132, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 897 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5703), {226, 139, 139, 0}},+#line 77 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5704), {226, 137, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 685 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5718), {226, 128, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 451 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5722), {226, 150, 190, 0}},+ {-1,{0}},+#line 1175 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5724), {226, 136, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1639 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5728), {226, 137, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2089 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5733), {208, 175, 0}},+#line 1976 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5734), {197, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1173 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5741), {226, 137, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1848 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5747), {226, 128, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 64 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5754), {226, 169, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 206 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5762), {226, 128, 162, 0}},+ {-1,{0}}, {-1,{0}},+#line 272 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5765), {226, 128, 157, 0}},+#line 363 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5766), {206, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 620 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5776), {226, 137, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1378 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5780), {226, 138, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2056 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5799), {226, 137, 128, 0}},+ {-1,{0}},+#line 1527 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5801), {197, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 535 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5807), {195, 176, 0}},+#line 1805 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5808), {226, 171, 140, 0}},+ {-1,{0}}, {-1,{0}},+#line 84 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5811), {226, 168, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 195 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5817), {203, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 621 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5822), {226, 139, 153, 0}},+ {-1,{0}},+#line 706 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5824), {226, 137, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 948 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5837), {226, 135, 154, 0}},+#line 154 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5838), {226, 148, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1782 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5847), {226, 170, 182, 0}},+#line 1971 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5848), {197, 175, 0}},+#line 929 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5849), {226, 169, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1290 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5860), {226, 138, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 669 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5866), {203, 135, 0}},+#line 779 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5867), {196, 169, 0}},+ {-1,{0}}, {-1,{0}},+#line 765 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5870), {206, 153, 0}},+ {-1,{0}},+#line 759 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5872), {208, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 156 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5884), {226, 149, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1779 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5891), {226, 137, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 883 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5905), {226, 140, 138, 0}},+#line 2041 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5906), {226, 138, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1876 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5923), {226, 150, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 969 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5927), {226, 159, 183, 0}},+#line 1572 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5928), {226, 140, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 434 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5931), {226, 165, 159, 0}},+ {-1,{0}},+#line 1480 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5933), {226, 168, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1277 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5937), {195, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 210 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5940), {226, 137, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 668 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5949), {226, 137, 169, 0}},+ {-1,{0}},+#line 164 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5951), {226, 148, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 658 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5956), {226, 166, 149, 0}},+ {-1,{0}}, {-1,{0}},+#line 1237 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5959), {226, 138, 128, 0}},+ {-1,{0}}, {-1,{0}},+#line 1380 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5962), {195, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 611 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5970), {226, 170, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 536 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5976), {195, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1970 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5980), {197, 174, 0}},+ {-1,{0}},+#line 1937 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5982), {226, 142, 181, 0}},+#line 1161 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5983), {226, 137, 170, 0}},+#line 872 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5984), {226, 135, 164, 0}},+#line 1095 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str5985), {226, 169, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 78 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6003), {226, 137, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1058 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6023), {226, 168, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 364 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6030), {206, 180, 0}},+ {-1,{0}},+#line 678 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6032), {226, 134, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 38 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6038), {226, 169, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 237 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6043), {196, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 225 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6048), {226, 132, 173, 0}},+#line 166 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6049), {226, 149, 168, 0}},+ {-1,{0}}, {-1,{0}},+#line 1784 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6052), {226, 137, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 266 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6061), {226, 167, 131, 0}},+#line 1653 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6062), {226, 138, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1318 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6066), {226, 138, 157, 0}},+#line 269 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6067), {226, 171, 175, 0}},+#line 1802 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6068), {226, 171, 151, 0}},+#line 1795 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6069), {226, 171, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1794 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6077), {226, 170, 190, 0}},+ {-1,{0}},+#line 83 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6079), {226, 136, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1894 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6084), {208, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 639 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6087), {96, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1004 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6101), {226, 170, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1949 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6106), {226, 135, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 906 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6121), {226, 134, 188, 0}},+#line 416 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6122), {226, 135, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1108 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6129), {226, 128, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 941 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6140), {226, 150, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 267 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6146), {226, 137, 151, 0}},+#line 1293 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6147), {226, 138, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1927 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6151), {226, 150, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 737 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6155), {226, 132, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1586 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6161), {226, 165, 143, 0}},+ {-1,{0}}, {-1,{0}},+#line 151 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6164), {226, 149, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 626 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6176), {226, 170, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 782 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6193), {195, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1325 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6203), {197, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1198 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6208), {226, 169, 189, 0}},+ {-1,{0}},+#line 153 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6210), {226, 149, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 591 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6215), {206, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1377 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6236), {226, 168, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 968 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6248), {226, 159, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 590 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6261), {206, 147, 0}},+#line 127 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6262), {226, 139, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 160 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6268), {226, 148, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1796 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6283), {226, 171, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 902 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6292), {226, 165, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 614 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6298), {226, 170, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 800 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6304), {206, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1124 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6315), {226, 169, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 665 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6340), {226, 137, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 550 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6351), {239, 172, 128, 0}},+#line 121 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6352), {226, 168, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 808 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6367), {196, 184, 0}},+#line 1797 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6368), {226, 138, 135, 0}},+ {-1,{0}},+#line 170 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6370), {226, 138, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 631 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6386), {226, 170, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 427 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6394), {226, 135, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 125 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6403), {226, 168, 132, 0}},+#line 810 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6404), {209, 133, 0}},+ {-1,{0}},+#line 355 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6406), {226, 128, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1379 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6418), {195, 150, 0}},+ {-1,{0}},+#line 109 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6420), {206, 146, 0}},+#line 1057 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6421), {226, 136, 184, 0}},+#line 1783 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6422), {226, 139, 169, 0}},+ {-1,{0}},+#line 310 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6424), {226, 139, 175, 0}},+ {-1,{0}}, {-1,{0}},+#line 812 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6427), {209, 156, 0}},+#line 625 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6428), {209, 147, 0}},+ {-1,{0}},+#line 1094 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6430), {226, 137, 135, 0}},+#line 2085 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6431), {226, 139, 129, 0}},+#line 98 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6432), {226, 137, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1722 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6439), {226, 138, 145, 0}},+ {-1,{0}}, {-1,{0}},+#line 155 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6442), {226, 149, 146, 0}},+ {-1,{0}}, {-1,{0}},+#line 970 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6445), {226, 159, 186, 0}},+ {-1,{0}},+#line 1721 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6447), {226, 138, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 430 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6451), {226, 165, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 1723 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6454), {226, 138, 143, 0}},+ {-1,{0}},+#line 1229 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6456), {226, 136, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1174 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6461), {226, 137, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 150 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6485), {226, 148, 144, 0}},+ {-1,{0}}, {-1,{0}},+#line 157 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6488), {226, 149, 148, 0}},+ {-1,{0}},+#line 34 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6490), {226, 169, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1591 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6502), {226, 135, 128, 0}},+ {-1,{0}},+#line 730 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6504), {196, 178, 0}},+#line 1226 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6505), {226, 137, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 57 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6509), {226, 141, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 52 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6515), {226, 136, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 11 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6521), {226, 136, 191, 0}},+ {-1,{0}}, {-1,{0}},+#line 37 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6524), {226, 169, 156, 0}},+ {-1,{0}},+#line 1240 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6526), {226, 164, 179, 0}},+#line 2025 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6527), {226, 128, 138, 0}},+ {-1,{0}},+#line 1799 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6529), {226, 138, 131, 0}},+ {-1,{0}},+#line 152 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6531), {226, 149, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2029 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6535), {226, 138, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 235 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6538), {226, 169, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1987 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6548), {226, 136, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1532 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6552), {209, 128, 0}},+ {-1,{0}},+#line 862 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6554), {208, 187, 0}},+ {-1,{0}},+#line 1652 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6556), {209, 129, 0}},+ {-1,{0}},+#line 1832 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6558), {208, 162, 0}},+#line 2112 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6559), {208, 151, 0}},+#line 468 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6560), {209, 141, 0}},+#line 1537 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6561), {226, 134, 179, 0}},+ {-1,{0}},+#line 868 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6563), {226, 134, 178, 0}},+ {-1,{0}},+#line 1914 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6565), {209, 131, 0}},+#line 184 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6566), {226, 149, 172, 0}},+#line 1833 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6567), {209, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1098 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6577), {208, 189, 0}},+ {-1,{0}},+#line 100 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6579), {208, 177, 0}},+#line 1276 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6580), {226, 137, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 786 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6585), {208, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 288 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6600), {226, 169, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 56 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6607), {195, 133, 0}},+ {-1,{0}},+#line 1569 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6609), {226, 165, 157, 0}},+ {-1,{0}}, {-1,{0}},+#line 1385 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6612), {226, 143, 156, 0}},+#line 1019 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6613), {226, 169, 187, 0}},+ {-1,{0}},+#line 1394 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6615), {208, 191, 0}},+ {-1,{0}}, {-1,{0}},+#line 1375 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6618), {195, 181, 0}},+#line 1535 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6619), {226, 128, 157, 0}},+ {-1,{0}},+#line 864 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6621), {226, 128, 156, 0}},+ {-1,{0}},+#line 2005 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6623), {208, 146, 0}},+ {-1,{0}}, {-1,{0}},+#line 215 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6626), {226, 169, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 101 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6646), {226, 128, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 421 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6650), {226, 164, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2006 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6657), {208, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 53 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6665), {226, 138, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 804 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6676), {208, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1040 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6683), {208, 156, 0}},+#line 1651 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6684), {208, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1115 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6691), {10, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 547 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6696), {209, 132, 0}},+#line 1913 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6697), {208, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 183 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6704), {226, 149, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 353 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6715), {208, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 704 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6738), {196, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 861 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6751), {208, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2093 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6762), {208, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1814 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6775), {226, 171, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1164 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6789), {194, 160, 0}},+#line 1382 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6790), {226, 128, 190, 0}},+#line 1724 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6791), {226, 138, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 624 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6797), {208, 131, 0}},+ {-1,{0}}, {-1,{0}},+#line 1383 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6800), {226, 143, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 512 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6806), {226, 137, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1384 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6819), {226, 142, 180, 0}},+ {-1,{0}},+#line 81 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6821), {195, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 15 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6829), {194, 180, 0}},+#line 715 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6830), {208, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 778 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6849), {196, 168, 0}},+#line 689 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6850), {226, 132, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1344 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6854), {207, 137, 0}},+#line 213 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6855), {196, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1645 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6861), {197, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 464 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6865), {195, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1912 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6870), {195, 187, 0}},+ {-1,{0}},+#line 645 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6872), {226, 169, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 784 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6890), {196, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1291 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6895), {226, 138, 173, 0}},+#line 2043 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6896), {197, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1097 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6900), {208, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1579 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6921), {226, 134, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 924 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6942), {226, 137, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1010 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6958), {226, 170, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 26 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6963), {226, 132, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 354 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6979), {208, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1644 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6989), {197, 156, 0}},+ {-1,{0}},+#line 919 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str6991), {226, 170, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 717 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7000), {208, 149, 0}},+#line 985 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7001), {226, 134, 152, 0}},+#line 1911 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7002), {195, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 24 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7021), {195, 160, 0}},+ {-1,{0}},+#line 1059 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7023), {226, 136, 147, 0}},+#line 126 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7024), {226, 139, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1531 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7028), {208, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1801 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7034), {226, 159, 137, 0}},+ {-1,{0}}, {-1,{0}},+#line 494 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7037), {226, 150, 171, 0}},+ {-1,{0}},+#line 162 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7039), {226, 149, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1435 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7047), {226, 170, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 54 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7066), {226, 166, 157, 0}},+#line 2091 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7067), {197, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1752 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7071), {226, 138, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 1374 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7074), {195, 149, 0}},+#line 231 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7075), {196, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 546 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7085), {208, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 286 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7090), {226, 132, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1762 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7096), {226, 165, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 757 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7115), {226, 129, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 175 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7120), {226, 148, 148, 0}},+#line 9 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7121), {196, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1279 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7127), {226, 137, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 713 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7135), {195, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2062 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7142), {226, 150, 189, 0}},+#line 252 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7143), {203, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 662 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7168), {226, 139, 151, 0}},+ {-1,{0}}, {-1,{0}},+#line 610 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7171), {226, 169, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1282 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7183), {226, 139, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 313 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7198), {226, 139, 158, 0}},+#line 1753 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7199), {226, 139, 144, 0}},+ {-1,{0}},+#line 1041 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7201), {208, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1859 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7212), {226, 168, 177, 0}},+ {-1,{0}},+#line 690 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7214), {226, 164, 165, 0}},+ {-1,{0}}, {-1,{0}},+#line 1682 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7217), {207, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 324 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7224), {226, 169, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1372 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7230), {195, 184, 0}},+#line 457 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7231), {226, 159, 191, 0}},+ {-1,{0}}, {-1,{0}},+#line 891 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7234), {226, 135, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1576 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7245), {226, 135, 140, 0}},+ {-1,{0}},+#line 803 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7247), {196, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1758 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7256), {226, 171, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 332 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7260), {194, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 896 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7269), {226, 165, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 122 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7274), {226, 152, 133, 0}},+ {-1,{0}}, {-1,{0}},+#line 320 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7277), {226, 136, 170, 0}},+#line 973 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7278), {226, 159, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 597 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7294), {196, 162, 0}},+ {-1,{0}},+#line 1439 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7296), {226, 170, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2113 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7307), {208, 183, 0}},+ {-1,{0}},+#line 1412 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7309), {226, 132, 142, 0}},+#line 1343 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7310), {206, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1771 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7317), {226, 171, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1533 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7325), {226, 164, 183, 0}},+#line 325 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7326), {226, 136, 170, 0}},+#line 863 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7327), {226, 164, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1763 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7332), {226, 138, 130, 0}},+#line 1219 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7333), {226, 138, 129, 0}},+#line 876 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7334), {226, 135, 134, 0}},+ {-1,{0}}, {-1,{0}},+#line 2044 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7337), {197, 181, 0}},+#line 1560 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7338), {226, 159, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1283 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7344), {226, 139, 173, 0}},+#line 1681 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7345), {206, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1222 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7350), {226, 137, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 372 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7364), {194, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1760 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7376), {226, 138, 138, 0}},+ {-1,{0}},+#line 1456 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7378), {226, 136, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 258 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7385), {226, 138, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1772 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7389), {226, 171, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 297 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7397), {194, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 533 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7403), {206, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 51 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7409), {226, 136, 161, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1083 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7434), {226, 153, 174, 0}},+ {-1,{0}},+#line 1798 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7436), {226, 171, 132, 0}},+#line 1084 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7437), {226, 132, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1880 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7443), {226, 150, 185, 0}},+ {-1,{0}},+#line 375 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7445), {96, 0}},+#line 172 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7446), {226, 149, 155, 0}},+#line 287 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7447), {226, 137, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1835 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7451), {226, 140, 149, 0}},+ {-1,{0}}, {-1,{0}},+#line 281 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7454), {44, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1764 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7460), {226, 139, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1221 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7475), {226, 139, 161, 0}},+#line 663 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7476), {226, 139, 155, 0}},+#line 79 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7477), {195, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 326 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7484), {226, 134, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 312 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7491), {226, 164, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 311 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7495), {226, 164, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1765 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7503), {226, 138, 134, 0}},+#line 1766 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7504), {226, 171, 133, 0}},+#line 1578 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7505), {226, 134, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 318 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7520), {226, 169, 134, 0}},+#line 1768 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7521), {226, 138, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 59 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7532), {196, 133, 0}},+#line 1190 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7533), {226, 139, 182, 0}},+#line 1582 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7534), {226, 139, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2088 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7552), {195, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1147 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7563), {226, 135, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1317 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7581), {208, 190, 0}},+#line 240 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7582), {226, 166, 178, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 467 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7595), {208, 173, 0}},+ {-1,{0}}, {-1,{0}},+#line 322 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7598), {226, 169, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1881 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7604), {226, 138, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 888 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7615), {226, 134, 148, 0}},+ {-1,{0}}, {-1,{0}},+#line 1774 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7618), {226, 137, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 425 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7631), {226, 135, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1324 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7641), {197, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 247 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7648), {209, 135, 0}},+#line 664 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7649), {226, 170, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 42 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7655), {226, 136, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 12 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7662), {226, 136, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1597 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7668), {226, 142, 177, 0}},+ {-1,{0}},+#line 953 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7670), {226, 142, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1109 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7674), {226, 128, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 1082 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7677), {226, 137, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1371 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7686), {195, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1769 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7698), {226, 171, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 71 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7723), {195, 133, 0}},+#line 176 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7724), {226, 149, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1761 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7730), {226, 170, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 2086 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7742), {226, 139, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 171 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7767), {226, 148, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 189 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7778), {226, 148, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 705 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7800), {226, 137, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 714 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7812), {208, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 70 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7828), {226, 137, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 7 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7841), {195, 161, 0}},+#line 66 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7842), {226, 137, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1951 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7859), {226, 134, 149, 0}},+ {-1,{0}},+#line 1113 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7861), {226, 137, 171, 0}},+ {-1,{0}},+#line 787 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7863), {208, 185, 0}},+ {-1,{0}}, {-1,{0}},+#line 666 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7866), {226, 137, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 179 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7876), {226, 148, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1314 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7886), {195, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 463 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7900), {195, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1205 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str7987), {226, 139, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 124 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8006), {226, 150, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 342 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8032), {226, 132, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1316 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8037), {208, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 681 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8042), {196, 164, 0}},+#line 1590 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8043), {226, 165, 147, 0}},+#line 18 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8044), {195, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 556 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8063), {226, 150, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 622 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8084), {226, 139, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 99 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8088), {208, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1426 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8099), {226, 132, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 186 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8104), {226, 149, 161, 0}},+ {-1,{0}}, {-1,{0}},+#line 1392 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8107), {226, 136, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 712 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8117), {195, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 315 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8129), {226, 134, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 158 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8135), {226, 148, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 39 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8142), {226, 169, 154, 0}},+ {-1,{0}},+#line 1788 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8144), {226, 153, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1568 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8148), {226, 159, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 785 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8168), {196, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1935 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8174), {95, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1563 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8241), {226, 134, 146, 0}},+#line 257 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8242), {226, 138, 154, 0}},+#line 27 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8243), {206, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 885 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8251), {226, 134, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 316 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8258), {226, 164, 189, 0}},+ {-1,{0}},+#line 1565 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8260), {226, 135, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1994 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8281), {207, 130, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1287 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8300), {226, 132, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 551 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8310), {239, 172, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 984 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8326), {226, 134, 153, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 542 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8340), {226, 132, 176, 0}},+ {-1,{0}},+#line 1313 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8342), {195, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2090 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8351), {209, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 823 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8375), {206, 187, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1220 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8381), {226, 170, 176, 0}},+#line 190 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8382), {226, 149, 158, 0}},+ {-1,{0}},+#line 123 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8384), {226, 150, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 40 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8391), {226, 136, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2083 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8404), {226, 168, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1074 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8424), {226, 136, 135, 0}},+#line 185 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8425), {226, 148, 164, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 532 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8438), {206, 151, 0}},+ {-1,{0}},+#line 16 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8440), {208, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 805 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8474), {208, 186, 0}},+#line 601 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8475), {208, 179, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 893 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8485), {226, 165, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 230 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8491), {195, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 90 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8495), {226, 136, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 702 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8506), {226, 132, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1393 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8515), {208, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 600 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8521), {208, 147, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 659 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8534), {226, 169, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 822 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8572), {206, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1321 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8627), {226, 168, 184, 0}},+ {-1,{0}},+#line 884 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8629), {226, 134, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 971 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8672), {226, 159, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 797 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8677), {208, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 866 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8687), {226, 165, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2084 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8700), {226, 150, 179, 0}},+#line 1245 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8701), {226, 135, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 544 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8725), {226, 133, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1244 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8735), {226, 134, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 13 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8745), {195, 130, 0}},+#line 1163 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8746), {226, 129, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 599 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8780), {196, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 41 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8784), {226, 166, 164, 0}},+#line 327 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8785), {226, 164, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1670 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8791), {208, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2106 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8796), {195, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1759 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8800), {226, 171, 139, 0}},+ {-1,{0}}, {-1,{0}},+#line 359 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8803), {226, 164, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1628 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8810), {226, 167, 180, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 598 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8826), {196, 156, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 795 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8843), {208, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 652 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8879), {226, 170, 167, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 781 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8922), {209, 150, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1950 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8956), {226, 134, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 330 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8962), {226, 139, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 549 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8972), {239, 172, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2099 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str8992), {209, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 389 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9015), {226, 139, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 660 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9026), {226, 170, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1754 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9069), {226, 170, 189, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 890 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9079), {226, 135, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 82 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9085), {195, 164, 0}},+ {-1,{0}}, {-1,{0}},+#line 1952 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9088), {226, 135, 149, 0}},+ {-1,{0}},+#line 1575 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9090), {226, 135, 132, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 436 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9151), {226, 135, 129, 0}},+ {-1,{0}}, {-1,{0}},+#line 435 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9154), {226, 165, 151, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 682 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9162), {196, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1613 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9186), {226, 135, 155, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 972 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9217), {226, 159, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 323 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9239), {226, 138, 141, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 10 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9249), {226, 136, 190, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 695 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9268), {226, 134, 170, 0}},+ {-1,{0}}, {-1,{0}},+#line 1107 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9271), {226, 128, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1755 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9275), {226, 171, 133, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1900 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9307), {226, 134, 160, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 429 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9320), {226, 135, 130, 0}},+#line 428 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9321), {226, 135, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 19 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9326), {195, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1534 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9330), {226, 165, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 331 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9349), {226, 139, 143, 0}},+ {-1,{0}},+#line 707 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9351), {226, 129, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1756 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9360), {226, 138, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 974 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9414), {226, 159, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 239 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9484), {194, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1188 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9505), {226, 136, 137, 0}},+#line 1777 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9506), {226, 170, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 887 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9554), {226, 134, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1749 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9580), {207, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 31 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9627), {226, 168, 191, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 80 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9741), {195, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1567 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9747), {226, 140, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 889 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9751), {226, 135, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1770 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9767), {226, 171, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2022 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9788), {124, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1589 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9801), {226, 134, 190, 0}},+ {-1,{0}}, {-1,{0}},+#line 1588 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9804), {226, 165, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1571 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9829), {226, 135, 130, 0}},+ {-1,{0}}, {-1,{0}},+#line 1570 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9832), {226, 165, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 25 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9836), {226, 132, 181, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 255 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9852), {226, 134, 187, 0}},+#line 254 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9853), {226, 134, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 780 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9904), {208, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1376 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9936), {226, 168, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 753 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9944), {226, 138, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1845 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9952), {226, 137, 136, 0}},+ {-1,{0}}, {-1,{0}},+#line 798 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9955), {209, 148, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1203 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9959), {226, 136, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1443 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9963), {226, 170, 185, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 335 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9983), {226, 139, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 72 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str9987), {195, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 232 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10023), {196, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1562 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10029), {226, 134, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 752 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10061), {226, 136, 171, 0}},+#line 2060 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10062), {226, 151, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 796 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10121), {209, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 249 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10206), {226, 156, 147, 0}},+ {-1,{0}},+#line 2024 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10208), {226, 137, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 182 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10219), {226, 149, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1210 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10240), {226, 167, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1212 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10244), {226, 139, 173, 0}},+#line 1211 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10245), {226, 139, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 905 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10278), {226, 165, 146, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 181 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10357), {226, 148, 188, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 149 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10395), {226, 167, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2094 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10415), {209, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1757 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10428), {226, 171, 131, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1706 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10445), {208, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1564 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10505), {226, 135, 146, 0}},+ {-1,{0}},+#line 28 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10507), {206, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1671 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10528), {209, 137, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1707 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10584), {209, 140, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 17 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10704), {208, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2092 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10720), {197, 183, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 116 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10791), {226, 151, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 735 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10808), {226, 133, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 69 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10847), {226, 137, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1800 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10851), {226, 138, 135, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 2042 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10879), {226, 166, 154, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 314 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10888), {226, 139, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1938 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str10947), {226, 143, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 14 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11009), {195, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1773 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11029), {226, 170, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1039 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11047), {226, 168, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 47 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11146), {226, 166, 172, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 44 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11165), {226, 166, 169, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 48 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11282), {226, 166, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 55 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11366), {226, 136, 162, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1025 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11527), {226, 165, 166, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 46 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11565), {226, 166, 171, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1899 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11664), {226, 134, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 339 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11720), {226, 140, 173, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1750 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11791), {207, 149, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1072 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11840), {226, 138, 184, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1561 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str11918), {226, 135, 165, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 867 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12012), {226, 165, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 871 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12103), {226, 159, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1629 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12170), {226, 165, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 328 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12202), {226, 139, 158, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2105 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12206), {209, 142, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1024 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12288), {226, 165, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 674 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12413), {209, 138, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1573 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12461), {226, 135, 129, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1574 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12497), {226, 135, 128, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 673 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12502), {208, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1767 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12651), {226, 138, 134, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 384 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12809), {207, 157, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1917 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12892), {197, 177, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1785 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12985), {226, 136, 139, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 336 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str12991), {226, 139, 143, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}},+#line 1916 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13024), {197, 176, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 49 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13061), {226, 166, 174, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 50 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13443), {226, 166, 175, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2021 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13643), {226, 136, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 2023 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13659), {226, 157, 152, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1566 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13709), {226, 134, 163, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1320 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13908), {197, 145, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}},+#line 1781 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str13945), {226, 170, 186, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 45 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str14304), {226, 166, 170, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 1319 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str14364), {197, 144, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 317 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str14620), {226, 169, 136, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 43 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str15290), {226, 166, 168, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 329 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str15360), {226, 139, 159, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 333 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str15729), {226, 134, 182, 0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+ {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}}, {-1,{0}},+#line 334 "src/html_unescape.gperf"+ {offsetof(struct entity_pool_t, entity_pool_str16000), {226, 134, 183, 0}}+ };++ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)+ {+ unsigned int key = hash_entity (str, len);++ if (key <= MAX_HASH_VALUE)+ if (len == lengthtable[key])+ {+ register const char *s = wordlist[key].entity + entity_pool;++ if (*str == *s && !memcmp (str + 1, s + 1, len - 1))+ return &wordlist[key];+ }+ }+ return 0;+}
+ cmark/inlines.c view
@@ -0,0 +1,1145 @@+#include <stdlib.h>+#include <string.h>+#include <stdio.h>++#include "cmark_ctype.h"+#include "config.h"+#include "node.h"+#include "parser.h"+#include "references.h"+#include "cmark.h"+#include "houdini.h"+#include "utf8.h"+#include "scanners.h"+#include "inlines.h"+++static const char *EMDASH = "\xE2\x80\x94";+static const char *ENDASH = "\xE2\x80\x93";+static const char *ELLIPSES = "\xE2\x80\xA6";+static const char *LEFTDOUBLEQUOTE = "\xE2\x80\x9C";+static const char *RIGHTDOUBLEQUOTE = "\xE2\x80\x9D";+static const char *LEFTSINGLEQUOTE = "\xE2\x80\x98";+static const char *RIGHTSINGLEQUOTE = "\xE2\x80\x99";+++// Macros for creating various kinds of simple.+#define make_str(s) make_literal(CMARK_NODE_TEXT, s)+#define make_code(s) make_literal(CMARK_NODE_CODE, s)+#define make_raw_html(s) make_literal(CMARK_NODE_INLINE_HTML, s)+#define make_linebreak() make_simple(CMARK_NODE_LINEBREAK)+#define make_softbreak() make_simple(CMARK_NODE_SOFTBREAK)+#define make_emph() make_simple(CMARK_NODE_EMPH)+#define make_strong() make_simple(CMARK_NODE_STRONG)++typedef struct delimiter {+ struct delimiter *previous;+ struct delimiter *next;+ cmark_node *inl_text;+ int position;+ unsigned char delim_char;+ bool can_open;+ bool can_close;+ bool active;+} delimiter;++typedef struct {+ cmark_chunk input;+ int pos;+ cmark_reference_map *refmap;+ delimiter *last_delim;+} subject;++static delimiter*+S_insert_emph(subject *subj, delimiter *opener, delimiter *closer);++static int parse_inline(subject* subj, cmark_node * parent, int options);++static void subject_from_buf(subject *e, cmark_strbuf *buffer,+ cmark_reference_map *refmap);+static int subject_find_special_char(subject *subj, int options);++static unsigned char *cmark_clean_autolink(cmark_chunk *url, int is_email)+{+ cmark_strbuf buf = GH_BUF_INIT;++ cmark_chunk_trim(url);++ if (url->len == 0)+ return NULL;++ if (is_email)+ cmark_strbuf_puts(&buf, "mailto:");++ houdini_unescape_html_f(&buf, url->data, url->len);+ return cmark_strbuf_detach(&buf);+}++static inline cmark_node *make_link(cmark_node *label, unsigned char *url, unsigned char *title)+{+ cmark_node* e = (cmark_node *)calloc(1, sizeof(*e));+ if(e != NULL) {+ e->type = CMARK_NODE_LINK;+ e->first_child = label;+ e->last_child = label;+ e->as.link.url = url;+ e->as.link.title = title;+ e->next = NULL;+ label->parent = e;+ }+ return e;+}++static inline cmark_node* make_autolink(cmark_node* label, cmark_chunk url, int is_email)+{+ return make_link(label, cmark_clean_autolink(&url, is_email), NULL);+}++// Create an inline with a literal string value.+static inline cmark_node* make_literal(cmark_node_type t, cmark_chunk s)+{+ cmark_node * e = (cmark_node *)calloc(1, sizeof(*e));+ if(e != NULL) {+ e->type = t;+ e->as.literal = s;+ e->next = NULL;+ e->prev = NULL;+ e->parent = NULL;+ e->first_child = NULL;+ e->last_child = NULL;+ // These fields aren't used for inlines:+ e->start_line = 0;+ e->start_column = 0;+ e->end_line = 0;+ }+ return e;+}++// Create an inline with no value.+static inline cmark_node* make_simple(cmark_node_type t)+{+ cmark_node* e = (cmark_node *)calloc(1, sizeof(*e));+ if(e != NULL) {+ e->type = t;+ e->next = NULL;+ e->prev = NULL;+ e->parent = NULL;+ e->first_child = NULL;+ e->last_child = NULL;+ // These fields aren't used for inlines:+ e->start_line = 0;+ e->start_column = 0;+ e->end_line = 0;+ }+ return e;+}++static unsigned char *bufdup(const unsigned char *buf)+{+ unsigned char *new_buf = NULL;++ if (buf) {+ int len = strlen((char *)buf);+ new_buf = (unsigned char *)calloc(len + 1, sizeof(*new_buf));+ if(new_buf != NULL) {+ memcpy(new_buf, buf, len + 1);+ }+ }++ return new_buf;+}++static void subject_from_buf(subject *e, cmark_strbuf *buffer,+ cmark_reference_map *refmap)+{+ e->input.data = buffer->ptr;+ e->input.len = buffer->size;+ e->input.alloc = 0;+ e->pos = 0;+ e->refmap = refmap;+ e->last_delim = NULL;++ cmark_chunk_rtrim(&e->input);+}++static inline int isbacktick(int c)+{+ return (c == '`');+}++static inline unsigned char peek_char(subject *subj)+{+ return (subj->pos < subj->input.len) ? subj->input.data[subj->pos] : 0;+}++static inline unsigned char peek_at(subject *subj, int pos)+{+ return subj->input.data[pos];+}++// Return true if there are more characters in the subject.+static inline int is_eof(subject* subj)+{+ return (subj->pos >= subj->input.len);+}++// Advance the subject. Doesn't check for eof.+#define advance(subj) (subj)->pos += 1++// Take characters while a predicate holds, and return a string.+static inline cmark_chunk take_while(subject* subj, int (*f)(int))+{+ unsigned char c;+ int startpos = subj->pos;+ int len = 0;++ while ((c = peek_char(subj)) && (*f)(c)) {+ advance(subj);+ len++;+ }++ return cmark_chunk_dup(&subj->input, startpos, len);+}++// Try to process a backtick code span that began with a+// span of ticks of length openticklength length (already+// parsed). Return 0 if you don't find matching closing+// backticks, otherwise return the position in the subject+// after the closing backticks.+static int scan_to_closing_backticks(subject* subj, int openticklength)+{+ // read non backticks+ unsigned char c;+ while ((c = peek_char(subj)) && c != '`') {+ advance(subj);+ }+ if (is_eof(subj)) {+ return 0; // did not find closing ticks, return 0+ }+ int numticks = 0;+ while (peek_char(subj) == '`') {+ advance(subj);+ numticks++;+ }+ if (numticks != openticklength) {+ return(scan_to_closing_backticks(subj, openticklength));+ }+ return (subj->pos);+}++// 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)+{+ cmark_chunk openticks = take_while(subj, isbacktick);+ int startpos = subj->pos;+ int endpos = scan_to_closing_backticks(subj, openticks.len);++ if (endpos == 0) { // not found+ subj->pos = startpos; // rewind+ return make_str(openticks);+ } else {+ cmark_strbuf buf = GH_BUF_INIT;++ cmark_strbuf_set(&buf, subj->input.data + startpos, endpos - startpos - openticks.len);+ cmark_strbuf_trim(&buf);+ cmark_strbuf_normalize_whitespace(&buf);++ return make_code(cmark_chunk_buf_detach(&buf));+ }+}++// Scan ***, **, or * and return number scanned, or 0.+// Advances position.+static int+scan_delims(subject* subj, unsigned char c, bool * can_open, bool * can_close)+{+ int numdelims = 0;+ int before_char_pos;+ int32_t after_char = 0;+ int32_t before_char = 0;+ int len;+ bool left_flanking, right_flanking;++ if (subj->pos == 0) {+ before_char = 10;+ } else {+ before_char_pos = subj->pos - 1;+ // walk back to the beginning of the UTF_8 sequence:+ while (peek_at(subj, before_char_pos) >> 6 == 2 &&+ before_char_pos > 0) {+ before_char_pos -= 1;+ }+ len = utf8proc_iterate(subj->input.data + before_char_pos,+ subj->pos - before_char_pos, &before_char);+ if (len == -1) {+ before_char = 10;+ }+ }++ if (c == '\'' || c == '"') {+ numdelims++;+ advance(subj); // limit to 1 delim for quotes+ } else {+ while (peek_char(subj) == c) {+ numdelims++;+ advance(subj);+ }+ }++ len = utf8proc_iterate(subj->input.data + subj->pos,+ subj->input.len - subj->pos, &after_char);+ if (len == -1) {+ after_char = 10;+ }+ left_flanking = numdelims > 0 && !utf8proc_is_space(after_char) &&+ !(utf8proc_is_punctuation(after_char) &&+ !utf8proc_is_space(before_char) &&+ !utf8proc_is_punctuation(before_char));+ right_flanking = numdelims > 0 && !utf8proc_is_space(before_char) &&+ !(utf8proc_is_punctuation(before_char) &&+ !utf8proc_is_space(after_char) &&+ !utf8proc_is_punctuation(after_char));+ if (c == '_') {+ *can_open = left_flanking && !right_flanking;+ *can_close = right_flanking && !left_flanking;+ } else if (c == '\'' || c == '"') {+ *can_open = left_flanking && !right_flanking;+ *can_close = right_flanking;+ } else {+ *can_open = left_flanking;+ *can_close = right_flanking;+ }+ return numdelims;+}++/*+static void print_delimiters(subject *subj)+{+ delimiter *delim;+ delim = subj->last_delim;+ while (delim != NULL) {+ printf("Item at %p: %d %d %d next(%p) prev(%p)\n",+ delim, delim->delim_char,+ delim->can_open, delim->can_close,+ delim->next, delim->previous);+ delim = delim->previous;+ }+}+*/++static void remove_delimiter(subject *subj, delimiter *delim)+{+ if (delim == NULL) return;+ if (delim->next == NULL) {+ // end of list:+ assert(delim == subj->last_delim);+ subj->last_delim = delim->previous;+ } else {+ delim->next->previous = delim->previous;+ }+ if (delim->previous != NULL) {+ delim->previous->next = delim->next;+ }+ free(delim);+}++static void push_delimiter(subject *subj, unsigned char c, bool can_open,+ bool can_close, cmark_node *inl_text)+{+ delimiter *delim =+ (delimiter*)malloc(sizeof(delimiter));+ if (delim == NULL) {+ return;+ }+ delim->delim_char = c;+ delim->can_open = can_open;+ delim->can_close = can_close;+ delim->inl_text = inl_text;+ delim->previous = subj->last_delim;+ delim->next = NULL;+ if (delim->previous != NULL) {+ delim->previous->next = delim;+ }+ delim->position = subj->pos;+ delim->active = true;+ subj->last_delim = delim;+}++// Assumes the subject has a c at the current position.+static cmark_node* handle_delim(subject* subj, unsigned char c, bool smart)+{+ int numdelims;+ cmark_node * inl_text;+ bool can_open, can_close;+ cmark_chunk contents;++ numdelims = scan_delims(subj, c, &can_open, &can_close);++ if (c == '\'' && smart) {+ contents = cmark_chunk_literal(RIGHTSINGLEQUOTE);+ } else if (c == '"' && smart) {+ contents = cmark_chunk_literal(can_close ? RIGHTDOUBLEQUOTE : LEFTDOUBLEQUOTE);+ } else {+ contents = cmark_chunk_dup(&subj->input, subj->pos - numdelims, numdelims);+ }++ inl_text = make_str(contents);++ if ((can_open || can_close) &&+ (!(c == '\'' || c == '"') || smart)) {+ push_delimiter(subj, c, can_open, can_close, inl_text);+ }++ return inl_text;+}++// Assumes we have a hyphen at the current position.+static cmark_node* handle_hyphen(subject* subj, bool smart)+{+ advance(subj);+ if (smart && peek_char(subj) == '-') {+ advance(subj);+ if (peek_char(subj) == '-') {+ advance(subj);+ return make_str(cmark_chunk_literal(EMDASH));+ } else {+ return make_str(cmark_chunk_literal(ENDASH));+ }+ } else {+ return make_str(cmark_chunk_literal("-"));+ }+}++// Assumes we have a period at the current position.+static cmark_node* handle_period(subject* subj, bool smart)+{+ advance(subj);+ if (smart && peek_char(subj) == '.') {+ advance(subj);+ if (peek_char(subj) == '.') {+ advance(subj);+ return make_str(cmark_chunk_literal(ELLIPSES));+ } else {+ return make_str(cmark_chunk_literal(".."));+ }+ } else {+ return make_str(cmark_chunk_literal("."));+ }+}++static void process_emphasis(subject *subj, delimiter *start_delim)+{+ delimiter *closer = subj->last_delim;+ delimiter *opener;++ // move back to first relevant delim.+ while (closer != NULL && closer->previous != start_delim) {+ closer = closer->previous;+ }++ // now move forward, looking for closers, and handling each+ while (closer != NULL) {+ if (closer->can_close &&+ (closer->delim_char == '*' || closer->delim_char == '_' ||+ closer->delim_char == '"' || closer->delim_char == '\'')) {+ // Now look backwards for first matching opener:+ opener = closer->previous;+ while (opener != NULL && opener != start_delim) {+ if (opener->delim_char == closer->delim_char &&+ opener->can_open) {+ break;+ }+ opener = opener->previous;+ }+ if (closer->delim_char == '*' || closer->delim_char == '_') {+ if (opener != NULL && opener != start_delim) {+ closer = S_insert_emph(subj, opener, closer);+ } else {+ closer = closer->next;+ }+ } else if (closer->delim_char == '\'') {+ cmark_chunk_free(&closer->inl_text->as.literal);+ closer->inl_text->as.literal =+ cmark_chunk_literal(RIGHTSINGLEQUOTE);+ if (opener != NULL && opener != start_delim) {+ cmark_chunk_free(&opener->inl_text->as.literal);+ opener->inl_text->as.literal =+ cmark_chunk_literal(LEFTSINGLEQUOTE);+ }+ closer = closer->next;+ } else if (closer->delim_char == '"') {+ cmark_chunk_free(&closer->inl_text->as.literal);+ closer->inl_text->as.literal =+ cmark_chunk_literal(RIGHTDOUBLEQUOTE);+ if (opener != NULL && opener != start_delim) {+ cmark_chunk_free(&opener->inl_text->as.literal);+ opener->inl_text->as.literal =+ cmark_chunk_literal(LEFTDOUBLEQUOTE);+ }+ closer = closer->next;+ }+ } else {+ closer = closer->next;+ }+ }+ // free all delimiters in list until start_delim:+ while (subj->last_delim != start_delim) {+ remove_delimiter(subj, subj->last_delim);+ }+}++static delimiter*+S_insert_emph(subject *subj, delimiter *opener, delimiter *closer)+{+ delimiter *delim, *tmp_delim;+ int use_delims;+ cmark_node *opener_inl = opener->inl_text;+ cmark_node *closer_inl = closer->inl_text;+ int opener_num_chars = opener_inl->as.literal.len;+ int closer_num_chars = closer_inl->as.literal.len;+ cmark_node *tmp, *emph, *first_child, *last_child;++ // calculate the actual number of characters used from this closer+ if (closer_num_chars < 3 || opener_num_chars < 3) {+ use_delims = closer_num_chars <= opener_num_chars ?+ closer_num_chars : opener_num_chars;+ } else { // closer and opener both have >= 3 characters+ use_delims = closer_num_chars % 2 == 0 ? 2 : 1;+ }++ // remove used characters from associated inlines.+ opener_num_chars -= use_delims;+ closer_num_chars -= use_delims;+ opener_inl->as.literal.len = opener_num_chars;+ closer_inl->as.literal.len = closer_num_chars;++ // free delimiters between opener and closer+ delim = closer->previous;+ while (delim != NULL && delim != opener) {+ tmp_delim = delim->previous;+ remove_delimiter(subj, delim);+ delim = tmp_delim;+ }++ first_child = opener_inl->next;+ last_child = closer_inl->prev;++ // if opener has 0 characters, remove it and its associated inline+ if (opener_num_chars == 0) {+ // replace empty opener inline with emph+ cmark_chunk_free(&(opener_inl->as.literal));+ emph = opener_inl;+ emph->type = use_delims == 1 ? NODE_EMPH : NODE_STRONG;+ // remove opener from list+ remove_delimiter(subj, opener);+ } else {+ // create new emph or strong, and splice it in to our inlines+ // between the opener and closer+ emph = use_delims == 1 ? make_emph() : make_strong();+ emph->parent = opener_inl->parent;+ emph->prev = opener_inl;+ opener_inl->next = emph;+ }++ // push children below emph+ emph->next = closer_inl;+ closer_inl->prev = emph;+ emph->first_child = first_child;+ emph->last_child = last_child;++ // fix children pointers+ first_child->prev = NULL;+ last_child->next = NULL;+ for (tmp = first_child; tmp != NULL; tmp = tmp->next) {+ tmp->parent = emph;+ }++ // if closer has 0 characters, remove it and its associated inline+ if (closer_num_chars == 0) {+ // remove empty closer inline+ cmark_node_free(closer_inl);+ // remove closer from list+ tmp_delim = closer->next;+ remove_delimiter(subj, closer);+ closer = tmp_delim;+ }++ return closer;+}++// Parse backslash-escape or just a backslash, returning an inline.+static cmark_node* handle_backslash(subject *subj)+{+ advance(subj);+ unsigned char nextchar = peek_char(subj);+ if (cmark_ispunct(nextchar)) { // only ascii symbols and newline can be escaped+ advance(subj);+ return make_str(cmark_chunk_dup(&subj->input, subj->pos - 1, 1));+ } else if (nextchar == '\n') {+ advance(subj);+ return make_linebreak();+ } else {+ return make_str(cmark_chunk_literal("\\"));+ }+}++// Parse an entity or a regular "&" string.+// Assumes the subject has an '&' character at the current position.+static cmark_node* handle_entity(subject* subj)+{+ cmark_strbuf ent = GH_BUF_INIT;+ size_t len;++ advance(subj);++ len = houdini_unescape_ent(&ent,+ subj->input.data + subj->pos,+ subj->input.len - subj->pos+ );++ if (len == 0)+ return make_str(cmark_chunk_literal("&"));++ subj->pos += len;+ return make_str(cmark_chunk_buf_detach(&ent));+}++// Like make_str, but parses entities.+// Returns an inline sequence consisting of str and entity elements.+static cmark_node *make_str_with_entities(cmark_chunk *content)+{+ cmark_strbuf unescaped = GH_BUF_INIT;++ if (houdini_unescape_html(&unescaped, content->data, (size_t)content->len)) {+ return make_str(cmark_chunk_buf_detach(&unescaped));+ } else {+ return make_str(*content);+ }+}++// Clean a URL: remove surrounding whitespace and surrounding <>,+// and remove \ that escape punctuation.+unsigned char *cmark_clean_url(cmark_chunk *url)+{+ cmark_strbuf buf = GH_BUF_INIT;++ cmark_chunk_trim(url);++ if (url->len == 0)+ return NULL;++ if (url->data[0] == '<' && url->data[url->len - 1] == '>') {+ houdini_unescape_html_f(&buf, url->data + 1, url->len - 2);+ } else {+ houdini_unescape_html_f(&buf, url->data, url->len);+ }++ cmark_strbuf_unescape(&buf);+ return cmark_strbuf_detach(&buf);+}++unsigned char *cmark_clean_title(cmark_chunk *title)+{+ cmark_strbuf buf = GH_BUF_INIT;+ unsigned char first, last;++ if (title->len == 0)+ return NULL;++ first = title->data[0];+ last = title->data[title->len - 1];++ // remove surrounding quotes if any:+ if ((first == '\'' && last == '\'') ||+ (first == '(' && last == ')') ||+ (first == '"' && last == '"')) {+ houdini_unescape_html_f(&buf, title->data + 1, title->len - 2);+ } else {+ houdini_unescape_html_f(&buf, title->data, title->len);+ }++ cmark_strbuf_unescape(&buf);+ return cmark_strbuf_detach(&buf);+}++// Parse an autolink or HTML tag.+// Assumes the subject has a '<' character at the current position.+static cmark_node* handle_pointy_brace(subject* subj)+{+ int matchlen = 0;+ cmark_chunk contents;++ advance(subj); // advance past first <++ // first try to match a URL autolink+ matchlen = scan_autolink_uri(&subj->input, subj->pos);+ if (matchlen > 0) {+ contents = cmark_chunk_dup(&subj->input, subj->pos, matchlen - 1);+ subj->pos += matchlen;++ return make_autolink(+ make_str_with_entities(&contents),+ contents, 0+ );+ }++ // next try to match an email autolink+ matchlen = scan_autolink_email(&subj->input, subj->pos);+ if (matchlen > 0) {+ contents = cmark_chunk_dup(&subj->input, subj->pos, matchlen - 1);+ subj->pos += matchlen;++ return make_autolink(+ make_str_with_entities(&contents),+ contents, 1+ );+ }++ // finally, try to match an html tag+ matchlen = scan_html_tag(&subj->input, subj->pos);+ if (matchlen > 0) {+ contents = cmark_chunk_dup(&subj->input, subj->pos - 1, matchlen + 1);+ subj->pos += matchlen;+ return make_raw_html(contents);+ }++ // if nothing matches, just return the opening <:+ return make_str(cmark_chunk_literal("<"));+}++// Parse a link label. Returns 1 if successful.+// Note: unescaped brackets are not allowed in labels.+// The label begins with `[` and ends with the first `]` character+// encountered. Backticks in labels do not start code spans.+static int link_label(subject* subj, cmark_chunk *raw_label)+{+ int startpos = subj->pos;+ int length = 0;+ unsigned char c;++ // advance past [+ if (peek_char(subj) == '[') {+ advance(subj);+ } else {+ return 0;+ }++ while ((c = peek_char(subj)) && c != '[' && c != ']') {+ if (c == '\\') {+ advance(subj);+ length++;+ if (cmark_ispunct(peek_char(subj))) {+ advance(subj);+ length++;+ }+ } else {+ advance(subj);+ length++;+ }+ if (length > MAX_LINK_LABEL_LENGTH) {+ goto noMatch;+ }+ }++ if (c == ']') { // match found+ *raw_label = cmark_chunk_dup(&subj->input, startpos + 1, subj->pos - (startpos + 1));+ advance(subj); // advance past ]+ return 1;+ }++noMatch:+ subj->pos = startpos; // rewind+ return 0;++}++// Return a link, an image, or a literal close bracket.+static cmark_node* handle_close_bracket(subject* subj, cmark_node *parent)+{+ int initial_pos;+ int starturl, endurl, starttitle, endtitle, endall;+ int n;+ int sps;+ cmark_reference *ref;+ bool is_image = false;+ cmark_chunk url_chunk, title_chunk;+ unsigned char *url, *title;+ delimiter *opener;+ cmark_node *link_text;+ cmark_node *inl;+ cmark_chunk raw_label;+ int found_label;++ advance(subj); // advance past ]+ initial_pos = subj->pos;++ // look through list of delimiters for a [ or !+ opener = subj->last_delim;+ while (opener) {+ if (opener->delim_char == '[' || opener->delim_char == '!') {+ break;+ }+ opener = opener->previous;+ }++ if (opener == NULL) {+ return make_str(cmark_chunk_literal("]"));+ }++ if (!opener->active) {+ // take delimiter off stack+ remove_delimiter(subj, opener);+ return make_str(cmark_chunk_literal("]"));+ }++ // If we got here, we matched a potential link/image text.+ is_image = opener->delim_char == '!';+ link_text = opener->inl_text->next;++ // Now we check to see if it's a link/image.++ // First, look for an inline link.+ if (peek_char(subj) == '(' &&+ ((sps = scan_spacechars(&subj->input, subj->pos + 1)) > -1) &&+ ((n = scan_link_url(&subj->input, subj->pos + 1 + sps)) > -1)) {++ // try to parse an explicit link:+ starturl = subj->pos + 1 + sps; // after (+ endurl = starturl + n;+ starttitle = endurl + scan_spacechars(&subj->input, endurl);++ // ensure there are spaces btw url and title+ endtitle = (starttitle == endurl) ? starttitle :+ starttitle + scan_link_title(&subj->input, starttitle);++ endall = endtitle + scan_spacechars(&subj->input, endtitle);++ if (peek_at(subj, endall) == ')') {+ subj->pos = endall + 1;++ url_chunk = cmark_chunk_dup(&subj->input, starturl, endurl - starturl);+ title_chunk = cmark_chunk_dup(&subj->input, starttitle, endtitle - starttitle);+ url = cmark_clean_url(&url_chunk);+ title = cmark_clean_title(&title_chunk);+ cmark_chunk_free(&url_chunk);+ cmark_chunk_free(&title_chunk);+ goto match;++ } else {+ goto noMatch;+ }+ }++ // Next, look for a following [link label] that matches in refmap.+ // skip spaces+ subj->pos = subj->pos + scan_spacechars(&subj->input, subj->pos);+ raw_label = cmark_chunk_literal("");+ found_label = link_label(subj, &raw_label);+ if (!found_label || raw_label.len == 0) {+ cmark_chunk_free(&raw_label);+ raw_label = cmark_chunk_dup(&subj->input, opener->position,+ initial_pos - opener->position - 1);+ }++ if (!found_label) {+ // If we have a shortcut reference link, back up+ // to before the spacse we skipped.+ subj->pos = initial_pos;+ }++ ref = cmark_reference_lookup(subj->refmap, &raw_label);+ cmark_chunk_free(&raw_label);++ if (ref != NULL) { // found+ url = bufdup(ref->url);+ title = bufdup(ref->title);+ goto match;+ } else {+ goto noMatch;+ }++noMatch:+ // If we fall through to here, it means we didn't match a link:+ remove_delimiter(subj, opener); // remove this opener from delimiter list+ subj->pos = initial_pos;+ return make_str(cmark_chunk_literal("]"));++match:+ inl = opener->inl_text;+ inl->type = is_image ? NODE_IMAGE : NODE_LINK;+ cmark_chunk_free(&inl->as.literal);+ inl->first_child = link_text;+ process_emphasis(subj, opener->previous);+ inl->as.link.url = url;+ inl->as.link.title = title;+ inl->next = NULL;+ if (link_text) {+ cmark_node *tmp;+ link_text->prev = NULL;+ for (tmp = link_text; tmp->next != NULL; tmp = tmp->next) {+ tmp->parent = inl;+ }+ tmp->parent = inl;+ inl->last_child = tmp;+ }+ parent->last_child = inl;++ // process_emphasis will remove this delimiter and all later ones.+ // Now, if we have a link, we also want to deactivate earlier link+ // delimiters. (This code can be removed if we decide to allow links+ // inside links.)+ if (!is_image) {+ opener = subj->last_delim;+ while (opener != NULL) {+ if (opener->delim_char == '[') {+ if (!opener->active) {+ break;+ } else {+ opener->active = false;+ }+ }+ opener = opener->previous;+ }+ }++ return NULL;+}++// Parse a hard or soft linebreak, returning an inline.+// Assumes the subject has a newline at the current position.+static cmark_node* handle_newline(subject *subj)+{+ int nlpos = subj->pos;+ // skip over newline+ advance(subj);+ // skip spaces at beginning of line+ while (peek_char(subj) == ' ') {+ advance(subj);+ }+ if (nlpos > 1 &&+ peek_at(subj, nlpos - 1) == ' ' &&+ peek_at(subj, nlpos - 2) == ' ') {+ return make_linebreak();+ } else {+ return make_softbreak();+ }+}++static int subject_find_special_char(subject *subj, int options)+{+ // "\n\\`&_*[]<!"+ static const int8_t SPECIAL_CHARS[256] = {+ 0, 0, 0, 0, 0, 0, 0, 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, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 1, 0, 1,+ 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, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0+ };++ // " ' . -+ static const char SMART_PUNCT_CHARS[] = {+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 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, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ };++ int n = subj->pos + 1;++ while (n < subj->input.len) {+ if (SPECIAL_CHARS[subj->input.data[n]])+ return n;+ if (options & CMARK_OPT_SMART &&+ SMART_PUNCT_CHARS[subj->input.data[n]])+ return n;+ n++;+ }++ return subj->input.len;+}++// Parse an inline, advancing subject, and add it as a child of parent.+// Return 0 if no inline can be parsed, 1 otherwise.+static int parse_inline(subject* subj, cmark_node * parent, int options)+{+ cmark_node* new_inl = NULL;+ cmark_chunk contents;+ unsigned char c;+ int endpos;+ c = peek_char(subj);+ if (c == 0) {+ return 0;+ }+ switch(c) {+ case '\n':+ new_inl = handle_newline(subj);+ break;+ case '`':+ new_inl = handle_backticks(subj);+ break;+ case '\\':+ new_inl = handle_backslash(subj);+ break;+ case '&':+ new_inl = handle_entity(subj);+ break;+ case '<':+ new_inl = handle_pointy_brace(subj);+ break;+ case '*':+ case '_':+ case '\'':+ case '"':+ new_inl = handle_delim(subj, c, options & CMARK_OPT_SMART);+ break;+ case '-':+ new_inl = handle_hyphen(subj, options & CMARK_OPT_SMART);+ break;+ case '.':+ new_inl = handle_period(subj, options & CMARK_OPT_SMART);+ break;+ case '[':+ advance(subj);+ new_inl = make_str(cmark_chunk_literal("["));+ push_delimiter(subj, '[', true, false, new_inl);+ break;+ case ']':+ new_inl = handle_close_bracket(subj, parent);+ break;+ case '!':+ advance(subj);+ if (peek_char(subj) == '[') {+ advance(subj);+ new_inl = make_str(cmark_chunk_literal("!["));+ push_delimiter(subj, '!', false, true, new_inl);+ } else {+ new_inl = make_str(cmark_chunk_literal("!"));+ }+ break;+ default:+ endpos = subject_find_special_char(subj, options);+ contents = cmark_chunk_dup(&subj->input, subj->pos, endpos - subj->pos);+ subj->pos = endpos;++ // if we're at a newline, strip trailing spaces.+ if (peek_char(subj) == '\n') {+ cmark_chunk_rtrim(&contents);+ }++ new_inl = make_str(contents);+ }+ if (new_inl != NULL) {+ cmark_node_append_child(parent, new_inl);+ }++ return 1;+}++// Parse inlines from parent's string_content, adding as children of parent.+extern void cmark_parse_inlines(cmark_node* parent, cmark_reference_map *refmap, int options)+{+ subject subj;+ subject_from_buf(&subj, &parent->string_content, refmap);++ while (!is_eof(&subj) && parse_inline(&subj, parent, options)) ;++ process_emphasis(&subj, NULL);+}++// Parse zero or more space characters, including at most one newline.+static void spnl(subject* subj)+{+ bool seen_newline = false;+ while (peek_char(subj) == ' ' ||+ (!seen_newline &&+ (seen_newline = peek_char(subj) == '\n'))) {+ advance(subj);+ }+}++// Parse reference. Assumes string begins with '[' character.+// Modify refmap if a reference is encountered.+// Return 0 if no reference found, otherwise position of subject+// after reference is parsed.+int cmark_parse_reference_inline(cmark_strbuf *input, cmark_reference_map *refmap)+{+ subject subj;++ cmark_chunk lab;+ cmark_chunk url;+ cmark_chunk title;++ int matchlen = 0;+ int beforetitle;++ subject_from_buf(&subj, input, NULL);++ // parse label:+ if (!link_label(&subj, &lab))+ return 0;++ // colon:+ if (peek_char(&subj) == ':') {+ advance(&subj);+ } else {+ return 0;+ }++ // parse link url:+ spnl(&subj);+ matchlen = scan_link_url(&subj.input, subj.pos);+ if (matchlen) {+ url = cmark_chunk_dup(&subj.input, subj.pos, matchlen);+ subj.pos += matchlen;+ } else {+ return 0;+ }++ // parse optional link_title+ beforetitle = subj.pos;+ spnl(&subj);+ matchlen = scan_link_title(&subj.input, subj.pos);+ if (matchlen) {+ title = cmark_chunk_dup(&subj.input, subj.pos, matchlen);+ subj.pos += matchlen;+ } else {+ subj.pos = beforetitle;+ title = cmark_chunk_literal("");+ }+ // parse final spaces and newline:+ while (peek_char(&subj) == ' ') {+ advance(&subj);+ }+ if (peek_char(&subj) == '\n') {+ advance(&subj);+ } else if (peek_char(&subj) != 0) {+ return 0;+ }+ // insert reference into refmap+ cmark_reference_create(refmap, &lab, &url, &title);+ return subj.pos;+}
+ cmark/inlines.h view
@@ -0,0 +1,19 @@+#ifndef CMARK_INLINES_H+#define CMARK_INLINES_H++#ifdef __cplusplus+extern "C" {+#endif++unsigned char *cmark_clean_url(cmark_chunk *url);+unsigned char *cmark_clean_title(cmark_chunk *title);++void cmark_parse_inlines(cmark_node* parent, cmark_reference_map *refmap, int options);++int cmark_parse_reference_inline(cmark_strbuf *input, cmark_reference_map *refmap);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/iterator.c view
@@ -0,0 +1,146 @@+#include <assert.h>+#include <stdlib.h>++#include "config.h"+#include "node.h"+#include "cmark.h"+#include "iterator.h"++static const int S_leaf_mask =+ (1 << CMARK_NODE_HTML) |+ (1 << CMARK_NODE_HRULE) |+ (1 << CMARK_NODE_CODE_BLOCK) |+ (1 << CMARK_NODE_TEXT) |+ (1 << CMARK_NODE_SOFTBREAK) |+ (1 << CMARK_NODE_LINEBREAK) |+ (1 << CMARK_NODE_CODE) |+ (1 << CMARK_NODE_INLINE_HTML);++cmark_iter*+cmark_iter_new(cmark_node *root)+{+ if (root == NULL) {+ return NULL;+ }+ cmark_iter *iter = (cmark_iter*)malloc(sizeof(cmark_iter));+ if (iter == NULL) {+ return NULL;+ }+ iter->root = root;+ iter->cur.ev_type = CMARK_EVENT_NONE;+ iter->cur.node = NULL;+ iter->next.ev_type = CMARK_EVENT_ENTER;+ iter->next.node = root;+ return iter;+}++void+cmark_iter_free(cmark_iter *iter)+{+ free(iter);+}++static bool+S_is_leaf(cmark_node *node)+{+ return (1 << node->type) & S_leaf_mask;+}++cmark_event_type+cmark_iter_next(cmark_iter *iter)+{+ cmark_event_type ev_type = iter->next.ev_type;+ cmark_node *node = iter->next.node;++ iter->cur.ev_type = ev_type;+ iter->cur.node = node;++ if (ev_type == CMARK_EVENT_DONE) {+ return ev_type;+ }++ /* roll forward to next item, setting both fields */+ if (ev_type == CMARK_EVENT_ENTER && !S_is_leaf(node)) {+ if (node->first_child == NULL) {+ /* stay on this node but exit */+ iter->next.ev_type = CMARK_EVENT_EXIT;+ } else {+ iter->next.ev_type = CMARK_EVENT_ENTER;+ iter->next.node = node->first_child;+ }+ } else if (node == iter->root) {+ /* don't move past root */+ iter->next.ev_type = CMARK_EVENT_DONE;+ iter->next.node = NULL;+ } else if (node->next) {+ iter->next.ev_type = CMARK_EVENT_ENTER;+ iter->next.node = node->next;+ } else if (node->parent) {+ iter->next.ev_type = CMARK_EVENT_EXIT;+ iter->next.node = node->parent;+ } else {+ assert(false);+ iter->next.ev_type = CMARK_EVENT_DONE;+ iter->next.node = NULL;+ }++ return ev_type;+}++void+cmark_iter_reset(cmark_iter *iter, cmark_node *current,+ cmark_event_type event_type)+{+ iter->next.ev_type = event_type;+ iter->next.node = current;+ cmark_iter_next(iter);+}++cmark_node*+cmark_iter_get_node(cmark_iter *iter)+{+ return iter->cur.node;+}++cmark_event_type+cmark_iter_get_event_type(cmark_iter *iter)+{+ return iter->cur.ev_type;+}++cmark_node*+cmark_iter_get_root(cmark_iter *iter)+{+ return iter->root;+}+++void cmark_consolidate_text_nodes(cmark_node *root)+{+ cmark_iter *iter = cmark_iter_new(root);+ cmark_strbuf buf = GH_BUF_INIT;+ cmark_event_type ev_type;+ cmark_node *cur, *tmp, *next;++ while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ cur = cmark_iter_get_node(iter);+ if (ev_type == CMARK_EVENT_ENTER &&+ cur->type == CMARK_NODE_TEXT &&+ cur->next &&+ cur->next->type == CMARK_NODE_TEXT) {+ cmark_strbuf_clear(&buf);+ cmark_strbuf_puts(&buf, cmark_node_get_literal(cur));+ tmp = cur->next;+ while (tmp && tmp->type == CMARK_NODE_TEXT) {+ cmark_iter_next(iter); // advance pointer+ cmark_strbuf_puts(&buf, cmark_node_get_literal(tmp));+ next = tmp->next;+ cmark_node_free(tmp);+ tmp = next;+ }+ cmark_node_set_literal(cur, (char *)cmark_strbuf_detach(&buf));+ }+ }++ cmark_iter_free(iter);+}
+ cmark/iterator.h view
@@ -0,0 +1,25 @@+#ifndef CMARK_ITERATOR_H+#define CMARK_ITERATOR_H++#ifdef __cplusplus+extern "C" {+#endif++#include "cmark.h"++typedef struct {+ cmark_event_type ev_type;+ cmark_node *node;+} cmark_iter_state;++struct cmark_iter {+ cmark_node *root;+ cmark_iter_state cur;+ cmark_iter_state next;+};++#ifdef __cplusplus+}+#endif++#endif
+ cmark/main.c view
@@ -0,0 +1,166 @@+#include <stdlib.h>+#include <stdio.h>+#include <string.h>+#include <errno.h>+#include "config.h"+#include "cmark.h"+#include "debug.h"+#include "bench.h"++#if defined(_WIN32) && !defined(__CYGWIN__)+#include <io.h>+#include <fcntl.h>+#endif++typedef enum {+ FORMAT_NONE,+ FORMAT_HTML,+ FORMAT_XML,+ FORMAT_MAN,+} writer_format;++void print_usage()+{+ printf("Usage: cmark [FILE*]\n");+ printf("Options:\n");+ printf(" --to, -t FORMAT Specify output format (html, xml, man)\n");+ printf(" --sourcepos Include source position attribute\n");+ printf(" --hardbreaks Treat newlines as hard line breaks\n");+ printf(" --smart Use smart punctuation\n");+ printf(" --normalize Consolidate adjacent text nodes\n");+ printf(" --help, -h Print usage information\n");+ printf(" --version Print version\n");+}++static void print_document(cmark_node *document, writer_format writer,+ int options)+{+ char *result;+ switch (writer) {+ case FORMAT_HTML:+ result = cmark_render_html(document, options);+ break;+ case FORMAT_XML:+ result = cmark_render_xml(document, options);+ break;+ case FORMAT_MAN:+ result = cmark_render_man(document, options);+ break;+ default:+ fprintf(stderr, "Unknown format %d\n", writer);+ exit(1);+ }+ printf("%s", result);+ free(result);+}++int main(int argc, char *argv[])+{+ int i, numfps = 0;+ int *files;+ char buffer[4096];+ cmark_parser *parser;+ size_t bytes;+ cmark_node *document;+ writer_format writer = FORMAT_HTML;+ int options = CMARK_OPT_DEFAULT;++#if defined(_WIN32) && !defined(__CYGWIN__)+ _setmode(_fileno(stdout), _O_BINARY);+#endif++ files = (int *)malloc(argc * sizeof(*files));++ for (i = 1; i < argc; i++) {+ if (strcmp(argv[i], "--version") == 0) {+ printf("cmark %s", CMARK_VERSION_STRING);+ printf(" - CommonMark converter (c) 2014 John MacFarlane\n");+ exit(0);+ } else if (strcmp(argv[i], "--sourcepos") == 0) {+ options |= CMARK_OPT_SOURCEPOS;+ } else if (strcmp(argv[i], "--hardbreaks") == 0) {+ options |= CMARK_OPT_HARDBREAKS;+ } else if (strcmp(argv[i], "--smart") == 0) {+ options |= CMARK_OPT_SMART;+ } else if (strcmp(argv[i], "--normalize") == 0) {+ options |= CMARK_OPT_NORMALIZE;+ } else if ((strcmp(argv[i], "--help") == 0) ||+ (strcmp(argv[i], "-h") == 0)) {+ print_usage();+ exit(0);+ } else if ((strcmp(argv[i], "-t") == 0) ||+ (strcmp(argv[i], "--to") == 0)) {+ i += 1;+ if (i < argc) {+ if (strcmp(argv[i], "man") == 0) {+ writer = FORMAT_MAN;+ } else if (strcmp(argv[i], "html") == 0) {+ writer = FORMAT_HTML;+ } else if (strcmp(argv[i], "xml") == 0) {+ writer = FORMAT_XML;+ } else {+ fprintf(stderr,+ "Unknown format %s\n", argv[i]);+ exit(1);+ }+ } else {+ fprintf(stderr, "No argument provided for %s\n",+ argv[i - 1]);+ exit(1);+ }+ } else if (*argv[i] == '-') {+ print_usage();+ exit(1);+ } else { // treat as file argument+ files[numfps++] = i;+ }+ }++ parser = cmark_parser_new(options);+ for (i = 0; i < numfps; i++) {+ FILE *fp = fopen(argv[files[i]], "r");+ if (fp == NULL) {+ fprintf(stderr, "Error opening file %s: %s\n",+ argv[files[i]], strerror(errno));+ exit(1);+ }++ start_timer();+ while ((bytes = fread(buffer, 1, sizeof(buffer), fp)) > 0) {+ cmark_parser_feed(parser, buffer, bytes);+ if (bytes < sizeof(buffer)) {+ break;+ }+ }+ end_timer("processing lines");++ fclose(fp);+ }++ if (numfps == 0) {++ while ((bytes = fread(buffer, 1, sizeof(buffer), stdin)) > 0) {+ cmark_parser_feed(parser, buffer, bytes);+ if (bytes < sizeof(buffer)) {+ break;+ }+ }+ }++ start_timer();+ document = cmark_parser_finish(parser);+ end_timer("finishing document");+ cmark_parser_free(parser);++ start_timer();+ print_document(document, writer, options);+ end_timer("print_document");++ start_timer();+ cmark_node_free(document);+ end_timer("free_blocks");++ free(files);++ return 0;+}
+ cmark/man.c view
@@ -0,0 +1,284 @@+#include <stdlib.h>+#include <stdio.h>+#include <string.h>+#include <assert.h>++#include "config.h"+#include "cmark.h"+#include "node.h"+#include "buffer.h"+#include "utf8.h"++// Functions to convert cmark_nodes to groff man strings.++static void escape_man(cmark_strbuf *dest, const unsigned char *source, int length)+{+ int32_t c;+ int i = 0;+ int len;+ bool beginLine = true;++ while (i < length) {+ len = utf8proc_iterate(source + i, length - i, &c);+ switch(c) {+ case 46:+ if (beginLine) {+ cmark_strbuf_puts(dest, "\\&.");+ } else {+ utf8proc_encode_char(c, dest);+ }+ break;+ case 39:+ if (beginLine) {+ cmark_strbuf_puts(dest, "\\&'");+ } else {+ utf8proc_encode_char(c, dest);+ }+ break;+ case 45:+ cmark_strbuf_puts(dest, "\\-");+ break;+ case 92:+ cmark_strbuf_puts(dest, "\\e");+ break;+ case 8216: // left single quote+ cmark_strbuf_puts(dest, "\\[oq]");+ break;+ case 8217: // right single quote+ cmark_strbuf_puts(dest, "\\[cq]");+ break;+ case 8220: // left double quote+ cmark_strbuf_puts(dest, "\\[lq]");+ break;+ case 8221: // right double quote+ cmark_strbuf_puts(dest, "\\[rq]");+ break;+ case 8212: // em dash+ cmark_strbuf_puts(dest, "\\[em]");+ break;+ case 8211: // en dash+ cmark_strbuf_puts(dest, "\\[en]");+ break;+ default:+ utf8proc_encode_char(c, dest);+ }+ beginLine = (c == 10);+ i += len;+ }+}++static inline void cr(cmark_strbuf *man)+{+ if (man->size && man->ptr[man->size - 1] != '\n')+ cmark_strbuf_putc(man, '\n');+}++struct render_state {+ cmark_strbuf* man;+ cmark_node *plain;+};++static int+S_render_node(cmark_node *node, cmark_event_type ev_type,+ struct render_state *state)+{+ cmark_node *tmp;+ cmark_strbuf *man = state->man;+ int list_number;+ bool entering = (ev_type == CMARK_EVENT_ENTER);++ if (state->plain == node) { // back at original node+ state->plain = NULL;+ }++ if (state->plain != NULL) {+ switch(node->type) {+ case CMARK_NODE_TEXT:+ case CMARK_NODE_CODE:+ escape_man(man, node->as.literal.data,+ node->as.literal.len);+ break;++ case CMARK_NODE_LINEBREAK:+ case CMARK_NODE_SOFTBREAK:+ cmark_strbuf_putc(man, ' ');+ break;++ default:+ break;+ }+ return 1;+ }++ switch (node->type) {+ case CMARK_NODE_DOCUMENT:+ break;++ case CMARK_NODE_BLOCK_QUOTE:+ if (entering) {+ cr(man);+ cmark_strbuf_puts(man, ".RS");+ cr(man);+ } else {+ cr(man);+ cmark_strbuf_puts(man, ".RE");+ cr(man);+ }+ break;++ case CMARK_NODE_LIST:+ break;++ case CMARK_NODE_ITEM:+ if (entering) {+ cr(man);+ cmark_strbuf_puts(man, ".IP ");+ if (cmark_node_get_list_type(node->parent) ==+ CMARK_BULLET_LIST) {+ cmark_strbuf_puts(man, "\\[bu] 2");+ } else {+ list_number = cmark_node_get_list_start(node->parent);+ tmp = node;+ while (tmp->prev) {+ tmp = tmp->prev;+ list_number += 1;+ }+ cmark_strbuf_printf(man, "\"%d.\" 4", list_number);+ }+ cr(man);+ } else {+ cr(man);+ }+ break;++ case CMARK_NODE_HEADER:+ if (entering) {+ cr(man);+ cmark_strbuf_puts(man,+ cmark_node_get_header_level(node) == 1 ?+ ".SH" : ".SS");+ cr(man);+ } else {+ cr(man);+ }+ break;++ case CMARK_NODE_CODE_BLOCK:+ cr(man);+ cmark_strbuf_puts(man, ".IP\n.nf\n\\f[C]\n");+ escape_man(man, node->as.code.literal.data,+ node->as.code.literal.len);+ cr(man);+ cmark_strbuf_puts(man, "\\f[]\n.fi");+ cr(man);+ break;++ case CMARK_NODE_HTML:+ break;++ case CMARK_NODE_HRULE:+ cr(man);+ cmark_strbuf_puts(man, ".PP\n * * * * *");+ cr(man);+ break;++ case CMARK_NODE_PARAGRAPH:+ if (entering) {+ // no blank line if first paragraph in list:+ if (node->parent &&+ node->parent->type == CMARK_NODE_ITEM &&+ node->prev == NULL) {+ // no blank line or .PP+ } else {+ cr(man);+ cmark_strbuf_puts(man, ".PP\n");+ }+ } else {+ cr(man);+ }+ break;++ case CMARK_NODE_TEXT:+ escape_man(man, node->as.literal.data,+ node->as.literal.len);+ break;++ case CMARK_NODE_LINEBREAK:+ cmark_strbuf_puts(man, ".PD 0\n.P\n.PD");+ cr(man);+ break;++ case CMARK_NODE_SOFTBREAK:+ cmark_strbuf_putc(man, '\n');+ break;++ case CMARK_NODE_CODE:+ cmark_strbuf_puts(man, "\\f[C]");+ escape_man(man, node->as.literal.data, node->as.literal.len);+ cmark_strbuf_puts(man, "\\f[]");+ break;++ case CMARK_NODE_INLINE_HTML:+ break;++ case CMARK_NODE_STRONG:+ if (entering) {+ cmark_strbuf_puts(man, "\\f[B]");+ } else {+ cmark_strbuf_puts(man, "\\f[]");+ }+ break;++ case CMARK_NODE_EMPH:+ if (entering) {+ cmark_strbuf_puts(man, "\\f[I]");+ } else {+ cmark_strbuf_puts(man, "\\f[]");+ }+ break;++ case CMARK_NODE_LINK:+ if (!entering) {+ cmark_strbuf_printf(man, " (%s)",+ cmark_node_get_url(node));+ }+ break;++ case CMARK_NODE_IMAGE:+ if (entering) {+ cmark_strbuf_puts(man, "[IMAGE: ");+ state->plain = node;+ } else {+ cmark_strbuf_puts(man, "]");+ }+ break;++ default:+ assert(false);+ break;+ }++ // cmark_strbuf_putc(man, 'x');+ return 1;+}++char *cmark_render_man(cmark_node *root, int options)+{+ char *result;+ cmark_strbuf man = GH_BUF_INIT;+ struct render_state state = { &man, NULL };+ cmark_node *cur;+ cmark_event_type ev_type;+ cmark_iter *iter = cmark_iter_new(root);++ if (options == 0) options = 0; // avoid warning about unused parameters++ while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ cur = cmark_iter_get_node(iter);+ S_render_node(cur, ev_type, &state);+ }+ result = (char *)cmark_strbuf_detach(&man);++ cmark_iter_free(iter);+ return result;+}
+ cmark/node.c view
@@ -0,0 +1,873 @@+#include <stdlib.h>+#include <string.h>++#include "config.h"+#include "node.h"++static void+S_node_unlink(cmark_node *node);++static inline bool+S_is_block(cmark_node *node)+{+ if (node == NULL) {+ return false;+ }+ return node->type >= CMARK_NODE_FIRST_BLOCK+ && node->type <= CMARK_NODE_LAST_BLOCK;+}++static inline bool+S_is_inline(cmark_node *node)+{+ if (node == NULL) {+ return false;+ }+ return node->type >= CMARK_NODE_FIRST_INLINE+ && node->type <= CMARK_NODE_LAST_INLINE;+}++static bool+S_can_contain(cmark_node *node, cmark_node *child)+{+ cmark_node *cur;++ if (node == NULL || child == NULL) {+ return false;+ }++ // Verify that child is not an ancestor of node or equal to node.+ cur = node;+ do {+ if (cur == child) {+ return false;+ }+ cur = cur->parent;+ } while (cur != NULL);++ if (child->type == CMARK_NODE_DOCUMENT) {+ return false;+ }++ switch (node->type) {+ case CMARK_NODE_DOCUMENT:+ case CMARK_NODE_BLOCK_QUOTE:+ case CMARK_NODE_ITEM:+ return S_is_block(child)+ && child->type != CMARK_NODE_ITEM;++ case CMARK_NODE_LIST:+ return child->type == CMARK_NODE_ITEM;++ case CMARK_NODE_PARAGRAPH:+ case CMARK_NODE_HEADER:+ case CMARK_NODE_EMPH:+ case CMARK_NODE_STRONG:+ case CMARK_NODE_LINK:+ case CMARK_NODE_IMAGE:+ return S_is_inline(child);++ default:+ break;+ }++ return false;+}++cmark_node*+cmark_node_new(cmark_node_type type)+{+ cmark_node *node = (cmark_node *)calloc(1, sizeof(*node));+ node->type = type;++ switch (node->type) {+ case CMARK_NODE_HEADER:+ node->as.header.level = 1;+ break;++ case CMARK_NODE_LIST: {+ cmark_list *list = &node->as.list;+ list->list_type = CMARK_BULLET_LIST;+ list->start = 1;+ list->tight = false;+ break;+ }++ default:+ break;+ }++ return node;+}++// Free a cmark_node list and any children.+static+void S_free_nodes(cmark_node *e)+{+ cmark_node *next;+ while (e != NULL) {+ if (S_is_block(e)) {+ cmark_strbuf_free(&e->string_content);+ }+ switch (e->type) {+ case NODE_CODE_BLOCK:+ cmark_chunk_free(&e->as.code.info);+ cmark_chunk_free(&e->as.code.literal);+ break;+ case NODE_TEXT:+ case NODE_INLINE_HTML:+ case NODE_CODE:+ case NODE_HTML:+ cmark_chunk_free(&e->as.literal);+ break;+ case NODE_LINK:+ case NODE_IMAGE:+ if (e->as.link.url) {+ free(e->as.link.url);+ }+ if (e->as.link.title) {+ free(e->as.link.title);+ }+ break;+ default:+ break;+ }+ if (e->last_child) {+ // Splice children into list+ e->last_child->next = e->next;+ e->next = e->first_child;+ }+ next = e->next;+ free(e);+ e = next;+ }+}++void+cmark_node_free(cmark_node *node)+{+ S_node_unlink(node);+ node->next = NULL;+ S_free_nodes(node);+}++cmark_node_type+cmark_node_get_type(cmark_node *node)+{+ if (node == NULL) {+ return CMARK_NODE_NONE;+ } else {+ return node->type;+ }+}++const char*+cmark_node_get_type_string(cmark_node *node)+{+ if (node == NULL) {+ return "NONE";+ }++ switch (node->type) {+ case CMARK_NODE_NONE:+ return "none";+ case CMARK_NODE_DOCUMENT:+ return "document";+ case CMARK_NODE_BLOCK_QUOTE:+ return "block_quote";+ case CMARK_NODE_LIST:+ return "list";+ case CMARK_NODE_ITEM:+ return "item";+ case CMARK_NODE_CODE_BLOCK:+ return "code_block";+ case CMARK_NODE_HTML:+ return "html";+ case CMARK_NODE_PARAGRAPH:+ return "paragraph";+ case CMARK_NODE_HEADER:+ return "header";+ case CMARK_NODE_HRULE:+ return "hrule";+ case CMARK_NODE_TEXT:+ return "text";+ case CMARK_NODE_SOFTBREAK:+ return "softbreak";+ case CMARK_NODE_LINEBREAK:+ return "linebreak";+ case CMARK_NODE_CODE:+ return "code";+ case CMARK_NODE_INLINE_HTML:+ return "inline_html";+ case CMARK_NODE_EMPH:+ return "emph";+ case CMARK_NODE_STRONG:+ return "strong";+ case CMARK_NODE_LINK:+ return "link";+ case CMARK_NODE_IMAGE:+ return "image";+ }++ return "<unknown>";+}++cmark_node*+cmark_node_next(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->next;+ }+}++cmark_node*+cmark_node_previous(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->prev;+ }+}++cmark_node*+cmark_node_parent(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->parent;+ }+}++cmark_node*+cmark_node_first_child(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->first_child;+ }+}++cmark_node*+cmark_node_last_child(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->last_child;+ }+}++void*+cmark_node_get_user_data(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ } else {+ return node->user_data;+ }+}++int+cmark_node_set_user_data(cmark_node *node, void *user_data)+{+ if (node == NULL) {+ return 0;+ }+ node->user_data = user_data;+ return 1;+}++static char*+S_strdup(const char *str)+{+ size_t size = strlen(str) + 1;+ char *dup = (char *)malloc(size);+ memcpy(dup, str, size);+ return dup;+}++const char*+cmark_node_get_literal(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ }++ switch (node->type) {+ case NODE_HTML:+ case NODE_TEXT:+ case NODE_INLINE_HTML:+ case NODE_CODE:+ return cmark_chunk_to_cstr(&node->as.literal);++ case NODE_CODE_BLOCK:+ return cmark_chunk_to_cstr(&node->as.code.literal);++ default:+ break;+ }++ return NULL;+}++int+cmark_node_set_literal(cmark_node *node, const char *content)+{+ if (node == NULL) {+ return 0;+ }++ switch (node->type) {+ case NODE_HTML:+ case NODE_TEXT:+ case NODE_INLINE_HTML:+ case NODE_CODE:+ cmark_chunk_set_cstr(&node->as.literal, content);+ return 1;++ case NODE_CODE_BLOCK:+ cmark_chunk_set_cstr(&node->as.code.literal, content);+ return 1;++ default:+ break;+ }++ return 0;+}++int+cmark_node_get_header_level(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }++ switch (node->type) {+ case CMARK_NODE_HEADER:+ return node->as.header.level;++ default:+ break;+ }++ return 0;+}++int+cmark_node_set_header_level(cmark_node *node, int level)+{+ if (node == NULL || level < 1 || level > 6) {+ return 0;+ }++ switch (node->type) {+ case CMARK_NODE_HEADER:+ node->as.header.level = level;+ return 1;++ default:+ break;+ }++ return 0;+}++cmark_list_type+cmark_node_get_list_type(cmark_node *node)+{+ if (node == NULL) {+ return CMARK_NO_LIST;+ }++ if (node->type == CMARK_NODE_LIST) {+ return node->as.list.list_type;+ } else {+ return CMARK_NO_LIST;+ }+}++int+cmark_node_set_list_type(cmark_node *node, cmark_list_type type)+{+ if (!(type == CMARK_BULLET_LIST || type == CMARK_ORDERED_LIST)) {+ return 0;+ }++ if (node == NULL) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ node->as.list.list_type = type;+ return 1;+ } else {+ return 0;+ }+}++cmark_delim_type+cmark_node_get_list_delim(cmark_node *node)+{+ if (node == NULL) {+ return CMARK_NO_DELIM;+ }++ if (node->type == CMARK_NODE_LIST) {+ return node->as.list.delimiter;+ } else {+ return CMARK_NO_DELIM;+ }+}++int+cmark_node_set_list_delim(cmark_node *node, cmark_delim_type delim)+{+ if (!(delim == CMARK_PERIOD_DELIM || delim == CMARK_PAREN_DELIM)) {+ return 0;+ }++ if (node == NULL) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ node->as.list.delimiter = delim;+ return 1;+ } else {+ return 0;+ }+}++int+cmark_node_get_list_start(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ return node->as.list.start;+ } else {+ return 0;+ }+}++int+cmark_node_set_list_start(cmark_node *node, int start)+{+ if (node == NULL || start < 0) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ node->as.list.start = start;+ return 1;+ } else {+ return 0;+ }+}++int+cmark_node_get_list_tight(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ return node->as.list.tight;+ } else {+ return 0;+ }+}++int+cmark_node_set_list_tight(cmark_node *node, int tight)+{+ if (node == NULL) {+ return 0;+ }++ if (node->type == CMARK_NODE_LIST) {+ node->as.list.tight = tight;+ return 1;+ } else {+ return 0;+ }+}++const char*+cmark_node_get_fence_info(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ }++ if (node->type == NODE_CODE_BLOCK) {+ return cmark_chunk_to_cstr(&node->as.code.info);+ } else {+ return NULL;+ }+}++int+cmark_node_set_fence_info(cmark_node *node, const char *info)+{+ if (node == NULL) {+ return 0;+ }++ if (node->type == NODE_CODE_BLOCK) {+ cmark_chunk_set_cstr(&node->as.code.info, info);+ return 1;+ } else {+ return 0;+ }+}++const char*+cmark_node_get_url(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ }++ switch (node->type) {+ case NODE_LINK:+ case NODE_IMAGE:+ return (char *)node->as.link.url;+ default:+ break;+ }++ return NULL;+}++int+cmark_node_set_url(cmark_node *node, const char *url)+{+ if (node == NULL) {+ return 0;+ }++ switch (node->type) {+ case NODE_LINK:+ case NODE_IMAGE:+ free(node->as.link.url);+ node->as.link.url = (unsigned char *)S_strdup(url);+ return 1;+ default:+ break;+ }++ return 0;+}++const char*+cmark_node_get_title(cmark_node *node)+{+ if (node == NULL) {+ return NULL;+ }++ switch (node->type) {+ case NODE_LINK:+ case NODE_IMAGE:+ return (char *)node->as.link.title;+ default:+ break;+ }++ return NULL;+}++int+cmark_node_set_title(cmark_node *node, const char *title)+{+ if (node == NULL) {+ return 0;+ }++ switch (node->type) {+ case NODE_LINK:+ case NODE_IMAGE:+ free(node->as.link.title);+ node->as.link.title = (unsigned char *)S_strdup(title);+ return 1;+ default:+ break;+ }++ return 0;+}++int+cmark_node_get_start_line(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }+ return node->start_line;+}++int+cmark_node_get_start_column(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }+ return node->start_column;+}++int+cmark_node_get_end_line(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }+ return node->end_line;+}++int+cmark_node_get_end_column(cmark_node *node)+{+ if (node == NULL) {+ return 0;+ }+ return node->end_column;+}++// Unlink a node without adjusting its next, prev, and parent pointers.+static void+S_node_unlink(cmark_node *node)+{+ if (node == NULL) {+ return;+ }++ if (node->prev) {+ node->prev->next = node->next;+ }+ if (node->next) {+ node->next->prev = node->prev;+ }++ // Adjust first_child and last_child of parent.+ cmark_node *parent = node->parent;+ if (parent) {+ if (parent->first_child == node) {+ parent->first_child = node->next;+ }+ if (parent->last_child == node) {+ parent->last_child = node->prev;+ }+ }+}++void+cmark_node_unlink(cmark_node *node)+{+ S_node_unlink(node);++ node->next = NULL;+ node->prev = NULL;+ node->parent = NULL;++}++int+cmark_node_insert_before(cmark_node *node, cmark_node *sibling)+{+ if (node == NULL || sibling == NULL) {+ return 0;+ }++ if (!node->parent || !S_can_contain(node->parent, sibling)) {+ return 0;+ }++ S_node_unlink(sibling);++ cmark_node *old_prev = node->prev;++ // Insert 'sibling' between 'old_prev' and 'node'.+ if (old_prev) {+ old_prev->next = sibling;+ }+ sibling->prev = old_prev;+ sibling->next = node;+ node->prev = sibling;++ // Set new parent.+ cmark_node *parent = node->parent;+ sibling->parent = parent;++ // Adjust first_child of parent if inserted as first child.+ if (parent && !old_prev) {+ parent->first_child = sibling;+ }++ return 1;+}++int+cmark_node_insert_after(cmark_node *node, cmark_node *sibling)+{+ if (node == NULL || sibling == NULL) {+ return 0;+ }++ if (!node->parent || !S_can_contain(node->parent, sibling)) {+ return 0;+ }++ S_node_unlink(sibling);++ cmark_node *old_next = node->next;++ // Insert 'sibling' between 'node' and 'old_next'.+ if (old_next) {+ old_next->prev = sibling;+ }+ sibling->next = old_next;+ sibling->prev = node;+ node->next = sibling;++ // Set new parent.+ cmark_node *parent = node->parent;+ sibling->parent = parent;++ // Adjust last_child of parent if inserted as last child.+ if (parent && !old_next) {+ parent->last_child = sibling;+ }++ return 1;+}++int+cmark_node_prepend_child(cmark_node *node, cmark_node *child)+{+ if (!S_can_contain(node, child)) {+ return 0;+ }++ S_node_unlink(child);++ cmark_node *old_first_child = node->first_child;++ child->next = old_first_child;+ child->prev = NULL;+ child->parent = node;+ node->first_child = child;++ if (old_first_child) {+ old_first_child->prev = child;+ } else {+ // Also set last_child if node previously had no children.+ node->last_child = child;+ }++ return 1;+}++int+cmark_node_append_child(cmark_node *node, cmark_node *child)+{+ if (!S_can_contain(node, child)) {+ return 0;+ }++ S_node_unlink(child);++ cmark_node *old_last_child = node->last_child;++ child->next = NULL;+ child->prev = old_last_child;+ child->parent = node;+ node->last_child = child;++ if (old_last_child) {+ old_last_child->next = child;+ } else {+ // Also set first_child if node previously had no children.+ node->first_child = child;+ }++ return 1;+}++static void+S_print_error(FILE *out, cmark_node *node, const char *elem)+{+ if (out == NULL) {+ return;+ }+ fprintf(out, "Invalid '%s' in node type %s at %d:%d\n", elem,+ cmark_node_get_type_string(node), node->start_line,+ node->start_column);+}++int+cmark_node_check(cmark_node *node, FILE *out)+{+ cmark_node *cur;+ int errors = 0;++ if (!node) {+ return 0;+ }++ cur = node;+ while (true) {+ if (cur->first_child) {+ if (cur->first_child->prev != NULL) {+ S_print_error(out, cur->first_child, "prev");+ cur->first_child->prev = NULL;+ ++errors;+ }+ if (cur->first_child->parent != cur) {+ S_print_error(out, cur->first_child, "parent");+ cur->first_child->parent = cur;+ ++errors;+ }+ cur = cur->first_child;+ continue;+ }++next_sibling:+ if (cur == node) {+ break;+ }+ if (cur->next) {+ if (cur->next->prev != cur) {+ S_print_error(out, cur->next, "prev");+ cur->next->prev = cur;+ ++errors;+ }+ if (cur->next->parent != cur->parent) {+ S_print_error(out, cur->next, "parent");+ cur->next->parent = cur->parent;+ ++errors;+ }+ cur = cur->next;+ continue;+ }++ if (cur->parent->last_child != cur) {+ S_print_error(out, cur->parent, "last_child");+ cur->parent->last_child = cur;+ ++errors;+ }+ cur = cur->parent;+ goto next_sibling;+ }++ return errors;+}
+ cmark/node.h view
@@ -0,0 +1,82 @@+#ifndef CMARK_NODE_H+#define CMARK_NODE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdio.h>+#include <stdint.h>++#include "cmark.h"+#include "buffer.h"+#include "chunk.h"++typedef struct {+ cmark_list_type list_type;+ int marker_offset;+ int padding;+ int start;+ cmark_delim_type delimiter;+ unsigned char bullet_char;+ bool tight;+} cmark_list;++typedef struct {+ cmark_chunk info;+ cmark_chunk literal;+ int fence_length;+ /* fence_offset must be 0-3, so we can use int8_t */+ int8_t fence_offset;+ unsigned char fence_char;+ bool fenced;+} cmark_code;++typedef struct {+ int level;+ bool setext;+} cmark_header;++typedef struct {+ unsigned char *url;+ unsigned char *title;+} cmark_link;++struct cmark_node {+ struct cmark_node *next;+ struct cmark_node *prev;+ struct cmark_node *parent;+ struct cmark_node *first_child;+ struct cmark_node *last_child;++ void *user_data;++ int start_line;+ int start_column;+ int end_line;+ int end_column;++ cmark_node_type type;++ bool open;+ bool last_line_blank;++ cmark_strbuf string_content;++ union {+ cmark_chunk literal;+ cmark_list list;+ cmark_code code;+ cmark_header header;+ cmark_link link;+ } as;+};++CMARK_EXPORT int+cmark_node_check(cmark_node *node, FILE *out);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/parser.h view
@@ -0,0 +1,29 @@+#ifndef CMARK_AST_H+#define CMARK_AST_H++#include <stdio.h>+#include "node.h"+#include "buffer.h"++#ifdef __cplusplus+extern "C" {+#endif++#define MAX_LINK_LABEL_LENGTH 1000++struct cmark_parser {+ struct cmark_reference_map *refmap;+ struct cmark_node* root;+ struct cmark_node* current;+ int line_number;+ cmark_strbuf *curline;+ int last_line_length;+ cmark_strbuf *linebuf;+ int options;+};++#ifdef __cplusplus+}+#endif++#endif
+ cmark/references.c view
@@ -0,0 +1,154 @@+#include "cmark.h"+#include "utf8.h"+#include "parser.h"+#include "references.h"+#include "inlines.h"+#include "chunk.h"++static unsigned int+refhash(const unsigned char *link_ref)+{+ unsigned int hash = 0;++ while (*link_ref)+ hash = (*link_ref++) + (hash << 6) + (hash << 16) - hash;++ return hash;+}++static void reference_free(cmark_reference *ref)+{+ if(ref != NULL) {+ free(ref->label);+ free(ref->url);+ free(ref->title);+ free(ref);+ }+}++// normalize reference: collapse internal whitespace to single space,+// remove leading/trailing whitespace, case fold+// Return NULL if the reference name is actually empty (i.e. composed+// solely from whitespace)+static unsigned char *normalize_reference(cmark_chunk *ref)+{+ cmark_strbuf normalized = GH_BUF_INIT;+ unsigned char *result;++ if(ref == NULL)+ return NULL;++ if (ref->len == 0)+ return NULL;++ utf8proc_case_fold(&normalized, ref->data, ref->len);+ cmark_strbuf_trim(&normalized);+ cmark_strbuf_normalize_whitespace(&normalized);++ result = cmark_strbuf_detach(&normalized);+ assert(result);++ if (result[0] == '\0') {+ free(result);+ return NULL;+ }++ return result;+}++static void add_reference(cmark_reference_map *map, cmark_reference* ref)+{+ cmark_reference *t = ref->next = map->table[ref->hash % REFMAP_SIZE];++ while (t) {+ if (t->hash == ref->hash &&+ !strcmp((char *)t->label, (char *)ref->label)) {+ reference_free(ref);+ return;+ }++ t = t->next;+ }++ map->table[ref->hash % REFMAP_SIZE] = ref;+}++void cmark_reference_create(cmark_reference_map *map, cmark_chunk *label, cmark_chunk *url,+ cmark_chunk *title)+{+ cmark_reference *ref;+ unsigned char *reflabel = normalize_reference(label);++ /* empty reference name, or composed from only whitespace */+ if (reflabel == NULL)+ return;++ ref = (cmark_reference *)calloc(1, sizeof(*ref));+ if(ref != NULL) {+ ref->label = reflabel;+ ref->hash = refhash(ref->label);+ ref->url = cmark_clean_url(url);+ ref->title = cmark_clean_title(title);+ ref->next = NULL;++ add_reference(map, ref);+ }+}++// Returns reference if refmap contains a reference with matching+// label, otherwise NULL.+cmark_reference* cmark_reference_lookup(cmark_reference_map *map, cmark_chunk *label)+{+ cmark_reference *ref = NULL;+ unsigned char *norm;+ unsigned int hash;++ if (label->len > MAX_LINK_LABEL_LENGTH)+ return NULL;++ if (map == NULL)+ return NULL;++ norm = normalize_reference(label);+ if (norm == NULL)+ return NULL;++ hash = refhash(norm);+ ref = map->table[hash % REFMAP_SIZE];++ while (ref) {+ if (ref->hash == hash &&+ !strcmp((char *)ref->label, (char *)norm))+ break;+ ref = ref->next;+ }++ free(norm);+ return ref;+}++void cmark_reference_map_free(cmark_reference_map *map)+{+ unsigned int i;++ if(map == NULL)+ return;++ for (i = 0; i < REFMAP_SIZE; ++i) {+ cmark_reference *ref = map->table[i];+ cmark_reference *next;++ while (ref) {+ next = ref->next;+ reference_free(ref);+ ref = next;+ }+ }++ free(map);+}++cmark_reference_map *cmark_reference_map_new(void)+{+ return (cmark_reference_map *)calloc(1, sizeof(cmark_reference_map));+}
+ cmark/references.h view
@@ -0,0 +1,37 @@+#ifndef CMARK_REFERENCES_H+#define CMARK_REFERENCES_H++#include "chunk.h"++#ifdef __cplusplus+extern "C" {+#endif++#define REFMAP_SIZE 16++struct cmark_reference {+ struct cmark_reference *next;+ unsigned char *label;+ unsigned char *url;+ unsigned char *title;+ unsigned int hash;+};++typedef struct cmark_reference cmark_reference;++struct cmark_reference_map {+ cmark_reference *table[REFMAP_SIZE];+};++typedef struct cmark_reference_map cmark_reference_map;++cmark_reference_map *cmark_reference_map_new(void);+void cmark_reference_map_free(cmark_reference_map *map);+cmark_reference* cmark_reference_lookup(cmark_reference_map *map, cmark_chunk *label);+extern void cmark_reference_create(cmark_reference_map *map, cmark_chunk *label, cmark_chunk *url, cmark_chunk *title);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/scanners.c view
@@ -0,0 +1,12392 @@+/* Generated by re2c 0.13.6 */+#include <stdlib.h>+#include "chunk.h"+#include "scanners.h"++int _scan_at(int (*scanner)(const unsigned char *), cmark_chunk *c, int offset)+{+ int res;+ unsigned char *ptr = (unsigned char *)c->data;+ unsigned char lim = ptr[c->len];++ ptr[c->len] = '\0';+ res = scanner(ptr + offset);+ ptr[c->len] = lim;++ return res;+}++++// Try to match URI autolink after first <, returning number of chars matched.+int _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, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + };++ yych = *p;+ switch (yych) {+ case '\n': goto yy2;+ case 'A':+ case 'a': goto yy6;+ case 'B':+ case 'b': goto yy24;+ case 'C':+ case 'c': goto yy3;+ case 'D':+ case 'd': goto yy4;+ case 'E':+ case 'e': goto yy25;+ case 'F':+ case 'f': goto yy7;+ case 'G':+ case 'g': goto yy8;+ case 'H':+ case 'h': goto yy9;+ case 'I':+ case 'i': goto yy10;+ case 'J':+ case 'j': goto yy5;+ case 'K':+ case 'k': goto yy26;+ case 'L':+ case 'l': goto yy11;+ case 'M':+ case 'm': goto yy12;+ case 'N':+ case 'n': goto yy13;+ case 'O':+ case 'o': goto yy14;+ case 'P':+ case 'p': goto yy15;+ case 'Q':+ case 'q': goto yy27;+ case 'R':+ case 'r': goto yy16;+ case 'S':+ case 's': goto yy17;+ case 'T':+ case 't': goto yy18;+ case 'U':+ case 'u': goto yy19;+ case 'V':+ case 'v': goto yy20;+ case 'W':+ case 'w': goto yy21;+ case 'X':+ case 'x': goto yy22;+ case 'Y':+ case 'y': goto yy28;+ case 'Z':+ case 'z': goto yy23;+ default: goto yy29;+ }+yy2:+ { return 0; }+yy3:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy442;+ case 'H':+ case 'h': goto yy441;+ case 'I':+ case 'i': goto yy444;+ case 'O':+ case 'o': goto yy440;+ case 'R':+ case 'r': goto yy443;+ case 'V':+ case 'v': goto yy439;+ default: goto yy2;+ }+yy4:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy415;+ case 'I':+ case 'i': goto yy414;+ case 'L':+ case 'l': goto yy412;+ case 'N':+ case 'n': goto yy413;+ case 'O':+ case 'o': goto yy416;+ case 'T':+ case 't': goto yy411;+ case 'V':+ case 'v': goto yy410;+ default: goto yy2;+ }+yy5:+ yych = *(marker = ++p);+ if (yych <= 'M') {+ if (yych == 'A') goto yy402;+ if (yych <= 'L') goto yy2;+ goto yy401;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy2;+ goto yy402;+ } else {+ if (yych == 'm') goto yy401;+ goto yy2;+ }+ }+yy6:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy383;+ case 'B':+ case 'b': goto yy382;+ case 'C':+ case 'c': goto yy381;+ case 'D':+ case 'd': goto yy380;+ case 'F':+ case 'f': goto yy379;+ case 'I':+ case 'i': goto yy378;+ case 'P':+ case 'p': goto yy377;+ case 'T':+ case 't': goto yy376;+ case 'W':+ case 'w': goto yy34;+ default: goto yy2;+ }+yy7:+ yych = *(marker = ++p);+ if (yych <= 'T') {+ if (yych <= 'E') {+ if (yych == 'A') goto yy363;+ if (yych <= 'D') goto yy2;+ goto yy362;+ } else {+ if (yych == 'I') goto yy361;+ if (yych <= 'S') goto yy2;+ goto yy364;+ }+ } else {+ if (yych <= 'e') {+ if (yych == 'a') goto yy363;+ if (yych <= 'd') goto yy2;+ goto yy362;+ } else {+ if (yych <= 'i') {+ if (yych <= 'h') goto yy2;+ goto yy361;+ } else {+ if (yych == 't') goto yy364;+ goto yy2;+ }+ }+ }+yy8:+ yych = *(marker = ++p);+ switch (yych) {+ case 'E':+ case 'e': goto yy346;+ case 'G':+ case 'g': goto yy34;+ case 'I':+ case 'i': goto yy344;+ case 'O':+ case 'o': goto yy345;+ case 'T':+ case 't': goto yy343;+ default: goto yy2;+ }+yy9:+ yych = *(marker = ++p);+ if (yych <= 'S') {+ if (yych <= '3') {+ if (yych <= '2') goto yy2;+ goto yy339;+ } else {+ if (yych == 'C') goto yy337;+ goto yy2;+ }+ } else {+ if (yych <= 'c') {+ if (yych <= 'T') goto yy338;+ if (yych <= 'b') goto yy2;+ goto yy337;+ } else {+ if (yych == 't') goto yy338;+ goto yy2;+ }+ }+yy10:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy319;+ case 'C':+ case 'c': goto yy316;+ case 'M':+ case 'm': goto yy318;+ case 'N':+ case 'n': goto yy317;+ case 'P':+ case 'p': goto yy315;+ case 'R':+ case 'r': goto yy314;+ case 'T':+ case 't': goto yy313;+ default: goto yy2;+ }+yy11:+ yych = *(marker = ++p);+ if (yych <= 'D') {+ if (yych == 'A') goto yy307;+ if (yych <= 'C') goto yy2;+ goto yy306;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy2;+ goto yy307;+ } else {+ if (yych == 'd') goto yy306;+ goto yy2;+ }+ }+yy12:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy273;+ case 'E':+ case 'e': goto yy272;+ case 'I':+ case 'i': goto yy275;+ case 'M':+ case 'm': goto yy271;+ case 'S':+ case 's': goto yy270;+ case 'T':+ case 't': goto yy274;+ case 'U':+ case 'u': goto yy269;+ case 'V':+ case 'v': goto yy268;+ default: goto yy2;+ }+yy13:+ yych = *(marker = ++p);+ switch (yych) {+ case 'E':+ case 'e': goto yy263;+ case 'F':+ case 'f': goto yy262;+ case 'I':+ case 'i': goto yy261;+ case 'N':+ case 'n': goto yy260;+ case 'O':+ case 'o': goto yy259;+ default: goto yy2;+ }+yy14:+ yych = *(marker = ++p);+ if (yych <= 'P') {+ if (yych == 'I') goto yy245;+ if (yych <= 'O') goto yy2;+ goto yy246;+ } else {+ if (yych <= 'i') {+ if (yych <= 'h') goto yy2;+ goto yy245;+ } else {+ if (yych == 'p') goto yy246;+ goto yy2;+ }+ }+yy15:+ yych = *(marker = ++p);+ if (yych <= 'S') {+ if (yych <= 'L') {+ if (yych == 'A') goto yy227;+ if (yych <= 'K') goto yy2;+ goto yy226;+ } else {+ if (yych <= 'O') {+ if (yych <= 'N') goto yy2;+ goto yy228;+ } else {+ if (yych <= 'Q') goto yy2;+ if (yych <= 'R') goto yy225;+ goto yy224;+ }+ }+ } else {+ if (yych <= 'n') {+ if (yych <= 'a') {+ if (yych <= '`') goto yy2;+ goto yy227;+ } else {+ if (yych == 'l') goto yy226;+ goto yy2;+ }+ } else {+ if (yych <= 'q') {+ if (yych <= 'o') goto yy228;+ goto yy2;+ } else {+ if (yych <= 'r') goto yy225;+ if (yych <= 's') goto yy224;+ goto yy2;+ }+ }+ }+yy16:+ yych = *(marker = ++p);+ if (yych <= 'T') {+ if (yych <= 'L') {+ if (yych == 'E') goto yy214;+ goto yy2;+ } else {+ if (yych <= 'M') goto yy213;+ if (yych <= 'R') goto yy2;+ if (yych <= 'S') goto yy212;+ goto yy211;+ }+ } else {+ if (yych <= 'm') {+ if (yych == 'e') goto yy214;+ if (yych <= 'l') goto yy2;+ goto yy213;+ } else {+ if (yych <= 'r') goto yy2;+ if (yych <= 's') goto yy212;+ if (yych <= 't') goto yy211;+ goto yy2;+ }+ }+yy17:+ yych = *(marker = ++p);+ switch (yych) {+ case 'E':+ case 'e': goto yy167;+ case 'F':+ case 'f': goto yy166;+ case 'G':+ case 'g': goto yy165;+ case 'H':+ case 'h': goto yy170;+ case 'I':+ case 'i': goto yy169;+ case 'K':+ case 'k': goto yy164;+ case 'M':+ case 'm': goto yy163;+ case 'N':+ case 'n': goto yy168;+ case 'O':+ case 'o': goto yy162;+ case 'P':+ case 'p': goto yy161;+ case 'S':+ case 's': goto yy160;+ case 'T':+ case 't': goto yy159;+ case 'V':+ case 'v': goto yy158;+ default: goto yy2;+ }+yy18:+ yych = *(marker = ++p);+ switch (yych) {+ case 'A':+ case 'a': goto yy134;+ case 'E':+ case 'e': goto yy130;+ case 'F':+ case 'f': goto yy133;+ case 'H':+ case 'h': goto yy129;+ case 'I':+ case 'i': goto yy131;+ case 'N':+ case 'n': goto yy132;+ case 'V':+ case 'v': goto yy34;+ default: goto yy2;+ }+yy19:+ yych = *(marker = ++p);+ if (yych <= 'T') {+ if (yych <= 'N') {+ if (yych == 'D') goto yy121;+ if (yych <= 'M') goto yy2;+ goto yy120;+ } else {+ if (yych == 'R') goto yy122;+ if (yych <= 'S') goto yy2;+ goto yy119;+ }+ } else {+ if (yych <= 'n') {+ if (yych == 'd') goto yy121;+ if (yych <= 'm') goto yy2;+ goto yy120;+ } else {+ if (yych <= 'r') {+ if (yych <= 'q') goto yy2;+ goto yy122;+ } else {+ if (yych == 't') goto yy119;+ goto yy2;+ }+ }+ }+yy20:+ yych = *(marker = ++p);+ if (yych <= 'I') {+ if (yych == 'E') goto yy103;+ if (yych <= 'H') goto yy2;+ goto yy102;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy2;+ goto yy103;+ } else {+ if (yych == 'i') goto yy102;+ goto yy2;+ }+ }+yy21:+ yych = *(marker = ++p);+ if (yych <= 'Y') {+ if (yych <= 'R') {+ if (yych == 'E') goto yy92;+ goto yy2;+ } else {+ if (yych <= 'S') goto yy93;+ if (yych <= 'T') goto yy91;+ if (yych <= 'X') goto yy2;+ goto yy90;+ }+ } else {+ if (yych <= 's') {+ if (yych == 'e') goto yy92;+ if (yych <= 'r') goto yy2;+ goto yy93;+ } else {+ if (yych <= 't') goto yy91;+ if (yych == 'y') goto yy90;+ goto yy2;+ }+ }+yy22:+ yych = *(marker = ++p);+ if (yych <= 'R') {+ if (yych <= 'F') {+ if (yych == 'C') goto yy69;+ if (yych <= 'E') goto yy2;+ goto yy67;+ } else {+ if (yych == 'M') goto yy68;+ if (yych <= 'Q') goto yy2;+ goto yy66;+ }+ } else {+ if (yych <= 'f') {+ if (yych == 'c') goto yy69;+ if (yych <= 'e') goto yy2;+ goto yy67;+ } else {+ if (yych <= 'm') {+ if (yych <= 'l') goto yy2;+ goto yy68;+ } else {+ if (yych == 'r') goto yy66;+ goto yy2;+ }+ }+ }+yy23:+ yych = *(marker = ++p);+ if (yych == '3') goto yy61;+ goto yy2;+yy24:+ yych = *(marker = ++p);+ if (yych <= 'O') {+ if (yych <= 'H') {+ if (yych == 'E') goto yy51;+ goto yy2;+ } else {+ if (yych <= 'I') goto yy50;+ if (yych <= 'N') goto yy2;+ goto yy49;+ }+ } else {+ if (yych <= 'h') {+ if (yych == 'e') goto yy51;+ goto yy2;+ } else {+ if (yych <= 'i') goto yy50;+ if (yych == 'o') goto yy49;+ goto yy2;+ }+ }+yy25:+ yych = *(marker = ++p);+ if (yych == 'D') goto yy47;+ if (yych == 'd') goto yy47;+ goto yy2;+yy26:+ yych = *(marker = ++p);+ if (yych == 'E') goto yy42;+ if (yych == 'e') goto yy42;+ goto yy2;+yy27:+ yych = *(marker = ++p);+ if (yych == 'U') goto yy39;+ if (yych == 'u') goto yy39;+ goto yy2;+yy28:+ yych = *(marker = ++p);+ if (yych == 'M') goto yy30;+ if (yych == 'm') goto yy30;+ goto yy2;+yy29:+ yych = *++p;+ goto yy2;+yy30:+ yych = *++p;+ if (yych == 'S') goto yy32;+ if (yych == 's') goto yy32;+yy31:+ p = marker;+ goto yy2;+yy32:+ yych = *++p;+ if (yych == 'G') goto yy33;+ if (yych != 'g') goto yy31;+yy33:+ yych = *++p;+ if (yych == 'R') goto yy34;+ if (yych != 'r') goto yy31;+yy34:+ yych = *++p;+ if (yych != ':') goto yy31;+yy35:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy35;+ }+ if (yych <= '=') goto yy31;+ ++p;+ { return (p - start); }+yy39:+ yych = *++p;+ if (yych == 'E') goto yy40;+ if (yych != 'e') goto yy31;+yy40:+ yych = *++p;+ if (yych == 'R') goto yy41;+ if (yych != 'r') goto yy31;+yy41:+ yych = *++p;+ if (yych == 'Y') goto yy34;+ if (yych == 'y') goto yy34;+ goto yy31;+yy42:+ yych = *++p;+ if (yych == 'Y') goto yy43;+ if (yych != 'y') goto yy31;+yy43:+ yych = *++p;+ if (yych == 'P') goto yy44;+ if (yych != 'p') goto yy31;+yy44:+ yych = *++p;+ if (yych == 'A') goto yy45;+ if (yych != 'a') goto yy31;+yy45:+ yych = *++p;+ if (yych == 'R') goto yy46;+ if (yych != 'r') goto yy31;+yy46:+ yych = *++p;+ if (yych == 'C') goto yy34;+ if (yych == 'c') goto yy34;+ goto yy31;+yy47:+ yych = *++p;+ if (yych != '2') goto yy31;+ yych = *++p;+ if (yych == 'K') goto yy34;+ if (yych == 'k') goto yy34;+ goto yy31;+yy49:+ yych = *++p;+ if (yych == 'L') goto yy60;+ if (yych == 'l') goto yy60;+ goto yy31;+yy50:+ yych = *++p;+ if (yych == 'T') goto yy56;+ if (yych == 't') goto yy56;+ goto yy31;+yy51:+ yych = *++p;+ if (yych == 'S') goto yy52;+ if (yych != 's') goto yy31;+yy52:+ yych = *++p;+ if (yych == 'H') goto yy53;+ if (yych != 'h') goto yy31;+yy53:+ yych = *++p;+ if (yych == 'A') goto yy54;+ if (yych != 'a') goto yy31;+yy54:+ yych = *++p;+ if (yych == 'R') goto yy55;+ if (yych != 'r') goto yy31;+yy55:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy56:+ yych = *++p;+ if (yych == 'C') goto yy57;+ if (yych != 'c') goto yy31;+yy57:+ yych = *++p;+ if (yych == 'O') goto yy58;+ if (yych != 'o') goto yy31;+yy58:+ yych = *++p;+ if (yych == 'I') goto yy59;+ if (yych != 'i') goto yy31;+yy59:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy60:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy61:+ yych = *++p;+ if (yych != '9') goto yy31;+ yych = *++p;+ if (yych != '.') goto yy31;+ yych = *++p;+ if (yych != '5') goto yy31;+ yych = *++p;+ if (yych != '0') goto yy31;+ yych = *++p;+ if (yych <= 'Q') goto yy31;+ if (yych <= 'S') goto yy34;+ if (yych <= 'q') goto yy31;+ if (yych <= 's') goto yy34;+ goto yy31;+yy66:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy67:+ yych = *++p;+ if (yych == 'I') goto yy88;+ if (yych == 'i') goto yy88;+ goto yy31;+yy68:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'L') goto yy78;+ if (yych <= 'O') goto yy31;+ goto yy79;+ } else {+ if (yych <= 'l') {+ if (yych <= 'k') goto yy31;+ goto yy78;+ } else {+ if (yych == 'p') goto yy79;+ goto yy31;+ }+ }+yy69:+ yych = *++p;+ if (yych == 'O') goto yy70;+ if (yych != 'o') goto yy31;+yy70:+ yych = *++p;+ if (yych == 'N') goto yy71;+ if (yych != 'n') goto yy31;+yy71:+ yych = *++p;+ if (yych == '-') goto yy72;+ if (yych == ':') goto yy35;+ goto yy31;+yy72:+ yych = *++p;+ if (yych == 'U') goto yy73;+ if (yych != 'u') goto yy31;+yy73:+ yych = *++p;+ if (yych == 'S') goto yy74;+ if (yych != 's') goto yy31;+yy74:+ yych = *++p;+ if (yych == 'E') goto yy75;+ if (yych != 'e') goto yy31;+yy75:+ yych = *++p;+ if (yych == 'R') goto yy76;+ if (yych != 'r') goto yy31;+yy76:+ yych = *++p;+ if (yych == 'I') goto yy77;+ if (yych != 'i') goto yy31;+yy77:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy78:+ yych = *++p;+ if (yych == 'R') goto yy80;+ if (yych == 'r') goto yy80;+ goto yy31;+yy79:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy80:+ yych = *++p;+ if (yych == 'P') goto yy81;+ if (yych != 'p') goto yy31;+yy81:+ yych = *++p;+ if (yych == 'C') goto yy82;+ if (yych != 'c') goto yy31;+yy82:+ yych = *++p;+ if (yych != '.') goto yy31;+ yych = *++p;+ if (yych == 'B') goto yy84;+ if (yych != 'b') goto yy31;+yy84:+ yych = *++p;+ if (yych == 'E') goto yy85;+ if (yych != 'e') goto yy31;+yy85:+ yych = *++p;+ if (yych == 'E') goto yy86;+ if (yych != 'e') goto yy31;+yy86:+ yych = *++p;+ if (yych == 'P') goto yy87;+ if (yych != 'p') goto yy31;+yy87:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy88:+ yych = *++p;+ if (yych == 'R') goto yy89;+ if (yych != 'r') goto yy31;+yy89:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy90:+ yych = *++p;+ if (yych == 'C') goto yy98;+ if (yych == 'c') goto yy98;+ goto yy31;+yy91:+ yych = *++p;+ if (yych == 'A') goto yy97;+ if (yych == 'a') goto yy97;+ goto yy31;+yy92:+ yych = *++p;+ if (yych == 'B') goto yy94;+ if (yych == 'b') goto yy94;+ goto yy31;+yy93:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy94:+ yych = *++p;+ if (yych == 'C') goto yy95;+ if (yych != 'c') goto yy31;+yy95:+ yych = *++p;+ if (yych == 'A') goto yy96;+ if (yych != 'a') goto yy31;+yy96:+ yych = *++p;+ if (yych == 'L') goto yy34;+ if (yych == 'l') goto yy34;+ goto yy31;+yy97:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy98:+ yych = *++p;+ if (yych == 'I') goto yy99;+ if (yych != 'i') goto yy31;+yy99:+ yych = *++p;+ if (yych == 'W') goto yy100;+ if (yych != 'w') goto yy31;+yy100:+ yych = *++p;+ if (yych == 'Y') goto yy101;+ if (yych != 'y') goto yy31;+yy101:+ yych = *++p;+ if (yych == 'G') goto yy34;+ if (yych == 'g') goto yy34;+ goto yy31;+yy102:+ yych = *++p;+ if (yych == 'E') goto yy111;+ if (yych == 'e') goto yy111;+ goto yy31;+yy103:+ yych = *++p;+ if (yych <= 'N') {+ if (yych <= 'L') goto yy31;+ if (yych >= 'N') goto yy105;+ } else {+ if (yych <= 'l') goto yy31;+ if (yych <= 'm') goto yy104;+ if (yych <= 'n') goto yy105;+ goto yy31;+ }+yy104:+ yych = *++p;+ if (yych == 'M') goto yy110;+ if (yych == 'm') goto yy110;+ goto yy31;+yy105:+ yych = *++p;+ if (yych == 'T') goto yy106;+ if (yych != 't') goto yy31;+yy106:+ yych = *++p;+ if (yych == 'R') goto yy107;+ if (yych != 'r') goto yy31;+yy107:+ yych = *++p;+ if (yych == 'I') goto yy108;+ if (yych != 'i') goto yy31;+yy108:+ yych = *++p;+ if (yych == 'L') goto yy109;+ if (yych != 'l') goto yy31;+yy109:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy110:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy111:+ yych = *++p;+ if (yych == 'W') goto yy112;+ if (yych != 'w') goto yy31;+yy112:+ yych = *++p;+ if (yych != '-') goto yy31;+ yych = *++p;+ if (yych == 'S') goto yy114;+ if (yych != 's') goto yy31;+yy114:+ yych = *++p;+ if (yych == 'O') goto yy115;+ if (yych != 'o') goto yy31;+yy115:+ yych = *++p;+ if (yych == 'U') goto yy116;+ if (yych != 'u') goto yy31;+yy116:+ yych = *++p;+ if (yych == 'R') goto yy117;+ if (yych != 'r') goto yy31;+yy117:+ yych = *++p;+ if (yych == 'C') goto yy118;+ if (yych != 'c') goto yy31;+yy118:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy119:+ yych = *++p;+ if (yych == '2') goto yy126;+ goto yy31;+yy120:+ yych = *++p;+ if (yych == 'R') goto yy123;+ if (yych == 'r') goto yy123;+ goto yy31;+yy121:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy122:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy123:+ yych = *++p;+ if (yych == 'E') goto yy124;+ if (yych != 'e') goto yy31;+yy124:+ yych = *++p;+ if (yych == 'A') goto yy125;+ if (yych != 'a') goto yy31;+yy125:+ yych = *++p;+ if (yych == 'L') goto yy34;+ if (yych == 'l') goto yy34;+ goto yy31;+yy126:+ yych = *++p;+ if (yych != '0') goto yy31;+ yych = *++p;+ if (yych != '0') goto yy31;+ yych = *++p;+ if (yych == '4') goto yy34;+ goto yy31;+yy129:+ yych = *++p;+ if (yych == 'I') goto yy148;+ if (yych == 'i') goto yy148;+ goto yy31;+yy130:+ yych = *++p;+ if (yych <= 'L') {+ if (yych == 'A') goto yy140;+ if (yych <= 'K') goto yy31;+ goto yy139;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy31;+ goto yy140;+ } else {+ if (yych == 'l') goto yy139;+ goto yy31;+ }+ }+yy131:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy132:+ yych = *++p;+ if (yych == '3') goto yy136;+ goto yy31;+yy133:+ yych = *++p;+ if (yych == 'T') goto yy135;+ if (yych == 't') goto yy135;+ goto yy31;+yy134:+ yych = *++p;+ if (yych == 'G') goto yy34;+ if (yych == 'g') goto yy34;+ goto yy31;+yy135:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy136:+ yych = *++p;+ if (yych != '2') goto yy31;+ yych = *++p;+ if (yych != '7') goto yy31;+ yych = *++p;+ if (yych == '0') goto yy34;+ goto yy31;+yy139:+ yych = *++p;+ if (yych <= 'M') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'N') goto yy146;+ if (yych == 'n') goto yy146;+ goto yy31;+ }+yy140:+ yych = *++p;+ if (yych == 'M') goto yy141;+ if (yych != 'm') goto yy31;+yy141:+ yych = *++p;+ if (yych == 'S') goto yy142;+ if (yych != 's') goto yy31;+yy142:+ yych = *++p;+ if (yych == 'P') goto yy143;+ if (yych != 'p') goto yy31;+yy143:+ yych = *++p;+ if (yych == 'E') goto yy144;+ if (yych != 'e') goto yy31;+yy144:+ yych = *++p;+ if (yych == 'A') goto yy145;+ if (yych != 'a') goto yy31;+yy145:+ yych = *++p;+ if (yych == 'K') goto yy34;+ if (yych == 'k') goto yy34;+ goto yy31;+yy146:+ yych = *++p;+ if (yych == 'E') goto yy147;+ if (yych != 'e') goto yy31;+yy147:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy148:+ yych = *++p;+ if (yych <= 'S') {+ if (yych == 'N') goto yy149;+ if (yych <= 'R') goto yy31;+ goto yy150;+ } else {+ if (yych <= 'n') {+ if (yych <= 'm') goto yy31;+ } else {+ if (yych == 's') goto yy150;+ goto yy31;+ }+ }+yy149:+ yych = *++p;+ if (yych == 'G') goto yy157;+ if (yych == 'g') goto yy157;+ goto yy31;+yy150:+ yych = *++p;+ if (yych == 'M') goto yy151;+ if (yych != 'm') goto yy31;+yy151:+ yych = *++p;+ if (yych == 'E') goto yy152;+ if (yych != 'e') goto yy31;+yy152:+ yych = *++p;+ if (yych == 'S') goto yy153;+ if (yych != 's') goto yy31;+yy153:+ yych = *++p;+ if (yych == 'S') goto yy154;+ if (yych != 's') goto yy31;+yy154:+ yych = *++p;+ if (yych == 'A') goto yy155;+ if (yych != 'a') goto yy31;+yy155:+ yych = *++p;+ if (yych == 'G') goto yy156;+ if (yych != 'g') goto yy31;+yy156:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy157:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy158:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy159:+ yych = *++p;+ if (yych == 'E') goto yy209;+ if (yych == 'e') goto yy209;+ goto yy31;+yy160:+ yych = *++p;+ if (yych == 'H') goto yy34;+ if (yych == 'h') goto yy34;+ goto yy31;+yy161:+ yych = *++p;+ if (yych == 'O') goto yy205;+ if (yych == 'o') goto yy205;+ goto yy31;+yy162:+ yych = *++p;+ if (yych <= 'L') {+ if (yych == 'A') goto yy195;+ if (yych <= 'K') goto yy31;+ goto yy196;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy31;+ goto yy195;+ } else {+ if (yych == 'l') goto yy196;+ goto yy31;+ }+ }+yy163:+ yych = *++p;+ if (yych <= 'S') {+ if (yych == 'B') goto yy34;+ if (yych <= 'R') goto yy31;+ goto yy34;+ } else {+ if (yych <= 'b') {+ if (yych <= 'a') goto yy31;+ goto yy34;+ } else {+ if (yych == 's') goto yy34;+ goto yy31;+ }+ }+yy164:+ yych = *++p;+ if (yych == 'Y') goto yy193;+ if (yych == 'y') goto yy193;+ goto yy31;+yy165:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy166:+ yych = *++p;+ if (yych == 'T') goto yy192;+ if (yych == 't') goto yy192;+ goto yy31;+yy167:+ yych = *++p;+ if (yych <= 'S') {+ if (yych <= 'C') {+ if (yych <= 'B') goto yy31;+ goto yy179;+ } else {+ if (yych <= 'Q') goto yy31;+ if (yych <= 'R') goto yy177;+ goto yy178;+ }+ } else {+ if (yych <= 'q') {+ if (yych == 'c') goto yy179;+ goto yy31;+ } else {+ if (yych <= 'r') goto yy177;+ if (yych <= 's') goto yy178;+ goto yy31;+ }+ }+yy168:+ yych = *++p;+ if (yych == 'M') goto yy176;+ if (yych == 'm') goto yy176;+ goto yy31;+yy169:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'E') goto yy173;+ if (yych <= 'O') goto yy31;+ goto yy174;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy31;+ goto yy173;+ } else {+ if (yych == 'p') goto yy174;+ goto yy31;+ }+ }+yy170:+ yych = *++p;+ if (yych == 'T') goto yy171;+ if (yych != 't') goto yy31;+yy171:+ yych = *++p;+ if (yych == 'T') goto yy172;+ if (yych != 't') goto yy31;+yy172:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy173:+ yych = *++p;+ if (yych == 'V') goto yy175;+ if (yych == 'v') goto yy175;+ goto yy31;+yy174:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy175:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy176:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy177:+ yych = *++p;+ if (yych == 'V') goto yy189;+ if (yych == 'v') goto yy189;+ goto yy31;+yy178:+ yych = *++p;+ if (yych == 'S') goto yy186;+ if (yych == 's') goto yy186;+ goto yy31;+yy179:+ yych = *++p;+ if (yych == 'O') goto yy180;+ if (yych != 'o') goto yy31;+yy180:+ yych = *++p;+ if (yych == 'N') goto yy181;+ if (yych != 'n') goto yy31;+yy181:+ yych = *++p;+ if (yych == 'D') goto yy182;+ if (yych != 'd') goto yy31;+yy182:+ yych = *++p;+ if (yych == 'L') goto yy183;+ if (yych != 'l') goto yy31;+yy183:+ yych = *++p;+ if (yych == 'I') goto yy184;+ if (yych != 'i') goto yy31;+yy184:+ yych = *++p;+ if (yych == 'F') goto yy185;+ if (yych != 'f') goto yy31;+yy185:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy186:+ yych = *++p;+ if (yych == 'I') goto yy187;+ if (yych != 'i') goto yy31;+yy187:+ yych = *++p;+ if (yych == 'O') goto yy188;+ if (yych != 'o') goto yy31;+yy188:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy189:+ yych = *++p;+ if (yych == 'I') goto yy190;+ if (yych != 'i') goto yy31;+yy190:+ yych = *++p;+ if (yych == 'C') goto yy191;+ if (yych != 'c') goto yy31;+yy191:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy192:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy193:+ yych = *++p;+ if (yych == 'P') goto yy194;+ if (yych != 'p') goto yy31;+yy194:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy195:+ yych = *++p;+ if (yych == 'P') goto yy199;+ if (yych == 'p') goto yy199;+ goto yy31;+yy196:+ yych = *++p;+ if (yych == 'D') goto yy197;+ if (yych != 'd') goto yy31;+yy197:+ yych = *++p;+ if (yych == 'A') goto yy198;+ if (yych != 'a') goto yy31;+yy198:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy199:+ yych = *++p;+ if (yych != '.') goto yy31;+ yych = *++p;+ if (yych == 'B') goto yy201;+ if (yych != 'b') goto yy31;+yy201:+ yych = *++p;+ if (yych == 'E') goto yy202;+ if (yych != 'e') goto yy31;+yy202:+ yych = *++p;+ if (yych == 'E') goto yy203;+ if (yych != 'e') goto yy31;+yy203:+ yych = *++p;+ if (yych == 'P') goto yy204;+ if (yych != 'p') goto yy31;+yy204:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy205:+ yych = *++p;+ if (yych == 'T') goto yy206;+ if (yych != 't') goto yy31;+yy206:+ yych = *++p;+ if (yych == 'I') goto yy207;+ if (yych != 'i') goto yy31;+yy207:+ yych = *++p;+ if (yych == 'F') goto yy208;+ if (yych != 'f') goto yy31;+yy208:+ yych = *++p;+ if (yych == 'Y') goto yy34;+ if (yych == 'y') goto yy34;+ goto yy31;+yy209:+ yych = *++p;+ if (yych == 'A') goto yy210;+ if (yych != 'a') goto yy31;+yy210:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy211:+ yych = *++p;+ if (yych <= 'S') {+ if (yych == 'M') goto yy223;+ if (yych <= 'R') goto yy31;+ goto yy222;+ } else {+ if (yych <= 'm') {+ if (yych <= 'l') goto yy31;+ goto yy223;+ } else {+ if (yych == 's') goto yy222;+ goto yy31;+ }+ }+yy212:+ yych = *++p;+ if (yych == 'Y') goto yy220;+ if (yych == 'y') goto yy220;+ goto yy31;+yy213:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy214:+ yych = *++p;+ if (yych == 'S') goto yy215;+ if (yych != 's') goto yy31;+yy215:+ yych = *++p;+ if (yych <= 'N') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'O') goto yy216;+ if (yych != 'o') goto yy31;+ }+yy216:+ yych = *++p;+ if (yych == 'U') goto yy217;+ if (yych != 'u') goto yy31;+yy217:+ yych = *++p;+ if (yych == 'R') goto yy218;+ if (yych != 'r') goto yy31;+yy218:+ yych = *++p;+ if (yych == 'C') goto yy219;+ if (yych != 'c') goto yy31;+yy219:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy220:+ yych = *++p;+ if (yych == 'N') goto yy221;+ if (yych != 'n') goto yy31;+yy221:+ yych = *++p;+ if (yych == 'C') goto yy34;+ if (yych == 'c') goto yy34;+ goto yy31;+yy222:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy223:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy224:+ yych = *++p;+ if (yych == 'Y') goto yy244;+ if (yych == 'y') goto yy244;+ goto yy31;+yy225:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'E') goto yy241;+ if (yych <= 'N') goto yy31;+ goto yy242;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy31;+ goto yy241;+ } else {+ if (yych == 'o') goto yy242;+ goto yy31;+ }+ }+yy226:+ yych = *++p;+ if (yych == 'A') goto yy236;+ if (yych == 'a') goto yy236;+ goto yy31;+yy227:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'L') goto yy229;+ if (yych <= 'O') goto yy31;+ goto yy230;+ } else {+ if (yych <= 'l') {+ if (yych <= 'k') goto yy31;+ goto yy229;+ } else {+ if (yych == 'p') goto yy230;+ goto yy31;+ }+ }+yy228:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy229:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy230:+ yych = *++p;+ if (yych == 'A') goto yy231;+ if (yych != 'a') goto yy31;+yy231:+ yych = *++p;+ if (yych == 'R') goto yy232;+ if (yych != 'r') goto yy31;+yy232:+ yych = *++p;+ if (yych == 'A') goto yy233;+ if (yych != 'a') goto yy31;+yy233:+ yych = *++p;+ if (yych == 'Z') goto yy234;+ if (yych != 'z') goto yy31;+yy234:+ yych = *++p;+ if (yych == 'Z') goto yy235;+ if (yych != 'z') goto yy31;+yy235:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy236:+ yych = *++p;+ if (yych == 'T') goto yy237;+ if (yych != 't') goto yy31;+yy237:+ yych = *++p;+ if (yych == 'F') goto yy238;+ if (yych != 'f') goto yy31;+yy238:+ yych = *++p;+ if (yych == 'O') goto yy239;+ if (yych != 'o') goto yy31;+yy239:+ yych = *++p;+ if (yych == 'R') goto yy240;+ if (yych != 'r') goto yy31;+yy240:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy241:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy242:+ yych = *++p;+ if (yych == 'X') goto yy243;+ if (yych != 'x') goto yy31;+yy243:+ yych = *++p;+ if (yych == 'Y') goto yy34;+ if (yych == 'y') goto yy34;+ goto yy31;+yy244:+ yych = *++p;+ if (yych == 'C') goto yy34;+ if (yych == 'c') goto yy34;+ goto yy31;+yy245:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy246:+ yych = *++p;+ if (yych == 'A') goto yy247;+ if (yych != 'a') goto yy31;+yy247:+ yych = *++p;+ if (yych == 'Q') goto yy248;+ if (yych != 'q') goto yy31;+yy248:+ yych = *++p;+ if (yych == 'U') goto yy249;+ if (yych != 'u') goto yy31;+yy249:+ yych = *++p;+ if (yych == 'E') goto yy250;+ if (yych != 'e') goto yy31;+yy250:+ yych = *++p;+ if (yych == 'L') goto yy251;+ if (yych != 'l') goto yy31;+yy251:+ yych = *++p;+ if (yych == 'O') goto yy252;+ if (yych != 'o') goto yy31;+yy252:+ yych = *++p;+ if (yych == 'C') goto yy253;+ if (yych != 'c') goto yy31;+yy253:+ yych = *++p;+ if (yych == 'K') goto yy254;+ if (yych != 'k') goto yy31;+yy254:+ yych = *++p;+ if (yych == 'T') goto yy255;+ if (yych != 't') goto yy31;+yy255:+ yych = *++p;+ if (yych == 'O') goto yy256;+ if (yych != 'o') goto yy31;+yy256:+ yych = *++p;+ if (yych == 'K') goto yy257;+ if (yych != 'k') goto yy31;+yy257:+ yych = *++p;+ if (yych == 'E') goto yy258;+ if (yych != 'e') goto yy31;+yy258:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy259:+ yych = *++p;+ if (yych == 'T') goto yy266;+ if (yych == 't') goto yy266;+ goto yy31;+yy260:+ yych = *++p;+ if (yych == 'T') goto yy265;+ if (yych == 't') goto yy265;+ goto yy31;+yy261:+ yych = *++p;+ if (yych <= 'G') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'H') goto yy34;+ if (yych == 'h') goto yy34;+ goto yy31;+ }+yy262:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy263:+ yych = *++p;+ if (yych == 'W') goto yy264;+ if (yych != 'w') goto yy31;+yy264:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy265:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy266:+ yych = *++p;+ if (yych == 'E') goto yy267;+ if (yych != 'e') goto yy31;+yy267:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy268:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy269:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'M') goto yy300;+ if (yych <= 'O') goto yy31;+ goto yy299;+ } else {+ if (yych <= 'm') {+ if (yych <= 'l') goto yy31;+ goto yy300;+ } else {+ if (yych == 'p') goto yy299;+ goto yy31;+ }+ }+yy270:+ yych = *++p;+ if (yych <= 'Q') {+ if (yych <= '-') {+ if (yych <= ',') goto yy31;+ goto yy292;+ } else {+ if (yych == 'N') goto yy293;+ goto yy31;+ }+ } else {+ if (yych <= 'n') {+ if (yych <= 'R') goto yy291;+ if (yych <= 'm') goto yy31;+ goto yy293;+ } else {+ if (yych == 'r') goto yy291;+ goto yy31;+ }+ }+yy271:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy272:+ yych = *++p;+ if (yych == 'S') goto yy287;+ if (yych == 's') goto yy287;+ goto yy31;+yy273:+ yych = *++p;+ switch (yych) {+ case 'G':+ case 'g': goto yy278;+ case 'I':+ case 'i': goto yy277;+ case 'P':+ case 'p': goto yy279;+ case 'R':+ case 'r': goto yy280;+ default: goto yy31;+ }+yy274:+ yych = *++p;+ if (yych == 'Q') goto yy276;+ if (yych == 'q') goto yy276;+ goto yy31;+yy275:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy276:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy277:+ yych = *++p;+ if (yych == 'L') goto yy285;+ if (yych == 'l') goto yy285;+ goto yy31;+yy278:+ yych = *++p;+ if (yych == 'N') goto yy283;+ if (yych == 'n') goto yy283;+ goto yy31;+yy279:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy280:+ yych = *++p;+ if (yych == 'K') goto yy281;+ if (yych != 'k') goto yy31;+yy281:+ yych = *++p;+ if (yych == 'E') goto yy282;+ if (yych != 'e') goto yy31;+yy282:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy283:+ yych = *++p;+ if (yych == 'E') goto yy284;+ if (yych != 'e') goto yy31;+yy284:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy285:+ yych = *++p;+ if (yych == 'T') goto yy286;+ if (yych != 't') goto yy31;+yy286:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy287:+ yych = *++p;+ if (yych == 'S') goto yy288;+ if (yych != 's') goto yy31;+yy288:+ yych = *++p;+ if (yych == 'A') goto yy289;+ if (yych != 'a') goto yy31;+yy289:+ yych = *++p;+ if (yych == 'G') goto yy290;+ if (yych != 'g') goto yy31;+yy290:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy291:+ yych = *++p;+ if (yych == 'P') goto yy298;+ if (yych == 'p') goto yy298;+ goto yy31;+yy292:+ yych = *++p;+ if (yych == 'H') goto yy295;+ if (yych == 'h') goto yy295;+ goto yy31;+yy293:+ yych = *++p;+ if (yych == 'I') goto yy294;+ if (yych != 'i') goto yy31;+yy294:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy295:+ yych = *++p;+ if (yych == 'E') goto yy296;+ if (yych != 'e') goto yy31;+yy296:+ yych = *++p;+ if (yych == 'L') goto yy297;+ if (yych != 'l') goto yy31;+yy297:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy298:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy299:+ yych = *++p;+ if (yych == 'D') goto yy303;+ if (yych == 'd') goto yy303;+ goto yy31;+yy300:+ yych = *++p;+ if (yych == 'B') goto yy301;+ if (yych != 'b') goto yy31;+yy301:+ yych = *++p;+ if (yych == 'L') goto yy302;+ if (yych != 'l') goto yy31;+yy302:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy303:+ yych = *++p;+ if (yych == 'A') goto yy304;+ if (yych != 'a') goto yy31;+yy304:+ yych = *++p;+ if (yych == 'T') goto yy305;+ if (yych != 't') goto yy31;+yy305:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy306:+ yych = *++p;+ if (yych == 'A') goto yy311;+ if (yych == 'a') goto yy311;+ goto yy31;+yy307:+ yych = *++p;+ if (yych == 'S') goto yy308;+ if (yych != 's') goto yy31;+yy308:+ yych = *++p;+ if (yych == 'T') goto yy309;+ if (yych != 't') goto yy31;+yy309:+ yych = *++p;+ if (yych == 'F') goto yy310;+ if (yych != 'f') goto yy31;+yy310:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy311:+ yych = *++p;+ if (yych == 'P') goto yy312;+ if (yych != 'p') goto yy31;+yy312:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy313:+ yych = *++p;+ if (yych == 'M') goto yy336;+ if (yych == 'm') goto yy336;+ goto yy31;+yy314:+ yych = *++p;+ if (yych <= 'I') {+ if (yych == 'C') goto yy325;+ if (yych <= 'H') goto yy31;+ goto yy324;+ } else {+ if (yych <= 'c') {+ if (yych <= 'b') goto yy31;+ goto yy325;+ } else {+ if (yych == 'i') goto yy324;+ goto yy31;+ }+ }+yy315:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'N') goto yy34;+ if (yych <= 'O') goto yy31;+ goto yy34;+ } else {+ if (yych <= 'n') {+ if (yych <= 'm') goto yy31;+ goto yy34;+ } else {+ if (yych == 'p') goto yy34;+ goto yy31;+ }+ }+yy316:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'A') goto yy322;+ if (yych <= 'N') goto yy31;+ goto yy323;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy31;+ goto yy322;+ } else {+ if (yych == 'o') goto yy323;+ goto yy31;+ }+ }+yy317:+ yych = *++p;+ if (yych == 'F') goto yy321;+ if (yych == 'f') goto yy321;+ goto yy31;+yy318:+ yych = *++p;+ if (yych <= '@') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'A') goto yy320;+ if (yych == 'a') goto yy320;+ goto yy31;+ }+yy319:+ yych = *++p;+ if (yych == 'X') goto yy34;+ if (yych == 'x') goto yy34;+ goto yy31;+yy320:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy321:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy322:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy323:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy324:+ yych = *++p;+ if (yych == 'S') goto yy326;+ if (yych == 's') goto yy326;+ goto yy31;+yy325:+ yych = *++p;+ if (yych <= ':') {+ if (yych == '6') goto yy34;+ if (yych <= '9') goto yy31;+ goto yy35;+ } else {+ if (yych <= 'S') {+ if (yych <= 'R') goto yy31;+ goto yy34;+ } else {+ if (yych == 's') goto yy34;+ goto yy31;+ }+ }+yy326:+ yych = *++p;+ if (yych == '.') goto yy327;+ if (yych == ':') goto yy35;+ goto yy31;+yy327:+ yych = *++p;+ if (yych <= 'X') {+ if (yych <= 'K') {+ if (yych == 'B') goto yy330;+ goto yy31;+ } else {+ if (yych <= 'L') goto yy328;+ if (yych <= 'W') goto yy31;+ goto yy329;+ }+ } else {+ if (yych <= 'k') {+ if (yych == 'b') goto yy330;+ goto yy31;+ } else {+ if (yych <= 'l') goto yy328;+ if (yych == 'x') goto yy329;+ goto yy31;+ }+ }+yy328:+ yych = *++p;+ if (yych == 'W') goto yy335;+ if (yych == 'w') goto yy335;+ goto yy31;+yy329:+ yych = *++p;+ if (yych == 'P') goto yy333;+ if (yych == 'p') goto yy333;+ goto yy31;+yy330:+ yych = *++p;+ if (yych == 'E') goto yy331;+ if (yych != 'e') goto yy31;+yy331:+ yych = *++p;+ if (yych == 'E') goto yy332;+ if (yych != 'e') goto yy31;+yy332:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy333:+ yych = *++p;+ if (yych == 'C') goto yy334;+ if (yych != 'c') goto yy31;+yy334:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy335:+ yych = *++p;+ if (yych == 'Z') goto yy34;+ if (yych == 'z') goto yy34;+ goto yy31;+yy336:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy337:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy338:+ yych = *++p;+ if (yych == 'T') goto yy341;+ if (yych == 't') goto yy341;+ goto yy31;+yy339:+ yych = *++p;+ if (yych != '2') goto yy31;+ yych = *++p;+ if (yych == '3') goto yy34;+ goto yy31;+yy341:+ yych = *++p;+ if (yych == 'P') goto yy342;+ if (yych != 'p') goto yy31;+yy342:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy343:+ yych = *++p;+ if (yych == 'A') goto yy359;+ if (yych == 'a') goto yy359;+ goto yy31;+yy344:+ yych = *++p;+ if (yych <= 'Z') {+ if (yych == 'T') goto yy34;+ if (yych <= 'Y') goto yy31;+ goto yy350;+ } else {+ if (yych <= 't') {+ if (yych <= 's') goto yy31;+ goto yy34;+ } else {+ if (yych == 'z') goto yy350;+ goto yy31;+ }+ }+yy345:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'P') goto yy347;+ if (yych == 'p') goto yy347;+ goto yy31;+ }+yy346:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy347:+ yych = *++p;+ if (yych == 'H') goto yy348;+ if (yych != 'h') goto yy31;+yy348:+ yych = *++p;+ if (yych == 'E') goto yy349;+ if (yych != 'e') goto yy31;+yy349:+ yych = *++p;+ if (yych == 'R') goto yy34;+ if (yych == 'r') goto yy34;+ goto yy31;+yy350:+ yych = *++p;+ if (yych == 'M') goto yy351;+ if (yych != 'm') goto yy31;+yy351:+ yych = *++p;+ if (yych == 'O') goto yy352;+ if (yych != 'o') goto yy31;+yy352:+ yych = *++p;+ if (yych == 'P') goto yy353;+ if (yych != 'p') goto yy31;+yy353:+ yych = *++p;+ if (yych == 'R') goto yy354;+ if (yych != 'r') goto yy31;+yy354:+ yych = *++p;+ if (yych == 'O') goto yy355;+ if (yych != 'o') goto yy31;+yy355:+ yych = *++p;+ if (yych == 'J') goto yy356;+ if (yych != 'j') goto yy31;+yy356:+ yych = *++p;+ if (yych == 'E') goto yy357;+ if (yych != 'e') goto yy31;+yy357:+ yych = *++p;+ if (yych == 'C') goto yy358;+ if (yych != 'c') goto yy31;+yy358:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy359:+ yych = *++p;+ if (yych == 'L') goto yy360;+ if (yych != 'l') goto yy31;+yy360:+ yych = *++p;+ if (yych == 'K') goto yy34;+ if (yych == 'k') goto yy34;+ goto yy31;+yy361:+ yych = *++p;+ if (yych <= 'S') {+ if (yych <= 'M') {+ if (yych == 'L') goto yy371;+ goto yy31;+ } else {+ if (yych <= 'N') goto yy372;+ if (yych <= 'R') goto yy31;+ goto yy373;+ }+ } else {+ if (yych <= 'm') {+ if (yych == 'l') goto yy371;+ goto yy31;+ } else {+ if (yych <= 'n') goto yy372;+ if (yych == 's') goto yy373;+ goto yy31;+ }+ }+yy362:+ yych = *++p;+ if (yych == 'E') goto yy370;+ if (yych == 'e') goto yy370;+ goto yy31;+yy363:+ yych = *++p;+ if (yych == 'C') goto yy365;+ if (yych == 'c') goto yy365;+ goto yy31;+yy364:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy365:+ yych = *++p;+ if (yych == 'E') goto yy366;+ if (yych != 'e') goto yy31;+yy366:+ yych = *++p;+ if (yych == 'T') goto yy367;+ if (yych != 't') goto yy31;+yy367:+ yych = *++p;+ if (yych == 'I') goto yy368;+ if (yych != 'i') goto yy31;+yy368:+ yych = *++p;+ if (yych == 'M') goto yy369;+ if (yych != 'm') goto yy31;+yy369:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy370:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy371:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy372:+ yych = *++p;+ if (yych == 'G') goto yy374;+ if (yych == 'g') goto yy374;+ goto yy31;+yy373:+ yych = *++p;+ if (yych == 'H') goto yy34;+ if (yych == 'h') goto yy34;+ goto yy31;+yy374:+ yych = *++p;+ if (yych == 'E') goto yy375;+ if (yych != 'e') goto yy31;+yy375:+ yych = *++p;+ if (yych == 'R') goto yy34;+ if (yych == 'r') goto yy34;+ goto yy31;+yy376:+ yych = *++p;+ if (yych == 'T') goto yy394;+ if (yych == 't') goto yy394;+ goto yy31;+yy377:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy378:+ yych = *++p;+ if (yych == 'M') goto yy34;+ if (yych == 'm') goto yy34;+ goto yy31;+yy379:+ yych = *++p;+ if (yych <= 'S') {+ if (yych == 'P') goto yy34;+ if (yych <= 'R') goto yy31;+ goto yy34;+ } else {+ if (yych <= 'p') {+ if (yych <= 'o') goto yy31;+ goto yy34;+ } else {+ if (yych == 's') goto yy34;+ goto yy31;+ }+ }+yy380:+ yych = *++p;+ if (yych == 'I') goto yy388;+ if (yych == 'i') goto yy388;+ goto yy31;+yy381:+ yych = *++p;+ if (yych == 'A') goto yy387;+ if (yych == 'a') goto yy387;+ goto yy31;+yy382:+ yych = *++p;+ if (yych == 'O') goto yy385;+ if (yych == 'o') goto yy385;+ goto yy31;+yy383:+ yych = *++p;+ if (yych == 'A') goto yy384;+ if (yych != 'a') goto yy31;+yy384:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == ':') goto yy35;+ goto yy31;+ } else {+ if (yych <= 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+ }+yy385:+ yych = *++p;+ if (yych == 'U') goto yy386;+ if (yych != 'u') goto yy31;+yy386:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy387:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy388:+ yych = *++p;+ if (yych == 'U') goto yy389;+ if (yych != 'u') goto yy31;+yy389:+ yych = *++p;+ if (yych == 'M') goto yy390;+ if (yych != 'm') goto yy31;+yy390:+ yych = *++p;+ if (yych == 'X') goto yy391;+ if (yych != 'x') goto yy31;+yy391:+ yych = *++p;+ if (yych == 'T') goto yy392;+ if (yych != 't') goto yy31;+yy392:+ yych = *++p;+ if (yych == 'R') goto yy393;+ if (yych != 'r') goto yy31;+yy393:+ yych = *++p;+ if (yych == 'A') goto yy34;+ if (yych == 'a') goto yy34;+ goto yy31;+yy394:+ yych = *++p;+ if (yych == 'A') goto yy395;+ if (yych != 'a') goto yy31;+yy395:+ yych = *++p;+ if (yych == 'C') goto yy396;+ if (yych != 'c') goto yy31;+yy396:+ yych = *++p;+ if (yych == 'H') goto yy397;+ if (yych != 'h') goto yy31;+yy397:+ yych = *++p;+ if (yych == 'M') goto yy398;+ if (yych != 'm') goto yy31;+yy398:+ yych = *++p;+ if (yych == 'E') goto yy399;+ if (yych != 'e') goto yy31;+yy399:+ yych = *++p;+ if (yych == 'N') goto yy400;+ if (yych != 'n') goto yy31;+yy400:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy401:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy402:+ yych = *++p;+ if (yych <= 'V') {+ if (yych == 'R') goto yy34;+ if (yych <= 'U') goto yy31;+ } else {+ if (yych <= 'r') {+ if (yych <= 'q') goto yy31;+ goto yy34;+ } else {+ if (yych != 'v') goto yy31;+ }+ }+ yych = *++p;+ if (yych == 'A') goto yy404;+ if (yych != 'a') goto yy31;+yy404:+ yych = *++p;+ if (yych == 'S') goto yy405;+ if (yych != 's') goto yy31;+yy405:+ yych = *++p;+ if (yych == 'C') goto yy406;+ if (yych != 'c') goto yy31;+yy406:+ yych = *++p;+ if (yych == 'R') goto yy407;+ if (yych != 'r') goto yy31;+yy407:+ yych = *++p;+ if (yych == 'I') goto yy408;+ if (yych != 'i') goto yy31;+yy408:+ yych = *++p;+ if (yych == 'P') goto yy409;+ if (yych != 'p') goto yy31;+yy409:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy410:+ yych = *++p;+ if (yych == 'B') goto yy34;+ if (yych == 'b') goto yy34;+ goto yy31;+yy411:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy412:+ yych = *++p;+ if (yych == 'N') goto yy419;+ if (yych == 'n') goto yy419;+ goto yy31;+yy413:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy414:+ yych = *++p;+ if (yych == 'C') goto yy418;+ if (yych == 'c') goto yy418;+ goto yy31;+yy415:+ yych = *++p;+ if (yych <= 'V') {+ if (yych == 'T') goto yy417;+ if (yych <= 'U') goto yy31;+ goto yy34;+ } else {+ if (yych <= 't') {+ if (yych <= 's') goto yy31;+ goto yy417;+ } else {+ if (yych == 'v') goto yy34;+ goto yy31;+ }+ }+yy416:+ yych = *++p;+ if (yych == 'I') goto yy34;+ if (yych == 'i') goto yy34;+ goto yy31;+yy417:+ yych = *++p;+ if (yych == 'A') goto yy34;+ if (yych == 'a') goto yy34;+ goto yy31;+yy418:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy419:+ yych = *++p;+ if (yych == 'A') goto yy420;+ if (yych != 'a') goto yy31;+yy420:+ yych = *++p;+ if (yych != '-') goto yy31;+ yych = *++p;+ if (yych == 'P') goto yy422;+ if (yych != 'p') goto yy31;+yy422:+ yych = *++p;+ if (yych == 'L') goto yy423;+ if (yych != 'l') goto yy31;+yy423:+ yych = *++p;+ if (yych == 'A') goto yy424;+ if (yych != 'a') goto yy31;+yy424:+ yych = *++p;+ if (yych == 'Y') goto yy425;+ if (yych != 'y') goto yy31;+yy425:+ yych = *++p;+ if (yych <= 'S') {+ if (yych == 'C') goto yy426;+ if (yych <= 'R') goto yy31;+ goto yy427;+ } else {+ if (yych <= 'c') {+ if (yych <= 'b') goto yy31;+ } else {+ if (yych == 's') goto yy427;+ goto yy31;+ }+ }+yy426:+ yych = *++p;+ if (yych == 'O') goto yy432;+ if (yych == 'o') goto yy432;+ goto yy31;+yy427:+ yych = *++p;+ if (yych == 'I') goto yy428;+ if (yych != 'i') goto yy31;+yy428:+ yych = *++p;+ if (yych == 'N') goto yy429;+ if (yych != 'n') goto yy31;+yy429:+ yych = *++p;+ if (yych == 'G') goto yy430;+ if (yych != 'g') goto yy31;+yy430:+ yych = *++p;+ if (yych == 'L') goto yy431;+ if (yych != 'l') goto yy31;+yy431:+ yych = *++p;+ if (yych == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+yy432:+ yych = *++p;+ if (yych == 'N') goto yy433;+ if (yych != 'n') goto yy31;+yy433:+ yych = *++p;+ if (yych == 'T') goto yy434;+ if (yych != 't') goto yy31;+yy434:+ yych = *++p;+ if (yych == 'A') goto yy435;+ if (yych != 'a') goto yy31;+yy435:+ yych = *++p;+ if (yych == 'I') goto yy436;+ if (yych != 'i') goto yy31;+yy436:+ yych = *++p;+ if (yych == 'N') goto yy437;+ if (yych != 'n') goto yy31;+yy437:+ yych = *++p;+ if (yych == 'E') goto yy438;+ if (yych != 'e') goto yy31;+yy438:+ yych = *++p;+ if (yych == 'R') goto yy34;+ if (yych == 'r') goto yy34;+ goto yy31;+yy439:+ yych = *++p;+ if (yych == 'S') goto yy34;+ if (yych == 's') goto yy34;+ goto yy31;+yy440:+ yych = *++p;+ if (yych <= 'N') {+ if (yych <= 'A') {+ if (yych <= '@') goto yy31;+ goto yy462;+ } else {+ if (yych <= 'L') goto yy31;+ if (yych <= 'M') goto yy463;+ goto yy464;+ }+ } else {+ if (yych <= 'l') {+ if (yych == 'a') goto yy462;+ goto yy31;+ } else {+ if (yych <= 'm') goto yy463;+ if (yych <= 'n') goto yy464;+ goto yy31;+ }+ }+yy441:+ yych = *++p;+ if (yych == 'R') goto yy449;+ if (yych == 'r') goto yy449;+ goto yy31;+yy442:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'L') goto yy446;+ if (yych <= 'O') goto yy31;+ goto yy34;+ } else {+ if (yych <= 'l') {+ if (yych <= 'k') goto yy31;+ goto yy446;+ } else {+ if (yych == 'p') goto yy34;+ goto yy31;+ }+ }+yy443:+ yych = *++p;+ if (yych == 'I') goto yy445;+ if (yych == 'i') goto yy445;+ goto yy31;+yy444:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy445:+ yych = *++p;+ if (yych == 'D') goto yy34;+ if (yych == 'd') goto yy34;+ goto yy31;+yy446:+ yych = *++p;+ if (yych == 'L') goto yy447;+ if (yych != 'l') goto yy31;+yy447:+ yych = *++p;+ if (yych == 'T') goto yy448;+ if (yych != 't') goto yy31;+yy448:+ yych = *++p;+ if (yych == 'O') goto yy34;+ if (yych == 'o') goto yy34;+ goto yy31;+yy449:+ yych = *++p;+ if (yych == 'O') goto yy450;+ if (yych != 'o') goto yy31;+yy450:+ yych = *++p;+ if (yych == 'M') goto yy451;+ if (yych != 'm') goto yy31;+yy451:+ yych = *++p;+ if (yych == 'E') goto yy452;+ if (yych != 'e') goto yy31;+yy452:+ yych = *++p;+ if (yych == '-') goto yy453;+ if (yych == ':') goto yy35;+ goto yy31;+yy453:+ yych = *++p;+ if (yych == 'E') goto yy454;+ if (yych != 'e') goto yy31;+yy454:+ yych = *++p;+ if (yych == 'X') goto yy455;+ if (yych != 'x') goto yy31;+yy455:+ yych = *++p;+ if (yych == 'T') goto yy456;+ if (yych != 't') goto yy31;+yy456:+ yych = *++p;+ if (yych == 'E') goto yy457;+ if (yych != 'e') goto yy31;+yy457:+ yych = *++p;+ if (yych == 'N') goto yy458;+ if (yych != 'n') goto yy31;+yy458:+ yych = *++p;+ if (yych == 'S') goto yy459;+ if (yych != 's') goto yy31;+yy459:+ yych = *++p;+ if (yych == 'I') goto yy460;+ if (yych != 'i') goto yy31;+yy460:+ yych = *++p;+ if (yych == 'O') goto yy461;+ if (yych != 'o') goto yy31;+yy461:+ yych = *++p;+ if (yych == 'N') goto yy34;+ if (yych == 'n') goto yy34;+ goto yy31;+yy462:+ yych = *++p;+ if (yych == 'P') goto yy34;+ if (yych == 'p') goto yy34;+ goto yy31;+yy463:+ yych = *++p;+ if (yych == '-') goto yy468;+ goto yy31;+yy464:+ yych = *++p;+ if (yych == 'T') goto yy465;+ if (yych != 't') goto yy31;+yy465:+ yych = *++p;+ if (yych == 'E') goto yy466;+ if (yych != 'e') goto yy31;+yy466:+ yych = *++p;+ if (yych == 'N') goto yy467;+ if (yych != 'n') goto yy31;+yy467:+ yych = *++p;+ if (yych == 'T') goto yy34;+ if (yych == 't') goto yy34;+ goto yy31;+yy468:+ yych = *++p;+ if (yych == 'E') goto yy469;+ if (yych != 'e') goto yy31;+yy469:+ yych = *++p;+ if (yych == 'V') goto yy470;+ if (yych != 'v') goto yy31;+yy470:+ yych = *++p;+ if (yych == 'E') goto yy471;+ if (yych != 'e') goto yy31;+yy471:+ yych = *++p;+ if (yych == 'N') goto yy472;+ if (yych != 'n') goto yy31;+yy472:+ yych = *++p;+ if (yych == 'T') goto yy473;+ if (yych != 't') goto yy31;+yy473:+ yych = *++p;+ if (yych == 'B') goto yy474;+ if (yych != 'b') goto yy31;+yy474:+ yych = *++p;+ if (yych == 'R') goto yy475;+ if (yych != 'r') goto yy31;+yy475:+ yych = *++p;+ if (yych == 'I') goto yy476;+ if (yych != 'i') goto yy31;+yy476:+ yych = *++p;+ if (yych == 'T') goto yy477;+ if (yych != 't') goto yy31;+yy477:+ yych = *++p;+ if (yych == 'E') goto yy478;+ if (yych != 'e') goto yy31;+yy478:+ yych = *++p;+ if (yych != '-') goto yy31;+ yych = *++p;+ if (yych == 'A') goto yy480;+ if (yych != 'a') goto yy31;+yy480:+ yych = *++p;+ if (yych == 'T') goto yy481;+ if (yych != 't') goto yy31;+yy481:+ yych = *++p;+ if (yych == 'T') goto yy482;+ if (yych != 't') goto yy31;+yy482:+ yych = *++p;+ if (yych == 'E') goto yy483;+ if (yych != 'e') goto yy31;+yy483:+ yych = *++p;+ if (yych == 'N') goto yy484;+ if (yych != 'n') goto yy31;+yy484:+ yych = *++p;+ if (yych == 'D') goto yy485;+ if (yych != 'd') goto yy31;+yy485:+ yych = *++p;+ if (yych == 'E') goto yy486;+ if (yych != 'e') goto yy31;+yy486:+ ++p;+ if ((yych = *p) == 'E') goto yy34;+ if (yych == 'e') goto yy34;+ goto yy31;+}++}++// Try to match email autolink after first <, returning num of chars matched.+int _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 <= ',') {+ if (yych <= '!') {+ if (yych == '\n') goto yy489;+ if (yych <= ' ') goto yy491;+ goto yy490;+ } else {+ if (yych <= '\'') {+ if (yych <= '"') goto yy491;+ goto yy490;+ } else {+ if (yych <= ')') goto yy491;+ if (yych <= '+') goto yy490;+ goto yy491;+ }+ }+ } else {+ if (yych <= '?') {+ if (yych <= '<') {+ if (yych <= '9') goto yy490;+ goto yy491;+ } else {+ if (yych == '>') goto yy491;+ goto yy490;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy491;+ goto yy490;+ } else {+ if (yych <= ']') goto yy491;+ if (yych <= '~') goto yy490;+ goto yy491;+ }+ }+ }+yy489:+ { return 0; }+yy490:+ yych = *(marker = ++p);+ if (yych <= ',') {+ if (yych <= '"') {+ if (yych == '!') goto yy495;+ goto yy489;+ } else {+ if (yych <= '\'') goto yy495;+ if (yych <= ')') goto yy489;+ if (yych <= '+') goto yy495;+ goto yy489;+ }+ } else {+ if (yych <= '>') {+ if (yych <= '9') goto yy495;+ if (yych == '=') goto yy495;+ goto yy489;+ } else {+ if (yych <= 'Z') goto yy495;+ if (yych <= ']') goto yy489;+ if (yych <= '~') goto yy495;+ goto yy489;+ }+ }+yy491:+ yych = *++p;+ goto yy489;+yy492:+ yych = *++p;+ if (yych <= '@') {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy496;+ } else {+ if (yych <= 'Z') goto yy496;+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy496;+ }+yy493:+ p = marker;+ goto yy489;+yy494:+ ++p;+ yych = *p;+yy495:+ if (yybm[0+yych] & 128) {+ goto yy494;+ }+ if (yych == '@') goto yy492;+ goto yy493;+yy496:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy498;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy498;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy498;+ goto yy493;+ }+ }+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy626;+ if (yych <= '/') goto yy493;+ goto yy627;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy627;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy627;+ goto yy493;+ }+ }+yy498:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych <= '-') goto yy626;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy627;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy627;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy627;+ goto yy493;+ }+ }+yy499:+ ++p;+ yych = *p;+ if (yych <= '@') {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy502;+ goto yy493;+ } else {+ if (yych <= 'Z') goto yy502;+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy502;+ goto yy493;+ }+yy500:+ ++p;+ { return (p - start); }+yy502:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy504;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy504;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy504;+ goto yy493;+ }+ }+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy505;+ if (yych <= '/') goto yy493;+ goto yy506;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy506;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy506;+ goto yy493;+ }+ }+yy504:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy506;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy506;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy506;+ goto yy493;+ }+ }+yy505:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy507;+ if (yych <= '/') goto yy493;+ goto yy508;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy508;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy508;+ goto yy493;+ }+ }+yy506:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy508;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy508;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy508;+ goto yy493;+ }+ }+yy507:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy509;+ if (yych <= '/') goto yy493;+ goto yy510;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy510;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy510;+ goto yy493;+ }+ }+yy508:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy510;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy510;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy510;+ goto yy493;+ }+ }+yy509:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy511;+ if (yych <= '/') goto yy493;+ goto yy512;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy512;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy512;+ goto yy493;+ }+ }+yy510:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy512;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy512;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy512;+ goto yy493;+ }+ }+yy511:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy513;+ if (yych <= '/') goto yy493;+ goto yy514;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy514;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy514;+ goto yy493;+ }+ }+yy512:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy514;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy514;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy514;+ goto yy493;+ }+ }+yy513:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy515;+ if (yych <= '/') goto yy493;+ goto yy516;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy516;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy516;+ goto yy493;+ }+ }+yy514:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy516;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy516;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy516;+ goto yy493;+ }+ }+yy515:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy517;+ if (yych <= '/') goto yy493;+ goto yy518;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy518;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy518;+ goto yy493;+ }+ }+yy516:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy518;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy518;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy518;+ goto yy493;+ }+ }+yy517:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy519;+ if (yych <= '/') goto yy493;+ goto yy520;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy520;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy520;+ goto yy493;+ }+ }+yy518:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy520;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy520;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy520;+ goto yy493;+ }+ }+yy519:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy521;+ if (yych <= '/') goto yy493;+ goto yy522;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy522;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy522;+ goto yy493;+ }+ }+yy520:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy522;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy522;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy522;+ goto yy493;+ }+ }+yy521:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy523;+ if (yych <= '/') goto yy493;+ goto yy524;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy524;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy524;+ goto yy493;+ }+ }+yy522:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy524;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy524;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy524;+ goto yy493;+ }+ }+yy523:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy525;+ if (yych <= '/') goto yy493;+ goto yy526;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy526;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy526;+ goto yy493;+ }+ }+yy524:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy526;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy526;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy526;+ goto yy493;+ }+ }+yy525:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy527;+ if (yych <= '/') goto yy493;+ goto yy528;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy528;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy528;+ goto yy493;+ }+ }+yy526:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy528;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy528;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy528;+ goto yy493;+ }+ }+yy527:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy529;+ if (yych <= '/') goto yy493;+ goto yy530;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy530;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy530;+ goto yy493;+ }+ }+yy528:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy530;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy530;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy530;+ goto yy493;+ }+ }+yy529:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy531;+ if (yych <= '/') goto yy493;+ goto yy532;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy532;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy532;+ goto yy493;+ }+ }+yy530:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy532;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy532;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy532;+ goto yy493;+ }+ }+yy531:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy533;+ if (yych <= '/') goto yy493;+ goto yy534;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy534;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy534;+ goto yy493;+ }+ }+yy532:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy534;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy534;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy534;+ goto yy493;+ }+ }+yy533:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy535;+ if (yych <= '/') goto yy493;+ goto yy536;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy536;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy536;+ goto yy493;+ }+ }+yy534:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy536;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy536;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy536;+ goto yy493;+ }+ }+yy535:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy537;+ if (yych <= '/') goto yy493;+ goto yy538;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy538;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy538;+ goto yy493;+ }+ }+yy536:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy538;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy538;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy538;+ goto yy493;+ }+ }+yy537:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy539;+ if (yych <= '/') goto yy493;+ goto yy540;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy540;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy540;+ goto yy493;+ }+ }+yy538:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy540;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy540;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy540;+ goto yy493;+ }+ }+yy539:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy541;+ if (yych <= '/') goto yy493;+ goto yy542;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy542;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy542;+ goto yy493;+ }+ }+yy540:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy542;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy542;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy542;+ goto yy493;+ }+ }+yy541:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy543;+ if (yych <= '/') goto yy493;+ goto yy544;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy544;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy544;+ goto yy493;+ }+ }+yy542:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy544;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy544;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy544;+ goto yy493;+ }+ }+yy543:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy545;+ if (yych <= '/') goto yy493;+ goto yy546;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy546;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy546;+ goto yy493;+ }+ }+yy544:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy546;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy546;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy546;+ goto yy493;+ }+ }+yy545:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy547;+ if (yych <= '/') goto yy493;+ goto yy548;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy548;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy548;+ goto yy493;+ }+ }+yy546:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy548;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy548;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy548;+ goto yy493;+ }+ }+yy547:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy549;+ if (yych <= '/') goto yy493;+ goto yy550;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy550;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy550;+ goto yy493;+ }+ }+yy548:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy550;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy550;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy550;+ goto yy493;+ }+ }+yy549:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy551;+ if (yych <= '/') goto yy493;+ goto yy552;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy552;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy552;+ goto yy493;+ }+ }+yy550:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy552;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy552;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy552;+ goto yy493;+ }+ }+yy551:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy553;+ if (yych <= '/') goto yy493;+ goto yy554;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy554;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy554;+ goto yy493;+ }+ }+yy552:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy554;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy554;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy554;+ goto yy493;+ }+ }+yy553:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy555;+ if (yych <= '/') goto yy493;+ goto yy556;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy556;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy556;+ goto yy493;+ }+ }+yy554:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy556;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy556;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy556;+ goto yy493;+ }+ }+yy555:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy557;+ if (yych <= '/') goto yy493;+ goto yy558;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy558;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy558;+ goto yy493;+ }+ }+yy556:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy558;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy558;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy558;+ goto yy493;+ }+ }+yy557:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy559;+ if (yych <= '/') goto yy493;+ goto yy560;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy560;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy560;+ goto yy493;+ }+ }+yy558:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy560;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy560;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy560;+ goto yy493;+ }+ }+yy559:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy561;+ if (yych <= '/') goto yy493;+ goto yy562;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy562;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy562;+ goto yy493;+ }+ }+yy560:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy562;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy562;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy562;+ goto yy493;+ }+ }+yy561:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy563;+ if (yych <= '/') goto yy493;+ goto yy564;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy564;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy564;+ goto yy493;+ }+ }+yy562:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy564;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy564;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy564;+ goto yy493;+ }+ }+yy563:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy565;+ if (yych <= '/') goto yy493;+ goto yy566;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy566;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy566;+ goto yy493;+ }+ }+yy564:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy566;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy566;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy566;+ goto yy493;+ }+ }+yy565:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy567;+ if (yych <= '/') goto yy493;+ goto yy568;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy568;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy568;+ goto yy493;+ }+ }+yy566:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy568;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy568;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy568;+ goto yy493;+ }+ }+yy567:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy569;+ if (yych <= '/') goto yy493;+ goto yy570;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy570;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy570;+ goto yy493;+ }+ }+yy568:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy570;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy570;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy570;+ goto yy493;+ }+ }+yy569:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy571;+ if (yych <= '/') goto yy493;+ goto yy572;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy572;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy572;+ goto yy493;+ }+ }+yy570:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy572;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy572;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy572;+ goto yy493;+ }+ }+yy571:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy573;+ if (yych <= '/') goto yy493;+ goto yy574;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy574;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy574;+ goto yy493;+ }+ }+yy572:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy574;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy574;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy574;+ goto yy493;+ }+ }+yy573:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy575;+ if (yych <= '/') goto yy493;+ goto yy576;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy576;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy576;+ goto yy493;+ }+ }+yy574:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy576;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy576;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy576;+ goto yy493;+ }+ }+yy575:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy577;+ if (yych <= '/') goto yy493;+ goto yy578;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy578;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy578;+ goto yy493;+ }+ }+yy576:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy578;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy578;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy578;+ goto yy493;+ }+ }+yy577:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy579;+ if (yych <= '/') goto yy493;+ goto yy580;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy580;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy580;+ goto yy493;+ }+ }+yy578:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy580;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy580;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy580;+ goto yy493;+ }+ }+yy579:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy581;+ if (yych <= '/') goto yy493;+ goto yy582;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy582;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy582;+ goto yy493;+ }+ }+yy580:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy582;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy582;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy582;+ goto yy493;+ }+ }+yy581:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy583;+ if (yych <= '/') goto yy493;+ goto yy584;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy584;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy584;+ goto yy493;+ }+ }+yy582:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy584;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy584;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy584;+ goto yy493;+ }+ }+yy583:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy585;+ if (yych <= '/') goto yy493;+ goto yy586;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy586;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy586;+ goto yy493;+ }+ }+yy584:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy586;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy586;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy586;+ goto yy493;+ }+ }+yy585:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy587;+ if (yych <= '/') goto yy493;+ goto yy588;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy588;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy588;+ goto yy493;+ }+ }+yy586:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy588;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy588;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy588;+ goto yy493;+ }+ }+yy587:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy589;+ if (yych <= '/') goto yy493;+ goto yy590;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy590;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy590;+ goto yy493;+ }+ }+yy588:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy590;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy590;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy590;+ goto yy493;+ }+ }+yy589:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy591;+ if (yych <= '/') goto yy493;+ goto yy592;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy592;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy592;+ goto yy493;+ }+ }+yy590:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy592;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy592;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy592;+ goto yy493;+ }+ }+yy591:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy593;+ if (yych <= '/') goto yy493;+ goto yy594;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy594;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy594;+ goto yy493;+ }+ }+yy592:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy594;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy594;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy594;+ goto yy493;+ }+ }+yy593:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy595;+ if (yych <= '/') goto yy493;+ goto yy596;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy596;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy596;+ goto yy493;+ }+ }+yy594:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy596;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy596;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy596;+ goto yy493;+ }+ }+yy595:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy597;+ if (yych <= '/') goto yy493;+ goto yy598;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy598;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy598;+ goto yy493;+ }+ }+yy596:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy598;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy598;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy598;+ goto yy493;+ }+ }+yy597:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy599;+ if (yych <= '/') goto yy493;+ goto yy600;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy600;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy600;+ goto yy493;+ }+ }+yy598:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy600;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy600;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy600;+ goto yy493;+ }+ }+yy599:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy601;+ if (yych <= '/') goto yy493;+ goto yy602;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy602;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy602;+ goto yy493;+ }+ }+yy600:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy602;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy602;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy602;+ goto yy493;+ }+ }+yy601:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy603;+ if (yych <= '/') goto yy493;+ goto yy604;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy604;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy604;+ goto yy493;+ }+ }+yy602:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy604;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy604;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy604;+ goto yy493;+ }+ }+yy603:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy605;+ if (yych <= '/') goto yy493;+ goto yy606;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy606;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy606;+ goto yy493;+ }+ }+yy604:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy606;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy606;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy606;+ goto yy493;+ }+ }+yy605:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy607;+ if (yych <= '/') goto yy493;+ goto yy608;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy608;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy608;+ goto yy493;+ }+ }+yy606:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy608;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy608;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy608;+ goto yy493;+ }+ }+yy607:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy609;+ if (yych <= '/') goto yy493;+ goto yy610;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy610;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy610;+ goto yy493;+ }+ }+yy608:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy610;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy610;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy610;+ goto yy493;+ }+ }+yy609:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy611;+ if (yych <= '/') goto yy493;+ goto yy612;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy612;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy612;+ goto yy493;+ }+ }+yy610:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy612;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy612;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy612;+ goto yy493;+ }+ }+yy611:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy613;+ if (yych <= '/') goto yy493;+ goto yy614;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy614;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy614;+ goto yy493;+ }+ }+yy612:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy614;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy614;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy614;+ goto yy493;+ }+ }+yy613:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy615;+ if (yych <= '/') goto yy493;+ goto yy616;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy616;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy616;+ goto yy493;+ }+ }+yy614:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy616;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy616;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy616;+ goto yy493;+ }+ }+yy615:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy617;+ if (yych <= '/') goto yy493;+ goto yy618;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy618;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy618;+ goto yy493;+ }+ }+yy616:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy618;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy618;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy618;+ goto yy493;+ }+ }+yy617:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy619;+ if (yych <= '/') goto yy493;+ goto yy620;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy620;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy620;+ goto yy493;+ }+ }+yy618:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy620;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy620;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy620;+ goto yy493;+ }+ }+yy619:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy621;+ if (yych <= '/') goto yy493;+ goto yy622;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy622;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy622;+ goto yy493;+ }+ }+yy620:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy622;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy622;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy622;+ goto yy493;+ }+ }+yy621:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych == '-') goto yy623;+ if (yych <= '/') goto yy493;+ goto yy624;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy624;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy624;+ goto yy493;+ }+ }+yy622:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy624;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy624;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy624;+ goto yy493;+ }+ }+yy623:+ ++p;+ yych = *p;+ if (yych <= '@') {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy625;+ goto yy493;+ } else {+ if (yych <= 'Z') goto yy625;+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy625;+ goto yy493;+ }+yy624:+ ++p;+ yych = *p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= '-') goto yy493;+ goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych >= ':') goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ } else {+ if (yych <= '`') goto yy493;+ if (yych >= '{') goto yy493;+ }+ }+yy625:+ ++p;+ yych = *p;+ if (yych == '.') goto yy499;+ if (yych == '>') goto yy500;+ goto yy493;+yy626:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy628;+ if (yych <= '/') goto yy493;+ goto yy629;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy629;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy629;+ goto yy493;+ }+ }+yy627:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy629;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy629;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy629;+ goto yy493;+ }+ }+yy628:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy630;+ if (yych <= '/') goto yy493;+ goto yy631;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy631;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy631;+ goto yy493;+ }+ }+yy629:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy631;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy631;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy631;+ goto yy493;+ }+ }+yy630:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy632;+ if (yych <= '/') goto yy493;+ goto yy633;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy633;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy633;+ goto yy493;+ }+ }+yy631:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy633;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy633;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy633;+ goto yy493;+ }+ }+yy632:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy634;+ if (yych <= '/') goto yy493;+ goto yy635;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy635;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy635;+ goto yy493;+ }+ }+yy633:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy635;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy635;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy635;+ goto yy493;+ }+ }+yy634:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy636;+ if (yych <= '/') goto yy493;+ goto yy637;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy637;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy637;+ goto yy493;+ }+ }+yy635:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy637;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy637;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy637;+ goto yy493;+ }+ }+yy636:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy638;+ if (yych <= '/') goto yy493;+ goto yy639;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy639;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy639;+ goto yy493;+ }+ }+yy637:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy639;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy639;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy639;+ goto yy493;+ }+ }+yy638:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy640;+ if (yych <= '/') goto yy493;+ goto yy641;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy641;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy641;+ goto yy493;+ }+ }+yy639:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy641;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy641;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy641;+ goto yy493;+ }+ }+yy640:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy642;+ if (yych <= '/') goto yy493;+ goto yy643;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy643;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy643;+ goto yy493;+ }+ }+yy641:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy643;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy643;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy643;+ goto yy493;+ }+ }+yy642:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy644;+ if (yych <= '/') goto yy493;+ goto yy645;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy645;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy645;+ goto yy493;+ }+ }+yy643:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy645;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy645;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy645;+ goto yy493;+ }+ }+yy644:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy646;+ if (yych <= '/') goto yy493;+ goto yy647;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy647;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy647;+ goto yy493;+ }+ }+yy645:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy647;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy647;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy647;+ goto yy493;+ }+ }+yy646:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy648;+ if (yych <= '/') goto yy493;+ goto yy649;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy649;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy649;+ goto yy493;+ }+ }+yy647:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy649;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy649;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy649;+ goto yy493;+ }+ }+yy648:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy650;+ if (yych <= '/') goto yy493;+ goto yy651;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy651;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy651;+ goto yy493;+ }+ }+yy649:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy651;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy651;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy651;+ goto yy493;+ }+ }+yy650:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy652;+ if (yych <= '/') goto yy493;+ goto yy653;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy653;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy653;+ goto yy493;+ }+ }+yy651:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy653;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy653;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy653;+ goto yy493;+ }+ }+yy652:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy654;+ if (yych <= '/') goto yy493;+ goto yy655;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy655;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy655;+ goto yy493;+ }+ }+yy653:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy655;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy655;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy655;+ goto yy493;+ }+ }+yy654:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy656;+ if (yych <= '/') goto yy493;+ goto yy657;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy657;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy657;+ goto yy493;+ }+ }+yy655:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy657;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy657;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy657;+ goto yy493;+ }+ }+yy656:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy658;+ if (yych <= '/') goto yy493;+ goto yy659;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy659;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy659;+ goto yy493;+ }+ }+yy657:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy659;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy659;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy659;+ goto yy493;+ }+ }+yy658:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy660;+ if (yych <= '/') goto yy493;+ goto yy661;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy661;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy661;+ goto yy493;+ }+ }+yy659:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy661;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy661;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy661;+ goto yy493;+ }+ }+yy660:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy662;+ if (yych <= '/') goto yy493;+ goto yy663;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy663;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy663;+ goto yy493;+ }+ }+yy661:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy663;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy663;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy663;+ goto yy493;+ }+ }+yy662:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy664;+ if (yych <= '/') goto yy493;+ goto yy665;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy665;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy665;+ goto yy493;+ }+ }+yy663:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy665;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy665;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy665;+ goto yy493;+ }+ }+yy664:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy666;+ if (yych <= '/') goto yy493;+ goto yy667;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy667;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy667;+ goto yy493;+ }+ }+yy665:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy667;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy667;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy667;+ goto yy493;+ }+ }+yy666:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy668;+ if (yych <= '/') goto yy493;+ goto yy669;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy669;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy669;+ goto yy493;+ }+ }+yy667:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy669;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy669;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy669;+ goto yy493;+ }+ }+yy668:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy670;+ if (yych <= '/') goto yy493;+ goto yy671;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy671;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy671;+ goto yy493;+ }+ }+yy669:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy671;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy671;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy671;+ goto yy493;+ }+ }+yy670:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy672;+ if (yych <= '/') goto yy493;+ goto yy673;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy673;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy673;+ goto yy493;+ }+ }+yy671:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy673;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy673;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy673;+ goto yy493;+ }+ }+yy672:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy674;+ if (yych <= '/') goto yy493;+ goto yy675;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy675;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy675;+ goto yy493;+ }+ }+yy673:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy675;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy675;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy675;+ goto yy493;+ }+ }+yy674:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy676;+ if (yych <= '/') goto yy493;+ goto yy677;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy677;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy677;+ goto yy493;+ }+ }+yy675:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy677;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy677;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy677;+ goto yy493;+ }+ }+yy676:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy678;+ if (yych <= '/') goto yy493;+ goto yy679;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy679;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy679;+ goto yy493;+ }+ }+yy677:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy679;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy679;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy679;+ goto yy493;+ }+ }+yy678:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy680;+ if (yych <= '/') goto yy493;+ goto yy681;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy681;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy681;+ goto yy493;+ }+ }+yy679:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy681;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy681;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy681;+ goto yy493;+ }+ }+yy680:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy682;+ if (yych <= '/') goto yy493;+ goto yy683;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy683;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy683;+ goto yy493;+ }+ }+yy681:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy683;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy683;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy683;+ goto yy493;+ }+ }+yy682:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy684;+ if (yych <= '/') goto yy493;+ goto yy685;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy685;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy685;+ goto yy493;+ }+ }+yy683:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy685;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy685;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy685;+ goto yy493;+ }+ }+yy684:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy686;+ if (yych <= '/') goto yy493;+ goto yy687;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy687;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy687;+ goto yy493;+ }+ }+yy685:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy687;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy687;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy687;+ goto yy493;+ }+ }+yy686:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy688;+ if (yych <= '/') goto yy493;+ goto yy689;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy689;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy689;+ goto yy493;+ }+ }+yy687:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy689;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy689;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy689;+ goto yy493;+ }+ }+yy688:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy690;+ if (yych <= '/') goto yy493;+ goto yy691;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy691;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy691;+ goto yy493;+ }+ }+yy689:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy691;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy691;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy691;+ goto yy493;+ }+ }+yy690:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy692;+ if (yych <= '/') goto yy493;+ goto yy693;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy693;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy693;+ goto yy493;+ }+ }+yy691:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy693;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy693;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy693;+ goto yy493;+ }+ }+yy692:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy694;+ if (yych <= '/') goto yy493;+ goto yy695;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy695;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy695;+ goto yy493;+ }+ }+yy693:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy695;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy695;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy695;+ goto yy493;+ }+ }+yy694:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy696;+ if (yych <= '/') goto yy493;+ goto yy697;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy697;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy697;+ goto yy493;+ }+ }+yy695:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy697;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy697;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy697;+ goto yy493;+ }+ }+yy696:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy698;+ if (yych <= '/') goto yy493;+ goto yy699;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy699;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy699;+ goto yy493;+ }+ }+yy697:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy699;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy699;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy699;+ goto yy493;+ }+ }+yy698:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy700;+ if (yych <= '/') goto yy493;+ goto yy701;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy701;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy701;+ goto yy493;+ }+ }+yy699:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy701;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy701;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy701;+ goto yy493;+ }+ }+yy700:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy702;+ if (yych <= '/') goto yy493;+ goto yy703;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy703;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy703;+ goto yy493;+ }+ }+yy701:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy703;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy703;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy703;+ goto yy493;+ }+ }+yy702:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy704;+ if (yych <= '/') goto yy493;+ goto yy705;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy705;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy705;+ goto yy493;+ }+ }+yy703:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy705;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy705;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy705;+ goto yy493;+ }+ }+yy704:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy706;+ if (yych <= '/') goto yy493;+ goto yy707;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy707;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy707;+ goto yy493;+ }+ }+yy705:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy707;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy707;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy707;+ goto yy493;+ }+ }+yy706:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy708;+ if (yych <= '/') goto yy493;+ goto yy709;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy709;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy709;+ goto yy493;+ }+ }+yy707:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy709;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy709;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy709;+ goto yy493;+ }+ }+yy708:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy710;+ if (yych <= '/') goto yy493;+ goto yy711;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy711;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy711;+ goto yy493;+ }+ }+yy709:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy711;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy711;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy711;+ goto yy493;+ }+ }+yy710:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy712;+ if (yych <= '/') goto yy493;+ goto yy713;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy713;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy713;+ goto yy493;+ }+ }+yy711:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy713;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy713;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy713;+ goto yy493;+ }+ }+yy712:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy714;+ if (yych <= '/') goto yy493;+ goto yy715;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy715;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy715;+ goto yy493;+ }+ }+yy713:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy715;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy715;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy715;+ goto yy493;+ }+ }+yy714:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy716;+ if (yych <= '/') goto yy493;+ goto yy717;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy717;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy717;+ goto yy493;+ }+ }+yy715:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy717;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy717;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy717;+ goto yy493;+ }+ }+yy716:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy718;+ if (yych <= '/') goto yy493;+ goto yy719;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy719;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy719;+ goto yy493;+ }+ }+yy717:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy719;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy719;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy719;+ goto yy493;+ }+ }+yy718:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy720;+ if (yych <= '/') goto yy493;+ goto yy721;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy721;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy721;+ goto yy493;+ }+ }+yy719:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy721;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy721;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy721;+ goto yy493;+ }+ }+yy720:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy722;+ if (yych <= '/') goto yy493;+ goto yy723;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy723;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy723;+ goto yy493;+ }+ }+yy721:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy723;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy723;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy723;+ goto yy493;+ }+ }+yy722:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy724;+ if (yych <= '/') goto yy493;+ goto yy725;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy725;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy725;+ goto yy493;+ }+ }+yy723:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy725;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy725;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy725;+ goto yy493;+ }+ }+yy724:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy726;+ if (yych <= '/') goto yy493;+ goto yy727;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy727;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy727;+ goto yy493;+ }+ }+yy725:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy727;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy727;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy727;+ goto yy493;+ }+ }+yy726:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy728;+ if (yych <= '/') goto yy493;+ goto yy729;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy729;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy729;+ goto yy493;+ }+ }+yy727:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy729;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy729;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy729;+ goto yy493;+ }+ }+yy728:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy730;+ if (yych <= '/') goto yy493;+ goto yy731;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy731;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy731;+ goto yy493;+ }+ }+yy729:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy731;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy731;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy731;+ goto yy493;+ }+ }+yy730:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy732;+ if (yych <= '/') goto yy493;+ goto yy733;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy733;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy733;+ goto yy493;+ }+ }+yy731:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy733;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy733;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy733;+ goto yy493;+ }+ }+yy732:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy734;+ if (yych <= '/') goto yy493;+ goto yy735;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy735;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy735;+ goto yy493;+ }+ }+yy733:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy735;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy735;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy735;+ goto yy493;+ }+ }+yy734:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy736;+ if (yych <= '/') goto yy493;+ goto yy737;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy737;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy737;+ goto yy493;+ }+ }+yy735:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy737;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy737;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy737;+ goto yy493;+ }+ }+yy736:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy738;+ if (yych <= '/') goto yy493;+ goto yy739;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy739;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy739;+ goto yy493;+ }+ }+yy737:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy739;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy739;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy739;+ goto yy493;+ }+ }+yy738:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy740;+ if (yych <= '/') goto yy493;+ goto yy741;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy741;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy741;+ goto yy493;+ }+ }+yy739:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy741;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy741;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy741;+ goto yy493;+ }+ }+yy740:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy742;+ if (yych <= '/') goto yy493;+ goto yy743;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy743;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy743;+ goto yy493;+ }+ }+yy741:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy743;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy743;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy743;+ goto yy493;+ }+ }+yy742:+ yych = *++p;+ if (yych <= '9') {+ if (yych == '-') goto yy744;+ if (yych <= '/') goto yy493;+ goto yy745;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy493;+ goto yy745;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy745;+ goto yy493;+ }+ }+yy743:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '.') {+ if (yych <= ',') goto yy493;+ if (yych >= '.') goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy745;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy745;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy745;+ goto yy493;+ }+ }+yy744:+ yych = *++p;+ if (yych <= '@') {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy625;+ goto yy493;+ } else {+ if (yych <= 'Z') goto yy625;+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy625;+ goto yy493;+ }+yy745:+ ++p;+ if ((yych = *p) <= '=') {+ if (yych <= '.') {+ if (yych <= '-') goto yy493;+ goto yy499;+ } else {+ if (yych <= '/') goto yy493;+ if (yych <= '9') goto yy625;+ goto yy493;+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '>') goto yy500;+ if (yych <= '@') goto yy493;+ goto yy625;+ } else {+ if (yych <= '`') goto yy493;+ if (yych <= 'z') goto yy625;+ goto yy493;+ }+ }+}++}++// Try to match an HTML tag after first <, returning num of chars matched.+int _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, 230, 230, 230, 230, 230, 230, 230, + 230, 199, 199, 199, 199, 199, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 199, 230, 70, 230, 230, 230, 230, 134, + 230, 230, 230, 230, 230, 246, 246, 230, + 254, 254, 254, 254, 254, 254, 254, 254, + 254, 254, 246, 230, 198, 198, 196, 230, + 230, 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, 230, 230, 226, 230, 246, + 198, 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, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + /* table 9 .. 11: 256 */+ 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, 32, 160, 160, + 160, 160, 160, 160, 160, 160, 160, 160, + 160, 160, 160, 160, 160, 160, 160, 128, + 160, 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, 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, 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, 160, + };+ yych = *p;+ if (yych <= '/') {+ if (yych <= ' ') {+ if (yych != '\n') goto yy753;+ } else {+ if (yych <= '!') goto yy751;+ if (yych <= '.') goto yy753;+ goto yy750;+ }+ } else {+ if (yych <= '@') {+ if (yych == '?') goto yy752;+ goto yy753;+ } else {+ if (yych <= 'Z') goto yy749;+ if (yych <= '`') goto yy753;+ if (yych <= 'z') goto yy749;+ goto yy753;+ }+ }+yy748:+ { return 0; }+yy749:+ yych = *(marker = ++p);+ if (yych <= '9') {+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy748;+ if (yych <= '\r') goto yy790;+ goto yy748;+ } else {+ if (yych <= ' ') goto yy790;+ if (yych <= '.') goto yy748;+ if (yych <= '/') goto yy792;+ goto yy788;+ }+ } else {+ if (yych <= '@') {+ if (yych == '>') goto yy758;+ goto yy748;+ } else {+ if (yych <= 'Z') goto yy788;+ if (yych <= '`') goto yy748;+ if (yych <= 'z') goto yy788;+ goto yy748;+ }+ }+yy750:+ yych = *(marker = ++p);+ if (yych <= '@') goto yy748;+ if (yych <= 'Z') goto yy784;+ if (yych <= '`') goto yy748;+ if (yych <= 'z') goto yy784;+ goto yy748;+yy751:+ yych = *(marker = ++p);+ if (yybm[256+yych] & 64) {+ goto yy761;+ }+ if (yych == '-') goto yy763;+ if (yych == '[') goto yy760;+ goto yy748;+yy752:+ yych = *(marker = ++p);+ if (yych <= 0x00) goto yy748;+ goto yy755;+yy753:+ yych = *++p;+ goto yy748;+yy754:+ ++p;+ yych = *p;+yy755:+ if (yybm[256+yych] & 32) {+ goto yy754;+ }+ if (yych >= 0x01) goto yy757;+yy756:+ p = marker;+ goto yy748;+yy757:+ ++p;+ yych = *p;+ if (yych <= 0x00) goto yy756;+ if (yych != '>') goto yy754;+yy758:+ ++p;+ { return (p - start); }+yy760:+ yych = *++p;+ if (yych == 'C') goto yy775;+ if (yych == 'c') goto yy775;+ goto yy756;+yy761:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 1) {+ goto yy771;+ }+ if (yych <= '@') goto yy756;+ if (yych <= 'Z') goto yy761;+ goto yy756;+yy763:+ yych = *++p;+ if (yych != '-') goto yy756;+ yych = *++p;+ if (yych == '-') goto yy765;+ if (yych == '>') goto yy756;+ goto yy767;+yy765:+ yych = *++p;+ if (yych == '-') goto yy770;+ if (yych == '>') goto yy756;+ goto yy767;+yy766:+ ++p;+ yych = *p;+yy767:+ if (yybm[256+yych] & 128) {+ goto yy766;+ }+ if (yych <= 0x00) goto yy756;+ ++p;+ yych = *p;+ if (yybm[256+yych] & 128) {+ goto yy766;+ }+ if (yych <= 0x00) goto yy756;+ yych = *++p;+ if (yych == '>') goto yy758;+ goto yy756;+yy770:+ yych = *++p;+ if (yych == '>') goto yy758;+ goto yy756;+yy771:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 1) {+ goto yy771;+ }+ if (yych <= 0x00) goto yy756;+ if (yych == '>') goto yy758;+yy773:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 2) {+ goto yy773;+ }+ if (yych <= 0x00) goto yy756;+ goto yy758;+yy775:+ yych = *++p;+ if (yych == 'D') goto yy776;+ if (yych != 'd') goto yy756;+yy776:+ yych = *++p;+ if (yych == 'A') goto yy777;+ if (yych != 'a') goto yy756;+yy777:+ yych = *++p;+ if (yych == 'T') goto yy778;+ if (yych != 't') goto yy756;+yy778:+ yych = *++p;+ if (yych == 'A') goto yy779;+ if (yych != 'a') goto yy756;+yy779:+ yych = *++p;+ if (yych != '[') goto yy756;+yy780:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 4) {+ goto yy780;+ }+ if (yych <= 0x00) goto yy756;+ ++p;+ yych = *p;+ if (yybm[0+yych] & 4) {+ goto yy780;+ }+ if (yych <= 0x00) goto yy756;+ ++p;+ yych = *p;+ if (yych <= 0x00) goto yy756;+ if (yych == '>') goto yy758;+ goto yy780;+yy784:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 8) {+ goto yy784;+ }+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy756;+ if (yych >= 0x0E) goto yy756;+ } else {+ if (yych <= ' ') goto yy786;+ if (yych == '>') goto yy758;+ goto yy756;+ }+yy786:+ ++p;+ yych = *p;+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy756;+ if (yych <= '\r') goto yy786;+ goto yy756;+ } else {+ if (yych <= ' ') goto yy786;+ if (yych == '>') goto yy758;+ goto yy756;+ }+yy788:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy756;+ if (yych >= 0x0E) goto yy756;+ } else {+ if (yych <= ' ') goto yy790;+ if (yych <= '.') goto yy756;+ if (yych <= '/') goto yy792;+ goto yy788;+ }+ } else {+ if (yych <= '@') {+ if (yych == '>') goto yy758;+ goto yy756;+ } else {+ if (yych <= 'Z') goto yy788;+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy788;+ goto yy756;+ }+ }+yy790:+ ++p;+ yych = *p;+ if (yych <= ':') {+ if (yych <= ' ') {+ if (yych <= 0x08) goto yy756;+ if (yych <= '\r') goto yy790;+ if (yych <= 0x1F) goto yy756;+ goto yy790;+ } else {+ if (yych == '/') goto yy792;+ if (yych <= '9') goto yy756;+ goto yy793;+ }+ } else {+ if (yych <= 'Z') {+ if (yych == '>') goto yy758;+ if (yych <= '@') goto yy756;+ goto yy793;+ } else {+ if (yych <= '_') {+ if (yych <= '^') goto yy756;+ goto yy793;+ } else {+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy793;+ goto yy756;+ }+ }+ }+yy792:+ yych = *++p;+ if (yych == '>') goto yy758;+ goto yy756;+yy793:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 16) {+ goto yy793;+ }+ if (yych <= '.') {+ if (yych <= '\r') {+ if (yych <= 0x08) goto yy756;+ } else {+ if (yych != ' ') goto yy756;+ }+ } else {+ if (yych <= '<') {+ if (yych <= '/') goto yy792;+ goto yy756;+ } else {+ if (yych <= '=') goto yy797;+ if (yych <= '>') goto yy758;+ goto yy756;+ }+ }+yy795:+ ++p;+ yych = *p;+ if (yych <= '<') {+ if (yych <= ' ') {+ if (yych <= 0x08) goto yy756;+ if (yych <= '\r') goto yy795;+ if (yych <= 0x1F) goto yy756;+ goto yy795;+ } else {+ if (yych <= '/') {+ if (yych <= '.') goto yy756;+ goto yy792;+ } else {+ if (yych == ':') goto yy793;+ goto yy756;+ }+ }+ } else {+ if (yych <= 'Z') {+ if (yych <= '=') goto yy797;+ if (yych <= '>') goto yy758;+ if (yych <= '@') goto yy756;+ goto yy793;+ } else {+ if (yych <= '_') {+ if (yych <= '^') goto yy756;+ goto yy793;+ } else {+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy793;+ goto yy756;+ }+ }+ }+yy797:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy799;+ }+ if (yych <= 0x00) goto yy756;+ if (yych <= '!') goto yy798;+ if (yych <= '"') goto yy803;+ if (yych <= ';') goto yy801;+ goto yy756;+yy798:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy799;+ }+ if (yych <= '"') {+ if (yych <= 0x00) goto yy756;+ if (yych <= '!') goto yy812;+ goto yy803;+ } else {+ if (yych <= ';') goto yy801;+ if (yych == '>') goto yy758;+ goto yy756;+ }+yy799:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy799;+ }+ if (yych <= 0x00) goto yy756;+ if (yych <= '!') goto yy806;+ if (yych == '>') goto yy758;+ goto yy756;+yy801:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy801;+ }+ if (yych <= 0x00) goto yy756;+ goto yy805;+yy803:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy803;+ }+ if (yych <= 0x00) goto yy756;+yy805:+ ++p;+ yych = *p;+ if (yych <= ' ') {+ if (yych <= 0x08) goto yy756;+ if (yych <= '\r') goto yy790;+ if (yych <= 0x1F) goto yy756;+ goto yy790;+ } else {+ if (yych <= '/') {+ if (yych <= '.') goto yy756;+ goto yy792;+ } else {+ if (yych == '>') goto yy758;+ goto yy756;+ }+ }+yy806:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych <= ' ') {+ if (yych <= 0x08) {+ if (yych <= 0x00) goto yy756;+ goto yy799;+ } else {+ if (yych <= '\r') goto yy806;+ if (yych <= 0x1F) goto yy799;+ goto yy806;+ }+ } else {+ if (yych <= '"') {+ if (yych <= '!') goto yy799;+ goto yy756;+ } else {+ if (yych == '\'') goto yy756;+ goto yy799;+ }+ }+ } else {+ if (yych <= '@') {+ if (yych <= ';') {+ if (yych >= ';') goto yy799;+ } else {+ if (yych <= '=') goto yy756;+ if (yych <= '>') goto yy758;+ goto yy799;+ }+ } else {+ if (yych <= '_') {+ if (yych <= 'Z') goto yy808;+ if (yych <= '^') goto yy799;+ } else {+ if (yych <= '`') goto yy756;+ if (yych >= '{') goto yy799;+ }+ }+ }+yy808:+ ++p;+ yych = *p;+ if (yych <= '/') {+ if (yych <= '!') {+ if (yych <= '\r') {+ if (yych <= 0x00) goto yy756;+ if (yych <= 0x08) goto yy799;+ } else {+ if (yych != ' ') goto yy799;+ }+ } else {+ if (yych <= '\'') {+ if (yych <= '"') goto yy756;+ if (yych <= '&') goto yy799;+ goto yy756;+ } else {+ if (yych <= ',') goto yy799;+ if (yych <= '.') goto yy808;+ goto yy799;+ }+ }+ } else {+ if (yych <= '@') {+ if (yych <= '<') {+ if (yych <= ':') goto yy808;+ if (yych <= ';') goto yy799;+ goto yy756;+ } else {+ if (yych <= '=') goto yy797;+ if (yych <= '>') goto yy758;+ goto yy799;+ }+ } else {+ if (yych <= '_') {+ if (yych <= 'Z') goto yy808;+ if (yych <= '^') goto yy799;+ goto yy808;+ } else {+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy808;+ goto yy799;+ }+ }+ }+yy810:+ ++p;+ yych = *p;+ if (yych <= ':') {+ if (yych <= ' ') {+ if (yych <= 0x08) {+ if (yych <= 0x00) goto yy756;+ goto yy799;+ } else {+ if (yych <= '\r') goto yy810;+ if (yych <= 0x1F) goto yy799;+ goto yy810;+ }+ } else {+ if (yych <= '&') {+ if (yych == '"') goto yy756;+ goto yy799;+ } else {+ if (yych <= '\'') goto yy756;+ if (yych <= '9') goto yy799;+ goto yy808;+ }+ }+ } else {+ if (yych <= '@') {+ if (yych <= '<') {+ if (yych <= ';') goto yy799;+ goto yy756;+ } else {+ if (yych <= '=') goto yy797;+ if (yych <= '>') goto yy758;+ goto yy799;+ }+ } else {+ if (yych <= '_') {+ if (yych <= 'Z') goto yy808;+ if (yych <= '^') goto yy799;+ goto yy808;+ } else {+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy808;+ goto yy799;+ }+ }+ }+yy812:+ ++p;+ yych = *p;+ if (yych <= '9') {+ if (yych <= ' ') {+ if (yych <= 0x08) {+ if (yych <= 0x00) goto yy756;+ goto yy799;+ } else {+ if (yych <= '\r') goto yy812;+ if (yych <= 0x1F) goto yy799;+ goto yy812;+ }+ } else {+ if (yych <= '"') {+ if (yych <= '!') goto yy799;+ goto yy803;+ } else {+ if (yych == '\'') goto yy801;+ goto yy799;+ }+ }+ } else {+ if (yych <= '@') {+ if (yych <= ';') {+ if (yych <= ':') goto yy808;+ goto yy799;+ } else {+ if (yych <= '=') goto yy756;+ if (yych <= '>') goto yy758;+ goto yy799;+ }+ } else {+ if (yych <= '_') {+ if (yych <= 'Z') goto yy808;+ if (yych <= '^') goto yy799;+ goto yy808;+ } else {+ if (yych <= '`') goto yy756;+ if (yych <= 'z') goto yy808;+ goto yy799;+ }+ }+ }+}++}++// Try to match an HTML block tag including first <,+// returning num of chars matched.+int _scan_html_block_tag(const unsigned char *p)+{+ const unsigned char *marker = NULL;+ const unsigned char *start = p;++{+ unsigned char yych;+ yych = *p;+ if (yych == '\n') goto yy816;+ if (yych == '<') goto yy817;+ goto yy818;+yy816:+ { return 0; }+yy817:+ yych = *(marker = ++p);+ switch (yych) {+ case '!':+ case '?': goto yy819;+ case '/': goto yy838;+ case 'A':+ case 'a': goto yy823;+ case 'B':+ case 'b': goto yy826;+ case 'C':+ case 'c': goto yy830;+ case 'D':+ case 'd': goto yy831;+ case 'E':+ case 'e': goto yy834;+ case 'F':+ case 'f': goto yy835;+ case 'H':+ case 'h': goto yy824;+ case 'I':+ case 'i': goto yy825;+ case 'L':+ case 'l': goto yy827;+ case 'M':+ case 'm': goto yy828;+ case 'O':+ case 'o': goto yy829;+ case 'P':+ case 'p': goto yy821;+ case 'S':+ case 's': goto yy832;+ case 'T':+ case 't': goto yy833;+ case 'U':+ case 'u': goto yy836;+ case 'V':+ case 'v': goto yy837;+ default: goto yy816;+ }+yy818:+ yych = *++p;+ goto yy816;+yy819:+ ++p;+ { return (p - start); }+yy821:+ yych = *++p;+ if (yych <= '/') {+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy822;+ if (yych <= '\r') goto yy982;+ } else {+ if (yych <= ' ') goto yy982;+ if (yych >= '/') goto yy982;+ }+ } else {+ if (yych <= 'Q') {+ if (yych == '>') goto yy982;+ } else {+ if (yych <= 'R') goto yy1095;+ if (yych == 'r') goto yy1095;+ }+ }+yy822:+ p = marker;+ goto yy816;+yy823:+ yych = *++p;+ if (yych <= 'S') {+ if (yych <= 'Q') goto yy822;+ if (yych <= 'R') goto yy1088;+ goto yy1087;+ } else {+ if (yych <= 'q') goto yy822;+ if (yych <= 'r') goto yy1088;+ if (yych <= 's') goto yy1087;+ goto yy822;+ }+yy824:+ yych = *++p;+ if (yych <= 'Q') {+ if (yych <= 'D') {+ if (yych <= '0') goto yy822;+ if (yych <= '6') goto yy981;+ goto yy822;+ } else {+ if (yych <= 'E') goto yy1080;+ if (yych == 'G') goto yy1079;+ goto yy822;+ }+ } else {+ if (yych <= 'f') {+ if (yych <= 'R') goto yy981;+ if (yych == 'e') goto yy1080;+ goto yy822;+ } else {+ if (yych <= 'g') goto yy1079;+ if (yych == 'r') goto yy981;+ goto yy822;+ }+ }+yy825:+ yych = *++p;+ if (yych == 'F') goto yy1075;+ if (yych == 'f') goto yy1075;+ goto yy822;+yy826:+ yych = *++p;+ if (yych <= 'U') {+ if (yych <= 'N') {+ if (yych == 'L') goto yy1063;+ goto yy822;+ } else {+ if (yych <= 'O') goto yy1062;+ if (yych <= 'T') goto yy822;+ goto yy1061;+ }+ } else {+ if (yych <= 'n') {+ if (yych == 'l') goto yy1063;+ goto yy822;+ } else {+ if (yych <= 'o') goto yy1062;+ if (yych == 'u') goto yy1061;+ goto yy822;+ }+ }+yy827:+ yych = *++p;+ if (yych == 'I') goto yy981;+ if (yych == 'i') goto yy981;+ goto yy822;+yy828:+ yych = *++p;+ if (yych == 'A') goto yy1060;+ if (yych == 'a') goto yy1060;+ goto yy822;+yy829:+ yych = *++p;+ if (yych <= 'U') {+ if (yych <= 'K') {+ if (yych == 'B') goto yy1053;+ goto yy822;+ } else {+ if (yych <= 'L') goto yy981;+ if (yych <= 'T') goto yy822;+ goto yy1052;+ }+ } else {+ if (yych <= 'k') {+ if (yych == 'b') goto yy1053;+ goto yy822;+ } else {+ if (yych <= 'l') goto yy981;+ if (yych == 'u') goto yy1052;+ goto yy822;+ }+ }+yy830:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'A') goto yy1039;+ if (yych <= 'N') goto yy822;+ goto yy1038;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy822;+ goto yy1039;+ } else {+ if (yych == 'o') goto yy1038;+ goto yy822;+ }+ }+yy831:+ yych = *++p;+ if (yych <= 'T') {+ if (yych <= 'I') {+ if (yych == 'D') goto yy981;+ if (yych <= 'H') goto yy822;+ goto yy1037;+ } else {+ if (yych == 'L') goto yy981;+ if (yych <= 'S') goto yy822;+ goto yy981;+ }+ } else {+ if (yych <= 'i') {+ if (yych == 'd') goto yy981;+ if (yych <= 'h') goto yy822;+ goto yy1037;+ } else {+ if (yych <= 'l') {+ if (yych <= 'k') goto yy822;+ goto yy981;+ } else {+ if (yych == 't') goto yy981;+ goto yy822;+ }+ }+ }+yy832:+ yych = *++p;+ if (yych <= 'T') {+ if (yych <= 'D') {+ if (yych == 'C') goto yy1026;+ goto yy822;+ } else {+ if (yych <= 'E') goto yy1027;+ if (yych <= 'S') goto yy822;+ goto yy1025;+ }+ } else {+ if (yych <= 'd') {+ if (yych == 'c') goto yy1026;+ goto yy822;+ } else {+ if (yych <= 'e') goto yy1027;+ if (yych == 't') goto yy1025;+ goto yy822;+ }+ }+yy833:+ yych = *++p;+ switch (yych) {+ case 'A':+ case 'a': goto yy1011;+ case 'B':+ case 'b': goto yy1010;+ case 'D':+ case 'R':+ case 'd':+ case 'r': goto yy981;+ case 'E':+ case 'e': goto yy1009;+ case 'F':+ case 'f': goto yy1008;+ case 'H':+ case 'h': goto yy1007;+ default: goto yy822;+ }+yy834:+ yych = *++p;+ if (yych == 'M') goto yy1004;+ if (yych == 'm') goto yy1004;+ goto yy822;+yy835:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'I') goto yy985;+ if (yych <= 'N') goto yy822;+ goto yy984;+ } else {+ if (yych <= 'i') {+ if (yych <= 'h') goto yy822;+ goto yy985;+ } else {+ if (yych == 'o') goto yy984;+ goto yy822;+ }+ }+yy836:+ yych = *++p;+ if (yych == 'L') goto yy981;+ if (yych == 'l') goto yy981;+ goto yy822;+yy837:+ yych = *++p;+ if (yych == 'I') goto yy978;+ if (yych == 'i') goto yy978;+ goto yy822;+yy838:+ yych = *++p;+ switch (yych) {+ case 'A':+ case 'a': goto yy840;+ case 'B':+ case 'b': goto yy843;+ case 'C':+ case 'c': goto yy847;+ case 'D':+ case 'd': goto yy848;+ case 'E':+ case 'e': goto yy851;+ case 'F':+ case 'f': goto yy852;+ case 'H':+ case 'h': goto yy841;+ case 'I':+ case 'i': goto yy842;+ case 'L':+ case 'l': goto yy844;+ case 'M':+ case 'm': goto yy845;+ case 'O':+ case 'o': goto yy846;+ case 'P':+ case 'p': goto yy839;+ case 'S':+ case 's': goto yy849;+ case 'T':+ case 't': goto yy850;+ case 'U':+ case 'u': goto yy853;+ case 'V':+ case 'v': goto yy854;+ default: goto yy822;+ }+yy839:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '\r') {+ if (yych <= 0x08) goto yy822;+ goto yy859;+ } else {+ if (yych == ' ') goto yy859;+ goto yy822;+ }+ } else {+ if (yych <= 'R') {+ if (yych <= '>') goto yy859;+ if (yych <= 'Q') goto yy822;+ goto yy972;+ } else {+ if (yych == 'r') goto yy972;+ goto yy822;+ }+ }+yy840:+ yych = *++p;+ if (yych <= 'S') {+ if (yych <= 'Q') goto yy822;+ if (yych <= 'R') goto yy965;+ goto yy964;+ } else {+ if (yych <= 'q') goto yy822;+ if (yych <= 'r') goto yy965;+ if (yych <= 's') goto yy964;+ goto yy822;+ }+yy841:+ yych = *++p;+ if (yych <= 'Q') {+ if (yych <= 'D') {+ if (yych <= '0') goto yy822;+ if (yych <= '6') goto yy858;+ goto yy822;+ } else {+ if (yych <= 'E') goto yy957;+ if (yych == 'G') goto yy956;+ goto yy822;+ }+ } else {+ if (yych <= 'f') {+ if (yych <= 'R') goto yy858;+ if (yych == 'e') goto yy957;+ goto yy822;+ } else {+ if (yych <= 'g') goto yy956;+ if (yych == 'r') goto yy858;+ goto yy822;+ }+ }+yy842:+ yych = *++p;+ if (yych == 'F') goto yy952;+ if (yych == 'f') goto yy952;+ goto yy822;+yy843:+ yych = *++p;+ if (yych <= 'U') {+ if (yych <= 'N') {+ if (yych == 'L') goto yy940;+ goto yy822;+ } else {+ if (yych <= 'O') goto yy939;+ if (yych <= 'T') goto yy822;+ goto yy938;+ }+ } else {+ if (yych <= 'n') {+ if (yych == 'l') goto yy940;+ goto yy822;+ } else {+ if (yych <= 'o') goto yy939;+ if (yych == 'u') goto yy938;+ goto yy822;+ }+ }+yy844:+ yych = *++p;+ if (yych == 'I') goto yy858;+ if (yych == 'i') goto yy858;+ goto yy822;+yy845:+ yych = *++p;+ if (yych == 'A') goto yy937;+ if (yych == 'a') goto yy937;+ goto yy822;+yy846:+ yych = *++p;+ if (yych <= 'U') {+ if (yych <= 'K') {+ if (yych == 'B') goto yy930;+ goto yy822;+ } else {+ if (yych <= 'L') goto yy858;+ if (yych <= 'T') goto yy822;+ goto yy929;+ }+ } else {+ if (yych <= 'k') {+ if (yych == 'b') goto yy930;+ goto yy822;+ } else {+ if (yych <= 'l') goto yy858;+ if (yych == 'u') goto yy929;+ goto yy822;+ }+ }+yy847:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'A') goto yy916;+ if (yych <= 'N') goto yy822;+ goto yy915;+ } else {+ if (yych <= 'a') {+ if (yych <= '`') goto yy822;+ goto yy916;+ } else {+ if (yych == 'o') goto yy915;+ goto yy822;+ }+ }+yy848:+ yych = *++p;+ if (yych <= 'T') {+ if (yych <= 'I') {+ if (yych == 'D') goto yy858;+ if (yych <= 'H') goto yy822;+ goto yy914;+ } else {+ if (yych == 'L') goto yy858;+ if (yych <= 'S') goto yy822;+ goto yy858;+ }+ } else {+ if (yych <= 'i') {+ if (yych == 'd') goto yy858;+ if (yych <= 'h') goto yy822;+ goto yy914;+ } else {+ if (yych <= 'l') {+ if (yych <= 'k') goto yy822;+ goto yy858;+ } else {+ if (yych == 't') goto yy858;+ goto yy822;+ }+ }+ }+yy849:+ yych = *++p;+ if (yych <= 'T') {+ if (yych <= 'D') {+ if (yych == 'C') goto yy903;+ goto yy822;+ } else {+ if (yych <= 'E') goto yy904;+ if (yych <= 'S') goto yy822;+ goto yy902;+ }+ } else {+ if (yych <= 'd') {+ if (yych == 'c') goto yy903;+ goto yy822;+ } else {+ if (yych <= 'e') goto yy904;+ if (yych == 't') goto yy902;+ goto yy822;+ }+ }+yy850:+ yych = *++p;+ switch (yych) {+ case 'A':+ case 'a': goto yy888;+ case 'B':+ case 'b': goto yy887;+ case 'D':+ case 'R':+ case 'd':+ case 'r': goto yy858;+ case 'E':+ case 'e': goto yy886;+ case 'F':+ case 'f': goto yy885;+ case 'H':+ case 'h': goto yy884;+ default: goto yy822;+ }+yy851:+ yych = *++p;+ if (yych == 'M') goto yy881;+ if (yych == 'm') goto yy881;+ goto yy822;+yy852:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'I') goto yy862;+ if (yych <= 'N') goto yy822;+ goto yy861;+ } else {+ if (yych <= 'i') {+ if (yych <= 'h') goto yy822;+ goto yy862;+ } else {+ if (yych == 'o') goto yy861;+ goto yy822;+ }+ }+yy853:+ yych = *++p;+ if (yych == 'L') goto yy858;+ if (yych == 'l') goto yy858;+ goto yy822;+yy854:+ yych = *++p;+ if (yych == 'I') goto yy855;+ if (yych != 'i') goto yy822;+yy855:+ yych = *++p;+ if (yych == 'D') goto yy856;+ if (yych != 'd') goto yy822;+yy856:+ yych = *++p;+ if (yych == 'E') goto yy857;+ if (yych != 'e') goto yy822;+yy857:+ yych = *++p;+ if (yych == 'O') goto yy858;+ if (yych != 'o') goto yy822;+yy858:+ yych = *++p;+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy822;+ if (yych >= 0x0E) goto yy822;+ } else {+ if (yych <= ' ') goto yy859;+ if (yych != '>') goto yy822;+ }+yy859:+ ++p;+ { return (p - start); }+yy861:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == 'O') goto yy877;+ if (yych <= 'Q') goto yy822;+ goto yy878;+ } else {+ if (yych <= 'o') {+ if (yych <= 'n') goto yy822;+ goto yy877;+ } else {+ if (yych == 'r') goto yy878;+ goto yy822;+ }+ }+yy862:+ yych = *++p;+ if (yych <= 'G') {+ if (yych == 'E') goto yy863;+ if (yych <= 'F') goto yy822;+ goto yy864;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy822;+ } else {+ if (yych == 'g') goto yy864;+ goto yy822;+ }+ }+yy863:+ yych = *++p;+ if (yych == 'L') goto yy873;+ if (yych == 'l') goto yy873;+ goto yy822;+yy864:+ yych = *++p;+ if (yych <= 'U') {+ if (yych == 'C') goto yy866;+ if (yych <= 'T') goto yy822;+ } else {+ if (yych <= 'c') {+ if (yych <= 'b') goto yy822;+ goto yy866;+ } else {+ if (yych != 'u') goto yy822;+ }+ }+ yych = *++p;+ if (yych == 'R') goto yy872;+ if (yych == 'r') goto yy872;+ goto yy822;+yy866:+ yych = *++p;+ if (yych == 'A') goto yy867;+ if (yych != 'a') goto yy822;+yy867:+ yych = *++p;+ if (yych == 'P') goto yy868;+ if (yych != 'p') goto yy822;+yy868:+ yych = *++p;+ if (yych == 'T') goto yy869;+ if (yych != 't') goto yy822;+yy869:+ yych = *++p;+ if (yych == 'I') goto yy870;+ if (yych != 'i') goto yy822;+yy870:+ yych = *++p;+ if (yych == 'O') goto yy871;+ if (yych != 'o') goto yy822;+yy871:+ yych = *++p;+ if (yych == 'N') goto yy858;+ if (yych == 'n') goto yy858;+ goto yy822;+yy872:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy873:+ yych = *++p;+ if (yych == 'D') goto yy874;+ if (yych != 'd') goto yy822;+yy874:+ yych = *++p;+ if (yych == 'S') goto yy875;+ if (yych != 's') goto yy822;+yy875:+ yych = *++p;+ if (yych == 'E') goto yy876;+ if (yych != 'e') goto yy822;+yy876:+ yych = *++p;+ if (yych == 'T') goto yy858;+ if (yych == 't') goto yy858;+ goto yy822;+yy877:+ yych = *++p;+ if (yych == 'T') goto yy879;+ if (yych == 't') goto yy879;+ goto yy822;+yy878:+ yych = *++p;+ if (yych == 'M') goto yy858;+ if (yych == 'm') goto yy858;+ goto yy822;+yy879:+ yych = *++p;+ if (yych == 'E') goto yy880;+ if (yych != 'e') goto yy822;+yy880:+ yych = *++p;+ if (yych == 'R') goto yy858;+ if (yych == 'r') goto yy858;+ goto yy822;+yy881:+ yych = *++p;+ if (yych == 'B') goto yy882;+ if (yych != 'b') goto yy822;+yy882:+ yych = *++p;+ if (yych == 'E') goto yy883;+ if (yych != 'e') goto yy822;+yy883:+ yych = *++p;+ if (yych == 'D') goto yy858;+ if (yych == 'd') goto yy858;+ goto yy822;+yy884:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '\r') {+ if (yych <= 0x08) goto yy822;+ goto yy859;+ } else {+ if (yych == ' ') goto yy859;+ goto yy822;+ }+ } else {+ if (yych <= 'E') {+ if (yych <= '>') goto yy859;+ if (yych <= 'D') goto yy822;+ goto yy900;+ } else {+ if (yych == 'e') goto yy900;+ goto yy822;+ }+ }+yy885:+ yych = *++p;+ if (yych == 'O') goto yy898;+ if (yych == 'o') goto yy898;+ goto yy822;+yy886:+ yych = *++p;+ if (yych == 'X') goto yy893;+ if (yych == 'x') goto yy893;+ goto yy822;+yy887:+ yych = *++p;+ if (yych == 'O') goto yy891;+ if (yych == 'o') goto yy891;+ goto yy822;+yy888:+ yych = *++p;+ if (yych == 'B') goto yy889;+ if (yych != 'b') goto yy822;+yy889:+ yych = *++p;+ if (yych == 'L') goto yy890;+ if (yych != 'l') goto yy822;+yy890:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy891:+ yych = *++p;+ if (yych == 'D') goto yy892;+ if (yych != 'd') goto yy822;+yy892:+ yych = *++p;+ if (yych == 'Y') goto yy858;+ if (yych == 'y') goto yy858;+ goto yy822;+yy893:+ yych = *++p;+ if (yych == 'T') goto yy894;+ if (yych != 't') goto yy822;+yy894:+ yych = *++p;+ if (yych == 'A') goto yy895;+ if (yych != 'a') goto yy822;+yy895:+ yych = *++p;+ if (yych == 'R') goto yy896;+ if (yych != 'r') goto yy822;+yy896:+ yych = *++p;+ if (yych == 'E') goto yy897;+ if (yych != 'e') goto yy822;+yy897:+ yych = *++p;+ if (yych == 'A') goto yy858;+ if (yych == 'a') goto yy858;+ goto yy822;+yy898:+ yych = *++p;+ if (yych == 'O') goto yy899;+ if (yych != 'o') goto yy822;+yy899:+ yych = *++p;+ if (yych == 'T') goto yy858;+ if (yych == 't') goto yy858;+ goto yy822;+yy900:+ yych = *++p;+ if (yych == 'A') goto yy901;+ if (yych != 'a') goto yy822;+yy901:+ yych = *++p;+ if (yych == 'D') goto yy858;+ if (yych == 'd') goto yy858;+ goto yy822;+yy902:+ yych = *++p;+ if (yych == 'Y') goto yy912;+ if (yych == 'y') goto yy912;+ goto yy822;+yy903:+ yych = *++p;+ if (yych == 'R') goto yy909;+ if (yych == 'r') goto yy909;+ goto yy822;+yy904:+ yych = *++p;+ if (yych == 'C') goto yy905;+ if (yych != 'c') goto yy822;+yy905:+ yych = *++p;+ if (yych == 'T') goto yy906;+ if (yych != 't') goto yy822;+yy906:+ yych = *++p;+ if (yych == 'I') goto yy907;+ if (yych != 'i') goto yy822;+yy907:+ yych = *++p;+ if (yych == 'O') goto yy908;+ if (yych != 'o') goto yy822;+yy908:+ yych = *++p;+ if (yych == 'N') goto yy858;+ if (yych == 'n') goto yy858;+ goto yy822;+yy909:+ yych = *++p;+ if (yych == 'I') goto yy910;+ if (yych != 'i') goto yy822;+yy910:+ yych = *++p;+ if (yych == 'P') goto yy911;+ if (yych != 'p') goto yy822;+yy911:+ yych = *++p;+ if (yych == 'T') goto yy858;+ if (yych == 't') goto yy858;+ goto yy822;+yy912:+ yych = *++p;+ if (yych == 'L') goto yy913;+ if (yych != 'l') goto yy822;+yy913:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy914:+ yych = *++p;+ if (yych == 'V') goto yy858;+ if (yych == 'v') goto yy858;+ goto yy822;+yy915:+ yych = *++p;+ if (yych == 'L') goto yy924;+ if (yych == 'l') goto yy924;+ goto yy822;+yy916:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'N') goto yy917;+ if (yych <= 'O') goto yy822;+ goto yy918;+ } else {+ if (yych <= 'n') {+ if (yych <= 'm') goto yy822;+ } else {+ if (yych == 'p') goto yy918;+ goto yy822;+ }+ }+yy917:+ yych = *++p;+ if (yych == 'V') goto yy922;+ if (yych == 'v') goto yy922;+ goto yy822;+yy918:+ yych = *++p;+ if (yych == 'T') goto yy919;+ if (yych != 't') goto yy822;+yy919:+ yych = *++p;+ if (yych == 'I') goto yy920;+ if (yych != 'i') goto yy822;+yy920:+ yych = *++p;+ if (yych == 'O') goto yy921;+ if (yych != 'o') goto yy822;+yy921:+ yych = *++p;+ if (yych == 'N') goto yy858;+ if (yych == 'n') goto yy858;+ goto yy822;+yy922:+ yych = *++p;+ if (yych == 'A') goto yy923;+ if (yych != 'a') goto yy822;+yy923:+ yych = *++p;+ if (yych == 'S') goto yy858;+ if (yych == 's') goto yy858;+ goto yy822;+yy924:+ yych = *++p;+ if (yych <= '=') {+ if (yych <= '\r') {+ if (yych <= 0x08) goto yy822;+ goto yy859;+ } else {+ if (yych == ' ') goto yy859;+ goto yy822;+ }+ } else {+ if (yych <= 'G') {+ if (yych <= '>') goto yy859;+ if (yych <= 'F') goto yy822;+ } else {+ if (yych != 'g') goto yy822;+ }+ }+ yych = *++p;+ if (yych == 'R') goto yy926;+ if (yych != 'r') goto yy822;+yy926:+ yych = *++p;+ if (yych == 'O') goto yy927;+ if (yych != 'o') goto yy822;+yy927:+ yych = *++p;+ if (yych == 'U') goto yy928;+ if (yych != 'u') goto yy822;+yy928:+ yych = *++p;+ if (yych == 'P') goto yy858;+ if (yych == 'p') goto yy858;+ goto yy822;+yy929:+ yych = *++p;+ if (yych == 'T') goto yy934;+ if (yych == 't') goto yy934;+ goto yy822;+yy930:+ yych = *++p;+ if (yych == 'J') goto yy931;+ if (yych != 'j') goto yy822;+yy931:+ yych = *++p;+ if (yych == 'E') goto yy932;+ if (yych != 'e') goto yy822;+yy932:+ yych = *++p;+ if (yych == 'C') goto yy933;+ if (yych != 'c') goto yy822;+yy933:+ yych = *++p;+ if (yych == 'T') goto yy858;+ if (yych == 't') goto yy858;+ goto yy822;+yy934:+ yych = *++p;+ if (yych == 'P') goto yy935;+ if (yych != 'p') goto yy822;+yy935:+ yych = *++p;+ if (yych == 'U') goto yy936;+ if (yych != 'u') goto yy822;+yy936:+ yych = *++p;+ if (yych == 'T') goto yy858;+ if (yych == 't') goto yy858;+ goto yy822;+yy937:+ yych = *++p;+ if (yych == 'P') goto yy858;+ if (yych == 'p') goto yy858;+ goto yy822;+yy938:+ yych = *++p;+ if (yych == 'T') goto yy949;+ if (yych == 't') goto yy949;+ goto yy822;+yy939:+ yych = *++p;+ if (yych == 'D') goto yy948;+ if (yych == 'd') goto yy948;+ goto yy822;+yy940:+ yych = *++p;+ if (yych == 'O') goto yy941;+ if (yych != 'o') goto yy822;+yy941:+ yych = *++p;+ if (yych == 'C') goto yy942;+ if (yych != 'c') goto yy822;+yy942:+ yych = *++p;+ if (yych == 'K') goto yy943;+ if (yych != 'k') goto yy822;+yy943:+ yych = *++p;+ if (yych == 'Q') goto yy944;+ if (yych != 'q') goto yy822;+yy944:+ yych = *++p;+ if (yych == 'U') goto yy945;+ if (yych != 'u') goto yy822;+yy945:+ yych = *++p;+ if (yych == 'O') goto yy946;+ if (yych != 'o') goto yy822;+yy946:+ yych = *++p;+ if (yych == 'T') goto yy947;+ if (yych != 't') goto yy822;+yy947:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy948:+ yych = *++p;+ if (yych == 'Y') goto yy858;+ if (yych == 'y') goto yy858;+ goto yy822;+yy949:+ yych = *++p;+ if (yych == 'T') goto yy950;+ if (yych != 't') goto yy822;+yy950:+ yych = *++p;+ if (yych == 'O') goto yy951;+ if (yych != 'o') goto yy822;+yy951:+ yych = *++p;+ if (yych == 'N') goto yy858;+ if (yych == 'n') goto yy858;+ goto yy822;+yy952:+ yych = *++p;+ if (yych == 'R') goto yy953;+ if (yych != 'r') goto yy822;+yy953:+ yych = *++p;+ if (yych == 'A') goto yy954;+ if (yych != 'a') goto yy822;+yy954:+ yych = *++p;+ if (yych == 'M') goto yy955;+ if (yych != 'm') goto yy822;+yy955:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy956:+ yych = *++p;+ if (yych == 'R') goto yy961;+ if (yych == 'r') goto yy961;+ goto yy822;+yy957:+ yych = *++p;+ if (yych == 'A') goto yy958;+ if (yych != 'a') goto yy822;+yy958:+ yych = *++p;+ if (yych == 'D') goto yy959;+ if (yych != 'd') goto yy822;+yy959:+ yych = *++p;+ if (yych == 'E') goto yy960;+ if (yych != 'e') goto yy822;+yy960:+ yych = *++p;+ if (yych == 'R') goto yy858;+ if (yych == 'r') goto yy858;+ goto yy822;+yy961:+ yych = *++p;+ if (yych == 'O') goto yy962;+ if (yych != 'o') goto yy822;+yy962:+ yych = *++p;+ if (yych == 'U') goto yy963;+ if (yych != 'u') goto yy822;+yy963:+ yych = *++p;+ if (yych == 'P') goto yy858;+ if (yych == 'p') goto yy858;+ goto yy822;+yy964:+ yych = *++p;+ if (yych == 'I') goto yy970;+ if (yych == 'i') goto yy970;+ goto yy822;+yy965:+ yych = *++p;+ if (yych == 'T') goto yy966;+ if (yych != 't') goto yy822;+yy966:+ yych = *++p;+ if (yych == 'I') goto yy967;+ if (yych != 'i') goto yy822;+yy967:+ yych = *++p;+ if (yych == 'C') goto yy968;+ if (yych != 'c') goto yy822;+yy968:+ yych = *++p;+ if (yych == 'L') goto yy969;+ if (yych != 'l') goto yy822;+yy969:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy970:+ yych = *++p;+ if (yych == 'D') goto yy971;+ if (yych != 'd') goto yy822;+yy971:+ yych = *++p;+ if (yych == 'E') goto yy858;+ if (yych == 'e') goto yy858;+ goto yy822;+yy972:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'E') goto yy858;+ if (yych <= 'N') goto yy822;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy822;+ goto yy858;+ } else {+ if (yych != 'o') goto yy822;+ }+ }+ yych = *++p;+ if (yych == 'G') goto yy974;+ if (yych != 'g') goto yy822;+yy974:+ yych = *++p;+ if (yych == 'R') goto yy975;+ if (yych != 'r') goto yy822;+yy975:+ yych = *++p;+ if (yych == 'E') goto yy976;+ if (yych != 'e') goto yy822;+yy976:+ yych = *++p;+ if (yych == 'S') goto yy977;+ if (yych != 's') goto yy822;+yy977:+ yych = *++p;+ if (yych == 'S') goto yy858;+ if (yych == 's') goto yy858;+ goto yy822;+yy978:+ yych = *++p;+ if (yych == 'D') goto yy979;+ if (yych != 'd') goto yy822;+yy979:+ yych = *++p;+ if (yych == 'E') goto yy980;+ if (yych != 'e') goto yy822;+yy980:+ yych = *++p;+ if (yych == 'O') goto yy981;+ if (yych != 'o') goto yy822;+yy981:+ yych = *++p;+ if (yych <= ' ') {+ if (yych <= 0x08) goto yy822;+ if (yych <= '\r') goto yy982;+ if (yych <= 0x1F) goto yy822;+ } else {+ if (yych <= '/') {+ if (yych <= '.') goto yy822;+ } else {+ if (yych != '>') goto yy822;+ }+ }+yy982:+ ++p;+ { return (p - start); }+yy984:+ yych = *++p;+ if (yych <= 'R') {+ if (yych == 'O') goto yy1000;+ if (yych <= 'Q') goto yy822;+ goto yy1001;+ } else {+ if (yych <= 'o') {+ if (yych <= 'n') goto yy822;+ goto yy1000;+ } else {+ if (yych == 'r') goto yy1001;+ goto yy822;+ }+ }+yy985:+ yych = *++p;+ if (yych <= 'G') {+ if (yych == 'E') goto yy986;+ if (yych <= 'F') goto yy822;+ goto yy987;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy822;+ } else {+ if (yych == 'g') goto yy987;+ goto yy822;+ }+ }+yy986:+ yych = *++p;+ if (yych == 'L') goto yy996;+ if (yych == 'l') goto yy996;+ goto yy822;+yy987:+ yych = *++p;+ if (yych <= 'U') {+ if (yych == 'C') goto yy989;+ if (yych <= 'T') goto yy822;+ } else {+ if (yych <= 'c') {+ if (yych <= 'b') goto yy822;+ goto yy989;+ } else {+ if (yych != 'u') goto yy822;+ }+ }+ yych = *++p;+ if (yych == 'R') goto yy995;+ if (yych == 'r') goto yy995;+ goto yy822;+yy989:+ yych = *++p;+ if (yych == 'A') goto yy990;+ if (yych != 'a') goto yy822;+yy990:+ yych = *++p;+ if (yych == 'P') goto yy991;+ if (yych != 'p') goto yy822;+yy991:+ yych = *++p;+ if (yych == 'T') goto yy992;+ if (yych != 't') goto yy822;+yy992:+ yych = *++p;+ if (yych == 'I') goto yy993;+ if (yych != 'i') goto yy822;+yy993:+ yych = *++p;+ if (yych == 'O') goto yy994;+ if (yych != 'o') goto yy822;+yy994:+ yych = *++p;+ if (yych == 'N') goto yy981;+ if (yych == 'n') goto yy981;+ goto yy822;+yy995:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy996:+ yych = *++p;+ if (yych == 'D') goto yy997;+ if (yych != 'd') goto yy822;+yy997:+ yych = *++p;+ if (yych == 'S') goto yy998;+ if (yych != 's') goto yy822;+yy998:+ yych = *++p;+ if (yych == 'E') goto yy999;+ if (yych != 'e') goto yy822;+yy999:+ yych = *++p;+ if (yych == 'T') goto yy981;+ if (yych == 't') goto yy981;+ goto yy822;+yy1000:+ yych = *++p;+ if (yych == 'T') goto yy1002;+ if (yych == 't') goto yy1002;+ goto yy822;+yy1001:+ yych = *++p;+ if (yych == 'M') goto yy981;+ if (yych == 'm') goto yy981;+ goto yy822;+yy1002:+ yych = *++p;+ if (yych == 'E') goto yy1003;+ if (yych != 'e') goto yy822;+yy1003:+ yych = *++p;+ if (yych == 'R') goto yy981;+ if (yych == 'r') goto yy981;+ goto yy822;+yy1004:+ yych = *++p;+ if (yych == 'B') goto yy1005;+ if (yych != 'b') goto yy822;+yy1005:+ yych = *++p;+ if (yych == 'E') goto yy1006;+ if (yych != 'e') goto yy822;+yy1006:+ yych = *++p;+ if (yych == 'D') goto yy981;+ if (yych == 'd') goto yy981;+ goto yy822;+yy1007:+ yych = *++p;+ if (yych <= '/') {+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy822;+ if (yych <= '\r') goto yy982;+ goto yy822;+ } else {+ if (yych <= ' ') goto yy982;+ if (yych <= '.') goto yy822;+ goto yy982;+ }+ } else {+ if (yych <= 'D') {+ if (yych == '>') goto yy982;+ goto yy822;+ } else {+ if (yych <= 'E') goto yy1023;+ if (yych == 'e') goto yy1023;+ goto yy822;+ }+ }+yy1008:+ yych = *++p;+ if (yych == 'O') goto yy1021;+ if (yych == 'o') goto yy1021;+ goto yy822;+yy1009:+ yych = *++p;+ if (yych == 'X') goto yy1016;+ if (yych == 'x') goto yy1016;+ goto yy822;+yy1010:+ yych = *++p;+ if (yych == 'O') goto yy1014;+ if (yych == 'o') goto yy1014;+ goto yy822;+yy1011:+ yych = *++p;+ if (yych == 'B') goto yy1012;+ if (yych != 'b') goto yy822;+yy1012:+ yych = *++p;+ if (yych == 'L') goto yy1013;+ if (yych != 'l') goto yy822;+yy1013:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1014:+ yych = *++p;+ if (yych == 'D') goto yy1015;+ if (yych != 'd') goto yy822;+yy1015:+ yych = *++p;+ if (yych == 'Y') goto yy981;+ if (yych == 'y') goto yy981;+ goto yy822;+yy1016:+ yych = *++p;+ if (yych == 'T') goto yy1017;+ if (yych != 't') goto yy822;+yy1017:+ yych = *++p;+ if (yych == 'A') goto yy1018;+ if (yych != 'a') goto yy822;+yy1018:+ yych = *++p;+ if (yych == 'R') goto yy1019;+ if (yych != 'r') goto yy822;+yy1019:+ yych = *++p;+ if (yych == 'E') goto yy1020;+ if (yych != 'e') goto yy822;+yy1020:+ yych = *++p;+ if (yych == 'A') goto yy981;+ if (yych == 'a') goto yy981;+ goto yy822;+yy1021:+ yych = *++p;+ if (yych == 'O') goto yy1022;+ if (yych != 'o') goto yy822;+yy1022:+ yych = *++p;+ if (yych == 'T') goto yy981;+ if (yych == 't') goto yy981;+ goto yy822;+yy1023:+ yych = *++p;+ if (yych == 'A') goto yy1024;+ if (yych != 'a') goto yy822;+yy1024:+ yych = *++p;+ if (yych == 'D') goto yy981;+ if (yych == 'd') goto yy981;+ goto yy822;+yy1025:+ yych = *++p;+ if (yych == 'Y') goto yy1035;+ if (yych == 'y') goto yy1035;+ goto yy822;+yy1026:+ yych = *++p;+ if (yych == 'R') goto yy1032;+ if (yych == 'r') goto yy1032;+ goto yy822;+yy1027:+ yych = *++p;+ if (yych == 'C') goto yy1028;+ if (yych != 'c') goto yy822;+yy1028:+ yych = *++p;+ if (yych == 'T') goto yy1029;+ if (yych != 't') goto yy822;+yy1029:+ yych = *++p;+ if (yych == 'I') goto yy1030;+ if (yych != 'i') goto yy822;+yy1030:+ yych = *++p;+ if (yych == 'O') goto yy1031;+ if (yych != 'o') goto yy822;+yy1031:+ yych = *++p;+ if (yych == 'N') goto yy981;+ if (yych == 'n') goto yy981;+ goto yy822;+yy1032:+ yych = *++p;+ if (yych == 'I') goto yy1033;+ if (yych != 'i') goto yy822;+yy1033:+ yych = *++p;+ if (yych == 'P') goto yy1034;+ if (yych != 'p') goto yy822;+yy1034:+ yych = *++p;+ if (yych == 'T') goto yy981;+ if (yych == 't') goto yy981;+ goto yy822;+yy1035:+ yych = *++p;+ if (yych == 'L') goto yy1036;+ if (yych != 'l') goto yy822;+yy1036:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1037:+ yych = *++p;+ if (yych == 'V') goto yy981;+ if (yych == 'v') goto yy981;+ goto yy822;+yy1038:+ yych = *++p;+ if (yych == 'L') goto yy1047;+ if (yych == 'l') goto yy1047;+ goto yy822;+yy1039:+ yych = *++p;+ if (yych <= 'P') {+ if (yych == 'N') goto yy1040;+ if (yych <= 'O') goto yy822;+ goto yy1041;+ } else {+ if (yych <= 'n') {+ if (yych <= 'm') goto yy822;+ } else {+ if (yych == 'p') goto yy1041;+ goto yy822;+ }+ }+yy1040:+ yych = *++p;+ if (yych == 'V') goto yy1045;+ if (yych == 'v') goto yy1045;+ goto yy822;+yy1041:+ yych = *++p;+ if (yych == 'T') goto yy1042;+ if (yych != 't') goto yy822;+yy1042:+ yych = *++p;+ if (yych == 'I') goto yy1043;+ if (yych != 'i') goto yy822;+yy1043:+ yych = *++p;+ if (yych == 'O') goto yy1044;+ if (yych != 'o') goto yy822;+yy1044:+ yych = *++p;+ if (yych == 'N') goto yy981;+ if (yych == 'n') goto yy981;+ goto yy822;+yy1045:+ yych = *++p;+ if (yych == 'A') goto yy1046;+ if (yych != 'a') goto yy822;+yy1046:+ yych = *++p;+ if (yych == 'S') goto yy981;+ if (yych == 's') goto yy981;+ goto yy822;+yy1047:+ yych = *++p;+ if (yych <= '/') {+ if (yych <= 0x1F) {+ if (yych <= 0x08) goto yy822;+ if (yych <= '\r') goto yy982;+ goto yy822;+ } else {+ if (yych <= ' ') goto yy982;+ if (yych <= '.') goto yy822;+ goto yy982;+ }+ } else {+ if (yych <= 'F') {+ if (yych == '>') goto yy982;+ goto yy822;+ } else {+ if (yych <= 'G') goto yy1048;+ if (yych != 'g') goto yy822;+ }+ }+yy1048:+ yych = *++p;+ if (yych == 'R') goto yy1049;+ if (yych != 'r') goto yy822;+yy1049:+ yych = *++p;+ if (yych == 'O') goto yy1050;+ if (yych != 'o') goto yy822;+yy1050:+ yych = *++p;+ if (yych == 'U') goto yy1051;+ if (yych != 'u') goto yy822;+yy1051:+ yych = *++p;+ if (yych == 'P') goto yy981;+ if (yych == 'p') goto yy981;+ goto yy822;+yy1052:+ yych = *++p;+ if (yych == 'T') goto yy1057;+ if (yych == 't') goto yy1057;+ goto yy822;+yy1053:+ yych = *++p;+ if (yych == 'J') goto yy1054;+ if (yych != 'j') goto yy822;+yy1054:+ yych = *++p;+ if (yych == 'E') goto yy1055;+ if (yych != 'e') goto yy822;+yy1055:+ yych = *++p;+ if (yych == 'C') goto yy1056;+ if (yych != 'c') goto yy822;+yy1056:+ yych = *++p;+ if (yych == 'T') goto yy981;+ if (yych == 't') goto yy981;+ goto yy822;+yy1057:+ yych = *++p;+ if (yych == 'P') goto yy1058;+ if (yych != 'p') goto yy822;+yy1058:+ yych = *++p;+ if (yych == 'U') goto yy1059;+ if (yych != 'u') goto yy822;+yy1059:+ yych = *++p;+ if (yych == 'T') goto yy981;+ if (yych == 't') goto yy981;+ goto yy822;+yy1060:+ yych = *++p;+ if (yych == 'P') goto yy981;+ if (yych == 'p') goto yy981;+ goto yy822;+yy1061:+ yych = *++p;+ if (yych == 'T') goto yy1072;+ if (yych == 't') goto yy1072;+ goto yy822;+yy1062:+ yych = *++p;+ if (yych == 'D') goto yy1071;+ if (yych == 'd') goto yy1071;+ goto yy822;+yy1063:+ yych = *++p;+ if (yych == 'O') goto yy1064;+ if (yych != 'o') goto yy822;+yy1064:+ yych = *++p;+ if (yych == 'C') goto yy1065;+ if (yych != 'c') goto yy822;+yy1065:+ yych = *++p;+ if (yych == 'K') goto yy1066;+ if (yych != 'k') goto yy822;+yy1066:+ yych = *++p;+ if (yych == 'Q') goto yy1067;+ if (yych != 'q') goto yy822;+yy1067:+ yych = *++p;+ if (yych == 'U') goto yy1068;+ if (yych != 'u') goto yy822;+yy1068:+ yych = *++p;+ if (yych == 'O') goto yy1069;+ if (yych != 'o') goto yy822;+yy1069:+ yych = *++p;+ if (yych == 'T') goto yy1070;+ if (yych != 't') goto yy822;+yy1070:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1071:+ yych = *++p;+ if (yych == 'Y') goto yy981;+ if (yych == 'y') goto yy981;+ goto yy822;+yy1072:+ yych = *++p;+ if (yych == 'T') goto yy1073;+ if (yych != 't') goto yy822;+yy1073:+ yych = *++p;+ if (yych == 'O') goto yy1074;+ if (yych != 'o') goto yy822;+yy1074:+ yych = *++p;+ if (yych == 'N') goto yy981;+ if (yych == 'n') goto yy981;+ goto yy822;+yy1075:+ yych = *++p;+ if (yych == 'R') goto yy1076;+ if (yych != 'r') goto yy822;+yy1076:+ yych = *++p;+ if (yych == 'A') goto yy1077;+ if (yych != 'a') goto yy822;+yy1077:+ yych = *++p;+ if (yych == 'M') goto yy1078;+ if (yych != 'm') goto yy822;+yy1078:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1079:+ yych = *++p;+ if (yych == 'R') goto yy1084;+ if (yych == 'r') goto yy1084;+ goto yy822;+yy1080:+ yych = *++p;+ if (yych == 'A') goto yy1081;+ if (yych != 'a') goto yy822;+yy1081:+ yych = *++p;+ if (yych == 'D') goto yy1082;+ if (yych != 'd') goto yy822;+yy1082:+ yych = *++p;+ if (yych == 'E') goto yy1083;+ if (yych != 'e') goto yy822;+yy1083:+ yych = *++p;+ if (yych == 'R') goto yy981;+ if (yych == 'r') goto yy981;+ goto yy822;+yy1084:+ yych = *++p;+ if (yych == 'O') goto yy1085;+ if (yych != 'o') goto yy822;+yy1085:+ yych = *++p;+ if (yych == 'U') goto yy1086;+ if (yych != 'u') goto yy822;+yy1086:+ yych = *++p;+ if (yych == 'P') goto yy981;+ if (yych == 'p') goto yy981;+ goto yy822;+yy1087:+ yych = *++p;+ if (yych == 'I') goto yy1093;+ if (yych == 'i') goto yy1093;+ goto yy822;+yy1088:+ yych = *++p;+ if (yych == 'T') goto yy1089;+ if (yych != 't') goto yy822;+yy1089:+ yych = *++p;+ if (yych == 'I') goto yy1090;+ if (yych != 'i') goto yy822;+yy1090:+ yych = *++p;+ if (yych == 'C') goto yy1091;+ if (yych != 'c') goto yy822;+yy1091:+ yych = *++p;+ if (yych == 'L') goto yy1092;+ if (yych != 'l') goto yy822;+yy1092:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1093:+ yych = *++p;+ if (yych == 'D') goto yy1094;+ if (yych != 'd') goto yy822;+yy1094:+ yych = *++p;+ if (yych == 'E') goto yy981;+ if (yych == 'e') goto yy981;+ goto yy822;+yy1095:+ yych = *++p;+ if (yych <= 'O') {+ if (yych == 'E') goto yy981;+ if (yych <= 'N') goto yy822;+ } else {+ if (yych <= 'e') {+ if (yych <= 'd') goto yy822;+ goto yy981;+ } else {+ if (yych != 'o') goto yy822;+ }+ }+ yych = *++p;+ if (yych == 'G') goto yy1097;+ if (yych != 'g') goto yy822;+yy1097:+ yych = *++p;+ if (yych == 'R') goto yy1098;+ if (yych != 'r') goto yy822;+yy1098:+ yych = *++p;+ if (yych == 'E') goto yy1099;+ if (yych != 'e') goto yy822;+yy1099:+ yych = *++p;+ if (yych == 'S') goto yy1100;+ if (yych != 's') goto yy822;+yy1100:+ ++p;+ if ((yych = *p) == 'S') goto yy981;+ if (yych == 's') goto yy981;+ goto yy822;+}++}++// Try to match a URL in a link or reference, return number of chars matched.+// This may optionally be contained in <..>; otherwise+// whitespace and unbalanced right parentheses aren't allowed.+// Newlines aren't ever allowed.+int _scan_link_url(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, 8, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 72, 112, 112, 112, 112, 112, 112, 112, + 64, 64, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 16, 112, 16, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 128, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 112, 112, 112, 112, 112, + };+ yych = *p;+ if (yych <= '(') {+ if (yych <= 0x1F) {+ if (yych == '\n') goto yy1104;+ goto yy1112;+ } else {+ if (yych <= ' ') goto yy1106;+ if (yych <= '\'') goto yy1108;+ goto yy1111;+ }+ } else {+ if (yych <= '<') {+ if (yych <= ')') goto yy1112;+ if (yych <= ';') goto yy1108;+ goto yy1107;+ } else {+ if (yych == '\\') goto yy1109;+ goto yy1108;+ }+ }+yy1103:+ { return (p - start); }+yy1104:+ yyaccept = 0;+ marker = ++p;+ yych = *p;+yy1105:+ if (yybm[0+yych] & 8) {+ goto yy1104;+ }+ if (yych <= ')') {+ if (yych <= ' ') goto yy1103;+ if (yych <= '\'') goto yy1117;+ if (yych <= '(') goto yy1113;+ goto yy1103;+ } else {+ if (yych <= '<') {+ if (yych <= ';') goto yy1117;+ goto yy1120;+ } else {+ if (yych == '\\') goto yy1119;+ goto yy1117;+ }+ }+yy1106:+ yyaccept = 0;+ yych = *(marker = ++p);+ goto yy1105;+yy1107:+ yyaccept = 0;+ yych = *(marker = ++p);+ if (yybm[0+yych] & 32) {+ goto yy1120;+ }+ if (yych <= '\'') {+ if (yych <= 0x00) goto yy1103;+ if (yych == '\n') goto yy1103;+ goto yy1127;+ } else {+ if (yych <= ')') {+ if (yych <= '(') goto yy1125;+ goto yy1127;+ } else {+ if (yych <= '=') goto yy1117;+ if (yych <= '>') goto yy1122;+ goto yy1124;+ }+ }+yy1108:+ yyaccept = 0;+ yych = *(marker = ++p);+ goto yy1118;+yy1109:+ ++p;+ if ((yych = *p) <= '@') {+ if (yych <= ' ') goto yy1110;+ if (yych <= '/') goto yy1117;+ if (yych >= ':') goto yy1117;+ } else {+ if (yych <= '`') {+ if (yych >= '[') goto yy1117;+ } else {+ if (yych <= 'z') goto yy1110;+ if (yych <= '~') goto yy1117;+ }+ }+yy1110:+ { return 0; }+yy1111:+ yyaccept = 1;+ yych = *(marker = ++p);+ if (yych <= ' ') goto yy1110;+ if (yych == '(') goto yy1110;+ goto yy1114;+yy1112:+ yych = *++p;+ goto yy1110;+yy1113:+ ++p;+ yych = *p;+yy1114:+ if (yybm[0+yych] & 16) {+ goto yy1113;+ }+ if (yych <= '(') goto yy1115;+ if (yych <= ')') goto yy1117;+ goto yy1116;+yy1115:+ p = marker;+ if (yyaccept <= 1) {+ if (yyaccept == 0) {+ goto yy1103;+ } else {+ goto yy1110;+ }+ } else {+ goto yy1123;+ }+yy1116:+ ++p;+ yych = *p;+ if (yych <= '@') {+ if (yych <= ' ') goto yy1115;+ if (yych <= '/') goto yy1113;+ if (yych <= '9') goto yy1115;+ goto yy1113;+ } else {+ if (yych <= '`') {+ if (yych <= 'Z') goto yy1115;+ goto yy1113;+ } else {+ if (yych <= 'z') goto yy1115;+ if (yych <= '~') goto yy1113;+ goto yy1115;+ }+ }+yy1117:+ yyaccept = 0;+ marker = ++p;+ yych = *p;+yy1118:+ if (yych <= '(') {+ if (yych <= ' ') goto yy1103;+ if (yych <= '\'') goto yy1117;+ goto yy1113;+ } else {+ if (yych <= ')') goto yy1103;+ if (yych != '\\') goto yy1117;+ }+yy1119:+ ++p;+ yych = *p;+ if (yych <= '@') {+ if (yych <= ' ') goto yy1115;+ if (yych <= '/') goto yy1117;+ if (yych <= '9') goto yy1115;+ goto yy1117;+ } else {+ if (yych <= '`') {+ if (yych <= 'Z') goto yy1115;+ goto yy1117;+ } else {+ if (yych <= 'z') goto yy1115;+ if (yych <= '~') goto yy1117;+ goto yy1115;+ }+ }+yy1120:+ yyaccept = 0;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1120;+ }+ if (yych <= '\'') {+ if (yych <= 0x00) goto yy1103;+ if (yych == '\n') goto yy1103;+ goto yy1127;+ } else {+ if (yych <= ')') {+ if (yych <= '(') goto yy1125;+ goto yy1127;+ } else {+ if (yych <= '=') goto yy1117;+ if (yych >= '?') goto yy1124;+ }+ }+yy1122:+ yyaccept = 2;+ yych = *(marker = ++p);+ if (yych <= ' ') goto yy1123;+ if (yych != ')') goto yy1118;+yy1123:+ { return (p - start); }+yy1124:+ ++p;+ yych = *p;+ if (yych <= '>') {+ if (yych <= ' ') {+ if (yych <= 0x00) goto yy1115;+ if (yych == '\n') goto yy1115;+ goto yy1127;+ } else {+ if (yych <= '/') goto yy1120;+ if (yych <= '9') goto yy1127;+ if (yych <= '=') goto yy1120;+ goto yy1137;+ }+ } else {+ if (yych <= '\\') {+ if (yych <= '@') goto yy1120;+ if (yych <= 'Z') goto yy1127;+ if (yych <= '[') goto yy1120;+ goto yy1138;+ } else {+ if (yych <= '`') goto yy1120;+ if (yych <= 'z') goto yy1127;+ if (yych <= '~') goto yy1120;+ goto yy1127;+ }+ }+yy1125:+ ++p;+ yych = *p;+ if (yych <= ')') {+ if (yych <= '\n') {+ if (yych <= 0x00) goto yy1115;+ if (yych >= '\n') goto yy1115;+ } else {+ if (yych <= ' ') goto yy1127;+ if (yych <= '\'') goto yy1125;+ if (yych >= ')') goto yy1120;+ }+ } else {+ if (yych <= '=') {+ if (yych == '<') goto yy1113;+ goto yy1125;+ } else {+ if (yych <= '>') goto yy1133;+ if (yych == '\\') goto yy1134;+ goto yy1125;+ }+ }+yy1127:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1127;+ }+ if (yych <= '=') goto yy1115;+ if (yych >= '?') goto yy1130;+yy1129:+ yych = *++p;+ goto yy1123;+yy1130:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1130;+ }+ if (yych <= '\n') {+ if (yych <= 0x00) goto yy1115;+ if (yych <= '\t') goto yy1127;+ goto yy1115;+ } else {+ if (yych != '>') goto yy1127;+ }+ yyaccept = 2;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1127;+ }+ if (yych <= '=') goto yy1123;+ if (yych <= '>') goto yy1129;+ goto yy1130;+yy1133:+ yyaccept = 2;+ yych = *(marker = ++p);+ if (yych <= ' ') goto yy1123;+ if (yych == '(') goto yy1123;+ goto yy1114;+yy1134:+ ++p;+ yych = *p;+ if (yych <= '>') {+ if (yych <= ' ') {+ if (yych <= 0x00) goto yy1115;+ if (yych == '\n') goto yy1115;+ goto yy1127;+ } else {+ if (yych <= '/') goto yy1125;+ if (yych <= '9') goto yy1127;+ if (yych <= '=') goto yy1125;+ }+ } else {+ if (yych <= '\\') {+ if (yych <= '@') goto yy1125;+ if (yych <= 'Z') goto yy1127;+ if (yych <= '[') goto yy1125;+ goto yy1136;+ } else {+ if (yych <= '`') goto yy1125;+ if (yych <= 'z') goto yy1127;+ if (yych <= '~') goto yy1125;+ goto yy1127;+ }+ }+yy1135:+ yyaccept = 2;+ marker = ++p;+ yych = *p;+ if (yych <= ')') {+ if (yych <= '\n') {+ if (yych <= 0x00) goto yy1123;+ if (yych <= '\t') goto yy1127;+ goto yy1123;+ } else {+ if (yych <= ' ') goto yy1127;+ if (yych <= '\'') goto yy1125;+ if (yych <= '(') goto yy1127;+ goto yy1120;+ }+ } else {+ if (yych <= '=') {+ if (yych == '<') goto yy1113;+ goto yy1125;+ } else {+ if (yych <= '>') goto yy1133;+ if (yych == '\\') goto yy1134;+ goto yy1125;+ }+ }+yy1136:+ ++p;+ yych = *p;+ if (yych <= '(') {+ if (yych <= '\n') {+ if (yych <= 0x00) goto yy1115;+ if (yych <= '\t') goto yy1127;+ goto yy1115;+ } else {+ if (yych <= ' ') goto yy1127;+ if (yych <= '\'') goto yy1125;+ goto yy1127;+ }+ } else {+ if (yych <= '>') {+ if (yych <= ')') goto yy1120;+ if (yych <= '=') goto yy1125;+ goto yy1135;+ } else {+ if (yych == '\\') goto yy1134;+ goto yy1125;+ }+ }+yy1137:+ yyaccept = 2;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1120;+ }+ if (yych <= '\'') {+ if (yych <= 0x00) goto yy1123;+ if (yych == '\n') goto yy1123;+ goto yy1127;+ } else {+ if (yych <= ')') {+ if (yych <= '(') goto yy1125;+ goto yy1127;+ } else {+ if (yych <= '=') goto yy1117;+ if (yych <= '>') goto yy1122;+ goto yy1124;+ }+ }+yy1138:+ yyaccept = 0;+ marker = ++p;+ yych = *p;+ if (yych <= '(') {+ if (yych <= '\n') {+ if (yych <= 0x00) goto yy1103;+ if (yych <= '\t') goto yy1127;+ goto yy1103;+ } else {+ if (yych <= ' ') goto yy1127;+ if (yych <= '\'') goto yy1120;+ goto yy1125;+ }+ } else {+ if (yych <= '>') {+ if (yych <= ')') goto yy1127;+ if (yych <= '=') goto yy1120;+ goto yy1137;+ } else {+ if (yych == '\\') goto yy1124;+ goto yy1120;+ }+ }+}++}++// 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).+int _scan_link_title(const unsigned char *p)+{+ const unsigned char *marker = NULL;+ const unsigned char *start = p;++{+ unsigned char yych;+ unsigned int yyaccept = 0;+ static const unsigned char yybm[] = {+ 0, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 80, 208, 208, 208, 208, 144, + 208, 192, 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, + 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, 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, 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, + };+ yych = *p;+ if (yych <= '"') {+ if (yych == '\n') goto yy1141;+ if (yych <= '!') goto yy1145;+ goto yy1142;+ } else {+ if (yych <= '&') goto yy1145;+ if (yych <= '\'') goto yy1143;+ if (yych <= '(') goto yy1144;+ goto yy1145;+ }+yy1141:+ { return 0; }+yy1142:+ yyaccept = 0;+ yych = *(marker = ++p);+ if (yych <= 0x00) goto yy1141;+ goto yy1162;+yy1143:+ yyaccept = 0;+ yych = *(marker = ++p);+ if (yych <= 0x00) goto yy1141;+ goto yy1155;+yy1144:+ yyaccept = 0;+ yych = *(marker = ++p);+ if (yych <= 0x00) goto yy1141;+ goto yy1147;+yy1145:+ yych = *++p;+ goto yy1141;+yy1146:+ ++p;+ yych = *p;+yy1147:+ if (yybm[0+yych] & 16) {+ goto yy1146;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1151;+ goto yy1149;+yy1148:+ p = marker;+ if (yyaccept <= 1) {+ if (yyaccept == 0) {+ goto yy1141;+ } else {+ goto yy1152;+ }+ } else {+ if (yyaccept == 2) {+ goto yy1159;+ } else {+ goto yy1166;+ }+ }+yy1149:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 16) {+ goto yy1146;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1153;+ goto yy1149;+yy1151:+ ++p;+yy1152:+ { return (p - start); }+yy1153:+ yyaccept = 1;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 16) {+ goto yy1146;+ }+ if (yych <= 0x00) goto yy1152;+ if (yych <= '[') goto yy1151;+ goto yy1149;+yy1154:+ ++p;+ yych = *p;+yy1155:+ if (yybm[0+yych] & 64) {+ goto yy1154;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1158;+yy1156:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1154;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1160;+ goto yy1156;+yy1158:+ ++p;+yy1159:+ { return (p - start); }+yy1160:+ yyaccept = 2;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1154;+ }+ if (yych <= 0x00) goto yy1159;+ if (yych <= '[') goto yy1158;+ goto yy1156;+yy1161:+ ++p;+ yych = *p;+yy1162:+ if (yybm[0+yych] & 128) {+ goto yy1161;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1165;+yy1163:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1161;+ }+ if (yych <= 0x00) goto yy1148;+ if (yych <= '[') goto yy1167;+ goto yy1163;+yy1165:+ ++p;+yy1166:+ { return (p - start); }+yy1167:+ yyaccept = 3;+ marker = ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1161;+ }+ if (yych <= 0x00) goto yy1166;+ if (yych <= '[') goto yy1165;+ goto yy1163;+}++}++// Match space characters, including newlines.+int _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 (yych <= '\n') {+ if (yych <= 0x08) goto yy1174;+ if (yych <= '\t') goto yy1171;+ goto yy1172;+ } else {+ if (yych <= '\r') goto yy1171;+ if (yych == ' ') goto yy1171;+ goto yy1174;+ }+yy1170:+ { return (p - start); }+yy1171:+ yych = *++p;+ goto yy1173;+yy1172:+ ++p;+ yych = *p;+yy1173:+ if (yybm[0+yych] & 128) {+ goto yy1172;+ }+ goto yy1170;+yy1174:+ ++p;+ { return 0; }+}++}++// Match ATX header start.+int _scan_atx_header_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, 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, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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 == '\n') goto yy1178;+ if (yych == '#') goto yy1179;+ goto yy1180;+yy1178:+ { return 0; }+yy1179:+ yych = *(marker = ++p);+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ if (yych == '#') goto yy1185;+ goto yy1178;+yy1180:+ yych = *++p;+ goto yy1178;+yy1181:+ ++p;+yy1182:+ { return (p - start); }+yy1183:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ goto yy1182;+yy1185:+ yych = *++p;+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ if (yych == '#') goto yy1187;+yy1186:+ p = marker;+ goto yy1178;+yy1187:+ yych = *++p;+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ if (yych != '#') goto yy1186;+ yych = *++p;+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ if (yych != '#') goto yy1186;+ yych = *++p;+ if (yybm[0+yych] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ if (yych != '#') goto yy1186;+ ++p;+ if (yybm[0+(yych = *p)] & 128) {+ goto yy1183;+ }+ if (yych == '\n') goto yy1181;+ goto yy1186;+}++}++// Match sexext header line. Return 1 for level-1 header,+// 2 for level-2, 0 for no match.+int _scan_setext_header_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, 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, 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 <= ',') {+ if (yych != '\n') goto yy1196;+ } else {+ if (yych <= '-') goto yy1195;+ if (yych == '=') goto yy1194;+ goto yy1196;+ }+yy1193:+ { return 0; }+yy1194:+ yych = *(marker = ++p);+ if (yybm[0+yych] & 128) {+ goto yy1208;+ }+ if (yych == '\n') goto yy1206;+ if (yych == ' ') goto yy1204;+ goto yy1193;+yy1195:+ yych = *(marker = ++p);+ if (yybm[0+yych] & 32) {+ goto yy1197;+ }+ if (yych == '\n') goto yy1200;+ if (yych == '-') goto yy1202;+ goto yy1193;+yy1196:+ yych = *++p;+ goto yy1193;+yy1197:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1197;+ }+ if (yych == '\n') goto yy1200;+yy1199:+ p = marker;+ goto yy1193;+yy1200:+ ++p;+ { return 2; }+yy1202:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1197;+ }+ if (yych == '\n') goto yy1200;+ if (yych == '-') goto yy1202;+ goto yy1199;+yy1204:+ ++p;+ yych = *p;+ if (yych == '\n') goto yy1206;+ if (yych == ' ') goto yy1204;+ goto yy1199;+yy1206:+ ++p;+ { return 1; }+yy1208:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1208;+ }+ if (yych == '\n') goto yy1206;+ if (yych == ' ') goto yy1204;+ goto yy1199;+}++}++// Scan a horizontal rule 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."+int _scan_hrule(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, 32, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 248, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 128, 0, 0, 16, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, + 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 == '\n') goto yy1212;+ if (yych <= ')') goto yy1216;+ goto yy1213;+ } else {+ if (yych <= '-') {+ if (yych <= ',') goto yy1216;+ goto yy1215;+ } else {+ if (yych == '_') goto yy1214;+ goto yy1216;+ }+ }+yy1212:+ { return 0; }+yy1213:+ yych = *(marker = ++p);+ if (yych == ' ') goto yy1238;+ if (yych == '*') goto yy1240;+ goto yy1212;+yy1214:+ yych = *(marker = ++p);+ if (yych == ' ') goto yy1228;+ if (yych == '_') goto yy1230;+ goto yy1212;+yy1215:+ yych = *(marker = ++p);+ if (yybm[0+yych] & 8) {+ goto yy1217;+ }+ if (yych == '-') goto yy1220;+ goto yy1212;+yy1216:+ yych = *++p;+ goto yy1212;+yy1217:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 8) {+ goto yy1217;+ }+ if (yych == '-') goto yy1220;+yy1219:+ p = marker;+ goto yy1212;+yy1220:+ ++p;+ yych = *p;+ if (yych == ' ') goto yy1220;+ if (yych != '-') goto yy1219;+yy1222:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 16) {+ goto yy1222;+ }+ if (yych <= 0x08) goto yy1219;+ if (yych <= '\t') goto yy1224;+ if (yych <= '\n') goto yy1226;+ goto yy1219;+yy1224:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1224;+ }+ if (yych != '\n') goto yy1219;+yy1226:+ ++p;+ { return (p - start); }+yy1228:+ ++p;+ yych = *p;+ if (yych == ' ') goto yy1228;+ if (yych != '_') goto yy1219;+yy1230:+ ++p;+ yych = *p;+ if (yych == ' ') goto yy1230;+ if (yych != '_') goto yy1219;+yy1232:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1232;+ }+ if (yych <= 0x08) goto yy1219;+ if (yych <= '\t') goto yy1234;+ if (yych <= '\n') goto yy1236;+ goto yy1219;+yy1234:+ ++p;+ yych = *p;+ if (yych <= '\n') {+ if (yych <= 0x08) goto yy1219;+ if (yych <= '\t') goto yy1234;+ } else {+ if (yych == ' ') goto yy1234;+ goto yy1219;+ }+yy1236:+ ++p;+ { return (p - start); }+yy1238:+ ++p;+ yych = *p;+ if (yych == ' ') goto yy1238;+ if (yych != '*') goto yy1219;+yy1240:+ ++p;+ yych = *p;+ if (yych == ' ') goto yy1240;+ if (yych != '*') goto yy1219;+yy1242:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1242;+ }+ if (yych <= 0x08) goto yy1219;+ if (yych <= '\t') goto yy1244;+ if (yych <= '\n') goto yy1246;+ goto yy1219;+yy1244:+ ++p;+ yych = *p;+ if (yych <= '\n') {+ if (yych <= 0x08) goto yy1219;+ if (yych <= '\t') goto yy1244;+ } else {+ if (yych == ' ') goto yy1244;+ goto yy1219;+ }+yy1246:+ ++p;+ { return (p - start); }+}++}++// Scan an opening code fence.+int _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, 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, 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, + 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, 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, + };+ yych = *p;+ if (yych <= '_') {+ if (yych != '\n') goto yy1253;+ } else {+ if (yych <= '`') goto yy1251;+ if (yych == '~') goto yy1252;+ goto yy1253;+ }+yy1250:+ { return 0; }+yy1251:+ yych = *(marker = ++p);+ if (yych == '`') goto yy1262;+ goto yy1250;+yy1252:+ yych = *(marker = ++p);+ if (yych == '~') goto yy1254;+ goto yy1250;+yy1253:+ yych = *++p;+ goto yy1250;+yy1254:+ yych = *++p;+ if (yybm[0+yych] & 16) {+ goto yy1256;+ }+yy1255:+ p = marker;+ goto yy1250;+yy1256:+ marker = p + 1;+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1258;+ }+ if (yych <= 0x00) goto yy1255;+ if (yych <= '}') goto yy1260;+ goto yy1256;+yy1258:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 32) {+ goto yy1258;+ }+ if (yych <= 0x00) goto yy1255;+ if (yych >= '~') goto yy1255;+yy1260:+ ++p;+ p = marker;+ { return (p - start); }+yy1262:+ yych = *++p;+ if (yybm[0+yych] & 64) {+ goto yy1263;+ }+ goto yy1255;+yy1263:+ marker = p + 1;+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1265;+ }+ if (yych <= 0x00) goto yy1255;+ if (yych <= '_') goto yy1267;+ goto yy1263;+yy1265:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1265;+ }+ if (yych <= 0x00) goto yy1255;+ if (yych >= '`') goto yy1255;+yy1267:+ ++p;+ p = marker;+ { return (p - start); }+}++}++// Scan a closing code fence with length at least len.+int _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 <= '_') {+ if (yych != '\n') goto yy1274;+ } else {+ if (yych <= '`') goto yy1272;+ if (yych == '~') goto yy1273;+ goto yy1274;+ }+yy1271:+ { return 0; }+yy1272:+ yych = *(marker = ++p);+ if (yych == '`') goto yy1283;+ goto yy1271;+yy1273:+ yych = *(marker = ++p);+ if (yych == '~') goto yy1275;+ goto yy1271;+yy1274:+ yych = *++p;+ goto yy1271;+yy1275:+ yych = *++p;+ if (yybm[0+yych] & 32) {+ goto yy1277;+ }+yy1276:+ p = marker;+ goto yy1271;+yy1277:+ marker = p + 1;+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1279;+ }+ if (yych == '\n') goto yy1281;+ if (yych == '~') goto yy1277;+ goto yy1276;+yy1279:+ ++p;+ yych = *p;+ if (yybm[0+yych] & 64) {+ goto yy1279;+ }+ if (yych != '\n') goto yy1276;+yy1281:+ ++p;+ p = marker;+ { return (p - start); }+yy1283:+ yych = *++p;+ if (yybm[0+yych] & 128) {+ goto yy1284;+ }+ goto yy1276;+yy1284:+ marker = p + 1;+ ++p;+ yych = *p;+ if (yybm[0+yych] & 128) {+ goto yy1284;+ }+ if (yych <= '\n') {+ if (yych <= 0x08) goto yy1276;+ if (yych >= '\n') goto yy1288;+ } else {+ if (yych != ' ') goto yy1276;+ }+yy1286:+ ++p;+ yych = *p;+ if (yych <= '\n') {+ if (yych <= 0x08) goto yy1276;+ if (yych <= '\t') goto yy1286;+ } else {+ if (yych == ' ') goto yy1286;+ goto yy1276;+ }+yy1288:+ ++p;+ p = marker;+ { return (p - start); }+}++}++// Scans an entity.+// Returns number of chars matched.+int _scan_entity(const unsigned char *p)+{+ const unsigned char *marker = NULL;+ const unsigned char *start = p;++{+ unsigned char yych;+ yych = *p;+ if (yych == '\n') goto yy1292;+ if (yych == '&') goto yy1293;+ goto yy1294;+yy1292:+ { return 0; }+yy1293:+ yych = *(marker = ++p);+ if (yych <= '@') {+ if (yych == '#') goto yy1295;+ goto yy1292;+ } else {+ if (yych <= 'Z') goto yy1297;+ if (yych <= '`') goto yy1292;+ if (yych <= 'z') goto yy1297;+ goto yy1292;+ }+yy1294:+ yych = *++p;+ goto yy1292;+yy1295:+ yych = *++p;+ if (yych <= 'W') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1332;+ } else {+ if (yych <= 'X') goto yy1331;+ if (yych == 'x') goto yy1331;+ }+yy1296:+ p = marker;+ goto yy1292;+yy1297:+ yych = *++p;+ if (yych <= '@') {+ if (yych <= '/') goto yy1296;+ if (yych >= ':') goto yy1296;+ } else {+ if (yych <= 'Z') goto yy1298;+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+yy1298:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1301;+ if (yych <= ':') goto yy1296;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ goto yy1301;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych <= 'z') goto yy1301;+ goto yy1296;+ }+ }+yy1299:+ ++p;+ { return (p - start); }+yy1301:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1302;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1302:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1303;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1303:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1304;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1304:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1305;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1305:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1306;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1306:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1307;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1307:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1308;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1308:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1309;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1309:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1310;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1310:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1311;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1311:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1312;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1312:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1313;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1313:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1314;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1314:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1315;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1315:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1316;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1316:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1317;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1317:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1318;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1318:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1319;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1319:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1320;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1320:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1321;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1321:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1322;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1322:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1323;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1323:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1324;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1324:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1325;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1325:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1326;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1326:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1327;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1327:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1328;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1328:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1329;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1329:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1330;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'Z') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= '{') goto yy1296;+ }+ }+yy1330:+ yych = *++p;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1331:+ yych = *++p;+ if (yych <= '@') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1339;+ goto yy1296;+ } else {+ if (yych <= 'F') goto yy1339;+ if (yych <= '`') goto yy1296;+ if (yych <= 'f') goto yy1339;+ goto yy1296;+ }+yy1332:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1333;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1333:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1334;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1334:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1335;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1335:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1336;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1336:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1337;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1337:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1338;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1338:+ yych = *++p;+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1330;+ if (yych == ';') goto yy1299;+ goto yy1296;+yy1339:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1340;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1340:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1341;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1341:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1342;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1342:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1343;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1343:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1344;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1344:+ yych = *++p;+ if (yych <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1345;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych >= 'g') goto yy1296;+ }+ }+yy1345:+ ++p;+ if ((yych = *p) <= ';') {+ if (yych <= '/') goto yy1296;+ if (yych <= '9') goto yy1330;+ if (yych <= ':') goto yy1296;+ goto yy1299;+ } else {+ if (yych <= 'F') {+ if (yych <= '@') goto yy1296;+ goto yy1330;+ } else {+ if (yych <= '`') goto yy1296;+ if (yych <= 'f') goto yy1330;+ goto yy1296;+ }+ }+}++}
+ cmark/scanners.h view
@@ -0,0 +1,39 @@+#include "cmark.h"+#include "chunk.h"++#ifdef __cplusplus+extern "C" {+#endif++int _scan_at(int (*scanner)(const unsigned char *), cmark_chunk *c, int offset);+int _scan_autolink_uri(const unsigned char *p);+int _scan_autolink_email(const unsigned char *p);+int _scan_html_tag(const unsigned char *p);+int _scan_html_block_tag(const unsigned char *p);+int _scan_link_url(const unsigned char *p);+int _scan_link_title(const unsigned char *p);+int _scan_spacechars(const unsigned char *p);+int _scan_atx_header_start(const unsigned char *p);+int _scan_setext_header_line(const unsigned char *p);+int _scan_hrule(const unsigned char *p);+int _scan_open_code_fence(const unsigned char *p);+int _scan_close_code_fence(const unsigned char *p);+int _scan_entity(const unsigned char *p);++#define scan_autolink_uri(c, n) _scan_at(&_scan_autolink_uri, c, n)+#define scan_autolink_email(c, n) _scan_at(&_scan_autolink_email, c, n)+#define scan_html_tag(c, n) _scan_at(&_scan_html_tag, c, n)+#define scan_html_block_tag(c, n) _scan_at(&_scan_html_block_tag, c, n)+#define scan_link_url(c, n) _scan_at(&_scan_link_url, c, n)+#define scan_link_title(c, n) _scan_at(&_scan_link_title, c, n)+#define scan_spacechars(c, n) _scan_at(&_scan_spacechars, c, n)+#define scan_atx_header_start(c, n) _scan_at(&_scan_atx_header_start, c, n)+#define scan_setext_header_line(c, n) _scan_at(&_scan_setext_header_line, c, n)+#define scan_hrule(c, n) _scan_at(&_scan_hrule, c, n)+#define scan_open_code_fence(c, n) _scan_at(&_scan_open_code_fence, c, n)+#define scan_close_code_fence(c, n) _scan_at(&_scan_close_code_fence, c, n)+#define scan_entity(c, n) _scan_at(&_scan_entity, c, n)++#ifdef __cplusplus+}+#endif
+ cmark/utf8.c view
@@ -0,0 +1,453 @@+#include <stdlib.h>+#include <stdint.h>+#include <assert.h>++#include "cmark_ctype.h"+#include "utf8.h"++static const int8_t utf8proc_utf8class[256] = {+ 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, 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, 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, 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,+ 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,+ 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0+};++static void encode_unknown(cmark_strbuf *buf)+{+ static const uint8_t repl[] = {239, 191, 189};+ cmark_strbuf_put(buf, repl, 3);+}++static int utf8proc_charlen(const uint8_t *str, int str_len)+{+ int length, i;++ if (!str_len)+ return 0;++ length = utf8proc_utf8class[str[0]];++ if (!length)+ return -1;++ if (str_len >= 0 && length > str_len)+ return -str_len;++ for (i = 1; i < length; i++) {+ if ((str[i] & 0xC0) != 0x80)+ return -i;+ }++ return length;+}++// Validate a single UTF-8 character according to RFC 3629.+static int utf8proc_valid(const uint8_t *str, int str_len)+{+ int length = utf8proc_charlen(str, str_len);++ if (length <= 0)+ return length;++ switch (length) {+ case 1:+ if (str[0] == 0x00) {+ // ASCII NUL is technically valid but rejected+ // for security reasons.+ return -length;+ }+ break;++ case 2:+ if (str[0] < 0xC2) {+ // Overlong+ return -length;+ }+ break;++ case 3:+ if (str[0] == 0xE0) {+ if (str[1] < 0xA0) {+ // Overlong+ return -length;+ }+ } else if (str[0] == 0xED) {+ if (str[1] >= 0xA0) {+ // Surrogate+ return -length;+ }+ }+ break;++ case 4:+ if (str[0] == 0xF0) {+ if (str[1] < 0x90) {+ // Overlong+ return -length;+ }+ } else if (str[0] >= 0xF4) {+ if (str[0] > 0xF4 || str[1] >= 0x90) {+ // Above 0x10FFFF+ return -length;+ }+ }+ break;+ }++ return length;+}++void utf8proc_detab(cmark_strbuf *ob, const uint8_t *line, size_t size)+{+ static const uint8_t whitespace[] = " ";++ size_t i = 0, tab = 0;++ while (i < size) {+ size_t org = i;++ while (i < size && line[i] != '\t' && line[i] != '\0'+ && line[i] < 0x80) {+ i++;+ tab++;+ }++ if (i > org)+ cmark_strbuf_put(ob, line + org, i - org);++ if (i >= size)+ break;++ if (line[i] == '\t') {+ int numspaces = 4 - (tab % 4);+ cmark_strbuf_put(ob, whitespace, numspaces);+ i += 1;+ tab += numspaces;+ } else {+ int charlen = utf8proc_valid(line + i, size - i);++ if (charlen >= 0) {+ cmark_strbuf_put(ob, line + i, charlen);+ } else {+ encode_unknown(ob);+ charlen = -charlen;+ }++ i += charlen;+ tab += 1;+ }+ }+}++int utf8proc_iterate(const uint8_t *str, int str_len, int32_t *dst)+{+ int length;+ int32_t uc = -1;++ *dst = -1;+ length = utf8proc_charlen(str, str_len);+ if (length < 0)+ return -1;++ switch (length) {+ case 1:+ uc = str[0];+ break;+ case 2:+ uc = ((str[0] & 0x1F) << 6) + (str[1] & 0x3F);+ if (uc < 0x80) uc = -1;+ break;+ case 3:+ uc = ((str[0] & 0x0F) << 12) + ((str[1] & 0x3F) << 6)+ + (str[2] & 0x3F);+ if (uc < 0x800 || (uc >= 0xD800 && uc < 0xE000) ||+ (uc >= 0xFDD0 && uc < 0xFDF0)) uc = -1;+ break;+ case 4:+ uc = ((str[0] & 0x07) << 18) + ((str[1] & 0x3F) << 12)+ + ((str[2] & 0x3F) << 6) + (str[3] & 0x3F);+ if (uc < 0x10000 || uc >= 0x110000) uc = -1;+ break;+ }++ if (uc < 0 || ((uc & 0xFFFF) >= 0xFFFE))+ return -1;++ *dst = uc;+ return length;+}++void utf8proc_encode_char(int32_t uc, cmark_strbuf *buf)+{+ uint8_t dst[4];+ int len = 0;++ assert(uc >= 0);++ if (uc < 0x80) {+ dst[0] = uc;+ len = 1;+ } else if (uc < 0x800) {+ dst[0] = 0xC0 + (uc >> 6);+ dst[1] = 0x80 + (uc & 0x3F);+ len = 2;+ } else if (uc == 0xFFFF) {+ dst[0] = 0xFF;+ len = 1;+ } else if (uc == 0xFFFE) {+ dst[0] = 0xFE;+ len = 1;+ } else if (uc < 0x10000) {+ dst[0] = 0xE0 + (uc >> 12);+ dst[1] = 0x80 + ((uc >> 6) & 0x3F);+ dst[2] = 0x80 + (uc & 0x3F);+ len = 3;+ } else if (uc < 0x110000) {+ dst[0] = 0xF0 + (uc >> 18);+ dst[1] = 0x80 + ((uc >> 12) & 0x3F);+ dst[2] = 0x80 + ((uc >> 6) & 0x3F);+ dst[3] = 0x80 + (uc & 0x3F);+ len = 4;+ } else {+ encode_unknown(buf);+ return;+ }++ cmark_strbuf_put(buf, dst, len);+}++void utf8proc_case_fold(cmark_strbuf *dest, const uint8_t *str, int len)+{+ int32_t c;++#define bufpush(x) \+ utf8proc_encode_char(x, dest)++ while (len > 0) {+ int char_len = utf8proc_iterate(str, len, &c);++ if (char_len >= 0) {+#include "case_fold_switch.inc"+ } else {+ encode_unknown(dest);+ char_len = -char_len;+ }++ str += char_len;+ len -= char_len;+ }+}++// matches anything in the Zs class, plus LF, CR, TAB, FF.+int utf8proc_is_space(int32_t uc)+{+ return (uc == 9 ||+ uc == 10 ||+ uc == 12 ||+ uc == 13 ||+ uc == 32 ||+ uc == 160 ||+ uc == 5760 ||+ (uc >= 8192 && uc <= 8202) ||+ uc == 8239 ||+ uc == 8287 ||+ uc == 12288);+}++// matches anything in the P[cdefios] classes.+int utf8proc_is_punctuation(int32_t uc)+{+ return ((uc < 128 && cmark_ispunct((char)uc)) ||+ uc == 161 ||+ uc == 167 ||+ uc == 171 ||+ uc == 182 ||+ uc == 183 ||+ uc == 187 ||+ uc == 191 ||+ uc == 894 ||+ uc == 903 ||+ (uc >= 1370 && uc <= 1375) ||+ uc == 1417 ||+ uc == 1418 ||+ uc == 1470 ||+ uc == 1472 ||+ uc == 1475 ||+ uc == 1478 ||+ uc == 1523 ||+ uc == 1524 ||+ uc == 1545 ||+ uc == 1546 ||+ uc == 1548 ||+ uc == 1549 ||+ uc == 1563 ||+ uc == 1566 ||+ uc == 1567 ||+ (uc >= 1642 && uc <= 1645) ||+ uc == 1748 ||+ (uc >= 1792 && uc <= 1805) ||+ (uc >= 2039 && uc <= 2041) ||+ (uc >= 2096 && uc <= 2110) ||+ uc == 2142 ||+ uc == 2404 ||+ uc == 2405 ||+ uc == 2416 ||+ uc == 2800 ||+ uc == 3572 ||+ uc == 3663 ||+ uc == 3674 ||+ uc == 3675 ||+ (uc >= 3844 && uc <= 3858) ||+ uc == 3860 ||+ (uc >= 3898 && uc <= 3901) ||+ uc == 3973 ||+ (uc >= 4048 && uc <= 4052) ||+ uc == 4057 ||+ uc == 4058 ||+ (uc >= 4170 && uc <= 4175) ||+ uc == 4347 ||+ (uc >= 4960 && uc <= 4968) ||+ uc == 5120 ||+ uc == 5741 ||+ uc == 5742 ||+ uc == 5787 ||+ uc == 5788 ||+ (uc >= 5867 && uc <= 5869) ||+ uc == 5941 ||+ uc == 5942 ||+ (uc >= 6100 && uc <= 6102) ||+ (uc >= 6104 && uc <= 6106) ||+ (uc >= 6144 && uc <= 6154) ||+ uc == 6468 ||+ uc == 6469 ||+ uc == 6686 ||+ uc == 6687 ||+ (uc >= 6816 && uc <= 6822) ||+ (uc >= 6824 && uc <= 6829) ||+ (uc >= 7002 && uc <= 7008) ||+ (uc >= 7164 && uc <= 7167) ||+ (uc >= 7227 && uc <= 7231) ||+ uc == 7294 ||+ uc == 7295 ||+ (uc >= 7360 && uc <= 7367) ||+ uc == 7379 ||+ (uc >= 8208 && uc <= 8231) ||+ (uc >= 8240 && uc <= 8259) ||+ (uc >= 8261 && uc <= 8273) ||+ (uc >= 8275 && uc <= 8286) ||+ uc == 8317 ||+ uc == 8318 ||+ uc == 8333 ||+ uc == 8334 ||+ (uc >= 8968 && uc <= 8971) ||+ uc == 9001 ||+ uc == 9002 ||+ (uc >= 10088 && uc <= 10101) ||+ uc == 10181 ||+ uc == 10182 ||+ (uc >= 10214 && uc <= 10223) ||+ (uc >= 10627 && uc <= 10648) ||+ (uc >= 10712 && uc <= 10715) ||+ uc == 10748 ||+ uc == 10749 ||+ (uc >= 11513 && uc <= 11516) ||+ uc == 11518 ||+ uc == 11519 ||+ uc == 11632 ||+ (uc >= 11776 && uc <= 11822) ||+ (uc >= 11824 && uc <= 11842) ||+ (uc >= 12289 && uc <= 12291) ||+ (uc >= 12296 && uc <= 12305) ||+ (uc >= 12308 && uc <= 12319) ||+ uc == 12336 ||+ uc == 12349 ||+ uc == 12448 ||+ uc == 12539 ||+ uc == 42238 ||+ uc == 42239 ||+ (uc >= 42509 && uc <= 42511) ||+ uc == 42611 ||+ uc == 42622 ||+ (uc >= 42738 && uc <= 42743) ||+ (uc >= 43124 && uc <= 43127) ||+ uc == 43214 ||+ uc == 43215 ||+ (uc >= 43256 && uc <= 43258) ||+ uc == 43310 ||+ uc == 43311 ||+ uc == 43359 ||+ (uc >= 43457 && uc <= 43469) ||+ uc == 43486 ||+ uc == 43487 ||+ (uc >= 43612 && uc <= 43615) ||+ uc == 43742 ||+ uc == 43743 ||+ uc == 43760 ||+ uc == 43761 ||+ uc == 44011 ||+ uc == 64830 ||+ uc == 64831 ||+ (uc >= 65040 && uc <= 65049) ||+ (uc >= 65072 && uc <= 65106) ||+ (uc >= 65108 && uc <= 65121) ||+ uc == 65123 ||+ uc == 65128 ||+ uc == 65130 ||+ uc == 65131 ||+ (uc >= 65281 && uc <= 65283) ||+ (uc >= 65285 && uc <= 65290) ||+ (uc >= 65292 && uc <= 65295) ||+ uc == 65306 ||+ uc == 65307 ||+ uc == 65311 ||+ uc == 65312 ||+ (uc >= 65339 && uc <= 65341) ||+ uc == 65343 ||+ uc == 65371 ||+ uc == 65373 ||+ (uc >= 65375 && uc <= 65381) ||+ (uc >= 65792 && uc <= 65794) ||+ uc == 66463 ||+ uc == 66512 ||+ uc == 66927 ||+ uc == 67671 ||+ uc == 67871 ||+ uc == 67903 ||+ (uc >= 68176 && uc <= 68184) ||+ uc == 68223 ||+ (uc >= 68336 && uc <= 68342) ||+ (uc >= 68409 && uc <= 68415) ||+ (uc >= 68505 && uc <= 68508) ||+ (uc >= 69703 && uc <= 69709) ||+ uc == 69819 ||+ uc == 69820 ||+ (uc >= 69822 && uc <= 69825) ||+ (uc >= 69952 && uc <= 69955) ||+ uc == 70004 ||+ uc == 70005 ||+ (uc >= 70085 && uc <= 70088) ||+ uc == 70093 ||+ (uc >= 70200 && uc <= 70205) ||+ uc == 70854 ||+ (uc >= 71105 && uc <= 71113) ||+ (uc >= 71233 && uc <= 71235) ||+ (uc >= 74864 && uc <= 74868) ||+ uc == 92782 ||+ uc == 92783 ||+ uc == 92917 ||+ (uc >= 92983 && uc <= 92987) ||+ uc == 92996 ||+ uc == 113823);+}
+ cmark/utf8.h view
@@ -0,0 +1,22 @@+#ifndef CMARK_UTF8_H+#define CMARK_UTF8_H++#include <stdint.h>+#include "buffer.h"++#ifdef __cplusplus+extern "C" {+#endif++void utf8proc_case_fold(cmark_strbuf *dest, const uint8_t *str, int len);+void utf8proc_encode_char(int32_t uc, cmark_strbuf *buf);+int utf8proc_iterate(const uint8_t *str, int str_len, int32_t *dst);+void utf8proc_detab(cmark_strbuf *dest, const uint8_t *line, size_t size);+int utf8proc_is_space(int32_t uc);+int utf8proc_is_punctuation(int32_t uc);++#ifdef __cplusplus+}+#endif++#endif
+ cmark/xml.c view
@@ -0,0 +1,170 @@+#include <stdlib.h>+#include <stdio.h>+#include <string.h>+#include <assert.h>++#include "config.h"+#include "cmark.h"+#include "node.h"+#include "buffer.h"+#include "houdini.h"++// Functions to convert cmark_nodes to XML strings.++static void escape_xml(cmark_strbuf *dest, const unsigned char *source, int length)+{+ if (source != NULL) {+ if (length < 0)+ length = strlen((char *)source);++ houdini_escape_html0(dest, source, (size_t)length, 0);+ }+}++struct render_state {+ cmark_strbuf* xml;+ int indent;+};++static inline void indent(struct render_state *state)+{+ int i;+ for (i = 0; i < state->indent; i++) {+ cmark_strbuf_putc(state->xml, ' ');+ }+}++static int+S_render_node(cmark_node *node, cmark_event_type ev_type,+ struct render_state *state, int options)+{+ cmark_strbuf *xml = state->xml;+ bool literal = false;+ cmark_delim_type delim;+ bool entering = (ev_type == CMARK_EVENT_ENTER);++ if (entering) {+ indent(state);+ cmark_strbuf_printf(xml, "<%s",+ cmark_node_get_type_string(node));++ if (options & CMARK_OPT_SOURCEPOS && node->start_line != 0) {+ cmark_strbuf_printf(xml, " sourcepos=\"%d:%d-%d:%d\"",+ node->start_line,+ node->start_column,+ node->end_line,+ node->end_column);+ }++ literal = false;++ switch (node->type) {+ case CMARK_NODE_TEXT:+ case CMARK_NODE_CODE:+ case CMARK_NODE_HTML:+ case CMARK_NODE_INLINE_HTML:+ cmark_strbuf_puts(xml, ">");+ escape_xml(xml, node->as.literal.data,+ node->as.literal.len);+ cmark_strbuf_puts(xml, "</");+ cmark_strbuf_puts(xml,+ cmark_node_get_type_string(node));+ literal = true;+ break;+ case CMARK_NODE_LIST:+ switch (cmark_node_get_list_type(node)) {+ case CMARK_ORDERED_LIST:+ cmark_strbuf_puts(xml, " type=\"ordered\"");+ cmark_strbuf_printf(xml, " start=\"%d\"",+ cmark_node_get_list_start(node));+ delim = cmark_node_get_list_delim(node);+ if (delim == CMARK_PAREN_DELIM) {+ cmark_strbuf_puts(xml,+ " delim=\"paren\"");+ } else if (delim == CMARK_PERIOD_DELIM) {+ cmark_strbuf_puts(xml,+ " delim=\"period\"");+ }+ break;+ case CMARK_BULLET_LIST:+ cmark_strbuf_puts(xml, " type=\"bullet\"");+ break;+ default:+ break;+ }+ cmark_strbuf_printf(xml, " tight=\"%s\"",+ (cmark_node_get_list_tight(node) ?+ "true" : "false"));+ break;+ case CMARK_NODE_HEADER:+ cmark_strbuf_printf(xml, " level=\"%d\"",+ node->as.header.level);+ break;+ case CMARK_NODE_CODE_BLOCK:+ if (node->as.code.info.len > 0) {+ cmark_strbuf_puts(xml, " info=\"");+ escape_xml(xml, node->as.code.info.data,+ node->as.code.info.len);+ cmark_strbuf_putc(xml, '"');+ }+ cmark_strbuf_puts(xml, ">");+ escape_xml(xml, node->as.code.literal.data,+ node->as.code.literal.len);+ cmark_strbuf_puts(xml, "</");+ cmark_strbuf_puts(xml,+ cmark_node_get_type_string(node));+ literal = true;+ break;+ case CMARK_NODE_LINK:+ case CMARK_NODE_IMAGE:+ cmark_strbuf_puts(xml, " destination=\"");+ escape_xml(xml, node->as.link.url, -1);+ cmark_strbuf_putc(xml, '"');+ cmark_strbuf_puts(xml, " title=\"");+ escape_xml(xml, node->as.link.title, -1);+ cmark_strbuf_putc(xml, '"');+ break;+ default:+ break;+ }+ if (node->first_child) {+ state->indent += 2;+ } else if (!literal) {+ cmark_strbuf_puts(xml, " /");+ }+ cmark_strbuf_puts(xml, ">\n");+++ } else if (node->first_child) {+ state->indent -= 2;+ indent(state);+ cmark_strbuf_printf(xml, "</%s>\n",+ cmark_node_get_type_string(node));+ }++ return 1;+}++char *cmark_render_xml(cmark_node *root, int options)+{+ char *result;+ cmark_strbuf xml = GH_BUF_INIT;+ cmark_event_type ev_type;+ cmark_node *cur;+ struct render_state state = { &xml, 0 };++ cmark_iter *iter = cmark_iter_new(root);++ cmark_strbuf_puts(state.xml,+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");+ cmark_strbuf_puts(state.xml,+ "<!DOCTYPE CommonMark SYSTEM \"CommonMark.dtd\">\n");+ while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {+ cur = cmark_iter_get_node(iter);+ S_render_node(cur, ev_type, &state, options);+ }+ result = (char *)cmark_strbuf_detach(&xml);++ cmark_iter_free(iter);+ return result;+}