﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2006, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: ThaiLogical_Latin.txt
# Generated from CLDR 
#
$notAbove = [^\p{ccc=0}\p{ccc=above}] ;
$notBelow = [^\p{ccc=0}\p{ccc=below}] ;
$freeStandingBelow = [\u0325  ];
$hAccent =  [   \u0304     \u0323];
$notHAccent0 = [^$freeStandingBelow$hAccent];
$notHAccent1 = $freeStandingBelow [^$hAccent];
ห > h\u0304 ; # THAI CHARACTER HO HIP
ห | $1 < h ($notAbove*)    \u0304; # backward case, account for reordering
ฮ <> h\u0323 ; # THAI CHARACTER HO NOKHUK
ข <> k\u0304h ; # THAI CHARACTER KHO KHAI
ฃ <> k\u0323\u0304h ; # THAI CHARACTER KHO KHUAT
ฅ <> kʹh ; # THAI CHARACTER KHO KHON
ฆ <> k\u0323h ; # THAI CHARACTER KHO RAKHANG
ค < kh } $notHAccent1 ; # THAI CHARACTER KHO KHWAI
ค <> kh } $notHAccent0 ; # THAI CHARACTER KHO KHWAI
ก <> k ; # THAI CHARACTER KO KAI
ภ <> p\u0323h ; # THAI CHARACTER PHO SAMPHAO
ผ <> p\u0304h ; # THAI CHARACTER PHO PHUNG
พ < ph } $notHAccent1 ; # THAI CHARACTER PHO PHAN
พ <> ph } $notHAccent0 ; # THAI CHARACTER PHO PHAN
ป <> p ; # THAI CHARACTER PO PLA
ฉ <> c\u0304h ; # THAI CHARACTER CHO CHING
ฌ <> c\u0323h ; # THAI CHARACTER CHO CHOE
ช < ch } $notHAccent1 ; # THAI CHARACTER CHO CHANG
ช <> ch } $notHAccent0 ; # THAI CHARACTER CHO CHANG
จ <> c ; # THAI CHARACTER CHO CHAN
ฐ <> t\u0323\u0304h ; # THAI CHARACTER THO THAN
ฑ <> t\u0331h ; # THAI CHARACTER THO NANGMONTHO
ฒ <> tʹh ; # THAI CHARACTER THO PHUTHAO
ถ <> t\u0304h ; # THAI CHARACTER THO THUNG
ธ <> t\u0323h ; # THAI CHARACTER THO THONG
ท < th } $notHAccent1 ; # THAI CHARACTER THO THAHAN
ท <> th } $notHAccent0 ; # THAI CHARACTER THO THAHAN
ฏ <> t\u0329 ; # THAI CHARACTER TO PATAK
ต <> t ; # THAI CHARACTER TO TAO
ง <> ng ; # THAI CHARACTER NGO NGU
ณ <> n\u0323 ; # THAI CHARACTER NO NEN
น <> n ; # THAI CHARACTER NO NU
ญ <> y\u0323  ; # THAI CHARACTER YO YING
ฎ <> d\u0323 ; # THAI CHARACTER DO CHADA
ด <> d ; # THAI CHARACTER DO DEK
บ <> b ; # THAI CHARACTER BO BAIMAI
ฝ <> f\u0304 ; # THAI CHARACTER FO FA
ฝ | $1 < f ($notAbove*)    \u0304; # backward case, account for reordering
ม <> m ; # THAI CHARACTER MO MA
ย <> y ; # THAI CHARACTER YO YAK
ร <> r ; # THAI CHARACTER RO RUA
ฤ <> v ; # THAI CHARACTER RU
ฦ <> ł ; # THAI CHARACTER LU
ว <> w ; # THAI CHARACTER WO WAEN
ศ <> s\u0323\u0304 ; # THAI CHARACTER SO SALA***
ศ | $1 < s    \u0323 ($notAbove*)    \u0304; # backward case, account for reordering
ษ <> s\u0304ʹ ; # THAI CHARACTER SO RUSI
ส > s\u0304 ; # THAI CHARACTER SO SUA***
ส | $1 < s ($notAbove*)    \u0304; # backward case, account for reordering
ฬ <> l\u0323 ; # THAI CHARACTER LO CHULA
ล <> l ; # THAI CHARACTER LO LING
ฟ <> f ; # THAI CHARACTER FO FAN
อ <> x ; # THAI CHARACTER O ANG
ซ <> s ; # THAI CHARACTER SO SO
\u0E31 <> a\u0323 ; # THAI CHARACTER MAI HAN-AKAT
า > a\u0304 ; # THAI CHARACTER SARA AA
า | $1 < a ($notAbove*)    \u0304; # backward case, account for reordering
ำ > a  \u0309; # THAI CHARACTER SARA AM
ำ | $1 < a ($notAbove*)  \u0309 ; # backward case, account for reordering
ะ <> a ; # THAI CHARACTER SARA A
\u0E35 <> i\u0304 ; # THAI CHARACTER SARA II
\u0E35 | $1 < i ($notAbove*)    \u0304  ; # backward case, account for reordering
\u0E37 <> u\u0323\u0304 ; # THAI CHARACTER SARA UEE
\u0E37 | $1 < u   \u0323 ($notAbove*)    \u0304  ; # backward case, account for reordering
\u0E36 <> u\u0323 ; # THAI CHARACTER SARA UE
\u0E39 <> u\u0304 ; # THAI CHARACTER SARA UU
\u0E39 | $1 < u  ($notAbove*)    \u0304  ; # backward case, account for reordering
\u0E38 <> u ; # THAI CHARACTER SARA U
ฯ <> ‡ ; # THAI CHARACTER PAIYANNOI
เ <> e ; # THAI CHARACTER SARA E
แ <> æ ; # THAI CHARACTER SARA AE
โ <> o ; # THAI CHARACTER SARA O
ใ <> ı ; # THAI CHARACTER SARA AI MAIMUAN
ไ <> i\u0323 ; # THAI CHARACTER SARA AI MAIMALAI
ๅ <> ɨ ; # THAI CHARACTER LAKKHANGYAO
\u0E47 <> \u0306 ; # THAI CHARACTER MAITAIKHU
\u0E48 <> \u0300 ; # THAI CHARACTER MAI EK
\u0E49 <> \u0302 ; # THAI CHARACTER MAI THO
\u0E4A <> \u0301 ; # THAI CHARACTER MAI TRI
\u0E4B <> \u030C ; # THAI CHARACTER MAI CHATTAWA
\u0E4C <> \u0312 ; # THAI CHARACTER THANTHAKHAT
\u0E4E <> '~' ; # THAI CHARACTER YAMAKKAN
\u0E4D <>  \u030A ; # THAI CHARACTER NIKHAHIT
๏ <> '§' ; # THAI CHARACTER FONGMAN
๐ <> 0 ; # THAI DIGIT ZERO
๑ <> 1 ; # THAI DIGIT ONE
๒ <> 2 ; # THAI DIGIT TWO
๓ <> 3 ; # THAI DIGIT THREE
๔ <> 4 ; # THAI DIGIT FOUR
๕ <> 5 ; # THAI DIGIT FIVE
๖ <> 6 ; # THAI DIGIT SIX
๗ <> 7 ; # THAI DIGIT SEVEN
๘ <> 8 ; # THAI DIGIT EIGHT
๙ <> 9 ; # THAI DIGIT NINE
๚ <> '||' ; # THAI CHARACTER ANGKHANKHU
๛ <> » ; # THAI CHARACTER KHOMUT
ๆ <> « ; # THAI CHARACTER MAIYAMOK
\u0E3A <> ˌ ; # THAI CHARACTER PHINTHU
\u0E34 <> i ; # THAI CHARACTER SARA I
| k < g ;
| k < h ;
| c < j ;
| k < q ;
| s < z ;
:: (lower);
