1# !!!!!!! DO NOT EDIT THIS FILE !!!!!!! 2# This file is machine-generated by lib/unicore/mktables from the Unicode 3# database, Version 6.3.0. Any changes made here will be lost! 4 5# !!!!!!! INTERNAL PERL USE ONLY !!!!!!! 6# This file is for internal use by core Perl only. The format and even the 7# name or existence of this file are subject to change without notice. Don't 8# use it directly. Use Unicode::UCD to access the Unicode character data 9# base. 10 11 12# The mappings in the non-hash portion of this file must be modified to get the 13# correct values by adding the code point ordinal number to each one that is 14# numeric. 15 16# The name this swash is to be known by, with the format of the mappings in 17# the main body of the table, and what all code points missing from this file 18# map to. 19$utf8::SwashInfo{'ToTc'}{'format'} = 'ax'; # mapped value in hex; some entries need adjustment 20$utf8::SwashInfo{'ToTc'}{'specials_name'} = 'utf8::ToSpecTc'; # Name of hash of special mappings 21$utf8::SwashInfo{'ToTc'}{'missing'} = '0'; # code point maps to itself 22 23# Some code points require special handling because their mappings are each to 24# multiple code points. These do not appear in the main body, but are defined 25# in the hash below. 26 27# Each key is the string of N bytes that together make up the UTF-8 encoding 28# for the code point. (i.e. the same as looking at the code point's UTF-8 29# under "use bytes"). Each value is the UTF-8 of the translation, for speed. 30%utf8::ToSpecTc = ( 31"\xC3\x9F" => "\x{0053}\x{0073}", # U+00DF => 0053 0073 32"\xC5\x89" => "\x{02BC}\x{004E}", # U+0149 => 02BC 004E 33"\xC7\xB0" => "\x{004A}\x{030C}", # U+01F0 => 004A 030C 34"\xCE\x90" => "\x{0399}\x{0308}\x{0301}", # U+0390 => 0399 0308 0301 35"\xCE\xB0" => "\x{03A5}\x{0308}\x{0301}", # U+03B0 => 03A5 0308 0301 36"\xD6\x87" => "\x{0535}\x{0582}", # U+0587 => 0535 0582 37"\xE1\xBA\x96" => "\x{0048}\x{0331}", # U+1E96 => 0048 0331 38"\xE1\xBA\x97" => "\x{0054}\x{0308}", # U+1E97 => 0054 0308 39"\xE1\xBA\x98" => "\x{0057}\x{030A}", # U+1E98 => 0057 030A 40"\xE1\xBA\x99" => "\x{0059}\x{030A}", # U+1E99 => 0059 030A 41"\xE1\xBA\x9A" => "\x{0041}\x{02BE}", # U+1E9A => 0041 02BE 42"\xE1\xBD\x90" => "\x{03A5}\x{0313}", # U+1F50 => 03A5 0313 43"\xE1\xBD\x92" => "\x{03A5}\x{0313}\x{0300}", # U+1F52 => 03A5 0313 0300 44"\xE1\xBD\x94" => "\x{03A5}\x{0313}\x{0301}", # U+1F54 => 03A5 0313 0301 45"\xE1\xBD\x96" => "\x{03A5}\x{0313}\x{0342}", # U+1F56 => 03A5 0313 0342 46"\xE1\xBE\xB2" => "\x{1FBA}\x{0345}", # U+1FB2 => 1FBA 0345 47"\xE1\xBE\xB4" => "\x{0386}\x{0345}", # U+1FB4 => 0386 0345 48"\xE1\xBE\xB6" => "\x{0391}\x{0342}", # U+1FB6 => 0391 0342 49"\xE1\xBE\xB7" => "\x{0391}\x{0342}\x{0345}", # U+1FB7 => 0391 0342 0345 50"\xE1\xBF\x82" => "\x{1FCA}\x{0345}", # U+1FC2 => 1FCA 0345 51"\xE1\xBF\x84" => "\x{0389}\x{0345}", # U+1FC4 => 0389 0345 52"\xE1\xBF\x86" => "\x{0397}\x{0342}", # U+1FC6 => 0397 0342 53"\xE1\xBF\x87" => "\x{0397}\x{0342}\x{0345}", # U+1FC7 => 0397 0342 0345 54"\xE1\xBF\x92" => "\x{0399}\x{0308}\x{0300}", # U+1FD2 => 0399 0308 0300 55"\xE1\xBF\x93" => "\x{0399}\x{0308}\x{0301}", # U+1FD3 => 0399 0308 0301 56"\xE1\xBF\x96" => "\x{0399}\x{0342}", # U+1FD6 => 0399 0342 57"\xE1\xBF\x97" => "\x{0399}\x{0308}\x{0342}", # U+1FD7 => 0399 0308 0342 58"\xE1\xBF\xA2" => "\x{03A5}\x{0308}\x{0300}", # U+1FE2 => 03A5 0308 0300 59"\xE1\xBF\xA3" => "\x{03A5}\x{0308}\x{0301}", # U+1FE3 => 03A5 0308 0301 60"\xE1\xBF\xA4" => "\x{03A1}\x{0313}", # U+1FE4 => 03A1 0313 61"\xE1\xBF\xA6" => "\x{03A5}\x{0342}", # U+1FE6 => 03A5 0342 62"\xE1\xBF\xA7" => "\x{03A5}\x{0308}\x{0342}", # U+1FE7 => 03A5 0308 0342 63"\xE1\xBF\xB2" => "\x{1FFA}\x{0345}", # U+1FF2 => 1FFA 0345 64"\xE1\xBF\xB4" => "\x{038F}\x{0345}", # U+1FF4 => 038F 0345 65"\xE1\xBF\xB6" => "\x{03A9}\x{0342}", # U+1FF6 => 03A9 0342 66"\xE1\xBF\xB7" => "\x{03A9}\x{0342}\x{0345}", # U+1FF7 => 03A9 0342 0345 67"\xEF\xAC\x80" => "\x{0046}\x{0066}", # U+FB00 => 0046 0066 68"\xEF\xAC\x81" => "\x{0046}\x{0069}", # U+FB01 => 0046 0069 69"\xEF\xAC\x82" => "\x{0046}\x{006C}", # U+FB02 => 0046 006C 70"\xEF\xAC\x83" => "\x{0046}\x{0066}\x{0069}", # U+FB03 => 0046 0066 0069 71"\xEF\xAC\x84" => "\x{0046}\x{0066}\x{006C}", # U+FB04 => 0046 0066 006C 72"\xEF\xAC\x85" => "\x{0053}\x{0074}", # U+FB05 => 0053 0074 73"\xEF\xAC\x86" => "\x{0053}\x{0074}", # U+FB06 => 0053 0074 74"\xEF\xAC\x93" => "\x{0544}\x{0576}", # U+FB13 => 0544 0576 75"\xEF\xAC\x94" => "\x{0544}\x{0565}", # U+FB14 => 0544 0565 76"\xEF\xAC\x95" => "\x{0544}\x{056B}", # U+FB15 => 0544 056B 77"\xEF\xAC\x96" => "\x{054E}\x{0576}", # U+FB16 => 054E 0576 78"\xEF\xAC\x97" => "\x{0544}\x{056D}", # U+FB17 => 0544 056D 79); 80 81return <<'END'; 8261 7A 41 83B5 39C 84E0 F6 C0 85F8 FE D8 86FF 178 87101 100 88103 102 89105 104 90107 106 91109 108 9210B 10A 9310D 10C 9410F 10E 95111 110 96113 112 97115 114 98117 116 99119 118 10011B 11A 10111D 11C 10211F 11E 103121 120 104123 122 105125 124 106127 126 107129 128 10812B 12A 10912D 12C 11012F 12E 111131 49 112133 132 113135 134 114137 136 11513A 139 11613C 13B 11713E 13D 118140 13F 119142 141 120144 143 121146 145 122148 147 12314B 14A 12414D 14C 12514F 14E 126151 150 127153 152 128155 154 129157 156 130159 158 13115B 15A 13215D 15C 13315F 15E 134161 160 135163 162 136165 164 137167 166 138169 168 13916B 16A 14016D 16C 14116F 16E 142171 170 143173 172 144175 174 145177 176 14617A 179 14717C 17B 14817E 17D 14917F 53 150180 243 151183 182 152185 184 153188 187 15418C 18B 155192 191 156195 1F6 157199 198 15819A 23D 15919E 220 1601A1 1A0 1611A3 1A2 1621A5 1A4 1631A8 1A7 1641AD 1AC 1651B0 1AF 1661B4 1B3 1671B6 1B5 1681B9 1B8 1691BD 1BC 1701BF 1F7 1711C4 1C5 1721C6 1C5 1731C7 1C8 1741C9 1C8 1751CA 1CB 1761CC 1CB 1771CE 1CD 1781D0 1CF 1791D2 1D1 1801D4 1D3 1811D6 1D5 1821D8 1D7 1831DA 1D9 1841DC 1DB 1851DD 18E 1861DF 1DE 1871E1 1E0 1881E3 1E2 1891E5 1E4 1901E7 1E6 1911E9 1E8 1921EB 1EA 1931ED 1EC 1941EF 1EE 1951F1 1F2 1961F3 1F2 1971F5 1F4 1981F9 1F8 1991FB 1FA 2001FD 1FC 2011FF 1FE 202201 200 203203 202 204205 204 205207 206 206209 208 20720B 20A 20820D 20C 20920F 20E 210211 210 211213 212 212215 214 213217 216 214219 218 21521B 21A 21621D 21C 21721F 21E 218223 222 219225 224 220227 226 221229 228 22222B 22A 22322D 22C 22422F 22E 225231 230 226233 232 22723C 23B 22823F 240 2C7E 229242 241 230247 246 231249 248 23224B 24A 23324D 24C 23424F 24E 235250 2C6F 236251 2C6D 237252 2C70 238253 181 239254 186 240256 257 189 241259 18F 24225B 190 243260 193 244263 194 245265 A78D 246266 A7AA 247268 197 248269 196 24926B 2C62 25026F 19C 251271 2C6E 252272 19D 253275 19F 25427D 2C64 255280 1A6 256283 1A9 257288 1AE 258289 244 25928A 28B 1B1 26028C 245 261292 1B7 262345 399 263371 370 264373 372 265377 376 26637B 37D 3FD 2673AC 386 2683AD 3AF 388 2693B1 3C1 391 2703C2 3A3 2713C3 3CB 3A3 2723CC 38C 2733CD 3CE 38E 2743D0 392 2753D1 398 2763D5 3A6 2773D6 3A0 2783D7 3CF 2793D9 3D8 2803DB 3DA 2813DD 3DC 2823DF 3DE 2833E1 3E0 2843E3 3E2 2853E5 3E4 2863E7 3E6 2873E9 3E8 2883EB 3EA 2893ED 3EC 2903EF 3EE 2913F0 39A 2923F1 3A1 2933F2 3F9 2943F5 395 2953F8 3F7 2963FB 3FA 297430 44F 410 298450 45F 400 299461 460 300463 462 301465 464 302467 466 303469 468 30446B 46A 30546D 46C 30646F 46E 307471 470 308473 472 309475 474 310477 476 311479 478 31247B 47A 31347D 47C 31447F 47E 315481 480 31648B 48A 31748D 48C 31848F 48E 319491 490 320493 492 321495 494 322497 496 323499 498 32449B 49A 32549D 49C 32649F 49E 3274A1 4A0 3284A3 4A2 3294A5 4A4 3304A7 4A6 3314A9 4A8 3324AB 4AA 3334AD 4AC 3344AF 4AE 3354B1 4B0 3364B3 4B2 3374B5 4B4 3384B7 4B6 3394B9 4B8 3404BB 4BA 3414BD 4BC 3424BF 4BE 3434C2 4C1 3444C4 4C3 3454C6 4C5 3464C8 4C7 3474CA 4C9 3484CC 4CB 3494CE 4CD 3504CF 4C0 3514D1 4D0 3524D3 4D2 3534D5 4D4 3544D7 4D6 3554D9 4D8 3564DB 4DA 3574DD 4DC 3584DF 4DE 3594E1 4E0 3604E3 4E2 3614E5 4E4 3624E7 4E6 3634E9 4E8 3644EB 4EA 3654ED 4EC 3664EF 4EE 3674F1 4F0 3684F3 4F2 3694F5 4F4 3704F7 4F6 3714F9 4F8 3724FB 4FA 3734FD 4FC 3744FF 4FE 375501 500 376503 502 377505 504 378507 506 379509 508 38050B 50A 38150D 50C 38250F 50E 383511 510 384513 512 385515 514 386517 516 387519 518 38851B 51A 38951D 51C 39051F 51E 391521 520 392523 522 393525 524 394527 526 395561 586 531 3961D79 A77D 3971D7D 2C63 3981E01 1E00 3991E03 1E02 4001E05 1E04 4011E07 1E06 4021E09 1E08 4031E0B 1E0A 4041E0D 1E0C 4051E0F 1E0E 4061E11 1E10 4071E13 1E12 4081E15 1E14 4091E17 1E16 4101E19 1E18 4111E1B 1E1A 4121E1D 1E1C 4131E1F 1E1E 4141E21 1E20 4151E23 1E22 4161E25 1E24 4171E27 1E26 4181E29 1E28 4191E2B 1E2A 4201E2D 1E2C 4211E2F 1E2E 4221E31 1E30 4231E33 1E32 4241E35 1E34 4251E37 1E36 4261E39 1E38 4271E3B 1E3A 4281E3D 1E3C 4291E3F 1E3E 4301E41 1E40 4311E43 1E42 4321E45 1E44 4331E47 1E46 4341E49 1E48 4351E4B 1E4A 4361E4D 1E4C 4371E4F 1E4E 4381E51 1E50 4391E53 1E52 4401E55 1E54 4411E57 1E56 4421E59 1E58 4431E5B 1E5A 4441E5D 1E5C 4451E5F 1E5E 4461E61 1E60 4471E63 1E62 4481E65 1E64 4491E67 1E66 4501E69 1E68 4511E6B 1E6A 4521E6D 1E6C 4531E6F 1E6E 4541E71 1E70 4551E73 1E72 4561E75 1E74 4571E77 1E76 4581E79 1E78 4591E7B 1E7A 4601E7D 1E7C 4611E7F 1E7E 4621E81 1E80 4631E83 1E82 4641E85 1E84 4651E87 1E86 4661E89 1E88 4671E8B 1E8A 4681E8D 1E8C 4691E8F 1E8E 4701E91 1E90 4711E93 1E92 4721E95 1E94 4731E9B 1E60 4741EA1 1EA0 4751EA3 1EA2 4761EA5 1EA4 4771EA7 1EA6 4781EA9 1EA8 4791EAB 1EAA 4801EAD 1EAC 4811EAF 1EAE 4821EB1 1EB0 4831EB3 1EB2 4841EB5 1EB4 4851EB7 1EB6 4861EB9 1EB8 4871EBB 1EBA 4881EBD 1EBC 4891EBF 1EBE 4901EC1 1EC0 4911EC3 1EC2 4921EC5 1EC4 4931EC7 1EC6 4941EC9 1EC8 4951ECB 1ECA 4961ECD 1ECC 4971ECF 1ECE 4981ED1 1ED0 4991ED3 1ED2 5001ED5 1ED4 5011ED7 1ED6 5021ED9 1ED8 5031EDB 1EDA 5041EDD 1EDC 5051EDF 1EDE 5061EE1 1EE0 5071EE3 1EE2 5081EE5 1EE4 5091EE7 1EE6 5101EE9 1EE8 5111EEB 1EEA 5121EED 1EEC 5131EEF 1EEE 5141EF1 1EF0 5151EF3 1EF2 5161EF5 1EF4 5171EF7 1EF6 5181EF9 1EF8 5191EFB 1EFA 5201EFD 1EFC 5211EFF 1EFE 5221F00 1F07 1F08 5231F10 1F15 1F18 5241F20 1F27 1F28 5251F30 1F37 1F38 5261F40 1F45 1F48 5271F51 1F59 5281F53 1F5B 5291F55 1F5D 5301F57 1F5F 5311F60 1F67 1F68 5321F70 1F71 1FBA 5331F72 1F75 1FC8 5341F76 1F77 1FDA 5351F78 1F79 1FF8 5361F7A 1F7B 1FEA 5371F7C 1F7D 1FFA 5381F80 1F87 1F88 5391F90 1F97 1F98 5401FA0 1FA7 1FA8 5411FB0 1FB1 1FB8 5421FB3 1FBC 5431FBE 399 5441FC3 1FCC 5451FD0 1FD1 1FD8 5461FE0 1FE1 1FE8 5471FE5 1FEC 5481FF3 1FFC 549214E 2132 5502170 217F 2160 5512184 2183 55224D0 24E9 24B6 5532C30 2C5E 2C00 5542C61 2C60 5552C65 23A 5562C66 23E 5572C68 2C67 5582C6A 2C69 5592C6C 2C6B 5602C73 2C72 5612C76 2C75 5622C81 2C80 5632C83 2C82 5642C85 2C84 5652C87 2C86 5662C89 2C88 5672C8B 2C8A 5682C8D 2C8C 5692C8F 2C8E 5702C91 2C90 5712C93 2C92 5722C95 2C94 5732C97 2C96 5742C99 2C98 5752C9B 2C9A 5762C9D 2C9C 5772C9F 2C9E 5782CA1 2CA0 5792CA3 2CA2 5802CA5 2CA4 5812CA7 2CA6 5822CA9 2CA8 5832CAB 2CAA 5842CAD 2CAC 5852CAF 2CAE 5862CB1 2CB0 5872CB3 2CB2 5882CB5 2CB4 5892CB7 2CB6 5902CB9 2CB8 5912CBB 2CBA 5922CBD 2CBC 5932CBF 2CBE 5942CC1 2CC0 5952CC3 2CC2 5962CC5 2CC4 5972CC7 2CC6 5982CC9 2CC8 5992CCB 2CCA 6002CCD 2CCC 6012CCF 2CCE 6022CD1 2CD0 6032CD3 2CD2 6042CD5 2CD4 6052CD7 2CD6 6062CD9 2CD8 6072CDB 2CDA 6082CDD 2CDC 6092CDF 2CDE 6102CE1 2CE0 6112CE3 2CE2 6122CEC 2CEB 6132CEE 2CED 6142CF3 2CF2 6152D00 2D25 10A0 6162D27 10C7 6172D2D 10CD 618A641 A640 619A643 A642 620A645 A644 621A647 A646 622A649 A648 623A64B A64A 624A64D A64C 625A64F A64E 626A651 A650 627A653 A652 628A655 A654 629A657 A656 630A659 A658 631A65B A65A 632A65D A65C 633A65F A65E 634A661 A660 635A663 A662 636A665 A664 637A667 A666 638A669 A668 639A66B A66A 640A66D A66C 641A681 A680 642A683 A682 643A685 A684 644A687 A686 645A689 A688 646A68B A68A 647A68D A68C 648A68F A68E 649A691 A690 650A693 A692 651A695 A694 652A697 A696 653A723 A722 654A725 A724 655A727 A726 656A729 A728 657A72B A72A 658A72D A72C 659A72F A72E 660A733 A732 661A735 A734 662A737 A736 663A739 A738 664A73B A73A 665A73D A73C 666A73F A73E 667A741 A740 668A743 A742 669A745 A744 670A747 A746 671A749 A748 672A74B A74A 673A74D A74C 674A74F A74E 675A751 A750 676A753 A752 677A755 A754 678A757 A756 679A759 A758 680A75B A75A 681A75D A75C 682A75F A75E 683A761 A760 684A763 A762 685A765 A764 686A767 A766 687A769 A768 688A76B A76A 689A76D A76C 690A76F A76E 691A77A A779 692A77C A77B 693A77F A77E 694A781 A780 695A783 A782 696A785 A784 697A787 A786 698A78C A78B 699A791 A790 700A793 A792 701A7A1 A7A0 702A7A3 A7A2 703A7A5 A7A4 704A7A7 A7A6 705A7A9 A7A8 706FF41 FF5A FF21 70710428 1044F 10400 708END 709