From: John Benediktsson Date: Tue, 22 Apr 2014 02:03:59 +0000 (-0700) Subject: html.entities: adding better HTML 5 escaping. X-Git-Tag: 0.97~649 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=e79bb8f6e4e84aafdc44d868654f2100366cc782 html.entities: adding better HTML 5 escaping. --- diff --git a/extra/html/entities/authors.txt b/extra/html/entities/authors.txt new file mode 100644 index 0000000000..e091bb8164 --- /dev/null +++ b/extra/html/entities/authors.txt @@ -0,0 +1 @@ +John Benediktsson diff --git a/extra/html/entities/entities-docs.factor b/extra/html/entities/entities-docs.factor new file mode 100644 index 0000000000..28cb0a7c47 --- /dev/null +++ b/extra/html/entities/entities-docs.factor @@ -0,0 +1,10 @@ +USING: help.markup help.syntax strings ; +IN: html.entities + +HELP: html-escape +{ $values { "str" string } { "newstr" string } } +{ $description "Replaces special characters " { $snippet "&" } ", " { $snippet "<" } ", " { $snippet ">" } ", " { $snippet "\"" } ", and " { $snippet "'" } " to HTML-safe sequences." } ; + +HELP: html-unescape +{ $values { "str" string } { "newstr" string } } +{ $description "Convert all named and numeric character references (e.g. >, >, &x3e;) in the string " { $snippet "str" } " to the corresponding unicode characters using the rules defined by the HTML5 standard" } ; diff --git a/extra/html/entities/entities-tests.factor b/extra/html/entities/entities-tests.factor new file mode 100644 index 0000000000..5e680f4fd1 --- /dev/null +++ b/extra/html/entities/entities-tests.factor @@ -0,0 +1,9 @@ +USING: tools.test ; +IN: html.entities + +{ "&" } [ "&" html-unescape ] unit-test +{ "a" } [ "a" html-unescape ] unit-test +{ "" } [ "<foo>" html-unescape ] unit-test + +{ "&" } [ "&" html-escape ] unit-test +{ "<foo>" } [ "" html-escape ] unit-test diff --git a/extra/html/entities/entities.factor b/extra/html/entities/entities.factor new file mode 100644 index 0000000000..1795b71acc --- /dev/null +++ b/extra/html/entities/entities.factor @@ -0,0 +1,2348 @@ +! Copyright (C) 2014 John Benediktsson +! See http://factorcode.org/license.txt for BSD license + +USING: assocs combinators.short-circuit kernel locals make math +math.order math.parser math.ranges regexp sequences splitting +strings ; + +IN: html.entities + +: html-escape ( str -- newstr ) + { + { "&" "&" } + { "<" "<" } + { ">" ">" } + { "\"" """ } + { "'" "'" } + } [ replace ] assoc-each ; + + + { 0x82 "\u00201a" } ! SINGLE LOW-9 QUOTATION MARK + { 0x83 "\u000192" } ! LATIN SMALL LETTER F WITH HOOK + { 0x84 "\u00201e" } ! DOUBLE LOW-9 QUOTATION MARK + { 0x85 "\u002026" } ! HORIZONTAL ELLIPSIS + { 0x86 "\u002020" } ! DAGGER + { 0x87 "\u002021" } ! DOUBLE DAGGER + { 0x88 "\u0002c6" } ! MODIFIER LETTER CIRCUMFLEX ACCENT + { 0x89 "\u002030" } ! PER MILLE SIGN + { 0x8a "\u000160" } ! LATIN CAPITAL LETTER S WITH CARON + { 0x8b "\u002039" } ! SINGLE LEFT-POINTING ANGLE QUOTATION MARK + { 0x8c "\u000152" } ! LATIN CAPITAL LIGATURE OE + { 0x8d "\x8d" } ! + { 0x8e "\u00017d" } ! LATIN CAPITAL LETTER Z WITH CARON + { 0x8f "\x8f" } ! + { 0x90 "\x90" } ! + { 0x91 "\u002018" } ! LEFT SINGLE QUOTATION MARK + { 0x92 "\u002019" } ! RIGHT SINGLE QUOTATION MARK + { 0x93 "\u00201c" } ! LEFT DOUBLE QUOTATION MARK + { 0x94 "\u00201d" } ! RIGHT DOUBLE QUOTATION MARK + { 0x95 "\u002022" } ! BULLET + { 0x96 "\u002013" } ! EN DASH + { 0x97 "\u002014" } ! EM DASH + { 0x98 "\u0002dc" } ! SMALL TILDE + { 0x99 "\u002122" } ! TRADE MARK SIGN + { 0x9a "\u000161" } ! LATIN SMALL LETTER S WITH CARON + { 0x9b "\u00203a" } ! SINGLE RIGHT-POINTING ANGLE QUOTATION MARK + { 0x9c "\u000153" } ! LATIN SMALL LIGATURE OE + { 0x9d "\x9d" } ! + { 0x9e "\u00017e" } ! LATIN SMALL LETTER Z WITH CARON + { 0x9f "\u000178" } ! LATIN CAPITAL LETTER Y WITH DIAERESIS +} + +CONSTANT: invalid-codepoints { + ! 0x0001 to 0x0008 + 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 + ! 0x000E to 0x001F + 0xe 0xf 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 + 0x1a 0x1b 0x1c 0x1d 0x1e 0x1f + ! 0x007F to 0x009F + 0x7f 0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 0x88 0x89 0x8a + 0x8b 0x8c 0x8d 0x8e 0x8f 0x90 0x91 0x92 0x93 0x94 0x95 0x96 + 0x97 0x98 0x99 0x9a 0x9b 0x9c 0x9d 0x9e 0x9f + ! 0xFDD0 to 0xFDEF + 0xfdd0 0xfdd1 0xfdd2 0xfdd3 0xfdd4 0xfdd5 0xfdd6 0xfdd7 0xfdd8 + 0xfdd9 0xfdda 0xfddb 0xfddc 0xfddd 0xfdde 0xfddf 0xfde0 0xfde1 + 0xfde2 0xfde3 0xfde4 0xfde5 0xfde6 0xfde7 0xfde8 0xfde9 0xfdea + 0xfdeb 0xfdec 0xfded 0xfdee 0xfdef + ! others + 0xb 0xfffe 0xffff 0x1fffe 0x1ffff 0x2fffe 0x2ffff 0x3fffe 0x3ffff + 0x4fffe 0x4ffff 0x5fffe 0x5ffff 0x6fffe 0x6ffff 0x7fffe 0x7ffff + 0x8fffe 0x8ffff 0x9fffe 0x9ffff 0xafffe 0xaffff 0xbfffe 0xbffff + 0xcfffe 0xcffff 0xdfffe 0xdffff 0xefffe 0xeffff 0xffffe 0xfffff + 0x10fffe 0x10ffff +} + +CONSTANT: html5 H{ + { "Aacute" "\xc1" } + { "aacute" "\xe1" } + { "Aacute;" "\xc1" } + { "aacute;" "\xe1" } + { "Abreve;" "\u000102" } + { "abreve;" "\u000103" } + { "ac;" "\u00223e" } + { "acd;" "\u00223f" } + { "acE;" "\u00223e\u000333" } + { "Acirc" "\xc2" } + { "acirc" "\xe2" } + { "Acirc;" "\xc2" } + { "acirc;" "\xe2" } + { "acute" "\xb4" } + { "acute;" "\xb4" } + { "Acy;" "\u000410" } + { "acy;" "\u000430" } + { "AElig" "\xc6" } + { "aelig" "\xe6" } + { "AElig;" "\xc6" } + { "aelig;" "\xe6" } + { "af;" "\u002061" } + { "Afr;" "\u01d504" } + { "afr;" "\u01d51e" } + { "Agrave" "\xc0" } + { "agrave" "\xe0" } + { "Agrave;" "\xc0" } + { "agrave;" "\xe0" } + { "alefsym;" "\u002135" } + { "aleph;" "\u002135" } + { "Alpha;" "\u000391" } + { "alpha;" "\u0003b1" } + { "Amacr;" "\u000100" } + { "amacr;" "\u000101" } + { "amalg;" "\u002a3f" } + { "AMP" "&" } + { "amp" "&" } + { "AMP;" "&" } + { "amp;" "&" } + { "And;" "\u002a53" } + { "and;" "\u002227" } + { "andand;" "\u002a55" } + { "andd;" "\u002a5c" } + { "andslope;" "\u002a58" } + { "andv;" "\u002a5a" } + { "ang;" "\u002220" } + { "ange;" "\u0029a4" } + { "angle;" "\u002220" } + { "angmsd;" "\u002221" } + { "angmsdaa;" "\u0029a8" } + { "angmsdab;" "\u0029a9" } + { "angmsdac;" "\u0029aa" } + { "angmsdad;" "\u0029ab" } + { "angmsdae;" "\u0029ac" } + { "angmsdaf;" "\u0029ad" } + { "angmsdag;" "\u0029ae" } + { "angmsdah;" "\u0029af" } + { "angrt;" "\u00221f" } + { "angrtvb;" "\u0022be" } + { "angrtvbd;" "\u00299d" } + { "angsph;" "\u002222" } + { "angst;" "\xc5" } + { "angzarr;" "\u00237c" } + { "Aogon;" "\u000104" } + { "aogon;" "\u000105" } + { "Aopf;" "\u01d538" } + { "aopf;" "\u01d552" } + { "ap;" "\u002248" } + { "apacir;" "\u002a6f" } + { "apE;" "\u002a70" } + { "ape;" "\u00224a" } + { "apid;" "\u00224b" } + { "apos;" "'" } + { "ApplyFunction;" "\u002061" } + { "approx;" "\u002248" } + { "approxeq;" "\u00224a" } + { "Aring" "\xc5" } + { "aring" "\xe5" } + { "Aring;" "\xc5" } + { "aring;" "\xe5" } + { "Ascr;" "\u01d49c" } + { "ascr;" "\u01d4b6" } + { "Assign;" "\u002254" } + { "ast;" "*" } + { "asymp;" "\u002248" } + { "asympeq;" "\u00224d" } + { "Atilde" "\xc3" } + { "atilde" "\xe3" } + { "Atilde;" "\xc3" } + { "atilde;" "\xe3" } + { "Auml" "\xc4" } + { "auml" "\xe4" } + { "Auml;" "\xc4" } + { "auml;" "\xe4" } + { "awconint;" "\u002233" } + { "awint;" "\u002a11" } + { "backcong;" "\u00224c" } + { "backepsilon;" "\u0003f6" } + { "backprime;" "\u002035" } + { "backsim;" "\u00223d" } + { "backsimeq;" "\u0022cd" } + { "Backslash;" "\u002216" } + { "Barv;" "\u002ae7" } + { "barvee;" "\u0022bd" } + { "Barwed;" "\u002306" } + { "barwed;" "\u002305" } + { "barwedge;" "\u002305" } + { "bbrk;" "\u0023b5" } + { "bbrktbrk;" "\u0023b6" } + { "bcong;" "\u00224c" } + { "Bcy;" "\u000411" } + { "bcy;" "\u000431" } + { "bdquo;" "\u00201e" } + { "becaus;" "\u002235" } + { "Because;" "\u002235" } + { "because;" "\u002235" } + { "bemptyv;" "\u0029b0" } + { "bepsi;" "\u0003f6" } + { "bernou;" "\u00212c" } + { "Bernoullis;" "\u00212c" } + { "Beta;" "\u000392" } + { "beta;" "\u0003b2" } + { "beth;" "\u002136" } + { "between;" "\u00226c" } + { "Bfr;" "\u01d505" } + { "bfr;" "\u01d51f" } + { "bigcap;" "\u0022c2" } + { "bigcirc;" "\u0025ef" } + { "bigcup;" "\u0022c3" } + { "bigodot;" "\u002a00" } + { "bigoplus;" "\u002a01" } + { "bigotimes;" "\u002a02" } + { "bigsqcup;" "\u002a06" } + { "bigstar;" "\u002605" } + { "bigtriangledown;" "\u0025bd" } + { "bigtriangleup;" "\u0025b3" } + { "biguplus;" "\u002a04" } + { "bigvee;" "\u0022c1" } + { "bigwedge;" "\u0022c0" } + { "bkarow;" "\u00290d" } + { "blacklozenge;" "\u0029eb" } + { "blacksquare;" "\u0025aa" } + { "blacktriangle;" "\u0025b4" } + { "blacktriangledown;" "\u0025be" } + { "blacktriangleleft;" "\u0025c2" } + { "blacktriangleright;" "\u0025b8" } + { "blank;" "\u002423" } + { "blk12;" "\u002592" } + { "blk14;" "\u002591" } + { "blk34;" "\u002593" } + { "block;" "\u002588" } + { "bne;" "=\u0020e5" } + { "bnequiv;" "\u002261\u0020e5" } + { "bNot;" "\u002aed" } + { "bnot;" "\u002310" } + { "Bopf;" "\u01d539" } + { "bopf;" "\u01d553" } + { "bot;" "\u0022a5" } + { "bottom;" "\u0022a5" } + { "bowtie;" "\u0022c8" } + { "boxbox;" "\u0029c9" } + { "boxDL;" "\u002557" } + { "boxDl;" "\u002556" } + { "boxdL;" "\u002555" } + { "boxdl;" "\u002510" } + { "boxDR;" "\u002554" } + { "boxDr;" "\u002553" } + { "boxdR;" "\u002552" } + { "boxdr;" "\u00250c" } + { "boxH;" "\u002550" } + { "boxh;" "\u002500" } + { "boxHD;" "\u002566" } + { "boxHd;" "\u002564" } + { "boxhD;" "\u002565" } + { "boxhd;" "\u00252c" } + { "boxHU;" "\u002569" } + { "boxHu;" "\u002567" } + { "boxhU;" "\u002568" } + { "boxhu;" "\u002534" } + { "boxminus;" "\u00229f" } + { "boxplus;" "\u00229e" } + { "boxtimes;" "\u0022a0" } + { "boxUL;" "\u00255d" } + { "boxUl;" "\u00255c" } + { "boxuL;" "\u00255b" } + { "boxul;" "\u002518" } + { "boxUR;" "\u00255a" } + { "boxUr;" "\u002559" } + { "boxuR;" "\u002558" } + { "boxur;" "\u002514" } + { "boxV;" "\u002551" } + { "boxv;" "\u002502" } + { "boxVH;" "\u00256c" } + { "boxVh;" "\u00256b" } + { "boxvH;" "\u00256a" } + { "boxvh;" "\u00253c" } + { "boxVL;" "\u002563" } + { "boxVl;" "\u002562" } + { "boxvL;" "\u002561" } + { "boxvl;" "\u002524" } + { "boxVR;" "\u002560" } + { "boxVr;" "\u00255f" } + { "boxvR;" "\u00255e" } + { "boxvr;" "\u00251c" } + { "bprime;" "\u002035" } + { "Breve;" "\u0002d8" } + { "breve;" "\u0002d8" } + { "brvbar" "\xa6" } + { "brvbar;" "\xa6" } + { "Bscr;" "\u00212c" } + { "bscr;" "\u01d4b7" } + { "bsemi;" "\u00204f" } + { "bsim;" "\u00223d" } + { "bsime;" "\u0022cd" } + { "bsol;" "\\" } + { "bsolb;" "\u0029c5" } + { "bsolhsub;" "\u0027c8" } + { "bull;" "\u002022" } + { "bullet;" "\u002022" } + { "bump;" "\u00224e" } + { "bumpE;" "\u002aae" } + { "bumpe;" "\u00224f" } + { "Bumpeq;" "\u00224e" } + { "bumpeq;" "\u00224f" } + { "Cacute;" "\u000106" } + { "cacute;" "\u000107" } + { "Cap;" "\u0022d2" } + { "cap;" "\u002229" } + { "capand;" "\u002a44" } + { "capbrcup;" "\u002a49" } + { "capcap;" "\u002a4b" } + { "capcup;" "\u002a47" } + { "capdot;" "\u002a40" } + { "CapitalDifferentialD;" "\u002145" } + { "caps;" "\u002229\u00fe00" } + { "caret;" "\u002041" } + { "caron;" "\u0002c7" } + { "Cayleys;" "\u00212d" } + { "ccaps;" "\u002a4d" } + { "Ccaron;" "\u00010c" } + { "ccaron;" "\u00010d" } + { "Ccedil" "\xc7" } + { "ccedil" "\xe7" } + { "Ccedil;" "\xc7" } + { "ccedil;" "\xe7" } + { "Ccirc;" "\u000108" } + { "ccirc;" "\u000109" } + { "Cconint;" "\u002230" } + { "ccups;" "\u002a4c" } + { "ccupssm;" "\u002a50" } + { "Cdot;" "\u00010a" } + { "cdot;" "\u00010b" } + { "cedil" "\xb8" } + { "cedil;" "\xb8" } + { "Cedilla;" "\xb8" } + { "cemptyv;" "\u0029b2" } + { "cent" "\xa2" } + { "cent;" "\xa2" } + { "CenterDot;" "\xb7" } + { "centerdot;" "\xb7" } + { "Cfr;" "\u00212d" } + { "cfr;" "\u01d520" } + { "CHcy;" "\u000427" } + { "chcy;" "\u000447" } + { "check;" "\u002713" } + { "checkmark;" "\u002713" } + { "Chi;" "\u0003a7" } + { "chi;" "\u0003c7" } + { "cir;" "\u0025cb" } + { "circ;" "\u0002c6" } + { "circeq;" "\u002257" } + { "circlearrowleft;" "\u0021ba" } + { "circlearrowright;" "\u0021bb" } + { "circledast;" "\u00229b" } + { "circledcirc;" "\u00229a" } + { "circleddash;" "\u00229d" } + { "CircleDot;" "\u002299" } + { "circledR;" "\xae" } + { "circledS;" "\u0024c8" } + { "CircleMinus;" "\u002296" } + { "CirclePlus;" "\u002295" } + { "CircleTimes;" "\u002297" } + { "cirE;" "\u0029c3" } + { "cire;" "\u002257" } + { "cirfnint;" "\u002a10" } + { "cirmid;" "\u002aef" } + { "cirscir;" "\u0029c2" } + { "ClockwiseContourIntegral;" "\u002232" } + { "CloseCurlyDoubleQuote;" "\u00201d" } + { "CloseCurlyQuote;" "\u002019" } + { "clubs;" "\u002663" } + { "clubsuit;" "\u002663" } + { "Colon;" "\u002237" } + { "colon;" ":" } + { "Colone;" "\u002a74" } + { "colone;" "\u002254" } + { "coloneq;" "\u002254" } + { "comma;" " }" } + { "commat;" "@" } + { "comp;" "\u002201" } + { "compfn;" "\u002218" } + { "complement;" "\u002201" } + { "complexes;" "\u002102" } + { "cong;" "\u002245" } + { "congdot;" "\u002a6d" } + { "Congruent;" "\u002261" } + { "Conint;" "\u00222f" } + { "conint;" "\u00222e" } + { "ContourIntegral;" "\u00222e" } + { "Copf;" "\u002102" } + { "copf;" "\u01d554" } + { "coprod;" "\u002210" } + { "Coproduct;" "\u002210" } + { "COPY" "\xa9" } + { "copy" "\xa9" } + { "COPY;" "\xa9" } + { "copy;" "\xa9" } + { "copysr;" "\u002117" } + { "CounterClockwiseContourIntegral;" "\u002233" } + { "crarr;" "\u0021b5" } + { "Cross;" "\u002a2f" } + { "cross;" "\u002717" } + { "Cscr;" "\u01d49e" } + { "cscr;" "\u01d4b8" } + { "csub;" "\u002acf" } + { "csube;" "\u002ad1" } + { "csup;" "\u002ad0" } + { "csupe;" "\u002ad2" } + { "ctdot;" "\u0022ef" } + { "cudarrl;" "\u002938" } + { "cudarrr;" "\u002935" } + { "cuepr;" "\u0022de" } + { "cuesc;" "\u0022df" } + { "cularr;" "\u0021b6" } + { "cularrp;" "\u00293d" } + { "Cup;" "\u0022d3" } + { "cup;" "\u00222a" } + { "cupbrcap;" "\u002a48" } + { "CupCap;" "\u00224d" } + { "cupcap;" "\u002a46" } + { "cupcup;" "\u002a4a" } + { "cupdot;" "\u00228d" } + { "cupor;" "\u002a45" } + { "cups;" "\u00222a\u00fe00" } + { "curarr;" "\u0021b7" } + { "curarrm;" "\u00293c" } + { "curlyeqprec;" "\u0022de" } + { "curlyeqsucc;" "\u0022df" } + { "curlyvee;" "\u0022ce" } + { "curlywedge;" "\u0022cf" } + { "curren" "\xa4" } + { "curren;" "\xa4" } + { "curvearrowleft;" "\u0021b6" } + { "curvearrowright;" "\u0021b7" } + { "cuvee;" "\u0022ce" } + { "cuwed;" "\u0022cf" } + { "cwconint;" "\u002232" } + { "cwint;" "\u002231" } + { "cylcty;" "\u00232d" } + { "Dagger;" "\u002021" } + { "dagger;" "\u002020" } + { "daleth;" "\u002138" } + { "Darr;" "\u0021a1" } + { "dArr;" "\u0021d3" } + { "darr;" "\u002193" } + { "dash;" "\u002010" } + { "Dashv;" "\u002ae4" } + { "dashv;" "\u0022a3" } + { "dbkarow;" "\u00290f" } + { "dblac;" "\u0002dd" } + { "Dcaron;" "\u00010e" } + { "dcaron;" "\u00010f" } + { "Dcy;" "\u000414" } + { "dcy;" "\u000434" } + { "DD;" "\u002145" } + { "dd;" "\u002146" } + { "ddagger;" "\u002021" } + { "ddarr;" "\u0021ca" } + { "DDotrahd;" "\u002911" } + { "ddotseq;" "\u002a77" } + { "deg" "\xb0" } + { "deg;" "\xb0" } + { "Del;" "\u002207" } + { "Delta;" "\u000394" } + { "delta;" "\u0003b4" } + { "demptyv;" "\u0029b1" } + { "dfisht;" "\u00297f" } + { "Dfr;" "\u01d507" } + { "dfr;" "\u01d521" } + { "dHar;" "\u002965" } + { "dharl;" "\u0021c3" } + { "dharr;" "\u0021c2" } + { "DiacriticalAcute;" "\xb4" } + { "DiacriticalDot;" "\u0002d9" } + { "DiacriticalDoubleAcute;" "\u0002dd" } + { "DiacriticalGrave;" "`" } + { "DiacriticalTilde;" "\u0002dc" } + { "diam;" "\u0022c4" } + { "Diamond;" "\u0022c4" } + { "diamond;" "\u0022c4" } + { "diamondsuit;" "\u002666" } + { "diams;" "\u002666" } + { "die;" "\xa8" } + { "DifferentialD;" "\u002146" } + { "digamma;" "\u0003dd" } + { "disin;" "\u0022f2" } + { "div;" "\xf7" } + { "divide" "\xf7" } + { "divide;" "\xf7" } + { "divideontimes;" "\u0022c7" } + { "divonx;" "\u0022c7" } + { "DJcy;" "\u000402" } + { "djcy;" "\u000452" } + { "dlcorn;" "\u00231e" } + { "dlcrop;" "\u00230d" } + { "dollar;" "$" } + { "Dopf;" "\u01d53b" } + { "dopf;" "\u01d555" } + { "Dot;" "\xa8" } + { "dot;" "\u0002d9" } + { "DotDot;" "\u0020dc" } + { "doteq;" "\u002250" } + { "doteqdot;" "\u002251" } + { "DotEqual;" "\u002250" } + { "dotminus;" "\u002238" } + { "dotplus;" "\u002214" } + { "dotsquare;" "\u0022a1" } + { "doublebarwedge;" "\u002306" } + { "DoubleContourIntegral;" "\u00222f" } + { "DoubleDot;" "\xa8" } + { "DoubleDownArrow;" "\u0021d3" } + { "DoubleLeftArrow;" "\u0021d0" } + { "DoubleLeftRightArrow;" "\u0021d4" } + { "DoubleLeftTee;" "\u002ae4" } + { "DoubleLongLeftArrow;" "\u0027f8" } + { "DoubleLongLeftRightArrow;" "\u0027fa" } + { "DoubleLongRightArrow;" "\u0027f9" } + { "DoubleRightArrow;" "\u0021d2" } + { "DoubleRightTee;" "\u0022a8" } + { "DoubleUpArrow;" "\u0021d1" } + { "DoubleUpDownArrow;" "\u0021d5" } + { "DoubleVerticalBar;" "\u002225" } + { "DownArrow;" "\u002193" } + { "Downarrow;" "\u0021d3" } + { "downarrow;" "\u002193" } + { "DownArrowBar;" "\u002913" } + { "DownArrowUpArrow;" "\u0021f5" } + { "DownBreve;" "\u000311" } + { "downdownarrows;" "\u0021ca" } + { "downharpoonleft;" "\u0021c3" } + { "downharpoonright;" "\u0021c2" } + { "DownLeftRightVector;" "\u002950" } + { "DownLeftTeeVector;" "\u00295e" } + { "DownLeftVector;" "\u0021bd" } + { "DownLeftVectorBar;" "\u002956" } + { "DownRightTeeVector;" "\u00295f" } + { "DownRightVector;" "\u0021c1" } + { "DownRightVectorBar;" "\u002957" } + { "DownTee;" "\u0022a4" } + { "DownTeeArrow;" "\u0021a7" } + { "drbkarow;" "\u002910" } + { "drcorn;" "\u00231f" } + { "drcrop;" "\u00230c" } + { "Dscr;" "\u01d49f" } + { "dscr;" "\u01d4b9" } + { "DScy;" "\u000405" } + { "dscy;" "\u000455" } + { "dsol;" "\u0029f6" } + { "Dstrok;" "\u000110" } + { "dstrok;" "\u000111" } + { "dtdot;" "\u0022f1" } + { "dtri;" "\u0025bf" } + { "dtrif;" "\u0025be" } + { "duarr;" "\u0021f5" } + { "duhar;" "\u00296f" } + { "dwangle;" "\u0029a6" } + { "DZcy;" "\u00040f" } + { "dzcy;" "\u00045f" } + { "dzigrarr;" "\u0027ff" } + { "Eacute" "\xc9" } + { "eacute" "\xe9" } + { "Eacute;" "\xc9" } + { "eacute;" "\xe9" } + { "easter;" "\u002a6e" } + { "Ecaron;" "\u00011a" } + { "ecaron;" "\u00011b" } + { "ecir;" "\u002256" } + { "Ecirc" "\xca" } + { "ecirc" "\xea" } + { "Ecirc;" "\xca" } + { "ecirc;" "\xea" } + { "ecolon;" "\u002255" } + { "Ecy;" "\u00042d" } + { "ecy;" "\u00044d" } + { "eDDot;" "\u002a77" } + { "Edot;" "\u000116" } + { "eDot;" "\u002251" } + { "edot;" "\u000117" } + { "ee;" "\u002147" } + { "efDot;" "\u002252" } + { "Efr;" "\u01d508" } + { "efr;" "\u01d522" } + { "eg;" "\u002a9a" } + { "Egrave" "\xc8" } + { "egrave" "\xe8" } + { "Egrave;" "\xc8" } + { "egrave;" "\xe8" } + { "egs;" "\u002a96" } + { "egsdot;" "\u002a98" } + { "el;" "\u002a99" } + { "Element;" "\u002208" } + { "elinters;" "\u0023e7" } + { "ell;" "\u002113" } + { "els;" "\u002a95" } + { "elsdot;" "\u002a97" } + { "Emacr;" "\u000112" } + { "emacr;" "\u000113" } + { "empty;" "\u002205" } + { "emptyset;" "\u002205" } + { "EmptySmallSquare;" "\u0025fb" } + { "emptyv;" "\u002205" } + { "EmptyVerySmallSquare;" "\u0025ab" } + { "emsp13;" "\u002004" } + { "emsp14;" "\u002005" } + { "emsp;" "\u002003" } + { "ENG;" "\u00014a" } + { "eng;" "\u00014b" } + { "ensp;" "\u002002" } + { "Eogon;" "\u000118" } + { "eogon;" "\u000119" } + { "Eopf;" "\u01d53c" } + { "eopf;" "\u01d556" } + { "epar;" "\u0022d5" } + { "eparsl;" "\u0029e3" } + { "eplus;" "\u002a71" } + { "epsi;" "\u0003b5" } + { "Epsilon;" "\u000395" } + { "epsilon;" "\u0003b5" } + { "epsiv;" "\u0003f5" } + { "eqcirc;" "\u002256" } + { "eqcolon;" "\u002255" } + { "eqsim;" "\u002242" } + { "eqslantgtr;" "\u002a96" } + { "eqslantless;" "\u002a95" } + { "Equal;" "\u002a75" } + { "equals;" "=" } + { "EqualTilde;" "\u002242" } + { "equest;" "\u00225f" } + { "Equilibrium;" "\u0021cc" } + { "equiv;" "\u002261" } + { "equivDD;" "\u002a78" } + { "eqvparsl;" "\u0029e5" } + { "erarr;" "\u002971" } + { "erDot;" "\u002253" } + { "Escr;" "\u002130" } + { "escr;" "\u00212f" } + { "esdot;" "\u002250" } + { "Esim;" "\u002a73" } + { "esim;" "\u002242" } + { "Eta;" "\u000397" } + { "eta;" "\u0003b7" } + { "ETH" "\xd0" } + { "eth" "\xf0" } + { "ETH;" "\xd0" } + { "eth;" "\xf0" } + { "Euml" "\xcb" } + { "euml" "\xeb" } + { "Euml;" "\xcb" } + { "euml;" "\xeb" } + { "euro;" "\u0020ac" } + { "excl;" "!" } + { "exist;" "\u002203" } + { "Exists;" "\u002203" } + { "expectation;" "\u002130" } + { "ExponentialE;" "\u002147" } + { "exponentiale;" "\u002147" } + { "fallingdotseq;" "\u002252" } + { "Fcy;" "\u000424" } + { "fcy;" "\u000444" } + { "female;" "\u002640" } + { "ffilig;" "\u00fb03" } + { "fflig;" "\u00fb00" } + { "ffllig;" "\u00fb04" } + { "Ffr;" "\u01d509" } + { "ffr;" "\u01d523" } + { "filig;" "\u00fb01" } + { "FilledSmallSquare;" "\u0025fc" } + { "FilledVerySmallSquare;" "\u0025aa" } + { "fjlig;" "fj" } + { "flat;" "\u00266d" } + { "fllig;" "\u00fb02" } + { "fltns;" "\u0025b1" } + { "fnof;" "\u000192" } + { "Fopf;" "\u01d53d" } + { "fopf;" "\u01d557" } + { "ForAll;" "\u002200" } + { "forall;" "\u002200" } + { "fork;" "\u0022d4" } + { "forkv;" "\u002ad9" } + { "Fouriertrf;" "\u002131" } + { "fpartint;" "\u002a0d" } + { "frac12" "\xbd" } + { "frac12;" "\xbd" } + { "frac13;" "\u002153" } + { "frac14" "\xbc" } + { "frac14;" "\xbc" } + { "frac15;" "\u002155" } + { "frac16;" "\u002159" } + { "frac18;" "\u00215b" } + { "frac23;" "\u002154" } + { "frac25;" "\u002156" } + { "frac34" "\xbe" } + { "frac34;" "\xbe" } + { "frac35;" "\u002157" } + { "frac38;" "\u00215c" } + { "frac45;" "\u002158" } + { "frac56;" "\u00215a" } + { "frac58;" "\u00215d" } + { "frac78;" "\u00215e" } + { "frasl;" "\u002044" } + { "frown;" "\u002322" } + { "Fscr;" "\u002131" } + { "fscr;" "\u01d4bb" } + { "gacute;" "\u0001f5" } + { "Gamma;" "\u000393" } + { "gamma;" "\u0003b3" } + { "Gammad;" "\u0003dc" } + { "gammad;" "\u0003dd" } + { "gap;" "\u002a86" } + { "Gbreve;" "\u00011e" } + { "gbreve;" "\u00011f" } + { "Gcedil;" "\u000122" } + { "Gcirc;" "\u00011c" } + { "gcirc;" "\u00011d" } + { "Gcy;" "\u000413" } + { "gcy;" "\u000433" } + { "Gdot;" "\u000120" } + { "gdot;" "\u000121" } + { "gE;" "\u002267" } + { "ge;" "\u002265" } + { "gEl;" "\u002a8c" } + { "gel;" "\u0022db" } + { "geq;" "\u002265" } + { "geqq;" "\u002267" } + { "geqslant;" "\u002a7e" } + { "ges;" "\u002a7e" } + { "gescc;" "\u002aa9" } + { "gesdot;" "\u002a80" } + { "gesdoto;" "\u002a82" } + { "gesdotol;" "\u002a84" } + { "gesl;" "\u0022db\u00fe00" } + { "gesles;" "\u002a94" } + { "Gfr;" "\u01d50a" } + { "gfr;" "\u01d524" } + { "Gg;" "\u0022d9" } + { "gg;" "\u00226b" } + { "ggg;" "\u0022d9" } + { "gimel;" "\u002137" } + { "GJcy;" "\u000403" } + { "gjcy;" "\u000453" } + { "gl;" "\u002277" } + { "gla;" "\u002aa5" } + { "glE;" "\u002a92" } + { "glj;" "\u002aa4" } + { "gnap;" "\u002a8a" } + { "gnapprox;" "\u002a8a" } + { "gnE;" "\u002269" } + { "gne;" "\u002a88" } + { "gneq;" "\u002a88" } + { "gneqq;" "\u002269" } + { "gnsim;" "\u0022e7" } + { "Gopf;" "\u01d53e" } + { "gopf;" "\u01d558" } + { "grave;" "`" } + { "GreaterEqual;" "\u002265" } + { "GreaterEqualLess;" "\u0022db" } + { "GreaterFullEqual;" "\u002267" } + { "GreaterGreater;" "\u002aa2" } + { "GreaterLess;" "\u002277" } + { "GreaterSlantEqual;" "\u002a7e" } + { "GreaterTilde;" "\u002273" } + { "Gscr;" "\u01d4a2" } + { "gscr;" "\u00210a" } + { "gsim;" "\u002273" } + { "gsime;" "\u002a8e" } + { "gsiml;" "\u002a90" } + { "GT" ">" } + { "gt" ">" } + { "GT;" ">" } + { "Gt;" "\u00226b" } + { "gt;" ">" } + { "gtcc;" "\u002aa7" } + { "gtcir;" "\u002a7a" } + { "gtdot;" "\u0022d7" } + { "gtlPar;" "\u002995" } + { "gtquest;" "\u002a7c" } + { "gtrapprox;" "\u002a86" } + { "gtrarr;" "\u002978" } + { "gtrdot;" "\u0022d7" } + { "gtreqless;" "\u0022db" } + { "gtreqqless;" "\u002a8c" } + { "gtrless;" "\u002277" } + { "gtrsim;" "\u002273" } + { "gvertneqq;" "\u002269\u00fe00" } + { "gvnE;" "\u002269\u00fe00" } + { "Hacek;" "\u0002c7" } + { "hairsp;" "\u00200a" } + { "half;" "\xbd" } + { "hamilt;" "\u00210b" } + { "HARDcy;" "\u00042a" } + { "hardcy;" "\u00044a" } + { "hArr;" "\u0021d4" } + { "harr;" "\u002194" } + { "harrcir;" "\u002948" } + { "harrw;" "\u0021ad" } + { "Hat;" "^" } + { "hbar;" "\u00210f" } + { "Hcirc;" "\u000124" } + { "hcirc;" "\u000125" } + { "hearts;" "\u002665" } + { "heartsuit;" "\u002665" } + { "hellip;" "\u002026" } + { "hercon;" "\u0022b9" } + { "Hfr;" "\u00210c" } + { "hfr;" "\u01d525" } + { "HilbertSpace;" "\u00210b" } + { "hksearow;" "\u002925" } + { "hkswarow;" "\u002926" } + { "hoarr;" "\u0021ff" } + { "homtht;" "\u00223b" } + { "hookleftarrow;" "\u0021a9" } + { "hookrightarrow;" "\u0021aa" } + { "Hopf;" "\u00210d" } + { "hopf;" "\u01d559" } + { "horbar;" "\u002015" } + { "HorizontalLine;" "\u002500" } + { "Hscr;" "\u00210b" } + { "hscr;" "\u01d4bd" } + { "hslash;" "\u00210f" } + { "Hstrok;" "\u000126" } + { "hstrok;" "\u000127" } + { "HumpDownHump;" "\u00224e" } + { "HumpEqual;" "\u00224f" } + { "hybull;" "\u002043" } + { "hyphen;" "\u002010" } + { "Iacute" "\xcd" } + { "iacute" "\xed" } + { "Iacute;" "\xcd" } + { "iacute;" "\xed" } + { "ic;" "\u002063" } + { "Icirc" "\xce" } + { "icirc" "\xee" } + { "Icirc;" "\xce" } + { "icirc;" "\xee" } + { "Icy;" "\u000418" } + { "icy;" "\u000438" } + { "Idot;" "\u000130" } + { "IEcy;" "\u000415" } + { "iecy;" "\u000435" } + { "iexcl" "\xa1" } + { "iexcl;" "\xa1" } + { "iff;" "\u0021d4" } + { "Ifr;" "\u002111" } + { "ifr;" "\u01d526" } + { "Igrave" "\xcc" } + { "igrave" "\xec" } + { "Igrave;" "\xcc" } + { "igrave;" "\xec" } + { "ii;" "\u002148" } + { "iiiint;" "\u002a0c" } + { "iiint;" "\u00222d" } + { "iinfin;" "\u0029dc" } + { "iiota;" "\u002129" } + { "IJlig;" "\u000132" } + { "ijlig;" "\u000133" } + { "Im;" "\u002111" } + { "Imacr;" "\u00012a" } + { "imacr;" "\u00012b" } + { "image;" "\u002111" } + { "ImaginaryI;" "\u002148" } + { "imagline;" "\u002110" } + { "imagpart;" "\u002111" } + { "imath;" "\u000131" } + { "imof;" "\u0022b7" } + { "imped;" "\u0001b5" } + { "Implies;" "\u0021d2" } + { "in;" "\u002208" } + { "incare;" "\u002105" } + { "infin;" "\u00221e" } + { "infintie;" "\u0029dd" } + { "inodot;" "\u000131" } + { "Int;" "\u00222c" } + { "int;" "\u00222b" } + { "intcal;" "\u0022ba" } + { "integers;" "\u002124" } + { "Integral;" "\u00222b" } + { "intercal;" "\u0022ba" } + { "Intersection;" "\u0022c2" } + { "intlarhk;" "\u002a17" } + { "intprod;" "\u002a3c" } + { "InvisibleComma;" "\u002063" } + { "InvisibleTimes;" "\u002062" } + { "IOcy;" "\u000401" } + { "iocy;" "\u000451" } + { "Iogon;" "\u00012e" } + { "iogon;" "\u00012f" } + { "Iopf;" "\u01d540" } + { "iopf;" "\u01d55a" } + { "Iota;" "\u000399" } + { "iota;" "\u0003b9" } + { "iprod;" "\u002a3c" } + { "iquest" "\xbf" } + { "iquest;" "\xbf" } + { "Iscr;" "\u002110" } + { "iscr;" "\u01d4be" } + { "isin;" "\u002208" } + { "isindot;" "\u0022f5" } + { "isinE;" "\u0022f9" } + { "isins;" "\u0022f4" } + { "isinsv;" "\u0022f3" } + { "isinv;" "\u002208" } + { "it;" "\u002062" } + { "Itilde;" "\u000128" } + { "itilde;" "\u000129" } + { "Iukcy;" "\u000406" } + { "iukcy;" "\u000456" } + { "Iuml" "\xcf" } + { "iuml" "\xef" } + { "Iuml;" "\xcf" } + { "iuml;" "\xef" } + { "Jcirc;" "\u000134" } + { "jcirc;" "\u000135" } + { "Jcy;" "\u000419" } + { "jcy;" "\u000439" } + { "Jfr;" "\u01d50d" } + { "jfr;" "\u01d527" } + { "jmath;" "\u000237" } + { "Jopf;" "\u01d541" } + { "jopf;" "\u01d55b" } + { "Jscr;" "\u01d4a5" } + { "jscr;" "\u01d4bf" } + { "Jsercy;" "\u000408" } + { "jsercy;" "\u000458" } + { "Jukcy;" "\u000404" } + { "jukcy;" "\u000454" } + { "Kappa;" "\u00039a" } + { "kappa;" "\u0003ba" } + { "kappav;" "\u0003f0" } + { "Kcedil;" "\u000136" } + { "kcedil;" "\u000137" } + { "Kcy;" "\u00041a" } + { "kcy;" "\u00043a" } + { "Kfr;" "\u01d50e" } + { "kfr;" "\u01d528" } + { "kgreen;" "\u000138" } + { "KHcy;" "\u000425" } + { "khcy;" "\u000445" } + { "KJcy;" "\u00040c" } + { "kjcy;" "\u00045c" } + { "Kopf;" "\u01d542" } + { "kopf;" "\u01d55c" } + { "Kscr;" "\u01d4a6" } + { "kscr;" "\u01d4c0" } + { "lAarr;" "\u0021da" } + { "Lacute;" "\u000139" } + { "lacute;" "\u00013a" } + { "laemptyv;" "\u0029b4" } + { "lagran;" "\u002112" } + { "Lambda;" "\u00039b" } + { "lambda;" "\u0003bb" } + { "Lang;" "\u0027ea" } + { "lang;" "\u0027e8" } + { "langd;" "\u002991" } + { "langle;" "\u0027e8" } + { "lap;" "\u002a85" } + { "Laplacetrf;" "\u002112" } + { "laquo" "\xab" } + { "laquo;" "\xab" } + { "Larr;" "\u00219e" } + { "lArr;" "\u0021d0" } + { "larr;" "\u002190" } + { "larrb;" "\u0021e4" } + { "larrbfs;" "\u00291f" } + { "larrfs;" "\u00291d" } + { "larrhk;" "\u0021a9" } + { "larrlp;" "\u0021ab" } + { "larrpl;" "\u002939" } + { "larrsim;" "\u002973" } + { "larrtl;" "\u0021a2" } + { "lat;" "\u002aab" } + { "lAtail;" "\u00291b" } + { "latail;" "\u002919" } + { "late;" "\u002aad" } + { "lates;" "\u002aad\u00fe00" } + { "lBarr;" "\u00290e" } + { "lbarr;" "\u00290c" } + { "lbbrk;" "\u002772" } + { "lbrace;" "{" } + { "lbrack;" "[" } + { "lbrke;" "\u00298b" } + { "lbrksld;" "\u00298f" } + { "lbrkslu;" "\u00298d" } + { "Lcaron;" "\u00013d" } + { "lcaron;" "\u00013e" } + { "Lcedil;" "\u00013b" } + { "lcedil;" "\u00013c" } + { "lceil;" "\u002308" } + { "lcub;" "{" } + { "Lcy;" "\u00041b" } + { "lcy;" "\u00043b" } + { "ldca;" "\u002936" } + { "ldquo;" "\u00201c" } + { "ldquor;" "\u00201e" } + { "ldrdhar;" "\u002967" } + { "ldrushar;" "\u00294b" } + { "ldsh;" "\u0021b2" } + { "lE;" "\u002266" } + { "le;" "\u002264" } + { "LeftAngleBracket;" "\u0027e8" } + { "LeftArrow;" "\u002190" } + { "Leftarrow;" "\u0021d0" } + { "leftarrow;" "\u002190" } + { "LeftArrowBar;" "\u0021e4" } + { "LeftArrowRightArrow;" "\u0021c6" } + { "leftarrowtail;" "\u0021a2" } + { "LeftCeiling;" "\u002308" } + { "LeftDoubleBracket;" "\u0027e6" } + { "LeftDownTeeVector;" "\u002961" } + { "LeftDownVector;" "\u0021c3" } + { "LeftDownVectorBar;" "\u002959" } + { "LeftFloor;" "\u00230a" } + { "leftharpoondown;" "\u0021bd" } + { "leftharpoonup;" "\u0021bc" } + { "leftleftarrows;" "\u0021c7" } + { "LeftRightArrow;" "\u002194" } + { "Leftrightarrow;" "\u0021d4" } + { "leftrightarrow;" "\u002194" } + { "leftrightarrows;" "\u0021c6" } + { "leftrightharpoons;" "\u0021cb" } + { "leftrightsquigarrow;" "\u0021ad" } + { "LeftRightVector;" "\u00294e" } + { "LeftTee;" "\u0022a3" } + { "LeftTeeArrow;" "\u0021a4" } + { "LeftTeeVector;" "\u00295a" } + { "leftthreetimes;" "\u0022cb" } + { "LeftTriangle;" "\u0022b2" } + { "LeftTriangleBar;" "\u0029cf" } + { "LeftTriangleEqual;" "\u0022b4" } + { "LeftUpDownVector;" "\u002951" } + { "LeftUpTeeVector;" "\u002960" } + { "LeftUpVector;" "\u0021bf" } + { "LeftUpVectorBar;" "\u002958" } + { "LeftVector;" "\u0021bc" } + { "LeftVectorBar;" "\u002952" } + { "lEg;" "\u002a8b" } + { "leg;" "\u0022da" } + { "leq;" "\u002264" } + { "leqq;" "\u002266" } + { "leqslant;" "\u002a7d" } + { "les;" "\u002a7d" } + { "lescc;" "\u002aa8" } + { "lesdot;" "\u002a7f" } + { "lesdoto;" "\u002a81" } + { "lesdotor;" "\u002a83" } + { "lesg;" "\u0022da\u00fe00" } + { "lesges;" "\u002a93" } + { "lessapprox;" "\u002a85" } + { "lessdot;" "\u0022d6" } + { "lesseqgtr;" "\u0022da" } + { "lesseqqgtr;" "\u002a8b" } + { "LessEqualGreater;" "\u0022da" } + { "LessFullEqual;" "\u002266" } + { "LessGreater;" "\u002276" } + { "lessgtr;" "\u002276" } + { "LessLess;" "\u002aa1" } + { "lesssim;" "\u002272" } + { "LessSlantEqual;" "\u002a7d" } + { "LessTilde;" "\u002272" } + { "lfisht;" "\u00297c" } + { "lfloor;" "\u00230a" } + { "Lfr;" "\u01d50f" } + { "lfr;" "\u01d529" } + { "lg;" "\u002276" } + { "lgE;" "\u002a91" } + { "lHar;" "\u002962" } + { "lhard;" "\u0021bd" } + { "lharu;" "\u0021bc" } + { "lharul;" "\u00296a" } + { "lhblk;" "\u002584" } + { "LJcy;" "\u000409" } + { "ljcy;" "\u000459" } + { "Ll;" "\u0022d8" } + { "ll;" "\u00226a" } + { "llarr;" "\u0021c7" } + { "llcorner;" "\u00231e" } + { "Lleftarrow;" "\u0021da" } + { "llhard;" "\u00296b" } + { "lltri;" "\u0025fa" } + { "Lmidot;" "\u00013f" } + { "lmidot;" "\u000140" } + { "lmoust;" "\u0023b0" } + { "lmoustache;" "\u0023b0" } + { "lnap;" "\u002a89" } + { "lnapprox;" "\u002a89" } + { "lnE;" "\u002268" } + { "lne;" "\u002a87" } + { "lneq;" "\u002a87" } + { "lneqq;" "\u002268" } + { "lnsim;" "\u0022e6" } + { "loang;" "\u0027ec" } + { "loarr;" "\u0021fd" } + { "lobrk;" "\u0027e6" } + { "LongLeftArrow;" "\u0027f5" } + { "Longleftarrow;" "\u0027f8" } + { "longleftarrow;" "\u0027f5" } + { "LongLeftRightArrow;" "\u0027f7" } + { "Longleftrightarrow;" "\u0027fa" } + { "longleftrightarrow;" "\u0027f7" } + { "longmapsto;" "\u0027fc" } + { "LongRightArrow;" "\u0027f6" } + { "Longrightarrow;" "\u0027f9" } + { "longrightarrow;" "\u0027f6" } + { "looparrowleft;" "\u0021ab" } + { "looparrowright;" "\u0021ac" } + { "lopar;" "\u002985" } + { "Lopf;" "\u01d543" } + { "lopf;" "\u01d55d" } + { "loplus;" "\u002a2d" } + { "lotimes;" "\u002a34" } + { "lowast;" "\u002217" } + { "lowbar;" "_" } + { "LowerLeftArrow;" "\u002199" } + { "LowerRightArrow;" "\u002198" } + { "loz;" "\u0025ca" } + { "lozenge;" "\u0025ca" } + { "lozf;" "\u0029eb" } + { "lpar;" "(" } + { "lparlt;" "\u002993" } + { "lrarr;" "\u0021c6" } + { "lrcorner;" "\u00231f" } + { "lrhar;" "\u0021cb" } + { "lrhard;" "\u00296d" } + { "lrm;" "\u00200e" } + { "lrtri;" "\u0022bf" } + { "lsaquo;" "\u002039" } + { "Lscr;" "\u002112" } + { "lscr;" "\u01d4c1" } + { "Lsh;" "\u0021b0" } + { "lsh;" "\u0021b0" } + { "lsim;" "\u002272" } + { "lsime;" "\u002a8d" } + { "lsimg;" "\u002a8f" } + { "lsqb;" "[" } + { "lsquo;" "\u002018" } + { "lsquor;" "\u00201a" } + { "Lstrok;" "\u000141" } + { "lstrok;" "\u000142" } + { "LT" "<" } + { "lt" "<" } + { "LT;" "<" } + { "Lt;" "\u00226a" } + { "lt;" "<" } + { "ltcc;" "\u002aa6" } + { "ltcir;" "\u002a79" } + { "ltdot;" "\u0022d6" } + { "lthree;" "\u0022cb" } + { "ltimes;" "\u0022c9" } + { "ltlarr;" "\u002976" } + { "ltquest;" "\u002a7b" } + { "ltri;" "\u0025c3" } + { "ltrie;" "\u0022b4" } + { "ltrif;" "\u0025c2" } + { "ltrPar;" "\u002996" } + { "lurdshar;" "\u00294a" } + { "luruhar;" "\u002966" } + { "lvertneqq;" "\u002268\u00fe00" } + { "lvnE;" "\u002268\u00fe00" } + { "macr" "\xaf" } + { "macr;" "\xaf" } + { "male;" "\u002642" } + { "malt;" "\u002720" } + { "maltese;" "\u002720" } + { "Map;" "\u002905" } + { "map;" "\u0021a6" } + { "mapsto;" "\u0021a6" } + { "mapstodown;" "\u0021a7" } + { "mapstoleft;" "\u0021a4" } + { "mapstoup;" "\u0021a5" } + { "marker;" "\u0025ae" } + { "mcomma;" "\u002a29" } + { "Mcy;" "\u00041c" } + { "mcy;" "\u00043c" } + { "mdash;" "\u002014" } + { "mDDot;" "\u00223a" } + { "measuredangle;" "\u002221" } + { "MediumSpace;" "\u00205f" } + { "Mellintrf;" "\u002133" } + { "Mfr;" "\u01d510" } + { "mfr;" "\u01d52a" } + { "mho;" "\u002127" } + { "micro" "\xb5" } + { "micro;" "\xb5" } + { "mid;" "\u002223" } + { "midast;" "*" } + { "midcir;" "\u002af0" } + { "middot" "\xb7" } + { "middot;" "\xb7" } + { "minus;" "\u002212" } + { "minusb;" "\u00229f" } + { "minusd;" "\u002238" } + { "minusdu;" "\u002a2a" } + { "MinusPlus;" "\u002213" } + { "mlcp;" "\u002adb" } + { "mldr;" "\u002026" } + { "mnplus;" "\u002213" } + { "models;" "\u0022a7" } + { "Mopf;" "\u01d544" } + { "mopf;" "\u01d55e" } + { "mp;" "\u002213" } + { "Mscr;" "\u002133" } + { "mscr;" "\u01d4c2" } + { "mstpos;" "\u00223e" } + { "Mu;" "\u00039c" } + { "mu;" "\u0003bc" } + { "multimap;" "\u0022b8" } + { "mumap;" "\u0022b8" } + { "nabla;" "\u002207" } + { "Nacute;" "\u000143" } + { "nacute;" "\u000144" } + { "nang;" "\u002220\u0020d2" } + { "nap;" "\u002249" } + { "napE;" "\u002a70\u000338" } + { "napid;" "\u00224b\u000338" } + { "napos;" "\u000149" } + { "napprox;" "\u002249" } + { "natur;" "\u00266e" } + { "natural;" "\u00266e" } + { "naturals;" "\u002115" } + { "nbsp" "\xa0" } + { "nbsp;" "\xa0" } + { "nbump;" "\u00224e\u000338" } + { "nbumpe;" "\u00224f\u000338" } + { "ncap;" "\u002a43" } + { "Ncaron;" "\u000147" } + { "ncaron;" "\u000148" } + { "Ncedil;" "\u000145" } + { "ncedil;" "\u000146" } + { "ncong;" "\u002247" } + { "ncongdot;" "\u002a6d\u000338" } + { "ncup;" "\u002a42" } + { "Ncy;" "\u00041d" } + { "ncy;" "\u00043d" } + { "ndash;" "\u002013" } + { "ne;" "\u002260" } + { "nearhk;" "\u002924" } + { "neArr;" "\u0021d7" } + { "nearr;" "\u002197" } + { "nearrow;" "\u002197" } + { "nedot;" "\u002250\u000338" } + { "NegativeMediumSpace;" "\u00200b" } + { "NegativeThickSpace;" "\u00200b" } + { "NegativeThinSpace;" "\u00200b" } + { "NegativeVeryThinSpace;" "\u00200b" } + { "nequiv;" "\u002262" } + { "nesear;" "\u002928" } + { "nesim;" "\u002242\u000338" } + { "NestedGreaterGreater;" "\u00226b" } + { "NestedLessLess;" "\u00226a" } + { "NewLine;" "\n" } + { "nexist;" "\u002204" } + { "nexists;" "\u002204" } + { "Nfr;" "\u01d511" } + { "nfr;" "\u01d52b" } + { "ngE;" "\u002267\u000338" } + { "nge;" "\u002271" } + { "ngeq;" "\u002271" } + { "ngeqq;" "\u002267\u000338" } + { "ngeqslant;" "\u002a7e\u000338" } + { "nges;" "\u002a7e\u000338" } + { "nGg;" "\u0022d9\u000338" } + { "ngsim;" "\u002275" } + { "nGt;" "\u00226b\u0020d2" } + { "ngt;" "\u00226f" } + { "ngtr;" "\u00226f" } + { "nGtv;" "\u00226b\u000338" } + { "nhArr;" "\u0021ce" } + { "nharr;" "\u0021ae" } + { "nhpar;" "\u002af2" } + { "ni;" "\u00220b" } + { "nis;" "\u0022fc" } + { "nisd;" "\u0022fa" } + { "niv;" "\u00220b" } + { "NJcy;" "\u00040a" } + { "njcy;" "\u00045a" } + { "nlArr;" "\u0021cd" } + { "nlarr;" "\u00219a" } + { "nldr;" "\u002025" } + { "nlE;" "\u002266\u000338" } + { "nle;" "\u002270" } + { "nLeftarrow;" "\u0021cd" } + { "nleftarrow;" "\u00219a" } + { "nLeftrightarrow;" "\u0021ce" } + { "nleftrightarrow;" "\u0021ae" } + { "nleq;" "\u002270" } + { "nleqq;" "\u002266\u000338" } + { "nleqslant;" "\u002a7d\u000338" } + { "nles;" "\u002a7d\u000338" } + { "nless;" "\u00226e" } + { "nLl;" "\u0022d8\u000338" } + { "nlsim;" "\u002274" } + { "nLt;" "\u00226a\u0020d2" } + { "nlt;" "\u00226e" } + { "nltri;" "\u0022ea" } + { "nltrie;" "\u0022ec" } + { "nLtv;" "\u00226a\u000338" } + { "nmid;" "\u002224" } + { "NoBreak;" "\u002060" } + { "NonBreakingSpace;" "\xa0" } + { "Nopf;" "\u002115" } + { "nopf;" "\u01d55f" } + { "not" "\xac" } + { "Not;" "\u002aec" } + { "not;" "\xac" } + { "NotCongruent;" "\u002262" } + { "NotCupCap;" "\u00226d" } + { "NotDoubleVerticalBar;" "\u002226" } + { "NotElement;" "\u002209" } + { "NotEqual;" "\u002260" } + { "NotEqualTilde;" "\u002242\u000338" } + { "NotExists;" "\u002204" } + { "NotGreater;" "\u00226f" } + { "NotGreaterEqual;" "\u002271" } + { "NotGreaterFullEqual;" "\u002267\u000338" } + { "NotGreaterGreater;" "\u00226b\u000338" } + { "NotGreaterLess;" "\u002279" } + { "NotGreaterSlantEqual;" "\u002a7e\u000338" } + { "NotGreaterTilde;" "\u002275" } + { "NotHumpDownHump;" "\u00224e\u000338" } + { "NotHumpEqual;" "\u00224f\u000338" } + { "notin;" "\u002209" } + { "notindot;" "\u0022f5\u000338" } + { "notinE;" "\u0022f9\u000338" } + { "notinva;" "\u002209" } + { "notinvb;" "\u0022f7" } + { "notinvc;" "\u0022f6" } + { "NotLeftTriangle;" "\u0022ea" } + { "NotLeftTriangleBar;" "\u0029cf\u000338" } + { "NotLeftTriangleEqual;" "\u0022ec" } + { "NotLess;" "\u00226e" } + { "NotLessEqual;" "\u002270" } + { "NotLessGreater;" "\u002278" } + { "NotLessLess;" "\u00226a\u000338" } + { "NotLessSlantEqual;" "\u002a7d\u000338" } + { "NotLessTilde;" "\u002274" } + { "NotNestedGreaterGreater;" "\u002aa2\u000338" } + { "NotNestedLessLess;" "\u002aa1\u000338" } + { "notni;" "\u00220c" } + { "notniva;" "\u00220c" } + { "notnivb;" "\u0022fe" } + { "notnivc;" "\u0022fd" } + { "NotPrecedes;" "\u002280" } + { "NotPrecedesEqual;" "\u002aaf\u000338" } + { "NotPrecedesSlantEqual;" "\u0022e0" } + { "NotReverseElement;" "\u00220c" } + { "NotRightTriangle;" "\u0022eb" } + { "NotRightTriangleBar;" "\u0029d0\u000338" } + { "NotRightTriangleEqual;" "\u0022ed" } + { "NotSquareSubset;" "\u00228f\u000338" } + { "NotSquareSubsetEqual;" "\u0022e2" } + { "NotSquareSuperset;" "\u002290\u000338" } + { "NotSquareSupersetEqual;" "\u0022e3" } + { "NotSubset;" "\u002282\u0020d2" } + { "NotSubsetEqual;" "\u002288" } + { "NotSucceeds;" "\u002281" } + { "NotSucceedsEqual;" "\u002ab0\u000338" } + { "NotSucceedsSlantEqual;" "\u0022e1" } + { "NotSucceedsTilde;" "\u00227f\u000338" } + { "NotSuperset;" "\u002283\u0020d2" } + { "NotSupersetEqual;" "\u002289" } + { "NotTilde;" "\u002241" } + { "NotTildeEqual;" "\u002244" } + { "NotTildeFullEqual;" "\u002247" } + { "NotTildeTilde;" "\u002249" } + { "NotVerticalBar;" "\u002224" } + { "npar;" "\u002226" } + { "nparallel;" "\u002226" } + { "nparsl;" "\u002afd\u0020e5" } + { "npart;" "\u002202\u000338" } + { "npolint;" "\u002a14" } + { "npr;" "\u002280" } + { "nprcue;" "\u0022e0" } + { "npre;" "\u002aaf\u000338" } + { "nprec;" "\u002280" } + { "npreceq;" "\u002aaf\u000338" } + { "nrArr;" "\u0021cf" } + { "nrarr;" "\u00219b" } + { "nrarrc;" "\u002933\u000338" } + { "nrarrw;" "\u00219d\u000338" } + { "nRightarrow;" "\u0021cf" } + { "nrightarrow;" "\u00219b" } + { "nrtri;" "\u0022eb" } + { "nrtrie;" "\u0022ed" } + { "nsc;" "\u002281" } + { "nsccue;" "\u0022e1" } + { "nsce;" "\u002ab0\u000338" } + { "Nscr;" "\u01d4a9" } + { "nscr;" "\u01d4c3" } + { "nshortmid;" "\u002224" } + { "nshortparallel;" "\u002226" } + { "nsim;" "\u002241" } + { "nsime;" "\u002244" } + { "nsimeq;" "\u002244" } + { "nsmid;" "\u002224" } + { "nspar;" "\u002226" } + { "nsqsube;" "\u0022e2" } + { "nsqsupe;" "\u0022e3" } + { "nsub;" "\u002284" } + { "nsubE;" "\u002ac5\u000338" } + { "nsube;" "\u002288" } + { "nsubset;" "\u002282\u0020d2" } + { "nsubseteq;" "\u002288" } + { "nsubseteqq;" "\u002ac5\u000338" } + { "nsucc;" "\u002281" } + { "nsucceq;" "\u002ab0\u000338" } + { "nsup;" "\u002285" } + { "nsupE;" "\u002ac6\u000338" } + { "nsupe;" "\u002289" } + { "nsupset;" "\u002283\u0020d2" } + { "nsupseteq;" "\u002289" } + { "nsupseteqq;" "\u002ac6\u000338" } + { "ntgl;" "\u002279" } + { "Ntilde" "\xd1" } + { "ntilde" "\xf1" } + { "Ntilde;" "\xd1" } + { "ntilde;" "\xf1" } + { "ntlg;" "\u002278" } + { "ntriangleleft;" "\u0022ea" } + { "ntrianglelefteq;" "\u0022ec" } + { "ntriangleright;" "\u0022eb" } + { "ntrianglerighteq;" "\u0022ed" } + { "Nu;" "\u00039d" } + { "nu;" "\u0003bd" } + { "num;" "#" } + { "numero;" "\u002116" } + { "numsp;" "\u002007" } + { "nvap;" "\u00224d\u0020d2" } + { "nVDash;" "\u0022af" } + { "nVdash;" "\u0022ae" } + { "nvDash;" "\u0022ad" } + { "nvdash;" "\u0022ac" } + { "nvge;" "\u002265\u0020d2" } + { "nvgt;" ">\u0020d2" } + { "nvHarr;" "\u002904" } + { "nvinfin;" "\u0029de" } + { "nvlArr;" "\u002902" } + { "nvle;" "\u002264\u0020d2" } + { "nvlt;" "<\u0020d2" } + { "nvltrie;" "\u0022b4\u0020d2" } + { "nvrArr;" "\u002903" } + { "nvrtrie;" "\u0022b5\u0020d2" } + { "nvsim;" "\u00223c\u0020d2" } + { "nwarhk;" "\u002923" } + { "nwArr;" "\u0021d6" } + { "nwarr;" "\u002196" } + { "nwarrow;" "\u002196" } + { "nwnear;" "\u002927" } + { "Oacute" "\xd3" } + { "oacute" "\xf3" } + { "Oacute;" "\xd3" } + { "oacute;" "\xf3" } + { "oast;" "\u00229b" } + { "ocir;" "\u00229a" } + { "Ocirc" "\xd4" } + { "ocirc" "\xf4" } + { "Ocirc;" "\xd4" } + { "ocirc;" "\xf4" } + { "Ocy;" "\u00041e" } + { "ocy;" "\u00043e" } + { "odash;" "\u00229d" } + { "Odblac;" "\u000150" } + { "odblac;" "\u000151" } + { "odiv;" "\u002a38" } + { "odot;" "\u002299" } + { "odsold;" "\u0029bc" } + { "OElig;" "\u000152" } + { "oelig;" "\u000153" } + { "ofcir;" "\u0029bf" } + { "Ofr;" "\u01d512" } + { "ofr;" "\u01d52c" } + { "ogon;" "\u0002db" } + { "Ograve" "\xd2" } + { "ograve" "\xf2" } + { "Ograve;" "\xd2" } + { "ograve;" "\xf2" } + { "ogt;" "\u0029c1" } + { "ohbar;" "\u0029b5" } + { "ohm;" "\u0003a9" } + { "oint;" "\u00222e" } + { "olarr;" "\u0021ba" } + { "olcir;" "\u0029be" } + { "olcross;" "\u0029bb" } + { "oline;" "\u00203e" } + { "olt;" "\u0029c0" } + { "Omacr;" "\u00014c" } + { "omacr;" "\u00014d" } + { "Omega;" "\u0003a9" } + { "omega;" "\u0003c9" } + { "Omicron;" "\u00039f" } + { "omicron;" "\u0003bf" } + { "omid;" "\u0029b6" } + { "ominus;" "\u002296" } + { "Oopf;" "\u01d546" } + { "oopf;" "\u01d560" } + { "opar;" "\u0029b7" } + { "OpenCurlyDoubleQuote;" "\u00201c" } + { "OpenCurlyQuote;" "\u002018" } + { "operp;" "\u0029b9" } + { "oplus;" "\u002295" } + { "Or;" "\u002a54" } + { "or;" "\u002228" } + { "orarr;" "\u0021bb" } + { "ord;" "\u002a5d" } + { "order;" "\u002134" } + { "orderof;" "\u002134" } + { "ordf" "\xaa" } + { "ordf;" "\xaa" } + { "ordm" "\xba" } + { "ordm;" "\xba" } + { "origof;" "\u0022b6" } + { "oror;" "\u002a56" } + { "orslope;" "\u002a57" } + { "orv;" "\u002a5b" } + { "oS;" "\u0024c8" } + { "Oscr;" "\u01d4aa" } + { "oscr;" "\u002134" } + { "Oslash" "\xd8" } + { "oslash" "\xf8" } + { "Oslash;" "\xd8" } + { "oslash;" "\xf8" } + { "osol;" "\u002298" } + { "Otilde" "\xd5" } + { "otilde" "\xf5" } + { "Otilde;" "\xd5" } + { "otilde;" "\xf5" } + { "Otimes;" "\u002a37" } + { "otimes;" "\u002297" } + { "otimesas;" "\u002a36" } + { "Ouml" "\xd6" } + { "ouml" "\xf6" } + { "Ouml;" "\xd6" } + { "ouml;" "\xf6" } + { "ovbar;" "\u00233d" } + { "OverBar;" "\u00203e" } + { "OverBrace;" "\u0023de" } + { "OverBracket;" "\u0023b4" } + { "OverParenthesis;" "\u0023dc" } + { "par;" "\u002225" } + { "para" "\xb6" } + { "para;" "\xb6" } + { "parallel;" "\u002225" } + { "parsim;" "\u002af3" } + { "parsl;" "\u002afd" } + { "part;" "\u002202" } + { "PartialD;" "\u002202" } + { "Pcy;" "\u00041f" } + { "pcy;" "\u00043f" } + { "percnt;" "%" } + { "period;" "." } + { "permil;" "\u002030" } + { "perp;" "\u0022a5" } + { "pertenk;" "\u002031" } + { "Pfr;" "\u01d513" } + { "pfr;" "\u01d52d" } + { "Phi;" "\u0003a6" } + { "phi;" "\u0003c6" } + { "phiv;" "\u0003d5" } + { "phmmat;" "\u002133" } + { "phone;" "\u00260e" } + { "Pi;" "\u0003a0" } + { "pi;" "\u0003c0" } + { "pitchfork;" "\u0022d4" } + { "piv;" "\u0003d6" } + { "planck;" "\u00210f" } + { "planckh;" "\u00210e" } + { "plankv;" "\u00210f" } + { "plus;" "+" } + { "plusacir;" "\u002a23" } + { "plusb;" "\u00229e" } + { "pluscir;" "\u002a22" } + { "plusdo;" "\u002214" } + { "plusdu;" "\u002a25" } + { "pluse;" "\u002a72" } + { "PlusMinus;" "\xb1" } + { "plusmn" "\xb1" } + { "plusmn;" "\xb1" } + { "plussim;" "\u002a26" } + { "plustwo;" "\u002a27" } + { "pm;" "\xb1" } + { "Poincareplane;" "\u00210c" } + { "pointint;" "\u002a15" } + { "Popf;" "\u002119" } + { "popf;" "\u01d561" } + { "pound" "\xa3" } + { "pound;" "\xa3" } + { "Pr;" "\u002abb" } + { "pr;" "\u00227a" } + { "prap;" "\u002ab7" } + { "prcue;" "\u00227c" } + { "prE;" "\u002ab3" } + { "pre;" "\u002aaf" } + { "prec;" "\u00227a" } + { "precapprox;" "\u002ab7" } + { "preccurlyeq;" "\u00227c" } + { "Precedes;" "\u00227a" } + { "PrecedesEqual;" "\u002aaf" } + { "PrecedesSlantEqual;" "\u00227c" } + { "PrecedesTilde;" "\u00227e" } + { "preceq;" "\u002aaf" } + { "precnapprox;" "\u002ab9" } + { "precneqq;" "\u002ab5" } + { "precnsim;" "\u0022e8" } + { "precsim;" "\u00227e" } + { "Prime;" "\u002033" } + { "prime;" "\u002032" } + { "primes;" "\u002119" } + { "prnap;" "\u002ab9" } + { "prnE;" "\u002ab5" } + { "prnsim;" "\u0022e8" } + { "prod;" "\u00220f" } + { "Product;" "\u00220f" } + { "profalar;" "\u00232e" } + { "profline;" "\u002312" } + { "profsurf;" "\u002313" } + { "prop;" "\u00221d" } + { "Proportion;" "\u002237" } + { "Proportional;" "\u00221d" } + { "propto;" "\u00221d" } + { "prsim;" "\u00227e" } + { "prurel;" "\u0022b0" } + { "Pscr;" "\u01d4ab" } + { "pscr;" "\u01d4c5" } + { "Psi;" "\u0003a8" } + { "psi;" "\u0003c8" } + { "puncsp;" "\u002008" } + { "Qfr;" "\u01d514" } + { "qfr;" "\u01d52e" } + { "qint;" "\u002a0c" } + { "Qopf;" "\u00211a" } + { "qopf;" "\u01d562" } + { "qprime;" "\u002057" } + { "Qscr;" "\u01d4ac" } + { "qscr;" "\u01d4c6" } + { "quaternions;" "\u00210d" } + { "quatint;" "\u002a16" } + { "quest;" "?" } + { "questeq;" "\u00225f" } + { "QUOT" """ } + { "quot" """ } + { "QUOT;" """ } + { "quot;" """ } + { "rAarr;" "\u0021db" } + { "race;" "\u00223d\u000331" } + { "Racute;" "\u000154" } + { "racute;" "\u000155" } + { "radic;" "\u00221a" } + { "raemptyv;" "\u0029b3" } + { "Rang;" "\u0027eb" } + { "rang;" "\u0027e9" } + { "rangd;" "\u002992" } + { "range;" "\u0029a5" } + { "rangle;" "\u0027e9" } + { "raquo" "\xbb" } + { "raquo;" "\xbb" } + { "Rarr;" "\u0021a0" } + { "rArr;" "\u0021d2" } + { "rarr;" "\u002192" } + { "rarrap;" "\u002975" } + { "rarrb;" "\u0021e5" } + { "rarrbfs;" "\u002920" } + { "rarrc;" "\u002933" } + { "rarrfs;" "\u00291e" } + { "rarrhk;" "\u0021aa" } + { "rarrlp;" "\u0021ac" } + { "rarrpl;" "\u002945" } + { "rarrsim;" "\u002974" } + { "Rarrtl;" "\u002916" } + { "rarrtl;" "\u0021a3" } + { "rarrw;" "\u00219d" } + { "rAtail;" "\u00291c" } + { "ratail;" "\u00291a" } + { "ratio;" "\u002236" } + { "rationals;" "\u00211a" } + { "RBarr;" "\u002910" } + { "rBarr;" "\u00290f" } + { "rbarr;" "\u00290d" } + { "rbbrk;" "\u002773" } + { "rbrace;" "}" } + { "rbrack;" "]" } + { "rbrke;" "\u00298c" } + { "rbrksld;" "\u00298e" } + { "rbrkslu;" "\u002990" } + { "Rcaron;" "\u000158" } + { "rcaron;" "\u000159" } + { "Rcedil;" "\u000156" } + { "rcedil;" "\u000157" } + { "rceil;" "\u002309" } + { "rcub;" "}" } + { "Rcy;" "\u000420" } + { "rcy;" "\u000440" } + { "rdca;" "\u002937" } + { "rdldhar;" "\u002969" } + { "rdquo;" "\u00201d" } + { "rdquor;" "\u00201d" } + { "rdsh;" "\u0021b3" } + { "Re;" "\u00211c" } + { "real;" "\u00211c" } + { "realine;" "\u00211b" } + { "realpart;" "\u00211c" } + { "reals;" "\u00211d" } + { "rect;" "\u0025ad" } + { "REG" "\xae" } + { "reg" "\xae" } + { "REG;" "\xae" } + { "reg;" "\xae" } + { "ReverseElement;" "\u00220b" } + { "ReverseEquilibrium;" "\u0021cb" } + { "ReverseUpEquilibrium;" "\u00296f" } + { "rfisht;" "\u00297d" } + { "rfloor;" "\u00230b" } + { "Rfr;" "\u00211c" } + { "rfr;" "\u01d52f" } + { "rHar;" "\u002964" } + { "rhard;" "\u0021c1" } + { "rharu;" "\u0021c0" } + { "rharul;" "\u00296c" } + { "Rho;" "\u0003a1" } + { "rho;" "\u0003c1" } + { "rhov;" "\u0003f1" } + { "RightAngleBracket;" "\u0027e9" } + { "RightArrow;" "\u002192" } + { "Rightarrow;" "\u0021d2" } + { "rightarrow;" "\u002192" } + { "RightArrowBar;" "\u0021e5" } + { "RightArrowLeftArrow;" "\u0021c4" } + { "rightarrowtail;" "\u0021a3" } + { "RightCeiling;" "\u002309" } + { "RightDoubleBracket;" "\u0027e7" } + { "RightDownTeeVector;" "\u00295d" } + { "RightDownVector;" "\u0021c2" } + { "RightDownVectorBar;" "\u002955" } + { "RightFloor;" "\u00230b" } + { "rightharpoondown;" "\u0021c1" } + { "rightharpoonup;" "\u0021c0" } + { "rightleftarrows;" "\u0021c4" } + { "rightleftharpoons;" "\u0021cc" } + { "rightrightarrows;" "\u0021c9" } + { "rightsquigarrow;" "\u00219d" } + { "RightTee;" "\u0022a2" } + { "RightTeeArrow;" "\u0021a6" } + { "RightTeeVector;" "\u00295b" } + { "rightthreetimes;" "\u0022cc" } + { "RightTriangle;" "\u0022b3" } + { "RightTriangleBar;" "\u0029d0" } + { "RightTriangleEqual;" "\u0022b5" } + { "RightUpDownVector;" "\u00294f" } + { "RightUpTeeVector;" "\u00295c" } + { "RightUpVector;" "\u0021be" } + { "RightUpVectorBar;" "\u002954" } + { "RightVector;" "\u0021c0" } + { "RightVectorBar;" "\u002953" } + { "ring;" "\u0002da" } + { "risingdotseq;" "\u002253" } + { "rlarr;" "\u0021c4" } + { "rlhar;" "\u0021cc" } + { "rlm;" "\u00200f" } + { "rmoust;" "\u0023b1" } + { "rmoustache;" "\u0023b1" } + { "rnmid;" "\u002aee" } + { "roang;" "\u0027ed" } + { "roarr;" "\u0021fe" } + { "robrk;" "\u0027e7" } + { "ropar;" "\u002986" } + { "Ropf;" "\u00211d" } + { "ropf;" "\u01d563" } + { "roplus;" "\u002a2e" } + { "rotimes;" "\u002a35" } + { "RoundImplies;" "\u002970" } + { "rpar;" ")" } + { "rpargt;" "\u002994" } + { "rppolint;" "\u002a12" } + { "rrarr;" "\u0021c9" } + { "Rrightarrow;" "\u0021db" } + { "rsaquo;" "\u00203a" } + { "Rscr;" "\u00211b" } + { "rscr;" "\u01d4c7" } + { "Rsh;" "\u0021b1" } + { "rsh;" "\u0021b1" } + { "rsqb;" "]" } + { "rsquo;" "\u002019" } + { "rsquor;" "\u002019" } + { "rthree;" "\u0022cc" } + { "rtimes;" "\u0022ca" } + { "rtri;" "\u0025b9" } + { "rtrie;" "\u0022b5" } + { "rtrif;" "\u0025b8" } + { "rtriltri;" "\u0029ce" } + { "RuleDelayed;" "\u0029f4" } + { "ruluhar;" "\u002968" } + { "rx;" "\u00211e" } + { "Sacute;" "\u00015a" } + { "sacute;" "\u00015b" } + { "sbquo;" "\u00201a" } + { "Sc;" "\u002abc" } + { "sc;" "\u00227b" } + { "scap;" "\u002ab8" } + { "Scaron;" "\u000160" } + { "scaron;" "\u000161" } + { "sccue;" "\u00227d" } + { "scE;" "\u002ab4" } + { "sce;" "\u002ab0" } + { "Scedil;" "\u00015e" } + { "scedil;" "\u00015f" } + { "Scirc;" "\u00015c" } + { "scirc;" "\u00015d" } + { "scnap;" "\u002aba" } + { "scnE;" "\u002ab6" } + { "scnsim;" "\u0022e9" } + { "scpolint;" "\u002a13" } + { "scsim;" "\u00227f" } + { "Scy;" "\u000421" } + { "scy;" "\u000441" } + { "sdot;" "\u0022c5" } + { "sdotb;" "\u0022a1" } + { "sdote;" "\u002a66" } + { "searhk;" "\u002925" } + { "seArr;" "\u0021d8" } + { "searr;" "\u002198" } + { "searrow;" "\u002198" } + { "sect" "\xa7" } + { "sect;" "\xa7" } + { "semi;" ";" } + { "seswar;" "\u002929" } + { "setminus;" "\u002216" } + { "setmn;" "\u002216" } + { "sext;" "\u002736" } + { "Sfr;" "\u01d516" } + { "sfr;" "\u01d530" } + { "sfrown;" "\u002322" } + { "sharp;" "\u00266f" } + { "SHCHcy;" "\u000429" } + { "shchcy;" "\u000449" } + { "SHcy;" "\u000428" } + { "shcy;" "\u000448" } + { "ShortDownArrow;" "\u002193" } + { "ShortLeftArrow;" "\u002190" } + { "shortmid;" "\u002223" } + { "shortparallel;" "\u002225" } + { "ShortRightArrow;" "\u002192" } + { "ShortUpArrow;" "\u002191" } + { "shy" "\xad" } + { "shy;" "\xad" } + { "Sigma;" "\u0003a3" } + { "sigma;" "\u0003c3" } + { "sigmaf;" "\u0003c2" } + { "sigmav;" "\u0003c2" } + { "sim;" "\u00223c" } + { "simdot;" "\u002a6a" } + { "sime;" "\u002243" } + { "simeq;" "\u002243" } + { "simg;" "\u002a9e" } + { "simgE;" "\u002aa0" } + { "siml;" "\u002a9d" } + { "simlE;" "\u002a9f" } + { "simne;" "\u002246" } + { "simplus;" "\u002a24" } + { "simrarr;" "\u002972" } + { "slarr;" "\u002190" } + { "SmallCircle;" "\u002218" } + { "smallsetminus;" "\u002216" } + { "smashp;" "\u002a33" } + { "smeparsl;" "\u0029e4" } + { "smid;" "\u002223" } + { "smile;" "\u002323" } + { "smt;" "\u002aaa" } + { "smte;" "\u002aac" } + { "smtes;" "\u002aac\u00fe00" } + { "SOFTcy;" "\u00042c" } + { "softcy;" "\u00044c" } + { "sol;" "/" } + { "solb;" "\u0029c4" } + { "solbar;" "\u00233f" } + { "Sopf;" "\u01d54a" } + { "sopf;" "\u01d564" } + { "spades;" "\u002660" } + { "spadesuit;" "\u002660" } + { "spar;" "\u002225" } + { "sqcap;" "\u002293" } + { "sqcaps;" "\u002293\u00fe00" } + { "sqcup;" "\u002294" } + { "sqcups;" "\u002294\u00fe00" } + { "Sqrt;" "\u00221a" } + { "sqsub;" "\u00228f" } + { "sqsube;" "\u002291" } + { "sqsubset;" "\u00228f" } + { "sqsubseteq;" "\u002291" } + { "sqsup;" "\u002290" } + { "sqsupe;" "\u002292" } + { "sqsupset;" "\u002290" } + { "sqsupseteq;" "\u002292" } + { "squ;" "\u0025a1" } + { "Square;" "\u0025a1" } + { "square;" "\u0025a1" } + { "SquareIntersection;" "\u002293" } + { "SquareSubset;" "\u00228f" } + { "SquareSubsetEqual;" "\u002291" } + { "SquareSuperset;" "\u002290" } + { "SquareSupersetEqual;" "\u002292" } + { "SquareUnion;" "\u002294" } + { "squarf;" "\u0025aa" } + { "squf;" "\u0025aa" } + { "srarr;" "\u002192" } + { "Sscr;" "\u01d4ae" } + { "sscr;" "\u01d4c8" } + { "ssetmn;" "\u002216" } + { "ssmile;" "\u002323" } + { "sstarf;" "\u0022c6" } + { "Star;" "\u0022c6" } + { "star;" "\u002606" } + { "starf;" "\u002605" } + { "straightepsilon;" "\u0003f5" } + { "straightphi;" "\u0003d5" } + { "strns;" "\xaf" } + { "Sub;" "\u0022d0" } + { "sub;" "\u002282" } + { "subdot;" "\u002abd" } + { "subE;" "\u002ac5" } + { "sube;" "\u002286" } + { "subedot;" "\u002ac3" } + { "submult;" "\u002ac1" } + { "subnE;" "\u002acb" } + { "subne;" "\u00228a" } + { "subplus;" "\u002abf" } + { "subrarr;" "\u002979" } + { "Subset;" "\u0022d0" } + { "subset;" "\u002282" } + { "subseteq;" "\u002286" } + { "subseteqq;" "\u002ac5" } + { "SubsetEqual;" "\u002286" } + { "subsetneq;" "\u00228a" } + { "subsetneqq;" "\u002acb" } + { "subsim;" "\u002ac7" } + { "subsub;" "\u002ad5" } + { "subsup;" "\u002ad3" } + { "succ;" "\u00227b" } + { "succapprox;" "\u002ab8" } + { "succcurlyeq;" "\u00227d" } + { "Succeeds;" "\u00227b" } + { "SucceedsEqual;" "\u002ab0" } + { "SucceedsSlantEqual;" "\u00227d" } + { "SucceedsTilde;" "\u00227f" } + { "succeq;" "\u002ab0" } + { "succnapprox;" "\u002aba" } + { "succneqq;" "\u002ab6" } + { "succnsim;" "\u0022e9" } + { "succsim;" "\u00227f" } + { "SuchThat;" "\u00220b" } + { "Sum;" "\u002211" } + { "sum;" "\u002211" } + { "sung;" "\u00266a" } + { "sup1" "\xb9" } + { "sup1;" "\xb9" } + { "sup2" "\xb2" } + { "sup2;" "\xb2" } + { "sup3" "\xb3" } + { "sup3;" "\xb3" } + { "Sup;" "\u0022d1" } + { "sup;" "\u002283" } + { "supdot;" "\u002abe" } + { "supdsub;" "\u002ad8" } + { "supE;" "\u002ac6" } + { "supe;" "\u002287" } + { "supedot;" "\u002ac4" } + { "Superset;" "\u002283" } + { "SupersetEqual;" "\u002287" } + { "suphsol;" "\u0027c9" } + { "suphsub;" "\u002ad7" } + { "suplarr;" "\u00297b" } + { "supmult;" "\u002ac2" } + { "supnE;" "\u002acc" } + { "supne;" "\u00228b" } + { "supplus;" "\u002ac0" } + { "Supset;" "\u0022d1" } + { "supset;" "\u002283" } + { "supseteq;" "\u002287" } + { "supseteqq;" "\u002ac6" } + { "supsetneq;" "\u00228b" } + { "supsetneqq;" "\u002acc" } + { "supsim;" "\u002ac8" } + { "supsub;" "\u002ad4" } + { "supsup;" "\u002ad6" } + { "swarhk;" "\u002926" } + { "swArr;" "\u0021d9" } + { "swarr;" "\u002199" } + { "swarrow;" "\u002199" } + { "swnwar;" "\u00292a" } + { "szlig" "\xdf" } + { "szlig;" "\xdf" } + { "Tab;" "\t" } + { "target;" "\u002316" } + { "Tau;" "\u0003a4" } + { "tau;" "\u0003c4" } + { "tbrk;" "\u0023b4" } + { "Tcaron;" "\u000164" } + { "tcaron;" "\u000165" } + { "Tcedil;" "\u000162" } + { "tcedil;" "\u000163" } + { "Tcy;" "\u000422" } + { "tcy;" "\u000442" } + { "tdot;" "\u0020db" } + { "telrec;" "\u002315" } + { "Tfr;" "\u01d517" } + { "tfr;" "\u01d531" } + { "there4;" "\u002234" } + { "Therefore;" "\u002234" } + { "therefore;" "\u002234" } + { "Theta;" "\u000398" } + { "theta;" "\u0003b8" } + { "thetasym;" "\u0003d1" } + { "thetav;" "\u0003d1" } + { "thickapprox;" "\u002248" } + { "thicksim;" "\u00223c" } + { "ThickSpace;" "\u00205f\u00200a" } + { "thinsp;" "\u002009" } + { "ThinSpace;" "\u002009" } + { "thkap;" "\u002248" } + { "thksim;" "\u00223c" } + { "THORN" "\xde" } + { "thorn" "\xfe" } + { "THORN;" "\xde" } + { "thorn;" "\xfe" } + { "Tilde;" "\u00223c" } + { "tilde;" "\u0002dc" } + { "TildeEqual;" "\u002243" } + { "TildeFullEqual;" "\u002245" } + { "TildeTilde;" "\u002248" } + { "times" "\xd7" } + { "times;" "\xd7" } + { "timesb;" "\u0022a0" } + { "timesbar;" "\u002a31" } + { "timesd;" "\u002a30" } + { "tint;" "\u00222d" } + { "toea;" "\u002928" } + { "top;" "\u0022a4" } + { "topbot;" "\u002336" } + { "topcir;" "\u002af1" } + { "Topf;" "\u01d54b" } + { "topf;" "\u01d565" } + { "topfork;" "\u002ada" } + { "tosa;" "\u002929" } + { "tprime;" "\u002034" } + { "TRADE;" "\u002122" } + { "trade;" "\u002122" } + { "triangle;" "\u0025b5" } + { "triangledown;" "\u0025bf" } + { "triangleleft;" "\u0025c3" } + { "trianglelefteq;" "\u0022b4" } + { "triangleq;" "\u00225c" } + { "triangleright;" "\u0025b9" } + { "trianglerighteq;" "\u0022b5" } + { "tridot;" "\u0025ec" } + { "trie;" "\u00225c" } + { "triminus;" "\u002a3a" } + { "TripleDot;" "\u0020db" } + { "triplus;" "\u002a39" } + { "trisb;" "\u0029cd" } + { "tritime;" "\u002a3b" } + { "trpezium;" "\u0023e2" } + { "Tscr;" "\u01d4af" } + { "tscr;" "\u01d4c9" } + { "TScy;" "\u000426" } + { "tscy;" "\u000446" } + { "TSHcy;" "\u00040b" } + { "tshcy;" "\u00045b" } + { "Tstrok;" "\u000166" } + { "tstrok;" "\u000167" } + { "twixt;" "\u00226c" } + { "twoheadleftarrow;" "\u00219e" } + { "twoheadrightarrow;" "\u0021a0" } + { "Uacute" "\xda" } + { "uacute" "\xfa" } + { "Uacute;" "\xda" } + { "uacute;" "\xfa" } + { "Uarr;" "\u00219f" } + { "uArr;" "\u0021d1" } + { "uarr;" "\u002191" } + { "Uarrocir;" "\u002949" } + { "Ubrcy;" "\u00040e" } + { "ubrcy;" "\u00045e" } + { "Ubreve;" "\u00016c" } + { "ubreve;" "\u00016d" } + { "Ucirc" "\xdb" } + { "ucirc" "\xfb" } + { "Ucirc;" "\xdb" } + { "ucirc;" "\xfb" } + { "Ucy;" "\u000423" } + { "ucy;" "\u000443" } + { "udarr;" "\u0021c5" } + { "Udblac;" "\u000170" } + { "udblac;" "\u000171" } + { "udhar;" "\u00296e" } + { "ufisht;" "\u00297e" } + { "Ufr;" "\u01d518" } + { "ufr;" "\u01d532" } + { "Ugrave" "\xd9" } + { "ugrave" "\xf9" } + { "Ugrave;" "\xd9" } + { "ugrave;" "\xf9" } + { "uHar;" "\u002963" } + { "uharl;" "\u0021bf" } + { "uharr;" "\u0021be" } + { "uhblk;" "\u002580" } + { "ulcorn;" "\u00231c" } + { "ulcorner;" "\u00231c" } + { "ulcrop;" "\u00230f" } + { "ultri;" "\u0025f8" } + { "Umacr;" "\u00016a" } + { "umacr;" "\u00016b" } + { "uml" "\xa8" } + { "uml;" "\xa8" } + { "UnderBar;" "_" } + { "UnderBrace;" "\u0023df" } + { "UnderBracket;" "\u0023b5" } + { "UnderParenthesis;" "\u0023dd" } + { "Union;" "\u0022c3" } + { "UnionPlus;" "\u00228e" } + { "Uogon;" "\u000172" } + { "uogon;" "\u000173" } + { "Uopf;" "\u01d54c" } + { "uopf;" "\u01d566" } + { "UpArrow;" "\u002191" } + { "Uparrow;" "\u0021d1" } + { "uparrow;" "\u002191" } + { "UpArrowBar;" "\u002912" } + { "UpArrowDownArrow;" "\u0021c5" } + { "UpDownArrow;" "\u002195" } + { "Updownarrow;" "\u0021d5" } + { "updownarrow;" "\u002195" } + { "UpEquilibrium;" "\u00296e" } + { "upharpoonleft;" "\u0021bf" } + { "upharpoonright;" "\u0021be" } + { "uplus;" "\u00228e" } + { "UpperLeftArrow;" "\u002196" } + { "UpperRightArrow;" "\u002197" } + { "Upsi;" "\u0003d2" } + { "upsi;" "\u0003c5" } + { "upsih;" "\u0003d2" } + { "Upsilon;" "\u0003a5" } + { "upsilon;" "\u0003c5" } + { "UpTee;" "\u0022a5" } + { "UpTeeArrow;" "\u0021a5" } + { "upuparrows;" "\u0021c8" } + { "urcorn;" "\u00231d" } + { "urcorner;" "\u00231d" } + { "urcrop;" "\u00230e" } + { "Uring;" "\u00016e" } + { "uring;" "\u00016f" } + { "urtri;" "\u0025f9" } + { "Uscr;" "\u01d4b0" } + { "uscr;" "\u01d4ca" } + { "utdot;" "\u0022f0" } + { "Utilde;" "\u000168" } + { "utilde;" "\u000169" } + { "utri;" "\u0025b5" } + { "utrif;" "\u0025b4" } + { "uuarr;" "\u0021c8" } + { "Uuml" "\xdc" } + { "uuml" "\xfc" } + { "Uuml;" "\xdc" } + { "uuml;" "\xfc" } + { "uwangle;" "\u0029a7" } + { "vangrt;" "\u00299c" } + { "varepsilon;" "\u0003f5" } + { "varkappa;" "\u0003f0" } + { "varnothing;" "\u002205" } + { "varphi;" "\u0003d5" } + { "varpi;" "\u0003d6" } + { "varpropto;" "\u00221d" } + { "vArr;" "\u0021d5" } + { "varr;" "\u002195" } + { "varrho;" "\u0003f1" } + { "varsigma;" "\u0003c2" } + { "varsubsetneq;" "\u00228a\u00fe00" } + { "varsubsetneqq;" "\u002acb\u00fe00" } + { "varsupsetneq;" "\u00228b\u00fe00" } + { "varsupsetneqq;" "\u002acc\u00fe00" } + { "vartheta;" "\u0003d1" } + { "vartriangleleft;" "\u0022b2" } + { "vartriangleright;" "\u0022b3" } + { "Vbar;" "\u002aeb" } + { "vBar;" "\u002ae8" } + { "vBarv;" "\u002ae9" } + { "Vcy;" "\u000412" } + { "vcy;" "\u000432" } + { "VDash;" "\u0022ab" } + { "Vdash;" "\u0022a9" } + { "vDash;" "\u0022a8" } + { "vdash;" "\u0022a2" } + { "Vdashl;" "\u002ae6" } + { "Vee;" "\u0022c1" } + { "vee;" "\u002228" } + { "veebar;" "\u0022bb" } + { "veeeq;" "\u00225a" } + { "vellip;" "\u0022ee" } + { "Verbar;" "\u002016" } + { "verbar;" "|" } + { "Vert;" "\u002016" } + { "vert;" "|" } + { "VerticalBar;" "\u002223" } + { "VerticalLine;" "|" } + { "VerticalSeparator;" "\u002758" } + { "VerticalTilde;" "\u002240" } + { "VeryThinSpace;" "\u00200a" } + { "Vfr;" "\u01d519" } + { "vfr;" "\u01d533" } + { "vltri;" "\u0022b2" } + { "vnsub;" "\u002282\u0020d2" } + { "vnsup;" "\u002283\u0020d2" } + { "Vopf;" "\u01d54d" } + { "vopf;" "\u01d567" } + { "vprop;" "\u00221d" } + { "vrtri;" "\u0022b3" } + { "Vscr;" "\u01d4b1" } + { "vscr;" "\u01d4cb" } + { "vsubnE;" "\u002acb\u00fe00" } + { "vsubne;" "\u00228a\u00fe00" } + { "vsupnE;" "\u002acc\u00fe00" } + { "vsupne;" "\u00228b\u00fe00" } + { "Vvdash;" "\u0022aa" } + { "vzigzag;" "\u00299a" } + { "Wcirc;" "\u000174" } + { "wcirc;" "\u000175" } + { "wedbar;" "\u002a5f" } + { "Wedge;" "\u0022c0" } + { "wedge;" "\u002227" } + { "wedgeq;" "\u002259" } + { "weierp;" "\u002118" } + { "Wfr;" "\u01d51a" } + { "wfr;" "\u01d534" } + { "Wopf;" "\u01d54e" } + { "wopf;" "\u01d568" } + { "wp;" "\u002118" } + { "wr;" "\u002240" } + { "wreath;" "\u002240" } + { "Wscr;" "\u01d4b2" } + { "wscr;" "\u01d4cc" } + { "xcap;" "\u0022c2" } + { "xcirc;" "\u0025ef" } + { "xcup;" "\u0022c3" } + { "xdtri;" "\u0025bd" } + { "Xfr;" "\u01d51b" } + { "xfr;" "\u01d535" } + { "xhArr;" "\u0027fa" } + { "xharr;" "\u0027f7" } + { "Xi;" "\u00039e" } + { "xi;" "\u0003be" } + { "xlArr;" "\u0027f8" } + { "xlarr;" "\u0027f5" } + { "xmap;" "\u0027fc" } + { "xnis;" "\u0022fb" } + { "xodot;" "\u002a00" } + { "Xopf;" "\u01d54f" } + { "xopf;" "\u01d569" } + { "xoplus;" "\u002a01" } + { "xotime;" "\u002a02" } + { "xrArr;" "\u0027f9" } + { "xrarr;" "\u0027f6" } + { "Xscr;" "\u01d4b3" } + { "xscr;" "\u01d4cd" } + { "xsqcup;" "\u002a06" } + { "xuplus;" "\u002a04" } + { "xutri;" "\u0025b3" } + { "xvee;" "\u0022c1" } + { "xwedge;" "\u0022c0" } + { "Yacute" "\xdd" } + { "yacute" "\xfd" } + { "Yacute;" "\xdd" } + { "yacute;" "\xfd" } + { "YAcy;" "\u00042f" } + { "yacy;" "\u00044f" } + { "Ycirc;" "\u000176" } + { "ycirc;" "\u000177" } + { "Ycy;" "\u00042b" } + { "ycy;" "\u00044b" } + { "yen" "\xa5" } + { "yen;" "\xa5" } + { "Yfr;" "\u01d51c" } + { "yfr;" "\u01d536" } + { "YIcy;" "\u000407" } + { "yicy;" "\u000457" } + { "Yopf;" "\u01d550" } + { "yopf;" "\u01d56a" } + { "Yscr;" "\u01d4b4" } + { "yscr;" "\u01d4ce" } + { "YUcy;" "\u00042e" } + { "yucy;" "\u00044e" } + { "yuml" "\xff" } + { "Yuml;" "\u000178" } + { "yuml;" "\xff" } + { "Zacute;" "\u000179" } + { "zacute;" "\u00017a" } + { "Zcaron;" "\u00017d" } + { "zcaron;" "\u00017e" } + { "Zcy;" "\u000417" } + { "zcy;" "\u000437" } + { "Zdot;" "\u00017b" } + { "zdot;" "\u00017c" } + { "zeetrf;" "\u002128" } + { "ZeroWidthSpace;" "\u00200b" } + { "Zeta;" "\u000396" } + { "zeta;" "\u0003b6" } + { "Zfr;" "\u002128" } + { "zfr;" "\u01d537" } + { "ZHcy;" "\u000416" } + { "zhcy;" "\u000436" } + { "zigrarr;" "\u0021dd" } + { "Zopf;" "\u002124" } + { "zopf;" "\u01d56b" } + { "Zscr;" "\u01d4b5" } + { "zscr;" "\u01d4cf" } + { "zwj;" "\u00200d" } + { "zwnj;" "\u00200c" } +} + +: replace-charref ( str -- str' ) + "#" ?head [ + ! numeric charref + ";" ?tail drop dup first "xX" member? + [ rest hex> ] [ dec> ] if invalid-charrefs ?at [ + dup { [ 0xD800 0xDFFF between? ] [ 0x10FFFF > ] } 1|| + [ drop "\u0FFFFD" ] [ + dup invalid-codepoints member? + [ drop "" ] [ 1string ] if + ] if + ] unless + ] [ + ! named charref + html5 ?at [ + ! find the longest matching name + dup dup length 1 (a,b) [ head html5 at ] with map-find + [ swapd tail append ] [ drop "&" prepend ] if* + ] unless + ] if ; + +CONSTANT: re-charref +R/ &(#[0-9]+;?|#[xX][0-9a-fA-F]+;?|[^\t\n\f <&#;]{1,32};?)/ + +PRIVATE> + +:: html-unescape ( str -- newstr ) + [ + 0 str re-charref [ + drop [ [ str subseq , ] keep 1 + ] dip + [ str subseq replace-charref , ] keep + ] each-match str length str subseq , + ] { } make concat ;