indickit 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +389 -0
- package/README.md +12 -12
- package/dist/deromanize.js +1 -1
- package/dist/normalize.js +1 -1
- package/dist/phonetic-search.js +1 -1
- package/dist/phonetic.js +1 -1
- package/dist/romanize.js +1 -1
- package/dist/search-key.js +1 -1
- package/dist/stem.js +1 -1
- package/dist/types/js/phonetic-search.d.ts +11 -1
- package/dist/types/js/romanize.d.ts +11 -7
- package/package.json +3 -2
package/dist/phonetic-search.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var Y={version:"2026-10-11.7",folds:["as-case-narrow","as-w-glide-ni","bn-case","bn-ng","brahmic-av-u","brahmic-v-glide-u","dd-r","deva-case-long","deva-ng","deva-ni","deva-vh","drop-vowels","drop-y","flap-r","gom-case","gu-case","latin-initials","latin-ngh","latin-w-u","latin-zh-h","latin-zh-l","ml-case","ml-tta-add","nasal-all","ng-k","or-case","retroflex","s-c","sa-case","sat-o-a","sat-w-u","sd-implosive","ta-case","ta-initial-h","ta-k-h","ta-name-end","ta-pro-i","ta-pro-u","ta-tc-k","te-case","ur-a-e","ur-a-i","ur-a-u","ur-h-asp","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[["റ്റ","ത്ത"],["ന്റ","ന്ത"],["ൻറ","ന്ത"]]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ",ॻ:"k",ॼ:"c",ॾ:"ṭ",ॿ:"p"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},meetei:{ranges:[[43744,43775],[43968,44031]],letters:{ꯀ:"k",ꯁ:"s",ꯂ:"l",ꯃ:"m",ꯄ:"p",ꯅ:"n",ꯆ:"c",ꯇ:"t",ꯈ:"k",ꯉ:"ṅ",ꯊ:"t",ꯋ:"v",ꯌ:"y",ꯍ:"h",ꯎ:"u",ꯏ:"i",ꯐ:"p",ꯑ:"a",ꯒ:"k",ꯓ:"c",ꯔ:"r",ꯕ:"p",ꯖ:"c",ꯗ:"t",ꯘ:"k",ꯙ:"t",ꯚ:"p",ꯛ:"k",ꯜ:"l",ꯝ:"m",ꯞ:"p",ꯟ:"n",ꯠ:"t",ꯡ:"ṅ",ꯢ:"i","ꯣ":"o","ꯤ":"i","ꯥ":"a","ꯦ":"e","ꯧ":"o","ꯨ":"u","ꯩ":"e","ꯪ":"ṁ",ꫠ:"e",ꫡ:"o",ꫢ:"c",ꫣ:"ñ",ꫤ:"ṭ",ꫥ:"ṭ",ꫦ:"ṭ",ꫧ:"ṭ",ꫨ:"ṇ",ꫩ:"s",ꫪ:"s","ꫫ":"i","ꫬ":"u","ꫭ":"e","ꫮ":"o","ꫯ":"o"}},ol_chiki:{from:7248,to:7295,letters:{ᱚ:"o",ᱛ:"t",ᱜ:"k",ᱝ:"ṅ",ᱞ:"l",ᱟ:"a",ᱠ:"k",ᱡ:"c",ᱢ:"m",ᱣ:"v",ᱤ:"i",ᱥ:"s",ᱦ:"h",ᱧ:"ñ",ᱨ:"r",ᱩ:"u",ᱪ:"c",ᱫ:"t",ᱬ:"ṇ",ᱭ:"y",ᱮ:"e",ᱯ:"p",ᱰ:"ṭ",ᱱ:"n",ᱲ:"ṛ",ᱳ:"o",ᱴ:"ṭ",ᱵ:"p",ᱶ:"v",ᱷ:"h",ᱸ:"ṁ"},aspiration:"ᱷ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},class_map:{m:"n",s:"c",v:"p",w:"p",ñ:"n",ĝ:"k",ḍ:"t",ṁ:"n",ṅ:"n",ṇ:"n",ṛ:"t",ṭ:"t"},vowels:"aeiou",steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!0,"drop-y-after-i":!1,"drop-vowels":!0,"drop-final-vowel":!1},branches:[{from:2432,to:2559,class:"v",also:"",after:"aiueo",not_before:"i"},{from:2432,to:2559,class:"ṁ",also:"ṅ"},{from:2304,to:3455,class:"v",also:"u",after:"aṁ",not_before:"aieo"},{from:2304,to:3455,class:"v",also:"",after:"kcṭḍtpnmlrsyhṅñṇ",before:"u"},{from:2304,to:3455,class:"ḍ",also:"r",after:"aiueokcṭḍtpnmlrsvyhṅñṇṁ"},{from:2304,to:2431,class:"ṁ",also:"ṅ"},{from:2304,to:2431,class:"h",also:"",after:"v"},{from:1536,to:7295,class:"ṛ",also:"r"},{from:0,to:127,class:"ĝ",also:"h"},{from:0,to:127,class:"w",also:"u"},{from:0,to:127,class:"h",also:"",after:"c"},{from:0,to:127,class:"c",also:"l",before:"h"},{from:7248,to:7295,class:"o",also:"a",after:"^"},{from:7248,to:7295,class:"v",also:"",after:"aiueo"},{from:2944,to:3071,class:"k",also:"h"},{from:2944,to:3071,class:"i",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"u",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"ṭ",also:"k",before:"c"},{from:1536,to:1791,class:"a",also:"e",after:"^"},{from:1536,to:1791,class:"a",also:"i",after:"^"},{from:1536,to:1791,class:"a",also:"u",after:"^"},{from:1536,to:1791,class:"h",also:"",after:"kcṭtpnmlrsvṁ"},{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[{from:2944,to:3071,also:"h"}],joined:{min_classes:6,when:"the strict keys find nobody"},digit_zeros:[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,7248,44016],initials:{a:["e"],b:["bi"],c:["si"],d:["di"],e:["i"],f:["ef"],g:["ji"],h:["ech"],i:["aai","ai"],j:["je"],k:["ke"],l:["el"],m:["em"],n:["en"],o:["o"],p:["pi"],q:["kyu"],r:["ar"],s:["es"],t:["ti"],u:["yu"],v:["vi"],w:["dablyu"],x:["eks"],y:["vai","oy"],z:["jed","zed","iset"]},max_keys:32,suffixes:[{from:2432,to:2559,endings:["ৰপৰা","ৱে","লৈ","ৰ"]},{from:2432,to:2559,endings:["য়ের","দের","এর","ের","কে","তে"]},{from:2304,to:2431,endings:["ांच्या","मध्ये","च्या","ांना"]},{from:2304,to:2431,endings:["नि"]},{from:2304,to:2431,endings:["ाचें","ाईन","ाचो","ाची","ान","ीन","ाक"]},{from:2688,to:2815,endings:["માં","નું","થી","ના","ની","ને"]},{from:3328,to:3455,endings:["യ്ക്ക്","ന്റെ","യുടെ","യിലെ","ക്ക്","ുടെ","യിൽ","ിലെ","ോട്","ിന്","ിൽ","നെ","യെ","ും"]},{from:2816,to:2943,endings:["ଙ୍କର","ଙ୍କୁ","ଙ୍କ","ରେ","ରୁ","କୁ"]},{from:2304,to:2431,endings:["स्य"]},{from:2944,to:3071,endings:["ுக்கு","யின்","வின்","க்கு","யில்","ிடம்","ுடன்","ின்","ில்","ால்","ும்"]},{from:2944,to:3071,endings:["ன்","ர்"]},{from:3072,to:3199,endings:["యొక్క","లోని","గారు","లో","కు","కి","ని","తో","ను"]}],titles:["adv","advocate","begum","capt","col","dr","gen","janab","km","kumari","lt","maj","maulana","miss","mr","mrs","ms","prof","sardar","selvi","sh","shree","shri","shrimati","smt","sri","sushri","thiru","thirumathi","tmt","بیگم","جناب","محترمہ","مولانا","ڈاکٹر","एडवोकेट","कु","कुमारी","डा","डॉ","डॉक्टर","डॉ०","प्रो","प्रोफेसर","मौलाना","श्री","श्रीमती","श्रीमान","सरदार","सुश्री","ড","ডঃ","ডা","ডাঃ","শ্রী","শ্রীমতী","শ্ৰী","শ্ৰীমতী","ਡਾ","ਬੀਬੀ","ਸਰਦਾਰ","ਸ਼੍ਰੀ","ਸ਼੍ਰੀਮਤੀ","ਸ੍ਰੀ","ડૉ","ડો","શ્રી","શ્રીમતી","ଡ","ଡଃ","ଶ୍ରୀ","ଶ୍ରୀମତୀ","செல்வி","டா","டாக்டர்","திரு","திருமதி","முனைவர்","ஸ்ரீ","డా","డాక్టర్","శ్రీ","శ్రీమతి","ಡಾ","ಡಾಕ್ಟರ್","ಶ್ರೀ","ಶ್ರೀಮತಿ","ഡോ","ഡോക്ടർ","ശ്രീ","ശ്രീമതി"]};var d={version:"2026-10-11.7",profiles:{names:{key:2,cost:1,vowel:1,div:4,stop_permille:20,stop_min_names:100,round:!0},text:{key:1,cost:2,vowel:2,div:5,stop_permille:null,stop_min_names:0,round:!1}},posterior_temperature:2,deletion_min_classes:3,loose_joined_min_classes:4,fine_folds:["nasal-all","v-b","retroflex","s-c","ng-k","ur-w-u"],thresholds:{names:76,villages:73,text_10:81,text_20:71},pow_d2:[1e6,-1006908,49,46,48,46,47,46,46,45,45,45,45,43,45,43,44,43,42,43,42,41,42,42,40,41,41,40,39,40,39,40,38,38,39,38,38,36,39,36,36,37,37,35,36,35,35,36,34,34,35,33,35,33,33,33,33,33,32,32,32,32,31,31,32,30,31,31,29,31,29,30,29,30,28,30,27,29,29,27,28,28,27,27,28,26,27,26,26,27,26,25,26,25,26,24,26,24,25,24,24,24,24,24,23,24,23,23,23,22,23,23,22,22,22,21,23,20,22,22,20,22,20,20,22,19,21,20,20,19,20,20,19,19,20,18,19,19,19,18,18,19,17,19,17,18,18,17,18,17,16,18,17,16,17,17,16,16,17,15,17,15,16,16,15,16,15,15,16,14,15,15,15,14,15,14,14,15,13,15,14,13,14,14,13,13,14,13,14,12,13,14,12,12,13,13,12,13,12,12,12,12,12,12,12,11,12,11,12,12,10,12,11,11,11,11,10,12,10,10,12,9,11,11,9,11,10,10,10,10,9,10,10,10,9,10,9,10,8,10,10,8,9,9,10,8,9,8,9,9,9,8,8,9,8,8,9,7,9,8,7,9,8,7,8,8,8,7,7,8,8,7,7,8,7,7,7,7,8,6,7,7,7,7,7,6,7,7,6,7,6,6,7,7,5,7,6,7,5,6,7,6,5,7,5,6,6,6,5,6,6,6,4,7,5,5,6,5,6,5,5,5,6,4,6,5,5,5,5,5,5,4,6,4,5,5,5,4,5,4,5,5,4,5,4,4,5,5,3,5,4,5,3,5,4,5,3,4,4,5,3,5,3,4,4,4,4,3,5,3,4,3,4,4,3,4,4,3,4,3,4,3,3,4,3,4,3,3,4,3,3,3,4,2,4,3,3,3,3,4,2,3,4,2,3,3,3,3,3,2,4,2,3,2,4,2,3,3,2,3,2,4,1,4,2,2,3,2,3,3,2,2,3,2,3,2,2,2,3,3,1,3,2,2,3,2,2,2,2,3,1,3,2,2,2,2,2,2,2,2,3,1,2,2,2,2,2,2,1,3,1,3,1,1,3,2,1,2,2,2,1,2,2,1,2,2,2,1,1,3,1,2,1,2,1,2,2,1,1,2,2,1,2,1,1,3,0,2,1,2,1,2,1,1,2,1,2,0,2,2,1,1,1,2,1,1,1,2,1,1,2,1,0,3,0,1,2,1,1,1,1,1,2,1,0,2,1,1,2,0,1,1,2,0,2,0,2,1,0,2,0,2,0,2,1,0,1,2,0,1,2,0,1,1,1,0,2,1,0,1,1,1,1,1,1,0,1,1,1,1,0,2,0,1,1,0,1,1,1,1,0,1,1,0,2,0,1,0,1,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,0,2,0,0,1,1,0,1,1,0,1,0,1,0,1,0,1,1,0,0,2,-1,1,1,0,1,0,1,1,-1,2,-1,2,0,0,1,0,0,2,-1,1,1,0,0,1,1,0,0,0,2,-1,1,1,0,0,1,0,0,1,0,1,0,1,0,0,1,0,1,0,0,0,2,-1,1,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,1,-1,1,1,-1,1,0,1,0,0,0,1,0,1,-1,1,0,1,0,0,0,1,0,0,1,-1,1,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,0,1,-1,1,0,1,-1,1,0,0,1,-1,1,0,1,-1,1,0,0,0,0,1,0,0,0,1,-1,1,0,0,1,-1,1,0,0,1,-1,1,-1,1,1,-1,1,-1,1,0,0,1,-1,1,0,0,0,0,1,-1,1,0,0,0,1,-1,1,0,0,0,0,0,1,0,-1,1,1,-1,0,1,-1,1,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,0,1,0,0,0,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,0,1,-1,1,0,0,0,0,0,1,-1,1,-1,1,0,0,0,0,0,0,0,1,-1,1,-1,1,0,0,0,0,0,1,-1,0,1,-1,1,0,0,-1,1,0,1,-1,0,0,1,-1,1,-1,1,0,0,0,0,0,0,0,0,1,-1,1,-1,1,-1,1,0,0,0,0,0,0,0,0,0,1,-1,1,-1,1,-1,1,0,0,-1,1,0,0,0,1,-1,0,0,1,-1,1,-1,1,-1,1,0,-1,1,0,0,0,0,0,0,0,1,-1,0,0,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,0,0,0,0,0,1,-1,0,1,-1,0,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,1,-1,1,0,-1,1,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,1,-1,0,0,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,1,-1,0,0,1,-1,0,1,-1,0,1,-1,1,-1,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,-1,1,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,-1,1,0,-1,1,0,0,-1,1,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],exp2_d2:[65536,-60832,337,362,388,416,445,478,511,549,587,630,676,724,775,831,891,955,1024,1096,1176,1260,1350,1448,1551,1663,1781,1910,2047,2194,2351,2520,2701,2894,3103,3325,3564,3819,4094,4388,4702,5040,5402,5788,6206,6650,7128,7639,8187,8775,9405,10080,10803,11579,12410,13300,14255,15278,16376,17549,18810,20160,21606,23158,24819,26602,28509,30557,32749,35101,37619,40319,43214,46315,49639,53201,57021,61113,65499,70200,75239,80639,86426,92631,99277,106404,114041,122226,130998,140400,150478,161278,172853,185259,198557,212808,228080,244453,261995,280802,300955,322556,345706,370519,397113,425615,456162,488903,523994,561601,601911,645111,691413,741039,794225,851229,912326,977805,1047987,1123205,1203819,1290223,1382827,1482076,1588451,1702458,1824652,1955611,2095973,2246408,2407641,2580445,2765653,2964154,3176900,3404919,3649300,3911225,4191945,4492816,4815282,5160891,5531305,5928307,6353802,6809836,7298602,7822447,8383892,8985633,9630563,10321781,11062612,11856613,12707604,13619672,14597204,15644894,16767785,17971265,19261125,20643563,22125224,23713226,25415208,27239344,29194407,31289791,33535567,35942530,38522252,41287126,44250445,47426455,50830414,54478690,58388813,62579582,67071133,71885063,77044501,82574252,88500893,94852907,101660829,108957380,116777627,125159162,134142268,143770124,154089003,165148505,177001783,189705817,203321658,217914758,233555254,250318325,268284537,287540247,308178006,330297009,354003569,379411631,406643316,435829517,467110510,500636647,536569075,575080494,616356012,660594018,708007138,758823261,813286635,871659031,934221020,1001273297,1073138147,1150160988,1232712026,1321188035,1416014276,1517646522,1626573269,1743318065,1868442038,2002546592,2146276297,2300321976,2465424050,2642376071,2832028551,3035293046,3253146538,3486636128,3736884076,4005093187,4292552590,4600643954,4930848101,5284752141,5664057102,6070586092,6506293075,6973272258,7473768152,8010186371,8585105183,9201287908,9861696200,10569504284,11328114203,12141172183,13012586151,13946544515,14947536306,16020372741,17170210366,18402575815,19723392402,21139008567,22656228406,24282344367,26025172301,27893089030,29895072611,32040745484,34340420730,36805151632,39446784802,42278017134,45312456813,48564688735,52050344601,55786178060,59790145221,64081490970,68680841460,73610303262,78893569605,84556034268,90624913626,97129377469,104100689203,111572356121,119580290441,128162981939,137361682921,147220606524,157787139211,169112068536,181249827251,194258754937,208201378408,223144712240,239160580884,256325963876,274723365843,294441213048,315574278422,338224137072,362499654502,388517509875,416402756814,446289424480,478321161770,512651927752,549446731685,588882426095,631148556845,676448274143,724999309006,777035019748,832805513629,892578848961,956642323538,1025303855506,1098893463368,1177764852192,1262297113689,1352896548287,1449998618010,1554070039497,1665611027258,1785157697923,1913284647074,2050607711014,2197786926733,2355529704388,2524594227375,2705793096574,2899997236022,3108140078993,3331222054517,3570315395844,3826569294149,4101215422028,4395573853466,4711059408775,5049188454752]};var b={base_version:"2026-10-11.7",set:{folds:["nasal-all","ng-k","retroflex","s-c","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!1,"drop-y-after-i":!1,"drop-vowels":!1,"drop-final-vowel":!1},branches:[],initial_branches:[],suffixes:[]},drop:["initials","titles"]};var c={base_version:"2026-10-11.7",set:{folds:["nasal-all","ng-k","retroflex","s-c","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!1,"drop-y-after-i":!1,"drop-vowels":!1,"drop-final-vowel":!1},branches:[{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[],suffixes:[]},drop:["initials","titles"]};var w="0.11.0";function t0(t){let m=(t??"").toLowerCase().split(/[-_]/)[0];if(m==="kok")return"gom";let f=m.length===3?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".indexOf(m+" "):-1;return f>=0&&f%7===0?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".slice(f+4,f+6):m}var P={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var v1=P.unicode,m0=1,q0=2,f0=4,A=8,V=new Map,W=new Map,e0=new Map;for(let t=0;t<P.ranges.length;t+=2)for(let m=P.ranges[t];m<=P.ranges[t+1];m++)V.set(m,0);var D=(t,m)=>{for(let f=0;f<t.length;f+=2)for(let e=t[f];e<=t[f+1];e++)V.set(e,V.get(e)|m)};D(P.mn,m0);D(P.m,q0);D(P.l,f0);for(let t=0;t<P.ccc.length;t+=3)for(let m=P.ccc[t];m<=P.ccc[t+1];m++)V.set(m,V.get(m)|P.ccc[t+2]<<4);var p0=new Set(P.excl);for(let[t,m]of Object.entries(P.decomp)){let f=Number(t);if(W.set(f,m),m.length===2&&!p0.has(f))e0.set(m[0]*1114112+m[1],f),V.set(m[1],V.get(m[1])|A)}var N=(t)=>String.fromCodePoint(t);function R(t,m,f){let e="";for(let a=m;a<f;a+=8192)e+=String.fromCodePoint(...t.slice(a,Math.min(f,a+8192)));return e}function a0(t){let m=V.get(t);return m===void 0?/\p{Mn}/u.test(N(t)):(m&m0)!==0}function l0(t){let m=V.get(t);return m===void 0?/\p{L}/u.test(N(t)):(m&f0)!==0}function j(t){if(!V.has(t))return Array.from(N(t).normalize("NFD"),(f)=>f.codePointAt(0));let m=W.get(t);return m?m.flatMap(j):[t]}var r0=(t,m)=>t>>4===0&&(t&A)===0&&!W.has(m);function K(t){let m=Array.from(t,(e)=>e.codePointAt(0)),f="";for(let e=0;e<m.length;){let a=e+1,_=V.has(m[e]);for(;a<m.length;a++){let h=V.get(m[a]);if(h===void 0)_=!1;else if(r0(h,m[a]))break}f+=_?d0(m,e,a):R(m,e,a).normalize("NFC"),e=a}return f}function d0(t,m,f){let e=0,a=!0;for(let l=m;l<f&&a;l++){let v=V.get(t[l]),G=v>>4;if(W.has(t[l])||(v&A)!==0||G!==0&&G<e)a=!1;e=G}if(a)return R(t,m,f);let _=[];for(let l=m;l<f;l++)_.push(...j(t[l]));let h=(l)=>V.get(l)>>4;for(let l=0;l<_.length;){if(h(_[l])===0){l++;continue}let v=l;while(v<_.length&&h(_[v])!==0)v++;let G=_.slice(l,v).sort((Q,U)=>h(Q)-h(U));for(let Q=0;Q<G.length;Q++)_[l+Q]=G[Q];l=v}let g=[],k=-1;for(let l of _){let v=h(l);if(k>=0&&(g.length-1===k||h(g[g.length-1])<v)){let G=e0.get(g[k]*1114112+l);if(G!==void 0){g[k]=G;continue}}if(v===0)k=g.length;g.push(l)}return R(g,0,g.length)}var h0="\x00";function S(t){let m=t.brahmic,f=Array(128);for(let[n,s]of Object.entries(m.class_by_offset))f[Number(n)]=s;let e=new Map(Object.entries(t.extra)),a=new Map(Object.entries(t.urdu.letters)),_=new Map(Object.entries(t.meetei.letters)),h=new Map(Object.entries(t.ol_chiki.letters)),g=Array(128);for(let[n,s]of Object.entries(t.latin.letters))g[n.charCodeAt(0)]=s;let k=t.latin.groups,l=t.latin.w_ambiguous_unless_before,v=new Map(Object.entries(t.class_map)),G=new Set(t.vowels),Q=t.steps,U=t.urdu;function M(n){return t.meetei.ranges.some(([s,i])=>n>=s&&n<=i)}let o0=t.brahmic.rewrite??[],r=t.brahmic.rewrite_bases??[],B0=t.initial_branches??[];function I0(n){for(let[y,H]of o0)n=n.replaceAll(y,H);let s="",i=-1;for(let y=0;y<n.length;y++){let H=n[y],z=e.get(H);if(z!==void 0){s+=z,i=-1;continue}let Z=n.charCodeAt(y);if(Z<m.from||Z>m.to)continue;let $=Z&127,T=f[$];if($===m.nukta_offset&&m.flap_offsets.includes(i)&&s)s=s.slice(0,-1)+m.flap_class;else if($===m.virama_offset);else if($===m.candrabindu_offset)s+=m.candrabindu_class;else if(T!==void 0)s+=T;if(T!==void 0)i=$;else if($!==m.nukta_offset&&$!==m.virama_offset)i=-1}return s}function T0(n){let s="",i=0;t:while(i<n.length){for(let[H,z]of k)if(n.startsWith(H,i)){s+=z,i+=H.length;continue t}let y=n.charCodeAt(i);if(y===99){let H=n[i+1];s+=H==="e"||H==="i"||H==="y"?"s":"k"}else if(y===119&&i>0&&!l.includes(n[i+1]??" "))s+="w";else s+=g[y]??"";i++}return s}function W0(n){let s=n[0]===U.ain?"a":"";for(let y=0;y<n.length;y++){let H=n[y];if(H===U.waw&&y>0&&!(y+1<n.length&&U.waw_v_before.includes(n[y+1])))s+="w";else s+=a.get(H)??""}let i=n.length;if(i>1&&U.final_he.includes(n[i-1])&&!U.final_he_h_after.includes(n[i-2]))s=s.slice(0,-1)+"a";return s}function j0(n){let s="";for(let i of n){if(i===t.ol_chiki.aspiration&&s&&!G.has(s[s.length-1]))continue;s+=h.get(i)??""}return s}function K0(n){let s="";for(let i of n)s+=_.get(i)??"";return s}function C0(n){let s=!0;for(let H=0;H<n.length;H++)if(n.charCodeAt(H)>127){s=!1;break}if(s)return T0(n);let i=!1,y=!1;for(let H=0;H<n.length;H++){let z=n.charCodeAt(H);if(z>=U.from&&z<=U.to)return W0(n);if(z>=t.ol_chiki.from&&z<=t.ol_chiki.to)i=!0;else if(M(z))y=!0}if(i)return j0(n);if(y)return K0(n);return I0(n)}function J0(n){if(Q["ng-k"]){let z="";for(let Z=0;Z<n.length;Z++)if(z+=n[Z],n[Z]==="ṅ"&&n[Z+1]!=="k")z+="k";n=z}let s="";for(let z=0;z<n.length;z++)s+=v.get(n[z])??n[z];if(!s)return s;let i=s[0];if(Q["initial-vowels-alike"]&&G.has(i))i="a";let y=i;for(let z=1;z<s.length;z++){let Z=s[z];if(Q["drop-h"]&&Z==="h")continue;if(Q["drop-y"]&&Z==="y")continue;if(Q["drop-vowels"]&&G.has(Z))continue;y+=Z}if(Q["drop-final-vowel"]&&y.length>1&&G.has(y[y.length-1]))y=y.slice(0,-1);let H=y[0];for(let z=1;z<y.length;z++)if(y[z]!==y[z-1])H+=y[z];return H}function L0(n,s,i){let y=s>0?n[s-1]:"^",H=s+1<n.length?n[s+1]:"$";return(i.after===void 0||i.after.includes(y))&&(i.before===void 0||i.before.includes(H))&&!(i.not_before??"").includes(H)}function x0(n){let s=C0(n),i=[s];for(let y of t.branches){if(!s.includes(y.class))continue;let H=!1;for(let z=0;z<n.length;z++){let Z=n.charCodeAt(z);if(Z>=y.from&&Z<=y.to){H=!0;break}}if(!H)continue;for(let z=0;z<s.length;z++)if(s[z]===y.class&&i.length*2<=t.max_keys&&L0(s,z,y)){let Z=y.also||h0;i=i.concat(i.map(($)=>$.slice(0,z)+Z+$.slice(z+1)))}}for(let y of B0){if(!s||!G.has(s[0])||i.length*2>t.max_keys)continue;let H=!1;for(let z=0;z<n.length;z++){let Z=n.charCodeAt(z);if(Z>=y.from&&Z<=y.to){H=!0;break}}if(H)i=i.concat(i.map((z)=>y.also+z.slice(1)))}return i.map((y)=>y.replaceAll(h0,""))}function M0(n){let s="";for(let i=0;i<n.length;i++){let y=n.charCodeAt(i),H=t.digit_zeros.find((z)=>y>=z&&y<=z+9);if(H===void 0)return;s+=String.fromCharCode(48+y-H)}return s||void 0}let R0=new Map(Object.entries(t.initials??{}));return function(s){let i=M0(s);if(i!==void 0)return[i];let y=[s,...R0.get(s)??[]],H=s.charCodeAt(0);for(let Z of t.suffixes){if(H<Z.from||H>Z.to)continue;for(let $ of Z.endings)if(s.endsWith($)&&s.length-$.length>=2){y.push(s.slice(0,-$.length));break}}if(r.length)for(let Z of y.slice()){let $=Z;for(let[T,A0]of r)$=$.replaceAll(T,A0);if($!==Z)y.push($)}let z=new Set;for(let Z of y)for(let $ of x0(Z))z.add(J0($));return z.delete(""),[...z].sort()}}var _0=S(Y),b0=new Set(Y.titles);function s0(t){let m=[];for(let e of t){let a=0;while(a<e.length&&b0.has(e[a]))a++;m.push(...e.slice(a))}let f=t.flat();return m.length||!f.length?m:f.slice(-1)}var c0=256;function n0(t){let m="";for(let f of t)for(let e of j(f.codePointAt(0))){if(a0(e))continue;if(e>=128)return K(t);m+=String.fromCodePoint(e)}return m.toLowerCase()}function g0(t,m){let f=[""];for(let e of t){let a=[];for(let _ of f)for(let h of e)if(a.length<c0)a.push(_?_+m+h:h);f=a}return f[0]===""?[]:f}var Z1=Y.version;function k0(t){return t.replace(/\([^)]*\)/g," ").split(/[^\S\ufeff]|[\x1c-\x1f\x85.\-,'’]/u).filter(Boolean)}var y0=Y.joined.min_classes;var u=d;function v0(t){let m=0,f=0;return t.map((e)=>f+=m+=e)}var F={...u,pow:v0(u.pow_d2),exp2:v0(u.exp2_d2)},W1=F.version,j1=F.thresholds;function V0(t){if(t.base_version!==Y.version)throw Error(`phonetic: scorer rules made for ${t.base_version}, not ${Y.version}`);let m={...Y,...t.set};for(let f of t.drop)delete m[f];return S(m)}var w0=V0(b),t1=V0(c),i0=y0,O=1073741824,X=Math.floor;function z0(t){return t>=0&&t<F.pow.length?F.pow[t]:0}function m1(t,m){let f=0;while(f+1<F.exp2.length&&m*F.exp2[f+1]<=t*65536)f++;return f}function L(t,m){let f=t.length+m.length;if(!f)return 1e4;let e=Array(m.length+1).fill(0),a=Array(m.length+1).fill(0);for(let _ of t){a[0]=0;for(let h=0;h<m.length;h++)a[h+1]=_===m[h]?e[h]+1:Math.max(e[h+1],a[h]);[e,a]=[a,e]}return X((40000*e[m.length]+f)/(2*f))}var F0=(t,m)=>X((2*t+m)/(2*m)),I=(t)=>/^[\x00-\x7f]*$/.test(t),o=(t)=>_0(t);function E(t){let m=t.replace(/\([^)]*\)/g," ").split(",").map((f)=>{let e=[];for(let a of k0(f)){if(a=n0(a),I(a))a=a.replace(/[^a-z0-9]/g,"");if(a)e.push(a)}return e});return s0(m).filter((f)=>o(f).length)}var C=(t)=>[...t.toLowerCase()].filter((m)=>m>="a"&&m<="z"),J=(t)=>[...K(t)].filter((m)=>m!==""&&m!==""&&!/^(?:[^\S]|[\x1c-\x1f\x85])$/u.test(m));function G0(t){let m=[...t];if(m.length<F.deletion_min_classes)return[];return m.map((f,e)=>m.slice(0,e).join("")+m.slice(e+1).join(""))}var x=(t)=>[...w0(t)[0]??""];function H0(t){let m=[...t].some((a)=>a>=""&&a<="ۿ"),f=new Set,e=[];for(let a of t1(t)){let _=[...a],h=[_[0],..._.slice(1).filter((k)=>k!=="a").map((k)=>k==="y"?"i":k)];if(m&&h.length>1&&h[h.length-1]==="h")h.pop();let g=h.join("");if(!f.has(g))f.add(g),e.push(h)}return e}function q(t,m){let f=0;for(let e of H0(t))for(let a of H0(m))f=Math.max(f,L(e,a));return f}var f1=[[1536,1791,"arab"],[1872,1919,"arab"],[2304,2431,"deva"],[2432,2559,"beng"],[2560,2687,"guru"],[2688,2815,"gujr"],[2816,2943,"orya"],[2944,3071,"taml"],[3072,3199,"telu"],[3200,3327,"knda"],[3328,3455,"mlym"],[7248,7295,"olck"],[43968,44031,"mtei"]];function Q0(t){for(let m of t){let f=m.codePointAt(0);if(l0(f))return f1.find(([e,a])=>f>=e&&f<=a)?.[2]??""}return""}class U0{idx=new Map;v;c;units=new Map;constructor(t){let m=t.latin??t.x,f=t.native??t.y,e=[...m,...f];e.forEach((a,_)=>this.idx.set(a,_+1)),this.v=e.length+1,this.c=new Float64Array(this.v*this.v).fill(O),t.c.forEach(([a,_],h)=>{this.c.fill(a,h*this.v,(h+1)*this.v);for(let[g,k]of _)this.c[h*this.v+g]=k}),this.c[0]=0;for(let[a,_,h,g]of t.units??[]){let k=new Float64Array(this.v).fill(O);if(h>=0)k.fill(h,m.length+1);for(let[l,v]of g)k[l]=v<0?O:v;this.units.set(a*this.v+_,k)}}ids(t){return t.map((m)=>this.idx.get(m)??0)}align(t,m,f){let e=t.length,a=m.length,_=a+1,h=this.v,g=this.c,k=new Float64Array((e+1)*_);for(let l=1;l<=e;l++)k[l*_]=k[(l-1)*_]+g[t[l-1]*h];for(let l=1;l<=a;l++)k[l]=k[l-1]+g[m[l-1]];for(let l=1;l<=e;l++)for(let v=1;v<=a;v++){let G=k[(l-1)*_+v-1]+g[t[l-1]*h+m[v-1]];if(G=Math.min(G,k[(l-1)*_+v]+g[t[l-1]*h]),G=Math.min(G,k[l*_+v-1]+g[m[v-1]]),f&&l>=2){let Q=this.units.get(t[l-2]*h+t[l-1]);if(Q)G=Math.min(G,k[(l-2)*_+v-1]+Q[m[v-1]])}k[l*_+v]=G}return k[e*_+a]}}var e1=`https://cdn.jsdelivr.net/gh/micahchoo/indickit@v${w}/phonetic/scorer/`,X0=new URL("../phonetic/scorer/",import.meta.url);async function Z0(t){let m=await fetch(t);if(!m.ok)throw Error(`phonetic-search: ${t}: ${m.status}`);return m.arrayBuffer()}var a1=async(t)=>{try{return await Z0(t)}catch{return Z0(new URL(t.href.slice(X0.href.length),e1))}};async function $0(t,m){try{let f=await m(new URL(t+".json",X0));return new U0(JSON.parse(new TextDecoder().decode(f)))}catch{return}}class Y0{lang;latin;pairs;constructor(t,m,f){this.lang=t;this.latin=m;this.pairs=f}cost(t,m){let f=I(t),e=I(m),a,_,h,g,k=!1;if(f!==e){let[v,G]=f?[t,m]:[m,t];if(!(a=this.latin))return;_=C(v),h=J(G),k=!0,g=Math.max(_.length,1)}else if(!f){let v=Q0(t),G=Q0(m);if(!v||!G||v===G)return;if(v>G)[t,m]=[m,t],[v,G]=[G,v];if(!(a=this.pairs.get(`${v}-${G}`)))return;_=J(t),h=J(m),g=Math.max(_.length,h.length,1)}else return;let l=a.align(a.ids(_),a.ids(h),k);return X((20*l+g)/(2*g))}calibrations(t,m){let f=new Map;for(let l of m){let v=this.cost(t,l);if(v!==void 0)f.set(l,v)}let e=new Map;if(!f.size)return e;let a=Math.max(I(t)?C(t).length:J(t).length,1),_=1/0,h=1/0;for(let l of f.values())_=Math.min(_,l),h=Math.min(h,l*a);let g=new Map,k=0;for(let[l,v]of f){let G=z0(X((v*a-h)/F.posterior_temperature));g.set(l,G),k+=G}for(let[l,v]of f){let G=X((100*z0(v-_)+500000)/1e6),Q=X((100*g.get(l)+X(k/2))/k);e.set(l,G+Q)}return e}wordSim(t,m,f,e){let a=new Set(o(m)),_=o(t).some((l)=>a.has(l))?1:0,h,g;if(I(t)&&I(m))g=L(C(t),C(m)),h=2*g;else if(f?.has(m))h=100*f.get(m),g=q(t,m);else if(this.cost(t,m)!==void 0)h=20000,g=q(t,m);else g=L(x(t),x(m)),h=2*g;let k=2*e.key*1e4*_+e.cost*h+2*e.vowel*g;return e.round?F0(k,200*e.div):X(k/(200*e.div))}}function B(t,m){let f=t.join("");return f?o(f).filter((e)=>[...e].length>=m):[]}function P0(t){return g0(t.map(o).filter((m)=>m.length),"\x1F")}class p{scorer;words;n;df=new Map;maps={strict:new Map,joined:new Map,loose:new Map,near:new Map};p;constructor(t,m,f){this.scorer=t;let e=F.profiles[f];if(!e)throw Error(`phonetic-search: unknown profile "${f}" ("names" or "text")`);this.p=e,this.n=m.length,this.words=m.map(E);for(let _ of this.words)for(let h of new Set(_.flatMap(o)))this.df.set(h,(this.df.get(h)??0)+1);let a=(_,h,g)=>{let k=_.get(h);if(!k)_.set(h,[g]);else if(k[k.length-1]!==g)k.push(g)};this.words.forEach((_,h)=>{for(let g of P0(_))a(this.maps.strict,g,h);for(let g of B(_,i0))a(this.maps.joined,g,h);for(let g of B(_,F.loose_joined_min_classes))a(this.maps.loose,g,h);for(let g of _)for(let k of o(g)){if(this.common(k))continue;a(this.maps.near,k,h);for(let l of G0(k))a(this.maps.near,l,h)}})}common(t){let m=this.p.stop_permille;return m!==null&&this.n>=this.p.stop_min_names&&(this.df.get(t)??0)*1000>this.n*m}weight(t){let m=0;for(let f of o(t))m=Math.max(m,m1(this.n,Math.max(this.df.get(f)??0,1)));return m}candidates(t){let m=new Set;for(let f of P0(t))for(let e of this.maps.strict.get(f)??[])m.add(e);if(!m.size)for(let f of B(t,i0))for(let e of this.maps.joined.get(f)??[])m.add(e);for(let f of B(t,F.loose_joined_min_classes))for(let e of this.maps.loose.get(f)??[])m.add(e);for(let f of t)for(let e of o(f)){if(this.common(e))continue;for(let a of[e,...G0(e)])for(let _ of this.maps.near.get(a)??[])m.add(_)}return m}nameScore(t,m,f){let e=0,a=0;for(let[h,g,k]of[[t,m,!0],[m,t,!1]])for(let l of h){let v=this.weight(l);a+=v;let G=0;for(let Q of g)G=Math.max(G,k?this.scorer.wordSim(l,Q,f.get(l),this.p):this.scorer.wordSim(Q,l,f.get(Q),this.p));e+=v*G}let _=a?X((e+X(a/2))/a):0;if(t.length!==m.length&&t.length&&m.length){let h=t.join(""),g=m.join(""),k=new Set(B([h],F.loose_joined_min_classes)),l=B([g],F.loose_joined_min_classes).some((M)=>k.has(M))?1:0,v,G;if(this.scorer.cost(h,g)!==void 0)v=1e4,G=q(h,g);else v=G=L(x(h),x(g));let Q=this.p,U=Q.key*1e4*l+Q.cost*v+Q.vowel*G;_=Math.max(_,Q.round?F0(U,100*Q.div):X(U/(100*Q.div)))}return _}scoreAll(t,m){let f=E(t),e=[...new Set(m.flatMap((_)=>this.words[_]))],a=new Map(f.map((_)=>[_,this.scorer.calibrations(_,e)]));return m.map((_)=>({name:_,score:this.nameScore(f,this.words[_],a)}))}search(t,m=0){let f=[...this.candidates(E(t))].sort((e,a)=>e-a);return this.scoreAll(t,f).filter((e)=>e.score>=m).sort((e,a)=>a.score-e.score)}}async function K1(t,m={}){let f=t0(t),e=m.fetcher??a1,a=[...new Set(m.scripts??[])].sort(),_=new Map,[h]=await Promise.all([$0(`latin/${f}`,e),...a.flatMap((k,l)=>a.slice(l+1).map(async(v)=>{let G=await $0(`pairs/${k}-${v}`,e);if(G)_.set(`${k}-${v}`,G)}))]),g=new Y0(f,h,_);return{lang:f,index:(k,l="names")=>new p(g,k,l),score:(k,l,v="names")=>new p(g,l,v).scoreAll(k,l.map((G,Q)=>Q)).map((G)=>G.score)}}export{K1 as loadSearch,j1 as THRESHOLDS,W1 as SEARCH_VERSION,p as Index,e1 as CDN};
|
|
1
|
+
var X={version:"2026-10-11.8",folds:["as-case-narrow","as-w-glide-ni","bn-case","bn-ng","brahmic-av-u","brahmic-v-glide-u","dd-r","deva-case-long","deva-ng","deva-ni","deva-vh","drop-vowels","drop-y","flap-r","gom-case","gu-case","latin-initials","latin-ngh","latin-w-u","latin-zh-h","latin-zh-l","ml-case","ml-tta-add","nasal-all","ng-k","or-case","retroflex","s-c","sa-case","sat-o-a","sat-w-u","sd-implosive","ta-case","ta-initial-h","ta-k-h","ta-name-end","ta-pro-i","ta-pro-u","ta-tc-k","te-case","ur-a-e","ur-a-i","ur-a-u","ur-h-asp","ur-hh","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[["റ്റ","ത്ത"],["ന്റ","ന്ത"],["ൻറ","ന്ത"]]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ",ॻ:"k",ॼ:"c",ॾ:"ṭ",ॿ:"p"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y",ھ:"h"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},meetei:{ranges:[[43744,43775],[43968,44031]],letters:{ꯀ:"k",ꯁ:"s",ꯂ:"l",ꯃ:"m",ꯄ:"p",ꯅ:"n",ꯆ:"c",ꯇ:"t",ꯈ:"k",ꯉ:"ṅ",ꯊ:"t",ꯋ:"v",ꯌ:"y",ꯍ:"h",ꯎ:"u",ꯏ:"i",ꯐ:"p",ꯑ:"a",ꯒ:"k",ꯓ:"c",ꯔ:"r",ꯕ:"p",ꯖ:"c",ꯗ:"t",ꯘ:"k",ꯙ:"t",ꯚ:"p",ꯛ:"k",ꯜ:"l",ꯝ:"m",ꯞ:"p",ꯟ:"n",ꯠ:"t",ꯡ:"ṅ",ꯢ:"i","ꯣ":"o","ꯤ":"i","ꯥ":"a","ꯦ":"e","ꯧ":"o","ꯨ":"u","ꯩ":"e","ꯪ":"ṁ",ꫠ:"e",ꫡ:"o",ꫢ:"c",ꫣ:"ñ",ꫤ:"ṭ",ꫥ:"ṭ",ꫦ:"ṭ",ꫧ:"ṭ",ꫨ:"ṇ",ꫩ:"s",ꫪ:"s","ꫫ":"i","ꫬ":"u","ꫭ":"e","ꫮ":"o","ꫯ":"o"}},ol_chiki:{from:7248,to:7295,letters:{ᱚ:"o",ᱛ:"t",ᱜ:"k",ᱝ:"ṅ",ᱞ:"l",ᱟ:"a",ᱠ:"k",ᱡ:"c",ᱢ:"m",ᱣ:"v",ᱤ:"i",ᱥ:"s",ᱦ:"h",ᱧ:"ñ",ᱨ:"r",ᱩ:"u",ᱪ:"c",ᱫ:"t",ᱬ:"ṇ",ᱭ:"y",ᱮ:"e",ᱯ:"p",ᱰ:"ṭ",ᱱ:"n",ᱲ:"ṛ",ᱳ:"o",ᱴ:"ṭ",ᱵ:"p",ᱶ:"v",ᱷ:"h",ᱸ:"ṁ"},aspiration:"ᱷ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},class_map:{m:"n",s:"c",v:"p",w:"p",ñ:"n",ĝ:"k",ḍ:"t",ṁ:"n",ṅ:"n",ṇ:"n",ṛ:"t",ṭ:"t"},vowels:"aeiou",steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!0,"drop-y-after-i":!1,"drop-vowels":!0,"drop-final-vowel":!1},branches:[{from:2432,to:2559,class:"v",also:"",after:"aiueo",not_before:"i"},{from:2432,to:2559,class:"ṁ",also:"ṅ"},{from:2304,to:3455,class:"v",also:"u",after:"aṁ",not_before:"aieo"},{from:2304,to:3455,class:"v",also:"",after:"kcṭḍtpnmlrsyhṅñṇ",before:"u"},{from:2304,to:3455,class:"ḍ",also:"r",after:"aiueokcṭḍtpnmlrsvyhṅñṇṁ"},{from:2304,to:2431,class:"ṁ",also:"ṅ"},{from:2304,to:2431,class:"h",also:"",after:"v"},{from:1536,to:7295,class:"ṛ",also:"r"},{from:0,to:127,class:"ĝ",also:"h"},{from:0,to:127,class:"w",also:"u"},{from:0,to:127,class:"h",also:"",after:"c"},{from:0,to:127,class:"c",also:"l",before:"h"},{from:7248,to:7295,class:"o",also:"a",after:"^"},{from:7248,to:7295,class:"v",also:"",after:"aiueo"},{from:2944,to:3071,class:"k",also:"h"},{from:2944,to:3071,class:"i",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"u",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"ṭ",also:"k",before:"c"},{from:1536,to:1791,class:"a",also:"e",after:"^"},{from:1536,to:1791,class:"a",also:"i",after:"^"},{from:1536,to:1791,class:"a",also:"u",after:"^"},{from:1536,to:1791,class:"h",also:"",after:"kcṭtpnmlrsvṁ"},{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[{from:2944,to:3071,also:"h"}],joined:{min_classes:6,when:"the strict keys find nobody"},digit_zeros:[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,7248,44016],initials:{a:["e"],b:["bi"],c:["si"],d:["di"],e:["i"],f:["ef"],g:["ji"],h:["ech"],i:["aai","ai"],j:["je"],k:["ke"],l:["el"],m:["em"],n:["en"],o:["o"],p:["pi"],q:["kyu"],r:["ar"],s:["es"],t:["ti"],u:["yu"],v:["vi"],w:["dablyu"],x:["eks"],y:["vai","oy"],z:["jed","zed","iset"]},max_keys:32,suffixes:[{from:2432,to:2559,endings:["ৰপৰা","ৱে","লৈ","ৰ"]},{from:2432,to:2559,endings:["য়ের","দের","এর","ের","কে","তে"]},{from:2304,to:2431,endings:["ांच्या","मध्ये","च्या","ांना"]},{from:2304,to:2431,endings:["नि"]},{from:2304,to:2431,endings:["ाचें","ाईन","ाचो","ाची","ान","ीन","ाक"]},{from:2688,to:2815,endings:["માં","નું","થી","ના","ની","ને"]},{from:3328,to:3455,endings:["യ്ക്ക്","ന്റെ","യുടെ","യിലെ","ക്ക്","ുടെ","യിൽ","ിലെ","ോട്","ിന്","ിൽ","നെ","യെ","ും"]},{from:2816,to:2943,endings:["ଙ୍କର","ଙ୍କୁ","ଙ୍କ","ରେ","ରୁ","କୁ"]},{from:2304,to:2431,endings:["स्य"]},{from:2944,to:3071,endings:["ுக்கு","யின்","வின்","க்கு","யில்","ிடம்","ுடன்","ின்","ில்","ால்","ும்"]},{from:2944,to:3071,endings:["ன்","ர்"]},{from:3072,to:3199,endings:["యొక్క","లోని","గారు","లో","కు","కి","ని","తో","ను"]}],titles:["adv","advocate","begum","capt","col","dr","gen","janab","km","kumari","lt","maj","maulana","miss","mr","mrs","ms","prof","sardar","selvi","sh","shree","shri","shrimati","smt","sri","sushri","thiru","thirumathi","tmt","بیگم","جناب","محترمہ","مولانا","ڈاکٹر","एडवोकेट","कु","कुमारी","डा","डॉ","डॉक्टर","डॉ०","प्रो","प्रोफेसर","मौलाना","श्री","श्रीमती","श्रीमान","सरदार","सुश्री","ড","ডঃ","ডা","ডাঃ","শ্রী","শ্রীমতী","শ্ৰী","শ্ৰীমতী","ਡਾ","ਬੀਬੀ","ਸਰਦਾਰ","ਸ਼੍ਰੀ","ਸ਼੍ਰੀਮਤੀ","ਸ੍ਰੀ","ડૉ","ડો","શ્રી","શ્રીમતી","ଡ","ଡଃ","ଶ୍ରୀ","ଶ୍ରୀମତୀ","செல்வி","டா","டாக்டர்","திரு","திருமதி","முனைவர்","ஸ்ரீ","డా","డాక్టర్","శ్రీ","శ్రీమతి","ಡಾ","ಡಾಕ್ಟರ್","ಶ್ರೀ","ಶ್ರೀಮತಿ","ഡോ","ഡോക്ടർ","ശ്രീ","ശ്രീമതി"]};var p={version:"2026-10-11.8",profiles:{names:{key:2,cost:1,vowel:1,div:4,stop_permille:20,stop_min_names:100,round:!0},text:{key:1,cost:2,vowel:2,div:5,stop_permille:null,stop_min_names:0,round:!1}},posterior_temperature:2,deletion_min_classes:3,loose_joined_min_classes:4,fine_folds:["nasal-all","v-b","retroflex","s-c","ng-k","ur-w-u"],thresholds:{names:76,villages:73,text_10:81,text_20:71},pow_d2:[1e6,-1006908,49,46,48,46,47,46,46,45,45,45,45,43,45,43,44,43,42,43,42,41,42,42,40,41,41,40,39,40,39,40,38,38,39,38,38,36,39,36,36,37,37,35,36,35,35,36,34,34,35,33,35,33,33,33,33,33,32,32,32,32,31,31,32,30,31,31,29,31,29,30,29,30,28,30,27,29,29,27,28,28,27,27,28,26,27,26,26,27,26,25,26,25,26,24,26,24,25,24,24,24,24,24,23,24,23,23,23,22,23,23,22,22,22,21,23,20,22,22,20,22,20,20,22,19,21,20,20,19,20,20,19,19,20,18,19,19,19,18,18,19,17,19,17,18,18,17,18,17,16,18,17,16,17,17,16,16,17,15,17,15,16,16,15,16,15,15,16,14,15,15,15,14,15,14,14,15,13,15,14,13,14,14,13,13,14,13,14,12,13,14,12,12,13,13,12,13,12,12,12,12,12,12,12,11,12,11,12,12,10,12,11,11,11,11,10,12,10,10,12,9,11,11,9,11,10,10,10,10,9,10,10,10,9,10,9,10,8,10,10,8,9,9,10,8,9,8,9,9,9,8,8,9,8,8,9,7,9,8,7,9,8,7,8,8,8,7,7,8,8,7,7,8,7,7,7,7,8,6,7,7,7,7,7,6,7,7,6,7,6,6,7,7,5,7,6,7,5,6,7,6,5,7,5,6,6,6,5,6,6,6,4,7,5,5,6,5,6,5,5,5,6,4,6,5,5,5,5,5,5,4,6,4,5,5,5,4,5,4,5,5,4,5,4,4,5,5,3,5,4,5,3,5,4,5,3,4,4,5,3,5,3,4,4,4,4,3,5,3,4,3,4,4,3,4,4,3,4,3,4,3,3,4,3,4,3,3,4,3,3,3,4,2,4,3,3,3,3,4,2,3,4,2,3,3,3,3,3,2,4,2,3,2,4,2,3,3,2,3,2,4,1,4,2,2,3,2,3,3,2,2,3,2,3,2,2,2,3,3,1,3,2,2,3,2,2,2,2,3,1,3,2,2,2,2,2,2,2,2,3,1,2,2,2,2,2,2,1,3,1,3,1,1,3,2,1,2,2,2,1,2,2,1,2,2,2,1,1,3,1,2,1,2,1,2,2,1,1,2,2,1,2,1,1,3,0,2,1,2,1,2,1,1,2,1,2,0,2,2,1,1,1,2,1,1,1,2,1,1,2,1,0,3,0,1,2,1,1,1,1,1,2,1,0,2,1,1,2,0,1,1,2,0,2,0,2,1,0,2,0,2,0,2,1,0,1,2,0,1,2,0,1,1,1,0,2,1,0,1,1,1,1,1,1,0,1,1,1,1,0,2,0,1,1,0,1,1,1,1,0,1,1,0,2,0,1,0,1,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,0,2,0,0,1,1,0,1,1,0,1,0,1,0,1,0,1,1,0,0,2,-1,1,1,0,1,0,1,1,-1,2,-1,2,0,0,1,0,0,2,-1,1,1,0,0,1,1,0,0,0,2,-1,1,1,0,0,1,0,0,1,0,1,0,1,0,0,1,0,1,0,0,0,2,-1,1,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,1,-1,1,1,-1,1,0,1,0,0,0,1,0,1,-1,1,0,1,0,0,0,1,0,0,1,-1,1,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,1,-1,1,0,0,1,-1,1,0,1,-1,1,0,0,1,-1,1,0,1,-1,1,0,0,0,0,1,0,0,0,1,-1,1,0,0,1,-1,1,0,0,1,-1,1,-1,1,1,-1,1,-1,1,0,0,1,-1,1,0,0,0,0,1,-1,1,0,0,0,1,-1,1,0,0,0,0,0,1,0,-1,1,1,-1,0,1,-1,1,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,0,1,0,0,0,0,0,0,1,-1,1,-1,1,0,0,0,1,-1,0,1,-1,1,0,0,0,0,0,1,-1,1,-1,1,0,0,0,0,0,0,0,1,-1,1,-1,1,0,0,0,0,0,1,-1,0,1,-1,1,0,0,-1,1,0,1,-1,0,0,1,-1,1,-1,1,0,0,0,0,0,0,0,0,1,-1,1,-1,1,-1,1,0,0,0,0,0,0,0,0,0,1,-1,1,-1,1,-1,1,0,0,-1,1,0,0,0,1,-1,0,0,1,-1,1,-1,1,-1,1,0,-1,1,0,0,0,0,0,0,0,1,-1,0,0,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,0,0,0,0,0,1,-1,0,1,-1,0,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,1,-1,1,0,-1,1,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,0,-1,1,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,0,0,0,1,-1,0,0,0,0,0,1,-1,0,0,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,0,1,-1,0,1,-1,0,0,1,-1,0,1,-1,0,1,-1,1,-1,0,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,0,1,-1,1,-1,1,-1,0,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,0,-1,1,-1,1,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,-1,1,0,0,-1,1,0,-1,1,0,0,-1,1,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,-1,1,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,-1,1,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],exp2_d2:[65536,-60832,337,362,388,416,445,478,511,549,587,630,676,724,775,831,891,955,1024,1096,1176,1260,1350,1448,1551,1663,1781,1910,2047,2194,2351,2520,2701,2894,3103,3325,3564,3819,4094,4388,4702,5040,5402,5788,6206,6650,7128,7639,8187,8775,9405,10080,10803,11579,12410,13300,14255,15278,16376,17549,18810,20160,21606,23158,24819,26602,28509,30557,32749,35101,37619,40319,43214,46315,49639,53201,57021,61113,65499,70200,75239,80639,86426,92631,99277,106404,114041,122226,130998,140400,150478,161278,172853,185259,198557,212808,228080,244453,261995,280802,300955,322556,345706,370519,397113,425615,456162,488903,523994,561601,601911,645111,691413,741039,794225,851229,912326,977805,1047987,1123205,1203819,1290223,1382827,1482076,1588451,1702458,1824652,1955611,2095973,2246408,2407641,2580445,2765653,2964154,3176900,3404919,3649300,3911225,4191945,4492816,4815282,5160891,5531305,5928307,6353802,6809836,7298602,7822447,8383892,8985633,9630563,10321781,11062612,11856613,12707604,13619672,14597204,15644894,16767785,17971265,19261125,20643563,22125224,23713226,25415208,27239344,29194407,31289791,33535567,35942530,38522252,41287126,44250445,47426455,50830414,54478690,58388813,62579582,67071133,71885063,77044501,82574252,88500893,94852907,101660829,108957380,116777627,125159162,134142268,143770124,154089003,165148505,177001783,189705817,203321658,217914758,233555254,250318325,268284537,287540247,308178006,330297009,354003569,379411631,406643316,435829517,467110510,500636647,536569075,575080494,616356012,660594018,708007138,758823261,813286635,871659031,934221020,1001273297,1073138147,1150160988,1232712026,1321188035,1416014276,1517646522,1626573269,1743318065,1868442038,2002546592,2146276297,2300321976,2465424050,2642376071,2832028551,3035293046,3253146538,3486636128,3736884076,4005093187,4292552590,4600643954,4930848101,5284752141,5664057102,6070586092,6506293075,6973272258,7473768152,8010186371,8585105183,9201287908,9861696200,10569504284,11328114203,12141172183,13012586151,13946544515,14947536306,16020372741,17170210366,18402575815,19723392402,21139008567,22656228406,24282344367,26025172301,27893089030,29895072611,32040745484,34340420730,36805151632,39446784802,42278017134,45312456813,48564688735,52050344601,55786178060,59790145221,64081490970,68680841460,73610303262,78893569605,84556034268,90624913626,97129377469,104100689203,111572356121,119580290441,128162981939,137361682921,147220606524,157787139211,169112068536,181249827251,194258754937,208201378408,223144712240,239160580884,256325963876,274723365843,294441213048,315574278422,338224137072,362499654502,388517509875,416402756814,446289424480,478321161770,512651927752,549446731685,588882426095,631148556845,676448274143,724999309006,777035019748,832805513629,892578848961,956642323538,1025303855506,1098893463368,1177764852192,1262297113689,1352896548287,1449998618010,1554070039497,1665611027258,1785157697923,1913284647074,2050607711014,2197786926733,2355529704388,2524594227375,2705793096574,2899997236022,3108140078993,3331222054517,3570315395844,3826569294149,4101215422028,4395573853466,4711059408775,5049188454752]};var c={base_version:"2026-10-11.8",set:{folds:["nasal-all","ng-k","retroflex","s-c","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!1,"drop-y-after-i":!1,"drop-vowels":!1,"drop-final-vowel":!1},branches:[],initial_branches:[],suffixes:[]},drop:["initials","titles"]};var d={base_version:"2026-10-11.8",set:{folds:["nasal-all","ng-k","retroflex","s-c","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!1,"drop-y-after-i":!1,"drop-vowels":!1,"drop-final-vowel":!1},branches:[{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[],suffixes:[]},drop:["initials","titles"]};var b="0.12.0";function w(t){let e=(t??"").toLowerCase().split(/[-_]/)[0];if(e==="kok")return"gom";let f=e.length===3?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".indexOf(e+" "):-1;return f>=0&&f%7===0?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".slice(f+4,f+6):e}var P={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var i1=P.unicode,t0=1,E0=2,e0=4,u=8,V=new Map,K=new Map,f0=new Map;for(let t=0;t<P.ranges.length;t+=2)for(let e=P.ranges[t];e<=P.ranges[t+1];e++)V.set(e,0);var x=(t,e)=>{for(let f=0;f<t.length;f+=2)for(let a=t[f];a<=t[f+1];a++)V.set(a,V.get(a)|e)};x(P.mn,t0);x(P.m,E0);x(P.l,e0);for(let t=0;t<P.ccc.length;t+=3)for(let e=P.ccc[t];e<=P.ccc[t+1];e++)V.set(e,V.get(e)|P.ccc[t+2]<<4);var D0=new Set(P.excl);for(let[t,e]of Object.entries(P.decomp)){let f=Number(t);if(K.set(f,e),e.length===2&&!D0.has(f))f0.set(e[0]*1114112+e[1],f),V.set(e[1],V.get(e[1])|u)}var A=(t)=>String.fromCodePoint(t);function R(t,e,f){let a="";for(let l=e;l<f;l+=8192)a+=String.fromCodePoint(...t.slice(l,Math.min(f,l+8192)));return a}function a0(t){let e=V.get(t);return e===void 0?/\p{Mn}/u.test(A(t)):(e&t0)!==0}function l0(t){let e=V.get(t);return e===void 0?/\p{L}/u.test(A(t)):(e&e0)!==0}function j(t){if(!V.has(t))return Array.from(A(t).normalize("NFD"),(f)=>f.codePointAt(0));let e=K.get(t);return e?e.flatMap(j):[t]}var q0=(t,e)=>t>>4===0&&(t&u)===0&&!K.has(e);function W(t){let e=Array.from(t,(a)=>a.codePointAt(0)),f="";for(let a=0;a<e.length;){let l=a+1,g=V.has(e[a]);for(;l<e.length;l++){let s=V.get(e[l]);if(s===void 0)g=!1;else if(q0(s,e[l]))break}f+=g?r0(e,a,l):R(e,a,l).normalize("NFC"),a=l}return f}function r0(t,e,f){let a=0,l=!0;for(let h=e;h<f&&l;h++){let _=V.get(t[h]),i=_>>4;if(K.has(t[h])||(_&u)!==0||i!==0&&i<a)l=!1;a=i}if(l)return R(t,e,f);let g=[];for(let h=e;h<f;h++)g.push(...j(t[h]));let s=(h)=>V.get(h)>>4;for(let h=0;h<g.length;){if(s(g[h])===0){h++;continue}let _=h;while(_<g.length&&s(g[_])!==0)_++;let i=g.slice(h,_).sort((Q,$)=>s(Q)-s($));for(let Q=0;Q<i.length;Q++)g[h+Q]=i[Q];h=_}let y=[],m=-1;for(let h of g){let _=s(h);if(m>=0&&(y.length-1===m||s(y[y.length-1])<_)){let i=f0.get(y[m]*1114112+h);if(i!==void 0){y[m]=i;continue}}if(_===0)m=y.length;y.push(h)}return R(y,0,y.length)}var h0="\x00";function N(t){let e=t.brahmic,f=Array(128);for(let[k,n]of Object.entries(e.class_by_offset))f[Number(k)]=n;let a=new Map(Object.entries(t.extra)),l=new Map(Object.entries(t.urdu.letters)),g=new Map(Object.entries(t.meetei.letters)),s=new Map(Object.entries(t.ol_chiki.letters)),y=Array(128);for(let[k,n]of Object.entries(t.latin.letters))y[k.charCodeAt(0)]=n;let m=t.latin.groups,h=t.latin.w_ambiguous_unless_before,_=new Map(Object.entries(t.class_map)),i=new Set(t.vowels),Q=t.steps,$=t.urdu;function T(k){return t.meetei.ranges.some(([n,z])=>k>=n&&k<=z)}let O=t.brahmic.rewrite??[],r=t.brahmic.rewrite_bases??[],X0=t.initial_branches??[];function Y0(k){for(let[v,G]of O)k=k.replaceAll(v,G);let n="",z=-1;for(let v=0;v<k.length;v++){let G=k[v],o=a.get(G);if(o!==void 0){n+=o,z=-1;continue}let H=k.charCodeAt(v);if(H<e.from||H>e.to)continue;let Z=H&127,B=f[Z];if(Z===e.nukta_offset&&e.flap_offsets.includes(z)&&n)n=n.slice(0,-1)+e.flap_class;else if(Z===e.virama_offset);else if(Z===e.candrabindu_offset)n+=e.candrabindu_class;else if(B!==void 0)n+=B;if(B!==void 0)z=Z;else if(Z!==e.nukta_offset&&Z!==e.virama_offset)z=-1}return n}function B0(k){let n="",z=0;t:while(z<k.length){for(let[G,o]of m)if(k.startsWith(G,z)){n+=o,z+=G.length;continue t}let v=k.charCodeAt(z);if(v===99){let G=k[z+1];n+=G==="e"||G==="i"||G==="y"?"s":"k"}else if(v===119&&z>0&&!h.includes(k[z+1]??" "))n+="w";else n+=y[v]??"";z++}return n}function I0(k){let n=k[0]===$.ain?"a":"";for(let v=0;v<k.length;v++){let G=k[v];if(G===$.waw&&v>0&&!(v+1<k.length&&$.waw_v_before.includes(k[v+1])))n+="w";else n+=l.get(G)??""}let z=k.length;if(z>1&&$.final_he.includes(k[z-1])&&!$.final_he_h_after.includes(k[z-2]))n=n.slice(0,-1)+"a";return n}function T0(k){let n="";for(let z of k){if(z===t.ol_chiki.aspiration&&n&&!i.has(n[n.length-1]))continue;n+=s.get(z)??""}return n}function K0(k){let n="";for(let z of k)n+=g.get(z)??"";return n}function j0(k){let n=!0;for(let G=0;G<k.length;G++)if(k.charCodeAt(G)>127){n=!1;break}if(n)return B0(k);let z=!1,v=!1;for(let G=0;G<k.length;G++){let o=k.charCodeAt(G);if(o>=$.from&&o<=$.to)return I0(k);if(o>=t.ol_chiki.from&&o<=t.ol_chiki.to)z=!0;else if(T(o))v=!0}if(z)return T0(k);if(v)return K0(k);return Y0(k)}function W0(k){if(Q["ng-k"]){let o="";for(let H=0;H<k.length;H++)if(o+=k[H],k[H]==="ṅ"&&k[H+1]!=="k")o+="k";k=o}let n="";for(let o=0;o<k.length;o++)n+=_.get(k[o])??k[o];if(!n)return n;let z=n[0];if(Q["initial-vowels-alike"]&&i.has(z))z="a";let v=z;for(let o=1;o<n.length;o++){let H=n[o];if(Q["drop-h"]&&H==="h")continue;if(Q["drop-y"]&&H==="y")continue;if(Q["drop-vowels"]&&i.has(H))continue;v+=H}if(Q["drop-final-vowel"]&&v.length>1&&i.has(v[v.length-1]))v=v.slice(0,-1);let G=v[0];for(let o=1;o<v.length;o++)if(v[o]!==v[o-1])G+=v[o];return G}function C0(k,n,z){let v=n>0?k[n-1]:"^",G=n+1<k.length?k[n+1]:"$";return(z.after===void 0||z.after.includes(v))&&(z.before===void 0||z.before.includes(G))&&!(z.not_before??"").includes(G)}function L0(k){let n=j0(k),z=[n];for(let v of t.branches){if(!n.includes(v.class))continue;let G=!1;for(let o=0;o<k.length;o++){let H=k.charCodeAt(o);if(H>=v.from&&H<=v.to){G=!0;break}}if(!G)continue;for(let o=0;o<n.length;o++)if(n[o]===v.class&&z.length*2<=t.max_keys&&C0(n,o,v)){let H=v.also||h0;z=z.concat(z.map((Z)=>Z.slice(0,o)+H+Z.slice(o+1)))}}for(let v of X0){if(!n||!i.has(n[0])||z.length*2>t.max_keys)continue;let G=!1;for(let o=0;o<k.length;o++){let H=k.charCodeAt(o);if(H>=v.from&&H<=v.to){G=!0;break}}if(G)z=z.concat(z.map((o)=>v.also+o.slice(1)))}return z.map((v)=>v.replaceAll(h0,""))}function J0(k){let n="";for(let z=0;z<k.length;z++){let v=k.charCodeAt(z),G=t.digit_zeros.find((o)=>v>=o&&v<=o+9);if(G===void 0)return;n+=String.fromCharCode(48+v-G)}return n||void 0}let O0=new Map(Object.entries(t.initials??{}));return function(n){let z=J0(n);if(z!==void 0)return[z];let v=[n,...O0.get(n)??[]],G=n.charCodeAt(0);for(let H of t.suffixes){if(G<H.from||G>H.to)continue;for(let Z of H.endings)if(n.endsWith(Z)&&n.length-Z.length>=2){v.push(n.slice(0,-Z.length));break}}if(r.length)for(let H of v.slice()){let Z=H;for(let[B,R0]of r)Z=Z.replaceAll(B,R0);if(Z!==H)v.push(Z)}let o=new Set;for(let H of v)for(let Z of L0(H))o.add(W0(Z));return o.delete(""),[...o].sort()}}var m0=N(X),p0=new Set(X.titles);function _0(t){let e=[];for(let a of t){let l=0;while(l<a.length&&p0.has(a[l]))l++;e.push(...a.slice(l))}let f=t.flat();return e.length||!f.length?e:f.slice(-1)}var c0=256;function n0(t){let e="";for(let f of t)for(let a of j(f.codePointAt(0))){if(a0(a))continue;if(a>=128)return W(t);e+=String.fromCodePoint(a)}return e.toLowerCase()}function s0(t,e){let f=[""];for(let a of t){let l=[];for(let g of f)for(let s of a)if(l.length<c0)l.push(g?g+e+s:s);f=l}return f[0]===""?[]:f}var Q1=X.version;function g0(t){return t.replace(/\([^)]*\)/g," ").split(/[^\S\ufeff]|[\x1c-\x1f\x85.\-,'’]/u).filter(Boolean)}var k0=X.joined.min_classes;var M=p;function y0(t){let e=0,f=0;return t.map((a)=>f+=e+=a)}var F={...M,pow:y0(M.pow_d2),exp2:y0(M.exp2_d2)},K1=F.version,j1=F.thresholds;function $0(t){if(t.base_version!==X.version)throw Error(`phonetic: scorer rules made for ${t.base_version}, not ${X.version}`);let e={...X,...t.set};for(let f of t.drop)delete e[f];return N(e)}var d0=$0(c),b0=$0(d),i0=k0,S=1073741824,U=Math.floor;function v0(t){return t>=0&&t<F.pow.length?F.pow[t]:0}function w0(t,e){let f=0;while(f+1<F.exp2.length&&e*F.exp2[f+1]<=t*65536)f++;return f}function J(t,e){let f=t.length+e.length;if(!f)return 1e4;let a=Array(e.length+1).fill(0),l=Array(e.length+1).fill(0);for(let g of t){l[0]=0;for(let s=0;s<e.length;s++)l[s+1]=g===e[s]?a[s]+1:Math.max(a[s+1],l[s]);[a,l]=[l,a]}return U((40000*a[e.length]+f)/(2*f))}var P0=(t,e)=>U((2*t+e)/(2*e)),Y=(t)=>/^[\x00-\x7f]*$/.test(t),I=(t)=>m0(t);function E(t){let e=t.replace(/\([^)]*\)/g," ").split(",").map((f)=>{let a=[];for(let l of g0(f)){if(l=n0(l),Y(l))l=l.replace(/[^a-z0-9]/g,"");if(l)a.push(l)}return a});return _0(e).filter((f)=>I(f).length)}var C=(t)=>[...t.toLowerCase()].filter((e)=>e>="a"&&e<="z"),L=(t)=>[...W(t)].filter((e)=>e!==""&&e!==""&&!/^(?:[^\S]|[\x1c-\x1f\x85])$/u.test(e));function z0(t){let e=[...t];if(e.length<F.deletion_min_classes)return[];return e.map((f,a)=>e.slice(0,a).join("")+e.slice(a+1).join(""))}var t1=(t)=>[...d0(t)[0]??""];function e1(t){let e=[...t].some((l)=>l>=""&&l<="ۿ"),f=new Set,a=[];for(let l of b0(t)){let g=[...l],s=[g[0],...g.slice(1).filter((m)=>m!=="a").map((m)=>m==="y"?"i":m)];if(e&&s.length>1&&s[s.length-1]==="h")s.pop();let y=s.join("");if(!f.has(y))f.add(y),a.push(s)}return a}class D{std=new Map;fine=new Map;fine2=new Map;keys(t){let e=this.std.get(t);if(e===void 0)e=I(t),this.std.set(t,e);return e}fineKey(t){let e=this.fine.get(t);if(e===void 0)e=t1(t),this.fine.set(t,e);return e}fine2Keys(t){let e=this.fine2.get(t);if(e===void 0)e=e1(t),this.fine2.set(t,e);return e}vowelRatio(t,e){let f=0;for(let a of this.fine2Keys(t))for(let l of this.fine2Keys(e))f=Math.max(f,J(a,l));return f}joinedOf(t,e){let f=t.join("");return f?this.keys(f).filter((a)=>[...a].length>=e):[]}}var f1=[[1536,1791,"arab"],[1872,1919,"arab"],[2304,2431,"deva"],[2432,2559,"beng"],[2560,2687,"guru"],[2688,2815,"gujr"],[2816,2943,"orya"],[2944,3071,"taml"],[3072,3199,"telu"],[3200,3327,"knda"],[3328,3455,"mlym"],[7248,7295,"olck"],[43968,44031,"mtei"]];function o0(t){for(let e of t){let f=e.codePointAt(0);if(l0(f))return f1.find(([a,l])=>f>=a&&f<=l)?.[2]??""}return""}class V0{idx=new Map;v;c;units=new Map;constructor(t){let e=t.latin??t.x,f=t.native??t.y,a=[...e,...f];a.forEach((l,g)=>this.idx.set(l,g+1)),this.v=a.length+1,this.c=new Float64Array(this.v*this.v).fill(S),t.c.forEach(([l,g],s)=>{this.c.fill(l,s*this.v,(s+1)*this.v);for(let[y,m]of g)this.c[s*this.v+y]=m}),this.c[0]=0;for(let[l,g,s,y]of t.units??[]){let m=new Float64Array(this.v).fill(S);if(s>=0)m.fill(s,e.length+1);for(let[h,_]of y)m[h]=_<0?S:_;this.units.set(l*this.v+g,m)}}ids(t){return t.map((e)=>this.idx.get(e)??0)}align(t,e,f){let a=t.length,l=e.length,g=l+1,s=this.v,y=this.c,m=new Float64Array((a+1)*g);for(let h=1;h<=a;h++)m[h*g]=m[(h-1)*g]+y[t[h-1]*s];for(let h=1;h<=l;h++)m[h]=m[h-1]+y[e[h-1]];for(let h=1;h<=a;h++)for(let _=1;_<=l;_++){let i=m[(h-1)*g+_-1]+y[t[h-1]*s+e[_-1]];if(i=Math.min(i,m[(h-1)*g+_]+y[t[h-1]*s]),i=Math.min(i,m[h*g+_-1]+y[e[_-1]]),f&&h>=2){let Q=this.units.get(t[h-2]*s+t[h-1]);if(Q)i=Math.min(i,m[(h-2)*g+_-1]+Q[e[_-1]])}m[h*g+_]=i}return m[a*g+l]}}var a1=`https://cdn.jsdelivr.net/gh/micahchoo/indickit@v${b}/phonetic/scorer/`,F0=new URL("../phonetic/scorer/",import.meta.url);async function G0(t){let e=await fetch(t);if(!e.ok)throw Error(`phonetic-search: ${t}: ${e.status}`);return e.arrayBuffer()}var l1=async(t)=>{try{return await G0(t)}catch{return G0(new URL(t.href.slice(F0.href.length),a1))}};async function H0(t,e){try{let f=await e(new URL(t+".json",F0));return new V0(JSON.parse(new TextDecoder().decode(f)))}catch{return}}class U0{lang;latin;pairs;constructor(t,e,f){this.lang=t;this.latin=e;this.pairs=f}cost(t,e){let f=Y(t),a=Y(e),l,g,s,y,m=!1;if(f!==a){let[_,i]=f?[t,e]:[e,t];if(!(l=this.latin))return;g=C(_),s=L(i),m=!0,y=Math.max(g.length,1)}else if(!f){let _=o0(t),i=o0(e);if(!_||!i||_===i)return;if(_>i)[t,e]=[e,t],[_,i]=[i,_];if(!(l=this.pairs.get(`${_}-${i}`)))return;g=L(t),s=L(e),y=Math.max(g.length,s.length,1)}else return;let h=l.align(l.ids(g),l.ids(s),m);return U((20*h+y)/(2*y))}calibrations(t,e){let f=new Map;for(let h of e){let _=this.cost(t,h);if(_!==void 0)f.set(h,_)}let a=new Map;if(!f.size)return a;let l=Math.max(Y(t)?C(t).length:L(t).length,1),g=1/0,s=1/0;for(let h of f.values())g=Math.min(g,h),s=Math.min(s,h*l);let y=new Map,m=0;for(let[h,_]of f){let i=v0(U((_*l-s)/F.posterior_temperature));y.set(h,i),m+=i}for(let[h,_]of f){let i=U((100*v0(_-g)+500000)/1e6),Q=U((100*y.get(h)+U(m/2))/m);a.set(h,i+Q)}return a}wordSim(t,e,f,a,l){let g=new Set(l.keys(e)),s=l.keys(t).some((_)=>g.has(_))?1:0,y,m;if(Y(t)&&Y(e))m=J(C(t),C(e)),y=2*m;else if(f?.has(e))y=100*f.get(e),m=l.vowelRatio(t,e);else if(this.cost(t,e)!==void 0)y=20000,m=l.vowelRatio(t,e);else m=J(l.fineKey(t),l.fineKey(e)),y=2*m;let h=2*a.key*1e4*s+a.cost*y+2*a.vowel*m;return a.round?P0(h,200*a.div):U(h/(200*a.div))}}function Q0(t,e){let f=t.join("");return f?I(f).filter((a)=>[...a].length>=e):[]}function Z0(t,e=I){return s0(t.map(e).filter((f)=>f.length),"\x1F")}class q{scorer;words;n;df=new Map;maps={strict:new Map,joined:new Map,loose:new Map,near:new Map};p;constructor(t,e,f){this.scorer=t;let a=F.profiles[f];if(!a)throw Error(`phonetic-search: unknown profile "${f}" ("names" or "text")`);this.p=a,this.n=e.length,this.words=e.map(E);let l=new D,g=(y)=>l.keys(y);for(let y of this.words)for(let m of new Set(y.flatMap(g)))this.df.set(m,(this.df.get(m)??0)+1);let s=(y,m,h)=>{let _=y.get(m);if(!_)y.set(m,[h]);else if(_[_.length-1]!==h)_.push(h)};this.words.forEach((y,m)=>{for(let h of Z0(y,g))s(this.maps.strict,h,m);for(let h of l.joinedOf(y,i0))s(this.maps.joined,h,m);for(let h of l.joinedOf(y,F.loose_joined_min_classes))s(this.maps.loose,h,m);for(let h of y)for(let _ of l.keys(h)){if(this.common(_))continue;s(this.maps.near,_,m);for(let i of z0(_))s(this.maps.near,i,m)}})}common(t){let e=this.p.stop_permille;return e!==null&&this.n>=this.p.stop_min_names&&(this.df.get(t)??0)*1000>this.n*e}weight(t,e){let f=0;for(let a of e.keys(t))f=Math.max(f,w0(this.n,Math.max(this.df.get(a)??0,1)));return f}candidates(t){let e=new Set;for(let f of Z0(t))for(let a of this.maps.strict.get(f)??[])e.add(a);if(!e.size)for(let f of Q0(t,i0))for(let a of this.maps.joined.get(f)??[])e.add(a);for(let f of Q0(t,F.loose_joined_min_classes))for(let a of this.maps.loose.get(f)??[])e.add(a);for(let f of t)for(let a of I(f)){if(this.common(a))continue;for(let l of[a,...z0(a)])for(let g of this.maps.near.get(l)??[])e.add(g)}return e}nameScore(t,e,f,a){let l=0,g=0;for(let[y,m,h]of[[t,e,!0],[e,t,!1]])for(let _ of y){let i=this.weight(_,a);g+=i;let Q=0;for(let $ of m)Q=Math.max(Q,h?f(_,$):f($,_));l+=i*Q}let s=g?U((l+U(g/2))/g):0;if(t.length!==e.length&&t.length&&e.length){let y=t.join(""),m=e.join(""),h=new Set(a.joinedOf([y],F.loose_joined_min_classes)),_=a.joinedOf([m],F.loose_joined_min_classes).some((O)=>h.has(O))?1:0,i,Q;if(this.scorer.cost(y,m)!==void 0)i=1e4,Q=a.vowelRatio(y,m);else i=Q=J(a.fineKey(y),a.fineKey(m));let $=this.p,T=$.key*1e4*_+$.cost*i+$.vowel*Q;s=Math.max(s,$.round?P0(T,100*$.div):U(T/(100*$.div)))}return s}scoreAll(t,e){let f=E(t),a=[...new Set(e.flatMap((m)=>this.words[m]))],l=new Map(f.map((m)=>[m,this.scorer.calibrations(m,a)])),g=new D,s=new Map,y=(m,h)=>{let _=s.get(m);if(!_)s.set(m,_=new Map);let i=_.get(h);if(i===void 0)i=this.scorer.wordSim(m,h,l.get(m),this.p,g),_.set(h,i);return i};return e.map((m)=>({name:m,score:this.nameScore(f,this.words[m],y,g)}))}search(t,e=0){let f=[...this.candidates(E(t))].sort((a,l)=>a-l);return this.scoreAll(t,f).filter((a)=>a.score>=e).sort((a,l)=>l.score-a.score)}}async function W1(t,e={}){let f=w(t),a=e.fetcher??l1,l=[...new Set(e.scripts??[])].sort(),g=new Map,[s]=await Promise.all([H0(`latin/${f}`,a),...l.flatMap((m,h)=>l.slice(h+1).map(async(_)=>{let i=await H0(`pairs/${m}-${_}`,a);if(i)g.set(`${m}-${_}`,i)}))]),y=new U0(f,s,g);return{lang:f,index:(m,h="names")=>new q(y,m,h),score:(m,h,_="names")=>new q(y,h,_).scoreAll(m,h.map((i,Q)=>Q)).map((i)=>i.score)}}export{W1 as loadSearch,j1 as THRESHOLDS,K1 as SEARCH_VERSION,q as Index,a1 as CDN};
|
package/dist/phonetic.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var T={version:"2026-10-11.7",folds:["as-case-narrow","as-w-glide-ni","bn-case","bn-ng","brahmic-av-u","brahmic-v-glide-u","dd-r","deva-case-long","deva-ng","deva-ni","deva-vh","drop-vowels","drop-y","flap-r","gom-case","gu-case","latin-initials","latin-ngh","latin-w-u","latin-zh-h","latin-zh-l","ml-case","ml-tta-add","nasal-all","ng-k","or-case","retroflex","s-c","sa-case","sat-o-a","sat-w-u","sd-implosive","ta-case","ta-initial-h","ta-k-h","ta-name-end","ta-pro-i","ta-pro-u","ta-tc-k","te-case","ur-a-e","ur-a-i","ur-a-u","ur-h-asp","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[["റ്റ","ത്ത"],["ന്റ","ന്ത"],["ൻറ","ന്ത"]]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ",ॻ:"k",ॼ:"c",ॾ:"ṭ",ॿ:"p"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},meetei:{ranges:[[43744,43775],[43968,44031]],letters:{ꯀ:"k",ꯁ:"s",ꯂ:"l",ꯃ:"m",ꯄ:"p",ꯅ:"n",ꯆ:"c",ꯇ:"t",ꯈ:"k",ꯉ:"ṅ",ꯊ:"t",ꯋ:"v",ꯌ:"y",ꯍ:"h",ꯎ:"u",ꯏ:"i",ꯐ:"p",ꯑ:"a",ꯒ:"k",ꯓ:"c",ꯔ:"r",ꯕ:"p",ꯖ:"c",ꯗ:"t",ꯘ:"k",ꯙ:"t",ꯚ:"p",ꯛ:"k",ꯜ:"l",ꯝ:"m",ꯞ:"p",ꯟ:"n",ꯠ:"t",ꯡ:"ṅ",ꯢ:"i","ꯣ":"o","ꯤ":"i","ꯥ":"a","ꯦ":"e","ꯧ":"o","ꯨ":"u","ꯩ":"e","ꯪ":"ṁ",ꫠ:"e",ꫡ:"o",ꫢ:"c",ꫣ:"ñ",ꫤ:"ṭ",ꫥ:"ṭ",ꫦ:"ṭ",ꫧ:"ṭ",ꫨ:"ṇ",ꫩ:"s",ꫪ:"s","ꫫ":"i","ꫬ":"u","ꫭ":"e","ꫮ":"o","ꫯ":"o"}},ol_chiki:{from:7248,to:7295,letters:{ᱚ:"o",ᱛ:"t",ᱜ:"k",ᱝ:"ṅ",ᱞ:"l",ᱟ:"a",ᱠ:"k",ᱡ:"c",ᱢ:"m",ᱣ:"v",ᱤ:"i",ᱥ:"s",ᱦ:"h",ᱧ:"ñ",ᱨ:"r",ᱩ:"u",ᱪ:"c",ᱫ:"t",ᱬ:"ṇ",ᱭ:"y",ᱮ:"e",ᱯ:"p",ᱰ:"ṭ",ᱱ:"n",ᱲ:"ṛ",ᱳ:"o",ᱴ:"ṭ",ᱵ:"p",ᱶ:"v",ᱷ:"h",ᱸ:"ṁ"},aspiration:"ᱷ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},class_map:{m:"n",s:"c",v:"p",w:"p",ñ:"n",ĝ:"k",ḍ:"t",ṁ:"n",ṅ:"n",ṇ:"n",ṛ:"t",ṭ:"t"},vowels:"aeiou",steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!0,"drop-y-after-i":!1,"drop-vowels":!0,"drop-final-vowel":!1},branches:[{from:2432,to:2559,class:"v",also:"",after:"aiueo",not_before:"i"},{from:2432,to:2559,class:"ṁ",also:"ṅ"},{from:2304,to:3455,class:"v",also:"u",after:"aṁ",not_before:"aieo"},{from:2304,to:3455,class:"v",also:"",after:"kcṭḍtpnmlrsyhṅñṇ",before:"u"},{from:2304,to:3455,class:"ḍ",also:"r",after:"aiueokcṭḍtpnmlrsvyhṅñṇṁ"},{from:2304,to:2431,class:"ṁ",also:"ṅ"},{from:2304,to:2431,class:"h",also:"",after:"v"},{from:1536,to:7295,class:"ṛ",also:"r"},{from:0,to:127,class:"ĝ",also:"h"},{from:0,to:127,class:"w",also:"u"},{from:0,to:127,class:"h",also:"",after:"c"},{from:0,to:127,class:"c",also:"l",before:"h"},{from:7248,to:7295,class:"o",also:"a",after:"^"},{from:7248,to:7295,class:"v",also:"",after:"aiueo"},{from:2944,to:3071,class:"k",also:"h"},{from:2944,to:3071,class:"i",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"u",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"ṭ",also:"k",before:"c"},{from:1536,to:1791,class:"a",also:"e",after:"^"},{from:1536,to:1791,class:"a",also:"i",after:"^"},{from:1536,to:1791,class:"a",also:"u",after:"^"},{from:1536,to:1791,class:"h",also:"",after:"kcṭtpnmlrsvṁ"},{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[{from:2944,to:3071,also:"h"}],joined:{min_classes:6,when:"the strict keys find nobody"},digit_zeros:[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,7248,44016],initials:{a:["e"],b:["bi"],c:["si"],d:["di"],e:["i"],f:["ef"],g:["ji"],h:["ech"],i:["aai","ai"],j:["je"],k:["ke"],l:["el"],m:["em"],n:["en"],o:["o"],p:["pi"],q:["kyu"],r:["ar"],s:["es"],t:["ti"],u:["yu"],v:["vi"],w:["dablyu"],x:["eks"],y:["vai","oy"],z:["jed","zed","iset"]},max_keys:32,suffixes:[{from:2432,to:2559,endings:["ৰপৰা","ৱে","লৈ","ৰ"]},{from:2432,to:2559,endings:["য়ের","দের","এর","ের","কে","তে"]},{from:2304,to:2431,endings:["ांच्या","मध्ये","च्या","ांना"]},{from:2304,to:2431,endings:["नि"]},{from:2304,to:2431,endings:["ाचें","ाईन","ाचो","ाची","ान","ीन","ाक"]},{from:2688,to:2815,endings:["માં","નું","થી","ના","ની","ને"]},{from:3328,to:3455,endings:["യ്ക്ക്","ന്റെ","യുടെ","യിലെ","ക്ക്","ുടെ","യിൽ","ിലെ","ോട്","ിന്","ിൽ","നെ","യെ","ും"]},{from:2816,to:2943,endings:["ଙ୍କର","ଙ୍କୁ","ଙ୍କ","ରେ","ରୁ","କୁ"]},{from:2304,to:2431,endings:["स्य"]},{from:2944,to:3071,endings:["ுக்கு","யின்","வின்","க்கு","யில்","ிடம்","ுடன்","ின்","ில்","ால்","ும்"]},{from:2944,to:3071,endings:["ன்","ர்"]},{from:3072,to:3199,endings:["యొక్క","లోని","గారు","లో","కు","కి","ని","తో","ను"]}],titles:["adv","advocate","begum","capt","col","dr","gen","janab","km","kumari","lt","maj","maulana","miss","mr","mrs","ms","prof","sardar","selvi","sh","shree","shri","shrimati","smt","sri","sushri","thiru","thirumathi","tmt","بیگم","جناب","محترمہ","مولانا","ڈاکٹر","एडवोकेट","कु","कुमारी","डा","डॉ","डॉक्टर","डॉ०","प्रो","प्रोफेसर","मौलाना","श्री","श्रीमती","श्रीमान","सरदार","सुश्री","ড","ডঃ","ডা","ডাঃ","শ্রী","শ্রীমতী","শ্ৰী","শ্ৰীমতী","ਡਾ","ਬੀਬੀ","ਸਰਦਾਰ","ਸ਼੍ਰੀ","ਸ਼੍ਰੀਮਤੀ","ਸ੍ਰੀ","ડૉ","ડો","શ્રી","શ્રીમતી","ଡ","ଡଃ","ଶ୍ରୀ","ଶ୍ରୀମତୀ","செல்வி","டா","டாக்டர்","திரு","திருமதி","முனைவர்","ஸ்ரீ","డా","డాక్టర్","శ్రీ","శ్రీమతి","ಡಾ","ಡಾಕ್ಟರ್","ಶ್ರೀ","ಶ್ರೀಮತಿ","ഡോ","ഡോക്ടർ","ശ്രീ","ശ്രീമതി"]};var z={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var I2=z.unicode,N=1,v2=2,y2=4,O=8,U=new Map,J=new Map,S=new Map;for(let a=0;a<z.ranges.length;a+=2)for(let f=z.ranges[a];f<=z.ranges[a+1];f++)U.set(f,0);var D=(a,f)=>{for(let v=0;v<a.length;v+=2)for(let q=a[v];q<=a[v+1];q++)U.set(q,U.get(q)|f)};D(z.mn,N);D(z.m,v2);D(z.l,y2);for(let a=0;a<z.ccc.length;a+=3)for(let f=z.ccc[a];f<=z.ccc[a+1];f++)U.set(f,U.get(f)|z.ccc[a+2]<<4);var q2=new Set(z.excl);for(let[a,f]of Object.entries(z.decomp)){let v=Number(a);if(J.set(v,f),f.length===2&&!q2.has(v))S.set(f[0]*1114112+f[1],v),U.set(f[1],U.get(f[1])|O)}var j=(a)=>String.fromCodePoint(a);function L(a,f,v){let q="";for(let G=f;G<v;G+=8192)q+=String.fromCodePoint(...a.slice(G,Math.min(v,G+8192)));return q}function l(a){let f=U.get(a);return f===void 0?/\p{Mn}/u.test(j(a)):(f&N)!==0}function W(a){if(!U.has(a))return Array.from(j(a).normalize("NFD"),(v)=>v.codePointAt(0));let f=J.get(a);return f?f.flatMap(W):[a]}var F2=(a,f)=>a>>4===0&&(a&O)===0&&!J.has(f);function x(a){let f=Array.from(a,(q)=>q.codePointAt(0)),v="";for(let q=0;q<f.length;){let G=q+1,V=U.has(f[q]);for(;G<f.length;G++){let Z=U.get(f[G]);if(Z===void 0)V=!1;else if(F2(Z,f[G]))break}v+=V?G2(f,q,G):L(f,q,G).normalize("NFC"),q=G}return v}function G2(a,f,v){let q=0,G=!0;for(let H=f;H<v&&G;H++){let I=U.get(a[H]),$=I>>4;if(J.has(a[H])||(I&O)!==0||$!==0&&$<q)G=!1;q=$}if(G)return L(a,f,v);let V=[];for(let H=f;H<v;H++)V.push(...W(a[H]));let Z=(H)=>U.get(H)>>4;for(let H=0;H<V.length;){if(Z(V[H])===0){H++;continue}let I=H;while(I<V.length&&Z(V[I])!==0)I++;let $=V.slice(H,I).sort((R,B)=>Z(R)-Z(B));for(let R=0;R<$.length;R++)V[H+R]=$[R];H=I}let P=[],K=-1;for(let H of V){let I=Z(H);if(K>=0&&(P.length-1===K||Z(P[P.length-1])<I)){let $=S.get(P[K]*1114112+H);if($!==void 0){P[K]=$;continue}}if(I===0)K=P.length;P.push(H)}return L(P,0,P.length)}var M="\x00";function H2(a){let f=a.brahmic,v=Array(128);for(let[k,m]of Object.entries(f.class_by_offset))v[Number(k)]=m;let q=new Map(Object.entries(a.extra)),G=new Map(Object.entries(a.urdu.letters)),V=new Map(Object.entries(a.meetei.letters)),Z=new Map(Object.entries(a.ol_chiki.letters)),P=Array(128);for(let[k,m]of Object.entries(a.latin.letters))P[k.charCodeAt(0)]=m;let K=a.latin.groups,H=a.latin.w_ambiguous_unless_before,I=new Map(Object.entries(a.class_map)),$=new Set(a.vowels),R=a.steps,B=a.urdu;function i(k){return a.meetei.ranges.some(([m,h])=>k>=m&&k<=h)}let c=a.brahmic.rewrite??[],n=a.brahmic.rewrite_bases??[],s=a.initial_branches??[];function u(k){for(let[g,y]of c)k=k.replaceAll(g,y);let m="",h=-1;for(let g=0;g<k.length;g++){let y=k[g],_=q.get(y);if(_!==void 0){m+=_,h=-1;continue}let F=k.charCodeAt(g);if(F<f.from||F>f.to)continue;let Q=F&127,Y=v[Q];if(Q===f.nukta_offset&&f.flap_offsets.includes(h)&&m)m=m.slice(0,-1)+f.flap_class;else if(Q===f.virama_offset);else if(Q===f.candrabindu_offset)m+=f.candrabindu_class;else if(Y!==void 0)m+=Y;if(Y!==void 0)h=Q;else if(Q!==f.nukta_offset&&Q!==f.virama_offset)h=-1}return m}function e(k){let m="",h=0;a:while(h<k.length){for(let[y,_]of K)if(k.startsWith(y,h)){m+=_,h+=y.length;continue a}let g=k.charCodeAt(h);if(g===99){let y=k[h+1];m+=y==="e"||y==="i"||y==="y"?"s":"k"}else if(g===119&&h>0&&!H.includes(k[h+1]??" "))m+="w";else m+=P[g]??"";h++}return m}function o(k){let m=k[0]===B.ain?"a":"";for(let g=0;g<k.length;g++){let y=k[g];if(y===B.waw&&g>0&&!(g+1<k.length&&B.waw_v_before.includes(k[g+1])))m+="w";else m+=G.get(y)??""}let h=k.length;if(h>1&&B.final_he.includes(k[h-1])&&!B.final_he_h_after.includes(k[h-2]))m=m.slice(0,-1)+"a";return m}function p(k){let m="";for(let h of k){if(h===a.ol_chiki.aspiration&&m&&!$.has(m[m.length-1]))continue;m+=Z.get(h)??""}return m}function w(k){let m="";for(let h of k)m+=V.get(h)??"";return m}function d(k){let m=!0;for(let y=0;y<k.length;y++)if(k.charCodeAt(y)>127){m=!1;break}if(m)return e(k);let h=!1,g=!1;for(let y=0;y<k.length;y++){let _=k.charCodeAt(y);if(_>=B.from&&_<=B.to)return o(k);if(_>=a.ol_chiki.from&&_<=a.ol_chiki.to)h=!0;else if(i(_))g=!0}if(h)return p(k);if(g)return w(k);return u(k)}function r(k){if(R["ng-k"]){let _="";for(let F=0;F<k.length;F++)if(_+=k[F],k[F]==="ṅ"&&k[F+1]!=="k")_+="k";k=_}let m="";for(let _=0;_<k.length;_++)m+=I.get(k[_])??k[_];if(!m)return m;let h=m[0];if(R["initial-vowels-alike"]&&$.has(h))h="a";let g=h;for(let _=1;_<m.length;_++){let F=m[_];if(R["drop-h"]&&F==="h")continue;if(R["drop-y"]&&F==="y")continue;if(R["drop-vowels"]&&$.has(F))continue;g+=F}if(R["drop-final-vowel"]&&g.length>1&&$.has(g[g.length-1]))g=g.slice(0,-1);let y=g[0];for(let _=1;_<g.length;_++)if(g[_]!==g[_-1])y+=g[_];return y}function a2(k,m,h){let g=m>0?k[m-1]:"^",y=m+1<k.length?k[m+1]:"$";return(h.after===void 0||h.after.includes(g))&&(h.before===void 0||h.before.includes(y))&&!(h.not_before??"").includes(y)}function f2(k){let m=d(k),h=[m];for(let g of a.branches){if(!m.includes(g.class))continue;let y=!1;for(let _=0;_<k.length;_++){let F=k.charCodeAt(_);if(F>=g.from&&F<=g.to){y=!0;break}}if(!y)continue;for(let _=0;_<m.length;_++)if(m[_]===g.class&&h.length*2<=a.max_keys&&a2(m,_,g)){let F=g.also||M;h=h.concat(h.map((Q)=>Q.slice(0,_)+F+Q.slice(_+1)))}}for(let g of s){if(!m||!$.has(m[0])||h.length*2>a.max_keys)continue;let y=!1;for(let _=0;_<k.length;_++){let F=k.charCodeAt(_);if(F>=g.from&&F<=g.to){y=!0;break}}if(y)h=h.concat(h.map((_)=>g.also+_.slice(1)))}return h.map((g)=>g.replaceAll(M,""))}function m2(k){let m="";for(let h=0;h<k.length;h++){let g=k.charCodeAt(h),y=a.digit_zeros.find((_)=>g>=_&&g<=_+9);if(y===void 0)return;m+=String.fromCharCode(48+g-y)}return m||void 0}let k2=new Map(Object.entries(a.initials??{}));return function(m){let h=m2(m);if(h!==void 0)return[h];let g=[m,...k2.get(m)??[]],y=m.charCodeAt(0);for(let F of a.suffixes){if(y<F.from||y>F.to)continue;for(let Q of F.endings)if(m.endsWith(Q)&&m.length-Q.length>=2){g.push(m.slice(0,-Q.length));break}}if(n.length)for(let F of g.slice()){let Q=F;for(let[Y,g2]of n)Q=Q.replaceAll(Y,g2);if(Q!==F)g.push(Q)}let _=new Set;for(let F of g)for(let Q of f2(F))_.add(r(Q));return _.delete(""),[..._].sort()}}var X=H2(T),Q2=new Set(T.titles);function E(a){let f=[];for(let q of a){let G=0;while(G<q.length&&Q2.has(q[G]))G++;f.push(...q.slice(G))}let v=a.flat();return f.length||!v.length?f:v.slice(-1)}var t=256;function A(a){let f="";for(let v of a)for(let q of W(v.codePointAt(0))){if(l(q))continue;if(q>=128)return x(a);f+=String.fromCodePoint(q)}return f.toLowerCase()}function b(a,f){let v=[""];for(let q of a){let G=[];for(let V of v)for(let Z of q)if(G.length<t)G.push(V?V+f+Z:Z);v=G}return v[0]===""?[]:v}var Y2=T.version;function J2(a){let f=A(a);return f?X(f):[]}function V2(a){return a.replace(/\([^)]*\)/g," ").split(/[^\S\ufeff]|[\x1c-\x1f\x85.\-,'’]/u).filter(Boolean)}var C=(a)=>E(a.replace(/\([^)]*\)/g," ").split(",").map((f)=>V2(f).map(A).filter(Boolean)));function W2(a){return b(C(a).map(X).filter((f)=>f.length)," ")}var Z2=T.joined.min_classes;function C2(a){let f=C(a).join("");if(!f)return[];return X(f).filter((v)=>[...v].length>=Z2)}function L2(a,f){let v=C(a),q=C(f);if(!v.length||v.length!==q.length)return!1;return v.every((G,V)=>{let Z=new Set(X(q[V]));return X(G).some((P)=>Z.has(P))})}export{V2 as words,W2 as nameKeys,L2 as match,J2 as keys,C2 as joinedKeys,Y2 as RULES_VERSION,t as MAX_NAME_KEYS,Z2 as JOINED_MIN_CLASSES};
|
|
1
|
+
var T={version:"2026-10-11.8",folds:["as-case-narrow","as-w-glide-ni","bn-case","bn-ng","brahmic-av-u","brahmic-v-glide-u","dd-r","deva-case-long","deva-ng","deva-ni","deva-vh","drop-vowels","drop-y","flap-r","gom-case","gu-case","latin-initials","latin-ngh","latin-w-u","latin-zh-h","latin-zh-l","ml-case","ml-tta-add","nasal-all","ng-k","or-case","retroflex","s-c","sa-case","sat-o-a","sat-w-u","sd-implosive","ta-case","ta-initial-h","ta-k-h","ta-name-end","ta-pro-i","ta-pro-u","ta-tc-k","te-case","ur-a-e","ur-a-i","ur-a-u","ur-h-asp","ur-hh","ur-w-u","v-b"],brahmic:{from:2304,to:3455,class_by_offset:{"2":"ṁ","5":"a","6":"a","7":"i","8":"i","9":"u","10":"u","11":"r","12":"l","13":"e","14":"e","15":"e","16":"e","17":"o","18":"o","19":"o","20":"o","21":"k","22":"k","23":"k","24":"k","25":"ṅ","26":"c","27":"c","28":"c","29":"c","30":"ñ","31":"ṭ","32":"ṭ","33":"ḍ","34":"ḍ","35":"ṇ","36":"t","37":"t","38":"t","39":"t","40":"n","41":"n","42":"p","43":"p","44":"p","45":"p","46":"m","47":"y","48":"r","49":"r","50":"l","51":"l","52":"l","53":"v","54":"s","55":"s","56":"s","57":"h","62":"a","63":"i","64":"i","65":"u","66":"u","67":"r","68":"r","69":"e","70":"e","71":"e","72":"e","73":"o","74":"o","75":"o","76":"o","87":"o","96":"r","97":"l","98":"l","99":"l"},virama_offset:77,candrabindu_offset:1,candrabindu_class:"ṁ",nukta_offset:60,flap_offsets:[33,34],flap_class:"ṛ",rewrite:[],rewrite_bases:[["റ്റ","ത്ത"],["ന്റ","ന്ത"],["ൻറ","ന്ത"]]},extra:{ৎ:"t",ৰ:"r",ৱ:"v",ୱ:"v","ੰ":"ṁ","ਂ":"ṁ",ൺ:"ṇ",ൻ:"n",ർ:"r",ൽ:"l",ൾ:"l",ൿ:"k",ൔ:"m",ൕ:"y",ൖ:"l",ड़:"ṛ",ढ़:"ṛ",ড়:"ṛ",ঢ়:"ṛ",ଡ଼:"ṛ",ଢ଼:"ṛ",ੜ:"ṛ",ॻ:"k",ॼ:"c",ॾ:"ṭ",ॿ:"p"},urdu:{from:1536,to:1791,letters:{ا:"a",آ:"a",أ:"a",ب:"p",پ:"p",ت:"t",ٹ:"ṭ",ث:"s",ج:"c",چ:"c",ح:"h",خ:"k",د:"t",ڈ:"ṭ",ذ:"c",ر:"r",ڑ:"ṛ",ز:"c",ژ:"c",س:"s",ش:"s",ص:"s",ض:"c",ط:"t",ظ:"c",غ:"k",ف:"p",ق:"k",ک:"k",ك:"k",گ:"k",ل:"l",م:"m",ن:"n",ں:"ṁ",و:"v",ؤ:"u",ہ:"h",ه:"h",ۃ:"a",ی:"y",ي:"y",ى:"y",ئ:"y",ے:"e",ۓ:"e",ٻ:"p",ڀ:"p",ٺ:"ṭ",ٽ:"ṭ",ٿ:"t",ڄ:"c",ڃ:"ñ",ڇ:"c",ڊ:"ṭ",ڌ:"t",ڍ:"ṭ",ڏ:"t",ڙ:"ṛ",ڦ:"p",ڪ:"k",ڱ:"ṅ",ڳ:"k",ڻ:"ṇ",ٲ:"a",ٳ:"a",ۆ:"o",ۄ:"o",ێ:"e",ؠ:"y",ھ:"h"},ain:"ع",waw:"و",waw_v_before:"اآ",final_he:"ہه",final_he_h_after:"اآو"},meetei:{ranges:[[43744,43775],[43968,44031]],letters:{ꯀ:"k",ꯁ:"s",ꯂ:"l",ꯃ:"m",ꯄ:"p",ꯅ:"n",ꯆ:"c",ꯇ:"t",ꯈ:"k",ꯉ:"ṅ",ꯊ:"t",ꯋ:"v",ꯌ:"y",ꯍ:"h",ꯎ:"u",ꯏ:"i",ꯐ:"p",ꯑ:"a",ꯒ:"k",ꯓ:"c",ꯔ:"r",ꯕ:"p",ꯖ:"c",ꯗ:"t",ꯘ:"k",ꯙ:"t",ꯚ:"p",ꯛ:"k",ꯜ:"l",ꯝ:"m",ꯞ:"p",ꯟ:"n",ꯠ:"t",ꯡ:"ṅ",ꯢ:"i","ꯣ":"o","ꯤ":"i","ꯥ":"a","ꯦ":"e","ꯧ":"o","ꯨ":"u","ꯩ":"e","ꯪ":"ṁ",ꫠ:"e",ꫡ:"o",ꫢ:"c",ꫣ:"ñ",ꫤ:"ṭ",ꫥ:"ṭ",ꫦ:"ṭ",ꫧ:"ṭ",ꫨ:"ṇ",ꫩ:"s",ꫪ:"s","ꫫ":"i","ꫬ":"u","ꫭ":"e","ꫮ":"o","ꫯ":"o"}},ol_chiki:{from:7248,to:7295,letters:{ᱚ:"o",ᱛ:"t",ᱜ:"k",ᱝ:"ṅ",ᱞ:"l",ᱟ:"a",ᱠ:"k",ᱡ:"c",ᱢ:"m",ᱣ:"v",ᱤ:"i",ᱥ:"s",ᱦ:"h",ᱧ:"ñ",ᱨ:"r",ᱩ:"u",ᱪ:"c",ᱫ:"t",ᱬ:"ṇ",ᱭ:"y",ᱮ:"e",ᱯ:"p",ᱰ:"ṭ",ᱱ:"n",ᱲ:"ṛ",ᱳ:"o",ᱴ:"ṭ",ᱵ:"p",ᱶ:"v",ᱷ:"h",ᱸ:"ṁ"},aspiration:"ᱷ"},latin:{groups:[["ngh","nĝ"],["chh","c"],["ch","c"],["jh","c"],["kh","k"],["gh","k"],["th","t"],["dh","t"],["ph","p"],["bh","p"],["sh","s"],["ck","k"],["aa","a"],["ai","e"],["ei","e"],["au","o"],["ee","i"],["oo","u"],["x","ks"]],letters:{a:"a",e:"e",i:"i",o:"o",u:"u",k:"k",g:"k",q:"k",j:"c",z:"c",t:"t",d:"t",n:"n",m:"m",p:"p",b:"p",f:"p",v:"v",w:"v",y:"y",r:"r",l:"l",s:"s",h:"h"},w_ambiguous_unless_before:"aeiou"},class_map:{m:"n",s:"c",v:"p",w:"p",ñ:"n",ĝ:"k",ḍ:"t",ṁ:"n",ṅ:"n",ṇ:"n",ṛ:"t",ṭ:"t"},vowels:"aeiou",steps:{"ng-k":!0,"initial-vowels-alike":!1,"drop-h":!1,"drop-y":!0,"drop-y-after-i":!1,"drop-vowels":!0,"drop-final-vowel":!1},branches:[{from:2432,to:2559,class:"v",also:"",after:"aiueo",not_before:"i"},{from:2432,to:2559,class:"ṁ",also:"ṅ"},{from:2304,to:3455,class:"v",also:"u",after:"aṁ",not_before:"aieo"},{from:2304,to:3455,class:"v",also:"",after:"kcṭḍtpnmlrsyhṅñṇ",before:"u"},{from:2304,to:3455,class:"ḍ",also:"r",after:"aiueokcṭḍtpnmlrsvyhṅñṇṁ"},{from:2304,to:2431,class:"ṁ",also:"ṅ"},{from:2304,to:2431,class:"h",also:"",after:"v"},{from:1536,to:7295,class:"ṛ",also:"r"},{from:0,to:127,class:"ĝ",also:"h"},{from:0,to:127,class:"w",also:"u"},{from:0,to:127,class:"h",also:"",after:"c"},{from:0,to:127,class:"c",also:"l",before:"h"},{from:7248,to:7295,class:"o",also:"a",after:"^"},{from:7248,to:7295,class:"v",also:"",after:"aiueo"},{from:2944,to:3071,class:"k",also:"h"},{from:2944,to:3071,class:"i",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"u",also:"",after:"^",before:"rl"},{from:2944,to:3071,class:"ṭ",also:"k",before:"c"},{from:1536,to:1791,class:"a",also:"e",after:"^"},{from:1536,to:1791,class:"a",also:"i",after:"^"},{from:1536,to:1791,class:"a",also:"u",after:"^"},{from:1536,to:1791,class:"h",also:"",after:"kcṭtpnmlrsvṁ"},{from:1536,to:1791,class:"w",also:"u"}],initial_branches:[{from:2944,to:3071,also:"h"}],joined:{min_classes:6,when:"the strict keys find nobody"},digit_zeros:[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,7248,44016],initials:{a:["e"],b:["bi"],c:["si"],d:["di"],e:["i"],f:["ef"],g:["ji"],h:["ech"],i:["aai","ai"],j:["je"],k:["ke"],l:["el"],m:["em"],n:["en"],o:["o"],p:["pi"],q:["kyu"],r:["ar"],s:["es"],t:["ti"],u:["yu"],v:["vi"],w:["dablyu"],x:["eks"],y:["vai","oy"],z:["jed","zed","iset"]},max_keys:32,suffixes:[{from:2432,to:2559,endings:["ৰপৰা","ৱে","লৈ","ৰ"]},{from:2432,to:2559,endings:["য়ের","দের","এর","ের","কে","তে"]},{from:2304,to:2431,endings:["ांच्या","मध्ये","च्या","ांना"]},{from:2304,to:2431,endings:["नि"]},{from:2304,to:2431,endings:["ाचें","ाईन","ाचो","ाची","ान","ीन","ाक"]},{from:2688,to:2815,endings:["માં","નું","થી","ના","ની","ને"]},{from:3328,to:3455,endings:["യ്ക്ക്","ന്റെ","യുടെ","യിലെ","ക്ക്","ുടെ","യിൽ","ിലെ","ോട്","ിന്","ിൽ","നെ","യെ","ും"]},{from:2816,to:2943,endings:["ଙ୍କର","ଙ୍କୁ","ଙ୍କ","ରେ","ରୁ","କୁ"]},{from:2304,to:2431,endings:["स्य"]},{from:2944,to:3071,endings:["ுக்கு","யின்","வின்","க்கு","யில்","ிடம்","ுடன்","ின்","ில்","ால்","ும்"]},{from:2944,to:3071,endings:["ன்","ர்"]},{from:3072,to:3199,endings:["యొక్క","లోని","గారు","లో","కు","కి","ని","తో","ను"]}],titles:["adv","advocate","begum","capt","col","dr","gen","janab","km","kumari","lt","maj","maulana","miss","mr","mrs","ms","prof","sardar","selvi","sh","shree","shri","shrimati","smt","sri","sushri","thiru","thirumathi","tmt","بیگم","جناب","محترمہ","مولانا","ڈاکٹر","एडवोकेट","कु","कुमारी","डा","डॉ","डॉक्टर","डॉ०","प्रो","प्रोफेसर","मौलाना","श्री","श्रीमती","श्रीमान","सरदार","सुश्री","ড","ডঃ","ডা","ডাঃ","শ্রী","শ্রীমতী","শ্ৰী","শ্ৰীমতী","ਡਾ","ਬੀਬੀ","ਸਰਦਾਰ","ਸ਼੍ਰੀ","ਸ਼੍ਰੀਮਤੀ","ਸ੍ਰੀ","ડૉ","ડો","શ્રી","શ્રીમતી","ଡ","ଡଃ","ଶ୍ରୀ","ଶ୍ରୀମତୀ","செல்வி","டா","டாக்டர்","திரு","திருமதி","முனைவர்","ஸ்ரீ","డా","డాక్టర్","శ్రీ","శ్రీమతి","ಡಾ","ಡಾಕ್ಟರ್","ಶ್ರೀ","ಶ್ರೀಮತಿ","ഡോ","ഡോക്ടർ","ശ്രീ","ശ്രീമതി"]};var z={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var I2=z.unicode,N=1,v2=2,y2=4,O=8,U=new Map,J=new Map,S=new Map;for(let a=0;a<z.ranges.length;a+=2)for(let f=z.ranges[a];f<=z.ranges[a+1];f++)U.set(f,0);var D=(a,f)=>{for(let v=0;v<a.length;v+=2)for(let q=a[v];q<=a[v+1];q++)U.set(q,U.get(q)|f)};D(z.mn,N);D(z.m,v2);D(z.l,y2);for(let a=0;a<z.ccc.length;a+=3)for(let f=z.ccc[a];f<=z.ccc[a+1];f++)U.set(f,U.get(f)|z.ccc[a+2]<<4);var q2=new Set(z.excl);for(let[a,f]of Object.entries(z.decomp)){let v=Number(a);if(J.set(v,f),f.length===2&&!q2.has(v))S.set(f[0]*1114112+f[1],v),U.set(f[1],U.get(f[1])|O)}var j=(a)=>String.fromCodePoint(a);function L(a,f,v){let q="";for(let G=f;G<v;G+=8192)q+=String.fromCodePoint(...a.slice(G,Math.min(v,G+8192)));return q}function l(a){let f=U.get(a);return f===void 0?/\p{Mn}/u.test(j(a)):(f&N)!==0}function W(a){if(!U.has(a))return Array.from(j(a).normalize("NFD"),(v)=>v.codePointAt(0));let f=J.get(a);return f?f.flatMap(W):[a]}var F2=(a,f)=>a>>4===0&&(a&O)===0&&!J.has(f);function x(a){let f=Array.from(a,(q)=>q.codePointAt(0)),v="";for(let q=0;q<f.length;){let G=q+1,V=U.has(f[q]);for(;G<f.length;G++){let Z=U.get(f[G]);if(Z===void 0)V=!1;else if(F2(Z,f[G]))break}v+=V?G2(f,q,G):L(f,q,G).normalize("NFC"),q=G}return v}function G2(a,f,v){let q=0,G=!0;for(let H=f;H<v&&G;H++){let I=U.get(a[H]),$=I>>4;if(J.has(a[H])||(I&O)!==0||$!==0&&$<q)G=!1;q=$}if(G)return L(a,f,v);let V=[];for(let H=f;H<v;H++)V.push(...W(a[H]));let Z=(H)=>U.get(H)>>4;for(let H=0;H<V.length;){if(Z(V[H])===0){H++;continue}let I=H;while(I<V.length&&Z(V[I])!==0)I++;let $=V.slice(H,I).sort((R,B)=>Z(R)-Z(B));for(let R=0;R<$.length;R++)V[H+R]=$[R];H=I}let P=[],K=-1;for(let H of V){let I=Z(H);if(K>=0&&(P.length-1===K||Z(P[P.length-1])<I)){let $=S.get(P[K]*1114112+H);if($!==void 0){P[K]=$;continue}}if(I===0)K=P.length;P.push(H)}return L(P,0,P.length)}var M="\x00";function H2(a){let f=a.brahmic,v=Array(128);for(let[k,m]of Object.entries(f.class_by_offset))v[Number(k)]=m;let q=new Map(Object.entries(a.extra)),G=new Map(Object.entries(a.urdu.letters)),V=new Map(Object.entries(a.meetei.letters)),Z=new Map(Object.entries(a.ol_chiki.letters)),P=Array(128);for(let[k,m]of Object.entries(a.latin.letters))P[k.charCodeAt(0)]=m;let K=a.latin.groups,H=a.latin.w_ambiguous_unless_before,I=new Map(Object.entries(a.class_map)),$=new Set(a.vowels),R=a.steps,B=a.urdu;function i(k){return a.meetei.ranges.some(([m,g])=>k>=m&&k<=g)}let c=a.brahmic.rewrite??[],n=a.brahmic.rewrite_bases??[],s=a.initial_branches??[];function u(k){for(let[h,y]of c)k=k.replaceAll(h,y);let m="",g=-1;for(let h=0;h<k.length;h++){let y=k[h],_=q.get(y);if(_!==void 0){m+=_,g=-1;continue}let F=k.charCodeAt(h);if(F<f.from||F>f.to)continue;let Q=F&127,Y=v[Q];if(Q===f.nukta_offset&&f.flap_offsets.includes(g)&&m)m=m.slice(0,-1)+f.flap_class;else if(Q===f.virama_offset);else if(Q===f.candrabindu_offset)m+=f.candrabindu_class;else if(Y!==void 0)m+=Y;if(Y!==void 0)g=Q;else if(Q!==f.nukta_offset&&Q!==f.virama_offset)g=-1}return m}function e(k){let m="",g=0;a:while(g<k.length){for(let[y,_]of K)if(k.startsWith(y,g)){m+=_,g+=y.length;continue a}let h=k.charCodeAt(g);if(h===99){let y=k[g+1];m+=y==="e"||y==="i"||y==="y"?"s":"k"}else if(h===119&&g>0&&!H.includes(k[g+1]??" "))m+="w";else m+=P[h]??"";g++}return m}function o(k){let m=k[0]===B.ain?"a":"";for(let h=0;h<k.length;h++){let y=k[h];if(y===B.waw&&h>0&&!(h+1<k.length&&B.waw_v_before.includes(k[h+1])))m+="w";else m+=G.get(y)??""}let g=k.length;if(g>1&&B.final_he.includes(k[g-1])&&!B.final_he_h_after.includes(k[g-2]))m=m.slice(0,-1)+"a";return m}function p(k){let m="";for(let g of k){if(g===a.ol_chiki.aspiration&&m&&!$.has(m[m.length-1]))continue;m+=Z.get(g)??""}return m}function w(k){let m="";for(let g of k)m+=V.get(g)??"";return m}function d(k){let m=!0;for(let y=0;y<k.length;y++)if(k.charCodeAt(y)>127){m=!1;break}if(m)return e(k);let g=!1,h=!1;for(let y=0;y<k.length;y++){let _=k.charCodeAt(y);if(_>=B.from&&_<=B.to)return o(k);if(_>=a.ol_chiki.from&&_<=a.ol_chiki.to)g=!0;else if(i(_))h=!0}if(g)return p(k);if(h)return w(k);return u(k)}function r(k){if(R["ng-k"]){let _="";for(let F=0;F<k.length;F++)if(_+=k[F],k[F]==="ṅ"&&k[F+1]!=="k")_+="k";k=_}let m="";for(let _=0;_<k.length;_++)m+=I.get(k[_])??k[_];if(!m)return m;let g=m[0];if(R["initial-vowels-alike"]&&$.has(g))g="a";let h=g;for(let _=1;_<m.length;_++){let F=m[_];if(R["drop-h"]&&F==="h")continue;if(R["drop-y"]&&F==="y")continue;if(R["drop-vowels"]&&$.has(F))continue;h+=F}if(R["drop-final-vowel"]&&h.length>1&&$.has(h[h.length-1]))h=h.slice(0,-1);let y=h[0];for(let _=1;_<h.length;_++)if(h[_]!==h[_-1])y+=h[_];return y}function a2(k,m,g){let h=m>0?k[m-1]:"^",y=m+1<k.length?k[m+1]:"$";return(g.after===void 0||g.after.includes(h))&&(g.before===void 0||g.before.includes(y))&&!(g.not_before??"").includes(y)}function f2(k){let m=d(k),g=[m];for(let h of a.branches){if(!m.includes(h.class))continue;let y=!1;for(let _=0;_<k.length;_++){let F=k.charCodeAt(_);if(F>=h.from&&F<=h.to){y=!0;break}}if(!y)continue;for(let _=0;_<m.length;_++)if(m[_]===h.class&&g.length*2<=a.max_keys&&a2(m,_,h)){let F=h.also||M;g=g.concat(g.map((Q)=>Q.slice(0,_)+F+Q.slice(_+1)))}}for(let h of s){if(!m||!$.has(m[0])||g.length*2>a.max_keys)continue;let y=!1;for(let _=0;_<k.length;_++){let F=k.charCodeAt(_);if(F>=h.from&&F<=h.to){y=!0;break}}if(y)g=g.concat(g.map((_)=>h.also+_.slice(1)))}return g.map((h)=>h.replaceAll(M,""))}function m2(k){let m="";for(let g=0;g<k.length;g++){let h=k.charCodeAt(g),y=a.digit_zeros.find((_)=>h>=_&&h<=_+9);if(y===void 0)return;m+=String.fromCharCode(48+h-y)}return m||void 0}let k2=new Map(Object.entries(a.initials??{}));return function(m){let g=m2(m);if(g!==void 0)return[g];let h=[m,...k2.get(m)??[]],y=m.charCodeAt(0);for(let F of a.suffixes){if(y<F.from||y>F.to)continue;for(let Q of F.endings)if(m.endsWith(Q)&&m.length-Q.length>=2){h.push(m.slice(0,-Q.length));break}}if(n.length)for(let F of h.slice()){let Q=F;for(let[Y,h2]of n)Q=Q.replaceAll(Y,h2);if(Q!==F)h.push(Q)}let _=new Set;for(let F of h)for(let Q of f2(F))_.add(r(Q));return _.delete(""),[..._].sort()}}var X=H2(T),Q2=new Set(T.titles);function E(a){let f=[];for(let q of a){let G=0;while(G<q.length&&Q2.has(q[G]))G++;f.push(...q.slice(G))}let v=a.flat();return f.length||!v.length?f:v.slice(-1)}var t=256;function A(a){let f="";for(let v of a)for(let q of W(v.codePointAt(0))){if(l(q))continue;if(q>=128)return x(a);f+=String.fromCodePoint(q)}return f.toLowerCase()}function b(a,f){let v=[""];for(let q of a){let G=[];for(let V of v)for(let Z of q)if(G.length<t)G.push(V?V+f+Z:Z);v=G}return v[0]===""?[]:v}var Y2=T.version;function J2(a){let f=A(a);return f?X(f):[]}function V2(a){return a.replace(/\([^)]*\)/g," ").split(/[^\S\ufeff]|[\x1c-\x1f\x85.\-,'’]/u).filter(Boolean)}var C=(a)=>E(a.replace(/\([^)]*\)/g," ").split(",").map((f)=>V2(f).map(A).filter(Boolean)));function W2(a){return b(C(a).map(X).filter((f)=>f.length)," ")}var Z2=T.joined.min_classes;function C2(a){let f=C(a).join("");if(!f)return[];return X(f).filter((v)=>[...v].length>=Z2)}function L2(a,f){let v=C(a),q=C(f);if(!v.length||v.length!==q.length)return!1;return v.every((G,V)=>{let Z=new Set(X(q[V]));return X(G).some((P)=>Z.has(P))})}export{V2 as words,W2 as nameKeys,L2 as match,J2 as keys,C2 as joinedKeys,Y2 as RULES_VERSION,t as MAX_NAME_KEYS,Z2 as JOINED_MIN_CLASSES};
|
package/dist/romanize.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var J={beam:{names:12,places:8,words:8},bos:"<s>",eos:"</s>",families:{names:{as:{file:"as.names.bin",group:"brahmic",lookup:669,pooled:"names-brahmic.bin",tag:"as"},bn:{file:"bn.names.bin",group:"brahmic",lookup:1785,pooled:"names-brahmic.bin",tag:"bn"},gom:{file:"gom.names.bin",group:"brahmic",lookup:17,pooled:"names-brahmic.bin",tag:"gom"},gu:{file:"gu.names.bin",group:"brahmic",lookup:131,pooled:"names-brahmic.bin",tag:"gu"},hi:{file:"hi.names.bin",group:"brahmic",lookup:1152,pooled:"names-brahmic.bin",tag:"hi"},kn:{file:"kn.names.bin",group:"brahmic",lookup:448,pooled:"names-brahmic.bin",tag:"kn"},ks:{file:"ks.names.bin",group:"arabic",lookup:130,pooled:"names-arabic.bin",tag:"ks"},mai:{file:"mai.names.bin",group:"brahmic",lookup:150,pooled:"names-brahmic.bin",tag:"mai"},ml:{file:"ml.names.bin",group:"brahmic",lookup:908,pooled:"names-brahmic.bin",tag:"ml"},mni:{file:"mni.names.bin",group:"brahmic",lookup:253,pooled:"names-brahmic.bin",tag:"mni"},mr:{file:"mr.names.bin",group:"brahmic",lookup:716,pooled:"names-brahmic.bin",tag:"mr"},ne:{file:"ne.names.bin",group:"brahmic",lookup:146,pooled:"names-brahmic.bin",tag:"ne"},or:{file:"or.names.bin",group:"brahmic",lookup:610,pooled:"names-brahmic.bin",tag:"or"},pa:{file:"pa.names.bin",group:"brahmic",lookup:996,pooled:"names-brahmic.bin",tag:"pa"},sa:{file:"sa.names.bin",group:"brahmic",lookup:66,pooled:"names-brahmic.bin",tag:"sa"},sat:{file:"sat.names.bin",group:"olchiki",lookup:407,pooled:"names-olchiki.bin",tag:"sat"},sd:{file:"sd.names.bin",group:"arabic",lookup:72,pooled:"names-arabic.bin",tag:"sd"},ta:{file:"ta.names.bin",group:"brahmic",lookup:3961,pooled:"names-brahmic.bin",tag:"ta"},te:{file:"te.names.bin",group:"brahmic",lookup:2126,pooled:"names-brahmic.bin",tag:"te"},ur:{file:"ur.names.bin",group:"arabic",lookup:1961,pooled:"names-arabic.bin",tag:"ur"}},places:{as:{file:"as.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"as:w"},bn:{file:"bn.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"bn:p"},brx:{file:"brx.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"brx:w"},doi:{file:"doi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"doi:w"},gom:{file:"gom.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gom:w"},gu:{file:"gu.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gu:w"},hi:{file:"hi.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"hi:p"},kn:{file:"kn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"kn:w"},ks:{file:"ks.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ks:w"},mai:{file:"mai.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mai:w"},ml:{file:"ml.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"ml:p"},mni:{file:"mni.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mni:w"},mr:{file:"mr.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"mr:p"},ne:{file:"ne.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ne:w"},or:{file:"or.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"or:p"},pa:{file:"pa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"pa:w"},sa:{file:"sa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"sa:w"},sat:{file:"sat.places.bin",group:"olchiki",lookup:0,pooled:"places-olchiki.bin",tag:"sat:p"},sd:{file:"sd.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"sd:w"},ta:{file:"ta.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"ta:p"},te:{file:"te.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"te:p"},ur:{file:"ur.places.bin",group:"arabic",lookup:0,pooled:"places-arabic.bin",tag:"ur:p"}},words:{as:{file:"as.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"as:w"},bn:{file:"bn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"bn:w"},brx:{file:"brx.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"brx:w"},doi:{file:"doi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"doi:w"},gom:{file:"gom.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gom:w"},gu:{file:"gu.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gu:w"},hi:{file:"hi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"hi:w"},kn:{file:"kn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"kn:w"},ks:{file:"ks.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ks:w"},mai:{file:"mai.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mai:w"},ml:{file:"ml.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ml:w"},mni:{file:"mni.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mni:w"},mr:{file:"mr.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mr:w"},ne:{file:"ne.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ne:w"},or:{file:"or.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"or:w"},pa:{file:"pa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"pa:w"},sa:{file:"sa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"sa:w"},sd:{file:"sd.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"sd:w"},ta:{file:"ta.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ta:w"},te:{file:"te.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"te:w"},ur:{file:"ur.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ur:w"}}},files:{"as.names.bin":89974,"as.words.bin":235861,"bn.names.bin":182011,"bn.places.bin":126420,"bn.words.bin":377631,"brx.words.bin":203214,"doi.words.bin":48662,"gom.names.bin":9361,"gom.words.bin":324581,"gu.names.bin":38634,"gu.words.bin":369955,"hi.names.bin":162471,"hi.places.bin":426346,"hi.words.bin":469151,"kn.names.bin":73095,"kn.words.bin":273947,"ks.names.bin":36223,"ks.words.bin":445916,"mai.names.bin":40421,"mai.words.bin":381486,"ml.names.bin":133130,"ml.places.bin":108719,"ml.words.bin":342619,"mni.names.bin":12382,"mni.words.bin":133348,"mr.names.bin":119082,"mr.places.bin":195989,"mr.words.bin":328032,"names-arabic.bin":188775,"names-brahmic.bin":600155,"names-olchiki.bin":97591,"ne.names.bin":37468,"ne.words.bin":297278,"or.names.bin":83867,"or.places.bin":60189,"or.words.bin":286451,"pa.names.bin":140045,"pa.words.bin":419146,"places-arabic.bin":1562817,"places-brahmic.bin":3643267,"places-olchiki.bin":157265,"sa.names.bin":24600,"sa.words.bin":244341,"sat.names.bin":73397,"sat.places.bin":60869,"sd.names.bin":11896,"sd.words.bin":463414,"ta.names.bin":295030,"ta.places.bin":219152,"ta.words.bin":244371,"te.names.bin":229077,"te.places.bin":131438,"te.words.bin":295255,"ur.names.bin":192400,"ur.places.bin":225409,"ur.words.bin":540116,"words-arabic.bin":1182374,"words-brahmic.bin":2674546,"words-olchiki.bin":61712},groups:{arabic:[[1536,1791]],brahmic:[[2304,3455],[43744,44031]],olchiki:[[7248,7295]]},max_letters:256,max_n:3,order:3,rules_version:"2026-10-11.2",unify:{from:[2432,3455],mask:127,to_block:2304},unknown_penalty:20,version:1};var B="0.11.0";function K(i){let a=(i??"").toLowerCase().split(/[-_]/)[0];if(a==="kok")return"gom";let o=a.length===3?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".indexOf(a+" "):-1;return o>=0&&o%7===0?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".slice(o+4,o+6):a}var z={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var y2=z.unicode,n2=1,N=2,C=4,H=8,_=new Map,G=new Map,D=new Map;for(let i=0;i<z.ranges.length;i+=2)for(let a=z.ranges[i];a<=z.ranges[i+1];a++)_.set(a,0);var Q=(i,a)=>{for(let o=0;o<i.length;o+=2)for(let b=i[o];b<=i[o+1];b++)_.set(b,_.get(b)|a)};Q(z.mn,n2);Q(z.m,N);Q(z.l,C);for(let i=0;i<z.ccc.length;i+=3)for(let a=z.ccc[i];a<=z.ccc[i+1];a++)_.set(a,_.get(a)|z.ccc[i+2]<<4);var e2=new Set(z.excl);for(let[i,a]of Object.entries(z.decomp)){let o=Number(i);if(G.set(o,a),a.length===2&&!e2.has(o))D.set(a[0]*1114112+a[1],o),_.set(a[1],_.get(a[1])|H)}var W=(i)=>String.fromCodePoint(i);function P(i,a,o){let b="";for(let n=a;n<o;n+=8192)b+=String.fromCodePoint(...i.slice(n,Math.min(o,n+8192)));return b}function X(i){let a=_.get(i);return a===void 0?/\p{M}/u.test(W(i)):(a&N)!==0}function Y(i){let a=_.get(i);return a===void 0?/\p{L}/u.test(W(i)):(a&C)!==0}function M(i){if(!_.has(i))return Array.from(W(i).normalize("NFD"),(o)=>o.codePointAt(0));let a=G.get(i);return a?a.flatMap(M):[i]}var b2=(i,a)=>i>>4===0&&(i&H)===0&&!G.has(a);function Z(i){let a=Array.from(i,(b)=>b.codePointAt(0)),o="";for(let b=0;b<a.length;){let n=b+1,r=_.has(a[b]);for(;n<a.length;n++){let l=_.get(a[n]);if(l===void 0)r=!1;else if(b2(l,a[n]))break}o+=r?r2(a,b,n):P(a,b,n).normalize("NFC"),b=n}return o}function r2(i,a,o){let b=0,n=!0;for(let m=a;m<o&&n;m++){let g=_.get(i[m]),e=g>>4;if(G.has(i[m])||(g&H)!==0||e!==0&&e<b)n=!1;b=e}if(n)return P(i,a,o);let r=[];for(let m=a;m<o;m++)r.push(...M(i[m]));let l=(m)=>_.get(m)>>4;for(let m=0;m<r.length;){if(l(r[m])===0){m++;continue}let g=m;while(g<r.length&&l(r[g])!==0)g++;let e=r.slice(m,g).sort((s,u)=>l(s)-l(u));for(let s=0;s<e.length;s++)r[m+s]=e[s];m=g}let d=[],f=-1;for(let m of r){let g=l(m);if(f>=0&&(d.length-1===f||l(d[d.length-1])<g)){let e=D.get(d[f]*1114112+m);if(e!==void 0){d[f]=e;continue}}if(g===0)f=d.length;d.push(m)}return P(d,0,d.length)}var c=J,G2=c.rules_version;function O2(i="words"){return Object.keys(c.families[i]).sort()}var m2=`https://cdn.jsdelivr.net/gh/micahchoo/indickit@v${B}/romanize/lang/`;async function A(i){let a=await fetch(i);if(!a.ok)throw Error(`romanize: ${i}: ${a.status}`);return a.arrayBuffer()}function s2(i){return async(a)=>{try{return await A(a)}catch{return A(new URL(a.href.slice(i.href.length),m2))}}}var $=new Map;async function P2(i,a="words",o={}){let b=K(i),n=c.families[a][b];if(!n)throw Error(`romanize: no ${a} tables for "${i}"`);let r=new URL(o.base??"../romanize/lang/",import.meta.url),l=o.fetch??(o.base?A:s2(r)),d=`${r}${n.group}/${n.pooled}`;if(!$.has(d))$.set(d,l(new URL(`${n.group}/${n.pooled}`,r)));let[f,m]=await Promise.all([l(new URL(`${b}/${n.file}`,r)),$.get(d)]);return l2(b,a,new Uint8Array(f),new Uint8Array(m))}function l2(i,a,o,b){let n=c.families[a][i];if(!n)throw Error(`romanize: no ${a} tables for "${i}"`);let r=new R(o,b,n.tag,c.beam[a]),l=c.groups[n.group],d=(e)=>{let s=e.codePointAt(0);return s===8204||s===8205||l.some(([u,h])=>s>=u&&s<=h)},f=(e)=>{let s=e.codePointAt(0);return s===8204||s===8205||Y(s)||X(s)},m=(e,s=4)=>{let u=S(Z(e)),h=[...u];if(h.length>c.max_letters){let t="";for(let p=0;p<h.length;p+=c.max_letters)t+=m(h.slice(p,p+c.max_letters).join(""),1)[0]??"";return t===""?[]:[t]}let y=r.lookup.get(u);if(y)return y.slice(0,s);return r.decode(g2(u),s).filter((t)=>t!=="")},g={lang:i,mode:a,word:m,text(e){let s=[...Z(e)],u="";for(let h=0;h<s.length;){let y=s[h].codePointAt(0);if(!(d(s[h])&&(Y(y)||X(y)))){u+=s[h++];continue}let t=h;while(t<s.length&&d(s[t])&&f(s[t]))t++;let p=s.slice(h,t).join("");u+=m(p,1)[0]??p,h=t}return u}};return Object.defineProperty(g,"_mix",{value:r}),g}var d2=/[\u200c\u200d]/gu;function S(i){return i.replace(d2,"")}function g2(i){let a=c.unify,o="";for(let b of i){let n=b.codePointAt(0);o+=n>=a.from[0]&&n<=a.from[1]?String.fromCodePoint(a.to_block+(n&a.mask)):b}return o}class F{b;pos=4;constructor(i){this.b=i;if(i[0]!==73||i[1]!==75||i[2]!==82||i[3]!==49)throw Error("romanize: not an IKR1 file")}varint(){let i=0,a=1;for(;;){let o=this.b[this.pos++];if(i+=(o&127)*a,o<128)return i;a*=128}}str(){let i=this.varint(),a=u2.decode(this.b.subarray(this.pos,this.pos+i));return this.pos+=i,a}float64(){let i=new DataView(this.b.buffer,this.b.byteOffset+this.pos,8).getFloat64(0,!0);return this.pos+=8,i}}var u2=new TextDecoder,v=2097152;function O(i,a){let o=0;for(let b=a;b<i.length;b++)o=o*v+(i[b]+1);return o}class V{vocab;levels=[];toks=[];constructor(i,a,o){this.vocab=i.varint();for(let b=i.varint();b>0;b--){let n=i.varint(),r=new Map,l=new Float64Array(n),d=new Float64Array(n),f=new Uint32Array(n+1),m=[],g=[],e=[];for(let u=0;u<n;u++){let h=[];for(let p=i.varint();p>0;p--)h.push(o.id(a[i.varint()]));e.length=0;let y=0,t=0;for(let p=i.varint();p>0;p--){t+=i.varint();let k=o.id(a[t]),w=i.varint();if(e.push([k,w]),y+=w,this.levels.length===0)this.toks.push(k)}e.sort((p,k)=>p[0]-k[0]);for(let[p,k]of e)m.push(p),g.push(k);r.set(O(h,0),u),l[u]=y,d[u]=y/(y+e.length),f[u+1]=m.length}let s=null;if(n===1){s=new Float64Array(m.length===0?0:m[m.length-1]+1);for(let u=0;u<m.length;u++)s[m[u]]=g[u]}this.levels.push({index:r,total:l,wb:d,start:f,tok:Uint32Array.from(m),count:Float64Array.from(g),dense:s})}}stats(i){let a={at:[],total:[],wb:[]};for(let o=0;o<this.levels.length;o++){let b=this.levels[o],n=b.index.get(O(i,i.length-o));if(n!==void 0&&b.start[n+1]!==b.start[n])a.at[o]=n,a.total[o]=b.total[n],a.wb[o]=b.wb[n]}return a}count(i,a,o){let b=this.levels[i];if(b.dense!==null)return o<b.dense.length?b.dense[o]:0;let n=b.start[a],r=b.start[a+1];while(n<r){let l=n+r>>>1,d=b.tok[l];if(d===o)return b.count[l];if(d<o)n=l+1;else r=l}return 0}prob(i,a){let o=1/(this.vocab+1);for(let b=0;b<this.levels.length;b++){let n=i.at[b];if(n===void 0)continue;let r=i.wb[b];o=r*this.count(b,n,a)/i.total[b]+(1-r)*o}return o}}class L{ids=new Map;strs=[];id(i){let a=this.ids.get(i);if(a===void 0)a=this.strs.length,this.ids.set(i,a),this.strs.push(i);return a}}function h2(i){let a=[];for(let o=i;o;o=o.parent)a.push(o.piece);return a.reverse().join("")}function t2(i,a){let o=[i.piece],b=[a.piece],n=i.parent,r=a.parent;while(n!==r)if(r===null||n!==null&&n.at>r.at)o.push(n.piece),n=n.parent;else if(n===null||r.at>n.at)b.push(r.piece),r=r.parent;else o.push(n.piece),n=n.parent,b.push(r.piece),r=r.parent;let l=o.reverse().join(""),d=b.reverse().join("");return l<d?-1:l>d?1:0}function q(i,a){if(i.score!==a.score)return i.score>a.score;let o=t2(i,a);if(o!==0)return o<0;return i.idx<a.idx}class E{k;all;n=0;best=[];constructor(i,a){this.k=i;this.all=a}closed(i){return!this.all&&this.best.length===this.k&&i+0.000000001<this.best[this.k-1].score}add(i,a,o,b){let n=this.n++,r=!this.all&&this.best.length===this.k;if(r&&i<this.best[this.k-1].score)return;let l={score:i,parent:a,piece:o,tok:b,idx:n};if(this.all){this.best.push(l);return}if(r&&!q(l,this.best[this.k-1]))return;let d=0,f=this.best.length;while(d<f){let m=d+f>>1;if(q(l,this.best[m]))f=m;else d=m+1}if(this.best.splice(d,0,l),this.best.length>this.k)this.best.pop()}}var U=new WeakMap;class R{beam;a;b;lam;start=[];eos;options=new Map;lookup=new Map;constructor(i,a,o,b){this.beam=b;let n=U.get(a.buffer);if(!n||n.byteOffset!==a.byteOffset){let m=new L,g=new F(a);n={byteOffset:a.byteOffset,ids:m,model:new V(g,x(g),m)},U.set(a.buffer,n)}let r=n.ids;this.b=n.model;let l=new F(i),d=x(l);this.lam=l.float64(),this.a=new V(l,d,r);for(let m=l.varint();m>0;m--){let g=l.str(),e=[];for(let s=l.varint();s>0;s--)e.push(d[l.varint()]);this.lookup.set(g,e)}for(let m=0;m<c.order-2;m++)this.start.push(r.id(c.bos));this.start.push(r.id(`<s:${o}>`)),this.eos=r.id(c.eos);let f=new Set;for(let m of[this.a,this.b])for(let g of m.toks){if(g===this.eos||f.has(g))continue;f.add(g);let e=r.strs[g],s=e.indexOf("|"),u=e.slice(0,s),h=this.options.get(u)??[];h.push({tok:g,en:e.slice(s+1)}),this.options.set(u,h)}for(let m of this.options.values())m.sort((g,e)=>g.en<e.en?-1:g.en>e.en?1:0);if(this.start.length>2||r.strs.length>=v)throw Error("romanize: beyond the engine's limits")}logp(i,a,o){let b=Math.exp(Math.log(this.a.prob(i,o))),n=Math.exp(Math.log(this.b.prob(a,o)));return Math.log(this.lam*b+(1-this.lam)*n)}decode(i,a){let o=[...S(i)],b=c.order-1,n={score:0,parent:null,piece:"",at:0,ctx:this.start},r=Array.from({length:o.length+1},(e,s)=>new E(this.beam,s===o.length));r[0].add(0,null,"",-1);let l=(e)=>{if(e.tok<0)return e.parent.ctx;let s=[...e.parent.ctx,e.tok];return s.slice(s.length-b)},d=Array(c.max_n+1);for(let e=0;e<o.length;e++){let s=new Map;for(let u of r[e].best){let h=!1,y=!1;for(let w=1;w<=c.max_n&&e+w<=o.length;w++)if(d[w]=this.options.get(o.slice(e,e+w).join("")),d[w]?.length)h=!0,y||=!r[e+w].closed(u.score);if(h&&!y){for(let w=1;w<=c.max_n&&e+w<=o.length;w++)r[e+w].n+=d[w]?.length??0;continue}let t=e===0?n:{score:u.score,parent:u.parent,piece:u.piece,at:e,ctx:l(u)};if(!h){r[e+1].add(t.score-c.unknown_penalty,t,"",-1);continue}let p=O(t.ctx,0),k=s.get(p);if(!k)k={sa:this.a.stats(t.ctx),sb:this.b.stats(t.ctx),lp:[]},s.set(p,k);for(let w=1;w<=c.max_n&&e+w<=o.length;w++){let I=d[w];if(!I)continue;if(r[e+w].closed(t.score)){r[e+w].n+=I.length;continue}let T=k.lp[w];if(!T)T=I.map((j)=>this.logp(k.sa,k.sb,j.tok)),k.lp[w]=T;for(let j=0;j<I.length;j++)r[e+w].add(t.score+T[j],t,I[j].en,I[j].tok)}}}let f=new Map,m=new Map,g=new Map;for(let e of r[o.length].best){let s=e.parent===null?this.start:l(e),u=O(s,0),h=m.get(u);if(h===void 0)h=this.logp(this.a.stats(s),this.b.stats(s),this.eos),m.set(u,h);let y=e.score+h,t=e.piece;if(e.parent!==null){let k=g.get(e.parent);if(k===void 0)k=h2(e.parent),g.set(e.parent,k);t=k+e.piece}let p=f.get(t);if(p===void 0||y>p)f.set(t,y)}return[...f].sort((e,s)=>e[1]!==s[1]?s[1]-e[1]:e[0]<s[0]?-1:e[0]>s[0]?1:0).slice(0,a).map((e)=>e[0])}}function x(i){let a=[];for(let o=i.varint();o>0;o--)a.push(i.str());return a}function H2(i,a,o){return i._mix.decode(a,o)}export{P2 as load,O2 as languages,l2 as fromBytes,H2 as _decode,G2 as RULES_VERSION,m2 as CDN};
|
|
1
|
+
var M={beam:{names:12,places:8,words:8},bos:"<s>",eos:"</s>",families:{names:{as:{file:"as.names.bin",group:"brahmic",lookup:532,pooled:"names-brahmic.bin",tag:"as"},bn:{file:"bn.names.bin",group:"brahmic",lookup:1408,pooled:"names-brahmic.bin",tag:"bn"},gom:{file:"gom.names.bin",group:"brahmic",lookup:15,pooled:"names-brahmic.bin",tag:"gom"},gu:{file:"gu.names.bin",group:"brahmic",lookup:113,pooled:"names-brahmic.bin",tag:"gu"},hi:{file:"hi.names.bin",group:"brahmic",lookup:961,pooled:"names-brahmic.bin",tag:"hi"},kn:{file:"kn.names.bin",group:"brahmic",lookup:384,pooled:"names-brahmic.bin",tag:"kn"},ks:{file:"ks.names.bin",group:"arabic",lookup:110,pooled:"names-arabic.bin",tag:"ks"},mai:{file:"mai.names.bin",group:"brahmic",lookup:115,pooled:"names-brahmic.bin",tag:"mai"},ml:{file:"ml.names.bin",group:"brahmic",lookup:744,pooled:"names-brahmic.bin",tag:"ml"},mni:{file:"mni.names.bin",group:"brahmic",lookup:251,pooled:"names-brahmic.bin",tag:"mni"},mr:{file:"mr.names.bin",group:"brahmic",lookup:604,pooled:"names-brahmic.bin",tag:"mr"},ne:{file:"ne.names.bin",group:"brahmic",lookup:122,pooled:"names-brahmic.bin",tag:"ne"},or:{file:"or.names.bin",group:"brahmic",lookup:522,pooled:"names-brahmic.bin",tag:"or"},pa:{file:"pa.names.bin",group:"brahmic",lookup:787,pooled:"names-brahmic.bin",tag:"pa"},sa:{file:"sa.names.bin",group:"brahmic",lookup:58,pooled:"names-brahmic.bin",tag:"sa"},sat:{file:"sat.names.bin",group:"olchiki",lookup:372,pooled:"names-olchiki.bin",tag:"sat"},sd:{file:"sd.names.bin",group:"arabic",lookup:72,pooled:"names-arabic.bin",tag:"sd"},ta:{file:"ta.names.bin",group:"brahmic",lookup:2999,pooled:"names-brahmic.bin",tag:"ta"},te:{file:"te.names.bin",group:"brahmic",lookup:1719,pooled:"names-brahmic.bin",tag:"te"},ur:{file:"ur.names.bin",group:"arabic",lookup:1679,pooled:"names-arabic.bin",tag:"ur"}},places:{as:{file:"as.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"as:w"},bn:{file:"bn.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"bn:p"},brx:{file:"brx.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"brx:w"},doi:{file:"doi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"doi:w"},gom:{file:"gom.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gom:w"},gu:{file:"gu.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gu:w"},hi:{file:"hi.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"hi:p"},kn:{file:"kn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"kn:w"},ks:{file:"ks.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ks:w"},mai:{file:"mai.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mai:w"},ml:{file:"ml.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"ml:p"},mni:{file:"mni.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mni:w"},mr:{file:"mr.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"mr:p"},ne:{file:"ne.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ne:w"},or:{file:"or.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"or:p"},pa:{file:"pa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"pa:w"},sa:{file:"sa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"sa:w"},sat:{file:"sat.places.bin",group:"olchiki",lookup:0,pooled:"places-olchiki.bin",tag:"sat:p"},sd:{file:"sd.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"sd:w"},ta:{file:"ta.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"ta:p"},te:{file:"te.places.bin",group:"brahmic",lookup:0,pooled:"places-brahmic.bin",tag:"te:p"},ur:{file:"ur.places.bin",group:"arabic",lookup:0,pooled:"places-arabic.bin",tag:"ur:p"}},words:{as:{file:"as.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"as:w"},bn:{file:"bn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"bn:w"},brx:{file:"brx.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"brx:w"},doi:{file:"doi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"doi:w"},gom:{file:"gom.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gom:w"},gu:{file:"gu.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"gu:w"},hi:{file:"hi.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"hi:w"},kn:{file:"kn.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"kn:w"},ks:{file:"ks.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ks:w"},mai:{file:"mai.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mai:w"},ml:{file:"ml.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ml:w"},mni:{file:"mni.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mni:w"},mr:{file:"mr.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"mr:w"},ne:{file:"ne.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ne:w"},or:{file:"or.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"or:w"},pa:{file:"pa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"pa:w"},sa:{file:"sa.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"sa:w"},sd:{file:"sd.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"sd:w"},ta:{file:"ta.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"ta:w"},te:{file:"te.words.bin",group:"brahmic",lookup:0,pooled:"words-brahmic.bin",tag:"te:w"},ur:{file:"ur.words.bin",group:"arabic",lookup:0,pooled:"words-arabic.bin",tag:"ur:w"}}},files:{"as.names.bin":85541,"as.words.bin":235861,"bn.names.bin":169998,"bn.places.bin":126420,"bn.words.bin":377631,"brx.words.bin":203214,"doi.words.bin":48662,"gom.names.bin":9291,"gom.words.bin":324581,"gu.names.bin":38053,"gu.words.bin":369955,"hi.names.bin":156295,"hi.places.bin":426346,"hi.words.bin":469151,"kn.names.bin":71126,"kn.words.bin":273947,"ks.names.bin":35759,"ks.words.bin":445916,"mai.names.bin":39392,"mai.words.bin":381486,"ml.names.bin":127543,"ml.places.bin":108719,"ml.words.bin":342619,"mni.names.bin":12340,"mni.words.bin":133348,"mr.names.bin":115410,"mr.places.bin":195989,"mr.words.bin":328032,"names-arabic.bin":188775,"names-brahmic.bin":600155,"names-lm.bin":337803,"names-olchiki.bin":97591,"ne.names.bin":36696,"ne.words.bin":297278,"or.names.bin":80934,"or.places.bin":60189,"or.words.bin":286451,"pa.names.bin":133433,"pa.words.bin":419146,"places-arabic.bin":1562817,"places-brahmic.bin":3643267,"places-olchiki.bin":157265,"sa.names.bin":24300,"sa.words.bin":244341,"sat.names.bin":72426,"sat.places.bin":60869,"sd.names.bin":11895,"sd.words.bin":463414,"ta.names.bin":262627,"ta.places.bin":219152,"ta.words.bin":244371,"te.names.bin":215398,"te.places.bin":131438,"te.words.bin":295255,"ur.names.bin":185631,"ur.places.bin":225409,"ur.words.bin":540116,"words-arabic.bin":1182374,"words-brahmic.bin":2674546,"words-olchiki.bin":61712},groups:{arabic:[[1536,1791]],brahmic:[[2304,3455],[43744,44031]],olchiki:[[7248,7295]]},max_letters:256,max_n:3,order:3,rescore:{names:{beta:0.25,bos:"<",depth:10,eos:">",file:"names-lm.bin",order:5}},rules_version:"2026-10-12",unify:{from:[2432,3455],mask:127,to_block:2304},unknown_penalty:20,version:1};var q="0.12.0";function x(a){let i=(a??"").toLowerCase().split(/[-_]/)[0];if(i==="kok")return"gom";let o=i.length===3?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".indexOf(i+" "):-1;return o>=0&&o%7===0?"asm as ben bn guj gu hin hi kan kn kas ks mal ml mar mr nep ne ori or pan pa san sa snd sd tam ta tel te urd ur ory or npi ne ".slice(o+4,o+6):i}var _={unicode:"15.0.0",python:"3.12.13",ranges:[1536,1791,1872,1919,2304,3455,7248,7295,7376,7423,43232,43263,43744,44031,64336,65023,65136,65279,72448,72543],mn:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2306,2362,2362,2364,2364,2369,2376,2381,2381,2385,2391,2402,2403,2433,2433,2492,2492,2497,2500,2509,2509,2530,2531,2558,2558,2561,2562,2620,2620,2625,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2690,2748,2748,2753,2757,2759,2760,2765,2765,2786,2787,2810,2815,2817,2817,2876,2876,2879,2879,2881,2884,2893,2893,2901,2902,2914,2915,2946,2946,3008,3008,3021,3021,3072,3072,3076,3076,3132,3132,3134,3136,3142,3144,3146,3149,3157,3158,3170,3171,3201,3201,3260,3260,3263,3263,3270,3270,3276,3277,3298,3299,3328,3329,3387,3388,3393,3396,3405,3405,3426,3427,7376,7378,7380,7392,7394,7400,7405,7405,7412,7412,7416,7417,43232,43249,43263,43263,43756,43757,43766,43766,44005,44005,44008,44008,44013,44013],m:[1552,1562,1611,1631,1648,1648,1750,1756,1759,1764,1767,1768,1770,1773,2304,2307,2362,2364,2366,2383,2385,2391,2402,2403,2433,2435,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2530,2531,2558,2558,2561,2563,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2672,2673,2677,2677,2689,2691,2748,2748,2750,2757,2759,2761,2763,2765,2786,2787,2810,2815,2817,2819,2876,2876,2878,2884,2887,2888,2891,2893,2901,2903,2914,2915,2946,2946,3006,3010,3014,3016,3018,3021,3031,3031,3072,3076,3132,3132,3134,3140,3142,3144,3146,3149,3157,3158,3170,3171,3201,3203,3260,3260,3262,3268,3270,3272,3274,3277,3285,3286,3298,3299,3315,3315,3328,3331,3387,3388,3390,3396,3398,3400,3402,3405,3415,3415,3426,3427,7376,7378,7380,7400,7405,7405,7412,7412,7415,7417,43232,43249,43263,43263,43755,43759,43765,43766,44003,44010,44012,44013],l:[1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1872,1919,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,7258,7293,7401,7404,7406,7411,7413,7414,7418,7418,43250,43255,43259,43259,43261,43262,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,64336,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276],ccc:[1552,1559,230,1560,1560,30,1561,1561,31,1562,1562,32,1611,1611,27,1612,1612,28,1613,1613,29,1614,1614,30,1615,1615,31,1616,1616,32,1617,1617,33,1618,1618,34,1619,1620,230,1621,1622,220,1623,1627,230,1628,1628,220,1629,1630,230,1631,1631,220,1648,1648,35,1750,1756,230,1759,1762,230,1763,1763,220,1764,1764,230,1767,1768,230,1770,1770,220,1771,1772,230,1773,1773,220,2364,2364,7,2381,2381,9,2385,2385,230,2386,2386,220,2387,2388,230,2492,2492,7,2509,2509,9,2558,2558,230,2620,2620,7,2637,2637,9,2748,2748,7,2765,2765,9,2876,2876,7,2893,2893,9,3021,3021,9,3132,3132,7,3149,3149,9,3157,3157,84,3158,3158,91,3260,3260,7,3277,3277,9,3387,3388,9,3405,3405,9,7376,7378,230,7380,7380,1,7381,7385,220,7386,7387,230,7388,7391,220,7392,7392,230,7394,7400,1,7405,7405,220,7412,7412,230,7416,7417,230,43232,43249,230,43766,43766,9,44013,44013,9],decomp:{"1570":[1575,1619],"1571":[1575,1620],"1572":[1608,1620],"1573":[1575,1621],"1574":[1610,1620],"1728":[1749,1620],"1730":[1729,1620],"1747":[1746,1620],"2345":[2344,2364],"2353":[2352,2364],"2356":[2355,2364],"2392":[2325,2364],"2393":[2326,2364],"2394":[2327,2364],"2395":[2332,2364],"2396":[2337,2364],"2397":[2338,2364],"2398":[2347,2364],"2399":[2351,2364],"2507":[2503,2494],"2508":[2503,2519],"2524":[2465,2492],"2525":[2466,2492],"2527":[2479,2492],"2611":[2610,2620],"2614":[2616,2620],"2649":[2582,2620],"2650":[2583,2620],"2651":[2588,2620],"2654":[2603,2620],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"2908":[2849,2876],"2909":[2850,2876],"2964":[2962,3031],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3274,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415]},excl:[2392,2393,2394,2395,2396,2397,2398,2399,2524,2525,2527,2611,2614,2649,2650,2651,2654,2908,2909]};var T2=_.unicode,g2=1,U=2,E=4,Y=8,j=new Map,A=new Map,S=new Map;for(let a=0;a<_.ranges.length;a+=2)for(let i=_.ranges[a];i<=_.ranges[a+1];i++)j.set(i,0);var Z=(a,i)=>{for(let o=0;o<a.length;o+=2)for(let b=a[o];b<=a[o+1];b++)j.set(b,j.get(b)|i)};Z(_.mn,g2);Z(_.m,U);Z(_.l,E);for(let a=0;a<_.ccc.length;a+=3)for(let i=_.ccc[a];i<=_.ccc[a+1];i++)j.set(i,j.get(i)|_.ccc[a+2]<<4);var d2=new Set(_.excl);for(let[a,i]of Object.entries(_.decomp)){let o=Number(a);if(A.set(o,i),i.length===2&&!d2.has(o))S.set(i[0]*1114112+i[1],o),j.set(i[1],j.get(i[1])|Y)}var $=(a)=>String.fromCodePoint(a);function X(a,i,o){let b="";for(let n=i;n<o;n+=8192)b+=String.fromCodePoint(...a.slice(n,Math.min(o,n+8192)));return b}function F(a){let i=j.get(a);return i===void 0?/\p{M}/u.test($(a)):(i&U)!==0}function V(a){let i=j.get(a);return i===void 0?/\p{L}/u.test($(a)):(i&E)!==0}function L(a){if(!j.has(a))return Array.from($(a).normalize("NFD"),(o)=>o.codePointAt(0));let i=A.get(a);return i?i.flatMap(L):[a]}var u2=(a,i)=>a>>4===0&&(a&Y)===0&&!A.has(i);function K(a){let i=Array.from(a,(b)=>b.codePointAt(0)),o="";for(let b=0;b<i.length;){let n=b+1,e=j.has(i[b]);for(;n<i.length;n++){let s=j.get(i[n]);if(s===void 0)e=!1;else if(u2(s,i[n]))break}o+=e?h2(i,b,n):X(i,b,n).normalize("NFC"),b=n}return o}function h2(a,i,o){let b=0,n=!0;for(let r=i;r<o&&n;r++){let w=j.get(a[r]),d=w>>4;if(A.has(a[r])||(w&Y)!==0||d!==0&&d<b)n=!1;b=d}if(n)return X(a,i,o);let e=[];for(let r=i;r<o;r++)e.push(...L(a[r]));let s=(r)=>j.get(r)>>4;for(let r=0;r<e.length;){if(s(e[r])===0){r++;continue}let w=r;while(w<e.length&&s(e[w])!==0)w++;let d=e.slice(r,w).sort((f,h)=>s(f)-s(h));for(let f=0;f<d.length;f++)e[r+f]=d[f];r=w}let l=[],g=-1;for(let r of e){let w=s(r);if(g>=0&&(l.length-1===g||s(l[l.length-1])<w)){let d=S.get(l[g]*1114112+r);if(d!==void 0){l[g]=d;continue}}if(w===0)g=l.length;l.push(r)}return X(l,0,l.length)}var y=M,X2=y.rules_version;function Y2(a="words"){return Object.keys(y.families[a]).sort()}var t2=`https://cdn.jsdelivr.net/gh/micahchoo/indickit@v${q}/romanize/lang/`;async function B(a){let i=await fetch(a);if(!i.ok)throw Error(`romanize: ${a}: ${i.status}`);return i.arrayBuffer()}function w2(a){return async(i)=>{try{return await B(i)}catch{return B(new URL(i.href.slice(a.href.length),t2))}}}var J=new Map;async function Z2(a,i="words",o={}){let b=x(a),n=y.families[i][b];if(!n)throw Error(`romanize: no ${i} tables for "${a}"`);let e=new URL(o.base??"../romanize/lang/",import.meta.url),s=o.fetch??(o.base?B:w2(e)),l=(f)=>{let h=`${e}${f}`;if(!J.has(h))J.set(h,s(new URL(f,e)));return J.get(h)},g=y.rescore?.[i],[r,w,d]=await Promise.all([s(new URL(`${b}/${n.file}`,e)),l(`${n.group}/${n.pooled}`),g?l(`shared/${g.file}`):void 0]);return f2(b,i,new Uint8Array(r),new Uint8Array(w),d&&new Uint8Array(d))}function f2(a,i,o,b,n){let e=y.families[i][a];if(!e)throw Error(`romanize: no ${i} tables for "${a}"`);let s=y.rescore?.[i];if(s&&!n)throw Error(`romanize: the ${i} mode needs its letter n-gram (shared/${s.file})`);let l=new m2(o,b,e.tag,y.beam[i],s&&n?new b2(n,s):null,s),g=y.groups[e.group],r=(h)=>{let t=h.codePointAt(0);return t===8204||t===8205||g.some(([z,m])=>t>=z&&t<=m)},w=(h)=>{let t=h.codePointAt(0);return t===8204||t===8205||V(t)||F(t)},d=(h,t=4)=>{let z=a2(K(h)),m=[...z];if(m.length>y.max_letters){let p="";for(let c=0;c<m.length;c+=y.max_letters)p+=d(m.slice(c,c+y.max_letters).join(""),1)[0]??"";return p===""?[]:[p]}let u=l.lookup.get(z);if(u)return u.slice(0,t);return l.decode(k2(z),t).filter((p)=>p!=="")},f={lang:a,mode:i,word:d,text(h){let t=[...K(h)],z="";for(let m=0;m<t.length;){let u=t[m].codePointAt(0);if(!(r(t[m])&&(V(u)||F(u)))){z+=t[m++];continue}let p=m;while(p<t.length&&r(t[p])&&w(t[p]))p++;let c=t.slice(m,p).join("");z+=d(c,1)[0]??c,m=p}return z}};return Object.defineProperty(f,"_mix",{value:l}),f}var p2=/[\u200c\u200d]/gu;function a2(a){return a.replace(p2,"")}function k2(a){let i=y.unify,o="";for(let b of a){let n=b.codePointAt(0);o+=n>=i.from[0]&&n<=i.from[1]?String.fromCodePoint(i.to_block+(n&i.mask)):b}return o}class Q{b;pos=4;constructor(a){this.b=a;if(a[0]!==73||a[1]!==75||a[2]!==82||a[3]!==49)throw Error("romanize: not an IKR1 file")}varint(){let a=0,i=1;for(;;){let o=this.b[this.pos++];if(a+=(o&127)*i,o<128)return a;i*=128}}str(){let a=this.varint(),i=y2.decode(this.b.subarray(this.pos,this.pos+a));return this.pos+=a,i}float64(){let a=new DataView(this.b.buffer,this.b.byteOffset+this.pos,8).getFloat64(0,!0);return this.pos+=8,a}}var y2=new TextDecoder,o2=2097152;function W(a,i){let o=0;for(let b=i;b<a.length;b++)o=o*o2+(a[b]+1);return o}class N{vocab;levels=[];toks=[];constructor(a,i,o){this.vocab=a.varint();for(let b=a.varint();b>0;b--){let n=a.varint(),e=new Map,s=new Float64Array(n),l=new Float64Array(n),g=new Uint32Array(n+1),r=[],w=[],d=[];for(let h=0;h<n;h++){let t=[];for(let u=a.varint();u>0;u--)t.push(o.id(i[a.varint()]));d.length=0;let z=0,m=0;for(let u=a.varint();u>0;u--){m+=a.varint();let p=o.id(i[m]),c=a.varint();if(d.push([p,c]),z+=c,this.levels.length===0)this.toks.push(p)}d.sort((u,p)=>u[0]-p[0]);for(let[u,p]of d)r.push(u),w.push(p);e.set(W(t,0),h),s[h]=z,l[h]=z/(z+d.length),g[h+1]=r.length}let f=null;if(n===1){f=new Float64Array(r.length===0?0:r[r.length-1]+1);for(let h=0;h<r.length;h++)f[r[h]]=w[h]}this.levels.push({index:e,total:s,wb:l,start:g,tok:Uint32Array.from(r),count:Float64Array.from(w),dense:f})}}stats(a){let i={at:[],total:[],wb:[]};for(let o=0;o<this.levels.length;o++){let b=this.levels[o],n=b.index.get(W(a,a.length-o));if(n!==void 0&&b.start[n+1]!==b.start[n])i.at[o]=n,i.total[o]=b.total[n],i.wb[o]=b.wb[n]}return i}count(a,i,o){let b=this.levels[a];if(b.dense!==null)return o<b.dense.length?b.dense[o]:0;let n=b.start[i],e=b.start[i+1];while(n<e){let s=n+e>>>1,l=b.tok[s];if(l===o)return b.count[s];if(l<o)n=s+1;else e=s}return 0}prob(a,i){let o=1/(this.vocab+1);for(let b=0;b<this.levels.length;b++){let n=a.at[b];if(n===void 0)continue;let e=a.wb[b];o=e*this.count(b,n,i)/a.total[b]+(1-e)*o}return o}}class n2{ids=new Map;strs=[];id(a){let i=this.ids.get(a);if(i===void 0)i=this.strs.length,this.ids.set(a,i),this.strs.push(a);return i}}class b2{rc;vocab;levels=[];constructor(a,i){this.rc=i;let o=new Q(a),b=C(o);this.vocab=o.varint();for(let n=o.varint();n>0;n--){let e=new Map;for(let s=o.varint();s>0;s--){let l="";for(let w=o.varint();w>0;w--)l+=b[o.varint()];let g={total:0,wb:0,count:new Map},r=0;for(let w=o.varint();w>0;w--){r+=o.varint();let d=o.varint();g.count.set(b[r],d),g.total+=d}g.wb=g.total/(g.total+g.count.size),e.set(l,g)}this.levels.push(e)}}logp(a){let{order:i,bos:o,eos:b}=this.rc,n=[];for(let s=0;s<i-1;s++)n.push(o);for(let s of a)n.push(s);n.push(b);let e=0;for(let s=i-1;s<n.length;s++){let l=1/(this.vocab+1);for(let g=0;g<i&&g<this.levels.length;g++){let r=this.levels[g].get(n.slice(s-g,s).join(""));if(!r)continue;l=r.wb*(r.count.get(n[s])??0)/r.total+(1-r.wb)*l}e+=Math.log(l)}return e}}function z2(a){let i=[];for(let o=a;o;o=o.parent)i.push(o.piece);return i.reverse().join("")}function c2(a,i){let o=[a.piece],b=[i.piece],n=a.parent,e=i.parent;while(n!==e)if(e===null||n!==null&&n.at>e.at)o.push(n.piece),n=n.parent;else if(n===null||e.at>n.at)b.push(e.piece),e=e.parent;else o.push(n.piece),n=n.parent,b.push(e.piece),e=e.parent;let s=o.reverse().join(""),l=b.reverse().join("");return s<l?-1:s>l?1:0}function v(a,i){if(a.score!==i.score)return a.score>i.score;let o=c2(a,i);if(o!==0)return o<0;return a.idx<i.idx}class e2{k;all;n=0;best=[];constructor(a,i){this.k=a;this.all=i}closed(a){return!this.all&&this.best.length===this.k&&a+0.000000001<this.best[this.k-1].score}add(a,i,o,b){let n=this.n++,e=!this.all&&this.best.length===this.k;if(e&&a<this.best[this.k-1].score)return;let s={score:a,parent:i,piece:o,tok:b,idx:n};if(this.all){this.best.push(s);return}if(e&&!v(s,this.best[this.k-1]))return;let l=0,g=this.best.length;while(l<g){let r=l+g>>1;if(v(s,this.best[r]))g=r;else l=r+1}if(this.best.splice(l,0,s),this.best.length>this.k)this.best.pop()}}var R=new WeakMap;class m2{beam;lm;rescore;a;b;lam;start=[];eos;options=new Map;lookup=new Map;constructor(a,i,o,b,n=null,e=void 0){this.beam=b;this.lm=n;this.rescore=e;let s=R.get(i.buffer);if(!s||s.byteOffset!==i.byteOffset){let d=new n2,f=new Q(i);s={byteOffset:i.byteOffset,ids:d,model:new N(f,C(f),d)},R.set(i.buffer,s)}let l=s.ids;this.b=s.model;let g=new Q(a),r=C(g);this.lam=g.float64(),this.a=new N(g,r,l);for(let d=g.varint();d>0;d--){let f=g.str(),h=[];for(let t=g.varint();t>0;t--)h.push(r[g.varint()]);this.lookup.set(f,h)}for(let d=0;d<y.order-2;d++)this.start.push(l.id(y.bos));this.start.push(l.id(`<s:${o}>`)),this.eos=l.id(y.eos);let w=new Set;for(let d of[this.a,this.b])for(let f of d.toks){if(f===this.eos||w.has(f))continue;w.add(f);let h=l.strs[f],t=h.indexOf("|"),z=h.slice(0,t),m=this.options.get(z)??[];m.push({tok:f,en:h.slice(t+1)}),this.options.set(z,m)}for(let d of this.options.values())d.sort((f,h)=>f.en<h.en?-1:f.en>h.en?1:0);if(this.start.length>2||l.strs.length>=o2)throw Error("romanize: beyond the engine's limits")}logp(a,i,o){let b=Math.exp(Math.log(this.a.prob(a,o))),n=Math.exp(Math.log(this.b.prob(i,o)));return Math.log(this.lam*b+(1-this.lam)*n)}decode(a,i){if(i<=0)return[];let o=this.beamSearch(a,this.lm&&this.rescore?Math.max(i,this.rescore.depth):i);if(this.lm&&this.rescore){let b=this.rescore.beta;for(let n of o)n[1]+=b*this.lm.logp(n[0]);i2(o)}return o.slice(0,i).map((b)=>b[0])}beamSearch(a,i){let o=[...a2(a)],b=y.order-1,n={score:0,parent:null,piece:"",at:0,ctx:this.start},e=Array.from({length:o.length+1},(m,u)=>new e2(this.beam,u===o.length));e[0].add(0,null,"",-1);let s=(m)=>{if(m.tok<0)return m.parent.ctx;let u=[...m.parent.ctx,m.tok];return u.slice(u.length-b)},l=Array(y.max_n+1);for(let m=0;m<o.length;m++){let u=new Map;for(let p of e[m].best){let c=!1,G=!1;for(let k=1;k<=y.max_n&&m+k<=o.length;k++)if(l[k]=this.options.get(o.slice(m,m+k).join("")),l[k]?.length)c=!0,G||=!e[m+k].closed(p.score);if(c&&!G){for(let k=1;k<=y.max_n&&m+k<=o.length;k++)e[m+k].n+=l[k]?.length??0;continue}let I=m===0?n:{score:p.score,parent:p.parent,piece:p.piece,at:m,ctx:s(p)};if(!c){e[m+1].add(I.score-y.unknown_penalty,I,"",-1);continue}let D=W(I.ctx,0),O=u.get(D);if(!O)O={sa:this.a.stats(I.ctx),sb:this.b.stats(I.ctx),lp:[]},u.set(D,O);for(let k=1;k<=y.max_n&&m+k<=o.length;k++){let H=l[k];if(!H)continue;if(e[m+k].closed(I.score)){e[m+k].n+=H.length;continue}let P=O.lp[k];if(!P)P=H.map((T)=>this.logp(O.sa,O.sb,T.tok)),O.lp[k]=P;for(let T=0;T<H.length;T++)e[m+k].add(I.score+P[T],I,H[T].en,H[T].tok)}}}let g=e[o.length].best,r=new Map,w=new Float64Array(g.length);for(let m=0;m<g.length;m++){let u=g[m],p=u.parent===null?this.start:s(u),c=W(p,0),G=r.get(c);if(G===void 0)G=this.logp(this.a.stats(p),this.b.stats(p),this.eos),r.set(c,G);w[m]=u.score+G}let d=Int32Array.from(g.keys()).sort((m,u)=>w[u]>w[m]?1:w[u]<w[m]?-1:0),f=new Map,h=(m)=>{if(m.parent===null)return m.piece;let u=f.get(m.parent);if(u===void 0)u=z2(m.parent),f.set(m.parent,u);return u+m.piece},t=[],z=new Set;for(let m of d){let u=w[m];if(t.length>=i&&u<t[i-1][1])break;let p=h(g[m]);if(!z.has(p))z.add(p),t.push([p,u])}return i2(t),t.slice(0,i)}}function i2(a){a.sort((i,o)=>i[1]!==o[1]?o[1]-i[1]:i[0]<o[0]?-1:i[0]>o[0]?1:0)}function C(a){let i=[];for(let o=a.varint();o>0;o--)i.push(a.str());return i}function $2(a,i,o){return a._mix.decode(i,o)}export{Z2 as load,Y2 as languages,f2 as fromBytes,$2 as _decode,X2 as RULES_VERSION,t2 as CDN};
|