#=======================================================================
#   File name:  ARABIC.TXT
#
#   Contents:   Map (external version) from Mac OS Arabic
#               character set to Unicode 2.1 and later.
#
#   Copyright:  (c) 1994-2002, 2005 by Apple Computer, Inc., all rights
#               reserved.
#
#   Contact:    charsets@apple.com
#
#   Changes:
#
#       c02  2005-Apr-04    Update header comments. Matches internal xml
#                           <c1.2> and Text Encoding Converter 2.0.
#      b3,c1 2002-Dec-19    Add comments about character display and
#                           direction overrides. Update URLs, notes.
#                           Matches internal utom<b4>.
#       b02  1999-Sep-22    Update contact e-mail address. Matches
#                           internal utom<b1>, ufrm<b1>, and Text
#                           Encoding Converter version 1.5.
#       n10  1998-Feb-05    Show required Unicode character
#                           directionality in a different way. Matches
#                           internal utom<n4>, ufrm<n21>, and Text
#                           Encoding Converter version 1.3. Update
#                           header comments; include information on
#                           loose mapping of digits.
#       n07  1997-Jul-17    Update to match internal utom<n2>, ufrm<n17>:
#                           Change standard mapping for 0xC0 from U+066D
#                           to U+274A. Add direction overrides to
#                           mappings for 0x25, 0x2C, 0x3B, 0x3F. Add
#                           information on variants.
#       n03  1995-Apr-18    First version (after fixing some typos).
#                           Matches internal ufrm<n11>.
#
# Standard header:
# ----------------
#
#   Apple, the Apple logo, and Macintosh are trademarks of Apple
#   Computer, Inc., registered in the United States and other countries.
#   Unicode is a trademark of Unicode Inc. For the sake of brevity,
#   throughout this document, "Macintosh" can be used to refer to
#   Macintosh computers and "Unicode" can be used to refer to the
#   Unicode standard.
#
#   Apple Computer, Inc. ("Apple") makes no warranty or representation,
#   either express or implied, with respect to this document and the
#   included data, its quality, accuracy, or fitness for a particular
#   purpose. In no event will Apple be liable for direct, indirect, 
#   special, incidental, or consequential damages resulting from any
#   defect or inaccuracy in this document or the included data.
#
#   These mapping tables and character lists are subject to change.
#   The latest tables should be available from the following:
#
#   <http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/>
#
#   For general information about Mac OS encodings and these mapping
#   tables, see the file "README.TXT".
#
# Format:
# -------
#
#   Three tab-separated columns;
#   '#' begins a comment which continues to the end of the line.
#     Column #1 is the Mac OS Arabic code (in hex as 0xNN).
#     Column #2 is the corresponding Unicode (in hex as 0xNNNN),
#       possibly preceded by a tag indicating required directionality
#       (i.e. <LR>+0xNNNN or <RL>+0xNNNN).
#     Column #3 is a comment containing the Unicode name.
#
#   The entries are in Mac OS Arabic code order.
#
#   Control character mappings are not shown in this table, following
#   the conventions of the standard UTC mapping tables. However, the
#   Mac OS Arabic character set uses the standard control characters at
#   0x00-0x1F and 0x7F.
#
# Notes on Mac OS Arabic:
# -----------------------
#
#   This is a legacy Mac OS encoding; in the Mac OS X Carbon and Cocoa
#   environments, it is only supported via transcoding to and from
#   Unicode.
#
#   1. General
#
#   The Mac OS Arabic character set is intended to cover Arabic as
#   used in North Africa, the Arabian peninsula, and the Levant. It
#   also contains several characters needed for Urdu and/or Farsi.
#
#   The Mac OS Arabic character set is essentially a superset of ISO
#   8859-6. The 8859-6 code points that are interpreted differently
#   in the Mac OS Arabic set are as follows:
#    0xA0 is NO-BREAK SPACE in 8859-6 and right-left SPACE in Mac OS
#         Arabic; NO-BREAK is 0x81 in Mac OS Arabic.
#    0xA4 is CURRENCY SIGN in 8859-6 and right-left DOLLAR SIGN in
#         Mac OS Arabic.
#    0xAD is SOFT HYPHEN in 8859-6 and right-left HYPHEN-MINUS in
#         Mac OS Arabic.
#   ISO 8859-6 specifies that codes 0x30-0x39 can be rendered either
#   with European digit shapes or Arabic digit shapes. This is also
#   true in Mac OS Arabic, which determines from context which digit
#   shapes to use (see below).
#
#   The Mac OS Arabic character set uses the C1 controls area and other
#   code points which are undefined in ISO 8859-6 for additional
#   graphic characters: additional Arabic letters for Farsi and Urdu,
#   some accented Roman letters for European languages (such as French),
#   and duplicates of some of the punctuation, symbols, and digits in
#   the ASCII block. The duplicate punctuation, symbol, and digit
#   characters have right-left directionality, while the ASCII versions
#   have left-right directionality. See the next section for more
#   information on this.
#
#   Mac OS Arabic characters 0xEB-0xF2 are non-spacing/combining marks.
#
#   2. Directional characters and roundtrip fidelity
#
#   The Mac OS Arabic character set was developed in 1986-1987. At that
#   time the bidirectional line layout algorithm used in the Mac OS
#   Arabic system was fairly simple; it used only a few direction
#   classes (instead of the 19 now used in the Unicode bidirectional
#   algorithm). In order to permit users to handle some tricky layout
#   problems, certain punctuation and symbol characters were encoded
#   twice, one with a left-right direction attribute and the other with
#   a right-left direction attribute.
#
#   For example, plus sign is encoded at 0x2B with a left-right
#   attribute, and at 0xAB with a right-left attribute. However, there
#   is only one PLUS SIGN character in Unicode. This leads to some
#   interesting problems when mapping between Mac OS Arabic and Unicode;
#   see below.
#
#   A related problem is that even when a particular character is
#   encoded only once in Mac OS Arabic, it may have a different
#   direction attribute than the corresponding Unicode character.
#
#   For example, the Mac OS Arabic character at 0x93 is HORIZONTAL
#   ELLIPSIS with strong right-left direction. However, the Unicode
#   character HORIZONTAL ELLIPSIS has direction class neutral.
#
#   3. Behavior of ASCII-range numbers in WorldScript
#
#   Mac OS Arabic also has two sets of digit codes.
#
#   The digits at 0x30-0x39 may be displayed using either European
#   digit forms or Arabic digit forms, depending on context. If there
#   is a "strong European" character such as a Latin letter on either
#   side of a sequence consisting of digits 0x30-0x39 and possibly comma
#   0x2C or period 0x2E, then the characters will be displayed using
#   European forms (This will happen even if there are neutral characters
#   between the digits and the strong European character). Otherwise, the
#   digits will be displayed using Arabic forms, the comma will be
#   displayed as Arabic thousands separator, and the period as Arabic
#   decimal separator. In any case, 0x2C, 0x2E, and 0x30-0x39 are always
#   left-right.
#
#   The digits at 0xB0-0xB9 are always displayed using Arabic digit
#   shapes, and moreover, these digits always have strong right-left
#   directionality. These are mainly intended for special layout
#   purposes such as part numbers, etc.
#
#   4. Font variants
#
#   The table in this file gives the Unicode mappings for the standard
#   Mac OS Arabic encoding. This encoding is supported by the Cairo font
#   (the system font for Arabic), and is the encoding supported by the
#   text processing utilities. However, the other Arabic fonts actually
#   implement slightly different encodings; this mainly affects the code
#   points 0xAA and 0xC0. For these code points the standard Mac OS
#   Arabic encoding has the following mappings:
#     0xAA -> <RL>+0x002A ASTERISK, right-left
#     0xC0 -> <RL>+0x274A EIGHT TEARDROP-SPOKED PROPELLER ASTERISK,
#                         right-left
#   This mapping of 0xAA is consistent with the normal convention for
#   Mac OS Arabic and Hebrew that the right-left duplicates have codes
#   that are equal to the ASCII code of the left-right character plus
#   0x80. However, in all of the other fonts, 0xAA is MULTIPLY SIGN, and
#   right-left ASTERISK may be at a different code point. The other
#   variants are described below.
#
#   The TrueType variant is used for most of the Arabic TrueType fonts:
#   Baghdad, Geeza, Kufi, Nadeem.  It differs from the standard variant
#   in the following way:
#     0xAA -> <RL>+0x00D7 MULTIPLICATION SIGN, right-left
#     0xC0 -> <RL>+0x002A ASTERISK, right-left
#
#   The Thuluth variant is used for the Arabic Postscript-only fonts:
#   Thuluth and Thuluth bold. It differs from the standard variant in
#   the following way:
#     0xAA -> <RL>+0x00D7 MULTIPLICATION SIGN, right-left
#     0xC0 -> 0x066D ARABIC FIVE POINTED STAR
#
#   The AlBayan variant is used for the Arabic TrueType font Al Bayan.
#   It differs from the standard variant in the following way:
#     0x81 -> no mapping (glyph just has authorship information, etc.)
#     0xA3 -> 0xFDFA ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM
#     0xA4 -> 0xFDF2 ARABIC LIGATURE ALLAH ISOLATED FORM
#     0xAA -> <RL>+0x00D7 MULTIPLICATION SIGN, right-left
#     0xDC -> <RL>+0x25CF BLACK CIRCLE, right-left
#     0xFC -> <RL>+0x25A0 BLACK SQUARE, right-left
#
# Unicode mapping issues and notes:
# ---------------------------------
#
#   1. Matching the direction of Mac OS Arabic characters
#
#   When Mac OS Arabic encodes a character twice but with different
#   direction attributes for the two code points - as in the case of
#   plus sign mentioned above - we need a way to map both Mac OS Arabic
#   code points to Unicode and back again without loss of information.
#   With the plus sign, for example, mapping one of the Mac OS Arabic
#   characters to a code in the Unicode corporate use zone is
#   undesirable, since both of the plus sign characters are likely to
#   be used in text that is interchanged.
#
#   The problem is solved with the use of direction override characters
#   and direction-dependent mappings. When mapping from Mac OS Arabic
#   to Unicode, we use direction overrides as necessary to force the
#   direction of the resulting Unicode characters.
#
#   The required direction is indicated by a direction tag in the
#   mappings. A tag of <LR> means the corresponding Unicode character
#   must have a strong left-right context, and a tag of <RL> indicates
#   a right-left context.
#
#   For example, the mapping of 0x2B is given as <LR>+0x002B; the
#   mapping of 0xAB is given as <RL>+0x002B. If we map an isolated
#   instance of 0x2B to Unicode, it should be mapped as follows (LRO
#   indicates LEFT-RIGHT OVERRIDE, PDF indicates POP DIRECTION
#   FORMATTING):
#
#     0x2B ->  0x202D (LRO) + 0x002B (PLUS SIGN) + 0x202C (PDF)
#
#   When mapping several characters in a row that require direction
#   forcing, the overrides need only be used at the beginning and end.
#   For example:
#
#     0x24 0x20 0x28 0x29 -> 0x202D 0x0024 0x0020 0x0028 0x0029 0x202C
#
#   If neutral characters that require direction forcing are already
#   between strong-direction characters with matching directionality,
#   then direction overrides need not be used. Direction overrides are
#   always needed to map the right-left digits at 0xB0-0xB9.
#
#   When mapping from Unicode to Mac OS Arabic, the Unicode
#   bidirectional algorithm should be used to determine resolved
#   direction of the Unicode characters. The mapping from Unicode to
#   Mac OS Arabic can then be disambiguated by the use of the resolved
#   direction:
#
#     Unicode 0x002B -> Mac OS Arabic 0x2B (if L) or 0xAB (if R)
#
#   However, this also means the direction override characters should
#   be discarded when mapping from Unicode to Mac OS Arabic (after
#   they have been used to determine resolved direction), since the
#   direction override information is carried by the code point itself.
#
#   Even when direction overrides are not needed for roundtrip
#   fidelity, they are sometimes used when mapping Mac OS Arabic
#   characters to Unicode in order to achieve similar text layout with
#   the resulting Unicode text. For example, the single Mac OS Arabic
#   ellipsis character has direction class right-left,and there is no
#   left-right version. However, the Unicode HORIZONTAL ELLIPSIS
#   character has direction class neutral (which means it may end up
#   with a resolved direction of left-right if surrounded by left-right
#   characters). When mapping the Mac OS Arabic ellipsis to Unicode, it
#   is surrounded with a direction override to help preserve proper
#   text layout. The resolved direction is not needed or used when
#   mapping the Unicode HORIZONTAL ELLIPSIS back to Mac OS Arabic.
#
#   2. Mapping the Mac OS Arabic digits
#
#   The main table below contains mappings that should be used when
#   strict round-trip fidelity is required. However, for numeric
#   values, the mappings in that table will produce Unicode characters
#   that may appear different than the Mac OS Arabic text displayed on
#   a Mac OS system using WorldScript. This is because WorldScript
#   uses context-dependent display for the 0x30-0x39 digits.
#
#   If roundtrip fidelity is not required, then the following
#   alternate mappings should be used when a sequence of 0x30-0x39
#   digits - possibly including 0x2C and 0x2E - occurs in an Arabic
#   context (that is, when the first "strong" character on either side
#   of the digit sequence is Arabic, or there is no strong character):
#
#     0x2C	0x066C	# ARABIC THOUSANDS SEPARATOR
#     0x2E	0x066B	# ARABIC DECIMAL SEPARATOR
#     0x30	0x0660	# ARABIC-INDIC DIGIT ZERO
#     0x31	0x0661	# ARABIC-INDIC DIGIT ONE
#     0x32	0x0662	# ARABIC-INDIC DIGIT TWO
#     0x33	0x0663	# ARABIC-INDIC DIGIT THREE
#     0x34	0x0664	# ARABIC-INDIC DIGIT FOUR
#     0x35	0x0665	# ARABIC-INDIC DIGIT FIVE
#     0x36	0x0666	# ARABIC-INDIC DIGIT SIX
#     0x37	0x0667	# ARABIC-INDIC DIGIT SEVEN
#     0x38	0x0668	# ARABIC-INDIC DIGIT EIGHT
#     0x39	0x0669	# ARABIC-INDIC DIGIT NINE
#
# Details of mapping changes in each version:
# -------------------------------------------
#
#   Changes from version n03 to version n07:
#
#   - Change mapping for 0xC0 from U+066D to U+274A.
#
#   - Add direction overrides (required directionality) to mappings
#     for 0x25, 0x2C, 0x3B, 0x3F.
#
##################

0x20	<LR>+0x0020	# SPACE, left-right
0x21	<LR>+0x0021	# EXCLAMATION MARK, left-right
0x22	<LR>+0x0022	# QUOTATION MARK, left-right
0x23	<LR>+0x0023	# NUMBER SIGN, left-right
0x24	<LR>+0x0024	# DOLLAR SIGN, left-right
0x25	<LR>+0x0025	# PERCENT SIGN, left-right
0x26	<LR>+0x0026	# AMPERSAND, left-right
0x27	<LR>+0x0027	# APOSTROPHE, left-right
0x28	<LR>+0x0028	# LEFT PARENTHESIS, left-right
0x29	<LR>+0x0029	# RIGHT PARENTHESIS, left-right
0x2A	<LR>+0x002A	# ASTERISK, left-right
0x2B	<LR>+0x002B	# PLUS SIGN, left-right
0x2C	<LR>+0x002C	# COMMA, left-right; in Arabic-script context, displayed as 0x066C ARABIC THOUSANDS SEPARATOR
0x2D	<LR>+0x002D	# HYPHEN-MINUS, left-right
0x2E	<LR>+0x002E	# FULL STOP, left-right; in Arabic-script context, displayed as 0x066B ARABIC DECIMAL SEPARATOR
0x2F	<LR>+0x002F	# SOLIDUS, left-right
0x30	0x0030	# DIGIT ZERO;  in Arabic-script context, displayed as 0x0660 ARABIC-INDIC DIGIT ZERO
0x31	0x0031	# DIGIT ONE;   in Arabic-script context, displayed as 0x0661 ARABIC-INDIC DIGIT ONE
0x32	0x0032	# DIGIT TWO;   in Arabic-script context, displayed as 0x0662 ARABIC-INDIC DIGIT TWO
0x33	0x0033	# DIGIT THREE; in Arabic-script context, displayed as 0x0663 ARABIC-INDIC DIGIT THREE
0x34	0x0034	# DIGIT FOUR;  in Arabic-script context, displayed as 0x0664 ARABIC-INDIC DIGIT FOUR
0x35	0x0035	# DIGIT FIVE;  in Arabic-script context, displayed as 0x0665 ARABIC-INDIC DIGIT FIVE
0x36	0x0036	# DIGIT SIX;   in Arabic-script context, displayed as 0x0666 ARABIC-INDIC DIGIT SIX
0x37	0x0037	# DIGIT SEVEN; in Arabic-script context, displayed as 0x0667 ARABIC-INDIC DIGIT SEVEN
0x38	0x0038	# DIGIT EIGHT; in Arabic-script context, displayed as 0x0668 ARABIC-INDIC DIGIT EIGHT
0x39	0x0039	# DIGIT NINE;  in Arabic-script context, displayed as 0x0669 ARABIC-INDIC DIGIT NINE
0x3A	<LR>+0x003A	# COLON, left-right
0x3B	<LR>+0x003B	# SEMICOLON, left-right
0x3C	<LR>+0x003C	# LESS-THAN SIGN, left-right
0x3D	<LR>+0x003D	# EQUALS SIGN, left-right
0x3E	<LR>+0x003E	# GREATER-THAN SIGN, left-right
0x3F	<LR>+0x003F	# QUESTION MARK, left-right
0x40	0x0040	# COMMERCIAL AT
0x41	0x0041	# LATIN CAPITAL LETTER A
0x42	0x0042	# LATIN CAPITAL LETTER B
0x43	0x0043	# LATIN CAPITAL LETTER C
0x44	0x0044	# LATIN CAPITAL LETTER D
0x45	0x0045	# LATIN CAPITAL LETTER E
0x46	0x0046	# LATIN CAPITAL LETTER F
0x47	0x0047	# LATIN CAPITAL LETTER G
0x48	0x0048	# LATIN CAPITAL LETTER H
0x49	0x0049	# LATIN CAPITAL LETTER I
0x4A	0x004A	# LATIN CAPITAL LETTER J
0x4B	0x004B	# LATIN CAPITAL LETTER K
0x4C	0x004C	# LATIN CAPITAL LETTER L
0x4D	0x004D	# LATIN CAPITAL LETTER M
0x4E	0x004E	# LATIN CAPITAL LETTER N
0x4F	0x004F	# LATIN CAPITAL LETTER O
0x50	0x0050	# LATIN CAPITAL LETTER P
0x51	0x0051	# LATIN CAPITAL LETTER Q
0x52	0x0052	# LATIN CAPITAL LETTER R
0x53	0x0053	# LATIN CAPITAL LETTER S
0x54	0x0054	# LATIN CAPITAL LETTER T
0x55	0x0055	# LATIN CAPITAL LETTER U
0x56	0x0056	# LATIN CAPITAL LETTER V
0x57	0x0057	# LATIN CAPITAL LETTER W
0x58	0x0058	# LATIN CAPITAL LETTER X
0x59	0x0059	# LATIN CAPITAL LETTER Y
0x5A	0x005A	# LATIN CAPITAL LETTER Z
0x5B	<LR>+0x005B	# LEFT SQUARE BRACKET, left-right
0x5C	<LR>+0x005C	# REVERSE SOLIDUS, left-right
0x5D	<LR>+0x005D	# RIGHT SQUARE BRACKET, left-right
0x5E	<LR>+0x005E	# CIRCUMFLEX ACCENT, left-right
0x5F	<LR>+0x005F	# LOW LINE, left-right
0x60	0x0060	# GRAVE ACCENT
0x61	0x0061	# LATIN SMALL LETTER A
0x62	0x0062	# LATIN SMALL LETTER B
0x63	0x0063	# LATIN SMALL LETTER C
0x64	0x0064	# LATIN SMALL LETTER D
0x65	0x0065	# LATIN SMALL LETTER E
0x66	0x0066	# LATIN SMALL LETTER F
0x67	0x0067	# LATIN SMALL LETTER G
0x68	0x0068	# LATIN SMALL LETTER H
0x69	0x0069	# LATIN SMALL LETTER I
0x6A	0x006A	# LATIN SMALL LETTER J
0x6B	0x006B	# LATIN SMALL LETTER K
0x6C	0x006C	# LATIN SMALL LETTER L
0x6D	0x006D	# LATIN SMALL LETTER M
0x6E	0x006E	# LATIN SMALL LETTER N
0x6F	0x006F	# LATIN SMALL LETTER O
0x70	0x0070	# LATIN SMALL LETTER P
0x71	0x0071	# LATIN SMALL LETTER Q
0x72	0x0072	# LATIN SMALL LETTER R
0x73	0x0073	# LATIN SMALL LETTER S
0x74	0x0074	# LATIN SMALL LETTER T
0x75	0x0075	# LATIN SMALL LETTER U
0x76	0x0076	# LATIN SMALL LETTER V
0x77	0x0077	# LATIN SMALL LETTER W
0x78	0x0078	# LATIN SMALL LETTER X
0x79	0x0079	# LATIN SMALL LETTER Y
0x7A	0x007A	# LATIN SMALL LETTER Z
0x7B	<LR>+0x007B	# LEFT CURLY BRACKET, left-right
0x7C	<LR>+0x007C	# VERTICAL LINE, left-right
0x7D	<LR>+0x007D	# RIGHT CURLY BRACKET, left-right
0x7E	0x007E	# TILDE
#
0x80	0x00C4	# LATIN CAPITAL LETTER A WITH DIAERESIS
0x81	<RL>+0x00A0	# NO-BREAK SPACE, right-left
0x82	0x00C7	# LATIN CAPITAL LETTER C WITH CEDILLA
0x83	0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE
0x84	0x00D1	# LATIN CAPITAL LETTER N WITH TILDE
0x85	0x00D6	# LATIN CAPITAL LETTER O WITH DIAERESIS
0x86	0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS
0x87	0x00E1	# LATIN SMALL LETTER A WITH ACUTE
0x88	0x00E0	# LATIN SMALL LETTER A WITH GRAVE
0x89	0x00E2	# LATIN SMALL LETTER A WITH CIRCUMFLEX
0x8A	0x00E4	# LATIN SMALL LETTER A WITH DIAERESIS
0x8B	0x06BA	# ARABIC LETTER NOON GHUNNA
0x8C	<RL>+0x00AB	# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK, right-left
0x8D	0x00E7	# LATIN SMALL LETTER C WITH CEDILLA
0x8E	0x00E9	# LATIN SMALL LETTER E WITH ACUTE
0x8F	0x00E8	# LATIN SMALL LETTER E WITH GRAVE
0x90	0x00EA	# LATIN SMALL LETTER E WITH CIRCUMFLEX
0x91	0x00EB	# LATIN SMALL LETTER E WITH DIAERESIS
0x92	0x00ED	# LATIN SMALL LETTER I WITH ACUTE
0x93	<RL>+0x2026	# HORIZONTAL ELLIPSIS, right-left
0x94	0x00EE	# LATIN SMALL LETTER I WITH CIRCUMFLEX
0x95	0x00EF	# LATIN SMALL LETTER I WITH DIAERESIS
0x96	0x00F1	# LATIN SMALL LETTER N WITH TILDE
0x97	0x00F3	# LATIN SMALL LETTER O WITH ACUTE
0x98	<RL>+0x00BB	# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK, right-left
0x99	0x00F4	# LATIN SMALL LETTER O WITH CIRCUMFLEX
0x9A	0x00F6	# LATIN SMALL LETTER O WITH DIAERESIS
0x9B	<RL>+0x00F7	# DIVISION SIGN, right-left
0x9C	0x00FA	# LATIN SMALL LETTER U WITH ACUTE
0x9D	0x00F9	# LATIN SMALL LETTER U WITH GRAVE
0x9E	0x00FB	# LATIN SMALL LETTER U WITH CIRCUMFLEX
0x9F	0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS
0xA0	<RL>+0x0020	# SPACE, right-left
0xA1	<RL>+0x0021	# EXCLAMATION MARK, right-left
0xA2	<RL>+0x0022	# QUOTATION MARK, right-left
0xA3	<RL>+0x0023	# NUMBER SIGN, right-left
0xA4	<RL>+0x0024	# DOLLAR SIGN, right-left
0xA5	0x066A	# ARABIC PERCENT SIGN
0xA6	<RL>+0x0026	# AMPERSAND, right-left
0xA7	<RL>+0x0027	# APOSTROPHE, right-left
0xA8	<RL>+0x0028	# LEFT PARENTHESIS, right-left
0xA9	<RL>+0x0029	# RIGHT PARENTHESIS, right-left
0xAA	<RL>+0x002A	# ASTERISK, right-left
0xAB	<RL>+0x002B	# PLUS SIGN, right-left
0xAC	0x060C	# ARABIC COMMA
0xAD	<RL>+0x002D	# HYPHEN-MINUS, right-left
0xAE	<RL>+0x002E	# FULL STOP, right-left
0xAF	<RL>+0x002F	# SOLIDUS, right-left
0xB0	<RL>+0x0660	# ARABIC-INDIC DIGIT ZERO, right-left (need override)
0xB1	<RL>+0x0661	# ARABIC-INDIC DIGIT ONE, right-left (need override)
0xB2	<RL>+0x0662	# ARABIC-INDIC DIGIT TWO, right-left (need override)
0xB3	<RL>+0x0663	# ARABIC-INDIC DIGIT THREE, right-left (need override)
0xB4	<RL>+0x0664	# ARABIC-INDIC DIGIT FOUR, right-left (need override)
0xB5	<RL>+0x0665	# ARABIC-INDIC DIGIT FIVE, right-left (need override)
0xB6	<RL>+0x0666	# ARABIC-INDIC DIGIT SIX, right-left (need override)
0xB7	<RL>+0x0667	# ARABIC-INDIC DIGIT SEVEN, right-left (need override)
0xB8	<RL>+0x0668	# ARABIC-INDIC DIGIT EIGHT, right-left (need override)
0xB9	<RL>+0x0669	# ARABIC-INDIC DIGIT NINE, right-left (need override)
0xBA	<RL>+0x003A	# COLON, right-left
0xBB	0x061B	# ARABIC SEMICOLON
0xBC	<RL>+0x003C	# LESS-THAN SIGN, right-left
0xBD	<RL>+0x003D	# EQUALS SIGN, right-left
0xBE	<RL>+0x003E	# GREATER-THAN SIGN, right-left
0xBF	0x061F	# ARABIC QUESTION MARK
0xC0	<RL>+0x274A	# EIGHT TEARDROP-SPOKED PROPELLER ASTERISK, right-left
0xC1	0x0621	# ARABIC LETTER HAMZA
0xC2	0x0622	# ARABIC LETTER ALEF WITH MADDA ABOVE
0xC3	0x0623	# ARABIC LETTER ALEF WITH HAMZA ABOVE
0xC4	0x0624	# ARABIC LETTER WAW WITH HAMZA ABOVE
0xC5	0x0625	# ARABIC LETTER ALEF WITH HAMZA BELOW
0xC6	0x0626	# ARABIC LETTER YEH WITH HAMZA ABOVE
0xC7	0x0627	# ARABIC LETTER ALEF
0xC8	0x0628	# ARABIC LETTER BEH
0xC9	0x0629	# ARABIC LETTER TEH MARBUTA
0xCA	0x062A	# ARABIC LETTER TEH
0xCB	0x062B	# ARABIC LETTER THEH
0xCC	0x062C	# ARABIC LETTER JEEM
0xCD	0x062D	# ARABIC LETTER HAH
0xCE	0x062E	# ARABIC LETTER KHAH
0xCF	0x062F	# ARABIC LETTER DAL
0xD0	0x0630	# ARABIC LETTER THAL
0xD1	0x0631	# ARABIC LETTER REH
0xD2	0x0632	# ARABIC LETTER ZAIN
0xD3	0x0633	# ARABIC LETTER SEEN
0xD4	0x0634	# ARABIC LETTER SHEEN
0xD5	0x0635	# ARABIC LETTER SAD
0xD6	0x0636	# ARABIC LETTER DAD
0xD7	0x0637	# ARABIC LETTER TAH
0xD8	0x0638	# ARABIC LETTER ZAH
0xD9	0x0639	# ARABIC LETTER AIN
0xDA	0x063A	# ARABIC LETTER GHAIN
0xDB	<RL>+0x005B	# LEFT SQUARE BRACKET, right-left
0xDC	<RL>+0x005C	# REVERSE SOLIDUS, right-left
0xDD	<RL>+0x005D	# RIGHT SQUARE BRACKET, right-left
0xDE	<RL>+0x005E	# CIRCUMFLEX ACCENT, right-left
0xDF	<RL>+0x005F	# LOW LINE, right-left
0xE0	0x0640	# ARABIC TATWEEL
0xE1	0x0641	# ARABIC LETTER FEH
0xE2	0x0642	# ARABIC LETTER QAF
0xE3	0x0643	# ARABIC LETTER KAF
0xE4	0x0644	# ARABIC LETTER LAM
0xE5	0x0645	# ARABIC LETTER MEEM
0xE6	0x0646	# ARABIC LETTER NOON
0xE7	0x0647	# ARABIC LETTER HEH
0xE8	0x0648	# ARABIC LETTER WAW
0xE9	0x0649	# ARABIC LETTER ALEF MAKSURA
0xEA	0x064A	# ARABIC LETTER YEH
0xEB	0x064B	# ARABIC FATHATAN
0xEC	0x064C	# ARABIC DAMMATAN
0xED	0x064D	# ARABIC KASRATAN
0xEE	0x064E	# ARABIC FATHA
0xEF	0x064F	# ARABIC DAMMA
0xF0	0x0650	# ARABIC KASRA
0xF1	0x0651	# ARABIC SHADDA
0xF2	0x0652	# ARABIC SUKUN
0xF3	0x067E	# ARABIC LETTER PEH
0xF4	0x0679	# ARABIC LETTER TTEH
0xF5	0x0686	# ARABIC LETTER TCHEH
0xF6	0x06D5	# ARABIC LETTER AE
0xF7	0x06A4	# ARABIC LETTER VEH
0xF8	0x06AF	# ARABIC LETTER GAF
0xF9	0x0688	# ARABIC LETTER DDAL
0xFA	0x0691	# ARABIC LETTER RREH
0xFB	<RL>+0x007B	# LEFT CURLY BRACKET, right-left
0xFC	<RL>+0x007C	# VERTICAL LINE, right-left
0xFD	<RL>+0x007D	# RIGHT CURLY BRACKET, right-left
0xFE	0x0698	# ARABIC LETTER JEH
0xFF	0x06D2	# ARABIC LETTER YEH BARREE
