-
Notifications
You must be signed in to change notification settings - Fork 17
/
chars-disallow.js
executable file
·8500 lines (8247 loc) · 422 KB
/
chars-disallow.js
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
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
export default [
// conventions:
// * remove invisibles
// * see "HANGUL FILLER"
// * remove punctuation
// * remove vocalization annotations
// * remove rotations
// * remove box and drawing characters
// * choose heavy variants if available
// * collapse similar items to one if possible
// * see "CHECKMARK"
// undecided:
// - left-right mirrors
// ************************************************************
// 20240912: in 16.0.0, UTS-46 was changed slightly:
// > The handling of UseSTD3ASCIIRules has been simplified. Conditional data involving disallowed_STD3_*
// > Status values has been replaced with simple checking for a subset of ASCII characters in the Validity Criteria.
// > This simplifies the data format and data lookup, makes standard UseSTD3ASCIIRules=true handling consistent
// > with custom UseSTD3ASCIIRules, and avoids unnecessarily disallowing certain labels that contain
// > disallowed_STD3_mapped characters but which do not contain non-LDH ASCII characters when the mappings are applied.
// see: https://github.com/adraffy/ens-norm-uts46.js/blob/1dea5023f46ce092ff19628a10845ddfcbda8d54/src/uts46.js#L149
// essentially, all ASCII characters are valid, and they get constrained *AFTER* nfc
// however, for the characters that ENSIP-15 allows, this is functionally equivalent to the prior approach
// make.js maintains this property (see: Assert Invariants)
// 20240910: this was "disallowed_STD3_valid"
0x00, // (�) NULL [Zyyy]
0x01, // (�) START OF HEADING [Zyyy]
0x02, // (�) START OF TEXT [Zyyy]
0x03, // (�) END OF TEXT [Zyyy]
0x04, // (�) END OF TRANSMISSION [Zyyy]
0x05, // (�) ENQUIRY [Zyyy]
0x06, // (�) ACKNOWLEDGE [Zyyy]
0x07, // (�) BELL [Zyyy]
0x08, // (�) BACKSPACE [Zyyy]
0x09, // (�) CHARACTER TABULATION [Zyyy]
0x0A, // (�) LINE FEED (LF) [Zyyy]
0x0B, // (�) LINE TABULATION [Zyyy]
0x0C, // (�) FORM FEED (FF) [Zyyy]
0x0D, // (�) CARRIAGE RETURN (CR) [Zyyy]
0x0E, // (�) SHIFT OUT [Zyyy]
0x0F, // (�) SHIFT IN [Zyyy]
0x10, // (�) DATA LINK ESCAPE [Zyyy]
0x11, // (�) DEVICE CONTROL ONE [Zyyy]
0x12, // (�) DEVICE CONTROL TWO [Zyyy]
0x13, // (�) DEVICE CONTROL THREE [Zyyy]
0x14, // (�) DEVICE CONTROL FOUR [Zyyy]
0x15, // (�) NEGATIVE ACKNOWLEDGE [Zyyy]
0x16, // (�) SYNCHRONOUS IDLE [Zyyy]
0x17, // (�) END OF TRANSMISSION BLOCK [Zyyy]
0x18, // (�) CANCEL [Zyyy]
0x19, // (�) END OF MEDIUM [Zyyy]
0x1A, // (�) SUBSTITUTE [Zyyy]
0x1B, // (�) ESCAPE [Zyyy]
0x1C, // (�) INFORMATION SEPARATOR FOUR [Zyyy]
0x1D, // (�) INFORMATION SEPARATOR THREE [Zyyy]
0x1E, // (�) INFORMATION SEPARATOR TWO [Zyyy]
0x1F, // (�) INFORMATION SEPARATOR ONE [Zyyy]
0x20, // ( ) SPACE [Zyyy]
0x21, // (!) EXCLAMATION MARK [Zyyy]
0x22, // (") QUOTATION MARK [Zyyy]
0x23, // (#) NUMBER SIGN [Zyyy]
//0x24, // ($) DOLLAR SIGN [Zyyy]
0x25, // (%) PERCENT SIGN [Zyyy]
0x26, // (&) AMPERSAND [Zyyy]
//0x27, // (') APOSTROPHE [Zyyy]
0x28, // (() LEFT PARENTHESIS [Zyyy]
0x29, // ()) RIGHT PARENTHESIS [Zyyy]
0x2A, // (*) ASTERISK [Zyyy]
0x2B, // (+) PLUS SIGN [Zyyy]
0x2C, // (,) COMMA [Zyyy]
0x2F, // (/) SOLIDUS [Zyyy]
0x3A, // (:) COLON [Zyyy]
0x3B, // (;) SEMICOLON [Zyyy]
0x3C, // (<) LESS-THAN SIGN [Zyyy]
0x3D, // (=) EQUALS SIGN [Zyyy]
0x3E, // (>) GREATER-THAN SIGN [Zyyy]
0x3F, // (?) QUESTION MARK [Zyyy]
0x40, // (@) COMMERCIAL AT [Zyyy]
0x5B, // ([) LEFT SQUARE BRACKET [Zyyy]
0x5C, // (\) REVERSE SOLIDUS [Zyyy]
0x5D, // (]) RIGHT SQUARE BRACKET [Zyyy]
0x5E, // (^) CIRCUMFLEX ACCENT [Zyyy]
//0x5F, // (_) LOW LINE [Zyyy]
0x60, // (`) GRAVE ACCENT [Zyyy]
0x7B, // ({) LEFT CURLY BRACKET [Zyyy]
0x7C, // (|) VERTICAL LINE [Zyyy]
0x7D, // (}) RIGHT CURLY BRACKET [Zyyy]
0x7E, // (~) TILDE [Zyyy]
0x7F, // (�) DELETE [Zyyy]
// this was "disallowed_STD3_mapped"
// [list of valid exceptions]
// 0xFE4D, // (﹍) DASHED LOW LINE => [5F] (_) LOW LINE
// 0xFE4E, // (﹎) CENTRELINE LOW LINE => [5F] (_) LOW LINE
// 0xFE4F, // (﹏) WAVY LOW LINE => [5F] (_) LOW LINE
// 0xFE69, // (﹩) SMALL DOLLAR SIGN => [24] ($) DOLLAR SIGN
// 0xFF04, // ($) FULLWIDTH DOLLAR SIGN => [24] ($) DOLLAR SIGN
// 0xFF3F, // (_) FULLWIDTH LOW LINE => [5F] (_) LOW LINE
// [already disallowed]
// 0x2A74, // (⩴) DOUBLE COLON EQUAL => [3A 3A 3D] (::=) COLON + COLON + EQUALS SIGN
// 0x2A75, // (⩵) TWO CONSECUTIVE EQUALS SIGNS => [3D 3D] (==) EQUALS SIGN + EQUALS SIGN
// 0x2A76, // (⩶) THREE CONSECUTIVE EQUALS SIGNS => [3D 3D 3D] (===) EQUALS SIGN + EQUALS SIGN + EQUALS SIGN
// 0x309B, // (゛) KATAKANA-HIRAGANA VOICED SOUND MARK => [20 3099] ( ゙) SPACE + COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
// 0x309C, // (゜) KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK => [20 309A] ( ゚) SPACE + COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
// these are blocked automatically because the mapping contains a disallowed character (eg. SPACE)
// remainder provided for reference
// 0xA0, // ( ) NO-BREAK SPACE => [20] ( ) SPACE
// 0xA8, // (¨) DIAERESIS => [20 308] ( ̈) SPACE + COMBINING DIAERESIS
// 0xAF, // (¯) MACRON => [20 304] ( ̄) SPACE + COMBINING MACRON
// 0xB4, // (´) ACUTE ACCENT => [20 301] ( ́) SPACE + COMBINING ACUTE ACCENT
// 0xB8, // (¸) CEDILLA => [20 327] ( ̧) SPACE + COMBINING CEDILLA
// 0x2D8, // (˘) BREVE => [20 306] ( ̆) SPACE + COMBINING BREVE
// 0x2D9, // (˙) DOT ABOVE => [20 307] ( ̇) SPACE + COMBINING DOT ABOVE
// 0x2DA, // (˚) RING ABOVE => [20 30A] ( ̊) SPACE + COMBINING RING ABOVE
// 0x2DB, // (˛) OGONEK => [20 328] ( ̨) SPACE + COMBINING OGONEK
// 0x2DC, // (˜) SMALL TILDE => [20 303] ( ̃) SPACE + COMBINING TILDE
// 0x2DD, // (˝) DOUBLE ACUTE ACCENT => [20 30B] ( ̋) SPACE + COMBINING DOUBLE ACUTE ACCENT
// 0x37A, // (ͺ) GREEK YPOGEGRAMMENI => [20 3B9] ( ι) SPACE + GREEK SMALL LETTER IOTA
// 0x37E, // (;) GREEK QUESTION MARK => [3B] (;) SEMICOLON
// 0x384, // (΄) GREEK TONOS => [20 301] ( ́) SPACE + COMBINING ACUTE ACCENT
// 0x385, // (΅) GREEK DIALYTIKA TONOS => [20 308 301] ( ̈́) SPACE + COMBINING DIAERESIS + COMBINING ACUTE ACCENT
// 0x1FBD, // (᾽) GREEK KORONIS => [20 313] ( ̓) SPACE + COMBINING COMMA ABOVE
// 0x1FBF, // (᾿) GREEK PSILI => [20 313] ( ̓) SPACE + COMBINING COMMA ABOVE
// 0x1FC0, // (῀) GREEK PERISPOMENI => [20 342] ( ͂) SPACE + COMBINING GREEK PERISPOMENI
// 0x1FC1, // (῁) GREEK DIALYTIKA AND PERISPOMENI => [20 308 342] ( ̈͂) SPACE + COMBINING DIAERESIS + COMBINING GREEK PERISPOMENI
// 0x1FCD, // (῍) GREEK PSILI AND VARIA => [20 313 300] ( ̓̀) SPACE + COMBINING COMMA ABOVE + COMBINING GRAVE ACCENT
// 0x1FCE, // (῎) GREEK PSILI AND OXIA => [20 313 301] ( ̓́) SPACE + COMBINING COMMA ABOVE + COMBINING ACUTE ACCENT
// 0x1FCF, // (῏) GREEK PSILI AND PERISPOMENI => [20 313 342] ( ̓͂) SPACE + COMBINING COMMA ABOVE + COMBINING GREEK PERISPOMENI
// 0x1FDD, // (῝) GREEK DASIA AND VARIA => [20 314 300] ( ̔̀) SPACE + COMBINING REVERSED COMMA ABOVE + COMBINING GRAVE ACCENT
// 0x1FDE, // (῞) GREEK DASIA AND OXIA => [20 314 301] ( ̔́) SPACE + COMBINING REVERSED COMMA ABOVE + COMBINING ACUTE ACCENT
// 0x1FDF, // (῟) GREEK DASIA AND PERISPOMENI => [20 314 342] ( ̔͂) SPACE + COMBINING REVERSED COMMA ABOVE + COMBINING GREEK PERISPOMENI
// 0x1FED, // (῭) GREEK DIALYTIKA AND VARIA => [20 308 300] ( ̈̀) SPACE + COMBINING DIAERESIS + COMBINING GRAVE ACCENT
// 0x1FEE, // (΅) GREEK DIALYTIKA AND OXIA => [20 308 301] ( ̈́) SPACE + COMBINING DIAERESIS + COMBINING ACUTE ACCENT
// 0x1FEF, // (`) GREEK VARIA => [60] (`) GRAVE ACCENT
// 0x1FFD, // (´) GREEK OXIA => [20 301] ( ́) SPACE + COMBINING ACUTE ACCENT
// 0x1FFE, // (῾) GREEK DASIA => [20 314] ( ̔) SPACE + COMBINING REVERSED COMMA ABOVE
// 0x2000, // ( ) EN QUAD => [20] ( ) SPACE
// 0x2001, // ( ) EM QUAD => [20] ( ) SPACE
// 0x2002, // ( ) EN SPACE => [20] ( ) SPACE
// 0x2003, // ( ) EM SPACE => [20] ( ) SPACE
// 0x2004, // ( ) THREE-PER-EM SPACE => [20] ( ) SPACE
// 0x2005, // ( ) FOUR-PER-EM SPACE => [20] ( ) SPACE
// 0x2006, // ( ) SIX-PER-EM SPACE => [20] ( ) SPACE
// 0x2007, // ( ) FIGURE SPACE => [20] ( ) SPACE
// 0x2008, // ( ) PUNCTUATION SPACE => [20] ( ) SPACE
// 0x2009, // ( ) THIN SPACE => [20] ( ) SPACE
// 0x200A, // ( ) HAIR SPACE => [20] ( ) SPACE
// 0x2017, // (‗) DOUBLE LOW LINE => [20 333] ( ̳) SPACE + COMBINING DOUBLE LOW LINE
// 0x202F, // ( ) NARROW NO-BREAK SPACE => [20] ( ) SPACE
// 0x203C, // (‼) DOUBLE EXCLAMATION MARK => [21 21] (!!) EXCLAMATION MARK + EXCLAMATION MARK
// 0x203E, // (‾) OVERLINE => [20 305] ( ̅) SPACE + COMBINING OVERLINE
// 0x2047, // (⁇) DOUBLE QUESTION MARK => [3F 3F] (??) QUESTION MARK + QUESTION MARK
// 0x2048, // (⁈) QUESTION EXCLAMATION MARK => [3F 21] (?!) QUESTION MARK + EXCLAMATION MARK
// 0x2049, // (⁉) EXCLAMATION QUESTION MARK => [21 3F] (!?) EXCLAMATION MARK + QUESTION MARK
// 0x205F, // ( ) MEDIUM MATHEMATICAL SPACE => [20] ( ) SPACE
// 0x207A, // (⁺) SUPERSCRIPT PLUS SIGN => [2B] (+) PLUS SIGN
// 0x207C, // (⁼) SUPERSCRIPT EQUALS SIGN => [3D] (=) EQUALS SIGN
// 0x207D, // (⁽) SUPERSCRIPT LEFT PARENTHESIS => [28] (() LEFT PARENTHESIS
// 0x207E, // (⁾) SUPERSCRIPT RIGHT PARENTHESIS => [29] ()) RIGHT PARENTHESIS
// 0x208A, // (₊) SUBSCRIPT PLUS SIGN => [2B] (+) PLUS SIGN
// 0x208C, // (₌) SUBSCRIPT EQUALS SIGN => [3D] (=) EQUALS SIGN
// 0x208D, // (₍) SUBSCRIPT LEFT PARENTHESIS => [28] (() LEFT PARENTHESIS
// 0x208E, // (₎) SUBSCRIPT RIGHT PARENTHESIS => [29] ()) RIGHT PARENTHESIS
// 0x2100, // (℀) ACCOUNT OF => [61 2F 63] (a/c) LATIN SMALL LETTER A + SOLIDUS + LATIN SMALL LETTER C
// 0x2101, // (℁) ADDRESSED TO THE SUBJECT => [61 2F 73] (a/s) LATIN SMALL LETTER A + SOLIDUS + LATIN SMALL LETTER S
// 0x2105, // (℅) CARE OF => [63 2F 6F] (c/o) LATIN SMALL LETTER C + SOLIDUS + LATIN SMALL LETTER O
// 0x2106, // (℆) CADA UNA => [63 2F 75] (c/u) LATIN SMALL LETTER C + SOLIDUS + LATIN SMALL LETTER U
// 0x2474, // (⑴) PARENTHESIZED DIGIT ONE => [28 31 29] ((1)) LEFT PARENTHESIS + DIGIT ONE + RIGHT PARENTHESIS
// 0x2475, // (⑵) PARENTHESIZED DIGIT TWO => [28 32 29] ((2)) LEFT PARENTHESIS + DIGIT TWO + RIGHT PARENTHESIS
// 0x2476, // (⑶) PARENTHESIZED DIGIT THREE => [28 33 29] ((3)) LEFT PARENTHESIS + DIGIT THREE + RIGHT PARENTHESIS
// 0x2477, // (⑷) PARENTHESIZED DIGIT FOUR => [28 34 29] ((4)) LEFT PARENTHESIS + DIGIT FOUR + RIGHT PARENTHESIS
// 0x2478, // (⑸) PARENTHESIZED DIGIT FIVE => [28 35 29] ((5)) LEFT PARENTHESIS + DIGIT FIVE + RIGHT PARENTHESIS
// 0x2479, // (⑹) PARENTHESIZED DIGIT SIX => [28 36 29] ((6)) LEFT PARENTHESIS + DIGIT SIX + RIGHT PARENTHESIS
// 0x247A, // (⑺) PARENTHESIZED DIGIT SEVEN => [28 37 29] ((7)) LEFT PARENTHESIS + DIGIT SEVEN + RIGHT PARENTHESIS
// 0x247B, // (⑻) PARENTHESIZED DIGIT EIGHT => [28 38 29] ((8)) LEFT PARENTHESIS + DIGIT EIGHT + RIGHT PARENTHESIS
// 0x247C, // (⑼) PARENTHESIZED DIGIT NINE => [28 39 29] ((9)) LEFT PARENTHESIS + DIGIT NINE + RIGHT PARENTHESIS
// 0x247D, // (⑽) PARENTHESIZED NUMBER TEN => [28 31 30 29] ((10)) LEFT PARENTHESIS + DIGIT ONE + DIGIT ZERO + RIGHT PARENTHESIS
// 0x247E, // (⑾) PARENTHESIZED NUMBER ELEVEN => [28 31 31 29] ((11)) LEFT PARENTHESIS + DIGIT ONE + DIGIT ONE + RIGHT PARENTHESIS
// 0x247F, // (⑿) PARENTHESIZED NUMBER TWELVE => [28 31 32 29] ((12)) LEFT PARENTHESIS + DIGIT ONE + DIGIT TWO + RIGHT PARENTHESIS
// 0x2480, // (⒀) PARENTHESIZED NUMBER THIRTEEN => [28 31 33 29] ((13)) LEFT PARENTHESIS + DIGIT ONE + DIGIT THREE + RIGHT PARENTHESIS
// 0x2481, // (⒁) PARENTHESIZED NUMBER FOURTEEN => [28 31 34 29] ((14)) LEFT PARENTHESIS + DIGIT ONE + DIGIT FOUR + RIGHT PARENTHESIS
// 0x2482, // (⒂) PARENTHESIZED NUMBER FIFTEEN => [28 31 35 29] ((15)) LEFT PARENTHESIS + DIGIT ONE + DIGIT FIVE + RIGHT PARENTHESIS
// 0x2483, // (⒃) PARENTHESIZED NUMBER SIXTEEN => [28 31 36 29] ((16)) LEFT PARENTHESIS + DIGIT ONE + DIGIT SIX + RIGHT PARENTHESIS
// 0x2484, // (⒄) PARENTHESIZED NUMBER SEVENTEEN => [28 31 37 29] ((17)) LEFT PARENTHESIS + DIGIT ONE + DIGIT SEVEN + RIGHT PARENTHESIS
// 0x2485, // (⒅) PARENTHESIZED NUMBER EIGHTEEN => [28 31 38 29] ((18)) LEFT PARENTHESIS + DIGIT ONE + DIGIT EIGHT + RIGHT PARENTHESIS
// 0x2486, // (⒆) PARENTHESIZED NUMBER NINETEEN => [28 31 39 29] ((19)) LEFT PARENTHESIS + DIGIT ONE + DIGIT NINE + RIGHT PARENTHESIS
// 0x2487, // (⒇) PARENTHESIZED NUMBER TWENTY => [28 32 30 29] ((20)) LEFT PARENTHESIS + DIGIT TWO + DIGIT ZERO + RIGHT PARENTHESIS
// 0x249C, // (⒜) PARENTHESIZED LATIN SMALL LETTER A => [28 61 29] ((a)) LEFT PARENTHESIS + LATIN SMALL LETTER A + RIGHT PARENTHESIS
// 0x249D, // (⒝) PARENTHESIZED LATIN SMALL LETTER B => [28 62 29] ((b)) LEFT PARENTHESIS + LATIN SMALL LETTER B + RIGHT PARENTHESIS
// 0x249E, // (⒞) PARENTHESIZED LATIN SMALL LETTER C => [28 63 29] ((c)) LEFT PARENTHESIS + LATIN SMALL LETTER C + RIGHT PARENTHESIS
// 0x249F, // (⒟) PARENTHESIZED LATIN SMALL LETTER D => [28 64 29] ((d)) LEFT PARENTHESIS + LATIN SMALL LETTER D + RIGHT PARENTHESIS
// 0x24A0, // (⒠) PARENTHESIZED LATIN SMALL LETTER E => [28 65 29] ((e)) LEFT PARENTHESIS + LATIN SMALL LETTER E + RIGHT PARENTHESIS
// 0x24A1, // (⒡) PARENTHESIZED LATIN SMALL LETTER F => [28 66 29] ((f)) LEFT PARENTHESIS + LATIN SMALL LETTER F + RIGHT PARENTHESIS
// 0x24A2, // (⒢) PARENTHESIZED LATIN SMALL LETTER G => [28 67 29] ((g)) LEFT PARENTHESIS + LATIN SMALL LETTER G + RIGHT PARENTHESIS
// 0x24A3, // (⒣) PARENTHESIZED LATIN SMALL LETTER H => [28 68 29] ((h)) LEFT PARENTHESIS + LATIN SMALL LETTER H + RIGHT PARENTHESIS
// 0x24A4, // (⒤) PARENTHESIZED LATIN SMALL LETTER I => [28 69 29] ((i)) LEFT PARENTHESIS + LATIN SMALL LETTER I + RIGHT PARENTHESIS
// 0x24A5, // (⒥) PARENTHESIZED LATIN SMALL LETTER J => [28 6A 29] ((j)) LEFT PARENTHESIS + LATIN SMALL LETTER J + RIGHT PARENTHESIS
// 0x24A6, // (⒦) PARENTHESIZED LATIN SMALL LETTER K => [28 6B 29] ((k)) LEFT PARENTHESIS + LATIN SMALL LETTER K + RIGHT PARENTHESIS
// 0x24A7, // (⒧) PARENTHESIZED LATIN SMALL LETTER L => [28 6C 29] ((l)) LEFT PARENTHESIS + LATIN SMALL LETTER L + RIGHT PARENTHESIS
// 0x24A8, // (⒨) PARENTHESIZED LATIN SMALL LETTER M => [28 6D 29] ((m)) LEFT PARENTHESIS + LATIN SMALL LETTER M + RIGHT PARENTHESIS
// 0x24A9, // (⒩) PARENTHESIZED LATIN SMALL LETTER N => [28 6E 29] ((n)) LEFT PARENTHESIS + LATIN SMALL LETTER N + RIGHT PARENTHESIS
// 0x24AA, // (⒪) PARENTHESIZED LATIN SMALL LETTER O => [28 6F 29] ((o)) LEFT PARENTHESIS + LATIN SMALL LETTER O + RIGHT PARENTHESIS
// 0x24AB, // (⒫) PARENTHESIZED LATIN SMALL LETTER P => [28 70 29] ((p)) LEFT PARENTHESIS + LATIN SMALL LETTER P + RIGHT PARENTHESIS
// 0x24AC, // (⒬) PARENTHESIZED LATIN SMALL LETTER Q => [28 71 29] ((q)) LEFT PARENTHESIS + LATIN SMALL LETTER Q + RIGHT PARENTHESIS
// 0x24AD, // (⒭) PARENTHESIZED LATIN SMALL LETTER R => [28 72 29] ((r)) LEFT PARENTHESIS + LATIN SMALL LETTER R + RIGHT PARENTHESIS
// 0x24AE, // (⒮) PARENTHESIZED LATIN SMALL LETTER S => [28 73 29] ((s)) LEFT PARENTHESIS + LATIN SMALL LETTER S + RIGHT PARENTHESIS
// 0x24AF, // (⒯) PARENTHESIZED LATIN SMALL LETTER T => [28 74 29] ((t)) LEFT PARENTHESIS + LATIN SMALL LETTER T + RIGHT PARENTHESIS
// 0x24B0, // (⒰) PARENTHESIZED LATIN SMALL LETTER U => [28 75 29] ((u)) LEFT PARENTHESIS + LATIN SMALL LETTER U + RIGHT PARENTHESIS
// 0x24B1, // (⒱) PARENTHESIZED LATIN SMALL LETTER V => [28 76 29] ((v)) LEFT PARENTHESIS + LATIN SMALL LETTER V + RIGHT PARENTHESIS
// 0x24B2, // (⒲) PARENTHESIZED LATIN SMALL LETTER W => [28 77 29] ((w)) LEFT PARENTHESIS + LATIN SMALL LETTER W + RIGHT PARENTHESIS
// 0x24B3, // (⒳) PARENTHESIZED LATIN SMALL LETTER X => [28 78 29] ((x)) LEFT PARENTHESIS + LATIN SMALL LETTER X + RIGHT PARENTHESIS
// 0x24B4, // (⒴) PARENTHESIZED LATIN SMALL LETTER Y => [28 79 29] ((y)) LEFT PARENTHESIS + LATIN SMALL LETTER Y + RIGHT PARENTHESIS
// 0x24B5, // (⒵) PARENTHESIZED LATIN SMALL LETTER Z => [28 7A 29] ((z)) LEFT PARENTHESIS + LATIN SMALL LETTER Z + RIGHT PARENTHESIS
// 0x3000, // ( ) IDEOGRAPHIC SPACE => [20] ( ) SPACE
// 0x3200, // (㈀) PARENTHESIZED HANGUL KIYEOK => [28 1100 29] ((ᄀ)) LEFT PARENTHESIS + HANGUL CHOSEONG KIYEOK + RIGHT PARENTHESIS
// 0x3201, // (㈁) PARENTHESIZED HANGUL NIEUN => [28 1102 29] ((ᄂ)) LEFT PARENTHESIS + HANGUL CHOSEONG NIEUN + RIGHT PARENTHESIS
// 0x3202, // (㈂) PARENTHESIZED HANGUL TIKEUT => [28 1103 29] ((ᄃ)) LEFT PARENTHESIS + HANGUL CHOSEONG TIKEUT + RIGHT PARENTHESIS
// 0x3203, // (㈃) PARENTHESIZED HANGUL RIEUL => [28 1105 29] ((ᄅ)) LEFT PARENTHESIS + HANGUL CHOSEONG RIEUL + RIGHT PARENTHESIS
// 0x3204, // (㈄) PARENTHESIZED HANGUL MIEUM => [28 1106 29] ((ᄆ)) LEFT PARENTHESIS + HANGUL CHOSEONG MIEUM + RIGHT PARENTHESIS
// 0x3205, // (㈅) PARENTHESIZED HANGUL PIEUP => [28 1107 29] ((ᄇ)) LEFT PARENTHESIS + HANGUL CHOSEONG PIEUP + RIGHT PARENTHESIS
// 0x3206, // (㈆) PARENTHESIZED HANGUL SIOS => [28 1109 29] ((ᄉ)) LEFT PARENTHESIS + HANGUL CHOSEONG SIOS + RIGHT PARENTHESIS
// 0x3207, // (㈇) PARENTHESIZED HANGUL IEUNG => [28 110B 29] ((ᄋ)) LEFT PARENTHESIS + HANGUL CHOSEONG IEUNG + RIGHT PARENTHESIS
// 0x3208, // (㈈) PARENTHESIZED HANGUL CIEUC => [28 110C 29] ((ᄌ)) LEFT PARENTHESIS + HANGUL CHOSEONG CIEUC + RIGHT PARENTHESIS
// 0x3209, // (㈉) PARENTHESIZED HANGUL CHIEUCH => [28 110E 29] ((ᄎ)) LEFT PARENTHESIS + HANGUL CHOSEONG CHIEUCH + RIGHT PARENTHESIS
// 0x320A, // (㈊) PARENTHESIZED HANGUL KHIEUKH => [28 110F 29] ((ᄏ)) LEFT PARENTHESIS + HANGUL CHOSEONG KHIEUKH + RIGHT PARENTHESIS
// 0x320B, // (㈋) PARENTHESIZED HANGUL THIEUTH => [28 1110 29] ((ᄐ)) LEFT PARENTHESIS + HANGUL CHOSEONG THIEUTH + RIGHT PARENTHESIS
// 0x320C, // (㈌) PARENTHESIZED HANGUL PHIEUPH => [28 1111 29] ((ᄑ)) LEFT PARENTHESIS + HANGUL CHOSEONG PHIEUPH + RIGHT PARENTHESIS
// 0x320D, // (㈍) PARENTHESIZED HANGUL HIEUH => [28 1112 29] ((ᄒ)) LEFT PARENTHESIS + HANGUL CHOSEONG HIEUH + RIGHT PARENTHESIS
// 0x320E, // (㈎) PARENTHESIZED HANGUL KIYEOK A => [28 AC00 29] ((가)) LEFT PARENTHESIS + Hangul Syllable-AC00 [1/11172] + RIGHT PARENTHESIS
// 0x320F, // (㈏) PARENTHESIZED HANGUL NIEUN A => [28 B098 29] ((나)) LEFT PARENTHESIS + Hangul Syllable-B098 [1177/11172] + RIGHT PARENTHESIS
// 0x3210, // (㈐) PARENTHESIZED HANGUL TIKEUT A => [28 B2E4 29] ((다)) LEFT PARENTHESIS + Hangul Syllable-B2E4 [1765/11172] + RIGHT PARENTHESIS
// 0x3211, // (㈑) PARENTHESIZED HANGUL RIEUL A => [28 B77C 29] ((라)) LEFT PARENTHESIS + Hangul Syllable-B77C [2941/11172] + RIGHT PARENTHESIS
// 0x3212, // (㈒) PARENTHESIZED HANGUL MIEUM A => [28 B9C8 29] ((마)) LEFT PARENTHESIS + Hangul Syllable-B9C8 [3529/11172] + RIGHT PARENTHESIS
// 0x3213, // (㈓) PARENTHESIZED HANGUL PIEUP A => [28 BC14 29] ((바)) LEFT PARENTHESIS + Hangul Syllable-BC14 [4117/11172] + RIGHT PARENTHESIS
// 0x3214, // (㈔) PARENTHESIZED HANGUL SIOS A => [28 C0AC 29] ((사)) LEFT PARENTHESIS + Hangul Syllable-C0AC [5293/11172] + RIGHT PARENTHESIS
// 0x3215, // (㈕) PARENTHESIZED HANGUL IEUNG A => [28 C544 29] ((아)) LEFT PARENTHESIS + Hangul Syllable-C544 [6469/11172] + RIGHT PARENTHESIS
// 0x3216, // (㈖) PARENTHESIZED HANGUL CIEUC A => [28 C790 29] ((자)) LEFT PARENTHESIS + Hangul Syllable-C790 [7057/11172] + RIGHT PARENTHESIS
// 0x3217, // (㈗) PARENTHESIZED HANGUL CHIEUCH A => [28 CC28 29] ((차)) LEFT PARENTHESIS + Hangul Syllable-CC28 [8233/11172] + RIGHT PARENTHESIS
// 0x3218, // (㈘) PARENTHESIZED HANGUL KHIEUKH A => [28 CE74 29] ((카)) LEFT PARENTHESIS + Hangul Syllable-CE74 [8821/11172] + RIGHT PARENTHESIS
// 0x3219, // (㈙) PARENTHESIZED HANGUL THIEUTH A => [28 D0C0 29] ((타)) LEFT PARENTHESIS + Hangul Syllable-D0C0 [9409/11172] + RIGHT PARENTHESIS
// 0x321A, // (㈚) PARENTHESIZED HANGUL PHIEUPH A => [28 D30C 29] ((파)) LEFT PARENTHESIS + Hangul Syllable-D30C [9997/11172] + RIGHT PARENTHESIS
// 0x321B, // (㈛) PARENTHESIZED HANGUL HIEUH A => [28 D558 29] ((하)) LEFT PARENTHESIS + Hangul Syllable-D558 [10585/11172] + RIGHT PARENTHESIS
// 0x321C, // (㈜) PARENTHESIZED HANGUL CIEUC U => [28 C8FC 29] ((주)) LEFT PARENTHESIS + Hangul Syllable-C8FC [7421/11172] + RIGHT PARENTHESIS
// 0x321D, // (㈝) PARENTHESIZED KOREAN CHARACTER OJEON => [28 C624 C804 29] ((오전)) LEFT PARENTHESIS + Hangul Syllable-C624 [6693/11172] + Hangul Syllable-C804 [7173/11172] + RIGHT PARENTHESIS
// 0x321E, // (㈞) PARENTHESIZED KOREAN CHARACTER O HU => [28 C624 D6C4 29] ((오후)) LEFT PARENTHESIS + Hangul Syllable-C624 [6693/11172] + Hangul Syllable-D6C4 [10949/11172] + RIGHT PARENTHESIS
// 0x3220, // (㈠) PARENTHESIZED IDEOGRAPH ONE => [28 4E00 29] ((一)) LEFT PARENTHESIS + CJK Ideograph-4E00 [1/20992] + RIGHT PARENTHESIS
// 0x3221, // (㈡) PARENTHESIZED IDEOGRAPH TWO => [28 4E8C 29] ((二)) LEFT PARENTHESIS + CJK Ideograph-4E8C [141/20992] + RIGHT PARENTHESIS
// 0x3222, // (㈢) PARENTHESIZED IDEOGRAPH THREE => [28 4E09 29] ((三)) LEFT PARENTHESIS + CJK Ideograph-4E09 [10/20992] + RIGHT PARENTHESIS
// 0x3223, // (㈣) PARENTHESIZED IDEOGRAPH FOUR => [28 56DB 29] ((四)) LEFT PARENTHESIS + CJK Ideograph-56DB [2268/20992] + RIGHT PARENTHESIS
// 0x3224, // (㈤) PARENTHESIZED IDEOGRAPH FIVE => [28 4E94 29] ((五)) LEFT PARENTHESIS + CJK Ideograph-4E94 [149/20992] + RIGHT PARENTHESIS
// 0x3225, // (㈥) PARENTHESIZED IDEOGRAPH SIX => [28 516D 29] ((六)) LEFT PARENTHESIS + CJK Ideograph-516D [878/20992] + RIGHT PARENTHESIS
// 0x3226, // (㈦) PARENTHESIZED IDEOGRAPH SEVEN => [28 4E03 29] ((七)) LEFT PARENTHESIS + CJK Ideograph-4E03 [4/20992] + RIGHT PARENTHESIS
// 0x3227, // (㈧) PARENTHESIZED IDEOGRAPH EIGHT => [28 516B 29] ((八)) LEFT PARENTHESIS + CJK Ideograph-516B [876/20992] + RIGHT PARENTHESIS
// 0x3228, // (㈨) PARENTHESIZED IDEOGRAPH NINE => [28 4E5D 29] ((九)) LEFT PARENTHESIS + CJK Ideograph-4E5D [94/20992] + RIGHT PARENTHESIS
// 0x3229, // (㈩) PARENTHESIZED IDEOGRAPH TEN => [28 5341 29] ((十)) LEFT PARENTHESIS + CJK Ideograph-5341 [1346/20992] + RIGHT PARENTHESIS
// 0x322A, // (㈪) PARENTHESIZED IDEOGRAPH MOON => [28 6708 29] ((月)) LEFT PARENTHESIS + CJK Ideograph-6708 [6409/20992] + RIGHT PARENTHESIS
// 0x322B, // (㈫) PARENTHESIZED IDEOGRAPH FIRE => [28 706B 29] ((火)) LEFT PARENTHESIS + CJK Ideograph-706B [8812/20992] + RIGHT PARENTHESIS
// 0x322C, // (㈬) PARENTHESIZED IDEOGRAPH WATER => [28 6C34 29] ((水)) LEFT PARENTHESIS + CJK Ideograph-6C34 [7733/20992] + RIGHT PARENTHESIS
// 0x322D, // (㈭) PARENTHESIZED IDEOGRAPH WOOD => [28 6728 29] ((木)) LEFT PARENTHESIS + CJK Ideograph-6728 [6441/20992] + RIGHT PARENTHESIS
// 0x322E, // (㈮) PARENTHESIZED IDEOGRAPH METAL => [28 91D1 29] ((金)) LEFT PARENTHESIS + CJK Ideograph-91D1 [17362/20992] + RIGHT PARENTHESIS
// 0x322F, // (㈯) PARENTHESIZED IDEOGRAPH EARTH => [28 571F 29] ((土)) LEFT PARENTHESIS + CJK Ideograph-571F [2336/20992] + RIGHT PARENTHESIS
// 0x3230, // (㈰) PARENTHESIZED IDEOGRAPH SUN => [28 65E5 29] ((日)) LEFT PARENTHESIS + CJK Ideograph-65E5 [6118/20992] + RIGHT PARENTHESIS
// 0x3231, // (㈱) PARENTHESIZED IDEOGRAPH STOCK => [28 682A 29] ((株)) LEFT PARENTHESIS + CJK Ideograph-682A [6699/20992] + RIGHT PARENTHESIS
// 0x3232, // (㈲) PARENTHESIZED IDEOGRAPH HAVE => [28 6709 29] ((有)) LEFT PARENTHESIS + CJK Ideograph-6709 [6410/20992] + RIGHT PARENTHESIS
// 0x3233, // (㈳) PARENTHESIZED IDEOGRAPH SOCIETY => [28 793E 29] ((社)) LEFT PARENTHESIS + CJK Ideograph-793E [11071/20992] + RIGHT PARENTHESIS
// 0x3234, // (㈴) PARENTHESIZED IDEOGRAPH NAME => [28 540D 29] ((名)) LEFT PARENTHESIS + CJK Ideograph-540D [1550/20992] + RIGHT PARENTHESIS
// 0x3235, // (㈵) PARENTHESIZED IDEOGRAPH SPECIAL => [28 7279 29] ((特)) LEFT PARENTHESIS + CJK Ideograph-7279 [9338/20992] + RIGHT PARENTHESIS
// 0x3236, // (㈶) PARENTHESIZED IDEOGRAPH FINANCIAL => [28 8CA1 29] ((財)) LEFT PARENTHESIS + CJK Ideograph-8CA1 [16034/20992] + RIGHT PARENTHESIS
// 0x3237, // (㈷) PARENTHESIZED IDEOGRAPH CONGRATULATION => [28 795D 29] ((祝)) LEFT PARENTHESIS + CJK Ideograph-795D [11102/20992] + RIGHT PARENTHESIS
// 0x3238, // (㈸) PARENTHESIZED IDEOGRAPH LABOR => [28 52B4 29] ((労)) LEFT PARENTHESIS + CJK Ideograph-52B4 [1205/20992] + RIGHT PARENTHESIS
// 0x3239, // (㈹) PARENTHESIZED IDEOGRAPH REPRESENT => [28 4EE3 29] ((代)) LEFT PARENTHESIS + CJK Ideograph-4EE3 [228/20992] + RIGHT PARENTHESIS
// 0x323A, // (㈺) PARENTHESIZED IDEOGRAPH CALL => [28 547C 29] ((呼)) LEFT PARENTHESIS + CJK Ideograph-547C [1661/20992] + RIGHT PARENTHESIS
// 0x323B, // (㈻) PARENTHESIZED IDEOGRAPH STUDY => [28 5B66 29] ((学)) LEFT PARENTHESIS + CJK Ideograph-5B66 [3431/20992] + RIGHT PARENTHESIS
// 0x323C, // (㈼) PARENTHESIZED IDEOGRAPH SUPERVISE => [28 76E3 29] ((監)) LEFT PARENTHESIS + CJK Ideograph-76E3 [10468/20992] + RIGHT PARENTHESIS
// 0x323D, // (㈽) PARENTHESIZED IDEOGRAPH ENTERPRISE => [28 4F01 29] ((企)) LEFT PARENTHESIS + CJK Ideograph-4F01 [258/20992] + RIGHT PARENTHESIS
// 0x323E, // (㈾) PARENTHESIZED IDEOGRAPH RESOURCE => [28 8CC7 29] ((資)) LEFT PARENTHESIS + CJK Ideograph-8CC7 [16072/20992] + RIGHT PARENTHESIS
// 0x323F, // (㈿) PARENTHESIZED IDEOGRAPH ALLIANCE => [28 5354 29] ((協)) LEFT PARENTHESIS + CJK Ideograph-5354 [1365/20992] + RIGHT PARENTHESIS
// 0x3240, // (㉀) PARENTHESIZED IDEOGRAPH FESTIVAL => [28 796D 29] ((祭)) LEFT PARENTHESIS + CJK Ideograph-796D [11118/20992] + RIGHT PARENTHESIS
// 0x3241, // (㉁) PARENTHESIZED IDEOGRAPH REST => [28 4F11 29] ((休)) LEFT PARENTHESIS + CJK Ideograph-4F11 [274/20992] + RIGHT PARENTHESIS
// 0x3242, // (㉂) PARENTHESIZED IDEOGRAPH SELF => [28 81EA 29] ((自)) LEFT PARENTHESIS + CJK Ideograph-81EA [13291/20992] + RIGHT PARENTHESIS
// 0x3243, // (㉃) PARENTHESIZED IDEOGRAPH REACH => [28 81F3 29] ((至)) LEFT PARENTHESIS + CJK Ideograph-81F3 [13300/20992] + RIGHT PARENTHESIS
// 0xFB29, // (﬩) HEBREW LETTER ALTERNATIVE PLUS SIGN => [2B] (+) PLUS SIGN
// 0xFC5E, // (ﱞ) ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM => [20 64C 651] ( ٌّ) SPACE + ARABIC DAMMATAN + ARABIC SHADDA
// 0xFC5F, // (ﱟ) ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM => [20 64D 651] ( ٍّ) SPACE + ARABIC KASRATAN + ARABIC SHADDA
// 0xFC60, // (ﱠ) ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM => [20 64E 651] ( َّ) SPACE + ARABIC FATHA + ARABIC SHADDA
// 0xFC61, // (ﱡ) ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM => [20 64F 651] ( ُّ) SPACE + ARABIC DAMMA + ARABIC SHADDA
// 0xFC62, // (ﱢ) ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM => [20 650 651] ( ِّ) SPACE + ARABIC KASRA + ARABIC SHADDA
// 0xFC63, // (ﱣ) ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM => [20 651 670] ( ّٰ) SPACE + ARABIC SHADDA + ARABIC LETTER SUPERSCRIPT ALEF
// 0xFDFA, // (ﷺ) ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM => [635 644 649 20 627 644 644 647 20 639 644 64A 647 20 648 633 644 645] (صلى الله عليه وسلم) ARABIC LETTER SAD + ARABIC LETTER LAM + ARABIC LETTER ALEF MAKSURA + SPACE + ARABIC LETTER ALEF + ARABIC LETTER LAM + ARABIC LETTER LAM + ARABIC LETTER HEH + SPACE + ARABIC LETTER AIN + ARABIC LETTER LAM + ARABIC LETTER YEH + ARABIC LETTER HEH + SPACE + ARABIC LETTER WAW + ARABIC LETTER SEEN + ARABIC LETTER LAM + ARABIC LETTER MEEM
// 0xFDFB, // (ﷻ) ARABIC LIGATURE JALLAJALALOUHOU => [62C 644 20 62C 644 627 644 647] (جل جلاله) ARABIC LETTER JEEM + ARABIC LETTER LAM + SPACE + ARABIC LETTER JEEM + ARABIC LETTER LAM + ARABIC LETTER ALEF + ARABIC LETTER LAM + ARABIC LETTER HEH
// 0xFE10, // (︐) PRESENTATION FORM FOR VERTICAL COMMA => [2C] (,) COMMA
// 0xFE13, // (︓) PRESENTATION FORM FOR VERTICAL COLON => [3A] (:) COLON
// 0xFE14, // (︔) PRESENTATION FORM FOR VERTICAL SEMICOLON => [3B] (;) SEMICOLON
// 0xFE15, // (︕) PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK => [21] (!) EXCLAMATION MARK
// 0xFE16, // (︖) PRESENTATION FORM FOR VERTICAL QUESTION MARK => [3F] (?) QUESTION MARK
// 0xFE33, // (︳) PRESENTATION FORM FOR VERTICAL LOW LINE => [5F] (_) LOW LINE
// 0xFE34, // (︴) PRESENTATION FORM FOR VERTICAL WAVY LOW LINE => [5F] (_) LOW LINE
// 0xFE35, // (︵) PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS => [28] (() LEFT PARENTHESIS
// 0xFE36, // (︶) PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS => [29] ()) RIGHT PARENTHESIS
// 0xFE37, // (︷) PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET => [7B] ({) LEFT CURLY BRACKET
// 0xFE38, // (︸) PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET => [7D] (}) RIGHT CURLY BRACKET
// 0xFE47, // (﹇) PRESENTATION FORM FOR VERTICAL LEFT SQUARE BRACKET => [5B] ([) LEFT SQUARE BRACKET
// 0xFE48, // (﹈) PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET => [5D] (]) RIGHT SQUARE BRACKET
// 0xFE49, // (﹉) DASHED OVERLINE => [20 305] ( ̅) SPACE + COMBINING OVERLINE
// 0xFE4A, // (﹊) CENTRELINE OVERLINE => [20 305] ( ̅) SPACE + COMBINING OVERLINE
// 0xFE4B, // (﹋) WAVY OVERLINE => [20 305] ( ̅) SPACE + COMBINING OVERLINE
// 0xFE4C, // (﹌) DOUBLE WAVY OVERLINE => [20 305] ( ̅) SPACE + COMBINING OVERLINE
// 0xFE50, // (﹐) SMALL COMMA => [2C] (,) COMMA
// 0xFE54, // (﹔) SMALL SEMICOLON => [3B] (;) SEMICOLON
// 0xFE55, // (﹕) SMALL COLON => [3A] (:) COLON
// 0xFE56, // (﹖) SMALL QUESTION MARK => [3F] (?) QUESTION MARK
// 0xFE57, // (﹗) SMALL EXCLAMATION MARK => [21] (!) EXCLAMATION MARK
// 0xFE59, // (﹙) SMALL LEFT PARENTHESIS => [28] (() LEFT PARENTHESIS
// 0xFE5A, // (﹚) SMALL RIGHT PARENTHESIS => [29] ()) RIGHT PARENTHESIS
// 0xFE5B, // (﹛) SMALL LEFT CURLY BRACKET => [7B] ({) LEFT CURLY BRACKET
// 0xFE5C, // (﹜) SMALL RIGHT CURLY BRACKET => [7D] (}) RIGHT CURLY BRACKET
// 0xFE5F, // (﹟) SMALL NUMBER SIGN => [23] (#) NUMBER SIGN
// 0xFE60, // (﹠) SMALL AMPERSAND => [26] (&) AMPERSAND
// 0xFE61, // (﹡) SMALL ASTERISK => [2A] (*) ASTERISK
// 0xFE62, // (﹢) SMALL PLUS SIGN => [2B] (+) PLUS SIGN
// 0xFE64, // (﹤) SMALL LESS-THAN SIGN => [3C] (<) LESS-THAN SIGN
// 0xFE65, // (﹥) SMALL GREATER-THAN SIGN => [3E] (>) GREATER-THAN SIGN
// 0xFE66, // (﹦) SMALL EQUALS SIGN => [3D] (=) EQUALS SIGN
// 0xFE68, // (﹨) SMALL REVERSE SOLIDUS => [5C] (\) REVERSE SOLIDUS
// 0xFE6A, // (﹪) SMALL PERCENT SIGN => [25] (%) PERCENT SIGN
// 0xFE6B, // (﹫) SMALL COMMERCIAL AT => [40] (@) COMMERCIAL AT
// 0xFE70, // (ﹰ) ARABIC FATHATAN ISOLATED FORM => [20 64B] ( ً) SPACE + ARABIC FATHATAN
// 0xFE72, // (ﹲ) ARABIC DAMMATAN ISOLATED FORM => [20 64C] ( ٌ) SPACE + ARABIC DAMMATAN
// 0xFE74, // (ﹴ) ARABIC KASRATAN ISOLATED FORM => [20 64D] ( ٍ) SPACE + ARABIC KASRATAN
// 0xFE76, // (ﹶ) ARABIC FATHA ISOLATED FORM => [20 64E] ( َ) SPACE + ARABIC FATHA
// 0xFE78, // (ﹸ) ARABIC DAMMA ISOLATED FORM => [20 64F] ( ُ) SPACE + ARABIC DAMMA
// 0xFE7A, // (ﹺ) ARABIC KASRA ISOLATED FORM => [20 650] ( ِ) SPACE + ARABIC KASRA
// 0xFE7C, // (ﹼ) ARABIC SHADDA ISOLATED FORM => [20 651] ( ّ) SPACE + ARABIC SHADDA
// 0xFE7E, // (ﹾ) ARABIC SUKUN ISOLATED FORM => [20 652] ( ْ) SPACE + ARABIC SUKUN
// 0xFF01, // (!) FULLWIDTH EXCLAMATION MARK => [21] (!) EXCLAMATION MARK
// 0xFF02, // (") FULLWIDTH QUOTATION MARK => [22] (") QUOTATION MARK
// 0xFF03, // (#) FULLWIDTH NUMBER SIGN => [23] (#) NUMBER SIGN
// 0xFF05, // (%) FULLWIDTH PERCENT SIGN => [25] (%) PERCENT SIGN
// 0xFF06, // (&) FULLWIDTH AMPERSAND => [26] (&) AMPERSAND
// 0xFF07, // (') FULLWIDTH APOSTROPHE => [27] (') APOSTROPHE
// 0xFF08, // (() FULLWIDTH LEFT PARENTHESIS => [28] (() LEFT PARENTHESIS
// 0xFF09, // ()) FULLWIDTH RIGHT PARENTHESIS => [29] ()) RIGHT PARENTHESIS
// 0xFF0A, // (*) FULLWIDTH ASTERISK => [2A] (*) ASTERISK
// 0xFF0B, // (+) FULLWIDTH PLUS SIGN => [2B] (+) PLUS SIGN
// 0xFF0C, // (,) FULLWIDTH COMMA => [2C] (,) COMMA
// 0xFF0F, // (/) FULLWIDTH SOLIDUS => [2F] (/) SOLIDUS
// 0xFF1A, // (:) FULLWIDTH COLON => [3A] (:) COLON
// 0xFF1B, // (;) FULLWIDTH SEMICOLON => [3B] (;) SEMICOLON
// 0xFF1C, // (<) FULLWIDTH LESS-THAN SIGN => [3C] (<) LESS-THAN SIGN
// 0xFF1D, // (=) FULLWIDTH EQUALS SIGN => [3D] (=) EQUALS SIGN
// 0xFF1E, // (>) FULLWIDTH GREATER-THAN SIGN => [3E] (>) GREATER-THAN SIGN
// 0xFF1F, // (?) FULLWIDTH QUESTION MARK => [3F] (?) QUESTION MARK
// 0xFF20, // (@) FULLWIDTH COMMERCIAL AT => [40] (@) COMMERCIAL AT
// 0xFF3B, // ([) FULLWIDTH LEFT SQUARE BRACKET => [5B] ([) LEFT SQUARE BRACKET
// 0xFF3C, // (\) FULLWIDTH REVERSE SOLIDUS => [5C] (\) REVERSE SOLIDUS
// 0xFF3D, // (]) FULLWIDTH RIGHT SQUARE BRACKET => [5D] (]) RIGHT SQUARE BRACKET
// 0xFF3E, // (^) FULLWIDTH CIRCUMFLEX ACCENT => [5E] (^) CIRCUMFLEX ACCENT
// 0xFF40, // (`) FULLWIDTH GRAVE ACCENT => [60] (`) GRAVE ACCENT
// 0xFF5B, // ({) FULLWIDTH LEFT CURLY BRACKET => [7B] ({) LEFT CURLY BRACKET
// 0xFF5C, // (|) FULLWIDTH VERTICAL LINE => [7C] (|) VERTICAL LINE
// 0xFF5D, // (}) FULLWIDTH RIGHT CURLY BRACKET => [7D] (}) RIGHT CURLY BRACKET
// 0xFF5E, // (~) FULLWIDTH TILDE => [7E] (~) TILDE
// 0xFFE3, // ( ̄) FULLWIDTH MACRON => [20 304] ( ̄) SPACE + COMBINING MACRON
// 0x1F101, // (🄁) DIGIT ZERO COMMA => [30 2C] (0,) DIGIT ZERO + COMMA
// 0x1F102, // (🄂) DIGIT ONE COMMA => [31 2C] (1,) DIGIT ONE + COMMA
// 0x1F103, // (🄃) DIGIT TWO COMMA => [32 2C] (2,) DIGIT TWO + COMMA
// 0x1F104, // (🄄) DIGIT THREE COMMA => [33 2C] (3,) DIGIT THREE + COMMA
// 0x1F105, // (🄅) DIGIT FOUR COMMA => [34 2C] (4,) DIGIT FOUR + COMMA
// 0x1F106, // (🄆) DIGIT FIVE COMMA => [35 2C] (5,) DIGIT FIVE + COMMA
// 0x1F107, // (🄇) DIGIT SIX COMMA => [36 2C] (6,) DIGIT SIX + COMMA
// 0x1F108, // (🄈) DIGIT SEVEN COMMA => [37 2C] (7,) DIGIT SEVEN + COMMA
// 0x1F109, // (🄉) DIGIT EIGHT COMMA => [38 2C] (8,) DIGIT EIGHT + COMMA
// 0x1F10A, // (🄊) DIGIT NINE COMMA => [39 2C] (9,) DIGIT NINE + COMMA
// 0x1F110, // (🄐) PARENTHESIZED LATIN CAPITAL LETTER A => [28 61 29] ((a)) LEFT PARENTHESIS + LATIN SMALL LETTER A + RIGHT PARENTHESIS
// 0x1F111, // (🄑) PARENTHESIZED LATIN CAPITAL LETTER B => [28 62 29] ((b)) LEFT PARENTHESIS + LATIN SMALL LETTER B + RIGHT PARENTHESIS
// 0x1F112, // (🄒) PARENTHESIZED LATIN CAPITAL LETTER C => [28 63 29] ((c)) LEFT PARENTHESIS + LATIN SMALL LETTER C + RIGHT PARENTHESIS
// 0x1F113, // (🄓) PARENTHESIZED LATIN CAPITAL LETTER D => [28 64 29] ((d)) LEFT PARENTHESIS + LATIN SMALL LETTER D + RIGHT PARENTHESIS
// 0x1F114, // (🄔) PARENTHESIZED LATIN CAPITAL LETTER E => [28 65 29] ((e)) LEFT PARENTHESIS + LATIN SMALL LETTER E + RIGHT PARENTHESIS
// 0x1F115, // (🄕) PARENTHESIZED LATIN CAPITAL LETTER F => [28 66 29] ((f)) LEFT PARENTHESIS + LATIN SMALL LETTER F + RIGHT PARENTHESIS
// 0x1F116, // (🄖) PARENTHESIZED LATIN CAPITAL LETTER G => [28 67 29] ((g)) LEFT PARENTHESIS + LATIN SMALL LETTER G + RIGHT PARENTHESIS
// 0x1F117, // (🄗) PARENTHESIZED LATIN CAPITAL LETTER H => [28 68 29] ((h)) LEFT PARENTHESIS + LATIN SMALL LETTER H + RIGHT PARENTHESIS
// 0x1F118, // (🄘) PARENTHESIZED LATIN CAPITAL LETTER I => [28 69 29] ((i)) LEFT PARENTHESIS + LATIN SMALL LETTER I + RIGHT PARENTHESIS
// 0x1F119, // (🄙) PARENTHESIZED LATIN CAPITAL LETTER J => [28 6A 29] ((j)) LEFT PARENTHESIS + LATIN SMALL LETTER J + RIGHT PARENTHESIS
// 0x1F11A, // (🄚) PARENTHESIZED LATIN CAPITAL LETTER K => [28 6B 29] ((k)) LEFT PARENTHESIS + LATIN SMALL LETTER K + RIGHT PARENTHESIS
// 0x1F11B, // (🄛) PARENTHESIZED LATIN CAPITAL LETTER L => [28 6C 29] ((l)) LEFT PARENTHESIS + LATIN SMALL LETTER L + RIGHT PARENTHESIS
// 0x1F11C, // (🄜) PARENTHESIZED LATIN CAPITAL LETTER M => [28 6D 29] ((m)) LEFT PARENTHESIS + LATIN SMALL LETTER M + RIGHT PARENTHESIS
// 0x1F11D, // (🄝) PARENTHESIZED LATIN CAPITAL LETTER N => [28 6E 29] ((n)) LEFT PARENTHESIS + LATIN SMALL LETTER N + RIGHT PARENTHESIS
// 0x1F11E, // (🄞) PARENTHESIZED LATIN CAPITAL LETTER O => [28 6F 29] ((o)) LEFT PARENTHESIS + LATIN SMALL LETTER O + RIGHT PARENTHESIS
// 0x1F11F, // (🄟) PARENTHESIZED LATIN CAPITAL LETTER P => [28 70 29] ((p)) LEFT PARENTHESIS + LATIN SMALL LETTER P + RIGHT PARENTHESIS
// 0x1F120, // (🄠) PARENTHESIZED LATIN CAPITAL LETTER Q => [28 71 29] ((q)) LEFT PARENTHESIS + LATIN SMALL LETTER Q + RIGHT PARENTHESIS
// 0x1F121, // (🄡) PARENTHESIZED LATIN CAPITAL LETTER R => [28 72 29] ((r)) LEFT PARENTHESIS + LATIN SMALL LETTER R + RIGHT PARENTHESIS
// 0x1F122, // (🄢) PARENTHESIZED LATIN CAPITAL LETTER S => [28 73 29] ((s)) LEFT PARENTHESIS + LATIN SMALL LETTER S + RIGHT PARENTHESIS
// 0x1F123, // (🄣) PARENTHESIZED LATIN CAPITAL LETTER T => [28 74 29] ((t)) LEFT PARENTHESIS + LATIN SMALL LETTER T + RIGHT PARENTHESIS
// 0x1F124, // (🄤) PARENTHESIZED LATIN CAPITAL LETTER U => [28 75 29] ((u)) LEFT PARENTHESIS + LATIN SMALL LETTER U + RIGHT PARENTHESIS
// 0x1F125, // (🄥) PARENTHESIZED LATIN CAPITAL LETTER V => [28 76 29] ((v)) LEFT PARENTHESIS + LATIN SMALL LETTER V + RIGHT PARENTHESIS
// 0x1F126, // (🄦) PARENTHESIZED LATIN CAPITAL LETTER W => [28 77 29] ((w)) LEFT PARENTHESIS + LATIN SMALL LETTER W + RIGHT PARENTHESIS
// 0x1F127, // (🄧) PARENTHESIZED LATIN CAPITAL LETTER X => [28 78 29] ((x)) LEFT PARENTHESIS + LATIN SMALL LETTER X + RIGHT PARENTHESIS
// 0x1F128, // (🄨) PARENTHESIZED LATIN CAPITAL LETTER Y => [28 79 29] ((y)) LEFT PARENTHESIS + LATIN SMALL LETTER Y + RIGHT PARENTHESIS
// 0x1F129, // (🄩) PARENTHESIZED LATIN CAPITAL LETTER Z => [28 7A 29] ((z)) LEFT PARENTHESIS + LATIN SMALL LETTER Z + RIGHT PARENTHESIS
// ************************************************************
// zero width
0x200C, // () ZERO WIDTH NON-JOINER
0x200D, // () ZERO WIDTH JOINER
// alternative stops
// reason: string split on "." w/o normalize, easy scan for ".eth"
// https://discuss.ens.domains/t/ens-name-normalization/8652/6
// see: examples.js => replace_sloppy()
0x3002, // (。) IDEOGRAPHIC FULL STOP
0xFF0E, // (.) FULLWIDTH FULL STOP
0xFF61, // (。) HALFWIDTH IDEOGRAPHIC FULL STOP
// scripted stops
0xFE52, // (﹒) SMALL FULL STOP
0x589, // (։) ARMENIAN FULL STOP
0x61D, // (؝) ARABIC END OF TEXT MARK
0x61E, // (؞) ARABIC TRIPLE DOT PUNCTUATION MARK
0x6D4, // (۔) ARABIC FULL STOP
0x700, // (܀) SYRIAC END OF PARAGRAPH
0x701, // (܁) SYRIAC SUPRALINEAR FULL STOP
0x702, // (܂) SYRIAC SUBLINEAR FULL STOP
0x964, // (।) DEVANAGARI DANDA (https://en.wikipedia.org/wiki/Danda)
0x1362, // (።) ETHIOPIC FULL STOP
0x166E, // (᙮) CANADIAN SYLLABICS FULL STOP
0x1803, // (᠃) MONGOLIAN FULL STOP
0x1809, // (᠉) MONGOLIAN MANCHU FULL STOP
0x2CF9, // (⳹) COPTIC OLD NUBIAN FULL STOP
0x2CFE, // (⳾) COPTIC FULL STOP
0x2E3C, // (⸼) STENOGRAPHIC FULL STOP
0xA4FF, // (꓿) LISU PUNCTUATION FULL STOP
0xA60E, // (꘎) VAI FULL STOP
0xA6F3, // (꛳) BAMUM FULL STOP
0x16AF5, // (𖫵) BASSA VAH FULL STOP
0x16E98, // (𖺘) MEDEFAIDRIN FULL STOP
0x1BC9F, // (𛲟) DUPLOYAN PUNCTUATION CHINOOK FULL STOP
0x740, // (◌݀) SYRIAC FEMININE DOT (added: 20221125)
0xA4F8, // (ꓸ) LISU LETTER TONE MYA TI
0xA4F9, // (ꓹ) LISU LETTER TONE NA PO
0xA4FA, // (ꓺ) LISU LETTER TONE MYA CYA
0xA4FB, // (ꓻ) LISU LETTER TONE MYA BO
0xA4FC, // (ꓼ) LISU LETTER TONE MYA NA
0xA4FD, // (ꓽ) LISU LETTER TONE MYA JEU
// exclaim/question mark
0xA1, // (¡) INVERTED EXCLAMATION MARK
0xBF, // (¿) INVERTED QUESTION MARK
0x55E, // (՞) ARMENIAN QUESTION MARK
0x61F, // (؟) ARABIC QUESTION MARK
0x1945, // (᥅) LIMBU QUESTION MARK
0x203D, // (‽) INTERROBANG
0x2E2E, // (⸮) REVERSED QUESTION MARK
0x2E53, // (⹓) MEDIEVAL EXCLAMATION MARK
0x2E54, // (⹔) MEDIEVAL QUESTION MARK
0x2762, // (❢) HEAVY EXCLAMATION MARK ORNAMENT
0xA60F, // (꘏) VAI QUESTION MARK
0xA6F7, // (꛷) BAMUM QUESTION MARK
0x2E18, // (⸘) INVERTED INTERROBANG
0x11143, // (𑅃) CHAKMA QUESTION MARK
0x1E95F, // (𞥟) ADLAM INITIAL QUESTION MARK
0x1F679, // (🙹) HEAVY INTERROBANG ORNAMENT
0x1F67A, // (🙺) SANS-SERIF INTERROBANG ORNAMENT
0x1F67B, // (🙻) HEAVY SANS-SERIF INTERROBANG ORNAMENT
0x7F9, // (߹) NKO EXCLAMATION MARK
0x1E95E, // (𞥞) ADLAM INITIAL EXCLAMATION MARK
0x1944, // (᥄) LIMBU EXCLAMATION MARK
0x1945, // (᥅) LIMBU QUESTION MARK
0xFE56, // (﹖) SMALL QUESTION MARK
0xFE57, // (﹗) SMALL EXCLAMATION MARK
0xFF01, // (!) FULLWIDTH EXCLAMATION MARK
0xFF1F, // (?) FULLWIDTH QUESTION MARK
0x2CFA, // (⳺) COPTIC OLD NUBIAN DIRECT QUESTION MARK (16.0.0)
0x2CFB, // (⳻) COPTIC OLD NUBIAN INDIRECT QUESTION MARK (16.0.0)
//0x2047, // (⁇) DOUBLE QUESTION MARK
//0x2049, // (⁉) EXCLAMATION QUESTION MARK
0x1FBC4, // (🯄) NEGATIVE SQUARED QUESTION MARK
0x1F18A, // (🆊) CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P
// 20230220: moved from chars-mapped.js
// note: IDNA maps the non-negated versions:
// "2460 ; mapped ; 0031 # 1.1 CIRCLED DIGIT ONE
// "2473 ; mapped ; 0032 0030 # 1.1 CIRCLED NUMBER TWENTY
// "24B6 ; mapped ; 0061 # 1.1 CIRCLED LATIN CAPITAL LETTER A"
// "24CF ; mapped ; 007A # 1.1 CIRCLED LATIN CAPITAL LETTER Z"
// negative circled
0x24FF, // (⓿) NEGATIVE CIRCLED DIGIT ZERO
0x24EB, // (⓫) NEGATIVE CIRCLED NUMBER ELEVEN
0x24EC, // (⓬) NEGATIVE CIRCLED NUMBER TWELVE
0x24ED, // (⓭) NEGATIVE CIRCLED NUMBER THIRTEEN
0x24EE, // (⓮) NEGATIVE CIRCLED NUMBER FOURTEEN
0x24EF, // (⓯) NEGATIVE CIRCLED NUMBER FIFTEEN
0x24F0, // (⓰) NEGATIVE CIRCLED NUMBER SIXTEEN
0x24F1, // (⓱) NEGATIVE CIRCLED NUMBER SEVENTEEN
0x24F2, // (⓲) NEGATIVE CIRCLED NUMBER EIGHTEEN
0x24F3, // (⓳) NEGATIVE CIRCLED NUMBER NINETEEN
0x24F4, // (⓴) NEGATIVE CIRCLED NUMBER TWENTY
// double-circled
0x24F5, // (⓵) DOUBLE CIRCLED DIGIT ONE
0x24F6, // (⓶) DOUBLE CIRCLED DIGIT TWO
0x24F7, // (⓷) DOUBLE CIRCLED DIGIT THREE
0x24F8, // (⓸) DOUBLE CIRCLED DIGIT FOUR
0x24F9, // (⓹) DOUBLE CIRCLED DIGIT FIVE
0x24FA, // (⓺) DOUBLE CIRCLED DIGIT SIX
0x24FB, // (⓻) DOUBLE CIRCLED DIGIT SEVEN
0x24FC, // (⓼) DOUBLE CIRCLED DIGIT EIGHT
0x24FD, // (⓽) DOUBLE CIRCLED DIGIT NINE
0x24FE, // (⓾) DOUBLE CIRCLED NUMBER TEN
// negative circled
0x2776, // (❶) DINGBAT NEGATIVE CIRCLED DIGIT ONE
0x2777, // (❷) DINGBAT NEGATIVE CIRCLED DIGIT TWO
0x2778, // (❸) DINGBAT NEGATIVE CIRCLED DIGIT THREE
0x2779, // (❹) DINGBAT NEGATIVE CIRCLED DIGIT FOUR
0x277A, // (❺) DINGBAT NEGATIVE CIRCLED DIGIT FIVE
0x277B, // (❻) DINGBAT NEGATIVE CIRCLED DIGIT SIX
0x277C, // (❼) DINGBAT NEGATIVE CIRCLED DIGIT SEVEN
0x277D, // (❽) DINGBAT NEGATIVE CIRCLED DIGIT EIGHT
0x277E, // (❾) DINGBAT NEGATIVE CIRCLED DIGIT NINE
0x277F, // (❿) DINGBAT NEGATIVE CIRCLED NUMBER TEN
// circled sans-serif
0x1F10B,// (🄋) DINGBAT CIRCLED SANS-SERIF DIGIT ZERO
0x2780, // (➀) DINGBAT CIRCLED SANS-SERIF DIGIT ONE
0x2781, // (➁) DINGBAT CIRCLED SANS-SERIF DIGIT TWO
0x2782, // (➂) DINGBAT CIRCLED SANS-SERIF DIGIT THREE
0x2783, // (➃) DINGBAT CIRCLED SANS-SERIF DIGIT FOUR
0x2784, // (➄) DINGBAT CIRCLED SANS-SERIF DIGIT FIVE
0x2785, // (➅) DINGBAT CIRCLED SANS-SERIF DIGIT SIX
0x2786, // (➆) DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN
0x2787, // (➇) DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT
0x2788, // (➈) DINGBAT CIRCLED SANS-SERIF DIGIT NINE
0x2789, // (➉) DINGBAT CIRCLED SANS-SERIF NUMBER TEN
// negative circled sans-serif
0x1F10C,// (🄌) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ZERO
0x278A, // (➊) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE
0x278B, // (➋) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO
0x278C, // (➌) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE
0x278D, // (➍) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR
0x278E, // (➎) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE
0x278F, // (➏) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX
0x2790, // (➐) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN
0x2791, // (➑) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT
0x2792, // (➒) DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE
0x2793, // (➓) DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
// negative circled => a-z
0x1F150, // (🅐) NEGATIVE CIRCLED LATIN CAPITAL LETTER A
0x1F151, // (🅑) NEGATIVE CIRCLED LATIN CAPITAL LETTER B
0x1F152, // (🅒) NEGATIVE CIRCLED LATIN CAPITAL LETTER C
0x1F153, // (🅓) NEGATIVE CIRCLED LATIN CAPITAL LETTER D
0x1F154, // (🅔) NEGATIVE CIRCLED LATIN CAPITAL LETTER E
0x1F155, // (🅕) NEGATIVE CIRCLED LATIN CAPITAL LETTER F
0x1F156, // (🅖) NEGATIVE CIRCLED LATIN CAPITAL LETTER G
0x1F157, // (🅗) NEGATIVE CIRCLED LATIN CAPITAL LETTER H
0x1F158, // (🅘) NEGATIVE CIRCLED LATIN CAPITAL LETTER I
0x1F159, // (🅙) NEGATIVE CIRCLED LATIN CAPITAL LETTER J
0x1F15A, // (🅚) NEGATIVE CIRCLED LATIN CAPITAL LETTER K
0x1F15B, // (🅛) NEGATIVE CIRCLED LATIN CAPITAL LETTER L
0x1F15C, // (🅜) NEGATIVE CIRCLED LATIN CAPITAL LETTER M
0x1F15D, // (🅝) NEGATIVE CIRCLED LATIN CAPITAL LETTER N
0x1F15E, // (🅞) NEGATIVE CIRCLED LATIN CAPITAL LETTER O
0x1F15F, // (🅟) NEGATIVE CIRCLED LATIN CAPITAL LETTER P
0x1F160, // (🅠) NEGATIVE CIRCLED LATIN CAPITAL LETTER Q
0x1F161, // (🅡) NEGATIVE CIRCLED LATIN CAPITAL LETTER R
0x1F162, // (🅢) NEGATIVE CIRCLED LATIN CAPITAL LETTER S
0x1F163, // (🅣) NEGATIVE CIRCLED LATIN CAPITAL LETTER T
0x1F164, // (🅤) NEGATIVE CIRCLED LATIN CAPITAL LETTER U
0x1F165, // (🅥) NEGATIVE CIRCLED LATIN CAPITAL LETTER V
0x1F166, // (🅦) NEGATIVE CIRCLED LATIN CAPITAL LETTER W
0x1F167, // (🅧) NEGATIVE CIRCLED LATIN CAPITAL LETTER X
0x1F168, // (🅨) NEGATIVE CIRCLED LATIN CAPITAL LETTER Y
0x1F169, // (🅩) NEGATIVE CIRCLED LATIN CAPITAL LETTER Z
// sectioning
0xA7, // (§) SECTION SIGN
0x2E39, // (⸹) TOP HALF SECTION SIGN
0xB6, // (¶) PILCROW SIGN
0x2E3F, // (⸿) CAPITULUM
0x204B, // (⁋) REVERSED PILCROW SIGN
0x2761, // (❡) CURVED STEM PARAGRAPH SIGN ORNAMENT
0x2E4D, // (⹍) PARAGRAPHUS MARK
0xA74D, // (ꝍ) LATIN SMALL LETTER O WITH LOOP
0xA753, // (ꝓ) LATIN SMALL LETTER P WITH FLOURISH
0xA755, // (ꝕ) LATIN SMALL LETTER P WITH SQUIRREL TAIL
0xA75B, // (ꝛ) LATIN SMALL LETTER R ROTUNDA
0xA75D, // (ꝝ) LATIN SMALL LETTER RUM ROTUNDA
0xA769, // (ꝩ) LATIN SMALL LETTER VEND
0xA76D, // (ꝭ) LATIN SMALL LETTER IS
0xA771, // (ꝱ) LATIN SMALL LETTER DUM
0xA772, // (ꝲ) LATIN SMALL LETTER LUM
0xA773, // (ꝳ) LATIN SMALL LETTER MUM
0xA774, // (ꝴ) LATIN SMALL LETTER NUM
0xA775, // (ꝵ) LATIN SMALL LETTER RUM
0xA777, // (ꝷ) LATIN SMALL LETTER TUM
0xA778, // (ꝸ) LATIN SMALL LETTER UM
0xA77A, // (ꝺ) LATIN SMALL LETTER INSULAR D
0xA77C, // (ꝼ) LATIN SMALL LETTER INSULAR F
0xA783, // (ꞃ) LATIN SMALL LETTER INSULAR R
0xA785, // (ꞅ) LATIN SMALL LETTER INSULAR S
0xA787, // (ꞇ) LATIN SMALL LETTER INSULAR T
0xA797, // (ꞗ) LATIN SMALL LETTER B WITH FLOURISH
0xA79B, // (ꞛ) LATIN SMALL LETTER VOLAPUK AE
0xA79D, // (ꞝ) LATIN SMALL LETTER VOLAPUK OE
0xA79F, // (ꞟ) LATIN SMALL LETTER VOLAPUK UE
0xA7C1, // (ꟁ) LATIN SMALL LETTER OLD POLISH O
0xA7C3, // (ꟃ) LATIN SMALL LETTER ANGLICANA W
0xA7D1, // (ꟑ) LATIN SMALL LETTER CLOSED INSULAR G
0xA7D7, // (ꟗ) LATIN SMALL LETTER MIDDLE SCOTS S
0xA7D9, // (ꟙ) LATIN SMALL LETTER SIGMOID S
// 0xDE, // (Þ) LATIN CAPITAL LETTER THORN (disallowed idna)
// 20230804: iceland uses this
// https://en.wikipedia.org/wiki/Thorn_(letter)
// node tools/reg-count.js DE === 0
0xFE, // (þ) LATIN SMALL LETTER THORN
0x1BF, // (ƿ) LATIN LETTER WYNN
0xA7D5, // (ꟕ) LATIN SMALL LETTER DOUBLE WYNN
0xF0, // (ð) LATIN SMALL LETTER ETH
0xA765, // (ꝥ) LATIN SMALL LETTER THORN WITH STROKE
0xA767, // (ꝧ) LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER
0xA7D3, // (ꟓ) LATIN SMALL LETTER DOUBLE THORN
// these just seem dangerous
0xAB35, // (ꬵ) LATIN SMALL LETTER LENIS F
0x131, // (ı) LATIN SMALL LETTER DOTLESS I
0x237, // (ȷ) LATIN SMALL LETTER DOTLESS J
0x138, // (ĸ) LATIN SMALL LETTER KRA
0x266D, // (♭) MUSIC FLAT SIGN
// scuffed digits
// 2
0x2621, // (☡) CAUTION SIGN
0x1BB, // (ƻ) LATIN LETTER TWO WITH STROKE
0x218A, // (↊) TURNED DIGIT TWO
0x1D24, // (ᴤ) LATIN LETTER VOICED LARYNGEAL SPIRANT
// (see: e)
0x21D, // (ȝ) LATIN SMALL LETTER YOGH
0x1B9, // (ƹ) LATIN SMALL LETTER EZH REVERSED
0x1BA, // (ƺ) LATIN SMALL LETTER EZH WITH TAIL
0x292, // (ʒ) LATIN SMALL LETTER EZH
0x293, // (ʓ) LATIN SMALL LETTER EZH WITH CURL
0x1EF, // (ǯ) LATIN SMALL LETTER EZH WITH CARON
0x1D23, // (ᴣ) LATIN LETTER SMALL CAPITAL EZH
0xA76B, // (ꝫ) LATIN SMALL LETTER ET
0xA763, // (ꝣ) LATIN SMALL LETTER VISIGOTHIC Z
0x218B, // (↋) TURNED DIGIT THREE
0xA72B, // (ꜫ) LATIN SMALL LETTER TRESILLO
0x25B, // (ɛ) LATIN SMALL LETTER OPEN E
0x25C, // (ɜ) LATIN SMALL LETTER REVERSED OPEN E
0x1D93, // (ᶓ) LATIN SMALL LETTER OPEN E WITH RETROFLEX HOOK
0x1D94, // (ᶔ) LATIN SMALL LETTER REVERSED OPEN E WITH RETROFLEX HOOK
0x2125, // (℥) OUNCE SIGN
// 4
0xA72F, // (ꜯ) LATIN SMALL LETTER CUATRILLO WITH COMMA
0xA72D, // (ꜭ) LATIN SMALL LETTER CUATRILLO
// 6
0x1EFD, // (ỽ) LATIN SMALL LETTER MIDDLE-WELSH V
// 8
0x223, // (ȣ) LATIN SMALL LETTER OU
0x1D15, // (ᴕ) LATIN LETTER SMALL CAPITAL OU
// 9
0xA76F, // (ꝯ) LATIN SMALL LETTER CON
// digraphs
0x238, // (ȸ) LATIN SMALL LETTER DB DIGRAPH
0x239, // (ȹ) LATIN SMALL LETTER QP DIGRAPH
0x2A3, // (ʣ) LATIN SMALL LETTER DZ DIGRAPH
0x1C6, // (dž) LATIN SMALL LETTER DZ WITH CARON
0x2A4, // (ʤ) LATIN SMALL LETTER DEZH DIGRAPH
0x2A5, // (ʥ) LATIN SMALL LETTER DZ DIGRAPH WITH CURL
0x2A6, // (ʦ) LATIN SMALL LETTER TS DIGRAPH
0x2A8, // (ʨ) LATIN SMALL LETTER TC DIGRAPH WITH CURL
0x2AA, // (ʪ) LATIN SMALL LETTER LS DIGRAPH
0x2AB, // (ʫ) LATIN SMALL LETTER LZ DIGRAPH
0xAB66, // (ꭦ) LATIN SMALL LETTER DZ DIGRAPH WITH RETROFLEX HOOK
0xAB67, // (ꭧ) LATIN SMALL LETTER TS DIGRAPH WITH RETROFLEX HOOK
0x1DF12, // (𝼒) LATIN SMALL LETTER DEZH DIGRAPH WITH PALATAL HOOK
0x1DF19, // (𝼙) LATIN SMALL LETTER DEZH DIGRAPH WITH RETROFLEX HOOK
0x1A3, // (ƣ) LATIN SMALL LETTER OI
0x1E3, // (ǣ) LATIN SMALL LETTER AE WITH MACRON
0x1FD, // (ǽ) LATIN SMALL LETTER AE WITH ACUTE
0x26E, // (ɮ) LATIN SMALL LETTER LEZH
0x276, // (ɶ) LATIN LETTER SMALL CAPITAL OE
0x1D6B, // (ᵫ) LATIN SMALL LETTER UE
0x1D01, // (ᴁ) LATIN LETTER SMALL CAPITAL AE
0xAB50, // (ꭐ) LATIN SMALL LETTER UI
0xAB60, // (ꭠ) LATIN SMALL LETTER SAKHA YAT
0xAB61, // (ꭡ) LATIN SMALL LETTER IOTIFIED E
0xAB62, // (ꭢ) LATIN SMALL LETTER OPEN OE
0xAB63, // (ꭣ) LATIN SMALL LETTER UO
0x1F670, // (🙰) SCRIPT LIGATURE ET ORNAMENT
0x1F671, // (🙱) HEAVY SCRIPT LIGATURE ET ORNAMENT
0xA729, // (ꜩ) LATIN SMALL LETTER TZ
0xA733, // (ꜳ) LATIN SMALL LETTER AA
0xA735, // (ꜵ) LATIN SMALL LETTER AO
0xA737, // (ꜷ) LATIN SMALL LETTER AU
0xA739, // (ꜹ) LATIN SMALL LETTER AV
0xA73B, // (ꜻ) LATIN SMALL LETTER AV WITH HORIZONTAL BAR
0xA73D, // (ꜽ) LATIN SMALL LETTER AY
0xA74F, // (ꝏ) LATIN SMALL LETTER OO
0xA761, // (ꝡ) LATIN SMALL LETTER VY
//0x133, // (ij) LATIN SMALL LIGATURE IJ
0x153, // (œ) LATIN SMALL LIGATURE OE
0xAB40, // (ꭀ) LATIN SMALL LETTER INVERTED OE
//0xFB00, // (ff) LATIN SMALL LIGATURE FF => [66 66]
//0xFB01, // (fi) LATIN SMALL LIGATURE FI => [66 69]
//0xFB02, // (fl) LATIN SMALL LIGATURE FL => [66 6C]
//0xFB03, // (ffi) LATIN SMALL LIGATURE FFI => [66 66 69]
//0xFB04, // (ffl) LATIN SMALL LIGATURE FFL => [66 66 6C]
0xFB05, // (ſt) LATIN SMALL LIGATURE LONG S T => [73 74]
0xFB06, // (st) LATIN SMALL LIGATURE ST => [73 74]
0x195, // (ƕ) LATIN SMALL LETTER HV
0x2114, // (℔) L B BAR SYMBOL
0x1EFB, // (ỻ) LATIN SMALL LETTER MIDDLE-WELSH LL
// epigraphic
0xA7F7, // (ꟷ) LATIN EPIGRAPHIC LETTER SIDEWAYS I
0xA7FB, // (ꟻ) LATIN EPIGRAPHIC LETTER REVERSED F
0xA7FC, // (ꟼ) LATIN EPIGRAPHIC LETTER REVERSED P
0xA7FD, // (ꟽ) LATIN EPIGRAPHIC LETTER INVERTED M
0xA7FE, // (ꟾ) LATIN EPIGRAPHIC LETTER I LONGA
0xA7FF, // (ꟿ) LATIN EPIGRAPHIC LETTER ARCHAIC M
0x214C, // (⅌) PER SIGN
0x2123, // (℣) VERSICLE
0x2108, // (℈) SCRUPLE
0x214D, // (⅍) AKTIESELSKAB
0x214A, // (⅊) PROPERTY LINE
0x2104, // (℄) CENTRE LINE SYMBOL
0x211F, // (℟) RESPONSE
0x1F545, // (🕅) SYMBOL FOR MARKS CHAPTER
0x1F5DA, // (🗚) INCREASE FONT SIZE SYMBOL
0x1F5DB, // (🗛) DECREASE FONT SIZE SYMBOL
// currency (dead)
0x20AF, // (₯) DRACHMA SIGN
0x20A0, // (₠) EURO-CURRENCY SIGN
0x20A2, // (₢) CRUZEIRO SIGN
0x20A3, // (₣) FRENCH FRANC SIGN
0x20A4, // (₤) LIRA SIGN
0x20A5, // (₥) MILL SIGN
0x20A7, // (₧) PESETA SIGN
0x20B0, // (₰) GERMAN PENNY SIGN
0x20B3, // (₳) AUSTRAL SIGN
0x20B6, // (₶) LIVRE TOURNOIS SIGN
0x20B7, // (₷) SPESMILO SIGN
0x20BB, // (₻) NORDIC MARK SIGN
// hash-like
0x266E, // (♮) MUSIC NATURAL SIGN
0x266F, // (♯) MUSIC SHARP SIGN
0x232D, // (⌭) CYLINDRICITY
0x2317, // (⌗) VIEWDATA SQUARE
// weird shit
0xA723, // (ꜣ) LATIN SMALL LETTER EGYPTOLOGICAL ALEF
0xA725,// (ꜥ) LATIN SMALL LETTER EGYPTOLOGICAL AIN
0xA78C, // (ꞌ) LATIN SMALL LETTER SALTILLO
0xA78F, // (ꞏ) LATIN LETTER SINOLOGICAL DOT
// with stroke
0x2C65, // (ⱥ) LATIN SMALL LETTER A WITH STROKE
0x180, // (ƀ) LATIN SMALL LETTER B WITH STROKE
0x23C, // (ȼ) LATIN SMALL LETTER C WITH STROKE
0x111, // (đ) LATIN SMALL LETTER D WITH STROKE
0x247, // (ɇ) LATIN SMALL LETTER E WITH STROKE
0xA799, // (ꞙ) LATIN SMALL LETTER F WITH STROKE
0x1E5, // (ǥ) LATIN SMALL LETTER G WITH STROKE
0x127, // (ħ) LATIN SMALL LETTER H WITH STROKE
0x268, // (ɨ) LATIN SMALL LETTER I WITH STROKE
0x249, // (ɉ) LATIN SMALL LETTER J WITH STROKE
0xA741, // (ꝁ) LATIN SMALL LETTER K WITH STROKE
//0x142, // (ł) LATIN SMALL LETTER L WITH STROKE (20221114: most frequent polish, kinda dangerous)
///0xF8, // (ø) LATIN SMALL LETTER O WITH STROKE (20221030: changed for norwegian/danish)
0x1D7D, // (ᵽ) LATIN SMALL LETTER P WITH STROKE
0x24D, // (ɍ) LATIN SMALL LETTER R WITH STROKE
0x167, // (ŧ) LATIN SMALL LETTER T WITH STROKE
0xA7B9, // (ꞹ) LATIN SMALL LETTER U WITH STROKE
0x24F, // (ɏ) LATIN SMALL LETTER Y WITH STROKE
0x1B6, // (ƶ) LATIN SMALL LETTER Z WITH STROKE
// weird strokes
0xA7C8, // (ꟈ) LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY
0xA7A1, // (ꞡ) LATIN SMALL LETTER G WITH OBLIQUE STROKE
0x1DF1A, // (𝼚) LATIN SMALL LETTER I WITH STROKE AND RETROFLEX HOOK
0xA7A3, // (ꞣ) LATIN SMALL LETTER K WITH OBLIQUE STROKE
0xA743, // (ꝃ) LATIN SMALL LETTER K WITH DIAGONAL STROKE
0xA745, // (ꝅ) LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE
0xA749, // (ꝉ) LATIN SMALL LETTER L WITH HIGH STROKE
0xA7A5, // (ꞥ) LATIN SMALL LETTER N WITH OBLIQUE STROKE
0xAB3F, // (ꬿ) LATIN SMALL LETTER OPEN O WITH STROKE
0x1FF, // (ǿ) LATIN SMALL LETTER O WITH STROKE AND ACUTE
0xA74B, // (ꝋ) LATIN SMALL LETTER O WITH LONG STROKE OVERLAY
0xA751, // (ꝑ) LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER
0xA757, // (ꝗ) LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER
0xA759, // (ꝙ) LATIN SMALL LETTER Q WITH DIAGONAL STROKE
0xA7A7, // (ꞧ) LATIN SMALL LETTER R WITH OBLIQUE STROKE
0xA7A9, // (ꞩ) LATIN SMALL LETTER S WITH OBLIQUE STROKE
0xA7CA, // (ꟊ) LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY
0x2C66, // (ⱦ) LATIN SMALL LETTER T WITH DIAGONAL STROKE
0xA75F, // (ꝟ) LATIN SMALL LETTER WITH DIAGONAL STROKE
0xA7CD, // () LATIN SMALL LETTER S WITH DIAGONAL STROKE
// wtf strokes
0x1D7B, // (ᵻ) LATIN SMALL CAPITAL LETTER I WITH STROKE
0x1D7E, // (ᵾ) LATIN SMALL CAPITAL LETTER U WITH STROKE
0x1D7C, // (ᵼ) LATIN SMALL LETTER IOTA WITH STROKE
0x1D7F, // (ᵿ) LATIN SMALL LETTER UPSILON WITH STROKE
0x19B, // (ƛ) LATIN SMALL LETTER LAMBDA WITH STROKE
0x275, // (ɵ) LATIN SMALL LETTER BARRED O
0x289, // (ʉ) LATIN SMALL LETTER U BAR
0xA793, // (ꞓ) LATIN SMALL LETTER C WITH BAR
0x1D7A, // (ᵺ) LATIN SMALL LETTER TH WITH STRIKETHROUGH
// legs
0xAB4E, // (ꭎ) LATIN SMALL LETTER U WITH SHORT RIGHT LEG
0xAB4F, // (ꭏ) LATIN SMALL LETTER U BAR WITH SHORT RIGHT LEG
0xAB5A, // (ꭚ) LATIN SMALL LETTER Y WITH SHORT RIGHT LEG
0xAB56, // (ꭖ) LATIN SMALL LETTER X WITH LOW RIGHT RING
0xAB57, // (ꭗ) LATIN SMALL LETTER X WITH LONG LEFT LEG
0xAB58, // (ꭘ) LATIN SMALL LETTER X WITH LONG LEFT LEG AND LOW RIGHT RING
0xAB59, // (ꭙ) LATIN SMALL LETTER X WITH LONG LEFT LEG WITH SERIF
0x19E, // (ƞ) LATIN SMALL LETTER N WITH LONG RIGHT LEG
// tails
0x23F, // (ȿ) LATIN SMALL LETTER S WITH SWASH TAIL
0x240, // (ɀ) LATIN SMALL LETTER Z WITH SWASH TAIL
0x24B, // (ɋ) LATIN SMALL LETTER Q WITH HOOK TAIL
0x256, // (ɖ) LATIN SMALL LETTER D WITH TAIL
0x29D, // (ʝ) LATIN SMALL LETTER J WITH CROSSED-TAIL
0xAB3A, // (ꬺ) LATIN SMALL LETTER M WITH CROSSED-TAIL
0xAB3B, // (ꬻ) LATIN SMALL LETTER N WITH CROSSED-TAIL
// curls
0x255, // (ɕ) LATIN SMALL LETTER C WITH CURL
0x221, // (ȡ) LATIN SMALL LETTER D WITH CURL
0x234, // (ȴ) LATIN SMALL LETTER L WITH CURL
0x235, // (ȵ) LATIN SMALL LETTER N WITH CURL
0x1DF1E, // (𝼞) LATIN SMALL LETTER S WITH CURL
0x236, // (ȶ) LATIN SMALL LETTER T WITH CURL
0x2C74, // (ⱴ) LATIN SMALL LETTER V WITH CURL
0x291, // (ʑ) LATIN SMALL LETTER Z WITH CURL
0x1EFF, // (ỿ) LATIN SMALL LETTER Y WITH LOOP
0x1E9A, // (ẚ) LATIN SMALL LETTER A WITH RIGHT HALF RING
0x1E9C, // (ẜ) LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE
0x1E9D, // (ẝ) LATIN SMALL LETTER LONG S WITH HIGH STROKE
//0x1E9B, // (ẛ) LATIN SMALL LETTER LONG S WITH DOT ABOVE
// 20230829: changed in unicode 15.1
// now mapped to: DF (ß) LATIN SMALL LETTER SHARP S
//0x1E9E, // (ẞ) LATIN CAPITAL LETTER SHARP S
// what the fuck are these, latin greeks?
0x251, // (ɑ) LATIN SMALL LETTER ALPHA
0x1E9F, // (ẟ) LATIN SMALL LETTER DELTA
0x263, // (ɣ) LATIN SMALL LETTER GAMMA
0x278, // (ɸ) LATIN SMALL LETTER PHI
0x269, // (ɩ) LATIN SMALL LETTER IOTA
0x277, // (ɷ) LATIN SMALL LETTER CLOSED OMEGA
0x28A, // (ʊ) LATIN SMALL LETTER UPSILON
0x2C77, // (ⱷ) LATIN SMALL LETTER TAILLESS PHI
0xAB30, // (ꬰ) LATIN SMALL LETTER BARRED ALPHA
0xAB53, // (ꭓ) LATIN SMALL LETTER CHI
0xAB54, // (ꭔ) LATIN SMALL LETTER CHI WITH LOW RIGHT RING
0xAB55, // (ꭕ) LATIN SMALL LETTER CHI WITH LOW LEFT SERIF
0xAB64, // (ꭤ) LATIN SMALL LETTER INVERTED ALPHA
0xA7B5, // (ꞵ) LATIN SMALL LETTER BETA
0xA7B7, // (ꞷ) LATIN SMALL LETTER OMEGA
0xA7DB, // () LATIN SMALL LETTER LAMBDA (16.0.0)
0x2180, // (ↀ) ROMAN NUMERAL ONE THOUSAND C D
0x2181, // (ↁ) ROMAN NUMERAL FIVE THOUSAND (cool character)
0x2182, // (ↂ) ROMAN NUMERAL TEN THOUSAND
0x2185, // (ↅ) ROMAN NUMERAL SIX LATE FORM
0x2186, // (ↆ) ROMAN NUMERAL FIFTY EARLY FORM
0x2187, // (ↇ) ROMAN NUMERAL FIFTY THOUSAND
0x2188, // (ↈ) ROMAN NUMERAL ONE HUNDRED THOUSAND
0x10190, // (𐆐) ROMAN SEXTANS SIGN
0x10191, // (𐆑) ROMAN UNCIA SIGN
0x10192, // (𐆒) ROMAN SEMUNCIA SIGN
0x10193, // (𐆓) ROMAN SEXTULA SIGN
0x10194, // (𐆔) ROMAN DIMIDIA SEXTULA SIGN
0x10195, // (𐆕) ROMAN SILIQUA SIGN
0x10196, // (𐆖) ROMAN DENARIUS SIGN
0x10197, // (𐆗) ROMAN QUINARIUS SIGN
0x10198, // (𐆘) ROMAN SESTERTIUS SIGN
0x10199, // (𐆙) ROMAN DUPONDIUS SIGN
0x1019A, // (𐆚) ROMAN AS SIGN
0x1019B, // (𐆛) ROMAN CENTURIAL SIGN
0x1019C, // (𐆜) ASCIA SYMBOL
// percusive
0x2AC, // (ʬ) LATIN LETTER BILABIAL PERCUSSIVE
0x2AD, // (ʭ) LATIN LETTER BIDENTAL PERCUSSIVE
// glottal
0x1BE, // (ƾ) LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE
0x242, // (ɂ) LATIN SMALL LETTER GLOTTAL STOP
0x294, // (ʔ) LATIN LETTER GLOTTAL STOP
0x296, // (ʖ) LATIN LETTER INVERTED GLOTTAL STOP
0x2A1, // (ʡ) LATIN LETTER GLOTTAL STOP WITH STROKE
0x295, // (ʕ) LATIN LETTER PHARYNGEAL VOICED FRICATIVE
0x2A2, // (ʢ) LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE
0x1DF0E, // (𝼎) LATIN LETTER INVERTED GLOTTAL STOP WITH CURL
0xA7BB, // (ꞻ) LATIN SMALL LETTER GLOTTAL A
0xA7BD, // (ꞽ) LATIN SMALL LETTER GLOTTAL I
0xA7BF, // (ꞿ) LATIN SMALL LETTER GLOTTAL U
0x97D, // (ॽ) DEVANAGARI LETTER GLOTTAL STOP
// stretched c
0x297, // (ʗ) LATIN LETTER STRETCHED C
0x1DF0F, // (𝼏) LATIN LETTER STRETCHED C WITH CURL
// half h
0x2C76, // (ⱶ) LATIN SMALL LETTER HALF H
0xA7F5, // (Ꟶ) LATIN CAPITAL LETTER REVERSED HALF H
0xA7F6, // (ꟶ) LATIN SMALL LETTER REVERSED HALF H
// with HOOK
0x188, // (ƈ) LATIN SMALL LETTER C WITH HOOK
0x192, // (ƒ) LATIN SMALL LETTER F WITH HOOK
0x199, // (ƙ) LATIN SMALL LETTER K WITH HOOK
0x1A5, // (ƥ) LATIN SMALL LETTER P WITH HOOK
0x1AD, // (ƭ) LATIN SMALL LETTER T WITH HOOK
0x1B4, // (ƴ) LATIN SMALL LETTER Y WITH HOOK
0x225, // (ȥ) LATIN SMALL LETTER Z WITH HOOK
0x253, // (ɓ) LATIN SMALL LETTER B WITH HOOK
0x257, // (ɗ) LATIN SMALL LETTER D WITH HOOK
0x260, // (ɠ) LATIN SMALL LETTER G WITH HOOK
0x266, // (ɦ) LATIN SMALL LETTER H WITH HOOK
0x271, // (ɱ) LATIN SMALL LETTER M WITH HOOK
0x282, // (ʂ) LATIN SMALL LETTER S WITH HOOK
0x28B, // (ʋ) LATIN SMALL LETTER V WITH HOOK
0x2A0, // (ʠ) LATIN SMALL LETTER Q WITH HOOK
0x1D91, // (ᶑ) LATIN SMALL LETTER D WITH HOOK AND TAIL
0x2C73, // (ⱳ) LATIN SMALL LETTER W WITH HOOK
// left hook
0x272, // (ɲ) LATIN SMALL LETTER N WITH LEFT HOOK
0xAB52, // (ꭒ) LATIN SMALL LETTER U WITH LEFT HOOK
0x1DF11, // (𝼑) LATIN SMALL LETTER L WITH FISHHOOK
0x1DF16, // (𝼖) LATIN SMALL LETTER R WITH FISHHOOK AND PALATAL HOOK
0x1DF25, // (𝼥) LATIN SMALL LETTER D WITH MID-HEIGHT LEFT HOOK
0x1DF26, // (𝼦) LATIN SMALL LETTER L WITH MID-HEIGHT LEFT HOOK
0x1DF27, // (𝼧) LATIN SMALL LETTER N WITH MID-HEIGHT LEFT HOOK
0x1DF28, // (𝼨) LATIN SMALL LETTER R WITH MID-HEIGHT LEFT HOOK
0x1DF29, // (𝼩) LATIN SMALL LETTER S WITH MID-HEIGHT LEFT HOOK
0x1DF2A, // (𝼪) LATIN SMALL LETTER T WITH MID-HEIGHT LEFT HOOK
// right hook
0x2C71, // (ⱱ) LATIN SMALL LETTER V WITH RIGHT HOOK
// retroflex hook
0x1D92, // (ᶒ) LATIN SMALL LETTER E WITH RETROFLEX HOOK
0x1D96, // (ᶖ) LATIN SMALL LETTER I WITH RETROFLEX HOOK
0x26D, // (ɭ) LATIN SMALL LETTER L WITH RETROFLEX HOOK
0x273, // (ɳ) LATIN SMALL LETTER N WITH RETROFLEX HOOK
0x288, // (ʈ) LATIN SMALL LETTER T WITH RETROFLEX HOOK
0x290, // (ʐ) LATIN SMALL LETTER Z WITH RETROFLEX HOOK
0x1D8F, // (ᶏ) LATIN SMALL LETTER A WITH RETROFLEX HOOK
0x1D90, // (ᶐ) LATIN SMALL LETTER ALPHA WITH RETROFLEX HOOK
0x1D97, // (ᶗ) LATIN SMALL LETTER OPEN O WITH RETROFLEX HOOK
0x1D99, // (ᶙ) LATIN SMALL LETTER U WITH RETROFLEX HOOK
0x1D9A, // (ᶚ) LATIN SMALL LETTER EZH WITH RETROFLEX HOOK
0xA78E, // (ꞎ) LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT
0x1DF05, // (𝼅) LATIN SMALL LETTER LEZH WITH RETROFLEX HOOK
0x1DF0A, // (𝼊) LATIN LETTER RETROFLEX CLICK WITH RETROFLEX HOOK
0x1DF1B, // (𝼛) LATIN SMALL LETTER O WITH RETROFLEX HOOK
0x1DF1D, // (𝼝) LATIN SMALL LETTER C WITH RETROFLEX HOOK
0x1DF09, // (𝼉) LATIN SMALL LETTER T WITH HOOK AND RETROFLEX HOOK
// palatal hook
0x1AB, // (ƫ) LATIN SMALL LETTER T WITH PALATAL HOOK
0x1D80, // (ᶀ) LATIN SMALL LETTER B WITH PALATAL HOOK
0x1D81, // (ᶁ) LATIN SMALL LETTER D WITH PALATAL HOOK
0x1D82, // (ᶂ) LATIN SMALL LETTER F WITH PALATAL HOOK
0x1D83, // (ᶃ) LATIN SMALL LETTER G WITH PALATAL HOOK
0x1D84, // (ᶄ) LATIN SMALL LETTER K WITH PALATAL HOOK
0x1D85, // (ᶅ) LATIN SMALL LETTER L WITH PALATAL HOOK
0x1D86, // (ᶆ) LATIN SMALL LETTER M WITH PALATAL HOOK
0x1D87, // (ᶇ) LATIN SMALL LETTER N WITH PALATAL HOOK
0x1D88, // (ᶈ) LATIN SMALL LETTER P WITH PALATAL HOOK
0x1D8A, // (ᶊ) LATIN SMALL LETTER S WITH PALATAL HOOK
0x1D8C, // (ᶌ) LATIN SMALL LETTER V WITH PALATAL HOOK
0x1D8D, // (ᶍ) LATIN SMALL LETTER X WITH PALATAL HOOK
0x1D8E, // (ᶎ) LATIN SMALL LETTER Z WITH PALATAL HOOK
0xA794, // (ꞔ) LATIN SMALL LETTER C WITH PALATAL HOOK
0xA795, // (ꞕ) LATIN SMALL LETTER H WITH PALATAL HOOK