# DerivedJoiningGroup-5.2.0.txt
# Date: 2009-05-22, 18:51:25 GMT [MD]
#
# Unicode Character Database
# Copyright (c) 1991-2009 Unicode, Inc.
# For terms of use, see http://www.unicode.org/terms_of_use.html
# For documentation, see http://www.unicode.org/reports/tr44/

# ================================================

# Joining Group (listing ArabicShaping.txt, field 3)

#  All code points not explicitly listed for Joining_Group
#  have the value No_Joining_Group.

# @missing: 0000..10FFFF; No_Joining_Group

# ================================================

0639..063A    ; Ain # Lo   [2] ARABIC LETTER AIN..ARABIC LETTER GHAIN
06A0          ; Ain # Lo       ARABIC LETTER AIN WITH THREE DOTS ABOVE
06FC          ; Ain # Lo       ARABIC LETTER GHAIN WITH DOT BELOW
075D..075F    ; Ain # Lo   [3] ARABIC LETTER AIN WITH TWO DOTS ABOVE..ARABIC LETTER AIN WITH TWO DOTS VERTICALLY ABOVE

# Total code points: 7

# ================================================

0710          ; Alaph # Lo       SYRIAC LETTER ALAPH

# Total code points: 1

# ================================================

0622..0623    ; Alef # Lo   [2] ARABIC LETTER ALEF WITH MADDA ABOVE..ARABIC LETTER ALEF WITH HAMZA ABOVE
0625          ; Alef # Lo       ARABIC LETTER ALEF WITH HAMZA BELOW
0627          ; Alef # Lo       ARABIC LETTER ALEF
0671..0673    ; Alef # Lo   [3] ARABIC LETTER ALEF WASLA..ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
0675          ; Alef # Lo       ARABIC LETTER HIGH HAMZA ALEF
0773..0774    ; Alef # Lo   [2] ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE

# Total code points: 10

# ================================================

0628          ; Beh # Lo       ARABIC LETTER BEH
062A..062B    ; Beh # Lo   [2] ARABIC LETTER TEH..ARABIC LETTER THEH
066E          ; Beh # Lo       ARABIC LETTER DOTLESS BEH
0679..0680    ; Beh # Lo   [8] ARABIC LETTER TTEH..ARABIC LETTER BEHEH
0750..0756    ; Beh # Lo   [7] ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW..ARABIC LETTER BEH WITH SMALL V

# Total code points: 19

# ================================================

0712          ; Beth # Lo       SYRIAC LETTER BETH
072D          ; Beth # Lo       SYRIAC LETTER PERSIAN BHETH

# Total code points: 2

# ================================================

062F..0630    ; Dal # Lo   [2] ARABIC LETTER DAL..ARABIC LETTER THAL
0688..0690    ; Dal # Lo   [9] ARABIC LETTER DDAL..ARABIC LETTER DAL WITH FOUR DOTS ABOVE
06EE          ; Dal # Lo       ARABIC LETTER DAL WITH INVERTED V
0759..075A    ; Dal # Lo   [2] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW AND SMALL TAH..ARABIC LETTER DAL WITH INVERTED SMALL V BELOW

# Total code points: 14

# ================================================

0715..0716    ; Dalath_Rish # Lo   [2] SYRIAC LETTER DALATH..SYRIAC LETTER DOTLESS DALATH RISH
072A          ; Dalath_Rish # Lo       SYRIAC LETTER RISH
072F          ; Dalath_Rish # Lo       SYRIAC LETTER PERSIAN DHALATH

# Total code points: 4

# ================================================

0725          ; E # Lo       SYRIAC LETTER E

# Total code points: 1

# ================================================

0641          ; Feh # Lo       ARABIC LETTER FEH
06A1..06A6    ; Feh # Lo   [6] ARABIC LETTER DOTLESS FEH..ARABIC LETTER PEHEH
0760..0761    ; Feh # Lo   [2] ARABIC LETTER FEH WITH TWO DOTS BELOW..ARABIC LETTER FEH WITH THREE DOTS POINTING UPWARDS BELOW

# Total code points: 9

# ================================================

0724          ; Final_Semkath # Lo       SYRIAC LETTER FINAL SEMKATH

# Total code points: 1

# ================================================

063B..063C    ; Gaf # Lo   [2] ARABIC LETTER KEHEH WITH TWO DOTS ABOVE..ARABIC LETTER KEHEH WITH THREE DOTS BELOW
06A9          ; Gaf # Lo       ARABIC LETTER KEHEH
06AB          ; Gaf # Lo       ARABIC LETTER KAF WITH RING
06AF..06B4    ; Gaf # Lo   [6] ARABIC LETTER GAF..ARABIC LETTER GAF WITH THREE DOTS ABOVE
0762..0764    ; Gaf # Lo   [3] ARABIC LETTER KEHEH WITH DOT ABOVE..ARABIC LETTER KEHEH WITH THREE DOTS POINTING UPWARDS BELOW

# Total code points: 13

# ================================================

0713..0714    ; Gamal # Lo   [2] SYRIAC LETTER GAMAL..SYRIAC LETTER GAMAL GARSHUNI
072E          ; Gamal # Lo       SYRIAC LETTER PERSIAN GHAMAL

# Total code points: 3

# ================================================

062C..062E    ; Hah # Lo   [3] ARABIC LETTER JEEM..ARABIC LETTER KHAH
0681..0687    ; Hah # Lo   [7] ARABIC LETTER HAH WITH HAMZA ABOVE..ARABIC LETTER TCHEHEH
06BF          ; Hah # Lo       ARABIC LETTER TCHEH WITH DOT ABOVE
0757..0758    ; Hah # Lo   [2] ARABIC LETTER HAH WITH TWO DOTS ABOVE..ARABIC LETTER HAH WITH THREE DOTS POINTING UPWARDS BELOW
076E..076F    ; Hah # Lo   [2] ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH BELOW..ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH AND TWO DOTS
0772          ; Hah # Lo       ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH ABOVE
077C          ; Hah # Lo       ARABIC LETTER HAH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW

# Total code points: 17

# ================================================

06C3          ; Hamza_On_Heh_Goal # Lo       ARABIC LETTER TEH MARBUTA GOAL

# Total code points: 1

# ================================================

0717          ; He # Lo       SYRIAC LETTER HE

# Total code points: 1

# ================================================

0647          ; Heh # Lo       ARABIC LETTER HEH

# Total code points: 1

# ================================================

06C1..06C2    ; Heh_Goal # Lo   [2] ARABIC LETTER HEH GOAL..ARABIC LETTER HEH GOAL WITH HAMZA ABOVE

# Total code points: 2

# ================================================

071A          ; Heth # Lo       SYRIAC LETTER HETH

# Total code points: 1

# ================================================

0643          ; Kaf # Lo       ARABIC LETTER KAF
06AC..06AE    ; Kaf # Lo   [3] ARABIC LETTER KAF WITH DOT ABOVE..ARABIC LETTER KAF WITH THREE DOTS BELOW
077F          ; Kaf # Lo       ARABIC LETTER KAF WITH TWO DOTS ABOVE

# Total code points: 5

# ================================================

071F          ; Kaph # Lo       SYRIAC LETTER KAPH

# Total code points: 1

# ================================================

06BE          ; Knotted_Heh # Lo       ARABIC LETTER HEH DOACHASHMEE
06FF          ; Knotted_Heh # Lo       ARABIC LETTER HEH WITH INVERTED V

# Total code points: 2

# ================================================

0644          ; Lam # Lo       ARABIC LETTER LAM
06B5..06B8    ; Lam # Lo   [4] ARABIC LETTER LAM WITH SMALL V..ARABIC LETTER LAM WITH THREE DOTS BELOW
076A          ; Lam # Lo       ARABIC LETTER LAM WITH BAR

# Total code points: 6

# ================================================

0720          ; Lamadh # Lo       SYRIAC LETTER LAMADH

# Total code points: 1

# ================================================

0645          ; Meem # Lo       ARABIC LETTER MEEM
0765..0766    ; Meem # Lo   [2] ARABIC LETTER MEEM WITH DOT ABOVE..ARABIC LETTER MEEM WITH DOT BELOW

# Total code points: 3

# ================================================

0721          ; Mim # Lo       SYRIAC LETTER MIM

# Total code points: 1

# ================================================

0646          ; Noon # Lo       ARABIC LETTER NOON
06B9..06BC    ; Noon # Lo   [4] ARABIC LETTER NOON WITH DOT BELOW..ARABIC LETTER NOON WITH RING
0767..0769    ; Noon # Lo   [3] ARABIC LETTER NOON WITH TWO DOTS BELOW..ARABIC LETTER NOON WITH SMALL V

# Total code points: 8

# ================================================

0722          ; Nun # Lo       SYRIAC LETTER NUN

# Total code points: 1

# ================================================

0726          ; Pe # Lo       SYRIAC LETTER PE

# Total code points: 1

# ================================================

0642          ; Qaf # Lo       ARABIC LETTER QAF
066F          ; Qaf # Lo       ARABIC LETTER DOTLESS QAF
06A7..06A8    ; Qaf # Lo   [2] ARABIC LETTER QAF WITH DOT ABOVE..ARABIC LETTER QAF WITH THREE DOTS ABOVE

# Total code points: 4

# ================================================

0729          ; Qaph # Lo       SYRIAC LETTER QAPH

# Total code points: 1

# ================================================

0631..0632    ; Reh # Lo   [2] ARABIC LETTER REH..ARABIC LETTER ZAIN
0691..0699    ; Reh # Lo   [9] ARABIC LETTER RREH..ARABIC LETTER REH WITH FOUR DOTS ABOVE
06EF          ; Reh # Lo       ARABIC LETTER REH WITH INVERTED V
075B          ; Reh # Lo       ARABIC LETTER REH WITH STROKE
076B..076C    ; Reh # Lo   [2] ARABIC LETTER REH WITH TWO DOTS VERTICALLY ABOVE..ARABIC LETTER REH WITH HAMZA ABOVE
0771          ; Reh # Lo       ARABIC LETTER REH WITH SMALL ARABIC LETTER TAH AND TWO DOTS

# Total code points: 16

# ================================================

0727          ; Reversed_Pe # Lo       SYRIAC LETTER REVERSED PE

# Total code points: 1

# ================================================

0635..0636    ; Sad # Lo   [2] ARABIC LETTER SAD..ARABIC LETTER DAD
069D..069E    ; Sad # Lo   [2] ARABIC LETTER SAD WITH TWO DOTS BELOW..ARABIC LETTER SAD WITH THREE DOTS ABOVE
06FB          ; Sad # Lo       ARABIC LETTER DAD WITH DOT BELOW

# Total code points: 5

# ================================================

0728          ; Sadhe # Lo       SYRIAC LETTER SADHE

# Total code points: 1

# ================================================

0633..0634    ; Seen # Lo   [2] ARABIC LETTER SEEN..ARABIC LETTER SHEEN
069A..069C    ; Seen # Lo   [3] ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE..ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE
06FA          ; Seen # Lo       ARABIC LETTER SHEEN WITH DOT BELOW
075C          ; Seen # Lo       ARABIC LETTER SEEN WITH FOUR DOTS ABOVE
076D          ; Seen # Lo       ARABIC LETTER SEEN WITH TWO DOTS VERTICALLY ABOVE
0770          ; Seen # Lo       ARABIC LETTER SEEN WITH SMALL ARABIC LETTER TAH AND TWO DOTS
077D..077E    ; Seen # Lo   [2] ARABIC LETTER SEEN WITH EXTENDED ARABIC-INDIC DIGIT FOUR ABOVE..ARABIC LETTER SEEN WITH INVERTED V

# Total code points: 11

# ================================================

0723          ; Semkath # Lo       SYRIAC LETTER SEMKATH

# Total code points: 1

# ================================================

072B          ; Shin # Lo       SYRIAC LETTER SHIN

# Total code points: 1

# ================================================

06AA          ; Swash_Kaf # Lo       ARABIC LETTER SWASH KAF

# Total code points: 1

# ================================================

0637..0638    ; Tah # Lo   [2] ARABIC LETTER TAH..ARABIC LETTER ZAH
069F          ; Tah # Lo       ARABIC LETTER TAH WITH THREE DOTS ABOVE

# Total code points: 3

# ================================================

072C          ; Taw # Lo       SYRIAC LETTER TAW

# Total code points: 1

# ================================================

0629          ; Teh_Marbuta # Lo       ARABIC LETTER TEH MARBUTA
06C0          ; Teh_Marbuta # Lo       ARABIC LETTER HEH WITH YEH ABOVE
06D5          ; Teh_Marbuta # Lo       ARABIC LETTER AE

# Total code points: 3

# ================================================

071B..071C    ; Teth # Lo   [2] SYRIAC LETTER TETH..SYRIAC LETTER TETH GARSHUNI

# Total code points: 2

# ================================================

0624          ; Waw # Lo       ARABIC LETTER WAW WITH HAMZA ABOVE
0648          ; Waw # Lo       ARABIC LETTER WAW
0676..0677    ; Waw # Lo   [2] ARABIC LETTER HIGH HAMZA WAW..ARABIC LETTER U WITH HAMZA ABOVE
06C4..06CB    ; Waw # Lo   [8] ARABIC LETTER WAW WITH RING..ARABIC LETTER VE
06CF          ; Waw # Lo       ARABIC LETTER WAW WITH DOT ABOVE
0778..0779    ; Waw # Lo   [2] ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE

# Total code points: 15

# ================================================

0718          ; Syriac_Waw # Lo       SYRIAC LETTER WAW

# Total code points: 1

# ================================================

0626          ; Yeh # Lo       ARABIC LETTER YEH WITH HAMZA ABOVE
0649..064A    ; Yeh # Lo   [2] ARABIC LETTER ALEF MAKSURA..ARABIC LETTER YEH
0678          ; Yeh # Lo       ARABIC LETTER HIGH HAMZA YEH
06D0..06D1    ; Yeh # Lo   [2] ARABIC LETTER E..ARABIC LETTER YEH WITH THREE DOTS BELOW
0777          ; Yeh # Lo       ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW

# Total code points: 7

# ================================================

06D2..06D3    ; Yeh_Barree # Lo   [2] ARABIC LETTER YEH BARREE..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE

# Total code points: 2

# ================================================

06CD          ; Yeh_With_Tail # Lo       ARABIC LETTER YEH WITH TAIL

# Total code points: 1

# ================================================

071D          ; Yudh # Lo       SYRIAC LETTER YUDH

# Total code points: 1

# ================================================

071E          ; Yudh_He # Lo       SYRIAC LETTER YUDH HE

# Total code points: 1

# ================================================

0719          ; Zain # Lo       SYRIAC LETTER ZAIN

# Total code points: 1

# ================================================

074D          ; Zhain # Lo       SYRIAC LETTER SOGDIAN ZHAIN

# Total code points: 1

# ================================================

074E          ; Khaph # Lo       SYRIAC LETTER SOGDIAN KHAPH

# Total code points: 1

# ================================================

074F          ; Fe # Lo       SYRIAC LETTER SOGDIAN FE

# Total code points: 1

# ================================================

077A..077B    ; Burushaski_Yeh_Barree # Lo   [2] ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE

# Total code points: 2

# ================================================

063D..063F    ; Farsi_Yeh # Lo   [3] ARABIC LETTER FARSI YEH WITH INVERTED V..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
06CC          ; Farsi_Yeh # Lo       ARABIC LETTER FARSI YEH
06CE          ; Farsi_Yeh # Lo       ARABIC LETTER YEH WITH SMALL V
0775..0776    ; Farsi_Yeh # Lo   [2] ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE

# Total code points: 7

# ================================================

06BD          ; Nya # Lo       ARABIC LETTER NOON WITH THREE DOTS ABOVE

# Total code points: 1

# EOF
