This repository was archived by the owner on Feb 3, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnamed_characters.cpp
More file actions
521 lines (504 loc) · 46 KB
/
Copy pathnamed_characters.cpp
File metadata and controls
521 lines (504 loc) · 46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
/**
* Copyright (C) 2020 Tristan. All Rights Reserved.
* This file is licensed under the BSD 2-Clause license.
* See the COPYING file for licensing information.
*/
#include "named_characters.hpp"
#include <iostream>
#include <map>
#include <memory>
struct NCNode {
bool hasValue {false};
Unicode::CodePoint value {0};
std::map<uint8_t, std::shared_ptr<NCNode>> children {{}};
};
std::shared_ptr<NCNode> rootNode;
namespace NamedCharacters {
NCStatus
Find(const Unicode::UString &string, Unicode::CodePoint *result) {
std::shared_ptr<NCNode> node = rootNode;
for (std::size_t i = 0; i < string.length(); i++) {
if (string[i] > 0x80)
return NCStatus::INVALID_STRING;
auto iterator = node->children.find(static_cast<uint8_t>(string[i]));
if (iterator == node->children.end()) {
std::cout << "The " << i << "st character of the string '" << string
<< "' wasn't found! (NCStatus::NOT_FOUND)" << std::endl;
return NCStatus::NOT_FOUND;
}
node = iterator->second;
}
if (node->hasValue) {
*result = node->value;
return node->children.empty() ? NCStatus::FOUND : NCStatus::AMBIGUOUS;
}
return NCStatus::NOT_FOUND;
}
void
Setup() {
const std::map<const char *, Unicode::CodePoint> GlobalMap = {{"Aacute", 0x000}, {"Aacute", 0x000},
{"aacute", 0x000}, {"aacute", 0x000}, {"Abreve", 0x001}, {"abreve", 0x001}, {"ac", 0x022}, {"acd", 0x022},
{"acE", 0x0223E}, {"Acirc", 0x000}, {"Acirc", 0x000}, {"acirc", 0x000}, {"acirc", 0x000}, {"acute", 0x000},
{"acute", 0x000}, {"Acy", 0x004}, {"acy", 0x004}, {"AElig", 0x000}, {"AElig", 0x000}, {"aelig", 0x000},
{"aelig", 0x000}, {"af", 0x020}, {"Afr", 0x1D5}, {"afr", 0x1D5}, {"Agrave", 0x000}, {"Agrave", 0x000},
{"agrave", 0x000}, {"agrave", 0x000}, {"alefsym", 0x021}, {"aleph", 0x021}, {"Alpha", 0x003},
{"alpha", 0x003}, {"Amacr", 0x001}, {"amacr", 0x001}, {"amalg", 0x02A}, {"AMP", 0x000}, {"AMP", 0x000},
{"amp", 0x000}, {"amp", 0x000}, {"And", 0x02A}, {"and", 0x022}, {"andand", 0x02A}, {"andd", 0x02A},
{"andslope", 0x02A}, {"andv", 0x02A}, {"ang", 0x022}, {"ange", 0x029}, {"angle", 0x022}, {"angmsd", 0x022},
{"angmsdaa", 0x029}, {"angmsdab", 0x029}, {"angmsdac", 0x029}, {"angmsdad", 0x029}, {"angmsdae", 0x029},
{"angmsdaf", 0x029}, {"angmsdag", 0x029}, {"angmsdah", 0x029}, {"angrt", 0x022}, {"angrtvb", 0x022},
{"angrtvbd", 0x029}, {"angsph", 0x022}, {"angst", 0x000}, {"angzarr", 0x023}, {"Aogon", 0x001},
{"aogon", 0x001}, {"Aopf", 0x1D5}, {"aopf", 0x1D5}, {"ap", 0x022}, {"apacir", 0x02A}, {"apE", 0x02A},
{"ape", 0x022}, {"apid", 0x022}, {"apos", 0x000}, {"ApplyFunction", 0x020}, {"approx", 0x022},
{"approxeq", 0x022}, {"Aring", 0x000}, {"Aring", 0x000}, {"aring", 0x000}, {"aring", 0x000},
{"Ascr", 0x1D4}, {"ascr", 0x1D4}, {"Assign", 0x022}, {"ast", 0x000}, {"asymp", 0x022}, {"asympeq", 0x022},
{"Atilde", 0x000}, {"Atilde", 0x000}, {"atilde", 0x000}, {"atilde", 0x000}, {"Auml", 0x000},
{"Auml", 0x000}, {"auml", 0x000}, {"auml", 0x000}, {"awconint", 0x022}, {"awint", 0x02A},
{"backcong", 0x022}, {"backepsilon", 0x003}, {"backprime", 0x020}, {"backsim", 0x022}, {"backsimeq", 0x022},
{"Backslash", 0x022}, {"Barv", 0x02A}, {"barvee", 0x022}, {"Barwed", 0x023}, {"barwed", 0x023},
{"barwedge", 0x023}, {"bbrk", 0x023}, {"bbrktbrk", 0x023}, {"bcong", 0x022}, {"Bcy", 0x004}, {"bcy", 0x004},
{"bdquo", 0x020}, {"becaus", 0x022}, {"Because", 0x022}, {"because", 0x022}, {"bemptyv", 0x029},
{"bepsi", 0x003}, {"bernou", 0x021}, {"Bernoullis", 0x021}, {"Beta", 0x003}, {"beta", 0x003},
{"beth", 0x021}, {"between", 0x022}, {"Bfr", 0x1D5}, {"bfr", 0x1D5}, {"bigcap", 0x022}, {"bigcirc", 0x025},
{"bigcup", 0x022}, {"bigodot", 0x02A}, {"bigoplus", 0x02A}, {"bigotimes", 0x02A}, {"bigsqcup", 0x02A},
{"bigstar", 0x026}, {"bigtriangledown", 0x025}, {"bigtriangleup", 0x025}, {"biguplus", 0x02A},
{"bigvee", 0x022}, {"bigwedge", 0x022}, {"bkarow", 0x029}, {"blacklozenge", 0x029}, {"blacksquare", 0x025},
{"blacktriangle", 0x025}, {"blacktriangledown", 0x025}, {"blacktriangleleft", 0x025},
{"blacktriangleright", 0x025}, {"blank", 0x024}, {"blk12", 0x025}, {"blk14", 0x025}, {"blk34", 0x025},
{"block", 0x025}, {"bne", 0x0003D}, {"bnequiv", 0x02261}, {"bNot", 0x02A}, {"bnot", 0x023}, {"Bopf", 0x1D5},
{"bopf", 0x1D5}, {"bot", 0x022}, {"bottom", 0x022}, {"bowtie", 0x022}, {"boxbox", 0x029}, {"boxDL", 0x025},
{"boxDl", 0x025}, {"boxdL", 0x025}, {"boxdl", 0x025}, {"boxDR", 0x025}, {"boxDr", 0x025}, {"boxdR", 0x025},
{"boxdr", 0x025}, {"boxH", 0x025}, {"boxh", 0x025}, {"boxHD", 0x025}, {"boxHd", 0x025}, {"boxhD", 0x025},
{"boxhd", 0x025}, {"boxHU", 0x025}, {"boxHu", 0x025}, {"boxhU", 0x025}, {"boxhu", 0x025},
{"boxminus", 0x022}, {"boxplus", 0x022}, {"boxtimes", 0x022}, {"boxUL", 0x025}, {"boxUl", 0x025},
{"boxuL", 0x025}, {"boxul", 0x025}, {"boxUR", 0x025}, {"boxUr", 0x025}, {"boxuR", 0x025}, {"boxur", 0x025},
{"boxV", 0x025}, {"boxv", 0x025}, {"boxVH", 0x025}, {"boxVh", 0x025}, {"boxvH", 0x025}, {"boxvh", 0x025},
{"boxVL", 0x025}, {"boxVl", 0x025}, {"boxvL", 0x025}, {"boxvl", 0x025}, {"boxVR", 0x025}, {"boxVr", 0x025},
{"boxvR", 0x025}, {"boxvr", 0x025}, {"bprime", 0x020}, {"Breve", 0x002}, {"breve", 0x002},
{"brvbar", 0x000}, {"brvbar", 0x000}, {"Bscr", 0x021}, {"bscr", 0x1D4}, {"bsemi", 0x020}, {"bsim", 0x022},
{"bsime", 0x022}, {"bsol", 0x000}, {"bsolb", 0x029}, {"bsolhsub", 0x027}, {"bull", 0x020},
{"bullet", 0x020}, {"bump", 0x022}, {"bumpE", 0x02A}, {"bumpe", 0x022}, {"Bumpeq", 0x022},
{"bumpeq", 0x022}, {"Cacute", 0x001}, {"cacute", 0x001}, {"Cap", 0x022}, {"cap", 0x022}, {"capand", 0x02A},
{"capbrcup", 0x02A}, {"capcap", 0x02A}, {"capcup", 0x02A}, {"capdot", 0x02A},
{"CapitalDifferentialD", 0x021}, {"caps", 0x02229}, {"caret", 0x020}, {"caron", 0x002}, {"Cayleys", 0x021},
{"ccaps", 0x02A}, {"Ccaron", 0x001}, {"ccaron", 0x001}, {"Ccedil", 0x000}, {"Ccedil", 0x000},
{"ccedil", 0x000}, {"ccedil", 0x000}, {"Ccirc", 0x001}, {"ccirc", 0x001}, {"Cconint", 0x022},
{"ccups", 0x02A}, {"ccupssm", 0x02A}, {"Cdot", 0x001}, {"cdot", 0x001}, {"cedil", 0x000}, {"cedil", 0x000},
{"Cedilla", 0x000}, {"cemptyv", 0x029}, {"cent", 0x000}, {"cent", 0x000}, {"CenterDot", 0x000},
{"centerdot", 0x000}, {"Cfr", 0x021}, {"cfr", 0x1D5}, {"CHcy", 0x004}, {"chcy", 0x004}, {"check", 0x027},
{"checkmark", 0x027}, {"Chi", 0x003}, {"chi", 0x003}, {"cir", 0x025}, {"circ", 0x002}, {"circeq", 0x022},
{"circlearrowleft", 0x021}, {"circlearrowright", 0x021}, {"circledast", 0x022}, {"circledcirc", 0x022},
{"circleddash", 0x022}, {"CircleDot", 0x022}, {"circledR", 0x000}, {"circledS", 0x024},
{"CircleMinus", 0x022}, {"CirclePlus", 0x022}, {"CircleTimes", 0x022}, {"cirE", 0x029}, {"cire", 0x022},
{"cirfnint", 0x02A}, {"cirmid", 0x02A}, {"cirscir", 0x029}, {"ClockwiseContourIntegral", 0x022},
{"CloseCurlyDoubleQuote", 0x020}, {"CloseCurlyQuote", 0x020}, {"clubs", 0x026}, {"clubsuit", 0x026},
{"Colon", 0x022}, {"colon", 0x000}, {"Colone", 0x02A}, {"colone", 0x022}, {"coloneq", 0x022},
{"comma", 0x000}, {"commat", 0x000}, {"comp", 0x022}, {"compfn", 0x022}, {"complement", 0x022},
{"complexes", 0x021}, {"cong", 0x022}, {"congdot", 0x02A}, {"Congruent", 0x022}, {"Conint", 0x022},
{"conint", 0x022}, {"ContourIntegral", 0x022}, {"Copf", 0x021}, {"copf", 0x1D5}, {"coprod", 0x022},
{"Coproduct", 0x022}, {"COPY", 0x000},
// { "COPY", 0x000 }, ?
{"copy", 0x000}, {"copy", 0x000}, {"copysr", 0x021}, {"CounterClockwiseContourIntegral", 0x022},
{"crarr", 0x021}, {"Cross", 0x02A}, {"cross", 0x027}, {"Cscr", 0x1D4}, {"cscr", 0x1D4}, {"csub", 0x02A},
{"csube", 0x02A}, {"csup", 0x02A}, {"csupe", 0x02A}, {"ctdot", 0x022}, {"cudarrl", 0x029},
{"cudarrr", 0x029}, {"cuepr", 0x022}, {"cuesc", 0x022}, {"cularr", 0x021}, {"cularrp", 0x029},
{"Cup", 0x022}, {"cup", 0x022}, {"cupbrcap", 0x02A}, {"CupCap", 0x022}, {"cupcap", 0x02A},
{"cupcup", 0x02A}, {"cupdot", 0x022}, {"cupor", 0x02A}, {"cups", 0x0222A}, {"curarr", 0x021},
{"curarrm", 0x029}, {"curlyeqprec", 0x022}, {"curlyeqsucc", 0x022}, {"curlyvee", 0x022},
{"curlywedge", 0x022}, {"curren", 0x000}, {"curren", 0x000}, {"curvearrowleft", 0x021},
{"curvearrowright", 0x021}, {"cuvee", 0x022}, {"cuwed", 0x022}, {"cwconint", 0x022}, {"cwint", 0x022},
{"cylcty", 0x023}, {"Dagger", 0x020}, {"dagger", 0x020}, {"daleth", 0x021}, {"Darr", 0x021},
{"dArr", 0x021}, {"darr", 0x021}, {"dash", 0x020}, {"Dashv", 0x02A}, {"dashv", 0x022}, {"dbkarow", 0x029},
{"dblac", 0x002}, {"Dcaron", 0x001}, {"dcaron", 0x001}, {"Dcy", 0x004}, {"dcy", 0x004}, {"DD", 0x021},
{"dd", 0x021}, {"ddagger", 0x020}, {"ddarr", 0x021}, {"DDotrahd", 0x029}, {"ddotseq", 0x02A},
{"deg", 0x000}, {"deg", 0x000}, {"Del", 0x022}, {"Delta", 0x003}, {"delta", 0x003}, {"demptyv", 0x029},
{"dfisht", 0x029}, {"Dfr", 0x1D5}, {"dfr", 0x1D5}, {"dHar", 0x029}, {"dharl", 0x021}, {"dharr", 0x021},
{"DiacriticalAcute", 0x000}, {"DiacriticalDot", 0x002}, {"DiacriticalDoubleAcute", 0x002},
{"DiacriticalGrave", 0x000}, {"DiacriticalTilde", 0x002}, {"diam", 0x022}, {"Diamond", 0x022},
{"diamond", 0x022}, {"diamondsuit", 0x026}, {"diams", 0x026}, {"die", 0x000}, {"DifferentialD", 0x021},
{"digamma", 0x003}, {"disin", 0x022}, {"div", 0x000}, {"divide", 0x000}, {"divide", 0x000},
{"divideontimes", 0x022}, {"divonx", 0x022}, {"DJcy", 0x004}, {"djcy", 0x004}, {"dlcorn", 0x023},
{"dlcrop", 0x023}, {"dollar", 0x000}, {"Dopf", 0x1D5}, {"dopf", 0x1D5}, {"Dot", 0x000}, {"dot", 0x002},
{"DotDot", 0x020}, {"doteq", 0x022}, {"doteqdot", 0x022}, {"DotEqual", 0x022}, {"dotminus", 0x022},
{"dotplus", 0x022}, {"dotsquare", 0x022}, {"doublebarwedge", 0x023}, {"DoubleContourIntegral", 0x022},
{"DoubleDot", 0x000}, {"DoubleDownArrow", 0x021}, {"DoubleLeftArrow", 0x021},
{"DoubleLeftRightArrow", 0x021}, {"DoubleLeftTee", 0x02A}, {"DoubleLongLeftArrow", 0x027},
{"DoubleLongLeftRightArrow", 0x027}, {"DoubleLongRightArrow", 0x027}, {"DoubleRightArrow", 0x021},
{"DoubleRightTee", 0x022}, {"DoubleUpArrow", 0x021}, {"DoubleUpDownArrow", 0x021},
{"DoubleVerticalBar", 0x022}, {"DownArrow", 0x021}, {"Downarrow", 0x021}, {"downarrow", 0x021},
{"DownArrowBar", 0x029}, {"DownArrowUpArrow", 0x021}, {"DownBreve", 0x003}, {"downdownarrows", 0x021},
{"downharpoonleft", 0x021}, {"downharpoonright", 0x021}, {"DownLeftRightVector", 0x029},
{"DownLeftTeeVector", 0x029}, {"DownLeftVector", 0x021}, {"DownLeftVectorBar", 0x029},
{"DownRightTeeVector", 0x029}, {"DownRightVector", 0x021}, {"DownRightVectorBar", 0x029},
{"DownTee", 0x022}, {"DownTeeArrow", 0x021}, {"drbkarow", 0x029}, {"drcorn", 0x023}, {"drcrop", 0x023},
{"Dscr", 0x1D4}, {"dscr", 0x1D4}, {"DScy", 0x004}, {"dscy", 0x004}, {"dsol", 0x029}, {"Dstrok", 0x001},
{"dstrok", 0x001}, {"dtdot", 0x022}, {"dtri", 0x025}, {"dtrif", 0x025}, {"duarr", 0x021}, {"duhar", 0x029},
{"dwangle", 0x029}, {"DZcy", 0x004}, {"dzcy", 0x004}, {"dzigrarr", 0x027}, {"Eacute", 0x000},
{"Eacute", 0x000}, {"eacute", 0x000}, {"eacute", 0x000}, {"easter", 0x02A}, {"Ecaron", 0x001},
{"ecaron", 0x001}, {"ecir", 0x022}, {"Ecirc", 0x000}, {"Ecirc", 0x000}, {"ecirc", 0x000}, {"ecirc", 0x000},
{"ecolon", 0x022}, {"Ecy", 0x004}, {"ecy", 0x004}, {"eDDot", 0x02A}, {"Edot", 0x001}, {"eDot", 0x022},
{"edot", 0x001}, {"ee", 0x021}, {"efDot", 0x022}, {"Efr", 0x1D5}, {"efr", 0x1D5}, {"eg", 0x02A},
{"Egrave", 0x000}, {"Egrave", 0x000}, {"egrave", 0x000}, {"egrave", 0x000}, {"egs", 0x02A},
{"egsdot", 0x02A}, {"el", 0x02A}, {"Element", 0x022}, {"elinters", 0x023}, {"ell", 0x021}, {"els", 0x02A},
{"elsdot", 0x02A}, {"Emacr", 0x001}, {"emacr", 0x001}, {"empty", 0x022}, {"emptyset", 0x022},
{"EmptySmallSquare", 0x025}, {"emptyv", 0x022}, {"EmptyVerySmallSquare", 0x025}, {"emsp", 0x020},
{"emsp13", 0x020}, {"emsp14", 0x020}, {"ENG", 0x001}, {"eng", 0x001}, {"ensp", 0x020}, {"Eogon", 0x001},
{"eogon", 0x001}, {"Eopf", 0x1D5}, {"eopf", 0x1D5}, {"epar", 0x022}, {"eparsl", 0x029}, {"eplus", 0x02A},
{"epsi", 0x003}, {"Epsilon", 0x003}, {"epsilon", 0x003}, {"epsiv", 0x003}, {"eqcirc", 0x022},
{"eqcolon", 0x022}, {"eqsim", 0x022}, {"eqslantgtr", 0x02A}, {"eqslantless", 0x02A}, {"Equal", 0x02A},
{"equals", 0x000}, {"EqualTilde", 0x022}, {"equest", 0x022}, {"Equilibrium", 0x021}, {"equiv", 0x022},
{"equivDD", 0x02A}, {"eqvparsl", 0x029}, {"erarr", 0x029}, {"erDot", 0x022}, {"Escr", 0x021},
{"escr", 0x021}, {"esdot", 0x022}, {"Esim", 0x02A}, {"esim", 0x022}, {"Eta", 0x003}, {"eta", 0x003},
{"ETH", 0x000}, {"ETH", 0x000}, {"eth", 0x000}, {"eth", 0x000}, {"Euml", 0x000}, {"Euml", 0x000},
{"euml", 0x000}, {"euml", 0x000}, {"euro", 0x020}, {"excl", 0x000}, {"exist", 0x022}, {"Exists", 0x022},
{"expectation", 0x021}, {"ExponentialE", 0x021}, {"exponentiale", 0x021}, {"fallingdotseq", 0x022},
{"Fcy", 0x004}, {"fcy", 0x004}, {"female", 0x026}, {"ffilig", 0x0FB}, {"fflig", 0x0FB}, {"ffllig", 0x0FB},
{"Ffr", 0x1D5}, {"ffr", 0x1D5}, {"filig", 0x0FB}, {"FilledSmallSquare", 0x025},
{"FilledVerySmallSquare", 0x025}, {"fjlig", 0x00066}, {"flat", 0x026}, {"fllig", 0x0FB}, {"fltns", 0x025},
{"fnof", 0x001}, {"Fopf", 0x1D5}, {"fopf", 0x1D5}, {"ForAll", 0x022}, {"forall", 0x022}, {"fork", 0x022},
{"forkv", 0x02A}, {"Fouriertrf", 0x021}, {"fpartint", 0x02A}, {"frac12", 0x000}, {"frac12", 0x000},
{"frac13", 0x021}, {"frac14", 0x000}, {"frac14", 0x000}, {"frac15", 0x021}, {"frac16", 0x021},
{"frac18", 0x021}, {"frac23", 0x021}, {"frac25", 0x021}, {"frac34", 0x000}, {"frac34", 0x000},
{"frac35", 0x021}, {"frac38", 0x021}, {"frac45", 0x021}, {"frac56", 0x021}, {"frac58", 0x021},
{"frac78", 0x021}, {"frasl", 0x020}, {"frown", 0x023}, {"Fscr", 0x021}, {"fscr", 0x1D4}, {"gacute", 0x001},
{"Gamma", 0x003}, {"gamma", 0x003}, {"Gammad", 0x003}, {"gammad", 0x003}, {"gap", 0x02A}, {"Gbreve", 0x001},
{"gbreve", 0x001}, {"Gcedil", 0x001}, {"Gcirc", 0x001}, {"gcirc", 0x001}, {"Gcy", 0x004}, {"gcy", 0x004},
{"Gdot", 0x001}, {"gdot", 0x001}, {"gE", 0x022}, {"ge", 0x022}, {"gEl", 0x02A}, {"gel", 0x022},
{"geq", 0x022}, {"geqq", 0x022}, {"geqslant", 0x02A}, {"ges", 0x02A}, {"gescc", 0x02A}, {"gesdot", 0x02A},
{"gesdoto", 0x02A}, {"gesdotol", 0x02A}, {"gesl", 0x022DB}, {"gesles", 0x02A}, {"Gfr", 0x1D5},
{"gfr", 0x1D5}, {"Gg", 0x022}, {"gg", 0x022}, {"ggg", 0x022}, {"gimel", 0x021}, {"GJcy", 0x004},
{"gjcy", 0x004}, {"gl", 0x022}, {"gla", 0x02A}, {"glE", 0x02A}, {"glj", 0x02A}, {"gnap", 0x02A},
{"gnapprox", 0x02A}, {"gnE", 0x022}, {"gne", 0x02A}, {"gneq", 0x02A}, {"gneqq", 0x022}, {"gnsim", 0x022},
{"Gopf", 0x1D5}, {"gopf", 0x1D5}, {"grave", 0x000}, {"GreaterEqual", 0x022}, {"GreaterEqualLess", 0x022},
{"GreaterFullEqual", 0x022}, {"GreaterGreater", 0x02A}, {"GreaterLess", 0x022},
{"GreaterSlantEqual", 0x02A}, {"GreaterTilde", 0x022}, {"Gscr", 0x1D4}, {"gscr", 0x021}, {"gsim", 0x022},
{"gsime", 0x02A}, {"gsiml", 0x02A}, {"GT", 0x000}, {"GT", 0x000}, {"Gt", 0x022}, {"gt", 0x000},
{"gt", 0x000}, {"gtcc", 0x02A}, {"gtcir", 0x02A}, {"gtdot", 0x022}, {"gtlPar", 0x029}, {"gtquest", 0x02A},
{"gtrapprox", 0x02A}, {"gtrarr", 0x029}, {"gtrdot", 0x022}, {"gtreqless", 0x022}, {"gtreqqless", 0x02A},
{"gtrless", 0x022}, {"gtrsim", 0x022}, {"gvertneqq", 0x02269}, {"gvnE", 0x02269}, {"Hacek", 0x002},
{"hairsp", 0x020}, {"half", 0x000}, {"hamilt", 0x021}, {"HARDcy", 0x004}, {"hardcy", 0x004},
{"hArr", 0x021}, {"harr", 0x021}, {"harrcir", 0x029}, {"harrw", 0x021}, {"Hat", 0x000}, {"hbar", 0x021},
{"Hcirc", 0x001}, {"hcirc", 0x001}, {"hearts", 0x026}, {"heartsuit", 0x026}, {"hellip", 0x020},
{"hercon", 0x022}, {"Hfr", 0x021}, {"hfr", 0x1D5}, {"HilbertSpace", 0x021}, {"hksearow", 0x029},
{"hkswarow", 0x029}, {"hoarr", 0x021}, {"homtht", 0x022}, {"hookleftarrow", 0x021},
{"hookrightarrow", 0x021}, {"Hopf", 0x021}, {"hopf", 0x1D5}, {"horbar", 0x020}, {"HorizontalLine", 0x025},
{"Hscr", 0x021}, {"hscr", 0x1D4}, {"hslash", 0x021}, {"Hstrok", 0x001}, {"hstrok", 0x001},
{"HumpDownHump", 0x022}, {"HumpEqual", 0x022}, {"hybull", 0x020}, {"hyphen", 0x020}, {"Iacute", 0x000},
{"Iacute", 0x000}, {"iacute", 0x000}, {"iacute", 0x000}, {"ic", 0x020}, {"Icirc", 0x000}, {"Icirc", 0x000},
{"icirc", 0x000}, {"icirc", 0x000}, {"Icy", 0x004}, {"icy", 0x004}, {"Idot", 0x001}, {"IEcy", 0x004},
{"iecy", 0x004}, {"iexcl", 0x000}, {"iexcl", 0x000}, {"iff", 0x021}, {"Ifr", 0x021}, {"ifr", 0x1D5},
{"Igrave", 0x000}, {"Igrave", 0x000}, {"igrave", 0x000}, {"igrave", 0x000}, {"ii", 0x021},
{"iiiint", 0x02A}, {"iiint", 0x022}, {"iinfin", 0x029}, {"iiota", 0x021}, {"IJlig", 0x001},
{"ijlig", 0x001}, {"Im", 0x021}, {"Imacr", 0x001}, {"imacr", 0x001}, {"image", 0x021},
{"ImaginaryI", 0x021}, {"imagline", 0x021}, {"imagpart", 0x021}, {"imath", 0x001}, {"imof", 0x022},
{"imped", 0x001}, {"Implies", 0x021}, {"in", 0x022}, {"incare", 0x021}, {"infin", 0x022},
{"infintie", 0x029}, {"inodot", 0x001}, {"Int", 0x022}, {"int", 0x022}, {"intcal", 0x022},
{"integers", 0x021}, {"Integral", 0x022}, {"intercal", 0x022}, {"Intersection", 0x022}, {"intlarhk", 0x02A},
{"intprod", 0x02A}, {"InvisibleComma", 0x020}, {"InvisibleTimes", 0x020}, {"IOcy", 0x004}, {"iocy", 0x004},
{"Iogon", 0x001}, {"iogon", 0x001}, {"Iopf", 0x1D5}, {"iopf", 0x1D5}, {"Iota", 0x003}, {"iota", 0x003},
{"iprod", 0x02A}, {"iquest", 0x000}, {"iquest", 0x000}, {"Iscr", 0x021}, {"iscr", 0x1D4}, {"isin", 0x022},
{"isindot", 0x022}, {"isinE", 0x022}, {"isins", 0x022}, {"isinsv", 0x022}, {"isinv", 0x022}, {"it", 0x020},
{"Itilde", 0x001}, {"itilde", 0x001}, {"Iukcy", 0x004}, {"iukcy", 0x004}, {"Iuml", 0x000}, {"Iuml", 0x000},
{"iuml", 0x000}, {"iuml", 0x000}, {"Jcirc", 0x001}, {"jcirc", 0x001}, {"Jcy", 0x004}, {"jcy", 0x004},
{"Jfr", 0x1D5}, {"jfr", 0x1D5}, {"jmath", 0x002}, {"Jopf", 0x1D5}, {"jopf", 0x1D5}, {"Jscr", 0x1D4},
{"jscr", 0x1D4}, {"Jsercy", 0x004}, {"jsercy", 0x004}, {"Jukcy", 0x004}, {"jukcy", 0x004}, {"Kappa", 0x003},
{"kappa", 0x003}, {"kappav", 0x003}, {"Kcedil", 0x001}, {"kcedil", 0x001}, {"Kcy", 0x004}, {"kcy", 0x004},
{"Kfr", 0x1D5}, {"kfr", 0x1D5}, {"kgreen", 0x001}, {"KHcy", 0x004}, {"khcy", 0x004}, {"KJcy", 0x004},
{"kjcy", 0x004}, {"Kopf", 0x1D5}, {"kopf", 0x1D5}, {"Kscr", 0x1D4}, {"kscr", 0x1D4}, {"lAarr", 0x021},
{"Lacute", 0x001}, {"lacute", 0x001}, {"laemptyv", 0x029}, {"lagran", 0x021}, {"Lambda", 0x003},
{"lambda", 0x003}, {"Lang", 0x027}, {"lang", 0x027}, {"langd", 0x029}, {"langle", 0x027}, {"lap", 0x02A},
{"Laplacetrf", 0x021}, {"laquo", 0x000}, {"laquo", 0x000}, {"Larr", 0x021}, {"lArr", 0x021},
{"larr", 0x021}, {"larrb", 0x021}, {"larrbfs", 0x029}, {"larrfs", 0x029}, {"larrhk", 0x021},
{"larrlp", 0x021}, {"larrpl", 0x029}, {"larrsim", 0x029}, {"larrtl", 0x021}, {"lat", 0x02A},
{"lAtail", 0x029}, {"latail", 0x029}, {"late", 0x02A}, {"lates", 0x02AAD}, {"lBarr", 0x029},
{"lbarr", 0x029}, {"lbbrk", 0x027}, {"lbrace", 0x000}, {"lbrack", 0x000}, {"lbrke", 0x029},
{"lbrksld", 0x029}, {"lbrkslu", 0x029}, {"Lcaron", 0x001}, {"lcaron", 0x001}, {"Lcedil", 0x001},
{"lcedil", 0x001}, {"lceil", 0x023}, {"lcub", 0x000}, {"Lcy", 0x004}, {"lcy", 0x004}, {"ldca", 0x029},
{"ldquo", 0x020}, {"ldquor", 0x020}, {"ldrdhar", 0x029}, {"ldrushar", 0x029}, {"ldsh", 0x021},
{"lE", 0x022}, {"le", 0x022}, {"LeftAngleBracket", 0x027}, {"LeftArrow", 0x021}, {"Leftarrow", 0x021},
{"leftarrow", 0x021}, {"LeftArrowBar", 0x021}, {"LeftArrowRightArrow", 0x021}, {"leftarrowtail", 0x021},
{"LeftCeiling", 0x023}, {"LeftDoubleBracket", 0x027}, {"LeftDownTeeVector", 0x029},
{"LeftDownVector", 0x021}, {"LeftDownVectorBar", 0x029}, {"LeftFloor", 0x023}, {"leftharpoondown", 0x021},
{"leftharpoonup", 0x021}, {"leftleftarrows", 0x021}, {"LeftRightArrow", 0x021}, {"Leftrightarrow", 0x021},
{"leftrightarrow", 0x021}, {"leftrightarrows", 0x021}, {"leftrightharpoons", 0x021},
{"leftrightsquigarrow", 0x021}, {"LeftRightVector", 0x029}, {"LeftTee", 0x022}, {"LeftTeeArrow", 0x021},
{"LeftTeeVector", 0x029}, {"leftthreetimes", 0x022}, {"LeftTriangle", 0x022}, {"LeftTriangleBar", 0x029},
{"LeftTriangleEqual", 0x022}, {"LeftUpDownVector", 0x029}, {"LeftUpTeeVector", 0x029},
{"LeftUpVector", 0x021}, {"LeftUpVectorBar", 0x029}, {"LeftVector", 0x021}, {"LeftVectorBar", 0x029},
{"lEg", 0x02A}, {"leg", 0x022}, {"leq", 0x022}, {"leqq", 0x022}, {"leqslant", 0x02A}, {"les", 0x02A},
{"lescc", 0x02A}, {"lesdot", 0x02A}, {"lesdoto", 0x02A}, {"lesdotor", 0x02A}, {"lesg", 0x022DA},
{"lesges", 0x02A}, {"lessapprox", 0x02A}, {"lessdot", 0x022}, {"lesseqgtr", 0x022}, {"lesseqqgtr", 0x02A},
{"LessEqualGreater", 0x022}, {"LessFullEqual", 0x022}, {"LessGreater", 0x022}, {"lessgtr", 0x022},
{"LessLess", 0x02A}, {"lesssim", 0x022}, {"LessSlantEqual", 0x02A}, {"LessTilde", 0x022}, {"lfisht", 0x029},
{"lfloor", 0x023}, {"Lfr", 0x1D5}, {"lfr", 0x1D5}, {"lg", 0x022}, {"lgE", 0x02A}, {"lHar", 0x029},
{"lhard", 0x021}, {"lharu", 0x021}, {"lharul", 0x029}, {"lhblk", 0x025}, {"LJcy", 0x004}, {"ljcy", 0x004},
{"Ll", 0x022}, {"ll", 0x022}, {"llarr", 0x021}, {"llcorner", 0x023}, {"Lleftarrow", 0x021},
{"llhard", 0x029}, {"lltri", 0x025}, {"Lmidot", 0x001}, {"lmidot", 0x001}, {"lmoust", 0x023},
{"lmoustache", 0x023}, {"lnap", 0x02A}, {"lnapprox", 0x02A}, {"lnE", 0x022}, {"lne", 0x02A},
{"lneq", 0x02A}, {"lneqq", 0x022}, {"lnsim", 0x022}, {"loang", 0x027}, {"loarr", 0x021}, {"lobrk", 0x027},
{"LongLeftArrow", 0x027}, {"Longleftarrow", 0x027}, {"longleftarrow", 0x027}, {"LongLeftRightArrow", 0x027},
{"Longleftrightarrow", 0x027}, {"longleftrightarrow", 0x027}, {"longmapsto", 0x027},
{"LongRightArrow", 0x027}, {"Longrightarrow", 0x027}, {"longrightarrow", 0x027}, {"looparrowleft", 0x021},
{"looparrowright", 0x021}, {"lopar", 0x029}, {"Lopf", 0x1D5}, {"lopf", 0x1D5}, {"loplus", 0x02A},
{"lotimes", 0x02A}, {"lowast", 0x022}, {"lowbar", 0x000}, {"LowerLeftArrow", 0x021},
{"LowerRightArrow", 0x021}, {"loz", 0x025}, {"lozenge", 0x025}, {"lozf", 0x029}, {"lpar", 0x000},
{"lparlt", 0x029}, {"lrarr", 0x021}, {"lrcorner", 0x023}, {"lrhar", 0x021}, {"lrhard", 0x029},
{"lrm", 0x020}, {"lrtri", 0x022}, {"lsaquo", 0x020}, {"Lscr", 0x021}, {"lscr", 0x1D4}, {"Lsh", 0x021},
{"lsh", 0x021}, {"lsim", 0x022}, {"lsime", 0x02A}, {"lsimg", 0x02A}, {"lsqb", 0x000}, {"lsquo", 0x020},
{"lsquor", 0x020}, {"Lstrok", 0x001}, {"lstrok", 0x001}, {"LT", 0x000}, {"LT", 0x000}, {"Lt", 0x022},
{"lt", 0x000}, {"lt", 0x000}, {"ltcc", 0x02A}, {"ltcir", 0x02A}, {"ltdot", 0x022}, {"lthree", 0x022},
{"ltimes", 0x022}, {"ltlarr", 0x029}, {"ltquest", 0x02A}, {"ltri", 0x025}, {"ltrie", 0x022},
{"ltrif", 0x025}, {"ltrPar", 0x029}, {"lurdshar", 0x029}, {"luruhar", 0x029}, {"lvertneqq", 0x02268},
{"lvnE", 0x02268}, {"macr", 0x000}, {"macr", 0x000}, {"male", 0x026}, {"malt", 0x027}, {"maltese", 0x027},
{"Map", 0x029}, {"map", 0x021}, {"mapsto", 0x021}, {"mapstodown", 0x021}, {"mapstoleft", 0x021},
{"mapstoup", 0x021}, {"marker", 0x025}, {"mcomma", 0x02A}, {"Mcy", 0x004}, {"mcy", 0x004}, {"mdash", 0x020},
{"mDDot", 0x022}, {"measuredangle", 0x022}, {"MediumSpace", 0x020}, {"Mellintrf", 0x021}, {"Mfr", 0x1D5},
{"mfr", 0x1D5}, {"mho", 0x021}, {"micro", 0x000}, {"micro", 0x000}, {"mid", 0x022}, {"midast", 0x000},
{"midcir", 0x02A}, {"middot", 0x000}, {"middot", 0x000}, {"minus", 0x022}, {"minusb", 0x022},
{"minusd", 0x022}, {"minusdu", 0x02A}, {"MinusPlus", 0x022}, {"mlcp", 0x02A}, {"mldr", 0x020},
{"mnplus", 0x022}, {"models", 0x022}, {"Mopf", 0x1D5}, {"mopf", 0x1D5}, {"mp", 0x022}, {"Mscr", 0x021},
{"mscr", 0x1D4}, {"mstpos", 0x022}, {"Mu", 0x003}, {"mu", 0x003}, {"multimap", 0x022}, {"mumap", 0x022},
{"nabla", 0x022}, {"Nacute", 0x001}, {"nacute", 0x001}, {"nang", 0x02220}, {"nap", 0x022},
{"napE", 0x02A70}, {"napid", 0x0224B}, {"napos", 0x001}, {"napprox", 0x022}, {"natur", 0x026},
{"natural", 0x026}, {"naturals", 0x021}, {"nbsp", 0x000}, {"nbsp", 0x000}, {"nbump", 0x0224E},
{"nbumpe", 0x0224F}, {"ncap", 0x02A}, {"Ncaron", 0x001}, {"ncaron", 0x001}, {"Ncedil", 0x001},
{"ncedil", 0x001}, {"ncong", 0x022}, {"ncongdot", 0x02A6D}, {"ncup", 0x02A}, {"Ncy", 0x004}, {"ncy", 0x004},
{"ndash", 0x020}, {"ne", 0x022}, {"nearhk", 0x029}, {"neArr", 0x021}, {"nearr", 0x021}, {"nearrow", 0x021},
{"nedot", 0x02250}, {"NegativeMediumSpace", 0x020}, {"NegativeThickSpace", 0x020},
{"NegativeThinSpace", 0x020}, {"NegativeVeryThinSpace", 0x020}, {"nequiv", 0x022}, {"nesear", 0x029},
{"nesim", 0x02242}, {"NestedGreaterGreater", 0x022}, {"NestedLessLess", 0x022}, {"NewLine", 0x000},
{"nexist", 0x022}, {"nexists", 0x022}, {"Nfr", 0x1D5}, {"nfr", 0x1D5}, {"ngE", 0x02267}, {"nge", 0x022},
{"ngeq", 0x022}, {"ngeqq", 0x02267}, {"ngeqslant", 0x02A7E}, {"nges", 0x02A7E}, {"nGg", 0x022D9},
{"ngsim", 0x022}, {"nGt", 0x0226B}, {"ngt", 0x022}, {"ngtr", 0x022}, {"nGtv", 0x0226B}, {"nhArr", 0x021},
{"nharr", 0x021}, {"nhpar", 0x02A}, {"ni", 0x022}, {"nis", 0x022}, {"nisd", 0x022}, {"niv", 0x022},
{"NJcy", 0x004}, {"njcy", 0x004}, {"nlArr", 0x021}, {"nlarr", 0x021}, {"nldr", 0x020}, {"nlE", 0x02266},
{"nle", 0x022}, {"nLeftarrow", 0x021}, {"nleftarrow", 0x021}, {"nLeftrightarrow", 0x021},
{"nleftrightarrow", 0x021}, {"nleq", 0x022}, {"nleqq", 0x02266}, {"nleqslant", 0x02A7D}, {"nles", 0x02A7D},
{"nless", 0x022}, {"nLl", 0x022D8}, {"nlsim", 0x022}, {"nLt", 0x0226A}, {"nlt", 0x022}, {"nltri", 0x022},
{"nltrie", 0x022}, {"nLtv", 0x0226A}, {"nmid", 0x022}, {"NoBreak", 0x020}, {"NonBreakingSpace", 0x000},
{"Nopf", 0x021}, {"nopf", 0x1D5}, {"Not", 0x02A}, {"not", 0x000}, {"not", 0x000}, {"NotCongruent", 0x022},
{"NotCupCap", 0x022}, {"NotDoubleVerticalBar", 0x022}, {"NotElement", 0x022}, {"NotEqual", 0x022},
{"NotEqualTilde", 0x02242}, {"NotExists", 0x022}, {"NotGreater", 0x022}, {"NotGreaterEqual", 0x022},
{"NotGreaterFullEqual", 0x02267}, {"NotGreaterGreater", 0x0226B}, {"NotGreaterLess", 0x022},
{"NotGreaterSlantEqual", 0x02A7E}, {"NotGreaterTilde", 0x022}, {"NotHumpDownHump", 0x0224E},
{"NotHumpEqual", 0x0224F}, {"notin", 0x022}, {"notindot", 0x022F5}, {"notinE", 0x022F9}, {"notinva", 0x022},
{"notinvb", 0x022}, {"notinvc", 0x022}, {"NotLeftTriangle", 0x022}, {"NotLeftTriangleBar", 0x029CF},
{"NotLeftTriangleEqual", 0x022}, {"NotLess", 0x022}, {"NotLessEqual", 0x022}, {"NotLessGreater", 0x022},
{"NotLessLess", 0x0226A}, {"NotLessSlantEqual", 0x02A7D}, {"NotLessTilde", 0x022},
{"NotNestedGreaterGreater", 0x02AA2}, {"NotNestedLessLess", 0x02AA1}, {"notni", 0x022}, {"notniva", 0x022},
{"notnivb", 0x022}, {"notnivc", 0x022}, {"NotPrecedes", 0x022}, {"NotPrecedesEqual", 0x02AAF},
{"NotPrecedesSlantEqual", 0x022}, {"NotReverseElement", 0x022}, {"NotRightTriangle", 0x022},
{"NotRightTriangleBar", 0x029D0}, {"NotRightTriangleEqual", 0x022}, {"NotSquareSubset", 0x0228F},
{"NotSquareSubsetEqual", 0x022}, {"NotSquareSuperset", 0x02290}, {"NotSquareSupersetEqual", 0x022},
{"NotSubset", 0x02282}, {"NotSubsetEqual", 0x022}, {"NotSucceeds", 0x022}, {"NotSucceedsEqual", 0x02AB0},
{"NotSucceedsSlantEqual", 0x022}, {"NotSucceedsTilde", 0x0227F}, {"NotSuperset", 0x02283},
{"NotSupersetEqual", 0x022}, {"NotTilde", 0x022}, {"NotTildeEqual", 0x022}, {"NotTildeFullEqual", 0x022},
{"NotTildeTilde", 0x022}, {"NotVerticalBar", 0x022}, {"npar", 0x022}, {"nparallel", 0x022},
{"nparsl", 0x02AFD}, {"npart", 0x02202}, {"npolint", 0x02A}, {"npr", 0x022}, {"nprcue", 0x022},
{"npre", 0x02AAF}, {"nprec", 0x022}, {"npreceq", 0x02AAF}, {"nrArr", 0x021}, {"nrarr", 0x021},
{"nrarrc", 0x02933}, {"nrarrw", 0x0219D}, {"nRightarrow", 0x021}, {"nrightarrow", 0x021}, {"nrtri", 0x022},
{"nrtrie", 0x022}, {"nsc", 0x022}, {"nsccue", 0x022}, {"nsce", 0x02AB0}, {"Nscr", 0x1D4}, {"nscr", 0x1D4},
{"nshortmid", 0x022}, {"nshortparallel", 0x022}, {"nsim", 0x022}, {"nsime", 0x022}, {"nsimeq", 0x022},
{"nsmid", 0x022}, {"nspar", 0x022}, {"nsqsube", 0x022}, {"nsqsupe", 0x022}, {"nsub", 0x022},
{"nsubE", 0x02AC5}, {"nsube", 0x022}, {"nsubset", 0x02282}, {"nsubseteq", 0x022}, {"nsubseteqq", 0x02AC5},
{"nsucc", 0x022}, {"nsucceq", 0x02AB0}, {"nsup", 0x022}, {"nsupE", 0x02AC6}, {"nsupe", 0x022},
{"nsupset", 0x02283}, {"nsupseteq", 0x022}, {"nsupseteqq", 0x02AC6}, {"ntgl", 0x022}, {"Ntilde", 0x000},
{"Ntilde", 0x000}, {"ntilde", 0x000}, {"ntilde", 0x000}, {"ntlg", 0x022}, {"ntriangleleft", 0x022},
{"ntrianglelefteq", 0x022}, {"ntriangleright", 0x022}, {"ntrianglerighteq", 0x022}, {"Nu", 0x003},
{"nu", 0x003}, {"num", 0x000}, {"numero", 0x021}, {"numsp", 0x020}, {"nvap", 0x0224D}, {"nVDash", 0x022},
{"nVdash", 0x022}, {"nvDash", 0x022}, {"nvdash", 0x022}, {"nvge", 0x02265}, {"nvgt", 0x0003E},
{"nvHarr", 0x029}, {"nvinfin", 0x029}, {"nvlArr", 0x029}, {"nvle", 0x02264}, {"nvlt", 0x0003C},
{"nvltrie", 0x022B4}, {"nvrArr", 0x029}, {"nvrtrie", 0x022B5}, {"nvsim", 0x0223C}, {"nwarhk", 0x029},
{"nwArr", 0x021}, {"nwarr", 0x021}, {"nwarrow", 0x021}, {"nwnear", 0x029}, {"Oacute", 0x000},
{"Oacute", 0x000}, {"oacute", 0x000}, {"oacute", 0x000}, {"oast", 0x022}, {"ocir", 0x022}, {"Ocirc", 0x000},
{"Ocirc", 0x000}, {"ocirc", 0x000}, {"ocirc", 0x000}, {"Ocy", 0x004}, {"ocy", 0x004}, {"odash", 0x022},
{"Odblac", 0x001}, {"odblac", 0x001}, {"odiv", 0x02A}, {"odot", 0x022}, {"odsold", 0x029}, {"OElig", 0x001},
{"oelig", 0x001}, {"ofcir", 0x029}, {"Ofr", 0x1D5}, {"ofr", 0x1D5}, {"ogon", 0x002}, {"Ograve", 0x000},
{"Ograve", 0x000}, {"ograve", 0x000}, {"ograve", 0x000}, {"ogt", 0x029}, {"ohbar", 0x029}, {"ohm", 0x003},
{"oint", 0x022}, {"olarr", 0x021}, {"olcir", 0x029}, {"olcross", 0x029}, {"oline", 0x020}, {"olt", 0x029},
{"Omacr", 0x001}, {"omacr", 0x001}, {"Omega", 0x003}, {"omega", 0x003}, {"Omicron", 0x003},
{"omicron", 0x003}, {"omid", 0x029}, {"ominus", 0x022}, {"Oopf", 0x1D5}, {"oopf", 0x1D5}, {"opar", 0x029},
{"OpenCurlyDoubleQuote", 0x020}, {"OpenCurlyQuote", 0x020}, {"operp", 0x029}, {"oplus", 0x022},
{"Or", 0x02A}, {"or", 0x022}, {"orarr", 0x021}, {"ord", 0x02A}, {"order", 0x021}, {"orderof", 0x021},
{"ordf", 0x000}, {"ordf", 0x000}, {"ordm", 0x000}, {"ordm", 0x000}, {"origof", 0x022}, {"oror", 0x02A},
{"orslope", 0x02A}, {"orv", 0x02A}, {"oS", 0x024}, {"Oscr", 0x1D4}, {"oscr", 0x021}, {"Oslash", 0x000},
{"Oslash", 0x000}, {"oslash", 0x000}, {"oslash", 0x000}, {"osol", 0x022}, {"Otilde", 0x000},
{"Otilde", 0x000}, {"otilde", 0x000}, {"otilde", 0x000}, {"Otimes", 0x02A}, {"otimes", 0x022},
{"otimesas", 0x02A}, {"Ouml", 0x000}, {"Ouml", 0x000}, {"ouml", 0x000}, {"ouml", 0x000}, {"ovbar", 0x023},
{"OverBar", 0x020}, {"OverBrace", 0x023}, {"OverBracket", 0x023}, {"OverParenthesis", 0x023},
{"par", 0x022}, {"para", 0x000}, {"para", 0x000}, {"parallel", 0x022}, {"parsim", 0x02A}, {"parsl", 0x02A},
{"part", 0x022}, {"PartialD", 0x022}, {"Pcy", 0x004}, {"pcy", 0x004}, {"percnt", 0x000}, {"period", 0x000},
{"permil", 0x020}, {"perp", 0x022}, {"pertenk", 0x020}, {"Pfr", 0x1D5}, {"pfr", 0x1D5}, {"Phi", 0x003},
{"phi", 0x003}, {"phiv", 0x003}, {"phmmat", 0x021}, {"phone", 0x026}, {"Pi", 0x003}, {"pi", 0x003},
{"pitchfork", 0x022}, {"piv", 0x003}, {"planck", 0x021}, {"planckh", 0x021}, {"plankv", 0x021},
{"plus", 0x000}, {"plusacir", 0x02A}, {"plusb", 0x022}, {"pluscir", 0x02A}, {"plusdo", 0x022},
{"plusdu", 0x02A}, {"pluse", 0x02A}, {"PlusMinus", 0x000}, {"plusmn", 0x000}, {"plusmn", 0x000},
{"plussim", 0x02A}, {"plustwo", 0x02A}, {"pm", 0x000}, {"Poincareplane", 0x021}, {"pointint", 0x02A},
{"Popf", 0x021}, {"popf", 0x1D5}, {"pound", 0x000}, {"pound", 0x000}, {"Pr", 0x02A}, {"pr", 0x022},
{"prap", 0x02A}, {"prcue", 0x022}, {"prE", 0x02A}, {"pre", 0x02A}, {"prec", 0x022}, {"precapprox", 0x02A},
{"preccurlyeq", 0x022}, {"Precedes", 0x022}, {"PrecedesEqual", 0x02A}, {"PrecedesSlantEqual", 0x022},
{"PrecedesTilde", 0x022}, {"preceq", 0x02A}, {"precnapprox", 0x02A}, {"precneqq", 0x02A},
{"precnsim", 0x022}, {"precsim", 0x022}, {"Prime", 0x020}, {"prime", 0x020}, {"primes", 0x021},
{"prnap", 0x02A}, {"prnE", 0x02A}, {"prnsim", 0x022}, {"prod", 0x022}, {"Product", 0x022},
{"profalar", 0x023}, {"profline", 0x023}, {"profsurf", 0x023}, {"prop", 0x022}, {"Proportion", 0x022},
{"Proportional", 0x022}, {"propto", 0x022}, {"prsim", 0x022}, {"prurel", 0x022}, {"Pscr", 0x1D4},
{"pscr", 0x1D4}, {"Psi", 0x003}, {"psi", 0x003}, {"puncsp", 0x020}, {"Qfr", 0x1D5}, {"qfr", 0x1D5},
{"qint", 0x02A}, {"Qopf", 0x021}, {"qopf", 0x1D5}, {"qprime", 0x020}, {"Qscr", 0x1D4}, {"qscr", 0x1D4},
{"quaternions", 0x021}, {"quatint", 0x02A}, {"quest", 0x000}, {"questeq", 0x022}, {"QUOT", 0x000},
{"QUOT", 0x000}, {"quot", 0x000}, {"quot", 0x000}, {"rAarr", 0x021}, {"race", 0x0223D}, {"Racute", 0x001},
{"racute", 0x001}, {"radic", 0x022}, {"raemptyv", 0x029}, {"Rang", 0x027}, {"rang", 0x027},
{"rangd", 0x029}, {"range", 0x029}, {"rangle", 0x027}, {"raquo", 0x000}, {"raquo", 0x000}, {"Rarr", 0x021},
{"rArr", 0x021}, {"rarr", 0x021}, {"rarrap", 0x029}, {"rarrb", 0x021}, {"rarrbfs", 0x029}, {"rarrc", 0x029},
{"rarrfs", 0x029}, {"rarrhk", 0x021}, {"rarrlp", 0x021}, {"rarrpl", 0x029}, {"rarrsim", 0x029},
{"Rarrtl", 0x029}, {"rarrtl", 0x021}, {"rarrw", 0x021}, {"rAtail", 0x029}, {"ratail", 0x029},
{"ratio", 0x022}, {"rationals", 0x021}, {"RBarr", 0x029}, {"rBarr", 0x029}, {"rbarr", 0x029},
{"rbbrk", 0x027}, {"rbrace", 0x000}, {"rbrack", 0x000}, {"rbrke", 0x029}, {"rbrksld", 0x029},
{"rbrkslu", 0x029}, {"Rcaron", 0x001}, {"rcaron", 0x001}, {"Rcedil", 0x001}, {"rcedil", 0x001},
{"rceil", 0x023}, {"rcub", 0x000}, {"Rcy", 0x004}, {"rcy", 0x004}, {"rdca", 0x029}, {"rdldhar", 0x029},
{"rdquo", 0x020}, {"rdquor", 0x020}, {"rdsh", 0x021}, {"Re", 0x021}, {"real", 0x021}, {"realine", 0x021},
{"realpart", 0x021}, {"reals", 0x021}, {"rect", 0x025}, {"REG", 0x000}, {"REG", 0x000}, {"reg", 0x000},
{"reg", 0x000}, {"ReverseElement", 0x022}, {"ReverseEquilibrium", 0x021}, {"ReverseUpEquilibrium", 0x029},
{"rfisht", 0x029}, {"rfloor", 0x023}, {"Rfr", 0x021}, {"rfr", 0x1D5}, {"rHar", 0x029}, {"rhard", 0x021},
{"rharu", 0x021}, {"rharul", 0x029}, {"Rho", 0x003}, {"rho", 0x003}, {"rhov", 0x003},
{"RightAngleBracket", 0x027}, {"RightArrow", 0x021}, {"Rightarrow", 0x021}, {"rightarrow", 0x021},
{"RightArrowBar", 0x021}, {"RightArrowLeftArrow", 0x021}, {"rightarrowtail", 0x021},
{"RightCeiling", 0x023}, {"RightDoubleBracket", 0x027}, {"RightDownTeeVector", 0x029},
{"RightDownVector", 0x021}, {"RightDownVectorBar", 0x029}, {"RightFloor", 0x023},
{"rightharpoondown", 0x021}, {"rightharpoonup", 0x021}, {"rightleftarrows", 0x021},
{"rightleftharpoons", 0x021}, {"rightrightarrows", 0x021}, {"rightsquigarrow", 0x021}, {"RightTee", 0x022},
{"RightTeeArrow", 0x021}, {"RightTeeVector", 0x029}, {"rightthreetimes", 0x022}, {"RightTriangle", 0x022},
{"RightTriangleBar", 0x029}, {"RightTriangleEqual", 0x022}, {"RightUpDownVector", 0x029},
{"RightUpTeeVector", 0x029}, {"RightUpVector", 0x021}, {"RightUpVectorBar", 0x029}, {"RightVector", 0x021},
{"RightVectorBar", 0x029}, {"ring", 0x002}, {"risingdotseq", 0x022}, {"rlarr", 0x021}, {"rlhar", 0x021},
{"rlm", 0x020}, {"rmoust", 0x023}, {"rmoustache", 0x023}, {"rnmid", 0x02A}, {"roang", 0x027},
{"roarr", 0x021}, {"robrk", 0x027}, {"ropar", 0x029}, {"Ropf", 0x021}, {"ropf", 0x1D5}, {"roplus", 0x02A},
{"rotimes", 0x02A}, {"RoundImplies", 0x029}, {"rpar", 0x000}, {"rpargt", 0x029}, {"rppolint", 0x02A},
{"rrarr", 0x021}, {"Rrightarrow", 0x021}, {"rsaquo", 0x020}, {"Rscr", 0x021}, {"rscr", 0x1D4},
{"Rsh", 0x021}, {"rsh", 0x021}, {"rsqb", 0x000}, {"rsquo", 0x020}, {"rsquor", 0x020}, {"rthree", 0x022},
{"rtimes", 0x022}, {"rtri", 0x025}, {"rtrie", 0x022}, {"rtrif", 0x025}, {"rtriltri", 0x029},
{"RuleDelayed", 0x029}, {"ruluhar", 0x029}, {"rx", 0x021}, {"Sacute", 0x001}, {"sacute", 0x001},
{"sbquo", 0x020}, {"Sc", 0x02A}, {"sc", 0x022}, {"scap", 0x02A}, {"Scaron", 0x001}, {"scaron", 0x001},
{"sccue", 0x022}, {"scE", 0x02A}, {"sce", 0x02A}, {"Scedil", 0x001}, {"scedil", 0x001}, {"Scirc", 0x001},
{"scirc", 0x001}, {"scnap", 0x02A}, {"scnE", 0x02A}, {"scnsim", 0x022}, {"scpolint", 0x02A},
{"scsim", 0x022}, {"Scy", 0x004}, {"scy", 0x004}, {"sdot", 0x022}, {"sdotb", 0x022}, {"sdote", 0x02A},
{"searhk", 0x029}, {"seArr", 0x021}, {"searr", 0x021}, {"searrow", 0x021}, {"sect", 0x000}, {"sect", 0x000},
{"semi", 0x000}, {"seswar", 0x029}, {"setminus", 0x022}, {"setmn", 0x022}, {"sext", 0x027}, {"Sfr", 0x1D5},
{"sfr", 0x1D5}, {"sfrown", 0x023}, {"sharp", 0x026}, {"SHCHcy", 0x004}, {"shchcy", 0x004}, {"SHcy", 0x004},
{"shcy", 0x004}, {"ShortDownArrow", 0x021}, {"ShortLeftArrow", 0x021}, {"shortmid", 0x022},
{"shortparallel", 0x022}, {"ShortRightArrow", 0x021}, {"ShortUpArrow", 0x021}, {"shy", 0x000},
{"shy", 0x000}, {"Sigma", 0x003}, {"sigma", 0x003}, {"sigmaf", 0x003}, {"sigmav", 0x003}, {"sim", 0x022},
{"simdot", 0x02A}, {"sime", 0x022}, {"simeq", 0x022}, {"simg", 0x02A}, {"simgE", 0x02A}, {"siml", 0x02A},
{"simlE", 0x02A}, {"simne", 0x022}, {"simplus", 0x02A}, {"simrarr", 0x029}, {"slarr", 0x021},
{"SmallCircle", 0x022}, {"smallsetminus", 0x022}, {"smashp", 0x02A}, {"smeparsl", 0x029}, {"smid", 0x022},
{"smile", 0x023}, {"smt", 0x02A}, {"smte", 0x02A}, {"smtes", 0x02AAC}, {"SOFTcy", 0x004}, {"softcy", 0x004},
{"sol", 0x000}, {"solb", 0x029}, {"solbar", 0x023}, {"Sopf", 0x1D5}, {"sopf", 0x1D5}, {"spades", 0x026},
{"spadesuit", 0x026}, {"spar", 0x022}, {"sqcap", 0x022}, {"sqcaps", 0x02293}, {"sqcup", 0x022},
{"sqcups", 0x02294}, {"Sqrt", 0x022}, {"sqsub", 0x022}, {"sqsube", 0x022}, {"sqsubset", 0x022},
{"sqsubseteq", 0x022}, {"sqsup", 0x022}, {"sqsupe", 0x022}, {"sqsupset", 0x022}, {"sqsupseteq", 0x022},
{"squ", 0x025}, {"Square", 0x025}, {"square", 0x025}, {"SquareIntersection", 0x022},
{"SquareSubset", 0x022}, {"SquareSubsetEqual", 0x022}, {"SquareSuperset", 0x022},
{"SquareSupersetEqual", 0x022}, {"SquareUnion", 0x022}, {"squarf", 0x025}, {"squf", 0x025},
{"srarr", 0x021}, {"Sscr", 0x1D4}, {"sscr", 0x1D4}, {"ssetmn", 0x022}, {"ssmile", 0x023}, {"sstarf", 0x022},
{"Star", 0x022}, {"star", 0x026}, {"starf", 0x026}, {"straightepsilon", 0x003}, {"straightphi", 0x003},
{"strns", 0x000}, {"Sub", 0x022}, {"sub", 0x022}, {"subdot", 0x02A}, {"subE", 0x02A}, {"sube", 0x022},
{"subedot", 0x02A}, {"submult", 0x02A}, {"subnE", 0x02A}, {"subne", 0x022}, {"subplus", 0x02A},
{"subrarr", 0x029}, {"Subset", 0x022}, {"subset", 0x022}, {"subseteq", 0x022}, {"subseteqq", 0x02A},
{"SubsetEqual", 0x022}, {"subsetneq", 0x022}, {"subsetneqq", 0x02A}, {"subsim", 0x02A}, {"subsub", 0x02A},
{"subsup", 0x02A}, {"succ", 0x022}, {"succapprox", 0x02A}, {"succcurlyeq", 0x022}, {"Succeeds", 0x022},
{"SucceedsEqual", 0x02A}, {"SucceedsSlantEqual", 0x022}, {"SucceedsTilde", 0x022}, {"succeq", 0x02A},
{"succnapprox", 0x02A}, {"succneqq", 0x02A}, {"succnsim", 0x022}, {"succsim", 0x022}, {"SuchThat", 0x022},
{"Sum", 0x022}, {"sum", 0x022}, {"sung", 0x026}, {"Sup", 0x022}, {"sup", 0x022}, {"sup1", 0x000},
{"sup1", 0x000}, {"sup2", 0x000}, {"sup2", 0x000}, {"sup3", 0x000}, {"sup3", 0x000}, {"supdot", 0x02A},
{"supdsub", 0x02A}, {"supE", 0x02A}, {"supe", 0x022}, {"supedot", 0x02A}, {"Superset", 0x022},
{"SupersetEqual", 0x022}, {"suphsol", 0x027}, {"suphsub", 0x02A}, {"suplarr", 0x029}, {"supmult", 0x02A},
{"supnE", 0x02A}, {"supne", 0x022}, {"supplus", 0x02A}, {"Supset", 0x022}, {"supset", 0x022},
{"supseteq", 0x022}, {"supseteqq", 0x02A}, {"supsetneq", 0x022}, {"supsetneqq", 0x02A}, {"supsim", 0x02A},
{"supsub", 0x02A}, {"supsup", 0x02A}, {"swarhk", 0x029}, {"swArr", 0x021}, {"swarr", 0x021},
{"swarrow", 0x021}, {"swnwar", 0x029}, {"szlig", 0x000}, {"szlig", 0x000}, {"Tab", 0x000},
{"target", 0x023}, {"Tau", 0x003}, {"tau", 0x003}, {"tbrk", 0x023}, {"Tcaron", 0x001}, {"tcaron", 0x001},
{"Tcedil", 0x001}, {"tcedil", 0x001}, {"Tcy", 0x004}, {"tcy", 0x004}, {"tdot", 0x020}, {"telrec", 0x023},
{"Tfr", 0x1D5}, {"tfr", 0x1D5}, {"there4", 0x022}, {"Therefore", 0x022}, {"therefore", 0x022},
{"Theta", 0x003}, {"theta", 0x003}, {"thetasym", 0x003}, {"thetav", 0x003}, {"thickapprox", 0x022},
{"thicksim", 0x022}, {"ThickSpace", 0x0205F}, {"thinsp", 0x020}, {"ThinSpace", 0x020}, {"thkap", 0x022},
{"thksim", 0x022}, {"THORN", 0x000}, {"THORN", 0x000}, {"thorn", 0x000}, {"thorn", 0x000}, {"Tilde", 0x022},
{"tilde", 0x002}, {"TildeEqual", 0x022}, {"TildeFullEqual", 0x022}, {"TildeTilde", 0x022}, {"times", 0x000},
{"times", 0x000}, {"timesb", 0x022}, {"timesbar", 0x02A}, {"timesd", 0x02A}, {"tint", 0x022},
{"toea", 0x029}, {"top", 0x022}, {"topbot", 0x023}, {"topcir", 0x02A}, {"Topf", 0x1D5}, {"topf", 0x1D5},
{"topfork", 0x02A}, {"tosa", 0x029}, {"tprime", 0x020}, {"TRADE", 0x021}, {"trade", 0x021},
{"triangle", 0x025}, {"triangledown", 0x025}, {"triangleleft", 0x025}, {"trianglelefteq", 0x022},
{"triangleq", 0x022}, {"triangleright", 0x025}, {"trianglerighteq", 0x022}, {"tridot", 0x025},
{"trie", 0x022}, {"triminus", 0x02A}, {"TripleDot", 0x020}, {"triplus", 0x02A}, {"trisb", 0x029},
{"tritime", 0x02A}, {"trpezium", 0x023}, {"Tscr", 0x1D4}, {"tscr", 0x1D4}, {"TScy", 0x004}, {"tscy", 0x004},
{"TSHcy", 0x004}, {"tshcy", 0x004}, {"Tstrok", 0x001}, {"tstrok", 0x001}, {"twixt", 0x022},
{"twoheadleftarrow", 0x021}, {"twoheadrightarrow", 0x021}, {"Uacute", 0x000}, {"Uacute", 0x000},
{"uacute", 0x000}, {"uacute", 0x000}, {"Uarr", 0x021}, {"uArr", 0x021}, {"uarr", 0x021},
{"Uarrocir", 0x029}, {"Ubrcy", 0x004}, {"ubrcy", 0x004}, {"Ubreve", 0x001}, {"ubreve", 0x001},
{"Ucirc", 0x000}, {"Ucirc", 0x000}, {"ucirc", 0x000}, {"ucirc", 0x000}, {"Ucy", 0x004}, {"ucy", 0x004},
{"udarr", 0x021}, {"Udblac", 0x001}, {"udblac", 0x001}, {"udhar", 0x029}, {"ufisht", 0x029}, {"Ufr", 0x1D5},
{"ufr", 0x1D5}, {"Ugrave", 0x000}, {"Ugrave", 0x000}, {"ugrave", 0x000}, {"ugrave", 0x000}, {"uHar", 0x029},
{"uharl", 0x021}, {"uharr", 0x021}, {"uhblk", 0x025}, {"ulcorn", 0x023}, {"ulcorner", 0x023},
{"ulcrop", 0x023}, {"ultri", 0x025}, {"Umacr", 0x001}, {"umacr", 0x001}, {"uml", 0x000}, {"uml", 0x000},
{"UnderBar", 0x000}, {"UnderBrace", 0x023}, {"UnderBracket", 0x023}, {"UnderParenthesis", 0x023},
{"Union", 0x022}, {"UnionPlus", 0x022}, {"Uogon", 0x001}, {"uogon", 0x001}, {"Uopf", 0x1D5},
{"uopf", 0x1D5}, {"UpArrow", 0x021}, {"Uparrow", 0x021}, {"uparrow", 0x021}, {"UpArrowBar", 0x029},
{"UpArrowDownArrow", 0x021}, {"UpDownArrow", 0x021}, {"Updownarrow", 0x021}, {"updownarrow", 0x021},
{"UpEquilibrium", 0x029}, {"upharpoonleft", 0x021}, {"upharpoonright", 0x021}, {"uplus", 0x022},
{"UpperLeftArrow", 0x021}, {"UpperRightArrow", 0x021}, {"Upsi", 0x003}, {"upsi", 0x003}, {"upsih", 0x003},
{"Upsilon", 0x003}, {"upsilon", 0x003}, {"UpTee", 0x022}, {"UpTeeArrow", 0x021}, {"upuparrows", 0x021},
{"urcorn", 0x023}, {"urcorner", 0x023}, {"urcrop", 0x023}, {"Uring", 0x001}, {"uring", 0x001},
{"urtri", 0x025}, {"Uscr", 0x1D4}, {"uscr", 0x1D4}, {"utdot", 0x022}, {"Utilde", 0x001}, {"utilde", 0x001},
{"utri", 0x025}, {"utrif", 0x025}, {"uuarr", 0x021}, {"Uuml", 0x000}, {"Uuml", 0x000}, {"uuml", 0x000},
{"uuml", 0x000}, {"uwangle", 0x029}, {"vangrt", 0x029}, {"varepsilon", 0x003}, {"varkappa", 0x003},
{"varnothing", 0x022}, {"varphi", 0x003}, {"varpi", 0x003}, {"varpropto", 0x022}, {"vArr", 0x021},
{"varr", 0x021}, {"varrho", 0x003}, {"varsigma", 0x003}, {"varsubsetneq", 0x0228A},
{"varsubsetneqq", 0x02ACB}, {"varsupsetneq", 0x0228B}, {"varsupsetneqq", 0x02ACC}, {"vartheta", 0x003},
{"vartriangleleft", 0x022}, {"vartriangleright", 0x022}, {"Vbar", 0x02A}, {"vBar", 0x02A}, {"vBarv", 0x02A},
{"Vcy", 0x004}, {"vcy", 0x004}, {"VDash", 0x022}, {"Vdash", 0x022}, {"vDash", 0x022}, {"vdash", 0x022},
{"Vdashl", 0x02A}, {"Vee", 0x022}, {"vee", 0x022}, {"veebar", 0x022}, {"veeeq", 0x022}, {"vellip", 0x022},
{"Verbar", 0x020}, {"verbar", 0x000}, {"Vert", 0x020}, {"vert", 0x000}, {"VerticalBar", 0x022},
{"VerticalLine", 0x000}, {"VerticalSeparator", 0x027}, {"VerticalTilde", 0x022}, {"VeryThinSpace", 0x020},
{"Vfr", 0x1D5}, {"vfr", 0x1D5}, {"vltri", 0x022}, {"vnsub", 0x02282}, {"vnsup", 0x02283}, {"Vopf", 0x1D5},
{"vopf", 0x1D5}, {"vprop", 0x022}, {"vrtri", 0x022}, {"Vscr", 0x1D4}, {"vscr", 0x1D4}, {"vsubnE", 0x02ACB},
{"vsubne", 0x0228A}, {"vsupnE", 0x02ACC}, {"vsupne", 0x0228B}, {"Vvdash", 0x022}, {"vzigzag", 0x029},
{"Wcirc", 0x001}, {"wcirc", 0x001}, {"wedbar", 0x02A}, {"Wedge", 0x022}, {"wedge", 0x022},
{"wedgeq", 0x022}, {"weierp", 0x021}, {"Wfr", 0x1D5}, {"wfr", 0x1D5}, {"Wopf", 0x1D5}, {"wopf", 0x1D5},
{"wp", 0x021}, {"wr", 0x022}, {"wreath", 0x022}, {"Wscr", 0x1D4}, {"wscr", 0x1D4}, {"xcap", 0x022},
{"xcirc", 0x025}, {"xcup", 0x022}, {"xdtri", 0x025}, {"Xfr", 0x1D5}, {"xfr", 0x1D5}, {"xhArr", 0x027},
{"xharr", 0x027}, {"Xi", 0x003}, {"xi", 0x003}, {"xlArr", 0x027}, {"xlarr", 0x027}, {"xmap", 0x027},
{"xnis", 0x022}, {"xodot", 0x02A}, {"Xopf", 0x1D5}, {"xopf", 0x1D5}, {"xoplus", 0x02A}, {"xotime", 0x02A},
{"xrArr", 0x027}, {"xrarr", 0x027}, {"Xscr", 0x1D4}, {"xscr", 0x1D4}, {"xsqcup", 0x02A}, {"xuplus", 0x02A},
{"xutri", 0x025}, {"xvee", 0x022}, {"xwedge", 0x022}, {"Yacute", 0x000}, {"Yacute", 0x000},
{"yacute", 0x000}, {"yacute", 0x000}, {"YAcy", 0x004}, {"yacy", 0x004}, {"Ycirc", 0x001}, {"ycirc", 0x001},
{"Ycy", 0x004}, {"ycy", 0x004}, {"yen", 0x000}, {"yen", 0x000}, {"Yfr", 0x1D5}, {"yfr", 0x1D5},
{"YIcy", 0x004}, {"yicy", 0x004}, {"Yopf", 0x1D5}, {"yopf", 0x1D5}, {"Yscr", 0x1D4}, {"yscr", 0x1D4},
{"YUcy", 0x004}, {"yucy", 0x004}, {"Yuml", 0x001}, {"yuml", 0x000}, {"yuml", 0x000}, {"Zacute", 0x001},
{"zacute", 0x001}, {"Zcaron", 0x001}, {"zcaron", 0x001}, {"Zcy", 0x004}, {"zcy", 0x004}, {"Zdot", 0x001},
{"zdot", 0x001}, {"zeetrf", 0x021}, {"ZeroWidthSpace", 0x020}, {"Zeta", 0x003}, {"zeta", 0x003},
{"Zfr", 0x021}, {"zfr", 0x1D5}, {"ZHcy", 0x004}, {"zhcy", 0x004}, {"zigrarr", 0x021}, {"Zopf", 0x021},
{"zopf", 0x1D5}, {"Zscr", 0x1D4}, {"zscr", 0x1D4}, {"zwj", 0x020}, {"zwnj", 0x020}};
rootNode = std::make_shared<NCNode>();
for (const auto &entry : GlobalMap) {
std::shared_ptr<NCNode> &node = rootNode;
std::size_t length = strlen(entry.first);
for (std::size_t i = 0; i < length; i++) {
char character = entry.first[i];
auto iterator = node->children.find(character);
if (iterator == node->children.end()) {
auto newNode = std::make_shared<NCNode>();
node->children.insert(std::make_pair(character, newNode));
node = newNode;
} else {
node = iterator->second;
}
if (i == length - 1) {
if (node->hasValue) {
std::cout << "Node already has value=" << node->value << " ourvalue=" << entry.second
<< " i.e. key=" << entry.first << std::endl;
}
node->hasValue = true;
node->value = entry.second;
}
}
}
}
} // namespace NamedCharacters