freebsd-dev/share/i18n/csmapper/CP/UCS%CP1046.src
Gabor Kovesdan ad30f8e79b Add the BSD-licensed Citrus iconv to the base system with default off
setting. It can be built by setting the WITH_ICONV knob. While this
knob is unset, the library part, the binaries, the header file and
the metadata files will not be built or installed so it makes no impact
on the system if left turned off.

This work is based on the iconv implementation in NetBSD but a great
number of improvements and feature additions have been included:

- Some utilities have been added. There is a conversion table generator,
  which can compare conversion tables to reference data generated by
  GNU libiconv. This helps ensuring conversion compatibility.
- UTF-16 surrogate support and some endianness issues have been fixed.
- The rather chaotic Makefiles to build metadata have been refactored
  and cleaned up, now it is easy to read and it is also easier to add
  support for new encodings.
- A bunch of new encodings and encoding aliases have been added.
- Support for 1->2, 1->3 and 1->4 mappings, which is needed for
  transliterating with flying accents as GNU does, like "u.
- Lots of warnings have been fixed, the major part of the code is
  now WARNS=6 clean.
- New section 1 and section 5 manual pages have been added.
- Some GNU-specific calls have been implemented:
  iconvlist(), iconvctl(), iconv_canonicalize(), iconv_open_into()
- Support for GNU's //IGNORE suffix has been added.
- The "-" argument for stdin is now recognized in iconv(1) as per POSIX.
- The Big5 conversion module has been fixed.
- The iconv.h header files is supposed to be compatible with the
  GNU version, i.e. sources should build with base iconv.h and
  GNU libiconv. It also includes a macro magic to deal with the
  char ** and const char ** incompatibility.
- GNU compatibility: "" or "char" means the current local
  encoding in use
- Various cleanups and style(9) fixes.

Approved by:	delphij (mentor)
Obtained from:	The NetBSD Project
Sponsored by:	Google Summer of Code 2009
2011-02-25 00:04:39 +00:00

1016 lines
21 KiB
Plaintext

# $FreeBSD$
# $NetBSD: UCS%CP1046.src,v 1.1 2007/06/02 06:09:08 tnozaki Exp $
# Copyright (c)2007 Citrus Project,
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
TYPE ROWCOL
NAME "UCS/CP1046"
SRC_ZONE 0x0000-0xFFED
OOB_MODE INVALID
DST_INVALID 0xFFFF
DST_UNIT_BITS 32
BEGIN_MAP
#
# CP1046 - Arabic Extended
# this mapping data is made from:
# ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/
# CP0{0864,1046}.{pdf,txt}
# ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP864.TXT
# http://www.unicode.org/charts/PDF/U0600.pdf
# http://www.unicode.org/charts/PDF/UFE70.pdf
#
0x0000 - 0x007F = 0x00 -
0x0088 = 0x88
0x00A0 = 0xA0 # NO-BREAK SPACE
0x00A1 = 0x21
0x00A2 = 0x63
0x00A3 = 0x626C
0x00A4 = 0xA4 # CURRENCY SIGN
0x00A5 = 0x6E6579
0x00A6 = 0x7C
0x00A7 = 0x5353
0x00A8 = 0x22
0x00A9 = 0x296328
0x00AA = 0x61
0x00AB = 0x3C3C
0x00AC = 0x746F6E
0x00AD = 0xAD
0x00AE = 0x295228
0x00B0 = 0x305E
0x00B1 = 0x2D2F2B
0x00B2 = 0x325E
0x00B3 = 0x335E
0x00B4 = 0x27
0x00B5 = 0x75
0x00B6 = 0x50
0x00B7 = 0x2E
0x00B8 = 0x2C
0x00B9 = 0x315E
0x00BA = 0x6F
0x00BB = 0x3E3E
0x00BF = 0x3F
0x00C0 = 0x4160
0x00C1 = 0x4127
0x00C2 = 0x415E
0x00C3 = 0x417E
0x00C4 = 0x4122
0x00C5 = 0x41
0x00C6 = 0x4541
0x00C7 = 0x43
0x00C8 = 0x4560
0x00C9 = 0x4527
0x00CA = 0x455E
0x00CB = 0x4522
0x00CC = 0x4960
0x00CD = 0x4927
0x00CE = 0x495E
0x00CF = 0x4922
0x00D0 = 0x44
0x00D1 = 0x4E7E
0x00D2 = 0x4F60
0x00D3 = 0x4F27
0x00D4 = 0x4F5E
0x00D5 = 0x4F7E
0x00D6 = 0x4F22
0x00D7 = 0x81 # MULTIPLICATION SIGN
0x00D8 = 0x4F
0x00D9 = 0x5560
0x00DA = 0x5527
0x00DB = 0x555E
0x00DC = 0x5522
0x00DD = 0x5927
0x00DE = 0x6854
0x00DF = 0x7373
0x00E0 = 0x6160
0x00E1 = 0x6127
0x00E2 = 0x615E
0x00E3 = 0x617E
0x00E4 = 0x6122
0x00E5 = 0x61
0x00E6 = 0x6561
0x00E7 = 0x63
0x00E8 = 0x6560
0x00E9 = 0x6527
0x00EA = 0x655E
0x00EB = 0x6522
0x00EC = 0x6960
0x00ED = 0x6927
0x00EE = 0x695E
0x00EF = 0x6922
0x00F0 = 0x64
0x00F1 = 0x6E7E
0x00F2 = 0x6F60
0x00F3 = 0x6F27
0x00F4 = 0x6F5E
0x00F5 = 0x6F7E
0x00F6 = 0x6F22
0x00F7 = 0x82 # DIVISION SIGN
0x00F8 = 0x6F
0x00F9 = 0x7560
0x00FA = 0x7527
0x00FB = 0x755E
0x00FC = 0x7522
0x00FD = 0x7927
0x00FE = 0x6874
0x00FF = 0x7922
0x0100 = 0x41
0x0101 = 0x61
0x0102 = 0x41
0x0103 = 0x61
0x0104 = 0x41
0x0105 = 0x61
0x0106 = 0x4327
0x0107 = 0x6327
0x0108 = 0x435E
0x0109 = 0x635E
0x010A = 0x43
0x010B = 0x63
0x010C = 0x43
0x010D = 0x63
0x010E = 0x44
0x010F = 0x64
0x0110 = 0x44
0x0111 = 0x64
0x0112 = 0x45
0x0113 = 0x65
0x0114 = 0x45
0x0115 = 0x65
0x0116 = 0x45
0x0117 = 0x65
0x0118 = 0x45
0x0119 = 0x65
0x011A = 0x45
0x011B = 0x65
0x011C = 0x475E
0x011D = 0x675E
0x011E = 0x47
0x011F = 0x67
0x0120 = 0x47
0x0121 = 0x67
0x0122 = 0x47
0x0123 = 0x67
0x0124 = 0x485E
0x0125 = 0x685E
0x0126 = 0x48
0x0127 = 0x68
0x0128 = 0x497E
0x0129 = 0x697E
0x012A = 0x49
0x012B = 0x69
0x012C = 0x49
0x012D = 0x69
0x012E = 0x49
0x012F = 0x69
0x0130 = 0x49
0x0131 = 0x69
0x0132 = 0x4A49
0x0133 = 0x6A69
0x0134 = 0x4A5E
0x0135 = 0x6A5E
0x0136 = 0x4B
0x0137 = 0x6B
0x0139 = 0x4C
0x013A = 0x6C
0x013B = 0x4C
0x013C = 0x6C
0x013D = 0x4C
0x013E = 0x6C
0x013F = 0x4C
0x0140 = 0x6C
0x0141 = 0x4C
0x0142 = 0x6C
0x0143 = 0x4E27
0x0144 = 0x6E27
0x0145 = 0x4E
0x0146 = 0x6E
0x0147 = 0x4E
0x0148 = 0x6E
0x0149 = 0x6E27
0x014C = 0x4F
0x014D = 0x6F
0x014E = 0x4F
0x014F = 0x6F
0x0150 = 0x4F22
0x0151 = 0x6F22
0x0152 = 0x454F
0x0153 = 0x656F
0x0154 = 0x5227
0x0155 = 0x7227
0x0156 = 0x52
0x0157 = 0x72
0x0158 = 0x52
0x0159 = 0x72
0x015A = 0x5327
0x015B = 0x7327
0x015C = 0x535E
0x015D = 0x735E
0x015E = 0x53
0x015F = 0x73
0x0160 = 0x53
0x0161 = 0x73
0x0162 = 0x54
0x0163 = 0x74
0x0164 = 0x54
0x0165 = 0x74
0x0166 = 0x54
0x0167 = 0x74
0x0168 = 0x557E
0x0169 = 0x757E
0x016A = 0x55
0x016B = 0x75
0x016C = 0x55
0x016D = 0x75
0x016E = 0x55
0x016F = 0x75
0x0170 = 0x5522
0x0171 = 0x7522
0x0172 = 0x55
0x0173 = 0x75
0x0174 = 0x575E
0x0175 = 0x775E
0x0176 = 0x595E
0x0177 = 0x795E
0x0178 = 0x5922
0x0179 = 0x5A27
0x017A = 0x7A27
0x017B = 0x5A
0x017C = 0x7A
0x017D = 0x5A
0x017E = 0x7A
0x017F = 0x73
0x0192 = 0x66
0x01C4 = 0x5A44
0x01C5 = 0x7A44
0x01C6 = 0x7A64
0x01C7 = 0x4A4C
0x01C8 = 0x6A4C
0x01C9 = 0x6A6C
0x01CA = 0x4A4E
0x01CB = 0x6A4E
0x01CC = 0x6A6E
0x01F1 = 0x5A44
0x01F2 = 0x7A44
0x01F3 = 0x7A64
0x0218 = 0x53
0x0219 = 0x73
0x021A = 0x54
0x021B = 0x74
0x02B9 = 0x27
0x02BA = 0x2727
0x02BB = 0x27
0x02BC = 0x27
0x02BD = 0x27
0x02C6 = 0x5E
0x02C8 = 0x27
0x02CA = 0x27
0x02CB = 0x60
0x02CD = 0x5F
0x02DC = 0x7E
0x02DD = 0x22
0x060C = 0xAC # ARABIC COMMA
0x061B = 0xBB # ARABIC SEMICOLON
0x061F = 0xBF # ARABIC QUESTION MARK
0x0621 - 0x0637 = 0xC1 -
0x0639 = 0xD9
0x063A = 0xDA
0x0640 = 0xE0 # ARABIC TATWEEL
0x0641 - 0x0650 = 0xE1 -
0x0651 = 0xF1 # ARABIC SHADDA
0x0652 = 0xF2
0x0660 - 0x0669 = 0xB0 - # ARABIC-INDIC DIGIT ZERO - NINE
0x1E02 = 0x42
0x1E03 = 0x62
0x1E0A = 0x44
0x1E0B = 0x64
0x1E1E = 0x46
0x1E1F = 0x66
0x1E40 = 0x4D
0x1E41 = 0x6D
0x1E56 = 0x50
0x1E57 = 0x70
0x1E60 = 0x53
0x1E61 = 0x73
0x1E6A = 0x54
0x1E6B = 0x74
0x1E80 = 0x5760
0x1E81 = 0x7760
0x1E82 = 0x5727
0x1E83 = 0x7727
0x1E84 = 0x5722
0x1E85 = 0x7722
0x1EF2 = 0x5960
0x1EF3 = 0x7960
0x2002 = 0x20
0x2003 = 0x20
0x2004 = 0x20
0x2005 = 0x20
0x2006 = 0x20
0x2008 = 0x20
0x2009 = 0x20
0x200A = 0x20
0x2010 = 0x2D
0x2011 = 0x2D
0x2012 = 0x2D
0x2013 = 0x2D
0x2014 = 0x2D
0x2015 = 0x2D
0x2018 = 0x27
0x2019 = 0x27
0x201A = 0x27
0x201B = 0x27
0x201C = 0x22
0x201D = 0x22
0x201E = 0x22
0x201F = 0x22
0x2020 = 0x2B
0x2022 = 0x6F
0x2024 = 0x2E
0x2025 = 0x2E2E
0x2026 = 0x2E2E2E
0x2030 = 0x6F6F2F6F
0x2032 = 0x27
0x2033 = 0x2727
0x2034 = 0x272727
0x2039 = 0x3C
0x203A = 0x3E
0x203C = 0x2121
0x2044 = 0x2F
0x2047 = 0x3F3F
0x2048 = 0x213F
0x2049 = 0x3F21
0x2057 = 0x27272727
0x20A8 = 0x7352
0x20AC = 0x525545
0x2100 = 0x632F61
0x2101 = 0x732F61
0x2102 = 0x43
0x2103 = 0x43305E
0x2105 = 0x6F2F63
0x2106 = 0x752F63
0x2109 = 0x46305E
0x210A = 0x67
0x210B = 0x48
0x210C = 0x48
0x210D = 0x48
0x210E = 0x68
0x210F = 0x68
0x2110 = 0x49
0x2111 = 0x49
0x2112 = 0x4C
0x2113 = 0x6C
0x2115 = 0x4E
0x2116 = 0x6F4E
0x2119 = 0x50
0x211A = 0x51
0x211B = 0x52
0x211C = 0x52
0x211D = 0x52
0x2121 = 0x4C4554
0x2122 = 0x4D54
0x2124 = 0x5A
0x2126 = 0x6D684F
0x2128 = 0x5A
0x212C = 0x42
0x212D = 0x43
0x212E = 0x65
0x212F = 0x65
0x2130 = 0x45
0x2131 = 0x46
0x2133 = 0x4D
0x2134 = 0x6F
0x2139 = 0x69
0x213B = 0x584146
0x2145 = 0x44
0x2146 = 0x64
0x2147 = 0x65
0x2148 = 0x69
0x2149 = 0x6A
0x215F = 0x2F3120
0x2160 = 0x49
0x2161 = 0x4949
0x2162 = 0x494949
0x2163 = 0x5649
0x2164 = 0x56
0x2165 = 0x4956
0x2166 = 0x494956
0x2167 = 0x49494956
0x2168 = 0x5849
0x2169 = 0x58
0x216A = 0x4958
0x216B = 0x494958
0x216C = 0x4C
0x216D = 0x43
0x216E = 0x44
0x216F = 0x4D
0x2170 = 0x69
0x2171 = 0x6969
0x2172 = 0x696969
0x2173 = 0x7669
0x2174 = 0x76
0x2175 = 0x6976
0x2176 = 0x696976
0x2177 = 0x69696976
0x2178 = 0x7869
0x2179 = 0x78
0x217A = 0x6978
0x217B = 0x696978
0x217C = 0x6C
0x217D = 0x63
0x217E = 0x64
0x217F = 0x6D
0x2190 = 0x2D3C
0x2191 = 0x5E
0x2192 = 0x3E2D
0x2193 = 0x56
0x2194 = 0x3E2D3C
0x21D0 = 0x3D3C
0x21D2 = 0x3E3D
0x21D4 = 0x3E3D3C
0x2212 = 0x2D
0x2215 = 0x2F
0x2216 = 0x5C
0x2217 = 0x2A
0x2219 = 0x6F
0x2223 = 0x7C
0x2236 = 0x3A
0x223C = 0x7E
0x2260 = 0x3D2F
0x2264 = 0x3D3C
0x2265 = 0x3D3E
0x226A = 0x3C3C
0x226B = 0x3E3E
0x22C5 = 0x2E
0x22D8 = 0x3C3C3C
0x22D9 = 0x3E3E3E
0x22EF = 0x2E2E2E
0x2408 = 0x5D53425B
0x2409 = 0x5D54485B
0x240A = 0x5D464C5B
0x240B = 0x5D54565B
0x240C = 0x5D46465B
0x240D = 0x5D52435B
0x240E = 0x5D4F535B
0x240F = 0x5D49535B
0x2419 = 0x5D4D455B
0x241C = 0x5D53465B
0x241D = 0x5D53475B
0x241E = 0x5D53525B
0x241F = 0x5D53555B
0x2420 = 0x5D50535B
0x2424 = 0x5D4C4E5B
0x2460 = 0x293128
0x2461 = 0x293228
0x2462 = 0x293328
0x2463 = 0x293428
0x2464 = 0x293528
0x2465 = 0x293628
0x2466 = 0x293728
0x2467 = 0x293828
0x2468 = 0x293928
0x2469 = 0x29303128
0x246A = 0x29313128
0x246B = 0x29323128
0x246C = 0x29333128
0x246D = 0x29343128
0x246E = 0x29353128
0x246F = 0x29363128
0x2470 = 0x29373128
0x2471 = 0x29383128
0x2472 = 0x29393128
0x2473 = 0x29303228
0x2474 = 0x293128
0x2475 = 0x293228
0x2476 = 0x293328
0x2477 = 0x293428
0x2478 = 0x293528
0x2479 = 0x293628
0x247A = 0x293728
0x247B = 0x293828
0x247C = 0x293928
0x247D = 0x29303128
0x247E = 0x29313128
0x247F = 0x29323128
0x2480 = 0x29333128
0x2481 = 0x29343128
0x2482 = 0x29353128
0x2483 = 0x29363128
0x2484 = 0x29373128
0x2485 = 0x29383128
0x2486 = 0x29393128
0x2487 = 0x29303228
0x2488 = 0x2E31
0x2489 = 0x2E32
0x248A = 0x2E33
0x248B = 0x2E34
0x248C = 0x2E35
0x248D = 0x2E36
0x248E = 0x2E37
0x248F = 0x2E38
0x2490 = 0x2E39
0x2491 = 0x2E3031
0x2492 = 0x2E3131
0x2493 = 0x2E3231
0x2494 = 0x2E3331
0x2495 = 0x2E3431
0x2496 = 0x2E3531
0x2497 = 0x2E3631
0x2498 = 0x2E3731
0x2499 = 0x2E3831
0x249A = 0x2E3931
0x249B = 0x2E3032
0x249C = 0x296128
0x249D = 0x296228
0x249E = 0x296328
0x249F = 0x296428
0x24A0 = 0x296528
0x24A1 = 0x296628
0x24A2 = 0x296728
0x24A3 = 0x296828
0x24A4 = 0x296928
0x24A5 = 0x296A28
0x24A6 = 0x296B28
0x24A7 = 0x296C28
0x24A8 = 0x296D28
0x24A9 = 0x296E28
0x24AA = 0x296F28
0x24AB = 0x297028
0x24AC = 0x297128
0x24AD = 0x297228
0x24AE = 0x297328
0x24AF = 0x297428
0x24B0 = 0x297528
0x24B1 = 0x297628
0x24B2 = 0x297728
0x24B3 = 0x297828
0x24B4 = 0x297928
0x24B5 = 0x297A28
0x24B6 = 0x294128
0x24B7 = 0x294228
0x24B8 = 0x294328
0x24B9 = 0x294428
0x24BA = 0x294528
0x24BB = 0x294628
0x24BC = 0x294728
0x24BD = 0x294828
0x24BE = 0x294928
0x24BF = 0x294A28
0x24C0 = 0x294B28
0x24C1 = 0x294C28
0x24C2 = 0x294D28
0x24C3 = 0x294E28
0x24C4 = 0x294F28
0x24C5 = 0x295028
0x24C6 = 0x295128
0x24C7 = 0x295228
0x24C8 = 0x295328
0x24C9 = 0x295428
0x24CA = 0x295528
0x24CB = 0x295628
0x24CC = 0x295728
0x24CD = 0x295828
0x24CE = 0x295928
0x24CF = 0x295A28
0x24D0 = 0x296128
0x24D1 = 0x296228
0x24D2 = 0x296328
0x24D3 = 0x296428
0x24D4 = 0x296528
0x24D5 = 0x296628
0x24D6 = 0x296728
0x24D7 = 0x296828
0x24D8 = 0x296928
0x24D9 = 0x296A28
0x24DA = 0x296B28
0x24DB = 0x296C28
0x24DC = 0x296D28
0x24DD = 0x296E28
0x24DE = 0x296F28
0x24DF = 0x297028
0x24E0 = 0x297128
0x24E1 = 0x297228
0x24E2 = 0x297328
0x24E3 = 0x297428
0x24E4 = 0x297528
0x24E5 = 0x297628
0x24E6 = 0x297728
0x24E7 = 0x297828
0x24E8 = 0x297928
0x24E9 = 0x297A28
0x24EA = 0x293028
0x2500 = 0x8B # BOX DRAWINGS LIGHT HORIZONTAL
0x2502 = 0x8A # BOX DRAWINGS LIGHT VERTICAL
0x250C = 0x8D # BOX DRAWINGS LIGHT DOWN AND RIGHT
0x2510 = 0x8C # BOX DRAWINGS LIGHT DOWN AND LEFT
0x2514 = 0x8E # BOX DRAWINGS LIGHT UP AND RIGHT
0x2518 = 0x8F # BOX DRAWINGS LIGHT UP AND LEFT
0x251C = 0x2B
0x2524 = 0x2B
0x252C = 0x2B
0x2534 = 0x2B
0x253C = 0x2B
0x25A0 = 0x89 # BLACK SQUARE
0x25E6 = 0x6F
0x2A74 = 0x3D3A3A
0x2A75 = 0x3D3D
0x2A76 = 0x3D3D3D
0x3000 = 0x20
0x30A0 = 0x3D
0x3250 = 0x455450
0x3251 = 0x29313228
0x3252 = 0x29323228
0x3253 = 0x29333228
0x3254 = 0x29343228
0x3255 = 0x29353228
0x3256 = 0x29363228
0x3257 = 0x29373228
0x3258 = 0x29383228
0x3259 = 0x29393228
0x325A = 0x29303328
0x325B = 0x29313328
0x325C = 0x29323328
0x325D = 0x29333328
0x325E = 0x29343328
0x325F = 0x29353328
0x32B1 = 0x29363328
0x32B2 = 0x29373328
0x32B3 = 0x29383328
0x32B4 = 0x29393328
0x32B5 = 0x29303428
0x32B6 = 0x29313428
0x32B7 = 0x29323428
0x32B8 = 0x29333428
0x32B9 = 0x29343428
0x32BA = 0x29353428
0x32BB = 0x29363428
0x32BC = 0x29373428
0x32BD = 0x29383428
0x32BE = 0x29393428
0x32BF = 0x29303528
0x32CC = 0x6748
0x32CD = 0x677265
0x32CE = 0x5665
0x32CF = 0x44544C
0x3371 = 0x615068
0x3372 = 0x6164
0x3373 = 0x5541
0x3374 = 0x726162
0x3375 = 0x566F
0x3376 = 0x6370
0x3377 = 0x6D64
0x3378 = 0x325E6D64
0x3379 = 0x335E6D64
0x337A = 0x5549
0x3380 = 0x4170
0x3381 = 0x416E
0x3383 = 0x416D
0x3384 = 0x416B
0x3385 = 0x424B
0x3386 = 0x424D
0x3387 = 0x4247
0x3388 = 0x6C6163
0x3389 = 0x6C61636B
0x338A = 0x4670
0x338B = 0x466E
0x338E = 0x676D
0x338F = 0x676B
0x3390 = 0x7A48
0x3391 = 0x7A486B
0x3392 = 0x7A484D
0x3393 = 0x7A4847
0x3394 = 0x7A4854
0x3396 = 0x6C6D
0x3397 = 0x6C64
0x3398 = 0x6C6B
0x3399 = 0x6D66
0x339A = 0x6D6E
0x339C = 0x6D6D
0x339D = 0x6D63
0x339E = 0x6D6B
0x339F = 0x325E6D6D
0x33A0 = 0x325E6D63
0x33A1 = 0x325E6D
0x33A2 = 0x325E6D6B
0x33A3 = 0x335E6D6D
0x33A4 = 0x335E6D63
0x33A5 = 0x335E6D
0x33A6 = 0x335E6D6B
0x33A7 = 0x732F6D
0x33A9 = 0x6150
0x33AA = 0x61506B
0x33AB = 0x61504D
0x33AC = 0x615047
0x33AD = 0x646172
0x33B0 = 0x7370
0x33B1 = 0x736E
0x33B3 = 0x736D
0x33B4 = 0x5670
0x33B5 = 0x566E
0x33B7 = 0x566D
0x33B8 = 0x566B
0x33B9 = 0x564D
0x33BA = 0x5770
0x33BB = 0x576E
0x33BD = 0x576D
0x33BE = 0x576B
0x33BF = 0x574D
0x33C2 = 0x2E6D2E61
0x33C3 = 0x7142
0x33C4 = 0x6363
0x33C5 = 0x6463
0x33C6 = 0x676B2F43
0x33C7 = 0x2E6F43
0x33C8 = 0x4264
0x33C9 = 0x7947
0x33CA = 0x6168
0x33CB = 0x5048
0x33CC = 0x6E69
0x33CD = 0x4B4B
0x33CE = 0x4D4B
0x33CF = 0x746B
0x33D0 = 0x6D6C
0x33D1 = 0x6E6C
0x33D2 = 0x676F6C
0x33D3 = 0x786C
0x33D4 = 0x626D
0x33D5 = 0x6C696D
0x33D6 = 0x6C6F6D
0x33D7 = 0x4850
0x33D8 = 0x2E6D2E70
0x33D9 = 0x4D5050
0x33DA = 0x5250
0x33DB = 0x7273
0x33DC = 0x7653
0x33DD = 0x6257
0x33DE = 0x6D2F56
0x33DF = 0x6D2F41
0x33FF = 0x6C6167
0xF8F4 = 0x85
0xF8F5 = 0x84
0xF8F6 = 0x83
0xF8F7 = 0x86
0xF8F8 = 0xA3 # Hamza Under Aleph (after Lam) != ARABIC LETTER ALEF WITH HAMZA BELOW(0x0625)
0xF8F9 = 0xA2 # Aleph Hamza (after Lam) != ARABIC LETTER ALEF WITH HAMZA ABOVE(0x0623)
0xF8FA = 0xA1 # Aleph Madda (after Lam) != ARABIC LETTER ALEF WITH MADDA ABOVE(0x0622)
0xF8FB = 0xA5 # Aleph (after Lam) != ARABIC LETTER ALEF(0x0627)
0xF8FC = 0xF6
0xFB00 = 0x6666
0xFB01 = 0x6966
0xFB02 = 0x6C66
0xFB03 = 0x696666
0xFB04 = 0x6C6666
0xFB05 = 0x7473
0xFB06 = 0x7473
0xFB29 = 0x2B
0xFE4D = 0x5F
0xFE4E = 0x5F
0xFE4F = 0x5F
0xFE50 = 0x2C
0xFE52 = 0x2E
0xFE54 = 0x3B
0xFE55 = 0x3A
0xFE56 = 0x3F
0xFE57 = 0x21
0xFE58 = 0x2D
0xFE59 = 0x28
0xFE5A = 0x29
0xFE5B = 0x7B
0xFE5C = 0x7D
0xFE5F = 0x23
0xFE60 = 0x26
0xFE61 = 0x2A
0xFE62 = 0x2B
0xFE63 = 0x2D
0xFE64 = 0x3C
0xFE65 = 0x3E
0xFE66 = 0x3D
0xFE68 = 0x5C
0xFE69 = 0x24
0xFE6A = 0x25
0xFE6B = 0x40
0xFE70 = 0xEB # ARABIC FATHATAN ISOLATED FORM
0xFE71 = 0x87 # ARABIC TATWHEEL WITH FATHATAN ABOVE
0xFE72 = 0xEC # ARABIC DAMMATAN ISOLATED FORM
0xFE73 = 0xF6
0xFE74 = 0xED # ARABIC KASRATAN ISOLATED FORM
0xFE76 = 0xEE # ARABIC FATHA ISOLATED FORM
0xFE77 = 0x94 # ARABIC FATHA MEDIAL FORM
0xFE78 = 0xEF # ARABIC DAMMA ISOLATED FORM
0xFE79 = 0x90 # ARABIC LETTER DAMMA MEDIAL FORM
0xFE7A = 0xF0 # ARABIC KASRA ISOLATED FORM
0xFE7B = 0x91 # ARABIC LETTER KASRA MEDIAL FORM
0xFE7D = 0x92 # ARABIC LETTER SHADDA MEDIAL FORM
0xFE7E = 0xF2 # ARABIC SUKUN ISOLATED FORM
0xFE7F = 0x93 # ARABIC LETTER SUKUN MEDIAL FORM
0xFE80 = 0xC1 # ARABIC LETTER HAMZA ISOTATED FORM
0xFE81 = 0xC2 # ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
0xFE82 = 0xDC # ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
0xFE83 = 0xC3 # ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
0xFE84 = 0xDD # ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
0xFE85 = 0xC4 # ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
0xFE87 = 0xC5 # ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM
0xFE88 = 0x80 # ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM
0xFE89 = 0xC6 # ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM
0xFE8A = 0x95 # ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM
0xFE8B = 0xA6 # ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
0xFE8D = 0xC7 # ARABIC LETTER ALEF ISOLATED FORM
0xFE8E = 0xDE # ARABIC LETTER ALEF FINAL FORM
0xFE8F = 0xC8 # ARABIC LETTER BEH ISOLATED FORM
0xFE91 = 0xA7 # ARABIC LETTER BEH INITIAL FORM
0xFE93 = 0xC9 # ARABIC LETTER TEH MARBUTA ISOLATED FORM
0xFE95 = 0xCA # ARABIC LETTER TEH ISOLATED FORM
0xFE97 = 0xA8 # ARABIC LETTER TEH INITIAL FORM
0xFE99 = 0xCB # ARABIC LETTER THEH ISOLATED FORM
0xFE9B = 0xA9 # ARABIC LETTER THEH INITIAL FORM
0xFE9D = 0xCC # ARABIC LETTER JEEM ISOLATED FORM
0xFE9F = 0xAA # ARABIC LETTER JEEM INITIAL FORM
0xFEA1 = 0xCD # ARABIC LETTER HAH ISOLATED FORM
0xFEA3 = 0xAB # ARABIC LETTER HAH INITIAL FORM
0xFEA5 = 0xCE # ARABIC LETTER KHAH ISOLATED FORM
0xFEA7 = 0xAE # ARABIC LETTER KHAH INITIAL FORM
0xFEA9 = 0xCF # ARABIC LETTER DAL ISOLATED FORM
0xFEAB = 0xD0 # ARABIC LETTER THAL ISOLATED FORM
0xFEAD = 0xD1 # ARABIC LETTER REH ISOLATED FORM
0xFEAF = 0xD2 # ARABIC LETTER REH FINAL FORM
0xFEB1 = 0x83 # ARABIC LETTER SEEN ISOLATED FORM
0xFEB2 = 0xD3 # ARABIC LETTER SEEN FINAL FORM
0xFEB3 = 0xAF # ARABIC LETTER SEEN INITIAL FORM
0xFEB5 = 0x84 # ARABIC LETTER SHEEN ISOLATED FORM
0xFEB6 = 0xD4 # ARABIC LETTER SHEEN FINAL FORM
0xFEB7 = 0xBA # ARABIC LETTER SHEEN INITIAL FORM
0xFEB9 = 0x85 # ARABIC LETTER SAD ISOLATED FORM
0xFEBA = 0xD5 # ARABIC LETTER SAD FINAL FORM
0xFEBB = 0xBC # ARABIC LETTER SAD INITIAL FORM
0xFEBD = 0x86 # ARABIC LETTER DAD ISOLATED FORM
0xFEBE = 0xD6 # ARABIC LETTER DAD FINAL FORM
0xFEBF = 0xBD # ARABIC LETTER DAD INITIAL FORM
0xFEC1 = 0xD7 # ARABIC LETTER TAH ISOLATED FORM
0xFEC5 = 0xD8 # ARABIC LETTER ZAH ISOLATED FORM
0xFEC7 = 0xD8
0xFEC9 = 0xD9 # ARABIC LETTER AIN ISOLATED FORM
0xFECA = 0xBE # ARABIC LETTER AIN FINAL FORM
0xFECB = 0xC0 # ARABIC LETTER AIN INITIAL FORM
0xFECC = 0xDB # ARABIC LETTER AIN MEDIAL FORM
0xFECD = 0xDA # ARABIC LETTER GHAIN ISOLATED FORM
0xFECE = 0x99 # ARABIC LETTER GHAIN FINAL FORM
0xFECF = 0x9A # ARABIC LETTER GHAIN INITIAL FORM
0xFED0 = 0x9B # ARABIC LETTER GHAIN MEDIAL FORM
0xFED1 = 0xE1 # ARABIC LETTER FEH ISOLATED FORM
0xFED3 = 0xDF # ARABIC LETTER FEH INITIAL FORM
0xFED5 = 0xE2 # ARABIC LETTER QAF ISOLATED FORM
0xFED7 = 0xF3 # ARABIC LETTER QAF INITIAL FORM
0xFED9 = 0xE3 # ARABIC LETTER KAF ISOLATED FORM
0xFEDB = 0xF4 # ARABIC LETTER KAF INITIAL FORM
0xFEDD = 0xE4 # ARABIC LETTER LAM ISOLATED FORM
0xFEDF = 0xF5 # ARABIC LETTER LAM INITIAL FORM
0xFEE1 = 0xE5 # ARABIC LETTER MEEM ISOLATED FORM
0xFEE3 = 0xFB # ARABIC LETTER MEEM INITIAL FORM
0xFEE5 = 0xE6 # ARABIC LETTER NOON ISOLATED FORM
0xFEE7 = 0xFC # ARABIC LETTER NOON INITIAL FORM
0xFEE9 = 0xFE # ARABIC LETTER HEH ISOLATED FORM
0xFEEB = 0xE7 # ARABIC LETTER HEH ISOLATED FORM
0xFEEC = 0xFD # ARABIC LETTER HEH MEDIAL FORM
0xFEED = 0xE8 # ARABIC LETTER WAW ISOLATED FORM
0xFEEF = 0xE9 # ARABIC LETTER ALEF MAKSURA ISOLATED FORM
0xFEF0 = 0x96 # ARABIC LETTER ALEF MAKSUMA FINAL FORM
0xFEF1 = 0xEA # ARABIC LETTER YEH ISOLATED FORM
0xFEF2 = 0x98 # ARABIC LETTER YEH FINAL FORM
0xFEF3 = 0x97 # ARABIC LETTER YEH INITIAL FORM
0xFEF5 = 0xF7 # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
0xFEF6 = 0x9C # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
0xFEF7 = 0xF8 # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
0xFEF8 = 0x9D # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
0xFEF9 = 0xF9 # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM
0xFEFA = 0x9E # ARABIC LIGATURE LAM WITH ALEF WITH HANZA BELOW FINAL FORM
0xFEFB = 0xFA # ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
0xFEFC = 0x9F # ARABIC LIGATURE LAM WITH ALEF FINAL FORM
0xFF01 = 0x21
0xFF02 = 0x22
0xFF03 = 0x23
0xFF04 = 0x24
0xFF05 = 0x25
0xFF06 = 0x26
0xFF07 = 0x27
0xFF08 = 0x28
0xFF09 = 0x29
0xFF0A = 0x2A
0xFF0B = 0x2B
0xFF0C = 0x2C
0xFF0D = 0x2D
0xFF0E = 0x2E
0xFF0F = 0x2F
0xFF10 = 0x30
0xFF11 = 0x31
0xFF12 = 0x32
0xFF13 = 0x33
0xFF14 = 0x34
0xFF15 = 0x35
0xFF16 = 0x36
0xFF17 = 0x37
0xFF18 = 0x38
0xFF19 = 0x39
0xFF1A = 0x3A
0xFF1B = 0x3B
0xFF1C = 0x3C
0xFF1D = 0x3D
0xFF1E = 0x3E
0xFF1F = 0x3F
0xFF20 = 0x40
0xFF21 = 0x41
0xFF22 = 0x42
0xFF23 = 0x43
0xFF24 = 0x44
0xFF25 = 0x45
0xFF26 = 0x46
0xFF27 = 0x47
0xFF28 = 0x48
0xFF29 = 0x49
0xFF2A = 0x4A
0xFF2B = 0x4B
0xFF2C = 0x4C
0xFF2D = 0x4D
0xFF2E = 0x4E
0xFF2F = 0x4F
0xFF30 = 0x50
0xFF31 = 0x51
0xFF32 = 0x52
0xFF33 = 0x53
0xFF34 = 0x54
0xFF35 = 0x55
0xFF36 = 0x56
0xFF37 = 0x57
0xFF38 = 0x58
0xFF39 = 0x59
0xFF3A = 0x5A
0xFF3B = 0x5B
0xFF3C = 0x5C
0xFF3D = 0x5D
0xFF3E = 0x5E
0xFF3F = 0x5F
0xFF40 = 0x60
0xFF41 = 0x61
0xFF42 = 0x62
0xFF43 = 0x63
0xFF44 = 0x64
0xFF45 = 0x65
0xFF46 = 0x66
0xFF47 = 0x67
0xFF48 = 0x68
0xFF49 = 0x69
0xFF4A = 0x6A
0xFF4B = 0x6B
0xFF4C = 0x6C
0xFF4D = 0x6D
0xFF4E = 0x6E
0xFF4F = 0x6F
0xFF50 = 0x70
0xFF51 = 0x71
0xFF52 = 0x72
0xFF53 = 0x73
0xFF54 = 0x74
0xFF55 = 0x75
0xFF56 = 0x76
0xFF57 = 0x77
0xFF58 = 0x78
0xFF59 = 0x79
0xFF5A = 0x7A
0xFF5B = 0x7B
0xFF5C = 0x7C
0xFF5D = 0x7D
0xFF5E = 0x7E
0xFFE0 = 0x63
0xFFE1 = 0x626C
0xFFE2 = 0x746F6E
0xFFE4 = 0x7C
0xFFE5 = 0x6E6579
0xFFE8 = 0x8A
0xFFE9 = 0x2D3C
0xFFEA = 0x5E
0xFFEB = 0x3E2D
0xFFEC = 0x56
0xFFED = 0x89
END_MAP