regex-syntax 0.6.6

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
// DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY:
//
//  ucd-generate sentence-break /home/andrew/tmp/ucd-11.0.0/ --chars
//
// ucd-generate is available on crates.io.

pub const BY_NAME: &'static [(&'static str, &'static [(char, char)])] = &[
  ("ATerm", ATERM), ("CR", CR), ("Close", CLOSE), ("Extend", EXTEND),
  ("Format", FORMAT), ("LF", LF), ("Lower", LOWER), ("Numeric", NUMERIC),
  ("OLetter", OLETTER), ("SContinue", SCONTINUE), ("STerm", STERM),
  ("Sep", SEP), ("Sp", SP), ("Upper", UPPER),
];

pub const ATERM: &'static [(char, char)] = &[
  ('.', '.'), ('', ''), ('', ''), ('', ''),
];

pub const CR: &'static [(char, char)] = &[
  ('\r', '\r'),
];

pub const CLOSE: &'static [(char, char)] = &[
  ('\"', '\"'), ('\'', ')'), ('[', '['), (']', ']'), ('{', '{'), ('}', '}'),
  ('«', '«'), ('»', '»'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', '﴿'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('🙶', '🙸'),
];

pub const EXTEND: &'static [(char, char)] = &[
  ('\u{300}', '\u{36f}'), ('\u{483}', '\u{489}'), ('\u{591}', '\u{5bd}'),
  ('\u{5bf}', '\u{5bf}'), ('\u{5c1}', '\u{5c2}'), ('\u{5c4}', '\u{5c5}'),
  ('\u{5c7}', '\u{5c7}'), ('\u{610}', '\u{61a}'), ('\u{64b}', '\u{65f}'),
  ('\u{670}', '\u{670}'), ('\u{6d6}', '\u{6dc}'), ('\u{6df}', '\u{6e4}'),
  ('\u{6e7}', '\u{6e8}'), ('\u{6ea}', '\u{6ed}'), ('\u{711}', '\u{711}'),
  ('\u{730}', '\u{74a}'), ('\u{7a6}', '\u{7b0}'), ('\u{7eb}', '\u{7f3}'),
  ('\u{7fd}', '\u{7fd}'), ('\u{816}', '\u{819}'), ('\u{81b}', '\u{823}'),
  ('\u{825}', '\u{827}'), ('\u{829}', '\u{82d}'), ('\u{859}', '\u{85b}'),
  ('\u{8d3}', '\u{8e1}'), ('\u{8e3}', ''), ('\u{93a}', '\u{93c}'),
  ('', ''), ('\u{951}', '\u{957}'), ('\u{962}', '\u{963}'),
  ('\u{981}', ''), ('\u{9bc}', '\u{9bc}'), ('\u{9be}', '\u{9c4}'),
  ('', ''), ('', '\u{9cd}'), ('\u{9d7}', '\u{9d7}'),
  ('\u{9e2}', '\u{9e3}'), ('\u{9fe}', '\u{9fe}'), ('\u{a01}', ''),
  ('\u{a3c}', '\u{a3c}'), ('', '\u{a42}'), ('\u{a47}', '\u{a48}'),
  ('\u{a4b}', '\u{a4d}'), ('\u{a51}', '\u{a51}'), ('\u{a70}', '\u{a71}'),
  ('\u{a75}', '\u{a75}'), ('\u{a81}', ''), ('\u{abc}', '\u{abc}'),
  ('', '\u{ac5}'), ('\u{ac7}', ''), ('', '\u{acd}'),
  ('\u{ae2}', '\u{ae3}'), ('\u{afa}', '\u{aff}'), ('\u{b01}', ''),
  ('\u{b3c}', '\u{b3c}'), ('\u{b3e}', '\u{b44}'), ('', ''),
  ('', '\u{b4d}'), ('\u{b56}', '\u{b57}'), ('\u{b62}', '\u{b63}'),
  ('\u{b82}', '\u{b82}'), ('\u{bbe}', ''), ('', ''),
  ('', '\u{bcd}'), ('\u{bd7}', '\u{bd7}'), ('\u{c00}', '\u{c04}'),
  ('\u{c3e}', ''), ('\u{c46}', '\u{c48}'), ('\u{c4a}', '\u{c4d}'),
  ('\u{c55}', '\u{c56}'), ('\u{c62}', '\u{c63}'), ('\u{c81}', ''),
  ('\u{cbc}', '\u{cbc}'), ('', ''), ('\u{cc6}', ''),
  ('', '\u{ccd}'), ('\u{cd5}', '\u{cd6}'), ('\u{ce2}', '\u{ce3}'),
  ('\u{d00}', ''), ('\u{d3b}', '\u{d3c}'), ('\u{d3e}', '\u{d44}'),
  ('', ''), ('', '\u{d4d}'), ('\u{d57}', '\u{d57}'),
  ('\u{d62}', '\u{d63}'), ('', ''), ('\u{dca}', '\u{dca}'),
  ('\u{dcf}', '\u{dd4}'), ('\u{dd6}', '\u{dd6}'), ('', '\u{ddf}'),
  ('', ''), ('\u{e31}', '\u{e31}'), ('\u{e34}', '\u{e3a}'),
  ('\u{e47}', '\u{e4e}'), ('\u{eb1}', '\u{eb1}'), ('\u{eb4}', '\u{eb9}'),
  ('\u{ebb}', '\u{ebc}'), ('\u{ec8}', '\u{ecd}'), ('\u{f18}', '\u{f19}'),
  ('\u{f35}', '\u{f35}'), ('\u{f37}', '\u{f37}'), ('\u{f39}', '\u{f39}'),
  ('', '༿'), ('\u{f71}', '\u{f84}'), ('\u{f86}', '\u{f87}'),
  ('\u{f8d}', '\u{f97}'), ('\u{f99}', '\u{fbc}'), ('\u{fc6}', '\u{fc6}'),
  ('', '\u{103e}'), ('', '\u{1059}'), ('\u{105e}', '\u{1060}'),
  ('', ''), ('', ''), ('\u{1071}', '\u{1074}'),
  ('\u{1082}', '\u{108d}'), ('', ''), ('', '\u{109d}'),
  ('\u{135d}', '\u{135f}'), ('\u{1712}', '\u{1714}'),
  ('\u{1732}', '\u{1734}'), ('\u{1752}', '\u{1753}'),
  ('\u{1772}', '\u{1773}'), ('\u{17b4}', '\u{17d3}'),
  ('\u{17dd}', '\u{17dd}'), ('\u{180b}', '\u{180d}'),
  ('\u{1885}', '\u{1886}'), ('\u{18a9}', '\u{18a9}'), ('\u{1920}', ''),
  ('', '\u{193b}'), ('\u{1a17}', '\u{1a1b}'), ('', '\u{1a5e}'),
  ('\u{1a60}', '\u{1a7c}'), ('\u{1a7f}', '\u{1a7f}'),
  ('\u{1ab0}', '\u{1abe}'), ('\u{1b00}', ''), ('\u{1b34}', ''),
  ('\u{1b6b}', '\u{1b73}'), ('\u{1b80}', ''), ('', '\u{1bad}'),
  ('\u{1be6}', ''), ('', '\u{1c37}'), ('\u{1cd0}', '\u{1cd2}'),
  ('\u{1cd4}', '\u{1ce8}'), ('\u{1ced}', '\u{1ced}'), ('', '\u{1cf4}'),
  ('', '\u{1cf9}'), ('\u{1dc0}', '\u{1df9}'), ('\u{1dfb}', '\u{1dff}'),
  ('\u{200c}', '\u{200d}'), ('\u{20d0}', '\u{20f0}'),
  ('\u{2cef}', '\u{2cf1}'), ('\u{2d7f}', '\u{2d7f}'),
  ('\u{2de0}', '\u{2dff}'), ('\u{302a}', '\u{302f}'),
  ('\u{3099}', '\u{309a}'), ('\u{a66f}', '\u{a672}'),
  ('\u{a674}', '\u{a67d}'), ('\u{a69e}', '\u{a69f}'),
  ('\u{a6f0}', '\u{a6f1}'), ('\u{a802}', '\u{a802}'),
  ('\u{a806}', '\u{a806}'), ('\u{a80b}', '\u{a80b}'), ('', ''),
  ('', ''), ('', '\u{a8c5}'), ('\u{a8e0}', '\u{a8f1}'),
  ('\u{a8ff}', '\u{a8ff}'), ('\u{a926}', '\u{a92d}'), ('\u{a947}', ''),
  ('\u{a980}', ''), ('\u{a9b3}', ''), ('\u{a9e5}', '\u{a9e5}'),
  ('\u{aa29}', '\u{aa36}'), ('\u{aa43}', '\u{aa43}'), ('\u{aa4c}', ''),
  ('', ''), ('\u{aab0}', '\u{aab0}'), ('\u{aab2}', '\u{aab4}'),
  ('\u{aab7}', '\u{aab8}'), ('\u{aabe}', '\u{aabf}'),
  ('\u{aac1}', '\u{aac1}'), ('', ''), ('', '\u{aaf6}'),
  ('', ''), ('', '\u{abed}'), ('\u{fb1e}', '\u{fb1e}'),
  ('\u{fe00}', '\u{fe0f}'), ('\u{fe20}', '\u{fe2f}'),
  ('\u{ff9e}', '\u{ff9f}'), ('\u{101fd}', '\u{101fd}'),
  ('\u{102e0}', '\u{102e0}'), ('\u{10376}', '\u{1037a}'),
  ('\u{10a01}', '\u{10a03}'), ('\u{10a05}', '\u{10a06}'),
  ('\u{10a0c}', '\u{10a0f}'), ('\u{10a38}', '\u{10a3a}'),
  ('\u{10a3f}', '\u{10a3f}'), ('\u{10ae5}', '\u{10ae6}'),
  ('\u{10d24}', '\u{10d27}'), ('\u{10f46}', '\u{10f50}'), ('𑀀', '𑀂'),
  ('\u{11038}', '\u{11046}'), ('\u{1107f}', '𑂂'), ('𑂰', '\u{110ba}'),
  ('\u{11100}', '\u{11102}'), ('\u{11127}', '\u{11134}'), ('𑅅', '𑅆'),
  ('\u{11173}', '\u{11173}'), ('\u{11180}', '𑆂'), ('𑆳', '𑇀'),
  ('\u{111c9}', '\u{111cc}'), ('𑈬', '\u{11237}'),
  ('\u{1123e}', '\u{1123e}'), ('\u{112df}', '\u{112ea}'),
  ('\u{11300}', '𑌃'), ('\u{1133b}', '\u{1133c}'), ('\u{1133e}', '𑍄'),
  ('𑍇', '𑍈'), ('𑍋', '𑍍'), ('\u{11357}', '\u{11357}'),
  ('𑍢', '𑍣'), ('\u{11366}', '\u{1136c}'), ('\u{11370}', '\u{11374}'),
  ('𑐵', '\u{11446}'), ('\u{1145e}', '\u{1145e}'),
  ('\u{114b0}', '\u{114c3}'), ('\u{115af}', '\u{115b5}'),
  ('𑖸', '\u{115c0}'), ('\u{115dc}', '\u{115dd}'), ('𑘰', '\u{11640}'),
  ('\u{116ab}', '\u{116b7}'), ('\u{1171d}', '\u{1172b}'),
  ('𑠬', '\u{1183a}'), ('\u{11a01}', '\u{11a0a}'), ('\u{11a33}', '𑨹'),
  ('\u{11a3b}', '\u{11a3e}'), ('\u{11a47}', '\u{11a47}'),
  ('\u{11a51}', '\u{11a5b}'), ('\u{11a8a}', '\u{11a99}'),
  ('𑰯', '\u{11c36}'), ('\u{11c38}', '\u{11c3f}'),
  ('\u{11c92}', '\u{11ca7}'), ('𑲩', '\u{11cb6}'),
  ('\u{11d31}', '\u{11d36}'), ('\u{11d3a}', '\u{11d3a}'),
  ('\u{11d3c}', '\u{11d3d}'), ('\u{11d3f}', '\u{11d45}'),
  ('\u{11d47}', '\u{11d47}'), ('𑶊', '𑶎'), ('\u{11d90}', '\u{11d91}'),
  ('𑶓', '\u{11d97}'), ('\u{11ef3}', '𑻶'), ('\u{16af0}', '\u{16af4}'),
  ('\u{16b30}', '\u{16b36}'), ('𖽑', '𖽾'), ('\u{16f8f}', '\u{16f92}'),
  ('\u{1bc9d}', '\u{1bc9e}'), ('\u{1d165}', '\u{1d169}'),
  ('𝅭', '\u{1d172}'), ('\u{1d17b}', '\u{1d182}'),
  ('\u{1d185}', '\u{1d18b}'), ('\u{1d1aa}', '\u{1d1ad}'),
  ('\u{1d242}', '\u{1d244}'), ('\u{1da00}', '\u{1da36}'),
  ('\u{1da3b}', '\u{1da6c}'), ('\u{1da75}', '\u{1da75}'),
  ('\u{1da84}', '\u{1da84}'), ('\u{1da9b}', '\u{1da9f}'),
  ('\u{1daa1}', '\u{1daaf}'), ('\u{1e000}', '\u{1e006}'),
  ('\u{1e008}', '\u{1e018}'), ('\u{1e01b}', '\u{1e021}'),
  ('\u{1e023}', '\u{1e024}'), ('\u{1e026}', '\u{1e02a}'),
  ('\u{1e8d0}', '\u{1e8d6}'), ('\u{1e944}', '\u{1e94a}'),
  ('\u{e0020}', '\u{e007f}'), ('\u{e0100}', '\u{e01ef}'),
];

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{200b}'),
  ('\u{200e}', '\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{110cd}', '\u{110cd}'),
  ('\u{1bca0}', '\u{1bca3}'), ('\u{1d173}', '\u{1d17a}'),
  ('\u{e0001}', '\u{e0001}'),
];

pub const LF: &'static [(char, char)] = &[
  ('\n', '\n'),
];

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

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

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

pub const SCONTINUE: &'static [(char, char)] = &[
  (',', '-'), (':', ':'), ('՝', '՝'), ('،', '؍'), ('߸', '߸'),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''),
];

pub const STERM: &'static [(char, char)] = &[
  ('!', '!'), ('?', '?'), ('։', '։'), ('؞', '؟'), ('۔', '۔'),
  ('܀', '܂'), ('߹', '߹'), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', '᱿'), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('', ''), ('', ''),
  ('', ''), ('', ''), ('𐩖', '𐩗'), ('𐽕', '𐽙'),
  ('𑁇', '𑁈'), ('𑂾', '𑃁'), ('𑅁', '𑅃'), ('𑇅', '𑇆'),
  ('𑇍', '𑇍'), ('𑇞', '𑇟'), ('𑈸', '𑈹'), ('𑈻', '𑈼'),
  ('𑊩', '𑊩'), ('𑑋', '𑑌'), ('𑗂', '𑗃'), ('𑗉', '𑗗'),
  ('𑙁', '𑙂'), ('𑜼', '𑜾'), ('𑩂', '𑩃'), ('𑪛', '𑪜'),
  ('𑱁', '𑱂'), ('𑻷', '𑻸'), ('𖩮', '𖩯'), ('𖫵', '𖫵'),
  ('𖬷', '𖬸'), ('𖭄', '𖭄'), ('𖺘', '𖺘'), ('𛲟', '𛲟'),
  ('𝪈', '𝪈'),
];

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

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