mathematical 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (263) hide show
  1. checksums.yaml +4 -4
  2. data/ext/mathematical/extconf.rb +14 -0
  3. data/ext/mathematical/itex2MML.h +63 -0
  4. data/ext/mathematical/lasemrender.c +257 -0
  5. data/ext/mathematical/lex.yy.c +6548 -0
  6. data/ext/mathematical/lsm.c +31 -0
  7. data/ext/mathematical/lsm.h +39 -0
  8. data/ext/mathematical/lsmattributes.c +279 -0
  9. data/ext/mathematical/lsmattributes.h +75 -0
  10. data/ext/mathematical/lsmcairo.c +598 -0
  11. data/ext/mathematical/lsmcairo.h +51 -0
  12. data/ext/mathematical/lsmdebug.c +183 -0
  13. data/ext/mathematical/lsmdebug.h +73 -0
  14. data/ext/mathematical/lsmdom.h +43 -0
  15. data/ext/mathematical/lsmdomcharacterdata.c +114 -0
  16. data/ext/mathematical/lsmdomcharacterdata.h +59 -0
  17. data/ext/mathematical/lsmdomdocument.c +255 -0
  18. data/ext/mathematical/lsmdomdocument.h +75 -0
  19. data/ext/mathematical/lsmdomdocumentfragment.c +81 -0
  20. data/ext/mathematical/lsmdomdocumentfragment.h +55 -0
  21. data/ext/mathematical/lsmdomelement.c +148 -0
  22. data/ext/mathematical/lsmdomelement.h +62 -0
  23. data/ext/mathematical/lsmdomentities.c +2166 -0
  24. data/ext/mathematical/lsmdomentities.h +35 -0
  25. data/ext/mathematical/lsmdomenumtypes.c +99 -0
  26. data/ext/mathematical/lsmdomenumtypes.h +26 -0
  27. data/ext/mathematical/lsmdomimplementation.c +82 -0
  28. data/ext/mathematical/lsmdomimplementation.h +41 -0
  29. data/ext/mathematical/lsmdomnamednodemap.c +118 -0
  30. data/ext/mathematical/lsmdomnamednodemap.h +64 -0
  31. data/ext/mathematical/lsmdomnode.c +737 -0
  32. data/ext/mathematical/lsmdomnode.h +122 -0
  33. data/ext/mathematical/lsmdomnodelist.c +70 -0
  34. data/ext/mathematical/lsmdomnodelist.h +58 -0
  35. data/ext/mathematical/lsmdomparser.c +461 -0
  36. data/ext/mathematical/lsmdomparser.h +54 -0
  37. data/ext/mathematical/lsmdomtext.c +82 -0
  38. data/ext/mathematical/lsmdomtext.h +55 -0
  39. data/ext/mathematical/lsmdomtypes.h +44 -0
  40. data/ext/mathematical/lsmdomview.c +422 -0
  41. data/ext/mathematical/lsmdomview.h +94 -0
  42. data/ext/mathematical/lsmitex.c +76 -0
  43. data/ext/mathematical/lsmitex.h +36 -0
  44. data/ext/mathematical/lsmmathml.h +66 -0
  45. data/ext/mathematical/lsmmathmlactionelement.c +93 -0
  46. data/ext/mathematical/lsmmathmlactionelement.h +57 -0
  47. data/ext/mathematical/lsmmathmlaligngroupelement.c +102 -0
  48. data/ext/mathematical/lsmmathmlaligngroupelement.h +56 -0
  49. data/ext/mathematical/lsmmathmlalignmarkelement.c +102 -0
  50. data/ext/mathematical/lsmmathmlalignmarkelement.h +56 -0
  51. data/ext/mathematical/lsmmathmlattributes.c +197 -0
  52. data/ext/mathematical/lsmmathmlattributes.h +126 -0
  53. data/ext/mathematical/lsmmathmldocument.c +304 -0
  54. data/ext/mathematical/lsmmathmldocument.h +61 -0
  55. data/ext/mathematical/lsmmathmlelement.c +491 -0
  56. data/ext/mathematical/lsmmathmlelement.h +107 -0
  57. data/ext/mathematical/lsmmathmlenums.c +429 -0
  58. data/ext/mathematical/lsmmathmlenums.h +182 -0
  59. data/ext/mathematical/lsmmathmlenumtypes.c +666 -0
  60. data/ext/mathematical/lsmmathmlenumtypes.h +90 -0
  61. data/ext/mathematical/lsmmathmlerrorelement.c +58 -0
  62. data/ext/mathematical/lsmmathmlerrorelement.h +56 -0
  63. data/ext/mathematical/lsmmathmlfencedelement.c +178 -0
  64. data/ext/mathematical/lsmmathmlfencedelement.h +65 -0
  65. data/ext/mathematical/lsmmathmlfractionelement.c +253 -0
  66. data/ext/mathematical/lsmmathmlfractionelement.h +62 -0
  67. data/ext/mathematical/lsmmathmlglyphtableams.c +597 -0
  68. data/ext/mathematical/lsmmathmlglyphtableams.h +45 -0
  69. data/ext/mathematical/lsmmathmlitexelement.c +187 -0
  70. data/ext/mathematical/lsmmathmlitexelement.h +60 -0
  71. data/ext/mathematical/lsmmathmllayoututils.c +191 -0
  72. data/ext/mathematical/lsmmathmllayoututils.h +58 -0
  73. data/ext/mathematical/lsmmathmlmathelement.c +204 -0
  74. data/ext/mathematical/lsmmathmlmathelement.h +81 -0
  75. data/ext/mathematical/lsmmathmloperatordictionary.c +3332 -0
  76. data/ext/mathematical/lsmmathmloperatordictionary.h +54 -0
  77. data/ext/mathematical/lsmmathmloperatorelement.c +307 -0
  78. data/ext/mathematical/lsmmathmloperatorelement.h +73 -0
  79. data/ext/mathematical/lsmmathmlpaddedelement.c +58 -0
  80. data/ext/mathematical/lsmmathmlpaddedelement.h +56 -0
  81. data/ext/mathematical/lsmmathmlphantomelement.c +71 -0
  82. data/ext/mathematical/lsmmathmlphantomelement.h +56 -0
  83. data/ext/mathematical/lsmmathmlpresentationcontainer.c +43 -0
  84. data/ext/mathematical/lsmmathmlpresentationcontainer.h +54 -0
  85. data/ext/mathematical/lsmmathmlpresentationtoken.c +303 -0
  86. data/ext/mathematical/lsmmathmlpresentationtoken.h +83 -0
  87. data/ext/mathematical/lsmmathmlradicalelement.c +266 -0
  88. data/ext/mathematical/lsmmathmlradicalelement.h +71 -0
  89. data/ext/mathematical/lsmmathmlrowelement.c +58 -0
  90. data/ext/mathematical/lsmmathmlrowelement.h +56 -0
  91. data/ext/mathematical/lsmmathmlscriptelement.c +282 -0
  92. data/ext/mathematical/lsmmathmlscriptelement.h +78 -0
  93. data/ext/mathematical/lsmmathmlsemanticselement.c +84 -0
  94. data/ext/mathematical/lsmmathmlsemanticselement.h +56 -0
  95. data/ext/mathematical/lsmmathmlspaceelement.c +142 -0
  96. data/ext/mathematical/lsmmathmlspaceelement.h +60 -0
  97. data/ext/mathematical/lsmmathmlstringelement.c +123 -0
  98. data/ext/mathematical/lsmmathmlstringelement.h +58 -0
  99. data/ext/mathematical/lsmmathmlstyle.c +130 -0
  100. data/ext/mathematical/lsmmathmlstyle.h +81 -0
  101. data/ext/mathematical/lsmmathmlstyleelement.c +307 -0
  102. data/ext/mathematical/lsmmathmlstyleelement.h +87 -0
  103. data/ext/mathematical/lsmmathmltablecellelement.c +122 -0
  104. data/ext/mathematical/lsmmathmltablecellelement.h +62 -0
  105. data/ext/mathematical/lsmmathmltableelement.c +545 -0
  106. data/ext/mathematical/lsmmathmltableelement.h +78 -0
  107. data/ext/mathematical/lsmmathmltablerowelement.c +120 -0
  108. data/ext/mathematical/lsmmathmltablerowelement.h +64 -0
  109. data/ext/mathematical/lsmmathmltraits.c +819 -0
  110. data/ext/mathematical/lsmmathmltraits.h +119 -0
  111. data/ext/mathematical/lsmmathmltypes.h +66 -0
  112. data/ext/mathematical/lsmmathmlunderoverelement.c +485 -0
  113. data/ext/mathematical/lsmmathmlunderoverelement.h +82 -0
  114. data/ext/mathematical/lsmmathmlutils.c +170 -0
  115. data/ext/mathematical/lsmmathmlutils.h +50 -0
  116. data/ext/mathematical/lsmmathmlview.c +1048 -0
  117. data/ext/mathematical/lsmmathmlview.h +164 -0
  118. data/ext/mathematical/lsmproperties.c +418 -0
  119. data/ext/mathematical/lsmproperties.h +85 -0
  120. data/ext/mathematical/lsmstr.c +231 -0
  121. data/ext/mathematical/lsmstr.h +114 -0
  122. data/ext/mathematical/lsmsvg.h +67 -0
  123. data/ext/mathematical/lsmsvgaelement.c +73 -0
  124. data/ext/mathematical/lsmsvgaelement.h +55 -0
  125. data/ext/mathematical/lsmsvgattributes.h +118 -0
  126. data/ext/mathematical/lsmsvgcircleelement.c +153 -0
  127. data/ext/mathematical/lsmsvgcircleelement.h +59 -0
  128. data/ext/mathematical/lsmsvgclippathelement.c +134 -0
  129. data/ext/mathematical/lsmsvgclippathelement.h +59 -0
  130. data/ext/mathematical/lsmsvgcolors.c +212 -0
  131. data/ext/mathematical/lsmsvgcolors.h +39 -0
  132. data/ext/mathematical/lsmsvgdefselement.c +74 -0
  133. data/ext/mathematical/lsmsvgdefselement.h +55 -0
  134. data/ext/mathematical/lsmsvgdocument.c +288 -0
  135. data/ext/mathematical/lsmsvgdocument.h +64 -0
  136. data/ext/mathematical/lsmsvgelement.c +373 -0
  137. data/ext/mathematical/lsmsvgelement.h +81 -0
  138. data/ext/mathematical/lsmsvgellipseelement.c +158 -0
  139. data/ext/mathematical/lsmsvgellipseelement.h +60 -0
  140. data/ext/mathematical/lsmsvgenums.c +544 -0
  141. data/ext/mathematical/lsmsvgenums.h +357 -0
  142. data/ext/mathematical/lsmsvgenumtypes.c +1083 -0
  143. data/ext/mathematical/lsmsvgenumtypes.h +111 -0
  144. data/ext/mathematical/lsmsvgfilterblend.c +105 -0
  145. data/ext/mathematical/lsmsvgfilterblend.h +58 -0
  146. data/ext/mathematical/lsmsvgfiltercomposite.c +109 -0
  147. data/ext/mathematical/lsmsvgfiltercomposite.h +58 -0
  148. data/ext/mathematical/lsmsvgfilterelement.c +266 -0
  149. data/ext/mathematical/lsmsvgfilterelement.h +66 -0
  150. data/ext/mathematical/lsmsvgfilterflood.c +86 -0
  151. data/ext/mathematical/lsmsvgfilterflood.h +55 -0
  152. data/ext/mathematical/lsmsvgfiltergaussianblur.c +114 -0
  153. data/ext/mathematical/lsmsvgfiltergaussianblur.h +57 -0
  154. data/ext/mathematical/lsmsvgfiltermerge.c +98 -0
  155. data/ext/mathematical/lsmsvgfiltermerge.h +55 -0
  156. data/ext/mathematical/lsmsvgfiltermergenode.c +87 -0
  157. data/ext/mathematical/lsmsvgfiltermergenode.h +57 -0
  158. data/ext/mathematical/lsmsvgfilteroffset.c +112 -0
  159. data/ext/mathematical/lsmsvgfilteroffset.h +58 -0
  160. data/ext/mathematical/lsmsvgfilterprimitive.c +168 -0
  161. data/ext/mathematical/lsmsvgfilterprimitive.h +66 -0
  162. data/ext/mathematical/lsmsvgfilterspecularlighting.c +127 -0
  163. data/ext/mathematical/lsmsvgfilterspecularlighting.h +60 -0
  164. data/ext/mathematical/lsmsvgfiltersurface.c +455 -0
  165. data/ext/mathematical/lsmsvgfiltersurface.h +66 -0
  166. data/ext/mathematical/lsmsvgfiltertile.c +102 -0
  167. data/ext/mathematical/lsmsvgfiltertile.h +57 -0
  168. data/ext/mathematical/lsmsvggelement.c +73 -0
  169. data/ext/mathematical/lsmsvggelement.h +55 -0
  170. data/ext/mathematical/lsmsvggradientelement.c +151 -0
  171. data/ext/mathematical/lsmsvggradientelement.h +68 -0
  172. data/ext/mathematical/lsmsvgimageelement.c +261 -0
  173. data/ext/mathematical/lsmsvgimageelement.h +67 -0
  174. data/ext/mathematical/lsmsvglength.c +152 -0
  175. data/ext/mathematical/lsmsvglength.h +65 -0
  176. data/ext/mathematical/lsmsvglineargradientelement.c +271 -0
  177. data/ext/mathematical/lsmsvglineargradientelement.h +60 -0
  178. data/ext/mathematical/lsmsvglineelement.c +153 -0
  179. data/ext/mathematical/lsmsvglineelement.h +60 -0
  180. data/ext/mathematical/lsmsvgmarkerelement.c +266 -0
  181. data/ext/mathematical/lsmsvgmarkerelement.h +74 -0
  182. data/ext/mathematical/lsmsvgmaskelement.c +232 -0
  183. data/ext/mathematical/lsmsvgmaskelement.h +64 -0
  184. data/ext/mathematical/lsmsvgmatrix.c +205 -0
  185. data/ext/mathematical/lsmsvgmatrix.h +59 -0
  186. data/ext/mathematical/lsmsvgpathelement.c +115 -0
  187. data/ext/mathematical/lsmsvgpathelement.h +59 -0
  188. data/ext/mathematical/lsmsvgpatternelement.c +398 -0
  189. data/ext/mathematical/lsmsvgpatternelement.h +69 -0
  190. data/ext/mathematical/lsmsvgpolygonelement.c +106 -0
  191. data/ext/mathematical/lsmsvgpolygonelement.h +57 -0
  192. data/ext/mathematical/lsmsvgpolylineelement.c +106 -0
  193. data/ext/mathematical/lsmsvgpolylineelement.h +57 -0
  194. data/ext/mathematical/lsmsvgradialgradientelement.c +323 -0
  195. data/ext/mathematical/lsmsvgradialgradientelement.h +61 -0
  196. data/ext/mathematical/lsmsvgrectelement.c +184 -0
  197. data/ext/mathematical/lsmsvgrectelement.h +62 -0
  198. data/ext/mathematical/lsmsvgstopelement.c +106 -0
  199. data/ext/mathematical/lsmsvgstopelement.h +57 -0
  200. data/ext/mathematical/lsmsvgstyle.c +560 -0
  201. data/ext/mathematical/lsmsvgstyle.h +217 -0
  202. data/ext/mathematical/lsmsvgsvgelement.c +260 -0
  203. data/ext/mathematical/lsmsvgsvgelement.h +71 -0
  204. data/ext/mathematical/lsmsvgswitchelement.c +103 -0
  205. data/ext/mathematical/lsmsvgswitchelement.h +55 -0
  206. data/ext/mathematical/lsmsvgsymbolelement.c +74 -0
  207. data/ext/mathematical/lsmsvgsymbolelement.h +55 -0
  208. data/ext/mathematical/lsmsvgtextelement.c +203 -0
  209. data/ext/mathematical/lsmsvgtextelement.h +60 -0
  210. data/ext/mathematical/lsmsvgtraits.c +1232 -0
  211. data/ext/mathematical/lsmsvgtraits.h +104 -0
  212. data/ext/mathematical/lsmsvgtransformable.c +106 -0
  213. data/ext/mathematical/lsmsvgtransformable.h +54 -0
  214. data/ext/mathematical/lsmsvgtspanelement.c +174 -0
  215. data/ext/mathematical/lsmsvgtspanelement.h +60 -0
  216. data/ext/mathematical/lsmsvgtypes.h +77 -0
  217. data/ext/mathematical/lsmsvguseelement.c +237 -0
  218. data/ext/mathematical/lsmsvguseelement.h +69 -0
  219. data/ext/mathematical/lsmsvgview.c +2583 -0
  220. data/ext/mathematical/lsmsvgview.h +179 -0
  221. data/ext/mathematical/lsmtraits.c +119 -0
  222. data/ext/mathematical/lsmtraits.h +49 -0
  223. data/ext/mathematical/lsmtypes.h +36 -0
  224. data/ext/mathematical/lsmutils.c +54 -0
  225. data/ext/mathematical/lsmutils.h +56 -0
  226. data/ext/mathematical/mathematical.c +145 -0
  227. data/ext/mathematical/y.tab.c +6179 -0
  228. data/ext/mathematical/y.tab.h +389 -0
  229. data/lib/mathematical/version.rb +1 -1
  230. data/mathematical.gemspec +8 -6
  231. data/test/mathematical/basic_test.rb +9 -0
  232. data/test/mathematical/fixtures/after/brackets_display.html +1 -0
  233. data/test/mathematical/fixtures/after/compliance_accents.html +17 -0
  234. data/test/mathematical/fixtures/after/compliance_arrows.html +71 -0
  235. data/test/mathematical/fixtures/after/compliance_colors.html +4 -0
  236. data/test/mathematical/fixtures/after/compliance_greek_letters.html +42 -0
  237. data/test/mathematical/fixtures/after/compliance_large_math.html +19 -0
  238. data/test/mathematical/fixtures/after/compliance_log_symbols.html +34 -0
  239. data/test/mathematical/fixtures/after/compliance_operators.html +262 -0
  240. data/test/mathematical/fixtures/after/dollar_sign_inline.html +1 -0
  241. data/test/mathematical/fixtures/after/equation_display.html +1 -0
  242. data/test/mathematical/fixtures/after/multiple_dollar_inline.html +1 -0
  243. data/test/mathematical/fixtures/after/parens_inline.html +1 -0
  244. data/test/mathematical/fixtures/before/brackets_display.text +1 -0
  245. data/test/mathematical/fixtures/before/compliance_accents.text +17 -0
  246. data/test/mathematical/fixtures/before/compliance_arrows.text +71 -0
  247. data/test/mathematical/fixtures/before/compliance_colors.text +4 -0
  248. data/test/mathematical/fixtures/before/compliance_greek_letters.text +42 -0
  249. data/test/mathematical/fixtures/before/compliance_large_math.text +19 -0
  250. data/test/mathematical/fixtures/before/compliance_log_symbols.text +34 -0
  251. data/test/mathematical/fixtures/before/compliance_operators.text +262 -0
  252. data/test/mathematical/fixtures/before/dollar_sign_inline.text +1 -0
  253. data/test/mathematical/fixtures/before/equation_display.text +1 -0
  254. data/test/mathematical/fixtures/before/multiple_dollar_inline.text +1 -0
  255. data/test/mathematical/fixtures/before/parens_inline.text +1 -0
  256. data/test/mathematical/fixtures/performance/big_file.text +1767 -0
  257. data/test/mathematical/fixtures_test.rb +45 -0
  258. data/test/mathematical/maliciousness_test.rb +45 -0
  259. data/test/mathematical/performance_test.rb +15 -0
  260. data/test/test_helper.rb +5 -0
  261. metadata +301 -14
  262. data/lib/mathematical.bundle +0 -0
  263. data/lib/mathematical/mathematical.bundle +0 -0
@@ -0,0 +1,55 @@
1
+ /* Lasem
2
+ *
3
+ * Copyright © 2010 Emmanuel Pacaud
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ *
20
+ * Author:
21
+ * Emmanuel Pacaud <emmanuel@gnome.org>
22
+ */
23
+
24
+ #ifndef LSM_DOM_DOCUMENT_FRAGMENT_H
25
+ #define LSM_DOM_DOCUMENT_FRAGMENT_H
26
+
27
+ #include <lsmdom.h>
28
+ #include <lsmdomnode.h>
29
+
30
+ G_BEGIN_DECLS
31
+
32
+ #define LSM_TYPE_DOM_DOCUMENT_FRAGMENT (lsm_dom_document_fragment_get_type ())
33
+ #define LSM_DOM_DOCUMENT_FRAGMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LSM_TYPE_DOM_DOCUMENT_FRAGMENT, LsmDomDocumentFragment))
34
+ #define LSM_DOM_DOCUMENT_FRAGMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LSM_TYPE_DOM_DOCUMENT_FRAGMENT, LsmDomDocumentFragmentClass))
35
+ #define LSM_IS_DOM_DOCUMENT_FRAGMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LSM_TYPE_DOM_DOCUMENT_FRAGMENT))
36
+ #define LSM_IS_DOM_DOCUMENT_FRAGMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LSM_TYPE_DOM_DOCUMENT_FRAGMENT))
37
+ #define LSM_DOM_DOCUMENT_FRAGMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), LSM_TYPE_DOM_DOCUMENT_FRAGMENT, LsmDomDocumentFragmentClass))
38
+
39
+ typedef struct _LsmDomDocumentFragmentClass LsmDomDocumentFragmentClass;
40
+
41
+ struct _LsmDomDocumentFragment {
42
+ LsmDomNode node;
43
+ };
44
+
45
+ struct _LsmDomDocumentFragmentClass {
46
+ LsmDomNodeClass parent_class;
47
+ };
48
+
49
+ GType lsm_dom_document_fragment_get_type (void);
50
+
51
+ LsmDomDocumentFragment * lsm_dom_document_fragment_new (void);
52
+
53
+ G_END_DECLS
54
+
55
+ #endif
@@ -0,0 +1,148 @@
1
+ /* Lasem
2
+ *
3
+ * Copyright © 2007-2008 Emmanuel Pacaud
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ *
20
+ * Author:
21
+ * Emmanuel Pacaud <emmanuel@gnome.org>
22
+ */
23
+
24
+ /**
25
+ * SECTION:lsmdomelement
26
+ * @short_description: Base class for DOM element nodes
27
+ */
28
+
29
+ #include <lsmdomelement.h>
30
+ #include <string.h>
31
+
32
+ static GObjectClass *parent_class = NULL;
33
+
34
+ /* LsmDomNode implementation */
35
+
36
+ static const char *
37
+ lsm_dom_element_get_node_value (LsmDomNode *node)
38
+ {
39
+ return NULL;
40
+ }
41
+
42
+ static LsmDomNodeType
43
+ lsm_dom_element_get_node_type (LsmDomNode *node)
44
+ {
45
+ return LSM_DOM_NODE_TYPE_ELEMENT_NODE;
46
+ }
47
+
48
+ static void
49
+ lsm_dom_element_write_to_stream (LsmDomNode *self, GOutputStream *stream, GError **error)
50
+ {
51
+ LsmDomElementClass *element_class;
52
+ char *string;
53
+ char *attributes = NULL;
54
+
55
+ element_class = LSM_DOM_ELEMENT_GET_CLASS (self);
56
+ if (element_class->get_serialized_attributes != NULL)
57
+ attributes = element_class->get_serialized_attributes (LSM_DOM_ELEMENT (self));
58
+
59
+ if (attributes != NULL)
60
+ string = g_strdup_printf ("<%s %s>", lsm_dom_node_get_node_name (self), attributes);
61
+ else
62
+ string = g_strdup_printf ("<%s>", lsm_dom_node_get_node_name (self));
63
+
64
+ g_output_stream_write (stream, string, strlen (string), NULL, error);
65
+ g_free (string);
66
+ g_free (attributes);
67
+
68
+ LSM_DOM_NODE_CLASS (parent_class)->write_to_stream (self, stream, error);
69
+
70
+ string = g_strdup_printf ("</\%s>\n", lsm_dom_node_get_node_name (self));
71
+ g_output_stream_write (stream, string, strlen (string), NULL, error);
72
+ g_free (string);
73
+ }
74
+
75
+ /* LsmDomElement implementation */
76
+
77
+ /**
78
+ * lsm_dom_element_get_attribute:
79
+ * @self: a #LsmDomElement
80
+ * @name: attribute name
81
+ *
82
+ * Returns: (transfer none): attribute value, as string.
83
+ */
84
+
85
+ const char *
86
+ lsm_dom_element_get_attribute (LsmDomElement* self, const char* name)
87
+ {
88
+ g_return_val_if_fail (LSM_IS_DOM_ELEMENT (self), NULL);
89
+ g_return_val_if_fail (name != NULL, NULL);
90
+
91
+ return LSM_DOM_ELEMENT_GET_CLASS (self)->get_attribute (self, name);
92
+ }
93
+
94
+ /**
95
+ * lsm_dom_element_set_attribute:
96
+ * @self: a #LsmDomElement
97
+ * @name: attribute name
98
+ * @attribute_value: attribute value as string
99
+ *
100
+ * Set the atribute value.
101
+ */
102
+
103
+ void
104
+ lsm_dom_element_set_attribute (LsmDomElement* self, const char* name, const char* attribute_value)
105
+ {
106
+ g_return_if_fail (LSM_IS_DOM_ELEMENT (self));
107
+ g_return_if_fail (name != NULL);
108
+
109
+ LSM_DOM_ELEMENT_GET_CLASS (self)->set_attribute (self, name, attribute_value);
110
+
111
+ lsm_dom_node_changed (LSM_DOM_NODE (self));
112
+ }
113
+
114
+ /**
115
+ * lsm_dom_element_get_tag_name:
116
+ * @self: a #LsmDomElement
117
+ *
118
+ * Returns: (transfer none): element tag name.
119
+ */
120
+
121
+ const char *
122
+ lsm_dom_element_get_tag_name (LsmDomElement *self)
123
+ {
124
+ g_return_val_if_fail (LSM_IS_DOM_ELEMENT (self), NULL);
125
+
126
+ return lsm_dom_node_get_node_name (LSM_DOM_NODE (self));
127
+ }
128
+
129
+ static void
130
+ lsm_dom_element_init (LsmDomElement *element)
131
+ {
132
+ }
133
+
134
+ /* LsmDomElement class */
135
+
136
+ static void
137
+ lsm_dom_element_class_init (LsmDomElementClass *klass)
138
+ {
139
+ LsmDomNodeClass *node_class = LSM_DOM_NODE_CLASS (klass);
140
+
141
+ parent_class = g_type_class_peek_parent (klass);
142
+
143
+ node_class->get_node_value = lsm_dom_element_get_node_value;
144
+ node_class->get_node_type = lsm_dom_element_get_node_type;
145
+ node_class->write_to_stream = lsm_dom_element_write_to_stream;
146
+ }
147
+
148
+ G_DEFINE_ABSTRACT_TYPE (LsmDomElement, lsm_dom_element, LSM_TYPE_DOM_NODE)
@@ -0,0 +1,62 @@
1
+ /* Lasem
2
+ *
3
+ * Copyright © 2007-2008 Emmanuel Pacaud
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ *
20
+ * Author:
21
+ * Emmanuel Pacaud <emmanuel@gnome.org>
22
+ */
23
+
24
+ #ifndef LSM_DOM_ELEMENT_H
25
+ #define LSM_DOM_ELEMENT_H
26
+
27
+ #include <lsmdom.h>
28
+ #include <lsmdomnode.h>
29
+
30
+ G_BEGIN_DECLS
31
+
32
+ #define LSM_TYPE_DOM_ELEMENT (lsm_dom_element_get_type ())
33
+ #define LSM_DOM_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LSM_TYPE_DOM_ELEMENT, LsmDomElement))
34
+ #define LSM_DOM_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LSM_TYPE_DOM_ELEMENT, LsmDomElementClass))
35
+ #define LSM_IS_DOM_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LSM_TYPE_DOM_ELEMENT))
36
+ #define LSM_IS_DOM_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LSM_TYPE_DOM_ELEMENT))
37
+ #define LSM_DOM_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), LSM_TYPE_DOM_ELEMENT, LsmDomElementClass))
38
+
39
+ typedef struct _LsmDomElementClass LsmDomElementClass;
40
+
41
+ struct _LsmDomElement {
42
+ LsmDomNode node;
43
+ };
44
+
45
+ struct _LsmDomElementClass {
46
+ LsmDomNodeClass parent_class;
47
+
48
+ const char* (*get_attribute) (LsmDomElement *self, const char *name);
49
+ void (*set_attribute) (LsmDomElement *self, const char *name, const char *attribute_value);
50
+ char * (*get_serialized_attributes) (LsmDomElement *self);
51
+ };
52
+
53
+ GType lsm_dom_element_get_type (void);
54
+
55
+ const char * lsm_dom_element_get_tag_name (LsmDomElement *self);
56
+ const char* lsm_dom_element_get_attribute (LsmDomElement* self, const char* name);
57
+ void lsm_dom_element_set_attribute (LsmDomElement* self, const char* name, const char* attribute_value);
58
+
59
+ G_END_DECLS
60
+
61
+ #endif
62
+
@@ -0,0 +1,2166 @@
1
+ /* Lasem
2
+ *
3
+ * Copyright © 2007-2012 Emmanuel Pacaud
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ *
20
+ * Author:
21
+ * Emmanuel Pacaud <emmanuel@gnome.org>
22
+ */
23
+
24
+ #include <lsmdomentities.h>
25
+ #include <glib.h>
26
+ #include <stdio.h>
27
+
28
+ static const struct {
29
+ const char *name;
30
+ const char *utf8;
31
+ } lsm_dom_entities[] = {
32
+ {"AElig", "\xc3\x86" }, /* Æ [LATIN CAPITAL LETTER AE]*/
33
+ {"Aacute", "\xc3\x81" }, /* Á [LATIN CAPITAL LETTER A WITH ACUTE]*/
34
+ {"Abreve", "\xc4\x82" }, /* Ă [LATIN CAPITAL LETTER A WITH BREVE]*/
35
+ {"Acirc", "\xc3\x82" }, /* Â [LATIN CAPITAL LETTER A WITH CIRCUMFLEX]*/
36
+ {"Acy", "\xd0\x90" }, /* А [CYRILLIC CAPITAL LETTER A]*/
37
+ {"Afr", "\xf0\x9d\x94\x84" }, /* 𝔄 [MATHEMATICAL FRAKTUR CAPITAL A]*/
38
+ {"Agrave", "\xc3\x80" }, /* À [LATIN CAPITAL LETTER A WITH GRAVE]*/
39
+ {"Alpha", "\xce\x91" }, /* Α [GREEK CAPITAL LETTER ALPHA] */
40
+ {"Amacr", "\xc4\x80" }, /* Ā [LATIN CAPITAL LETTER A WITH MACRON]*/
41
+ {"And", "\xe2\xa9\x93" }, /* ⩓ [DOUBLE LOGICAL AND]*/
42
+ {"Aogon", "\xc4\x84" }, /* Ą [LATIN CAPITAL LETTER A WITH OGONEK]*/
43
+ {"Aopf", "\xf0\x9d\x94\xb8" }, /* 𝔸 [MATHEMATICAL DOUBLE-STRUCK CAPITAL A]*/
44
+ {"ApplyFunction", "\xe2\x81\xa1" }, /* ⁡ [FUNCTION APPLICATION]*/
45
+ {"Aring", "\xc3\x85" }, /* Å [LATIN CAPITAL LETTER A WITH RING ABOVE]*/
46
+ {"Ascr", "\xf0\x9d\x92\x9c" }, /* 𝒜 [MATHEMATICAL SCRIPT CAPITAL A]*/
47
+ {"Assign", "\xe2\x89\x94" }, /* ≔ [COLON EQUALS]*/
48
+ {"Atilde", "\xc3\x83" }, /* Ã [LATIN CAPITAL LETTER A WITH TILDE]*/
49
+ {"Auml", "\xc3\x84" }, /* Ä [LATIN CAPITAL LETTER A WITH DIAERESIS]*/
50
+ {"Backslash", "\xe2\x88\x96" }, /* ∖ [SET MINUS]*/
51
+ {"Barv", "\xe2\xab\xa7" }, /* ⫧ [SHORT DOWN TACK WITH OVERBAR]*/
52
+ {"Barwed", "\xe2\x8c\x86" }, /* ⌆ [PERSPECTIVE]*/
53
+ {"Bcy", "\xd0\x91" }, /* Б [CYRILLIC CAPITAL LETTER BE]*/
54
+ {"Because", "\xe2\x88\xb5" }, /* ∵ [BECAUSE]*/
55
+ {"Bernoullis", "\xe2\x84\xac" }, /* ℬ [SCRIPT CAPITAL B]*/
56
+ {"Beta", "\xce\x92" }, /* Β [GREEK CAPITAL LETTER BETA] */
57
+ {"Bfr", "\xf0\x9d\x94\x85" }, /* 𝔅 [MATHEMATICAL FRAKTUR CAPITAL B]*/
58
+ {"Bopf", "\xf0\x9d\x94\xb9" }, /* 𝔹 [MATHEMATICAL DOUBLE-STRUCK CAPITAL B]*/
59
+ {"Breve", "\xcb\x98" }, /* ˘ [BREVE]*/
60
+ {"Bscr", "\xe2\x84\xac" }, /* ℬ [SCRIPT CAPITAL B]*/
61
+ {"Bumpeq", "\xe2\x89\x8e" }, /* ≎ [GEOMETRICALLY EQUIVALENT TO]*/
62
+ {"CHcy", "\xd0\xa7" }, /* Ч [CYRILLIC CAPITAL LETTER CHE]*/
63
+ {"Cacute", "\xc4\x86" }, /* Ć [LATIN CAPITAL LETTER C WITH ACUTE]*/
64
+ {"Cap", "\xe2\x8b\x92" }, /* ⋒ [DOUBLE INTERSECTION]*/
65
+ {"CapitalDifferentialD", "\xe2\x85\x85" }, /* ⅅ [DOUBLE-STRUCK ITALIC CAPITAL D]*/
66
+ {"Cayleys", "\xe2\x84\xad" }, /* ℭ [BLACK-LETTER CAPITAL C]*/
67
+ {"Ccaron", "\xc4\x8c" }, /* Č [LATIN CAPITAL LETTER C WITH CARON]*/
68
+ {"Ccedil", "\xc3\x87" }, /* Ç [LATIN CAPITAL LETTER C WITH CEDILLA]*/
69
+ {"Ccirc", "\xc4\x88" }, /* Ĉ [LATIN CAPITAL LETTER C WITH CIRCUMFLEX]*/
70
+ {"Cconint", "\xe2\x88\xb0" }, /* ∰ [VOLUME INTEGRAL]*/
71
+ {"Cdot", "\xc4\x8a" }, /* Ċ [LATIN CAPITAL LETTER C WITH DOT ABOVE]*/
72
+ {"Cedilla", "\xc2\xb8" }, /* ¸ [CEDILLA]*/
73
+ {"CenterDot", "\xc2\xb7" }, /* · [MIDDLE DOT]*/
74
+ {"Cfr", "\xe2\x84\xad" }, /* ℭ [BLACK-LETTER CAPITAL C]*/
75
+ {"CircleDot", "\xe2\x8a\x99" }, /* ⊙ [CIRCLED DOT OPERATOR]*/
76
+ {"CircleMinus", "\xe2\x8a\x96" }, /* ⊖ [CIRCLED MINUS]*/
77
+ {"CirclePlus", "\xe2\x8a\x95" }, /* ⊕ [CIRCLED PLUS]*/
78
+ {"CircleTimes", "\xe2\x8a\x97" }, /* ⊗ [CIRCLED TIMES]*/
79
+ {"ClockwiseContourIntegral","\xe2\x88\xb2" }, /* ∲ [CLOCKWISE CONTOUR INTEGRAL]*/
80
+ {"CloseCurlyDoubleQuote", "\xe2\x80\x9d" }, /* ” [RIGHT DOUBLE QUOTATION MARK]*/
81
+ {"CloseCurlyQuote", "\xe2\x80\x99" }, /* ’ [RIGHT SINGLE QUOTATION MARK]*/
82
+ {"Colon", "\xe2\x88\xb7" }, /* ∷ [PROPORTION]*/
83
+ {"Colone", "\xe2\xa9\xb4" }, /* ⩴ [DOUBLE COLON EQUAL]*/
84
+ {"Congruent", "\xe2\x89\xa1" }, /* ≡ [IDENTICAL TO]*/
85
+ {"Conint", "\xe2\x88\xaf" }, /* ∯ [SURFACE INTEGRAL]*/
86
+ {"ContourIntegral", "\xe2\x88\xae" }, /* ∮ [CONTOUR INTEGRAL]*/
87
+ {"Copf", "\xe2\x84\x82" }, /* ℂ [DOUBLE-STRUCK CAPITAL C]*/
88
+ {"Coproduct", "\xe2\x88\x90" }, /* ∐ [N-ARY COPRODUCT]*/
89
+ {"CounterClockwiseContourIntegral","\xe2\x88\xb3" }, /* ∳ [ANTICLOCKWISE CONTOUR INTEGRAL]*/
90
+ {"Cross", "\xe2\xa8\xaf" }, /* ⨯ [VECTOR OR CROSS PRODUCT]*/
91
+ {"Cscr", "\xf0\x9d\x92\x9e" }, /* 𝒞 [MATHEMATICAL SCRIPT CAPITAL C]*/
92
+ {"Cup", "\xe2\x8b\x93" }, /* ⋓ [DOUBLE UNION]*/
93
+ {"CupCap", "\xe2\x89\x8d" }, /* ≍ [EQUIVALENT TO]*/
94
+ {"DD", "\xe2\x85\x85" }, /* ⅅ [DOUBLE-STRUCK ITALIC CAPITAL D]*/
95
+ {"DDotrahd", "\xe2\xa4\x91" }, /* ⤑ [RIGHTWARDS ARROW WITH DOTTED STEM]*/
96
+ {"DJcy", "\xd0\x82" }, /* Ђ [CYRILLIC CAPITAL LETTER DJE]*/
97
+ {"DScy", "\xd0\x85" }, /* Ѕ [CYRILLIC CAPITAL LETTER DZE]*/
98
+ {"DZcy", "\xd0\x8f" }, /* Џ [CYRILLIC CAPITAL LETTER DZHE]*/
99
+ {"Dagger", "\xe2\x80\xa1" }, /* ‡ [DOUBLE DAGGER]*/
100
+ {"Dagger", "\xe2\x80\xa1" }, /* ‡ [DOUBLE DAGGER]*/
101
+ {"Darr", "\xe2\x86\xa1" }, /* ↡ [DOWNWARDS TWO HEADED ARROW]*/
102
+ {"Dashv", "\xe2\xab\xa4" }, /* ⫤ [VERTICAL BAR DOUBLE LEFT TURNSTILE]*/
103
+ {"Dcaron", "\xc4\x8e" }, /* Ď [LATIN CAPITAL LETTER D WITH CARON]*/
104
+ {"Dcy", "\xd0\x94" }, /* Д [CYRILLIC CAPITAL LETTER DE]*/
105
+ {"Del", "\xe2\x88\x87" }, /* ∇ [NABLA]*/
106
+ {"Delta", "\xce\x94" }, /* Δ [GREEK CAPITAL LETTER DELTA]*/
107
+ {"Dfr", "\xf0\x9d\x94\x87" }, /* 𝔇 [MATHEMATICAL FRAKTUR CAPITAL D]*/
108
+ {"DiacriticalAcute", "\xc2\xb4" }, /* ´ [ACUTE ACCENT]*/
109
+ {"DiacriticalDot", "\xcb\x99" }, /* ˙ [DOT ABOVE]*/
110
+ {"DiacriticalDoubleAcute","\xcb\x9d" }, /* ˝ [DOUBLE ACUTE ACCENT]*/
111
+ {"DiacriticalGrave", "\x60" }, /* ` [GRAVE ACCENT]*/
112
+ {"DiacriticalTilde", "\xcb\x9c" }, /* ˜ [SMALL TILDE]*/
113
+ {"Diamond", "\xe2\x8b\x84" }, /* ⋄ [DIAMOND OPERATOR]*/
114
+ {"DifferentialD", "\xe2\x85\x86" }, /* ⅆ [DOUBLE-STRUCK ITALIC SMALL D]*/
115
+ {"Dopf", "\xf0\x9d\x94\xbb" }, /* 𝔻 [MATHEMATICAL DOUBLE-STRUCK CAPITAL D]*/
116
+ {"Dot", "\xc2\xa8" }, /* ¨ [DIAERESIS]*/
117
+ {"DotDot", "\xe2\x83\x9c" }, /* ⃜ [COMBINING FOUR DOTS ABOVE]*/
118
+ {"DotEqual", "\xe2\x89\x90" }, /* ≐ [APPROACHES THE LIMIT]*/
119
+ {"DoubleContourIntegral", "\xe2\x88\xaf" }, /* ∯ [SURFACE INTEGRAL]*/
120
+ {"DoubleDot", "\xc2\xa8" }, /* ¨ [DIAERESIS]*/
121
+ {"DoubleDownArrow", "\xe2\x87\x93" }, /* ⇓ [DOWNWARDS DOUBLE ARROW]*/
122
+ {"DoubleLeftArrow", "\xe2\x87\x90" }, /* ⇐ [LEFTWARDS DOUBLE ARROW]*/
123
+ {"DoubleLeftRightArrow", "\xe2\x87\x94" }, /* ⇔ [LEFT RIGHT DOUBLE ARROW]*/
124
+ {"DoubleLeftTee", "\xe2\xab\xa4" }, /* ⫤ [VERTICAL BAR DOUBLE LEFT TURNSTILE]*/
125
+ {"DoubleLongLeftArrow", "\xe2\x9f\xb8" }, /* ⟸ [LONG LEFTWARDS DOUBLE ARROW]*/
126
+ {"DoubleLongLeftRightArrow","\xe2\x9f\xba" }, /* ⟺ [LONG LEFT RIGHT DOUBLE ARROW]*/
127
+ {"DoubleLongRightArrow", "\xe2\x9f\xb9" }, /* ⟹ [LONG RIGHTWARDS DOUBLE ARROW]*/
128
+ {"DoubleRightArrow", "\xe2\x87\x92" }, /* ⇒ [RIGHTWARDS DOUBLE ARROW]*/
129
+ {"DoubleRightTee", "\xe2\x8a\xa8" }, /* ⊨ [TRUE]*/
130
+ {"DoubleUpArrow", "\xe2\x87\x91" }, /* ⇑ [UPWARDS DOUBLE ARROW]*/
131
+ {"DoubleUpDownArrow", "\xe2\x87\x95" }, /* ⇕ [UP DOWN DOUBLE ARROW]*/
132
+ {"DoubleVerticalBar", "\xe2\x88\xa5" }, /* ∥ [PARALLEL TO]*/
133
+ {"DownArrow", "\xe2\x86\x93" }, /* ↓ [DOWNWARDS ARROW]*/
134
+ {"DownArrowBar", "\xe2\xa4\x93" }, /* ⤓ [DOWNWARDS ARROW TO BAR]*/
135
+ {"DownArrowUpArrow", "\xe2\x87\xb5" }, /* ⇵ [DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW]*/
136
+ {"DownBreve", "\xcc\x91" }, /* ̑ [COMBINING INVERTED BREVE]*/
137
+ {"DownLeftRightVector", "\xe2\xa5\x90" }, /* ⥐ [LEFT BARB DOWN RIGHT BARB DOWN HARPOON]*/
138
+ {"DownLeftTeeVector", "\xe2\xa5\x9e" }, /* ⥞ [LEFTWARDS HARPOON WITH BARB DOWN FROM BAR]*/
139
+ {"DownLeftVector", "\xe2\x86\xbd" }, /* ↽ [LEFTWARDS HARPOON WITH BARB DOWNWARDS]*/
140
+ {"DownLeftVectorBar", "\xe2\xa5\x96" }, /* ⥖ [LEFTWARDS HARPOON WITH BARB DOWN TO BAR]*/
141
+ {"DownRightTeeVector", "\xe2\xa5\x9f" }, /* ⥟ [RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR]*/
142
+ {"DownRightVector", "\xe2\x87\x81" }, /* ⇁ [RIGHTWARDS HARPOON WITH BARB DOWNWARDS]*/
143
+ {"DownRightVectorBar", "\xe2\xa5\x97" }, /* ⥗ [RIGHTWARDS HARPOON WITH BARB DOWN TO BAR]*/
144
+ {"DownTee", "\xe2\x8a\xa4" }, /* ⊤ [DOWN TACK]*/
145
+ {"DownTeeArrow", "\xe2\x86\xa7" }, /* ↧ [DOWNWARDS ARROW FROM BAR]*/
146
+ {"Downarrow", "\xe2\x87\x93" }, /* ⇓ [DOWNWARDS DOUBLE ARROW]*/
147
+ {"Dscr", "\xf0\x9d\x92\x9f" }, /* 𝒟 [MATHEMATICAL SCRIPT CAPITAL D]*/
148
+ {"Dstrok", "\xc4\x90" }, /* Đ [LATIN CAPITAL LETTER D WITH STROKE]*/
149
+ {"ENG", "\xc5\x8a" }, /* Ŋ [LATIN CAPITAL LETTER ENG]*/
150
+ {"ETH", "\xc3\x90" }, /* Ð [LATIN CAPITAL LETTER ETH]*/
151
+ {"Eacute", "\xc3\x89" }, /* É [LATIN CAPITAL LETTER E WITH ACUTE]*/
152
+ {"Ecaron", "\xc4\x9a" }, /* Ě [LATIN CAPITAL LETTER E WITH CARON]*/
153
+ {"Ecirc", "\xc3\x8a" }, /* Ê [LATIN CAPITAL LETTER E WITH CIRCUMFLEX]*/
154
+ {"Ecy", "\xd0\xad" }, /* Э [CYRILLIC CAPITAL LETTER E]*/
155
+ {"Edot", "\xc4\x96" }, /* Ė [LATIN CAPITAL LETTER E WITH DOT ABOVE]*/
156
+ {"Efr", "\xf0\x9d\x94\x88" }, /* 𝔈 [MATHEMATICAL FRAKTUR CAPITAL E]*/
157
+ {"Egrave", "\xc3\x88" }, /* È [LATIN CAPITAL LETTER E WITH GRAVE]*/
158
+ {"Element", "\xe2\x88\x88" }, /* ∈ [ELEMENT OF]*/
159
+ {"Emacr", "\xc4\x92" }, /* Ē [LATIN CAPITAL LETTER E WITH MACRON]*/
160
+ {"EmptySmallSquare", "\xe2\x97\xbb" }, /* ◻ [WHITE MEDIUM SQUARE]*/
161
+ {"EmptyVerySmallSquare", "\xe2\x96\xab" }, /* ▫ [WHITE SMALL SQUARE]*/
162
+ {"Eogon", "\xc4\x98" }, /* Ę [LATIN CAPITAL LETTER E WITH OGONEK]*/
163
+ {"Eopf", "\xf0\x9d\x94\xbc" }, /* 𝔼 [MATHEMATICAL DOUBLE-STRUCK CAPITAL E]*/
164
+ {"Epsilon", "\xce\x95" }, /* Ε [GREEK CAPITAL LETTER EPSILON] */
165
+ {"Equal", "\xe2\xa9\xb5" }, /* ⩵ [TWO CONSECUTIVE EQUALS SIGNS]*/
166
+ {"EqualTilde", "\xe2\x89\x82" }, /* ≂ [MINUS TILDE]*/
167
+ {"Equilibrium", "\xe2\x87\x8c" }, /* ⇌ [RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON]*/
168
+ {"Escr", "\xe2\x84\xb0" }, /* ℰ [SCRIPT CAPITAL E]*/
169
+ {"Esim", "\xe2\xa9\xb3" }, /* ⩳ [EQUALS SIGN ABOVE TILDE OPERATOR]*/
170
+ {"Eta", "\xce\x97" }, /* Η [GREEK CAPITAL LETTER ETA] */
171
+ {"Euml", "\xc3\x8b" }, /* Ë [LATIN CAPITAL LETTER E WITH DIAERESIS]*/
172
+ {"Exists", "\xe2\x88\x83" }, /* ∃ [THERE EXISTS]*/
173
+ {"ExponentialE", "\xe2\x85\x87" }, /* ⅇ [DOUBLE-STRUCK ITALIC SMALL E]*/
174
+ {"Fcy", "\xd0\xa4" }, /* Ф [CYRILLIC CAPITAL LETTER EF]*/
175
+ {"Ffr", "\xf0\x9d\x94\x89" }, /* 𝔉 [MATHEMATICAL FRAKTUR CAPITAL F]*/
176
+ {"FilledSmallSquare", "\xe2\x97\xbc" }, /* ◼ [BLACK MEDIUM SQUARE]*/
177
+ {"FilledVerySmallSquare", "\xe2\x96\xaa" }, /* ▪ [BLACK SMALL SQUARE]*/
178
+ {"Fopf", "\xf0\x9d\x94\xbd" }, /* 𝔽 [MATHEMATICAL DOUBLE-STRUCK CAPITAL F]*/
179
+ {"ForAll", "\xe2\x88\x80" }, /* ∀ [FOR ALL]*/
180
+ {"Fouriertrf", "\xe2\x84\xb1" }, /* ℱ [SCRIPT CAPITAL F]*/
181
+ {"Fscr", "\xe2\x84\xb1" }, /* ℱ [SCRIPT CAPITAL F]*/
182
+ {"GJcy", "\xd0\x83" }, /* Ѓ [CYRILLIC CAPITAL LETTER GJE]*/
183
+ {"Gamma", "\xce\x93" }, /* Γ [GREEK CAPITAL LETTER GAMMA]*/
184
+ {"Gammad", "\xcf\x9c" }, /* Ϝ [GREEK LETTER DIGAMMA]*/
185
+ {"Gbreve", "\xc4\x9e" }, /* Ğ [LATIN CAPITAL LETTER G WITH BREVE]*/
186
+ {"Gcedil", "\xc4\xa2" }, /* Ģ [LATIN CAPITAL LETTER G WITH CEDILLA]*/
187
+ {"Gcirc", "\xc4\x9c" }, /* Ĝ [LATIN CAPITAL LETTER G WITH CIRCUMFLEX]*/
188
+ {"Gcy", "\xd0\x93" }, /* Г [CYRILLIC CAPITAL LETTER GHE]*/
189
+ {"Gdot", "\xc4\xa0" }, /* Ġ [LATIN CAPITAL LETTER G WITH DOT ABOVE]*/
190
+ {"Gfr", "\xf0\x9d\x94\x8a" }, /* 𝔊 [MATHEMATICAL FRAKTUR CAPITAL G]*/
191
+ {"Gg", "\xe2\x8b\x99" }, /* ⋙ [VERY MUCH GREATER-THAN]*/
192
+ {"Gopf", "\xf0\x9d\x94\xbe" }, /* 𝔾 [MATHEMATICAL DOUBLE-STRUCK CAPITAL G]*/
193
+ {"GreaterEqual", "\xe2\x89\xa5" }, /* ≥ [GREATER-THAN OR EQUAL TO]*/
194
+ {"GreaterEqualLess", "\xe2\x8b\x9b" }, /* ⋛ [GREATER-THAN EQUAL TO OR LESS-THAN]*/
195
+ {"GreaterFullEqual", "\xe2\x89\xa7" }, /* ≧ [GREATER-THAN OVER EQUAL TO]*/
196
+ {"GreaterGreater", "\xe2\xaa\xa2" }, /* ⪢ [DOUBLE NESTED GREATER-THAN]*/
197
+ {"GreaterLess", "\xe2\x89\xb7" }, /* ≷ [GREATER-THAN OR LESS-THAN]*/
198
+ {"GreaterSlantEqual", "\xe2\xa9\xbe" }, /* ⩾ [GREATER-THAN OR SLANTED EQUAL TO]*/
199
+ {"GreaterTilde", "\xe2\x89\xb3" }, /* ≳ [GREATER-THAN OR EQUIVALENT TO]*/
200
+ {"Gscr", "\xf0\x9d\x92\xa2" }, /* 𝒢 [MATHEMATICAL SCRIPT CAPITAL G]*/
201
+ {"Gt", "\xe2\x89\xab" }, /* ≫ [MUCH GREATER-THAN]*/
202
+ {"HARDcy", "\xd0\xaa" }, /* Ъ [CYRILLIC CAPITAL LETTER HARD SIGN]*/
203
+ {"Hacek", "\xcb\x87" }, /* ˇ [CARON]*/
204
+ {"Hat", "\x5e" }, /* ^ [CIRCUMFLEX ACCENT]*/
205
+ {"Hcirc", "\xc4\xa4" }, /* Ĥ [LATIN CAPITAL LETTER H WITH CIRCUMFLEX]*/
206
+ {"Hfr", "\xe2\x84\x8c" }, /* ℌ [BLACK-LETTER CAPITAL H]*/
207
+ {"HilbertSpace", "\xe2\x84\x8b" }, /* ℋ [SCRIPT CAPITAL H]*/
208
+ {"Hopf", "\xe2\x84\x8d" }, /* ℍ [DOUBLE-STRUCK CAPITAL H]*/
209
+ {"HorizontalLine", "\xe2\x94\x80" }, /* ─ [BOX DRAWINGS LIGHT HORIZONTAL]*/
210
+ {"Hscr", "\xe2\x84\x8b" }, /* ℋ [SCRIPT CAPITAL H]*/
211
+ {"Hstrok", "\xc4\xa6" }, /* Ħ [LATIN CAPITAL LETTER H WITH STROKE]*/
212
+ {"HumpDownHump", "\xe2\x89\x8e" }, /* ≎ [GEOMETRICALLY EQUIVALENT TO]*/
213
+ {"HumpEqual", "\xe2\x89\x8f" }, /* ≏ [DIFFERENCE BETWEEN]*/
214
+ {"IEcy", "\xd0\x95" }, /* Е [CYRILLIC CAPITAL LETTER IE]*/
215
+ {"IJlig", "\xc4\xb2" }, /* IJ [LATIN CAPITAL LIGATURE IJ]*/
216
+ {"IOcy", "\xd0\x81" }, /* Ё [CYRILLIC CAPITAL LETTER IO]*/
217
+ {"Iacute", "\xc3\x8d" }, /* Í [LATIN CAPITAL LETTER I WITH ACUTE]*/
218
+ {"Icirc", "\xc3\x8e" }, /* Î [LATIN CAPITAL LETTER I WITH CIRCUMFLEX]*/
219
+ {"Icy", "\xd0\x98" }, /* И [CYRILLIC CAPITAL LETTER I]*/
220
+ {"Idot", "\xc4\xb0" }, /* İ [LATIN CAPITAL LETTER I WITH DOT ABOVE]*/
221
+ {"Ifr", "\xe2\x84\x91" }, /* ℑ [BLACK-LETTER CAPITAL I]*/
222
+ {"Igrave", "\xc3\x8c" }, /* Ì [LATIN CAPITAL LETTER I WITH GRAVE]*/
223
+ {"Im", "\xe2\x84\x91" }, /* ℑ [BLACK-LETTER CAPITAL I]*/
224
+ {"Imacr", "\xc4\xaa" }, /* Ī [LATIN CAPITAL LETTER I WITH MACRON]*/
225
+ {"ImaginaryI", "\xe2\x85\x88" }, /* ⅈ [DOUBLE-STRUCK ITALIC SMALL I]*/
226
+ {"Implies", "\xe2\x87\x92" }, /* ⇒ [RIGHTWARDS DOUBLE ARROW]*/
227
+ {"Int", "\xe2\x88\xac" }, /* ∬ [DOUBLE INTEGRAL]*/
228
+ {"Integral", "\xe2\x88\xab" }, /* ∫ [INTEGRAL]*/
229
+ {"Intersection", "\xe2\x8b\x82" }, /* ⋂ [N-ARY INTERSECTION]*/
230
+ {"InvisibleComma", "\xe2\x81\xa3" }, /* ⁣ [INVISIBLE SEPARATOR]*/
231
+ {"InvisibleTimes", "\xe2\x81\xa2" }, /* ⁢ [INVISIBLE TIMES]*/
232
+ {"Iogon", "\xc4\xae" }, /* Į [LATIN CAPITAL LETTER I WITH OGONEK]*/
233
+ {"Iopf", "\xf0\x9d\x95\x80" }, /* 𝕀 [MATHEMATICAL DOUBLE-STRUCK CAPITAL I]*/
234
+ {"Iota", "\xce\x99" }, /* Ι [GREEK CAPITAL LETTER IOTA] */
235
+ {"Iscr", "\xe2\x84\x90" }, /* ℐ [SCRIPT CAPITAL I]*/
236
+ {"Itilde", "\xc4\xa8" }, /* Ĩ [LATIN CAPITAL LETTER I WITH TILDE]*/
237
+ {"Iukcy", "\xd0\x86" }, /* І [CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I]*/
238
+ {"Iuml", "\xc3\x8f" }, /* Ï [LATIN CAPITAL LETTER I WITH DIAERESIS]*/
239
+ {"Jcirc", "\xc4\xb4" }, /* Ĵ [LATIN CAPITAL LETTER J WITH CIRCUMFLEX]*/
240
+ {"Jcy", "\xd0\x99" }, /* Й [CYRILLIC CAPITAL LETTER SHORT I]*/
241
+ {"Jfr", "\xf0\x9d\x94\x8d" }, /* 𝔍 [MATHEMATICAL FRAKTUR CAPITAL J]*/
242
+ {"Jopf", "\xf0\x9d\x95\x81" }, /* 𝕁 [MATHEMATICAL DOUBLE-STRUCK CAPITAL J]*/
243
+ {"Jscr", "\xf0\x9d\x92\xa5" }, /* 𝒥 [MATHEMATICAL SCRIPT CAPITAL J]*/
244
+ {"Jsercy", "\xd0\x88" }, /* Ј [CYRILLIC CAPITAL LETTER JE]*/
245
+ {"Jukcy", "\xd0\x84" }, /* Є [CYRILLIC CAPITAL LETTER UKRAINIAN IE]*/
246
+ {"Kappa", "\xce\x9a" }, /* Κ [GREEK CAPITAL LETTER KAPPA] */
247
+ {"KHcy", "\xd0\xa5" }, /* Х [CYRILLIC CAPITAL LETTER HA]*/
248
+ {"KJcy", "\xd0\x8c" }, /* Ќ [CYRILLIC CAPITAL LETTER KJE]*/
249
+ {"Kcedil", "\xc4\xb6" }, /* Ķ [LATIN CAPITAL LETTER K WITH CEDILLA]*/
250
+ {"Kcy", "\xd0\x9a" }, /* К [CYRILLIC CAPITAL LETTER KA]*/
251
+ {"Kfr", "\xf0\x9d\x94\x8e" }, /* 𝔎 [MATHEMATICAL FRAKTUR CAPITAL K]*/
252
+ {"Kopf", "\xf0\x9d\x95\x82" }, /* 𝕂 [MATHEMATICAL DOUBLE-STRUCK CAPITAL K]*/
253
+ {"Kscr", "\xf0\x9d\x92\xa6" }, /* 𝒦 [MATHEMATICAL SCRIPT CAPITAL K]*/
254
+ {"LJcy", "\xd0\x89" }, /* Љ [CYRILLIC CAPITAL LETTER LJE]*/
255
+ {"Lacute", "\xc4\xb9" }, /* Ĺ [LATIN CAPITAL LETTER L WITH ACUTE]*/
256
+ {"Lambda", "\xce\x9b" }, /* Λ [GREEK CAPITAL LETTER LAMDA]*/
257
+ {"Lang", "\xe3\x80\x8a" }, /* 《 [LEFT DOUBLE ANGLE BRACKET]*/
258
+ {"Laplacetrf", "\xe2\x84\x92" }, /* ℒ [SCRIPT CAPITAL L]*/
259
+ {"Larr", "\xe2\x86\x9e" }, /* ↞ [LEFTWARDS TWO HEADED ARROW]*/
260
+ {"Lcaron", "\xc4\xbd" }, /* Ľ [LATIN CAPITAL LETTER L WITH CARON]*/
261
+ {"Lcedil", "\xc4\xbb" }, /* Ļ [LATIN CAPITAL LETTER L WITH CEDILLA]*/
262
+ {"Lcy", "\xd0\x9b" }, /* Л [CYRILLIC CAPITAL LETTER EL]*/
263
+ {"LeftAngleBracket", "\xe2\x8c\xa9" }, /* 〈 [LEFT-POINTING ANGLE BRACKET]*/
264
+ {"LeftArrow", "\xe2\x86\x90" }, /* ← [LEFTWARDS ARROW]*/
265
+ {"LeftArrowBar", "\xe2\x87\xa4" }, /* ⇤ [LEFTWARDS ARROW TO BAR]*/
266
+ {"LeftArrowRightArrow", "\xe2\x87\x86" }, /* ⇆ [LEFTWARDS ARROW OVER RIGHTWARDS ARROW]*/
267
+ {"LeftCeiling", "\xe2\x8c\x88" }, /* ⌈ [LEFT CEILING]*/
268
+ {"LeftDoubleBracket", "\xe3\x80\x9a" }, /* 〚 [LEFT WHITE SQUARE BRACKET]*/
269
+ {"LeftDownTeeVector", "\xe2\xa5\xa1" }, /* ⥡ [DOWNWARDS HARPOON WITH BARB LEFT FROM BAR]*/
270
+ {"LeftDownVector", "\xe2\x87\x83" }, /* ⇃ [DOWNWARDS HARPOON WITH BARB LEFTWARDS]*/
271
+ {"LeftDownVectorBar", "\xe2\xa5\x99" }, /* ⥙ [DOWNWARDS HARPOON WITH BARB LEFT TO BAR]*/
272
+ {"LeftFloor", "\xe2\x8c\x8a" }, /* ⌊ [LEFT FLOOR]*/
273
+ {"LeftRightArrow", "\xe2\x86\x94" }, /* ↔ [LEFT RIGHT ARROW]*/
274
+ {"LeftRightVector", "\xe2\xa5\x8e" }, /* ⥎ [LEFT BARB UP RIGHT BARB UP HARPOON]*/
275
+ {"LeftTee", "\xe2\x8a\xa3" }, /* ⊣ [LEFT TACK]*/
276
+ {"LeftTeeArrow", "\xe2\x86\xa4" }, /* ↤ [LEFTWARDS ARROW FROM BAR]*/
277
+ {"LeftTeeVector", "\xe2\xa5\x9a" }, /* ⥚ [LEFTWARDS HARPOON WITH BARB UP FROM BAR]*/
278
+ {"LeftTriangle", "\xe2\x8a\xb2" }, /* ⊲ [NORMAL SUBGROUP OF]*/
279
+ {"LeftTriangleBar", "\xe2\xa7\x8f" }, /* ⧏ [LEFT TRIANGLE BESIDE VERTICAL BAR]*/
280
+ {"LeftTriangleEqual", "\xe2\x8a\xb4" }, /* ⊴ [NORMAL SUBGROUP OF OR EQUAL TO]*/
281
+ {"LeftUpDownVector", "\xe2\xa5\x91" }, /* ⥑ [UP BARB LEFT DOWN BARB LEFT HARPOON]*/
282
+ {"LeftUpTeeVector", "\xe2\xa5\xa0" }, /* ⥠ [UPWARDS HARPOON WITH BARB LEFT FROM BAR]*/
283
+ {"LeftUpVector", "\xe2\x86\xbf" }, /* ↿ [UPWARDS HARPOON WITH BARB LEFTWARDS]*/
284
+ {"LeftUpVectorBar", "\xe2\xa5\x98" }, /* ⥘ [UPWARDS HARPOON WITH BARB LEFT TO BAR]*/
285
+ {"LeftVector", "\xe2\x86\xbc" }, /* ↼ [LEFTWARDS HARPOON WITH BARB UPWARDS]*/
286
+ {"LeftVectorBar", "\xe2\xa5\x92" }, /* ⥒ [LEFTWARDS HARPOON WITH BARB UP TO BAR]*/
287
+ {"Leftarrow", "\xe2\x87\x90" }, /* ⇐ [LEFTWARDS DOUBLE ARROW]*/
288
+ {"Leftrightarrow", "\xe2\x87\x94" }, /* ⇔ [LEFT RIGHT DOUBLE ARROW]*/
289
+ {"LessEqualGreater", "\xe2\x8b\x9a" }, /* ⋚ [LESS-THAN EQUAL TO OR GREATER-THAN]*/
290
+ {"LessFullEqual", "\xe2\x89\xa6" }, /* ≦ [LESS-THAN OVER EQUAL TO]*/
291
+ {"LessGreater", "\xe2\x89\xb6" }, /* ≶ [LESS-THAN OR GREATER-THAN]*/
292
+ {"LessLess", "\xe2\xaa\xa1" }, /* ⪡ [DOUBLE NESTED LESS-THAN]*/
293
+ {"LessSlantEqual", "\xe2\xa9\xbd" }, /* ⩽ [LESS-THAN OR SLANTED EQUAL TO]*/
294
+ {"LessTilde", "\xe2\x89\xb2" }, /* ≲ [LESS-THAN OR EQUIVALENT TO]*/
295
+ {"Lfr", "\xf0\x9d\x94\x8f" }, /* 𝔏 [MATHEMATICAL FRAKTUR CAPITAL L]*/
296
+ {"Ll", "\xe2\x8b\x98" }, /* ⋘ [VERY MUCH LESS-THAN]*/
297
+ {"Lleftarrow", "\xe2\x87\x9a" }, /* ⇚ [LEFTWARDS TRIPLE ARROW]*/
298
+ {"Lmidot", "\xc4\xbf" }, /* Ŀ [LATIN CAPITAL LETTER L WITH MIDDLE DOT]*/
299
+ {"LongLeftArrow", "\xe2\x9f\xb5" }, /* ⟵ [LONG LEFTWARDS ARROW]*/
300
+ {"LongLeftRightArrow", "\xe2\x9f\xb7" }, /* ⟷ [LONG LEFT RIGHT ARROW]*/
301
+ {"LongRightArrow", "\xe2\x9f\xb6" }, /* ⟶ [LONG RIGHTWARDS ARROW]*/
302
+ {"Longleftarrow", "\xe2\x9f\xb8" }, /* ⟸ [LONG LEFTWARDS DOUBLE ARROW]*/
303
+ {"Longleftrightarrow", "\xe2\x9f\xba" }, /* ⟺ [LONG LEFT RIGHT DOUBLE ARROW]*/
304
+ {"Longrightarrow", "\xe2\x9f\xb9" }, /* ⟹ [LONG RIGHTWARDS DOUBLE ARROW]*/
305
+ {"Lopf", "\xf0\x9d\x95\x83" }, /* 𝕃 [MATHEMATICAL DOUBLE-STRUCK CAPITAL L]*/
306
+ {"LowerLeftArrow", "\xe2\x86\x99" }, /* ↙ [SOUTH WEST ARROW]*/
307
+ {"LowerRightArrow", "\xe2\x86\x98" }, /* ↘ [SOUTH EAST ARROW]*/
308
+ {"Lscr", "\xe2\x84\x92" }, /* ℒ [SCRIPT CAPITAL L]*/
309
+ {"Lsh", "\xe2\x86\xb0" }, /* ↰ [UPWARDS ARROW WITH TIP LEFTWARDS]*/
310
+ {"Lstrok", "\xc5\x81" }, /* Ł [LATIN CAPITAL LETTER L WITH STROKE]*/
311
+ {"Lt", "\xe2\x89\xaa" }, /* ≪ [MUCH LESS-THAN]*/
312
+ {"Map", "\xe2\xa4\x85" }, /* ⤅ [RIGHTWARDS TWO-HEADED ARROW FROM BAR]*/
313
+ {"Mcy", "\xd0\x9c" }, /* М [CYRILLIC CAPITAL LETTER EM]*/
314
+ {"MediumSpace", "\xe2\x81\x9f" }, /*   [MEDIUM MATHEMATICAL SPACE]*/
315
+ {"Mellintrf", "\xe2\x84\xb3" }, /* ℳ [SCRIPT CAPITAL M]*/
316
+ {"Mfr", "\xf0\x9d\x94\x90" }, /* 𝔐 [MATHEMATICAL FRAKTUR CAPITAL M]*/
317
+ {"MinusPlus", "\xe2\x88\x93" }, /* ∓ [MINUS-OR-PLUS SIGN]*/
318
+ {"Mopf", "\xf0\x9d\x95\x84" }, /* 𝕄 [MATHEMATICAL DOUBLE-STRUCK CAPITAL M]*/
319
+ {"Mu", "\xce\x9c" }, /* Μ [GREEK CAPITAL LETTER MU] */
320
+ {"Mscr", "\xe2\x84\xb3" }, /* ℳ [SCRIPT CAPITAL M]*/
321
+ {"NJcy", "\xd0\x8a" }, /* Њ [CYRILLIC CAPITAL LETTER NJE]*/
322
+ {"Nacute", "\xc5\x83" }, /* Ń [LATIN CAPITAL LETTER N WITH ACUTE]*/
323
+ {"Ncaron", "\xc5\x87" }, /* Ň [LATIN CAPITAL LETTER N WITH CARON]*/
324
+ {"Ncedil", "\xc5\x85" }, /* Ņ [LATIN CAPITAL LETTER N WITH CEDILLA]*/
325
+ {"Ncy", "\xd0\x9d" }, /* Н [CYRILLIC CAPITAL LETTER EN]*/
326
+ {"NegativeMediumSpace", "\xe2\x80\x8b" }, /* ​ [ZERO WIDTH SPACE]*/
327
+ {"NegativeThickSpace", "\xe2\x80\x8b" }, /* ​ [ZERO WIDTH SPACE]*/
328
+ {"NegativeThinSpace", "\xe2\x80\x8b" }, /* ​ [ZERO WIDTH SPACE]*/
329
+ {"NegativeVeryThinSpace", "\xe2\x80\x8b" }, /* ​ [ZERO WIDTH SPACE]*/
330
+ {"NestedGreaterGreater", "\xe2\x89\xab" }, /* ≫ [MUCH GREATER-THAN]*/
331
+ {"NestedLessLess", "\xe2\x89\xaa" }, /* ≪ [MUCH LESS-THAN]*/
332
+ {"NewLine", "\xa" }, /*
333
+ [LINE FEED (LF)]*/
334
+ {"Nfr", "\xf0\x9d\x94\x91" }, /* 𝔑 [MATHEMATICAL FRAKTUR CAPITAL N]*/
335
+ {"NoBreak", "\xe2\x81\xa0" }, /* ⁠ [WORD JOINER]*/
336
+ {"NonBreakingSpace", "\xc2\xa0" }, /*   [NO-BREAK SPACE]*/
337
+ {"Nopf", "\xe2\x84\x95" }, /* ℕ [DOUBLE-STRUCK CAPITAL N]*/
338
+ {"Not", "\xe2\xab\xac" }, /* ⫬ [DOUBLE STROKE NOT SIGN]*/
339
+ {"NotCongruent", "\xe2\x89\xa2" }, /* ≢ [NOT IDENTICAL TO]*/
340
+ {"NotCupCap", "\xe2\x89\xad" }, /* ≭ [NOT EQUIVALENT TO]*/
341
+ {"NotDoubleVerticalBar", "\xe2\x88\xa6" }, /* ∦ [NOT PARALLEL TO]*/
342
+ {"NotElement", "\xe2\x88\x89" }, /* ∉ [NOT AN ELEMENT OF]*/
343
+ {"NotEqual", "\xe2\x89\xa0" }, /* ≠ [NOT EQUAL TO]*/
344
+ {"NotEqualTilde", "\xe2\x89\x82\xcc\xb8" }, /* ≂̸ [MINUS TILDE with slash]*/
345
+ {"NotExists", "\xe2\x88\x84" }, /* ∄ [THERE DOES NOT EXIST]*/
346
+ {"NotGreater", "\xe2\x89\xaf" }, /* ≯ [NOT GREATER-THAN]*/
347
+ {"NotGreaterEqual", "\xe2\x89\xb1" }, /* ≱ [NEITHER GREATER-THAN NOR EQUAL TO]*/
348
+ {"NotGreaterFullEqual", "\xe2\x89\xa6\xcc\xb8" }, /* ≦̸ [LESS-THAN OVER EQUAL TO with slash]*/
349
+ {"NotGreaterGreater", "\xe2\x89\xab\xcc\xb8" }, /* ≫̸ [MUCH GREATER THAN with slash]*/
350
+ {"NotGreaterLess", "\xe2\x89\xb9" }, /* ≹ [NEITHER GREATER-THAN NOR LESS-THAN]*/
351
+ {"NotGreaterSlantEqual", "\xe2\xa9\xbe\xcc\xb8" }, /* ⩾̸ [GREATER-THAN OR SLANTED EQUAL TO with slash]*/
352
+ {"NotGreaterTilde", "\xe2\x89\xb5" }, /* ≵ [NEITHER GREATER-THAN NOR EQUIVALENT TO]*/
353
+ {"NotHumpDownHump", "\xe2\x89\x8e\xcc\xb8" }, /* ≎̸ [GEOMETRICALLY EQUIVALENT TO with slash]*/
354
+ {"NotHumpEqual", "\xe2\x89\x8f\xcc\xb8" }, /* ≏̸ [DIFFERENCE BETWEEN with slash]*/
355
+ {"NotLeftTriangle", "\xe2\x8b\xaa" }, /* ⋪ [NOT NORMAL SUBGROUP OF]*/
356
+ {"NotLeftTriangleBar", "\xe2\xa7\x8f\xcc\xb8" }, /* ⧏̸ [LEFT TRIANGLE BESIDE VERTICAL BAR with slash]*/
357
+ {"NotLeftTriangleEqual", "\xe2\x8b\xac" }, /* ⋬ [NOT NORMAL SUBGROUP OF OR EQUAL TO]*/
358
+ {"NotLess", "\xe2\x89\xae" }, /* ≮ [NOT LESS-THAN]*/
359
+ {"NotLessEqual", "\xe2\x89\xb0" }, /* ≰ [NEITHER LESS-THAN NOR EQUAL TO]*/
360
+ {"NotLessGreater", "\xe2\x89\xb8" }, /* ≸ [NEITHER LESS-THAN NOR GREATER-THAN]*/
361
+ {"NotLessLess", "\xe2\x89\xaa\xcc\xb8" }, /* ≪̸ [MUCH LESS THAN with slash]*/
362
+ {"NotLessSlantEqual", "\xe2\xa9\xbd\xcc\xb8" }, /* ⩽̸ [LESS-THAN OR SLANTED EQUAL TO with slash]*/
363
+ {"NotLessTilde", "\xe2\x89\xb4" }, /* ≴ [NEITHER LESS-THAN NOR EQUIVALENT TO]*/
364
+ {"NotNestedGreaterGreater","\xe2\xaa\xa2\xcc\xb8" }, /* ⪢̸ [DOUBLE NESTED GREATER-THAN with slash]*/
365
+ {"NotNestedLessLess", "\xe2\xaa\xa1\xcc\xb8" }, /* ⪡̸ [DOUBLE NESTED LESS-THAN with slash]*/
366
+ {"NotPrecedes", "\xe2\x8a\x80" }, /* ⊀ [DOES NOT PRECEDE]*/
367
+ {"NotPrecedesEqual", "\xe2\xaa\xaf\xcc\xb8" }, /* ⪯̸ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
368
+ {"NotPrecedesSlantEqual", "\xe2\x8b\xa0" }, /* ⋠ [DOES NOT PRECEDE OR EQUAL]*/
369
+ {"NotReverseElement", "\xe2\x88\x8c" }, /* ∌ [DOES NOT CONTAIN AS MEMBER]*/
370
+ {"NotRightTriangle", "\xe2\x8b\xab" }, /* ⋫ [DOES NOT CONTAIN AS NORMAL SUBGROUP]*/
371
+ {"NotRightTriangleBar", "\xe2\xa7\x90\xcc\xb8" }, /* ⧐̸ [VERTICAL BAR BESIDE RIGHT TRIANGLE with slash]*/
372
+ {"NotRightTriangleEqual", "\xe2\x8b\xad" }, /* ⋭ [DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL]*/
373
+ {"NotSquareSubset", "\xe2\x8a\x8f\xcc\xb8" }, /* ⊏̸ [SQUARE IMAGE OF with slash]*/
374
+ {"NotSquareSubsetEqual", "\xe2\x8b\xa2" }, /* ⋢ [NOT SQUARE IMAGE OF OR EQUAL TO]*/
375
+ {"NotSquareSuperset", "\xe2\x8a\x90\xcc\xb8" }, /* ⊐̸ [SQUARE ORIGINAL OF with slash]*/
376
+ {"NotSquareSupersetEqual","\xe2\x8b\xa3" }, /* ⋣ [NOT SQUARE ORIGINAL OF OR EQUAL TO]*/
377
+ {"NotSubset", "\xe2\x8a\x82\xe2\x83\x92"}, /* ⊂⃒ [SUBSET OF with vertical line]*/
378
+ {"NotSubsetEqual", "\xe2\x8a\x88" }, /* ⊈ [NEITHER A SUBSET OF NOR EQUAL TO]*/
379
+ {"NotSucceeds", "\xe2\x8a\x81" }, /* ⊁ [DOES NOT SUCCEED]*/
380
+ {"NotSucceedsEqual", "\xe2\xaa\xb0\xcc\xb8" }, /* ⪰̸ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
381
+ {"NotSucceedsSlantEqual", "\xe2\x8b\xa1" }, /* ⋡ [DOES NOT SUCCEED OR EQUAL]*/
382
+ {"NotSucceedsTilde", "\xe2\x89\xbf\xcc\xb8" }, /* ≿̸ [SUCCEEDS OR EQUIVALENT TO with slash]*/
383
+ {"NotSuperset", "\xe2\x8a\x83\xe2\x83\x92"}, /* ⊃⃒ [SUPERSET OF with vertical line]*/
384
+ {"NotSupersetEqual", "\xe2\x8a\x89" }, /* ⊉ [NEITHER A SUPERSET OF NOR EQUAL TO]*/
385
+ {"NotTilde", "\xe2\x89\x81" }, /* ≁ [NOT TILDE]*/
386
+ {"NotTildeEqual", "\xe2\x89\x84" }, /* ≄ [NOT ASYMPTOTICALLY EQUAL TO]*/
387
+ {"NotTildeFullEqual", "\xe2\x89\x87" }, /* ≇ [NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO]*/
388
+ {"NotTildeTilde", "\xe2\x89\x89" }, /* ≉ [NOT ALMOST EQUAL TO]*/
389
+ {"NotVerticalBar", "\xe2\x88\xa4" }, /* ∤ [DOES NOT DIVIDE]*/
390
+ {"Nscr", "\xf0\x9d\x92\xa9" }, /* 𝒩 [MATHEMATICAL SCRIPT CAPITAL N]*/
391
+ {"Ntilde", "\xc3\x91" }, /* Ñ [LATIN CAPITAL LETTER N WITH TILDE]*/
392
+ {"Nu", "\xce\x9d" }, /* Ν [GREEK CAPITAL LETTER NU] */
393
+ {"OElig", "\xc5\x92" }, /* Œ [LATIN CAPITAL LIGATURE OE]*/
394
+ {"Oacute", "\xc3\x93" }, /* Ó [LATIN CAPITAL LETTER O WITH ACUTE]*/
395
+ {"Ocirc", "\xc3\x94" }, /* Ô [LATIN CAPITAL LETTER O WITH CIRCUMFLEX]*/
396
+ {"Ocy", "\xd0\x9e" }, /* О [CYRILLIC CAPITAL LETTER O]*/
397
+ {"Odblac", "\xc5\x90" }, /* Ő [LATIN CAPITAL LETTER O WITH DOUBLE ACUTE]*/
398
+ {"Ofr", "\xf0\x9d\x94\x92" }, /* 𝔒 [MATHEMATICAL FRAKTUR CAPITAL O]*/
399
+ {"Ograve", "\xc3\x92" }, /* Ò [LATIN CAPITAL LETTER O WITH GRAVE]*/
400
+ {"Omacr", "\xc5\x8c" }, /* Ō [LATIN CAPITAL LETTER O WITH MACRON]*/
401
+ {"Omega", "\xce\xa9" }, /* Ω [GREEK CAPITAL LETTER OMEGA]*/
402
+ {"Oopf", "\xf0\x9d\x95\x86" }, /* 𝕆 [MATHEMATICAL DOUBLE-STRUCK CAPITAL O]*/
403
+ {"OpenCurlyDoubleQuote", "\xe2\x80\x9c" }, /* “ [LEFT DOUBLE QUOTATION MARK]*/
404
+ {"OpenCurlyQuote", "\xe2\x80\x98" }, /* ‘ [LEFT SINGLE QUOTATION MARK]*/
405
+ {"Or", "\xe2\xa9\x94" }, /* ⩔ [DOUBLE LOGICAL OR]*/
406
+ {"Oscr", "\xf0\x9d\x92\xaa" }, /* 𝒪 [MATHEMATICAL SCRIPT CAPITAL O]*/
407
+ {"Oslash", "\xc3\x98" }, /* Ø [LATIN CAPITAL LETTER O WITH STROKE]*/
408
+ {"Otilde", "\xc3\x95" }, /* Õ [LATIN CAPITAL LETTER O WITH TILDE]*/
409
+ {"Otimes", "\xe2\xa8\xb7" }, /* ⨷ [MULTIPLICATION SIGN IN DOUBLE CIRCLE]*/
410
+ {"Ouml", "\xc3\x96" }, /* Ö [LATIN CAPITAL LETTER O WITH DIAERESIS]*/
411
+ {"OverBar", "\xc2\xaf" }, /* ¯ [MACRON]*/
412
+ {"OverBrace", "\xef\xb8\xb7" }, /* ︷ [PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET]*/
413
+ {"OverBracket", "\xe2\x8e\xb4" }, /* ⎴ [TOP SQUARE BRACKET]*/
414
+ {"OverParenthesis", "\xef\xb8\xb5" }, /* ︵ [PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS]*/
415
+ {"PartialD", "\xe2\x88\x82" }, /* ∂ [PARTIAL DIFFERENTIAL]*/
416
+ {"Pcy", "\xd0\x9f" }, /* П [CYRILLIC CAPITAL LETTER PE]*/
417
+ {"Pfr", "\xf0\x9d\x94\x93" }, /* 𝔓 [MATHEMATICAL FRAKTUR CAPITAL P]*/
418
+ {"Phi", "\xce\xa6" }, /* Φ [GREEK CAPITAL LETTER PHI]*/
419
+ {"Pi", "\xce\xa0" }, /* Π [GREEK CAPITAL LETTER PI]*/
420
+ {"PlusMinus", "\xc2\xb1" }, /* ± [PLUS-MINUS SIGN]*/
421
+ {"Poincareplane", "\xe2\x84\x8c" }, /* ℌ [BLACK-LETTER CAPITAL H]*/
422
+ {"Popf", "\xe2\x84\x99" }, /* ℙ [DOUBLE-STRUCK CAPITAL P]*/
423
+ {"Pr", "\xe2\xaa\xbb" }, /* ⪻ [DOUBLE PRECEDES]*/
424
+ {"Precedes", "\xe2\x89\xba" }, /* ≺ [PRECEDES]*/
425
+ {"PrecedesEqual", "\xe2\xaa\xaf" }, /* ⪯ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN]*/
426
+ {"PrecedesSlantEqual", "\xe2\x89\xbc" }, /* ≼ [PRECEDES OR EQUAL TO]*/
427
+ {"PrecedesTilde", "\xe2\x89\xbe" }, /* ≾ [PRECEDES OR EQUIVALENT TO]*/
428
+ {"Prime", "\xe2\x80\xb3" }, /* ″ [DOUBLE PRIME]*/
429
+ {"Product", "\xe2\x88\x8f" }, /* ∏ [N-ARY PRODUCT]*/
430
+ {"Proportion", "\xe2\x88\xb7" }, /* ∷ [PROPORTION]*/
431
+ {"Proportional", "\xe2\x88\x9d" }, /* ∝ [PROPORTIONAL TO]*/
432
+ {"Pscr", "\xf0\x9d\x92\xab" }, /* 𝒫 [MATHEMATICAL SCRIPT CAPITAL P]*/
433
+ {"Psi", "\xce\xa8" }, /* Ψ [GREEK CAPITAL LETTER PSI]*/
434
+ {"Qfr", "\xf0\x9d\x94\x94" }, /* 𝔔 [MATHEMATICAL FRAKTUR CAPITAL Q]*/
435
+ {"Qopf", "\xe2\x84\x9a" }, /* ℚ [DOUBLE-STRUCK CAPITAL Q]*/
436
+ {"Qscr", "\xf0\x9d\x92\xac" }, /* 𝒬 [MATHEMATICAL SCRIPT CAPITAL Q]*/
437
+ {"RBarr", "\xe2\xa4\x90" }, /* ⤐ [RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW]*/
438
+ {"Racute", "\xc5\x94" }, /* Ŕ [LATIN CAPITAL LETTER R WITH ACUTE]*/
439
+ {"Rang", "\xe3\x80\x8b" }, /* 》 [RIGHT DOUBLE ANGLE BRACKET]*/
440
+ {"Rarr", "\xe2\x86\xa0" }, /* ↠ [RIGHTWARDS TWO HEADED ARROW]*/
441
+ {"Rarrtl", "\xe2\xa4\x96" }, /* ⤖ [RIGHTWARDS TWO-HEADED ARROW WITH TAIL]*/
442
+ {"Rcaron", "\xc5\x98" }, /* Ř [LATIN CAPITAL LETTER R WITH CARON]*/
443
+ {"Rcedil", "\xc5\x96" }, /* Ŗ [LATIN CAPITAL LETTER R WITH CEDILLA]*/
444
+ {"Rcy", "\xd0\xa0" }, /* Р [CYRILLIC CAPITAL LETTER ER]*/
445
+ {"Re", "\xe2\x84\x9c" }, /* ℜ [BLACK-LETTER CAPITAL R]*/
446
+ {"ReverseElement", "\xe2\x88\x8b" }, /* ∋ [CONTAINS AS MEMBER]*/
447
+ {"ReverseEquilibrium", "\xe2\x87\x8b" }, /* ⇋ [LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON]*/
448
+ {"ReverseUpEquilibrium", "\xe2\xa5\xaf" }, /* ⥯ [DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT]*/
449
+ {"Rfr", "\xe2\x84\x9c" }, /* ℜ [BLACK-LETTER CAPITAL R]*/
450
+ {"Rho", "\xce\xa1" }, /* Ρ [GREEK CAPITAL LETTER RHO] */
451
+ {"RightAngleBracket", "\xe2\x8c\xaa" }, /* 〉 [RIGHT-POINTING ANGLE BRACKET]*/
452
+ {"RightArrow", "\xe2\x86\x92" }, /* → [RIGHTWARDS ARROW]*/
453
+ {"RightArrowBar", "\xe2\x87\xa5" }, /* ⇥ [RIGHTWARDS ARROW TO BAR]*/
454
+ {"RightArrowLeftArrow", "\xe2\x87\x84" }, /* ⇄ [RIGHTWARDS ARROW OVER LEFTWARDS ARROW]*/
455
+ {"RightCeiling", "\xe2\x8c\x89" }, /* ⌉ [RIGHT CEILING]*/
456
+ {"RightDoubleBracket", "\xe3\x80\x9b" }, /* 〛 [RIGHT WHITE SQUARE BRACKET]*/
457
+ {"RightDownTeeVector", "\xe2\xa5\x9d" }, /* ⥝ [DOWNWARDS HARPOON WITH BARB RIGHT FROM BAR]*/
458
+ {"RightDownVector", "\xe2\x87\x82" }, /* ⇂ [DOWNWARDS HARPOON WITH BARB RIGHTWARDS]*/
459
+ {"RightDownVectorBar", "\xe2\xa5\x95" }, /* ⥕ [DOWNWARDS HARPOON WITH BARB RIGHT TO BAR]*/
460
+ {"RightFloor", "\xe2\x8c\x8b" }, /* ⌋ [RIGHT FLOOR]*/
461
+ {"RightTee", "\xe2\x8a\xa2" }, /* ⊢ [RIGHT TACK]*/
462
+ {"RightTeeArrow", "\xe2\x86\xa6" }, /* ↦ [RIGHTWARDS ARROW FROM BAR]*/
463
+ {"RightTeeVector", "\xe2\xa5\x9b" }, /* ⥛ [RIGHTWARDS HARPOON WITH BARB UP FROM BAR]*/
464
+ {"RightTriangle", "\xe2\x8a\xb3" }, /* ⊳ [CONTAINS AS NORMAL SUBGROUP]*/
465
+ {"RightTriangleBar", "\xe2\xa7\x90" }, /* ⧐ [VERTICAL BAR BESIDE RIGHT TRIANGLE]*/
466
+ {"RightTriangleEqual", "\xe2\x8a\xb5" }, /* ⊵ [CONTAINS AS NORMAL SUBGROUP OR EQUAL TO]*/
467
+ {"RightUpDownVector", "\xe2\xa5\x8f" }, /* ⥏ [UP BARB RIGHT DOWN BARB RIGHT HARPOON]*/
468
+ {"RightUpTeeVector", "\xe2\xa5\x9c" }, /* ⥜ [UPWARDS HARPOON WITH BARB RIGHT FROM BAR]*/
469
+ {"RightUpVector", "\xe2\x86\xbe" }, /* ↾ [UPWARDS HARPOON WITH BARB RIGHTWARDS]*/
470
+ {"RightUpVectorBar", "\xe2\xa5\x94" }, /* ⥔ [UPWARDS HARPOON WITH BARB RIGHT TO BAR]*/
471
+ {"RightVector", "\xe2\x87\x80" }, /* ⇀ [RIGHTWARDS HARPOON WITH BARB UPWARDS]*/
472
+ {"RightVectorBar", "\xe2\xa5\x93" }, /* ⥓ [RIGHTWARDS HARPOON WITH BARB UP TO BAR]*/
473
+ {"Rightarrow", "\xe2\x87\x92" }, /* ⇒ [RIGHTWARDS DOUBLE ARROW]*/
474
+ {"Ropf", "\xe2\x84\x9d" }, /* ℝ [DOUBLE-STRUCK CAPITAL R]*/
475
+ {"RoundImplies", "\xe2\xa5\xb0" }, /* ⥰ [RIGHT DOUBLE ARROW WITH ROUNDED HEAD]*/
476
+ {"Rrightarrow", "\xe2\x87\x9b" }, /* ⇛ [RIGHTWARDS TRIPLE ARROW]*/
477
+ {"Rscr", "\xe2\x84\x9b" }, /* ℛ [SCRIPT CAPITAL R]*/
478
+ {"Rsh", "\xe2\x86\xb1" }, /* ↱ [UPWARDS ARROW WITH TIP RIGHTWARDS]*/
479
+ {"RuleDelayed", "\xe2\xa7\xb4" }, /* ⧴ [RULE-DELAYED]*/
480
+ {"SHCHcy", "\xd0\xa9" }, /* Щ [CYRILLIC CAPITAL LETTER SHCHA]*/
481
+ {"SHcy", "\xd0\xa8" }, /* Ш [CYRILLIC CAPITAL LETTER SHA]*/
482
+ {"SOFTcy", "\xd0\xac" }, /* Ь [CYRILLIC CAPITAL LETTER SOFT SIGN]*/
483
+ {"Sacute", "\xc5\x9a" }, /* Ś [LATIN CAPITAL LETTER S WITH ACUTE]*/
484
+ {"Sc", "\xe2\xaa\xbc" }, /* ⪼ [DOUBLE SUCCEEDS]*/
485
+ {"Scaron", "\xc5\xa0" }, /* Š [LATIN CAPITAL LETTER S WITH CARON]*/
486
+ {"Scedil", "\xc5\x9e" }, /* Ş [LATIN CAPITAL LETTER S WITH CEDILLA]*/
487
+ {"Scirc", "\xc5\x9c" }, /* Ŝ [LATIN CAPITAL LETTER S WITH CIRCUMFLEX]*/
488
+ {"Scy", "\xd0\xa1" }, /* С [CYRILLIC CAPITAL LETTER ES]*/
489
+ {"Sfr", "\xf0\x9d\x94\x96" }, /* 𝔖 [MATHEMATICAL FRAKTUR CAPITAL S]*/
490
+ #if 0
491
+ {"ShortDownArrow", "\xe2\x86\x93" }, /* ↓ [DOWNWARDS ARROW]*/
492
+ {"ShortLeftArrow", "\xe2\x86\x90" }, /* ← [LEFTWARDS ARROW]*/
493
+ {"ShortRightArrow", "\xe2\x86\x92" }, /* → [RIGHTWARDS ARROW]*/
494
+ {"ShortUpArrow", "\xe2\x86\x91" }, /* ↑ [UPWARDS ARROW]*/
495
+ #endif
496
+ {"Sigma", "\xce\xa3" }, /* Σ [GREEK CAPITAL LETTER SIGMA]*/
497
+ {"SmallCircle", "\xe2\x88\x98" }, /* ∘ [RING OPERATOR]*/
498
+ {"Sopf", "\xf0\x9d\x95\x8a" }, /* 𝕊 [MATHEMATICAL DOUBLE-STRUCK CAPITAL S]*/
499
+ {"Sqrt", "\xe2\x88\x9a" }, /* √ [SQUARE ROOT]*/
500
+ {"Square", "\xe2\x96\xa1" }, /* □ [WHITE SQUARE]*/
501
+ {"SquareIntersection", "\xe2\x8a\x93" }, /* ⊓ [SQUARE CAP]*/
502
+ {"SquareSubset", "\xe2\x8a\x8f" }, /* ⊏ [SQUARE IMAGE OF]*/
503
+ {"SquareSubsetEqual", "\xe2\x8a\x91" }, /* ⊑ [SQUARE IMAGE OF OR EQUAL TO]*/
504
+ {"SquareSuperset", "\xe2\x8a\x90" }, /* ⊐ [SQUARE ORIGINAL OF]*/
505
+ {"SquareSupersetEqual", "\xe2\x8a\x92" }, /* ⊒ [SQUARE ORIGINAL OF OR EQUAL TO]*/
506
+ {"SquareUnion", "\xe2\x8a\x94" }, /* ⊔ [SQUARE CUP]*/
507
+ {"Sscr", "\xf0\x9d\x92\xae" }, /* 𝒮 [MATHEMATICAL SCRIPT CAPITAL S]*/
508
+ {"Star", "\xe2\x8b\x86" }, /* ⋆ [STAR OPERATOR]*/
509
+ {"Sub", "\xe2\x8b\x90" }, /* ⋐ [DOUBLE SUBSET]*/
510
+ {"Subset", "\xe2\x8b\x90" }, /* ⋐ [DOUBLE SUBSET]*/
511
+ {"SubsetEqual", "\xe2\x8a\x86" }, /* ⊆ [SUBSET OF OR EQUAL TO]*/
512
+ {"Succeeds", "\xe2\x89\xbb" }, /* ≻ [SUCCEEDS]*/
513
+ {"SucceedsEqual", "\xe2\xaa\xb0" }, /* ⪰ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN]*/
514
+ {"SucceedsSlantEqual", "\xe2\x89\xbd" }, /* ≽ [SUCCEEDS OR EQUAL TO]*/
515
+ {"SucceedsTilde", "\xe2\x89\xbf" }, /* ≿ [SUCCEEDS OR EQUIVALENT TO]*/
516
+ {"SuchThat", "\xe2\x88\x8b" }, /* ∋ [CONTAINS AS MEMBER]*/
517
+ {"Sum", "\xe2\x88\x91" }, /* ∑ [N-ARY SUMMATION]*/
518
+ {"Sup", "\xe2\x8b\x91" }, /* ⋑ [DOUBLE SUPERSET]*/
519
+ {"Superset", "\xe2\x8a\x83" }, /* ⊃ [SUPERSET OF]*/
520
+ {"SupersetEqual", "\xe2\x8a\x87" }, /* ⊇ [SUPERSET OF OR EQUAL TO]*/
521
+ {"Supset", "\xe2\x8b\x91" }, /* ⋑ [DOUBLE SUPERSET]*/
522
+ {"THORN", "\xc3\x9e" }, /* Þ [LATIN CAPITAL LETTER THORN]*/
523
+ {"TSHcy", "\xd0\x8b" }, /* Ћ [CYRILLIC CAPITAL LETTER TSHE]*/
524
+ {"TScy", "\xd0\xa6" }, /* Ц [CYRILLIC CAPITAL LETTER TSE]*/
525
+ {"Tab", "\x9" }, /* [CHARACTER TABULATION]*/
526
+ {"Tau", "\xce\xa4" }, /* Τ [GREEK CAPITAL LETTER TAU] */
527
+ {"Tcaron", "\xc5\xa4" }, /* Ť [LATIN CAPITAL LETTER T WITH CARON]*/
528
+ {"Tcedil", "\xc5\xa2" }, /* Ţ [LATIN CAPITAL LETTER T WITH CEDILLA]*/
529
+ {"Tcy", "\xd0\xa2" }, /* Т [CYRILLIC CAPITAL LETTER TE]*/
530
+ {"Tfr", "\xf0\x9d\x94\x97" }, /* 𝔗 [MATHEMATICAL FRAKTUR CAPITAL T]*/
531
+ {"Therefore", "\xe2\x88\xb4" }, /* ∴ [THEREFORE]*/
532
+ {"Theta", "\xce\x98" }, /* Θ [GREEK CAPITAL LETTER THETA]*/
533
+ {"ThickSpace", "\xe2\x80\x89\xe2\x80\x8a\xe2\x80\x8a"}, /*     [space of width 5/18 em]*/
534
+ {"ThinSpace", "\xe2\x80\x89" }, /*   [THIN SPACE]*/
535
+ {"Tilde", "\xe2\x88\xbc" }, /* ∼ [TILDE OPERATOR]*/
536
+ {"TildeEqual", "\xe2\x89\x83" }, /* ≃ [ASYMPTOTICALLY EQUAL TO]*/
537
+ {"TildeFullEqual", "\xe2\x89\x85" }, /* ≅ [APPROXIMATELY EQUAL TO]*/
538
+ {"TildeTilde", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
539
+ {"Topf", "\xf0\x9d\x95\x8b" }, /* 𝕋 [MATHEMATICAL DOUBLE-STRUCK CAPITAL T]*/
540
+ {"TripleDot", "\xe2\x83\x9b" }, /* ⃛ [COMBINING THREE DOTS ABOVE]*/
541
+ {"Tscr", "\xf0\x9d\x92\xaf" }, /* 𝒯 [MATHEMATICAL SCRIPT CAPITAL T]*/
542
+ {"Tstrok", "\xc5\xa6" }, /* Ŧ [LATIN CAPITAL LETTER T WITH STROKE]*/
543
+ {"Uacute", "\xc3\x9a" }, /* Ú [LATIN CAPITAL LETTER U WITH ACUTE]*/
544
+ {"Uarr", "\xe2\x86\x9f" }, /* ↟ [UPWARDS TWO HEADED ARROW]*/
545
+ {"Uarrocir", "\xe2\xa5\x89" }, /* ⥉ [UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE]*/
546
+ {"Ubrcy", "\xd0\x8e" }, /* Ў [CYRILLIC CAPITAL LETTER SHORT U]*/
547
+ {"Ubreve", "\xc5\xac" }, /* Ŭ [LATIN CAPITAL LETTER U WITH BREVE]*/
548
+ {"Ucirc", "\xc3\x9b" }, /* Û [LATIN CAPITAL LETTER U WITH CIRCUMFLEX]*/
549
+ {"Ucy", "\xd0\xa3" }, /* У [CYRILLIC CAPITAL LETTER U]*/
550
+ {"Udblac", "\xc5\xb0" }, /* Ű [LATIN CAPITAL LETTER U WITH DOUBLE ACUTE]*/
551
+ {"Ufr", "\xf0\x9d\x94\x98" }, /* 𝔘 [MATHEMATICAL FRAKTUR CAPITAL U]*/
552
+ {"Ugrave", "\xc3\x99" }, /* Ù [LATIN CAPITAL LETTER U WITH GRAVE]*/
553
+ {"Umacr", "\xc5\xaa" }, /* Ū [LATIN CAPITAL LETTER U WITH MACRON]*/
554
+ {"UnderBar", "\xcc\xb2" }, /* ̲ [COMBINING LOW LINE]*/
555
+ {"UnderBrace", "\xef\xb8\xb8" }, /* ︸ [PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET]*/
556
+ {"UnderBracket", "\xe2\x8e\xb5" }, /* ⎵ [BOTTOM SQUARE BRACKET]*/
557
+ {"UnderParenthesis", "\xef\xb8\xb6" }, /* ︶ [PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS]*/
558
+ {"Union", "\xe2\x8b\x83" }, /* ⋃ [N-ARY UNION]*/
559
+ {"UnionPlus", "\xe2\x8a\x8e" }, /* ⊎ [MULTISET UNION]*/
560
+ {"Uogon", "\xc5\xb2" }, /* Ų [LATIN CAPITAL LETTER U WITH OGONEK]*/
561
+ {"Uopf", "\xf0\x9d\x95\x8c" }, /* 𝕌 [MATHEMATICAL DOUBLE-STRUCK CAPITAL U]*/
562
+ {"UpArrow", "\xe2\x86\x91" }, /* ↑ [UPWARDS ARROW]*/
563
+ {"UpArrowBar", "\xe2\xa4\x92" }, /* ⤒ [UPWARDS ARROW TO BAR]*/
564
+ {"UpArrowDownArrow", "\xe2\x87\x85" }, /* ⇅ [UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW]*/
565
+ {"UpDownArrow", "\xe2\x86\x95" }, /* ↕ [UP DOWN ARROW]*/
566
+ {"UpEquilibrium", "\xe2\xa5\xae" }, /* ⥮ [UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT]*/
567
+ {"UpTee", "\xe2\x8a\xa5" }, /* ⊥ [UP TACK]*/
568
+ {"UpTeeArrow", "\xe2\x86\xa5" }, /* ↥ [UPWARDS ARROW FROM BAR]*/
569
+ {"Uparrow", "\xe2\x87\x91" }, /* ⇑ [UPWARDS DOUBLE ARROW]*/
570
+ {"Updownarrow", "\xe2\x87\x95" }, /* ⇕ [UP DOWN DOUBLE ARROW]*/
571
+ {"UpperLeftArrow", "\xe2\x86\x96" }, /* ↖ [NORTH WEST ARROW]*/
572
+ {"UpperRightArrow", "\xe2\x86\x97" }, /* ↗ [NORTH EAST ARROW]*/
573
+ {"Upsi", "\xcf\x92" }, /* ϒ [GREEK UPSILON WITH HOOK SYMBOL]*/
574
+ {"Upsilon", "\xce\xa5" }, /* Υ [GREEK CAPITAL LETTER UPSILON]*/
575
+ {"Uring", "\xc5\xae" }, /* Ů [LATIN CAPITAL LETTER U WITH RING ABOVE]*/
576
+ {"Uscr", "\xf0\x9d\x92\xb0" }, /* 𝒰 [MATHEMATICAL SCRIPT CAPITAL U]*/
577
+ {"Utilde", "\xc5\xa8" }, /* Ũ [LATIN CAPITAL LETTER U WITH TILDE]*/
578
+ {"Uuml", "\xc3\x9c" }, /* Ü [LATIN CAPITAL LETTER U WITH DIAERESIS]*/
579
+ {"VDash", "\xe2\x8a\xab" }, /* ⊫ [DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE]*/
580
+ {"Vbar", "\xe2\xab\xab" }, /* ⫫ [DOUBLE UP TACK]*/
581
+ {"Vcy", "\xd0\x92" }, /* В [CYRILLIC CAPITAL LETTER VE]*/
582
+ {"Vdash", "\xe2\x8a\xa9" }, /* ⊩ [FORCES]*/
583
+ {"Vdashl", "\xe2\xab\xa6" }, /* ⫦ [LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL]*/
584
+ {"Vee", "\xe2\x8b\x81" }, /* ⋁ [N-ARY LOGICAL OR]*/
585
+ {"Verbar", "\xe2\x80\x96" }, /* ‖ [DOUBLE VERTICAL LINE]*/
586
+ {"Vert", "\xe2\x80\x96" }, /* ‖ [DOUBLE VERTICAL LINE]*/
587
+ {"VerticalBar", "\xe2\x88\xa3" }, /* ∣ [DIVIDES]*/
588
+ {"VerticalLine", "\x7c" }, /* | [VERTICAL LINE]*/
589
+ {"VerticalSeparator", "\xe2\x9d\x98" }, /* ❘ [LIGHT VERTICAL BAR]*/
590
+ {"VerticalTilde", "\xe2\x89\x80" }, /* ≀ [WREATH PRODUCT]*/
591
+ {"VeryThinSpace", "\xe2\x80\x8a" }, /*   [HAIR SPACE]*/
592
+ {"Vfr", "\xf0\x9d\x94\x99" }, /* 𝔙 [MATHEMATICAL FRAKTUR CAPITAL V]*/
593
+ {"Vopf", "\xf0\x9d\x95\x8d" }, /* 𝕍 [MATHEMATICAL DOUBLE-STRUCK CAPITAL V]*/
594
+ {"Vscr", "\xf0\x9d\x92\xb1" }, /* 𝒱 [MATHEMATICAL SCRIPT CAPITAL V]*/
595
+ {"Vvdash", "\xe2\x8a\xaa" }, /* ⊪ [TRIPLE VERTICAL BAR RIGHT TURNSTILE]*/
596
+ {"Wcirc", "\xc5\xb4" }, /* Ŵ [LATIN CAPITAL LETTER W WITH CIRCUMFLEX]*/
597
+ {"Wedge", "\xe2\x8b\x80" }, /* ⋀ [N-ARY LOGICAL AND]*/
598
+ {"Wfr", "\xf0\x9d\x94\x9a" }, /* 𝔚 [MATHEMATICAL FRAKTUR CAPITAL W]*/
599
+ {"Wopf", "\xf0\x9d\x95\x8e" }, /* 𝕎 [MATHEMATICAL DOUBLE-STRUCK CAPITAL W]*/
600
+ {"Wscr", "\xf0\x9d\x92\xb2" }, /* 𝒲 [MATHEMATICAL SCRIPT CAPITAL W]*/
601
+ {"Xfr", "\xf0\x9d\x94\x9b" }, /* 𝔛 [MATHEMATICAL FRAKTUR CAPITAL X]*/
602
+ {"Xi", "\xce\x9e" }, /* Ξ [GREEK CAPITAL LETTER XI]*/
603
+ {"Xopf", "\xf0\x9d\x95\x8f" }, /* 𝕏 [MATHEMATICAL DOUBLE-STRUCK CAPITAL X]*/
604
+ {"Xscr", "\xf0\x9d\x92\xb3" }, /* 𝒳 [MATHEMATICAL SCRIPT CAPITAL X]*/
605
+ {"YAcy", "\xd0\xaf" }, /* Я [CYRILLIC CAPITAL LETTER YA]*/
606
+ {"YIcy", "\xd0\x87" }, /* Ї [CYRILLIC CAPITAL LETTER YI]*/
607
+ {"YUcy", "\xd0\xae" }, /* Ю [CYRILLIC CAPITAL LETTER YU]*/
608
+ {"Yacute", "\xc3\x9d" }, /* Ý [LATIN CAPITAL LETTER Y WITH ACUTE]*/
609
+ {"Ycirc", "\xc5\xb6" }, /* Ŷ [LATIN CAPITAL LETTER Y WITH CIRCUMFLEX]*/
610
+ {"Ycy", "\xd0\xab" }, /* Ы [CYRILLIC CAPITAL LETTER YERU]*/
611
+ {"Yfr", "\xf0\x9d\x94\x9c" }, /* 𝔜 [MATHEMATICAL FRAKTUR CAPITAL Y]*/
612
+ {"Yopf", "\xf0\x9d\x95\x90" }, /* 𝕐 [MATHEMATICAL DOUBLE-STRUCK CAPITAL Y]*/
613
+ {"Yscr", "\xf0\x9d\x92\xb4" }, /* 𝒴 [MATHEMATICAL SCRIPT CAPITAL Y]*/
614
+ {"Yuml", "\xc5\xb8" }, /* Ÿ [LATIN CAPITAL LETTER Y WITH DIAERESIS]*/
615
+ {"ZHcy", "\xd0\x96" }, /* Ж [CYRILLIC CAPITAL LETTER ZHE]*/
616
+ {"Zacute", "\xc5\xb9" }, /* Ź [LATIN CAPITAL LETTER Z WITH ACUTE]*/
617
+ {"Zcaron", "\xc5\xbd" }, /* Ž [LATIN CAPITAL LETTER Z WITH CARON]*/
618
+ {"Zcy", "\xd0\x97" }, /* З [CYRILLIC CAPITAL LETTER ZE]*/
619
+ {"Zdot", "\xc5\xbb" }, /* Ż [LATIN CAPITAL LETTER Z WITH DOT ABOVE]*/
620
+ {"ZeroWidthSpace", "\xe2\x80\x8b" }, /* ​ [ZERO WIDTH SPACE]*/
621
+ {"Zeta", "\xce\x96" }, /* Ζ [GREEK CAPITAL LETTER ZETA] */
622
+ {"Zfr", "\xe2\x84\xa8" }, /* ℨ [BLACK-LETTER CAPITAL Z]*/
623
+ {"Zopf", "\xe2\x84\xa4" }, /* ℤ [DOUBLE-STRUCK CAPITAL Z]*/
624
+ {"Zscr", "\xf0\x9d\x92\xb5" }, /* 𝒵 [MATHEMATICAL SCRIPT CAPITAL Z]*/
625
+ {"aacute", "\xc3\xa1" }, /* á [LATIN SMALL LETTER A WITH ACUTE]*/
626
+ {"abreve", "\xc4\x83" }, /* ă [LATIN SMALL LETTER A WITH BREVE]*/
627
+ {"ac", "\xe2\x88\xbe" }, /* ∾ [INVERTED LAZY S]*/
628
+ {"acE", "\xe2\x88\xbe\xcc\xb3" }, /* ∾̳ [INVERTED LAZY S with double underline]*/
629
+ {"acd", "\xe2\x88\xbf" }, /* ∿ [SINE WAVE]*/
630
+ {"acirc", "\xc3\xa2" }, /* â [LATIN SMALL LETTER A WITH CIRCUMFLEX]*/
631
+ {"acute", "\xc2\xb4" }, /* ´ [ACUTE ACCENT]*/
632
+ {"acy", "\xd0\xb0" }, /* а [CYRILLIC SMALL LETTER A]*/
633
+ {"aelig", "\xc3\xa6" }, /* æ [LATIN SMALL LETTER AE]*/
634
+ {"af", "\xe2\x81\xa1" }, /* ⁡ [FUNCTION APPLICATION]*/
635
+ {"afr", "\xf0\x9d\x94\x9e" }, /* 𝔞 [MATHEMATICAL FRAKTUR SMALL A]*/
636
+ {"agrave", "\xc3\xa0" }, /* à [LATIN SMALL LETTER A WITH GRAVE]*/
637
+ {"aleph", "\xe2\x84\xb5" }, /* ℵ [ALEF SYMBOL]*/
638
+ {"alpha", "\xce\xb1" }, /* α [GREEK SMALL LETTER ALPHA]*/
639
+ {"amacr", "\xc4\x81" }, /* ā [LATIN SMALL LETTER A WITH MACRON]*/
640
+ {"amalg", "\xe2\xa8\xbf" }, /* ⨿ [AMALGAMATION OR COPRODUCT]*/
641
+ {"amp", "\x26" }, /* & [AMPERSAND]*/
642
+ {"and", "\xe2\x88\xa7" }, /* ∧ [LOGICAL AND]*/
643
+ {"andand", "\xe2\xa9\x95" }, /* ⩕ [TWO INTERSECTING LOGICAL AND]*/
644
+ {"andd", "\xe2\xa9\x9c" }, /* ⩜ [LOGICAL AND WITH HORIZONTAL DASH]*/
645
+ {"andslope", "\xe2\xa9\x98" }, /* ⩘ [SLOPING LARGE AND]*/
646
+ {"andv", "\xe2\xa9\x9a" }, /* ⩚ [LOGICAL AND WITH MIDDLE STEM]*/
647
+ {"ang", "\xe2\x88\xa0" }, /* ∠ [ANGLE]*/
648
+ {"ange", "\xe2\xa6\xa4" }, /* ⦤ [ANGLE WITH UNDERBAR]*/
649
+ {"angle", "\xe2\x88\xa0" }, /* ∠ [ANGLE]*/
650
+ {"angmsd", "\xe2\x88\xa1" }, /* ∡ [MEASURED ANGLE]*/
651
+ {"angmsdaa", "\xe2\xa6\xa8" }, /* ⦨ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT]*/
652
+ {"angmsdab", "\xe2\xa6\xa9" }, /* ⦩ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT]*/
653
+ {"angmsdac", "\xe2\xa6\xaa" }, /* ⦪ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT]*/
654
+ {"angmsdad", "\xe2\xa6\xab" }, /* ⦫ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT]*/
655
+ {"angmsdae", "\xe2\xa6\xac" }, /* ⦬ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP]*/
656
+ {"angmsdaf", "\xe2\xa6\xad" }, /* ⦭ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP]*/
657
+ {"angmsdag", "\xe2\xa6\xae" }, /* ⦮ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN]*/
658
+ {"angmsdah", "\xe2\xa6\xaf" }, /* ⦯ [MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN]*/
659
+ {"angrt", "\xe2\x88\x9f" }, /* ∟ [RIGHT ANGLE]*/
660
+ {"angrtvb", "\xe2\x8a\xbe" }, /* ⊾ [RIGHT ANGLE WITH ARC]*/
661
+ {"angrtvbd", "\xe2\xa6\x9d" }, /* ⦝ [MEASURED RIGHT ANGLE WITH DOT]*/
662
+ {"angsph", "\xe2\x88\xa2" }, /* ∢ [SPHERICAL ANGLE]*/
663
+ {"angst", "\xe2\x84\xab" }, /* Å [ANGSTROM SIGN]*/
664
+ {"angzarr", "\xe2\x8d\xbc" }, /* ⍼ [RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW]*/
665
+ {"aogon", "\xc4\x85" }, /* ą [LATIN SMALL LETTER A WITH OGONEK]*/
666
+ {"aopf", "\xf0\x9d\x95\x92" }, /* 𝕒 [MATHEMATICAL DOUBLE-STRUCK SMALL A]*/
667
+ {"ap", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
668
+ {"apE", "\xe2\xa9\xb0" }, /* ⩰ [APPROXIMATELY EQUAL OR EQUAL TO]*/
669
+ {"apacir", "\xe2\xa9\xaf" }, /* ⩯ [ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT]*/
670
+ {"ape", "\xe2\x89\x8a" }, /* ≊ [ALMOST EQUAL OR EQUAL TO]*/
671
+ {"apid", "\xe2\x89\x8b" }, /* ≋ [TRIPLE TILDE]*/
672
+ {"apos", "\x27" }, /* ' [APOSTROPHE]*/
673
+ {"approx", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
674
+ {"approxeq", "\xe2\x89\x8a" }, /* ≊ [ALMOST EQUAL OR EQUAL TO]*/
675
+ {"aring", "\xc3\xa5" }, /* å [LATIN SMALL LETTER A WITH RING ABOVE]*/
676
+ {"ascr", "\xf0\x9d\x92\xb6" }, /* 𝒶 [MATHEMATICAL SCRIPT SMALL A]*/
677
+ {"ast", "\x2a" }, /* * [ASTERISK]*/
678
+ {"asymp", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
679
+ {"asympeq", "\xe2\x89\x8d" }, /* ≍ [EQUIVALENT TO]*/
680
+ {"atilde", "\xc3\xa3" }, /* ã [LATIN SMALL LETTER A WITH TILDE]*/
681
+ {"auml", "\xc3\xa4" }, /* ä [LATIN SMALL LETTER A WITH DIAERESIS]*/
682
+ {"awconint", "\xe2\x88\xb3" }, /* ∳ [ANTICLOCKWISE CONTOUR INTEGRAL]*/
683
+ {"awint", "\xe2\xa8\x91" }, /* ⨑ [ANTICLOCKWISE INTEGRATION]*/
684
+ {"bNot", "\xe2\xab\xad" }, /* ⫭ [REVERSED DOUBLE STROKE NOT SIGN]*/
685
+ {"backcong", "\xe2\x89\x8c" }, /* ≌ [ALL EQUAL TO]*/
686
+ {"backepsilon", "\xcf\xb6" }, /* ϶ [GREEK REVERSED LUNATE EPSILON SYMBOL]*/
687
+ {"backprime", "\xe2\x80\xb5" }, /* ‵ [REVERSED PRIME]*/
688
+ {"backsim", "\xe2\x88\xbd" }, /* ∽ [REVERSED TILDE]*/
689
+ {"backsimeq", "\xe2\x8b\x8d" }, /* ⋍ [REVERSED TILDE EQUALS]*/
690
+ {"barvee", "\xe2\x8a\xbd" }, /* ⊽ [NOR]*/
691
+ {"barwed", "\xe2\x8c\x85" }, /* ⌅ [PROJECTIVE]*/
692
+ {"barwedge", "\xe2\x8c\x85" }, /* ⌅ [PROJECTIVE]*/
693
+ {"bbrk", "\xe2\x8e\xb5" }, /* ⎵ [BOTTOM SQUARE BRACKET]*/
694
+ {"bbrktbrk", "\xe2\x8e\xb6" }, /* ⎶ [BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET]*/
695
+ {"bcong", "\xe2\x89\x8c" }, /* ≌ [ALL EQUAL TO]*/
696
+ {"bcy", "\xd0\xb1" }, /* б [CYRILLIC SMALL LETTER BE]*/
697
+ {"becaus", "\xe2\x88\xb5" }, /* ∵ [BECAUSE]*/
698
+ {"because", "\xe2\x88\xb5" }, /* ∵ [BECAUSE]*/
699
+ {"bemptyv", "\xe2\xa6\xb0" }, /* ⦰ [REVERSED EMPTY SET]*/
700
+ {"bepsi", "\xcf\xb6" }, /* ϶ [GREEK REVERSED LUNATE EPSILON SYMBOL]*/
701
+ {"bernou", "\xe2\x84\xac" }, /* ℬ [SCRIPT CAPITAL B]*/
702
+ {"beta", "\xce\xb2" }, /* β [GREEK SMALL LETTER BETA]*/
703
+ {"beth", "\xe2\x84\xb6" }, /* ℶ [BET SYMBOL]*/
704
+ {"between", "\xe2\x89\xac" }, /* ≬ [BETWEEN]*/
705
+ {"bfr", "\xf0\x9d\x94\x9f" }, /* 𝔟 [MATHEMATICAL FRAKTUR SMALL B]*/
706
+ {"bigcap", "\xe2\x8b\x82" }, /* ⋂ [N-ARY INTERSECTION]*/
707
+ {"bigcirc", "\xe2\x97\xaf" }, /* ◯ [LARGE CIRCLE]*/
708
+ {"bigcup", "\xe2\x8b\x83" }, /* ⋃ [N-ARY UNION]*/
709
+ {"bigodot", "\xe2\xa8\x80" }, /* ⨀ [N-ARY CIRCLED DOT OPERATOR]*/
710
+ {"bigoplus", "\xe2\xa8\x81" }, /* ⨁ [N-ARY CIRCLED PLUS OPERATOR]*/
711
+ {"bigotimes", "\xe2\xa8\x82" }, /* ⨂ [N-ARY CIRCLED TIMES OPERATOR]*/
712
+ {"bigsqcup", "\xe2\xa8\x86" }, /* ⨆ [N-ARY SQUARE UNION OPERATOR]*/
713
+ {"bigstar", "\xe2\x98\x85" }, /* ★ [BLACK STAR]*/
714
+ {"bigtriangledown", "\xe2\x96\xbd" }, /* ▽ [WHITE DOWN-POINTING TRIANGLE]*/
715
+ {"bigtriangleup", "\xe2\x96\xb3" }, /* △ [WHITE UP-POINTING TRIANGLE]*/
716
+ {"biguplus", "\xe2\xa8\x84" }, /* ⨄ [N-ARY UNION OPERATOR WITH PLUS]*/
717
+ {"bigvee", "\xe2\x8b\x81" }, /* ⋁ [N-ARY LOGICAL OR]*/
718
+ {"bigwedge", "\xe2\x8b\x80" }, /* ⋀ [N-ARY LOGICAL AND]*/
719
+ {"bkarow", "\xe2\xa4\x8d" }, /* ⤍ [RIGHTWARDS DOUBLE DASH ARROW]*/
720
+ {"blacklozenge", "\xe2\xa7\xab" }, /* ⧫ [BLACK LOZENGE]*/
721
+ {"blacksquare", "\xe2\x96\xaa" }, /* ▪ [BLACK SMALL SQUARE]*/
722
+ {"blacktriangle", "\xe2\x96\xb4" }, /* ▴ [BLACK UP-POINTING SMALL TRIANGLE]*/
723
+ {"blacktriangledown", "\xe2\x96\xbe" }, /* ▾ [BLACK DOWN-POINTING SMALL TRIANGLE]*/
724
+ {"blacktriangleleft", "\xe2\x97\x82" }, /* ◂ [BLACK LEFT-POINTING SMALL TRIANGLE]*/
725
+ {"blacktriangleright", "\xe2\x96\xb8" }, /* ▸ [BLACK RIGHT-POINTING SMALL TRIANGLE]*/
726
+ {"blank", "\xe2\x90\xa3" }, /* ␣ [OPEN BOX]*/
727
+ {"blk12", "\xe2\x96\x92" }, /* ▒ [MEDIUM SHADE]*/
728
+ {"blk14", "\xe2\x96\x91" }, /* ░ [LIGHT SHADE]*/
729
+ {"blk34", "\xe2\x96\x93" }, /* ▓ [DARK SHADE]*/
730
+ {"block", "\xe2\x96\x88" }, /* █ [FULL BLOCK]*/
731
+ {"bne", "\x3d\xe2\x83\xa5" }, /* =⃥ [EQUALS SIGN with reverse slash]*/
732
+ {"bnequiv", "\xe2\x89\xa1\xe2\x83\xa5"}, /* ≡⃥ [IDENTICAL TO with reverse slash]*/
733
+ {"bnot", "\xe2\x8c\x90" }, /* ⌐ [REVERSED NOT SIGN]*/
734
+ {"bopf", "\xf0\x9d\x95\x93" }, /* 𝕓 [MATHEMATICAL DOUBLE-STRUCK SMALL B]*/
735
+ {"bot", "\xe2\x8a\xa5" }, /* ⊥ [UP TACK]*/
736
+ {"bottom", "\xe2\x8a\xa5" }, /* ⊥ [UP TACK]*/
737
+ {"bowtie", "\xe2\x8b\x88" }, /* ⋈ [BOWTIE]*/
738
+ {"boxDL", "\xe2\x95\x97" }, /* ╗ [BOX DRAWINGS DOUBLE DOWN AND LEFT]*/
739
+ {"boxDR", "\xe2\x95\x94" }, /* ╔ [BOX DRAWINGS DOUBLE DOWN AND RIGHT]*/
740
+ {"boxDl", "\xe2\x95\x96" }, /* ╖ [BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE]*/
741
+ {"boxDr", "\xe2\x95\x93" }, /* ╓ [BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE]*/
742
+ {"boxH", "\xe2\x95\x90" }, /* ═ [BOX DRAWINGS DOUBLE HORIZONTAL]*/
743
+ {"boxHD", "\xe2\x95\xa6" }, /* ╦ [BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL]*/
744
+ {"boxHU", "\xe2\x95\xa9" }, /* ╩ [BOX DRAWINGS DOUBLE UP AND HORIZONTAL]*/
745
+ {"boxHd", "\xe2\x95\xa4" }, /* ╤ [BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE]*/
746
+ {"boxHu", "\xe2\x95\xa7" }, /* ╧ [BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE]*/
747
+ {"boxUL", "\xe2\x95\x9d" }, /* ╝ [BOX DRAWINGS DOUBLE UP AND LEFT]*/
748
+ {"boxUR", "\xe2\x95\x9a" }, /* ╚ [BOX DRAWINGS DOUBLE UP AND RIGHT]*/
749
+ {"boxUl", "\xe2\x95\x9c" }, /* ╜ [BOX DRAWINGS UP DOUBLE AND LEFT SINGLE]*/
750
+ {"boxUr", "\xe2\x95\x99" }, /* ╙ [BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE]*/
751
+ {"boxV", "\xe2\x95\x91" }, /* ║ [BOX DRAWINGS DOUBLE VERTICAL]*/
752
+ {"boxVH", "\xe2\x95\xac" }, /* ╬ [BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL]*/
753
+ {"boxVL", "\xe2\x95\xa3" }, /* ╣ [BOX DRAWINGS DOUBLE VERTICAL AND LEFT]*/
754
+ {"boxVR", "\xe2\x95\xa0" }, /* ╠ [BOX DRAWINGS DOUBLE VERTICAL AND RIGHT]*/
755
+ {"boxVh", "\xe2\x95\xab" }, /* ╫ [BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE]*/
756
+ {"boxVl", "\xe2\x95\xa2" }, /* ╢ [BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE]*/
757
+ {"boxVr", "\xe2\x95\x9f" }, /* ╟ [BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE]*/
758
+ {"boxbox", "\xe2\xa7\x89" }, /* ⧉ [TWO JOINED SQUARES]*/
759
+ {"boxdL", "\xe2\x95\x95" }, /* ╕ [BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE]*/
760
+ {"boxdR", "\xe2\x95\x92" }, /* ╒ [BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE]*/
761
+ {"boxdl", "\xe2\x94\x90" }, /* ┐ [BOX DRAWINGS LIGHT DOWN AND LEFT]*/
762
+ {"boxdr", "\xe2\x94\x8c" }, /* ┌ [BOX DRAWINGS LIGHT DOWN AND RIGHT]*/
763
+ {"boxh", "\xe2\x94\x80" }, /* ─ [BOX DRAWINGS LIGHT HORIZONTAL]*/
764
+ {"boxhD", "\xe2\x95\xa5" }, /* ╥ [BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE]*/
765
+ {"boxhU", "\xe2\x95\xa8" }, /* ╨ [BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE]*/
766
+ {"boxhd", "\xe2\x94\xac" }, /* ┬ [BOX DRAWINGS LIGHT DOWN AND HORIZONTAL]*/
767
+ {"boxhu", "\xe2\x94\xb4" }, /* ┴ [BOX DRAWINGS LIGHT UP AND HORIZONTAL]*/
768
+ {"boxminus", "\xe2\x8a\x9f" }, /* ⊟ [SQUARED MINUS]*/
769
+ {"boxplus", "\xe2\x8a\x9e" }, /* ⊞ [SQUARED PLUS]*/
770
+ {"boxtimes", "\xe2\x8a\xa0" }, /* ⊠ [SQUARED TIMES]*/
771
+ {"boxuL", "\xe2\x95\x9b" }, /* ╛ [BOX DRAWINGS UP SINGLE AND LEFT DOUBLE]*/
772
+ {"boxuR", "\xe2\x95\x98" }, /* ╘ [BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE]*/
773
+ {"boxul", "\xe2\x94\x98" }, /* ┘ [BOX DRAWINGS LIGHT UP AND LEFT]*/
774
+ {"boxur", "\xe2\x94\x94" }, /* └ [BOX DRAWINGS LIGHT UP AND RIGHT]*/
775
+ {"boxv", "\xe2\x94\x82" }, /* │ [BOX DRAWINGS LIGHT VERTICAL]*/
776
+ {"boxvH", "\xe2\x95\xaa" }, /* ╪ [BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE]*/
777
+ {"boxvL", "\xe2\x95\xa1" }, /* ╡ [BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE]*/
778
+ {"boxvR", "\xe2\x95\x9e" }, /* ╞ [BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE]*/
779
+ {"boxvh", "\xe2\x94\xbc" }, /* ┼ [BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL]*/
780
+ {"boxvl", "\xe2\x94\xa4" }, /* ┤ [BOX DRAWINGS LIGHT VERTICAL AND LEFT]*/
781
+ {"boxvr", "\xe2\x94\x9c" }, /* ├ [BOX DRAWINGS LIGHT VERTICAL AND RIGHT]*/
782
+ {"bprime", "\xe2\x80\xb5" }, /* ‵ [REVERSED PRIME]*/
783
+ {"breve", "\xcb\x98" }, /* ˘ [BREVE]*/
784
+ {"brvbar", "\xc2\xa6" }, /* ¦ [BROKEN BAR]*/
785
+ {"bscr", "\xf0\x9d\x92\xb7" }, /* 𝒷 [MATHEMATICAL SCRIPT SMALL B]*/
786
+ {"bsemi", "\xe2\x81\x8f" }, /* ⁏ [REVERSED SEMICOLON]*/
787
+ {"bsim", "\xe2\x88\xbd" }, /* ∽ [REVERSED TILDE]*/
788
+ {"bsime", "\xe2\x8b\x8d" }, /* ⋍ [REVERSED TILDE EQUALS]*/
789
+ {"bsol", "\x5c" }, /* \ [REVERSE SOLIDUS]*/
790
+ {"bsolb", "\xe2\xa7\x85" }, /* ⧅ [SQUARED FALLING DIAGONAL SLASH]*/
791
+ {"bsolhsub", "\x5c\xe2\x8a\x82" }, /* \⊂ [REVERSE SOLIDUS, SUBSET OF]*/
792
+ {"bull", "\xe2\x80\xa2" }, /* • [BULLET]*/
793
+ {"bullet", "\xe2\x80\xa2" }, /* • [BULLET]*/
794
+ {"bump", "\xe2\x89\x8e" }, /* ≎ [GEOMETRICALLY EQUIVALENT TO]*/
795
+ {"bumpE", "\xe2\xaa\xae" }, /* ⪮ [EQUALS SIGN WITH BUMPY ABOVE]*/
796
+ {"bumpe", "\xe2\x89\x8f" }, /* ≏ [DIFFERENCE BETWEEN]*/
797
+ {"bumpeq", "\xe2\x89\x8f" }, /* ≏ [DIFFERENCE BETWEEN]*/
798
+ {"cacute", "\xc4\x87" }, /* ć [LATIN SMALL LETTER C WITH ACUTE]*/
799
+ {"cap", "\xe2\x88\xa9" }, /* ∩ [INTERSECTION]*/
800
+ {"capand", "\xe2\xa9\x84" }, /* ⩄ [INTERSECTION WITH LOGICAL AND]*/
801
+ {"capbrcup", "\xe2\xa9\x89" }, /* ⩉ [INTERSECTION ABOVE BAR ABOVE UNION]*/
802
+ {"capcap", "\xe2\xa9\x8b" }, /* ⩋ [INTERSECTION BESIDE AND JOINED WITH INTERSECTION]*/
803
+ {"capcup", "\xe2\xa9\x87" }, /* ⩇ [INTERSECTION ABOVE UNION]*/
804
+ {"capdot", "\xe2\xa9\x80" }, /* ⩀ [INTERSECTION WITH DOT]*/
805
+ {"caps", "\xe2\x88\xa9\xef\xb8\x80"}, /* ∩︀ [INTERSECTION with serifs]*/
806
+ {"caret", "\xe2\x81\x81" }, /* ⁁ [CARET INSERTION POINT]*/
807
+ {"caron", "\xcb\x87" }, /* ˇ [CARON]*/
808
+ {"ccaps", "\xe2\xa9\x8d" }, /* ⩍ [CLOSED INTERSECTION WITH SERIFS]*/
809
+ {"ccaron", "\xc4\x8d" }, /* č [LATIN SMALL LETTER C WITH CARON]*/
810
+ {"ccedil", "\xc3\xa7" }, /* ç [LATIN SMALL LETTER C WITH CEDILLA]*/
811
+ {"ccirc", "\xc4\x89" }, /* ĉ [LATIN SMALL LETTER C WITH CIRCUMFLEX]*/
812
+ {"ccups", "\xe2\xa9\x8c" }, /* ⩌ [CLOSED UNION WITH SERIFS]*/
813
+ {"ccupssm", "\xe2\xa9\x90" }, /* ⩐ [CLOSED UNION WITH SERIFS AND SMASH PRODUCT]*/
814
+ {"cdot", "\xc4\x8b" }, /* ċ [LATIN SMALL LETTER C WITH DOT ABOVE]*/
815
+ {"cedil", "\xc2\xb8" }, /* ¸ [CEDILLA]*/
816
+ {"cemptyv", "\xe2\xa6\xb2" }, /* ⦲ [EMPTY SET WITH SMALL CIRCLE ABOVE]*/
817
+ {"cent", "\xc2\xa2" }, /* ¢ [CENT SIGN]*/
818
+ {"centerdot", "\xc2\xb7" }, /* · [MIDDLE DOT]*/
819
+ {"cfr", "\xf0\x9d\x94\xa0" }, /* 𝔠 [MATHEMATICAL FRAKTUR SMALL C]*/
820
+ {"chcy", "\xd1\x87" }, /* ч [CYRILLIC SMALL LETTER CHE]*/
821
+ {"check", "\xe2\x9c\x93" }, /* ✓ [CHECK MARK]*/
822
+ {"checkmark", "\xe2\x9c\x93" }, /* ✓ [CHECK MARK]*/
823
+ {"chi", "\xcf\x87" }, /* χ [GREEK SMALL LETTER CHI]*/
824
+ {"cir", "\xe2\x97\x8b" }, /* ○ [WHITE CIRCLE]*/
825
+ {"cirE", "\xe2\xa7\x83" }, /* ⧃ [CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT]*/
826
+ {"circ", "\xcb\x86" }, /* ˆ [MODIFIER LETTER CIRCUMFLEX ACCENT]*/
827
+ {"circeq", "\xe2\x89\x97" }, /* ≗ [RING EQUAL TO]*/
828
+ {"circlearrowleft", "\xe2\x86\xba" }, /* ↺ [ANTICLOCKWISE OPEN CIRCLE ARROW]*/
829
+ {"circlearrowright", "\xe2\x86\xbb" }, /* ↻ [CLOCKWISE OPEN CIRCLE ARROW]*/
830
+ {"circledR", "\xc2\xae" }, /* ® [REGISTERED SIGN]*/
831
+ {"circledS", "\xe2\x93\x88" }, /* Ⓢ [CIRCLED LATIN CAPITAL LETTER S]*/
832
+ {"circledast", "\xe2\x8a\x9b" }, /* ⊛ [CIRCLED ASTERISK OPERATOR]*/
833
+ {"circledcirc", "\xe2\x8a\x9a" }, /* ⊚ [CIRCLED RING OPERATOR]*/
834
+ {"circleddash", "\xe2\x8a\x9d" }, /* ⊝ [CIRCLED DASH]*/
835
+ {"cire", "\xe2\x89\x97" }, /* ≗ [RING EQUAL TO]*/
836
+ {"cirfnint", "\xe2\xa8\x90" }, /* ⨐ [CIRCULATION FUNCTION]*/
837
+ {"cirmid", "\xe2\xab\xaf" }, /* ⫯ [VERTICAL LINE WITH CIRCLE ABOVE]*/
838
+ {"cirscir", "\xe2\xa7\x82" }, /* ⧂ [CIRCLE WITH SMALL CIRCLE TO THE RIGHT]*/
839
+ {"clubs", "\xe2\x99\xa3" }, /* ♣ [BLACK CLUB SUIT]*/
840
+ {"clubsuit", "\xe2\x99\xa3" }, /* ♣ [BLACK CLUB SUIT]*/
841
+ {"colon", "\x3a" }, /* : [COLON]*/
842
+ {"colone", "\xe2\x89\x94" }, /* ≔ [COLON EQUALS]*/
843
+ {"coloneq", "\xe2\x89\x94" }, /* ≔ [COLON EQUALS]*/
844
+ {"comma", "\x2c" }, /* , [COMMA]*/
845
+ {"commat", "\x40" }, /* @ [COMMERCIAL AT]*/
846
+ {"comp", "\xe2\x88\x81" }, /* ∁ [COMPLEMENT]*/
847
+ {"compfn", "\xe2\x88\x98" }, /* ∘ [RING OPERATOR]*/
848
+ {"complement", "\xe2\x88\x81" }, /* ∁ [COMPLEMENT]*/
849
+ {"complexes", "\xe2\x84\x82" }, /* ℂ [DOUBLE-STRUCK CAPITAL C]*/
850
+ {"cong", "\xe2\x89\x85" }, /* ≅ [APPROXIMATELY EQUAL TO]*/
851
+ {"congdot", "\xe2\xa9\xad" }, /* ⩭ [CONGRUENT WITH DOT ABOVE]*/
852
+ {"conint", "\xe2\x88\xae" }, /* ∮ [CONTOUR INTEGRAL]*/
853
+ {"copf", "\xf0\x9d\x95\x94" }, /* 𝕔 [MATHEMATICAL DOUBLE-STRUCK SMALL C]*/
854
+ {"coprod", "\xe2\x88\x90" }, /* ∐ [N-ARY COPRODUCT]*/
855
+ {"copy", "\xc2\xa9" }, /* © [COPYRIGHT SIGN]*/
856
+ {"copysr", "\xe2\x84\x97" }, /* ℗ [SOUND RECORDING COPYRIGHT]*/
857
+ {"cross", "\xe2\x9c\x97" }, /* ✗ [BALLOT X]*/
858
+ {"cscr", "\xf0\x9d\x92\xb8" }, /* 𝒸 [MATHEMATICAL SCRIPT SMALL C]*/
859
+ {"csub", "\xe2\xab\x8f" }, /* ⫏ [CLOSED SUBSET]*/
860
+ {"csube", "\xe2\xab\x91" }, /* ⫑ [CLOSED SUBSET OR EQUAL TO]*/
861
+ {"csup", "\xe2\xab\x90" }, /* ⫐ [CLOSED SUPERSET]*/
862
+ {"csupe", "\xe2\xab\x92" }, /* ⫒ [CLOSED SUPERSET OR EQUAL TO]*/
863
+ {"ctdot", "\xe2\x8b\xaf" }, /* ⋯ [MIDLINE HORIZONTAL ELLIPSIS]*/
864
+ {"cudarrl", "\xe2\xa4\xb8" }, /* ⤸ [RIGHT-SIDE ARC CLOCKWISE ARROW]*/
865
+ {"cudarrr", "\xe2\xa4\xb5" }, /* ⤵ [ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS]*/
866
+ {"cuepr", "\xe2\x8b\x9e" }, /* ⋞ [EQUAL TO OR PRECEDES]*/
867
+ {"cuesc", "\xe2\x8b\x9f" }, /* ⋟ [EQUAL TO OR SUCCEEDS]*/
868
+ {"cularr", "\xe2\x86\xb6" }, /* ↶ [ANTICLOCKWISE TOP SEMICIRCLE ARROW]*/
869
+ {"cularrp", "\xe2\xa4\xbd" }, /* ⤽ [TOP ARC ANTICLOCKWISE ARROW WITH PLUS]*/
870
+ {"cup", "\xe2\x88\xaa" }, /* ∪ [UNION]*/
871
+ {"cupbrcap", "\xe2\xa9\x88" }, /* ⩈ [UNION ABOVE BAR ABOVE INTERSECTION]*/
872
+ {"cupcap", "\xe2\xa9\x86" }, /* ⩆ [UNION ABOVE INTERSECTION]*/
873
+ {"cupcup", "\xe2\xa9\x8a" }, /* ⩊ [UNION BESIDE AND JOINED WITH UNION]*/
874
+ {"cupdot", "\xe2\x8a\x8d" }, /* ⊍ [MULTISET MULTIPLICATION]*/
875
+ {"cupor", "\xe2\xa9\x85" }, /* ⩅ [UNION WITH LOGICAL OR]*/
876
+ {"cups", "\xe2\x88\xaa\xef\xb8\x80"}, /* ∪︀ [UNION with serifs]*/
877
+ {"curarr", "\xe2\x86\xb7" }, /* ↷ [CLOCKWISE TOP SEMICIRCLE ARROW]*/
878
+ {"curarrm", "\xe2\xa4\xbc" }, /* ⤼ [TOP ARC CLOCKWISE ARROW WITH MINUS]*/
879
+ {"curlyeqprec", "\xe2\x8b\x9e" }, /* ⋞ [EQUAL TO OR PRECEDES]*/
880
+ {"curlyeqsucc", "\xe2\x8b\x9f" }, /* ⋟ [EQUAL TO OR SUCCEEDS]*/
881
+ {"curlyvee", "\xe2\x8b\x8e" }, /* ⋎ [CURLY LOGICAL OR]*/
882
+ {"curlywedge", "\xe2\x8b\x8f" }, /* ⋏ [CURLY LOGICAL AND]*/
883
+ {"curren", "\xc2\xa4" }, /* ¤ [CURRENCY SIGN]*/
884
+ {"curvearrowleft", "\xe2\x86\xb6" }, /* ↶ [ANTICLOCKWISE TOP SEMICIRCLE ARROW]*/
885
+ {"curvearrowright", "\xe2\x86\xb7" }, /* ↷ [CLOCKWISE TOP SEMICIRCLE ARROW]*/
886
+ {"cuvee", "\xe2\x8b\x8e" }, /* ⋎ [CURLY LOGICAL OR]*/
887
+ {"cuwed", "\xe2\x8b\x8f" }, /* ⋏ [CURLY LOGICAL AND]*/
888
+ {"cwconint", "\xe2\x88\xb2" }, /* ∲ [CLOCKWISE CONTOUR INTEGRAL]*/
889
+ {"cwint", "\xe2\x88\xb1" }, /* ∱ [CLOCKWISE INTEGRAL]*/
890
+ {"cylcty", "\xe2\x8c\xad" }, /* ⌭ [CYLINDRICITY]*/
891
+ {"dArr", "\xe2\x87\x93" }, /* ⇓ [DOWNWARDS DOUBLE ARROW]*/
892
+ {"dHar", "\xe2\xa5\xa5" }, /* ⥥ [DOWNWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT]*/
893
+ {"dagger", "\xe2\x80\xa0" }, /* † [DAGGER]*/
894
+ {"dagger", "\xe2\x80\xa0" }, /* † [DAGGER]*/
895
+ {"daleth", "\xe2\x84\xb8" }, /* ℸ [DALET SYMBOL]*/
896
+ {"darr", "\xe2\x86\x93" }, /* ↓ [DOWNWARDS ARROW]*/
897
+ {"dash", "\xe2\x80\x90" }, /* ‐ [HYPHEN]*/
898
+ {"dashv", "\xe2\x8a\xa3" }, /* ⊣ [LEFT TACK]*/
899
+ {"dbkarow", "\xe2\xa4\x8f" }, /* ⤏ [RIGHTWARDS TRIPLE DASH ARROW]*/
900
+ {"dblac", "\xcb\x9d" }, /* ˝ [DOUBLE ACUTE ACCENT]*/
901
+ {"dcaron", "\xc4\x8f" }, /* ď [LATIN SMALL LETTER D WITH CARON]*/
902
+ {"dcy", "\xd0\xb4" }, /* д [CYRILLIC SMALL LETTER DE]*/
903
+ {"dd", "\xe2\x85\x86" }, /* ⅆ [DOUBLE-STRUCK ITALIC SMALL D]*/
904
+ {"ddagger", "\xe2\x80\xa1" }, /* ‡ [DOUBLE DAGGER]*/
905
+ {"ddarr", "\xe2\x87\x8a" }, /* ⇊ [DOWNWARDS PAIRED ARROWS]*/
906
+ {"ddotseq", "\xe2\xa9\xb7" }, /* ⩷ [EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW]*/
907
+ {"deg", "\xc2\xb0" }, /* ° [DEGREE SIGN]*/
908
+ {"delta", "\xce\xb4" }, /* δ [GREEK SMALL LETTER DELTA]*/
909
+ {"demptyv", "\xe2\xa6\xb1" }, /* ⦱ [EMPTY SET WITH OVERBAR]*/
910
+ {"dfisht", "\xe2\xa5\xbf" }, /* ⥿ [DOWN FISH TAIL]*/
911
+ {"dfr", "\xf0\x9d\x94\xa1" }, /* 𝔡 [MATHEMATICAL FRAKTUR SMALL D]*/
912
+ {"dharl", "\xe2\x87\x83" }, /* ⇃ [DOWNWARDS HARPOON WITH BARB LEFTWARDS]*/
913
+ {"dharr", "\xe2\x87\x82" }, /* ⇂ [DOWNWARDS HARPOON WITH BARB RIGHTWARDS]*/
914
+ {"diam", "\xe2\x8b\x84" }, /* ⋄ [DIAMOND OPERATOR]*/
915
+ {"diamond", "\xe2\x8b\x84" }, /* ⋄ [DIAMOND OPERATOR]*/
916
+ {"diamondsuit", "\xe2\x99\xa6" }, /* ♦ [BLACK DIAMOND SUIT]*/
917
+ {"diams", "\xe2\x99\xa6" }, /* ♦ [BLACK DIAMOND SUIT]*/
918
+ {"die", "\xc2\xa8" }, /* ¨ [DIAERESIS]*/
919
+ {"digamma", "\xcf\x9d" }, /* ϝ [GREEK SMALL LETTER DIGAMMA]*/
920
+ {"disin", "\xe2\x8b\xb2" }, /* ⋲ [ELEMENT OF WITH LONG HORIZONTAL STROKE]*/
921
+ {"div", "\xc3\xb7" }, /* ÷ [DIVISION SIGN]*/
922
+ {"divide", "\xc3\xb7" }, /* ÷ [DIVISION SIGN]*/
923
+ {"divideontimes", "\xe2\x8b\x87" }, /* ⋇ [DIVISION TIMES]*/
924
+ {"divonx", "\xe2\x8b\x87" }, /* ⋇ [DIVISION TIMES]*/
925
+ {"djcy", "\xd1\x92" }, /* ђ [CYRILLIC SMALL LETTER DJE]*/
926
+ {"dlcorn", "\xe2\x8c\x9e" }, /* ⌞ [BOTTOM LEFT CORNER]*/
927
+ {"dlcrop", "\xe2\x8c\x8d" }, /* ⌍ [BOTTOM LEFT CROP]*/
928
+ {"dollar", "\x24" }, /* $ [DOLLAR SIGN]*/
929
+ {"dopf", "\xf0\x9d\x95\x95" }, /* 𝕕 [MATHEMATICAL DOUBLE-STRUCK SMALL D]*/
930
+ {"dot", "\xcb\x99" }, /* ˙ [DOT ABOVE]*/
931
+ {"doteq", "\xe2\x89\x90" }, /* ≐ [APPROACHES THE LIMIT]*/
932
+ {"doteqdot", "\xe2\x89\x91" }, /* ≑ [GEOMETRICALLY EQUAL TO]*/
933
+ {"dotminus", "\xe2\x88\xb8" }, /* ∸ [DOT MINUS]*/
934
+ {"dotplus", "\xe2\x88\x94" }, /* ∔ [DOT PLUS]*/
935
+ {"dotsquare", "\xe2\x8a\xa1" }, /* ⊡ [SQUARED DOT OPERATOR]*/
936
+ {"doublebarwedge", "\xe2\x8c\x86" }, /* ⌆ [PERSPECTIVE]*/
937
+ {"downarrow", "\xe2\x86\x93" }, /* ↓ [DOWNWARDS ARROW]*/
938
+ {"downdownarrows", "\xe2\x87\x8a" }, /* ⇊ [DOWNWARDS PAIRED ARROWS]*/
939
+ {"downharpoonleft", "\xe2\x87\x83" }, /* ⇃ [DOWNWARDS HARPOON WITH BARB LEFTWARDS]*/
940
+ {"downharpoonright", "\xe2\x87\x82" }, /* ⇂ [DOWNWARDS HARPOON WITH BARB RIGHTWARDS]*/
941
+ {"drbkarow", "\xe2\xa4\x90" }, /* ⤐ [RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW]*/
942
+ {"drcorn", "\xe2\x8c\x9f" }, /* ⌟ [BOTTOM RIGHT CORNER]*/
943
+ {"drcrop", "\xe2\x8c\x8c" }, /* ⌌ [BOTTOM RIGHT CROP]*/
944
+ {"dscr", "\xf0\x9d\x92\xb9" }, /* 𝒹 [MATHEMATICAL SCRIPT SMALL D]*/
945
+ {"dscy", "\xd1\x95" }, /* ѕ [CYRILLIC SMALL LETTER DZE]*/
946
+ {"dsol", "\xe2\xa7\xb6" }, /* ⧶ [SOLIDUS WITH OVERBAR]*/
947
+ {"dstrok", "\xc4\x91" }, /* đ [LATIN SMALL LETTER D WITH STROKE]*/
948
+ {"dtdot", "\xe2\x8b\xb1" }, /* ⋱ [DOWN RIGHT DIAGONAL ELLIPSIS]*/
949
+ {"dtri", "\xe2\x96\xbf" }, /* ▿ [WHITE DOWN-POINTING SMALL TRIANGLE]*/
950
+ {"dtrif", "\xe2\x96\xbe" }, /* ▾ [BLACK DOWN-POINTING SMALL TRIANGLE]*/
951
+ {"duarr", "\xe2\x87\xb5" }, /* ⇵ [DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW]*/
952
+ {"duhar", "\xe2\xa5\xaf" }, /* ⥯ [DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT]*/
953
+ {"dwangle", "\xe2\xa6\xa6" }, /* ⦦ [OBLIQUE ANGLE OPENING UP]*/
954
+ {"dzcy", "\xd1\x9f" }, /* џ [CYRILLIC SMALL LETTER DZHE]*/
955
+ {"dzigrarr", "\xe2\x9f\xbf" }, /* ⟿ [LONG RIGHTWARDS SQUIGGLE ARROW]*/
956
+ {"eDDot", "\xe2\xa9\xb7" }, /* ⩷ [EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW]*/
957
+ {"eDot", "\xe2\x89\x91" }, /* ≑ [GEOMETRICALLY EQUAL TO]*/
958
+ {"eacute", "\xc3\xa9" }, /* é [LATIN SMALL LETTER E WITH ACUTE]*/
959
+ {"easter", "\xe2\xa9\xae" }, /* ⩮ [EQUALS WITH ASTERISK]*/
960
+ {"ecaron", "\xc4\x9b" }, /* ě [LATIN SMALL LETTER E WITH CARON]*/
961
+ {"ecir", "\xe2\x89\x96" }, /* ≖ [RING IN EQUAL TO]*/
962
+ {"ecirc", "\xc3\xaa" }, /* ê [LATIN SMALL LETTER E WITH CIRCUMFLEX]*/
963
+ {"ecolon", "\xe2\x89\x95" }, /* ≕ [EQUALS COLON]*/
964
+ {"ecy", "\xd1\x8d" }, /* э [CYRILLIC SMALL LETTER E]*/
965
+ {"edot", "\xc4\x97" }, /* ė [LATIN SMALL LETTER E WITH DOT ABOVE]*/
966
+ {"ee", "\xe2\x85\x87" }, /* ⅇ [DOUBLE-STRUCK ITALIC SMALL E]*/
967
+ {"efDot", "\xe2\x89\x92" }, /* ≒ [APPROXIMATELY EQUAL TO OR THE IMAGE OF]*/
968
+ {"efr", "\xf0\x9d\x94\xa2" }, /* 𝔢 [MATHEMATICAL FRAKTUR SMALL E]*/
969
+ {"eg", "\xe2\xaa\x9a" }, /* ⪚ [DOUBLE-LINE EQUAL TO OR GREATER-THAN]*/
970
+ {"egrave", "\xc3\xa8" }, /* è [LATIN SMALL LETTER E WITH GRAVE]*/
971
+ {"egs", "\xe2\xaa\x96" }, /* ⪖ [SLANTED EQUAL TO OR GREATER-THAN]*/
972
+ {"egsdot", "\xe2\xaa\x98" }, /* ⪘ [SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE]*/
973
+ {"el", "\xe2\xaa\x99" }, /* ⪙ [DOUBLE-LINE EQUAL TO OR LESS-THAN]*/
974
+ {"elinters", "\xef\xbf\xbd" }, /* � [REPLACEMENT CHARACTER]*/
975
+ {"ell", "\xe2\x84\x93" }, /* ℓ [SCRIPT SMALL L]*/
976
+ {"els", "\xe2\xaa\x95" }, /* ⪕ [SLANTED EQUAL TO OR LESS-THAN]*/
977
+ {"elsdot", "\xe2\xaa\x97" }, /* ⪗ [SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE]*/
978
+ {"emacr", "\xc4\x93" }, /* ē [LATIN SMALL LETTER E WITH MACRON]*/
979
+ {"empty", "\xe2\x88\x85" }, /* ∅ [EMPTY SET]*/
980
+ {"emptyset", "\xe2\x88\x85" }, /* ∅ [EMPTY SET]*/
981
+ {"emptyv", "\xe2\x88\x85" }, /* ∅ [EMPTY SET]*/
982
+ {"emsp", "\xe2\x80\x83" }, /*   [EM SPACE]*/
983
+ {"emsp13", "\xe2\x80\x84" }, /*   [THREE-PER-EM SPACE]*/
984
+ {"emsp14", "\xe2\x80\x85" }, /*   [FOUR-PER-EM SPACE]*/
985
+ {"eng", "\xc5\x8b" }, /* ŋ [LATIN SMALL LETTER ENG]*/
986
+ {"ensp", "\xe2\x80\x82" }, /*   [EN SPACE]*/
987
+ {"eogon", "\xc4\x99" }, /* ę [LATIN SMALL LETTER E WITH OGONEK]*/
988
+ {"eopf", "\xf0\x9d\x95\x96" }, /* 𝕖 [MATHEMATICAL DOUBLE-STRUCK SMALL E]*/
989
+ {"epar", "\xe2\x8b\x95" }, /* ⋕ [EQUAL AND PARALLEL TO]*/
990
+ {"eparsl", "\xe2\xa7\xa3" }, /* ⧣ [EQUALS SIGN AND SLANTED PARALLEL]*/
991
+ {"eplus", "\xe2\xa9\xb1" }, /* ⩱ [EQUALS SIGN ABOVE PLUS SIGN]*/
992
+ {"epsi", "\xcf\xb5" }, /* ϵ [GREEK LUNATE EPSILON SYMBOL]*/
993
+ {"epsiv", "\xce\xb5" }, /* ε [GREEK SMALL LETTER EPSILON]*/
994
+ {"eqcirc", "\xe2\x89\x96" }, /* ≖ [RING IN EQUAL TO]*/
995
+ {"eqcolon", "\xe2\x89\x95" }, /* ≕ [EQUALS COLON]*/
996
+ {"eqsim", "\xe2\x89\x82" }, /* ≂ [MINUS TILDE]*/
997
+ {"eqslantgtr", "\xe2\xaa\x96" }, /* ⪖ [SLANTED EQUAL TO OR GREATER-THAN]*/
998
+ {"eqslantless", "\xe2\xaa\x95" }, /* ⪕ [SLANTED EQUAL TO OR LESS-THAN]*/
999
+ {"equals", "\x3d" }, /* = [EQUALS SIGN]*/
1000
+ {"equest", "\xe2\x89\x9f" }, /* ≟ [QUESTIONED EQUAL TO]*/
1001
+ {"equiv", "\xe2\x89\xa1" }, /* ≡ [IDENTICAL TO]*/
1002
+ {"equivDD", "\xe2\xa9\xb8" }, /* ⩸ [EQUIVALENT WITH FOUR DOTS ABOVE]*/
1003
+ {"eqvparsl", "\xe2\xa7\xa5" }, /* ⧥ [IDENTICAL TO AND SLANTED PARALLEL]*/
1004
+ {"erDot", "\xe2\x89\x93" }, /* ≓ [IMAGE OF OR APPROXIMATELY EQUAL TO]*/
1005
+ {"erarr", "\xe2\xa5\xb1" }, /* ⥱ [EQUALS SIGN ABOVE RIGHTWARDS ARROW]*/
1006
+ {"escr", "\xe2\x84\xaf" }, /* ℯ [SCRIPT SMALL E]*/
1007
+ {"esdot", "\xe2\x89\x90" }, /* ≐ [APPROACHES THE LIMIT]*/
1008
+ {"esim", "\xe2\x89\x82" }, /* ≂ [MINUS TILDE]*/
1009
+ {"eta", "\xce\xb7" }, /* η [GREEK SMALL LETTER ETA]*/
1010
+ {"eth", "\xc3\xb0" }, /* ð [LATIN SMALL LETTER ETH]*/
1011
+ {"euml", "\xc3\xab" }, /* ë [LATIN SMALL LETTER E WITH DIAERESIS]*/
1012
+ {"excl", "\x21" }, /* ! [EXCLAMATION MARK]*/
1013
+ {"exist", "\xe2\x88\x83" }, /* ∃ [THERE EXISTS]*/
1014
+ {"expectation", "\xe2\x84\xb0" }, /* ℰ [SCRIPT CAPITAL E]*/
1015
+ {"exponentiale", "\xe2\x85\x87" }, /* ⅇ [DOUBLE-STRUCK ITALIC SMALL E]*/
1016
+ {"fallingdotseq", "\xe2\x89\x92" }, /* ≒ [APPROXIMATELY EQUAL TO OR THE IMAGE OF]*/
1017
+ {"fcy", "\xd1\x84" }, /* ф [CYRILLIC SMALL LETTER EF]*/
1018
+ {"female", "\xe2\x99\x80" }, /* ♀ [FEMALE SIGN]*/
1019
+ {"ffilig", "\xef\xac\x83" }, /* ffi [LATIN SMALL LIGATURE FFI]*/
1020
+ {"fflig", "\xef\xac\x80" }, /* ff [LATIN SMALL LIGATURE FF]*/
1021
+ {"ffllig", "\xef\xac\x84" }, /* ffl [LATIN SMALL LIGATURE FFL]*/
1022
+ {"ffr", "\xf0\x9d\x94\xa3" }, /* 𝔣 [MATHEMATICAL FRAKTUR SMALL F]*/
1023
+ {"filig", "\xef\xac\x81" }, /* fi [LATIN SMALL LIGATURE FI]*/
1024
+ {"flat", "\xe2\x99\xad" }, /* ♭ [MUSIC FLAT SIGN]*/
1025
+ {"fllig", "\xef\xac\x82" }, /* fl [LATIN SMALL LIGATURE FL]*/
1026
+ {"fltns", "\xe2\x96\xb1" }, /* ▱ [WHITE PARALLELOGRAM]*/
1027
+ {"fnof", "\xc6\x92" }, /* ƒ [LATIN SMALL LETTER F WITH HOOK]*/
1028
+ {"fopf", "\xf0\x9d\x95\x97" }, /* 𝕗 [MATHEMATICAL DOUBLE-STRUCK SMALL F]*/
1029
+ {"forall", "\xe2\x88\x80" }, /* ∀ [FOR ALL]*/
1030
+ {"fork", "\xe2\x8b\x94" }, /* ⋔ [PITCHFORK]*/
1031
+ {"forkv", "\xe2\xab\x99" }, /* ⫙ [ELEMENT OF OPENING DOWNWARDS]*/
1032
+ {"fpartint", "\xe2\xa8\x8d" }, /* ⨍ [FINITE PART INTEGRAL]*/
1033
+ {"frac12", "\xc2\xbd" }, /* ½ [VULGAR FRACTION ONE HALF]*/
1034
+ {"frac13", "\xe2\x85\x93" }, /* ⅓ [VULGAR FRACTION ONE THIRD]*/
1035
+ {"frac14", "\xc2\xbc" }, /* ¼ [VULGAR FRACTION ONE QUARTER]*/
1036
+ {"frac15", "\xe2\x85\x95" }, /* ⅕ [VULGAR FRACTION ONE FIFTH]*/
1037
+ {"frac16", "\xe2\x85\x99" }, /* ⅙ [VULGAR FRACTION ONE SIXTH]*/
1038
+ {"frac18", "\xe2\x85\x9b" }, /* ⅛ [VULGAR FRACTION ONE EIGHTH]*/
1039
+ {"frac23", "\xe2\x85\x94" }, /* ⅔ [VULGAR FRACTION TWO THIRDS]*/
1040
+ {"frac25", "\xe2\x85\x96" }, /* ⅖ [VULGAR FRACTION TWO FIFTHS]*/
1041
+ {"frac34", "\xc2\xbe" }, /* ¾ [VULGAR FRACTION THREE QUARTERS]*/
1042
+ {"frac35", "\xe2\x85\x97" }, /* ⅗ [VULGAR FRACTION THREE FIFTHS]*/
1043
+ {"frac38", "\xe2\x85\x9c" }, /* ⅜ [VULGAR FRACTION THREE EIGHTHS]*/
1044
+ {"frac45", "\xe2\x85\x98" }, /* ⅘ [VULGAR FRACTION FOUR FIFTHS]*/
1045
+ {"frac56", "\xe2\x85\x9a" }, /* ⅚ [VULGAR FRACTION FIVE SIXTHS]*/
1046
+ {"frac58", "\xe2\x85\x9d" }, /* ⅝ [VULGAR FRACTION FIVE EIGHTHS]*/
1047
+ {"frac78", "\xe2\x85\x9e" }, /* ⅞ [VULGAR FRACTION SEVEN EIGHTHS]*/
1048
+ {"frown", "\xe2\x8c\xa2" }, /* ⌢ [FROWN]*/
1049
+ {"fscr", "\xf0\x9d\x92\xbb" }, /* 𝒻 [MATHEMATICAL SCRIPT SMALL F]*/
1050
+ {"gE", "\xe2\x89\xa7" }, /* ≧ [GREATER-THAN OVER EQUAL TO]*/
1051
+ {"gEl", "\xe2\xaa\x8c" }, /* ⪌ [GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN]*/
1052
+ {"gacute", "\xc7\xb5" }, /* ǵ [LATIN SMALL LETTER G WITH ACUTE]*/
1053
+ {"gamma", "\xce\xb3" }, /* γ [GREEK SMALL LETTER GAMMA]*/
1054
+ {"gammad", "\xcf\x9d" }, /* ϝ [GREEK SMALL LETTER DIGAMMA]*/
1055
+ {"gap", "\xe2\xaa\x86" }, /* ⪆ [GREATER-THAN OR APPROXIMATE]*/
1056
+ {"gbreve", "\xc4\x9f" }, /* ğ [LATIN SMALL LETTER G WITH BREVE]*/
1057
+ {"gcirc", "\xc4\x9d" }, /* ĝ [LATIN SMALL LETTER G WITH CIRCUMFLEX]*/
1058
+ {"gcy", "\xd0\xb3" }, /* г [CYRILLIC SMALL LETTER GHE]*/
1059
+ {"gdot", "\xc4\xa1" }, /* ġ [LATIN SMALL LETTER G WITH DOT ABOVE]*/
1060
+ {"ge", "\xe2\x89\xa5" }, /* ≥ [GREATER-THAN OR EQUAL TO]*/
1061
+ {"gel", "\xe2\x8b\x9b" }, /* ⋛ [GREATER-THAN EQUAL TO OR LESS-THAN]*/
1062
+ {"geq", "\xe2\x89\xa5" }, /* ≥ [GREATER-THAN OR EQUAL TO]*/
1063
+ {"geqq", "\xe2\x89\xa7" }, /* ≧ [GREATER-THAN OVER EQUAL TO]*/
1064
+ {"geqslant", "\xe2\xa9\xbe" }, /* ⩾ [GREATER-THAN OR SLANTED EQUAL TO]*/
1065
+ {"ges", "\xe2\xa9\xbe" }, /* ⩾ [GREATER-THAN OR SLANTED EQUAL TO]*/
1066
+ {"gescc", "\xe2\xaa\xa9" }, /* ⪩ [GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL]*/
1067
+ {"gesdot", "\xe2\xaa\x80" }, /* ⪀ [GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE]*/
1068
+ {"gesdoto", "\xe2\xaa\x82" }, /* ⪂ [GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE]*/
1069
+ {"gesdotol", "\xe2\xaa\x84" }, /* ⪄ [GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT]*/
1070
+ {"gesl", "\xe2\x8b\x9b\xef\xb8\x80"}, /* ⋛︀ [GREATER-THAN slanted EQUAL TO OR LESS-THAN]*/
1071
+ {"gesles", "\xe2\xaa\x94" }, /* ⪔ [GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL]*/
1072
+ {"gfr", "\xf0\x9d\x94\xa4" }, /* 𝔤 [MATHEMATICAL FRAKTUR SMALL G]*/
1073
+ {"gg", "\xe2\x89\xab" }, /* ≫ [MUCH GREATER-THAN]*/
1074
+ {"ggg", "\xe2\x8b\x99" }, /* ⋙ [VERY MUCH GREATER-THAN]*/
1075
+ {"gimel", "\xe2\x84\xb7" }, /* ℷ [GIMEL SYMBOL]*/
1076
+ {"gjcy", "\xd1\x93" }, /* ѓ [CYRILLIC SMALL LETTER GJE]*/
1077
+ {"gl", "\xe2\x89\xb7" }, /* ≷ [GREATER-THAN OR LESS-THAN]*/
1078
+ {"glE", "\xe2\xaa\x92" }, /* ⪒ [GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL]*/
1079
+ {"gla", "\xe2\xaa\xa5" }, /* ⪥ [GREATER-THAN BESIDE LESS-THAN]*/
1080
+ {"glj", "\xe2\xaa\xa4" }, /* ⪤ [GREATER-THAN OVERLAPPING LESS-THAN]*/
1081
+ {"gnE", "\xe2\x89\xa9" }, /* ≩ [GREATER-THAN BUT NOT EQUAL TO]*/
1082
+ {"gnap", "\xe2\xaa\x8a" }, /* ⪊ [GREATER-THAN AND NOT APPROXIMATE]*/
1083
+ {"gnapprox", "\xe2\xaa\x8a" }, /* ⪊ [GREATER-THAN AND NOT APPROXIMATE]*/
1084
+ {"gne", "\xe2\xaa\x88" }, /* ⪈ [GREATER-THAN AND SINGLE-LINE NOT EQUAL TO]*/
1085
+ {"gneq", "\xe2\xaa\x88" }, /* ⪈ [GREATER-THAN AND SINGLE-LINE NOT EQUAL TO]*/
1086
+ {"gneqq", "\xe2\x89\xa9" }, /* ≩ [GREATER-THAN BUT NOT EQUAL TO]*/
1087
+ {"gnsim", "\xe2\x8b\xa7" }, /* ⋧ [GREATER-THAN BUT NOT EQUIVALENT TO]*/
1088
+ {"gopf", "\xf0\x9d\x95\x98" }, /* 𝕘 [MATHEMATICAL DOUBLE-STRUCK SMALL G]*/
1089
+ {"grave", "\x60" }, /* ` [GRAVE ACCENT]*/
1090
+ {"gscr", "\xe2\x84\x8a" }, /* ℊ [SCRIPT SMALL G]*/
1091
+ {"gsim", "\xe2\x89\xb3" }, /* ≳ [GREATER-THAN OR EQUIVALENT TO]*/
1092
+ {"gsime", "\xe2\xaa\x8e" }, /* ⪎ [GREATER-THAN ABOVE SIMILAR OR EQUAL]*/
1093
+ {"gsiml", "\xe2\xaa\x90" }, /* ⪐ [GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN]*/
1094
+ {"gt", "\x3e" }, /* > [GREATER-THAN SIGN]*/
1095
+ {"gtcc", "\xe2\xaa\xa7" }, /* ⪧ [GREATER-THAN CLOSED BY CURVE]*/
1096
+ {"gtcir", "\xe2\xa9\xba" }, /* ⩺ [GREATER-THAN WITH CIRCLE INSIDE]*/
1097
+ {"gtdot", "\xe2\x8b\x97" }, /* ⋗ [GREATER-THAN WITH DOT]*/
1098
+ {"gtlPar", "\xe2\xa6\x95" }, /* ⦕ [DOUBLE LEFT ARC GREATER-THAN BRACKET]*/
1099
+ {"gtquest", "\xe2\xa9\xbc" }, /* ⩼ [GREATER-THAN WITH QUESTION MARK ABOVE]*/
1100
+ {"gtrapprox", "\xe2\xaa\x86" }, /* ⪆ [GREATER-THAN OR APPROXIMATE]*/
1101
+ {"gtrarr", "\xe2\xa5\xb8" }, /* ⥸ [GREATER-THAN ABOVE RIGHTWARDS ARROW]*/
1102
+ {"gtrdot", "\xe2\x8b\x97" }, /* ⋗ [GREATER-THAN WITH DOT]*/
1103
+ {"gtreqless", "\xe2\x8b\x9b" }, /* ⋛ [GREATER-THAN EQUAL TO OR LESS-THAN]*/
1104
+ {"gtreqqless", "\xe2\xaa\x8c" }, /* ⪌ [GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN]*/
1105
+ {"gtrless", "\xe2\x89\xb7" }, /* ≷ [GREATER-THAN OR LESS-THAN]*/
1106
+ {"gtrsim", "\xe2\x89\xb3" }, /* ≳ [GREATER-THAN OR EQUIVALENT TO]*/
1107
+ {"gvertneqq", "\xe2\x89\xa9\xef\xb8\x80"}, /* ≩︀ [GREATER-THAN BUT NOT EQUAL TO - with vertical stroke]*/
1108
+ {"gvnE", "\xe2\x89\xa9\xef\xb8\x80"}, /* ≩︀ [GREATER-THAN BUT NOT EQUAL TO - with vertical stroke]*/
1109
+ {"hArr", "\xe2\x87\x94" }, /* ⇔ [LEFT RIGHT DOUBLE ARROW]*/
1110
+ {"hairsp", "\xe2\x80\x8a" }, /*   [HAIR SPACE]*/
1111
+ {"half", "\xc2\xbd" }, /* ½ [VULGAR FRACTION ONE HALF]*/
1112
+ {"hamilt", "\xe2\x84\x8b" }, /* ℋ [SCRIPT CAPITAL H]*/
1113
+ {"hardcy", "\xd1\x8a" }, /* ъ [CYRILLIC SMALL LETTER HARD SIGN]*/
1114
+ {"harr", "\xe2\x86\x94" }, /* ↔ [LEFT RIGHT ARROW]*/
1115
+ {"harrcir", "\xe2\xa5\x88" }, /* ⥈ [LEFT RIGHT ARROW THROUGH SMALL CIRCLE]*/
1116
+ {"harrw", "\xe2\x86\xad" }, /* ↭ [LEFT RIGHT WAVE ARROW]*/
1117
+ {"hbar", "\xe2\x84\x8f" }, /* ℏ [PLANCK CONSTANT OVER TWO PI]*/
1118
+ {"hcirc", "\xc4\xa5" }, /* ĥ [LATIN SMALL LETTER H WITH CIRCUMFLEX]*/
1119
+ {"hearts", "\xe2\x99\xa5" }, /* ♥ [BLACK HEART SUIT]*/
1120
+ {"heartsuit", "\xe2\x99\xa5" }, /* ♥ [BLACK HEART SUIT]*/
1121
+ {"hellip", "\xe2\x80\xa6" }, /* … [HORIZONTAL ELLIPSIS]*/
1122
+ {"hercon", "\xe2\x8a\xb9" }, /* ⊹ [HERMITIAN CONJUGATE MATRIX]*/
1123
+ {"hfr", "\xf0\x9d\x94\xa5" }, /* 𝔥 [MATHEMATICAL FRAKTUR SMALL H]*/
1124
+ {"hksearow", "\xe2\xa4\xa5" }, /* ⤥ [SOUTH EAST ARROW WITH HOOK]*/
1125
+ {"hkswarow", "\xe2\xa4\xa6" }, /* ⤦ [SOUTH WEST ARROW WITH HOOK]*/
1126
+ {"hoarr", "\xe2\x87\xbf" }, /* ⇿ [LEFT RIGHT OPEN-HEADED ARROW]*/
1127
+ {"homtht", "\xe2\x88\xbb" }, /* ∻ [HOMOTHETIC]*/
1128
+ {"hookleftarrow", "\xe2\x86\xa9" }, /* ↩ [LEFTWARDS ARROW WITH HOOK]*/
1129
+ {"hookrightarrow", "\xe2\x86\xaa" }, /* ↪ [RIGHTWARDS ARROW WITH HOOK]*/
1130
+ {"hopf", "\xf0\x9d\x95\x99" }, /* 𝕙 [MATHEMATICAL DOUBLE-STRUCK SMALL H]*/
1131
+ {"horbar", "\xe2\x80\x95" }, /* ― [HORIZONTAL BAR]*/
1132
+ {"hscr", "\xf0\x9d\x92\xbd" }, /* 𝒽 [MATHEMATICAL SCRIPT SMALL H]*/
1133
+ {"hslash", "\xe2\x84\x8f" }, /* ℏ [PLANCK CONSTANT OVER TWO PI]*/
1134
+ {"hstrok", "\xc4\xa7" }, /* ħ [LATIN SMALL LETTER H WITH STROKE]*/
1135
+ {"hybull", "\xe2\x81\x83" }, /* ⁃ [HYPHEN BULLET]*/
1136
+ {"hyphen", "\xe2\x80\x90" }, /* ‐ [HYPHEN]*/
1137
+ {"iacute", "\xc3\xad" }, /* í [LATIN SMALL LETTER I WITH ACUTE]*/
1138
+ {"ic", "\xe2\x81\xa3" }, /* ⁣ [INVISIBLE SEPARATOR]*/
1139
+ {"icirc", "\xc3\xae" }, /* î [LATIN SMALL LETTER I WITH CIRCUMFLEX]*/
1140
+ {"icy", "\xd0\xb8" }, /* и [CYRILLIC SMALL LETTER I]*/
1141
+ {"iecy", "\xd0\xb5" }, /* е [CYRILLIC SMALL LETTER IE]*/
1142
+ {"iexcl", "\xc2\xa1" }, /* ¡ [INVERTED EXCLAMATION MARK]*/
1143
+ {"iff", "\xe2\x87\x94" }, /* ⇔ [LEFT RIGHT DOUBLE ARROW]*/
1144
+ {"ifr", "\xf0\x9d\x94\xa6" }, /* 𝔦 [MATHEMATICAL FRAKTUR SMALL I]*/
1145
+ {"igrave", "\xc3\xac" }, /* ì [LATIN SMALL LETTER I WITH GRAVE]*/
1146
+ {"ii", "\xe2\x85\x88" }, /* ⅈ [DOUBLE-STRUCK ITALIC SMALL I]*/
1147
+ {"iiiint", "\xe2\xa8\x8c" }, /* ⨌ [QUADRUPLE INTEGRAL OPERATOR]*/
1148
+ {"iiint", "\xe2\x88\xad" }, /* ∭ [TRIPLE INTEGRAL]*/
1149
+ {"iinfin", "\xe2\xa7\x9c" }, /* ⧜ [INCOMPLETE INFINITY]*/
1150
+ {"iiota", "\xe2\x84\xa9" }, /* ℩ [TURNED GREEK SMALL LETTER IOTA]*/
1151
+ {"ijlig", "\xc4\xb3" }, /* ij [LATIN SMALL LIGATURE IJ]*/
1152
+ {"imacr", "\xc4\xab" }, /* ī [LATIN SMALL LETTER I WITH MACRON]*/
1153
+ {"image", "\xe2\x84\x91" }, /* ℑ [BLACK-LETTER CAPITAL I]*/
1154
+ {"imagline", "\xe2\x84\x90" }, /* ℐ [SCRIPT CAPITAL I]*/
1155
+ {"imagpart", "\xe2\x84\x91" }, /* ℑ [BLACK-LETTER CAPITAL I]*/
1156
+ {"imath", "\xc4\xb1" }, /* ı [LATIN SMALL LETTER DOTLESS I]*/
1157
+ {"imof", "\xe2\x8a\xb7" }, /* ⊷ [IMAGE OF]*/
1158
+ {"imped", "\xc6\xb5" }, /* Ƶ [LATIN CAPITAL LETTER Z WITH STROKE]*/
1159
+ {"in", "\xe2\x88\x88" }, /* ∈ [ELEMENT OF]*/
1160
+ {"incare", "\xe2\x84\x85" }, /* ℅ [CARE OF]*/
1161
+ {"infin", "\xe2\x88\x9e" }, /* ∞ [INFINITY]*/
1162
+ {"infintie", "\xe2\xa7\x9d" }, /* ⧝ [TIE OVER INFINITY]*/
1163
+ {"inodot", "\xc4\xb1" }, /* ı [LATIN SMALL LETTER DOTLESS I]*/
1164
+ {"int", "\xe2\x88\xab" }, /* ∫ [INTEGRAL]*/
1165
+ {"intcal", "\xe2\x8a\xba" }, /* ⊺ [INTERCALATE]*/
1166
+ {"integers", "\xe2\x84\xa4" }, /* ℤ [DOUBLE-STRUCK CAPITAL Z]*/
1167
+ {"intercal", "\xe2\x8a\xba" }, /* ⊺ [INTERCALATE]*/
1168
+ {"intlarhk", "\xe2\xa8\x97" }, /* ⨗ [INTEGRAL WITH LEFTWARDS ARROW WITH HOOK]*/
1169
+ {"intprod", "\xe2\xa8\xbc" }, /* ⨼ [INTERIOR PRODUCT]*/
1170
+ {"iocy", "\xd1\x91" }, /* ё [CYRILLIC SMALL LETTER IO]*/
1171
+ {"iogon", "\xc4\xaf" }, /* į [LATIN SMALL LETTER I WITH OGONEK]*/
1172
+ {"iopf", "\xf0\x9d\x95\x9a" }, /* 𝕚 [MATHEMATICAL DOUBLE-STRUCK SMALL I]*/
1173
+ {"iota", "\xce\xb9" }, /* ι [GREEK SMALL LETTER IOTA]*/
1174
+ {"iprod", "\xe2\xa8\xbc" }, /* ⨼ [INTERIOR PRODUCT]*/
1175
+ {"iquest", "\xc2\xbf" }, /* ¿ [INVERTED QUESTION MARK]*/
1176
+ {"iscr", "\xf0\x9d\x92\xbe" }, /* 𝒾 [MATHEMATICAL SCRIPT SMALL I]*/
1177
+ {"isin", "\xe2\x88\x88" }, /* ∈ [ELEMENT OF]*/
1178
+ {"isinE", "\xe2\x8b\xb9" }, /* ⋹ [ELEMENT OF WITH TWO HORIZONTAL STROKES]*/
1179
+ {"isindot", "\xe2\x8b\xb5" }, /* ⋵ [ELEMENT OF WITH DOT ABOVE]*/
1180
+ {"isins", "\xe2\x8b\xb4" }, /* ⋴ [SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE]*/
1181
+ {"isinsv", "\xe2\x8b\xb3" }, /* ⋳ [ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE]*/
1182
+ {"isinv", "\xe2\x88\x88" }, /* ∈ [ELEMENT OF]*/
1183
+ {"it", "\xe2\x81\xa2" }, /* ⁢ [INVISIBLE TIMES]*/
1184
+ {"itilde", "\xc4\xa9" }, /* ĩ [LATIN SMALL LETTER I WITH TILDE]*/
1185
+ {"iukcy", "\xd1\x96" }, /* і [CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I]*/
1186
+ {"iuml", "\xc3\xaf" }, /* ï [LATIN SMALL LETTER I WITH DIAERESIS]*/
1187
+ {"jcirc", "\xc4\xb5" }, /* ĵ [LATIN SMALL LETTER J WITH CIRCUMFLEX]*/
1188
+ {"jcy", "\xd0\xb9" }, /* й [CYRILLIC SMALL LETTER SHORT I]*/
1189
+ {"jfr", "\xf0\x9d\x94\xa7" }, /* 𝔧 [MATHEMATICAL FRAKTUR SMALL J]*/
1190
+ {"jmath", "\x6a" }, /* j [LATIN SMALL LETTER J]*/
1191
+ {"jopf", "\xf0\x9d\x95\x9b" }, /* 𝕛 [MATHEMATICAL DOUBLE-STRUCK SMALL J]*/
1192
+ {"jscr", "\xf0\x9d\x92\xbf" }, /* 𝒿 [MATHEMATICAL SCRIPT SMALL J]*/
1193
+ {"jsercy", "\xd1\x98" }, /* ј [CYRILLIC SMALL LETTER JE]*/
1194
+ {"jukcy", "\xd1\x94" }, /* є [CYRILLIC SMALL LETTER UKRAINIAN IE]*/
1195
+ {"kappa", "\xce\xba" }, /* κ [GREEK SMALL LETTER KAPPA]*/
1196
+ {"kappav", "\xcf\xb0" }, /* ϰ [GREEK KAPPA SYMBOL]*/
1197
+ {"kcedil", "\xc4\xb7" }, /* ķ [LATIN SMALL LETTER K WITH CEDILLA]*/
1198
+ {"kcy", "\xd0\xba" }, /* к [CYRILLIC SMALL LETTER KA]*/
1199
+ {"kfr", "\xf0\x9d\x94\xa8" }, /* 𝔨 [MATHEMATICAL FRAKTUR SMALL K]*/
1200
+ {"kgreen", "\xc4\xb8" }, /* ĸ [LATIN SMALL LETTER KRA]*/
1201
+ {"khcy", "\xd1\x85" }, /* х [CYRILLIC SMALL LETTER HA]*/
1202
+ {"kjcy", "\xd1\x9c" }, /* ќ [CYRILLIC SMALL LETTER KJE]*/
1203
+ {"kopf", "\xf0\x9d\x95\x9c" }, /* 𝕜 [MATHEMATICAL DOUBLE-STRUCK SMALL K]*/
1204
+ {"kscr", "\xf0\x9d\x93\x80" }, /* 𝓀 [MATHEMATICAL SCRIPT SMALL K]*/
1205
+ {"lAarr", "\xe2\x87\x9a" }, /* ⇚ [LEFTWARDS TRIPLE ARROW]*/
1206
+ {"lArr", "\xe2\x87\x90" }, /* ⇐ [LEFTWARDS DOUBLE ARROW]*/
1207
+ {"lAtail", "\xe2\xa4\x9b" }, /* ⤛ [LEFTWARDS DOUBLE ARROW-TAIL]*/
1208
+ {"lBarr", "\xe2\xa4\x8e" }, /* ⤎ [LEFTWARDS TRIPLE DASH ARROW]*/
1209
+ {"lE", "\xe2\x89\xa6" }, /* ≦ [LESS-THAN OVER EQUAL TO]*/
1210
+ {"lEg", "\xe2\xaa\x8b" }, /* ⪋ [LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN]*/
1211
+ {"lHar", "\xe2\xa5\xa2" }, /* ⥢ [LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN]*/
1212
+ {"lacute", "\xc4\xba" }, /* ĺ [LATIN SMALL LETTER L WITH ACUTE]*/
1213
+ {"laemptyv", "\xe2\xa6\xb4" }, /* ⦴ [EMPTY SET WITH LEFT ARROW ABOVE]*/
1214
+ {"lagran", "\xe2\x84\x92" }, /* ℒ [SCRIPT CAPITAL L]*/
1215
+ {"lambda", "\xce\xbb" }, /* λ [GREEK SMALL LETTER LAMDA]*/
1216
+ {"lang", "\xe2\x8c\xa9" }, /* 〈 [LEFT-POINTING ANGLE BRACKET]*/
1217
+ {"langd", "\xe2\xa6\x91" }, /* ⦑ [LEFT ANGLE BRACKET WITH DOT]*/
1218
+ {"langle", "\xe2\x8c\xa9" }, /* 〈 [LEFT-POINTING ANGLE BRACKET]*/
1219
+ {"lap", "\xe2\xaa\x85" }, /* ⪅ [LESS-THAN OR APPROXIMATE]*/
1220
+ {"laquo", "\xc2\xab" }, /* « [LEFT-POINTING DOUBLE ANGLE QUOTATION MARK]*/
1221
+ {"larr", "\xe2\x86\x90" }, /* ← [LEFTWARDS ARROW]*/
1222
+ {"larrb", "\xe2\x87\xa4" }, /* ⇤ [LEFTWARDS ARROW TO BAR]*/
1223
+ {"larrbfs", "\xe2\xa4\x9f" }, /* ⤟ [LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND]*/
1224
+ {"larrfs", "\xe2\xa4\x9d" }, /* ⤝ [LEFTWARDS ARROW TO BLACK DIAMOND]*/
1225
+ {"larrhk", "\xe2\x86\xa9" }, /* ↩ [LEFTWARDS ARROW WITH HOOK]*/
1226
+ {"larrlp", "\xe2\x86\xab" }, /* ↫ [LEFTWARDS ARROW WITH LOOP]*/
1227
+ {"larrpl", "\xe2\xa4\xb9" }, /* ⤹ [LEFT-SIDE ARC ANTICLOCKWISE ARROW]*/
1228
+ {"larrsim", "\xe2\xa5\xb3" }, /* ⥳ [LEFTWARDS ARROW ABOVE TILDE OPERATOR]*/
1229
+ {"larrtl", "\xe2\x86\xa2" }, /* ↢ [LEFTWARDS ARROW WITH TAIL]*/
1230
+ {"lat", "\xe2\xaa\xab" }, /* ⪫ [LARGER THAN]*/
1231
+ {"latail", "\xe2\xa4\x99" }, /* ⤙ [LEFTWARDS ARROW-TAIL]*/
1232
+ {"late", "\xe2\xaa\xad" }, /* ⪭ [LARGER THAN OR EQUAL TO]*/
1233
+ {"lates", "\xe2\xaa\xad\xef\xb8\x80"}, /* ⪭︀ [LARGER THAN OR slanted EQUAL]*/
1234
+ {"lbarr", "\xe2\xa4\x8c" }, /* ⤌ [LEFTWARDS DOUBLE DASH ARROW]*/
1235
+ {"lbbrk", "\xe3\x80\x94" }, /* 〔 [LEFT TORTOISE SHELL BRACKET]*/
1236
+ {"lbrace", "\x7b" }, /* { [LEFT CURLY BRACKET]*/
1237
+ {"lbrack", "\x5b" }, /* [ [LEFT SQUARE BRACKET]*/
1238
+ {"lbrke", "\xe2\xa6\x8b" }, /* ⦋ [LEFT SQUARE BRACKET WITH UNDERBAR]*/
1239
+ {"lbrksld", "\xe2\xa6\x8f" }, /* ⦏ [LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER]*/
1240
+ {"lbrkslu", "\xe2\xa6\x8d" }, /* ⦍ [LEFT SQUARE BRACKET WITH TICK IN TOP CORNER]*/
1241
+ {"lcaron", "\xc4\xbe" }, /* ľ [LATIN SMALL LETTER L WITH CARON]*/
1242
+ {"lcedil", "\xc4\xbc" }, /* ļ [LATIN SMALL LETTER L WITH CEDILLA]*/
1243
+ {"lceil", "\xe2\x8c\x88" }, /* ⌈ [LEFT CEILING]*/
1244
+ {"lcub", "\x7b" }, /* { [LEFT CURLY BRACKET]*/
1245
+ {"lcy", "\xd0\xbb" }, /* л [CYRILLIC SMALL LETTER EL]*/
1246
+ {"ldca", "\xe2\xa4\xb6" }, /* ⤶ [ARROW POINTING DOWNWARDS THEN CURVING LEFTWARDS]*/
1247
+ {"ldquo", "\xe2\x80\x9c" }, /* “ [LEFT DOUBLE QUOTATION MARK]*/
1248
+ {"ldquor", "\xe2\x80\x9e" }, /* „ [DOUBLE LOW-9 QUOTATION MARK]*/
1249
+ {"ldrdhar", "\xe2\xa5\xa7" }, /* ⥧ [LEFTWARDS HARPOON WITH BARB DOWN ABOVE RIGHTWARDS HARPOON WITH BARB DOWN]*/
1250
+ {"ldrushar", "\xe2\xa5\x8b" }, /* ⥋ [LEFT BARB DOWN RIGHT BARB UP HARPOON]*/
1251
+ {"ldsh", "\xe2\x86\xb2" }, /* ↲ [DOWNWARDS ARROW WITH TIP LEFTWARDS]*/
1252
+ {"le", "\xe2\x89\xa4" }, /* ≤ [LESS-THAN OR EQUAL TO]*/
1253
+ {"leftarrow", "\xe2\x86\x90" }, /* ← [LEFTWARDS ARROW]*/
1254
+ {"leftarrowtail", "\xe2\x86\xa2" }, /* ↢ [LEFTWARDS ARROW WITH TAIL]*/
1255
+ {"leftharpoondown", "\xe2\x86\xbd" }, /* ↽ [LEFTWARDS HARPOON WITH BARB DOWNWARDS]*/
1256
+ {"leftharpoonup", "\xe2\x86\xbc" }, /* ↼ [LEFTWARDS HARPOON WITH BARB UPWARDS]*/
1257
+ {"leftleftarrows", "\xe2\x87\x87" }, /* ⇇ [LEFTWARDS PAIRED ARROWS]*/
1258
+ {"leftrightarrow", "\xe2\x86\x94" }, /* ↔ [LEFT RIGHT ARROW]*/
1259
+ {"leftrightarrows", "\xe2\x87\x86" }, /* ⇆ [LEFTWARDS ARROW OVER RIGHTWARDS ARROW]*/
1260
+ {"leftrightharpoons", "\xe2\x87\x8b" }, /* ⇋ [LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON]*/
1261
+ {"leftrightsquigarrow", "\xe2\x86\xad" }, /* ↭ [LEFT RIGHT WAVE ARROW]*/
1262
+ {"leftthreetimes", "\xe2\x8b\x8b" }, /* ⋋ [LEFT SEMIDIRECT PRODUCT]*/
1263
+ {"leg", "\xe2\x8b\x9a" }, /* ⋚ [LESS-THAN EQUAL TO OR GREATER-THAN]*/
1264
+ {"leq", "\xe2\x89\xa4" }, /* ≤ [LESS-THAN OR EQUAL TO]*/
1265
+ {"leqq", "\xe2\x89\xa6" }, /* ≦ [LESS-THAN OVER EQUAL TO]*/
1266
+ {"leqslant", "\xe2\xa9\xbd" }, /* ⩽ [LESS-THAN OR SLANTED EQUAL TO]*/
1267
+ {"les", "\xe2\xa9\xbd" }, /* ⩽ [LESS-THAN OR SLANTED EQUAL TO]*/
1268
+ {"lescc", "\xe2\xaa\xa8" }, /* ⪨ [LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL]*/
1269
+ {"lesdot", "\xe2\xa9\xbf" }, /* ⩿ [LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE]*/
1270
+ {"lesdoto", "\xe2\xaa\x81" }, /* ⪁ [LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE]*/
1271
+ {"lesdotor", "\xe2\xaa\x83" }, /* ⪃ [LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT]*/
1272
+ {"lesg", "\xe2\x8b\x9a\xef\xb8\x80"}, /* ⋚︀ [LESS-THAN slanted EQUAL TO OR GREATER-THAN]*/
1273
+ {"lesges", "\xe2\xaa\x93" }, /* ⪓ [LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL]*/
1274
+ {"lessapprox", "\xe2\xaa\x85" }, /* ⪅ [LESS-THAN OR APPROXIMATE]*/
1275
+ {"lessdot", "\xe2\x8b\x96" }, /* ⋖ [LESS-THAN WITH DOT]*/
1276
+ {"lesseqgtr", "\xe2\x8b\x9a" }, /* ⋚ [LESS-THAN EQUAL TO OR GREATER-THAN]*/
1277
+ {"lesseqqgtr", "\xe2\xaa\x8b" }, /* ⪋ [LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN]*/
1278
+ {"lessgtr", "\xe2\x89\xb6" }, /* ≶ [LESS-THAN OR GREATER-THAN]*/
1279
+ {"lesssim", "\xe2\x89\xb2" }, /* ≲ [LESS-THAN OR EQUIVALENT TO]*/
1280
+ {"lfisht", "\xe2\xa5\xbc" }, /* ⥼ [LEFT FISH TAIL]*/
1281
+ {"lfloor", "\xe2\x8c\x8a" }, /* ⌊ [LEFT FLOOR]*/
1282
+ {"lfr", "\xf0\x9d\x94\xa9" }, /* 𝔩 [MATHEMATICAL FRAKTUR SMALL L]*/
1283
+ {"lg", "\xe2\x89\xb6" }, /* ≶ [LESS-THAN OR GREATER-THAN]*/
1284
+ {"lgE", "\xe2\xaa\x91" }, /* ⪑ [LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL]*/
1285
+ {"lhard", "\xe2\x86\xbd" }, /* ↽ [LEFTWARDS HARPOON WITH BARB DOWNWARDS]*/
1286
+ {"lharu", "\xe2\x86\xbc" }, /* ↼ [LEFTWARDS HARPOON WITH BARB UPWARDS]*/
1287
+ {"lharul", "\xe2\xa5\xaa" }, /* ⥪ [LEFTWARDS HARPOON WITH BARB UP ABOVE LONG DASH]*/
1288
+ {"lhblk", "\xe2\x96\x84" }, /* ▄ [LOWER HALF BLOCK]*/
1289
+ {"ljcy", "\xd1\x99" }, /* љ [CYRILLIC SMALL LETTER LJE]*/
1290
+ {"ll", "\xe2\x89\xaa" }, /* ≪ [MUCH LESS-THAN]*/
1291
+ {"llarr", "\xe2\x87\x87" }, /* ⇇ [LEFTWARDS PAIRED ARROWS]*/
1292
+ {"llcorner", "\xe2\x8c\x9e" }, /* ⌞ [BOTTOM LEFT CORNER]*/
1293
+ {"llhard", "\xe2\xa5\xab" }, /* ⥫ [LEFTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH]*/
1294
+ {"lltri", "\xe2\x97\xba" }, /* ◺ [LOWER LEFT TRIANGLE]*/
1295
+ {"lmidot", "\xc5\x80" }, /* ŀ [LATIN SMALL LETTER L WITH MIDDLE DOT]*/
1296
+ {"lmoust", "\xe2\x8e\xb0" }, /* ⎰ [UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION]*/
1297
+ {"lmoustache", "\xe2\x8e\xb0" }, /* ⎰ [UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION]*/
1298
+ {"lnE", "\xe2\x89\xa8" }, /* ≨ [LESS-THAN BUT NOT EQUAL TO]*/
1299
+ {"lnap", "\xe2\xaa\x89" }, /* ⪉ [LESS-THAN AND NOT APPROXIMATE]*/
1300
+ {"lnapprox", "\xe2\xaa\x89" }, /* ⪉ [LESS-THAN AND NOT APPROXIMATE]*/
1301
+ {"lne", "\xe2\xaa\x87" }, /* ⪇ [LESS-THAN AND SINGLE-LINE NOT EQUAL TO]*/
1302
+ {"lneq", "\xe2\xaa\x87" }, /* ⪇ [LESS-THAN AND SINGLE-LINE NOT EQUAL TO]*/
1303
+ {"lneqq", "\xe2\x89\xa8" }, /* ≨ [LESS-THAN BUT NOT EQUAL TO]*/
1304
+ {"lnsim", "\xe2\x8b\xa6" }, /* ⋦ [LESS-THAN BUT NOT EQUIVALENT TO]*/
1305
+ {"loang", "\xe3\x80\x98" }, /* 〘 [LEFT WHITE TORTOISE SHELL BRACKET]*/
1306
+ {"loarr", "\xe2\x87\xbd" }, /* ⇽ [LEFTWARDS OPEN-HEADED ARROW]*/
1307
+ {"lobrk", "\xe3\x80\x9a" }, /* 〚 [LEFT WHITE SQUARE BRACKET]*/
1308
+ {"longleftarrow", "\xe2\x9f\xb5" }, /* ⟵ [LONG LEFTWARDS ARROW]*/
1309
+ {"longleftrightarrow", "\xe2\x9f\xb7" }, /* ⟷ [LONG LEFT RIGHT ARROW]*/
1310
+ {"longmapsto", "\xe2\x9f\xbc" }, /* ⟼ [LONG RIGHTWARDS ARROW FROM BAR]*/
1311
+ {"longrightarrow", "\xe2\x9f\xb6" }, /* ⟶ [LONG RIGHTWARDS ARROW]*/
1312
+ {"looparrowleft", "\xe2\x86\xab" }, /* ↫ [LEFTWARDS ARROW WITH LOOP]*/
1313
+ {"looparrowright", "\xe2\x86\xac" }, /* ↬ [RIGHTWARDS ARROW WITH LOOP]*/
1314
+ {"lopar", "\xe2\xa6\x85" }, /* ⦅ [LEFT WHITE PARENTHESIS]*/
1315
+ {"lopf", "\xf0\x9d\x95\x9d" }, /* 𝕝 [MATHEMATICAL DOUBLE-STRUCK SMALL L]*/
1316
+ {"loplus", "\xe2\xa8\xad" }, /* ⨭ [PLUS SIGN IN LEFT HALF CIRCLE]*/
1317
+ {"lotimes", "\xe2\xa8\xb4" }, /* ⨴ [MULTIPLICATION SIGN IN LEFT HALF CIRCLE]*/
1318
+ {"lowast", "\xe2\x88\x97" }, /* ∗ [ASTERISK OPERATOR]*/
1319
+ {"lowbar", "\x5f" }, /* _ [LOW LINE]*/
1320
+ {"loz", "\xe2\x97\x8a" }, /* ◊ [LOZENGE]*/
1321
+ {"lozenge", "\xe2\x97\x8a" }, /* ◊ [LOZENGE]*/
1322
+ {"lozf", "\xe2\xa7\xab" }, /* ⧫ [BLACK LOZENGE]*/
1323
+ {"lpar", "\x28" }, /* ( [LEFT PARENTHESIS]*/
1324
+ {"lparlt", "\xe2\xa6\x93" }, /* ⦓ [LEFT ARC LESS-THAN BRACKET]*/
1325
+ {"lrarr", "\xe2\x87\x86" }, /* ⇆ [LEFTWARDS ARROW OVER RIGHTWARDS ARROW]*/
1326
+ {"lrcorner", "\xe2\x8c\x9f" }, /* ⌟ [BOTTOM RIGHT CORNER]*/
1327
+ {"lrhar", "\xe2\x87\x8b" }, /* ⇋ [LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON]*/
1328
+ {"lrhard", "\xe2\xa5\xad" }, /* ⥭ [RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH]*/
1329
+ {"lrtri", "\xe2\x8a\xbf" }, /* ⊿ [RIGHT TRIANGLE]*/
1330
+ {"lscr", "\xf0\x9d\x93\x81" }, /* 𝓁 [MATHEMATICAL SCRIPT SMALL L]*/
1331
+ {"lsh", "\xe2\x86\xb0" }, /* ↰ [UPWARDS ARROW WITH TIP LEFTWARDS]*/
1332
+ {"lsim", "\xe2\x89\xb2" }, /* ≲ [LESS-THAN OR EQUIVALENT TO]*/
1333
+ {"lsime", "\xe2\xaa\x8d" }, /* ⪍ [LESS-THAN ABOVE SIMILAR OR EQUAL]*/
1334
+ {"lsimg", "\xe2\xaa\x8f" }, /* ⪏ [LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN]*/
1335
+ {"lsqb", "\x5b" }, /* [ [LEFT SQUARE BRACKET]*/
1336
+ {"lsquo", "\xe2\x80\x98" }, /* ‘ [LEFT SINGLE QUOTATION MARK]*/
1337
+ {"lsquor", "\xe2\x80\x9a" }, /* ‚ [SINGLE LOW-9 QUOTATION MARK]*/
1338
+ {"lstrok", "\xc5\x82" }, /* ł [LATIN SMALL LETTER L WITH STROKE]*/
1339
+ {"lt", "\x3c" }, /* < [LESS-THAN SIGN]*/
1340
+ {"ltcc", "\xe2\xaa\xa6" }, /* ⪦ [LESS-THAN CLOSED BY CURVE]*/
1341
+ {"ltcir", "\xe2\xa9\xb9" }, /* ⩹ [LESS-THAN WITH CIRCLE INSIDE]*/
1342
+ {"ltdot", "\xe2\x8b\x96" }, /* ⋖ [LESS-THAN WITH DOT]*/
1343
+ {"lthree", "\xe2\x8b\x8b" }, /* ⋋ [LEFT SEMIDIRECT PRODUCT]*/
1344
+ {"ltimes", "\xe2\x8b\x89" }, /* ⋉ [LEFT NORMAL FACTOR SEMIDIRECT PRODUCT]*/
1345
+ {"ltlarr", "\xe2\xa5\xb6" }, /* ⥶ [LESS-THAN ABOVE LEFTWARDS ARROW]*/
1346
+ {"ltquest", "\xe2\xa9\xbb" }, /* ⩻ [LESS-THAN WITH QUESTION MARK ABOVE]*/
1347
+ {"ltrPar", "\xe2\xa6\x96" }, /* ⦖ [DOUBLE RIGHT ARC LESS-THAN BRACKET]*/
1348
+ {"ltri", "\xe2\x97\x83" }, /* ◃ [WHITE LEFT-POINTING SMALL TRIANGLE]*/
1349
+ {"ltrie", "\xe2\x8a\xb4" }, /* ⊴ [NORMAL SUBGROUP OF OR EQUAL TO]*/
1350
+ {"ltrif", "\xe2\x97\x82" }, /* ◂ [BLACK LEFT-POINTING SMALL TRIANGLE]*/
1351
+ {"lurdshar", "\xe2\xa5\x8a" }, /* ⥊ [LEFT BARB UP RIGHT BARB DOWN HARPOON]*/
1352
+ {"luruhar", "\xe2\xa5\xa6" }, /* ⥦ [LEFTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB UP]*/
1353
+ {"lvertneqq", "\xe2\x89\xa8\xef\xb8\x80"}, /* ≨︀ [LESS-THAN BUT NOT EQUAL TO - with vertical stroke]*/
1354
+ {"lvnE", "\xe2\x89\xa8\xef\xb8\x80"}, /* ≨︀ [LESS-THAN BUT NOT EQUAL TO - with vertical stroke]*/
1355
+ {"mDDot", "\xe2\x88\xba" }, /* ∺ [GEOMETRIC PROPORTION]*/
1356
+ {"macr", "\xc2\xaf" }, /* ¯ [MACRON]*/
1357
+ {"male", "\xe2\x99\x82" }, /* ♂ [MALE SIGN]*/
1358
+ {"malt", "\xe2\x9c\xa0" }, /* ✠ [MALTESE CROSS]*/
1359
+ {"maltese", "\xe2\x9c\xa0" }, /* ✠ [MALTESE CROSS]*/
1360
+ {"map", "\xe2\x86\xa6" }, /* ↦ [RIGHTWARDS ARROW FROM BAR]*/
1361
+ {"mapsto", "\xe2\x86\xa6" }, /* ↦ [RIGHTWARDS ARROW FROM BAR]*/
1362
+ {"mapstodown", "\xe2\x86\xa7" }, /* ↧ [DOWNWARDS ARROW FROM BAR]*/
1363
+ {"mapstoleft", "\xe2\x86\xa4" }, /* ↤ [LEFTWARDS ARROW FROM BAR]*/
1364
+ {"mapstoup", "\xe2\x86\xa5" }, /* ↥ [UPWARDS ARROW FROM BAR]*/
1365
+ {"marker", "\xe2\x96\xae" }, /* ▮ [BLACK VERTICAL RECTANGLE]*/
1366
+ {"mcomma", "\xe2\xa8\xa9" }, /* ⨩ [MINUS SIGN WITH COMMA ABOVE]*/
1367
+ {"mcy", "\xd0\xbc" }, /* м [CYRILLIC SMALL LETTER EM]*/
1368
+ {"mdash", "\xe2\x80\x94" }, /* — [EM DASH]*/
1369
+ {"measuredangle", "\xe2\x88\xa1" }, /* ∡ [MEASURED ANGLE]*/
1370
+ {"mfr", "\xf0\x9d\x94\xaa" }, /* 𝔪 [MATHEMATICAL FRAKTUR SMALL M]*/
1371
+ {"mho", "\xe2\x84\xa7" }, /* ℧ [INVERTED OHM SIGN]*/
1372
+ {"micro", "\xc2\xb5" }, /* µ [MICRO SIGN]*/
1373
+ {"mid", "\xe2\x88\xa3" }, /* ∣ [DIVIDES]*/
1374
+ {"midast", "\x2a" }, /* * [ASTERISK]*/
1375
+ {"midcir", "\xe2\xab\xb0" }, /* ⫰ [VERTICAL LINE WITH CIRCLE BELOW]*/
1376
+ {"middot", "\xc2\xb7" }, /* · [MIDDLE DOT]*/
1377
+ {"minus", "\xe2\x88\x92" }, /* − [MINUS SIGN]*/
1378
+ {"minusb", "\xe2\x8a\x9f" }, /* ⊟ [SQUARED MINUS]*/
1379
+ {"minusd", "\xe2\x88\xb8" }, /* ∸ [DOT MINUS]*/
1380
+ {"minusdu", "\xe2\xa8\xaa" }, /* ⨪ [MINUS SIGN WITH DOT BELOW]*/
1381
+ {"mlcp", "\xe2\xab\x9b" }, /* ⫛ [TRANSVERSAL INTERSECTION]*/
1382
+ {"mldr", "\xe2\x80\xa6" }, /* … [HORIZONTAL ELLIPSIS]*/
1383
+ {"mnplus", "\xe2\x88\x93" }, /* ∓ [MINUS-OR-PLUS SIGN]*/
1384
+ {"models", "\xe2\x8a\xa7" }, /* ⊧ [MODELS]*/
1385
+ {"mopf", "\xf0\x9d\x95\x9e" }, /* 𝕞 [MATHEMATICAL DOUBLE-STRUCK SMALL M]*/
1386
+ {"mp", "\xe2\x88\x93" }, /* ∓ [MINUS-OR-PLUS SIGN]*/
1387
+ {"mscr", "\xf0\x9d\x93\x82" }, /* 𝓂 [MATHEMATICAL SCRIPT SMALL M]*/
1388
+ {"mstpos", "\xe2\x88\xbe" }, /* ∾ [INVERTED LAZY S]*/
1389
+ {"mu", "\xce\xbc" }, /* μ [GREEK SMALL LETTER MU]*/
1390
+ {"multimap", "\xe2\x8a\xb8" }, /* ⊸ [MULTIMAP]*/
1391
+ {"mumap", "\xe2\x8a\xb8" }, /* ⊸ [MULTIMAP]*/
1392
+ {"nGg", "\xe2\x8b\x99\xcc\xb8" }, /* ⋙̸ [VERY MUCH GREATER-THAN with slash]*/
1393
+ {"nGt", "\xe2\x89\xab\xe2\x83\x92"}, /* ≫⃒ [MUCH GREATER THAN with vertical line]*/
1394
+ {"nGtv", "\xe2\x89\xab\xcc\xb8" }, /* ≫̸ [MUCH GREATER THAN with slash]*/
1395
+ {"nLeftarrow", "\xe2\x87\x8d" }, /* ⇍ [LEFTWARDS DOUBLE ARROW WITH STROKE]*/
1396
+ {"nLeftrightarrow", "\xe2\x87\x8e" }, /* ⇎ [LEFT RIGHT DOUBLE ARROW WITH STROKE]*/
1397
+ {"nLl", "\xe2\x8b\x98\xcc\xb8" }, /* ⋘̸ [VERY MUCH LESS-THAN with slash]*/
1398
+ {"nLt", "\xe2\x89\xaa\xe2\x83\x92"}, /* ≪⃒ [MUCH LESS THAN with vertical line]*/
1399
+ {"nLtv", "\xe2\x89\xaa\xcc\xb8" }, /* ≪̸ [MUCH LESS THAN with slash]*/
1400
+ {"nRightarrow", "\xe2\x87\x8f" }, /* ⇏ [RIGHTWARDS DOUBLE ARROW WITH STROKE]*/
1401
+ {"nVDash", "\xe2\x8a\xaf" }, /* ⊯ [NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE]*/
1402
+ {"nVdash", "\xe2\x8a\xae" }, /* ⊮ [DOES NOT FORCE]*/
1403
+ {"nabla", "\xe2\x88\x87" }, /* ∇ [NABLA]*/
1404
+ {"nacute", "\xc5\x84" }, /* ń [LATIN SMALL LETTER N WITH ACUTE]*/
1405
+ {"nang", "\xe2\x88\xa0\xe2\x83\x92"}, /* ∠⃒ [ANGLE with vertical line]*/
1406
+ {"nap", "\xe2\x89\x89" }, /* ≉ [NOT ALMOST EQUAL TO]*/
1407
+ {"napE", "\xe2\xa9\xb0\xcc\xb8" }, /* ⩰̸ [APPROXIMATELY EQUAL OR EQUAL TO with slash]*/
1408
+ {"napid", "\xe2\x89\x8b\xcc\xb8" }, /* ≋̸ [TRIPLE TILDE with slash]*/
1409
+ {"napos", "\xc5\x89" }, /* ʼn [LATIN SMALL LETTER N PRECEDED BY APOSTROPHE]*/
1410
+ {"napprox", "\xe2\x89\x89" }, /* ≉ [NOT ALMOST EQUAL TO]*/
1411
+ {"natur", "\xe2\x99\xae" }, /* ♮ [MUSIC NATURAL SIGN]*/
1412
+ {"natural", "\xe2\x99\xae" }, /* ♮ [MUSIC NATURAL SIGN]*/
1413
+ {"naturals", "\xe2\x84\x95" }, /* ℕ [DOUBLE-STRUCK CAPITAL N]*/
1414
+ {"nbsp", "\xc2\xa0" }, /*   [NO-BREAK SPACE]*/
1415
+ {"nbump", "\xe2\x89\x8e\xcc\xb8" }, /* ≎̸ [GEOMETRICALLY EQUIVALENT TO with slash]*/
1416
+ {"nbumpe", "\xe2\x89\x8f\xcc\xb8" }, /* ≏̸ [DIFFERENCE BETWEEN with slash]*/
1417
+ {"ncap", "\xe2\xa9\x83" }, /* ⩃ [INTERSECTION WITH OVERBAR]*/
1418
+ {"ncaron", "\xc5\x88" }, /* ň [LATIN SMALL LETTER N WITH CARON]*/
1419
+ {"ncedil", "\xc5\x86" }, /* ņ [LATIN SMALL LETTER N WITH CEDILLA]*/
1420
+ {"ncong", "\xe2\x89\x87" }, /* ≇ [NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO]*/
1421
+ {"ncongdot", "\xe2\xa9\xad\xcc\xb8" }, /* ⩭̸ [CONGRUENT WITH DOT ABOVE with slash]*/
1422
+ {"ncup", "\xe2\xa9\x82" }, /* ⩂ [UNION WITH OVERBAR]*/
1423
+ {"ncy", "\xd0\xbd" }, /* н [CYRILLIC SMALL LETTER EN]*/
1424
+ {"ndash", "\xe2\x80\x93" }, /* – [EN DASH]*/
1425
+ {"ne", "\xe2\x89\xa0" }, /* ≠ [NOT EQUAL TO]*/
1426
+ {"neArr", "\xe2\x87\x97" }, /* ⇗ [NORTH EAST DOUBLE ARROW]*/
1427
+ {"nearhk", "\xe2\xa4\xa4" }, /* ⤤ [NORTH EAST ARROW WITH HOOK]*/
1428
+ {"nearr", "\xe2\x86\x97" }, /* ↗ [NORTH EAST ARROW]*/
1429
+ {"nearrow", "\xe2\x86\x97" }, /* ↗ [NORTH EAST ARROW]*/
1430
+ {"nedot", "\xe2\x89\x90\xcc\xb8" }, /* ≐̸ [APPROACHES THE LIMIT with slash]*/
1431
+ {"nequiv", "\xe2\x89\xa2" }, /* ≢ [NOT IDENTICAL TO]*/
1432
+ {"nesear", "\xe2\xa4\xa8" }, /* ⤨ [NORTH EAST ARROW AND SOUTH EAST ARROW]*/
1433
+ {"nesim", "\xe2\x89\x82\xcc\xb8" }, /* ≂̸ [MINUS TILDE with slash]*/
1434
+ {"nexist", "\xe2\x88\x84" }, /* ∄ [THERE DOES NOT EXIST]*/
1435
+ {"nexists", "\xe2\x88\x84" }, /* ∄ [THERE DOES NOT EXIST]*/
1436
+ {"nfr", "\xf0\x9d\x94\xab" }, /* 𝔫 [MATHEMATICAL FRAKTUR SMALL N]*/
1437
+ {"ngE", "\xe2\x89\xa7\xcc\xb8" }, /* ≧̸ [GREATER-THAN OVER EQUAL TO with slash]*/
1438
+ {"nge", "\xe2\x89\xb1" }, /* ≱ [NEITHER GREATER-THAN NOR EQUAL TO]*/
1439
+ {"ngeq", "\xe2\x89\xb1" }, /* ≱ [NEITHER GREATER-THAN NOR EQUAL TO]*/
1440
+ {"ngeqq", "\xe2\x89\xa7\xcc\xb8" }, /* ≧̸ [GREATER-THAN OVER EQUAL TO with slash]*/
1441
+ {"ngeqslant", "\xe2\xa9\xbe\xcc\xb8" }, /* ⩾̸ [GREATER-THAN OR SLANTED EQUAL TO with slash]*/
1442
+ {"nges", "\xe2\xa9\xbe\xcc\xb8" }, /* ⩾̸ [GREATER-THAN OR SLANTED EQUAL TO with slash]*/
1443
+ {"ngsim", "\xe2\x89\xb5" }, /* ≵ [NEITHER GREATER-THAN NOR EQUIVALENT TO]*/
1444
+ {"ngt", "\xe2\x89\xaf" }, /* ≯ [NOT GREATER-THAN]*/
1445
+ {"ngtr", "\xe2\x89\xaf" }, /* ≯ [NOT GREATER-THAN]*/
1446
+ {"nhArr", "\xe2\x87\x8e" }, /* ⇎ [LEFT RIGHT DOUBLE ARROW WITH STROKE]*/
1447
+ {"nharr", "\xe2\x86\xae" }, /* ↮ [LEFT RIGHT ARROW WITH STROKE]*/
1448
+ {"nhpar", "\xe2\xab\xb2" }, /* ⫲ [PARALLEL WITH HORIZONTAL STROKE]*/
1449
+ {"ni", "\xe2\x88\x8b" }, /* ∋ [CONTAINS AS MEMBER]*/
1450
+ {"nis", "\xe2\x8b\xbc" }, /* ⋼ [SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE]*/
1451
+ {"nisd", "\xe2\x8b\xba" }, /* ⋺ [CONTAINS WITH LONG HORIZONTAL STROKE]*/
1452
+ {"niv", "\xe2\x88\x8b" }, /* ∋ [CONTAINS AS MEMBER]*/
1453
+ {"njcy", "\xd1\x9a" }, /* њ [CYRILLIC SMALL LETTER NJE]*/
1454
+ {"nlArr", "\xe2\x87\x8d" }, /* ⇍ [LEFTWARDS DOUBLE ARROW WITH STROKE]*/
1455
+ {"nlE", "\xe2\x89\xa6\xcc\xb8" }, /* ≦̸ [LESS-THAN OVER EQUAL TO with slash]*/
1456
+ {"nlarr", "\xe2\x86\x9a" }, /* ↚ [LEFTWARDS ARROW WITH STROKE]*/
1457
+ {"nldr", "\xe2\x80\xa5" }, /* ‥ [TWO DOT LEADER]*/
1458
+ {"nle", "\xe2\x89\xb0" }, /* ≰ [NEITHER LESS-THAN NOR EQUAL TO]*/
1459
+ {"nleftarrow", "\xe2\x86\x9a" }, /* ↚ [LEFTWARDS ARROW WITH STROKE]*/
1460
+ {"nleftrightarrow", "\xe2\x86\xae" }, /* ↮ [LEFT RIGHT ARROW WITH STROKE]*/
1461
+ {"nleq", "\xe2\x89\xb0" }, /* ≰ [NEITHER LESS-THAN NOR EQUAL TO]*/
1462
+ {"nleqq", "\xe2\x89\xa6\xcc\xb8" }, /* ≦̸ [LESS-THAN OVER EQUAL TO with slash]*/
1463
+ {"nleqslant", "\xe2\xa9\xbd\xcc\xb8" }, /* ⩽̸ [LESS-THAN OR SLANTED EQUAL TO with slash]*/
1464
+ {"nles", "\xe2\xa9\xbd\xcc\xb8" }, /* ⩽̸ [LESS-THAN OR SLANTED EQUAL TO with slash]*/
1465
+ {"nless", "\xe2\x89\xae" }, /* ≮ [NOT LESS-THAN]*/
1466
+ {"nlsim", "\xe2\x89\xb4" }, /* ≴ [NEITHER LESS-THAN NOR EQUIVALENT TO]*/
1467
+ {"nlt", "\xe2\x89\xae" }, /* ≮ [NOT LESS-THAN]*/
1468
+ {"nltri", "\xe2\x8b\xaa" }, /* ⋪ [NOT NORMAL SUBGROUP OF]*/
1469
+ {"nltrie", "\xe2\x8b\xac" }, /* ⋬ [NOT NORMAL SUBGROUP OF OR EQUAL TO]*/
1470
+ {"nmid", "\xe2\x88\xa4" }, /* ∤ [DOES NOT DIVIDE]*/
1471
+ {"nopf", "\xf0\x9d\x95\x9f" }, /* 𝕟 [MATHEMATICAL DOUBLE-STRUCK SMALL N]*/
1472
+ {"not", "\xc2\xac" }, /* ¬ [NOT SIGN]*/
1473
+ {"notin", "\xe2\x88\x89" }, /* ∉ [NOT AN ELEMENT OF]*/
1474
+ {"notinE", "\xe2\x8b\xb9\xcc\xb8" }, /* ⋹̸ [ELEMENT OF WITH TWO HORIZONTAL STROKES with slash]*/
1475
+ {"notindot", "\xe2\x8b\xb5\xcc\xb8" }, /* ⋵̸ [ELEMENT OF WITH DOT ABOVE with slash]*/
1476
+ {"notinva", "\xe2\x88\x89" }, /* ∉ [NOT AN ELEMENT OF]*/
1477
+ {"notinvb", "\xe2\x8b\xb7" }, /* ⋷ [SMALL ELEMENT OF WITH OVERBAR]*/
1478
+ {"notinvc", "\xe2\x8b\xb6" }, /* ⋶ [ELEMENT OF WITH OVERBAR]*/
1479
+ {"notni", "\xe2\x88\x8c" }, /* ∌ [DOES NOT CONTAIN AS MEMBER]*/
1480
+ {"notniva", "\xe2\x88\x8c" }, /* ∌ [DOES NOT CONTAIN AS MEMBER]*/
1481
+ {"notnivb", "\xe2\x8b\xbe" }, /* ⋾ [SMALL CONTAINS WITH OVERBAR]*/
1482
+ {"notnivc", "\xe2\x8b\xbd" }, /* ⋽ [CONTAINS WITH OVERBAR]*/
1483
+ {"npar", "\xe2\x88\xa6" }, /* ∦ [NOT PARALLEL TO]*/
1484
+ {"nparallel", "\xe2\x88\xa6" }, /* ∦ [NOT PARALLEL TO]*/
1485
+ {"nparsl", "\xe2\xab\xbd\xe2\x83\xa5"}, /* ⫽⃥ [DOUBLE SOLIDUS OPERATOR with reverse slash]*/
1486
+ {"npart", "\xe2\x88\x82\xcc\xb8" }, /* ∂̸ [PARTIAL DIFFERENTIAL with slash]*/
1487
+ {"npolint", "\xe2\xa8\x94" }, /* ⨔ [LINE INTEGRATION NOT INCLUDING THE POLE]*/
1488
+ {"npr", "\xe2\x8a\x80" }, /* ⊀ [DOES NOT PRECEDE]*/
1489
+ {"nprcue", "\xe2\x8b\xa0" }, /* ⋠ [DOES NOT PRECEDE OR EQUAL]*/
1490
+ {"npre", "\xe2\xaa\xaf\xcc\xb8" }, /* ⪯̸ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
1491
+ {"nprec", "\xe2\x8a\x80" }, /* ⊀ [DOES NOT PRECEDE]*/
1492
+ {"npreceq", "\xe2\xaa\xaf\xcc\xb8" }, /* ⪯̸ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
1493
+ {"nrArr", "\xe2\x87\x8f" }, /* ⇏ [RIGHTWARDS DOUBLE ARROW WITH STROKE]*/
1494
+ {"nrarr", "\xe2\x86\x9b" }, /* ↛ [RIGHTWARDS ARROW WITH STROKE]*/
1495
+ {"nrarrc", "\xe2\xa4\xb3\xcc\xb8" }, /* ⤳̸ [WAVE ARROW POINTING DIRECTLY RIGHT with slash]*/
1496
+ {"nrarrw", "\xe2\x86\x9d\xcc\xb8" }, /* ↝̸ [RIGHTWARDS WAVE ARROW with slash]*/
1497
+ {"nrightarrow", "\xe2\x86\x9b" }, /* ↛ [RIGHTWARDS ARROW WITH STROKE]*/
1498
+ {"nrtri", "\xe2\x8b\xab" }, /* ⋫ [DOES NOT CONTAIN AS NORMAL SUBGROUP]*/
1499
+ {"nrtrie", "\xe2\x8b\xad" }, /* ⋭ [DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL]*/
1500
+ {"nsc", "\xe2\x8a\x81" }, /* ⊁ [DOES NOT SUCCEED]*/
1501
+ {"nsccue", "\xe2\x8b\xa1" }, /* ⋡ [DOES NOT SUCCEED OR EQUAL]*/
1502
+ {"nsce", "\xe2\xaa\xb0\xcc\xb8" }, /* ⪰̸ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
1503
+ {"nscr", "\xf0\x9d\x93\x83" }, /* 𝓃 [MATHEMATICAL SCRIPT SMALL N]*/
1504
+ {"nshortmid", "\xe2\x88\xa4" }, /* ∤ [DOES NOT DIVIDE]*/
1505
+ {"nshortparallel", "\xe2\x88\xa6" }, /* ∦ [NOT PARALLEL TO]*/
1506
+ {"nsim", "\xe2\x89\x81" }, /* ≁ [NOT TILDE]*/
1507
+ {"nsime", "\xe2\x89\x84" }, /* ≄ [NOT ASYMPTOTICALLY EQUAL TO]*/
1508
+ {"nsimeq", "\xe2\x89\x84" }, /* ≄ [NOT ASYMPTOTICALLY EQUAL TO]*/
1509
+ {"nsmid", "\xe2\x88\xa4" }, /* ∤ [DOES NOT DIVIDE]*/
1510
+ {"nspar", "\xe2\x88\xa6" }, /* ∦ [NOT PARALLEL TO]*/
1511
+ {"nsqsube", "\xe2\x8b\xa2" }, /* ⋢ [NOT SQUARE IMAGE OF OR EQUAL TO]*/
1512
+ {"nsqsupe", "\xe2\x8b\xa3" }, /* ⋣ [NOT SQUARE ORIGINAL OF OR EQUAL TO]*/
1513
+ {"nsub", "\xe2\x8a\x84" }, /* ⊄ [NOT A SUBSET OF]*/
1514
+ {"nsubE", "\xe2\xab\x85\xcc\xb8" }, /* ⫅̸ [SUBSET OF ABOVE EQUALS SIGN with slash]*/
1515
+ {"nsube", "\xe2\x8a\x88" }, /* ⊈ [NEITHER A SUBSET OF NOR EQUAL TO]*/
1516
+ {"nsubset", "\xe2\x8a\x82\xe2\x83\x92"}, /* ⊂⃒ [SUBSET OF with vertical line]*/
1517
+ {"nsubseteq", "\xe2\x8a\x88" }, /* ⊈ [NEITHER A SUBSET OF NOR EQUAL TO]*/
1518
+ {"nsubseteqq", "\xe2\xab\x85\xcc\xb8" }, /* ⫅̸ [SUBSET OF ABOVE EQUALS SIGN with slash]*/
1519
+ {"nsucc", "\xe2\x8a\x81" }, /* ⊁ [DOES NOT SUCCEED]*/
1520
+ {"nsucceq", "\xe2\xaa\xb0\xcc\xb8" }, /* ⪰̸ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash]*/
1521
+ {"nsup", "\xe2\x8a\x85" }, /* ⊅ [NOT A SUPERSET OF]*/
1522
+ {"nsupE", "\xe2\xab\x86\xcc\xb8" }, /* ⫆̸ [SUPERSET OF ABOVE EQUALS SIGN with slash]*/
1523
+ {"nsupe", "\xe2\x8a\x89" }, /* ⊉ [NEITHER A SUPERSET OF NOR EQUAL TO]*/
1524
+ {"nsupset", "\xe2\x8a\x83\xe2\x83\x92"}, /* ⊃⃒ [SUPERSET OF with vertical line]*/
1525
+ {"nsupseteq", "\xe2\x8a\x89" }, /* ⊉ [NEITHER A SUPERSET OF NOR EQUAL TO]*/
1526
+ {"nsupseteqq", "\xe2\xab\x86\xcc\xb8" }, /* ⫆̸ [SUPERSET OF ABOVE EQUALS SIGN with slash]*/
1527
+ {"ntgl", "\xe2\x89\xb9" }, /* ≹ [NEITHER GREATER-THAN NOR LESS-THAN]*/
1528
+ {"ntilde", "\xc3\xb1" }, /* ñ [LATIN SMALL LETTER N WITH TILDE]*/
1529
+ {"ntlg", "\xe2\x89\xb8" }, /* ≸ [NEITHER LESS-THAN NOR GREATER-THAN]*/
1530
+ {"ntriangleleft", "\xe2\x8b\xaa" }, /* ⋪ [NOT NORMAL SUBGROUP OF]*/
1531
+ {"ntrianglelefteq", "\xe2\x8b\xac" }, /* ⋬ [NOT NORMAL SUBGROUP OF OR EQUAL TO]*/
1532
+ {"ntriangleright", "\xe2\x8b\xab" }, /* ⋫ [DOES NOT CONTAIN AS NORMAL SUBGROUP]*/
1533
+ {"ntrianglerighteq", "\xe2\x8b\xad" }, /* ⋭ [DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL]*/
1534
+ {"nu", "\xce\xbd" }, /* ν [GREEK SMALL LETTER NU]*/
1535
+ {"num", "\x23" }, /* # [NUMBER SIGN]*/
1536
+ {"numero", "\xe2\x84\x96" }, /* № [NUMERO SIGN]*/
1537
+ {"numsp", "\xe2\x80\x87" }, /*   [FIGURE SPACE]*/
1538
+ {"nvDash", "\xe2\x8a\xad" }, /* ⊭ [NOT TRUE]*/
1539
+ {"nvHarr", "\xe2\xa4\x84" }, /* ⤄ [LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE]*/
1540
+ {"nvap", "\xe2\x89\x8d\xe2\x83\x92"}, /* ≍⃒ [EQUIVALENT TO with vertical line]*/
1541
+ {"nvdash", "\xe2\x8a\xac" }, /* ⊬ [DOES NOT PROVE]*/
1542
+ {"nvge", "\xe2\x89\xa5\xe2\x83\x92"}, /* ≥⃒ [GREATER-THAN OR EQUAL TO with vertical line]*/
1543
+ {"nvgt", "\x3e\xe2\x83\x92" }, /* >⃒ [GREATER-THAN SIGN with vertical line]*/
1544
+ {"nvinfin", "\xe2\xa7\x9e" }, /* ⧞ [INFINITY NEGATED WITH VERTICAL BAR]*/
1545
+ {"nvlArr", "\xe2\xa4\x82" }, /* ⤂ [LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE]*/
1546
+ {"nvle", "\xe2\x89\xa4\xe2\x83\x92"}, /* ≤⃒ [LESS-THAN OR EQUAL TO with vertical line]*/
1547
+ {"nvlt", "\x3c\xe2\x83\x92" }, /* <⃒ [LESS-THAN SIGN with vertical line]*/
1548
+ {"nvltrie", "\xe2\x8a\xb4\xe2\x83\x92"}, /* ⊴⃒ [NORMAL SUBGROUP OF OR EQUAL TO with vertical line]*/
1549
+ {"nvrArr", "\xe2\xa4\x83" }, /* ⤃ [RIGHTWARDS DOUBLE ARROW WITH VERTICAL STROKE]*/
1550
+ {"nvrtrie", "\xe2\x8a\xb5\xe2\x83\x92"}, /* ⊵⃒ [CONTAINS AS NORMAL SUBGROUP OR EQUAL TO with vertical line]*/
1551
+ {"nvsim", "\xe2\x88\xbc\xe2\x83\x92"}, /* ∼⃒ [TILDE OPERATOR with vertical line]*/
1552
+ {"nwArr", "\xe2\x87\x96" }, /* ⇖ [NORTH WEST DOUBLE ARROW]*/
1553
+ {"nwarhk", "\xe2\xa4\xa3" }, /* ⤣ [NORTH WEST ARROW WITH HOOK]*/
1554
+ {"nwarr", "\xe2\x86\x96" }, /* ↖ [NORTH WEST ARROW]*/
1555
+ {"nwarrow", "\xe2\x86\x96" }, /* ↖ [NORTH WEST ARROW]*/
1556
+ {"nwnear", "\xe2\xa4\xa7" }, /* ⤧ [NORTH WEST ARROW AND NORTH EAST ARROW]*/
1557
+ {"oS", "\xe2\x93\x88" }, /* Ⓢ [CIRCLED LATIN CAPITAL LETTER S]*/
1558
+ {"oacute", "\xc3\xb3" }, /* ó [LATIN SMALL LETTER O WITH ACUTE]*/
1559
+ {"oast", "\xe2\x8a\x9b" }, /* ⊛ [CIRCLED ASTERISK OPERATOR]*/
1560
+ {"ocir", "\xe2\x8a\x9a" }, /* ⊚ [CIRCLED RING OPERATOR]*/
1561
+ {"ocirc", "\xc3\xb4" }, /* ô [LATIN SMALL LETTER O WITH CIRCUMFLEX]*/
1562
+ {"ocy", "\xd0\xbe" }, /* о [CYRILLIC SMALL LETTER O]*/
1563
+ {"odash", "\xe2\x8a\x9d" }, /* ⊝ [CIRCLED DASH]*/
1564
+ {"odblac", "\xc5\x91" }, /* ő [LATIN SMALL LETTER O WITH DOUBLE ACUTE]*/
1565
+ {"odiv", "\xe2\xa8\xb8" }, /* ⨸ [CIRCLED DIVISION SIGN]*/
1566
+ {"odot", "\xe2\x8a\x99" }, /* ⊙ [CIRCLED DOT OPERATOR]*/
1567
+ {"odsold", "\xe2\xa6\xbc" }, /* ⦼ [CIRCLED ANTICLOCKWISE-ROTATED DIVISION SIGN]*/
1568
+ {"oelig", "\xc5\x93" }, /* œ [LATIN SMALL LIGATURE OE]*/
1569
+ {"ofcir", "\xe2\xa6\xbf" }, /* ⦿ [CIRCLED BULLET]*/
1570
+ {"ofr", "\xf0\x9d\x94\xac" }, /* 𝔬 [MATHEMATICAL FRAKTUR SMALL O]*/
1571
+ {"ogon", "\xcb\x9b" }, /* ˛ [OGONEK]*/
1572
+ {"ograve", "\xc3\xb2" }, /* ò [LATIN SMALL LETTER O WITH GRAVE]*/
1573
+ {"ogt", "\xe2\xa7\x81" }, /* ⧁ [CIRCLED GREATER-THAN]*/
1574
+ {"ohbar", "\xe2\xa6\xb5" }, /* ⦵ [CIRCLE WITH HORIZONTAL BAR]*/
1575
+ {"ohm", "\xe2\x84\xa6" }, /* Ω [OHM SIGN]*/
1576
+ {"oint", "\xe2\x88\xae" }, /* ∮ [CONTOUR INTEGRAL]*/
1577
+ {"olarr", "\xe2\x86\xba" }, /* ↺ [ANTICLOCKWISE OPEN CIRCLE ARROW]*/
1578
+ {"olcir", "\xe2\xa6\xbe" }, /* ⦾ [CIRCLED WHITE BULLET]*/
1579
+ {"olcross", "\xe2\xa6\xbb" }, /* ⦻ [CIRCLE WITH SUPERIMPOSED X]*/
1580
+ {"olt", "\xe2\xa7\x80" }, /* ⧀ [CIRCLED LESS-THAN]*/
1581
+ {"omacr", "\xc5\x8d" }, /* ō [LATIN SMALL LETTER O WITH MACRON]*/
1582
+ {"omega", "\xcf\x89" }, /* ω [GREEK SMALL LETTER OMEGA]*/
1583
+ {"omid", "\xe2\xa6\xb6" }, /* ⦶ [CIRCLED VERTICAL BAR]*/
1584
+ {"ominus", "\xe2\x8a\x96" }, /* ⊖ [CIRCLED MINUS]*/
1585
+ {"oopf", "\xf0\x9d\x95\xa0" }, /* 𝕠 [MATHEMATICAL DOUBLE-STRUCK SMALL O]*/
1586
+ {"opar", "\xe2\xa6\xb7" }, /* ⦷ [CIRCLED PARALLEL]*/
1587
+ {"operp", "\xe2\xa6\xb9" }, /* ⦹ [CIRCLED PERPENDICULAR]*/
1588
+ {"oplus", "\xe2\x8a\x95" }, /* ⊕ [CIRCLED PLUS]*/
1589
+ {"or", "\xe2\x88\xa8" }, /* ∨ [LOGICAL OR]*/
1590
+ {"orarr", "\xe2\x86\xbb" }, /* ↻ [CLOCKWISE OPEN CIRCLE ARROW]*/
1591
+ {"ord", "\xe2\xa9\x9d" }, /* ⩝ [LOGICAL OR WITH HORIZONTAL DASH]*/
1592
+ {"order", "\xe2\x84\xb4" }, /* ℴ [SCRIPT SMALL O]*/
1593
+ {"orderof", "\xe2\x84\xb4" }, /* ℴ [SCRIPT SMALL O]*/
1594
+ {"ordf", "\xc2\xaa" }, /* ª [FEMININE ORDINAL INDICATOR]*/
1595
+ {"ordm", "\xc2\xba" }, /* º [MASCULINE ORDINAL INDICATOR]*/
1596
+ {"origof", "\xe2\x8a\xb6" }, /* ⊶ [ORIGINAL OF]*/
1597
+ {"oror", "\xe2\xa9\x96" }, /* ⩖ [TWO INTERSECTING LOGICAL OR]*/
1598
+ {"orslope", "\xe2\xa9\x97" }, /* ⩗ [SLOPING LARGE OR]*/
1599
+ {"orv", "\xe2\xa9\x9b" }, /* ⩛ [LOGICAL OR WITH MIDDLE STEM]*/
1600
+ {"oscr", "\xe2\x84\xb4" }, /* ℴ [SCRIPT SMALL O]*/
1601
+ {"oslash", "\xc3\xb8" }, /* ø [LATIN SMALL LETTER O WITH STROKE]*/
1602
+ {"osol", "\xe2\x8a\x98" }, /* ⊘ [CIRCLED DIVISION SLASH]*/
1603
+ {"otilde", "\xc3\xb5" }, /* õ [LATIN SMALL LETTER O WITH TILDE]*/
1604
+ {"otimes", "\xe2\x8a\x97" }, /* ⊗ [CIRCLED TIMES]*/
1605
+ {"otimesas", "\xe2\xa8\xb6" }, /* ⨶ [CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT]*/
1606
+ {"ouml", "\xc3\xb6" }, /* ö [LATIN SMALL LETTER O WITH DIAERESIS]*/
1607
+ {"ovbar", "\xe2\x8c\xbd" }, /* ⌽ [APL FUNCTIONAL SYMBOL CIRCLE STILE]*/
1608
+ {"par", "\xe2\x88\xa5" }, /* ∥ [PARALLEL TO]*/
1609
+ {"para", "\xc2\xb6" }, /* ¶ [PILCROW SIGN]*/
1610
+ {"parallel", "\xe2\x88\xa5" }, /* ∥ [PARALLEL TO]*/
1611
+ {"parsim", "\xe2\xab\xb3" }, /* ⫳ [PARALLEL WITH TILDE OPERATOR]*/
1612
+ {"parsl", "\xe2\xab\xbd" }, /* ⫽ [DOUBLE SOLIDUS OPERATOR]*/
1613
+ {"part", "\xe2\x88\x82" }, /* ∂ [PARTIAL DIFFERENTIAL]*/
1614
+ {"pcy", "\xd0\xbf" }, /* п [CYRILLIC SMALL LETTER PE]*/
1615
+ {"percnt", "\x25" }, /* % [PERCENT SIGN]*/
1616
+ {"period", "\x2e" }, /* . [FULL STOP]*/
1617
+ {"permil", "\xe2\x80\xb0" }, /* ‰ [PER MILLE SIGN]*/
1618
+ {"perp", "\xe2\x8a\xa5" }, /* ⊥ [UP TACK]*/
1619
+ {"pertenk", "\xe2\x80\xb1" }, /* ‱ [PER TEN THOUSAND SIGN]*/
1620
+ {"pfr", "\xf0\x9d\x94\xad" }, /* 𝔭 [MATHEMATICAL FRAKTUR SMALL P]*/
1621
+ {"phi", "\xcf\x95" }, /* ϕ [GREEK PHI SYMBOL]*/
1622
+ {"phiv", "\xcf\x86" }, /* φ [GREEK SMALL LETTER PHI]*/
1623
+ {"phmmat", "\xe2\x84\xb3" }, /* ℳ [SCRIPT CAPITAL M]*/
1624
+ {"phone", "\xe2\x98\x8e" }, /* ☎ [BLACK TELEPHONE]*/
1625
+ {"pi", "\xcf\x80" }, /* π [GREEK SMALL LETTER PI]*/
1626
+ {"pitchfork", "\xe2\x8b\x94" }, /* ⋔ [PITCHFORK]*/
1627
+ {"piv", "\xcf\x96" }, /* ϖ [GREEK PI SYMBOL]*/
1628
+ {"planck", "\xe2\x84\x8f" }, /* ℏ [PLANCK CONSTANT OVER TWO PI]*/
1629
+ {"planckh", "\xe2\x84\x8e" }, /* ℎ [PLANCK CONSTANT]*/
1630
+ {"plankv", "\xe2\x84\x8f" }, /* ℏ [PLANCK CONSTANT OVER TWO PI]*/
1631
+ {"plus", "\x2b" }, /* + [PLUS SIGN]*/
1632
+ {"plusacir", "\xe2\xa8\xa3" }, /* ⨣ [PLUS SIGN WITH CIRCUMFLEX ACCENT ABOVE]*/
1633
+ {"plusb", "\xe2\x8a\x9e" }, /* ⊞ [SQUARED PLUS]*/
1634
+ {"pluscir", "\xe2\xa8\xa2" }, /* ⨢ [PLUS SIGN WITH SMALL CIRCLE ABOVE]*/
1635
+ {"plusdo", "\xe2\x88\x94" }, /* ∔ [DOT PLUS]*/
1636
+ {"plusdu", "\xe2\xa8\xa5" }, /* ⨥ [PLUS SIGN WITH DOT BELOW]*/
1637
+ {"pluse", "\xe2\xa9\xb2" }, /* ⩲ [PLUS SIGN ABOVE EQUALS SIGN]*/
1638
+ {"plusmn", "\xc2\xb1" }, /* ± [PLUS-MINUS SIGN]*/
1639
+ {"plussim", "\xe2\xa8\xa6" }, /* ⨦ [PLUS SIGN WITH TILDE BELOW]*/
1640
+ {"plustwo", "\xe2\xa8\xa7" }, /* ⨧ [PLUS SIGN WITH SUBSCRIPT TWO]*/
1641
+ {"pm", "\xc2\xb1" }, /* ± [PLUS-MINUS SIGN]*/
1642
+ {"pointint", "\xe2\xa8\x95" }, /* ⨕ [INTEGRAL AROUND A POINT OPERATOR]*/
1643
+ {"popf", "\xf0\x9d\x95\xa1" }, /* 𝕡 [MATHEMATICAL DOUBLE-STRUCK SMALL P]*/
1644
+ {"pound", "\xc2\xa3" }, /* £ [POUND SIGN]*/
1645
+ {"pr", "\xe2\x89\xba" }, /* ≺ [PRECEDES]*/
1646
+ {"prE", "\xe2\xaa\xb3" }, /* ⪳ [PRECEDES ABOVE EQUALS SIGN]*/
1647
+ {"prap", "\xe2\xaa\xb7" }, /* ⪷ [PRECEDES ABOVE ALMOST EQUAL TO]*/
1648
+ {"prcue", "\xe2\x89\xbc" }, /* ≼ [PRECEDES OR EQUAL TO]*/
1649
+ {"pre", "\xe2\xaa\xaf" }, /* ⪯ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN]*/
1650
+ {"prec", "\xe2\x89\xba" }, /* ≺ [PRECEDES]*/
1651
+ {"precapprox", "\xe2\xaa\xb7" }, /* ⪷ [PRECEDES ABOVE ALMOST EQUAL TO]*/
1652
+ {"preccurlyeq", "\xe2\x89\xbc" }, /* ≼ [PRECEDES OR EQUAL TO]*/
1653
+ {"preceq", "\xe2\xaa\xaf" }, /* ⪯ [PRECEDES ABOVE SINGLE-LINE EQUALS SIGN]*/
1654
+ {"precnapprox", "\xe2\xaa\xb9" }, /* ⪹ [PRECEDES ABOVE NOT ALMOST EQUAL TO]*/
1655
+ {"precneqq", "\xe2\xaa\xb5" }, /* ⪵ [PRECEDES ABOVE NOT EQUAL TO]*/
1656
+ {"precnsim", "\xe2\x8b\xa8" }, /* ⋨ [PRECEDES BUT NOT EQUIVALENT TO]*/
1657
+ {"precsim", "\xe2\x89\xbe" }, /* ≾ [PRECEDES OR EQUIVALENT TO]*/
1658
+ {"prime", "\xe2\x80\xb2" }, /* ′ [PRIME]*/
1659
+ {"primes", "\xe2\x84\x99" }, /* ℙ [DOUBLE-STRUCK CAPITAL P]*/
1660
+ {"prnE", "\xe2\xaa\xb5" }, /* ⪵ [PRECEDES ABOVE NOT EQUAL TO]*/
1661
+ {"prnap", "\xe2\xaa\xb9" }, /* ⪹ [PRECEDES ABOVE NOT ALMOST EQUAL TO]*/
1662
+ {"prnsim", "\xe2\x8b\xa8" }, /* ⋨ [PRECEDES BUT NOT EQUIVALENT TO]*/
1663
+ {"prod", "\xe2\x88\x8f" }, /* ∏ [N-ARY PRODUCT]*/
1664
+ {"profalar", "\xe2\x8c\xae" }, /* ⌮ [ALL AROUND-PROFILE]*/
1665
+ {"profline", "\xe2\x8c\x92" }, /* ⌒ [ARC]*/
1666
+ {"profsurf", "\xe2\x8c\x93" }, /* ⌓ [SEGMENT]*/
1667
+ {"prop", "\xe2\x88\x9d" }, /* ∝ [PROPORTIONAL TO]*/
1668
+ {"propto", "\xe2\x88\x9d" }, /* ∝ [PROPORTIONAL TO]*/
1669
+ {"prsim", "\xe2\x89\xbe" }, /* ≾ [PRECEDES OR EQUIVALENT TO]*/
1670
+ {"prurel", "\xe2\x8a\xb0" }, /* ⊰ [PRECEDES UNDER RELATION]*/
1671
+ {"pscr", "\xf0\x9d\x93\x85" }, /* 𝓅 [MATHEMATICAL SCRIPT SMALL P]*/
1672
+ {"psi", "\xcf\x88" }, /* ψ [GREEK SMALL LETTER PSI]*/
1673
+ {"puncsp", "\xe2\x80\x88" }, /*   [PUNCTUATION SPACE]*/
1674
+ {"qfr", "\xf0\x9d\x94\xae" }, /* 𝔮 [MATHEMATICAL FRAKTUR SMALL Q]*/
1675
+ {"qint", "\xe2\xa8\x8c" }, /* ⨌ [QUADRUPLE INTEGRAL OPERATOR]*/
1676
+ {"qopf", "\xf0\x9d\x95\xa2" }, /* 𝕢 [MATHEMATICAL DOUBLE-STRUCK SMALL Q]*/
1677
+ {"qprime", "\xe2\x81\x97" }, /* ⁗ [QUADRUPLE PRIME]*/
1678
+ {"qscr", "\xf0\x9d\x93\x86" }, /* 𝓆 [MATHEMATICAL SCRIPT SMALL Q]*/
1679
+ {"quaternions", "\xe2\x84\x8d" }, /* ℍ [DOUBLE-STRUCK CAPITAL H]*/
1680
+ {"quatint", "\xe2\xa8\x96" }, /* ⨖ [QUATERNION INTEGRAL OPERATOR]*/
1681
+ {"quest", "\x3f" }, /* ? [QUESTION MARK]*/
1682
+ {"questeq", "\xe2\x89\x9f" }, /* ≟ [QUESTIONED EQUAL TO]*/
1683
+ {"quot", "\x22" }, /* " [QUOTATION MARK]*/
1684
+ {"rAarr", "\xe2\x87\x9b" }, /* ⇛ [RIGHTWARDS TRIPLE ARROW]*/
1685
+ {"rArr", "\xe2\x87\x92" }, /* ⇒ [RIGHTWARDS DOUBLE ARROW]*/
1686
+ {"rAtail", "\xe2\xa4\x9c" }, /* ⤜ [RIGHTWARDS DOUBLE ARROW-TAIL]*/
1687
+ {"rBarr", "\xe2\xa4\x8f" }, /* ⤏ [RIGHTWARDS TRIPLE DASH ARROW]*/
1688
+ {"rHar", "\xe2\xa5\xa4" }, /* ⥤ [RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN]*/
1689
+ {"race", "\xe2\xa7\x9a" }, /* ⧚ [LEFT DOUBLE WIGGLY FENCE]*/
1690
+ {"racute", "\xc5\x95" }, /* ŕ [LATIN SMALL LETTER R WITH ACUTE]*/
1691
+ {"radic", "\xe2\x88\x9a" }, /* √ [SQUARE ROOT]*/
1692
+ {"raemptyv", "\xe2\xa6\xb3" }, /* ⦳ [EMPTY SET WITH RIGHT ARROW ABOVE]*/
1693
+ {"rang", "\xe2\x8c\xaa" }, /* 〉 [RIGHT-POINTING ANGLE BRACKET]*/
1694
+ {"rangd", "\xe2\xa6\x92" }, /* ⦒ [RIGHT ANGLE BRACKET WITH DOT]*/
1695
+ {"range", "\xe2\xa6\xa5" }, /* ⦥ [REVERSED ANGLE WITH UNDERBAR]*/
1696
+ {"rangle", "\xe2\x8c\xaa" }, /* 〉 [RIGHT-POINTING ANGLE BRACKET]*/
1697
+ {"raquo", "\xc2\xbb" }, /* » [RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK]*/
1698
+ {"rarr", "\xe2\x86\x92" }, /* → [RIGHTWARDS ARROW]*/
1699
+ {"rarrap", "\xe2\xa5\xb5" }, /* ⥵ [RIGHTWARDS ARROW ABOVE ALMOST EQUAL TO]*/
1700
+ {"rarrb", "\xe2\x87\xa5" }, /* ⇥ [RIGHTWARDS ARROW TO BAR]*/
1701
+ {"rarrbfs", "\xe2\xa4\xa0" }, /* ⤠ [RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND]*/
1702
+ {"rarrc", "\xe2\xa4\xb3" }, /* ⤳ [WAVE ARROW POINTING DIRECTLY RIGHT]*/
1703
+ {"rarrfs", "\xe2\xa4\x9e" }, /* ⤞ [RIGHTWARDS ARROW TO BLACK DIAMOND]*/
1704
+ {"rarrhk", "\xe2\x86\xaa" }, /* ↪ [RIGHTWARDS ARROW WITH HOOK]*/
1705
+ {"rarrlp", "\xe2\x86\xac" }, /* ↬ [RIGHTWARDS ARROW WITH LOOP]*/
1706
+ {"rarrpl", "\xe2\xa5\x85" }, /* ⥅ [RIGHTWARDS ARROW WITH PLUS BELOW]*/
1707
+ {"rarrsim", "\xe2\xa5\xb4" }, /* ⥴ [RIGHTWARDS ARROW ABOVE TILDE OPERATOR]*/
1708
+ {"rarrtl", "\xe2\x86\xa3" }, /* ↣ [RIGHTWARDS ARROW WITH TAIL]*/
1709
+ {"rarrw", "\xe2\x86\x9d" }, /* ↝ [RIGHTWARDS WAVE ARROW]*/
1710
+ {"ratail", "\xe2\xa4\x9a" }, /* ⤚ [RIGHTWARDS ARROW-TAIL]*/
1711
+ {"ratio", "\xe2\x88\xb6" }, /* ∶ [RATIO]*/
1712
+ {"rationals", "\xe2\x84\x9a" }, /* ℚ [DOUBLE-STRUCK CAPITAL Q]*/
1713
+ {"rbarr", "\xe2\xa4\x8d" }, /* ⤍ [RIGHTWARDS DOUBLE DASH ARROW]*/
1714
+ {"rbbrk", "\xe3\x80\x95" }, /* 〕 [RIGHT TORTOISE SHELL BRACKET]*/
1715
+ {"rbrace", "\x7d" }, /* } [RIGHT CURLY BRACKET]*/
1716
+ {"rbrack", "\x5d" }, /* ] [RIGHT SQUARE BRACKET]*/
1717
+ {"rbrke", "\xe2\xa6\x8c" }, /* ⦌ [RIGHT SQUARE BRACKET WITH UNDERBAR]*/
1718
+ {"rbrksld", "\xe2\xa6\x8e" }, /* ⦎ [RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER]*/
1719
+ {"rbrkslu", "\xe2\xa6\x90" }, /* ⦐ [RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER]*/
1720
+ {"rcaron", "\xc5\x99" }, /* ř [LATIN SMALL LETTER R WITH CARON]*/
1721
+ {"rcedil", "\xc5\x97" }, /* ŗ [LATIN SMALL LETTER R WITH CEDILLA]*/
1722
+ {"rceil", "\xe2\x8c\x89" }, /* ⌉ [RIGHT CEILING]*/
1723
+ {"rcub", "\x7d" }, /* } [RIGHT CURLY BRACKET]*/
1724
+ {"rcy", "\xd1\x80" }, /* р [CYRILLIC SMALL LETTER ER]*/
1725
+ {"rdca", "\xe2\xa4\xb7" }, /* ⤷ [ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS]*/
1726
+ {"rdldhar", "\xe2\xa5\xa9" }, /* ⥩ [RIGHTWARDS HARPOON WITH BARB DOWN ABOVE LEFTWARDS HARPOON WITH BARB DOWN]*/
1727
+ {"rdquo", "\xe2\x80\x9d" }, /* ” [RIGHT DOUBLE QUOTATION MARK]*/
1728
+ {"rdquor", "\xe2\x80\x9d" }, /* ” [RIGHT DOUBLE QUOTATION MARK]*/
1729
+ {"rdsh", "\xe2\x86\xb3" }, /* ↳ [DOWNWARDS ARROW WITH TIP RIGHTWARDS]*/
1730
+ {"real", "\xe2\x84\x9c" }, /* ℜ [BLACK-LETTER CAPITAL R]*/
1731
+ {"realine", "\xe2\x84\x9b" }, /* ℛ [SCRIPT CAPITAL R]*/
1732
+ {"realpart", "\xe2\x84\x9c" }, /* ℜ [BLACK-LETTER CAPITAL R]*/
1733
+ {"reals", "\xe2\x84\x9d" }, /* ℝ [DOUBLE-STRUCK CAPITAL R]*/
1734
+ {"rect", "\xe2\x96\xad" }, /* ▭ [WHITE RECTANGLE]*/
1735
+ {"reg", "\xc2\xae" }, /* ® [REGISTERED SIGN]*/
1736
+ {"rfisht", "\xe2\xa5\xbd" }, /* ⥽ [RIGHT FISH TAIL]*/
1737
+ {"rfloor", "\xe2\x8c\x8b" }, /* ⌋ [RIGHT FLOOR]*/
1738
+ {"rfr", "\xf0\x9d\x94\xaf" }, /* 𝔯 [MATHEMATICAL FRAKTUR SMALL R]*/
1739
+ {"rhard", "\xe2\x87\x81" }, /* ⇁ [RIGHTWARDS HARPOON WITH BARB DOWNWARDS]*/
1740
+ {"rharu", "\xe2\x87\x80" }, /* ⇀ [RIGHTWARDS HARPOON WITH BARB UPWARDS]*/
1741
+ {"rharul", "\xe2\xa5\xac" }, /* ⥬ [RIGHTWARDS HARPOON WITH BARB UP ABOVE LONG DASH]*/
1742
+ {"rho", "\xcf\x81" }, /* ρ [GREEK SMALL LETTER RHO]*/
1743
+ {"rhov", "\xcf\xb1" }, /* ϱ [GREEK RHO SYMBOL]*/
1744
+ {"rightarrow", "\xe2\x86\x92" }, /* → [RIGHTWARDS ARROW]*/
1745
+ {"rightarrowtail", "\xe2\x86\xa3" }, /* ↣ [RIGHTWARDS ARROW WITH TAIL]*/
1746
+ {"rightharpoondown", "\xe2\x87\x81" }, /* ⇁ [RIGHTWARDS HARPOON WITH BARB DOWNWARDS]*/
1747
+ {"rightharpoonup", "\xe2\x87\x80" }, /* ⇀ [RIGHTWARDS HARPOON WITH BARB UPWARDS]*/
1748
+ {"rightleftarrows", "\xe2\x87\x84" }, /* ⇄ [RIGHTWARDS ARROW OVER LEFTWARDS ARROW]*/
1749
+ {"rightleftharpoons", "\xe2\x87\x8c" }, /* ⇌ [RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON]*/
1750
+ {"rightrightarrows", "\xe2\x87\x89" }, /* ⇉ [RIGHTWARDS PAIRED ARROWS]*/
1751
+ {"rightsquigarrow", "\xe2\x86\x9d" }, /* ↝ [RIGHTWARDS WAVE ARROW]*/
1752
+ {"rightthreetimes", "\xe2\x8b\x8c" }, /* ⋌ [RIGHT SEMIDIRECT PRODUCT]*/
1753
+ {"ring", "\xcb\x9a" }, /* ˚ [RING ABOVE]*/
1754
+ {"risingdotseq", "\xe2\x89\x93" }, /* ≓ [IMAGE OF OR APPROXIMATELY EQUAL TO]*/
1755
+ {"rlarr", "\xe2\x87\x84" }, /* ⇄ [RIGHTWARDS ARROW OVER LEFTWARDS ARROW]*/
1756
+ {"rlhar", "\xe2\x87\x8c" }, /* ⇌ [RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON]*/
1757
+ {"rmoust", "\xe2\x8e\xb1" }, /* ⎱ [UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION]*/
1758
+ {"rmoustache", "\xe2\x8e\xb1" }, /* ⎱ [UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION]*/
1759
+ {"rnmid", "\xe2\xab\xae" }, /* ⫮ [DOES NOT DIVIDE WITH REVERSED NEGATION SLASH]*/
1760
+ {"roang", "\xe3\x80\x99" }, /* 〙 [RIGHT WHITE TORTOISE SHELL BRACKET]*/
1761
+ {"roarr", "\xe2\x87\xbe" }, /* ⇾ [RIGHTWARDS OPEN-HEADED ARROW]*/
1762
+ {"robrk", "\xe3\x80\x9b" }, /* 〛 [RIGHT WHITE SQUARE BRACKET]*/
1763
+ {"ropar", "\xe2\xa6\x86" }, /* ⦆ [RIGHT WHITE PARENTHESIS]*/
1764
+ {"ropf", "\xf0\x9d\x95\xa3" }, /* 𝕣 [MATHEMATICAL DOUBLE-STRUCK SMALL R]*/
1765
+ {"roplus", "\xe2\xa8\xae" }, /* ⨮ [PLUS SIGN IN RIGHT HALF CIRCLE]*/
1766
+ {"rotimes", "\xe2\xa8\xb5" }, /* ⨵ [MULTIPLICATION SIGN IN RIGHT HALF CIRCLE]*/
1767
+ {"rpar", "\x29" }, /* ) [RIGHT PARENTHESIS]*/
1768
+ {"rpargt", "\xe2\xa6\x94" }, /* ⦔ [RIGHT ARC GREATER-THAN BRACKET]*/
1769
+ {"rppolint", "\xe2\xa8\x92" }, /* ⨒ [LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE]*/
1770
+ {"rrarr", "\xe2\x87\x89" }, /* ⇉ [RIGHTWARDS PAIRED ARROWS]*/
1771
+ {"rscr", "\xf0\x9d\x93\x87" }, /* 𝓇 [MATHEMATICAL SCRIPT SMALL R]*/
1772
+ {"rsh", "\xe2\x86\xb1" }, /* ↱ [UPWARDS ARROW WITH TIP RIGHTWARDS]*/
1773
+ {"rsqb", "\x5d" }, /* ] [RIGHT SQUARE BRACKET]*/
1774
+ {"rsquo", "\xe2\x80\x99" }, /* ’ [RIGHT SINGLE QUOTATION MARK]*/
1775
+ {"rsquor", "\xe2\x80\x99" }, /* ’ [RIGHT SINGLE QUOTATION MARK]*/
1776
+ {"rthree", "\xe2\x8b\x8c" }, /* ⋌ [RIGHT SEMIDIRECT PRODUCT]*/
1777
+ {"rtimes", "\xe2\x8b\x8a" }, /* ⋊ [RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT]*/
1778
+ {"rtri", "\xe2\x96\xb9" }, /* ▹ [WHITE RIGHT-POINTING SMALL TRIANGLE]*/
1779
+ {"rtrie", "\xe2\x8a\xb5" }, /* ⊵ [CONTAINS AS NORMAL SUBGROUP OR EQUAL TO]*/
1780
+ {"rtrif", "\xe2\x96\xb8" }, /* ▸ [BLACK RIGHT-POINTING SMALL TRIANGLE]*/
1781
+ {"rtriltri", "\xe2\xa7\x8e" }, /* ⧎ [RIGHT TRIANGLE ABOVE LEFT TRIANGLE]*/
1782
+ {"ruluhar", "\xe2\xa5\xa8" }, /* ⥨ [RIGHTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB UP]*/
1783
+ {"rx", "\xe2\x84\x9e" }, /* ℞ [PRESCRIPTION TAKE]*/
1784
+ {"sacute", "\xc5\x9b" }, /* ś [LATIN SMALL LETTER S WITH ACUTE]*/
1785
+ {"sc", "\xe2\x89\xbb" }, /* ≻ [SUCCEEDS]*/
1786
+ {"scE", "\xe2\xaa\xb4" }, /* ⪴ [SUCCEEDS ABOVE EQUALS SIGN]*/
1787
+ {"scap", "\xe2\xaa\xb8" }, /* ⪸ [SUCCEEDS ABOVE ALMOST EQUAL TO]*/
1788
+ {"scaron", "\xc5\xa1" }, /* š [LATIN SMALL LETTER S WITH CARON]*/
1789
+ {"sccue", "\xe2\x89\xbd" }, /* ≽ [SUCCEEDS OR EQUAL TO]*/
1790
+ {"sce", "\xe2\xaa\xb0" }, /* ⪰ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN]*/
1791
+ {"scedil", "\xc5\x9f" }, /* ş [LATIN SMALL LETTER S WITH CEDILLA]*/
1792
+ {"scirc", "\xc5\x9d" }, /* ŝ [LATIN SMALL LETTER S WITH CIRCUMFLEX]*/
1793
+ {"scnE", "\xe2\xaa\xb6" }, /* ⪶ [SUCCEEDS ABOVE NOT EQUAL TO]*/
1794
+ {"scnap", "\xe2\xaa\xba" }, /* ⪺ [SUCCEEDS ABOVE NOT ALMOST EQUAL TO]*/
1795
+ {"scnsim", "\xe2\x8b\xa9" }, /* ⋩ [SUCCEEDS BUT NOT EQUIVALENT TO]*/
1796
+ {"scpolint", "\xe2\xa8\x93" }, /* ⨓ [LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE]*/
1797
+ {"scsim", "\xe2\x89\xbf" }, /* ≿ [SUCCEEDS OR EQUIVALENT TO]*/
1798
+ {"scy", "\xd1\x81" }, /* с [CYRILLIC SMALL LETTER ES]*/
1799
+ {"sdot", "\xe2\x8b\x85" }, /* ⋅ [DOT OPERATOR]*/
1800
+ {"sdotb", "\xe2\x8a\xa1" }, /* ⊡ [SQUARED DOT OPERATOR]*/
1801
+ {"sdote", "\xe2\xa9\xa6" }, /* ⩦ [EQUALS SIGN WITH DOT BELOW]*/
1802
+ {"seArr", "\xe2\x87\x98" }, /* ⇘ [SOUTH EAST DOUBLE ARROW]*/
1803
+ {"searhk", "\xe2\xa4\xa5" }, /* ⤥ [SOUTH EAST ARROW WITH HOOK]*/
1804
+ {"searr", "\xe2\x86\x98" }, /* ↘ [SOUTH EAST ARROW]*/
1805
+ {"searrow", "\xe2\x86\x98" }, /* ↘ [SOUTH EAST ARROW]*/
1806
+ {"sect", "\xc2\xa7" }, /* § [SECTION SIGN]*/
1807
+ {"semi", "\x3b" }, /* ; [SEMICOLON]*/
1808
+ {"seswar", "\xe2\xa4\xa9" }, /* ⤩ [SOUTH EAST ARROW AND SOUTH WEST ARROW]*/
1809
+ {"setminus", "\xe2\x88\x96" }, /* ∖ [SET MINUS]*/
1810
+ {"setmn", "\xe2\x88\x96" }, /* ∖ [SET MINUS]*/
1811
+ {"sext", "\xe2\x9c\xb6" }, /* ✶ [SIX POINTED BLACK STAR]*/
1812
+ {"sfr", "\xf0\x9d\x94\xb0" }, /* 𝔰 [MATHEMATICAL FRAKTUR SMALL S]*/
1813
+ {"sfrown", "\xe2\x8c\xa2" }, /* ⌢ [FROWN]*/
1814
+ {"sharp", "\xe2\x99\xaf" }, /* ♯ [MUSIC SHARP SIGN]*/
1815
+ {"shchcy", "\xd1\x89" }, /* щ [CYRILLIC SMALL LETTER SHCHA]*/
1816
+ {"shcy", "\xd1\x88" }, /* ш [CYRILLIC SMALL LETTER SHA]*/
1817
+ {"shortmid", "\xe2\x88\xa3" }, /* ∣ [DIVIDES]*/
1818
+ {"shortparallel", "\xe2\x88\xa5" }, /* ∥ [PARALLEL TO]*/
1819
+ {"shy", "\xc2\xad" }, /* ­ [SOFT HYPHEN]*/
1820
+ {"sigma", "\xcf\x83" }, /* σ [GREEK SMALL LETTER SIGMA]*/
1821
+ {"sigmav", "\xcf\x82" }, /* ς [GREEK SMALL LETTER FINAL SIGMA]*/
1822
+ {"sim", "\xe2\x88\xbc" }, /* ∼ [TILDE OPERATOR]*/
1823
+ {"simdot", "\xe2\xa9\xaa" }, /* ⩪ [TILDE OPERATOR WITH DOT ABOVE]*/
1824
+ {"sime", "\xe2\x89\x83" }, /* ≃ [ASYMPTOTICALLY EQUAL TO]*/
1825
+ {"simeq", "\xe2\x89\x83" }, /* ≃ [ASYMPTOTICALLY EQUAL TO]*/
1826
+ {"simg", "\xe2\xaa\x9e" }, /* ⪞ [SIMILAR OR GREATER-THAN]*/
1827
+ {"simgE", "\xe2\xaa\xa0" }, /* ⪠ [SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN]*/
1828
+ {"siml", "\xe2\xaa\x9d" }, /* ⪝ [SIMILAR OR LESS-THAN]*/
1829
+ {"simlE", "\xe2\xaa\x9f" }, /* ⪟ [SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN]*/
1830
+ {"simne", "\xe2\x89\x86" }, /* ≆ [APPROXIMATELY BUT NOT ACTUALLY EQUAL TO]*/
1831
+ {"simplus", "\xe2\xa8\xa4" }, /* ⨤ [PLUS SIGN WITH TILDE ABOVE]*/
1832
+ {"simrarr", "\xe2\xa5\xb2" }, /* ⥲ [TILDE OPERATOR ABOVE RIGHTWARDS ARROW]*/
1833
+ {"slarr", "\xe2\x86\x90" }, /* ← [LEFTWARDS ARROW]*/
1834
+ {"smallsetminus", "\xe2\x88\x96" }, /* ∖ [SET MINUS]*/
1835
+ {"smashp", "\xe2\xa8\xb3" }, /* ⨳ [SMASH PRODUCT]*/
1836
+ {"smeparsl", "\xe2\xa7\xa4" }, /* ⧤ [EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE]*/
1837
+ {"smid", "\xe2\x88\xa3" }, /* ∣ [DIVIDES]*/
1838
+ {"smile", "\xe2\x8c\xa3" }, /* ⌣ [SMILE]*/
1839
+ {"smt", "\xe2\xaa\xaa" }, /* ⪪ [SMALLER THAN]*/
1840
+ {"smte", "\xe2\xaa\xac" }, /* ⪬ [SMALLER THAN OR EQUAL TO]*/
1841
+ {"smtes", "\xe2\xaa\xac\xef\xb8\x80"}, /* ⪬︀ [SMALLER THAN OR slanted EQUAL]*/
1842
+ {"softcy", "\xd1\x8c" }, /* ь [CYRILLIC SMALL LETTER SOFT SIGN]*/
1843
+ {"sol", "\x2f" }, /* / [SOLIDUS]*/
1844
+ {"solb", "\xe2\xa7\x84" }, /* ⧄ [SQUARED RISING DIAGONAL SLASH]*/
1845
+ {"solbar", "\xe2\x8c\xbf" }, /* ⌿ [APL FUNCTIONAL SYMBOL SLASH BAR]*/
1846
+ {"sopf", "\xf0\x9d\x95\xa4" }, /* 𝕤 [MATHEMATICAL DOUBLE-STRUCK SMALL S]*/
1847
+ {"spades", "\xe2\x99\xa0" }, /* ♠ [BLACK SPADE SUIT]*/
1848
+ {"spadesuit", "\xe2\x99\xa0" }, /* ♠ [BLACK SPADE SUIT]*/
1849
+ {"spar", "\xe2\x88\xa5" }, /* ∥ [PARALLEL TO]*/
1850
+ {"sqcap", "\xe2\x8a\x93" }, /* ⊓ [SQUARE CAP]*/
1851
+ {"sqcaps", "\xe2\x8a\x93\xef\xb8\x80"}, /* ⊓︀ [SQUARE CAP with serifs]*/
1852
+ {"sqcup", "\xe2\x8a\x94" }, /* ⊔ [SQUARE CUP]*/
1853
+ {"sqcups", "\xe2\x8a\x94\xef\xb8\x80"}, /* ⊔︀ [SQUARE CUP with serifs]*/
1854
+ {"sqsub", "\xe2\x8a\x8f" }, /* ⊏ [SQUARE IMAGE OF]*/
1855
+ {"sqsube", "\xe2\x8a\x91" }, /* ⊑ [SQUARE IMAGE OF OR EQUAL TO]*/
1856
+ {"sqsubset", "\xe2\x8a\x8f" }, /* ⊏ [SQUARE IMAGE OF]*/
1857
+ {"sqsubseteq", "\xe2\x8a\x91" }, /* ⊑ [SQUARE IMAGE OF OR EQUAL TO]*/
1858
+ {"sqsup", "\xe2\x8a\x90" }, /* ⊐ [SQUARE ORIGINAL OF]*/
1859
+ {"sqsupe", "\xe2\x8a\x92" }, /* ⊒ [SQUARE ORIGINAL OF OR EQUAL TO]*/
1860
+ {"sqsupset", "\xe2\x8a\x90" }, /* ⊐ [SQUARE ORIGINAL OF]*/
1861
+ {"sqsupseteq", "\xe2\x8a\x92" }, /* ⊒ [SQUARE ORIGINAL OF OR EQUAL TO]*/
1862
+ {"squ", "\xe2\x96\xa1" }, /* □ [WHITE SQUARE]*/
1863
+ {"square", "\xe2\x96\xa1" }, /* □ [WHITE SQUARE]*/
1864
+ {"squarf", "\xe2\x96\xaa" }, /* ▪ [BLACK SMALL SQUARE]*/
1865
+ {"squf", "\xe2\x96\xaa" }, /* ▪ [BLACK SMALL SQUARE]*/
1866
+ {"srarr", "\xe2\x86\x92" }, /* → [RIGHTWARDS ARROW]*/
1867
+ {"sscr", "\xf0\x9d\x93\x88" }, /* 𝓈 [MATHEMATICAL SCRIPT SMALL S]*/
1868
+ {"ssetmn", "\xe2\x88\x96" }, /* ∖ [SET MINUS]*/
1869
+ {"ssmile", "\xe2\x8c\xa3" }, /* ⌣ [SMILE]*/
1870
+ {"sstarf", "\xe2\x8b\x86" }, /* ⋆ [STAR OPERATOR]*/
1871
+ {"star", "\xe2\x98\x86" }, /* ☆ [WHITE STAR]*/
1872
+ {"starf", "\xe2\x98\x85" }, /* ★ [BLACK STAR]*/
1873
+ {"straightepsilon", "\xcf\xb5" }, /* ϵ [GREEK LUNATE EPSILON SYMBOL]*/
1874
+ {"straightphi", "\xcf\x95" }, /* ϕ [GREEK PHI SYMBOL]*/
1875
+ {"strns", "\xc2\xaf" }, /* ¯ [MACRON]*/
1876
+ {"sub", "\xe2\x8a\x82" }, /* ⊂ [SUBSET OF]*/
1877
+ {"subE", "\xe2\xab\x85" }, /* ⫅ [SUBSET OF ABOVE EQUALS SIGN]*/
1878
+ {"subdot", "\xe2\xaa\xbd" }, /* ⪽ [SUBSET WITH DOT]*/
1879
+ {"sube", "\xe2\x8a\x86" }, /* ⊆ [SUBSET OF OR EQUAL TO]*/
1880
+ {"subedot", "\xe2\xab\x83" }, /* ⫃ [SUBSET OF OR EQUAL TO WITH DOT ABOVE]*/
1881
+ {"submult", "\xe2\xab\x81" }, /* ⫁ [SUBSET WITH MULTIPLICATION SIGN BELOW]*/
1882
+ {"subnE", "\xe2\xab\x8b" }, /* ⫋ [SUBSET OF ABOVE NOT EQUAL TO]*/
1883
+ {"subne", "\xe2\x8a\x8a" }, /* ⊊ [SUBSET OF WITH NOT EQUAL TO]*/
1884
+ {"subplus", "\xe2\xaa\xbf" }, /* ⪿ [SUBSET WITH PLUS SIGN BELOW]*/
1885
+ {"subrarr", "\xe2\xa5\xb9" }, /* ⥹ [SUBSET ABOVE RIGHTWARDS ARROW]*/
1886
+ {"subset", "\xe2\x8a\x82" }, /* ⊂ [SUBSET OF]*/
1887
+ {"subseteq", "\xe2\x8a\x86" }, /* ⊆ [SUBSET OF OR EQUAL TO]*/
1888
+ {"subseteqq", "\xe2\xab\x85" }, /* ⫅ [SUBSET OF ABOVE EQUALS SIGN]*/
1889
+ {"subsetneq", "\xe2\x8a\x8a" }, /* ⊊ [SUBSET OF WITH NOT EQUAL TO]*/
1890
+ {"subsetneqq", "\xe2\xab\x8b" }, /* ⫋ [SUBSET OF ABOVE NOT EQUAL TO]*/
1891
+ {"subsim", "\xe2\xab\x87" }, /* ⫇ [SUBSET OF ABOVE TILDE OPERATOR]*/
1892
+ {"subsub", "\xe2\xab\x95" }, /* ⫕ [SUBSET ABOVE SUBSET]*/
1893
+ {"subsup", "\xe2\xab\x93" }, /* ⫓ [SUBSET ABOVE SUPERSET]*/
1894
+ {"succ", "\xe2\x89\xbb" }, /* ≻ [SUCCEEDS]*/
1895
+ {"succapprox", "\xe2\xaa\xb8" }, /* ⪸ [SUCCEEDS ABOVE ALMOST EQUAL TO]*/
1896
+ {"succcurlyeq", "\xe2\x89\xbd" }, /* ≽ [SUCCEEDS OR EQUAL TO]*/
1897
+ {"succeq", "\xe2\xaa\xb0" }, /* ⪰ [SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN]*/
1898
+ {"succnapprox", "\xe2\xaa\xba" }, /* ⪺ [SUCCEEDS ABOVE NOT ALMOST EQUAL TO]*/
1899
+ {"succneqq", "\xe2\xaa\xb6" }, /* ⪶ [SUCCEEDS ABOVE NOT EQUAL TO]*/
1900
+ {"succnsim", "\xe2\x8b\xa9" }, /* ⋩ [SUCCEEDS BUT NOT EQUIVALENT TO]*/
1901
+ {"succsim", "\xe2\x89\xbf" }, /* ≿ [SUCCEEDS OR EQUIVALENT TO]*/
1902
+ {"sum", "\xe2\x88\x91" }, /* ∑ [N-ARY SUMMATION]*/
1903
+ {"sung", "\xe2\x99\xaa" }, /* ♪ [EIGHTH NOTE]*/
1904
+ {"sup", "\xe2\x8a\x83" }, /* ⊃ [SUPERSET OF]*/
1905
+ {"sup1", "\xc2\xb9" }, /* ¹ [SUPERSCRIPT ONE]*/
1906
+ {"sup2", "\xc2\xb2" }, /* ² [SUPERSCRIPT TWO]*/
1907
+ {"sup3", "\xc2\xb3" }, /* ³ [SUPERSCRIPT THREE]*/
1908
+ {"supE", "\xe2\xab\x86" }, /* ⫆ [SUPERSET OF ABOVE EQUALS SIGN]*/
1909
+ {"supdot", "\xe2\xaa\xbe" }, /* ⪾ [SUPERSET WITH DOT]*/
1910
+ {"supdsub", "\xe2\xab\x98" }, /* ⫘ [SUPERSET BESIDE AND JOINED BY DASH WITH SUBSET]*/
1911
+ {"supe", "\xe2\x8a\x87" }, /* ⊇ [SUPERSET OF OR EQUAL TO]*/
1912
+ {"supedot", "\xe2\xab\x84" }, /* ⫄ [SUPERSET OF OR EQUAL TO WITH DOT ABOVE]*/
1913
+ {"suphsol", "\xe2\x8a\x83\x2f" }, /* ⊃/ [SUPERSET OF, SOLIDUS]*/
1914
+ {"suphsub", "\xe2\xab\x97" }, /* ⫗ [SUPERSET BESIDE SUBSET]*/
1915
+ {"suplarr", "\xe2\xa5\xbb" }, /* ⥻ [SUPERSET ABOVE LEFTWARDS ARROW]*/
1916
+ {"supmult", "\xe2\xab\x82" }, /* ⫂ [SUPERSET WITH MULTIPLICATION SIGN BELOW]*/
1917
+ {"supnE", "\xe2\xab\x8c" }, /* ⫌ [SUPERSET OF ABOVE NOT EQUAL TO]*/
1918
+ {"supne", "\xe2\x8a\x8b" }, /* ⊋ [SUPERSET OF WITH NOT EQUAL TO]*/
1919
+ {"supplus", "\xe2\xab\x80" }, /* ⫀ [SUPERSET WITH PLUS SIGN BELOW]*/
1920
+ {"supset", "\xe2\x8a\x83" }, /* ⊃ [SUPERSET OF]*/
1921
+ {"supseteq", "\xe2\x8a\x87" }, /* ⊇ [SUPERSET OF OR EQUAL TO]*/
1922
+ {"supseteqq", "\xe2\xab\x86" }, /* ⫆ [SUPERSET OF ABOVE EQUALS SIGN]*/
1923
+ {"supsetneq", "\xe2\x8a\x8b" }, /* ⊋ [SUPERSET OF WITH NOT EQUAL TO]*/
1924
+ {"supsetneqq", "\xe2\xab\x8c" }, /* ⫌ [SUPERSET OF ABOVE NOT EQUAL TO]*/
1925
+ {"supsim", "\xe2\xab\x88" }, /* ⫈ [SUPERSET OF ABOVE TILDE OPERATOR]*/
1926
+ {"supsub", "\xe2\xab\x94" }, /* ⫔ [SUPERSET ABOVE SUBSET]*/
1927
+ {"supsup", "\xe2\xab\x96" }, /* ⫖ [SUPERSET ABOVE SUPERSET]*/
1928
+ {"swArr", "\xe2\x87\x99" }, /* ⇙ [SOUTH WEST DOUBLE ARROW]*/
1929
+ {"swarhk", "\xe2\xa4\xa6" }, /* ⤦ [SOUTH WEST ARROW WITH HOOK]*/
1930
+ {"swarr", "\xe2\x86\x99" }, /* ↙ [SOUTH WEST ARROW]*/
1931
+ {"swarrow", "\xe2\x86\x99" }, /* ↙ [SOUTH WEST ARROW]*/
1932
+ {"swnwar", "\xe2\xa4\xaa" }, /* ⤪ [SOUTH WEST ARROW AND NORTH WEST ARROW]*/
1933
+ {"szlig", "\xc3\x9f" }, /* ß [LATIN SMALL LETTER SHARP S]*/
1934
+ {"target", "\xe2\x8c\x96" }, /* ⌖ [POSITION INDICATOR]*/
1935
+ {"tau", "\xcf\x84" }, /* τ [GREEK SMALL LETTER TAU]*/
1936
+ {"tbrk", "\xe2\x8e\xb4" }, /* ⎴ [TOP SQUARE BRACKET]*/
1937
+ {"tcaron", "\xc5\xa5" }, /* ť [LATIN SMALL LETTER T WITH CARON]*/
1938
+ {"tcedil", "\xc5\xa3" }, /* ţ [LATIN SMALL LETTER T WITH CEDILLA]*/
1939
+ {"tcy", "\xd1\x82" }, /* т [CYRILLIC SMALL LETTER TE]*/
1940
+ {"tdot", "\xe2\x83\x9b" }, /* ⃛ [COMBINING THREE DOTS ABOVE]*/
1941
+ {"telrec", "\xe2\x8c\x95" }, /* ⌕ [TELEPHONE RECORDER]*/
1942
+ {"tfr", "\xf0\x9d\x94\xb1" }, /* 𝔱 [MATHEMATICAL FRAKTUR SMALL T]*/
1943
+ {"there4", "\xe2\x88\xb4" }, /* ∴ [THEREFORE]*/
1944
+ {"therefore", "\xe2\x88\xb4" }, /* ∴ [THEREFORE]*/
1945
+ {"theta", "\xce\xb8" }, /* θ [GREEK SMALL LETTER THETA]*/
1946
+ {"thetav", "\xcf\x91" }, /* ϑ [GREEK THETA SYMBOL]*/
1947
+ {"thickapprox", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
1948
+ {"thicksim", "\xe2\x88\xbc" }, /* ∼ [TILDE OPERATOR]*/
1949
+ {"thinsp", "\xe2\x80\x89" }, /*   [THIN SPACE]*/
1950
+ {"thkap", "\xe2\x89\x88" }, /* ≈ [ALMOST EQUAL TO]*/
1951
+ {"thksim", "\xe2\x88\xbc" }, /* ∼ [TILDE OPERATOR]*/
1952
+ {"thorn", "\xc3\xbe" }, /* þ [LATIN SMALL LETTER THORN]*/
1953
+ {"tilde", "\xcb\x9c" }, /* ˜ [SMALL TILDE]*/
1954
+ {"times", "\xc3\x97" }, /* × [MULTIPLICATION SIGN]*/
1955
+ {"timesb", "\xe2\x8a\xa0" }, /* ⊠ [SQUARED TIMES]*/
1956
+ {"timesbar", "\xe2\xa8\xb1" }, /* ⨱ [MULTIPLICATION SIGN WITH UNDERBAR]*/
1957
+ {"timesd", "\xe2\xa8\xb0" }, /* ⨰ [MULTIPLICATION SIGN WITH DOT ABOVE]*/
1958
+ {"tint", "\xe2\x88\xad" }, /* ∭ [TRIPLE INTEGRAL]*/
1959
+ {"toea", "\xe2\xa4\xa8" }, /* ⤨ [NORTH EAST ARROW AND SOUTH EAST ARROW]*/
1960
+ {"top", "\xe2\x8a\xa4" }, /* ⊤ [DOWN TACK]*/
1961
+ {"topbot", "\xe2\x8c\xb6" }, /* ⌶ [APL FUNCTIONAL SYMBOL I-BEAM]*/
1962
+ {"topcir", "\xe2\xab\xb1" }, /* ⫱ [DOWN TACK WITH CIRCLE BELOW]*/
1963
+ {"topf", "\xf0\x9d\x95\xa5" }, /* 𝕥 [MATHEMATICAL DOUBLE-STRUCK SMALL T]*/
1964
+ {"topfork", "\xe2\xab\x9a" }, /* ⫚ [PITCHFORK WITH TEE TOP]*/
1965
+ {"tosa", "\xe2\xa4\xa9" }, /* ⤩ [SOUTH EAST ARROW AND SOUTH WEST ARROW]*/
1966
+ {"tprime", "\xe2\x80\xb4" }, /* ‴ [TRIPLE PRIME]*/
1967
+ {"trade", "\xe2\x84\xa2" }, /* ™ [TRADE MARK SIGN]*/
1968
+ {"triangle", "\xe2\x96\xb5" }, /* ▵ [WHITE UP-POINTING SMALL TRIANGLE]*/
1969
+ {"triangledown", "\xe2\x96\xbf" }, /* ▿ [WHITE DOWN-POINTING SMALL TRIANGLE]*/
1970
+ {"triangleleft", "\xe2\x97\x83" }, /* ◃ [WHITE LEFT-POINTING SMALL TRIANGLE]*/
1971
+ {"trianglelefteq", "\xe2\x8a\xb4" }, /* ⊴ [NORMAL SUBGROUP OF OR EQUAL TO]*/
1972
+ {"triangleq", "\xe2\x89\x9c" }, /* ≜ [DELTA EQUAL TO]*/
1973
+ {"triangleright", "\xe2\x96\xb9" }, /* ▹ [WHITE RIGHT-POINTING SMALL TRIANGLE]*/
1974
+ {"trianglerighteq", "\xe2\x8a\xb5" }, /* ⊵ [CONTAINS AS NORMAL SUBGROUP OR EQUAL TO]*/
1975
+ {"tridot", "\xe2\x97\xac" }, /* ◬ [WHITE UP-POINTING TRIANGLE WITH DOT]*/
1976
+ {"trie", "\xe2\x89\x9c" }, /* ≜ [DELTA EQUAL TO]*/
1977
+ {"triminus", "\xe2\xa8\xba" }, /* ⨺ [MINUS SIGN IN TRIANGLE]*/
1978
+ {"triplus", "\xe2\xa8\xb9" }, /* ⨹ [PLUS SIGN IN TRIANGLE]*/
1979
+ {"trisb", "\xe2\xa7\x8d" }, /* ⧍ [TRIANGLE WITH SERIFS AT BOTTOM]*/
1980
+ {"tritime", "\xe2\xa8\xbb" }, /* ⨻ [MULTIPLICATION SIGN IN TRIANGLE]*/
1981
+ {"trpezium", "\xef\xbf\xbd" }, /* � [REPLACEMENT CHARACTER]*/
1982
+ {"tscr", "\xf0\x9d\x93\x89" }, /* 𝓉 [MATHEMATICAL SCRIPT SMALL T]*/
1983
+ {"tscy", "\xd1\x86" }, /* ц [CYRILLIC SMALL LETTER TSE]*/
1984
+ {"tshcy", "\xd1\x9b" }, /* ћ [CYRILLIC SMALL LETTER TSHE]*/
1985
+ {"tstrok", "\xc5\xa7" }, /* ŧ [LATIN SMALL LETTER T WITH STROKE]*/
1986
+ {"twixt", "\xe2\x89\xac" }, /* ≬ [BETWEEN]*/
1987
+ {"twoheadleftarrow", "\xe2\x86\x9e" }, /* ↞ [LEFTWARDS TWO HEADED ARROW]*/
1988
+ {"twoheadrightarrow", "\xe2\x86\xa0" }, /* ↠ [RIGHTWARDS TWO HEADED ARROW]*/
1989
+ {"uArr", "\xe2\x87\x91" }, /* ⇑ [UPWARDS DOUBLE ARROW]*/
1990
+ {"uHar", "\xe2\xa5\xa3" }, /* ⥣ [UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT]*/
1991
+ {"uacute", "\xc3\xba" }, /* ú [LATIN SMALL LETTER U WITH ACUTE]*/
1992
+ {"uarr", "\xe2\x86\x91" }, /* ↑ [UPWARDS ARROW]*/
1993
+ {"ubrcy", "\xd1\x9e" }, /* ў [CYRILLIC SMALL LETTER SHORT U]*/
1994
+ {"ubreve", "\xc5\xad" }, /* ŭ [LATIN SMALL LETTER U WITH BREVE]*/
1995
+ {"ucirc", "\xc3\xbb" }, /* û [LATIN SMALL LETTER U WITH CIRCUMFLEX]*/
1996
+ {"ucy", "\xd1\x83" }, /* у [CYRILLIC SMALL LETTER U]*/
1997
+ {"udarr", "\xe2\x87\x85" }, /* ⇅ [UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW]*/
1998
+ {"udblac", "\xc5\xb1" }, /* ű [LATIN SMALL LETTER U WITH DOUBLE ACUTE]*/
1999
+ {"udhar", "\xe2\xa5\xae" }, /* ⥮ [UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT]*/
2000
+ {"ufisht", "\xe2\xa5\xbe" }, /* ⥾ [UP FISH TAIL]*/
2001
+ {"ufr", "\xf0\x9d\x94\xb2" }, /* 𝔲 [MATHEMATICAL FRAKTUR SMALL U]*/
2002
+ {"ugrave", "\xc3\xb9" }, /* ù [LATIN SMALL LETTER U WITH GRAVE]*/
2003
+ {"uharl", "\xe2\x86\xbf" }, /* ↿ [UPWARDS HARPOON WITH BARB LEFTWARDS]*/
2004
+ {"uharr", "\xe2\x86\xbe" }, /* ↾ [UPWARDS HARPOON WITH BARB RIGHTWARDS]*/
2005
+ {"uhblk", "\xe2\x96\x80" }, /* ▀ [UPPER HALF BLOCK]*/
2006
+ {"ulcorn", "\xe2\x8c\x9c" }, /* ⌜ [TOP LEFT CORNER]*/
2007
+ {"ulcorner", "\xe2\x8c\x9c" }, /* ⌜ [TOP LEFT CORNER]*/
2008
+ {"ulcrop", "\xe2\x8c\x8f" }, /* ⌏ [TOP LEFT CROP]*/
2009
+ {"ultri", "\xe2\x97\xb8" }, /* ◸ [UPPER LEFT TRIANGLE]*/
2010
+ {"umacr", "\xc5\xab" }, /* ū [LATIN SMALL LETTER U WITH MACRON]*/
2011
+ {"uml", "\xc2\xa8" }, /* ¨ [DIAERESIS]*/
2012
+ {"uogon", "\xc5\xb3" }, /* ų [LATIN SMALL LETTER U WITH OGONEK]*/
2013
+ {"uopf", "\xf0\x9d\x95\xa6" }, /* 𝕦 [MATHEMATICAL DOUBLE-STRUCK SMALL U]*/
2014
+ {"uparrow", "\xe2\x86\x91" }, /* ↑ [UPWARDS ARROW]*/
2015
+ {"updownarrow", "\xe2\x86\x95" }, /* ↕ [UP DOWN ARROW]*/
2016
+ {"upharpoonleft", "\xe2\x86\xbf" }, /* ↿ [UPWARDS HARPOON WITH BARB LEFTWARDS]*/
2017
+ {"upharpoonright", "\xe2\x86\xbe" }, /* ↾ [UPWARDS HARPOON WITH BARB RIGHTWARDS]*/
2018
+ {"uplus", "\xe2\x8a\x8e" }, /* ⊎ [MULTISET UNION]*/
2019
+ {"upsi", "\xcf\x85" }, /* υ [GREEK SMALL LETTER UPSILON]*/
2020
+ {"upsilon", "\xcf\x85" }, /* υ [GREEK SMALL LETTER UPSILON]*/
2021
+ {"upuparrows", "\xe2\x87\x88" }, /* ⇈ [UPWARDS PAIRED ARROWS]*/
2022
+ {"urcorn", "\xe2\x8c\x9d" }, /* ⌝ [TOP RIGHT CORNER]*/
2023
+ {"urcorner", "\xe2\x8c\x9d" }, /* ⌝ [TOP RIGHT CORNER]*/
2024
+ {"urcrop", "\xe2\x8c\x8e" }, /* ⌎ [TOP RIGHT CROP]*/
2025
+ {"uring", "\xc5\xaf" }, /* ů [LATIN SMALL LETTER U WITH RING ABOVE]*/
2026
+ {"urtri", "\xe2\x97\xb9" }, /* ◹ [UPPER RIGHT TRIANGLE]*/
2027
+ {"uscr", "\xf0\x9d\x93\x8a" }, /* 𝓊 [MATHEMATICAL SCRIPT SMALL U]*/
2028
+ {"utdot", "\xe2\x8b\xb0" }, /* ⋰ [UP RIGHT DIAGONAL ELLIPSIS]*/
2029
+ {"utilde", "\xc5\xa9" }, /* ũ [LATIN SMALL LETTER U WITH TILDE]*/
2030
+ {"utri", "\xe2\x96\xb5" }, /* ▵ [WHITE UP-POINTING SMALL TRIANGLE]*/
2031
+ {"utrif", "\xe2\x96\xb4" }, /* ▴ [BLACK UP-POINTING SMALL TRIANGLE]*/
2032
+ {"uuarr", "\xe2\x87\x88" }, /* ⇈ [UPWARDS PAIRED ARROWS]*/
2033
+ {"uuml", "\xc3\xbc" }, /* ü [LATIN SMALL LETTER U WITH DIAERESIS]*/
2034
+ {"uwangle", "\xe2\xa6\xa7" }, /* ⦧ [OBLIQUE ANGLE OPENING DOWN]*/
2035
+ {"vArr", "\xe2\x87\x95" }, /* ⇕ [UP DOWN DOUBLE ARROW]*/
2036
+ {"vBar", "\xe2\xab\xa8" }, /* ⫨ [SHORT UP TACK WITH UNDERBAR]*/
2037
+ {"vBarv", "\xe2\xab\xa9" }, /* ⫩ [SHORT UP TACK ABOVE SHORT DOWN TACK]*/
2038
+ {"vDash", "\xe2\x8a\xa8" }, /* ⊨ [TRUE]*/
2039
+ {"vangrt", "\xe2\xa6\x9c" }, /* ⦜ [RIGHT ANGLE VARIANT WITH SQUARE]*/
2040
+ {"varepsilon", "\xce\xb5" }, /* ε [GREEK SMALL LETTER EPSILON]*/
2041
+ {"varkappa", "\xcf\xb0" }, /* ϰ [GREEK KAPPA SYMBOL]*/
2042
+ {"varnothing", "\xe2\x88\x85" }, /* ∅ [EMPTY SET]*/
2043
+ {"varphi", "\xcf\x86" }, /* φ [GREEK SMALL LETTER PHI]*/
2044
+ {"varpi", "\xcf\x96" }, /* ϖ [GREEK PI SYMBOL]*/
2045
+ {"varpropto", "\xe2\x88\x9d" }, /* ∝ [PROPORTIONAL TO]*/
2046
+ {"varr", "\xe2\x86\x95" }, /* ↕ [UP DOWN ARROW]*/
2047
+ {"varrho", "\xcf\xb1" }, /* ϱ [GREEK RHO SYMBOL]*/
2048
+ {"varsigma", "\xcf\x82" }, /* ς [GREEK SMALL LETTER FINAL SIGMA]*/
2049
+ {"varsubsetneq", "\xe2\x8a\x8a\xef\xb8\x80"}, /* ⊊︀ [SUBSET OF WITH NOT EQUAL TO - variant with stroke through bottom members]*/
2050
+ {"varsubsetneqq", "\xe2\xab\x8b\xef\xb8\x80"}, /* ⫋︀ [SUBSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members]*/
2051
+ {"varsupsetneq", "\xe2\x8a\x8b\xef\xb8\x80"}, /* ⊋︀ [SUPERSET OF WITH NOT EQUAL TO - variant with stroke through bottom members]*/
2052
+ {"varsupsetneqq", "\xe2\xab\x8c\xef\xb8\x80"}, /* ⫌︀ [SUPERSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members]*/
2053
+ {"vartheta", "\xcf\x91" }, /* ϑ [GREEK THETA SYMBOL]*/
2054
+ {"vartriangleleft", "\xe2\x8a\xb2" }, /* ⊲ [NORMAL SUBGROUP OF]*/
2055
+ {"vartriangleright", "\xe2\x8a\xb3" }, /* ⊳ [CONTAINS AS NORMAL SUBGROUP]*/
2056
+ {"vcy", "\xd0\xb2" }, /* в [CYRILLIC SMALL LETTER VE]*/
2057
+ {"vdash", "\xe2\x8a\xa2" }, /* ⊢ [RIGHT TACK]*/
2058
+ {"vee", "\xe2\x88\xa8" }, /* ∨ [LOGICAL OR]*/
2059
+ {"veebar", "\xe2\x8a\xbb" }, /* ⊻ [XOR]*/
2060
+ {"veeeq", "\xe2\x89\x9a" }, /* ≚ [EQUIANGULAR TO]*/
2061
+ {"vellip", "\xe2\x8b\xae" }, /* ⋮ [VERTICAL ELLIPSIS]*/
2062
+ {"verbar", "\x7c" }, /* | [VERTICAL LINE]*/
2063
+ {"vert", "\x7c" }, /* | [VERTICAL LINE]*/
2064
+ {"vfr", "\xf0\x9d\x94\xb3" }, /* 𝔳 [MATHEMATICAL FRAKTUR SMALL V]*/
2065
+ {"vltri", "\xe2\x8a\xb2" }, /* ⊲ [NORMAL SUBGROUP OF]*/
2066
+ {"vnsub", "\xe2\x8a\x82\xe2\x83\x92"}, /* ⊂⃒ [SUBSET OF with vertical line]*/
2067
+ {"vnsup", "\xe2\x8a\x83\xe2\x83\x92"}, /* ⊃⃒ [SUPERSET OF with vertical line]*/
2068
+ {"vopf", "\xf0\x9d\x95\xa7" }, /* 𝕧 [MATHEMATICAL DOUBLE-STRUCK SMALL V]*/
2069
+ {"vprop", "\xe2\x88\x9d" }, /* ∝ [PROPORTIONAL TO]*/
2070
+ {"vrtri", "\xe2\x8a\xb3" }, /* ⊳ [CONTAINS AS NORMAL SUBGROUP]*/
2071
+ {"vscr", "\xf0\x9d\x93\x8b" }, /* 𝓋 [MATHEMATICAL SCRIPT SMALL V]*/
2072
+ {"vsubnE", "\xe2\xab\x8b\xef\xb8\x80"}, /* ⫋︀ [SUBSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members]*/
2073
+ {"vsubne", "\xe2\x8a\x8a\xef\xb8\x80"}, /* ⊊︀ [SUBSET OF WITH NOT EQUAL TO - variant with stroke through bottom members]*/
2074
+ {"vsupnE", "\xe2\xab\x8c\xef\xb8\x80"}, /* ⫌︀ [SUPERSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members]*/
2075
+ {"vsupne", "\xe2\x8a\x8b\xef\xb8\x80"}, /* ⊋︀ [SUPERSET OF WITH NOT EQUAL TO - variant with stroke through bottom members]*/
2076
+ {"vzigzag", "\xe2\xa6\x9a" }, /* ⦚ [VERTICAL ZIGZAG LINE]*/
2077
+ {"wcirc", "\xc5\xb5" }, /* ŵ [LATIN SMALL LETTER W WITH CIRCUMFLEX]*/
2078
+ {"wedbar", "\xe2\xa9\x9f" }, /* ⩟ [LOGICAL AND WITH UNDERBAR]*/
2079
+ {"wedge", "\xe2\x88\xa7" }, /* ∧ [LOGICAL AND]*/
2080
+ {"wedgeq", "\xe2\x89\x99" }, /* ≙ [ESTIMATES]*/
2081
+ {"weierp", "\xe2\x84\x98" }, /* ℘ [SCRIPT CAPITAL P]*/
2082
+ {"wfr", "\xf0\x9d\x94\xb4" }, /* 𝔴 [MATHEMATICAL FRAKTUR SMALL W]*/
2083
+ {"wopf", "\xf0\x9d\x95\xa8" }, /* 𝕨 [MATHEMATICAL DOUBLE-STRUCK SMALL W]*/
2084
+ {"wp", "\xe2\x84\x98" }, /* ℘ [SCRIPT CAPITAL P]*/
2085
+ {"wr", "\xe2\x89\x80" }, /* ≀ [WREATH PRODUCT]*/
2086
+ {"wreath", "\xe2\x89\x80" }, /* ≀ [WREATH PRODUCT]*/
2087
+ {"wscr", "\xf0\x9d\x93\x8c" }, /* 𝓌 [MATHEMATICAL SCRIPT SMALL W]*/
2088
+ {"xcap", "\xe2\x8b\x82" }, /* ⋂ [N-ARY INTERSECTION]*/
2089
+ {"xcirc", "\xe2\x97\xaf" }, /* ◯ [LARGE CIRCLE]*/
2090
+ {"xcup", "\xe2\x8b\x83" }, /* ⋃ [N-ARY UNION]*/
2091
+ {"xdtri", "\xe2\x96\xbd" }, /* ▽ [WHITE DOWN-POINTING TRIANGLE]*/
2092
+ {"xfr", "\xf0\x9d\x94\xb5" }, /* 𝔵 [MATHEMATICAL FRAKTUR SMALL X]*/
2093
+ {"xhArr", "\xe2\x9f\xba" }, /* ⟺ [LONG LEFT RIGHT DOUBLE ARROW]*/
2094
+ {"xharr", "\xe2\x9f\xb7" }, /* ⟷ [LONG LEFT RIGHT ARROW]*/
2095
+ {"xi", "\xce\xbe" }, /* ξ [GREEK SMALL LETTER XI]*/
2096
+ {"xlArr", "\xe2\x9f\xb8" }, /* ⟸ [LONG LEFTWARDS DOUBLE ARROW]*/
2097
+ {"xlarr", "\xe2\x9f\xb5" }, /* ⟵ [LONG LEFTWARDS ARROW]*/
2098
+ {"xmap", "\xe2\x9f\xbc" }, /* ⟼ [LONG RIGHTWARDS ARROW FROM BAR]*/
2099
+ {"xnis", "\xe2\x8b\xbb" }, /* ⋻ [CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE]*/
2100
+ {"xodot", "\xe2\xa8\x80" }, /* ⨀ [N-ARY CIRCLED DOT OPERATOR]*/
2101
+ {"xopf", "\xf0\x9d\x95\xa9" }, /* 𝕩 [MATHEMATICAL DOUBLE-STRUCK SMALL X]*/
2102
+ {"xoplus", "\xe2\xa8\x81" }, /* ⨁ [N-ARY CIRCLED PLUS OPERATOR]*/
2103
+ {"xotime", "\xe2\xa8\x82" }, /* ⨂ [N-ARY CIRCLED TIMES OPERATOR]*/
2104
+ {"xrArr", "\xe2\x9f\xb9" }, /* ⟹ [LONG RIGHTWARDS DOUBLE ARROW]*/
2105
+ {"xrarr", "\xe2\x9f\xb6" }, /* ⟶ [LONG RIGHTWARDS ARROW]*/
2106
+ {"xscr", "\xf0\x9d\x93\x8d" }, /* 𝓍 [MATHEMATICAL SCRIPT SMALL X]*/
2107
+ {"xsqcup", "\xe2\xa8\x86" }, /* ⨆ [N-ARY SQUARE UNION OPERATOR]*/
2108
+ {"xuplus", "\xe2\xa8\x84" }, /* ⨄ [N-ARY UNION OPERATOR WITH PLUS]*/
2109
+ {"xutri", "\xe2\x96\xb3" }, /* △ [WHITE UP-POINTING TRIANGLE]*/
2110
+ {"xvee", "\xe2\x8b\x81" }, /* ⋁ [N-ARY LOGICAL OR]*/
2111
+ {"xwedge", "\xe2\x8b\x80" }, /* ⋀ [N-ARY LOGICAL AND]*/
2112
+ {"yacute", "\xc3\xbd" }, /* ý [LATIN SMALL LETTER Y WITH ACUTE]*/
2113
+ {"yacy", "\xd1\x8f" }, /* я [CYRILLIC SMALL LETTER YA]*/
2114
+ {"ycirc", "\xc5\xb7" }, /* ŷ [LATIN SMALL LETTER Y WITH CIRCUMFLEX]*/
2115
+ {"ycy", "\xd1\x8b" }, /* ы [CYRILLIC SMALL LETTER YERU]*/
2116
+ {"yen", "\xc2\xa5" }, /* ¥ [YEN SIGN]*/
2117
+ {"yfr", "\xf0\x9d\x94\xb6" }, /* 𝔶 [MATHEMATICAL FRAKTUR SMALL Y]*/
2118
+ {"yicy", "\xd1\x97" }, /* ї [CYRILLIC SMALL LETTER YI]*/
2119
+ {"yopf", "\xf0\x9d\x95\xaa" }, /* 𝕪 [MATHEMATICAL DOUBLE-STRUCK SMALL Y]*/
2120
+ {"yscr", "\xf0\x9d\x93\x8e" }, /* 𝓎 [MATHEMATICAL SCRIPT SMALL Y]*/
2121
+ {"yucy", "\xd1\x8e" }, /* ю [CYRILLIC SMALL LETTER YU]*/
2122
+ {"yuml", "\xc3\xbf" }, /* ÿ [LATIN SMALL LETTER Y WITH DIAERESIS]*/
2123
+ {"zacute", "\xc5\xba" }, /* ź [LATIN SMALL LETTER Z WITH ACUTE]*/
2124
+ {"zcaron", "\xc5\xbe" }, /* ž [LATIN SMALL LETTER Z WITH CARON]*/
2125
+ {"zcy", "\xd0\xb7" }, /* з [CYRILLIC SMALL LETTER ZE]*/
2126
+ {"zdot", "\xc5\xbc" }, /* ż [LATIN SMALL LETTER Z WITH DOT ABOVE]*/
2127
+ {"zeetrf", "\xe2\x84\xa8" }, /* ℨ [BLACK-LETTER CAPITAL Z]*/
2128
+ {"zeta", "\xce\xb6" }, /* ζ [GREEK SMALL LETTER ZETA]*/
2129
+ {"zfr", "\xf0\x9d\x94\xb7" }, /* 𝔷 [MATHEMATICAL FRAKTUR SMALL Z]*/
2130
+ {"zhcy", "\xd0\xb6" }, /* ж [CYRILLIC SMALL LETTER ZHE]*/
2131
+ {"zigrarr", "\xe2\x87\x9d" }, /* ⇝ [RIGHTWARDS SQUIGGLE ARROW]*/
2132
+ {"zopf", "\xf0\x9d\x95\xab" }, /* 𝕫 [MATHEMATICAL DOUBLE-STRUCK SMALL Z]*/
2133
+ {"zscr", "\xf0\x9d\x93\x8f" } /* 𝓏 [MATHEMATICAL SCRIPT SMALL Z]*/
2134
+ };
2135
+
2136
+ static GHashTable *
2137
+ lsm_dom_get_entities (void)
2138
+ {
2139
+ static GHashTable *entity_hash = NULL;
2140
+ int i;
2141
+
2142
+ if (entity_hash != NULL)
2143
+ return entity_hash;
2144
+
2145
+ entity_hash = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, NULL);
2146
+
2147
+ for (i = 0; i < G_N_ELEMENTS (lsm_dom_entities); i++)
2148
+ g_hash_table_insert (entity_hash,
2149
+ (char *) lsm_dom_entities[i].name,
2150
+ (char *) lsm_dom_entities[i].utf8);
2151
+
2152
+ return entity_hash;
2153
+ }
2154
+
2155
+ const char *
2156
+ lsm_dom_get_entity (const char *name)
2157
+ {
2158
+ const char *utf8;
2159
+
2160
+ utf8 = g_hash_table_lookup (lsm_dom_get_entities (), name);
2161
+
2162
+ if (utf8 == NULL)
2163
+ return name;
2164
+
2165
+ return utf8;
2166
+ }