regex-syntax 0.5.2

A regular expression parser.
Documentation
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
// DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY:
//
//  ucd-generate general-category tmp/ucd-10.0.0/ --chars --exclude surrogate
//
// ucd-generate is available on crates.io.

pub const BY_NAME: &'static [(&'static str, &'static [(char, char)])] = &[
  ("Cased_Letter", CASED_LETTER), ("Close_Punctuation", CLOSE_PUNCTUATION),
  ("Connector_Punctuation", CONNECTOR_PUNCTUATION), ("Control", CONTROL),
  ("Currency_Symbol", CURRENCY_SYMBOL),
  ("Dash_Punctuation", DASH_PUNCTUATION), ("Decimal_Number", DECIMAL_NUMBER),
  ("Enclosing_Mark", ENCLOSING_MARK),
  ("Final_Punctuation", FINAL_PUNCTUATION), ("Format", FORMAT),
  ("Initial_Punctuation", INITIAL_PUNCTUATION), ("Letter", LETTER),
  ("Letter_Number", LETTER_NUMBER), ("Line_Separator", LINE_SEPARATOR),
  ("Lowercase_Letter", LOWERCASE_LETTER), ("Mark", MARK),
  ("Math_Symbol", MATH_SYMBOL), ("Modifier_Letter", MODIFIER_LETTER),
  ("Modifier_Symbol", MODIFIER_SYMBOL), ("Nonspacing_Mark", NONSPACING_MARK),
  ("Number", NUMBER), ("Open_Punctuation", OPEN_PUNCTUATION),
  ("Other", OTHER), ("Other_Letter", OTHER_LETTER),
  ("Other_Number", OTHER_NUMBER), ("Other_Punctuation", OTHER_PUNCTUATION),
  ("Other_Symbol", OTHER_SYMBOL),
  ("Paragraph_Separator", PARAGRAPH_SEPARATOR), ("Private_Use", PRIVATE_USE),
  ("Punctuation", PUNCTUATION), ("Separator", SEPARATOR),
  ("Space_Separator", SPACE_SEPARATOR), ("Spacing_Mark", SPACING_MARK),
  ("Symbol", SYMBOL), ("Titlecase_Letter", TITLECASE_LETTER),
  ("Unassigned", UNASSIGNED), ("Uppercase_Letter", UPPERCASE_LETTER),
];

pub const CASED_LETTER: &'static [(char, char)] = &[
  ('A', 'Z'), ('a', 'z'), ('µ', 'µ'), ('À', 'Ö'), ('Ø', 'ö'),
  ('ø', 'ƺ'), ('Ƽ', 'ƿ'), ('DŽ', 'ʓ'), ('ʕ', 'ʯ'), ('Ͱ', 'ͳ'),
  ('Ͷ', 'ͷ'), ('ͻ', 'ͽ'), ('Ϳ', 'Ϳ'), ('Ά', 'Ά'), ('Έ', 'Ί'),
  ('Ό', 'Ό'), ('Ύ', 'Ρ'), ('Σ', 'ϵ'), ('Ϸ', 'ҁ'), ('Ҋ', 'ԯ'),
  ('Ա', 'Ֆ'), ('ա', 'և'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', 'ꮿ'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐐀', '𐑏'), ('𐒰', '𐓓'), ('𐓘', '𐓻'), ('𐲀', '𐲲'),
  ('𐳀', '𐳲'), ('𑢠', '𑣟'), ('𝐀', '𝑔'), ('𝑖', '𝒜'),
  ('𝒞', '𝒟'), ('𝒢', '𝒢'), ('𝒥', '𝒦'), ('𝒩', '𝒬'),
  ('𝒮', '𝒹'), ('𝒻', '𝒻'), ('𝒽', '𝓃'), ('𝓅', '𝔅'),
  ('𝔇', '𝔊'), ('𝔍', '𝔔'), ('𝔖', '𝔜'), ('𝔞', '𝔹'),
  ('𝔻', '𝔾'), ('𝕀', '𝕄'), ('𝕆', '𝕆'), ('𝕊', '𝕐'),
  ('𝕒', '𝚥'), ('𝚨', '𝛀'), ('𝛂', '𝛚'), ('𝛜', '𝛺'),
  ('𝛼', '𝜔'), ('𝜖', '𝜴'), ('𝜶', '𝝎'), ('𝝐', '𝝮'),
  ('𝝰', '𝞈'), ('𝞊', '𝞨'), ('𝞪', '𝟂'), ('𝟄', '𝟋'),
  ('𞤀', '𞥃'),
];

pub const CLOSE_PUNCTUATION: &'static [(char, char)] = &[
  (')', ')'), (']', ']'), ('}', '}'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''),
];

pub const CONNECTOR_PUNCTUATION: &'static [(char, char)] = &[
  ('_', '_'), ('', ''), ('', ''), ('', ''), ('', ''),
  ('_', '_'),
];

pub const CONTROL: &'static [(char, char)] = &[
  ('\u{0}', '\u{1f}'), ('\u{7f}', '\u{9f}'),
];

pub const CURRENCY_SYMBOL: &'static [(char, char)] = &[
  ('$', '$'), ('¢', '¥'), ('֏', '֏'), ('؋', '؋'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('฿', '฿'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
];

pub const DASH_PUNCTUATION: &'static [(char, char)] = &[
  ('-', '-'), ('֊', '֊'), ('־', '־'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
];

pub const DECIMAL_NUMBER: &'static [(char, char)] = &[
  ('0', '9'), ('٠', '٩'), ('۰', '۹'), ('߀', '߉'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐒠', '𐒩'), ('𑁦', '𑁯'), ('𑃰', '𑃹'), ('𑄶', '𑄿'),
  ('𑇐', '𑇙'), ('𑋰', '𑋹'), ('𑑐', '𑑙'), ('𑓐', '𑓙'),
  ('𑙐', '𑙙'), ('𑛀', '𑛉'), ('𑜰', '𑜹'), ('𑣠', '𑣩'),
  ('𑱐', '𑱙'), ('𑵐', '𑵙'), ('𖩠', '𖩩'), ('𖭐', '𖭙'),
  ('𝟎', '𝟿'), ('𞥐', '𞥙'),
];

pub const ENCLOSING_MARK: &'static [(char, char)] = &[
  ('҈', '҉'), ('', ''), ('', ''), ('', ''),
  ('', ''),
];

pub const FINAL_PUNCTUATION: &'static [(char, char)] = &[
  ('»', '»'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''),
];

pub const FORMAT: &'static [(char, char)] = &[
  ('\u{ad}', '\u{ad}'), ('\u{600}', '\u{605}'), ('\u{61c}', '\u{61c}'),
  ('\u{6dd}', '\u{6dd}'), ('\u{70f}', '\u{70f}'), ('\u{8e2}', '\u{8e2}'),
  ('\u{180e}', '\u{180e}'), ('\u{200b}', '\u{200f}'),
  ('\u{202a}', '\u{202e}'), ('\u{2060}', '\u{2064}'),
  ('\u{2066}', '\u{206f}'), ('\u{feff}', '\u{feff}'),
  ('\u{fff9}', '\u{fffb}'), ('\u{110bd}', '\u{110bd}'),
  ('\u{1bca0}', '\u{1bca3}'), ('\u{1d173}', '\u{1d17a}'),
  ('\u{e0001}', '\u{e0001}'), ('\u{e0020}', '\u{e007f}'),
];

pub const INITIAL_PUNCTUATION: &'static [(char, char)] = &[
  ('«', '«'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''),
];

pub const LETTER: &'static [(char, char)] = &[
  ('A', 'Z'), ('a', 'z'), ('ª', 'ª'), ('µ', 'µ'), ('º', 'º'),
  ('À', 'Ö'), ('Ø', 'ö'), ('ø', 'ˁ'), ('ˆ', 'ˑ'), ('ˠ', 'ˤ'),
  ('ˬ', 'ˬ'), ('ˮ', 'ˮ'), ('Ͱ', 'ʹ'), ('Ͷ', 'ͷ'), ('ͺ', 'ͽ'),
  ('Ϳ', 'Ϳ'), ('Ά', 'Ά'), ('Έ', 'Ί'), ('Ό', 'Ό'), ('Ύ', 'Ρ'),
  ('Σ', 'ϵ'), ('Ϸ', 'ҁ'), ('Ҋ', 'ԯ'), ('Ա', 'Ֆ'), ('ՙ', 'ՙ'),
  ('ա', 'և'), ('א', 'ת'), ('װ', 'ײ'), ('ؠ', 'ي'), ('ٮ', 'ٯ'),
  ('ٱ', 'ۓ'), ('ە', 'ە'), ('ۥ', 'ۦ'), ('ۮ', 'ۯ'), ('ۺ', 'ۼ'),
  ('ۿ', 'ۿ'), ('ܐ', 'ܐ'), ('ܒ', 'ܯ'), ('ݍ', 'ޥ'), ('ޱ', 'ޱ'),
  ('ߊ', 'ߪ'), ('ߴ', 'ߵ'), ('ߺ', 'ߺ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', 'ൿ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('က', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', 'ᶿ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('ꀀ', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('𐀀', '𐀋'), ('𐀍', '𐀦'),
  ('𐀨', '𐀺'), ('𐀼', '𐀽'), ('𐀿', '𐁍'), ('𐁐', '𐁝'),
  ('𐂀', '𐃺'), ('𐊀', '𐊜'), ('𐊠', '𐋐'), ('𐌀', '𐌟'),
  ('𐌭', '𐍀'), ('𐍂', '𐍉'), ('𐍐', '𐍵'), ('𐎀', '𐎝'),
  ('𐎠', '𐏃'), ('𐏈', '𐏏'), ('𐐀', '𐒝'), ('𐒰', '𐓓'),
  ('𐓘', '𐓻'), ('𐔀', '𐔧'), ('𐔰', '𐕣'), ('𐘀', '𐜶'),
  ('𐝀', '𐝕'), ('𐝠', '𐝧'), ('𐠀', '𐠅'), ('𐠈', '𐠈'),
  ('𐠊', '𐠵'), ('𐠷', '𐠸'), ('𐠼', '𐠼'), ('𐠿', '𐡕'),
  ('𐡠', '𐡶'), ('𐢀', '𐢞'), ('𐣠', '𐣲'), ('𐣴', '𐣵'),
  ('𐤀', '𐤕'), ('𐤠', '𐤹'), ('𐦀', '𐦷'), ('𐦾', '𐦿'),
  ('𐨀', '𐨀'), ('𐨐', '𐨓'), ('𐨕', '𐨗'), ('𐨙', '𐨳'),
  ('𐩠', '𐩼'), ('𐪀', '𐪜'), ('𐫀', '𐫇'), ('𐫉', '𐫤'),
  ('𐬀', '𐬵'), ('𐭀', '𐭕'), ('𐭠', '𐭲'), ('𐮀', '𐮑'),
  ('𐰀', '𐱈'), ('𐲀', '𐲲'), ('𐳀', '𐳲'), ('𑀃', '𑀷'),
  ('𑂃', '𑂯'), ('𑃐', '𑃨'), ('𑄃', '𑄦'), ('𑅐', '𑅲'),
  ('𑅶', '𑅶'), ('𑆃', '𑆲'), ('𑇁', '𑇄'), ('𑇚', '𑇚'),
  ('𑇜', '𑇜'), ('𑈀', '𑈑'), ('𑈓', '𑈫'), ('𑊀', '𑊆'),
  ('𑊈', '𑊈'), ('𑊊', '𑊍'), ('𑊏', '𑊝'), ('𑊟', '𑊨'),
  ('𑊰', '𑋞'), ('𑌅', '𑌌'), ('𑌏', '𑌐'), ('𑌓', '𑌨'),
  ('𑌪', '𑌰'), ('𑌲', '𑌳'), ('𑌵', '𑌹'), ('𑌽', '𑌽'),
  ('𑍐', '𑍐'), ('𑍝', '𑍡'), ('𑐀', '𑐴'), ('𑑇', '𑑊'),
  ('𑒀', '𑒯'), ('𑓄', '𑓅'), ('𑓇', '𑓇'), ('𑖀', '𑖮'),
  ('𑗘', '𑗛'), ('𑘀', '𑘯'), ('𑙄', '𑙄'), ('𑚀', '𑚪'),
  ('𑜀', '𑜙'), ('𑢠', '𑣟'), ('𑣿', '𑣿'), ('𑨀', '𑨀'),
  ('𑨋', '𑨲'), ('𑨺', '𑨺'), ('𑩐', '𑩐'), ('𑩜', '𑪃'),
  ('𑪆', '𑪉'), ('𑫀', '𑫸'), ('𑰀', '𑰈'), ('𑰊', '𑰮'),
  ('𑱀', '𑱀'), ('𑱲', '𑲏'), ('𑴀', '𑴆'), ('𑴈', '𑴉'),
  ('𑴋', '𑴰'), ('𑵆', '𑵆'), ('𒀀', '𒎙'), ('𒒀', '𒕃'),
  ('𓀀', '𓐮'), ('𔐀', '𔙆'), ('𖠀', '𖨸'), ('𖩀', '𖩞'),
  ('𖫐', '𖫭'), ('𖬀', '𖬯'), ('𖭀', '𖭃'), ('𖭣', '𖭷'),
  ('𖭽', '𖮏'), ('𖼀', '𖽄'), ('𖽐', '𖽐'), ('𖾓', '𖾟'),
  ('𖿠', '𖿡'), ('𗀀', '𘟬'), ('𘠀', '𘫲'), ('𛀀', '𛄞'),
  ('𛅰', '𛋻'), ('𛰀', '𛱪'), ('𛱰', '𛱼'), ('𛲀', '𛲈'),
  ('𛲐', '𛲙'), ('𝐀', '𝑔'), ('𝑖', '𝒜'), ('𝒞', '𝒟'),
  ('𝒢', '𝒢'), ('𝒥', '𝒦'), ('𝒩', '𝒬'), ('𝒮', '𝒹'),
  ('𝒻', '𝒻'), ('𝒽', '𝓃'), ('𝓅', '𝔅'), ('𝔇', '𝔊'),
  ('𝔍', '𝔔'), ('𝔖', '𝔜'), ('𝔞', '𝔹'), ('𝔻', '𝔾'),
  ('𝕀', '𝕄'), ('𝕆', '𝕆'), ('𝕊', '𝕐'), ('𝕒', '𝚥'),
  ('𝚨', '𝛀'), ('𝛂', '𝛚'), ('𝛜', '𝛺'), ('𝛼', '𝜔'),
  ('𝜖', '𝜴'), ('𝜶', '𝝎'), ('𝝐', '𝝮'), ('𝝰', '𝞈'),
  ('𝞊', '𝞨'), ('𝞪', '𝟂'), ('𝟄', '𝟋'), ('𞠀', '𞣄'),
  ('𞤀', '𞥃'), ('𞸀', '𞸃'), ('𞸅', '𞸟'), ('𞸡', '𞸢'),
  ('𞸤', '𞸤'), ('𞸧', '𞸧'), ('𞸩', '𞸲'), ('𞸴', '𞸷'),
  ('𞸹', '𞸹'), ('𞸻', '𞸻'), ('𞹂', '𞹂'), ('𞹇', '𞹇'),
  ('𞹉', '𞹉'), ('𞹋', '𞹋'), ('𞹍', '𞹏'), ('𞹑', '𞹒'),
  ('𞹔', '𞹔'), ('𞹗', '𞹗'), ('𞹙', '𞹙'), ('𞹛', '𞹛'),
  ('𞹝', '𞹝'), ('𞹟', '𞹟'), ('𞹡', '𞹢'), ('𞹤', '𞹤'),
  ('𞹧', '𞹪'), ('𞹬', '𞹲'), ('𞹴', '𞹷'), ('𞹹', '𞹼'),
  ('𞹾', '𞹾'), ('𞺀', '𞺉'), ('𞺋', '𞺛'), ('𞺡', '𞺣'),
  ('𞺥', '𞺩'), ('𞺫', '𞺻'), ('𠀀', '𪛖'), ('𪜀', '𫜴'),
  ('𫝀', '𫠝'), ('𫠠', '𬺡'), ('𬺰', '𮯠'), ('丽', '𪘀'),
];

pub const LETTER_NUMBER: &'static [(char, char)] = &[
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('𐅀', '𐅴'),
  ('𐍁', '𐍁'), ('𐍊', '𐍊'), ('𐏑', '𐏕'), ('𒐀', '𒑮'),
];

pub const LINE_SEPARATOR: &'static [(char, char)] = &[
  ('\u{2028}', '\u{2028}'),
];

pub const LOWERCASE_LETTER: &'static [(char, char)] = &[
  ('a', 'z'), ('µ', 'µ'), ('ß', 'ö'), ('ø', 'ÿ'), ('ā', 'ā'),
  ('ă', 'ă'), ('ą', 'ą'), ('ć', 'ć'), ('ĉ', 'ĉ'), ('ċ', 'ċ'),
  ('č', 'č'), ('ď', 'ď'), ('đ', 'đ'), ('ē', 'ē'), ('ĕ', 'ĕ'),
  ('ė', 'ė'), ('ę', 'ę'), ('ě', 'ě'), ('ĝ', 'ĝ'), ('ğ', 'ğ'),
  ('ġ', 'ġ'), ('ģ', 'ģ'), ('ĥ', 'ĥ'), ('ħ', 'ħ'), ('ĩ', 'ĩ'),
  ('ī', 'ī'), ('ĭ', 'ĭ'), ('į', 'į'), ('ı', 'ı'), ('ij', 'ij'),
  ('ĵ', 'ĵ'), ('ķ', 'ĸ'), ('ĺ', 'ĺ'), ('ļ', 'ļ'), ('ľ', 'ľ'),
  ('ŀ', 'ŀ'), ('ł', 'ł'), ('ń', 'ń'), ('ņ', 'ņ'), ('ň', 'ʼn'),
  ('ŋ', 'ŋ'), ('ō', 'ō'), ('ŏ', 'ŏ'), ('ő', 'ő'), ('œ', 'œ'),
  ('ŕ', 'ŕ'), ('ŗ', 'ŗ'), ('ř', 'ř'), ('ś', 'ś'), ('ŝ', 'ŝ'),
  ('ş', 'ş'), ('š', 'š'), ('ţ', 'ţ'), ('ť', 'ť'), ('ŧ', 'ŧ'),
  ('ũ', 'ũ'), ('ū', 'ū'), ('ŭ', 'ŭ'), ('ů', 'ů'), ('ű', 'ű'),
  ('ų', 'ų'), ('ŵ', 'ŵ'), ('ŷ', 'ŷ'), ('ź', 'ź'), ('ż', 'ż'),
  ('ž', 'ƀ'), ('ƃ', 'ƃ'), ('ƅ', 'ƅ'), ('ƈ', 'ƈ'), ('ƌ', 'ƍ'),
  ('ƒ', 'ƒ'), ('ƕ', 'ƕ'), ('ƙ', 'ƛ'), ('ƞ', 'ƞ'), ('ơ', 'ơ'),
  ('ƣ', 'ƣ'), ('ƥ', 'ƥ'), ('ƨ', 'ƨ'), ('ƪ', 'ƫ'), ('ƭ', 'ƭ'),
  ('ư', 'ư'), ('ƴ', 'ƴ'), ('ƶ', 'ƶ'), ('ƹ', 'ƺ'), ('ƽ', 'ƿ'),
  ('dž', 'dž'), ('lj', 'lj'), ('nj', 'nj'), ('ǎ', 'ǎ'), ('ǐ', 'ǐ'),
  ('ǒ', 'ǒ'), ('ǔ', 'ǔ'), ('ǖ', 'ǖ'), ('ǘ', 'ǘ'), ('ǚ', 'ǚ'),
  ('ǜ', 'ǝ'), ('ǟ', 'ǟ'), ('ǡ', 'ǡ'), ('ǣ', 'ǣ'), ('ǥ', 'ǥ'),
  ('ǧ', 'ǧ'), ('ǩ', 'ǩ'), ('ǫ', 'ǫ'), ('ǭ', 'ǭ'), ('ǯ', 'ǰ'),
  ('dz', 'dz'), ('ǵ', 'ǵ'), ('ǹ', 'ǹ'), ('ǻ', 'ǻ'), ('ǽ', 'ǽ'),
  ('ǿ', 'ǿ'), ('ȁ', 'ȁ'), ('ȃ', 'ȃ'), ('ȅ', 'ȅ'), ('ȇ', 'ȇ'),
  ('ȉ', 'ȉ'), ('ȋ', 'ȋ'), ('ȍ', 'ȍ'), ('ȏ', 'ȏ'), ('ȑ', 'ȑ'),
  ('ȓ', 'ȓ'), ('ȕ', 'ȕ'), ('ȗ', 'ȗ'), ('ș', 'ș'), ('ț', 'ț'),
  ('ȝ', 'ȝ'), ('ȟ', 'ȟ'), ('ȡ', 'ȡ'), ('ȣ', 'ȣ'), ('ȥ', 'ȥ'),
  ('ȧ', 'ȧ'), ('ȩ', 'ȩ'), ('ȫ', 'ȫ'), ('ȭ', 'ȭ'), ('ȯ', 'ȯ'),
  ('ȱ', 'ȱ'), ('ȳ', 'ȹ'), ('ȼ', 'ȼ'), ('ȿ', 'ɀ'), ('ɂ', 'ɂ'),
  ('ɇ', 'ɇ'), ('ɉ', 'ɉ'), ('ɋ', 'ɋ'), ('ɍ', 'ɍ'), ('ɏ', 'ʓ'),
  ('ʕ', 'ʯ'), ('ͱ', 'ͱ'), ('ͳ', 'ͳ'), ('ͷ', 'ͷ'), ('ͻ', 'ͽ'),
  ('ΐ', 'ΐ'), ('ά', 'ώ'), ('ϐ', 'ϑ'), ('ϕ', 'ϗ'), ('ϙ', 'ϙ'),
  ('ϛ', 'ϛ'), ('ϝ', 'ϝ'), ('ϟ', 'ϟ'), ('ϡ', 'ϡ'), ('ϣ', 'ϣ'),
  ('ϥ', 'ϥ'), ('ϧ', 'ϧ'), ('ϩ', 'ϩ'), ('ϫ', 'ϫ'), ('ϭ', 'ϭ'),
  ('ϯ', 'ϳ'), ('ϵ', 'ϵ'), ('ϸ', 'ϸ'), ('ϻ', 'ϼ'), ('а', 'џ'),
  ('ѡ', 'ѡ'), ('ѣ', 'ѣ'), ('ѥ', 'ѥ'), ('ѧ', 'ѧ'), ('ѩ', 'ѩ'),
  ('ѫ', 'ѫ'), ('ѭ', 'ѭ'), ('ѯ', 'ѯ'), ('ѱ', 'ѱ'), ('ѳ', 'ѳ'),
  ('ѵ', 'ѵ'), ('ѷ', 'ѷ'), ('ѹ', 'ѹ'), ('ѻ', 'ѻ'), ('ѽ', 'ѽ'),
  ('ѿ', 'ѿ'), ('ҁ', 'ҁ'), ('ҋ', 'ҋ'), ('ҍ', 'ҍ'), ('ҏ', 'ҏ'),
  ('ґ', 'ґ'), ('ғ', 'ғ'), ('ҕ', 'ҕ'), ('җ', 'җ'), ('ҙ', 'ҙ'),
  ('қ', 'қ'), ('ҝ', 'ҝ'), ('ҟ', 'ҟ'), ('ҡ', 'ҡ'), ('ң', 'ң'),
  ('ҥ', 'ҥ'), ('ҧ', 'ҧ'), ('ҩ', 'ҩ'), ('ҫ', 'ҫ'), ('ҭ', 'ҭ'),
  ('ү', 'ү'), ('ұ', 'ұ'), ('ҳ', 'ҳ'), ('ҵ', 'ҵ'), ('ҷ', 'ҷ'),
  ('ҹ', 'ҹ'), ('һ', 'һ'), ('ҽ', 'ҽ'), ('ҿ', 'ҿ'), ('ӂ', 'ӂ'),
  ('ӄ', 'ӄ'), ('ӆ', 'ӆ'), ('ӈ', 'ӈ'), ('ӊ', 'ӊ'), ('ӌ', 'ӌ'),
  ('ӎ', 'ӏ'), ('ӑ', 'ӑ'), ('ӓ', 'ӓ'), ('ӕ', 'ӕ'), ('ӗ', 'ӗ'),
  ('ә', 'ә'), ('ӛ', 'ӛ'), ('ӝ', 'ӝ'), ('ӟ', 'ӟ'), ('ӡ', 'ӡ'),
  ('ӣ', 'ӣ'), ('ӥ', 'ӥ'), ('ӧ', 'ӧ'), ('ө', 'ө'), ('ӫ', 'ӫ'),
  ('ӭ', 'ӭ'), ('ӯ', 'ӯ'), ('ӱ', 'ӱ'), ('ӳ', 'ӳ'), ('ӵ', 'ӵ'),
  ('ӷ', 'ӷ'), ('ӹ', 'ӹ'), ('ӻ', 'ӻ'), ('ӽ', 'ӽ'), ('ӿ', 'ӿ'),
  ('ԁ', 'ԁ'), ('ԃ', 'ԃ'), ('ԅ', 'ԅ'), ('ԇ', 'ԇ'), ('ԉ', 'ԉ'),
  ('ԋ', 'ԋ'), ('ԍ', 'ԍ'), ('ԏ', 'ԏ'), ('ԑ', 'ԑ'), ('ԓ', 'ԓ'),
  ('ԕ', 'ԕ'), ('ԗ', 'ԗ'), ('ԙ', 'ԙ'), ('ԛ', 'ԛ'), ('ԝ', 'ԝ'),
  ('ԟ', 'ԟ'), ('ԡ', 'ԡ'), ('ԣ', 'ԣ'), ('ԥ', 'ԥ'), ('ԧ', 'ԧ'),
  ('ԩ', 'ԩ'), ('ԫ', 'ԫ'), ('ԭ', 'ԭ'), ('ԯ', 'ԯ'), ('ա', 'և'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('ḿ', 'ḿ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('ṿ', 'ṿ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('ế', 'ế'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('ỿ', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('ⲿ', 'ⲿ'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', 'ꮿ'), ('', ''),
  ('', ''), ('', ''), ('𐐨', '𐑏'), ('𐓘', '𐓻'),
  ('𐳀', '𐳲'), ('𑣀', '𑣟'), ('𝐚', '𝐳'), ('𝑎', '𝑔'),
  ('𝑖', '𝑧'), ('𝒂', '𝒛'), ('𝒶', '𝒹'), ('𝒻', '𝒻'),
  ('𝒽', '𝓃'), ('𝓅', '𝓏'), ('𝓪', '𝔃'), ('𝔞', '𝔷'),
  ('𝕒', '𝕫'), ('𝖆', '𝖟'), ('𝖺', '𝗓'), ('𝗮', '𝘇'),
  ('𝘢', '𝘻'), ('𝙖', '𝙯'), ('𝚊', '𝚥'), ('𝛂', '𝛚'),
  ('𝛜', '𝛡'), ('𝛼', '𝜔'), ('𝜖', '𝜛'), ('𝜶', '𝝎'),
  ('𝝐', '𝝕'), ('𝝰', '𝞈'), ('𝞊', '𝞏'), ('𝞪', '𝟂'),
  ('𝟄', '𝟉'), ('𝟋', '𝟋'), ('𞤢', '𞥃'),
];

pub const MARK: &'static [(char, char)] = &[
  ('̀', 'ͯ'), ('҃', '҉'), ('֑', 'ֽ'), ('ֿ', 'ֿ'), ('ׁ', 'ׂ'),
  ('ׄ', 'ׅ'), ('ׇ', 'ׇ'), ('ؐ', 'ؚ'), ('ً', 'ٟ'), ('ٰ', 'ٰ'),
  ('ۖ', 'ۜ'), ('۟', 'ۤ'), ('ۧ', 'ۨ'), ('۪', 'ۭ'), ('ܑ', 'ܑ'),
  ('ܰ', '݊'), ('ަ', 'ް'), ('߫', '߳'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '૿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '༿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('᩿', '᩿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', '᷿'), ('', ''), ('', ''),
  ('⵿', '⵿'), ('', 'ⷿ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', '꪿'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐇽', '𐇽'), ('𐋠', '𐋠'), ('𐍶', '𐍺'), ('𐨁', '𐨃'),
  ('𐨅', '𐨆'), ('𐨌', '𐨏'), ('𐨸', '𐨺'), ('𐨿', '𐨿'),
  ('𐫥', '𐫦'), ('𑀀', '𑀂'), ('𑀸', '𑁆'), ('𑁿', '𑂂'),
  ('𑂰', '𑂺'), ('𑄀', '𑄂'), ('𑄧', '𑄴'), ('𑅳', '𑅳'),
  ('𑆀', '𑆂'), ('𑆳', '𑇀'), ('𑇊', '𑇌'), ('𑈬', '𑈷'),
  ('𑈾', '𑈾'), ('𑋟', '𑋪'), ('𑌀', '𑌃'), ('𑌼', '𑌼'),
  ('𑌾', '𑍄'), ('𑍇', '𑍈'), ('𑍋', '𑍍'), ('𑍗', '𑍗'),
  ('𑍢', '𑍣'), ('𑍦', '𑍬'), ('𑍰', '𑍴'), ('𑐵', '𑑆'),
  ('𑒰', '𑓃'), ('𑖯', '𑖵'), ('𑖸', '𑗀'), ('𑗜', '𑗝'),
  ('𑘰', '𑙀'), ('𑚫', '𑚷'), ('𑜝', '𑜫'), ('𑨁', '𑨊'),
  ('𑨳', '𑨹'), ('𑨻', '𑨾'), ('𑩇', '𑩇'), ('𑩑', '𑩛'),
  ('𑪊', '𑪙'), ('𑰯', '𑰶'), ('𑰸', '𑰿'), ('𑲒', '𑲧'),
  ('𑲩', '𑲶'), ('𑴱', '𑴶'), ('𑴺', '𑴺'), ('𑴼', '𑴽'),
  ('𑴿', '𑵅'), ('𑵇', '𑵇'), ('𖫰', '𖫴'), ('𖬰', '𖬶'),
  ('𖽑', '𖽾'), ('𖾏', '𖾒'), ('𛲝', '𛲞'), ('𝅥', '𝅩'),
  ('𝅭', '𝅲'), ('𝅻', '𝆂'), ('𝆅', '𝆋'), ('𝆪', '𝆭'),
  ('𝉂', '𝉄'), ('𝨀', '𝨶'), ('𝨻', '𝩬'), ('𝩵', '𝩵'),
  ('𝪄', '𝪄'), ('𝪛', '𝪟'), ('𝪡', '𝪯'), ('𞀀', '𞀆'),
  ('𞀈', '𞀘'), ('𞀛', '𞀡'), ('𞀣', '𞀤'), ('𞀦', '𞀪'),
  ('𞣐', '𞣖'), ('𞥄', '𞥊'), ('󠄀', '󠇯'),
];

pub const MATH_SYMBOL: &'static [(char, char)] = &[
  ('+', '+'), ('<', '>'), ('|', '|'), ('~', '~'), ('¬', '¬'), ('±', '±'),
  ('×', '×'), ('÷', '÷'), ('϶', '϶'), ('؆', '؈'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '⫿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('𝛁', '𝛁'), ('𝛛', '𝛛'),
  ('𝛻', '𝛻'), ('𝜕', '𝜕'), ('𝜵', '𝜵'), ('𝝏', '𝝏'),
  ('𝝯', '𝝯'), ('𝞉', '𝞉'), ('𝞩', '𝞩'), ('𝟃', '𝟃'),
  ('𞻰', '𞻱'),
];

pub const MODIFIER_LETTER: &'static [(char, char)] = &[
  ('ʰ', 'ˁ'), ('ˆ', 'ˑ'), ('ˠ', 'ˤ'), ('ˬ', 'ˬ'), ('ˮ', 'ˮ'),
  ('ʹ', 'ʹ'), ('ͺ', 'ͺ'), ('ՙ', 'ՙ'), ('ـ', 'ـ'), ('ۥ', 'ۦ'),
  ('ߴ', 'ߵ'), ('ߺ', 'ߺ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', 'ᶿ'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('𖭀', '𖭃'),
  ('𖾓', '𖾟'), ('𖿠', '𖿡'),
];

pub const MODIFIER_SYMBOL: &'static [(char, char)] = &[
  ('^', '^'), ('`', '`'), ('¨', '¨'), ('¯', '¯'), ('´', '´'),
  ('¸', '¸'), ('˂', '˅'), ('˒', '˟'), ('˥', '˫'), ('˭', '˭'),
  ('˯', '˿'), ('͵', '͵'), ('΄', '΅'), ('', ''), ('᾿', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('🏻', '🏿'),
];

pub const NONSPACING_MARK: &'static [(char, char)] = &[
  ('̀', 'ͯ'), ('҃', '҇'), ('֑', 'ֽ'), ('ֿ', 'ֿ'), ('ׁ', 'ׂ'),
  ('ׄ', 'ׅ'), ('ׇ', 'ׇ'), ('ؐ', 'ؚ'), ('ً', 'ٟ'), ('ٰ', 'ٰ'),
  ('ۖ', 'ۜ'), ('۟', 'ۤ'), ('ۧ', 'ۨ'), ('۪', 'ۭ'), ('ܑ', 'ܑ'),
  ('ܰ', '݊'), ('ަ', 'ް'), ('߫', '߳'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '૿'), ('', ''),
  ('', ''), ('ି', 'ି'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('ಿ', 'ಿ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('᩿', '᩿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', '᷿'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('⵿', '⵿'), ('', 'ⷿ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '꪿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐇽', '𐇽'), ('𐋠', '𐋠'), ('𐍶', '𐍺'), ('𐨁', '𐨃'),
  ('𐨅', '𐨆'), ('𐨌', '𐨏'), ('𐨸', '𐨺'), ('𐨿', '𐨿'),
  ('𐫥', '𐫦'), ('𑀁', '𑀁'), ('𑀸', '𑁆'), ('𑁿', '𑂁'),
  ('𑂳', '𑂶'), ('𑂹', '𑂺'), ('𑄀', '𑄂'), ('𑄧', '𑄫'),
  ('𑄭', '𑄴'), ('𑅳', '𑅳'), ('𑆀', '𑆁'), ('𑆶', '𑆾'),
  ('𑇊', '𑇌'), ('𑈯', '𑈱'), ('𑈴', '𑈴'), ('𑈶', '𑈷'),
  ('𑈾', '𑈾'), ('𑋟', '𑋟'), ('𑋣', '𑋪'), ('𑌀', '𑌁'),
  ('𑌼', '𑌼'), ('𑍀', '𑍀'), ('𑍦', '𑍬'), ('𑍰', '𑍴'),
  ('𑐸', '𑐿'), ('𑑂', '𑑄'), ('𑑆', '𑑆'), ('𑒳', '𑒸'),
  ('𑒺', '𑒺'), ('𑒿', '𑓀'), ('𑓂', '𑓃'), ('𑖲', '𑖵'),
  ('𑖼', '𑖽'), ('𑖿', '𑗀'), ('𑗜', '𑗝'), ('𑘳', '𑘺'),
  ('𑘽', '𑘽'), ('𑘿', '𑙀'), ('𑚫', '𑚫'), ('𑚭', '𑚭'),
  ('𑚰', '𑚵'), ('𑚷', '𑚷'), ('𑜝', '𑜟'), ('𑜢', '𑜥'),
  ('𑜧', '𑜫'), ('𑨁', '𑨆'), ('𑨉', '𑨊'), ('𑨳', '𑨸'),
  ('𑨻', '𑨾'), ('𑩇', '𑩇'), ('𑩑', '𑩖'), ('𑩙', '𑩛'),
  ('𑪊', '𑪖'), ('𑪘', '𑪙'), ('𑰰', '𑰶'), ('𑰸', '𑰽'),
  ('𑰿', '𑰿'), ('𑲒', '𑲧'), ('𑲪', '𑲰'), ('𑲲', '𑲳'),
  ('𑲵', '𑲶'), ('𑴱', '𑴶'), ('𑴺', '𑴺'), ('𑴼', '𑴽'),
  ('𑴿', '𑵅'), ('𑵇', '𑵇'), ('𖫰', '𖫴'), ('𖬰', '𖬶'),
  ('𖾏', '𖾒'), ('𛲝', '𛲞'), ('𝅧', '𝅩'), ('𝅻', '𝆂'),
  ('𝆅', '𝆋'), ('𝆪', '𝆭'), ('𝉂', '𝉄'), ('𝨀', '𝨶'),
  ('𝨻', '𝩬'), ('𝩵', '𝩵'), ('𝪄', '𝪄'), ('𝪛', '𝪟'),
  ('𝪡', '𝪯'), ('𞀀', '𞀆'), ('𞀈', '𞀘'), ('𞀛', '𞀡'),
  ('𞀣', '𞀤'), ('𞀦', '𞀪'), ('𞣐', '𞣖'), ('𞥄', '𞥊'),
  ('󠄀', '󠇯'),
];

pub const NUMBER: &'static [(char, char)] = &[
  ('0', '9'), ('²', '³'), ('¹', '¹'), ('¼', '¾'), ('٠', '٩'),
  ('۰', '۹'), ('߀', '߉'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('𐄇', '𐄳'), ('𐅀', '𐅸'), ('𐆊', '𐆋'),
  ('𐋡', '𐋻'), ('𐌠', '𐌣'), ('𐍁', '𐍁'), ('𐍊', '𐍊'),
  ('𐏑', '𐏕'), ('𐒠', '𐒩'), ('𐡘', '𐡟'), ('𐡹', '𐡿'),
  ('𐢧', '𐢯'), ('𐣻', '𐣿'), ('𐤖', '𐤛'), ('𐦼', '𐦽'),
  ('𐧀', '𐧏'), ('𐧒', '𐧿'), ('𐩀', '𐩇'), ('𐩽', '𐩾'),
  ('𐪝', '𐪟'), ('𐫫', '𐫯'), ('𐭘', '𐭟'), ('𐭸', '𐭿'),
  ('𐮩', '𐮯'), ('𐳺', '𐳿'), ('𐹠', '𐹾'), ('𑁒', '𑁯'),
  ('𑃰', '𑃹'), ('𑄶', '𑄿'), ('𑇐', '𑇙'), ('𑇡', '𑇴'),
  ('𑋰', '𑋹'), ('𑑐', '𑑙'), ('𑓐', '𑓙'), ('𑙐', '𑙙'),
  ('𑛀', '𑛉'), ('𑜰', '𑜻'), ('𑣠', '𑣲'), ('𑱐', '𑱬'),
  ('𑵐', '𑵙'), ('𒐀', '𒑮'), ('𖩠', '𖩩'), ('𖭐', '𖭙'),
  ('𖭛', '𖭡'), ('𝍠', '𝍱'), ('𝟎', '𝟿'), ('𞣇', '𞣏'),
  ('𞥐', '𞥙'), ('🄀', '🄌'),
];

pub const OPEN_PUNCTUATION: &'static [(char, char)] = &[
  ('(', '('), ('[', '['), ('{', '{'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('﴿', '﴿'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('︿', '︿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''),
];

pub const OTHER: &'static [(char, char)] = &[
  ('\u{0}', '\u{1f}'), ('\u{7f}', '\u{9f}'), ('\u{ad}', '\u{ad}'),
  ('\u{378}', '\u{379}'), ('\u{380}', '\u{383}'), ('\u{38b}', '\u{38b}'),
  ('\u{38d}', '\u{38d}'), ('\u{3a2}', '\u{3a2}'), ('\u{530}', '\u{530}'),
  ('\u{557}', '\u{558}'), ('\u{560}', '\u{560}'), ('\u{588}', '\u{588}'),
  ('\u{58b}', '\u{58c}'), ('\u{590}', '\u{590}'), ('\u{5c8}', '\u{5cf}'),
  ('\u{5eb}', '\u{5ef}'), ('\u{5f5}', '\u{605}'), ('\u{61c}', '\u{61d}'),
  ('\u{6dd}', '\u{6dd}'), ('\u{70e}', '\u{70f}'), ('\u{74b}', '\u{74c}'),
  ('\u{7b2}', '\u{7bf}'), ('\u{7fb}', '\u{7ff}'), ('\u{82e}', '\u{82f}'),
  ('\u{83f}', '\u{83f}'), ('\u{85c}', '\u{85d}'), ('\u{85f}', '\u{85f}'),
  ('\u{86b}', '\u{89f}'), ('\u{8b5}', '\u{8b5}'), ('\u{8be}', '\u{8d3}'),
  ('\u{8e2}', '\u{8e2}'), ('\u{984}', '\u{984}'), ('\u{98d}', '\u{98e}'),
  ('\u{991}', '\u{992}'), ('\u{9a9}', '\u{9a9}'), ('\u{9b1}', '\u{9b1}'),
  ('\u{9b3}', '\u{9b5}'), ('\u{9ba}', '\u{9bb}'), ('\u{9c5}', '\u{9c6}'),
  ('\u{9c9}', '\u{9ca}'), ('\u{9cf}', '\u{9d6}'), ('\u{9d8}', '\u{9db}'),
  ('\u{9de}', '\u{9de}'), ('\u{9e4}', '\u{9e5}'), ('\u{9fe}', '\u{a00}'),
  ('\u{a04}', '\u{a04}'), ('\u{a0b}', '\u{a0e}'), ('\u{a11}', '\u{a12}'),
  ('\u{a29}', '\u{a29}'), ('\u{a31}', '\u{a31}'), ('\u{a34}', '\u{a34}'),
  ('\u{a37}', '\u{a37}'), ('\u{a3a}', '\u{a3b}'), ('\u{a3d}', '\u{a3d}'),
  ('\u{a43}', '\u{a46}'), ('\u{a49}', '\u{a4a}'), ('\u{a4e}', '\u{a50}'),
  ('\u{a52}', '\u{a58}'), ('\u{a5d}', '\u{a5d}'), ('\u{a5f}', '\u{a65}'),
  ('\u{a76}', '\u{a80}'), ('\u{a84}', '\u{a84}'), ('\u{a8e}', '\u{a8e}'),
  ('\u{a92}', '\u{a92}'), ('\u{aa9}', '\u{aa9}'), ('\u{ab1}', '\u{ab1}'),
  ('\u{ab4}', '\u{ab4}'), ('\u{aba}', '\u{abb}'), ('\u{ac6}', '\u{ac6}'),
  ('\u{aca}', '\u{aca}'), ('\u{ace}', '\u{acf}'), ('\u{ad1}', '\u{adf}'),
  ('\u{ae4}', '\u{ae5}'), ('\u{af2}', '\u{af8}'), ('\u{b00}', '\u{b00}'),
  ('\u{b04}', '\u{b04}'), ('\u{b0d}', '\u{b0e}'), ('\u{b11}', '\u{b12}'),
  ('\u{b29}', '\u{b29}'), ('\u{b31}', '\u{b31}'), ('\u{b34}', '\u{b34}'),
  ('\u{b3a}', '\u{b3b}'), ('\u{b45}', '\u{b46}'), ('\u{b49}', '\u{b4a}'),
  ('\u{b4e}', '\u{b55}'), ('\u{b58}', '\u{b5b}'), ('\u{b5e}', '\u{b5e}'),
  ('\u{b64}', '\u{b65}'), ('\u{b78}', '\u{b81}'), ('\u{b84}', '\u{b84}'),
  ('\u{b8b}', '\u{b8d}'), ('\u{b91}', '\u{b91}'), ('\u{b96}', '\u{b98}'),
  ('\u{b9b}', '\u{b9b}'), ('\u{b9d}', '\u{b9d}'), ('\u{ba0}', '\u{ba2}'),
  ('\u{ba5}', '\u{ba7}'), ('\u{bab}', '\u{bad}'), ('\u{bba}', '\u{bbd}'),
  ('\u{bc3}', '\u{bc5}'), ('\u{bc9}', '\u{bc9}'), ('\u{bce}', '\u{bcf}'),
  ('\u{bd1}', '\u{bd6}'), ('\u{bd8}', '\u{be5}'), ('\u{bfb}', '\u{bff}'),
  ('\u{c04}', '\u{c04}'), ('\u{c0d}', '\u{c0d}'), ('\u{c11}', '\u{c11}'),
  ('\u{c29}', '\u{c29}'), ('\u{c3a}', '\u{c3c}'), ('\u{c45}', '\u{c45}'),
  ('\u{c49}', '\u{c49}'), ('\u{c4e}', '\u{c54}'), ('\u{c57}', '\u{c57}'),
  ('\u{c5b}', '\u{c5f}'), ('\u{c64}', '\u{c65}'), ('\u{c70}', '\u{c77}'),
  ('\u{c84}', '\u{c84}'), ('\u{c8d}', '\u{c8d}'), ('\u{c91}', '\u{c91}'),
  ('\u{ca9}', '\u{ca9}'), ('\u{cb4}', '\u{cb4}'), ('\u{cba}', '\u{cbb}'),
  ('\u{cc5}', '\u{cc5}'), ('\u{cc9}', '\u{cc9}'), ('\u{cce}', '\u{cd4}'),
  ('\u{cd7}', '\u{cdd}'), ('\u{cdf}', '\u{cdf}'), ('\u{ce4}', '\u{ce5}'),
  ('\u{cf0}', '\u{cf0}'), ('\u{cf3}', '\u{cff}'), ('\u{d04}', '\u{d04}'),
  ('\u{d0d}', '\u{d0d}'), ('\u{d11}', '\u{d11}'), ('\u{d45}', '\u{d45}'),
  ('\u{d49}', '\u{d49}'), ('\u{d50}', '\u{d53}'), ('\u{d64}', '\u{d65}'),
  ('\u{d80}', '\u{d81}'), ('\u{d84}', '\u{d84}'), ('\u{d97}', '\u{d99}'),
  ('\u{db2}', '\u{db2}'), ('\u{dbc}', '\u{dbc}'), ('\u{dbe}', '\u{dbf}'),
  ('\u{dc7}', '\u{dc9}'), ('\u{dcb}', '\u{dce}'), ('\u{dd5}', '\u{dd5}'),
  ('\u{dd7}', '\u{dd7}'), ('\u{de0}', '\u{de5}'), ('\u{df0}', '\u{df1}'),
  ('\u{df5}', '\u{e00}'), ('\u{e3b}', '\u{e3e}'), ('\u{e5c}', '\u{e80}'),
  ('\u{e83}', '\u{e83}'), ('\u{e85}', '\u{e86}'), ('\u{e89}', '\u{e89}'),
  ('\u{e8b}', '\u{e8c}'), ('\u{e8e}', '\u{e93}'), ('\u{e98}', '\u{e98}'),
  ('\u{ea0}', '\u{ea0}'), ('\u{ea4}', '\u{ea4}'), ('\u{ea6}', '\u{ea6}'),
  ('\u{ea8}', '\u{ea9}'), ('\u{eac}', '\u{eac}'), ('\u{eba}', '\u{eba}'),
  ('\u{ebe}', '\u{ebf}'), ('\u{ec5}', '\u{ec5}'), ('\u{ec7}', '\u{ec7}'),
  ('\u{ece}', '\u{ecf}'), ('\u{eda}', '\u{edb}'), ('\u{ee0}', '\u{eff}'),
  ('\u{f48}', '\u{f48}'), ('\u{f6d}', '\u{f70}'), ('\u{f98}', '\u{f98}'),
  ('\u{fbd}', '\u{fbd}'), ('\u{fcd}', '\u{fcd}'), ('\u{fdb}', '\u{fff}'),
  ('\u{10c6}', '\u{10c6}'), ('\u{10c8}', '\u{10cc}'),
  ('\u{10ce}', '\u{10cf}'), ('\u{1249}', '\u{1249}'),
  ('\u{124e}', '\u{124f}'), ('\u{1257}', '\u{1257}'),
  ('\u{1259}', '\u{1259}'), ('\u{125e}', '\u{125f}'),
  ('\u{1289}', '\u{1289}'), ('\u{128e}', '\u{128f}'),
  ('\u{12b1}', '\u{12b1}'), ('\u{12b6}', '\u{12b7}'),
  ('\u{12bf}', '\u{12bf}'), ('\u{12c1}', '\u{12c1}'),
  ('\u{12c6}', '\u{12c7}'), ('\u{12d7}', '\u{12d7}'),
  ('\u{1311}', '\u{1311}'), ('\u{1316}', '\u{1317}'),
  ('\u{135b}', '\u{135c}'), ('\u{137d}', '\u{137f}'),
  ('\u{139a}', '\u{139f}'), ('\u{13f6}', '\u{13f7}'),
  ('\u{13fe}', '\u{13ff}'), ('\u{169d}', '\u{169f}'),
  ('\u{16f9}', '\u{16ff}'), ('\u{170d}', '\u{170d}'),
  ('\u{1715}', '\u{171f}'), ('\u{1737}', '\u{173f}'),
  ('\u{1754}', '\u{175f}'), ('\u{176d}', '\u{176d}'),
  ('\u{1771}', '\u{1771}'), ('\u{1774}', '\u{177f}'),
  ('\u{17de}', '\u{17df}'), ('\u{17ea}', '\u{17ef}'),
  ('\u{17fa}', '\u{17ff}'), ('\u{180e}', '\u{180f}'),
  ('\u{181a}', '\u{181f}'), ('\u{1878}', '\u{187f}'),
  ('\u{18ab}', '\u{18af}'), ('\u{18f6}', '\u{18ff}'),
  ('\u{191f}', '\u{191f}'), ('\u{192c}', '\u{192f}'),
  ('\u{193c}', '\u{193f}'), ('\u{1941}', '\u{1943}'),
  ('\u{196e}', '\u{196f}'), ('\u{1975}', '\u{197f}'),
  ('\u{19ac}', '\u{19af}'), ('\u{19ca}', '\u{19cf}'),
  ('\u{19db}', '\u{19dd}'), ('\u{1a1c}', '\u{1a1d}'),
  ('\u{1a5f}', '\u{1a5f}'), ('\u{1a7d}', '\u{1a7e}'),
  ('\u{1a8a}', '\u{1a8f}'), ('\u{1a9a}', '\u{1a9f}'),
  ('\u{1aae}', '\u{1aaf}'), ('\u{1abf}', '\u{1aff}'),
  ('\u{1b4c}', '\u{1b4f}'), ('\u{1b7d}', '\u{1b7f}'),
  ('\u{1bf4}', '\u{1bfb}'), ('\u{1c38}', '\u{1c3a}'),
  ('\u{1c4a}', '\u{1c4c}'), ('\u{1c89}', '\u{1cbf}'),
  ('\u{1cc8}', '\u{1ccf}'), ('\u{1cfa}', '\u{1cff}'),
  ('\u{1dfa}', '\u{1dfa}'), ('\u{1f16}', '\u{1f17}'),
  ('\u{1f1e}', '\u{1f1f}'), ('\u{1f46}', '\u{1f47}'),
  ('\u{1f4e}', '\u{1f4f}'), ('\u{1f58}', '\u{1f58}'),
  ('\u{1f5a}', '\u{1f5a}'), ('\u{1f5c}', '\u{1f5c}'),
  ('\u{1f5e}', '\u{1f5e}'), ('\u{1f7e}', '\u{1f7f}'),
  ('\u{1fb5}', '\u{1fb5}'), ('\u{1fc5}', '\u{1fc5}'),
  ('\u{1fd4}', '\u{1fd5}'), ('\u{1fdc}', '\u{1fdc}'),
  ('\u{1ff0}', '\u{1ff1}'), ('\u{1ff5}', '\u{1ff5}'),
  ('\u{1fff}', '\u{1fff}'), ('\u{200b}', '\u{200f}'),
  ('\u{202a}', '\u{202e}'), ('\u{2060}', '\u{206f}'),
  ('\u{2072}', '\u{2073}'), ('\u{208f}', '\u{208f}'),
  ('\u{209d}', '\u{209f}'), ('\u{20c0}', '\u{20cf}'),
  ('\u{20f1}', '\u{20ff}'), ('\u{218c}', '\u{218f}'),
  ('\u{2427}', '\u{243f}'), ('\u{244b}', '\u{245f}'),
  ('\u{2b74}', '\u{2b75}'), ('\u{2b96}', '\u{2b97}'),
  ('\u{2bba}', '\u{2bbc}'), ('\u{2bc9}', '\u{2bc9}'),
  ('\u{2bd3}', '\u{2beb}'), ('\u{2bf0}', '\u{2bff}'),
  ('\u{2c2f}', '\u{2c2f}'), ('\u{2c5f}', '\u{2c5f}'),
  ('\u{2cf4}', '\u{2cf8}'), ('\u{2d26}', '\u{2d26}'),
  ('\u{2d28}', '\u{2d2c}'), ('\u{2d2e}', '\u{2d2f}'),
  ('\u{2d68}', '\u{2d6e}'), ('\u{2d71}', '\u{2d7e}'),
  ('\u{2d97}', '\u{2d9f}'), ('\u{2da7}', '\u{2da7}'),
  ('\u{2daf}', '\u{2daf}'), ('\u{2db7}', '\u{2db7}'),
  ('\u{2dbf}', '\u{2dbf}'), ('\u{2dc7}', '\u{2dc7}'),
  ('\u{2dcf}', '\u{2dcf}'), ('\u{2dd7}', '\u{2dd7}'),
  ('\u{2ddf}', '\u{2ddf}'), ('\u{2e4a}', '\u{2e7f}'),
  ('\u{2e9a}', '\u{2e9a}'), ('\u{2ef4}', '\u{2eff}'),
  ('\u{2fd6}', '\u{2fef}'), ('\u{2ffc}', '\u{2fff}'),
  ('\u{3040}', '\u{3040}'), ('\u{3097}', '\u{3098}'),
  ('\u{3100}', '\u{3104}'), ('\u{312f}', '\u{3130}'),
  ('\u{318f}', '\u{318f}'), ('\u{31bb}', '\u{31bf}'),
  ('\u{31e4}', '\u{31ef}'), ('\u{321f}', '\u{321f}'),
  ('\u{32ff}', '\u{32ff}'), ('\u{4db6}', '\u{4dbf}'),
  ('\u{9feb}', '\u{9fff}'), ('\u{a48d}', '\u{a48f}'),
  ('\u{a4c7}', '\u{a4cf}'), ('\u{a62c}', '\u{a63f}'),
  ('\u{a6f8}', '\u{a6ff}'), ('\u{a7af}', '\u{a7af}'),
  ('\u{a7b8}', '\u{a7f6}'), ('\u{a82c}', '\u{a82f}'),
  ('\u{a83a}', '\u{a83f}'), ('\u{a878}', '\u{a87f}'),
  ('\u{a8c6}', '\u{a8cd}'), ('\u{a8da}', '\u{a8df}'),
  ('\u{a8fe}', '\u{a8ff}'), ('\u{a954}', '\u{a95e}'),
  ('\u{a97d}', '\u{a97f}'), ('\u{a9ce}', '\u{a9ce}'),
  ('\u{a9da}', '\u{a9dd}'), ('\u{a9ff}', '\u{a9ff}'),
  ('\u{aa37}', '\u{aa3f}'), ('\u{aa4e}', '\u{aa4f}'),
  ('\u{aa5a}', '\u{aa5b}'), ('\u{aac3}', '\u{aada}'),
  ('\u{aaf7}', '\u{ab00}'), ('\u{ab07}', '\u{ab08}'),
  ('\u{ab0f}', '\u{ab10}'), ('\u{ab17}', '\u{ab1f}'),
  ('\u{ab27}', '\u{ab27}'), ('\u{ab2f}', '\u{ab2f}'),
  ('\u{ab66}', '\u{ab6f}'), ('\u{abee}', '\u{abef}'),
  ('\u{abfa}', '\u{abff}'), ('\u{d7a4}', '\u{d7af}'),
  ('\u{d7c7}', '\u{d7ca}'), ('\u{d7fc}', '\u{f8ff}'),
  ('\u{fa6e}', '\u{fa6f}'), ('\u{fada}', '\u{faff}'),
  ('\u{fb07}', '\u{fb12}'), ('\u{fb18}', '\u{fb1c}'),
  ('\u{fb37}', '\u{fb37}'), ('\u{fb3d}', '\u{fb3d}'),
  ('\u{fb3f}', '\u{fb3f}'), ('\u{fb42}', '\u{fb42}'),
  ('\u{fb45}', '\u{fb45}'), ('\u{fbc2}', '\u{fbd2}'),
  ('\u{fd40}', '\u{fd4f}'), ('\u{fd90}', '\u{fd91}'),
  ('\u{fdc8}', '\u{fdef}'), ('\u{fdfe}', '\u{fdff}'),
  ('\u{fe1a}', '\u{fe1f}'), ('\u{fe53}', '\u{fe53}'),
  ('\u{fe67}', '\u{fe67}'), ('\u{fe6c}', '\u{fe6f}'),
  ('\u{fe75}', '\u{fe75}'), ('\u{fefd}', '\u{ff00}'),
  ('\u{ffbf}', '\u{ffc1}'), ('\u{ffc8}', '\u{ffc9}'),
  ('\u{ffd0}', '\u{ffd1}'), ('\u{ffd8}', '\u{ffd9}'),
  ('\u{ffdd}', '\u{ffdf}'), ('\u{ffe7}', '\u{ffe7}'),
  ('\u{ffef}', '\u{fffb}'), ('\u{fffe}', '\u{ffff}'),
  ('\u{1000c}', '\u{1000c}'), ('\u{10027}', '\u{10027}'),
  ('\u{1003b}', '\u{1003b}'), ('\u{1003e}', '\u{1003e}'),
  ('\u{1004e}', '\u{1004f}'), ('\u{1005e}', '\u{1007f}'),
  ('\u{100fb}', '\u{100ff}'), ('\u{10103}', '\u{10106}'),
  ('\u{10134}', '\u{10136}'), ('\u{1018f}', '\u{1018f}'),
  ('\u{1019c}', '\u{1019f}'), ('\u{101a1}', '\u{101cf}'),
  ('\u{101fe}', '\u{1027f}'), ('\u{1029d}', '\u{1029f}'),
  ('\u{102d1}', '\u{102df}'), ('\u{102fc}', '\u{102ff}'),
  ('\u{10324}', '\u{1032c}'), ('\u{1034b}', '\u{1034f}'),
  ('\u{1037b}', '\u{1037f}'), ('\u{1039e}', '\u{1039e}'),
  ('\u{103c4}', '\u{103c7}'), ('\u{103d6}', '\u{103ff}'),
  ('\u{1049e}', '\u{1049f}'), ('\u{104aa}', '\u{104af}'),
  ('\u{104d4}', '\u{104d7}'), ('\u{104fc}', '\u{104ff}'),
  ('\u{10528}', '\u{1052f}'), ('\u{10564}', '\u{1056e}'),
  ('\u{10570}', '\u{105ff}'), ('\u{10737}', '\u{1073f}'),
  ('\u{10756}', '\u{1075f}'), ('\u{10768}', '\u{107ff}'),
  ('\u{10806}', '\u{10807}'), ('\u{10809}', '\u{10809}'),
  ('\u{10836}', '\u{10836}'), ('\u{10839}', '\u{1083b}'),
  ('\u{1083d}', '\u{1083e}'), ('\u{10856}', '\u{10856}'),
  ('\u{1089f}', '\u{108a6}'), ('\u{108b0}', '\u{108df}'),
  ('\u{108f3}', '\u{108f3}'), ('\u{108f6}', '\u{108fa}'),
  ('\u{1091c}', '\u{1091e}'), ('\u{1093a}', '\u{1093e}'),
  ('\u{10940}', '\u{1097f}'), ('\u{109b8}', '\u{109bb}'),
  ('\u{109d0}', '\u{109d1}'), ('\u{10a04}', '\u{10a04}'),
  ('\u{10a07}', '\u{10a0b}'), ('\u{10a14}', '\u{10a14}'),
  ('\u{10a18}', '\u{10a18}'), ('\u{10a34}', '\u{10a37}'),
  ('\u{10a3b}', '\u{10a3e}'), ('\u{10a48}', '\u{10a4f}'),
  ('\u{10a59}', '\u{10a5f}'), ('\u{10aa0}', '\u{10abf}'),
  ('\u{10ae7}', '\u{10aea}'), ('\u{10af7}', '\u{10aff}'),
  ('\u{10b36}', '\u{10b38}'), ('\u{10b56}', '\u{10b57}'),
  ('\u{10b73}', '\u{10b77}'), ('\u{10b92}', '\u{10b98}'),
  ('\u{10b9d}', '\u{10ba8}'), ('\u{10bb0}', '\u{10bff}'),
  ('\u{10c49}', '\u{10c7f}'), ('\u{10cb3}', '\u{10cbf}'),
  ('\u{10cf3}', '\u{10cf9}'), ('\u{10d00}', '\u{10e5f}'),
  ('\u{10e7f}', '\u{10fff}'), ('\u{1104e}', '\u{11051}'),
  ('\u{11070}', '\u{1107e}'), ('\u{110bd}', '\u{110bd}'),
  ('\u{110c2}', '\u{110cf}'), ('\u{110e9}', '\u{110ef}'),
  ('\u{110fa}', '\u{110ff}'), ('\u{11135}', '\u{11135}'),
  ('\u{11144}', '\u{1114f}'), ('\u{11177}', '\u{1117f}'),
  ('\u{111ce}', '\u{111cf}'), ('\u{111e0}', '\u{111e0}'),
  ('\u{111f5}', '\u{111ff}'), ('\u{11212}', '\u{11212}'),
  ('\u{1123f}', '\u{1127f}'), ('\u{11287}', '\u{11287}'),
  ('\u{11289}', '\u{11289}'), ('\u{1128e}', '\u{1128e}'),
  ('\u{1129e}', '\u{1129e}'), ('\u{112aa}', '\u{112af}'),
  ('\u{112eb}', '\u{112ef}'), ('\u{112fa}', '\u{112ff}'),
  ('\u{11304}', '\u{11304}'), ('\u{1130d}', '\u{1130e}'),
  ('\u{11311}', '\u{11312}'), ('\u{11329}', '\u{11329}'),
  ('\u{11331}', '\u{11331}'), ('\u{11334}', '\u{11334}'),
  ('\u{1133a}', '\u{1133b}'), ('\u{11345}', '\u{11346}'),
  ('\u{11349}', '\u{1134a}'), ('\u{1134e}', '\u{1134f}'),
  ('\u{11351}', '\u{11356}'), ('\u{11358}', '\u{1135c}'),
  ('\u{11364}', '\u{11365}'), ('\u{1136d}', '\u{1136f}'),
  ('\u{11375}', '\u{113ff}'), ('\u{1145a}', '\u{1145a}'),
  ('\u{1145c}', '\u{1145c}'), ('\u{1145e}', '\u{1147f}'),
  ('\u{114c8}', '\u{114cf}'), ('\u{114da}', '\u{1157f}'),
  ('\u{115b6}', '\u{115b7}'), ('\u{115de}', '\u{115ff}'),
  ('\u{11645}', '\u{1164f}'), ('\u{1165a}', '\u{1165f}'),
  ('\u{1166d}', '\u{1167f}'), ('\u{116b8}', '\u{116bf}'),
  ('\u{116ca}', '\u{116ff}'), ('\u{1171a}', '\u{1171c}'),
  ('\u{1172c}', '\u{1172f}'), ('\u{11740}', '\u{1189f}'),
  ('\u{118f3}', '\u{118fe}'), ('\u{11900}', '\u{119ff}'),
  ('\u{11a48}', '\u{11a4f}'), ('\u{11a84}', '\u{11a85}'),
  ('\u{11a9d}', '\u{11a9d}'), ('\u{11aa3}', '\u{11abf}'),
  ('\u{11af9}', '\u{11bff}'), ('\u{11c09}', '\u{11c09}'),
  ('\u{11c37}', '\u{11c37}'), ('\u{11c46}', '\u{11c4f}'),
  ('\u{11c6d}', '\u{11c6f}'), ('\u{11c90}', '\u{11c91}'),
  ('\u{11ca8}', '\u{11ca8}'), ('\u{11cb7}', '\u{11cff}'),
  ('\u{11d07}', '\u{11d07}'), ('\u{11d0a}', '\u{11d0a}'),
  ('\u{11d37}', '\u{11d39}'), ('\u{11d3b}', '\u{11d3b}'),
  ('\u{11d3e}', '\u{11d3e}'), ('\u{11d48}', '\u{11d4f}'),
  ('\u{11d5a}', '\u{11fff}'), ('\u{1239a}', '\u{123ff}'),
  ('\u{1246f}', '\u{1246f}'), ('\u{12475}', '\u{1247f}'),
  ('\u{12544}', '\u{12fff}'), ('\u{1342f}', '\u{143ff}'),
  ('\u{14647}', '\u{167ff}'), ('\u{16a39}', '\u{16a3f}'),
  ('\u{16a5f}', '\u{16a5f}'), ('\u{16a6a}', '\u{16a6d}'),
  ('\u{16a70}', '\u{16acf}'), ('\u{16aee}', '\u{16aef}'),
  ('\u{16af6}', '\u{16aff}'), ('\u{16b46}', '\u{16b4f}'),
  ('\u{16b5a}', '\u{16b5a}'), ('\u{16b62}', '\u{16b62}'),
  ('\u{16b78}', '\u{16b7c}'), ('\u{16b90}', '\u{16eff}'),
  ('\u{16f45}', '\u{16f4f}'), ('\u{16f7f}', '\u{16f8e}'),
  ('\u{16fa0}', '\u{16fdf}'), ('\u{16fe2}', '\u{16fff}'),
  ('\u{187ed}', '\u{187ff}'), ('\u{18af3}', '\u{1afff}'),
  ('\u{1b11f}', '\u{1b16f}'), ('\u{1b2fc}', '\u{1bbff}'),
  ('\u{1bc6b}', '\u{1bc6f}'), ('\u{1bc7d}', '\u{1bc7f}'),
  ('\u{1bc89}', '\u{1bc8f}'), ('\u{1bc9a}', '\u{1bc9b}'),
  ('\u{1bca0}', '\u{1cfff}'), ('\u{1d0f6}', '\u{1d0ff}'),
  ('\u{1d127}', '\u{1d128}'), ('\u{1d173}', '\u{1d17a}'),
  ('\u{1d1e9}', '\u{1d1ff}'), ('\u{1d246}', '\u{1d2ff}'),
  ('\u{1d357}', '\u{1d35f}'), ('\u{1d372}', '\u{1d3ff}'),
  ('\u{1d455}', '\u{1d455}'), ('\u{1d49d}', '\u{1d49d}'),
  ('\u{1d4a0}', '\u{1d4a1}'), ('\u{1d4a3}', '\u{1d4a4}'),
  ('\u{1d4a7}', '\u{1d4a8}'), ('\u{1d4ad}', '\u{1d4ad}'),
  ('\u{1d4ba}', '\u{1d4ba}'), ('\u{1d4bc}', '\u{1d4bc}'),
  ('\u{1d4c4}', '\u{1d4c4}'), ('\u{1d506}', '\u{1d506}'),
  ('\u{1d50b}', '\u{1d50c}'), ('\u{1d515}', '\u{1d515}'),
  ('\u{1d51d}', '\u{1d51d}'), ('\u{1d53a}', '\u{1d53a}'),
  ('\u{1d53f}', '\u{1d53f}'), ('\u{1d545}', '\u{1d545}'),
  ('\u{1d547}', '\u{1d549}'), ('\u{1d551}', '\u{1d551}'),
  ('\u{1d6a6}', '\u{1d6a7}'), ('\u{1d7cc}', '\u{1d7cd}'),
  ('\u{1da8c}', '\u{1da9a}'), ('\u{1daa0}', '\u{1daa0}'),
  ('\u{1dab0}', '\u{1dfff}'), ('\u{1e007}', '\u{1e007}'),
  ('\u{1e019}', '\u{1e01a}'), ('\u{1e022}', '\u{1e022}'),
  ('\u{1e025}', '\u{1e025}'), ('\u{1e02b}', '\u{1e7ff}'),
  ('\u{1e8c5}', '\u{1e8c6}'), ('\u{1e8d7}', '\u{1e8ff}'),
  ('\u{1e94b}', '\u{1e94f}'), ('\u{1e95a}', '\u{1e95d}'),
  ('\u{1e960}', '\u{1edff}'), ('\u{1ee04}', '\u{1ee04}'),
  ('\u{1ee20}', '\u{1ee20}'), ('\u{1ee23}', '\u{1ee23}'),
  ('\u{1ee25}', '\u{1ee26}'), ('\u{1ee28}', '\u{1ee28}'),
  ('\u{1ee33}', '\u{1ee33}'), ('\u{1ee38}', '\u{1ee38}'),
  ('\u{1ee3a}', '\u{1ee3a}'), ('\u{1ee3c}', '\u{1ee41}'),
  ('\u{1ee43}', '\u{1ee46}'), ('\u{1ee48}', '\u{1ee48}'),
  ('\u{1ee4a}', '\u{1ee4a}'), ('\u{1ee4c}', '\u{1ee4c}'),
  ('\u{1ee50}', '\u{1ee50}'), ('\u{1ee53}', '\u{1ee53}'),
  ('\u{1ee55}', '\u{1ee56}'), ('\u{1ee58}', '\u{1ee58}'),
  ('\u{1ee5a}', '\u{1ee5a}'), ('\u{1ee5c}', '\u{1ee5c}'),
  ('\u{1ee5e}', '\u{1ee5e}'), ('\u{1ee60}', '\u{1ee60}'),
  ('\u{1ee63}', '\u{1ee63}'), ('\u{1ee65}', '\u{1ee66}'),
  ('\u{1ee6b}', '\u{1ee6b}'), ('\u{1ee73}', '\u{1ee73}'),
  ('\u{1ee78}', '\u{1ee78}'), ('\u{1ee7d}', '\u{1ee7d}'),
  ('\u{1ee7f}', '\u{1ee7f}'), ('\u{1ee8a}', '\u{1ee8a}'),
  ('\u{1ee9c}', '\u{1eea0}'), ('\u{1eea4}', '\u{1eea4}'),
  ('\u{1eeaa}', '\u{1eeaa}'), ('\u{1eebc}', '\u{1eeef}'),
  ('\u{1eef2}', '\u{1efff}'), ('\u{1f02c}', '\u{1f02f}'),
  ('\u{1f094}', '\u{1f09f}'), ('\u{1f0af}', '\u{1f0b0}'),
  ('\u{1f0c0}', '\u{1f0c0}'), ('\u{1f0d0}', '\u{1f0d0}'),
  ('\u{1f0f6}', '\u{1f0ff}'), ('\u{1f10d}', '\u{1f10f}'),
  ('\u{1f12f}', '\u{1f12f}'), ('\u{1f16c}', '\u{1f16f}'),
  ('\u{1f1ad}', '\u{1f1e5}'), ('\u{1f203}', '\u{1f20f}'),
  ('\u{1f23c}', '\u{1f23f}'), ('\u{1f249}', '\u{1f24f}'),
  ('\u{1f252}', '\u{1f25f}'), ('\u{1f266}', '\u{1f2ff}'),
  ('\u{1f6d5}', '\u{1f6df}'), ('\u{1f6ed}', '\u{1f6ef}'),
  ('\u{1f6f9}', '\u{1f6ff}'), ('\u{1f774}', '\u{1f77f}'),
  ('\u{1f7d5}', '\u{1f7ff}'), ('\u{1f80c}', '\u{1f80f}'),
  ('\u{1f848}', '\u{1f84f}'), ('\u{1f85a}', '\u{1f85f}'),
  ('\u{1f888}', '\u{1f88f}'), ('\u{1f8ae}', '\u{1f8ff}'),
  ('\u{1f90c}', '\u{1f90f}'), ('\u{1f93f}', '\u{1f93f}'),
  ('\u{1f94d}', '\u{1f94f}'), ('\u{1f96c}', '\u{1f97f}'),
  ('\u{1f998}', '\u{1f9bf}'), ('\u{1f9c1}', '\u{1f9cf}'),
  ('\u{1f9e7}', '\u{1ffff}'), ('\u{2a6d7}', '\u{2a6ff}'),
  ('\u{2b735}', '\u{2b73f}'), ('\u{2b81e}', '\u{2b81f}'),
  ('\u{2cea2}', '\u{2ceaf}'), ('\u{2ebe1}', '\u{2f7ff}'),
  ('\u{2fa1e}', '\u{e00ff}'), ('\u{e01f0}', '\u{10ffff}'),
];

pub const OTHER_LETTER: &'static [(char, char)] = &[
  ('ª', 'ª'), ('º', 'º'), ('ƻ', 'ƻ'), ('ǀ', 'ǃ'), ('ʔ', 'ʔ'),
  ('א', 'ת'), ('װ', 'ײ'), ('ؠ', 'ؿ'), ('ف', 'ي'), ('ٮ', 'ٯ'),
  ('ٱ', 'ۓ'), ('ە', 'ە'), ('ۮ', 'ۯ'), ('ۺ', 'ۼ'), ('ۿ', 'ۿ'),
  ('ܐ', 'ܐ'), ('ܒ', 'ܯ'), ('ݍ', 'ޥ'), ('ޱ', 'ޱ'), ('ߊ', 'ߪ'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', 'ൿ'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('က', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('ꀀ', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐀀', '𐀋'), ('𐀍', '𐀦'), ('𐀨', '𐀺'), ('𐀼', '𐀽'),
  ('𐀿', '𐁍'), ('𐁐', '𐁝'), ('𐂀', '𐃺'), ('𐊀', '𐊜'),
  ('𐊠', '𐋐'), ('𐌀', '𐌟'), ('𐌭', '𐍀'), ('𐍂', '𐍉'),
  ('𐍐', '𐍵'), ('𐎀', '𐎝'), ('𐎠', '𐏃'), ('𐏈', '𐏏'),
  ('𐑐', '𐒝'), ('𐔀', '𐔧'), ('𐔰', '𐕣'), ('𐘀', '𐜶'),
  ('𐝀', '𐝕'), ('𐝠', '𐝧'), ('𐠀', '𐠅'), ('𐠈', '𐠈'),
  ('𐠊', '𐠵'), ('𐠷', '𐠸'), ('𐠼', '𐠼'), ('𐠿', '𐡕'),
  ('𐡠', '𐡶'), ('𐢀', '𐢞'), ('𐣠', '𐣲'), ('𐣴', '𐣵'),
  ('𐤀', '𐤕'), ('𐤠', '𐤹'), ('𐦀', '𐦷'), ('𐦾', '𐦿'),
  ('𐨀', '𐨀'), ('𐨐', '𐨓'), ('𐨕', '𐨗'), ('𐨙', '𐨳'),
  ('𐩠', '𐩼'), ('𐪀', '𐪜'), ('𐫀', '𐫇'), ('𐫉', '𐫤'),
  ('𐬀', '𐬵'), ('𐭀', '𐭕'), ('𐭠', '𐭲'), ('𐮀', '𐮑'),
  ('𐰀', '𐱈'), ('𑀃', '𑀷'), ('𑂃', '𑂯'), ('𑃐', '𑃨'),
  ('𑄃', '𑄦'), ('𑅐', '𑅲'), ('𑅶', '𑅶'), ('𑆃', '𑆲'),
  ('𑇁', '𑇄'), ('𑇚', '𑇚'), ('𑇜', '𑇜'), ('𑈀', '𑈑'),
  ('𑈓', '𑈫'), ('𑊀', '𑊆'), ('𑊈', '𑊈'), ('𑊊', '𑊍'),
  ('𑊏', '𑊝'), ('𑊟', '𑊨'), ('𑊰', '𑋞'), ('𑌅', '𑌌'),
  ('𑌏', '𑌐'), ('𑌓', '𑌨'), ('𑌪', '𑌰'), ('𑌲', '𑌳'),
  ('𑌵', '𑌹'), ('𑌽', '𑌽'), ('𑍐', '𑍐'), ('𑍝', '𑍡'),
  ('𑐀', '𑐴'), ('𑑇', '𑑊'), ('𑒀', '𑒯'), ('𑓄', '𑓅'),
  ('𑓇', '𑓇'), ('𑖀', '𑖮'), ('𑗘', '𑗛'), ('𑘀', '𑘯'),
  ('𑙄', '𑙄'), ('𑚀', '𑚪'), ('𑜀', '𑜙'), ('𑣿', '𑣿'),
  ('𑨀', '𑨀'), ('𑨋', '𑨲'), ('𑨺', '𑨺'), ('𑩐', '𑩐'),
  ('𑩜', '𑪃'), ('𑪆', '𑪉'), ('𑫀', '𑫸'), ('𑰀', '𑰈'),
  ('𑰊', '𑰮'), ('𑱀', '𑱀'), ('𑱲', '𑲏'), ('𑴀', '𑴆'),
  ('𑴈', '𑴉'), ('𑴋', '𑴰'), ('𑵆', '𑵆'), ('𒀀', '𒎙'),
  ('𒒀', '𒕃'), ('𓀀', '𓐮'), ('𔐀', '𔙆'), ('𖠀', '𖨸'),
  ('𖩀', '𖩞'), ('𖫐', '𖫭'), ('𖬀', '𖬯'), ('𖭣', '𖭷'),
  ('𖭽', '𖮏'), ('𖼀', '𖽄'), ('𖽐', '𖽐'), ('𗀀', '𘟬'),
  ('𘠀', '𘫲'), ('𛀀', '𛄞'), ('𛅰', '𛋻'), ('𛰀', '𛱪'),
  ('𛱰', '𛱼'), ('𛲀', '𛲈'), ('𛲐', '𛲙'), ('𞠀', '𞣄'),
  ('𞸀', '𞸃'), ('𞸅', '𞸟'), ('𞸡', '𞸢'), ('𞸤', '𞸤'),
  ('𞸧', '𞸧'), ('𞸩', '𞸲'), ('𞸴', '𞸷'), ('𞸹', '𞸹'),
  ('𞸻', '𞸻'), ('𞹂', '𞹂'), ('𞹇', '𞹇'), ('𞹉', '𞹉'),
  ('𞹋', '𞹋'), ('𞹍', '𞹏'), ('𞹑', '𞹒'), ('𞹔', '𞹔'),
  ('𞹗', '𞹗'), ('𞹙', '𞹙'), ('𞹛', '𞹛'), ('𞹝', '𞹝'),
  ('𞹟', '𞹟'), ('𞹡', '𞹢'), ('𞹤', '𞹤'), ('𞹧', '𞹪'),
  ('𞹬', '𞹲'), ('𞹴', '𞹷'), ('𞹹', '𞹼'), ('𞹾', '𞹾'),
  ('𞺀', '𞺉'), ('𞺋', '𞺛'), ('𞺡', '𞺣'), ('𞺥', '𞺩'),
  ('𞺫', '𞺻'), ('𠀀', '𪛖'), ('𪜀', '𫜴'), ('𫝀', '𫠝'),
  ('𫠠', '𬺡'), ('𬺰', '𮯠'), ('丽', '𪘀'),
];

pub const OTHER_NUMBER: &'static [(char, char)] = &[
  ('²', '³'), ('¹', '¹'), ('¼', '¾'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐄇', '𐄳'), ('𐅵', '𐅸'), ('𐆊', '𐆋'), ('𐋡', '𐋻'),
  ('𐌠', '𐌣'), ('𐡘', '𐡟'), ('𐡹', '𐡿'), ('𐢧', '𐢯'),
  ('𐣻', '𐣿'), ('𐤖', '𐤛'), ('𐦼', '𐦽'), ('𐧀', '𐧏'),
  ('𐧒', '𐧿'), ('𐩀', '𐩇'), ('𐩽', '𐩾'), ('𐪝', '𐪟'),
  ('𐫫', '𐫯'), ('𐭘', '𐭟'), ('𐭸', '𐭿'), ('𐮩', '𐮯'),
  ('𐳺', '𐳿'), ('𐹠', '𐹾'), ('𑁒', '𑁥'), ('𑇡', '𑇴'),
  ('𑜺', '𑜻'), ('𑣪', '𑣲'), ('𑱚', '𑱬'), ('𖭛', '𖭡'),
  ('𝍠', '𝍱'), ('𞣇', '𞣏'), ('🄀', '🄌'),
];

pub const OTHER_PUNCTUATION: &'static [(char, char)] = &[
  ('!', '#'), ('%', '\''), ('*', '*'), (',', ','), ('.', '/'), (':', ';'),
  ('?', '@'), ('\\', '\\'), ('¡', '¡'), ('§', '§'), ('', '·'),
  ('¿', '¿'), (';', ';'), ('·', '·'), ('՚', '՟'), ('։', '։'),
  ('׀', '׀'), ('׃', '׃'), ('׆', '׆'), ('׳', '״'), ('؉', '؊'),
  ('،', '؍'), ('؛', '؛'), ('؞', '؟'), ('٪', '٭'), ('۔', '۔'),
  ('܀', '܍'), ('߷', '߹'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '᯿'), ('', '᰿'),
  ('', '᱿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '⳿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', '⸿'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('𐄀', '𐄂'), ('𐎟', '𐎟'),
  ('𐏐', '𐏐'), ('𐕯', '𐕯'), ('𐡗', '𐡗'), ('𐤟', '𐤟'),
  ('𐤿', '𐤿'), ('𐩐', '𐩘'), ('𐩿', '𐩿'), ('𐫰', '𐫶'),
  ('𐬹', '𐬿'), ('𐮙', '𐮜'), ('𑁇', '𑁍'), ('𑂻', '𑂼'),
  ('𑂾', '𑃁'), ('𑅀', '𑅃'), ('𑅴', '𑅵'), ('𑇅', '𑇉'),
  ('𑇍', '𑇍'), ('𑇛', '𑇛'), ('𑇝', '𑇟'), ('𑈸', '𑈽'),
  ('𑊩', '𑊩'), ('𑑋', '𑑏'), ('𑑛', '𑑛'), ('𑑝', '𑑝'),
  ('𑓆', '𑓆'), ('𑗁', '𑗗'), ('𑙁', '𑙃'), ('𑙠', '𑙬'),
  ('𑜼', '𑜾'), ('𑨿', '𑩆'), ('𑪚', '𑪜'), ('𑪞', '𑪢'),
  ('𑱁', '𑱅'), ('𑱰', '𑱱'), ('𒑰', '𒑴'), ('𖩮', '𖩯'),
  ('𖫵', '𖫵'), ('𖬷', '𖬻'), ('𖭄', '𖭄'), ('𛲟', '𛲟'),
  ('𝪇', '𝪋'), ('𞥞', '𞥟'),
];

pub const OTHER_SYMBOL: &'static [(char, char)] = &[
  ('¦', '¦'), ('©', '©'), ('®', '®'), ('°', '°'), ('҂', '҂'),
  ('֍', '֎'), ('؎', '؏'), ('۞', '۞'), ('۩', '۩'), ('۽', '۾'),
  ('߶', '߶'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('౿', '౿'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', '᧿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', '䷿'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐄷', '𐄿'), ('𐅹', '𐆉'), ('𐆌', '𐆎'), ('𐆐', '𐆛'),
  ('𐆠', '𐆠'), ('𐇐', '𐇼'), ('𐡷', '𐡸'), ('𐫈', '𐫈'),
  ('𑜿', '𑜿'), ('𖬼', '𖬿'), ('𖭅', '𖭅'), ('𛲜', '𛲜'),
  ('𝀀', '𝃵'), ('𝄀', '𝄦'), ('𝄩', '𝅘𝅥𝅲'), ('𝅪', '𝅬'),
  ('𝆃', '𝆄'), ('𝆌', '𝆩'), ('𝆮', '𝇨'), ('𝈀', '𝉁'),
  ('𝉅', '𝉅'), ('𝌀', '𝍖'), ('𝠀', '𝧿'), ('𝨷', '𝨺'),
  ('𝩭', '𝩴'), ('𝩶', '𝪃'), ('𝪅', '𝪆'), ('🀀', '🀫'),
  ('🀰', '🂓'), ('🂠', '🂮'), ('🂱', '🂿'), ('🃁', '🃏'),
  ('🃑', '🃵'), ('🄐', '🄮'), ('🄰', '🅫'), ('🅰', '🆬'),
  ('🇦', '🈂'), ('🈐', '🈻'), ('🉀', '🉈'), ('🉐', '🉑'),
  ('🉠', '🉥'), ('🌀', '🏺'), ('🐀', '🛔'), ('🛠', '🛬'),
  ('🛰', '🛸'), ('🜀', '🝳'), ('🞀', '🟔'), ('🠀', '🠋'),
  ('🠐', '🡇'), ('🡐', '🡙'), ('🡠', '🢇'), ('🢐', '🢭'),
  ('🤀', '🤋'), ('🤐', '🤾'), ('🥀', '🥌'), ('🥐', '🥫'),
  ('🦀', '🦗'), ('🧀', '🧀'), ('🧐', '🧦'),
];

pub const PARAGRAPH_SEPARATOR: &'static [(char, char)] = &[
  ('\u{2029}', '\u{2029}'),
];

pub const PRIVATE_USE: &'static [(char, char)] = &[
  ('\u{e000}', '\u{f8ff}'), ('\u{f0000}', '\u{ffffd}'),
  ('\u{100000}', '\u{10fffd}'),
];

pub const PUNCTUATION: &'static [(char, char)] = &[
  ('!', '#'), ('%', '*'), (',', '/'), (':', ';'), ('?', '@'), ('[', ']'),
  ('_', '_'), ('{', '{'), ('}', '}'), ('¡', '¡'), ('§', '§'),
  ('«', '«'), ('', '·'), ('»', '»'), ('¿', '¿'), (';', ';'),
  ('·', '·'), ('՚', '՟'), ('։', '֊'), ('־', '־'), ('׀', '׀'),
  ('׃', '׃'), ('׆', '׆'), ('׳', '״'), ('؉', '؊'), ('،', '؍'),
  ('؛', '؛'), ('؞', '؟'), ('٪', '٭'), ('۔', '۔'), ('܀', '܍'),
  ('߷', '߹'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '᯿'), ('', '᰿'), ('', '᱿'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '⳿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '﴿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('_', '_'), ('', ''), ('', ''),
  ('', ''), ('𐄀', '𐄂'), ('𐎟', '𐎟'), ('𐏐', '𐏐'),
  ('𐕯', '𐕯'), ('𐡗', '𐡗'), ('𐤟', '𐤟'), ('𐤿', '𐤿'),
  ('𐩐', '𐩘'), ('𐩿', '𐩿'), ('𐫰', '𐫶'), ('𐬹', '𐬿'),
  ('𐮙', '𐮜'), ('𑁇', '𑁍'), ('𑂻', '𑂼'), ('𑂾', '𑃁'),
  ('𑅀', '𑅃'), ('𑅴', '𑅵'), ('𑇅', '𑇉'), ('𑇍', '𑇍'),
  ('𑇛', '𑇛'), ('𑇝', '𑇟'), ('𑈸', '𑈽'), ('𑊩', '𑊩'),
  ('𑑋', '𑑏'), ('𑑛', '𑑛'), ('𑑝', '𑑝'), ('𑓆', '𑓆'),
  ('𑗁', '𑗗'), ('𑙁', '𑙃'), ('𑙠', '𑙬'), ('𑜼', '𑜾'),
  ('𑨿', '𑩆'), ('𑪚', '𑪜'), ('𑪞', '𑪢'), ('𑱁', '𑱅'),
  ('𑱰', '𑱱'), ('𒑰', '𒑴'), ('𖩮', '𖩯'), ('𖫵', '𖫵'),
  ('𖬷', '𖬻'), ('𖭄', '𖭄'), ('𛲟', '𛲟'), ('𝪇', '𝪋'),
  ('𞥞', '𞥟'),
];

pub const SEPARATOR: &'static [(char, char)] = &[
  (' ', ' '), ('\u{a0}', '\u{a0}'), ('\u{1680}', '\u{1680}'),
  ('\u{2000}', '\u{200a}'), ('\u{2028}', '\u{2029}'),
  ('\u{202f}', '\u{202f}'), ('\u{205f}', '\u{205f}'),
  ('\u{3000}', '\u{3000}'),
];

pub const SPACE_SEPARATOR: &'static [(char, char)] = &[
  (' ', ' '), ('\u{a0}', '\u{a0}'), ('\u{1680}', '\u{1680}'),
  ('\u{2000}', '\u{200a}'), ('\u{202f}', '\u{202f}'),
  ('\u{205f}', '\u{205f}'), ('\u{3000}', '\u{3000}'),
];

pub const SPACING_MARK: &'static [(char, char)] = &[
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', 'ி'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '༿'), ('ཿ', 'ཿ'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('𑀀', '𑀀'), ('𑀂', '𑀂'),
  ('𑂂', '𑂂'), ('𑂰', '𑂲'), ('𑂷', '𑂸'), ('𑄬', '𑄬'),
  ('𑆂', '𑆂'), ('𑆳', '𑆵'), ('𑆿', '𑇀'), ('𑈬', '𑈮'),
  ('𑈲', '𑈳'), ('𑈵', '𑈵'), ('𑋠', '𑋢'), ('𑌂', '𑌃'),
  ('𑌾', '𑌿'), ('𑍁', '𑍄'), ('𑍇', '𑍈'), ('𑍋', '𑍍'),
  ('𑍗', '𑍗'), ('𑍢', '𑍣'), ('𑐵', '𑐷'), ('𑑀', '𑑁'),
  ('𑑅', '𑑅'), ('𑒰', '𑒲'), ('𑒹', '𑒹'), ('𑒻', '𑒾'),
  ('𑓁', '𑓁'), ('𑖯', '𑖱'), ('𑖸', '𑖻'), ('𑖾', '𑖾'),
  ('𑘰', '𑘲'), ('𑘻', '𑘼'), ('𑘾', '𑘾'), ('𑚬', '𑚬'),
  ('𑚮', '𑚯'), ('𑚶', '𑚶'), ('𑜠', '𑜡'), ('𑜦', '𑜦'),
  ('𑨇', '𑨈'), ('𑨹', '𑨹'), ('𑩗', '𑩘'), ('𑪗', '𑪗'),
  ('𑰯', '𑰯'), ('𑰾', '𑰾'), ('𑲩', '𑲩'), ('𑲱', '𑲱'),
  ('𑲴', '𑲴'), ('𖽑', '𖽾'), ('𝅥', '𝅦'), ('𝅭', '𝅲'),
];

pub const SYMBOL: &'static [(char, char)] = &[
  ('$', '$'), ('+', '+'), ('<', '>'), ('^', '^'), ('`', '`'), ('|', '|'),
  ('~', '~'), ('¢', '¦'), ('¨', '©'), ('¬', '¬'), ('®', '±'),
  ('´', '´'), ('¸', '¸'), ('×', '×'), ('÷', '÷'), ('˂', '˅'),
  ('˒', '˟'), ('˥', '˫'), ('˭', '˭'), ('˯', '˿'), ('͵', '͵'),
  ('΄', '΅'), ('϶', '϶'), ('҂', '҂'), ('֍', '֏'), ('؆', '؈'),
  ('؋', '؋'), ('؎', '؏'), ('۞', '۞'), ('۩', '۩'), ('۽', '۾'),
  ('߶', '߶'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('౿', '౿'), ('', ''),
  ('', ''), ('฿', '฿'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', '᧿'), ('', ''), ('', ''),
  ('', ''), ('᾿', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '䷿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('𐄷', '𐄿'), ('𐅹', '𐆉'), ('𐆌', '𐆎'),
  ('𐆐', '𐆛'), ('𐆠', '𐆠'), ('𐇐', '𐇼'), ('𐡷', '𐡸'),
  ('𐫈', '𐫈'), ('𑜿', '𑜿'), ('𖬼', '𖬿'), ('𖭅', '𖭅'),
  ('𛲜', '𛲜'), ('𝀀', '𝃵'), ('𝄀', '𝄦'), ('𝄩', '𝅘𝅥𝅲'),
  ('𝅪', '𝅬'), ('𝆃', '𝆄'), ('𝆌', '𝆩'), ('𝆮', '𝇨'),
  ('𝈀', '𝉁'), ('𝉅', '𝉅'), ('𝌀', '𝍖'), ('𝛁', '𝛁'),
  ('𝛛', '𝛛'), ('𝛻', '𝛻'), ('𝜕', '𝜕'), ('𝜵', '𝜵'),
  ('𝝏', '𝝏'), ('𝝯', '𝝯'), ('𝞉', '𝞉'), ('𝞩', '𝞩'),
  ('𝟃', '𝟃'), ('𝠀', '𝧿'), ('𝨷', '𝨺'), ('𝩭', '𝩴'),
  ('𝩶', '𝪃'), ('𝪅', '𝪆'), ('𞻰', '𞻱'), ('🀀', '🀫'),
  ('🀰', '🂓'), ('🂠', '🂮'), ('🂱', '🂿'), ('🃁', '🃏'),
  ('🃑', '🃵'), ('🄐', '🄮'), ('🄰', '🅫'), ('🅰', '🆬'),
  ('🇦', '🈂'), ('🈐', '🈻'), ('🉀', '🉈'), ('🉐', '🉑'),
  ('🉠', '🉥'), ('🌀', '🛔'), ('🛠', '🛬'), ('🛰', '🛸'),
  ('🜀', '🝳'), ('🞀', '🟔'), ('🠀', '🠋'), ('🠐', '🡇'),
  ('🡐', '🡙'), ('🡠', '🢇'), ('🢐', '🢭'), ('🤀', '🤋'),
  ('🤐', '🤾'), ('🥀', '🥌'), ('🥐', '🥫'), ('🦀', '🦗'),
  ('🧀', '🧀'), ('🧐', '🧦'),
];

pub const TITLECASE_LETTER: &'static [(char, char)] = &[
  ('Dž', 'Dž'), ('Lj', 'Lj'), ('Nj', 'Nj'), ('Dz', 'Dz'), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''),
];

pub const UNASSIGNED: &'static [(char, char)] = &[
  ('\u{378}', '\u{379}'), ('\u{380}', '\u{383}'), ('\u{38b}', '\u{38b}'),
  ('\u{38d}', '\u{38d}'), ('\u{3a2}', '\u{3a2}'), ('\u{530}', '\u{530}'),
  ('\u{557}', '\u{558}'), ('\u{560}', '\u{560}'), ('\u{588}', '\u{588}'),
  ('\u{58b}', '\u{58c}'), ('\u{590}', '\u{590}'), ('\u{5c8}', '\u{5cf}'),
  ('\u{5eb}', '\u{5ef}'), ('\u{5f5}', '\u{5ff}'), ('\u{61d}', '\u{61d}'),
  ('\u{70e}', '\u{70e}'), ('\u{74b}', '\u{74c}'), ('\u{7b2}', '\u{7bf}'),
  ('\u{7fb}', '\u{7ff}'), ('\u{82e}', '\u{82f}'), ('\u{83f}', '\u{83f}'),
  ('\u{85c}', '\u{85d}'), ('\u{85f}', '\u{85f}'), ('\u{86b}', '\u{89f}'),
  ('\u{8b5}', '\u{8b5}'), ('\u{8be}', '\u{8d3}'), ('\u{984}', '\u{984}'),
  ('\u{98d}', '\u{98e}'), ('\u{991}', '\u{992}'), ('\u{9a9}', '\u{9a9}'),
  ('\u{9b1}', '\u{9b1}'), ('\u{9b3}', '\u{9b5}'), ('\u{9ba}', '\u{9bb}'),
  ('\u{9c5}', '\u{9c6}'), ('\u{9c9}', '\u{9ca}'), ('\u{9cf}', '\u{9d6}'),
  ('\u{9d8}', '\u{9db}'), ('\u{9de}', '\u{9de}'), ('\u{9e4}', '\u{9e5}'),
  ('\u{9fe}', '\u{a00}'), ('\u{a04}', '\u{a04}'), ('\u{a0b}', '\u{a0e}'),
  ('\u{a11}', '\u{a12}'), ('\u{a29}', '\u{a29}'), ('\u{a31}', '\u{a31}'),
  ('\u{a34}', '\u{a34}'), ('\u{a37}', '\u{a37}'), ('\u{a3a}', '\u{a3b}'),
  ('\u{a3d}', '\u{a3d}'), ('\u{a43}', '\u{a46}'), ('\u{a49}', '\u{a4a}'),
  ('\u{a4e}', '\u{a50}'), ('\u{a52}', '\u{a58}'), ('\u{a5d}', '\u{a5d}'),
  ('\u{a5f}', '\u{a65}'), ('\u{a76}', '\u{a80}'), ('\u{a84}', '\u{a84}'),
  ('\u{a8e}', '\u{a8e}'), ('\u{a92}', '\u{a92}'), ('\u{aa9}', '\u{aa9}'),
  ('\u{ab1}', '\u{ab1}'), ('\u{ab4}', '\u{ab4}'), ('\u{aba}', '\u{abb}'),
  ('\u{ac6}', '\u{ac6}'), ('\u{aca}', '\u{aca}'), ('\u{ace}', '\u{acf}'),
  ('\u{ad1}', '\u{adf}'), ('\u{ae4}', '\u{ae5}'), ('\u{af2}', '\u{af8}'),
  ('\u{b00}', '\u{b00}'), ('\u{b04}', '\u{b04}'), ('\u{b0d}', '\u{b0e}'),
  ('\u{b11}', '\u{b12}'), ('\u{b29}', '\u{b29}'), ('\u{b31}', '\u{b31}'),
  ('\u{b34}', '\u{b34}'), ('\u{b3a}', '\u{b3b}'), ('\u{b45}', '\u{b46}'),
  ('\u{b49}', '\u{b4a}'), ('\u{b4e}', '\u{b55}'), ('\u{b58}', '\u{b5b}'),
  ('\u{b5e}', '\u{b5e}'), ('\u{b64}', '\u{b65}'), ('\u{b78}', '\u{b81}'),
  ('\u{b84}', '\u{b84}'), ('\u{b8b}', '\u{b8d}'), ('\u{b91}', '\u{b91}'),
  ('\u{b96}', '\u{b98}'), ('\u{b9b}', '\u{b9b}'), ('\u{b9d}', '\u{b9d}'),
  ('\u{ba0}', '\u{ba2}'), ('\u{ba5}', '\u{ba7}'), ('\u{bab}', '\u{bad}'),
  ('\u{bba}', '\u{bbd}'), ('\u{bc3}', '\u{bc5}'), ('\u{bc9}', '\u{bc9}'),
  ('\u{bce}', '\u{bcf}'), ('\u{bd1}', '\u{bd6}'), ('\u{bd8}', '\u{be5}'),
  ('\u{bfb}', '\u{bff}'), ('\u{c04}', '\u{c04}'), ('\u{c0d}', '\u{c0d}'),
  ('\u{c11}', '\u{c11}'), ('\u{c29}', '\u{c29}'), ('\u{c3a}', '\u{c3c}'),
  ('\u{c45}', '\u{c45}'), ('\u{c49}', '\u{c49}'), ('\u{c4e}', '\u{c54}'),
  ('\u{c57}', '\u{c57}'), ('\u{c5b}', '\u{c5f}'), ('\u{c64}', '\u{c65}'),
  ('\u{c70}', '\u{c77}'), ('\u{c84}', '\u{c84}'), ('\u{c8d}', '\u{c8d}'),
  ('\u{c91}', '\u{c91}'), ('\u{ca9}', '\u{ca9}'), ('\u{cb4}', '\u{cb4}'),
  ('\u{cba}', '\u{cbb}'), ('\u{cc5}', '\u{cc5}'), ('\u{cc9}', '\u{cc9}'),
  ('\u{cce}', '\u{cd4}'), ('\u{cd7}', '\u{cdd}'), ('\u{cdf}', '\u{cdf}'),
  ('\u{ce4}', '\u{ce5}'), ('\u{cf0}', '\u{cf0}'), ('\u{cf3}', '\u{cff}'),
  ('\u{d04}', '\u{d04}'), ('\u{d0d}', '\u{d0d}'), ('\u{d11}', '\u{d11}'),
  ('\u{d45}', '\u{d45}'), ('\u{d49}', '\u{d49}'), ('\u{d50}', '\u{d53}'),
  ('\u{d64}', '\u{d65}'), ('\u{d80}', '\u{d81}'), ('\u{d84}', '\u{d84}'),
  ('\u{d97}', '\u{d99}'), ('\u{db2}', '\u{db2}'), ('\u{dbc}', '\u{dbc}'),
  ('\u{dbe}', '\u{dbf}'), ('\u{dc7}', '\u{dc9}'), ('\u{dcb}', '\u{dce}'),
  ('\u{dd5}', '\u{dd5}'), ('\u{dd7}', '\u{dd7}'), ('\u{de0}', '\u{de5}'),
  ('\u{df0}', '\u{df1}'), ('\u{df5}', '\u{e00}'), ('\u{e3b}', '\u{e3e}'),
  ('\u{e5c}', '\u{e80}'), ('\u{e83}', '\u{e83}'), ('\u{e85}', '\u{e86}'),
  ('\u{e89}', '\u{e89}'), ('\u{e8b}', '\u{e8c}'), ('\u{e8e}', '\u{e93}'),
  ('\u{e98}', '\u{e98}'), ('\u{ea0}', '\u{ea0}'), ('\u{ea4}', '\u{ea4}'),
  ('\u{ea6}', '\u{ea6}'), ('\u{ea8}', '\u{ea9}'), ('\u{eac}', '\u{eac}'),
  ('\u{eba}', '\u{eba}'), ('\u{ebe}', '\u{ebf}'), ('\u{ec5}', '\u{ec5}'),
  ('\u{ec7}', '\u{ec7}'), ('\u{ece}', '\u{ecf}'), ('\u{eda}', '\u{edb}'),
  ('\u{ee0}', '\u{eff}'), ('\u{f48}', '\u{f48}'), ('\u{f6d}', '\u{f70}'),
  ('\u{f98}', '\u{f98}'), ('\u{fbd}', '\u{fbd}'), ('\u{fcd}', '\u{fcd}'),
  ('\u{fdb}', '\u{fff}'), ('\u{10c6}', '\u{10c6}'), ('\u{10c8}', '\u{10cc}'),
  ('\u{10ce}', '\u{10cf}'), ('\u{1249}', '\u{1249}'),
  ('\u{124e}', '\u{124f}'), ('\u{1257}', '\u{1257}'),
  ('\u{1259}', '\u{1259}'), ('\u{125e}', '\u{125f}'),
  ('\u{1289}', '\u{1289}'), ('\u{128e}', '\u{128f}'),
  ('\u{12b1}', '\u{12b1}'), ('\u{12b6}', '\u{12b7}'),
  ('\u{12bf}', '\u{12bf}'), ('\u{12c1}', '\u{12c1}'),
  ('\u{12c6}', '\u{12c7}'), ('\u{12d7}', '\u{12d7}'),
  ('\u{1311}', '\u{1311}'), ('\u{1316}', '\u{1317}'),
  ('\u{135b}', '\u{135c}'), ('\u{137d}', '\u{137f}'),
  ('\u{139a}', '\u{139f}'), ('\u{13f6}', '\u{13f7}'),
  ('\u{13fe}', '\u{13ff}'), ('\u{169d}', '\u{169f}'),
  ('\u{16f9}', '\u{16ff}'), ('\u{170d}', '\u{170d}'),
  ('\u{1715}', '\u{171f}'), ('\u{1737}', '\u{173f}'),
  ('\u{1754}', '\u{175f}'), ('\u{176d}', '\u{176d}'),
  ('\u{1771}', '\u{1771}'), ('\u{1774}', '\u{177f}'),
  ('\u{17de}', '\u{17df}'), ('\u{17ea}', '\u{17ef}'),
  ('\u{17fa}', '\u{17ff}'), ('\u{180f}', '\u{180f}'),
  ('\u{181a}', '\u{181f}'), ('\u{1878}', '\u{187f}'),
  ('\u{18ab}', '\u{18af}'), ('\u{18f6}', '\u{18ff}'),
  ('\u{191f}', '\u{191f}'), ('\u{192c}', '\u{192f}'),
  ('\u{193c}', '\u{193f}'), ('\u{1941}', '\u{1943}'),
  ('\u{196e}', '\u{196f}'), ('\u{1975}', '\u{197f}'),
  ('\u{19ac}', '\u{19af}'), ('\u{19ca}', '\u{19cf}'),
  ('\u{19db}', '\u{19dd}'), ('\u{1a1c}', '\u{1a1d}'),
  ('\u{1a5f}', '\u{1a5f}'), ('\u{1a7d}', '\u{1a7e}'),
  ('\u{1a8a}', '\u{1a8f}'), ('\u{1a9a}', '\u{1a9f}'),
  ('\u{1aae}', '\u{1aaf}'), ('\u{1abf}', '\u{1aff}'),
  ('\u{1b4c}', '\u{1b4f}'), ('\u{1b7d}', '\u{1b7f}'),
  ('\u{1bf4}', '\u{1bfb}'), ('\u{1c38}', '\u{1c3a}'),
  ('\u{1c4a}', '\u{1c4c}'), ('\u{1c89}', '\u{1cbf}'),
  ('\u{1cc8}', '\u{1ccf}'), ('\u{1cfa}', '\u{1cff}'),
  ('\u{1dfa}', '\u{1dfa}'), ('\u{1f16}', '\u{1f17}'),
  ('\u{1f1e}', '\u{1f1f}'), ('\u{1f46}', '\u{1f47}'),
  ('\u{1f4e}', '\u{1f4f}'), ('\u{1f58}', '\u{1f58}'),
  ('\u{1f5a}', '\u{1f5a}'), ('\u{1f5c}', '\u{1f5c}'),
  ('\u{1f5e}', '\u{1f5e}'), ('\u{1f7e}', '\u{1f7f}'),
  ('\u{1fb5}', '\u{1fb5}'), ('\u{1fc5}', '\u{1fc5}'),
  ('\u{1fd4}', '\u{1fd5}'), ('\u{1fdc}', '\u{1fdc}'),
  ('\u{1ff0}', '\u{1ff1}'), ('\u{1ff5}', '\u{1ff5}'),
  ('\u{1fff}', '\u{1fff}'), ('\u{2065}', '\u{2065}'),
  ('\u{2072}', '\u{2073}'), ('\u{208f}', '\u{208f}'),
  ('\u{209d}', '\u{209f}'), ('\u{20c0}', '\u{20cf}'),
  ('\u{20f1}', '\u{20ff}'), ('\u{218c}', '\u{218f}'),
  ('\u{2427}', '\u{243f}'), ('\u{244b}', '\u{245f}'),
  ('\u{2b74}', '\u{2b75}'), ('\u{2b96}', '\u{2b97}'),
  ('\u{2bba}', '\u{2bbc}'), ('\u{2bc9}', '\u{2bc9}'),
  ('\u{2bd3}', '\u{2beb}'), ('\u{2bf0}', '\u{2bff}'),
  ('\u{2c2f}', '\u{2c2f}'), ('\u{2c5f}', '\u{2c5f}'),
  ('\u{2cf4}', '\u{2cf8}'), ('\u{2d26}', '\u{2d26}'),
  ('\u{2d28}', '\u{2d2c}'), ('\u{2d2e}', '\u{2d2f}'),
  ('\u{2d68}', '\u{2d6e}'), ('\u{2d71}', '\u{2d7e}'),
  ('\u{2d97}', '\u{2d9f}'), ('\u{2da7}', '\u{2da7}'),
  ('\u{2daf}', '\u{2daf}'), ('\u{2db7}', '\u{2db7}'),
  ('\u{2dbf}', '\u{2dbf}'), ('\u{2dc7}', '\u{2dc7}'),
  ('\u{2dcf}', '\u{2dcf}'), ('\u{2dd7}', '\u{2dd7}'),
  ('\u{2ddf}', '\u{2ddf}'), ('\u{2e4a}', '\u{2e7f}'),
  ('\u{2e9a}', '\u{2e9a}'), ('\u{2ef4}', '\u{2eff}'),
  ('\u{2fd6}', '\u{2fef}'), ('\u{2ffc}', '\u{2fff}'),
  ('\u{3040}', '\u{3040}'), ('\u{3097}', '\u{3098}'),
  ('\u{3100}', '\u{3104}'), ('\u{312f}', '\u{3130}'),
  ('\u{318f}', '\u{318f}'), ('\u{31bb}', '\u{31bf}'),
  ('\u{31e4}', '\u{31ef}'), ('\u{321f}', '\u{321f}'),
  ('\u{32ff}', '\u{32ff}'), ('\u{4db6}', '\u{4dbf}'),
  ('\u{9feb}', '\u{9fff}'), ('\u{a48d}', '\u{a48f}'),
  ('\u{a4c7}', '\u{a4cf}'), ('\u{a62c}', '\u{a63f}'),
  ('\u{a6f8}', '\u{a6ff}'), ('\u{a7af}', '\u{a7af}'),
  ('\u{a7b8}', '\u{a7f6}'), ('\u{a82c}', '\u{a82f}'),
  ('\u{a83a}', '\u{a83f}'), ('\u{a878}', '\u{a87f}'),
  ('\u{a8c6}', '\u{a8cd}'), ('\u{a8da}', '\u{a8df}'),
  ('\u{a8fe}', '\u{a8ff}'), ('\u{a954}', '\u{a95e}'),
  ('\u{a97d}', '\u{a97f}'), ('\u{a9ce}', '\u{a9ce}'),
  ('\u{a9da}', '\u{a9dd}'), ('\u{a9ff}', '\u{a9ff}'),
  ('\u{aa37}', '\u{aa3f}'), ('\u{aa4e}', '\u{aa4f}'),
  ('\u{aa5a}', '\u{aa5b}'), ('\u{aac3}', '\u{aada}'),
  ('\u{aaf7}', '\u{ab00}'), ('\u{ab07}', '\u{ab08}'),
  ('\u{ab0f}', '\u{ab10}'), ('\u{ab17}', '\u{ab1f}'),
  ('\u{ab27}', '\u{ab27}'), ('\u{ab2f}', '\u{ab2f}'),
  ('\u{ab66}', '\u{ab6f}'), ('\u{abee}', '\u{abef}'),
  ('\u{abfa}', '\u{abff}'), ('\u{d7a4}', '\u{d7af}'),
  ('\u{d7c7}', '\u{d7ca}'), ('\u{d7fc}', '\u{d7ff}'),
  ('\u{fa6e}', '\u{fa6f}'), ('\u{fada}', '\u{faff}'),
  ('\u{fb07}', '\u{fb12}'), ('\u{fb18}', '\u{fb1c}'),
  ('\u{fb37}', '\u{fb37}'), ('\u{fb3d}', '\u{fb3d}'),
  ('\u{fb3f}', '\u{fb3f}'), ('\u{fb42}', '\u{fb42}'),
  ('\u{fb45}', '\u{fb45}'), ('\u{fbc2}', '\u{fbd2}'),
  ('\u{fd40}', '\u{fd4f}'), ('\u{fd90}', '\u{fd91}'),
  ('\u{fdc8}', '\u{fdef}'), ('\u{fdfe}', '\u{fdff}'),
  ('\u{fe1a}', '\u{fe1f}'), ('\u{fe53}', '\u{fe53}'),
  ('\u{fe67}', '\u{fe67}'), ('\u{fe6c}', '\u{fe6f}'),
  ('\u{fe75}', '\u{fe75}'), ('\u{fefd}', '\u{fefe}'),
  ('\u{ff00}', '\u{ff00}'), ('\u{ffbf}', '\u{ffc1}'),
  ('\u{ffc8}', '\u{ffc9}'), ('\u{ffd0}', '\u{ffd1}'),
  ('\u{ffd8}', '\u{ffd9}'), ('\u{ffdd}', '\u{ffdf}'),
  ('\u{ffe7}', '\u{ffe7}'), ('\u{ffef}', '\u{fff8}'),
  ('\u{fffe}', '\u{ffff}'), ('\u{1000c}', '\u{1000c}'),
  ('\u{10027}', '\u{10027}'), ('\u{1003b}', '\u{1003b}'),
  ('\u{1003e}', '\u{1003e}'), ('\u{1004e}', '\u{1004f}'),
  ('\u{1005e}', '\u{1007f}'), ('\u{100fb}', '\u{100ff}'),
  ('\u{10103}', '\u{10106}'), ('\u{10134}', '\u{10136}'),
  ('\u{1018f}', '\u{1018f}'), ('\u{1019c}', '\u{1019f}'),
  ('\u{101a1}', '\u{101cf}'), ('\u{101fe}', '\u{1027f}'),
  ('\u{1029d}', '\u{1029f}'), ('\u{102d1}', '\u{102df}'),
  ('\u{102fc}', '\u{102ff}'), ('\u{10324}', '\u{1032c}'),
  ('\u{1034b}', '\u{1034f}'), ('\u{1037b}', '\u{1037f}'),
  ('\u{1039e}', '\u{1039e}'), ('\u{103c4}', '\u{103c7}'),
  ('\u{103d6}', '\u{103ff}'), ('\u{1049e}', '\u{1049f}'),
  ('\u{104aa}', '\u{104af}'), ('\u{104d4}', '\u{104d7}'),
  ('\u{104fc}', '\u{104ff}'), ('\u{10528}', '\u{1052f}'),
  ('\u{10564}', '\u{1056e}'), ('\u{10570}', '\u{105ff}'),
  ('\u{10737}', '\u{1073f}'), ('\u{10756}', '\u{1075f}'),
  ('\u{10768}', '\u{107ff}'), ('\u{10806}', '\u{10807}'),
  ('\u{10809}', '\u{10809}'), ('\u{10836}', '\u{10836}'),
  ('\u{10839}', '\u{1083b}'), ('\u{1083d}', '\u{1083e}'),
  ('\u{10856}', '\u{10856}'), ('\u{1089f}', '\u{108a6}'),
  ('\u{108b0}', '\u{108df}'), ('\u{108f3}', '\u{108f3}'),
  ('\u{108f6}', '\u{108fa}'), ('\u{1091c}', '\u{1091e}'),
  ('\u{1093a}', '\u{1093e}'), ('\u{10940}', '\u{1097f}'),
  ('\u{109b8}', '\u{109bb}'), ('\u{109d0}', '\u{109d1}'),
  ('\u{10a04}', '\u{10a04}'), ('\u{10a07}', '\u{10a0b}'),
  ('\u{10a14}', '\u{10a14}'), ('\u{10a18}', '\u{10a18}'),
  ('\u{10a34}', '\u{10a37}'), ('\u{10a3b}', '\u{10a3e}'),
  ('\u{10a48}', '\u{10a4f}'), ('\u{10a59}', '\u{10a5f}'),
  ('\u{10aa0}', '\u{10abf}'), ('\u{10ae7}', '\u{10aea}'),
  ('\u{10af7}', '\u{10aff}'), ('\u{10b36}', '\u{10b38}'),
  ('\u{10b56}', '\u{10b57}'), ('\u{10b73}', '\u{10b77}'),
  ('\u{10b92}', '\u{10b98}'), ('\u{10b9d}', '\u{10ba8}'),
  ('\u{10bb0}', '\u{10bff}'), ('\u{10c49}', '\u{10c7f}'),
  ('\u{10cb3}', '\u{10cbf}'), ('\u{10cf3}', '\u{10cf9}'),
  ('\u{10d00}', '\u{10e5f}'), ('\u{10e7f}', '\u{10fff}'),
  ('\u{1104e}', '\u{11051}'), ('\u{11070}', '\u{1107e}'),
  ('\u{110c2}', '\u{110cf}'), ('\u{110e9}', '\u{110ef}'),
  ('\u{110fa}', '\u{110ff}'), ('\u{11135}', '\u{11135}'),
  ('\u{11144}', '\u{1114f}'), ('\u{11177}', '\u{1117f}'),
  ('\u{111ce}', '\u{111cf}'), ('\u{111e0}', '\u{111e0}'),
  ('\u{111f5}', '\u{111ff}'), ('\u{11212}', '\u{11212}'),
  ('\u{1123f}', '\u{1127f}'), ('\u{11287}', '\u{11287}'),
  ('\u{11289}', '\u{11289}'), ('\u{1128e}', '\u{1128e}'),
  ('\u{1129e}', '\u{1129e}'), ('\u{112aa}', '\u{112af}'),
  ('\u{112eb}', '\u{112ef}'), ('\u{112fa}', '\u{112ff}'),
  ('\u{11304}', '\u{11304}'), ('\u{1130d}', '\u{1130e}'),
  ('\u{11311}', '\u{11312}'), ('\u{11329}', '\u{11329}'),
  ('\u{11331}', '\u{11331}'), ('\u{11334}', '\u{11334}'),
  ('\u{1133a}', '\u{1133b}'), ('\u{11345}', '\u{11346}'),
  ('\u{11349}', '\u{1134a}'), ('\u{1134e}', '\u{1134f}'),
  ('\u{11351}', '\u{11356}'), ('\u{11358}', '\u{1135c}'),
  ('\u{11364}', '\u{11365}'), ('\u{1136d}', '\u{1136f}'),
  ('\u{11375}', '\u{113ff}'), ('\u{1145a}', '\u{1145a}'),
  ('\u{1145c}', '\u{1145c}'), ('\u{1145e}', '\u{1147f}'),
  ('\u{114c8}', '\u{114cf}'), ('\u{114da}', '\u{1157f}'),
  ('\u{115b6}', '\u{115b7}'), ('\u{115de}', '\u{115ff}'),
  ('\u{11645}', '\u{1164f}'), ('\u{1165a}', '\u{1165f}'),
  ('\u{1166d}', '\u{1167f}'), ('\u{116b8}', '\u{116bf}'),
  ('\u{116ca}', '\u{116ff}'), ('\u{1171a}', '\u{1171c}'),
  ('\u{1172c}', '\u{1172f}'), ('\u{11740}', '\u{1189f}'),
  ('\u{118f3}', '\u{118fe}'), ('\u{11900}', '\u{119ff}'),
  ('\u{11a48}', '\u{11a4f}'), ('\u{11a84}', '\u{11a85}'),
  ('\u{11a9d}', '\u{11a9d}'), ('\u{11aa3}', '\u{11abf}'),
  ('\u{11af9}', '\u{11bff}'), ('\u{11c09}', '\u{11c09}'),
  ('\u{11c37}', '\u{11c37}'), ('\u{11c46}', '\u{11c4f}'),
  ('\u{11c6d}', '\u{11c6f}'), ('\u{11c90}', '\u{11c91}'),
  ('\u{11ca8}', '\u{11ca8}'), ('\u{11cb7}', '\u{11cff}'),
  ('\u{11d07}', '\u{11d07}'), ('\u{11d0a}', '\u{11d0a}'),
  ('\u{11d37}', '\u{11d39}'), ('\u{11d3b}', '\u{11d3b}'),
  ('\u{11d3e}', '\u{11d3e}'), ('\u{11d48}', '\u{11d4f}'),
  ('\u{11d5a}', '\u{11fff}'), ('\u{1239a}', '\u{123ff}'),
  ('\u{1246f}', '\u{1246f}'), ('\u{12475}', '\u{1247f}'),
  ('\u{12544}', '\u{12fff}'), ('\u{1342f}', '\u{143ff}'),
  ('\u{14647}', '\u{167ff}'), ('\u{16a39}', '\u{16a3f}'),
  ('\u{16a5f}', '\u{16a5f}'), ('\u{16a6a}', '\u{16a6d}'),
  ('\u{16a70}', '\u{16acf}'), ('\u{16aee}', '\u{16aef}'),
  ('\u{16af6}', '\u{16aff}'), ('\u{16b46}', '\u{16b4f}'),
  ('\u{16b5a}', '\u{16b5a}'), ('\u{16b62}', '\u{16b62}'),
  ('\u{16b78}', '\u{16b7c}'), ('\u{16b90}', '\u{16eff}'),
  ('\u{16f45}', '\u{16f4f}'), ('\u{16f7f}', '\u{16f8e}'),
  ('\u{16fa0}', '\u{16fdf}'), ('\u{16fe2}', '\u{16fff}'),
  ('\u{187ed}', '\u{187ff}'), ('\u{18af3}', '\u{1afff}'),
  ('\u{1b11f}', '\u{1b16f}'), ('\u{1b2fc}', '\u{1bbff}'),
  ('\u{1bc6b}', '\u{1bc6f}'), ('\u{1bc7d}', '\u{1bc7f}'),
  ('\u{1bc89}', '\u{1bc8f}'), ('\u{1bc9a}', '\u{1bc9b}'),
  ('\u{1bca4}', '\u{1cfff}'), ('\u{1d0f6}', '\u{1d0ff}'),
  ('\u{1d127}', '\u{1d128}'), ('\u{1d1e9}', '\u{1d1ff}'),
  ('\u{1d246}', '\u{1d2ff}'), ('\u{1d357}', '\u{1d35f}'),
  ('\u{1d372}', '\u{1d3ff}'), ('\u{1d455}', '\u{1d455}'),
  ('\u{1d49d}', '\u{1d49d}'), ('\u{1d4a0}', '\u{1d4a1}'),
  ('\u{1d4a3}', '\u{1d4a4}'), ('\u{1d4a7}', '\u{1d4a8}'),
  ('\u{1d4ad}', '\u{1d4ad}'), ('\u{1d4ba}', '\u{1d4ba}'),
  ('\u{1d4bc}', '\u{1d4bc}'), ('\u{1d4c4}', '\u{1d4c4}'),
  ('\u{1d506}', '\u{1d506}'), ('\u{1d50b}', '\u{1d50c}'),
  ('\u{1d515}', '\u{1d515}'), ('\u{1d51d}', '\u{1d51d}'),
  ('\u{1d53a}', '\u{1d53a}'), ('\u{1d53f}', '\u{1d53f}'),
  ('\u{1d545}', '\u{1d545}'), ('\u{1d547}', '\u{1d549}'),
  ('\u{1d551}', '\u{1d551}'), ('\u{1d6a6}', '\u{1d6a7}'),
  ('\u{1d7cc}', '\u{1d7cd}'), ('\u{1da8c}', '\u{1da9a}'),
  ('\u{1daa0}', '\u{1daa0}'), ('\u{1dab0}', '\u{1dfff}'),
  ('\u{1e007}', '\u{1e007}'), ('\u{1e019}', '\u{1e01a}'),
  ('\u{1e022}', '\u{1e022}'), ('\u{1e025}', '\u{1e025}'),
  ('\u{1e02b}', '\u{1e7ff}'), ('\u{1e8c5}', '\u{1e8c6}'),
  ('\u{1e8d7}', '\u{1e8ff}'), ('\u{1e94b}', '\u{1e94f}'),
  ('\u{1e95a}', '\u{1e95d}'), ('\u{1e960}', '\u{1edff}'),
  ('\u{1ee04}', '\u{1ee04}'), ('\u{1ee20}', '\u{1ee20}'),
  ('\u{1ee23}', '\u{1ee23}'), ('\u{1ee25}', '\u{1ee26}'),
  ('\u{1ee28}', '\u{1ee28}'), ('\u{1ee33}', '\u{1ee33}'),
  ('\u{1ee38}', '\u{1ee38}'), ('\u{1ee3a}', '\u{1ee3a}'),
  ('\u{1ee3c}', '\u{1ee41}'), ('\u{1ee43}', '\u{1ee46}'),
  ('\u{1ee48}', '\u{1ee48}'), ('\u{1ee4a}', '\u{1ee4a}'),
  ('\u{1ee4c}', '\u{1ee4c}'), ('\u{1ee50}', '\u{1ee50}'),
  ('\u{1ee53}', '\u{1ee53}'), ('\u{1ee55}', '\u{1ee56}'),
  ('\u{1ee58}', '\u{1ee58}'), ('\u{1ee5a}', '\u{1ee5a}'),
  ('\u{1ee5c}', '\u{1ee5c}'), ('\u{1ee5e}', '\u{1ee5e}'),
  ('\u{1ee60}', '\u{1ee60}'), ('\u{1ee63}', '\u{1ee63}'),
  ('\u{1ee65}', '\u{1ee66}'), ('\u{1ee6b}', '\u{1ee6b}'),
  ('\u{1ee73}', '\u{1ee73}'), ('\u{1ee78}', '\u{1ee78}'),
  ('\u{1ee7d}', '\u{1ee7d}'), ('\u{1ee7f}', '\u{1ee7f}'),
  ('\u{1ee8a}', '\u{1ee8a}'), ('\u{1ee9c}', '\u{1eea0}'),
  ('\u{1eea4}', '\u{1eea4}'), ('\u{1eeaa}', '\u{1eeaa}'),
  ('\u{1eebc}', '\u{1eeef}'), ('\u{1eef2}', '\u{1efff}'),
  ('\u{1f02c}', '\u{1f02f}'), ('\u{1f094}', '\u{1f09f}'),
  ('\u{1f0af}', '\u{1f0b0}'), ('\u{1f0c0}', '\u{1f0c0}'),
  ('\u{1f0d0}', '\u{1f0d0}'), ('\u{1f0f6}', '\u{1f0ff}'),
  ('\u{1f10d}', '\u{1f10f}'), ('\u{1f12f}', '\u{1f12f}'),
  ('\u{1f16c}', '\u{1f16f}'), ('\u{1f1ad}', '\u{1f1e5}'),
  ('\u{1f203}', '\u{1f20f}'), ('\u{1f23c}', '\u{1f23f}'),
  ('\u{1f249}', '\u{1f24f}'), ('\u{1f252}', '\u{1f25f}'),
  ('\u{1f266}', '\u{1f2ff}'), ('\u{1f6d5}', '\u{1f6df}'),
  ('\u{1f6ed}', '\u{1f6ef}'), ('\u{1f6f9}', '\u{1f6ff}'),
  ('\u{1f774}', '\u{1f77f}'), ('\u{1f7d5}', '\u{1f7ff}'),
  ('\u{1f80c}', '\u{1f80f}'), ('\u{1f848}', '\u{1f84f}'),
  ('\u{1f85a}', '\u{1f85f}'), ('\u{1f888}', '\u{1f88f}'),
  ('\u{1f8ae}', '\u{1f8ff}'), ('\u{1f90c}', '\u{1f90f}'),
  ('\u{1f93f}', '\u{1f93f}'), ('\u{1f94d}', '\u{1f94f}'),
  ('\u{1f96c}', '\u{1f97f}'), ('\u{1f998}', '\u{1f9bf}'),
  ('\u{1f9c1}', '\u{1f9cf}'), ('\u{1f9e7}', '\u{1ffff}'),
  ('\u{2a6d7}', '\u{2a6ff}'), ('\u{2b735}', '\u{2b73f}'),
  ('\u{2b81e}', '\u{2b81f}'), ('\u{2cea2}', '\u{2ceaf}'),
  ('\u{2ebe1}', '\u{2f7ff}'), ('\u{2fa1e}', '\u{e0000}'),
  ('\u{e0002}', '\u{e001f}'), ('\u{e0080}', '\u{e00ff}'),
  ('\u{e01f0}', '\u{effff}'), ('\u{ffffe}', '\u{fffff}'),
  ('\u{10fffe}', '\u{10ffff}'),
];

pub const UPPERCASE_LETTER: &'static [(char, char)] = &[
  ('A', 'Z'), ('À', 'Ö'), ('Ø', 'Þ'), ('Ā', 'Ā'), ('Ă', 'Ă'),
  ('Ą', 'Ą'), ('Ć', 'Ć'), ('Ĉ', 'Ĉ'), ('Ċ', 'Ċ'), ('Č', 'Č'),
  ('Ď', 'Ď'), ('Đ', 'Đ'), ('Ē', 'Ē'), ('Ĕ', 'Ĕ'), ('Ė', 'Ė'),
  ('Ę', 'Ę'), ('Ě', 'Ě'), ('Ĝ', 'Ĝ'), ('Ğ', 'Ğ'), ('Ġ', 'Ġ'),
  ('Ģ', 'Ģ'), ('Ĥ', 'Ĥ'), ('Ħ', 'Ħ'), ('Ĩ', 'Ĩ'), ('Ī', 'Ī'),
  ('Ĭ', 'Ĭ'), ('Į', 'Į'), ('İ', 'İ'), ('IJ', 'IJ'), ('Ĵ', 'Ĵ'),
  ('Ķ', 'Ķ'), ('Ĺ', 'Ĺ'), ('Ļ', 'Ļ'), ('Ľ', 'Ľ'), ('Ŀ', 'Ŀ'),
  ('Ł', 'Ł'), ('Ń', 'Ń'), ('Ņ', 'Ņ'), ('Ň', 'Ň'), ('Ŋ', 'Ŋ'),
  ('Ō', 'Ō'), ('Ŏ', 'Ŏ'), ('Ő', 'Ő'), ('Œ', 'Œ'), ('Ŕ', 'Ŕ'),
  ('Ŗ', 'Ŗ'), ('Ř', 'Ř'), ('Ś', 'Ś'), ('Ŝ', 'Ŝ'), ('Ş', 'Ş'),
  ('Š', 'Š'), ('Ţ', 'Ţ'), ('Ť', 'Ť'), ('Ŧ', 'Ŧ'), ('Ũ', 'Ũ'),
  ('Ū', 'Ū'), ('Ŭ', 'Ŭ'), ('Ů', 'Ů'), ('Ű', 'Ű'), ('Ų', 'Ų'),
  ('Ŵ', 'Ŵ'), ('Ŷ', 'Ŷ'), ('Ÿ', 'Ź'), ('Ż', 'Ż'), ('Ž', 'Ž'),
  ('Ɓ', 'Ƃ'), ('Ƅ', 'Ƅ'), ('Ɔ', 'Ƈ'), ('Ɖ', 'Ƌ'), ('Ǝ', 'Ƒ'),
  ('Ɠ', 'Ɣ'), ('Ɩ', 'Ƙ'), ('Ɯ', 'Ɲ'), ('Ɵ', 'Ơ'), ('Ƣ', 'Ƣ'),
  ('Ƥ', 'Ƥ'), ('Ʀ', 'Ƨ'), ('Ʃ', 'Ʃ'), ('Ƭ', 'Ƭ'), ('Ʈ', 'Ư'),
  ('Ʊ', 'Ƴ'), ('Ƶ', 'Ƶ'), ('Ʒ', 'Ƹ'), ('Ƽ', 'Ƽ'), ('DŽ', 'DŽ'),
  ('LJ', 'LJ'), ('NJ', 'NJ'), ('Ǎ', 'Ǎ'), ('Ǐ', 'Ǐ'), ('Ǒ', 'Ǒ'),
  ('Ǔ', 'Ǔ'), ('Ǖ', 'Ǖ'), ('Ǘ', 'Ǘ'), ('Ǚ', 'Ǚ'), ('Ǜ', 'Ǜ'),
  ('Ǟ', 'Ǟ'), ('Ǡ', 'Ǡ'), ('Ǣ', 'Ǣ'), ('Ǥ', 'Ǥ'), ('Ǧ', 'Ǧ'),
  ('Ǩ', 'Ǩ'), ('Ǫ', 'Ǫ'), ('Ǭ', 'Ǭ'), ('Ǯ', 'Ǯ'), ('DZ', 'DZ'),
  ('Ǵ', 'Ǵ'), ('Ƕ', 'Ǹ'), ('Ǻ', 'Ǻ'), ('Ǽ', 'Ǽ'), ('Ǿ', 'Ǿ'),
  ('Ȁ', 'Ȁ'), ('Ȃ', 'Ȃ'), ('Ȅ', 'Ȅ'), ('Ȇ', 'Ȇ'), ('Ȉ', 'Ȉ'),
  ('Ȋ', 'Ȋ'), ('Ȍ', 'Ȍ'), ('Ȏ', 'Ȏ'), ('Ȑ', 'Ȑ'), ('Ȓ', 'Ȓ'),
  ('Ȕ', 'Ȕ'), ('Ȗ', 'Ȗ'), ('Ș', 'Ș'), ('Ț', 'Ț'), ('Ȝ', 'Ȝ'),
  ('Ȟ', 'Ȟ'), ('Ƞ', 'Ƞ'), ('Ȣ', 'Ȣ'), ('Ȥ', 'Ȥ'), ('Ȧ', 'Ȧ'),
  ('Ȩ', 'Ȩ'), ('Ȫ', 'Ȫ'), ('Ȭ', 'Ȭ'), ('Ȯ', 'Ȯ'), ('Ȱ', 'Ȱ'),
  ('Ȳ', 'Ȳ'), ('Ⱥ', 'Ȼ'), ('Ƚ', 'Ⱦ'), ('Ɂ', 'Ɂ'), ('Ƀ', 'Ɇ'),
  ('Ɉ', 'Ɉ'), ('Ɋ', 'Ɋ'), ('Ɍ', 'Ɍ'), ('Ɏ', 'Ɏ'), ('Ͱ', 'Ͱ'),
  ('Ͳ', 'Ͳ'), ('Ͷ', 'Ͷ'), ('Ϳ', 'Ϳ'), ('Ά', 'Ά'), ('Έ', 'Ί'),
  ('Ό', 'Ό'), ('Ύ', 'Ώ'), ('Α', 'Ρ'), ('Σ', 'Ϋ'), ('Ϗ', 'Ϗ'),
  ('ϒ', 'ϔ'), ('Ϙ', 'Ϙ'), ('Ϛ', 'Ϛ'), ('Ϝ', 'Ϝ'), ('Ϟ', 'Ϟ'),
  ('Ϡ', 'Ϡ'), ('Ϣ', 'Ϣ'), ('Ϥ', 'Ϥ'), ('Ϧ', 'Ϧ'), ('Ϩ', 'Ϩ'),
  ('Ϫ', 'Ϫ'), ('Ϭ', 'Ϭ'), ('Ϯ', 'Ϯ'), ('ϴ', 'ϴ'), ('Ϸ', 'Ϸ'),
  ('Ϲ', 'Ϻ'), ('Ͻ', 'Я'), ('Ѡ', 'Ѡ'), ('Ѣ', 'Ѣ'), ('Ѥ', 'Ѥ'),
  ('Ѧ', 'Ѧ'), ('Ѩ', 'Ѩ'), ('Ѫ', 'Ѫ'), ('Ѭ', 'Ѭ'), ('Ѯ', 'Ѯ'),
  ('Ѱ', 'Ѱ'), ('Ѳ', 'Ѳ'), ('Ѵ', 'Ѵ'), ('Ѷ', 'Ѷ'), ('Ѹ', 'Ѹ'),
  ('Ѻ', 'Ѻ'), ('Ѽ', 'Ѽ'), ('Ѿ', 'Ѿ'), ('Ҁ', 'Ҁ'), ('Ҋ', 'Ҋ'),
  ('Ҍ', 'Ҍ'), ('Ҏ', 'Ҏ'), ('Ґ', 'Ґ'), ('Ғ', 'Ғ'), ('Ҕ', 'Ҕ'),
  ('Җ', 'Җ'), ('Ҙ', 'Ҙ'), ('Қ', 'Қ'), ('Ҝ', 'Ҝ'), ('Ҟ', 'Ҟ'),
  ('Ҡ', 'Ҡ'), ('Ң', 'Ң'), ('Ҥ', 'Ҥ'), ('Ҧ', 'Ҧ'), ('Ҩ', 'Ҩ'),
  ('Ҫ', 'Ҫ'), ('Ҭ', 'Ҭ'), ('Ү', 'Ү'), ('Ұ', 'Ұ'), ('Ҳ', 'Ҳ'),
  ('Ҵ', 'Ҵ'), ('Ҷ', 'Ҷ'), ('Ҹ', 'Ҹ'), ('Һ', 'Һ'), ('Ҽ', 'Ҽ'),
  ('Ҿ', 'Ҿ'), ('Ӏ', 'Ӂ'), ('Ӄ', 'Ӄ'), ('Ӆ', 'Ӆ'), ('Ӈ', 'Ӈ'),
  ('Ӊ', 'Ӊ'), ('Ӌ', 'Ӌ'), ('Ӎ', 'Ӎ'), ('Ӑ', 'Ӑ'), ('Ӓ', 'Ӓ'),
  ('Ӕ', 'Ӕ'), ('Ӗ', 'Ӗ'), ('Ә', 'Ә'), ('Ӛ', 'Ӛ'), ('Ӝ', 'Ӝ'),
  ('Ӟ', 'Ӟ'), ('Ӡ', 'Ӡ'), ('Ӣ', 'Ӣ'), ('Ӥ', 'Ӥ'), ('Ӧ', 'Ӧ'),
  ('Ө', 'Ө'), ('Ӫ', 'Ӫ'), ('Ӭ', 'Ӭ'), ('Ӯ', 'Ӯ'), ('Ӱ', 'Ӱ'),
  ('Ӳ', 'Ӳ'), ('Ӵ', 'Ӵ'), ('Ӷ', 'Ӷ'), ('Ӹ', 'Ӹ'), ('Ӻ', 'Ӻ'),
  ('Ӽ', 'Ӽ'), ('Ӿ', 'Ӿ'), ('Ԁ', 'Ԁ'), ('Ԃ', 'Ԃ'), ('Ԅ', 'Ԅ'),
  ('Ԇ', 'Ԇ'), ('Ԉ', 'Ԉ'), ('Ԋ', 'Ԋ'), ('Ԍ', 'Ԍ'), ('Ԏ', 'Ԏ'),
  ('Ԑ', 'Ԑ'), ('Ԓ', 'Ԓ'), ('Ԕ', 'Ԕ'), ('Ԗ', 'Ԗ'), ('Ԙ', 'Ԙ'),
  ('Ԛ', 'Ԛ'), ('Ԝ', 'Ԝ'), ('Ԟ', 'Ԟ'), ('Ԡ', 'Ԡ'), ('Ԣ', 'Ԣ'),
  ('Ԥ', 'Ԥ'), ('Ԧ', 'Ԧ'), ('Ԩ', 'Ԩ'), ('Ԫ', 'Ԫ'), ('Ԭ', 'Ԭ'),
  ('Ԯ', 'Ԯ'), ('Ա', 'Ֆ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', 'Ἷ'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('𐐀', '𐐧'), ('𐒰', '𐓓'), ('𐲀', '𐲲'), ('𑢠', '𑢿'),
  ('𝐀', '𝐙'), ('𝐴', '𝑍'), ('𝑨', '𝒁'), ('𝒜', '𝒜'),
  ('𝒞', '𝒟'), ('𝒢', '𝒢'), ('𝒥', '𝒦'), ('𝒩', '𝒬'),
  ('𝒮', '𝒵'), ('𝓐', '𝓩'), ('𝔄', '𝔅'), ('𝔇', '𝔊'),
  ('𝔍', '𝔔'), ('𝔖', '𝔜'), ('𝔸', '𝔹'), ('𝔻', '𝔾'),
  ('𝕀', '𝕄'), ('𝕆', '𝕆'), ('𝕊', '𝕐'), ('𝕬', '𝖅'),
  ('𝖠', '𝖹'), ('𝗔', '𝗭'), ('𝘈', '𝘡'), ('𝘼', '𝙕'),
  ('𝙰', '𝚉'), ('𝚨', '𝛀'), ('𝛢', '𝛺'), ('𝜜', '𝜴'),
  ('𝝖', '𝝮'), ('𝞐', '𝞨'), ('𝟊', '𝟊'), ('𞤀', '𞤡'),
];