package Ġcom . w elle bee . sans k rit Ċ Ċ import Ġkotlin . math . min ĊĊ Ċ /** Ċ Ġ* ĠSan script Ċ Ġ* Ċ Ġ* ĠSan script Ġis Ġa ĠSans k rit Ġtrans l iteration Ġlibrary . ĠCurrently , Ġit Ġsupports Ċ Ġ* Ġother ĠIn dian Ġlanguages Ġonly Ġincident ally . Ċ Ġ* Ċ Ġ* ĠReleased Ġunder Ġthe ĠMIT Ġand ĠGPL ĠLicense s . Ċ Ġ*/ Ċ type alias ĠAltern ate Map Ġ= ĠHashMap < String , ĠArray < String >> Ċ Ċ type alias ĠScheme s Ġ= ĠMutable Map < String , ĠScheme > Ċ Ċ type alias ĠScheme Ġ= ĠMutable Map < String , ĠArray < String >> Ċ Ċ type alias ĠAltern ates Ġ= ĠHashMap < String , ĠAltern ate Map > Ċ Ċ type alias ĠS Map Ġ= ĠHashMap < String , ĠString > ĊĊ Ċ fun Ġ< T > ĠArray < T >. without First (): ĠArray < T > Ġ{ ĊĠĠĠ Ġreturn Ġslice Array ( 1 Ġuntil Ġsize ) Ċ } ĊĊ Ċ fun ĠScheme . che ap Copy (): ĠScheme Ġ{ ĊĠĠĠ Ġval Ġcopy : ĠScheme Ġ= Ġmutable Map Of < String , ĠArray < String >>() ĊĠĠĠ Ġfor Ġ(( key , Ġvalue ) Ġin Ġentries ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcopy [ key ] Ġ= Ġvalue . toList (). to Typed Array () ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġcopy Ċ } Ċ Ċ class ĠSan script Ġ{ ĊĠĠĠ Ġ// ĠOptions Ġinterface . ĊĠĠĠ Ġdata Ġclass ĠOptions ( ĊĠĠĠĠĠĠĠ Ġval Ġskip Sg ml : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġval Ġsyn cope : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġval Ġskip Star ters : ĠArray < String > Ġ= ĠarrayOf (" [" ), ĊĠĠĠĠĠĠĠ Ġval Ġskip End s : ĠArray < String > Ġ= ĠarrayOf (" ]") ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġcollection Ġof Ġall Ġschemes . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĠScheme s ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġschemes Ġ= Ġmutable Map Of < String , ĠScheme >() ĊĊĠĠĠ Ġ/* ĠScheme s ĊĠĠĠĠ Ġ* Ġ======= ĊĠĠĠĠ Ġ* ĠScheme s Ġare Ġof Ġtwo Ġkinds : Ġ" B ra hm ic " Ġand Ġ" roman ." Ġ" B ra hm ic " Ġschemes ĊĠĠĠĠ Ġ* Ġdescribe Ġa bug ida Ġscripts Ġfound Ġin ĠIn dia . Ġ" R oman " Ġschemes Ġdescribe ĊĠĠĠĠ Ġ* Ġman ufact ured Ġal ph ab ets Ġthat Ġare Ġmeant Ġto Ġdescribe Ġor Ġencode ĠB ra h mi ĊĠĠĠĠ Ġ* Ġscripts . ĠA bug idas Ġand Ġal ph ab ets Ġare Ġprocessed Ġby Ġseparate Ġalgorithms ĊĠĠĠĠ Ġ* Ġbecause Ġof Ġthe Ġunique Ġdifficult ies Ġinvolved Ġwith Ġeach . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠB ra hm ic Ġcon son ants Ġare Ġstated Ġwithout Ġa Ġvir ama . ĠRoman Ġcon son ants Ġare ĊĠĠĠĠ Ġ* Ġstated Ġwithout Ġthe Ġv owel Ġ' a '. ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ( Since Ġ" ab ug ida " Ġis Ġnot Ġa Ġwell - known Ġterm , ĠSan script Ġuses Ġ" B ra hm ic " ĊĠĠĠĠ Ġ* Ġand Ġ" roman " Ġfor Ġcl arity .) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġinitialize Schemes () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġscheme : ĠScheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à¦ ħ ", Ġ" à¦ Ĩ ", Ġ" à¦ĩ ", Ġ" à¦ Ī ", Ġ" à¦ ī ", Ġ" à¦ Ĭ ", Ġ" à¦ ĭ ", Ġ" à§ ł ", Ġ" à¦ Į ", Ġ" à§ ¡ ", Ġ"", Ġ" à¦ ı ", Ġ" à¦ Ĳ ", Ġ"", Ġ" à¦ ĵ ", Ġ" à¦ Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à¦¾ ", Ġ" à¦¿ ", Ġ" à§Ģ ", Ġ" à§ģ ", Ġ" à§ Ĥ ", Ġ" à§ ĥ ", Ġ" à§ Ħ ", Ġ" à§ ¢ ", Ġ" à§ £ ", Ġ"", Ġ" à§ĩ ", Ġ" à§ Ī ", Ġ"", Ġ" à§ĭ ", Ġ" à§ Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à¦Ĥ ", Ġ" à¦ ĥ ", Ġ" à¦ ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à§į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦· ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ķ à§į à¦· ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¦ ľ à§į à¦ ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à§ ¦ ", Ġ" à§ § ", Ġ" à§ ¨ ", Ġ" à§ © ", Ġ" à§ ª ", Ġ" à§ « ", Ġ" à§ ¬ ", Ġ" à§ Ń ", Ġ" à§ ® ", Ġ" à§ ¯ ", Ġ" à¥ Ĳ ", Ġ" à¦ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ" à¦ ¡ ", Ġ" à¦ ¢ ", Ġ"", Ġ" à¦¯ ", Ġ"") ĊĠĠĠĠĠĠĠ Ġschemes [" b eng ali "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠDev an ag ari ĊĠĠĠĠĠĠĠĠ Ġ* Ġ---------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠThe Ġmost Ġcomprehensive Ġand Ġun amb iguous ĠB ra hm ic Ġscript Ġlisted . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġ// Ġ" In dependent " Ġforms Ġof Ġthe Ġv ow els . ĠThese Ġare Ġused Ġwhenever Ġthe Ċ // Ġv owel Ġdoes Ġnot Ġimmediately Ġfollow Ġa Ġcon son ant . ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à¤ ħ ", Ġ" à¤ Ĩ ", Ġ" à¤ ĩ ", Ġ" à¤ Ī ", Ġ" à¤ ī ", Ġ" à¤ Ĭ ", Ġ" à¤ ĭ ", Ġ" à¥ ł ", Ġ" à¤ Į ", Ġ" à¥ ¡ ", Ġ" à¤ İ ", Ġ" à¤ ı ", Ġ" à¤ Ĳ ", Ġ" à¤ Ĵ ", Ġ" à¤ ĵ ", Ġ" à¤ Ķ ") ĊĠĠĠĠĠĠĠ Ġ// Ġ" Dependent " Ġforms Ġof Ġthe Ġv ow els . ĠThese Ġare Ġused Ġwhenever Ġthe Ċ // Ġv owel Ġimmediately Ġfollows Ġa Ġcon son ant . ĠIf Ġa Ġletter Ġis Ġnot Ċ // Ġlisted Ġin Ġ` v ow els `, Ġit Ġshould Ġnot Ġbe Ġlisted Ġhere . ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à¤¾ ", Ġ" à¤¿ ", Ġ" à¥Ģ ", Ġ" à¥ģ ", Ġ" à¥ Ĥ ", Ġ" à¥ ĥ ", Ġ" à¥ Ħ ", Ġ" à¥ ¢ ", Ġ" à¥ £ ", Ġ" à¥ Ĩ ", Ġ" à¥ĩ ", Ġ" à¥ Ī ", Ġ" à¥ Ĭ ", Ġ" à¥ ĭ ", Ġ" à¥ Į ") ĊĠĠĠĠĠĠĠ Ġ// ĠMis cellaneous Ġmarks , Ġall Ġof Ġwhich Ġare Ġused Ġin ĠSans k rit . ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à¤ Ĥ ", Ġ" à¤ ĥ ", Ġ" à¤ ģ ") ĊĠĠĠĠĠĠĠ Ġ// ĠIn Ġsy ll abic Ġscripts Ġlike ĠDev an ag ari , Ġcon son ants Ġhave Ġan Ġin herent Ċ // Ġv owel Ġthat Ġmust Ġbe Ġsupp ressed Ġexplicitly . ĠWe Ġdo Ġso Ġby Ġputting Ġa Ċ // Ġvir ama Ġafter Ġthe Ġcon son ant . ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à¥į ") ĊĠĠĠĠĠĠĠ Ġ// ĠVar ious ĠSans k rit Ġcon son ants Ġand Ġcon son ant Ġclusters . ĠEvery Ġtoken Ċ // Ġhere Ġhas Ġan Ġexplicit Ġv owel . ĠThus Ġ" à¤ķ " Ġis Ġ" ka " Ġinstead Ġof Ġ" k ". ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ķ à¥į à¤ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à¤ ľ à¥į à¤ ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ// ĠNumbers Ġand Ġpunctuation ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à¥ ¦ ", Ġ" à¥ § ", Ġ" à¥ ¨ ", Ġ" à¥ © ", Ġ" à¥ ª ", Ġ" à¥ « ", Ġ" à¥ ¬ ", Ġ" à¥ Ń ", Ġ" à¥ ® ", Ġ" à¥ ¯ ", Ġ" à¥ Ĳ ", Ġ" à¤ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġ// ĠZero - width Ġjoin er . ĠThis Ġis Ġused Ġto Ġseparate Ġa Ġcon son ant Ġcluster Ċ // Ġand Ġavoid Ġa Ġcomplex Ġlig ature . ĊĠĠĠĠĠĠĠ Ġscheme [" z wj "] Ġ= ĠarrayOf ("\ u 2 0 0 D ") ĊĠĠĠĠĠĠĠ Ġ// ĠDummy Ġcon son ant . ĠThis Ġis Ġused Ġin ĠI TRANS Ġto Ġpre vert Ġcertain Ġtypes Ċ // Ġof Ġparser Ġamb iguity . ĠThus Ġ" bar au " Ġ-> Ġà¤ ¬ à¤° à¥ Į Ġbut Ġ" bara _ u " Ġ-> Ġà¤ ¬ à¤° à¤ ī . ĊĠĠĠĠĠĠĠ Ġscheme [" skip "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġ// ĠV ed ic Ġaccent . ĠU dat ta Ġand Ġan ud at ta . ĊĠĠĠĠĠĠĠ Ġscheme [" accent "] Ġ= ĠarrayOf ("\ u 0 9 5 1 ", Ġ"\ u 0 9 5 2 ") ĊĠĠĠĠĠĠĠ Ġ// ĠAcc ent Ġcombined Ġwith Ġan us var a Ġand Ġand Ġvis arga . ĠFor Ġcompatibility Ċ // Ġwith ĠI TRANS , Ġwhich Ġallows Ġthe Ġreverse Ġof Ġthese Ġfour . ĊĠĠĠĠĠĠĠ Ġscheme [" combo _ accent "] Ġ= ĠarrayOf (" à¤ ĥ à¥ ĳ ", Ġ" à¤ ĥ à¥ Ĵ ", Ġ" à¤ Ĥ à¥ ĳ ", Ġ" à¤ Ĥ à¥ Ĵ ") ĊĠĠĠĠĠĠĠ Ġscheme [" c andra "] Ġ= ĠarrayOf (" à¥ ħ ") ĊĠĠĠĠĠĠĠ Ġ// ĠNon - Sans k rit Ġcon son ants ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf (" à¤ķ à¤ ¼ ", Ġ" à¤ ĸ à¤ ¼ ", Ġ" à¤ Ĺ à¤ ¼ ", Ġ" à¤ ľ à¤ ¼ ", Ġ" à¤ ¡ à¤ ¼ ", Ġ" à¤ ¢ à¤ ¼ ", Ġ" à¤ « à¤ ¼ ", Ġ" à¤¯ à¤ ¼ ", Ġ" à¤ ± ") ĊĠĠĠĠĠĠĠ Ġschemes [" dev an ag ari "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠGu jar ati ĊĠĠĠĠĠĠĠĠ Ġ* Ġ-------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠSans k rit - complete . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à ª ħ ", Ġ" à ª Ĩ ", Ġ" à ª ĩ ", Ġ" à ª Ī ", Ġ" à ª ī ", Ġ" à ª Ĭ ", Ġ" à ª ĭ ", Ġ" à « ł ", Ġ" à ª Į ", Ġ" à « ¡ ", Ġ"", Ġ" à ª ı ", Ġ" à ª Ĳ ", Ġ"", Ġ" à ª ĵ ", Ġ" à ª Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à ª ¾ ", Ġ" à ª ¿ ", Ġ" à « Ģ ", Ġ" à « ģ ", Ġ" à « Ĥ ", Ġ" à « ĥ ", Ġ" à « Ħ ", Ġ" à « ¢ ", Ġ" à « £ ", Ġ"", Ġ" à « ĩ ", Ġ" à « Ī ", Ġ"", Ġ" à « ĭ ", Ġ" à « Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à ª Ĥ ", Ġ" à ª ĥ ", Ġ" à ª ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à « į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ķ à « į à ª · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ª ľ à « į à ª ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à « ¦ ", Ġ" à « § ", Ġ" à « ¨ ", Ġ" à « © ", Ġ" à « ª ", Ġ" à « « ", Ġ" à « ¬ ", Ġ" à « Ń ", Ġ" à « ® ", Ġ" à « ¯ ", Ġ" à « Ĳ ", Ġ" à ª ½ ", Ġ" à « ¤ ", Ġ" à « ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" c andra "] Ġ= ĠarrayOf (" à « ħ ") ĊĠĠĠĠĠĠĠ Ġschemes [" gu jar ati "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠG urm uk hi ĊĠĠĠĠĠĠĠĠ Ġ* Ġ-------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠMissing ĠR / RR / l R / l RR ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à ¨ ħ ", Ġ" à ¨ Ĩ ", Ġ" à ¨ ĩ ", Ġ" à ¨ Ī ", Ġ" à ¨ ī ", Ġ" à ¨ Ĭ ", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à ¨ ı ", Ġ" à ¨ Ĳ ", Ġ"", Ġ" à ¨ ĵ ", Ġ" à ¨ Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à ¨ ¾ ", Ġ" à ¨ ¿ ", Ġ" à © Ģ ", Ġ" à © ģ ", Ġ" à © Ĥ ", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à © ĩ ", Ġ" à © Ī ", Ġ"", Ġ" à © ĭ ", Ġ" à © Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à ¨ Ĥ ", Ġ" à ¨ ĥ ", Ġ" à ¨ ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à © į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ķ à © į à ¨ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¨ ľ à © į à ¨ ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à © ¦ ", Ġ" à © § ", Ġ" à © ¨ ", Ġ" à © © ", Ġ" à © ª ", Ġ" à © « ", Ġ" à © ¬ ", Ġ" à © Ń ", Ġ" à © ® ", Ġ" à © ¯ ", Ġ" à¥ Ĳ ", Ġ" à¤ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ" à ¨ ĸ ", Ġ" à ¨ Ĺ ", Ġ" à ¨ ľ ", Ġ" à ¨ ¡ ", Ġ"", Ġ" à ¨ « ", Ġ"", Ġ"") ĊĠĠĠĠĠĠĠ Ġschemes [" g urm uk hi "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠK ann ada ĊĠĠĠĠĠĠĠĠ Ġ* Ġ------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠSans k rit - complete . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à² ħ ", Ġ" à² Ĩ ", Ġ" à² ĩ ", Ġ" à² Ī ", Ġ" à² ī ", Ġ" à² Ĭ ", Ġ" à² ĭ ", Ġ" à ³ ł ", Ġ" à² Į ", Ġ" à ³ ¡ ", Ġ" à² İ ", Ġ" à² ı ", Ġ" à² Ĳ ", Ġ" à² Ĵ ", Ġ" à² ĵ ", Ġ" à² Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à² ¾ ", Ġ" à² ¿ ", Ġ" à ³ Ģ ", Ġ" à ³ ģ ", Ġ" à ³ Ĥ ", Ġ" à ³ ĥ ", Ġ" à ³ Ħ ", Ġ" à ³ ¢ ", Ġ" à ³ £ ", Ġ" à ³ Ĩ ", Ġ" à ³ ĩ ", Ġ" à ³ Ī ", Ġ" à ³ Ĭ ", Ġ" à ³ ĭ ", Ġ" à ³ Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à² Ĥ ", Ġ" à² ĥ ", Ġ" à¤ ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à ³ į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ķ à ³ į à² · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à² ľ à ³ į à² ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à ³ ¦ ", Ġ" à ³ § ", Ġ" à ³ ¨ ", Ġ" à ³ © ", Ġ" à ³ ª ", Ġ" à ³ « ", Ġ" à ³ ¬ ", Ġ" à ³ Ń ", Ġ" à ³ ® ", Ġ" à ³ ¯ ", Ġ" à² ĵ à² Ĥ ", Ġ" à² ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à² « ", Ġ"", Ġ" à² ± ") ĊĠĠĠĠĠĠĠ Ġschemes [" k ann ada "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠMal ay alam ĊĠĠĠĠĠĠĠĠ Ġ* Ġ--------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠSans k rit - complete . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à´ ħ ", Ġ" à´ Ĩ ", Ġ" à´ ĩ ", Ġ" à´ Ī ", Ġ" à´ ī ", Ġ" à´ Ĭ ", Ġ" à´ ĭ ", Ġ" àµ ł ", Ġ" à´ Į ", Ġ" àµ ¡ ", Ġ" à´ İ ", Ġ" à´ ı ", Ġ" à´ Ĳ ", Ġ" à´ Ĵ ", Ġ" à´ ĵ ", Ġ" à´ Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à´ ¾ ", Ġ" à´¿ ", Ġ" àµ Ģ ", Ġ" àµģ ", Ġ" àµ Ĥ ", Ġ" àµ ĥ ", Ġ" àµ Ħ ", Ġ" àµ ¢ ", Ġ" àµ £ ", Ġ" àµ Ĩ ", Ġ" àµ ĩ ", Ġ" àµ Ī ", Ġ" àµ Ĭ ", Ġ" àµ ĭ ", Ġ" àµ Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à´ Ĥ ", Ġ" à´ ĥ ", Ġ" à¤ ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" àµį ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ķ àµį à´ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à´ ľ àµį à´ ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" àµ ¦ ", Ġ" àµ § ", Ġ" àµ ¨ ", Ġ" àµ © ", Ġ" àµ ª ", Ġ" àµ « ", Ġ" à µ¬ ", Ġ" àµ Ń ", Ġ" àµ ® ", Ġ" àµ ¯ ", Ġ" à´ ĵ à´ Ĥ ", Ġ" à´ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à´ ± ") ĊĠĠĠĠĠĠĠ Ġschemes [" mal ay alam "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠO ri ya ĊĠĠĠĠĠĠĠĠ Ġ* Ġ----- ĊĠĠĠĠĠĠĠĠ Ġ* ĠSans k rit - complete . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à ¬ ħ ", Ġ" à ¬ Ĩ ", Ġ" à ¬ ĩ ", Ġ" à ¬ Ī ", Ġ" à ¬ ī ", Ġ" à ¬ Ĭ ", Ġ" à ¬ ĭ ", Ġ" à Ń ł ", Ġ" à ¬ Į ", Ġ" à Ń ¡ ", Ġ"", Ġ" à ¬ ı ", Ġ" à ¬ Ĳ ", Ġ"", Ġ" à ¬ ĵ ", Ġ" à ¬ Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à ¬ ¾ ", Ġ" à ¬ ¿ ", Ġ" à Ń Ģ ", Ġ" à Ń ģ ", Ġ" à Ń Ĥ ", Ġ" à Ń ĥ ", Ġ" à Ń Ħ ", Ġ" à Ń ¢ ", Ġ" à Ń £ ", Ġ"", Ġ" à Ń ĩ ", Ġ" à Ń Ī ", Ġ"", Ġ" à Ń ĭ ", Ġ" à Ń Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à ¬ Ĥ ", Ġ" à ¬ ĥ ", Ġ" à ¬ ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à Ń į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ķ à Ń į à ¬ · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à ¬ ľ à Ń į à ¬ ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à Ń ¦ ", Ġ" à Ń § ", Ġ" à Ń ¨ ", Ġ" à Ń © ", Ġ" à Ń ª ", Ġ" à Ń « ", Ġ" à Ń ¬ ", Ġ" à Ń Ń ", Ġ" à Ń ® ", Ġ" à Ń ¯ ", Ġ" à ¬ ĵ à ¬ Ĥ ", Ġ" à ¬ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ" à ¬ ¡ ", Ġ" à ¬ ¢ ", Ġ"", Ġ" à ¬ ¯ ", Ġ"") ĊĠĠĠĠĠĠĠ Ġschemes [" ori ya "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠT amil ĊĠĠĠĠĠĠĠĠ Ġ* Ġ----- ĊĠĠĠĠĠĠĠĠ Ġ* ĠMissing ĠR / RR / l R / l RR Ġv owel Ġmarks Ġand Ġvoice / asp iration Ġdist in ctions . ĊĠĠĠĠĠĠĠĠ Ġ* ĠThe Ġmost Ġincomplete Ġof Ġthe ĠSans k rit Ġschemes Ġhere . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à® ħ ", Ġ" à® Ĩ ", Ġ" à® ĩ ", Ġ" à® Ī ", Ġ" à® ī ", Ġ" à® Ĭ ", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à® İ ", Ġ" à® ı ", Ġ" à® Ĳ ", Ġ" à® Ĵ ", Ġ" à® ĵ ", Ġ" à® Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à®¾ ", Ġ" à®¿ ", Ġ" à¯ Ģ ", Ġ" à¯ģ ", Ġ" à¯ Ĥ ", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à¯ Ĩ ", Ġ" à¯ĩ ", Ġ" à¯Ī ", Ġ" à¯ Ĭ ", Ġ" à¯ ĭ ", Ġ" à¯ Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à® Ĥ ", Ġ" à® ĥ ", Ġ"") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à¯į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®£ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à®ķ à¯į à® · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à® ľ à¯į à® ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à¯ ¦ ", Ġ" à¯ § ", Ġ" à¯ ¨ ", Ġ" à¯ © ", Ġ" à¯ ª ", Ġ" à¯ « ", Ġ" à¯ ¬ ", Ġ" à¯ Ń ", Ġ" à¯ ® ", Ġ" à¯ ¯ ", Ġ" à¯ Ĳ ", Ġ" à¤ ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à®± ") ĊĠĠĠĠĠĠĠ Ġschemes [" t amil "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠT el ugu ĊĠĠĠĠĠĠĠĠ Ġ* Ġ------ ĊĠĠĠĠĠĠĠĠ Ġ* ĠSans k rit - complete . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" à° ħ ", Ġ" à° Ĩ ", Ġ" à° ĩ ", Ġ" à° Ī ", Ġ" à° ī ", Ġ" à° Ĭ ", Ġ" à° ĭ ", Ġ" à± ł ", Ġ" à° Į ", Ġ" à± ¡ ", Ġ" à° İ ", Ġ" à° ı ", Ġ" à° Ĳ ", Ġ" à° Ĵ ", Ġ" à° ĵ ", Ġ" à° Ķ ") ĊĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= ĠarrayOf (" à°¾ ", Ġ" à°¿ ", Ġ" à± Ģ ", Ġ" à±ģ ", Ġ" à± Ĥ ", Ġ" à± ĥ ", Ġ" à± Ħ ", Ġ" à± ¢ ", Ġ" à± £ ", Ġ" à± Ĩ ", Ġ" à± ĩ ", Ġ" à± Ī ", Ġ" à± Ĭ ", Ġ" à± ĭ ", Ġ" à± Į ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" à°Ĥ ", Ġ" à° ĥ ", Ġ" à° ģ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf (" à±į ") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°ķ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ĸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°Ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ĺ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° Ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ļ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° Ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ľ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° Ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ŀ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° Ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ł ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°¡ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¢ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°¤ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¥ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¦ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° § ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°¨ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°ª ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° « ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¬ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°® ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¯ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°° ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°² ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°µ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¶ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¸ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ¹ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ³ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à°ķ à±į à° · ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" à° ľ à±į à° ŀ " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" à± ¦ ", Ġ" à± § ", Ġ" à± ¨ ", Ġ" à± © ", Ġ" à± ª ", Ġ" à± « ", Ġ" à± ¬ ", Ġ" à± Ń ", Ġ" à± ® ", Ġ" à± ¯ ", Ġ" à° ĵ à°Ĥ ", Ġ" à° ½ ", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf ("", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ"", Ġ" à° ± ") ĊĠĠĠĠĠĠĠ Ġschemes [" tel ugu "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠInternational ĠAl phabet Ġof ĠSans k rit ĠTrans l iteration ĊĠĠĠĠĠĠĠĠ Ġ* Ġ------------------------------------------------ -- ĊĠĠĠĠĠĠĠĠ Ġ* ĠThe Ġmost Ġ" prof essional " ĠSans k rit Ġrom anization Ġscheme . put (" ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" a ", Ġ" Äģ ", Ġ" i ", Ġ" Ä« ", Ġ" u ", Ġ" Å« ", Ġ" á¹ Ľ ", Ġ" á¹ Ŀ ", Ġ" á ¸ · ", Ġ" á ¸ ¹ ", Ġ"", Ġ" e ", Ġ" ai ", Ġ"", Ġ" o ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" á¹ĥ ", Ġ" á ¸ ¥ ", Ġ"~ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" gh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á¹ ħ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" c ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" jh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ã± ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á¹Ń ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á¹Ń h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á ¸ į ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á ¸ į h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á¹ ĩ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ph ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" bh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ÅĽ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á¹ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" á ¸ » ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k á¹ £ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j Ã± " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" o á¹ĥ ", Ġ"'", Ġ" à¥¤ ", Ġ" à¥ ¥ ") ĊĠĠĠĠĠĠĠ Ġschemes [" i ast "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠI TRANS ĊĠĠĠĠĠĠĠĠ Ġ* Ġ------ ĊĠĠĠĠĠĠĠĠ Ġ* ĠOne Ġof Ġthe Ġfirst Ġrom anization Ġschemes Ġ-- Ġand Ġone Ġof Ġthe Ġmost ĊĠĠĠĠĠĠĠĠ Ġ* Ġcomplicated . ĠFor Ġalternate Ġforms , Ġsee Ġthe Ġ" all Altern ates " Ġvariable ĊĠĠĠĠĠĠĠĠ Ġ* Ġbelow . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ'_' Ġis Ġa Ġ" null " Ġletter , Ġwhich Ġallows Ġadjacent Ġv ow els . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠarrayOf (" a ", Ġ" A ", Ġ" i ", Ġ" I ", Ġ" u ", Ġ" U ", Ġ" RR i ", Ġ" RR I ", Ġ" LL i ", Ġ" L LI ", Ġ"", Ġ" e ", Ġ" ai ", Ġ"", Ġ" o ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" M ", Ġ" H ", Ġ". N ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" gh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"~ N ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" jh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"~ n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" D ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" N ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ph ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" bh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" sh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Sh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" L ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k Sh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ~ n " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" OM ", Ġ". a ", Ġ"| ", Ġ" || ") ĊĠĠĠĠĠĠĠ Ġscheme [" c andra "] Ġ= ĠarrayOf (". c ") ĊĠĠĠĠĠĠĠ Ġscheme [" z wj "] Ġ= ĠarrayOf ("{} ") ĊĠĠĠĠĠĠĠ Ġscheme [" skip "] Ġ= ĠarrayOf ("_ ") ĊĠĠĠĠĠĠĠ Ġscheme [" accent "] Ġ= ĠarrayOf ("\\ '", Ġ"\\ _ ") ĊĠĠĠĠĠĠĠ Ġscheme [" combo _ accent "] Ġ= ĠarrayOf ("\\ ' H ", Ġ"\\ _ H ", Ġ"\\ ' M ", Ġ"\\ _ M ") ĊĠĠĠĠĠĠĠ Ġscheme [" other "] Ġ= ĠarrayOf (" q ", Ġ" K ", Ġ" G ", Ġ" z ", Ġ". D ", Ġ". Dh ", Ġ" f ", Ġ" Y ", Ġ" R ") ĊĠĠĠĠĠĠĠ Ġschemes [" itr ans "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠHar vard - Ky oto ĊĠĠĠĠĠĠĠĠ Ġ* Ġ------------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠA Ġsimple Ġ 1 : 1 Ġmapping . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" a ", Ġ" A ", Ġ" i ", Ġ" I ", Ġ" u ", Ġ" U ", Ġ" R ", Ġ" RR ", Ġ" l R ", Ġ" l RR ", Ġ"", Ġ" e ", Ġ" ai ", Ġ"", Ġ" o ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" M ", Ġ" H ", Ġ"~ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" gh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" G ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" c ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" jh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" J ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" D ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" N ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ph ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" bh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" z ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" S ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" L ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k S ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j J " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" OM ", Ġ"'", Ġ"| ", Ġ" || ") ĊĠĠĠĠĠĠĠ Ġschemes [" hk "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠNational ĠLibrary Ġat ĠK olk ata ĊĠĠĠĠĠĠĠĠ Ġ* Ġ---------------- ----------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠA part Ġfrom Ġusing Ġ" Äĵ " Ġand Ġ" Åį " Ġinstead Ġof Ġ" e " Ġand Ġ" o ", Ġthis Ġscheme Ġis ĊĠĠĠĠĠĠĠĠ Ġ* Ġidentical Ġto ĠI AST . Ġá ¹ Ŀ , Ġá ¸ · , Ġand Ġá ¸ ¹ Ġare Ġnot Ġpart Ġof Ġthe Ġscheme Ġproper . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* ĠThis Ġis Ġdefined Ġfurther Ġbelow . ĊĠĠĠĠĠĠĠĠ Ġ*/ Ċ /* ĠSans k rit ĠLibrary ĠPh on etic ĠBasic ĊĠĠĠĠĠĠĠĠ Ġ* Ġ---------------- --------------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠWith Ġone ĠASCII Ġletter Ġper Ġphone me , Ġthis Ġis Ġthe Ġter se st Ġtrans l iteration ĊĠĠĠĠĠĠĠĠ Ġ* Ġscheme Ġin Ġuse Ġtoday Ġand Ġis Ġespecially Ġsuit ed Ġto Ġcomputer Ġprocessing . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" a ", Ġ" A ", Ġ" i ", Ġ" I ", Ġ" u ", Ġ" U ", Ġ" f ", Ġ" F ", Ġ" x ", Ġ" X ", Ġ"", Ġ" e ", Ġ" E ", Ġ"", Ġ" o ", Ġ" O ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" M ", Ġ" H ", Ġ"~ ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" K ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" G ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" N ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" c ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" C ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" J ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" w ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" W ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" q ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Q ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" R ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" D ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" P ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" B ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" S ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" z ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" L ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kz ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j Y " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" o M ", Ġ"'", Ġ".", Ġ".. ") ĊĠĠĠĠĠĠĠ Ġschemes [" s lp 1 "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠV el th uis ĊĠĠĠĠĠĠĠĠ Ġ* Ġ-------- ĊĠĠĠĠĠĠĠĠ Ġ* ĠA Ġcase - ins ensitive ĠSans k rit Ġencoding . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠarrayOf (" a ", Ġ" aa ", Ġ" i ", Ġ" ii ", Ġ" u ", Ġ" uu ", Ġ". r ", Ġ". rr ", Ġ". li ", Ġ". ll ", Ġ"", Ġ" e ", Ġ" ai ", Ġ"", Ġ" o ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (". m ", Ġ". h ", Ġ"") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" gh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"\" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" c ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" jh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"~ n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" th ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" dh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" ph ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" bh ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"~ s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ". s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" L ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k . s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ~ n " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" o . m ", Ġ"'", Ġ"| ", Ġ" || ") ĊĠĠĠĠĠĠĠ Ġschemes [" vel th uis "] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġ/* ĠW X ĊĠĠĠĠĠĠĠĠ Ġ* Ġ-- ĊĠĠĠĠĠĠĠĠ Ġ* ĠAs Ġter se Ġas ĠS LP 1 . ĊĠĠĠĠĠĠĠĠ Ġ*/ scheme Ġ= Ġmutable Map Of () ĊĠĠĠĠĠĠĠ Ġscheme [" v ow els "] Ġ= ĠarrayOf (" a ", Ġ" A ", Ġ" i ", Ġ" I ", Ġ" u ", Ġ" U ", Ġ" q ", Ġ" Q ", Ġ" L ", Ġ"", Ġ"", Ġ" e ", Ġ" E ", Ġ"", Ġ" o ", Ġ" O ") ĊĠĠĠĠĠĠĠ Ġscheme [" other _ marks "] Ġ= ĠarrayOf (" M ", Ġ" H ", Ġ" z ") ĊĠĠĠĠĠĠĠ Ġscheme [" vir ama "] Ġ= ĠarrayOf ("") ĊĠĠĠĠĠĠĠ Ġscheme [" con son ants "] Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" K ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" g ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" G ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" f ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" c ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" C ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" J ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" F ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" t ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" d ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" D ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" N ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" w ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" W ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" x ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" X ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" n ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" p ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" P ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" b ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" B ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" m ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" y ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" r ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" l ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" v ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" S ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" R ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" s ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" h ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" k R ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" j F " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġscheme [" symbols "] Ġ= ĠarrayOf (" 0 ", Ġ" 1 ", Ġ" 2 ", Ġ" 3 ", Ġ" 4 ", Ġ" 5 ", Ġ" 6 ", Ġ" 7 ", Ġ" 8 ", Ġ" 9 ", Ġ" o M ", Ġ"'", Ġ"| ", Ġ" || ") ĊĠĠĠĠĠĠĠ Ġschemes [" wx "] Ġ= Ġscheme ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠSet Ġof Ġnames Ġof ĠRoman Ġschemes . ĊĠĠĠ Ġprivate Ġval Ġrom an Schemes : ĠMutable Map < String , ĠBoolean > Ġ= ĠHashMap () ĊĊĠĠĠ Ġ// ĠMap Ġof Ġalternate Ġen codings . ĊĊĠĠĠ Ġprivate Ġval Ġall Altern ates Ġ= ĠAltern ates () ĊĠĠĠ Ġprivate Ġfun Ġinitialize Altern ates () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmap Ġ= ĠAltern ate Map () ĊĠĠĠĠĠĠĠ Ġmap [" A "] Ġ= ĠarrayOf (" aa ") ĊĠĠĠĠĠĠĠ Ġmap [" I "] Ġ= ĠarrayOf (" ii ", Ġ" ee ") ĊĠĠĠĠĠĠĠ Ġmap [" U "] Ġ= ĠarrayOf (" uu ", Ġ" oo ") ĊĠĠĠĠĠĠĠ Ġmap [" RR i "] Ġ= ĠarrayOf (" R ^ i ") ĊĠĠĠĠĠĠĠ Ġmap [" RR I "] Ġ= ĠarrayOf (" R ^ I ") ĊĠĠĠĠĠĠĠ Ġmap [" LL i "] Ġ= ĠarrayOf (" L ^ i ") ĊĠĠĠĠĠĠĠ Ġmap [" L LI "] Ġ= ĠarrayOf (" L ^ I ") ĊĠĠĠĠĠĠĠ Ġmap [" M "] Ġ= ĠarrayOf (". m ", Ġ". n ") ĊĠĠĠĠĠĠĠ Ġmap [" ~ N "] Ġ= ĠarrayOf (" N ^ ") ĊĠĠĠĠĠĠĠ Ġmap [" ch "] Ġ= ĠarrayOf (" c ") ĊĠĠĠĠĠĠĠ Ġmap [" Ch "] Ġ= ĠarrayOf (" C ", Ġ" ch h ") ĊĠĠĠĠĠĠĠ Ġmap [" ~ n "] Ġ= ĠarrayOf (" JN ") ĊĠĠĠĠĠĠĠ Ġmap [" v "] Ġ= ĠarrayOf (" w ") ĊĠĠĠĠĠĠĠ Ġmap [" Sh "] Ġ= ĠarrayOf (" S ", Ġ" sh h ") ĊĠĠĠĠĠĠĠ Ġmap [" k Sh "] Ġ= ĠarrayOf (" k S ", Ġ" x ") ĊĠĠĠĠĠĠĠ Ġmap [" j ~ n "] Ġ= ĠarrayOf (" GY ", Ġ" d ny ") ĊĠĠĠĠĠĠĠ Ġmap [" OM "] Ġ= ĠarrayOf (" A UM ") ĊĠĠĠĠĠĠĠ Ġmap [" \\ _ "] Ġ= ĠarrayOf ("\\ ` ") ĊĠĠĠĠĠĠĠ Ġmap [" \\ _ H "] Ġ= ĠarrayOf ("\\ ` H ") ĊĠĠĠĠĠĠĠ Ġmap [" \\ ' M "] Ġ= ĠarrayOf ("\\ '. m ", Ġ"\\ '. n ") ĊĠĠĠĠĠĠĠ Ġmap [" \\ _ M "] Ġ= ĠarrayOf ("\\ _. m ", Ġ"\\ _. n ", Ġ"\\ ` M ", Ġ"\\ `. m ", Ġ"\\ `. n ") ĊĠĠĠĠĠĠĠ Ġmap [" . a "] Ġ= ĠarrayOf (" ~ ") ĊĠĠĠĠĠĠĠ Ġmap [" | "] Ġ= ĠarrayOf (".") ĊĠĠĠĠĠĠĠ Ġmap [" || "] Ġ= ĠarrayOf (" .. ") ĊĠĠĠĠĠĠĠ Ġmap [" z "] Ġ= ĠarrayOf (" J ") ĊĠĠĠĠĠĠĠ Ġall Altern ates [" itr ans "] Ġ= Ġmap ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġobject Ġcache ĊĠĠĠ Ġprivate Ġinner Ġclass ĠCache Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġfrom : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġto : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġmap : ĠT Map ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġoptions : ĠOptions ? Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġcache Ġ= ĠCache () ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCheck Ġwhether Ġthe Ġgiven Ġscheme Ġen codes Ġrom an ized ĠSans k rit . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġname Ġ Ġthe Ġscheme Ġname ĊĠĠĠĠ Ġ* Ġ@ return ĠĠĠĠĠ Ġboolean ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġis R oman Scheme ( name : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġrom an Schemes [ name ] ĊĠĠĠĠĠĠĠ Ġreturn Ġvalue Ġ!= Ġnull Ġ&& Ġvalue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdd Ġa ĠB ra hm ic Ġscheme Ġto ĠSan script . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠScheme s Ġare Ġof Ġtwo Ġtypes : Ġ" B ra hm ic " Ġand Ġ" roman ". ĠB ra hm ic Ġcon son ants ĊĠĠĠĠ Ġ* Ġhave Ġan Ġin herent Ġv owel Ġsound , Ġbut Ġrom an Ġcon son ants Ġdo Ġnot . ĠThis Ġis Ġthe ĊĠĠĠĠ Ġ* Ġmain Ġdifference Ġbetween Ġthese Ġtwo Ġtypes Ġof Ġscheme . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠA Ġscheme Ġdefinition Ġis Ġan Ġobject Ġ(" {} ") Ġthat Ġmaps Ġa Ġgroup Ġname Ġto Ġa ĊĠĠĠĠ Ġ* Ġlist Ġof Ġcharacters . ĠFor Ġillustr ation , Ġsee Ġthe Ġ" dev an ag ari " Ġscheme Ġat ĊĠĠĠĠ Ġ* Ġthe Ġtop Ġof Ġthis Ġfile . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠYou Ġcan Ġuse Ġwhatever Ġgroup Ġnames Ġyou Ġlike , Ġbut Ġfor Ġthe Ġbest Ġresults , ĊĠĠĠĠ Ġ* Ġyou Ġshould Ġuse Ġthe Ġsame Ġgroup Ġnames Ġthat ĠSan script Ġdoes . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġname ĠĠĠ Ġthe Ġscheme Ġname ĊĠĠĠĠ Ġ* Ġ@ param Ġscheme Ġ Ġthe Ġscheme Ġdata Ġitself . ĠThis Ġshould Ġbe Ġconstructed Ġas ĊĠĠĠĠ Ġ* Ġdescribed Ġabove . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd B ra hm ic Scheme ( name : ĠString , Ġscheme : ĠScheme ) Ġ{ ĊĠĠĠĠĠĠĠ Ġschemes [ name ] Ġ= Ġscheme ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdd Ġa Ġrom an Ġscheme Ġto ĠSan script . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠSee Ġthe Ġcomments Ġon Ġadd B ra hm ic Scheme . ĠThe Ġ" v owel _ marks " Ġfield ĊĠĠĠĠ Ġ* Ġcan Ġbe Ġomitted . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġname ĠĠĠ Ġthe Ġscheme Ġname ĊĠĠĠĠ Ġ* Ġ@ param Ġscheme Ġ Ġthe Ġscheme Ġdata Ġitself ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd R oman Scheme ( name : ĠString , Ġscheme : ĠScheme ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( scheme [" v owel _ marks "] Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscheme [" v owel _ marks "] Ġ= Ġscheme [" v ow els "] !!. without First () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġschemes [ name ] Ġ= Ġscheme ĊĠĠĠĠĠĠĠ Ġrom an Schemes [ name ] Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠSet Ġup Ġvarious Ġschemes ĊĠĠĠ Ġprivate Ġfun Ġinitialize Special Schemes () Ġ{ Ġ// ĠSet Ġup Ġrom an Ġschemes ĊĠĠĠĠĠĠĠ Ġval Ġkol k ata Ġ= Ġschemes [" i ast "] !!. che ap Copy () ĊĠĠĠĠĠĠĠ Ġkol k ata [" v ow els "] Ġ= ĠarrayOf (" a ", Ġ" Äģ ", Ġ" i ", Ġ" Ä« ", Ġ" u ", Ġ" Å« ", Ġ" á¹ Ľ ", Ġ" á¹ Ŀ ", Ġ" á ¸ · ", Ġ" á ¸ ¹ ", Ġ" e ", Ġ" Äĵ ", Ġ" ai ", Ġ" o ", Ġ" Åį ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġschemes [" kol k ata "] Ġ= Ġkol k ata ĊĠĠĠĠĠĠĠ Ġ// ĠThese Ġschemes Ġalready Ġbelong Ġto Ġschemes . ĠBut Ġby Ġadding Ċ // Ġthem Ġagain Ġwith Ġ` add R oman Scheme `, Ġwe Ġautomatically Ġbuild Ġup Ċ // Ġ` roman Schemes ` Ġand Ġdefine Ġa Ġ` v owel _ marks ` Ġfield Ġfor Ġeach Ġone . ĊĠĠĠĠĠĠĠ Ġval Ġscheme Names Ġ= ĠarrayOf (" i ast ", Ġ" itr ans ", Ġ" hk ", Ġ" kol k ata ", Ġ" s lp 1 ", Ġ" vel th uis ", Ġ" wx ") ĊĠĠĠĠĠĠĠ Ġfor Ġ( name Ġin Ġscheme Names ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd R oman Scheme ( name , Ġschemes [ name ] !! ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ĠI TRANS Ġvariant , Ġwhich Ġsupports ĠDr avid ian Ġshort Ġ' e ' Ġand Ġ' o '. ĊĠĠĠĠĠĠĠ Ġval Ġit rans _ dr avid ian Ġ= Ġschemes [" itr ans "] !!. che ap Copy () ĊĠĠĠĠĠĠĠ Ġit rans _ dr avid ian [" v ow els "] Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠarrayOf (" a ", Ġ" A ", Ġ" i ", Ġ" I ", Ġ" u ", Ġ" U ", Ġ" Ri ", Ġ" RR I ", Ġ" LL i ", Ġ" LL i ", Ġ" e ", Ġ" E ", Ġ" ai ", Ġ" o ", Ġ" O ", Ġ" au ") ĊĠĠĠĠĠĠĠ Ġit rans _ dr avid ian [" v owel _ marks "] Ġ= Ġit rans _ dr avid ian [" v ow els "] !!. without First () ĊĠĠĠĠĠĠĠ Ġall Altern ates [" itr ans _ dr avid ian "] Ġ= Ġall Altern ates [" itr ans "] !! ĊĠĠĠĠĠĠĠ Ġadd R oman Scheme (" itr ans _ dr avid ian ", Ġit rans _ dr avid ian ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġdata Ġclass ĠT Map ( ĊĠĠĠĠĠĠĠ Ġval Ġfrom R oman : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġval Ġto R oman : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġval Ġcon son ants : ĠS Map , ĊĠĠĠĠĠĠĠ Ġval Ġletters : ĠS Map , ĊĠĠĠĠĠĠĠ Ġval Ġmarks : ĠS Map , ĊĠĠĠĠĠĠĠ Ġval Ġvir ama : ĠArray < String > Ġ= Ġempty Array (), ĊĠĠĠĠĠĠĠ Ġval Ġmax Token Length : ĠInt Ġ= Ġ 0 ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCreate Ġa Ġmap Ġfrom Ġevery Ġcharacter Ġin Ġ` from ` Ġto Ġits Ġpartner Ġin Ġ` to `. ĊĠĠĠĠ Ġ* ĠAlso , Ġstore Ġany Ġ" marks " Ġthat Ġ` from ` Ġmight Ġhave . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġfrom ĠĠĠĠ Ġinput Ġscheme ĊĠĠĠĠ Ġ* Ġ@ param Ġto ĠĠĠĠĠĠ Ġoutput Ġscheme ĊĠĠĠĠ Ġ* Ġ@ param Ġoptions Ġ Ġscheme Ġoptions ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġmake Map ( from : ĠString , Ġto : ĠString , Ġoptions : ĠOptions ): ĠT Map Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġaltern ates Ġ= Ġif Ġ( all Altern ates [ from ] Ġ!= Ġnull ) Ġall Altern ates [ from ] Ġelse ĠAltern ate Map () ĊĠĠĠĠĠĠĠ Ġval Ġcon son ants Ġ= ĠS Map () ĊĠĠĠĠĠĠĠ Ġval Ġfrom Scheme Ġ= Ġschemes [ from ] ĊĠĠĠĠĠĠĠ Ġval Ġletters Ġ= ĠS Map () ĊĠĠĠĠĠĠĠ Ġval Ġtoken Lengths : ĠMutable List < Int > Ġ= ĠArrayList () ĊĠĠĠĠĠĠĠ Ġval Ġmarks Ġ= ĠS Map () ĊĠĠĠĠĠĠĠ Ġval Ġto Scheme Ġ= Ġschemes [ to ] ĊĠĠĠĠĠĠĠ Ġfor Ġ(( group , Ġfrom Group ) Ġin Ġfrom Scheme !! ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġto Group Ġ= Ġto Scheme ! ![ group ] Ġ?: Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġfrom Group . indices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠF Ġ= Ġfrom Group [ i ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠT Ġ= Ġto Group [ i ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġal ts : ĠArray < String >? Ġ= Ġif Ġ( altern ates ! ![ F ] Ġ!= Ġnull ) Ġaltern ates [ F ] Ġelse ĠarrayOf () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Lengths . add ( F . length ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( value Ġin Ġal ts !! ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Lengths . add ( value . length ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( group Ġ== Ġ" v owel _ marks " Ġ|| Ġgroup Ġ== Ġ" vir ama ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmarks [ F ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( alt Ġin Ġal ts ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmarks [ alt ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġletters [ F ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( alt Ġin Ġal ts ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġletters [ alt ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( group Ġ== Ġ" con son ants " Ġ|| Ġgroup Ġ== Ġ" other ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcon son ants [ F ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( alt Ġin Ġal ts ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcon son ants [ alt ] Ġ= ĠT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmap Ġ= ĠT Map ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcon son ants Ġ= Ġcon son ants , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom R oman Ġ= Ġis R oman Scheme ( from ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġletters Ġ= Ġletters , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmarks Ġ= Ġmarks , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Token Length Ġ= Ġ( token Lengths . max () !! ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġto R oman Ġ= Ġis R oman Scheme ( to ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvir ama Ġ= Ġto Scheme !! [" vir ama "] !! ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġreturn Ġmap ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTrans l iterate Ġfrom Ġa Ġrom an ized Ġscript . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdata ĠĠĠĠ Ġthe Ġstring Ġto Ġtrans l iterate ĊĠĠĠĠ Ġ* Ġ@ param Ġmap ĠĠĠĠĠ Ġmap Ġdata Ġgenerated Ġfrom Ġmake Map () ĊĠĠĠĠ Ġ* Ġ@ param Ġoptions Ġ Ġtrans l iteration Ġoptions ĊĠĠĠĠ Ġ* Ġ@ return ĠĠĠĠĠĠĠĠ Ġthe Ġfinished Ġstring ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġtrans l iterate R oman ( data : ĠString , Ġmap : ĠT Map , Ġoptions : ĠOptions ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuf Ġ= ĠStringBuilder () ĊĠĠĠĠĠĠĠ Ġval Ġcon son ants Ġ= Ġmap . con son ants ĊĠĠĠĠĠĠĠ Ġval Ġdata Length Ġ= Ġdata . length ĊĠĠĠĠĠĠĠ Ġvar Ġhad Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġletters Ġ= Ġmap . letters ĊĠĠĠĠĠĠĠ Ġval Ġmarks Ġ= Ġmap . marks ĊĠĠĠĠĠĠĠ Ġval Ġmax Token Length Ġ= Ġmap . max Token Length ĊĠĠĠĠĠĠĠ Ġvar Ġtemp Letter : ĠString ? ĊĠĠĠĠĠĠĠ Ġvar Ġtemp Mark : ĠString ? ĊĠĠĠĠĠĠĠ Ġvar Ġtoken Buffer Ġ= ĠStringBuilder () ĊĠĠĠĠĠĠĠ Ġval Ġto R oman Ġ= Ġmap . to R oman ĊĠĠĠĠĠĠĠ Ġval Ġvir ama Ġ= Ġmap . vir ama ĊĠĠĠĠĠĠĠ Ġ// ĠTrans l iteration Ġstate . ĠIt 's Ġcontrolled Ġby Ġthese Ġvalues : Ċ // Ġ- Ġ` sk ipping SG ML `: Ġare Ġwe Ġin ĠSG ML ? Ċ // Ġ- Ġ` toggle d Trans `: Ġare Ġwe Ġin Ġa Ġtoggle d Ġregion ? Ċ // Ċ // ĠWe Ġcombine Ġthese Ġvalues Ġinto Ġa Ġsingle Ġvariable Ġ` sk ipping Trans `: Ċ // Ċ // ĠĠĠĠ Ġ` sk ipping Trans ` Ġ= Ġskipping SG ML Ġ|| Ġtoggle d Trans ; Ċ // Ċ // ĠIf Ġ( and Ġonly Ġif ) Ġthis Ġvalue Ġis Ġtrue , Ġdon 't Ġtrans l iterate . ĊĠĠĠĠĠĠĠ Ġvar Ġskipping SG ML Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġvar Ġskipping Trans : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġtoggle d Trans Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġvar Ġi Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġwhile Ġ( i Ġ< Ġdata Length Ġ|| Ġtoken Buffer . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠFill Ġthe Ġtoken Ġbuffer , Ġif Ġpossible . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdifference Ġ= Ġmax Token Length Ġ- Ġtoken Buffer . length ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( difference Ġ> Ġ 0 Ġ&& Ġi Ġ< Ġdata Length ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Buffer . append ( data [ i ]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( difference Ġ> Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi ++ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠMatch Ġall Ġtoken Ġsub strings Ġto Ġour Ġmap . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( j Ġin Ġ 0 Ġuntil Ġmax Token Length ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġtoken Buffer . substring ( 0 , Ġmin ( max Token Length Ġ- Ġj , Ġtoken Buffer . length )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sk ipping SG ML ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġskipping SG ML Ġ= Ġ( token Ġ!= Ġ" >" Ġ&& Ġtoken Ġ! in Ġoptions . skip End s ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( token Ġ== Ġ"< ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġskipping SG ML Ġ= Ġoptions . skip Sg ml ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( token Ġ== Ġ" ## ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle d Trans Ġ= Ġ! toggle d Trans ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Buffer Ġ= Ġtoken Buffer . delete ( 0 , Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbreak ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( token Ġin Ġoptions . skip Star ters ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġskipping SG ML Ġ= Ġoptions . skip Sg ml ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġskipping Trans Ġ= Ġskipping SG ML Ġ|| Ġtoggle d Trans ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( letters [ token ] Ġ!= Ġnull Ġ&& Ġ! sk ipping Trans ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtemp Letter Ġ= Ġletters [ token ] !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( to R oman ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp Letter ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ Ġ// ĠHandle Ġthe Ġimplicit Ġv owel . ĠIgnore Ġ' a ' Ġand Ġforce Ċ // Ġv ow els Ġto Ġappear Ġas Ġmarks Ġif Ġwe 've Ġjust Ġseen Ġa Ċ // Ġcon son ant . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( had Con son ant ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( marks [ token ]. also Ġ{ Ġtemp Mark Ġ= Ġit Ġ} Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp Mark ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( token Ġ!= Ġ" a ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( vir ama [ 0 ]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp Letter ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp Letter ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad Con son ant Ġ= Ġcon son ants [ token ] Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Buffer Ġ= Ġtoken Buffer . delete ( 0 , Ġmax Token Length Ġ- Ġj ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbreak ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( j Ġ== Ġmax Token Length Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( had Con son ant ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! options . syn cope ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( vir ama [ 0 ]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Buffer Ġ= Ġtoken Buffer . delete ( 0 , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ' break ' Ġis Ġredundant Ġhere , Ġ" j Ġ== Ġ..." Ġis Ġtrue Ġonly Ġon Ċ // Ġthe Ġlast Ġiteration . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġi ++ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( had Con son ant Ġ&& Ġ! options . syn cope ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( vir ama [ 0 ]) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġbuf . toString () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTrans l iterate Ġfrom Ġa ĠB ra hm ic Ġscript . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdata ĠĠĠĠ Ġthe Ġstring Ġto Ġtrans l iterate ĊĠĠĠĠ Ġ* Ġ@ param Ġmap ĠĠĠĠĠ Ġmap Ġdata Ġgenerated Ġfrom Ġmake Map () ĊĠĠĠĠ Ġ* Ġ@ param Ġoptions Ġ Ġtrans l iteration Ġoptions ĊĠĠĠĠ Ġ* Ġ@ return ĠĠĠĠĠĠĠĠ Ġthe Ġfinished Ġstring ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġtrans l iterate B ra hm ic ( data : ĠString , Ġmap : ĠT Map , Ġoptions : ĠOptions ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuf Ġ= ĠStringBuilder () ĊĠĠĠĠĠĠĠ Ġval Ġcon son ants Ġ= Ġmap . con son ants ĊĠĠĠĠĠĠĠ Ġvar Ġd angling Hash Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġvar Ġhad R oman Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġletters Ġ= Ġmap . letters ĊĠĠĠĠĠĠĠ Ġval Ġmarks Ġ= Ġmap . marks ĊĠĠĠĠĠĠĠ Ġvar Ġtemp : ĠString ĊĠĠĠĠĠĠĠ Ġval Ġto R oman Ġ= Ġmap . to R oman ĊĠĠĠĠĠĠĠ Ġvar Ġskipping Trans Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġfor Ġ( element Ġin Ġdata ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠL Ġ= Ġelement . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠToggle Ġtrans l iteration Ġstate ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( L Ġ== Ġ"# ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( d angling Hash ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġskipping Trans Ġ= Ġ! sk ipping Trans ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġd angling Hash Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġd angling Hash Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( had R oman Con son ant ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append (' a ') ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad R oman Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sk ipping Trans ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( L ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( marks [ L ] Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtemp Ġ= Ġmarks [ L ] !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad R oman Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( d angling Hash ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ('# ') ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġd angling Hash Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( had R oman Con son ant ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append (' a ') ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad R oman Con son ant Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPush Ġtrans l iter ated Ġletter Ġif Ġpossible . ĠOtherwise , Ġpush Ċ // Ġthe Ġletter Ġitself . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( letters [ L ] Ġ!= Ġnull Ġ&& Ġletters [ L ] Ġ!= Ġ"") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtemp Ġ= Ġletters [ L ] !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( temp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhad R oman Con son ant Ġ= Ġto R oman Ġ&& Ġcon son ants [ L ] Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append ( L ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( had R oman Con son ant ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . append (' a ') ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġbuf . toString () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTrans l iterate Ġfrom Ġone Ġscript Ġto Ġanother . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġdata ĠĠĠĠ Ġthe Ġstring Ġto Ġtrans l iterate ĊĠĠĠĠ Ġ* Ġ@ param Ġfrom ĠĠĠĠ Ġthe Ġsource Ġscript ĊĠĠĠĠ Ġ* Ġ@ param Ġto ĠĠĠĠĠĠ Ġthe Ġdestination Ġscript ĊĠĠĠĠ Ġ* Ġ@ param Ġoptions Ġ Ġtrans l iteration Ġoptions ĊĠĠĠĠ Ġ* Ġ@ return ĠĠĠĠĠĠĠĠ Ġthe Ġfinished Ġstring ĊĠĠĠĠ Ġ*/ Ċ // ĠVersion Ġof Ġt () Ġthat Ġsupp lies Ġnull Ġoptions . ĊĠĠĠ Ġfun Ġt ( data : ĠString , Ġfrom : ĠString , Ġto : ĠString , Ġoptions : ĠOptions Ġ= ĠOptions ()): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġmutable Data Ġ= Ġdata ĊĠĠĠĠĠĠĠ Ġval Ġcached Options Ġ= Ġif Ġ( cache . options Ġ!= Ġnull ) Ġcache . options Ġelse ĠOptions () ĊĠĠĠĠĠĠĠ Ġvar Ġhas Prior State Ġ= Ġcache . from Ġ== Ġfrom Ġ&& Ġcache . to Ġ== Ġto ĊĠĠĠĠĠĠĠ Ġval Ġmap : ĠT Map ĊĠĠĠĠĠĠĠ Ġ// ĠHere Ġwe Ġsimultaneously Ġbuild Ġup Ġan Ġ` options ` Ġobject Ġand Ġcompare Ċ // Ġthese Ġoptions Ġto Ġthe Ġoptions Ġfrom Ġthe Ġlast Ġrun . ĊĊĠĠĠĠĠĠĠ Ġif Ġ( options Ġ!= Ġcached Options ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhas Prior State Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( has Prior State Ġ&& Ġcache . map Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap Ġ= Ġcache . map !! ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap Ġ= Ġmake Map ( from , Ġto , Ġoptions ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcache . from Ġ= Ġfrom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcache . map Ġ= Ġmap ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcache . options Ġ= Ġoptions ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcache . to Ġ= Ġto ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ĠEasy Ġway Ġout Ġfor Ġ" {\ m + }", Ġ"\ ", Ġand Ġ". h ". ĊĠĠĠĠĠĠĠ Ġif Ġ( from Ġ== Ġ" itr ans ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Data Ġ= Ġmutable Data . replace ("\\ { \\\\ m \\ + \\ }". to Regex (), Ġ". h . N ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Data Ġ= Ġmutable Data . replace ("\\ . h ". to Regex (), Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Data Ġ= Ġmutable Data . replace (" \\\\ ([^ '` _ ]| $) ". to Regex (), Ġ" ## $ 1 ## ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( map . from R oman ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrans l iterate R oman ( mutable Data , Ġmap , Ġoptions ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrans l iterate B ra hm ic ( mutable Data , Ġmap , Ġoptions ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinitialize Schemes () ĊĠĠĠĠĠĠĠ Ġinitialize Altern ates () ĊĠĠĠĠĠĠĠ Ġinitialize Special Schemes () ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun ĠStringBuilder . delete ( start : ĠInt , Ġend : ĠInt ): ĠStringBuilder Ġ{ ĊĠĠĠ Ġreturn ĠStringBuilder ( this . sub Sequence ( start , Ġend )) Ċ } Ċ