[ SEA-GHOST MINI SHELL]
# !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
# This file is machine-generated by lib/unicore/mktables from the Unicode
# database, Version 6.1.0. Any changes made here will be lost!
# !!!!!!! INTERNAL PERL USE ONLY !!!!!!!
# This file is for internal use by core Perl only. The format and even the
# name or existence of this file are subject to change without notice. Don't
# use it directly.
# The mappings in the non-hash portion of this file must be modified to get the
# correct values by adding the code point ordinal number to each one that is
# numeric.
# The name this swash is to be known by, with the format of the mappings in
# the main body of the table, and what all code points missing from this file
# map to.
$utf8::SwashInfo{'ToCf'}{'format'} = 'a'; # some entries need adjustment
$utf8::SwashInfo{'ToCf'}{'specials_name'} = 'utf8::ToSpecCf'; # Name of hash of special mappings
$utf8::SwashInfo{'ToCf'}{'missing'} = '0'; # code point maps to itself
# Some code points require special handling because their mappings are each to
# multiple code points. These do not appear in the main body, but are defined
# in the hash below.
# Each key is the string of N bytes that together make up the UTF-8 encoding
# for the code point. (i.e. the same as looking at the code point's UTF-8
# under "use bytes"). Each value is the UTF-8 of the translation, for speed.
%utf8::ToSpecCf = (
"\xC3\x9F" => "\x{0073}\x{0073}", # U+00DF => 0073 0073
"\xC4\xB0" => "\x{0069}\x{0307}", # U+0130 => 0069 0307
"\xC5\x89" => "\x{02BC}\x{006E}", # U+0149 => 02BC 006E
"\xC7\xB0" => "\x{006A}\x{030C}", # U+01F0 => 006A 030C
"\xCE\x90" => "\x{03B9}\x{0308}\x{0301}", # U+0390 => 03B9 0308 0301
"\xCE\xB0" => "\x{03C5}\x{0308}\x{0301}", # U+03B0 => 03C5 0308 0301
"\xD6\x87" => "\x{0565}\x{0582}", # U+0587 => 0565 0582
"\xE1\xBA\x96" => "\x{0068}\x{0331}", # U+1E96 => 0068 0331
"\xE1\xBA\x97" => "\x{0074}\x{0308}", # U+1E97 => 0074 0308
"\xE1\xBA\x98" => "\x{0077}\x{030A}", # U+1E98 => 0077 030A
"\xE1\xBA\x99" => "\x{0079}\x{030A}", # U+1E99 => 0079 030A
"\xE1\xBA\x9A" => "\x{0061}\x{02BE}", # U+1E9A => 0061 02BE
"\xE1\xBA\x9E" => "\x{0073}\x{0073}", # U+1E9E => 0073 0073
"\xE1\xBD\x90" => "\x{03C5}\x{0313}", # U+1F50 => 03C5 0313
"\xE1\xBD\x92" => "\x{03C5}\x{0313}\x{0300}", # U+1F52 => 03C5 0313 0300
"\xE1\xBD\x94" => "\x{03C5}\x{0313}\x{0301}", # U+1F54 => 03C5 0313 0301
"\xE1\xBD\x96" => "\x{03C5}\x{0313}\x{0342}", # U+1F56 => 03C5 0313 0342
"\xE1\xBE\x80" => "\x{1F00}\x{03B9}", # U+1F80 => 1F00 03B9
"\xE1\xBE\x81" => "\x{1F01}\x{03B9}", # U+1F81 => 1F01 03B9
"\xE1\xBE\x82" => "\x{1F02}\x{03B9}", # U+1F82 => 1F02 03B9
"\xE1\xBE\x83" => "\x{1F03}\x{03B9}", # U+1F83 => 1F03 03B9
"\xE1\xBE\x84" => "\x{1F04}\x{03B9}", # U+1F84 => 1F04 03B9
"\xE1\xBE\x85" => "\x{1F05}\x{03B9}", # U+1F85 => 1F05 03B9
"\xE1\xBE\x86" => "\x{1F06}\x{03B9}", # U+1F86 => 1F06 03B9
"\xE1\xBE\x87" => "\x{1F07}\x{03B9}", # U+1F87 => 1F07 03B9
"\xE1\xBE\x88" => "\x{1F00}\x{03B9}", # U+1F88 => 1F00 03B9
"\xE1\xBE\x89" => "\x{1F01}\x{03B9}", # U+1F89 => 1F01 03B9
"\xE1\xBE\x8A" => "\x{1F02}\x{03B9}", # U+1F8A => 1F02 03B9
"\xE1\xBE\x8B" => "\x{1F03}\x{03B9}", # U+1F8B => 1F03 03B9
"\xE1\xBE\x8C" => "\x{1F04}\x{03B9}", # U+1F8C => 1F04 03B9
"\xE1\xBE\x8D" => "\x{1F05}\x{03B9}", # U+1F8D => 1F05 03B9
"\xE1\xBE\x8E" => "\x{1F06}\x{03B9}", # U+1F8E => 1F06 03B9
"\xE1\xBE\x8F" => "\x{1F07}\x{03B9}", # U+1F8F => 1F07 03B9
"\xE1\xBE\x90" => "\x{1F20}\x{03B9}", # U+1F90 => 1F20 03B9
"\xE1\xBE\x91" => "\x{1F21}\x{03B9}", # U+1F91 => 1F21 03B9
"\xE1\xBE\x92" => "\x{1F22}\x{03B9}", # U+1F92 => 1F22 03B9
"\xE1\xBE\x93" => "\x{1F23}\x{03B9}", # U+1F93 => 1F23 03B9
"\xE1\xBE\x94" => "\x{1F24}\x{03B9}", # U+1F94 => 1F24 03B9
"\xE1\xBE\x95" => "\x{1F25}\x{03B9}", # U+1F95 => 1F25 03B9
"\xE1\xBE\x96" => "\x{1F26}\x{03B9}", # U+1F96 => 1F26 03B9
"\xE1\xBE\x97" => "\x{1F27}\x{03B9}", # U+1F97 => 1F27 03B9
"\xE1\xBE\x98" => "\x{1F20}\x{03B9}", # U+1F98 => 1F20 03B9
"\xE1\xBE\x99" => "\x{1F21}\x{03B9}", # U+1F99 => 1F21 03B9
"\xE1\xBE\x9A" => "\x{1F22}\x{03B9}", # U+1F9A => 1F22 03B9
"\xE1\xBE\x9B" => "\x{1F23}\x{03B9}", # U+1F9B => 1F23 03B9
"\xE1\xBE\x9C" => "\x{1F24}\x{03B9}", # U+1F9C => 1F24 03B9
"\xE1\xBE\x9D" => "\x{1F25}\x{03B9}", # U+1F9D => 1F25 03B9
"\xE1\xBE\x9E" => "\x{1F26}\x{03B9}", # U+1F9E => 1F26 03B9
"\xE1\xBE\x9F" => "\x{1F27}\x{03B9}", # U+1F9F => 1F27 03B9
"\xE1\xBE\xA0" => "\x{1F60}\x{03B9}", # U+1FA0 => 1F60 03B9
"\xE1\xBE\xA1" => "\x{1F61}\x{03B9}", # U+1FA1 => 1F61 03B9
"\xE1\xBE\xA2" => "\x{1F62}\x{03B9}", # U+1FA2 => 1F62 03B9
"\xE1\xBE\xA3" => "\x{1F63}\x{03B9}", # U+1FA3 => 1F63 03B9
"\xE1\xBE\xA4" => "\x{1F64}\x{03B9}", # U+1FA4 => 1F64 03B9
"\xE1\xBE\xA5" => "\x{1F65}\x{03B9}", # U+1FA5 => 1F65 03B9
"\xE1\xBE\xA6" => "\x{1F66}\x{03B9}", # U+1FA6 => 1F66 03B9
"\xE1\xBE\xA7" => "\x{1F67}\x{03B9}", # U+1FA7 => 1F67 03B9
"\xE1\xBE\xA8" => "\x{1F60}\x{03B9}", # U+1FA8 => 1F60 03B9
"\xE1\xBE\xA9" => "\x{1F61}\x{03B9}", # U+1FA9 => 1F61 03B9
"\xE1\xBE\xAA" => "\x{1F62}\x{03B9}", # U+1FAA => 1F62 03B9
"\xE1\xBE\xAB" => "\x{1F63}\x{03B9}", # U+1FAB => 1F63 03B9
"\xE1\xBE\xAC" => "\x{1F64}\x{03B9}", # U+1FAC => 1F64 03B9
"\xE1\xBE\xAD" => "\x{1F65}\x{03B9}", # U+1FAD => 1F65 03B9
"\xE1\xBE\xAE" => "\x{1F66}\x{03B9}", # U+1FAE => 1F66 03B9
"\xE1\xBE\xAF" => "\x{1F67}\x{03B9}", # U+1FAF => 1F67 03B9
"\xE1\xBE\xB2" => "\x{1F70}\x{03B9}", # U+1FB2 => 1F70 03B9
"\xE1\xBE\xB3" => "\x{03B1}\x{03B9}", # U+1FB3 => 03B1 03B9
"\xE1\xBE\xB4" => "\x{03AC}\x{03B9}", # U+1FB4 => 03AC 03B9
"\xE1\xBE\xB6" => "\x{03B1}\x{0342}", # U+1FB6 => 03B1 0342
"\xE1\xBE\xB7" => "\x{03B1}\x{0342}\x{03B9}", # U+1FB7 => 03B1 0342 03B9
"\xE1\xBE\xBC" => "\x{03B1}\x{03B9}", # U+1FBC => 03B1 03B9
"\xE1\xBF\x82" => "\x{1F74}\x{03B9}", # U+1FC2 => 1F74 03B9
"\xE1\xBF\x83" => "\x{03B7}\x{03B9}", # U+1FC3 => 03B7 03B9
"\xE1\xBF\x84" => "\x{03AE}\x{03B9}", # U+1FC4 => 03AE 03B9
"\xE1\xBF\x86" => "\x{03B7}\x{0342}", # U+1FC6 => 03B7 0342
"\xE1\xBF\x87" => "\x{03B7}\x{0342}\x{03B9}", # U+1FC7 => 03B7 0342 03B9
"\xE1\xBF\x8C" => "\x{03B7}\x{03B9}", # U+1FCC => 03B7 03B9
"\xE1\xBF\x92" => "\x{03B9}\x{0308}\x{0300}", # U+1FD2 => 03B9 0308 0300
"\xE1\xBF\x93" => "\x{03B9}\x{0308}\x{0301}", # U+1FD3 => 03B9 0308 0301
"\xE1\xBF\x96" => "\x{03B9}\x{0342}", # U+1FD6 => 03B9 0342
"\xE1\xBF\x97" => "\x{03B9}\x{0308}\x{0342}", # U+1FD7 => 03B9 0308 0342
"\xE1\xBF\xA2" => "\x{03C5}\x{0308}\x{0300}", # U+1FE2 => 03C5 0308 0300
"\xE1\xBF\xA3" => "\x{03C5}\x{0308}\x{0301}", # U+1FE3 => 03C5 0308 0301
"\xE1\xBF\xA4" => "\x{03C1}\x{0313}", # U+1FE4 => 03C1 0313
"\xE1\xBF\xA6" => "\x{03C5}\x{0342}", # U+1FE6 => 03C5 0342
"\xE1\xBF\xA7" => "\x{03C5}\x{0308}\x{0342}", # U+1FE7 => 03C5 0308 0342
"\xE1\xBF\xB2" => "\x{1F7C}\x{03B9}", # U+1FF2 => 1F7C 03B9
"\xE1\xBF\xB3" => "\x{03C9}\x{03B9}", # U+1FF3 => 03C9 03B9
"\xE1\xBF\xB4" => "\x{03CE}\x{03B9}", # U+1FF4 => 03CE 03B9
"\xE1\xBF\xB6" => "\x{03C9}\x{0342}", # U+1FF6 => 03C9 0342
"\xE1\xBF\xB7" => "\x{03C9}\x{0342}\x{03B9}", # U+1FF7 => 03C9 0342 03B9
"\xE1\xBF\xBC" => "\x{03C9}\x{03B9}", # U+1FFC => 03C9 03B9
"\xEF\xAC\x80" => "\x{0066}\x{0066}", # U+FB00 => 0066 0066
"\xEF\xAC\x81" => "\x{0066}\x{0069}", # U+FB01 => 0066 0069
"\xEF\xAC\x82" => "\x{0066}\x{006C}", # U+FB02 => 0066 006C
"\xEF\xAC\x83" => "\x{0066}\x{0066}\x{0069}", # U+FB03 => 0066 0066 0069
"\xEF\xAC\x84" => "\x{0066}\x{0066}\x{006C}", # U+FB04 => 0066 0066 006C
"\xEF\xAC\x85" => "\x{0073}\x{0074}", # U+FB05 => 0073 0074
"\xEF\xAC\x86" => "\x{0073}\x{0074}", # U+FB06 => 0073 0074
"\xEF\xAC\x93" => "\x{0574}\x{0576}", # U+FB13 => 0574 0576
"\xEF\xAC\x94" => "\x{0574}\x{0565}", # U+FB14 => 0574 0565
"\xEF\xAC\x95" => "\x{0574}\x{056B}", # U+FB15 => 0574 056B
"\xEF\xAC\x96" => "\x{057E}\x{0576}", # U+FB16 => 057E 0576
"\xEF\xAC\x97" => "\x{0574}\x{056D}", # U+FB17 => 0574 056D
);
return <<'END';
0041 005A 97
00B5 956
00C0 00D6 224
00D8 00DE 248
0100 257
0102 259
0104 261
0106 263
0108 265
010A 267
010C 269
010E 271
0110 273
0112 275
0114 277
0116 279
0118 281
011A 283
011C 285
011E 287
0120 289
0122 291
0124 293
0126 295
0128 297
012A 299
012C 301
012E 303
0132 307
0134 309
0136 311
0139 314
013B 316
013D 318
013F 320
0141 322
0143 324
0145 326
0147 328
014A 331
014C 333
014E 335
0150 337
0152 339
0154 341
0156 343
0158 345
015A 347
015C 349
015E 351
0160 353
0162 355
0164 357
0166 359
0168 361
016A 363
016C 365
016E 367
0170 369
0172 371
0174 373
0176 375
0178 255
0179 378
017B 380
017D 382
017F 115
0181 595
0182 387
0184 389
0186 596
0187 392
0189 018A 598
018B 396
018E 477
018F 601
0190 603
0191 402
0193 608
0194 611
0196 617
0197 616
0198 409
019C 623
019D 626
019F 629
01A0 417
01A2 419
01A4 421
01A6 640
01A7 424
01A9 643
01AC 429
01AE 648
01AF 432
01B1 01B2 650
01B3 436
01B5 438
01B7 658
01B8 441
01BC 445
01C4 454
01C5 454
01C7 457
01C8 457
01CA 460
01CB 460
01CD 462
01CF 464
01D1 466
01D3 468
01D5 470
01D7 472
01D9 474
01DB 476
01DE 479
01E0 481
01E2 483
01E4 485
01E6 487
01E8 489
01EA 491
01EC 493
01EE 495
01F1 499
01F2 499
01F4 501
01F6 405
01F7 447
01F8 505
01FA 507
01FC 509
01FE 511
0200 513
0202 515
0204 517
0206 519
0208 521
020A 523
020C 525
020E 527
0210 529
0212 531
0214 533
0216 535
0218 537
021A 539
021C 541
021E 543
0220 414
0222 547
0224 549
0226 551
0228 553
022A 555
022C 557
022E 559
0230 561
0232 563
023A 11365
023B 572
023D 410
023E 11366
0241 578
0243 384
0244 649
0245 652
0246 583
0248 585
024A 587
024C 589
024E 591
0345 953
0370 881
0372 883
0376 887
0386 940
0388 038A 941
038C 972
038E 038F 973
0391 03A1 945
03A3 03AB 963
03C2 963
03CF 983
03D0 946
03D1 952
03D5 966
03D6 960
03D8 985
03DA 987
03DC 989
03DE 991
03E0 993
03E2 995
03E4 997
03E6 999
03E8 1001
03EA 1003
03EC 1005
03EE 1007
03F0 954
03F1 961
03F4 952
03F5 949
03F7 1016
03F9 1010
03FA 1019
03FD 03FF 891
0400 040F 1104
0410 042F 1072
0460 1121
0462 1123
0464 1125
0466 1127
0468 1129
046A 1131
046C 1133
046E 1135
0470 1137
0472 1139
0474 1141
0476 1143
0478 1145
047A 1147
047C 1149
047E 1151
0480 1153
048A 1163
048C 1165
048E 1167
0490 1169
0492 1171
0494 1173
0496 1175
0498 1177
049A 1179
049C 1181
049E 1183
04A0 1185
04A2 1187
04A4 1189
04A6 1191
04A8 1193
04AA 1195
04AC 1197
04AE 1199
04B0 1201
04B2 1203
04B4 1205
04B6 1207
04B8 1209
04BA 1211
04BC 1213
04BE 1215
04C0 1231
04C1 1218
04C3 1220
04C5 1222
04C7 1224
04C9 1226
04CB 1228
04CD 1230
04D0 1233
04D2 1235
04D4 1237
04D6 1239
04D8 1241
04DA 1243
04DC 1245
04DE 1247
04E0 1249
04E2 1251
04E4 1253
04E6 1255
04E8 1257
04EA 1259
04EC 1261
04EE 1263
04F0 1265
04F2 1267
04F4 1269
04F6 1271
04F8 1273
04FA 1275
04FC 1277
04FE 1279
0500 1281
0502 1283
0504 1285
0506 1287
0508 1289
050A 1291
050C 1293
050E 1295
0510 1297
0512 1299
0514 1301
0516 1303
0518 1305
051A 1307
051C 1309
051E 1311
0520 1313
0522 1315
0524 1317
0526 1319
0531 0556 1377
10A0 10C5 11520
10C7 11559
10CD 11565
1E00 7681
1E02 7683
1E04 7685
1E06 7687
1E08 7689
1E0A 7691
1E0C 7693
1E0E 7695
1E10 7697
1E12 7699
1E14 7701
1E16 7703
1E18 7705
1E1A 7707
1E1C 7709
1E1E 7711
1E20 7713
1E22 7715
1E24 7717
1E26 7719
1E28 7721
1E2A 7723
1E2C 7725
1E2E 7727
1E30 7729
1E32 7731
1E34 7733
1E36 7735
1E38 7737
1E3A 7739
1E3C 7741
1E3E 7743
1E40 7745
1E42 7747
1E44 7749
1E46 7751
1E48 7753
1E4A 7755
1E4C 7757
1E4E 7759
1E50 7761
1E52 7763
1E54 7765
1E56 7767
1E58 7769
1E5A 7771
1E5C 7773
1E5E 7775
1E60 7777
1E62 7779
1E64 7781
1E66 7783
1E68 7785
1E6A 7787
1E6C 7789
1E6E 7791
1E70 7793
1E72 7795
1E74 7797
1E76 7799
1E78 7801
1E7A 7803
1E7C 7805
1E7E 7807
1E80 7809
1E82 7811
1E84 7813
1E86 7815
1E88 7817
1E8A 7819
1E8C 7821
1E8E 7823
1E90 7825
1E92 7827
1E94 7829
1E9B 7777
1E9E 223
1EA0 7841
1EA2 7843
1EA4 7845
1EA6 7847
1EA8 7849
1EAA 7851
1EAC 7853
1EAE 7855
1EB0 7857
1EB2 7859
1EB4 7861
1EB6 7863
1EB8 7865
1EBA 7867
1EBC 7869
1EBE 7871
1EC0 7873
1EC2 7875
1EC4 7877
1EC6 7879
1EC8 7881
1ECA 7883
1ECC 7885
1ECE 7887
1ED0 7889
1ED2 7891
1ED4 7893
1ED6 7895
1ED8 7897
1EDA 7899
1EDC 7901
1EDE 7903
1EE0 7905
1EE2 7907
1EE4 7909
1EE6 7911
1EE8 7913
1EEA 7915
1EEC 7917
1EEE 7919
1EF0 7921
1EF2 7923
1EF4 7925
1EF6 7927
1EF8 7929
1EFA 7931
1EFC 7933
1EFE 7935
1F08 1F0F 7936
1F18 1F1D 7952
1F28 1F2F 7968
1F38 1F3F 7984
1F48 1F4D 8000
1F59 8017
1F5B 8019
1F5D 8021
1F5F 8023
1F68 1F6F 8032
1F88 1F8F 8064
1F98 1F9F 8080
1FA8 1FAF 8096
1FB8 1FB9 8112
1FBA 1FBB 8048
1FBC 8115
1FBE 953
1FC8 1FCB 8050
1FCC 8131
1FD8 1FD9 8144
1FDA 1FDB 8054
1FE8 1FE9 8160
1FEA 1FEB 8058
1FEC 8165
1FF8 1FF9 8056
1FFA 1FFB 8060
1FFC 8179
2126 969
212A 107
212B 229
2132 8526
2160 216F 8560
2183 8580
24B6 24CF 9424
2C00 2C2E 11312
2C60 11361
2C62 619
2C63 7549
2C64 637
2C67 11368
2C69 11370
2C6B 11372
2C6D 593
2C6E 625
2C6F 592
2C70 594
2C72 11379
2C75 11382
2C7E 2C7F 575
2C80 11393
2C82 11395
2C84 11397
2C86 11399
2C88 11401
2C8A 11403
2C8C 11405
2C8E 11407
2C90 11409
2C92 11411
2C94 11413
2C96 11415
2C98 11417
2C9A 11419
2C9C 11421
2C9E 11423
2CA0 11425
2CA2 11427
2CA4 11429
2CA6 11431
2CA8 11433
2CAA 11435
2CAC 11437
2CAE 11439
2CB0 11441
2CB2 11443
2CB4 11445
2CB6 11447
2CB8 11449
2CBA 11451
2CBC 11453
2CBE 11455
2CC0 11457
2CC2 11459
2CC4 11461
2CC6 11463
2CC8 11465
2CCA 11467
2CCC 11469
2CCE 11471
2CD0 11473
2CD2 11475
2CD4 11477
2CD6 11479
2CD8 11481
2CDA 11483
2CDC 11485
2CDE 11487
2CE0 11489
2CE2 11491
2CEB 11500
2CED 11502
2CF2 11507
A640 42561
A642 42563
A644 42565
A646 42567
A648 42569
A64A 42571
A64C 42573
A64E 42575
A650 42577
A652 42579
A654 42581
A656 42583
A658 42585
A65A 42587
A65C 42589
A65E 42591
A660 42593
A662 42595
A664 42597
A666 42599
A668 42601
A66A 42603
A66C 42605
A680 42625
A682 42627
A684 42629
A686 42631
A688 42633
A68A 42635
A68C 42637
A68E 42639
A690 42641
A692 42643
A694 42645
A696 42647
A722 42787
A724 42789
A726 42791
A728 42793
A72A 42795
A72C 42797
A72E 42799
A732 42803
A734 42805
A736 42807
A738 42809
A73A 42811
A73C 42813
A73E 42815
A740 42817
A742 42819
A744 42821
A746 42823
A748 42825
A74A 42827
A74C 42829
A74E 42831
A750 42833
A752 42835
A754 42837
A756 42839
A758 42841
A75A 42843
A75C 42845
A75E 42847
A760 42849
A762 42851
A764 42853
A766 42855
A768 42857
A76A 42859
A76C 42861
A76E 42863
A779 42874
A77B 42876
A77D 7545
A77E 42879
A780 42881
A782 42883
A784 42885
A786 42887
A78B 42892
A78D 613
A790 42897
A792 42899
A7A0 42913
A7A2 42915
A7A4 42917
A7A6 42919
A7A8 42921
A7AA 614
FF21 FF3A 65345
10400 10427 66600
END
SEA-GHOST - SHELL CODING BY SEA-GHOST