| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945 | 
							- // replace combining (tone) accents with single characters
 - .replace
 - à	à
 - á	á
 - ả	ả
 - ã	ã
 - ạ	ạ
 - 
 - 
 - ằ	ằ
 - ắ	ắ
 - ẳ	ẳ
 - ẵ	ẵ
 - ặ	ặ
 - 
 - ầ	ầ
 - ấ	ấ
 - ẩ	ẩ
 - ẫ	ẫ
 - ậ	ậ
 - 
 - è	è
 - é	é
 - ẻ	ẻ
 - ẽ	ẽ
 - ẹ	ẹ
 - 
 - ề	ề
 - ế	ế
 - ể	ể
 - ễ	ễ
 - ệ	ệ
 - 
 - ì	ì
 - í	í
 - ỉ	ỉ
 - ĩ	ĩ
 - ị	ị
 - 
 - ò	ò
 - ó	ó
 - ỏ	ỏ
 - õ	õ
 - ọ	ọ
 - 
 - ồ	ồ
 - ố	ố
 - ổ	ổ
 - ỗ	ỗ
 - ộ	ộ
 - 
 - ờ	ờ
 - ớ	ớ
 - ở	ở
 - ỡ	ỡ
 - ợ	ợ
 - 
 - ù	ù
 - ú	ú
 - ủ	ủ
 - ũ	ũ
 - ụ	ụ
 - 
 - ừ	ừ
 - ứ	ứ
 - ử	ử
 - ữ	ữ
 - ự	ự
 - 
 - ỳ	ỳ
 - ý	ý
 - ỷ	ỷ
 - ỹ	ỹ
 - ỵ	ỵ
 - 
 - 
 - //================================
 - //  Consonants
 - //================================
 - .L01 t c ne nd k x s nt ch th me te le ce ny ry e o u re nch de p pe ph sh v ve 
 - .L02 n
 - 
 - 
 - .group b
 -         b          b
 -      _) b          _b
 - //b($w_alt2 _^_EN
 - 
 - .group c
 -         c          g         //k
 -         c (_       kh
 -         ch         c         // try [tS;] [tS] [c]
 -         ce (_      _^_EN
 -      _) cl         _^_EN
 -         
 -  
 - 
 - .group d
 -         d          J^        // try [z] [J] [dZ] [dZ;] [J^]
 -         d (_       _^_EN
 - 
 -         
 -         
 - .group đ
 -         đ          d
 -      _) đ          _d
 -         
 -  
 - 
 - .group f
 -         //f          f
 -      _) f          _^_EN
 -         f (_       _^_EN
 -         
 -  
 - .group g
 -         g          Q         // try [g] [Q]
 -         gh         Q         // or [g]  [Q]
 -         //g (i       J^       // try [D] [z] [j] [J^] [z;] [J] [dZ]
 -         //g (ì       J^
 -         //g (í       J^
 -         //g (ỉ       J^
 -         //g (ĩ       J^
 - 	//g (ị       J^
 -         gi         J^
 - ?1      giết       J^'iE3g
 -         giết       J^'iE3t[
 -         giếc       J^'iE3kh
 - ?1      giệt       J^'iE6g
 -         giệt       J^'iE6t[
 -         giệc       J^'iE6kh
 -      _) gol        _^_EN
 -      _) gat        _^_EN     
 -         ght (_     _^_EN        
 -  
 - 
 - .group h
 -         h          h
 -         
 -  
 - .group j
 -         j          Z
 - 
 - 
 - .group k
 -         k          k
 -         //k (_       kh
 -         kh         x
 -         k (_       _^_EN
 -         
 -  
 - .group l
 -         l          l
 -         l (_       _^_EN
 -         le (_      _^_EN
 - 
 -         
 - .group m
 -         m          m
 -         
 - 
 - .group n
 -         n          n
 - ?1      n (_       N         //n
 -         ng         N
 -         ngh        N
 -         nh         n^
 -         nd (_      _^_EN
 - 
 -         
 - .group ñ
 -         ñ          n^
 -         
 -  
 - .group p
 -         p          p
 -         ph         f
 -         
 -  
 - .group q
 -         q          k
 -         q (_       kh
 -         qu         w         //kw
 -         
 - 
 - .group r
 -         r          z.        // try [z] [z.] [r] [z;]
 -         r (_       _^_EN
 -         rm (_      _^_EN
 - 
 -         
 - .group s
 -         s          s.        // try [s.] [s] [S]
 -      _) sh         _^_EN
 -         s (_       _^_EN
 -         st (_      _^_EN
 -         se (_      _^_EN
 - 
 -         
 - .group t
 -         t          t[
 - ?1      t (_       g
 -         th         t
 -         tr         cr        // try [cr] [tr] [tS;] [tS] [c] [dZ] [dz;]
 -         ts (_      _^_EN
 -         te (_      _^_EN
 -         th (_      _^_EN
 -         tt (_      _^_EN
 - 
 -         
 - .group v
 -         v          v
 -         ve (_      _^_EN     
 -         
 -  
 - .group w
 -         w          w
 -      _) w          _^_EN
 -         w (_       _^_EN
 -         
 -  
 - .group x
 -         x          s
 -         x (_       _^_EN
 - 
 - 
 - .group z
 -         z          z
 -         z (_       _^_EN
 - 
 -         
 - //================================
 - //  Vowels
 - //================================
 -         
 -  
 - 
 - .group a
 -         a          a:
 -         ai         a:I
 -         aì         a:I2
 -         aí         a:I3
 -         aỉ         a:I4
 -         aĩ         a:I5
 -         aị         a:I6
 -         ay         aI
 -         aỳ         aI2
 -         aý         aI3
 -         aỷ         aI4
 -         aỹ         aI5
 -         aỵ         aI6
 -         ao         a:U
 -         aò         a:U2
 -         aó         a:U3
 -         aỏ         a:U4
 -         aõ         a:U5
 -         aọ         a:U6
 -         au         aU
 -         aù         aU2
 -         aú         aU3
 -         aủ         aU4
 -         aũ         aU5
 -         aụ         aU6
 -         a (L01     _^_EN
 -         ai (L02    _^_EN
 - 
 -         
 - .group à
 -         à          a:2
 -         ài         a:I2
 -         ày         aI2
 -         ào         a:U2
 -         àu         aU2
 -         
 -  
 - .group á
 -         á          a:3
 -         ái         a:I3
 -         áy         aI3
 -         áo         a:U3
 -         áu         aU3
 -         
 -  
 - .group ả
 -         ả          a:4
 -         ải         a:I4
 -         ảy         aI4
 -         ảo         a:U4
 -         ảu         aU4
 -         
 -  
 - .group ã
 -         ã          a:5
 -         ãi         a:I5
 -         ãy         aI5
 -         ão         a:U5
 -         ãu         aU5
 -         
 -  
 - .group ạ
 -         ạ          a:6
 -         ại         a:I6
 -         ạy         aI6
 -         ạo         a:U6
 -         ạu         aU6
 -         
 -  
 - //================================
 - .group ă
 -         ă          a
 -         
 -  
 - 
 - .group ằ
 -         ằ          a2
 -         
 -  
 - 
 - .group ắ
 -         ắ          a3
 -         
 -  
 - 
 - .group ẳ
 -         ẳ          a4
 -         
 -  
 - 
 - .group ẵ
 -         ẵ          a5
 -         
 -  
 - 
 - .group ặ
 -         ặ          a6
 -         
 -  
 - //=================================
 - .group â
 -         â          @
 -         ây         @I
 -         âu         @U1       
 -         
 -  
 - 
 - .group ầ
 -         ầ          @2
 -         ầy         @I2
 -         ầu         @U2
 -         
 -  
 - 
 - .group ấ
 -         ấ          @3
 -         ấy         @I3
 -         ấu         @U3
 -         
 -  
 - 
 - .group ẩ
 -         ẩ          @4
 -         ẩy         @I4
 -         ẩu         @U4
 -         
 -  
 - 
 - .group ẫ
 -         ẫ          @5
 -         ẫy         @I5
 -         ẫu         @U5
 -         
 -  
 - 
 - .group ậ
 -         ậ          @6
 -         ậy         @I6
 -         ậu         @U6
 -         
 -  
 - //===========================
 - .group e
 -         e          E
 -         eo         EU
 -         eò         EU2
 -         eó         EU3
 -         eỏ         EU4
 -         eỗ         EU5
 -         eọ         EU6
 -         e (L01     _^_EN
 -         ey (_      _^_EN
 - 
 -         
 - .group è
 -         è          E2
 -         èo         EU2
 -         
 -  
 - 
 - .group é
 -         é          E3
 -         éo         EU3
 -         
 -  
 - 
 - .group ẻ
 -         ẻ          E4
 -         ẻo         EU4
 -         
 -  
 - 
 - .group ẽ
 -         ẽ          E5
 -         ẽo         EU5
 -         
 -  
 - 
 - .group ẹ
 -         ẹ          E6
 -         ẹo         EU6
 -         
 -  
 - //============================
 - 
 - .group ê
 -         ê          e
 -         êu         eU1
 -         
 -  
 - 
 - .group ề
 -         ề          e2
 -         ều         eU2
 -         
 -  
 - 
 - .group ế
 -         ế          e3
 -         ếu         eU3
 -         
 -  
 - 
 - .group ể
 -         ể          e4
 -         ểu         eU4
 -         
 -  
 - 
 - .group ễ
 -         ễ          e5
 -         ễu         eU5
 -         
 -  
 - 
 - .group ệ
 -         ệ          e6
 -         ệu         eU6
 - 
 -  
 - //============================
 - 
 - .group i
 -         i          i
 -         i (A       j
 -         ia         i@
 -         ià         i@2
 -         iá         i@3
 -         iả         i@4
 -         iã         i@5
 -         iạ         i@6
 -         iê         iE
 -         iề         iE2
 -         iế         iE3
 -         iể         iE4
 -         iễ         iE5
 -         iệ         iE6
 -         iu         iU
 -         iù         iU2
 -         iú         iU3
 -         iủ         iU4
 -         iũ         iU5
 -         iụ         iU6
 -         iêu        iU
 -         iều        iU2
 -         iếu        iU3
 -         iểu        iU4
 -         iễu        iU5
 -         iệu        iU6
 -         i (L01     _^_EN
 - 
 -         
 - .group ì
 -         ì          i2
 -         ì (A       j2
 -         ìa         i@2
 -         ìu         iU2
 -         
 -  
 - .group í
 -         í          i3
 -         í (A       j3
 -         ía         i@3
 -         íu         iU3
 -         
 -  
 - .group ỉ
 -         ỉ          i4
 -         ỉ (A       j4
 -         ỉa         i@4
 -         ỉu         iU4
 -         
 -  
 - .group ĩ
 -         ĩ          i5
 -         ĩ (A       j5
 -         ĩa         i@5
 -         ĩu         iU5
 -         
 -  
 - .group ị
 -         ị          i6
 -         ị (A       j6
 -         ịa         i@6
 -         ịu         iU6
 -         
 -  
 - //=========================
 - 
 - .group o
 -         o          O
 -         oa         o@        // modify oa sound  example: hoa,khoa // o (A       w
 -         oi         OI
 -         oì         OI2
 -         oí         OI3
 -         oỉ         OI4
 -         oĩ         OI5
 -         oị         OI6
 -         ong        O#
 -         oe         o&        // Adding  oe sound  example: lóe sáng,toét mắt
 -         o (L01     _^_EN
 -         
 -         
 - .group ò
 -         ò          O2
 -         òi         OI2
 -         òa         o@2       //ò (A       w2
 -         òng        O#2
 -         òe         o&2
 -         
 -  
 - 
 - .group ó
 -         ó          O3
 -         ói         OI3
 -         óa         o@3       //ó (A       w3
 -         óng        O#3
 -         óe         o&3
 -         
 -  
 - 
 - .group ỏ
 -         ỏ          O4
 -         ỏi         OI4
 -         ỏa         o@4       //ỏ (A       w4
 -         ỏng        O#4
 -         ỏe         o&4
 -         
 -  
 - 
 - .group õ
 -         õ          O5
 -         õi         OI5
 -         õa         o@5       //õ (A       w5
 -         õng        O#5
 -         õe         o&5
 -         
 -  
 - 
 - .group ọ
 -         ọ          O6
 -         ọi         OI6
 -         ọa         o@6       //ọ (A       w6
 -         ọng        O#6
 -         ọe         o&6
 -         
 -  
 - 
 - //=============================
 - 
 - .group ô
 -         ô          o
 -         ôi         oI
 -         ông        o#        // ông sound
 -         
 -  
 - .group ồ
 -         ồ          o2
 -         ồi         oI2
 -         ồng        o#2
 -         
 -  
 - 
 - .group ố
 -         ố          o3
 -         ối         oI3
 -         ống        o#3
 -         
 -  
 - 
 - .group ổ
 -         ổ          o4
 -         ổi         oI4
 -         ổng        o#4
 -         
 -  
 - 
 - .group ỗ
 -         ỗ          o5
 -         ỗi         oI5
 -         ỗng        o#5
 -         
 -  
 - 
 - .group ộ
 -         ộ          o6
 -         ội         oI6
 -         ộng        o#6
 -         
 -  
 -         
 - //=============================
 - 
 - .group ơ
 -         ơ          @:
 -         ơi         @:I
 -         ơu         @:U
 -         
 -  
 - 
 - .group ờ
 -         ờ          @:2
 -         ời         @:I2
 -         ờu         @:U2
 -         
 -  
 - 
 - .group ớ
 -         ớ          @:3
 -         ới         @:I3
 -         ớu         @:U3
 -         
 -  
 - 
 - .group ở
 -         ở          @:4
 -         ởi         @:I4
 -         ởu         @:U4
 -         
 -  
 - 
 - .group ỡ
 -         ỡ          @:5
 -         ỡi         @:I5
 -         ỡu         @:U5
 -         
 -  
 - 
 - .group ợ
 -         ợ          @:6
 -         ợi         @:I6
 -         ợu         @:U6
 -         
 -  
 - 
 - //=============================
 - 
 - .group u
 -         u          u
 -         u (A       w
 -      A) u          w
 -         ui         uI
 -         uì         uI2
 -         uí         uI3
 -         uỉ         uI4
 -         uĩ         uI5
 -         uị         uI6
 -         ua         u@
 -         uà         u@2
 -         uá         u@3
 -         uả         u@4
 -         uã         u@5
 -         uạ         u@6
 -         uô         u@
 -         uồ         u@2
 -         uố         u@3
 -         uổ         u@4
 -         uỗ         u@5
 -         uộ         u@6
 -         uôi        u@j
 -         uồi        u@j2
 -         uối        u@j3
 -         uổi        u@j4
 -         uỗi        u@j5
 -         uội        u@j6
 -         //ung        u#
 -         u (L01     _^_EN
 -         ui (L01    _^_EN
 -         ua (L01    _^_EN
 -         
 -         
 - .group ù
 -         ù          u2
 -         ù (A       w2
 -         ùi         uI2
 -         ùa         u@2
 - 		//ùng        u#2
 -         
 -  
 - 
 - .group ú
 -         ú          u3
 -         ú (A       w3
 -         úi         uI3
 -         úa         u@3
 - 		//úng        u#3
 -         
 -  
 - 
 - .group ủ
 -         ủ          u4
 -         ủ (A       w4
 -         ủi         uI4
 -         ủa         u@4
 - 		//ủng        u#4
 -         
 -  
 - 
 - .group ũ
 -         ũ          u5
 -         ũ (A       w5
 -         ũi         uI5
 -         ũa         u@5
 - 		//ũng        u#5
 -         
 -  
 - 
 - .group ụ
 -         ụ          u6
 -         ụ (A       w6
 -         ụi         uI6
 -         ụa         u@6
 - 		//ụng        u#6
 -         
 -  
 - //=============================
 - 
 - .group ư
 -         ư          y
 -         ưi         yI
 -         ưa         y@
 -         ươ         y@
 -         ườ         y@2
 -         ướ         y@3
 -         ưở         y@4
 -         ưỡ         y@5
 -         ượ         y@6
 -         ưu         yw
 -         ươi        y@j
 -         ười        y@j2
 -         ưới        y@j3
 -         ưởi        y@j4
 -         ưỡi        y@j5
 -         ượi        y@j6
 -         ươu        y@w
 -         ườu        y@w2
 -         ướu        y@w3
 -         ưởu        y@w4
 -         ưỡu        y@w5
 -         ượu        y@w6
 -         
 -  
 - 
 - .group ừ
 -         ừ          y2
 -         ừi         yI2
 -         ừa         y@2
 -         ừu         yw2
 -         
 -  
 - 
 - .group ứ
 -         ứ          y3
 -         ứi         yI3
 -         ứa         y@3
 -         ứu         yw3
 -         
 -  
 - 
 - .group ử
 -         ử          y4
 -         ửi         yI4
 -         ửa         y@4
 -         ửu         yw4
 -         
 -  
 - 
 - .group ữ
 -         ữ          y5
 -         ữi         yI5
 -         ữa         y@5
 -         ữu         yw5
 -         
 -  
 - 
 - .group ự
 -         ự          y6
 -         ựi         yI6
 -         ựa         y@6
 -         ựu         yw6
 -         
 -  
 - //=============================
 - 
 - .group y
 -         y          i
 -         y (A       j
 -         ya         i@
 -         yà         i@2
 -         yá         i@3
 -         yả         i@4
 -         yã         i@5
 -         yạ         i@6
 -         yê         i@
 -         yề         i@2
 -         yế         i@3
 -         yể         i@4
 -         yễ         i@5
 -         yệ         i@6
 -       //  yêu        i@U
 -         
 -  
 - 
 - .group ỳ
 -         ỳ          i2
 -         ỳ (A       j2
 -         ỳa         i@2
 -         
 -  
 - 
 - .group ý
 -         ý          i3
 -         ý (A       j3
 -         ýa         i@3
 -         
 -  
 - 
 - .group ỷ
 -         ỷ          i4
 -         ỷ (A       j4
 -         ỷa         i@4
 -         
 -  
 - 
 - .group ỹ
 -         ỹ          i5
 -         ỹ (A       j5
 -         ỹa         i@5
 -         
 -  
 - 
 - .group ỵ
 -         ỵ          i6
 -         ỵ (A       j6
 -         ỵa         i@6
 -         
 -  
 - //=============================
 - 
 - .group 0xce   // Greek letters
 - // 0xce is the first byte of the utf-8 code for these characters
 -         
 -  
 -         α          a:1n_|f'a:1
 -         ά          a:1n_|f'a:1
 -         β          b'e1_|t['a:1
 -         γ          Q'a:1_|m'a:1
 -         δ          J'E1n_|t['a:1
 -         ε          E1p_|s'i1_|l'O1n
 -         έ          E1p_|s'i1_|l'O1n
 -         ζ          D'e1_|t['a:1
 -         η          e1_|t['a:1
 -         ή          e1_|t['a:1
 -         θ          t'e1_|t['a:1
 -         ι          i1_|'o1_|t['a:1
 -         ί          i1_|'o1_|t['a:1
 -         κ          k'a:1p_|p'a:1
 -         λ          l'a1m_|_d'a:1
 -         μ          mw'i1
 -         ν          nw'i1
 -         ξ          s'i7
 -         ο          o1_|m'i1_|kz.'O7n
 -         
 -  
 - 
 - .group 0xcf   // Greek letters
 -         
 -  
 -         π          p'i1
 -         ρ          z.'o1
 -         σ          s'i3c_|m'a:1
 -         ς          s'i3c_|m'a:1
 -         τ          t['o1
 -         υ          u1p_|s'i1_|l'O1n
 -         ύ          u1p_|s'i1_|l'O1n
 -         φ          f'i1
 -         χ          c'i1
 -         ψ          ps'i1
 -         ω          o1_|m'e1_|Q'a:7
 -         ώ          o1_|m'e1_|Q'a:7
 -         ό          o1_|m'i1_|kz.'O7n
 -         
 -  
 -         
 -  
 - 
 - .group
 -         %          f'@2n||cr'am
 -         !          _:c'@3m_|t'a:7n_:
 -         ! (\!      
 - //            :            koUl@n
 -     D_) h (_DD_    D'@:2     // omit colon in time, eg: 2:30
 -         $          d'o||l'a
 -         !=         x'o#_|_b'a2N_
 -         >=         l'@:3n_|h'@:1n_|hw,a6kh_b'a2N
 -         <=         n^'O4_|h'@:1n_|hw,a6kh_b'a2N
 -         
 -  
 -     __) - (_D      cr'y2
 -     A_) - (_D      _
 -     C_) - (_D      _
 -         
 -         .          c'@3m_
 -         . (.       _:
 -     \.) .          
 -         
 -  
 
 
  |