﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2006, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: Latin_ConjoiningJamo.txt
# Generated from CLDR: Thu Jul 20 16:27:17 PDT 2006
#
$Gi = ᄀ;
$GGi = ᄁ;
$Ni = ᄂ;
$Di = ᄃ;
$DD = ᄄ;
$R = ᄅ;
$Mi = ᄆ;
$Bi = ᄇ;
$BB = ᄈ;
$Si = ᄉ;
$SSi = ᄊ;
$IEUNG = ᄋ; # null initial, inserted during Latin-Jamo
$Ji = ᄌ;
$JJ = ᄍ;
$Ci = ᄎ;
$Ki = ᄏ;
$Ti = ᄐ;
$Pi = ᄑ;
$Hi = ᄒ;
$A = ᅡ;
$AE = ᅢ;
$YA = ᅣ;
$YAE = ᅤ;
$EO = ᅥ;
$E = ᅦ;
$YEO = ᅧ;
$YE = ᅨ;
$O = ᅩ;
$WA = ᅪ;
$WAE = ᅫ;
$OE = ᅬ;
$YO = ᅭ;
$U = ᅮ;
$WEO = ᅯ;
$WE = ᅰ;
$WI = ᅱ;
$YU = ᅲ;
$EU = ᅳ; # null medial, inserted during Latin-Jamo
$YI = ᅴ;
$I = ᅵ;
$Gf = ᆨ;
$GGf = ᆩ;
$GS = ᆪ;
$Nf = ᆫ;
$NJ = ᆬ;
$NH = ᆭ;
$Df = ᆮ;
$L = ᆯ;
$LG = ᆰ;
$LM = ᆱ;
$LB = ᆲ;
$LS = ᆳ;
$LT = ᆴ;
$LP = ᆵ;
$LH = ᆶ;
$Mf = ᆷ;
$Bf = ᆸ;
$BS = ᆹ;
$Sf = ᆺ;
$SSf = ᆻ;
$NG = ᆼ;
$Jf = ᆽ;
$Cf = ᆾ;
$Kf = ᆿ;
$Tf = ᇀ;
$Pf = ᇁ;
$Hf = ᇂ;
$jamoInitial = [ᄀ-ᄒ];
$jamoMedial = [ᅡ-ᅵ];
$latinInitial = [bcdghjkmnprst];
$latinMedial = [aeiouwy];
$latinMedialEnd = [aeiou];
$sep = \';
$sep $sep <> $sep;
$sep < $latinMedialEnd g {} $GGi;
$sep < $latinMedialEnd s {} $SSi;
$sep < [^$latinMedial] [y w] e {} [$O $OE];
$sep < [^$latinMedial] e {} [$O $OE $U];
$sep < [^$latinMedial] [o a] {} [$E $EO $EU];
$sep < [^$latinMedial] [w y] a {} [$E $EO $EU];
$sep < [^$latinMedial] [y w] e {} $IEUNG [$O $OE];
$sep < [^$latinMedial] e {} $IEUNG [$O $OE $U];
$sep < [^$latinMedial] [o a] {} $IEUNG [$E $EO $EU];
$sep < [^$latinMedial] [w y] a {} $IEUNG [$E $EO $EU];
$sep < $latinMedialEnd b {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd c {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd d {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd g {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd h {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd j {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd k {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd m {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd n {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd p {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd s {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd t {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd b s {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd g g {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd g s {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l b {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l g {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l h {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l m {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l p {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l s {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd l t {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd n g {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd n h {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd n j {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd s s {} $IEUNG $jamoMedial;
$sep < $latinMedialEnd b {} $Bi $jamoMedial;
$sep < $latinMedialEnd d {} $Di $jamoMedial;
$sep < $latinMedialEnd j {} $Ji $jamoMedial;
$sep < $latinMedialEnd g {} $Gi $jamoMedial;
$sep < $latinMedialEnd s {} $Si $jamoMedial;
$sep < $latinMedialEnd b s {} [$Si $SSi];
$sep < $latinMedialEnd g s {} [$Si $SSi];
$sep < $latinMedialEnd l b {} [$Bi $BB];
$sep < $latinMedialEnd l g {} [$Gi $GGi];
$sep < $latinMedialEnd l s {} [$Si $SSi];
$sep < $latinMedialEnd n g {} [$Gi $GGi];
$sep < $latinMedialEnd n j {} [$Ji $JJ];
$jamoMedial {b s} $latinMedial > $Bf $Si;
$jamoMedial {g s} $latinMedial > $Gf $Si;
$jamoMedial {l b} $latinMedial > $L $Bi;
$jamoMedial {l g} $latinMedial > $L $Gi;
$jamoMedial {l h} $latinMedial > $L $Hi;
$jamoMedial {l m} $latinMedial > $L $Mi;
$jamoMedial {l p} $latinMedial > $L $Pi;
$jamoMedial {l s} $latinMedial > $L $Si;
$jamoMedial {l t} $latinMedial > $L $Ti;
$jamoMedial {n g} $latinMedial > $Nf $Gi;
$jamoMedial {n h} $latinMedial > $Nf $Hi;
$jamoMedial {n j} $latinMedial > $Nf $Ji;
$jamoMedial {b} $latinMedial > $Bi;
$jamoMedial {c} $latinMedial > $Ci;
$jamoMedial {d} $latinMedial > $Di;
$jamoMedial {g} $latinMedial > $Gi;
$jamoMedial {h} $latinMedial > $Hi;
$jamoMedial {j} $latinMedial > $Ji;
$jamoMedial {k} $latinMedial > $Ki;
$jamoMedial {m} $latinMedial > $Mi;
$jamoMedial {n} $latinMedial > $Ni;
$jamoMedial {p} $latinMedial > $Pi;
$jamoMedial {s} $latinMedial > $Si;
$jamoMedial {t} $latinMedial > $Ti;
$jamoMedial {b b} $latinMedial > $BB;
$jamoMedial {d d} $latinMedial > $DD;
$jamoMedial {j j} $latinMedial > $JJ;
$jamoMedial {g g} $latinMedial > $GGi;
$jamoMedial {s s} $latinMedial > $SSi;
$jamoMedial {b} s s > $Bf;
$jamoMedial {g} s s > $Gf;
$jamoMedial {l} b b > $L;
$jamoMedial {l} g g > $L;
$jamoMedial {l} s s > $L;
$jamoMedial {n} g g > $Nf;
$jamoMedial {n} j j > $Nf;
$jamoMedial {bs} <> $BS;
$jamoMedial {b} <> $Bf;
$jamoMedial {c} <> $Cf;
$jamoMedial {d} <> $Df;
$jamoMedial {gg} <> $GGf;
$jamoMedial {gs} <> $GS;
$jamoMedial {g} <> $Gf;
$jamoMedial {h} <> $Hf;
$jamoMedial {j} <> $Jf;
$jamoMedial {k} <> $Kf;
$jamoMedial {lb} <> $LB;  $jamoMedial {lg} <> $LG;
$jamoMedial {lh} <> $LH;
$jamoMedial {lm} <> $LM;
$jamoMedial {lp} <> $LP;
$jamoMedial {ls} <> $LS;
$jamoMedial {lt} <> $LT;
$jamoMedial {l} <> $L;
$jamoMedial {m} <> $Mf;
$jamoMedial {ng} <> $NG;
$jamoMedial {nh} <> $NH;
$jamoMedial {nj} <> $NJ;
$jamoMedial {n} <> $Nf;
$jamoMedial {p} <> $Pf;
$jamoMedial {ss} <> $SSf;
$jamoMedial {s} <> $Sf;
$jamoMedial {t} <> $Tf;
{gg} $latinMedial <> $GGi;
{g} $latinMedial <> $Gi;
{n} $latinMedial <> $Ni;
{dd} $latinMedial <> $DD;
{d} $latinMedial <> $Di;
{r} $latinMedial <> $R;
{m} $latinMedial <> $Mi;
{bb} $latinMedial <> $BB;
{b} $latinMedial <> $Bi;
{ss} $latinMedial <> $SSi;
{s} $latinMedial <> $Si;
{jj} $latinMedial <> $JJ;
{j} $latinMedial <> $Ji;
{c} $latinMedial <> $Ci;
{k} $latinMedial <> $Ki;
{t} $latinMedial <> $Ti;
{p} $latinMedial <> $Pi;
{h} $latinMedial <> $Hi;
$jamoMedial {r} $latinInitial > | l;
$jamoInitial {} [bcdghjklmnpst] > $EU;
gg > $GGi $EU;
dd > $DD $EU;
bb > $BB $EU;
ss > $SSi $EU;
jj > $JJ $EU;
([bcdghjkmnprst]) > | $1 eu;
l > | r;
$jamoInitial {ae} <> $AE;
$jamoInitial {a} <> $A;
$jamoInitial {eo} <> $EO;
$jamoInitial {eu} <> $EU;
$jamoInitial {e} <> $E;
$jamoInitial {i} <> $I;
$jamoInitial {oe} <> $OE;
$jamoInitial {o} <> $O;
$jamoInitial {u} <> $U;
$jamoInitial {wae} <> $WAE;
$jamoInitial {wa} <> $WA;
$jamoInitial {weo} <> $WEO;
$jamoInitial {we} <> $WE;
$jamoInitial {wi} <> $WI;
$jamoInitial {yae} <> $YAE;
$jamoInitial {ya} <> $YA;
$jamoInitial {yeo} <> $YEO;
$jamoInitial {ye} <> $YE;
$jamoInitial {yi} <> $YI;
$jamoInitial {yo} <> $YO;
$jamoInitial {yu} <> $YU;
$jamoInitial {w} > | wi;
$jamoInitial {y} > | yu;
($latinMedial) > $IEUNG | $1;
f > | p;
q > | k;
v > | b;
x > | ks;
z > | s;
$sep > ;
< $IEUNG;
