pax_global_header00006660000000000000000000000064134377045220014521gustar00rootroot0000000000000052 comment=9a096a12270b527608792719d6e75e68a8bbfb03 whatlanggo-1.0.1/000077500000000000000000000000001343770452200136535ustar00rootroot00000000000000whatlanggo-1.0.1/.travis.yml000066400000000000000000000004631343770452200157670ustar00rootroot00000000000000language: go go: - 1.8 - tip install: - go get golang.org/x/tools/cmd/cover - go get github.com/mattn/goveralls script: - go test -v -covermode=count -coverprofile=coverage.out - $HOME/gopath/bin/goveralls -coverprofile=coverage.out -service=travis-ci -repotoken $COVERALLS_TOKEN whatlanggo-1.0.1/LICENSE000066400000000000000000000024061343770452200146620ustar00rootroot00000000000000(The MIT License) Copyright (c) 2017 Abado Jack Mtulla Copyright (c) 2014 Titus Wormer Copyright (c) 2008 Kent S Johnson Copyright (c) 2006 Jacob R Rideout Copyright (c) 2004 Maciej Ceglowski Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. whatlanggo-1.0.1/README.md000066400000000000000000000073071343770452200151410ustar00rootroot00000000000000# Whatlanggo [![Build Status](https://travis-ci.org/abadojack/whatlanggo.svg?branch=master)](https://travis-ci.org/abadojack/whatlanggo) [![Go Report Card](https://goreportcard.com/badge/github.com/abadojack/whatlanggo)](https://goreportcard.com/report/github.com/abadojack/whatlanggo) [![GoDoc](https://godoc.org/github.com/abadojack/whatlanggo?status.png)](https://godoc.org/github.com/abadojack/whatlanggo) [![Coverage Status](https://coveralls.io/repos/github/abadojack/whatlanggo/badge.svg)](https://coveralls.io/github/abadojack/whatlanggo) Natural language detection for Go. ## Features * Supports [84 languages](https://github.com/abadojack/whatlanggo/blob/master/SUPPORTED_LANGUAGES.md) * 100% written in Go * No external dependencies * Fast * Recognizes not only a language, but also a script (Latin, Cyrillic, etc) ## Getting started Installation: ```sh go get -u github.com/abadojack/whatlanggo ``` Simple usage example: ```go package main import ( "fmt" "github.com/abadojack/whatlanggo" ) func main() { info := whatlanggo.Detect("Foje funkcias kaj foje ne funkcias") fmt.Println("Language:", info.Lang.String(), " Script:", whatlanggo.Scripts[info.Script], " Confidence: ", info.Confidence) } ``` ## Blacklisting and whitelisting ```go package main import ( "fmt" "github.com/abadojack/whatlanggo" ) func main() { //Blacklist options := whatlanggo.Options{ Blacklist: map[whatlanggo.Lang]bool{ whatlanggo.Ydd: true, }, } info := whatlanggo.DetectWithOptions("האקדמיה ללשון העברית", options) fmt.Println("Language:", info.Lang.String(), "Script:", whatlanggo.Scripts[info.Script]) //Whitelist options1 := whatlanggo.Options{ Whitelist: map[whatlanggo.Lang]bool{ whatlanggo.Epo: true, whatlanggo.Ukr: true, }, } info = whatlanggo.DetectWithOptions("Mi ne scias", options1) fmt.Println("Language:", info.Lang.String(), " Script:", whatlanggo.Scripts[info.Script]) } ``` For more details, please check the [documentation](https://godoc.org/github.com/abadojack/whatlanggo). ## Requirements Go 1.8 or higher ## How does it work? ### How does the language recognition work? The algorithm is based on the trigram language models, which is a particular case of n-grams. To understand the idea, please check the original whitepaper [Cavnar and Trenkle '94: N-Gram-Based Text Categorization'](https://www.researchgate.net/publication/2375544_N-Gram-Based_Text_Categorization). ### How _IsReliable_ calculated? It is based on the following factors: * How many unique trigrams are in the given text * How big is the difference between the first and the second(not returned) detected languages? This metric is called `rate` in the code base. Therefore, it can be presented as 2d space with threshold functions, that splits it into "Reliable" and "Not reliable" areas. This function is a hyperbola and it looks like the following one: Language recognition whatlang rust For more details, please check a blog article [Introduction to Rust Whatlang Library and Natural Language Identification Algorithms](https://www.greyblake.com/blog/2017-07-30-introduction-to-rust-whatlang-library-and-natural-language-identification-algorithms/). ## License [MIT](https://github.com/abadojack/whatlanggo/blob/master/LICENSE) ## Derivation whatlanggo is a derivative of [Franc](https://github.com/wooorm/franc) (JavaScript, MIT) by [Titus Wormer](https://github.com/wooorm). ## Acknowledgements Thanks to [greyblake](https://github.com/greyblake) (Potapov Sergey) for creating [whatlang-rs](https://github.com/greyblake/whatlang-rs) from where I got the idea and algorithms. whatlanggo-1.0.1/SUPPORTED_LANGUAGES.md000066400000000000000000000065651343770452200171640ustar00rootroot00000000000000# whatlanggo Natural language detection implemented in Go. Please check also [README](https://github.com/abadojack/whatlanggo/blob/master/README.md) and [documentation](https://godoc.org/github.com/abadojack/whatlanggo). ## Supported languages | Language | ISO 639-3 | const | | -------------- | --------- | ----------- | | Esperanto | epo | Epo | | English | eng | Eng | | Russian | rus | Rus | | Mandarin | cmn | Cmn | | Spanish | spa | Spa | | Portuguese | por | Por | | Italian | ita | Ita | | Bengali | ben | Ben | | French | fra | Fra | | German | deu | Deu | | Ukrainian | ukr | Ukr | | Georgian | kat | Kat | | Arabic | arb | Arb | | Hindi | hin | Hin | | Japanese | jpn | Jpn | | Hebrew | heb | Heb | | Yiddish | ydd | Ydd | | Polish | pol | Pol | | Amharic | amh | Amh | | Tigrinya | tir | Tir | | Javanese | jav | Jav | | Korean | kor | Kor | | Bokmal | nob | Nob | | Nynorsk | nno | Nno | | Danish | dan | Dan | | Swedish | swe | Swe | | Finnish | fin | Fin | | Turkish | tur | Tur | | Dutch | nld | Nld | | Hungarian | hun | Hun | | Czech | ces | Ces | | Greek | ell | Ell | | Bulgarian | bul | Bul | | Belarusian | bel | Bel | | Marathi | mar | Mar | | Kannada | kan | Kan | | Romanian | ron | Ron | | Slovene | slv | Slv | | Croatian | hrv | Hrv | | Serbian | srp | Srp | | Macedonian | mkd | Mkd | | Lithuanian | lit | Lit | | Latvian | lav | Lav | | Estonian | est | Est | | Tamil | tam | Tam | | Vietnamese | vie | Vie | | Urdu | urd | Urd | | Thai | tha | Tha | | Gujarati | guj | Guj | | Uzbek | uzb | Uzb | | Punjabi | pan | Pan | | Azerbaijani | azj | Azj | | Indonesian | ind | Ind | | Telugu | tel | Tel | | Persian | pes | Pes | | Malayalam | mal | Mal | | Hausa | hau | Hau | | Oriya | ori | Ori | | Burmese | mya | Mya | | Bhojpuri | bho | Bho | | Tagalog | tgl | Tgl | | Yoruba | yor | Yor | | Maithili | mai | Mai | | Oromo | orm | Orm | | Igbo | ibo | Ibo | | Cebuano | ceb | Ceb | | Kurdish | kur | Kur | | Malagasy | mlg | Mlg | | Saraiki | skr | Skr | | Nepali | nep | Nep | | Sinhalese | sin | Sin | | Khmer | khm | Khm | | Turkmen | tuk | Tuk | | Somali | som | Som | | Chewa | nya | Nya | | Akan | aka | Aka | | Zulu | zul | Zul | | Kinyarwanda | kin | Kin | | Haitian Creole | hat | Hat | | Ilocano | ilo | Ilo | | Rundi | run | Run | | Shona | sna | Sna | | Uyghur | uig | Uig | | Africaans | afr | Afr | whatlanggo-1.0.1/constants.go000066400000000000000000000004011343770452200162110ustar00rootroot00000000000000package whatlanggo const maxTrigramDistance = 300 const maxTotalDistance = 90000 // ReliableConfidenceThreshold is confidence rating that has to be succeeded // for the language detection to be considered reliable. const ReliableConfidenceThreshold = 0.8 whatlanggo-1.0.1/detect.go000066400000000000000000000116201343770452200154520ustar00rootroot00000000000000package whatlanggo import ( "sort" "unicode" ) // Detect language and script of the given text. func Detect(text string) Info { return DetectWithOptions(text, Options{}) } // DetectLang detects only the language by a given text. func DetectLang(text string) Lang { return Detect(text).Lang } // DetectLangWithOptions detects only the language of the given text with the provided options. func DetectLangWithOptions(text string, options Options) Lang { return DetectWithOptions(text, options).Lang } // DetectWithOptions detects the language and script of the given text with the provided options. func DetectWithOptions(text string, options Options) Info { script := DetectScript(text) if script != nil { lang, confidence := detectLangBaseOnScript(text, options, script) return Info{ Lang: lang, Script: script, Confidence: confidence, } } return Info{ Lang: -1, Script: nil, Confidence: 0, } } func detectLangBaseOnScript(text string, options Options, script *unicode.RangeTable) (Lang, float64) { switch script { case unicode.Latin: return detectLangInProfiles(text, options, latinLangs) case unicode.Cyrillic: return detectLangInProfiles(text, options, cyrillicLangs) case unicode.Devanagari: return detectLangInProfiles(text, options, devanagariLangs) case unicode.Hebrew: return detectLangInProfiles(text, options, hebrewLangs) case unicode.Ethiopic: return detectLangInProfiles(text, options, ethiopicLangs) case unicode.Arabic: return detectLangInProfiles(text, options, arabicLangs) case unicode.Han: return Cmn, 1 case unicode.Bengali: return Ben, 1 case unicode.Hangul: return Kor, 1 case unicode.Georgian: return Kat, 1 case unicode.Greek: return Ell, 1 case unicode.Kannada: return Kan, 1 case unicode.Tamil: return Tam, 1 case unicode.Thai: return Tha, 1 case unicode.Gujarati: return Guj, 1 case unicode.Gurmukhi: return Pan, 1 case unicode.Telugu: return Tel, 1 case unicode.Malayalam: return Mal, 1 case unicode.Oriya: return Ori, 1 case unicode.Myanmar: return Mya, 1 case unicode.Sinhala: return Sin, 1 case unicode.Khmer: return Khm, 1 case _HiraganaKatakana: return Jpn, 1 default: return -1, 0 } } type langDistance struct { lang Lang dist int } func detectLangInProfiles(text string, options Options, langProfileList langProfileList) (Lang, float64) { trigrams := getTrigramsWithPositions(text) langDistances := []langDistance{} for lang, langTrigrams := range langProfileList { if len(options.Whitelist) != 0 { //Skip non-whitelisted languages. if _, ok := options.Whitelist[lang]; !ok { continue } } else if len(options.Blacklist) != 0 { //skip blacklisted languages. if _, ok := options.Blacklist[lang]; ok { continue } } dist := calculateDistance(langTrigrams, trigrams) langDistances = append(langDistances, langDistance{lang, dist}) } switch len(langDistances) { case 0: return -1, 0 case 1: return langDistances[0].lang, 1 default: return calculateConfidence(langDistances, trigrams) } } func calculateConfidence(langDistances []langDistance, trigrams map[string]int) (Lang, float64) { sort.SliceStable(langDistances, func(i, j int) bool { return langDistances[i].dist < langDistances[j].dist }) langDist1 := langDistances[0] langDist2 := langDistances[1] score1 := maxTotalDistance - langDist1.dist score2 := maxTotalDistance - langDist2.dist var confidence float64 if score1 == 0 { // If score1 is 0, score2 is 0 as well, because array is sorted. // Therefore there is no language to return. return -1, 0 } else if score2 == 0 { // If score2 is 0, return first language, to prevent division by zero in the rate formula. // In this case confidence is calculated by another formula. // At this point there are two options: // * Text contains random characters that accidentally match trigrams of one of the languages // * Text really matches one of the languages. // // Number 500.0 is based on experiments and common sense expectations. confidence = float64((score1) / 500.0) if confidence > 1.0 { confidence = 1.0 } return langDist1.lang, confidence } rate := float64((score1 - score2)) / float64(score2) // Hyperbola function. Everything that is above the function has confidence = 1.0 // If rate is below, confidence is calculated proportionally. // Numbers 12.0 and 0.05 are obtained experimentally, so the function represents common sense. confidentRate := float64(12.0/float64(len(trigrams))) + 0.05 if rate > confidentRate { confidence = 1.0 } else { confidence = rate / confidentRate } return langDist1.lang, confidence } func calculateDistance(langTrigrams []string, textTrigrams map[string]int) int { var dist, totalDist int for i, trigram := range langTrigrams { if n, ok := textTrigrams[trigram]; ok { dist = abs(n - i) } else { dist = maxTrigramDistance } totalDist += dist } return totalDist } whatlanggo-1.0.1/detect_test.go000066400000000000000000000207361343770452200165210ustar00rootroot00000000000000package whatlanggo import ( "encoding/json" "io/ioutil" "os" "testing" "unicode" ) func TestDetect(t *testing.T) { tests := map[string]Info{ "Además de todo lo anteriormente dicho, también encontramos...": {Spa, unicode.Latin, 1}, "बहुत बहुत (धन्यवाद / शुक्रिया)!": {Hin, unicode.Devanagari, 1}, "अनुच्छेद १: सबहि लोकानि आजादे जम्मेला आओर ओखिनियो के बराबर सम्मान आओर अघ्कार प्राप्त हवे। ओखिनियो के पास समझ-बूझ आओर अंत:करण के आवाज होखता आओर हुनको के दोसरा के साथ भाईचारे के बेवहार करे के होखला": {Bho, unicode.Devanagari, 1}, "ኢትዮጵያ አፍሪቃ ውስጥ ናት": {Amh, unicode.Ethiopic, 1}, "لغتي العربية ليست كما يجب": {Arb, unicode.Arabic, 1}, "我爱你": {Cmn, unicode.Han, 1}, "আমি তোমাকে ভালোবাস ": {Ben, unicode.Bengali, 1}, "울란바토르": {Kor, unicode.Hangul, 1}, "ყველა ადამიანი იბადება თავისუფალი და თანასწორი თავისი ღირსებითა და უფლებებით": {Kat, unicode.Georgian, 1}, "Όλοι οι άνθρωποι γεννιούνται ελεύθεροι και ίσοι στην αξιοπρέπεια και τα δικαιώματα.": {Ell, unicode.Greek, 1}, "ಎಲ್ಲಾ ಮಾನವರ ಉಚಿತ ಮತ್ತು ಘನತೆ ಮತ್ತು ಹಕ್ಕುಗಳಲ್ಲಿ ಸಮಾನ ಹುಟ್ಟಿದ.": {Kan, unicode.Kannada, 1}, "நீங்கள் ஆங்கிலம் பேசுவீர்களா?": {Tam, unicode.Tamil, 1}, "มนุษย์ทุกคนเกิดมามีอิสระและเสมอภาคกันในศักดิ์ศรีและสิทธิ": {Tha, unicode.Thai, 1}, "નાણાં મારા લોહીમાં છે": {Guj, unicode.Gujarati, 1}, " ਗੁਰੂ ਗ੍ਰੰਥ ਸਾਹਿਬ ਜੀ": {Pan, unicode.Gurmukhi, 1}, "నన్ను ఒంటరిగా వదిలేయ్": {Tel, unicode.Telugu, 1}, "എന്താണ് നിങ്ങളുടെ പേര് ?": {Mal, unicode.Malayalam, 1}, "ମୁ ତୁମକୁ ଭଲ ପାଏ |": {Ori, unicode.Oriya, 1}, "အားလုံးလူသားတွေအခမဲ့နှင့်ဂုဏ်သိက္ခာနှင့်လူ့အခွင့်အရေးအတွက်တန်းတူဖွားမြင်ကြသည်။": {Mya, unicode.Myanmar, 1}, "වෙලාව කියද?": {Sin, unicode.Sinhala, 1}, "ពួកម៉ាកខ្ញុំពីរនាក់នេះ": {Khm, unicode.Khmer, 1}, "其疾如風、其徐如林、侵掠如火、不動如山、難知如陰、動如雷震。": {Cmn, unicode.Han, 1}, "知彼知己、百戰不殆。不知彼而知己、一勝一負。不知彼不知己、毎戰必殆。": {Cmn, unicode.Han, 1}, "支那の上海の或町です。": {Jpn, _HiraganaKatakana, 1}, "或日の暮方の事である。": {Jpn, _HiraganaKatakana, 1}, "今日は": {Jpn, _HiraganaKatakana, 1}, "コンニチハ": {Jpn, _HiraganaKatakana, 1}, "タナカ タロウ": {Jpn, _HiraganaKatakana, 1}, "どうもありがとう": {Jpn, _HiraganaKatakana, 1}, } for key, value := range tests { got := Detect(key) if value.Lang != got.Lang || value.Script != got.Script { t.Fatalf("%s want %v %v got %v %v", key, LangToString(value.Lang), Scripts[value.Script], LangToString(got.Lang), Scripts[got.Script]) } } } func TestDetectLang(t *testing.T) { tests := map[string]Lang{ "Та нічого, все нормально. А в тебе як?": Ukr, "Vouloir, c'est pouvoir": Fra, "Where there is a will there is a way": Eng, "Mi ŝategas la japanan kaj studas ĝin kelkajn jarojn 😊": Epo, "Te echo de menos": Spa, "Buona notte e sogni d'oro!": Ita, } for text, want := range tests { got := DetectLang(text) if got != want { t.Fatalf("%s want %v got %v", text, LangToString(want), LangToString(got)) } } } // Test detect with empty options and supported language and script func TestDetectWithOptionsEmptySupportedLang(t *testing.T) { want := Info{Epo, unicode.Latin, 1} got := DetectWithOptions("La viro amas hundojn. Hundo estas la plej bona amiko de viro", Options{}) if want.Lang != got.Lang && want.Script != got.Script { t.Fatalf("want %v %v got %v %v", want.Lang, want.Script, got.Lang, got.Script) } } // Test detect with empty options and nonsupported script(Balinese) func TestDetectWithOptionsEmptyNonSupportedLang(t *testing.T) { want := Info{-1, nil, 0} got := DetectWithOptions("ᬅᬓ᭄ᬱᬭᬯ᭄ᬬᬜ᭄ᬚᬦ", Options{}) if want.Lang != got.Lang && want.Script != got.Script { t.Fatalf("want %v %v got %v %v", want.Lang, want.Script, got.Lang, got.Script) } } func TestDetectWithOptionsWithBlacklist(t *testing.T) { text := "האקדמיה ללשון העברית" //All languages with Hebrew text blacklisted ... returns correct script but invalid language options1 := Options{ Blacklist: map[Lang]bool{ Heb: true, Ydd: true, }, } want := Info{-1, unicode.Hebrew, 1} got := DetectWithOptions(text, options1) if got.Lang != want.Lang && want.Script != got.Script { t.Fatalf("Want %s %s got %s %s", LangToString(want.Lang), Scripts[want.Script], LangToString(got.Lang), Scripts[got.Script]) } text = "Tu me manques" want = Info{Fra, unicode.Latin, 1} options3 := Options{ Blacklist: map[Lang]bool{ Kur: true, }, } got = DetectWithOptions(text, options3) if got.Lang != want.Lang && want.Script != got.Script { t.Fatalf("Want %s %s got %s %s", LangToString(want.Lang), Scripts[want.Script], LangToString(got.Lang), Scripts[got.Script]) } } func TestWithOptionsWithWhitelist(t *testing.T) { text := "Mi ne scias!" want := Info{Epo, unicode.Latin, 1} options2 := Options{ Whitelist: map[Lang]bool{ Epo: true, Ukr: true, }, } got := DetectWithOptions(text, options2) if got.Lang != want.Lang && want.Script != got.Script { t.Fatalf("Want %s %s got %s %s", LangToString(want.Lang), Scripts[want.Script], LangToString(got.Lang), Scripts[got.Script]) } } func TestDetectLangWithOptions(t *testing.T) { text := "All evil come from a single cause ... man's inability to sit still in a room" want := Eng //without blacklist got := DetectLangWithOptions(text, Options{}) if want != got { t.Fatalf("want %s got %s", LangToString(want), LangToString(got)) } //with blacklist options := Options{ Blacklist: map[Lang]bool{ Jav: true, Tgl: true, Nld: true, Uzb: true, Swe: true, Nob: true, Ceb: true, Ilo: true, }, } got = DetectLangWithOptions(text, options) if want != got { t.Fatalf("want %s got %s", LangToString(want), LangToString(got)) } } func Test_detectLangBaseOnScriptUnsupportedScript(t *testing.T) { want := Info{-1, nil, 0} gotLang, gotConfidence := detectLangBaseOnScript("ᬅᬓ᭄ᬱᬭᬯ᭄ᬬᬜ᭄ᬚᬦ", Options{}, unicode.Balinese) if want.Lang != gotLang && want.Confidence != gotConfidence { t.Fatalf("want %v %v got %v %v", want.Lang, want.Script, gotLang, gotConfidence) } } func TestWithMultipleExamples(t *testing.T) { examplesFile, err := os.Open("testdata/examples.json") if err != nil { t.Fatal("Error opening testdata/examples.json") } defer examplesFile.Close() byteValue, err := ioutil.ReadAll(examplesFile) if err != nil { t.Fatal("Error reading testdata/examples.json") } var examples map[string]string err = json.Unmarshal(byteValue, &examples) if err != nil { t.Fatal("Error Unmarshalling json") } for lang, text := range examples { want := CodeToLang(lang) info := Detect(text) if info.Lang != want && !info.IsReliable() { t.Fatalf("want %v, got %v", Langs[want], Langs[info.Lang]) } } } whatlanggo-1.0.1/doc.go000066400000000000000000000003311343770452200147440ustar00rootroot00000000000000//Package whatlanggo detects natural languages and scripts ( writing systems ). //Languages are represented by a determined list of constants while scripts are //represented by *unicode.RangeTable. package whatlanggo whatlanggo-1.0.1/go.mod000066400000000000000000000000601343770452200147550ustar00rootroot00000000000000module github.com/abadojack/whatlanggo go 1.12 whatlanggo-1.0.1/images/000077500000000000000000000000001343770452200151205ustar00rootroot00000000000000whatlanggo-1.0.1/images/whatlang_is_reliable.png000066400000000000000000001436461343770452200220030ustar00rootroot00000000000000PNG  IHDR 3bKGD pHYs  tIME5$8Ӝ IDATxy|[ՙbK"lN$(40e (%Ӗ)meʴu:NgLgm m. Zhg(m(P(d$8l"ْ%0Q$'ǖ_/^k]O9\p*++[Ĭel!ljhh׾9sf]Ve˖y;w _BgַŬeW`g};$F?|{՗}Qaf(bfo~}}Jl'Ԇ 9fVkkv-I4iSNnnn֭[9gXח8'"@8GV\on͚5i?TK,Kk%ώ;$Iޞ8޼y3jf̳:,INoGgYeXh4qxNZбU?^yIZ|yFS}vܙs:j'nmmqmG&~n{Y:HpZ4ͭ8+cpBGIS]]?>gGGa 'T@>봶gIϝ;W]rlr\>8+E"/~Q4|f(\8?8~t7pX~}nvf(H '$@8X^xnSO=3gꮻҚ5k+ڵKw}:,=WTT;d֌*eyr+H G8?cǎD Ço__ O|>׿ָq5c 8 ,((?kfv@ɫ =쳺 1c"8)---ʕ+#6zNAA/hÆ zlCqͯœm<@H`;M<׿ۿkM>]fb2Mp([Zb.]:*̚1!c٦~]xi0+KrssӺSIIfϞ/~Zlf  Mk>{ꫯv։J rdV`\wny'HܸM{[iKvU.8Xg,_hS6b1n$U+d` !2zmj6pbY7  0:;;i&w}Zp!A%[I ,i 㔎3<( _xx\XLHDpm0,YiZvj0Y̲$r8[GOחrn%m#D# _sۭ/X3fP(?.I֥^H$Vթ!Kә5_rnX"8XO>dxҤIz4gI^~e>|Xz衇RV鵮zI[ js]!C:URR8;aiӦ%Vfmݺ:ZK6mUX= !l*//5ݻwɓ%I:x $9qlӂ $I?ʩmo ݻ7qǙ9cX8ǟgs\E%{b)?/++cX8Xg5^{5-\PDk&qSONF;;6/fLO`nK޽[ԧ=K.DgNy睚1c M6Mxl)mqf%rB'>-[,g555c˲}/%AR___|QJy??3kFQJk H4BpG$rrr{Qyy$}}'s|u]Ǭ#\NwܡF+ k}Non&H uWW^׾5f"3yaۭK/{z%IHD^Y!H_L_^7|{9EѴK*X @|Oب-[nC1YҚhCSpXydf(W_@K}IpYX_~zIRaaܬx@<)]30/qB ,w9BlQ_r\Ƚ# @ ,dɛ+ lwZL_ yIw!RXp`S$5)5zAMBN^B3rY;y3r$yX-"K* , E GHʕ+3ͭY{yqH%IxL]=6l٨ e֟zGI[kk$iƍ#Ƒ?>oGgY ,d|wޱ X(<|~3wj֙8:W\4bV5Zp#٩CG3#|0s : + ԔMO9O.  l|[HI~Qv1;#8)JBX$@ ,dOcy}$BXЬd*;hjn%0 ,d^ ;,y^ͭ8+;n$lbӦMkŊ?[n 7ܠ??f\+T{C[vPtW(~['ɫ+V護RGG;u]z36E\< r/d555$}_#<ŋk(_z{{36>O"tm[nQwwwoH&O|gkVt!=#\ Bsf͚z(;w5vm=i;#q_2c ,V~Xu5}tַWe⥗^J/[lȶ_|q"+'#er`C$׷mm޼Yznoovؑ8?slYfIѨ6nܘqyIb`7B}o/׸qNF2)ShӦM={hɒ%u7hppsUЬLlVONWVV=']sssFm/mHcjnQsw$B@@ qo:;;3?~؄v0 ,K''8՟P7q܉P;NJ)΅;vH=^{$)'~~Z+W4g$Xg&+nmmm$CmΝG}CG3#|0ϮS+k&L$mBF=)77(헤Un&Y#I<@FI˗2տ+JN`%'jkkO:^X5؃>r~_{H{Z%IhDm=.Degu7n(IZp?$Oݎ 孷!Ƒ?>oGg,XN4qqSSsOL=VmNp ˑr3f$9r$8p~555՟*ű =( p ,'˥ٳgK(; > jǎ$׫sfl,J)L ,ZlYÐmWZp8,I袋Q})/JI:B,Gˡn߯H$՛ IDATrҶ{ooθ'D# 6YCZd$^wy =zg$ o_bEOjWr ˑrx<˗_Wkky}sg>D~*,,̸~ԔUNj`+B\-#<+V(駟O?}¶7t-dE.7 >_E]tgΜ_W뮻2Iܓk`IRsw  @clڴ锞GU__~[---*((мypBY}//R{C+XHVuuuV"ym&[U^XB[HB|B[RΓr'B ,B2ܝ +  ,q+X,F PH9OB , ,؆/iVrKzA@"H^RvY9Y=.jʪX ,SIn#Sya KmX?oLg<v2rWΖ$ݷ^ &@cl+/' `$`[^X ,V^ `m }F68?xq?k)|1f1H`h h;;O.%_A|>櫬\n۱1m>tĸmՌIFZGN#g ,V۫X<&NY^Zmk7uhj/tLL{f\\f]#~Mћ3}>cC mh:Ѡh:9&#Gީoo~]y՚0y?ov\8vᾰ#,kĮi8/nJ ^֪o(W &miNp0:[;Fu{~yߺ׸iFnmS+)m7N$`;oH]j5FM,S7=#F/2'6Kf4-YܥIޞ^m]In[k*`$) XT=뷟p>PWP6 UFzD (;Vi?b^0;x S͇Ɩn ƴe&mk\qϝqJiml6JdHRiY1N$ן^غy:KfYb15n?}SeKy˪O4ͶM{̷bv4jr)|ʋ5qZE+SP˥pOGQS}:Pw0mm^yK]s]q<-ǭH_h4w^Xy=&c>s]y|6.X"Rj!H4H4"[c䥳5lRIkoжu[c6K}' t[.K} >oqUVW«ޫ7ڷlW2J`Wlݬ4 OVaܶ7%KM9Eg_HfNyU:E>c9|ɨ][[^]@y>3[cϨp$t(1>pH`$OPȽ aDu*zkڸ#gxorѨT[SQ[ǭB!]sz4J om%sa=;_sKt\sf9{Os?mԾp /*?QXYUn'}OU};;Uxyu Xc_@< Fd԰wɫ<}Pa{7.lI7|~?j%f+Mⱸ][ CWieQֆV͘d_V[S:jîR:*1sSKZT7&]wҺIQL끦vmՔU'ݮ/rǙаШeYw7oW^as^z+:w&N1F7d&I`Y|l7[͑56Lnh'm}䎛z^O`|mK#92{:BVr!wK.ŭ#Ė+w}C>~p~k[߿SgWݧfup::GFbL0y?ޅy?\$Fr3i{r-iJV\on͚57X̳Ç'baFm_Y~r\9|zG9Rkv'RR^ jjiRɤ2{̜Lڸqɓ ̒qI-ݭj8|b~ @kKWmV(y=cx\>]Ñ t:l|1I}=ftyrܵz6nz;CaVIrr0;6n+Ș+zNa.#I˗/7en?u=p h,uEKF5.\{?OuϾm60_:ڷuޤ#mƉXT=Zr%-7ī QQ>b1F_7=$~ac:}.XvJ;^lg쓼F,U{ƼxBɐ5gu9? HƸ.V`\$߻w#tI FTwGqۢln[Jsu.fqUExǨ]g[gq4y% $2M̊o79d&MZMcdT߶ZWX0u4'n+isu ""e뵻^U (Op0bzƌWN4/;O{1?ܯ=viCˤ@x:w Ͷgoc|ͩgMmh Z.KEe_WrdYԴA{W5cҰmQ>|~ +lv?2pi ,^q~}$iu[j~xy #81g~yCѪ^1N^ysZze}a>8N u/ߌlǻZך6{m: O$#n\dIT ̛԰e5My<t4][\+Li3ۥ\Wumk"}f|yӿMרiɲ,U xl5O m_-!7-=LLv{h΄ֆ3$8GհwO.YtC)[,c}f ¢qC>:׼֫Wm[2Gf&B}'Нm~ޯVٳl1rEsoI`YEnʥظYSe?^09>vhT!DʙT`^=l!q#a]V6u\&ϜbU~ٸEeϣ~p^kήq g\B獓%@`G"F+ҺaC>nZLڲ,{aiK_ָ݁wyuaM&d)vL+Ta0mٛرOي_~޲,-!۴0_8vڰme5(.˥|u }[j?à{9}FmQo?m"}a}Os/\qCo0AlHx|^nw\_7ܞM嗞1_Oe h$Ӵ՚R;MK*գ@[@=5<#'УhIWO(1z]B$ Lir]̒#?Ky5UGs՞Ikd^)<9آr{?I;& T[?1j1,n:2`aZwm4| ݼM0[Nf,eT,$/ oeY tkMڲzQ1)h~xLYeZ5|b/0N8Tۦ`|;=ֺVR+ItXX4>ûA6~ͼ~eg\@zBGh JumM$)g~SzJ0.m~aJfs֘kAu;7idv{72fՌX0sc1n[>ySm 3*uoLy6u7].# (8%wOk͌y6\|y2WrJd,mUM{iH:5kEW_,{>Jkaay?kGt'MЇ>q310wyB')rqsY0"@8%{I}ꞓ<|KRa1x%ZZ̒i孵욲4K˄)W?L6lOei+O/x\sg_%睉1φ#T+RΓ 9֥2扄XL vg?oR:c1,K'}]f>mVx<==F 򍯹`B-SK\q-<}䎛rix٨ީn1{_.TMsv57C~Yα$V^A *XɵS5cS^injڎ/ͣ+>~QۉS*~fOןYڸCWW[Sb x<.ף¢q6g};A=>!_gݒs.~%'ǫnON`IҤ>뷩jkjQ$IrYh|x.,>G|玁Bjgg\)])jʪ%\/)޻= H@ŴJUG"p*IxssT{3g.=8SfM`$$NNnΰN9G%nGǼ$g\@C8F?'.b sc]̓TȽH`1ۛr$2 ,8ʌBP' $o#RX 3$o#,Knt$(݉0i[L$(r? F%Sqr,7udx'yMyA\E ΓrYB- C SS6=<'iV8$85e)#u0$H3XrgiҠB9u,$ܞ} IDATH3z  B TSV-ח8q$s )Қ Ʌ'+ CTKk.R{C)Ts+Rya cy}iuӻ/m?u2 [w2 ,]%E D x+L$w,UXdX@ۣ}m  2:!`gڂ>g\ g)&d,׸@X@cOXN-^r8 „"g#jjsH 3, Ф+͚]K#0{aYfYc G0G,GX/6Z;=4`=fasi6pM&, cKvMf= 4È bFa6p`Q[100BHX@ } #|4À 0Bk0BF``q^4xld6$I6Mta@q~钨ܧLq&Vis%7moӤ@lg.UT@ ,9l]>IR Ы[Va& !d20``T=F``+FC0L~2L]HC0L(=^cB @vu;uhSOi4 O7߻QfSՖ<!BڼZw$fbG4&I&Gg#ljsM#0~(*P+XXF``TV4xl1Yd-%W㮕祑BX@?^47bew>ki$O9l[j,;LG˹d!C ^X&INX;C cKe3}>P;C bc*茄{顑$ @ ԔIi-i$l2`nqFJj9:^X ,`OXΰGbFB l(M+66,f\P-KC0X ]P$b9#eFB ^XNSu`!гN/, 0J6]6&F`!rA9cɤ^XUb0 X)+ )V`!? @ .M3ęM&,`셕0>Zi$ beEsUU`,;mY-VIbS~F@?`.0G92%Iͤq',(*gf-5aקgs8&*+k,vzz?hX0I4qt @?`è)FAw,`,6LCX0+ɟ̴ IRS[E܁a\X8w|Dwd6 //7`__O>m[HW:?;ON묪KvaIREE>>g\ g2B |,oKi̦?;m*I˖-K쯏Kumz}|e.ni05YZpYlIwgOĴiӦO>#K3=WWl-C JasiYΧPU0r\ٺuYQX 8.,ФVU=ݽ@XqyD %L1^7P%Plg&RU 4 e1 !pJh1[ʎاbf5i,@"k毈Jhؔ0>ٽEgNC7,Z.Öf,vzno9HIX@(*.X%b,׸kv;H9X@(+9ƲdR+;qXB$.TaVl1[̊grR D6GV2ҍeϫ5;bRdr\ٺfui! U, k벝f^W^'KF,D$% "KR+K6Xnh4`D#.Ѥbc٤ְ̄Y #䮙"bfBɬ\W,f$)#6_2J#ɬ4`D#N+|8azK-&䎧#&N NC7,Z]Uj4$or\jh$D,SWqeK LxƄy4 `DXH0&3OgM^ fjjs8db!0R串uzr~_;*%Ivʊ(?#F v;aӣ5;תӤwvSnzҬi-W4C &II&帲nwElQW{yi, Arg& td(˙Zkv;A 9l-4bT+[&X.A0Ks"֥Yub>-gH! ,`$t.wq:Ū\Y5 )$%DTeEsur:ɤWF92e!}vUpC`3ǖE+UUew*7#rH$U߬gH! `#\aV_ReEs"чָk5qx@͡]]µI+, -KnHxHaV[ZvPG=8nKn3#և]}0S!!RYF0ӑ\,ֈZsZ;=4`X`)lRݲM+Xo5[5:=W2YWIr\ٺaJ-47$lNeZe3یu 7,% t˒4cliz$š9-*KcC+[_P+;bbӬhf+Xz9T%yz{;ˡg tiR]>9m9Y} ָk%IehL`is%"IZ6aKӜgjmݮ}My55LӔIYAa!sٝ:h>9u>W-7v;F,vEmvNёu6ϫ-۵vskr$e;h4@ Z]R{nz::uE^_W~U ժjV~FORaVAD٭vۡ^AV]KZnwiz4fP' ?s|Ž;liYzmohrdb2L04ʊ0k*"-6]Y}j]=dM< !PaVnXRWT㮍n1[4ʑty:l?'T'+RaV&ORE@ #0JuJozGl2+#-]i.uQOkG;*R,Mɟ i\HAXbӤ׷{BI2$)ݩvzu6-׎JQ3 //7`__O> ud\4}٭*>y|mQ  t^ܬJ\FwaIREE>>g\ g;d34#sfdNUg<ժll2+͒4+%K^(m! X%iٲeI"q}}ܿU_{˵~Ƙwuۮ@ ٳf={#6mڔ)9}}yq}a-T'%|`=ML&9m9m3eOjhuw*oVkG6M T5Vehp8`H 9l-.Y% TZwcDW>5|I1%jhmԾqE-,yUPjIRaVeUaVa "L |օZ>Bm>M5*cK#MQnzN7]&=_Q=\V5ZIR3Krk I1@қ9WpM+[_yRC]V~[e1YԺCy**PE@!0b串U㮕l5ͪt~utìήΨ>wVJ1ZyMcq}t`[:,))N{;T zNZ%y7 Se}Uf٘0]^u+I&XU;^Lg ,#J+[7,Z6o>:Ul+KL2n+͒4IcFRgW:}^y}ޘ=]̺a@`Dr*+dvo{M2n=<0 թ(UVY46cXRBh6%ҮU_F$Vz:ϫΰ@9nמjvzdؔ2g;GQK D $Xt,<’J5ژ,6]. FO=Mjh5kזƲU]KZ%ׇg9"4٦q-gm׮*}t`vW9;^4qt$ץOkGZGzhíl15^W=\O3$%,%y*+v =M Z&SpGt:hmjn?#-jHj =0T8p @2Xp<0$j5z]wڽ}oѤqe`ԘV}ؼM.|>>u|| (ne;dؔ¬gq D$S+\I &߭FOj-Ir̬qeG=lÒ&),wZ Mk׎JMɟfr3 ,Hr9l帲{[cjbb(5wnIJbvn7CN]YưE F:ul=Մ#J[O>ײ$y:=1wmDx%IvzT:&B.Iu03FsX"ʊ檬hQc+TDUo Q5c!>UD~W}0@N#,Pe1=Mf-=BaV$)ӑ\ۂˁ>-G::xz^r-n w#[ۻމd /`j׹R{W:TG?Ͳ-Şz^[j URFq%IZz{ %`̱uBBkܵjӤFOӠHKWFZzyeeH vM tU ]7+bvUbfc^͒5Z[P0wOhC KRSv7:b"(Yܬlm5]Lɟ$)Q?]+=0ktznD+@ï`OV WQk'b]+5id7L wmVWewR4``!6ʊ>1X뀱-|ƾjvM+K⾖X!&lm\ Z# >qek"y}]uRKMmͽ¨ciKv.玏_UC-e{ճXHplgVP ! 9=#%T>\"36^3yA?}hctSǔq3nq=t_~ eG2-$-f ;@B/G-lw+ݒ& 4 @^0-WVS[u-u޴ K|gizԸC8CvUVkg[m6u@l[q  8串K}KL ;`,MLx62C)c9‹Q/4ߨѶt>>S[~E z2 djݏ%E,{:=rwό8>4T Z;=^Ijkvig vyȿ0%fw68{3;z0xΝm3T;>kշVk'b}z$" 8sluâӗWVGJEs,<(has0@.;is3MF ڲcS!3OfyCxO^ JDݶn!# _=$#L,(c?cXf?Q'aZxd5[b<Y㮍`y|mj6ks԰ܫuȋzg^AQzNp+\LPՖ}AQWyLi}:k93K9ciά&mC>YLH]q"ъKRdI OS(C qZ\rJEWw;l$obms{Ii_O3EݶJ+]"bZ]ubB|K4c)q賶\ofS} uf =U&8w0w~9mo {as9Dwڲ#cڣ'L#uIcd6}^)x>{3R4.@s n|rٝ2)XgLEnSY6y8QH'(͡AtC5̱Ǥ /H-Y1Yaʨۆ2`s |.1jꭷ_$IeEsehqɂ>ްh^vW +|R-`帲YKܦW%JVpSpљ{ )#'aC| P?Oϡh粢*+RGaDNlk sR?D Bûob1>,0(Cѓ8uJz kLMcaR ioƞaapҏae({3&ir$3,$5SɈXHjXHjXHjVI  / IZlوl~}&)b9Yg?~WUIҪU9>#y}F I I I I IJ ?|Fiԩ3g +,w7 [׶SN9E?|CSSO=ŋG $i֭V ۰auuuIJ}jjjҦM]&IXO=RH !La7x:::$I~~۲hܹ,Itpxk[jɒ%={v=xy*==]&L… eW ۵n:޽[GQVVJJJTVV&fw]w顇{.ϧ>@[lQ{{Ǝ9sh„ 44l٢ 555i̘1:uN=Huwޑ$|я~u뮻N/jz|0lvޭ.L---p~}[ҳ>+m̘1o[FRȡC_=zm5jzyȐ5\|<﫺:bd'?I>}: g}Vu^JKK|G+WL\,B‡^{JKK7 O?M6Gg?Y븏>HvWx__Zt:;;ih E|5kVZ5fs=:ӍPjQr^yzj_o[^ziJmۦkV^zQE-[k25Rիw^}-Zd\oZ[[i@\SS.]7#Gh:x$3믿ÇJկ!Iz7o~RCtСCܬ۷/]tQn|P>$)--M?sN566j͚5:%Immm;vp뗿e˶٬o}[裏ڪ={Sff`/n8v:sejRP{{>ccyܹqw:2e` 1U^^2]}ݪ$-^" &[nomj*}4:0?P]]$Nӆ rJM0A:un6ϗ$m޼Po;URRluYztUWI wq7z}ݧӧrHַo8xݻWRg(z,~4o&I?N:$I۷of#ؓO>)-IZpaWgq.rIO>-4?5?OKQRPhX$;6c % 6mnv_?O+{ܴiӌǯŋ5s̘]F //Ӵi/6oڴa:7pC8N]wu_Wn0w߲2qh3,RP˝^Ecq8/0^~eٳG_/B^!'|?5|IRKK֬YMF/f/_N;Mgyf͛% =Wx=^z`<߯W^y%"&pp@i^4#ԙg{Nׯ#ӦMj*ck>ZʺF}i޽ڸq~_k۶mL=]94HX)(9z꩚;w/kÆ >'Iz#^9DG;?P_t{Y **I}[^^n<3g o]wy|UW}E裏={67HW]u:묄~K:5R؜9scbH^|E-ZHyyy={z!c6;SW\q צO} 6ns===裲1[u 7YYY*++$577cYz$7V~o7|c'5\cO駟WI."r) `馛d2$I/y䑨577K/Uss$w.jYipB'О={3]wݥ gC#Oq40ꫯww}Wr~~.x Zb{=]wu3f6oެ w}`;uM7=Z򗿬n^Zw}*++%k_O2j777kԨQuO?tuuuԞ={twT?~x~jc#(.K/,Y:mٲE\rI}? ?xr҇tuuZ][nՃ>(߯{W{oSO`d{v裏*hժUZjU}׿UvnժU-h+R>O/^|Ũf1RC#Ό3T^^/| l'?^z%cj#׶mێyx=0aBg}{=}S&)bGO9igzz }`B/=mܸQn_ڵ,NvO1c(>ȑ#}DР>+))lN9yd~rpBH0طooҤIX,)Ӯ#ed\$r=׉`%5R!Hz@@;wбF _rX'Kd4z>1c ^^_ Io߾}x<:\MMM wir+VhŊ#}' p@*"ˆM oe˖ sM:uPDBoXٰlܿ~bĉ9V`e…4@_{뭷7fY&M: ?._SSuС>+..fKy p<=:R>bd`{:mܸQ}BQKKKB_pv^c}}U[[Vn+33S*,,ĉk*QeedM2e?cpg BlF|c?|>֯_zK7n;xnݪ۷R:x@tOŋO|_WϟkgUyyy?j(-^X_җg`,_W*//7:-Yd@h(((/˔k?Zz$)33S=oĻᆱxXNI Z[o` v=zM6lІ j*}sӊ+dc~W-Z2vRtt *L{%%%iѢEF=?rܹszW2-[}dFmٲE7otiݗ/_δ 6mr!OOO%%%?槟~ԩS"5W^u4))1~c/111[}uѶ/F4e*%%Eo{+WάxyOng&3GڗE t̉'4b}'m޼Yqqq.+..N7o6j_ѢEt{ŋvKQY{tifիWݐkٲZli=#00P 0R ))ɮUrrvyfZ\rj޼2ݐ`Wζ?+kV@@~n,񑧧3큝ٺ/֨FdvEc\LHHPll?nFooo+00P'˗/;vd8+T *dvrʪPBŋ^ppm+))Iqqq:}N>m ò.^h4:C)44Tߨ~7կ_?Ϝ9cM&S^ڥp QѢE .ȑ#C~7?~l=˹UL)RD7nЙ3gt+wZt9 w;___[?Su]:u$կ__ׯwFb9R얓}Ν;s4LhѢjРpt_>, SΝ^*44T:t* ݏ3g8 TRCǼ>v^W9rD˗Whhѹ Am?ۜ~$)44*Z*T:t(J,L U-rBoV>ڗ;ܰar5{׮]_e[l1znݺnݺN7߸T~Ĉ P9s/^l8=N{N hٲeZ|e VӦMUZ5[ .Zf\}ڿ{=СCg%ŋ:tN8p].\P5ꫯ.k3ݧO<e*Q"##u\/.5?4~Zje˖9=? R-2Ԝ:pƎk(P@ŋ}9T֭,vf>q}i#jѢ<,4J;|tvʴ+sv)͚5h}+WLm***J͚53Z߶mۜvs3J*.mIII4f}>|:v-ZEر o][_I&B3fuJѢE5tPmN"чP!rkΕ}Z\9?-[TttJժU+eMk׮ԙf͚裏ԲeL5kjҤINm={x:,ospˠA}y1bDl֭[[q=z=fҤI.ӫW/27믫J**QԩZjXbjҤMԩSmڵmpƎUtjРW"ECZz[#J ,\nf'N{ʕ+>&!!A'OVfTHURE 6TJN:|cΑzJ[3-۵kW%Kl?l0IjFDD\rjРJ(VZΉ~79R 4P…UbE5h@uUŊUhQkʔ)NG?L<ٶ=5m4ծ][ŊS:uTjU,XPZvm]V;wVBt=~ V*U4e!/_oF) @5jPƍUjUf͚>|ȇ $ 7o.%&&fխ[77H/¦wkf͚eT89((H&MRŝ.ۻwomݺMwXTtG=zԥ5kԄ o7⯾JǏwnݺ7ڞƍ;=7%9 L뵙?}jz.-[-ǺbŊn;o>l4\Vʔ)':֭[sNgÈM!V>g>RXXm(g}ݻgZ47]|˾7[lx t7FWϞ=d?Y~V^Fkmv6kݻwyV^իWkĈz7Ef%L?nPϫW=_~_|SNe׮]˵|rk9_2܅ ovSn)]+""BիWי3ggʕݻwnݪ[?mڴɶlfɓNNN֩St˔)c2'&&g՜9s$LLLԦMi&M2EK,Qƍ3]i֬==zdZ5%%EVҷ~wyGÆ ͛7/7&&F?\ɪ'եK7RW믚>}^|E?>C2->WJg#tgsa;X#FPɒ%Qxsgn˕b˗כoi^wEEGG;]H"z'4"!s]dZpN1=%iviذc(9 *T0SO=ߑݿ:vh ( *($$$Cocǎ9 xz衇Œ`S }g;W_K.vJΝ;{_7nTfr&Mm۶\k֬Qdduz,C´!crr:uٳg۝*TP֭i)֩SԱcG.\P«:`i͛75|pرCFɓmUҥj7TC^ym. nl޼ń 4a„| tY/Ejݺ֯_c٣8۝7~-ZdF4.CAAAFCYޮ+A/˖-իW.שS'%-L̯sŋڻw=G*66V/_իWm(4}}GDDdoΎ1p|V?g jժUn>|Ν{ǵu̘1JNNV…+h/Ɨ.]̙35f[o={h޼yӧOԩSݻ-Є 4j(@`׮]իۗ!Pk[lѐ!Cl!&LCرc5m4If2ѣn*??l=w[y涿36g]|YԶm[iF/_֚5k2ԕrӧ]_]%JmӦMzg{n*iڵ˶5jУ>*???Oڱcڷoo[vv[hӧ^zvq/^ÇgjƌznG}7nC#GԈ#lΝ;(͟?_ҭXݺu͌ciر/ꭷқoi O^{-C)QFپk룏>wrOe8i$ <إpWɗf͚0%zwevjXs̍&_}||_L۫F~Ԣ|ZpK6|4*ؘ^&w} 6hΝٚDrjѤF}lYQ[.v2={P?\=z'''+ @6mRڵH"zU\9=㶿/\0ָqzM6-C}'IW~4凛7o`շ~-[fX600PU([ 3y|E͘1CO=TkBWvy >>^|[nիolO8Q={AѲel’r2dHy۷(R6mg 5<Ν;tV+~ ⁎<#~i͢۔?!eZrN}ZL۔*))I .T^j^IRJ.G:].((HϕףOϬ^V?gPNj;u(o!JgϞv7wؑt]/Lë~IMrŋ7.*aÆcǎ}7sSN2W&Ju9}嗶;vixc.=G%Kj̙ҮkƍvCP_yUfM~7DK.Y!!!z7\_p)}@kW޽{x*]Zh&`I9 bw^;wNFE+˖-tͮ]VZƽ(pSv>x1SC Gپ}{Q#ӂ&Mɺbbb4`M>=φ 1Q^=/^Mۙ, k u)[Ϛ;Qo&M~vV5++WTBBwGUf͚~n ͒Lڶ9s&YJ޽soƮըQ{s=#N'Y,Yzgo\td?}c9h~&x2+|֟ӧOkӦMfkXXY~[_&ɓwV*Tzp7-{[WTT x63yP\wOfϞm7a_|%K1YQOݴ7CۛhƍvgHmlڴsDDMZv=y͕YI; V"EBKvfywnoRԹsg1BӦM3b7Ǵ'{VJ 4p|["EӾiF|M# K_F6g͛;I?8jʗeagʕ+v3 2D-[T``eӕ.y-5y*ZEWojwIaaaz2e"El+ߕ] \1c :4먢EF]5jpխ[WO>KV~ҥt颃jZblْ;tkjӦMm3,ǝu~Zn˴sbtizy-\h=z8LXmS8/Lwt֭[-+W5iיOj:Cis'|R .?5l0͛7/ן4r%kik^2.;L}FWV /ܕ~Rlu=M KCiǎ v^zYfY;5yj5իWѣ5zh%$$hÆ Zj,YbW8p~<]RL{rG _3fQ/`u2icWRC?wنc򣣣/ Y]V^mܪUݻ; u<|\7k,+V7߸y6鍜oCLuqNٌ_ή+T`޽=5jdw?bcc.>>s/^ܨ+޽{5,?%%E ,omJ*Gɓisԡi=:['}!`ʕ Cxx7֯_+kϞ=H"SUVV_rEO>^{5͙3'ׂ~RRqE=wBBB4|pǥ=V-k.͙3G/^|E˷iFӦMiiBX7Ĝ #4ӨQ#EӾٞ>}Z={T5k׮ZjV\i<Gvw-,J &H裏$'FSRR +%K5k>rG?OƳhϞ=~zα$+VTݲOK,閙e>s;6ÝT֭ӿ/tBfٳ믿VjgjZdKC{97wOׯk!3ޤH=Vжm[(Qy5}t=cs5h/GRRRjfv>={V}qfҧ~j29 ۟uŋۂڷzK]vͰ]C }[yVulZ+VhӧO׬Y$I /DFd`Rrcؽޫ fGP԰gϞO߼y6oެ /[פI ] ]v ֥KqFY. Zʉe߱cBCC%q̙\?vZd"""l ׬Y5kz_p.hi۶֬Yc]'F5i$XB?BCCcǎ~Gr-[1Y5驙3gCJII͛75b{z"OOO>}Z?[P!͞=;_ i3a&Sre3f.^}{/T{9pw6rH]tI6m6הY`ɑ`:tEiҥݶ|Ak9j}ݧ^zi8V=g1sLtWч~!CBׯkŊ-W.]?gM4ڵkCقCiə~G>ڶm]w̙L hB-C=tZd bWdoW;V/:gO+WV2elEGGͰc=tF[n֭O(Y9d 2$[k׮ڵ8۷ٳTɒ%UNL-g>#Hg3]vueܹSҥKrjܸ p׊4*)b4ibW$C]M6ӧsN߿pe]rES``ʕ+UN: sK̄N[t$syz>.\XoLDڵ5m4=zT˗/׮]c\7)00P!!!]j׮ZjԳbŊt9|٧ժUӬYOK,QlllV\YڵSN2Lۺukג3EՔ)S.|۶mu}͛ٳy󦼼TD UZU 6TDDDmwOS2eԽ{;]~~~Сk-|_SN> tIUZեk:fҭB }5kT͚5~…tիWcǎllr,XɗӜ'\b-11QGu]rE7oޔTP!,YReʔXԢVާ~~~zG裏ܹs:tu5dɒRJnR{nn[HlqӃ>|d:t9 g͚5_RwÇqTJm4m?W^nm l $I//YY~k_}+͜9:*URt >s`EGGkǎ߻tyz;AAAvҦOSfY7t޼y۷B geG[oݼyS)))9rLUTI:q֭[ (3fZq{X 7wկ_?%$$H5)3ggϞCw%ooo*TÃG:p, ԰at« =w}SBXfΜ>@/^\իWWXXA] Xիz3`Cl K#``iX4,X, FK#``iX4,X, FK#``iX4,X, %IK.m۶wzҳyuHn_ǎ#_8Oi}Hhw}pҾ,K:wl鍴Ѿ?Gϲex>Gx8> Ǒ, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#`Ҽ$iҥܸm۶;No_zV=8~iرcw )}piSڗSyIRΝ-V>wwGh_YlCGh3GGx8Ҿ}``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X$-]Ԓm۶;zKϪǏ!};v|<}#}wu~yJrX4/Iܹ7Gvrh?˖-uHh}Hh7GwX4,X, FK#``iX4,X, FK#``iX4,X, FK#``iX4,X, FMo&IDATK#``iX4,X, FK#``iX4/v?֥KԧOC_~{Gg|Eu5p@IRv[***J?SY|Muڕ C{ՠA\~\ttZlix%I?_ `Ϟ=j߾]zկ_?%''K_~E.\О={4tP(P@4n8EGG@#͟?_-Zӧ]~>ׯKFsaÆ PXX}͞=۶?k׮@"M>}Z?˗/M6i˖-kر.7`=C'Nhܹ|nCUO>W^yEj2^GoFEE~ꫯ8 O`݆>s[ʕ+mLYsv.n ~]r m* @oۧmۺk׮СC4hp Zj7nh׮]gnCbccK/`.?ѣq$)((H v *~ <.t5G?m?)S1i;{,|/o1~~~/^yKz)Knܱc$I˖-cv̙3m?h"[زe6oެCiȑ{.?eIȑ#%Iׯ__`СCe%sz衇$nbbbe˖iҥFmn'mذ|<}#}wu~yJrX+WjժUJHHz<<̅)))> 鄅ܹWXa*3wJ,i0۷OgeܪU)IjڴntC%IǏ+JY4Inow(n8>Gx8> ǑyV>ӧ.ߪ]vn}޴^v1i }1NXcǎNg+U۟744T~~~vΜ9ׯcbccm?WR V>;wn!!A$y{{VZ<gBxJ[Wkڵݰa%I͛7Wف `壸8Es73fPRRR˾{{1SXhڼysΝ;kӦMݻ3hȐ!N… @]~;w7nhٲeZlY˾zi .׳gOmڴI͛7VZƍcg|A;޽{Mj:zo߮sΩPB]ի s@!MHHBBBRBK#``iX4,X, FK#v^r{IENDB`whatlanggo-1.0.1/info.go000066400000000000000000000005621343770452200151400ustar00rootroot00000000000000package whatlanggo import "unicode" //Info represents a full outcome of language detection. type Info struct { Lang Lang Script *unicode.RangeTable Confidence float64 } // IsReliable returns true if Confidence is greater than the Reliable Confidence Threshold func (info *Info) IsReliable() bool { return info.Confidence > ReliableConfidenceThreshold } whatlanggo-1.0.1/lang.go000066400000000000000000005361751343770452200151440ustar00rootroot00000000000000package whatlanggo // Lang represents a language following ISO 639-3 standard. type Lang int // Aka ... const ( Afr Lang = iota Aka Amh Arb Azj Bel Ben Bho Bul Ceb Ces Cmn Dan Deu Ell Eng Epo Est Fin Fra Guj Hat Hau Heb Hin Hrv Hun Ibo Ilo Ind Ita Jav Jpn Kan Kat Khm Kin Kor Kur Lav Lit Mai Mal Mar Mkd Mlg Mya Nep Nld Nno Nob Nya Ori Orm Pan Pes Pol Por Ron Run Rus Sin Skr Slv Sna Som Spa Srp Swe Tam Tel Tgl Tha Tir Tuk Tur Uig Ukr Urd Uzb Vie Ydd Yor Zul ) // CodeToLang gets enum by ISO 639-3 code as a string. func CodeToLang(code string) Lang { lang := map[string]Lang{ "afr": Afr, "aka": Aka, "amh": Amh, "arb": Arb, "azj": Azj, "bel": Bel, "ben": Ben, "bho": Bho, "bul": Bul, "ceb": Ceb, "ces": Ces, "cmn": Cmn, "dan": Dan, "deu": Deu, "ell": Ell, "eng": Eng, "epo": Epo, "est": Est, "fin": Fin, "fra": Fra, "guj": Guj, "hat": Hat, "hau": Hau, "heb": Heb, "hin": Hin, "hrv": Hrv, "hun": Hun, "ibo": Ibo, "ilo": Ilo, "ind": Ind, "ita": Ita, "jav": Jav, "jpn": Jpn, "kan": Kan, "kat": Kat, "khm": Khm, "kin": Kin, "kor": Kor, "kur": Kur, "lav": Lav, "lit": Lit, "mai": Mai, "mal": Mal, "mar": Mar, "mkd": Mkd, "mlg": Mlg, "mya": Mya, "nep": Nep, "nld": Nld, "nno": Nno, "nob": Nob, "nya": Nya, "ori": Ori, "orm": Orm, "pan": Pan, "pes": Pes, "pol": Pol, "por": Por, "ron": Ron, "run": Run, "rus": Rus, "sin": Sin, "skr": Skr, "slv": Slv, "sna": Sna, "som": Som, "spa": Spa, "srp": Srp, "swe": Swe, "tam": Tam, "tel": Tel, "tgl": Tgl, "tha": Tha, "tir": Tir, "tuk": Tuk, "tur": Tur, "uig": Uig, "ukr": Ukr, "urd": Urd, "uzb": Uzb, "vie": Vie, "ydd": Ydd, "yor": Yor, "zul": Zul, } if val, ok := lang[code]; ok { return val } return -1 } // Iso6391 returns ISO 639-1 code of Lang as a string. func (lang Lang) Iso6391() string { return LangToStringShort(lang) } // LangToStringShort converts enum into ISO 639-1 code as a string. // Return empty string when there is no ISO 639-1 code. // Deprecated: LangToStringShort is deprected and exists for historical // compatibility. Please use `Lang.Iso6391()` instead. func LangToStringShort(lang Lang) string { langMap := map[Lang]string{ Afr: "af", Aka: "ak", Amh: "am", Arb: "ar", Azj: "az", // Azerbaijani iso 639-3 is aze, iso 639-1 az Bel: "be", Ben: "bn", Bho: "bh", Bul: "bg", Ceb: "", // No iso 639-1 code Ces: "cs", Cmn: "zh", // No iso 639-1, but http://www.loc.gov/standards/iso639-2/faq.html#24 Dan: "da", Deu: "de", Ell: "el", Eng: "en", Epo: "eo", Est: "et", Fin: "fi", Fra: "fr", Guj: "gu", Hat: "ht", Hau: "ha", Heb: "he", Hin: "hi", Hrv: "hr", Hun: "hu", Ibo: "ig", Ilo: "", // No iso639-1 Ind: "id", Ita: "it", Jav: "jv", Jpn: "ja", Kan: "kn", Kat: "ka", Khm: "km", Kin: "rw", Kor: "ko", Kur: "ku", Lav: "lv", Lit: "lt", Mai: "", // No iso639-1 Mal: "ml", Mar: "mr", Mkd: "mk", Mlg: "mg", Mya: "my", Nep: "ne", Nld: "nl", Nno: "nn", Nob: "nb", Nya: "ny", Ori: "or", Orm: "om", Pan: "pa", Pes: "", // No iso639-1 Pol: "pl", Por: "pt", Ron: "ro", Run: "rn", Rus: "ru", Sin: "si", Skr: "", // No iso639-1 Slv: "sl", Sna: "sn", Som: "so", Spa: "es", Srp: "sr", Swe: "sv", Tam: "ta", Tel: "te", Tgl: "tl", Tha: "th", Tir: "ti", Tuk: "tk", Tur: "tr", Uig: "ug", Ukr: "uk", Urd: "ur", Uzb: "uz", Vie: "vi", Ydd: "", // No iso639-1 Yor: "yo", Zul: "zu", } if val, ok := langMap[lang]; ok { return val } return "" } // Iso6393 returns ISO 639-3 code of Lang as a string. func (lang Lang) Iso6393() string { return LangToString(lang) } // LangToString converts enum into ISO 639-3 code as a string. // Deprecated: LangToString is deprected and exists for historical // compatibility. Please use `Lang.Iso6393()` instead. func LangToString(lang Lang) string { langMap := map[Lang]string{ Afr: "afr", Aka: "aka", Amh: "amh", Arb: "arb", Azj: "azj", Bel: "bel", Ben: "ben", Bho: "bho", Bul: "bul", Ceb: "ceb", Ces: "ces", Cmn: "cmn", Dan: "dan", Deu: "deu", Ell: "ell", Eng: "eng", Epo: "epo", Est: "est", Fin: "fin", Fra: "fra", Guj: "guj", Hat: "hat", Hau: "hau", Heb: "heb", Hin: "hin", Hrv: "hrv", Hun: "hun", Ibo: "ibo", Ilo: "ilo", Ind: "ind", Ita: "ita", Jav: "jav", Jpn: "jpn", Kan: "kan", Kat: "kat", Khm: "khm", Kin: "kin", Kor: "kor", Kur: "kur", Lav: "lav", Lit: "lit", Mai: "mai", Mal: "mal", Mar: "mar", Mkd: "mkd", Mlg: "mlg", Mya: "mya", Nep: "nep", Nld: "nld", Nno: "nno", Nob: "nob", Nya: "nya", Ori: "ori", Orm: "orm", Pan: "pan", Pes: "pes", Pol: "pol", Por: "por", Ron: "ron", Run: "run", Rus: "rus", Sin: "sin", Skr: "skr", Slv: "slv", Sna: "sna", Som: "som", Spa: "spa", Srp: "srp", Swe: "swe", Tam: "tam", Tel: "tel", Tgl: "tgl", Tha: "tha", Tir: "tir", Tuk: "tuk", Tur: "tur", Uig: "uig", Ukr: "ukr", Urd: "urd", Uzb: "uzb", Vie: "vie", Ydd: "ydd", Yor: "yor", Zul: "zul", } if val, ok := langMap[lang]; ok { return val } return "" } // String returns the human-readable name of the language as a string. func (lang Lang) String() string { if val, ok := Langs[lang]; ok { return val } return "" } // Langs represents a map of Lang to language name. var Langs = map[Lang]string{ Afr: "Afrikaans", Aka: "Akan", Amh: "Amharic", Arb: "Arabic", Azj: "Azerbaijani", Bel: "Belarusian", Ben: "Bengali", Bho: "Bhojpuri", Bul: "Bulgarian", Ceb: "Cebuano", Ces: "Czech", Cmn: "Mandarin", Dan: "Danish", Deu: "German", Ell: "Greek", Eng: "English", Epo: "Esperanto", Est: "Estonian", Fin: "Finnish", Fra: "French", Guj: "Gujarati", Hat: "Haitian Creole", Hau: "Hausa", Heb: "Hebrew", Hin: "Hindi", Hrv: "Croatian", Hun: "Hungarian", Ibo: "Igbo", Ilo: "Ilocano", Ind: "Indonesian", Ita: "Italian", Jav: "Javanese", Jpn: "Japanese", Kan: "Kannada", Kat: "Georgian", Khm: "Khmer", Kin: "Kinyarwanda", Kor: "Korean", Kur: "Kurdish", Lav: "Latvian", Lit: "Lithuanian", Mai: "Maithili", Mal: "Malayalam", Mar: "Marathi", Mkd: "Macedonian", Mlg: "Malagasy", Mya: "Burmese", Nep: "Nepali", Nld: "Dutch", Nno: "Nynorsk", Nob: "Bokmal", Nya: "Chewa", Ori: "Oriya", Orm: "Oromo", Pan: "Punjabi", Pes: "Persian", Pol: "Polish", Por: "Portuguese", Ron: "Romanian", Run: "Rundi", Rus: "Russian", Sin: "Sinhalese", Skr: "Saraiki", Slv: "Slovene", Sna: "Shona", Som: "Somali", Spa: "Spanish", Srp: "Serbian", Swe: "Swedish", Tam: "Tamil", Tel: "Telugu", Tgl: "Tagalog", Tha: "Thai", Tir: "Tigrinya", Tuk: "Turkmen", Tur: "Turkish", Uig: "Uyghur", Ukr: "Ukrainian", Urd: "Urdu", Uzb: "Uzbek", Vie: "Vietnamese", Ydd: "Yiddish", Yor: "Yoruba", Zul: "Zulu", } //langProfileList ... type langProfileList map[Lang][]string //LatinLangs ... var latinLangs = langProfileList{ Spa: []string{" de", "os ", "de ", " la", "la ", " y ", " a ", "es ", "ón ", "ión", "rec", "ere", "der", " co", "e l", "el ", "en ", "ien", "cho", "ent", "ech", "ció", "aci", "o a", "a p", " el", "a l", "al ", "as ", "e d", " en", "na ", "ona", "s d", "da ", "nte", " to", "ad ", "ene", "con", " pr", " su", "tod", " se", "ho ", "los", " pe", "per", "ers", " lo", "o d", " ti", "cia", "n d", "cio", " es", "ida", "res", "a t", "tie", "ion", "rso", "te ", "do ", " in", "son", " re", " li", "to ", "dad", "tad", "e s", "est", "pro", "que", "men", " po", "a e", "oda", "nci", " qu", " un", "ue ", "ne ", "n e", "s y", "lib", "su ", " na", "s e", "nac", "ia ", "e e", "tra", " pa", "or ", "ado", "a d", "nes", "ra ", "se ", "ual", "a c", "er ", "por", "com", "nal", "rta", "a s", "ber", " o ", "one", "s p", "dos", "rá ", "sta", "les", "des", "ibe", "ser", "era", "ar ", "ert", "ter", " di", "ale", "l d", "nto", "hos", "del", "ica", "a a", "s n", "n c", "oci", "imi", "io ", "o e", "re ", "y l", "e c", "ant", "cci", " as", "las", "par", "ame", " cu", "ici", "ara", "enc", "s t", "ndi", " so", "o s", "mie", "tos", "una", "bre", "dic", "cla", "s l", "e a", "l p", "pre", "ntr", "o t", "ial", "y a", "nid", "n p", "a y", "man", "omo", "so ", "n l", " al", "ali", "s a", "no ", " ig", "s s", "e p", "nta", "uma", "ten", "gua", "ade", "y e", "soc", "mo ", " fu", "igu", "o p", "n t", "hum", "d d", "ran", "ria", "y d", "ada", "tiv", "l e", "cas", " ca", "vid", "l t", "s c", "ido", "das", "dis", "s i", " hu", "s o", "nad", "fun", " ma", "rac", "nda", "eli", "sar", "und", " ac", "uni", "mbr", "a u", "die", "e i", "qui", "a i", " ha", "lar", " tr", "odo", "ca ", "tic", "o y", "cti", "lid", "ori", "ndo", "ari", " me", "ta ", "ind", "esa", "cua", "un ", "ier", "tal", "esp", "seg", "ele", "ons", "ito", "ont", "iva", "s h", "d y", "nos", "ist", "rse", " le", "cie", "ide", "edi", "ecc", "ios", "l m", "r e", "med", "tor", "sti", "n a", "rim", "uie", "ple", "tri", "ibr", "sus", "lo ", "ect", "pen", "y c", "an ", "e h", "n s", "ern", "tar", "l y", "egu", "gur", "ura", "int", "ond", "mat", "l r", "r a", "isf", "ote"}, Eng: []string{" th", "the", " an", "he ", "nd ", "and", "ion", " of", "of ", "tio", " to", "to ", "on ", " in", "al ", "ati", "igh", "ght", "rig", " ri", "or ", "ent", "as ", "ed ", "is ", "ll ", "in ", " be", "e r", "ne ", "one", "ver", "all", "s t", "eve", "t t", " fr", "s a", " ha", " re", "ty ", "ery", " or", "d t", " pr", "ht ", " co", " ev", "e h", "e a", "ng ", "ts ", "his", "ing", "be ", "yon", " sh", "ce ", "ree", "fre", "ryo", "n t", "her", "men", "nat", "sha", "pro", "nal", "y a", "has", "es ", "for", " hi", "hal", "f t", "n a", "n o", "nt ", " pe", "s o", " fo", "d i", "nce", "er ", "ons", "res", "e s", "ect", "ity", "ly ", "l b", "ry ", "e e", "ers", "e i", "an ", "e o", " de", "cti", "dom", "edo", "eed", "hts", "ter", "ona", "re ", " no", " wh", " a ", " un", "d f", " as", "ny ", "l a", "e p", "ere", " en", " na", " wi", "nit", "nte", "d a", "any", "ted", " di", "ns ", "sta", "th ", "per", "ith", "e t", "st ", "e c", "y t", "om ", "soc", " ar", "ch ", "t o", "d o", "nti", "s e", "equ", "ve ", "oci", "man", " fu", "ote", "oth", "ess", " al", " ac", "wit", "ial", " ma", "uni", " se", "rea", " so", " on", "lit", "int", "r t", "y o", "enc", "thi", "ual", "t a", " eq", "tat", "qua", "ive", " st", "ali", "e w", "l o", "are", "f h", "con", "te ", "led", " is", "und", "cia", "e f", "le ", " la", "y i", "uma", "by ", " by", "hum", "f a", "ic ", " hu", "ave", "ge ", "r a", " wo", "o a", "ms ", "com", " me", "eas", "s d", "tec", " li", "n e", "en ", "rat", "tit", "ple", "whe", "ate", "o t", "s r", "t f", "rot", " ch", "cie", "dis", "age", "ary", "o o", "anc", "eli", "no ", " fa", " su", "son", "inc", "at ", "nda", "hou", "wor", "t i", "nde", "rom", "oms", " ot", "g t", "eme", "tle", "iti", "gni", "s w", "itl", "duc", "d w", "whi", "act", "hic", "aw ", "law", " he", "ich", "min", "imi", "ort", "o s", "se ", "e b", "ntr", "tra", "edu", "oun", "tan", "e d", "nst", "l p", "d n", "ld ", "nta", "s i", "ble", "n p", " pu", "n s", " at", "ily", "rth", "tho", "ful", "ssi", "der", "o e", "cat", "uca", "unt", "ien", " ed", "o p", "h a", "era", "ind", "pen", "sec", "n w", "omm", "r s"}, Por: []string{"os ", "de ", " de", " a ", " e ", "o d", "to ", "ão ", " di", "ent", "da ", "ito", "em ", " co", "eit", "as ", "dir", "es ", "ire", "rei", " se", "ção", "ade", "a p", "dad", "e d", "s d", "men", "nte", "do ", "s e", " pr", " pe", "dos", " to", " da", "a a", "o e", " o ", "o a", "ess", "con", "tod", "que", " qu", "te ", "e a", " do", "al ", "res", "ida", "m d", " in", " ou", "er ", "sso", " na", " re", " po", "a s", " li", "uma", "cia", "ar ", "pro", "e e", "a d", " te", "açã", "a t", " es", " su", "ou ", "ue ", "s p", "tos", "a e", "des", "ra ", "com", "no ", "ame", "ia ", "e p", "tem", "nto", " pa", "is ", "est", "tra", "ões", "na ", "s o", "oda", "das", "ser", "soa", "s n", "pes", "o p", "s a", "o s", "e o", " em", " as", " à ", "o o", "ais", "ber", "ado", "oa ", "o t", "e s", "man", "sua", "ua ", " no", " os", "a c", "ter", "çõe", "erd", "lib", "rda", "s s", "nci", "ibe", "e n", "ica", "odo", "so ", "nal", "ntr", "s t", "hum", "ura", " ao", "ona", "ual", " so", "or ", "ma ", "sta", "o c", "a n", "pre", "ara", "era", "ons", "e t", "r a", "par", "o à", " hu", "ind", "por", "cio", "ria", "m a", "s c", " um", "a l", "gua", "ran", " en", "ndi", "o i", "e c", "raç", "ion", "nid", "aci", "ano", "soc", "e r", "oci", " ac", "und", "sen", "nos", "nsi", "rec", "ime", "ali", "int", "um ", "per", "nac", " al", "m o", "r p", " fu", "ndo", "ont", "açõ", " ig", "igu", "fun", "nta", " ma", "uni", "cçã", "ere", " ex", "a i", " me", "ese", "rio", "l d", "a o", "s h", "pel", "ada", "pri", "ide", "am ", "m p", "pod", "s f", "ém ", "a f", "io ", "ode", "ca ", "ita", "lid", "tiv", "e f", "vid", "r e", "esp", "nda", "omo", "e l", "naç", "o r", "ant", "a q", "tad", "lic", "iva", " fa", "ver", "s l", "ial", "cla", "ngu", "ing", " ca", "mo ", "der", " vi", "eli", "ist", "ta ", "se ", "ati", "ios", "ido", "r o", "eci", "dis", " un", "e i", "r d", "ecç", "o q", "s i", "qua", "ênc", "a m", "seu", "sti", "nin", "uer", "rar", "cas", "aos", "ens", "gué", "ias", "sid", "uém", "tur", "dam", "sse", "ao ", "ela", "l e", "for", "tec", "ote", " pl", "ena", " tr", "m c", "tro", " ni", "ico", "rot"}, Ind: []string{"an ", "ang", " da", "ng ", " pe", "ak ", " ke", " me", "ata", " se", "dan", "kan", " di", " be", "hak", "ber", "per", "ran", "nga", "yan", "eng", " ya", " ha", "asa", "gan", "men", "ara", "nya", "n p", "n d", "n k", "a d", "tan", " at", "at ", "ora", "ala", "san", " ba", "ap ", "erh", "n b", "rha", "ya ", " ma", "g b", "a s", "pen", "eba", "as ", "aan", "uk ", "ntu", " or", "eti", "tas", "aka", "tia", "ban", "set", " un", "n s", "ter", "n y", " te", "k m", "tuk", "bas", "iap", "lam", "beb", "am ", " de", "k a", "keb", "n m", "i d", "unt", "ama", "dal", "ah ", "ika", "dak", "ebe", "p o", "sa ", "pun", "mem", "n h", "end", "den", "ra ", "ela", "ri ", "nda", " sa", "di ", "ma ", "a m", "n t", "k d", "n a", "ngg", "tau", "man", "gar", "eri", "asi", " ti", "un ", "al ", "ada", "um ", "a p", "lak", "ari", "au ", " ne", "neg", "a b", "ngs", "ta ", "ole", "leh", "ert", "ers", "ida", "k h", "ana", "gsa", "dar", "uka", "tid", "bat", "sia", "era", "eh ", "dap", "ila", "dil", "h d", "atu", "sam", "ia ", "i m", " in", "lan", "aha", "uan", "tu ", "ai ", "t d", "a a", "g d", "har", "sem", "na ", "apa", "ser", "ena", "kat", "uat", "erb", "erl", "mas", "rta", "ega", "ung", "nan", "emp", "n u", "kum", "l d", "g s", " hu", "ka ", "ent", "pat", "mba", "aga", "nta", "adi", " su", "eni", "uku", "n i", "huk", "ind", "ar ", "rga", "i s", "aku", "ndi", "sua", "ni ", "rus", "han", "si ", "car", "nny", " la", "in ", "u d", "ik ", "ua ", "lah", "rik", "usi", "emb", "ann", "mer", "ian", "gga", "lai", "min", "a u", "lua", "ema", "emu", "arg", "dun", "dip", "a t", "mat", "aya", "rbu", "aru", "erk", "rka", "ini", "eka", "a k", "rak", "kes", "yat", "iba", "nas", "rma", "ern", "ese", "s p", "nus", " pu", "anu", "ina", " ta", "mel", "mua", "kel", "k s", "us ", "ndu", "nak", "da ", "sya", "das", "pem", "lin", "ut ", "yar", "ami", "upu", "seo", "aik", "eor", "iny", "aup", "tak", "ipe", "ing", "tin", " an", "dik", "uar", "ili", "g t", "rse", "sar", "ant", "g p", "a n", "aks", "ain", " ja", "t p", " um", "g m", "dir", "ksa", "umu", "kep", "mum", "i k", "eca", "rat", "m p", "h p", "aba", "ses", "m m"}, Fra: []string{" de", "es ", "de ", "ion", "nt ", "et ", "tio", " et", "ent", " la", "la ", "e d", "on ", "ne ", "oit", "e l", "le ", " le", "s d", "e p", "t d", "ati", "roi", " dr", "dro", "it ", " à ", " co", "té ", "ns ", "te ", "e s", "men", "re ", " to", "con", " l’", "tou", "que", " qu", "les", " so", "des", "son", " pe", "ons", " un", "s l", "s e", " pr", "ue ", " pa", "e c", "t l", "ts ", "onn", " au", "e a", "eme", "e e", " li", "ont", "ant", "out", "ute", "t à", "res", "ers", " sa", "ce ", " a ", "tre", "per", "a d", "cti", "er ", "lib", "ité", " en", "ux ", " re", "en ", "rso", "à l", " ou", " in", "lle", "un ", "nat", "ou ", "nne", "n d", "une", " d’", " se", "par", "nte", "us ", "ur ", "s s", "ans", "dan", "a p", "r l", "pro", "its", "és ", "t p", "ire", "e t", "s p", "sa ", " dé", "ond", "é d", "a l", "nce", "ert", "aux", "omm", "nal", "me ", " na", " fo", "iqu", " ce", "rté", "ect", "ale", "ber", "t a", "s a", " da", "mme", "ibe", "san", "e r", " po", "com", "al ", "s c", "qui", "our", "t e", " ne", "e n", "ous", "r d", "ali", "ter", " di", "fon", "e o", "au ", " ch", "air", "ui ", "ell", " es", "lit", "s n", "iss", "éra", "tes", "soc", "aut", "oci", "êtr", "ien", "int", "du ", "est", "été", "tra", "pou", " pl", "rat", "ar ", "ran", "rai", "s o", "ona", "ain", "cla", "éga", "anc", "rs ", "eur", "pri", "n c", "e m", "s t", "à u", " do", "ure", "bre", "ut ", " êt", "age", " ét", "nsi", "sur", "ein", "sen", "ser", "ndi", "ens", "ess", "ntr", "ir ", " ma", "cia", "n p", "st ", "a c", " du", "l e", " su", "bli", "ge ", "rés", " ré", "e q", "ass", "nda", "peu", "ée ", "l’a", " te", "a s", "tat", "il ", "tés", "ais", "u d", "ine", "ind", "é e", "qu’", " ac", "s i", "n t", "t c", "n a", "l’h", "t q", "soi", "t s", "cun", "rit", " ég", "oir", "’en", "nta", "hom", " on", "n e", " mo", "ie ", "ign", "rel", "nna", "t i", "l n", " tr", "ill", "ple", "s é", "l’e", "rec", "a r", "ote", "sse", "uni", "idé", "ive", "s u", "t ê", "ins", "act", " fa", "n s", " vi", "gal", " as", "lig", "ssa", "pré", "leu", "e f", "lic", "dis", "ver", " nu", "ten", "ssi", "rot", "tec", "s m", "abl"}, Deu: []string{"en ", "er ", "der", " un", "nd ", "und", "ein", "ung", "cht", " de", "ich", "sch", "ng ", " ge", "ie ", "che", "ech", " di", "die", "rec", "gen", "ine", "eit", " re", "ch ", " da", "n d", "ver", "hen", " zu", "t d", " au", "ht ", " ha", "lic", "it ", "ten", "rei", " be", "in ", " ve", " in", " ei", "nde", "auf", "den", "ede", "zu ", "n s", "uf ", "fre", "ne ", "ter", "es ", " je", "jed", "n u", " an", "sei", "and", " fr", "run", "at ", " se", "e u", "das", "hei", "s r", "hte", "hat", "nsc", "nge", "r h", "as ", "ens", " al", "ere", "lle", "t a", " we", "n g", "rde", "nte", "ese", "men", " od", "ode", "ner", "g d", "all", "t u", "ers", "te ", "nen", " so", "d d", "n a", "ben", "lei", " gr", " vo", "wer", "e a", "ege", "ion", " st", "ige", "le ", "cha", " me", "haf", "aft", "n j", "ren", " er", "erk", "ent", "bei", " si", "eih", "ihe", "kei", "erd", "tig", "n i", "on ", "lun", "r d", "len", "gem", "ies", "gru", "tli", "unt", "chu", "ern", "ges", "end", "e s", "ft ", "st ", "ist", "tio", "ati", " gl", "sta", "gun", "mit", "sen", "n n", " na", "n z", "ite", " wi", "r g", "eic", "e e", "ei ", "lie", "r s", "n w", "gle", "mei", "de ", "uch", "em ", "chl", "nat", "rch", "t w", "des", "n e", "hre", "ale", "spr", "d f", "ach", "sse", "r e", " sc", "urc", "r m", "nie", "e f", "fen", "e g", "e d", " ni", "dur", "dar", "int", " du", "geh", "ied", "t s", " mi", "alt", "her", "hab", "f g", "sic", "ste", "taa", "aat", "he ", "ang", "ruc", "hli", "tz ", "eme", "abe", "h a", "n v", "nun", "geg", "arf", "rf ", "ehe", "pru", " is", "erf", "e m", "ans", "ndl", "e b", "tun", "n o", "d g", "n r", "r v", "wie", "ber", "r a", "arb", "bes", "t i", "h d", "r w", "r b", " ih", "d s", "igk", "gke", "nsp", "dig", "ema", "ell", "eru", "n f", "ins", "rbe", "ffe", "esc", "igu", "ger", "str", "ken", "e v", "gew", "han", "ind", "rt ", " ar", "ieß", "n h", "rn ", "man", "r i", "hut", "utz", "d a", "ls ", "ebe", "von", "lte", "r o", "rli", "etz", "tra", "aus", "det", "hul", "e i", "one", "nne", "isc", "son", "sel", "et ", "ohn", "t g", "sam", " fa", "rst", "rkl", "ser", "iem", "g v", "t z", "err"}, Jav: []string{"ng ", "an ", "ang", " ka", "ing", "kan", " sa", "ak ", "lan", " la", "hak", " ha", " pa", " ma", "ngg", "ara", "sa ", "abe", "ne ", " in", "n k", "ant", " ng", "tan", "nin", " an", "nga", "ata", "en ", "ran", " ba", "man", "ban", "ane", "hi ", "n u", "ong", "ra ", "nth", "ake", "ke ", "thi", " da", "won", "uwo", "ung", "ngs", " uw", "asa", "gsa", "ben", "sab", "ana", "aka", "beb", "a k", "g p", "nan", "nda", "adi", "at ", "awa", "san", "ni ", "dan", "g k", "pan", "eba", " be", "e k", "g s", "ani", "bas", " pr", "dha", "aya", "gan", "ya ", "wa ", "di ", "mar", "n s", " wa", "ta ", "a s", "g u", " na", "e h", "arb", "a n", "a b", "a l", "n n", " ut", "yan", "n p", "asi", "g d", "han", "ah ", "g n", " tu", " um", "as ", "wen", "dak", "rbe", "dar", " di", "ggo", "sar", "mat", "k h", "a a", "iya", " un", "und", "eni", "kab", "be ", "art", "ka ", "uma", "ora", "n b", "ala", "n m", "ngk", "rta", "i h", " or", "gar", "yat", "kar", "al ", "a m", "n i", "na ", "g b", "ega", "pra", "ina", "kak", "g a", "a p", "tum", "nya", "kal", "ger", "gge", " ta", "kat", "i k", "ena", "oni", "kas", " pe", "dad", "aga", "g m", "duw", "k k", "uta", "uwe", " si", " ne", "adh", "pa ", "n a", "go ", "and", "i l", " ke", "nun", "nal", "ngu", "uju", "apa", "a d", "t m", "i p", "min", "iba", "er ", " li", "anu", "sak", "per", "ama", "gay", "war", "pad", "ggu", "ha ", "ind", "taw", "ras", "n l", "ali", "eng", "awi", "a u", " bi", "we ", "bad", "ndu", "uwa", "awe", "bak", "ase", "eh ", " me", "neg", "pri", " ku", "ron", "ih ", "g t", "bis", "iji", "i t", "e p", " pi", "aba", "isa", "mba", "ini", "a w", "g l", "ika", "n t", "ebu", "ndh", "ar ", "sin", "lak", "ur ", "mra", "men", "ku ", " we", "e s", "a i", "liy", " ik", "ayo", "rib", "ngl", "ami", "arg", "nas", "yom", "wae", "ut ", "kon", "ae ", "rap", "aku", " te", "dil", "tin", "rga", "jud", "umu", " as", "rak", "bed", "k b", "il ", "kap", "h k", "jin", "k a", " nd", "e d", "i s", " lu", "i w", "eka", "mum", "um ", "uha", "ate", " mi", "k p", "gon", "eda", " ti", "but", "n d", "r k", "ona", "uto", "tow", "wat", "gka", "si ", "umr", "k l", "oma"}, Vie: []string{"ng ", "̣c ", "́c ", " qu", " th", "à ", "nh ", " ng", "̣i ", " nh", "và", " va", "̀n ", "uyê", " ph", " ca", "quy", "ền", "yề", "̀i ", " ch", "̀nh", " tr", " cu", "ngư", "i n", "gươ", "ườ", "́t ", "ời", " gi", "ác", " co", "̣t ", "ó ", "c t", "ự ", "n t", "cá", "ông", " kh", "ượ", "ợc", " tư", " đư", "iệ", "đươ", "ìn", "́i ", " ha", "có", "i đ", "gia", " đê", "pha", " mo", "ọi", "mọ", "như", "n n", "củ", " ba", "̣n ", "̉a ", "ủa", "n c", "̀u ", "̃ng", "ân ", "ều", "ất", " bi", "tự", "hôn", " vi", "g t", " la", "n đ", "đề", "nhâ", " ti", "t c", " đô", "ên ", "bả", "hiê", "u c", " tô", "do ", "hân", " do", "ch ", "́ q", "̀ t", " na", "́n ", "ay ", " hi", "àn", "̣ d", "ới", "há", " đi", "hay", "g n", " mô", "ốc", "uố", "n v", "ội", "hữ", "thư", "́p ", "quô", " ho", "̣p ", "nà", "ào", "̀ng", "̉n ", "ị ", "́ch", "ôn ", "̀o ", "khô", "c h", "i c", "c đ", " hô", "i v", "tro", " đa", "́ng", "mộ", "i t", "ột", "g v", "ia ", "̣ng", "ản", "ướ", "ữn", "̉ng", "h t", "hư ", "ện", "n b", "ộc", "ả ", "là", "c c", "g c", " đo", "̉ c", "n h", "hà", "hộ", " bâ", "ã ", "̀y ", " vơ", "̣ t", "̉i ", "iế", " cô", "t t", "g đ", "ức", "iên", " vê", "viê", "vớ", "h v", "ớc", "ực", "ật", "tha", "̉m ", "ron", "ong", "áp", "g b", "hươ", " sư", "a c", "sự", "̉o ", "ảo", "h c", "ể ", "o v", "uậ", "a m", "ế ", "iá", "̀ c", "cho", "qua", "hạ", "ục", " mi", "̀ n", "phâ", "c q", "côn", "o c", "á ", "i h", "ại", " hơ", "̃ h", " cư", "n l", "bị", " lu", "bấ", "cả", "ín", "h đ", " xa", "độ", "g h", "c n", "c p", "thu", "ải", "ệ ", " hư", "́ c", "o n", " nư", "ốn", "́o ", "áo", "xã", "oà", "y t", "hả", "tộ", "̣ c", " tâ", "thô", " du", "m v", "mì", "ho ", "hứ", "ệc", "́ t", "hợ", "án", "n p", "cũ", "ũn", "iể", "ối", "tiê", "ề ", "hấ", "ợp", "hoa", "y đ", "chi", "o h", "ở ", "ày", "̉ t", "đó", "c l", "về", "̀ đ", "i b", "kha", "c b", " đâ", "luâ", "ai ", "̉ n", "đố", "ết", "hự", "tri", "p q", "nươ", "dụ", "hí", "g q", "yên", "họ", "́nh", " ta", " bă", "c g", "n g", "thê", "o t", "c v", "am ", "c m", "an "}, Ita: []string{" di", "to ", " de", "ion", " in", "la ", "e d", "di ", "ne ", " e ", "zio", "re ", "le ", "ni ", "ell", "one", "lla", "rit", "a d", "o d", "del", "itt", "iri", "dir", " co", "ti ", "ess", "ent", " al", "azi", "tto", "te ", "i d", "i i", "ere", "tà ", " pr", "ndi", "e l", "ale", "o a", "ind", "e e", "e i", "gni", "nte", "con", "i e", "li ", "a s", " un", "men", "ogn", " ne", "uo ", " og", "idu", "e a", "ivi", "duo", "vid", " es", "tti", " ha", "div", " li", "a p", "no ", "all", "pro", "za ", "ato", "per", "sse", "ser", " so", "i s", " la", " su", "e p", " pe", "ibe", "na ", "a l", " il", "ber", "e n", "il ", "ali", "lib", "ha ", "che", "in ", "o s", "e s", " qu", "o e", "ia ", "e c", " ri", "nza", "ta ", "nto", "he ", "oni", "o i", " o ", "sta", "o c", "nel", " a ", "o p", "naz", "e o", "so ", " po", "o h", "gli", "i u", "ond", "i c", "ers", "ame", "i p", "lle", "un ", "era", "ri ", "ver", "ro ", "el ", "una", "a c", " ch", "ert", "ua ", "i a", "ssi", "rtà", "a e", "ei ", "dis", "ant", " l ", "tat", "a a", "ona", "ual", " le", "ità", "are", "ter", " ad", "nit", " da", "pri", "dei", "à e", "cia", " st", " si", "nal", "est", "tut", "ist", "com", "uni", " ed", "ono", " na", "sua", "al ", "si ", "anz", " pa", " re", "raz", "gua", "ita", "res", "der", "soc", "man", "o o", "ad ", "i o", "ese", "que", "enz", "ed ", " se", "io ", "ett", "on ", " tu", "dic", "à d", "sia", "i r", "rso", "oci", "rio", "ari", "qua", "ial", "pre", "ich", "rat", "ien", "tra", "ani", "uma", "se ", "ll ", "eri", "a n", "o n", " um", "do ", "ara", "a t", "zza", "er ", "tri", "att", "ico", "pos", "sci", "i l", "son", "nda", "par", "e u", "fon", " fo", "nti", "uzi", "str", "utt", "ati", "sen", "int", "nes", "iar", " i ", "hia", "n c", "sti", "chi", "ann", "ra ", " eg", "egu", "isp", "bil", "ont", "a r", " no", "rop", " me", "opr", "ost", " ma", "ues", "ica", "sso", "tal", "cie", "sun", "lit", "ore", "ina", "ite", "tan", " ra", "non", "gio", "d a", "e r", "dev", "i m", "l i", "ezz", "izi", " cu", "nno", "rà ", "a i", "tta", "ria", "lia", "cos", "ssu", "dal", "l p", " as", "ass", "opo", "ve ", "eve"}, Tur: []string{" ve", " ha", "ve ", "ler", "lar", "ir ", "in ", "hak", " he", "her", "bir", "er ", "an ", "arı", "eri", "ya ", " bi", "ak ", "r h", "eti", "ın ", "iye", "yet", " ka", "ası", "ını", " ol", "tle", "eya", "kkı", "ara", "akk", "etl", "sın", "esi", "na ", "de ", "ek ", " ta", "nda", "ini", " bu", "ile", "rın", "rin", "vey", "ne ", "kla", "e h", "ine", "ır ", "ere", "ama", "dır", "n h", " sa", "ına", "sin", "e k", "le ", " ge", "mas", "ınd", "nın", "ı v", " va", "lan", "lma", "erk", "rke", "nma", "tin", "rle", " te", "nin", "akl", "a v", "da ", " de", "let", "ill", "e m", "ard", "en ", "riy", "aya", "nı ", " hü", " şa", "e b", "k v", "kın", "k h", " me", "mil", "san", " il", "si ", "rdı", "e d", "dan", "hür", "var", "ana", "e a", "kes", "et ", "mes", "şah", "dir", " mi", "ret", "rri", " se", "ola", "ürr", "irl", "bu ", "mak", " ma", "mek", "n e", "kı ", "n v", "n i", "lik", "lle", " ed", " hi", "n b", "a h", " ba", "nsa", " iş", "eli", "kar", " iç", "ı h", "ala", "li ", "ulu", "rak", "evl", "e i", "ni ", "re ", "r ş", "eme", "etm", "e t", "ik ", "e s", "a b", "iş ", "n k", "hai", "nde", "aiz", " eş", "izd", "un ", "olm", "hiç", "zdi", "ar ", "unm", "ma ", " gö", "ilm", "lme", "im ", "n t", "tir", "dil", "mal", "e g", "i v", " ko", "lun", "e e", "mel", "ket", "ık ", "n s", "ele", "la ", "el ", "r v", "ede", "şit", "ili", "eşi", "yla", "a i", " an", "anı", " et", "rı ", "ahs", " ya", "sı ", "edi", "siy", "t v", "i b", "se ", "içi", "çin", "bul", "ame", " da", "miş", "may", "tim", "a k", "tme", "r b", "ins", "yan", "nla", "mle", " di", "eye", "ger", "ye ", "uğu", "erd", "din", "ser", " mü", "mem", "vle", " ke", "nam", "ind", "len", "eke", "es ", " ki", "n m", "it ", " in", " ku", "rşı", "a s", "arş", " ay", "eml", "lek", "oru", "rme", "kor", "rde", "i m", " so", "tür", "al ", "lam", "eni", "nun", " uy", "ken", "hsı", "i i", "a d", "ri ", "dev", "ün ", "a m", "r a", "mey", "cak", "ıyl", "maz", "e v", "ece", "ade", "iç ", "şma", "mse", "te ", "tün", "ims", "kim", "e y", "şı ", "end", "k g", "ndi", "alı", " ce", "lem", "öğr", "ütü", "k i", "r t", " öğ", "büt", "anl", " bü"}, Pol: []string{" pr", "nie", " i ", "ie ", "pra", " po", "ani", "raw", "ia ", "nia", "wie", "go ", " do", "ch ", "ego", "iek", "owi", " ni", "ści", "ci ", "a p", "do ", "awo", " cz", "ośc", "ych", " ma", "ek ", "rze", " na", "prz", " w ", "wo ", "ej ", " za", "noś", "czł", "zło", "eni", "wa ", " je", "łow", "i p", "wol", "oln", " lu", "rod", " ka", " wo", "lno", "wsz", "y c", "ma ", "ny ", "każ", "ażd", "o d", "stw", "owa", "dy ", "żdy", " wy", "rzy", "sta", "ecz", " sw", "dzi", "i w", "e p", "czn", "twa", "na ", "zys", "ów ", "szy", "ub ", "lub", "a w", "est", "kie", "k m", "wan", " sp", "ają", " ws", "e w", "pow", "pos", "nyc", "rac", "spo", "ać ", "a i", "cze", "sze", "neg", "yst", "jak", " ja", "o p", "pod", "acj", "ne ", "ńst", "aro", "mi ", " z ", "i i", "nar", " ko", "obo", "awa", " ro", "i n", "jąc", "zec", "zne", "zan", "dow", " ró", "iej", "zy ", "zen", "nic", "ony", "aw ", "i z", "czy", "no ", "nej", "o s", "rów", "odn", "cy ", "ówn", "odz", "o w", "o z", "jeg", "edn", "o o", "aki", "mie", "ien", "kol", " in", "zie", "bez", "ami", "eńs", "owo", "dno", " ob", " or", " st", "a s", "ni ", "orz", "o u", "ym ", "stę", "tęp", "łec", "jed", "i k", " os", "w c", "lwi", "ez ", "olw", "ołe", "poł", "cji", "y w", "o n", "wia", " be", "któ", "a j", "zna", "zyn", "owe", "wob", "ka ", "wyc", "owy", "ji ", " od", "aln", "inn", "jes", "icz", "h p", "i s", "się", "a o", "ją ", "ost", "kra", "st ", "sza", "swo", "war", "cza", "roz", "y s", "raz", "nik", "ara", "ora", "lud", "i o", "a z", "zes", " kr", "ran", "ows", "ech", "w p", "dów", "ą p", "pop", "a n", "tki", "stk", "gan", "zon", "raj", "e o", "iec", "i l", " si", "że ", "eka", " kt", " de", "em ", "tór", "ię ", "wni", "lni", "ejs", "ini", "odo", "dni", "ełn", "kow", "peł", "a d", "ron", "dek", "pie", "udz", "bod", "nan", "h i", "dst", "ieg", "taw", "z p", "z w", "zeń", "god", "iu ", "ano", "lar", " to", "y z", "a k", "ale", "kla", "trz", "zaw", "ich", "e i", "ier", "iko", "dzy", "chn", "w z", "by ", "ków", "adz", "ekl", "ywa", "ju ", "och", "kor", "sob", "ocz", "oso", "u p", "du ", "tyc", "tan", "ędz", " mi", "e s", " ta", "ki "}, Orm: []string{"aa ", "an ", "uu ", " ka", "ni ", "aan", "umm", "ii ", "mma", "maa", " wa", "ti ", "nam", " fi", "ta ", "tti", " na", "saa", "fi ", " mi", "rga", "i k", "a n", " qa", "dha", "iyy", "oot", "in ", "mir", "irg", "raa", "qab", "a i", "a k", "kan", "akk", "isa", "chu", "amu", "a f", "huu", "aba", "kka", " ta", "kam", "a a", " is", "amn", "ami", "att", "ach", "mni", "yaa", " bi", "yuu", "yyu", "ee ", "wal", "miy", "waa", "ga ", "ata", "aat", "tii", "oo ", "a e", "moo", " ni", " ee", "ba ", " ak", "ota", "a h", "i q", " ga", " dh", "daa", "haa", "a m", "ama", "yoo", "a b", "i a", "ka ", "kaa", " hi", "sum", "aas", "arg", "man", " hu", " uu", "u n", " yo", " ar", " ke", " ha", "ees", " ba", "uf ", "i i", "taa", "uuf", "iin", "ada", "a w", "i f", "ani", "rra", "na ", "isu", " ad", "i w", "a u", "nya", "irr", "da ", "hun", "hin", "ess", " ho", " ma", "i m", "und", "i b", "bar", "ana", "een", "mu ", "is ", "bu ", "f m", " ir", " sa", "u a", "add", "aad", " la", "i d", "n h", "eeg", "i h", "sa ", "hoj", "abu", " ya", "kee", "al ", "udh", "ook", "goo", "ala", "ira", "nda", "itt", "gac", "as ", "n k", "mum", "see", "rgo", "uum", "ra ", "n t", "n i", "ara", "muu", "ums", "mat", "nii", "sii", "ssa", "a d", "a q", " da", "haw", "a g", "yya", "asu", "eef", "u h", "tum", "biy", " mo", "a t", "ati", "eny", "gam", "abs", "awa", "roo", "uma", "n b", "n m", "u y", "a s", "sat", "baa", "gar", "n a", "mmo", "nis", " qo", "nna", " ku", "eer", " to", "kko", "bil", "ili", "lis", "bir", "otu", "tee", "ya ", "msa", "aaf", "suu", "n d", "jii", "n w", "okk", "rka", "gaa", "ald", "un ", "rum", " ye", "ame", " fu", "mee", "yer", "ero", "amm", "era", "kun", "i y", "oti", "tok", "ant", "ali", "nni", " am", "lda", "lii", "n u", "lee", "ura", "lab", "aal", "tan", "laa", "i g", "ila", "ddu", "aru", "u m", "oji", "gum", "han", "ega", " se", "ffa", "dar", "faa", "ark", "n y", "hii", "qix", "gal", "ndi", " qi", "asa", "art", "ef ", "uud", " bu", "jir", " ji", "arb", "n g", "chi", "tam", "u b", "dda", "bat", "di ", "kar", "lam", "a l", " go", "bsi", "sad", "oka", "a j", "egu", "u t", "bee", "u f", "uun"}, Ron: []string{" de", "și ", " și", "re ", " în", "are", "te ", "de ", "ea ", "ul ", "rep", "le ", "ept", "dre", "e d", " dr", "ie ", "în ", "e a", "ate", "ptu", " sa", "tul", " pr", "or ", "e p", " pe", "la ", "e s", "ori", " la", " co", "lor", " or", "ii ", "rea", "ce ", "au ", "tat", "ați", " a ", " ca", "ent", " fi", "ale", "ă a", "a s", " ar", "ers", "per", "ice", " li", "uri", "a d", "al ", " re", "e c", "ric", "nă ", "i s", "e o", "ei ", "tur", " să", "lib", "con", "men", "ibe", "ber", "rso", "să ", "tăț", "sau", " ac", "ilo", "pri", "ăți", "i a", "i l", "car", "l l", "ter", " in", "ție", "că ", "soa", "oan", "ții", "lă ", "tea", "ri ", "a p", " al", "ril", "e ș", "ană", "in ", "nal", "pre", "i î", "uni", "ui ", "se ", "e f", "ere", "i d", "e î", "ita", " un", "ert", "ile", "tă ", "a o", " se", "i ș", "pen", "ia ", "ele", "fie", "i c", "a l", "ace", "nte", "ntr", "eni", " că", "ală", " ni", "ire", "ă d", "pro", "est", "a c", " cu", " nu", "n c", "lui", "eri", "ona", " as", "sal", "ând", "naț", "ecu", "i p", "rin", "inț", " su", "ră ", "e n", " om", "ici", "nu ", "i n", "oat", "ări", "l d", " to", "tor", " di", " na", "iun", " po", "oci", "tre", "ni ", "ste", "soc", "ega", "i o", "gal", " so", " tr", "ă p", "a a", "n m", "sta", "va ", "ă î", "fi ", "res", "rec", "ulu", "nic", "din", "sa ", "cla", "nd ", " mo", " ce", " au", "ara", "lit", "int", "i e", "ces", "uie", "at ", "rar", "rel", "iei", "ons", "e e", "leg", "nit", "ă f", " îm", "a î", "act", "e l", "ru ", "u d", "nta", "a f", "ial", "ra ", "ă c", " eg", "ță ", " fa", "i f", "rtă", "tru", "tar", "ți ", "ă ș", "ion", "ntu", "dep", "ame", "i i", "reb", "ect", "ali", "l c", "eme", "nde", "n a", "ite", "ebu", "bui", "ât ", "ili", "toa", "dec", " o ", "pli", "văț", "nt ", "e r", "u c", "ța ", "t î", "l ș", "cu ", "rta", "cia", "ane", "țio", "ca ", "ită", "poa", "cți", "împ", "bil", "r ș", " st", "omu", "ăță", "țiu", "rie", "uma", "mân", " ma", "ani", "nța", "cur", "era", "u a", "tra", "oar", " ex", "t s", "iil", "ta ", "rit", "rot", "mod", "tri", "riv", "od ", "lic", "rii", "eze", "man", "înv", "ne ", "nvă", "a ș", "cti"}, Hau: []string{"da ", " da", "in ", "a k", "ya ", "an ", "a d", "a a", " ya", " ko", " wa", " a ", "sa ", "na ", " ha", "a s", "ta ", "kin", "wan", "wa ", " ta", " ba", "a y", "a h", "n d", "n a", "iya", "ko ", "a t", "ma ", "ar ", " na", "yan", "ba ", " sa", "asa", " za", " ma", "a w", "hak", "ata", " ka", "ama", "akk", "i d", "a m", " mu", "su ", "owa", "a z", "iki", "a b", "nci", " ƙa", " ci", " sh", "ai ", "kow", "anc", "nsa", "a ƙ", "a c", " su", "shi", "ka ", " ku", " ga", "ci ", "ne ", "ani", "e d", "uma", "‘ya", "cik", "kum", "uwa", "ana", " du", " ‘y", "ɗan", "ali", "i k", " yi", "ada", "ƙas", "aka", "kki", "utu", "n y", "a n", "hi ", " ra", "mut", " do", " ad", "tar", " ɗa", "nda", " ab", "man", "a g", "nan", "ars", "and", "cin", "ane", "i a", "yi ", "n k", "min", "sam", "ke ", "a i", "ins", "yin", "ki ", "nin", "aɗa", "ann", "ni ", "tum", "za ", "e m", "ami", "dam", "kan", "yar", "en ", "um ", "n h", "oka", "duk", "mi ", " ja", "ewa", "abi", "kam", "i y", "dai", "mat", "nna", "waɗ", "n s", "ash", "ga ", "kok", "oki", "re ", "am ", "ida", "sar", "awa", "mas", "abu", "uni", "n j", "una", "ra ", "i b", " ƙu", "dun", "a ‘", "cew", "a r", "aba", "ƙun", "ce ", "e s", "a ɗ", "san", "she", "ara", "li ", "kko", "ari", "n w", "m n", "buw", "aik", "u d", "kar", " ai", "niy", " ne", "hal", "rin", "bub", "zam", "omi", " la", "rsa", "ubu", "han", "are", "aya", "a l", "i m", "zai", "ban", "o n", "add", "n m", "i s", " fa", "bin", "r d", "ake", "n ‘", "uns", "sas", "tsa", "dom", " ce", "ans", " hu", "me ", "kiy", "ƙar", " am", "ɗin", " an", "ika", "jam", "i w", "wat", "n t", "yya", "ame", "n ƙ", "abb", "bay", "har", "din", "hen", "dok", "yak", "n b", "nce", "ray", "gan", "fa ", "on ", " ki", "aid", " ts", "rsu", " al", "aye", " id", "n r", "u k", "ili", "nsu", "bba", "aur", "kka", "ayu", "ant", "aci", "dan", "ukk", "ayi", "tun", "aga", "fan", "unc", " lo", "o d", "lok", "sha", "un ", "lin", "kac", "aɗi", "fi ", "gam", "i i", "yuw", "sun", "aif", "aja", " ir", "yay", "imi", "war", " iy", "riy", "ace", "nta", "uka", "o a", "bat", "mar", "bi ", "sak", "n i", " ak", "tab", "afi", "sab"}, Hrv: []string{" pr", " i ", "je ", "rav", "pra", "ma ", " na", "ima", " sv", "na ", "ti ", "a p", "nje", " po", "a s", "anj", "a i", "vo ", "ko ", "da ", "vat", "va ", "no ", " za", "i s", "o i", "ja ", "avo", " u ", " im", "sva", "i p", " bi", "e s", "ju ", "tko", "o n", "li ", "ili", "van", "ava", " sl", "ih ", "ne ", "ost", " dr", "ije", " ne", "jed", "slo", " ra", "u s", "lob", "obo", " os", "bod", " da", " ko", "ova", "nja", "koj", "i d", "atk", "iti", " il", "stv", "pri", "om ", "im ", " je", " ob", " su", " ka", "i i", "i n", "e i", "vje", "i u", "se ", "dru", "bit", "voj", "ati", "i o", "ćen", "a o", "o p", "a b", "a n", "ući", " se", "enj", "sti", "a u", "edn", "dje", "lo ", "ćav", " mo", "raz", "u p", " od", "ran", "ni ", "rod", "a k", "su ", "aro", "drć", "svo", "ako", "u i", "rća", "a j", "mij", "ji ", "nih", "eni", "e n", "e o", " nj", "pre", "pos", "ćiv", "oje", "eno", "e p", "nar", "oda", "nim", "ovo", "aju", "ra ", "ći ", "og ", "nov", "iva", "a d", "nos", "bra", "bil", "i b", "avn", "a z", "jen", "e d", "ve ", "ora", "tva", "jel", "sta", "mor", "u o", "cij", "pro", "ovi", "za ", "jer", "ka ", "sno", "ilo", "jem", "red", "em ", "lju", "osn", "oji", " iz", "aci", " do", "lje", "i m", " ni", "odn", "nom", "jeg", " dj", "vno", "vim", "elj", "u z", "o d", "rad", "o o", "m i", "du ", "uje", " sa", "nit", "e b", " st", "oj ", "tit", "a ć", "dno", "e u", "o s", "u d", "eću", "ani", "dna", "nak", "nst", "stu", " sm", "e k", "u u", "an ", "gov", "nju", "juć", "aln", "m s", "tu ", "a r", "ćov", "jan", "u n", "o k", "ist", "ću ", "te ", "tvo", "ans", "šti", "nu ", "ara", "nap", "m p", "nić", "olj", "bud", " bu", "edi", "ovj", "i v", "pod", "sam", "obr", "tel", " mi", "ina", "zaš", "e m", "ašt", " vj", "ona", "nji", "jek", " ta", "duć", "ija", " ćo", "tup", "h p", "oja", "smi", "ada", " op", "oso", "una", "sob", "odu", "dni", "rug", "udu", "ao ", "di ", "avi", "tno", "jim", "itu", "itk", "će ", "odr", "ave", "meć", "nog", "din", "svi", " ći", "kak", "kla", "rim", "akv", "elo", "štv", "ite", "vol", "jet", "opć", "pot", "tan", "ak ", "nic", "nac", "uće", " sk", " me", "ven"}, Nld: []string{"en ", "de ", "an ", " de", "van", " va", " en", " he", "ing", "cht", "der", "ng ", "n d", "n v", "et ", "een", " ge", "ech", "n e", "ver", "rec", "nde", " ee", " re", " be", "ede", "er ", "e v", "gen", "den", "het", "ten", " te", " in", " op", "n i", " ve", "lij", " zi", "ere", "eli", "zij", "ijk", "te ", "oor", "ht ", "ens", "n o", "and", "t o", "ijn", "ied", "ke ", " on", "eid", "op ", " vo", "jn ", "id ", "ond", "in ", "sch", " vr", "aar", "n z", "aan", " ie", "rde", "rij", "men", "ren", "ord", "hei", "hte", " we", "eft", "n g", "ft ", "n w", "or ", "n h", "eef", "vri", "wor", " me", "hee", "al ", "t r", "of ", "le ", " of", "ati", "g v", "e b", "eni", " aa", "lle", " wo", "n a", "e o", "nd ", "r h", "voo", " al", "ege", "n t", "erk", " da", " na", "t h", "sta", "jke", "at ", "nat", "nge", "e e", "end", " st", "om ", "e g", "tie", "n b", "ste", "die", "e r", "erw", "wel", "e s", "r d", " om", "ij ", "dig", "t e", "ige", "ter", "ie ", "gel", "re ", "jhe", "t d", " za", "e m", "ers", "ijh", "nig", "zal", "nie", "d v", "ns ", "d e", "e w", "e n", "est", "ele", "bes", " do", "g e", "che", "vol", "ge ", "eze", "e d", "ig ", "gin", "dat", "hap", "cha", "eke", " di", "ona", "e a", "lke", "nst", "ard", " gr", "tel", "min", " to", "waa", "len", "elk", "lin", "eme", "jk ", "n s", "del", "str", "han", "eve", "gro", "ich", "ven", "doo", " wa", "t v", "it ", "ove", "rin", "aat", "n n", "wet", "uit", "ijd", "ze ", " zo", "ion", " ov", "dez", "gem", "met", "tio", "bbe", "ach", " ni", "hed", "st ", "all", "ies", "per", "heb", "ebb", "e i", "toe", "es ", "taa", "n m", "nte", "ien", "el ", "nin", "ale", "ben", "daa", "sti", " ma", "mee", "kin", "pen", "e h", "wer", "ont", "iet", "tig", "g o", "s e", " er", "igd", "ete", "ang", "lan", "nsc", "ema", "man", "t g", "is ", "beg", "her", "esc", "bij", "d o", "ron", "tin", "nal", "eer", "p v", "edi", "erm", "ite", "t w", "t a", " hu", "rwi", "wij", "ijs", "r e", "weg", "js ", "rmi", "naa", "t b", "app", "rwe", " bi", "t z", "ker", "ame", "eri", "ken", " an", "ar ", " la", "tre", "ger", "rdi", "tan", "eit", "gde", "g i", "d z", "oep"}, Kur: []string{" he", " û ", "ên ", " bi", " ma", "in ", "na ", " di", "maf", "an ", "ku ", " de", " ku", " ji", "xwe", "her", " xw", "iya", "ya ", "kes", "kir", "rin", "iri", " ne", "ji ", "bi ", "yên", "afê", "e b", "de ", "tin", "e h", "iyê", "ke ", "es ", "ye ", " we", "er ", "di ", "we ", "ê d", "i b", " be", "erk", "ina", " na", " an", "î û", "yê ", "eye", "î y", "kî ", "rke", "nê ", "diy", "ete", "eke", "ber", "hem", "hey", " li", " ci", "wek", "li ", "n d", "fê ", " bê", " te", "ne ", "yî ", " se", "net", "rî ", "tew", "yek", "sti", "af ", " ki", "re ", "yan", "n b", "kar", "hev", "e k", "aza", "n û", "wî ", " ew", "i h", "n k", "û b", "î b", " mi", " az", "dan", " wî", "ekî", "î a", "a m", "zad", "e d", "mir", "bin", "est", "ara", "iro", "nav", "ser", "a w", "adi", "rov", "n h", "anê", "tê ", "ewe", "be ", "ewl", "ev ", "mû ", " ya", "tî ", "ta ", "emû", " yê", "ast", "wle", " tê", "n m", " bo", "wey", "s m", "bo ", " tu", "n j", "ras", " da", " me", "din", "î d", "ê h", "n n", "n w", "ing", "st ", " ke", " ge", "în ", "ar ", " pê", "iye", "îna", "bat", "r k", "ema", "cih", "ê b", "wed", "û m", "dî ", "û a", "vak", "ê t", "ekh", "par", " ye", "vî ", "civ", "n e", "ana", "î h", "ê k", "khe", "geh", "nge", "ûna", "fên", "ane", "av ", "î m", "bik", "eyê", "eyî", "e û", " re", "man", "erb", "a x", "vê ", "ê m", "iva", "e n", "hî ", "bûn", "kê ", " pa", "erî", "jî ", "end", " ta", "ela", "nên", "n x", "a k", "ika", "f û", "f h", "î n", "ari", "mî ", "a s", "e j", "eza", "tên", "nek", " ni", "ra ", "ehî", "tiy", "n a", "bes", "rbe", "û h", "rwe", "zan", " a ", "erw", "ov ", "inê", "ama", "ek ", "nîn", "bê ", "ovî", "ike", "a n", " ra", "riy", "i d", "anî", "û d", "e e", "etê", "ê x", "yet", "aye", "ê j", "tem", "e t", "erd", "i n", "eta", "ibe", "a g", "u d", "xeb", "atê", "i m", "tu ", " wi", "dew", "mal", "let", "nda", "ewa", " ên", "awa", "e m", "a d", "mam", "han", "u h", "a b", "pêş", "ere", " ba", "lat", "ist", " za", "bib", "uke", "tuk", "are", "asî", "rti", "arî", "i a", "hîn", " hî", "edi", "nûn", "anû", "qan", " qa", " hi", " şe", "ine", "n l", "mên", "ûn ", "e a"}, Yor: []string{"ti ", " ní", "ó̩ ", " è̩", "ní ", " lá", "̩n ", "o̩n", "é̩ ", "wo̩", "àn ", " e̩", "kan", "an ", "tí ", " tí", "tó̩", " kò", "ò̩ ", "̩tó", " àw", " àt", "è̩ ", "è̩t", "e̩n", "bí ", "àti", "lát", "áti", " gb", "lè̩", "s̩e", " ló", " ó ", "àwo", "gbo", "̩nì", "n l", " a ", " tó", "í è", "ra ", " s̩", "n t", "ò̩k", "sí ", "tó ", "̩ka", "kò̩", "ìyà", "o̩ ", " sí", "ílè", "orí", "ni ", "yàn", "dè ", "̩‐è", "ì k", "̩ à", "èdè", " or", "ún ", "ríl", "è̩‐", "í à", "jé̩", "‐èd", "àbí", "̩ò̩", "ò̩ò", "tàb", "nì ", "í ó", "n à", " tà", "̩ l", "jo̩", " ti", "̩e ", "̩ t", " wo", "nìy", "í ì", "ó n", " jé", " sì", "ló ", "kò ", "n è", "wó̩", " bá", "n n", "sì ", " fú", "̩ s", "í a", "rè̩", "fún", " pé", " òm", "̩ni", "gbà", " kí", " èn", "ènì", "in ", "òmì", "ìí ", "ba ", "nir", "pé ", "ira", "mìn", "ìni", "n o", "ràn", "ìgb", " ìg", "bá ", "e̩ ", " rè", "̩ n", "kí ", "n e", "un ", "gba", "̩ p", "í ò", "nú ", " o̩", "nín", "gbé", "yé ", " ka", "ínú", "a k", "fi ", " fi", "mo̩", "bé̩", "o̩d", "dò̩", "̩dò", "ó s", "i l", "̩ o", "̩ ì", "wà ", "í i", "i ì", "hun", "bò ", "i ò", "dá ", "bo̩", "o̩m", "̩mo", "̩wó", "bo ", "áà ", "̩ k", "ó j", "ló̩", "àgb", "ohu", " oh", " bí", " ò̩", "bà ", "ara", "yìí", "ogb", "írà", "n s", "ú ì", " ìb", "pò̩", "í k", " lè", "bog", "i t", "à t", "óò ", "yóò", "kó̩", "gé̩", "à l", "ó̩n", "rú ", "lè ", " yó", "̩ ò", "̩ e", "a w", "̩ y", "ò̩r", "̩ f", " wà", "ò l", "í t", "ó b", "i n", "ó̩w", "̩gb", "yí ", "í w", "ìké", "̩ a", "láà", "wùj", "àbò", "i è", "ùjo", "fin", "é̩n", "n k", "í e", "i j", "ú à", " ìk", "òfi", " òf", " ar", "i s", "mìí", "ìír", " mì", " ir", "rin", "náà", " ná", "jú ", "̩ b", " yì", "ó t", "̩é̩", " i ", "̩ m", "fé̩", "kàn", "rí ", "ú è", "à n", "wù ", "s̩é", "é à", " mú", " èt", "áyé", "í g", "̩kó", "̩dá", "è̩d", "àwù", "è̩k", " ìd", "irú", "í o", "i o", "i à", "láì", "í n", "ípa", " kú", "níp", " ìm", "a l", "ké̩", "bé ", "i g", "de ", "ábé", "ìn ", "báy", "̩è̩", "ígb", "wò̩", "níg", "mú ", "láb", " àà", "n f", "è̩s", "̩ w", "ùn ", "i a", "ayé", "èyí", " èy", "mó̩", "á è", " ni", "n b", " wó", "je̩", " ìj", "gbá", "ò̩n", "ó̩g"}, Uzb: []string{"lar", "ish", "an ", "ga ", "ar ", " va", " bi", "da ", "va ", "ir ", " hu", "iga", "sh ", "uqu", "shi", "bir", "quq", "huq", "gan", " bo", " ha", "ini", "ng ", "a e", "r b", " ta", "lis", "ni ", "ing", "lik", "ida", "oʻl", "ili", "ari", "nin", "on ", "ins", " in", "adi", "nso", "son", "iy ", " oʻ", "lan", " ma", "dir", "hi ", "kin", "har", "i b", "ash", " yo", "boʻ", " mu", "dan", "uqi", "ila", "ega", "qla", "r i", "qig", "oʻz", " eg", "kla", "a b", "qil", "erk", "ki ", " er", "oli", "nli", "at ", " ol", "gad", "lga", "rki", "oki", "i h", "a o", " qa", "yok", "lig", "osh", "igi", "ib ", "las", "n b", "atl", "n m", " ba", "ara", " qi", "ri ", " sh", "iya", "ala", "lat", "in ", "ham", "bil", "a t", "a y", "bos", "r h", "siy", "n o", "yat", "inl", "ik ", "a q", "cha", "a h", " et", "eti", "nis", "a s", "til", "ani", "h h", "i v", "mas", "tla", "osi", "asi", " qo", "ʻli", "ati", "i m", "rni", "im ", "uql", "arn", "ris", "qar", "a i", "gi ", " da", "n h", "ha ", "sha", "i t", "mla", "rch", " xa", "i o", "li ", "hun", "bar", "lin", "ʻz ", "arc", "rla", " bu", "a m", "a a", " as", "mum", " be", " tu", "aro", "r v", "ikl", "lib", "taʼ", "h v", "tga", "tib", "un ", "lla", "mda", " ke", "shg", " to", "n q", "sid", "n e", "mat", "amd", "shu", "hga", " te", "tas", "ali", "umk", "oya", "hla", "ola", "aml", "iro", "ill", "tis", "iri", "rga", "mki", "irl", " ya", "xal", "dam", " de", "gin", "eng", "rda", "tar", "ush", "rak", "ayo", " eʼ", " so", "ten", "alq", " sa", "ur ", " is", "imo", "r t", " ki", "mil", " mi", "era", "zar", "hqa", "aza", "k b", " si", "nda", "hda", "kat", "ak ", "oʻr", "n v", "a k", "or ", "rat", "ada", "ʻlg", "miy", "tni", "i q", "shq", "oda", "shl", "bu ", "dav", "nid", "y t", "ch ", "asl", "sos", "ilg", "aso", "n t", "atn", "sin", "am ", "ti ", "as ", "ana", "rin", "siz", "yot", "lim", "uni", "nga", "lak", "n i", "a u", "qon", "i a", "h k", "vla", "avl", "ami", "dek", " ja", "ema", "a d", "na ", " em", "ekl", "gʻi", "si ", "i e", "ino", " ka", "uch", "bor", "ker", " ch", "lma", "liy", "a v", "ʼti", "lli", "aka", "muh", "rig", "ech", "i y", "uri", "ror"}, Ibo: []string{"a n", "e n", "ke ", " na", "na ", " ọ ", " bụ", " n ", "nwe", "ere", "ọ b", "re ", "nye", " nk", "ya ", "la ", " nw", " ik", " ma", "ye ", "e ọ", "ike", "a o", "nke", "a m", "ụ n", " ya", "a ọ", "ma ", "bụl", "ụla", " on", " a ", "e i", "kik", "iki", "ka ", "ony", "ta ", "bụ ", "kwa", " nd", "a i", "i n", "di ", "a a", "wa ", "wer", "do ", " mm", "dụ ", "e a", "ha ", " ga", "any", " ob", "ndi", " ok", "he ", "e m", "e o", "a e", "ọ n", "ite", "rụ ", "hi ", "mma", "ga‐", "wu ", "ara", " dị", "aka", "che", "oke", "we ", "o n", " ih", "n o", "adụ", "mad", "obo", "bod", "a g", "odo", " ka", " ez", "te ", "hị ", "be ", "ụta", "dị ", " an", "zi ", " oh", "a‐e", "akw", "gba", "i m", "me ", " ak", "u n", "nya", "ihe", "ala", "ohe", "ghi", "ri ", " ọz", "her", "ra ", "weg", " nt", " iw", " mb", "ba ", "pụt", " si", "ro ", "oro", "iwu", "chi", "a‐a", "rị ", "ụ i", "ụ ọ", " eb", "iri", "ebe", "ụrụ", "zọ ", " in", "a y", "ezi", "e ị", "kpa", "le ", "ile", "ịrị", "n e", "kpe", "mba", " ha", "bi ", "sit", "e e", "inw", "nil", "asị", " en", "mak", "a u", " ni", "apụ", "chị", "i i", "ghị", "i ọ", "i o", "si ", " e ", "ide", "o i", "e y", "ụ m", "a s", "u o", "kwu", "ozu", "yer", "ru ", "enw", "ụ o", "ọzọ", "gid", "hụ ", "n a", "ahụ", "nkw", "sor", "egh", "edo", "a ụ", "tar", "n i", "toz", "ị o", "pa ", "i a", " me", "ime", "uru", "kwe", " mk", "tu ", "ama", "eny", "uso", "de ", " im", "ọ d", "osi", "hed", "a d", " kw", "mkp", "wet", " ọr", " ọn", "obi", "ọrụ", " ịk", " to", "gas", " ch", "ịch", "nha", "ọnọ", "nọd", " nc", " al", "n ụ", "ị m", " us", "nọ ", "u ọ", "nch", " o ", "eta", "n u", " ot", "otu", "sir", "sịr", " nh", "a k", "ali", "o m", " ag", " gb", "e s", "ọta", "nwa", "ị n", "lit", "ega", "ji ", "ọdụ", "e k", "ban", "e g", "ị k", "esi", "agb", "eme", "hu ", "ikp", "zu ", "pe ", "nta", "na‐", "chọ", "u a", "a b", "uch", "n ọ", "onw", "ram", "kwụ", "ekọ", "i e", " nọ", " ug", "ọch", "u m", "gwu", "a h", "zụz", "ugw", "meg", "ị e", "nat", "e h", "dịg", "o y", "kpu", "pụr", "cha", "zụ ", "hịc", "ich", " ng", "ach", " og", "wap", "wan", "ịgh", "uwa", " di", " nn", "i ị"}, Ceb: []string{"sa ", " sa", "ng ", "ang", " ka", "an ", " pa", "ga ", " ma", "nga", "pag", " ng", "a p", "on ", "kat", "a k", "ug ", "od ", " ug", "g m", " an", "ana", "n s", "ay ", "ung", "ata", "ngo", "a m", "atu", "ala", "san", "ag ", "tun", "g s", "g k", "god", "d s", "a s", "ong", "mga", " mg", "g p", "n u", "yon", "a a", "pan", "ing", "usa", "tan", "tag", "una", "aga", "mat", "ali", "g u", "han", "nan", " us", "man", "y k", "ina", "non", "kin", " na", "syo", "lan", "a b", "asa", "nay", "n n", "a i", "awa", " ta", "taw", "gaw", "nsa", "a n", "nas", " o ", "ban", "agp", "isa", "dun", "was", "iya", " gi", "asy", "adu", "ini", "bis", " ad", "ili", "o s", " bi", "g a", "nah", "nag", "a t", " ki", "lin", "lay", "ahi", "sam", "al ", "wal", " di", "nal", "asu", " ba", "ano", "agt", " wa", "ama", "yan", "a u", " iy", "kan", "him", "n k", "gan", "ags", "n a", "kag", " un", "ya ", "kas", "gpa", "g t", " su", "aha", "wha", "agk", "awh", "gka", "a g", "kal", "l n", "gla", "gsa", "sud", "gal", "imo", "ud ", "d u", "ran", "uka", "ig ", "aka", "aba", "ika", "g d", "ara", "ipo", "ngl", "g n", "uns", "n o", "kau", "i s", "y s", "og ", "uta", "d n", "li ", " si", "gik", "g i", "mta", "ot ", "iin", " la", " og", "o a", "ayo", "ok ", "awo", "aki", "kab", "aho", "n m", "hat", "o p", "gpi", "a w", "apa", "lip", "ip ", " hu", " ga", "a h", "uba", "na ", " ti", "bal", "gon", "la ", "ati", "wo ", "ad ", "hin", "sal", "gba", "buh", " bu", " ub", "uha", "agb", "hon", "ma ", "nin", "uga", "t n", "ihi", " pi", "may", " pu", "mak", "ni ", " ni", "d a", "pin", "abu", "agh", "ahu", "uma", "as ", "dil", "say", " in", "at ", "ins", "lak", "hun", "ila", "mo ", "s s", "sak", "amt", "o u", "pod", "ngp", "tin", "a d", "but", "ura", "lam", "aod", "t s", "bah", "ami", "aug", "mal", "sos", "os ", "k s", " il", "tra", " at", "gta", "bat", "aan", "ulo", "iha", "ha ", "n p", " al", "g b", "lih", "kar", "lao", "agi", "amb", "mah", "ho ", "sya", "ona", "aya", "ngb", "in ", "inu", "a l", " hi", "mag", "iko", "it ", "agl", "mbo", "oon", "tar", "o n", "til", "ghi", "rab", "y p", " re", "yal", "aw ", "nab", "osy", "dan"}, Tgl: []string{"ng ", "ang", " pa", "an ", "sa ", " sa", "at ", " ka", " ng", " ma", "ala", "g p", "apa", " na", "ata", "pag", "pan", " an", " at", "ay ", "ara", "ga ", "a p", "tan", "g m", "mga", " mg", "n n", "pat", " ba", "n a", "aya", "na ", "ama", "g k", "awa", "kar", "a k", "lan", "rap", "gka", "nga", "n s", "g n", "aha", "g b", "a a", " ta", "agk", "gan", "tao", "asa", "aka", "yan", "ao ", "a m", "may", "man", "kal", "ing", "a s", "nan", "aga", " la", "ban", "ali", "g a", "ana", "y m", "kat", "san", "kan", "g i", "ong", "pam", "mag", "a n", "o a", "baw", "isa", "wat", " y ", "lay", "g s", "y k", "in ", "ila", "t t", " ay", "aan", "o y", "kas", "ina", "t n", "ag ", "t p", "wal", "una", "yon", " o ", " it", "nag", "lal", "tay", "pin", "ili", "ans", "ito", "nsa", "lah", "kak", "any", "a i", "nta", "nya", "to ", "hay", "gal", "mam", "aba", "ran", "ant", "agt", "on ", "t s", "agp", " wa", " ga", "gaw", "han", "kap", "o m", "lip", "ya ", "as ", "g t", "hat", "y n", "ngk", "ung", "no ", "g l", "gpa", "wa ", "lag", "gta", "t m", "kai", "yaa", "sal", "ari", "lin", "a l", "pap", "ahi", " is", " di", "ita", " pi", "pun", "agi", "ipi", "mak", "a b", "y s", "bat", "yag", "ags", "o n", "aki", "tat", "pah", "la ", "gay", "hin", " si", "di ", "i n", "sas", "iti", "a t", "t k", "mal", "ais", "s n", "t a", "al ", "ipu", "ika", "lit", "gin", " ip", "ano", "gsa", "alo", "nin", "uma", "hal", "ira", "ap ", "ani", "od ", "i a", "gga", "y p", "par", "tas", "ig ", "sap", "ihi", "nah", "ini", " bu", "ngi", "syo", "o s", "nap", "o p", "a g", " ha", "uka", "a h", "aru", "a o", "mah", "iba", "asy", "li ", "usa", "g e", "uha", "ipa", "mba", "lam", "kin", "kil", "duk", "n o", "iga", " da", "dai", "aig", "igd", "gdi", "pil", "dig", "pak", " tu", "d n", "sam", "nas", "nak", "ba ", "ad ", "lim", "sin", "buh", "ri ", "lab", "it ", "tag", "g g", "lun", "ain", "and", "nda", "pas", "kab", "aho", "lig", "nar", "ula", " ed", "edu", " ib", "git", "ma ", "mas", "agb", "ami", "agg", "gi ", "sar", "i m", "siy", "g w", "api", "pul", "iya", "amb", "nil", "agl", "sta", "uli", "ino", "abu", "aun", "ayu", " al", "iyo"}, Hun: []string{" sz", " a ", "en ", " va", "és ", " és", "min", "ek ", " mi", " jo", "jog", "ind", "an ", "nek", "sze", "ság", " az", "gy ", "sza", "nde", "ala", "az ", "den", "a v", "val", "ele", " el", "oga", "mél", "egy", " eg", "n a", "ga ", "zab", " me", "zem", "emé", "aba", "int", "van", "bad", "tel", "tet", " te", "ak ", "tás", "ény", "t a", " ne", "gye", "ély", "tt ", "n s", "ben", "ség", "zet", "lam", "meg", "nak", "ni ", " se", "ete", "sen", "agy", "let", "lyn", "s a", "yne", "ra ", "z e", "et ", " al", "mel", "kin", "k j", "eté", "ok ", "tek", " ki", "vag", "re ", "n m", "oz ", "hoz", "ez ", "s s", "ett", "gok", "ogy", " kö", "mbe", "es ", "em ", "nem", "ely", " le", "ell", "emb", "hog", "k a", "atá", "köz", "nt ", " ho", "yen", "hez", "el ", "z a", "len", "dsá", "ásá", "tés", "ads", "k m", " ál", " em", "a s", "nte", "a m", "szt", "a t", "áll", "ás ", "y a", "ogo", "sem", "a h", "enk", "nye", "ese", "nki", "ágo", "t s", "lap", "ame", "ber", "ló ", "k é", "nyi", "ban", "mén", "s e", "i m", "t m", " vé", "lla", "ly ", "ébe", "lat", "ág ", "ami", "on ", "mze", "n v", "emz", "fel", "a n", "lő ", "a a", "eki", "eri", "yes", " cs", "lle", "tat", "elő", "nd ", "i é", "ég ", "ésé", "lis", "yil", "vet", "át ", "kül", "ért", " ke", "éte", "rés", "l a", "het", "szo", "art", "alá", " ny", "tar", "koz", " am", "a j", "ész", "enl", "elé", "ól ", "s k", "tár", "s é", "éle", "s t", "lem", "sít", "ges", "ott", " fe", "n k", "tko", "zás", "t é", "kel", "ja ", " ha", "aló", "zés", "nlő", "ése", "ot ", "ri ", "lek", "más", "tő ", "vel", "i j", "se ", "ehe", "tes", "eve", "ssá", "tot", "t k", "olg", "eze", "i v", "áza", "leh", "n e", "ül ", "tte", "os ", "ti ", "atk", "zto", "e a", "tos", "ány", "ána", "zte", "fej", "del", "árs", "k k", "kor", "ége", "szá", "t n", " bi", "zat", "véd", "nev", "elm", "éde", "zer", "téb", "biz", "rra", "ife", "izt", "ere", "at ", "ll ", "k e", "ny ", "sel", " né", "ába", "lt ", "ai ", "sül", "ház", "kif", "t e", " ar", "leg", "d a", "is ", "i e", "arr", "t t", "áso", "it ", "ető", "al ", " má", "t v", " bá", "bár", "a é", "esü", "lye", "m l", " es", "nyo"}, Azj: []string{" və", "və ", "ər ", "lar", " hə", "in ", "ir ", " ol", " hü", " bi", "hüq", "üqu", "quq", "na ", "lər", "də ", "hər", " şə", "bir", "an ", "lik", " tə", "r b", "mal", "lma", "ası", "ini", "r h", "əxs", "şəx", "ən ", "arı", "qla", "a m", "dir", "aq ", "uqu", "ali", " ma", "una", "ilə", "ın ", "yət", " ya", "ara", "ikd", "əri", "ar ", "əsi", "əti", "r ş", "rin", "yyə", "n h", " az", "dən", "nin", "ərə", "tin", "iyy", "mək", "zad", " mü", "sin", " mə", "ni ", "nda", "ət ", "ndə", "aza", "rın", "ün ", "ını", "ə a", "i v", "nın", "olu", "qun", " qa", " et", "ilm", "lıq", "ə y", "ək ", "lmə", "lə ", "kdi", "ind", "ına", "olm", "lun", "mas", "xs ", "sın", "ə b", " in", "n m", "q v", "nə ", "əmi", "n t", "ya ", "da ", " bə", "tmə", "dlı", "adl", "bər", " on", "əya", "ə h", "sı ", "nun", "maq", "dan", "inə", "etm", "un ", "ə v", "rlə", "n b", "si ", "raq", " va", "ə m", "n a", "ınd", "rı ", "anı", " öz", "əra", "nma", "n i", "ama", "a b", "irl", "ala", "li ", "ins", "bil", "ik ", " al", " di", "ığı", "ə d", "lət", "il ", "ələ", "ə i", "ıq ", "nı ", "nla", "dil", "müd", "n v", "ə e", "unm", "alı", " sə", "xsi", "ə o", "uq ", "uql", "nsa", "ətl", " də", "ili", "üda", "asi", " he", "ola", "san", "əni", "məs", " da", "lan", " bu", "tər", "həm", "dır", "kil", "iş ", "u v", " ki", "min", "eyn", "mi ", "yin", " ha", "sos", "heç", "bu ", "eç ", " ed", "kim", "lığ", "alq", "xal", " as", "sia", "osi", "r v", "q h", "rə ", "yan", "i s", " əs", "daf", "afi", " iş", "ı h", "fiə", " ta", "ə q", "ıql", "a q", "yar", "sas", "lı ", "ill", "mil", "əsa", "liy", "tlə", "siy", "a h", "məz", "tün", "ə t", " is", "ist", "iyi", " so", "n ə", "al ", "ifa", "ina", "lıd", "ı o", "ıdı", "əmə", "ır ", "ədə", "ial", " mi", "əyi", "miy", "çün", "n e", "iya", "edi", " cə", " bü", "büt", "ütü", "xil", "üçü", "mən", "adə", "t v", "a v", "axi", "dax", "r a", "onu", " üç", "seç", " nə", " se", "man", "ril", "sil", "əz ", "iə ", "öz ", "ılı", "aya", "qan", "i t", "şər", "təm", "ulm", "rəf", "məh", " xa", "ğın", " dö", " ni", "sti", "ild", "amə", "qu ", "nam", "n o", "n d", "var", "ad ", "zam", "tam", "təh"}, Ces: []string{" pr", " a ", "ní ", " ne", "prá", "ráv", "ost", " sv", " po", "na ", "ch ", "ho ", " na", "nos", "o n", " ro", "ání", "ti ", "vo ", "neb", "ávo", "má ", "bo ", "ebo", " má", "kaž", " ka", "ou ", "ažd", " za", " je", "dý ", "svo", "ždý", " př", "a s", " st", "sti", "á p", " v ", "obo", "vob", " sp", "bod", " zá", "ých", "pro", "rod", "ván", "ení", "né ", "ý m", "ého", " by", " ná", "spo", "ně ", "o p", "mi ", "í a", "ter", "roz", "ová", "to ", " ja", " li", "áro", "nár", "by ", "jak", "a p", "a z", "ny ", " vš", "kte", "i a", "lid", "ím ", "o v", "í p", "u p", "mu ", "at ", " vy", "odn", " so", " ma", "a v", " kt", "í n", "zák", "li ", "oli", "ví ", "kla", "tní", "pod", "stá", "en ", "do ", "t s", "mí ", "je ", "em ", "áva", " do", "byl", " se", "být", "í s", "rov", " k ", "čin", " ve", "ýt ", "í b", "it ", "dní", "vše", "pol", "o s", " bý", "tví", "nýc", "stn", "nou", "ejn", "sou", "ran", "ci ", "vol", "se ", "nes", "a n", "pří", "eho", "ným", "tát", "va ", "ním", "mez", "ají", "i s", "stv", "ké ", "ích", "ečn", "žen", "e s", "vé ", "ova", "své", "ým ", "kol", "du ", "u s", "jeh", "kon", "ave", "ech", "eré", "nu ", " ze", "i v", "o d", "í v", "hra", "ids", "m p", "ému", "ole", "y s", " i ", "maj", "o z", " to", "aby", "sta", " ab", "m a", "pra", " ta", "chn", " ni", "že ", "ovn", "ako", "néh", "len", "dsk", "rac", "lad", "chr", " že", "vat", " os", "sob", "aké", "i p", "smí", "esm", "st ", "i n", "m n", "a m", "lně", "lní", "při", "bez", "dy ", "áln", "ens", "zem", "t v", "čen", "leč", "kdo", "ými", " ji", "oci", "i k", " s ", "í m", "jí ", " či", "áv ", "ste", "och", " oc", "vou", "ákl", " vz", "rav", "odu", "nez", "inn", "ský", "nit", "ivo", "a j", "u k", "iál", " me", "ezi", "ské", "ven", "stu", "u a", "tej", "oln", "slu", "zen", "í z", "y b", "oko", "zac", "níc", "jin", "ky ", "a o", "řís", "obe", "u v", "tak", "věd", "oje", " vý", "ikd", "h n", " od", "čno", "oso", "ciá", "h p", " de", "a t", "ům ", "soc", "jíc", "odů", "něn", "adn", "tup", "dů ", "děl", "jno", "kéh", "por", "ože", "hov", "aci", "nem", "é v", "rok", "i j", "u o", "od ", "ího", "vin", "odi"}, Mlg: []string{"ny ", "na ", "ana", " ny", "y f", "a n", "sy ", "aha", "ra ", "a a", " fa", "n n", "y n", "a m", "an ", " fi", "tra", "any", " ma", "han", "nan", "ara", "y a", " am", "ka ", "in ", "y m", "ami", "olo", " ts", "lon", "min", " mi", " sy", " na", "a t", " ol", "fan", " ha", "a i", "man", "iza", " iz", "ina", "ona", "y h", "aka", "o a", "ian", "a h", "reh", "etr", "a s", "het", "on ", "a f", "ire", "fah", "tsy", "mba", " ar", " hi", "zan", "ay ", "ndr", "y o", "ira", "y t", " an", "ehe", "o h", "afa", "y i", "ren", "ran", " zo", "ena", "amb", "dia", "ala", "amp", "zo ", "ika", " di", "tan", "y s", "y z", " az", "ia ", "m p", "rin", "jo ", "n j", " jo", " dr", "zy ", "ry ", "a d", "ao ", "and", "dre", "haf", "nen", "mpi", "rah", " ka", "eo ", "n d", " ir", "ho ", "am ", "rai", "fa ", "elo", "ene", "oan", "omb", " ta", " pi", " ho", "ava", "azo", "dra", "itr", "iny", "ant", "tsi", "zon", "asa", "tsa", " to", "ari", "ha ", "a k", "van", "n i", "fia", "ray", " fo", "mbe", "ony", "sa ", "isy", "azy", "o f", "lal", "ly ", "ova", "lom", " vo", "nat", "fir", "sam", "oto", "zay", "mis", "ham", "bel", " ra", "a r", "ban", "kan", "iha", "nin", "a e", "ary", "ito", " he", " re", " no", "ita", "voa", "nam", "fit", "iar", " ko", "tok", "isa", "fot", "no ", "otr", "mah", "aly", "har", "y v", "y r", " sa", "o n", "ain", "kam", "aza", "n o", "oka", "ial", "ila", "ano", "atr", "oa ", " la", "y l", "eri", "y d", "ata", "hev", "sia", "pia", "its", "reo", " ao", "pan", "anj", "aro", "tov", "nja", "o s", "fam", "pir", " as", "ty ", "nto", "oko", "y k", "sir", "air", "tin", "hia", "ais", "mit", "ba ", " it", " eo", "o t", "mpa", "kon", "a z", "a v", "ity", "ton", "rak", "era", "ani", "ive", "mik", "ati", "tot", "vy ", "hit", "hoa", "aho", "ank", "ame", "ver", "vah", "tao", "o m", "ino", "dy ", "dri", "oni", "ori", " mo", "hah", "nao", "koa", "ato", "end", "n t", " za", "eha", "nga", "jak", "bar", "lah", "mia", "lna", "aln", "va ", " mb", "lan", " pa", "aov", "ama", "eve", "za ", "dro", "ria", "to ", "nar", "izy", "ifa", "adi", "via", "aja", " va", "ind", "n k", "idi", "fiv", "rov", "vel"}, Nya: []string{"ndi", "ali", "a k", "a m", " ku", " nd", "wa ", "na ", "nth", " mu", " al", "yen", "thu", "se ", "ra ", "nse", "hu ", "di ", "a n", "la ", " pa", "mun", " wa", "nga", "unt", " la", "a u", "u a", "e a", "ons", "za ", " ma", " lo", "iye", "ace", "ce ", "a l", "idw", "ang", " ka", "kha", "liy", "ens", "li ", "ala", "ira", "ene", "pa ", "i n", "we ", "e m", "ana", "dwa", "era", "hal", "ulu", "lo ", "ko ", "dzi", " ci", "yo ", "o w", "iko", "ga ", "a p", "chi", " mo", "lu ", "o l", "o m", "oyo", "ufu", " um", "moy", "zik", " an", "ner", "and", "umo", "ena", " uf", "dan", "iri", "ful", "a a", "ka ", "to ", "hit", "nch", " nc", "a c", "ito", "fun", "dwe", " da", "kuk", "wac", " dz", "e l", "a z", "ape", "kap", "u w", "e k", "ere", "ti ", "lir", " za", "pen", "tha", "aye", "kut", "mu ", "ro ", "ofu", "ing", "lid", " zo", "amu", "o c", "i m", "mal", "kwa", "mwa", "o a", "eza", "i p", "o n", "so ", "i d", "lin", "nso", " mw", "iro", "zo ", " a ", "ati", " li", "i l", "a d", "ri ", "edw", "kul", "una", "uti", "lan", "a b", "iki", "i c", "alo", "i k", " ca", "lam", "o k", "dza", "ung", "o z", "mul", "ulo", "uni", "gan", "ant", "nzi", " na", "nkh", "e n", "san", "oli", "wir", "tsa", "u k", "ome", "ca ", "gwi", "unz", "lon", "dip", "ipo", "yan", "gwe", "pon", "akh", "uli", "aku", "mer", "ngw", "cit", " po", " ko", "kir", "mba", "ukh", "tsi", "bun", "iya", "ope", "kup", "bvo", "han", " bu", "pan", "ame", "vom", "ama", " ya", "siy", " am", "rez", "u n", "zid", "men", "osa", "ao ", "pez", "i a", " kw", " on", "u o", "lac", "ezo", "aka", "nda", "hun", "u d", "ank", "diz", "ina", "its", "adz", " kh", "ne ", "nik", "e p", "o o", "ku ", "phu", "eka", " un", "eze", "mol", "ma ", " ad", "pat", "oma", "ets", "wez", "kwe", "kho", "ya ", "izo", "sa ", "o p", "kus", "oci", "khu", "okh", "ans", "awi", "izi", "zi ", "ndu", "iza", "no ", "say", " si", "i u", "aik", "jir", "ats", "ogw", "du ", "mak", "ukw", "nji", "mai", "ja ", "sam", "ika", "aph", "sid", "isa", "amb", "ula", "osi", "haw", "u m", " zi", "oye", "lok", "win", "lal", "ani", " ba", "si ", " yo", "e o", "opa", "ha ", "map", "emb"}, Kin: []string{"ra ", " ku", " mu", "se ", "a k", "ntu", "nga", "tu ", "umu", "ye ", "li ", " um", "mun", "unt", "a n", "ira", " n ", "ere", "wa ", "we ", " gu", "mu ", "ko ", "a b", "e n", "o k", "e a", "a u", "a a", "u b", "e k", "ose", "uli", "aba", "ro ", " ab", "gom", "e b", "ba ", "ugu", " ag", "omb", "ang", " ib", "eng", "mba", "o a", "gu ", " ub", "ama", " by", " bu", "za ", "ihu", "ga ", "e u", "o b", " ba", "kwi", "hug", "ash", "ren", "yo ", "ndi", "e i", " ka", " ak", " cy", "iye", " bi", "ora", "re ", "gih", "igi", "ban", "ubu", " nt", " kw", "di ", "gan", "a g", "a m", "aka", "nta", "aga", " am", "a i", "ku ", "iro", "i m", "ta ", "ka ", "ago", "byo", "ali", "and", "ibi", "na ", "uba", "ili", " bw", "sha", "cya", "u m", "yan", "o n", " ig", "ese", "no ", "obo", "ana", "ish", "kan", "sho", " we", "era", "ya ", "aci", "wes", "ura", "i a", "uko", "e m", "n a", "o i", "kub", "uru", "hob", "ber", "ran", "bor", " im", "ure", "u w", "wo ", "cir", "gac", "ani", "bur", "u a", "o m", "ush", " no", "e y", " y ", "rwa", "eke", "nge", "ara", "wiy", "uga", "zo ", "ne ", "ho ", "bwa", "yos", "anz", "aha", "ind", "mwe", "teg", "ege", "are", "ze ", "n i", "rag", "ane", "u n", "ge ", "mo ", "u k", "bul", " uk", "bwo", "bye", "iza", "age", "ngo", "u g", "gir", "ger", "zir", "kug", "ite", "bah", " al", " ki", "uha", "go ", "mul", "ugo", "n u", "tan", "guh", "y i", " ry", "gar", "bih", "iki", "atu", "ha ", "mbe", "bat", "o g", "akw", "iby", "imi", "kim", "ate", "abo", "e c", "aho", "o u", "eye", "tur", "kir", " ni", "je ", "bo ", "ata", "u u", " ng", "shy", "a s", "gek", " ru", "iko", " bo", "bos", "i i", " gi", "nir", "i n", "gus", "eza", "nzi", "i b", "kur", " ya", "o r", "ung", "rez", "ugi", "ngi", "nya", " se", "mat", "eko", "o y", " in", "uki", " as", "any", "bis", "ako", "gaz", "imw", "rer", "bak", "ige", "mug", "ing", "byi", "kor", "eme", "nu ", " at", "bit", " ik", "hin", "ire", "kar", "shi", "yem", "yam", " yi", "gen", "tse", "ets", "ihe", "hak", "ubi", "key", "rek", "icy", " na", "bag", "yer", " ic", "eze", "awe", "but", "irw", " ur", "fit", "ruk", "ubw", "rya", "uka", "afi"}, Zul: []string{"nge", "oku", "lo ", " ng", "a n", "ung", "nga", "le ", "lun", " no", "elo", "wa ", "la ", "e n", "ele", "ntu", "gel", "tu ", "we ", "ngo", " um", "e u", "thi", "uth", "ke ", "hi ", "lek", "ni ", "ezi", " ku", "ma ", "nom", "o n", "pha", "gok", "nke", "onk", "a u", "nel", "ulu", "oma", "o e", "o l", "kwe", "unt", "ang", "lul", "kul", " uk", "a k", "eni", "uku", "hla", " ne", " wo", "mun", " lo", "kel", "ama", "ath", "umu", "ho ", "ela", "lwa", "won", "zwe", "ban", "elw", "ule", "a i", " un", "ana", "une", "lok", "ing", "elu", "wen", "aka", "tho", "aba", " kw", "gan", "ko ", "ala", "enz", "o y", "khe", "akh", "thu", "u u", "na ", "enk", "kho", "a e", "zin", "gen", "i n", "kun", "alu", "mal", "lel", "e k", "nku", "e a", "eko", " na", "kat", "lan", "he ", "hak", " ez", "o a", "kwa", "o o", "ayo", "okw", "kut", "kub", "lwe", " em", "yo ", "nzi", "ane", "obu", " ok", "eth", "het", "ise", "so ", "ile", "nok", " ba", "ben", "eki", "nye", "ike", "i k", "isi", " is", "aph", "esi", "nhl", "mph", " ab", "fan", "e i", "isa", " ye", "nen", "ini", "ga ", "zi ", "fut", " fu", "uba", "ukh", "ka ", "ant", "uhl", "hol", "ba ", "and", "do ", "kuk", "abe", "za ", "nda", " ya", "e w", "kil", "the", " im", "eke", "a a", "olo", "sa ", "olu", "ith", "kuh", "o u", "ye ", "nis", " in", "ekh", "e e", " ak", "i w", "any", "khu", "eng", "eli", "yok", "ne ", "no ", "ume", "ndl", "iph", "amb", "emp", " ko", "i i", " le", "isw", "zo ", "a o", "emi", "uny", "mel", "eka", "mth", "uph", "ndo", "vik", " yo", "hlo", "alo", "kuf", "yen", "enh", "o w", "nay", "lin", "hul", "ezw", "ind", "eze", "ebe", "kan", "kuz", "phe", "kug", "nez", "ake", "nya", "wez", "wam", "seb", "ufa", "bo ", "din", "ahl", "azw", "fun", "yez", "und", "a l", "li ", "bus", "ale", "ula", "kuq", "ola", "izi", "ink", "i e", "da ", "nan", "ase", "phi", "ano", "nem", "hel", "a y", "hut", "kis", "kup", "swa", "han", "ili", "mbi", "kuv", "o k", "kek", "omp", "pho", "kol", "i u", "oko", "izw", "lon", "e l", " el", "uke", "kus", "kom", "ulo", "zis", "hun", "nje", "lak", "u n", "huk", "sek", "ham", " ol", "ani", "o i", "ubu", "mba", " am"}, Swe: []string{" oc", "och", "ch ", "er ", "ing", "för", "tt ", "ar ", "en ", "ätt", "nde", " fö", "rät", "ill", "et ", "and", " rä", " en", " ti", " de", "til", "het", "ll ", "de ", "om ", "var", "lig", "gen", " fr", "ell", "ska", "nin", "ng ", "ter", " ha", "as ", " in", "ka ", "att", "lle", "der", "sam", " i ", "und", "lla", "ghe", "fri", "all", "ens", "ete", "na ", "ler", " at", "ör ", "den", " el", "av ", " av", " so", "igh", "r h", "nva", "ga ", "r r", "env", "la ", "tig", "nsk", "iga", "har", "t a", "som", "tti", " ut", "ion", "t t", "a s", "nge", "ns ", "a f", "r s", "män", "a o", " sk", " si", "rna", "isk", "an ", " st", "är ", "ra ", " vi", " al", "t f", " sa", "a r", "ati", " är", " me", " be", "n s", " an", "tio", "nna", "lan", "ern", "t e", "med", " va", "ig ", "äns", " åt", "sta", "ta ", "nat", " un", "kli", "ten", " gr", "vis", "äll", " la", "one", "han", "änd", "t s", "stä", "t i", "ner", "ans", "gru", " ge", "ver", " må", " li", "lik", "ihe", "ers", "rih", "r a", " re", "må ", "sni", "n f", "t o", " mä", " na", "r e", "ri ", "ad ", "ent", "kla", "det", " vä", "run", "rkl", "da ", "h r", "upp", "dra", "rin", "igt", "dig", "n e", "erk", "kap", "tta", "ed ", "d f", "ran", "e s", "tan", "uta", "nom", "lar", "gt ", "s f", " på", " om", "kte", "lin", "r u", "vid", "g o", "änn", "erv", "ika", "ari", "a i", "lag", "rvi", "id ", "r o", "s s", "vil", "r m", "örk", "ot ", "ndl", "str", "els", "ro ", "a m", "mot", " mo", "i o", "på ", "r d", "on ", "del", "isn", "sky", "e m", "ras", " hä", "r f", "i s", "a n", "nad", "n o", "gan", "tni", "era", "ärd", "a d", "täl", "ber", "nga", "r i", "enn", "nd ", "n a", " up", "sin", "dd ", "örs", "je ", "itt", "kal", "n m", "amt", "n i", "kil", "lse", "ski", "nas", "end", "s e", " så", "inn", "tat", "per", "t v", "arj", "e f", "l a", "rel", "t b", "int", "tet", "g a", "öra", "l v", "kyd", "ydd", "rje", " fa", "bet", "se ", "t l", "lit", "sa ", "när", "häl", "l s", "ndr", "nis", "yck", "h a", "llm", "lke", "h f", "arb", "lmä", "nda", "bar", "ckl", "v s", "rän", "gar", "tra", "re ", "ege", "r g", "ara", "ess", "d e", "vär", "mt ", "ap "}, Som: []string{" ka", "ay ", "ka ", "an ", "uu ", "oo ", "da ", "yo ", "aha", " iy", "ada", "aan", "iyo", "a i", " wa", " in", "sha", " ah", " u ", "a a", " qo", "ama", " la", "hay", "ga ", "ma ", "aad", " dh", " xa", "ah ", "qof", "in ", " da", "a d", "aa ", "iya", "a s", "a w", " si", " oo", "isa", "yah", "eey", "xaq", "ku ", " le", "lee", " ku", "u l", "la ", "taa", " ma", "q u", "dha", "y i", "ta ", "aq ", "eya", "sta", "ast", "a k", "of ", "ha ", "u x", "kas", "wux", " wu", "doo", "sa ", "ara", "wax", "uxu", " am", "xuu", "inu", "nuu", "a x", "iis", "ala", "a q", "ro ", "maa", "o a", " qa", "nay", "o i", " sh", " aa", "kal", "loo", " lo", "le ", "a u", " xo", " xu", "o x", "f k", " ba", "ana", "o d", " uu", "iga", "a l", "yad", "dii", "yaa", "si ", "a m", "gu ", "ale", "u d", "ash", "ima", "adk", "do ", "aas", " ca", "o m", "lag", "san", "dka", "xor", "adi", "add", " so", "o k", " is", "lo ", " mi", "aqa", "na ", " fa", "soo", "baa", " he", "kar", "mid", "dad", "rka", "had", "iin", "a o", "aro", "ado", "aar", "u k", "qaa", " ha", "ad ", "nta", "o h", "har", "axa", "quu", " sa", "n k", " ay", "mad", "u s", " ga", "eed", "aga", "dda", "hii", "aal", "haa", "n l", "daa", "xuq", "o q", "o s", "uqu", "uuq", "aya", "i k", "hel", "id ", "n i", " ee", "nka", " ho", "ina", "waa", "dan", "nim", "elo", "agu", "ihi", "naa", "mar", "ark", "saa", "riy", "rri", "qda", "uqd", " bu", "ax ", "a h", "o w", "ya ", "ays", "gga", "ee ", "ank", " no", "n s", "oon", "u h", "n a", "ab ", "haq", "iri", "o l", " gu", "uur", "lka", "laa", "u a", "ida", "int", "lad", "aam", "ood", "ofk", "dhi", "dah", "orr", "eli", " xi", "ysa", "arc", "rci", "to ", "yih", "ool", "kii", "h q", "a f", " ug", "ayn", "asa", " ge", "sho", "n x", "siy", "ido", "a g", "gel", "ami", "hoo", "i a", "jee", "n q", "agg", "al ", " di", " ta", "e u", "o u", " ji", "goo", "a c", "sag", "alk", "aba", "sig", " mu", "caa", "aqo", "u q", "ooc", "oob", "bar", "ii ", "ra ", "a b", "ago", "xir", "aaq", " ci", "dal", "oba", "mo ", "iir", "hor", "fal", "qan", " du", "dar", "ari", "uma", "d k", "ban", "y d", "qar", "ugu", " ya", "xay", "a j"}, Ilo: []string{"ti ", "iti", "an ", "nga", "ga ", " ng", " pa", " it", "en ", " ka", " ke", " ma", "ana", " a ", " ti", "pan", "ken", "agi", "ang", "a n", "a k", "aya", "gan", "n a", "int", "lin", "ali", "n t", "a m", "dag", "git", "a a", "i p", "teg", "a p", " na", "nte", "man", "awa", "kal", "da ", "ng ", "ega", "ada", "way", "nag", "n i", " da", "na ", "i k", "sa ", "n k", "ysa", "n n", "no ", "a i", "al ", "add", "aba", " me", "i a", "eys", "nna", "dda", "ngg", "mey", " sa", "pag", "ann", "ya ", "gal", " ba", "mai", " tu", "gga", "kad", "i s", "yan", "ung", "nak", "tun", "wen", "aan", "nan", "aka", " ad", "enn", " ag", "asa", " we", "yaw", "i n", "wan", "nno", "ata", " ta", "l m", "i t", "ami", "a t", " si", "ong", "apa", "kas", "li ", "i m", "ina", " an", "aki", "ay ", "n d", "ala", "gpa", "a s", "g k", "ara", "et ", "n p", "at ", "ili", "eng", "mak", "ika", "ama", "dad", "nai", "g i", "ipa", "in ", " aw", "toy", "oy ", "ao ", "yon", "ag ", "on ", "aen", "ta ", "ani", "ily", "bab", "tao", "ket", "lya", "sin", "aik", " ki", "bal", "oma", "agp", "ngi", "a d", "y n", "iwa", "o k", "kin", "naa", "uma", "daa", "o t", "gil", "bae", "i i", "g a", "mil", " am", " um", "aga", "kab", "pad", "ram", "ags", "syo", "ar ", "ida", "yto", "i b", "gim", "sab", "ino", "n w", " wa", " de", "a b", "nia", "dey", "n m", "o n", "min", "nom", "asi", "tan", "aar", "eg ", "agt", "san", "pap", "eyt", "iam", "i e", "saa", "sal", "pam", "bag", "nat", "ak ", "sap", "ed ", "gsa", "lak", "t n", "ari", "i u", " gi", "o p", "nay", "kan", "t k", "sia", "aw ", "g n", "day", "i l", "kit", "uka", "lan", "i d", "aib", "pak", "imo", "y a", "ias", "mon", "ma ", " li", "den", "i g", "to ", "dum", "sta", "apu", "o i", "ubo", "ged", "lub", "agb", "pul", "bia", "i w", "ita", "asy", "mid", "umi", "abi", "akd", "kar", "kap", "kai", " ar", "gin", "kni", " id", "ban", "bas", "ad ", "bon", "agk", "nib", "o m", "ibi", "ing", "ran", "kda", "din", "abs", "iba", "akn", "nnu", "t i", "isu", "o a", "aip", "as ", "inn", "sar", " la", "maa", "nto", "amm", "idi", "g t", "ulo", "lal", "bsa", "waw", "kip", "w k", "ura", "d n", "y i"}, Uig: []string{"ish", " he", "ini", "ing", "nin", "gha", "ng ", "ili", " we", "we ", "sh ", "in ", " bo", "quq", "oqu", "ni ", "hoq", " ho", "ush", "shi", "lik", "qil", "bol", "shq", "en ", "lis", "qa ", "hqa", "n b", "hem", " qi", "ki ", "dem", "iy ", " ad", "ade", "igh", "e a", "em ", "han", "liq", "et ", "ge ", "uq ", "nda", "din", " te", " bi", "idi", "let", "qan", "nli", "ige", "ash", "tin", "ha ", "kin", "iki", "her", "de ", " er", " ba", "and", "iti", "olu", "an ", " dö", "döl", "aq ", "luq", " ya", "me ", "lus", "öle", "mme", "emm", " qa", "daq", "rki", "lgh", "erq", "erk", "shk", "esh", "rqa", "iq ", "uqi", "ile", "rim", "i w", "er ", "ik ", "yak", "aki", "ara", "a h", " be", "men", " ar", "du ", "shu", "uql", "hri", "hi ", "qlu", "q h", "inl", "lar", "da ", "i b", "ime", " as", "ler", "etl", "nis", " öz", "ehr", "lin", "e q", "ar ", "ila", " mu", "len", " me", "qi ", "asi", "beh", "a b", "ayd", "q a", "bir", "bil", " sh", "che", "rli", "ke ", "bar", "hke", "yet", "éli", "shl", "tni", "u h", "ek ", "may", "e b", " ké", "h h", " ig", "ydu", "isi", "ali", "hli", "k h", " qo", "iri", "emd", "ari", "e h", "ida", "e t", "tle", "rni", " al", "siy", "lid", "olm", "iye", "anl", " tu", "iqi", "lma", "ip ", "mde", "e e", "tur", "a i", "uru", "i k", "raw", "hu ", "mus", "kil", " is", "i a", "ir ", "éti", "r b", "özi", "ris", "asa", "i h", "sas", " je", "he ", " ch", "qig", "bas", "n q", "alg", "ett", "les", " xi", "tid", " él", "tes", "ti ", "awa", "ima", "nun", "a a", " xe", " bu", "hil", "n h", " xa", "adi", "dig", "anu", "uni", "mni", " sa", "arl", "rek", "ére", " hö", "kér", " ji", "min", "i q", "tis", "rqi", " iy", "elq", "xel", "p q", " qe", "y i", "i s", "lig", " ma", "iya", "i y", "siz", "ani", " ki", "qti", " de", "q w", "emn", "met", "jin", "niy", "i i", "tim", "irl", " ti", "rin", "éri", "i d", "ati", "si ", "tew", "i t", "tli", "eli", "e m", "rus", "oli", "ami", "gen", "ide", "ina", "chi", "dil", "nay", "ken", "ern", "n w", " to", "ayi", " ij", "elg", "she", "tti", "arq", "hek", "e i", "n a", "zin", "r a", "ijt", "g b", "atn", "qar", "his", "uch", "lim", "hki", "dik"}, Hat: []string{"ou ", "an ", " li", "on ", "wa ", "yon", " po", "li ", "pou", "te ", " yo", "oun", " mo", "un ", "mou", "ak ", " na", "en ", "n p", "nan", "tou", "syo", " dw", " to", "yo ", " fè", "dwa", " ak", " ki", "ki ", " pa", " sa", "out", " la", " ko", " ge", "ut ", "n s", "gen", " de", "se ", "asy", "èt ", "i p", "n d", " a ", " so", "n l", "a a", "fè ", "n k", " se", "pa ", "e d", "u l", " re", "ite", "sa ", " ch", "kon", "n n", "e l", "t p", "ni ", "cha", "a p", "nn ", "ans", "pi ", "t m", " ka", " an", "nm ", "fèt", "i s", "son", "man", " me", "n m", "n a", "e p", "swa", "sou", "e k", "hak", "òt ", "n y", "men", "i l", "epi", " pe", "ote", "san", " ep", "i k", " si", "yen", "eyi", "a l", " ap", "i a", "yi ", "pey", "je ", "n t", "e a", "k m", "e s", " ni", "lib", "e n", "i t", "lit", "ran", "lè ", "enn", "al ", "a s", " pr", "a f", "ns ", " lò", "ap ", "lòt", "enm", "k l", "n e", "t l", "kla", "anm", "e y", "a k", " ma", "e t", "ay ", "i m", "ali", " lè", "è a", "ye ", "a y", "ant", " os", " ba", "i g", " tè", "aso", "u t", "a n", " pw", "ras", " pè", "n f", "nas", "ka ", "n g", "osw", " ta", "dek", "i d", "pwo", "e m", " di", " vi", "la ", "i n", "u s", "sos", "bli", " te", "o t", " tr", "lwa", "ète", "a t", "le ", "u y", "i f", "tan", "a c", "lar", "a m", "ete", "ara", "t k", " pi", "ibè", "bèt", "re ", "osy", "de ", "ati", "ke ", "res", "tis", "i y", "tè ", "nen", " fa", "ekl", "ze ", "nal", "ons", "ksy", "ini", "che", " le", "e r", "a d", " en", "aye", "he ", "o p", "alw", " kò", "lal", " no", "esp", "a g", "ava", "kou", "las", "way", "u f", "isy", " za", " ok", "oke", "kal", "ken", "sye", "ta ", "onn", "k k", "nje", "pra", "van", "esi", "pès", "kot", "ret", "sya", "n v", "lek", "jan", "ik ", "a b", "eks", "wot", "è n", "di ", "òl ", "tra", "u k", "i r", "nou", " as", "k a", "u d", "ist", "èso", "ib ", " ne", "iti", "ti ", "is ", "y a", "des", "è l", "a r", "ont", " ke", "nsa", "pat", "rit", "sit", "pòt", "ona", "ab ", "è s", " sw", "ond", "ide", " ja", "rav", "t a", "ri ", "bon", "viv", " sè", "pre", "vay", "k p", "l l", "kòm", "i o", " ra", "era", "fan", "dev"}, Aka: []string{"sɛ ", "a a", " sɛ", "ne ", "ra ", "a n", " wɔ", " a ", "ara", "an ", "eɛ ", "no ", " ne", " bi", " no", " as", "iar", "bia", "yɛ ", "mu ", "aa ", " an", "ɛ s", "e a", "ma ", " ho", "bi ", "man", "deɛ", " mu", "ho ", "ɛ a", "na ", "a ɛ", " ob", "obi", "e n", "a b", "n a", "so ", "o n", "pa ", "ama", "ɛ o", "o a", "ipa", "nip", "ɛ n", "naa", " na", "a w", "ana", " so", " ad", " nn", "ɛ ɔ", "ɛde", "asɛ", "kwa", " on", "oni", "wan", " am", "a ɔ", "sɛd", "wɔ ", " ah", "ɛyɛ", " ny", "oɔ ", " n ", "mma", "i a", " mm", "nni", " kw", "ie ", "wɔn", "ɛ w", "de ", " ɛy", " ba", "ase", "ɔ n", "o b", "i m", "ɔ a", "uo ", "n n", "a m", "o s", "iri", " yi", "ni ", "e s", "nyi", "di ", "u n", "a o", "aho", " de", "tum", " ɛn", "ɔn ", "nya", "i n", "ɔma", "e m", "adw", " yɛ", "umi", "die", "mi ", "ɛ ɛ", "o k", " ab", "ɛm ", "a s", " ma", "nam", " ɔm", " ɛs", "yin", " at", " bɔ", "o d", "ina", "pɛ ", "sɛm", "ua ", "n s", "bɔ ", "adi", "ya ", "e h", "aso", "mar", "ani", "kuo", "rɛ ", "fa ", "a k", "ɔde", "a h", "ba ", "n b", "re ", "uma", "wum", "om ", "ɔ h", "m n", "yi ", "u a", " sa", "se ", "dwu", "ɔ b", " nt", "m a", "erɛ", " kɔ", "a y", "orɔ", " nk", " bɛ", " ɔd", "ten", "rɔ ", "hyɛ", "saa", "ka ", "ɛ b", "e b", "i s", "ade", "am ", "nka", "kor", "i ɛ", "ene", "ena", " ns", "ban", "ɛns", " ku", "ɛsɛ", "ane", "nsɛ", "fof", "ɛɛ ", " fi", "gye", "ɔtu", " di", "ano", "i k", "o m", " ɔt", " ko", "yɛɛ", "bir", " ak", "im ", "kye", " pɛ", "a d", "yie", "ko ", "nti", "i b", "ete", "ofo", "amm", "ye ", "ri ", "foɔ", "kɔ ", "bom", "abo", "ɔ s", "ɔne", " ɛb", "soɔ", "for", "isɛ", "m k", "asa", "nod", "ɛ m", "fir", "ti ", " da", "e y", "sua", " be", "nii", "seɛ", "wa ", "ber", " aw", "dwe", "n f", " fo", "o ɛ", "i h", "u b", "ɔ m", " mf", "hɔ ", "kab", "wɛ ", "to ", "rib", "hwɛ", "ibi", " dw", "dis", "nso", "ans", "tir", "u ɛ", " ti", " hɔ", "sa ", "e o", " tu", "odi", "ɛ y", "ia ", "ofa", " ɔn", "o w", "ɛbɛ", "aba", " ka", "ii ", "wen", "ɛsi", "m m", "sia", "ada", "yer", "ian", "da ", "set", " gy", "dua", "i d", "som", "mfa", "ɔ w", " af", "i y", "any", "ora", "rim", "wɔd", "dwa", "nsi"}, Sna: []string{"wa ", "a k", "ana", "ro ", "na ", " ku", " mu", "nhu", "dze", "hu ", "a m", " zv", "mun", "oku", "chi", "a n", "aka", "dzi", "ka ", "zer", "ero", " ch", "che", "se ", "unh", "odz", "rwa", "ra ", "kod", "zvi", " ne", " pa", "kan", " we", " dz", " no", "ika", "va ", "iri", " an", "kut", "nyi", "o y", "yik", "van", "nek", "ese", "eko", "zva", "idz", "e a", " ka", "ane", "ano", "ngu", "eku", "cha", "ung", " yo", "ri ", "ake", "ke ", "ach", "udz", "iro", "a z", "u w", " va", "ira", "wes", "ang", "ech", "nge", "i p", "eng", "yok", "nok", "edz", "o i", "irw", "ani", "ino", "uva", "ich", "nga", "ti ", "zir", "anh", "rir", "ko ", "dza", "o n", "wan", "wo ", "tan", "sun", "ipi", "dzw", "eny", "asi", "hen", "zve", "kur", "vak", "a p", "sha", "unu", "zwa", "ita", "kwa", "e k", "rud", "nun", "uru", "guk", "a c", "a d", " ya", "a y", "bat", "pas", "ezv", "ta ", "e n", "uti", " kw", "o k", "o c", "o m", "ara", " ma", "si ", "ga ", "uko", "ata", "ose", "ema", "dzo", "uch", "hip", "kuv", "no ", "rus", "hec", "omu", "i z", "wak", "o r", "kus", "kwe", "ere", "re ", " rw", " po", "o a", "mwe", "yak", "mo ", "usu", "isi", "za ", "sa ", "e z", "uta", "gar", " in", "hin", "nem", "pac", "kuc", "we ", "ete", " ye", "twa", "pos", "o d", "a i", "hur", "get", "ari", "ong", "pan", "erw", "uka", "rwo", "vo ", " ak", "tem", "zo ", "emu", "emo", "oru", " ha", "uit", "wen", "uye", "kui", " uy", "vin", "hak", "kub", "i m", "a a", "kud", " se", " ko", "yo ", "and", "da ", "nor", "sin", "uba", "a s", "a u", " ic", "zvo", "mut", "mat", "nez", "e m", "a w", "adz", "ura", "eva", "ava", "pi ", "a r", "era", "ute", "oko", "vis", " iy", "ha ", "u a", "han", "cho", "aru", "asa", "fan", "aan", "pir", "ina", "guv", "ush", "ton", " hu", "uny", "enz", "ran", "yor", "ted", "ait", "hek", " ny", "uri", "hok", "nen", "osh", " ac", "ngi", "muk", "ngo", "o z", "azv", "kun", "nid", "uma", "i h", "vem", "a h", "mir", "usa", "o p", "i n", "a v", "i k", "amb", "zan", "nza", "kuz", "zi ", "kak", "ing", "u v", "ngw", "mum", "mba", "nir", "sar", "ewo", "e p", "uwa", "vic", "i i", "gwa", "aga", "ama", "go ", "yew", "pam"}, Afr: []string{"ie ", "die", "en ", " di", " en", "an ", "ing", "ng ", "van", " va", "te ", "e v", "reg", " re", "n d", " ge", "ens", "et ", "e r", "e e", " te", " be", "le ", "ver", "een", " in", "ke ", " ve", " he", "eg ", "het", "lke", "lik", "n h", "de ", "nie", "aan", "t d", "id ", "men", " vr", "nde", "eid", "e o", " aa", "in ", "of ", "der", "hei", "om ", "g v", " op", " ni", "e b", " el", "al ", "and", "elk", "er ", " me", "ord", "e w", "g t", " to", " of", "ers", " we", " sa", " vo", "ot ", "erk", "n v", "vry", "ge ", "kee", "asi", "tot", " wa", "sie", "ere", " om", "aar", "sal", "dig", "wor", "egt", "gte", "rdi", "rd ", "at ", "nd ", "e s", "ede", "ige", " de", " ’n", "n a", "eni", " wo", "e g", " on", "n s", "’n ", "e t", "erd", "ns ", "oor", "bes", "ond", "se ", "ska", "aak", "nig", "lle", "yhe", "ryh", "is ", "eli", "esk", "ien", "sta", "vol", "ele", "e m", " vi", "ik ", "r d", "vir", "edi", "kap", "g e", "ir ", "es ", "sy ", "ang", "din", " st", "ewe", "gem", "gel", "g o", " is", "el ", "e i", "op ", "ker", "ak ", "uit", "ike", "nse", "hie", "ur ", "eur", " al", "e a", "nas", "e n", "nge", "ier", "n o", "wer", "e d", "ap ", " hu", "ale", "rin", " hi", "eme", "deu", "min", "wat", "n e", "s o", " as", " so", "as ", "e h", "del", "d v", "ter", "ten", "gin", "end", "kin", "it ", " da", " sy", "per", "re ", "n w", "ges", "wet", "ger", "e k", "oed", "s v", "nte", "s e", "ona", "nal", "waa", "d t", "ees", "soo", " ma", "d s", "ies", "tel", "ema", "d e", "red", "ite", " na", "ske", "ely", "lyk", "ren", "nsk", "d o", "oon", "t e", "eke", "esi", "ese", "eri", "hul", " gr", "ig ", "sio", "man", "rde", "ion", "n b", "n g", "voo", "hed", "ind", "tee", " pe", "rso", "t v", "s d", "all", "n t", "rse", "n i", "eem", "d w", "ort", "ndi", "daa", "maa", "t g", "erm", "ont", "ent", "ans", "ame", "yke", "ari", "n m", "lan", "voe", "n ’", "nli", "rkl", "r m", "sia", "ods", "ard", "iem", "g s", "wee", "r e", "l g", "taa", "sek", "bar", "gti", "n n", "lin", "sen", "t o", "t a", "raa", "ene", "opv", "pvo", "ete", " ty", "arb", " sl", "igh", "dee", "g a", "str", "nsl", "sel", "ern", "ste"}, Fin: []string{"en ", "ise", "ja ", "ist", " ja", "on ", "ta ", "sta", "an ", "n j", "ais", "sen", "n o", "keu", "ike", "oik", "lis", " va", "ell", "lla", "n t", "uks", " on", "ksi", " oi", "n k", " ka", "aan", "een", "la ", "lli", "kai", "a j", " ta", "sa ", "in ", "mis", " jo", "a o", "ään", "än ", "sel", "n s", "kse", "a t", "a k", "tai", "us ", "tta", "ans", "ssa", "kun", "den", "tä ", "eus", "nen", "kan", "nsa", "apa", "all", "est", " se", "eis", "ill", "ien", "see", "taa", " yh", "jok", "n y", "vap", "a v", "ttä", "oka", "n v", "ai ", "itt", "aa ", "aik", "ett", "tuk", "ti ", "ust", " ku", "isi", "stä", "ses", " tä", " tu", "lai", "n p", "sti", "ast", "n e", "n m", "tää", "sia", "unn", "ä j", "ude", "ä o", "ste", "si ", "tei", "ine", "per", "a s", "ia ", "kä ", "äne", " mi", "maa", " pe", "a p", "ess", "a m", "ain", "ämä", "tam", "yht", " ju", "jul", "yks", "hän", "ä t", " hä", "utt", "ide", "et ", "llä", "val", "sek", "stu", "n a", "lä ", "ami", "hmi", " ke", "ikk", "lle", "iin", "sä ", "euk", "täm", "ihm", "tee", " ih", "lta", "pau", " sa", "isk", "mää", "ois", "un ", "tav", "ten", "dis", "hte", "n h", "iss", "ssä", "a h", "ava", " ma", "a y", " ei", " te", " si", " ol", "ekä", "sty", "alt", "toi", "att", "oll", "tet", " jä", " ra", "vat", " mu", "iel", " to", "mai", "sal", "isu", "a a", "kki", "at ", "suu", "n l", "väl", "ää ", "uli", "tun", "tie", "eru", " yk", "etu", "vaa", "rus", "muk", " he", "ei ", "a e", "kie", "sku", "eid", "iit", " su", "nna", "sil", "oma", "min", " yl", "lin", "aut", "uut", "sko", " ko", "tti", "le ", "sie", "kaa", "a r", " ri", "sii", "nno", "eli", "tur", "saa", "aat", "lei", "oli", "na ", " la", "oon", "urv", "lma", "rva", "ite", "mie", "vas", "ä m", " ed", "tus", "iaa", "itä", "ä v", "uol", "yle", " al", "lit", "suo", "ama", "joi", "unt", "ute", "i o", "tyk", "n r", "ali", "lii", "nee", "paa", "avi", "omi", "oit", "jen", "kää", "voi", "yhd", "ä k", " ki", "eet", "eks", " sy", "ity", "ilö", "ilm", "oim", "ole", "sit", "ita", "uom", "vai", "usk", "ala", "hen", "ope", " pu", "auk", "pet", "oja", "i s", "rii", "uud", "hdi", "äli", "va ", " om"}, Run: []string{"ra ", "we ", "wa ", " mu", "e a", "se ", " n ", "a k", "ira", "ntu", "tu ", " ku", " um", "ko ", "a i", "mu ", "iri", "mun", "hir", "ye ", "unt", "ing", "ash", "ere", "shi", "a n", "umu", "zwa", " bi", "gu ", "ege", "a a", "za ", "teg", "ama", "e k", "go ", "uba", "aba", "ngo", "ora", "o a", "ish", " ba", " ar", "ung", "a m", " we", "e n", "na ", "sho", "ese", "nga", " ab", "e m", "mwe", "ugu", " kw", "ndi", " gu", "ate", "kwi", "wes", "riz", "ger", "u w", " at", "di ", "gih", "iza", "n u", "ngi", "ban", "yo ", "ka ", "e b", "a b", " am", " ca", "ara", "e i", "obo", "hob", "ri ", "u b", "can", "nke", "ro ", "bor", " in", "bah", "ahi", "ezw", "a u", "gir", "ke ", "igi", "iki", "iwe", "rez", "ihu", "hug", "aku", "ari", "ang", "a g", "ank", "ose", "u n", "o n", "rwa", "kan", " ak", "nta", "and", "ngu", " vy", "aka", "n i", "ran", " nt", " ub", "kun", "ata", "i n", "kur", "ana", "e u", " ko", "gin", "nye", "re ", " ka", "any", "ta ", "uko", "amw", "iye", " zi", "ga ", "ite", " ib", "aha", " ng", "era", "o b", "ako", "o i", " bu", "o k", "o u", "o z", " ig", "o m", "ho ", "mak", "sha", " as", " iv", "ivy", "n a", "i b", "izw", "o y", " uk", "ubu", "aga", "ba ", "kir", "vyi", "aho", " is", "nya", "gan", "uri", " it", " im", "u m", "kub", "rik", "hin", "guk", "ene", "bat", "nge", "jwe", "imi", " y ", "vyo", "imw", "ani", "kug", "u a", "ina", "gek", "ham", "i i", "e c", "ze ", "ush", "e y", "uru", "bur", "amb", "ibi", "agi", "uza", "zi ", "eye", "u g", "gus", "i a", " nk", "no ", "abi", "ha ", "rah", "ber", "eme", "ras", "ura", "kiz", "ne ", "tun", "ron", " zu", "ma ", "gen", "wo ", "zub", "w i", "kor", "zin", "wub", "ind", " gi", "y i", "ugi", "je ", "iro", "mbe", " mw", "bak", " ma", "ryo", "eka", "mat", " ic", "onk", "a z", " bo", "ika", "eko", "ihe", "ukw", "wir", "bwa", " ry", " ha", "bwo", " ag", "umw", "yiw", "tse", " ya", "he ", "eng", " ki", "nka", "bir", "ant", "aro", "gis", "ury", "twa", " yo", "bik", "rek", "ni ", " ah", " bw", "uro", "mw ", "tan", "i y", "nde", "ejw", " no", "zam", "puz", "ku ", "y a", "a c", "bih", "ya ", "mur", "utu", "eny", "uki", "bos"}, Tuk: []string{"lar", " we", "we ", " bi", "yň ", "ary", "ada", "da ", " he", " ha", "an ", "yny", "kla", "dam", "de ", " ad", "yna", "er ", "na ", " ýa", "ir ", "dyr", "iň ", "bir", "r b", "ydy", "ler", "ara", "am ", "yr ", "ini", "lan", "r a", "kly", "lyd", " öz", "mag", "nyň", "öz ", "her", "gyn", "aga", "en ", "ryn", "akl", "ala", "dan", "hak", "eri", "ne ", "uku", "ar ", "r h", "ga ", "ny ", "huk", " de", "ili", "ygy", "li ", "kuk", "a h", "nda", "asy", "len", " ed", "bil", "atl", "ine", "edi", "niň", "lyg", " hu", " ga", "e h", "nde", "dil", "ryň", "aza", "zat", "a g", "‐da", "a‐d", "eti", "ukl", " gö", "ly ", " bo", "tly", "gin", " az", "lma", "ama", "hem", "dir", "ykl", "‐de", "e d", "ile", "ýan", "a d", "ýet", "ýa‐", "ynd", "lyk", "aýy", "e a", "ünd", "ge ", " go", "egi", "ilm", "sy ", "ni ", "etm", "em‐", "lme", "m‐d", "aly", "any", " be", "tle", "syn", "rin", "y b", "let", "mak", "a w", "a ý", "den", "äge", "ra ", " äh", "mäg", " du", "n e", "bol", "meg", "ele", "ň h", " et", "igi", "ň w", "im ", "iýa", " ýe", " di", "r e", "ek ", " ba", "ak ", "esi", "ril", "a b", "in ", "p b", "deň", "etl", "agy", " bu", " je", "bu ", "e ö", "y d", " hi", "mez", " es", "ard", " sa", "ähl", "e b", "yly", " ka", "esa", "mek", " gu", "n a", "e t", "lik", " do", "e g", "sas", "ill", "nma", "ň a", "ram", "ola", "hal", "y w", "ýar", " ar", "anm", "mel", "iri", "siý", "ndi", "ede", "gal", "end", "mil", "rla", "göz", " ma", "n b", "e ý", "öňü", "ňün", "n h", " tu", "hiç", "yýe", " ge", "my ", "iç ", " öň", "n ý", "tla", "ň ý", "lin", "rda", "al ", "lig", "gar", " mi", "i g", "dal", "rle", "mal", "kan", "gat", "tme", "sin", "and", "ň g", "gor", " ta", "öwl", "ýle", "y g", "e w", "ora", "tiň", "ekl", " yn", "alk", "döw", " dö", "ere", "m h", " me", "dur", " er", "asi", "tut", "at ", "çin", "irl", "umy", "eli", "erk", "nme", "wle", "gur", "a ö", "aýa", " çä", "nun", " ki", "ras", "aml", "up ", "ýaş", "tyn", " aý", "ry ", "ň d", "baş", "ip ", "gi ", "z h", "kin", "z ö", "n w", "ter", "inm", "eýl", "i ý", "kim", "nam", "eň ", "beý", "dol", " se", " te", "r d", "utu", "gyý", "ez ", "umu", "mum"}, Dan: []string{"er ", "og ", " og", "der", " de", "for", "en ", "et ", "til", " fo", " ti", "ing", "de ", "nde", "ret", " re", "hed", "il ", "lig", " ha", "lle", "den", " en", "ed ", "ver", "els", "und", "ar ", " fr", " me", "se ", "lse", "and", "har", "gen", "ede", "ge ", "ell", "ng ", "at ", " af", "nne", "le ", "nge", "e f", "ghe", "e o", "igh", "es ", "af ", "enn", " at", "ler", " i ", "ske", "hve", "e e", "r h", "ne ", "enh", "t t", "ige", "esk", " el", " be", "ig ", "tig", "fri", "or ", "ska", "nin", "e s", "ion", " er", "nhv", "re ", "men", "r o", "e a", " st", "ati", " sk", " in", "l a", "tio", " på", "ett", "ens", "al ", "tti", "med", "r f", "om ", "end", "r e", "del", "g f", "ke ", " so", "på ", "eli", "g o", " an", "r r", "ns ", " al", "nat", "han", " ve", "r s", "r a", " un", " he", "t f", "lin", " si", "r d", "ter", "ere", "nes", "det", "e r", " ud", "ale", "sam", "ihe", "lan", "tte", "rin", "rih", "ent", "ndl", "e m", "isk", "erk", "ans", "t s", "kal", " na", "som", "hol", "lde", "ind", "e n", "ren", "n s", "ner", "kel", "old", "dig", "te ", "ors", "e i", " hv", "sni", "sky", "ene", "vær", " li", " sa", "s f", "d d", "ers", "ste", "nte", "mme", "ove", "e h", "nal", "ona", "ger", " gr", "age", "g a", "vil", "all", "e d", "fre", "tel", "s o", "g h", "t o", "t d", "r i", "e t", " om", "arb", "d e", "ern", "r u", " væ", "d o", "res", "g t", "klæ", "øre", "n f", " vi", " må", "ven", "sk ", " la", "gte", "kab", "str", "n m", "rel", "e b", "run", "rbe", "bej", "t i", "ejd", "kke", "t e", "g d", "rkl", "ilk", "gru", "ved", "bes", " da", "nd ", " fu", "lær", "æri", "rdi", "ærd", "ld ", "t m", "dli", "fun", "sig", " mo", "sta", "nst", "rt ", "od ", " ar", " op", "vis", "igt", "ære", "tet", "t a", "emm", "g e", "mod", "rho", "ie ", "g u", "ker", "rem", " no", "n h", " fa", "rsk", "orm", "e u", "s s", "em ", "d h", " ge", "ets", "e g", "g s", "per", " et", "lem", " tr", "i s", "da ", "dre", "n a", "des", "dt ", "kyt", "rde", "ytt", "eri", "hen", "erv", "l e", "rvi", "ffe", "off", "isn", "r t", " of", "ken", "l h", "rke", "g i", "tal", "må ", "r k", "lke", "gt ", "t v", "t b"}, Nob: []string{"er ", " og", "og ", "en ", " de", "for", "til", "ing", "ett", " ti", "et ", " ha", " fo", " re", "ret", "il ", "het", "lle", "ver", "tt ", "ar ", "nne", " en", "om ", "ell", "ng ", "har", " me", "enn", "ter", "de ", "lig", " fr", " so", "r h", "ler", "av ", "le ", "den", "and", " i ", " er", "som", " å ", "hve", "or ", "t t", "ne ", " el", "els", "re ", " av", "se ", "esk", "enh", "nge", "ska", "nde", "e o", "ete", "gen", "ke ", "lse", "ghe", "ten", "men", " st", "r s", "fri", "igh", "ig ", " be", "e e", "nhv", "r r", "tte", "ske", "te ", " på", " ut", " sk", "al ", " in", "sjo", "på ", "der", "e s", "ner", "rin", "jon", "t o", "unn", "e f", "han", "asj", "tig", "ed ", "es ", "g f", "sam", "ent", "tti", "ene", "nes", "med", "ge ", " al", "r o", "ens", "r e", "eli", "isk", "lin", " ve", "nin", "g o", " sa", " an", "t f", "itt", "lik", "end", "kal", "r f", "t s", "rih", "ihe", "nas", "nte", "e r", "ns ", " si", "lan", "g s", "mme", "ige", "l å", "erk", "dig", " gr", "n s", "ren", "r a", "all", " na", "kte", "erd", "ere", "e m", "und", "r u", "res", "tel", "ste", "gru", "inn", "lær", "ers", " un", "det", "t e", "arb", "ale", "del", "ekt", "ven", "t i", "g e", "bei", "eid", "e a", "n m", "e d", " ar", "rbe", "e g", " bl", "ans", "klæ", " li", " he", "g t", "æri", "sky", "run", "rkl", " la", "sta", "sni", "kke", "m e", "rt ", "mot", " mo", "e n", "tat", "at ", "e h", "e b", "ove", "e t", "jen", "t d", "str", " må", "r m", "n e", "ors", "rel", "ker", " et", "n a", "bes", "one", " vi", "nn ", "g r", "e i", "kap", "sk ", "ot ", "ndi", "nnl", "i s", " da", "s o", " no", "id ", "ger", "g h", "vis", "n o", "bar", "s f", "ndl", "t m", "g a", "opp", "t a", "dis", "nal", "r d", "per", "dre", "ona", "ære", "rdi", "da ", "ute", "nse", "bli", "ore", "tet", "rit", " op", "kra", "eri", "hol", "old", " kr", "ytt", "kyt", "ffe", "emm", "g d", "l f", " om", "isn", " gj", "å d", "ser", "r b", " di", " fa", "n t", "r k", "lt ", "set", " sl", "dom", "rvi", "me ", "l e", "gre", "å s", "må ", " tr", "nd ", "m s", "g i", "ikk", "n h", " at", "tes", "vil", "dli", "g b", "d d", " hv", "rav"}, Nno: []string{" og", "og ", " de", " ha", "er ", "en ", "ar ", "til", " ti", "lle", "ett", "il ", "ret", "om ", "et ", " re", "le ", "har", "enn", " me", " al", "all", " fr", "ne ", "tt ", "re ", " å ", " i ", "nne", "and", "ing", "ska", " sk", "men", " fo", "det", "den", "ver", "for", "ell", "t t", "dom", " so", "de ", "e s", " ve", " ei", "ere", " på", "al ", "an ", "e o", "e h", "fri", "sam", " sa", "l å", "på ", "leg", " el", "ler", "som", "ein", "ei ", "nde", "av ", " st", "dei", "or ", "ten", "esk", "kal", "gje", "n s", "tte", "je ", "ske", "rid", "r r", "i s", "te ", "nes", " gj", "eg ", "ido", "med", "e f", "r s", "st ", "ke ", "jon", " in", "r f", "sjo", "asj", "nas", "ter", "unn", "ed ", "kje", "han", "ona", " er", "t o", "t e", "g f", "ski", "e m", "ast", "ane", "e t", " av", " gr", "lan", "ste", "tan", "å f", " na", "der", " sl", "t s", "seg", "n o", "r k", "nga", "ge ", " an", "g o", "at ", "na ", "ern", "nte", "ng ", " ut", "lik", "e a", "bei", "gru", "e i", "arb", "kil", "g s", "lag", "eid", "r a", "e d", "g d", " si", " få", "ame", "a s", "e r", "rbe", "jen", "n m", "r d", "n e", "nn ", "e n", "erd", " tr", " må", " bl", " mo", "ren", "run", "nin", "bli", "kra", " kr", " at", "ege", "n i", "me ", "nsk", "ins", "år ", "frå", "in ", "lov", "v p", "end", "mot", "ale", "e v", "å a", "få ", "rav", "int", "nal", " ar", "sta", "e k", "t f", "ome", " la", "ot ", "t a", "sla", " ik", "nle", "itt", " li", " kv", "id ", "kkj", "ikk", " lo", "nad", "å v", "tta", " fa", " se", "gen", "ld ", "å s", "kan", "g t", " ka", "r l", "god", "n a", "lin", "jel", "ild", "dig", "ha ", "l d", "kap", "ve ", "ndr", "g i", "g a", "inn", "var", "rna", "r m", "r g", "a o", "dre", "d a", "n t", "ag ", "kår", "mål", "ig ", "va ", "i d", "t m", "e e", "n d", "tyr", " om", "g e", "eve", "då ", "e u", " då", "und", " no", "ir ", "gar", "g g", "l h", "se ", "ga ", "d d", "l f", "ker", "r o", "å d", "eld", "ige", "t d", "t i", "t h", "oko", "nnl", "rel", "nok", "rt ", "lt ", "åse", "jer", "ta ", "ik ", "ial", "eig", "r p", "i e", "olk", "bar", "osi", "kte", "sos", "lir", "opp", " un", "ad ", " be"}, Lit: []string{"as ", "ir ", " ir", "eis", "tei", " te", "s t", "os ", "uri", "ti ", "us ", "is ", "iek", " pa", "ai ", " vi", "vie", "tur", " ki", "ri ", "žmo", " tu", " žm", "ien", "ės ", "ių ", "ali", "ais", "mog", "vis", " ka", "lai", " la", "ini", "i t", "s i", "s ž", "sę ", " į ", "isę", "ena", " ne", " pr", " bū", " jo", "pri", "kie", " ta", "kvi", "nas", " su", "ekv", "mas", "gus", "būt", "tin", "isv", "s s", "ogu", "isi", "mą ", "mo ", "ant", " ar", "s k", "ama", "kai", "ūti", "s a", "s v", "aci", " ti", "s n", " sa", "s p", "oki", "cij", "inė", "ar ", "val", "ms ", "tai", "jo ", "i b", " na", "gal", "sav", "kur", "aus", "men", "rin", " ap", "imą", "ma ", "sta", "ę į", "ina", "i p", "imo", "nim", "i k", " nu", "ima", "oti", "mis", " ku", "jos", "lyg", "dar", "išk", "je ", " at", "tas", "kad", "r t", "tų ", "ad ", "tik", "i i", "nės", "arb", "i v", "ijo", "eik", "aut", "s b", " įs", " re", "iam", "sin", "suo", " be", "isu", " va", "li ", "sty", "asi", "tie", "ara", "lin", "isė", "i s", "ą i", "jų ", " ly", " ga", "vo ", "si ", "r p", "tuo", "aik", "rie", " mo", "din", "pas", "mok", "ip ", "i n", "rei", "ybė", "mos", "aip", "r l", "ntu", "įst", "į t", "gyv", " iš", "nti", "tyb", "ų i", "pag", "kia", "kit", "es ", "uot", " sk", "jim", "tis", " or", "aud", "yve", "ven", "mų ", "als", "ų t", "nac", "avo", "dam", "ą k", "i a", "s j", "oje", "agr", "kla", "gau", "neg", "nių", "o k", "ega", "iki", "aug", "ek ", "tat", "ieš", "tar", "ia ", " ši", "ios", "ška", "sva", " to", "tau", "int", "sau", "uti", " as", "io ", "oga", "san", "mon", "omi", "kin", "ito", "s g", "ome", "r j", " ve", "aty", "kim", "nt ", "iai", "lst", " da", "ją ", "min", "r k", "o t", "nuo", "tu ", "ver", "kal", "am ", "usi", "o n", "o a", "ymo", "tym", "vę ", "ati", " ji", "o p", "tim", "ų n", "paž", "ter", "s š", " vy", "alt", "ksl", "ing", "ų s", "oma", "šal", "ran", "e t", " ni", " ša", "ava", "avi", "nie", "uom", "irt", "elg", "jam", "ipa", "kių", "tok", "eka", "tos", "oja", "kio", "eny", "nam", "s d", "ndi", "amo", "yti", "gri", "svę", " gy", "lie", "ėmi", "ats", "ygi", "soc", "sie", "oci", "pat", "cia"}, Slv: []string{" pr", "in ", " in", "rav", "pra", "do ", "anj", "ti ", "avi", "je ", "nje", "no ", "vic", " do", "ih ", " po", "li ", "o d", " za", " vs", "ost", "a p", "ega", "o i", "ne ", " dr", " na", " v ", "ga ", " sv", "ja ", "van", "svo", "ako", "pri", "co ", "ico", "i s", "e s", "o p", " ka", "ali", "stv", "sti", "vsa", " ne", " im", "sak", "ima", "jo ", "dru", "nos", "kdo", "i d", "akd", "i p", "nja", "o s", "nih", " al", "o v", "ma ", "i i", " de", "e n", "pre", "vo ", "i v", "ni ", "red", "obo", "vob", "avn", "neg", " bi", "ova", " iz", "ove", "iti", "lov", "ki ", "jan", "a v", "na ", " so", "em ", " nj", "a i", "se ", " te", "tva", "oli", "bod", "ruž", "e i", " ra", " sk", "ati", "e p", "aro", "i k", " ob", "a d", " čl", "eva", "rža", "drž", " sp", "ko ", "i n", " se", " ki", "ena", "sto", "e v", "žen", "nak", "kak", "i z", "var", "ter", "žav", " mo", "di ", "gov", "imi", "va ", "kol", "n s", " z ", "mi ", "ovo", "rod", "voj", " en", "nar", "ve ", " je", "pos", "a s", "ego", "vlj", "jeg", " st", "h p", "er ", "kat", "člo", "ate", "a z", "enj", "n p", "del", "i o", "lja", "pol", "čin", "a n", "ed ", "sme", "jen", "eni", " ta", "odn", " ve", " ni", "e b", "en ", " me", "jem", "kon", "nan", "elj", "sam", "da ", "lje", "zak", "ovi", "šči", "raz", "ans", "ju ", "bit", "ic ", " sm", "ji ", "nsk", "v s", " s ", "n v", "tvo", "ene", "a k", "me ", "vat", "ora", "krš", "nim", "sta", "živ", "ebn", "ev ", "ri ", "eko", "o k", "n n", "so ", "za ", "ičn", "ski", "e d", " va", "o z", "aci", "cij", "eja", "elo", "dej", "si ", "nju", "vol", "kih", "i m", "nst", "kup", "kov", "uži", "la ", "mor", "vih", " da", "h i", "lju", "otr", "med", "o a", "sku", "rug", "odo", "ijo", "dst", "spo", "tak", "zna", "edn", "vne", "ara", "ršn", "itv", "odi", "u s", "čen", "boš", "nik", "avl", "akr", "e o", "vek", "dno", "oln", "o o", "ošč", "e m", "ta ", "vič", "bi ", "pno", "čno", "mel", "eme", "olj", "ode", "rst", "rem", "ov ", "ars", " bo", "n d", "ere", "dov", "ajo", "kla", "ice", "vez", "vni", " ko", "ose", "tev", "bno", "užb", "ava", "ver", "e z", "ljn", "mu ", "a b", "vi ", "dol", "ker", "r s"}, Epo: []string{"aj ", " la", "la ", "kaj", " ka", "oj ", " de", "on ", "de ", "raj", " ra", "iu ", "ajt", "as ", "o k", " ĉi", "e l", "j k", " li", " pr", "eco", "aŭ ", "ĉiu", "jn ", "ia ", "jto", "est", " es", " al", "an ", " ki", "pro", "io ", " ko", "en ", "n k", "kon", " ti", "co ", "j p", "o d", " po", "ibe", " aŭ", "ro ", "tas", "lib", "ber", "aci", "toj", " en", "a p", " ne", "cio", "ere", "ta ", " in", "to ", "do ", "o e", "j l", "n a", "j d", " se", "a k", "j r", "ala", "j e", "taj", " re", "rec", "iuj", "kiu", " pe", "o a", "ita", "ajn", "ado", "n d", "sta", "nac", "a a", "nta", "lia", "ekt", "eni", "iaj", "ter", "uj ", "per", "ton", "int", " si", "cia", " ha", "stu", "a l", "je ", " je", "al ", "o ĉ", "n p", "jta", "tu ", " ri", "vas", "sen", "hav", "hom", " di", " ho", "nte", "a e", "ali", "ent", " so", "nec", "tra", "a s", "ava", "por", "a r", " na", "igi", "tiu", "sia", "o p", "n l", "ega", "or ", " aj", "soc", "j ĉ", "s l", "oci", "no ", " pl", "j n", "kto", "evi", "s r", "j s", "ojn", "laj", "u a", "re ", " eg", "j a", "gal", "ers", "ke ", "pre", "igo", "er ", "lan", "n j", "pri", " ku", "era", "ian", "rim", " fa", "e s", " ju", "e a", "ika", "ata", "ntr", "el ", "is ", "u h", "li ", "ioj", "don", "ont", "tat", "ons", " el", " su", "go ", "un ", " ke", "ebl", "bla", "n s", "oma", "ĉi ", "raŭ", "kla", "u r", "ne ", "ili", "iĝo", "o t", "s e", "tek", "men", "nen", "j i", "nda", "con", "a d", "ena", "cev", "moj", "ice", "ric", "ple", "son", "art", "a h", "o r", "res", " un", "u s", "coj", "e p", "ĝi ", "for", "ato", "ren", "ara", "ame", "tan", " pu", "ote", "rot", " ma", "vi ", "j f", "len", "dis", "ive", "ant", "n r", " vi", "ami", "iĝi", "sti", "ĝo ", "r l", "n ĉ", "u l", " ag", "erv", "u e", "unu", "gno", " ce", " me", "niu", "iel", "duk", "ern", " ŝt", "laŭ", "o n", "lab", "olo", "abo", "tio", "bor", "ŝta", "imi", " ed", "lo ", "kun", "edu", "kom", "dev", "enc", "ndo", "lig", "e e", "a f", "tig", "i e", " kr", " pa", "na ", "n i", "kad", "and", "e d", "mal", "ono", "dek", "pol", "oro", "eri", "edo", "e k", "rso", "ti ", "rac", "ion", "loj", "j h", "pli", "j m"}, Lav: []string{"as ", "ība", " un", "un ", "tie", "ies", "bas", "ai ", " ti", "esī", "sīb", "ien", " vi", "bu ", "vie", "ir ", " ir", "ību", "iem", " va", " pa", "em ", " ne", "s u", "am ", "m i", "šan", "u u", "r t", "pie", " ci", " sa", "ās ", " uz", "vai", " ka", " pi", "brī", " iz", "rīv", " br", "uz ", "cij", "dzī", "ena", " ar", "ar ", "isk", "s p", "es ", " at", "āci", " ap", "ot ", "nam", "viņ", "inā", "ikv", "kvi", " no", "s v", " ie", "vis", " ik", "i i", "pār", "u a", "ju ", "nu ", " pr", "edr", "vīb", "īvī", "iju", "drī", "u p", "dar", " st", "lvē", "cil", "ilv", "s t", " la", "iņa", "ana", "s i", "n i", "īdz", "s s", "kā ", "tīb", "i a", "ija", "bai", "ībā", "ied", "s n", "arb", "val", "līd", "s b", "aiz", "tu ", "iec", "cie", "ām ", "gu ", "vēk", "īgu", "īgi", "ka ", "jas", "umu", "mu ", "t p", " jā", "u v", "zīb", "ska", "lst", "als", "kum", "gi ", "s l", " tā", "jot", "stā", "st ", "n v", "vēr", "a p", "arī", "aut", "n p", "ama", "kas", "u k", " da", " ta", "nīg", "izs", "ojo", "anu", "ņa ", "u n", "sta", "s a", "ba ", " ai", " so", "s d", "a u", "ā a", "stī", "cīb", "m u", "i u", "son", "not", "mat", "sav", "iev", "ā v", "jum", " kā", "u t", "ned", "ajā", "s k", "u i", "i v", "līt", "ēro", " pe", " dz", "i n", "per", "u d", "īks", "kat", "nāt", "līb", "nāc", "rdz", "nīb", "pil", "rīk", "kst", "a s", "cit", "pam", " pā", "ekl", "tau", "u s", "bie", "jā ", " re", "i p", "kur", "a a", "t v", " li", "evi", "tis", "evē", "bā ", "ma ", "rīb", "a v", "os ", "ras", "abi", "nev", "iku", "skā", " ve", "lik", " lī", "nas", "t k", "ant", "uma", "roš", "kād", "zsa", "sar", "ciā", "mie", "ais", "eci", "oci", "oša", " je", "jeb", "būt", "atr", "n b", "ieš", "rso", "ers", "soc", "enā", "a t", "t s", "īša", " be", "bez", "āda", "ebk", " ku", "glī", "isp", "tot", "spā", "roj", "lie", "pre", "ret", "aul", "na ", "tra", "iet", "du ", "zgl", "āt ", "ard", "kt ", "ier", "izg", "ikt", "paš", "iāl", "nod", "ts ", "eja", "ā u", "sab", "eno", "ēt ", "ta ", "tik", "tīt", "ecī", " de", "īga", "tar", "arp", "r j", "īst", "tās", "ja ", "enī", "atv", "vu ", "ārē", "rēj", "rie", "oši", "dro"}, Est: []string{"sel", "ja ", " ja", "le ", "se ", "ust", "ste", "use", "ise", "õig", "mis", " va", "gus", "ele", "te ", "igu", "us ", "st ", "dus", " õi", " võ", " on", "on ", "e j", " in", "ini", "nim", "ma ", "el ", "a v", "iga", "ist", "ime", "al ", "või", "da ", " te", "lik", " ig", "adu", "mes", "ami", "end", "e k", "e v", "l o", " ka", "est", " ra", " se", "õi ", "iku", " ko", "vab", "aba", "tus", "ud ", "a k", "ese", " ku", "l i", "gal", "tsi", "lt ", "es ", "ema", "ida", "ks ", "a i", "n õ", "lis", "atu", "rah", "tam", "ast", "sta", "e t", "s s", " mi", "ta ", "ole", "stu", "bad", "ga ", "val", "ine", " ta", "ne ", " pe", "nda", "ell", "a t", "ali", "ava", "ada", "a p", "ik ", "kus", "e s", "ioo", "tes", "ahe", "ing", "lus", " ol", "a a", "is ", "vah", "a s", "ei ", " ei", "kon", "vas", "tud", "ahv", "t k", "as ", "a r", "s t", "e e", "i v", "eks", "oon", "t v", "oni", "kõi", "s k", "sio", "sus", "e a", "gi ", "mat", "min", " pi", "s v", "oma", "kul", "dad", " ni", "e p", " om", "igi", "tel", "a j", "e o", "ndu", "dse", "lle", "ees", "tse", "uta", "vus", "aal", "aja", "i t", "dam", "ats", "ni ", "ete", "pid", "pea", "e õ", "its", "lma", "lev", "nis", "dis", "ühi", "sli", "i s", "nen", "iel", "des", "de ", "t i", "et ", "nin", "eva", "teg", "usl", "elt", "ili", "i m", "ng ", " ee", "tem", "ses", "ilm", "sek", "ab ", " põ", "ait", " ne", "õrd", "sed", "võr", "ul ", " üh", " ki", "abi", " kõ", "ega", "rds", " vä", "ots", " et", " ri", "põh", "ed ", "töö", "si ", "ad ", "i k", " tä", "ata", " ab", " su", "eli", " sa", "s o", "s j", "sil", "nni", "ari", "asu", "nna", " al", "nud", "uma", "sik", "hvu", "onn", "eab", "emi", "rid", "ara", "set", "e m", " ke", "a e", "täi", "d k", "s p", "i e", "imi", "eis", "e r", "na ", " ül", "a ü", "koh", "a o", "aks", "s e", "e n", " so", "õik", "saa", "and", "isi", "nde", "tum", "hel", "lii", "kin", "äär", "sea", "isk", "een", "ead", "dum", " kä", "rii", "rat", "lem", "umi", "kor", "sa ", "idu", "mus", "rit", "har", " si", "vad", "ita", "ale", "kai", "teo", " mõ", "ade", "üks", "mas", "lse", "als", "iaa", "sia", "sot", "jal", "iig", "ite"}, } var cyrillicLangs = langProfileList{ Rus: []string{" пр", " и ", "рав", "ств", " на", "пра", "го ", "ени", "ове", "во ", " ка", "ани", "ть ", " в ", " по", " об", "ия ", "сво", " св", "лов", "на ", " че", "ело", "о н", " со", "ост", "чел", "ие ", "ого", "ет ", "ния", "ест", "аво", "ый ", "ажд", " им", "ние", "век", " не", "льн", "ли ", "ова", "име", "ать", "при", "т п", "и п", "каж", "или", "обо", " ра", "ых ", "жды", " до", "дый", "воб", "ек ", "бод", "ва ", "й ч", "его", "ся ", "и с", "ии ", "аци", "еет", "но ", "мее", "и и", "лен", "ой ", "тва", "ных", "то ", " ил", "к и", "енн", " бы", "ию ", " за", "ми ", "тво", "и н", "о п", "ван", "о с", "сто", "аль", " вс", "ом ", "о в", "ьно", "их ", "ног", "и в", "нов", "ако", "про", "ий ", "сти", "и о", "пол", "олж", "дол", "ое ", "бра", "я в", " ос", "ным", "жен", "раз", "ти ", "нос", "я и", " во", "тор", "все", " ег", "ей ", "тел", "не ", "и р", "ред", "ель", "тве", "оди", " ко", "общ", "о и", " де", "има", "а и", "чес", "ним", "сно", "как", " ли", "щес", "вле", "ься", "нны", "аст", "тьс", "нно", "осу", "е д", " от", "пре", "шен", "а с", "бще", "осн", "одн", "быт", "сов", "ыть", "лжн", "ран", "нию", "иче", "ак ", "ым ", "ват", "что", "сту", "чен", "е в", " ст", "рес", "оль", " ни", "ном", "род", "ля ", "нар", "вен", "ду ", "оже", "ны ", "е и", " то", "вер", "а о", "зов", "м и", "нац", "ден", "рин", "туп", "ежд", "стр", " чт", "я п", "она", "дос", "х и", "й и", "тоя", "есп", "лич", "бес", "обр", "ото", "о б", "ьны", "ь в", "нии", "е м", "ую ", " мо", "ем ", " ме", "аро", " ре", "ава", "кот", "ав ", " вы", "ам ", "жно", "ста", "ая ", "под", "и к", "ное", " к ", " та", " го", "гос", "суд", "еоб", "я н", "ен ", "и д", "мож", "еск", "ели", "авн", "ве ", "ече", "уще", "печ", "дно", "о д", "ход", "ка ", " дл", "для", "ово", "ате", "льс", "ю и", "в к", "нен", "ции", "ной", "уда", "вов", " бе", "оро", "нст", "ами", "циа", "кон", "сем", "е о", "вно", " эт", "азо", "х п", "ни ", "жде", "м п", "ког", "от ", "дст", "вны", "сть", "ые ", "о о", "пос", "сре", "тра", "ейс", "так", "и б", "дов", "му ", "я к", "нал", "дру", " др", "кой", "тер", "ь п", "арс", "изн", "соц", "еди", "олн"}, Ukr: []string{"на ", " пр", " і ", "пра", "рав", " на", "ня ", "ння", " за", "ого", " по", "ти ", "го ", "люд", " лю", "во ", " ко", " ма", "льн", "юди", "их ", "о н", " не", "аво", "анн", "дин", " св", "сво", "ожн", "кож", "енн", "пов", "жна", " до", "ати", "ина", "ає ", "а л", " бу", "аці", "не ", "ува", "обо", " ос", " як", "має", " ви", "них", "аль", "або", "є п", " та", "ні ", "ть ", "ови", "бо ", " ві", " аб", "ере", "і п", "а м", "вин", "без", "при", "іль", "ног", "о п", "ми ", "та ", "ом ", "ою ", "бод", "ста", "воб", " бе", "до ", "ва ", "ті ", " об", "о в", "ост", " в ", " що", "ий ", "ся ", "і с", " сп", "инн", "від", "ств", "и п", "ван", "нов", "нан", "кон", " у ", "ват", "она", "ії ", "но ", "дно", "ій ", "езп", "пер", " де", "ути", "ьно", "ист", "під", "сті", "бут", " мо", "и і", "ідн", "ако", "нні", "ід ", "тис", "що ", "род", "і в", "а з", "ава", " пе", "му ", "і н", "а п", "соб", "ої ", "а в", "спр", "ів ", "ний", "яко", "ду ", "вно", "і д", "ну ", "аро", "и с", " ін", "ля ", "рів", "у в", " рі", "и д", "нар", "нен", "ова", "ому", "лен", "нац", "ним", "ися", "чи ", "ав ", "і р", "ном", " ро", "нос", "ві ", "вни", "овн", " її", "ові", "мож", "віл", "у п", " пі", " су", "її ", "одн", " вс", "ово", "ють", "іст", "сть", "і з", " ст", "буд", " ра", "чен", "про", "роз", "івн", "оду", "а о", "ьни", "ни ", "о с", "сно", "зна", "рац", "им ", "о д", "ими", "я і", "ції", "х п", "дер", "чин", " со", "а с", "ерж", "и з", "и в", "е п", "ди ", "заб", "осо", "у с", "е б", "сі ", "тер", "ніх", "я н", "і б", "кла", "спі", "в і", " ні", "о з", "ржа", "сту", "їх ", "а н", "нна", "так", "я п", "зпе", " од", "абе", "для", "ту ", "і м", "печ", " дл", "же ", "ки ", "віт", "ніс", "гал", "ага", "е м", "ами", "зах", "рим", "ї о", "тан", "ког", "рес", "удь", " ре", "то ", "ков", "тор", "ара", "сві", "тва", "а б", "оже", "соц", "оці", "ціа", "осн", "роб", "дь‐", "ь‐я", "‐як", "і і", "заг", "ахи", "хис", "піл", "цій", "х в", "лив", "осв", "іал", "руч", "ь п", "інш", "в я", "ги ", "аги", " ді", "ком", "ини", "а і", "оди", "нал", "тво", "кої", "всі", "я в", "ною", "об ", "о у", "о о", "і о"}, Srp: []string{" пр", " и ", "рав", "пра", " на", "на ", " по", "ма ", " св", "да ", "има", "а п", "а и", "во ", "ко ", "ва ", "ти ", "и п", " у ", "ако", " да", "а с", "аво", "и с", "ост", " за", "о и", "сва", " им", "вак", "ава", "је ", "е с", " сл", " ко", "о н", "ња ", "но ", "не ", " не", "ом ", "ли ", " др", "или", "у с", "сло", "обо", "кој", "их ", "лоб", "бод", "им ", "а н", "ју ", " ил", "ств", " би", "сти", "а о", "при", "а у", " ра", "јед", "ог ", " је", "е п", "ње ", "ни ", "у п", "а д", "едн", "ити", "а к", "нос", "и у", "о д", "про", " су", "ање", "ова", "е и", "вањ", "и и", "циј", " ос", "се ", "дру", "ста", "ају", "ања", "и о", " об", "род", "ове", " ка", " де", "е о", "аци", "ја ", "ово", " ни", " од", "и д", " се", "ве ", "ује", "ени", "ија", "авн", "жав", " ст", "у и", "м и", "дна", "су ", "ред", "и н", "оја", "е б", "ара", "што", "нов", "ржа", "вој", "држ", "тва", "оди", "у о", "а б", "одн", "пош", "ошт", "ним", "а ј", "ка ", "ран", "у у", " ов", "аро", "е д", "сно", "ења", "у з", "раз", " из", "осн", "а з", "о п", "аве", "пре", "де ", "бит", "них", "шти", "ву ", "у д", "ду ", "ту ", " тр", "нар", " са", "гов", "за ", "без", "оји", "у н", "вно", "ичн", "еђу", "ло ", "ан ", "чно", "ји ", "нак", "ода", " ме", "вим", "то ", "сво", "ани", "нац", " ње", "ник", "њег", "тит", "ој ", "ме ", "ном", "м с", "е у", "о к", "ку ", " до", "ика", "ико", "е к", "пос", "ашт", "тре", "алн", "ног", " вр", "реб", "нст", " кр", "сту", "дно", "ем ", "вар", "е н", "рив", "туп", "жив", "те ", "чов", "ст ", "ови", "дни", "ао ", "сме", "бра", "ави", " ли", "као", "вољ", "ило", "о с", "штв", "и м", "заш", "њу ", "руг", "тав", "анс", "ено", "пор", "кри", "и б", "оду", "а р", "ла ", " чо", "а т", "руш", "ушт", " бу", "буд", "ављ", "уги", "м п", "ком", "оје", "вер", " ве", "под", "и в", "међ", "его", "вре", "акв", "еди", "тво", " см", "од ", "дел", "ена", "рад", "ба ", " мо", "ну ", "о ј", "дст", "кла", " оп", "как", "сам", "ере", "рим", "вич", "ива", "о о", " он", "вни", "тер", "збе", "х п", "ниц", "еба", "е р", "у в", "ист", "век", "рем", "сви", "бил", "ште", "езб", "јућ", "њен", "гла"}, Azj: []string{" вә", "вә ", "әр ", "лар", " һә", "ин ", "ир ", " ол", " һү", " би", "һүг", "үгу", "гуг", "на ", "ләр", "дә ", "һәр", " шә", "бир", "ан ", " тә", "лик", "р б", "мал", "лма", "асы", "ини", "р һ", "шәх", "ән ", "әхс", "ары", "гла", "дир", "а м", "али", "угу", "аг ", " ма", "ын ", "илә", "уна", "јәт", " ја", "икд", "ара", "ар ", "әри", "әси", "рин", "әти", "р ш", "нин", "дән", "јјә", "н һ", " аз", "ни ", "әрә", " мә", "зад", "мәк", "ијј", " мү", "син", "тин", "үн ", "олу", "и в", "ндә", "гун", "рын", "аза", "нда", "ә а", "әт ", "ыны", "нын", "лыг", "илм", " га", " ет", "ә ј", "кди", "әк ", "лә ", "лмә", "олм", "ына", "инд", "лун", " ин", "мас", "хс ", "сын", "ә б", "г в", "н м", "адл", "ја ", "тмә", "н т", "әми", "нә ", "длы", "да ", " бә", "нун", "бәр", "сы ", " он", "әја", "ә һ", "маг", "дан", "ун ", "етм", "инә", "н а", "рлә", "си ", " ва", "ә в", "раг", "н б", "ә м", "ама", "ры ", "н и", "әра", "нма", "ынд", "инс", " өз", "аны", "ала", " ал", "ик ", "ә д", "ләт", "ирл", "ил ", " ди", "бил", "ығы", "ли ", "а б", "әлә", "дил", "ә е", "унм", "алы", "мүд", " сә", "ны ", "ә и", "н в", "ыг ", "нла", "үда", "аси", "или", " дә", "нса", "сан", "угл", "уг ", "әтл", "ә о", "хси", " һе", "ола", "кил", "ејн", "тәр", "јин", " бу", "ми ", "мәс", "дыр", "һәм", " да", "мин", "иш ", " һа", " ки", "у в", "лан", "әни", " ас", "хал", "бу ", "лығ", "р в", " ед", "јан", "рә ", "һеч", "алг", " та", "еч ", "и с", "ы һ", "сиа", "оси", "сос", "фиә", "г һ", "афи", "ким", "даф", " әс", "ә г", " иш", "н ә", "ији", "ыгл", "әмә", "ы о", "әдә", "әса", " со", "а г", "лыд", "илл", "мил", "а һ", "ыды", "сас", "лы ", "ист", " ис", "ифа", "мәз", "ыр ", "јар", "тлә", "лиј", "түн", "ина", "ә т", "сиј", "ал ", "рил", " бү", "иә ", "бүт", " үч", "үтү", "өз ", "ону", " ми", "ија", " нә", "адә", "ман", "үчү", "чүн", "сеч", "ылы", "т в", " се", "иал", "дах", "сил", "еди", "н е", "әји", "ахи", "хил", " ҹә", "миј", "мән", "р а", "әз ", "а в", "илд", "и һ", "тәһ", "әһс", "ы в", "һси", "вар", "шәр", "абә", "гу ", "раб", "аја", "з һ", "амә", "там", "ғын", "ад ", "уғу", "н д", "мәһ", "тәм", " ни", "и т", " ха"}, Bel: []string{" і ", " пр", "пра", "ава", " на", "на ", " па", "рав", "ны ", "ць ", "або", " аб", "ва ", "ацы", "аве", "ае ", " ча", "ння", "анн", "льн", " ма", " св", "сва", "ала", "не ", "чал", "лав", "ня ", "ай ", "ых ", " як", "га ", "век", "е п", " ад", "а н", " не", "пры", "ага", " ко", "а п", " за", "кож", "ожн", "ы ч", "бод", "дна", "жны", "ваб", "цца", "ца ", " ў ", "а а", "ек ", "мае", "і п", "нне", "ных", "асц", "а с", "пав", "бо ", "ам ", "ста", " са", " вы", "ван", "ьна", " да", "ара", "дзе", "одн", "го ", "наг", "він", "аць", "оўн", "цыя", "мі ", "то ", " ра", "і а", "тва", " ас", "ств", "лен", "аві", "ад ", "і с", "енн", "і н", "аль", "най", "аво", "рац", "аро", "ці ", "сці", "пад", "ама", " бы", " яг", "яго", "к м", "іх ", "рым", "ым ", "энн", "што", "і і", "род", " та", "нан", " дз", "ні ", "я а", "гэт", "нас", "ана", " гэ", "інн", "а б", "ыць", "да ", "ыі ", "оў ", "чын", " шт", "а ў", "цыі", "які", "дзя", "а і", "агу", "я п", "ным", "нац", " у ", " ўс", "ыя ", "ьны", "оль", "нар", "ўна", "х п", "і д", "ў і", " гр", "амі", "ымі", "ах ", " ус", "адз", " ні", "эта", "ля ", "воў", "ыма", "рад", "ы п", "зна", "чэн", "нен", "аба", " ка", "ўле", "іна", "быц", "ход", " ін", "о п", " ст", "ера", "уль", "аў ", "асн", "сам", "рам", "ры ", " су", "нал", "ду ", "ь с", "чы ", "кла", "аны", "жна", "і р", "пер", "і з", "ь у", "маю", "ако", "ыцц", "яко", "для", "ую ", "гра", "ука", "е і", "нае", "адс", "і ў", "кац", "ўны", "а з", " дл", "яўл", "а р", "аюч", "ючы", "оду", " пе", " ро", "ы і", "вы ", "і м", "аса", "е м", "аду", "х н", "ода", "адн", "нні", "кі ", " шл", "але", "раз", "ада", "х і", "авя", "нав", "алі", "раб", "ы ў", "нна", "мад", "роў", "кан", "зе ", "дст", "жыц", "ані", "нст", "зяр", "ржа", "зак", "дзі", "люб", "аюц", "бар", "ім ", "ены", "бес", "тан", "м п", "дук", "е а", "гул", "я ў", " дэ", "ве ", "жав", "ацц", "ахо", "заб", "а в", "авы", "ган", "о н", "ваг", "я і", "чна", "я я", "сац", "так", "од ", "ярж", "соб", "м н", "се ", "чац", "ніч", "ыял", "яль", "цця", "ь п", "о с", "вол", "дэк", " бе", "ну ", "ога", " рэ", "рас", "буд", "а т", "асо", "сно", "ейн"}, Bul: []string{" на", "на ", " пр", "то ", " и ", "рав", "да ", "пра", " да", "а с", "ств", "ва ", "та ", "а п", "ите", "но ", "во ", "ени", "а н", "е н", " за", "о и", "ото", "ван", "не ", " вс", "те ", "ки ", " не", "о н", "ове", " по", "а и", "ава", "чов", "ни ", "ане", "ия ", " чо", "аво", "ие ", " св", "е п", "а д", " об", "век", "ест", "сво", " им", "има", "ост", "и д", "и ч", "ани", "или", "все", "ли ", "тво", "и с", "ние", "вот", "а в", "ват", "ма ", " ра", "и п", "и н", " в ", "ек ", "сек", "еки", "а о", " ил", "е и", "при", " се", "ова", "ето", "ата", "воб", "обо", "бод", "аци", "ат ", "пре", "оди", "к и", " бъ", " съ", "раз", " ос", "ред", " ка", "а б", "о д", "се ", " ко", "бъд", "лно", "ния", "о п", " от", "ъде", "о в", "за ", "ята", " е ", " тр", "и и", "о с", "тел", "и в", "нит", "е с", "ран", " де", "от ", "общ", "де ", "ка ", "бра", "ен ", "ява", "ция", "про", "алн", "и о", "ият", "ст ", "нов", " до", "его", "как", "ато", " из", "нег", "а т", "ден", "а к", "щес", "а р", "тря", "а ч", "ряб", "о о", "вен", "ябв", "бва", "дър", "гов", "нац", "ено", "тве", "ърж", "е д", "нос", "ржа", "а з", "вит", "зи ", "акв", "лен", " та", "ежд", "и з", "род", "е о", "обр", "нот", " ни", " с ", "т с", "нар", "о т", "она", "ез ", "йст", "кат", "иче", " бе", "жав", "е т", "е в", "тва", "зак", "аро", "кой", "осн", " ли", "ува", "авн", "ейс", "сно", "рес", "пол", "нен", "вни", "без", "ри ", "стр", " ст", "сто", "под", "чки", "вид", "ган", "си ", "ди ", "и к", "нст", " те", "а е", "вси", "еоб", " дъ", "сич", "ичк", "едв", "жен", "ник", "ода", "т н", "о р", "ака", "ели", "одн", "елн", "лич", " че", "чес", "бще", " ре", "и м", " ср", "сре", "и р", "са ", "лни", " си", "дви", "ичн", "жда", " къ", "оет", "ира", "я н", "дей", " ме", "еди", "дру", "ход", "еме", "кри", "че ", "дос", "ста", "гра", " то", "ой ", "тъп", "въз", "ико", "и у", "нет", " со", "ави", "той", "елс", "меж", "чит", "ита", "що ", "ъм ", "азо", "зов", "нич", "нал", "дно", " мо", "ине", "а у", "тно", "таз", "кон", "лит", "ан ", "клю", "люч", "пос", "тви", "а м", "й н", "т и", "изв", "рез", "ази", "ра ", "оят", "нео", "чре"}, Tuk: []string{" би", "лар", " ве", "ве ", "да ", "ада", "ары", " хе", "ир ", " ад", "бир", "дам", "кла", "ер ", "р б", "ың ", " ха", "ара", "га ", "ен ", "лан", "ыны", "или", "дыр", "ам ", "ала", " бо", "хер", "р а", "ыр ", "лы ", "лер", "ан ", "бил", "иң ", "ыды", "р х", "акл", "нда", " өз", "клы", "ны ", "хук", "ери", " ху", "уку", "ага", "не ", "лыд", "ине", "ына", "лен", "на ", "хак", "де ", "‐да", "ин ", "рын", "атл", " эд", "маг", "өз ", " де", "асы", "лыг", "кук", "е а", "ынд", "алы", "лма", "бол", "дан", "ини", "а х", " я‐", "е х", "ге ", "иле", "я‐д", "ар ", "ама", "ли ", "ыгы", "ети", " ба", " га", "гын", "ере", "укл", "лиг", "ның", "зат", "лык", "тлы", "нде", "ни ", "лик", "ден", "мак", "сын", "дил", "ры ", "аны", "кин", "әге", "п б", "а г", "хем", "иги", "эрк", "аза", "а д", "мек", " эр", "мал", "ыкл", "мәг", "сас", " эс", "екл", " ма", "рин", "эса", "ола", "ы б", "айы", "н э", "эди", " гө", " хи", "сы ", " аз", "баш", "ы д", "йда", "шга", "ашг", "а в", " до", "ыет", "ы в", "дак", "ниң", "рки", "гал", "чин", "гда", "ак ", " җе", "а б", " эт", "этм", "кы ", "лет", "йән", " та", "гин", "ян ", "тме", "хич", "ич ", "мез", " гу", "хал", "ылы", "үнд", "илм", "дай", "ягд", " яг", "и в", "им ", "акы", "ы г", "ән ", "а а", "рың", "ги ", "тле", "н м", " го", "ип ", "ал ", "еси", " се", "лме", " ка", "м х", "дең", "ң х", "е д", "дир", "илл", "рил", " ал", "кан", "е г", "лин", "ра ", "дол", " бе", " ми", "мил", "ң д", "н х", "ели", "н а", "е м", " ге", "ы х", " дө", "ик ", " со", "ң а", "чил", "дөв", "е б", " са", "гар", "е в", "ең ", "н б", "рма", " ме", "кли", "үчи", " дә", " үч", "ция", "н в", " дү", "и б", "айд", "кле", "сер", "а я", "соц", "гор", "оци", "дал", "мы ", "олм", "циа", "уң ", " он", "уп ", "кда", "дәл", "ири", " ди", "еле", "лип", "алк", "лим", "гур", "үни", "нме", " әх", "н г", " иш", "ы ө", "ң э", "нун", "еги", "тин", "ы а", "рле", "аци", "ыз ", "з х", "сыз", "аха", "м э", "олы", "рам", " ту", " ни", "ып ", "ерт", "алм", "ора", "и х", "хли", "әхл", "к э", "өвл", "вле", "тмә", "ет ", "нли", "ахс", "гөз", "гы ", "етл", "ы ү", "нуң", "ону", "сиз", "емм", "ек "}, Mkd: []string{" на", "на ", " пр", " и ", "во ", " се", "то ", "ите", "те ", "рав", "та ", "а с", "пра", "ува", "да ", " да", " не", "ва ", "а п", "а н", "и с", "ата", "о н", "еко", "а и", " по", "но ", "ој ", "кој", " со", " за", " во", "ств", "ја ", "ње ", "ање", "аво", "ни ", " им", "от ", "е п", "е н", "ма ", "ат ", "вањ", "ост", "а д", "о с", "е и", "се ", "ова", "ија", "и п", " сл", "а о", "има", "сек", "сло", "ото", "ли ", "о д", "ава", "обо", "о и", " ил", "или", " би", "бод", "и н", "лоб", " од", "бид", "ред", "ен ", "при", "вот", "иде", "а в", "ста", " об", "и и", "и д", "пре", "нос", "ст ", "е с", " ни", " ќе", "ове", "аат", "аци", "ќе ", "со ", "ови", "про", "ј и", "тво", " ра", "ест", "што", " де", "т и", "акв", " ко", "раз", "гов", "его", "нег", "ани", "едн", "ако", "циј", "бра", "од ", "а з", "е б", "и о", "а б", "о п", "ват", " е ", " др", "ето", "ваа", "как", "ди ", "т с", " ка", " чо", "ени", "алн", "одн", "ено", " си", "чов", " шт", "а г", "а е", "вен", "нит", " ја", "де ", "оди", "е о", "ран", "и з", "сно", "нот", " ед", "тит", "лно", "ви ", "јат", "ден", "т н", "нац", " оп", " до", " ос", "и в", "осн", "кон", "дна", "е д", " ст", "век", "о о", "род", "сто", "сит", "еме", "ара", "дно", "обр", "ј н", "пшт", "еди", "опш", "за ", "ние", "аро", "нов", "а к", "вни", "дру", " ов", "тве", "жив", "ште", "д н", "ие ", " ме", "ед ", "иот", "и м", "о в", "ќи ", "дат", "шти", "јќи", "без", "бед", "ки ", "ков", "ко ", "а р", "нар", "чно", "дни", " вр", "ели", "нак", "ашт", "ичн", "ка ", "ема", "цел", "зем", "еду", "чув", "тес", "држ", "ник", "т п", "луч", "аа ", "деј", "нст", "не ", "а ч", "руг", "ода", "ивн", " це", "нив", "дин", "авн", " зе", "нио", "пор", "а м", "заш", "лас", "вит", "дек", "го ", "ине", "ело", "нет", "ез ", "тен", " ре", " из", "под", "раб", "або", "бот", "дув", "нув", " бе", "ење", "еде", "он ", "њет", "зов", "иту", "ван", "н и", "аѓа", "е в", "еѓу", "рем", "дел", "о к", "кот", "им ", " жи", "дос", "вре", "меѓ", "олн", "нап", " го", "емј", "кри", "уна", "нем", "оја", " су", "ита", "азо", "лит", "тор", "инс", "ора", "огл", "ипа", "пот", "слу", "кви"}, } var arabicLangs = langProfileList{ Arb: []string{" ال", "ية ", " في", "الح", "في ", " وا", "وال", " أو", "ة ا", "أو ", "الم", "الت", "لحق", "حق ", "لى ", "كل ", "ان ", "ة و", "الأ", " لك", "لكل", "ن ا", "ها ", "ق ف", "ات ", "مة ", "ون ", "أن ", "ما ", "اء ", "ته ", "و ا", "الع", "ي ا", "شخص", "ي أ", " أن", "الإ", "م ا", "حري", " عل", "ة ل", "من ", "الا", "حقو", "على", "قوق", "ت ا", "أي ", "رد ", " شخ", " لل", " أي", "ق ا", "لا ", "فرد", "رية", " ول", " من", "د ا", " كا", " إل", "خص ", "وق ", "ا ا", "ة أ", "ا ي", "ل ف", "ه ا", "نسا", "جتم", "ن ي", "امة", "كان", "دة ", " حق", "ام ", "الق", "ة م", " فر", "اية", "سان", "ل ش", "ين ", "ن ت", "إنس", "ا ل", " لا", "ذا ", "هذا", "ن أ", "لة ", "ي ح", " دو", "ه ل", "لك ", "ترا", "لتع", "اً ", "له ", "إلى", " عن", "ى ا", "ه و", "ع ا", "ماع", "د أ", "اسي", " حر", "ة ع", "مع ", "الد", "نون", " با", "لحر", "لعا", "ن و", "، و", "يات", "ي ت", "الج", " هذ", "ير ", "بال", "دول", "لإن", "عية", "الف", "ص ا", " وي", "الو", "لأس", " إن", "أسا", "ساس", "ماي", "حما", "رام", "سية", "انو", "مل ", "ي و", "عام", "ا و", "تما", " مت", "ة ت", "علي", "ع ب", "ك ا", " له", "ة ف", "قان", "ى أ", "ول ", "هم ", "الب", "ة ب", "ساو", "لقا", "الر", "لجم", "ا ك", "تمت", "ليه", "لتم", "لمت", "انت", " قد", "اد ", "ه أ", " يج", "ريا", "ق و", "ل ا", "ا ب", "ال ", "يه ", "اعي", "لدو", "ل و", "لإع", "لمي", "لمج", "لأم", "تع ", "دم ", "تسا", "عمل", "اته", "لاد", "رة ", "اة ", "غير", "قدم", "وز ", "جوز", "يجو", "عال", "لان", "متع", "مان", "فيه", "اجت", "م و", "يد ", "تعل", "ن ل", "ر ا", " يع", " كل", "مم ", "مجت", "تمع", "دون", " مع", "تمي", "ذلك", "كرا", "يها", " مس", "ميع", "إعل", "علا", " تم", " عا", "ملا", "اعا", "لاج", "ني ", "ليم", "متس", "ييز", "يم ", "اعت", "الش", " تع", "ميي", "عن ", "تنا", " بح", "لما", "ي ي", "يز ", "ود ", "أمم", "لات", "أسر", "شتر", "تي ", " جم", "ه ع", "ر و", "ي إ", "تحد", "حدة", " أس", "عة ", "ي م", "ة، ", "معي", "ن م", "لمس", "م ب", "اق ", "جمي", "لي ", "مية", "الض", "الس", "لضم", "ضما", "لفر", " وس", "لحم", "امل", "ق م", "را ", "ا ح", "نت ", " تن", "يته", " أم", "إلي", "واج", "د و", "لتي", " مر", "مرا", "متح", " ذل", " وأ", " تح", "ا ف", " به", " وم", " بم", "وية", "ولي", "لزو"}, Urd: []string{"ور ", " او", "اور", " کی", "کے ", " کے", "یں ", " کا", "کی ", " حق", "ے ک", "ایٔ", "کا ", "یٔے", " کو", "یا ", "نے ", "سے ", " اس", "ٔے ", "میں", "کو ", " ہے", " می", "ے ا", " ان", "وں ", " کر", " ہو", "اس ", "ی ا", "ر ا", "شخص", " شخ", "حق ", " سے", " جا", "خص ", "ہر ", "ام ", "ے م", "ں ک", "ہیں", " یا", "سی ", "ادی", "آزا", " آز", "زاد", "ص ک", "ہ ا", "ہے ", "جای", "ا ح", "ر ش", "ت ک", "کہ ", "م ک", " پر", "ی ک", "ان ", "پر ", "۔ہر", "دی ", "یٔی", "س ک", "ا ج", "ر م", "ہے۔", "ق ہ", "ں ا", "ی ح", "و ا", "ار ", "ن ک", "قوق", "کسی", "حقو", "ری ", "وق ", "ے گ", " ہی", "ی ج", " مع", "سان", " نہ", " مل", " حا", "ٔی ", " جو", "نی ", "کرن", " لی", "تی ", "ی ت", "نسا", "ل ک", " کہ", "جو ", "انس", "اپن", "ے ب", "نہ ", " اپ", "یت ", "ا ا", "ہ ک", " کس", "ر ک", "رے ", "ے ہ", " ای", "می ", "ل ہ", "۔ ا", "ے ل", "ی ش", "رنے", "وہ ", "حاص", "ی م", "معا", "اصل", "صل ", "یں۔", "ویٔ", "نہی", "ملک", "ایس", "انہ", "ات ", "ی ب", "د ک", "ی ہ", " تع", "کیا", "ق ک", "ر ہ", "ا م", "دہ ", " من", " بن", " قو", "ے ج", "یہ ", "ں م", "اشر", "مل ", " دو", "عاش", "قوم", "ر ب", "انی", "وام", "قوا", "اقو", "لیٔ", "دار", " وہ", " و ", " عا", "ی س", "بر ", "علا", "اد ", "ہ م", "و ت", "ر ن", " جس", "ے۔ہ", "ے، ", "انو", " دی", "گی ", "لیم", "یوں", " قا", " یہ", "دوس", "ے۔ ", "ا ہ", "تعل", "یم ", "ر پ", "جس ", "ریق", "ے ح", " اق", "نیا", "لک ", " گی", "ین ", "یاد", " مس", "لاق", "، ا", "ی ن", "پنے", "وری", "م ا", " با", "علی", "یر ", "ی، ", "انے", "ون ", "ن ا", "ر ع", " بر", "ی آ", "ر ح", " رک", "ے پ", "کر ", "گا۔", " پی", "سب ", " گا", "نا ", " پو", "یسے", "رای", " مر", "اری", "قان", "نون", " مم", "ندگ", " اع", "دگی", "ہ و", " ہر", "ر س", " چا", "خلا", "ا پ", "ق ح", " بھ", "س م", " شا", "ہوگ", "ے خ", "وسر", "رتی", "ومی", " بی", "رکھ", " مت", "کوی", "ر آ", "پور", "اف ", " مح", "ے س", "ہوں", "نکہ", "ونک", "ت ا", " طر", "ے ع", "یٔد", "د ا", "ال ", "ں۔ ", "م م", "اں ", " مق", "غیر", "پنی", " ام", "ں، ", "من ", "ہو ", "ریع", "و ک", "ذری", " ذر", "عام", "، م", "دان", "ادا", "اعل", "مام", "تما", " عل", "دیو", "بھی", "ھی ", "بنی", "ے ی", "ا ک", "اوی", "ل م", " زن", "یاس", "لان", "عمل", " عم", "ت م", " بچ"}, Skr: []string{"تے ", "اں ", " تے", "دے ", "دی ", "وں ", " دا", " حق", " کو", "ے ا", "کوں", " دے", "دا ", " دی", "یاں", " کی", "ے ۔", "یں ", "ہر ", " ۔ ", "کیت", "ہے ", " وچ", " ہے", "وچ ", " ان", " شخ", "شخص", "ادی", "ال ", " حا", "اصل", "حق ", "حاص", "ے م", "خص ", "صل ", "ں د", " نا", "یا ", " ای", "اتے", "ق ح", "ل ہ", "ے و", "ں ک", " ات", "ہیں", "سی ", " مل", "نال", "زاد", "ازا", "ی ت", " از", "قوق", "ار ", "ا ح", "حقو", " او", "ص ک", " ۔ہ", "۔ہر", "ر ش", "دیا", "ے ج", "وق ", "ندے", " کر", "یند", " یا", "نہ ", " جو", "کہی", "ئے ", "ی د", "سان", "نسا", "وند", "ی ا", "یتے", "انس", "ا ا", "ملک", "ے ح", "و ڄ", "ے ک", "ڻ د", " وی", "یسی", "ے ب", "ا و", " ہو", "ں ا", "ئی ", "ندی", "تی ", "آپڻ", "وڻ ", "ر ک", "ن ۔", " نہ", "انہ", "جو ", " کن", " آپ", " جی", "اون", "ویس", "ی ن", " تھ", " کہ", "ان ", "ری ", "ڻے ", " ڄئ", " ہر", "ے ن", "دہ ", "ام ", "ں م", "ے ہ", "تھی", "ں و", "۔ ا", "ں ت", "ی ۔", "کنو", "ی ح", "ی ک", "نوں", "رے ", "ہاں", " بچ", "ون ", "ے ت", "کو ", " من", "ی ہ", "اری", "ور ", "نہا", "ہکو", "یتا", "نی ", "یاد", "ت د", "ن د", " ون", "وام", "ی م", "قوا", "تا ", "ڄئے", "پڻے", " ہک", "می ", " قو", "ق ت", "ے د", "لے ", "اف ", "ل ک", "ل ت", " تع", "چ ا", "ین ", "خلا", "اے ", "علا", " سا", "جیا", "ئو ", "کرڻ", "ی و", "انی", "ہو ", "دار", " و ", "ی ج", " اق", "ن ا", "یت ", "ارے", "ے س", "لک ", "ق د", "ہوو", " ڋو", "ر ت", " اے", "ے خ", " چا", " خل", "لاف", "قنو", "نون", "پور", "ڻ ک", " پو", "ایہ", "بچئ", "چئو", "ات ", "الا", "ونڄ", "وری", "این", " وس", " لو", "و ا", "ہ د", " رک", "یب ", "سیب", "وسی", "یر ", "ا ک", "قوم", "ریا", "ں آ", " جا", "رکھ", "مل ", "کاں", "رڻ ", "اد ", "او ", "عزت", " قن", "ب د", "وئی", "ے ع", " عز", " ۔ک", " مع", "اقو", "ایں", "م م", "زت ", "ڻی ", "یوڻ", "ر ہ", " سم", "ں س", "لوک", " جھ", " سی", "جھی", "ت ت", "ل ا", "اوڻ", "کوئ", "ں ج", "ہی ", "حدہ", "تعل", "ے ذ", "وے ", "تحد", "متح", "لا ", "ا ت", "کار", " اع", "ے ر", " مت", "ر ا", "ا م", "ھین", "ھیو", "یہو", " مط", " سڱ", "ی س", "ڄے ", "نڄے", "سڱد", "لیم", "علی", "ے ق", " ذر", "م ت", " کھ", "ن ک", " کم", "ہ ا", "سار", "ائد", "ائی", "د ا", " ہن", "ہن ", "ی، ", "و ک", "ں ب", "ھیا", "ذری", "ں پ", "لی "}, Uig: []string{" ئا", " ھە", "ىنى", "ە ئ", "نىڭ", "ىلى", " ۋە", "ىڭ ", "ۋە ", " ئى", " بو", "ھوق", "وقۇ", " ھو", "قۇق", "نى ", "بول", " ئە", "لىك", "قىل", "ىن ", "لىش", "شقا", "قا ", "ەن ", " قى", "ن ب", "ھەم", "ى ئ", "ئاد", "ىشى", "دەم", "ادە", "كى ", "لىق", "غان", "ىي ", "ىغا", "گە ", " بى", "دىن", "ىدى", "ەت ", "كىن", "ىكى", "ندا", "ۇق ", " تە", "نلى", "تىن", "ەم ", "لەت", "قان", "ىگە", "ىتى", "ىش ", "ھەر", "ئەر", " با", "ولۇ", "دۆل", "غا ", "اند", " دۆ", "اق ", "مە ", "لۇش", "دە ", "لۇق", " ئۆ", "ان ", " يا", "ەرق", "ۆلە", "ركى", " قا", "ەرك", "ەمم", "ا ئ", "ممە", "ۇقى", "ىق ", " بە", "رقا", "داق", "ارا", "ىلە", "رىم", "ىشق", "ى ۋ", "لغا", "مەن", "اكى", "ەر ", "ا ھ", "دۇ ", "ياك", "ۇقل", "ئار", "ق ئ", "ىنل", "لار", " ئې", "ى ب", "لىن", "ڭ ئ", "ئۆز", "ق ھ", "شى ", "ىمە", "قلۇ", "ن ئ", "لەر", "ەتل", "نىش", "ىك ", "ەھر", " مە", "ھرى", "لەن", "ىلا", "ار ", "بەھ", " ئۇ", "ە ق", "ئىي", "اسى", " مۇ", "رلى", " ئو", "بىر", "، ئ", "بىل", "ش ھ", "بار", "ى، ", "ۇ ھ", "ايد", "ۇشق", "شكە", "ە ب", "يەت", "ا ب", "رنى", "كە ", "ىسى", " كې", "ېلى", "الى", "ەك ", "م ئ", "ماي", "ولم", "تنى", "ىدا", "ارى", "يدۇ", "لىد", " قو", "ەشك", "تلە", "ك ھ", "انل", "ەمد", "مائ", "ئال", "ر ئ", "مدە", "ىيە", "ش ئ", "ە ھ", "لما", "ائى", "ئىگ", "دا ", "ي ئ", "ۇشى", "راۋ", "ا، ", "سىي", " تۇ", "كىل", "ە ت", "ىقى", "قى ", "ۆزى", "ېتى", "ىرى", "ىر ", "ىپ ", "ى ك", "ن، ", "ر ب", "لەش", "اسا", "اۋا", "ى ھ", "شلى", "ساس", "ادى", "تى ", "اشق", "ەتت", "قىغ", "ىما", "انى", " خى", "ۇرۇ", " خە", "ن ق", "منى", " خا", "چە ", "ى ق", " جە", "رقى", "تىد", " ھۆ", "باش", "ارل", "ئىش", "تۇر", " جى", "مۇش", "نۇن", "شۇ ", "انۇ", "ۇش ", "رەك", "ېرە", "كېر", " سا", "الغ", "ۇنى", "ئېل", "ىشل", "تەش", "خەل", "مەت", "اش ", "دىغ", "كەن", "ەلق", "تىش", "مىن", "ايى", "سىز", "ق ۋ", "نىي", "جىن", "رىش", "پ ق", " كى", "ېرى", "ئاس", "ەلى", " ما", "تتى", "ىرل", "ولى", " دە", "ارق", "سىت", "ە م", " قە", "شىل", " تى", "ەرن", "كىش", "ن ھ", "ەلگ", "ەمن", "ك ئ", " تو", "ى ي", "قتى", "ئاش", "تىم", "تەۋ", "ناي", "ىدە", "ىنا", " بۇ", "ىيا", "زىن", "امى", "قار", "شكى", "ىز ", " ئۈ", "ەۋە", "ۆرم", "ە خ", "شىش", "ىيى", "جتى", "ىجت", "ئىج", "نام", "تەر"}, Pes: []string{" و ", " حق", " با", "که ", "ند ", " که", " در", "در ", "رد ", " دا", "دار", "از ", " از", "هر ", " هر", "یت ", "ر ک", "حق ", "د ه", "ای ", "د و", "ان ", " را", "ین ", "ود ", "یا ", " یا", "را ", "ارد", "ی و", "کس ", " کس", " بر", " آز", "باش", "ه ب", "آزا", "د ک", " خو", "ه ا", "د ب", "زاد", " اس", "ار ", " آن", "ق د", "شد ", "حقو", "قوق", "ی ب", "وق ", "ده ", "ه د", "ید ", "ی ک", "و ا", "ور ", "ر م", "رای", "اشد", "خود", "ادی", "تما", "ری ", " اج", "ام ", "دی ", "اید", "س ح", "است", "ر ا", "و م", " ان", "د ا", "نه ", " بی", "با ", " هم", " نم", "مای", " تا", "د، ", "ی ا", "انه", "ات ", "ون ", "ایت", "ا ب", "ست ", " کن", "برا", "انو", " بش", " مو", "این", " مر", "اسا", " مل", "وان", "ر ب", "جتم", " شو", " اع", "ن ا", "ورد", " می", " ای", "آن ", " به", "و آ", "ملل", "ا م", "ماع", "نی ", "ت ا", "، ا", "ت و", "ئی ", "عی ", "ائی", "اجت", "و ب", "های", "ن م", "ی ی", "بشر", "کند", "شود", " من", " زن", "ن و", "ی، ", "بای", "ی ر", " مس", "مل ", "مور", "ز آ", "توا", "دان", "اری", "علا", "گرد", "یگر", "کار", " گر", " بد", "ن ب", "ت ب", "ت م", "ی م", " مق", "د آ", "شور", "یه ", "اعی", " عم", "ر خ", "ن ح", " کش", "رند", "مین", " اح", "ن ت", "ی د", " مت", "ه م", "د ش", " حم", "و د", "دیگ", "لام", "کشو", "هٔ ", "ه و", "انی", "لی ", "ت ک", " مج", "ق م", "میت", " کا", " شد", "اه ", "نون", " آم", "اد ", "ادا", "اعل", "د م", "ق و", "ا ک", "می ", "ی ح", "لل ", "نجا", " مح", "ساس", "یده", " قا", "بعی", "قان", "ر ش", "مقا", "ا د", "هد ", "وی ", "نوا", "گی ", "ساو", "ر ت", "بر ", "اً ", "نمی", "اسی", "اده", "او ", " او", " دی", " هی", "هیچ", "ه‌ا", "‌ها", "یر ", "خوا", "د ت", "همه", "ا ه", "تی ", "حما", "دگی", "بین", "ع ا", "سان", "ر و", "شده", "ومی", " عق", " بع", "ز ح", "شر ", "مند", " شر", "ٔمی", "أم", "تأ", "انت", "اند", "اوی", "مسا", "ردد", "بهر", " بم", "ارن", "یتو", "ل م", "ران", "و ه", "ر د", "م م", "رار", "عقی", "سی ", "و ت", "زش ", " بو", "ا ا", "ی ن", "موم", "جا ", "عمو", "رفت", "عیت", " فر", "ندگ", "واه", "زند", "م و", "نما", "ه ح", "ا ر", "دیه", "جام", "مرد", "ت، ", "د ر", "مام", " تم", "ملی", "نند", "الم", "طور", "ی ت", "تخا", "ا ت", "امی", "امل", "دد ", " شخ", "شخص"}, } var devanagariLangs = langProfileList{ Hin: []string{"के ", "प्र", "और ", " और", " के", "ों ", " का", "कार", " प्", "का ", " को", "या ", "ं क", "ति ", "ार ", "को ", " है", "िका", "ने ", "है ", "्रत", "धिक", " अध", "अधि", "की ", "ा क", " कि", " की", " सम", "ें ", "व्य", "्ति", "क्त", "से ", " व्", "ा अ", "्यक", "में", "मान", "ि क", " स्", " मे", "सी ", "न्त", " हो", "े क", "ता ", "यक्", "क्ष", "ै ।", "िक ", "त्य", " कर", "्य ", " या", "भी ", " वि", "रत्", "र स", "ी स", " जा", "स्व", "रों", "्ये", "ेक ", "येक", "त्र", "िया", "ा ज", "क व", "र ह", "ित ", "्रा", "किस", " अन", "ा स", "िसी", "ा ह", "ना ", " से", " पर", "र क", " सा", "देश", "गा ", " । ", " अप", "्त्", "े स", "समा", "ान ", "ी क", "्त ", "वार", " ।प", "ा प", " रा", "षा ", "न क", "।प्", "ष्ट", "था ", "अन्", " मा", "्षा", "्वा", "ारो", "तन्", "वतन", "ट्र", "्वत", "प्त", "ाप्", "्ट्", "राष", "ाष्", " इस", "े अ", " उस", " सं", "राप", "कि ", "त ह", "हो ", "ं औ", "ार्", "ा ।", "किय", "े प", " दे", " भी", "करन", "री ", "जाए", "ी प", " न ", "र अ", "क स", "अपन", "े व", "ाओं", "्तर", "ओं ", " नि", "सभी", "रा ", " तथ", "तथा", "िवा", "यों", "पर ", " ऐस", "रता", "ारा", "्री", "सम्", " द्", "ीय ", "िए ", "व क", "सके", "द्व", "होग", " सभ", "ं म", "माज", "रने", "िक्", "्या", "ा व", "र प", " जि", "ो स", "र उ", "रक्", "े म", "पूर", " लि", "ाएग", " भा", "इस ", "त क", "ाव ", "स्थ", "पने", "ा औ", "द्ध", "श्य", "र्व", " घो", "घोष", "रूप", "भाव", "ाने", "कृत", "ो प", "े ल", "लिए", "शिक", "ूर्", " उन", "। इ", "ं स", "य क", "्ध ", "दी ", "ी र", "र्य", "णा ", "एगा", "न्य", "रीय", "ेश ", "रति", "े ब", " रू", "ूप ", "परा", "्र ", "तर्", " पा", " सु", "जिस", "तिक", "सार", "जो ", "ेशो", " शि", "ानव", "ी अ", "चित", "े औ", " पू", "ियो", "ा उ", "म क", "ी भ", "शों", " बु", "म्म", "स्त", "िश्", "्रो", "्म ", "ो क", " यह", "र द", "नव ", "चार", "दिय", "े य", "र्ण", "राध", "ोगा", "ले ", "नून", "ानू", "ोषण", "षणा", "विश", " जन", "ारी", "परि", "गी ", "वाह", "साम", "ाना", "रका", " जो", "ाज ", "ी ज", "ध क", "बन्", "ताओ", "ंकि", "ूंक", "ास ", "कर ", "चूं", "ी व", "य ह", "ा ग", "य स", "न स", "त र", "कोई", "ुक्", "ोई ", " ।क", "ं न", "हित", "निय", "याद", "ादी", "्मा", "्था", "ामा", "ाह ", "ी म", "े ज"}, Mar: []string{"्या", "या ", "त्य", "याच", "चा ", " व ", "ण्य", "प्र", "कार", "ाचा", " प्", "धिक", "िका", " अध", "अधि", "च्य", "ार ", "आहे", " आह", "ा अ", "हे ", " स्", "्रत", "्ये", "ा क", "स्व", " कर", "्वा", "ता ", "ास ", "ा स", "ा व", "त्र", " त्", "वा ", "ांच", "यां", "िक ", "मान", " या", "्य ", " का", " अस", "रत्", "ष्ट", "र्य", "येक", "ल्य", "र आ", "ाहि", "क्ष", " को", "ामा", "कोण", " सं", "ाच्", "ात ", "ा न", " रा", "ंत्", "ून ", "ेका", " सा", "राष", "ाष्", "चे ", "्ट्", "ट्र", "तंत", " मा", "ने ", "किं", " कि", "व्य", "वात", "े स", "करण", "ंवा", "िंव", "ये ", "क्त", " सम", "ा प", "ना ", " मि", "कास", "ातं", "्र्", "र्व", "समा", "मिळ", " जा", "े प", "व स", "यास", "ोणत", "रण्", "काम", "ीय ", "ा आ", " दे", "े क", "ांन", "हि ", "रां", " व्", "्यक", "ा म", "िळण", "ही ", " पा", "्षण", "ार्", "ान ", "े अ", " आप", " वि", "ळण्", "ाही", "ची ", "े व", "्रा", "मा ", "ली ", "ंच्", "ारा", "ा द", " आण", " नि", "णे ", "द्ध", " नय", "ला ", "ा ह", "नये", " सर", "सर्", "्री", "बंध", "ी प", "आपल", "ले ", "ील ", "माज", " हो", "्त ", "त क", "ाचे", "्व ", "षण ", "ंना", "लेल", "ी अ", "देश", "आणि", "णि ", "ध्य", " शि", "ी स", "े ज", "शिक", "रीय", "ानव", "पाह", "हिज", "िजे", "जे ", "क स", "यक्", "न क", "व त", "ा ज", "यात", "पल्", "न्य", "वी ", "स्थ", "ज्य", " ज्", "े आ", "रक्", "त स", "िक्", "ंबं", "संब", " के", "क व", "केल", "असल", "य अ", "य क", "त व", "ीत ", "णत्", "त्व", "ाने", " उप", "्वत", "भाव", "े त", "करत", "याह", "रता", "िष्", "व म", "कां", "साम", "रति", "सार", "ंचा", "र व", "क आ", "याय", "ासा", "साठ", "ाठी", "्ती", "ठी ", "ेण्", "र्थ", "ीने", "े य", "जाह", "ोणा", "संर", "ायद", "च्छ", "स स", "ंरक", "तील", "ी व", "त आ", "ी आ", "ंधा", "ेशा", "ित ", " अश", "हीर", " हक", "हक्", "क्क", "य व", "शा ", "व आ", "तीन", "ण म", "ूर्", "ेल्", "द्य", "ेले", "ांत", "ा य", "ा ब", "ी म", "ंचे", "याव", "देण", "कृत", "ारण", "ेत ", "िवा", "वस्", "स्त", "ाची", "नवी", " अर", "थवा", "अथव", "ा त", " अथ", "अर्", "ती ", "पूर", "इतर", "र्ण", "ी क", "यत्", " इत", " शा", "रका", "तिष", "ण स", "तिक", "्रक", "्ध ", "रणा", " आल", "ेल ", "ाजि", " न्", "धात", "रून", "श्र", "असे", "ष्ठ", "ुक्", "ेश ", "तो ", "जिक", "े म"}, Mai: []string{"ाक ", " आ ", "प्र", "कार", "िका", "धिक", "ार ", "्रत", "ेँ ", "क अ", "्यक", "िक ", "्ति", " अध", "व्य", "अधि", "क स", " प्", "क्त", " व्", "केँ", "यक्", "तिक", "न्त", " स्", "हि ", "क व", "मे ", "बाक", "मान", " सम", "त्य", "क्ष", " छै", "छैक", "ेक ", "स्व", "त्र", "रत्", "्ये", "ष्ट", " अप", "येक", "र छ", "सँ ", "वा ", " एह", "ैक।", "ित ", " वि", " जा", "ति ", "्त्", "ट्र", "िके", "राष", "ाष्", " हो", "्ट्", " रा", "्य ", " सा", " अन", " कर", "अपन", "।प्", "कोन", "अछि", "वतन", "्वत", "तन्", "क आ", " अछ", "ताक", "था ", " पर", " वा", " को", "ार्", "एहि", "पन ", "ा आ", "नहि", "नो ", "समा", " मा", "्री", "रता", " नि", " का", "देश", " नह", "्षा", "क प", " दे", " कए", "रक ", " सं", "ोनो", "ि क", "न्य", "आ स", "छि ", "्त ", "ल ज", "्वा", "ारक", "ा स", "तथा", "ान्", " तथ", "्या", "आ अ", "ना ", "ँ क", "ान ", " जे", "जाए", "वार", "ता ", "ीय ", "र आ", "क ह", "करब", "िवा", "ामा", "र्व", " आओ", "्रस", "परि", "त क", "स्थ", "ा प", "ानव", "रीय", "धार", "्तर", "अन्", "घोष", "साम", "माज", "आओर", "ारण", " एक", "कएल", "ँ अ", "ओर ", "एबा", "स्त", "द्ध", "्रा", "ँ स", "रण ", " सभ", "ोषण", "क।प", "ाहि", "रबा", "क ज", "ा अ", "चित", "यक ", "कर ", "पूर", "रक्", "नक ", " घो", "षा ", "िक्", "सम्", "एहन", " उप", "र प", " अव", "एल ", "ूर्", "षणा", " हे", "त अ", "शिक", "तु ", "ाधि", "ेतु", "हेत", "हन ", "िमे", "र अ", "वक ", "ँ ए", "जाह", " शि", "आ प", "भाव", "े स", "्ध ", "क क", "ि ज", "प्त", "रूप", "निर", "िर्", " सक", "च्छ", "होए", "रति", "अनु", "सभ ", "हो ", "ेल ", "त आ", "चार", "ण स", "रा ", "त ह", "जिक", "ाजि", "र्ण", "्रक", "एत।", "ि आ", "र्य", "सभक", "ैक ", "क उ", " जन", "त स", "ाप्", "न प", "श्य", "न अ", "कृत", "हु ", "रसं", "री ", "राप", "ा व", "जे ", "क ब", "ि घ", " भा", "उद्", "ाएत", "्ण ", "विव", " उद", "वाध", "िसँ", "आ व", "ि स", "न व", "ारा", "ोएत", " ओ ", "य आ", "कान", "िश्", "न क", " दो", "णाक", " द्", "हिम", " अथ", "अथव", "ामे", "द्व", "ेश ", "ओ व", "ि अ", "क ए", "वास", " पू", "षाक", "त्त", "य प", " बी", "यता", "धक ", "ए स", "थवा", "ि द", "पर ", " भे", "जेँ", " कि", "कि ", "क ल", " रू", "विश", "न स", " ले", "सार", "ाके", "िष्", "रिव", "क र", "ास ", "ेओ ", "्थि", "केओ", "राज"}, Bho: []string{" के", "के ", "ार ", "े क", "कार", "धिक", "िका", "ओर ", "आओर", " आओ", " अध", "अधि", "े स", "ा क", "े अ", " हो", " सं", "र क", "र स", "ें ", " मे", "में", "िक ", " कर", "ा स", "र ह", " से", "से ", "रा ", "मान", " सम", "न क", "क्ष", "े ब", "नो ", " चा", "वे ", "ता ", "चाह", "ष्ट", " रा", "ति ", "्रा", "खे ", "राष", "ाष्", "प्र", " सा", " का", "ट्र", "े आ", " प्", " सक", " मा", "्ट्", " स्", "होख", " बा", "करे", "ि क", "ौनो", "त क", "था ", "कौन", "पन ", " जा", " कौ", "रे ", "ाति", "ला ", " ओक", "ेला", "तथा", "आपन", "्त ", " आप", "कर ", "हवे", "र म", " हव", " तथ", "सबह", "र आ", "ोखे", " ह।", "िर ", "े ओ", "केल", "सके", "हे ", " और", "ही ", "तिर", "त्र", "जा ", "ना ", "बहि", "।सब", "े च", " खा", "े म", " पर", "खात", "ान ", "र ब", "न स", "ावे", " लो", "षा ", "ाहे", "ी क", "ओकर", "ा आ", "माज", "ित ", "े ज", "ल ज", "मिल", "संग", "्षा", "ं क", " सब", "ा प", "और ", "रक्", "वे।", "िं ", "े ह", "ंत्", "ाज ", "स्व", "हिं", "नइख", "कान", "ो स", " जे", "समा", "क स", "लोग", "करा", "क्त", "्रत", "ला।", " नइ", "े। ", "ानव", "िया", "हु ", "इखे", "्र ", "रता", "्वत", "ानू", "े न", "ाम ", "नून", "ाही", "वतं", "पर ", "ी स", " ओ ", "े उ", "े व", "्री", "रीय", "स्थ", "तंत", "दी ", "ीय ", "े त", "र अ", "र प", "्य ", "साम", "बा।", " आद", "ून ", "। स", "व्य", "ा।स", "सभे", "भे ", "या ", " दे", "ा म", "े ख", " वि", " सु", "केह", "प्त", "योग", "ु क", "ोग ", "े द", "चार", "ादी", "ाप्", " दो", " या", "राप", "ल ह", "पूर", " मि", "तिक", "खल ", "यता", "्ति", " बि", "ए क", "आदि", "दिम", " ही", "हि ", "मी ", " नि", "र न", " इ ", "ेहु", "नवा", "ा ह", "री ", "ले ", " पा", "ाधि", " सह", " उप", "्या", " जर", "षण ", " सभ", "िमी", "देश", "े प", "म क", "जे ", "ाव ", " अप", "शिक", "ाजि", "जाद", "जिक", "े भ", "क आ", "्तर", "िक्", "ि म", "ेकर", "ुक्", "वाध", "गठन", " व्", "निय", "ठन ", "।के", "ामा", "रो ", " जी", "य क", "न म", "े ल", "न ह", "ास ", "ेश ", " शा", "घोष", "ंगठ", "िल ", " घो", "्षण", " पू", "े र", "ंरक", "संर", "उपय", "पयो", "हो ", "बा ", "ी ब", "्म ", "सब ", "दोस", "ा। ", " आज", "साथ", " शि", "आजा", " भी", " उच", "ने ", "चित", " अं", "र व", "ज क", "न आ", " ले", "नि ", "ार्", "कि ", "याह", "्थि"}, Nep: []string{"को ", " र ", "कार", "प्र", "ार ", "ने ", "िका", "क्त", "धिक", "्यक", " गर", "व्य", "्रत", " प्", "अधि", "्ति", " अध", " व्", "यक्", "मा ", "िक ", "त्य", "ाई ", "लाई", "न्त", "मान", " सम", "त्र", "गर्", "र्न", "क व", " वा", "्ने", "वा ", " स्", "रत्", "र स", "्ये", "तिल", "येक", "ेक ", "छ ।", "ो स", "ा स", "हरू", " वि", "क्ष", "्त्", "िला", " । ", "स्व", "हुन", "ति ", " हु", "ले ", " रा", " मा", "ष्ट", "समा", "वतन", "तन्", " छ ", "र छ", " सं", "्ट्", "ट्र", "ाष्", "ो अ", "राष", "्वत", "ुने", "नेछ", "हरु", "ान ", "ता ", "े अ", "्र ", " का", "िने", "ाको", "गरि", "े छ", "ना ", " अन", " नि", "रता", "नै ", " सा", "ित ", "तिक", "क स", "र र", "रू ", "ा अ", "था ", "स्त", "कुन", "ा र", "ुनै", " छै", "्त ", "छैन", "ा प", "ार्", "वार", "ा व", " पर", "तथा", " तथ", "का ", "्या", "एको", "रु ", "्षा", "माज", "रक्", "परि", "द्ध", "। प", " ला", "सको", "ामा", " यस", "ाहर", "ेछ ", "धार", "्रा", "ो प", "नि ", "देश", "भाव", "िवा", "्य ", "र ह", "र व", "र म", "सबै", "न अ", "े र", "न स", "रको", "अन्", "ताक", "ंरक", "संर", "्वा", " त्", "सम्", "री ", "ो व", "ा भ", "रहर", " कु", "्रि", "त र", "रिन", "श्य", "पनि", "ै व", "यस्", "ारा", "ानव", " शि", "ा त", "लाग", "रा ", "शिक", " सब", "ाउन", "िक्", "्न ", "ारक", "ा न", "रिय", "्यस", "द्व", "रति", "चार", " सह", "्षण", " सु", "ारम", "ुक्", "ुद्", "साम", "षा ", "ैन ", " अप", " भए", "बाट", "ुन ", " उप", "ान्", "ो आ", "्तर", "िय ", "कान", "ि र", "रूक", "द्द", "र प", "ाव ", "ो ल", "तो ", " पन", "ैन।", " आव", "ा ग", "।प्", "बै ", "ूर्", "िएक", "र त", "निज", "त्प", " भे", "जिक", "ेछ।", "िको", "्तो", "वाह", "त स", "ाट ", " अर", "ाजि", "्ध ", " उस", "रमा", "ात्", "र्य", "नको", "ाय ", "जको", "ित्", "ागि", " अभ", "न ग", "गि ", "ा म", " आध", "स्थ", " पा", "ारह", "घोष", "त्व", "यता", "ा क", "र्द", " मत", "विध", " सक", "सार", "परा", "युक", "राध", " घो", "णको", "अपर", "े स", "ारी", "।कु", " दि", " जन", "भेद", "रिव", "उसक", "क र", "र अ", "ि स", "ानु", "ो ह", "रुद", " छ।", "ूको", "रका", "नमा", " भन", "र्म", "हित", "पूर", "न्य", "क अ", "ा ब", "ो भ", "राज", "अनु", "ोषण", "षणा", "य र", " मन", " बि", "्धा", " दे", "निर", "ताह", "र उ", "यस ", "उने", "रण ", "विक"}, } var ethiopicLangs = langProfileList{ Amh: []string{"፡መብ", "ሰው፡", "ት፡አ", "ብት፡", "መብት", "፡ሰው", "፡አለ", "፡ወይ", "ወይም", "ይም፡", "ነት፡", "ንዱ፡", "አለው", "ለው።", "ዳንዱ", "ያንዳ", "ንዳን", "እያን", "ዱ፡ሰ", "ት፡መ", "፡እን", "፡የመ", "።እያ", "እንዲ", "፡ነጻ", "፡የተ", "ም፡በ", "ው፡የ", "ም፡የ", "፡የሚ", "ና፡በ", "ን፡የ", "፡የማ", "፡አይ", "ነጻነ", "ና፡የ", "ው፡በ", "ቶች፡", "ው።፡", "ሆነ፡", "ት፡የ", "፡በሚ", "፡መን", "ው።እ", "ትና፡", "ኀብረ", "ትን፡", "ውም፡", "ንኛው", "እኩል", "ብቻ፡", "ኛውም", "ንም፡", "፡ለመ", "፡ያለ", "ም፡ሰ", "ማንኛ", "መብቶ", "፡አገ", "ት፡በ", "ራዊ፡", "፡እኩ", "፡ለማ", "ለት፡", "በት፡", "ሆን፡", "መንግ", "፡በተ", "ረት፡", "ብቶች", "ጋብቻ", "ዎች፡", "ህንነ", "ጻነት", "ም፡እ", "ወንጀ", "፡ልዩ", "ሰብ፡", "ማንም", "ጠበቅ", "ኩል፡", "ደህን", "።ማን", "ነጻ፡", "ግኘት", "ማግኘ", "።፡እ", "፡የሆ", "፡ሁሉ", "ች፡በ", "፡በመ", "ሥራ፡", "፡ደህ", "ፈጸም", "ል፡መ", "ተግባ", "፡ድር", "ት፡ወ", "ው።ማ", "ፍርድ", "ርድ፡", "፡በሆ", "ር፡ወ", "በትም", "ትም፡", "ይነት", "ቸው፡", "ብ፡የ", "ነትና", "ቱን፡", "ሕግ፡", "ንና፡", "፡ሥራ", "የማግ", "፡መሠ", "ኘት፡", "፡ጊዜ", "ጻነቶ", "ነቶች", "በር፡", "በኀብ", "ዩነት", "ልዩነ", "፡በኀ", "፡ዓይ", "ዓይነ", "ችና፡", "ግባር", "ባር፡", "፡ደረ", "ነው።", "፡ነው", "ደረጃ", "ም።እ", "ም፡መ", "፡ወን", "ይማኖ", "ማኀበ", "ሃይማ", "፡ኑሮ", "መሠረ", "ሁሉ፡", "ነቱ፡", "ሌሎች", "ንግሥ", "በቅ፡", "የሆነ", "፡ይህ", "ንዲጠ", "ገር፡", "ተባበ", "ትክክ", "ጸም፡", "ር፡የ", "ዲጠበ", "ትም።", "ው፡ከ", "፡እያ", "ሩት፡", "ድርጅ", "፡ብቻ", "ና፡ለ", "ይገባ", "የመኖ", "፡ማን", "ንነት", "ቤተሰ", "ርጅት", "ት፡ድ", "፡መሰ", "እንደ", "፡አላ", "ብሔራ", "ት፡ለ", "ሔራዊ", "ርት፡", "ህርት", "ውን፡", "የሚያ", "ል።እ", "ሆኑ፡", "ምህር", "ትምህ", "በት።", "ለበት", "አለበ", "፡አስ", "ሎች፡", "ች፡የ", "፡በሕ", "ብረ፡", "፡ከሚ", "ን፡አ", "ት፡እ", "ን፡ወ", "ረግ፡", "በሆነ", "የኀብ", "፡የኀ", "መሆን", "፡መሆ", "ን፡መ", "፡ውሳ", "ንጀል", "ፈላጊ", "ህም፡", "ረታዊ", "ክለኛ", "ክክለ", "ታዊ፡", "ጀል፡", "ኑሮ፡", "።፡ይ", "ዓዊ፡", "ዜግነ", "ንዲሁ", "ዲሁም", "፡ማኀ", "ገሩ፡", "ር፡በ", "ብዓዊ", "አገሩ", "ሁም፡", "ና፡ነ", "ሰብዓ", "የተባ", "ጅት፡", "ማኖት", "ር፡አ", "ንግስ", "ኖት፡", "በሕግ", "መኖር", "ው፡ያ", "መጠበ", "ረጃ፡", "፡በማ", "ነትን", "ብነት", "ገብነ", "፡ገብ", "መፈጸ", "፡ሁኔ", "ሁኔታ", "ን፡ለ", "ው፡ለ", "፡ተግ", "፡የአ", "፡ይገ", "፡በአ", "ችን፡", "፡ትም", "ነቱን", "፡ቢሆ", "ቢሆን", "ጊዜ፡", "ረ፡ሰ", "ት፡ጊ", "ሰቡ፡", "ምበት", "ላቸው", "አላቸ", "በነጻ", "፡በነ", "አንድ", "ቅ፡መ", "፡መጠ", "ት፡ይ", "መሰረ", "ጥ፡የ", "ስጥ፡", "ፈጸመ", "ውስጥ", "ንድ፡", "፡ውስ", "፡በግ", "፡ሆኖ", "ሉ፡በ", "፡ጋብ", "ንስ፡", "ንነቱ", "መው፡", "የሚፈ", "አይፈ", "ብረሰ", "ነ፡መ", "፡የሃ", "ም፡ከ", "ች፡እ", "ስት፡", "ሙሉ፡", "አገር", "ሆኖ፡", "ደረግ", "ኢንተ", "ንተር", "ተርና", "ርናሽ", "ናሽና", "ሽናል"}, Tir: []string{" መሰ", " ሰብ", "ሰብ ", " ኦለ", "ትን ", "ኦለዎ", "ናይ ", " ናይ", " ኦብ", "ዎ፡፡", "ለዎ፡", "ሕድሕ", "ኦብ ", "ድሕድ", "ሕድ ", "መሰል", "ውን ", "ሰል ", "ድ ሰ", "ይ ም", "ል ኦ", "ካብ ", "፡ሕድ", "፡፡ሕ", " ወይ", "ወይ ", " መን", " ነፃ", "ን መ", "ዝኾነ", "፡፡ ", "ታት ", "ብ ዝ", "ነት ", "ን ነ", " ካብ", "መሰላ", "ነፃነ", " እዚ", "ብ መ", "ኦዊ ", "ታትን", "መንግ", "ዊ መ", " እን", "ብ ብ", "ንግስ", "ት ኦ", "ሰላት", "ን ም", "ኾነ ", "እዚ ", "ብኦዊ", "ሰብኦ", "ን ኦ", "ን፡፡", " ንክ", " ዝኾ", "ን ን", " ምር", "ኹን ", "ይኹን", " ይኹ", "ምርካ", "ርካብ", " ኦይ", " ሃገ", "ሕጊ ", "ራት ", "ሎም ", " ብሕ", "ነ ይ", " ከም", "ማዕሪ", "ይ ብ", " ንም", " ዝተ", "ርን ", "ን ብ", "ራዊ ", " ፣ ", "ብ ሕ", "ላትን", "ብ ኦ", "ማሕበ", "ነታት", " ኦድ", "ዕሪ ", " ማዕ", "ስታት", "ግስታ", "’ውን", "ት መ", "ን ዝ", "ታዊ ", "፣ ብ", " ማሕ", "ነትን", "ንጋገ", "ድንጋ", " ስለ", " ድን", "ስራሕ", "ኩሎም", "ሕበራ", "ኦት ", "ን ሰ", "ዓለም", "ፃነታ", " ብም", "ት ወ", "መሰሪ", " ስራ", "ፃነት", "ተሰብ", "ካልኦ", "ልኦት", "ን ሓ", "ዓት ", "ዋን ", "ቡራት", "ሕቡራ", " ሕቡ", "ብሕጊ", "ድብ ", "ውድብ", " ውድ", "ብን ", "ትምህ", "ነቱ ", "ዚ ድ", "፣ ኦ", "ሃገራ", " ኩሎ", "ለዎም", "ምህር", "ም፡፡", "ም መ", " ብዝ", "ምኡ’", "ኡ’ው", "እንት", " ዓለ", " ብዘ", "በራዊ", " ሓለ", "ሓለዋ", "ዎም፡", "ቱ ን", "ት ብ", "ጋገ ", "ነፃ ", " ምዃ", "ን ዘ", " ገበ", "ት፣ ", " ትም", "ኸውን", "ራሕ ", " ዘይ", "ህርቲ", "ርቲ ", "ከምኡ", "ሃይማ", " ምስ", "ነ፣ ", "እንተ", " ስር", "ስርዓ", "ርዓት", "ባት ", "ይማኖ", "ሰሪታ", "ን ና", " ክብ", "ልን ", " ብማ", "ገሩ ", " ህዝ", "ላት ", "ት ና", "ይ ኦ", "ዕሊ ", "ለዝኾ", "ስለዝ", "ሪተሰ", "ብሪተ", "ሕብሪ", " ሕብ", "ን ተ", "ኾነ፣", "በን ", "ሃገሩ", "ገ እ", "ኻዊ ", " ሃይ", "እን ", "ሪጋገ", " ምሕ", "ን እ", "ለኻዊ", "ር፣ ", " ብሓ", " ብሃ", " ክኸ", "ክኸው", "ብ ዘ", "ዃኑ ", "ዊ ክ", "ምን ", "ሓደ ", "ምዃኑ", "ም ን", "ት እ", "ዊ ወ", "ታውን", " ሕድ", "ብዘይ", " ሕጊ", "ት ን", " ልዕ", " ካል", "ን ካ", "ሰባት", "ን ስ", "ናን ", "ቤተሰ", "ሕን ", "ለምለ", "ት ስ", "ምለኻ", "፣ ከ", "ተደን", "ባል ", "ኦድላ", "እዋን", " እዋ", "ደቂ ", " ደቂ", " ሰባ", "ፃን ", "ነፃን", "ግስቲ", "፣ ን", "ዚ ብ", "ስቲ ", " ቤተ", "ምጥሓ", " ክሳ", " ነዚ", "ን ክ", "ነቲ ", " ነቲ", "ነዚ ", " ምእ", "ብነፃ", " ምዕ", "ምዕባ", "ዕባለ", "ክሳብ", " ብነ", "ል እ", "ዚ መ", "ልዕሊ", "ክብሩ", "ብማዕ", "ሳብ ", "ህይወ", "ኦቶም", "ምስ ", "ንገገ", "እምነ", " እም", "ድ ኦ", "ቶም ", "ቲ ክ", "ፍትሓ", "ለም ", " ፍት", "ብ ን", "ን ዓ", "ራውን", "ሓፈሻ", "ደንገ", "ም ብ", "ትዮን", " ዝሰ", "ዝተደ", "ሉ መ", "ብ ና", "ጊ ካ", "ልዎ ", "ኦባል", " ኦባ", "ድልዎ", "ን ድ", "ኦድል", "ዜግነ", "ላውን", " ድሕ"}, } var hebrewLangs = langProfileList{ Heb: []string{"ות ", "ים ", "כל ", "ת ה", " כל", "דם ", "אדם", "יות", " של", " זכ", "ל א", " אד", "של ", "ל ה", "אי ", "ויו", "כאי", "ת ו", "י ל", "זכא", " ול", "לא ", " וה", "רות", "זכו", "ית ", "ירו", "ין ", " או", "ם ז", " לא", " הח", "או ", " הא", " וב", " המ", "חיר", "ת ל", "יים", "ם ל", "את ", "ת ב", "ת ש", "רה ", "ון ", " לה", "נה ", "כוי", "ותי", "ה ש", "ו ל", "ו ב", " הו", "ת א", "ם ב", "ם ו", "תו ", " את", "לה ", "ני ", "אומ", " במ", "דה ", "א י", "ה ה", "ה ב", "על ", "ם ה", " על", "הוא", "וך ", "ה א", "בוד", "וד ", "ואי", "נות", "ה ו", "ת כ", "י ה", "יה ", "ם ש", "ו ו", " שה", "ם א", "ו כ", "ינו", "ן ה", " שו", "שוו", "החי", "כות", "לאו", "בות", "דות", "ה ל", "לית", "ה מ", " בי", "וה ", "וא ", " הי", " לפ", "ור ", " לב", "ל ב", "בחי", "הכר", "לו ", "ת מ", "ן ש", "החו", "ה כ", " בכ", "ומי", "בין", "ן ו", "ן ל", "רוי", "פלי", "ולה", "ליה", " הז", "חינ", " לע", " בנ", "יבו", "חוק", " אח", "חבר", " יה", " חי", "מי ", "ירה", " חו", "האד", "ווה", "חופ", "ופש", "וק ", "נו ", "יו ", "ל מ", "מדי", "כבו", " הע", "נוך", " הד", "י א", "י ו", " הכ", "בני", "עה ", "ו א", "רצו", "דינ", "בזכ", "מות", "יפו", " אל", "סוד", "לם ", "איש", "רך ", " אי", "הגנ", "הם ", "פי ", "ם כ", "חות", "ל ו", "איל", "ילי", "תיה", "כלל", "אלי", "יסו", "האו", "זש ", " בא", "ר א", "ו ה", "זו ", "אחר", " הפ", " בע", " בז", "משפ", " בה", " לח", "דרך", "ומו", " בח", " דר", " מע", "ל י", "תוך", "מנו", " בש", "לל ", "רבו", " למ", "פני", " לק", "תם ", "שה ", "שית", "ללא", "לפי", "היה", "מעש", "דו ", "שות", "להג", "וצי", "שוא", "אין", "וי ", "תי ", "ונו", "ליל", " לו", "חיי", "ל ז", " זו", "היא", "יא ", "נתו", "ה פ", "לת ", "ובי", " לכ", "ך ה", "יל ", "י ש", "שיו", "ן ב", "עול", "המד", "ודה", "ולם", " ומ", "א ה", "ולא", " בת", "הכל", " סו", " מש", " עב", "סוצ", "ארצ", " אר", "ציא", "ד א", "לחי", "הן ", "יחס", " יח", "יאל", "הזכ", "ם נ", " שר", "בו ", "עבו", "היס", " לי", "ת ז", "פול", "יהי", "גבל", "תיו", "המא", "שהי", "א ל", "מאו", " יו", "ותו", "ישי", "גנה", "פשי", "וחד", "יהם", "חרו", "לכל", "ידה", "עות", "ונה", "ום ", "חה ", "עם ", "שרי", "ם י", "שר ", "והח", " אש", " הג", "ק ב", "הפל", "נשו", "הגב", "ד ו"}, Ydd: []string{" פֿ", "ון ", "ער ", "ן א", " אַ", "דער", "ט א", " או", "און", "אַר", "ען ", "פֿו", " אױ", " אי", "ן פ", "ֿון", "רעכ", " דע", " רע", "עכט", "פֿא", "ן ד", "כט ", " די", "די ", "אַ ", "אױף", "ױף ", "ֿאַ", " זײ", " גע", "אַל", "אָס", " אָ", "ונג", " הא", "האָ", "זײַ", " מע", "אָל", "נג ", "װאָ", "ַן ", "אַנ", "רײַ", " װא", "ָס ", "באַ", " יע", "יעד", "ניט", "ן ז", "ר א", "יט ", "אָט", "אָר", "עדע", "מען", "זאָ", "ָט ", "פֿר", "ײַן", " בא", "טן ", "אין", "ן ג", "ין ", "ן װ", "נאַ", "ֿרײ", "ר ה", " זא", "לעכ", "ע א", "אָד", "ַ ר", "ענט", "אַצ", "ַצי", "אָנ", " צו", " װע", "יז ", "מענ", "ָדע", "איז", "ן מ", "ַלע", "בן ", "ר מ", "טער", " מי", " פּ", "מיט", "טלע", "ָל ", "עכע", "ײט ", "ַנד", "ע פ", "לע ", "געז", "לאַ", "אַפ", "עזע", "ראַ", " ני", "ַפֿ", "רן ", "ײַנ", "נען", "טיק", "כע ", "פֿע", "יע ", "הײט", "ַהײ", "נטש", "ײַה", "ט ד", "ן ב", "לן ", "ן נ", "פֿט", "שאַ", "רונ", " זי", " װי", "ט פ", " דא", "טאָ", "דיק", "קן ", "ר פ", "ר ג", "יקן", "אָב", "ף א", "אַק", "קער", "ערע", "כער", "י פ", "ות ", "ַרב", "פּר", "קט ", "עם ", "יאָ", "ציע", "ציא", "יט־", "צו ", "ישע", " קײ", "ן ק", "סער", " גל", "דאָ", "ונט", "גן ", "ַרא", "יקע", " טא", "ענע", "לײַ", "שן ", "ַנע", "יק ", "טאַ", "ס א", "עט ", "נגע", "ט־א", "ָנא", "־אי", "יקט", "נטע", "ײנע", "־ני", "ָר ", "װער", "י א", "ן י", "יך ", "זיך", "ער־", "ערן", "אױס", "ָבן", "נדע", "ָסע", "װי ", "ֿעל", "ר־נ", "ן ה", " גר", "גלײ", " צי", "ראָ", "זעל", "עלק", "נד ", "לקע", "אָפ", " כּ", "ט װ", "ג א", " נא", "ט צ", "ר ד", "עס ", "דור", "גען", "קע ", "ג פ", "ֿט ", "ן ל", "שע ", "ר ז", "רע ", "ײטן", "פּע", "קלא", "קײט", "יטע", "ים ", "ס ז", "ײַ ", " דו", "אַט", " לא", "ר װ", "קײנ", "עלש", "י ד", "לשא", "יות", "נט ", "ַרז", "ע ר", "ל ז", "אַמ", "ן ש", " שו", "אינ", "נטל", " הי", "בעט", "ָפּ", "ף פ", "ײַכ", "בער", "ן צ", "מאָ", " שט", " לע", "גער", "ורך", "רך ", "נעם", "גרו", "פֿן", "לער", "װעל", "ע מ", "ום ", "שפּ", "ך א", "יונ", "רבע", "עפֿ", "טעט", "ן כ", "רעס", "ערצ", "ז א", "עמע", "ם א", "שטע", "כן ", "רט ", "י ג", "סן ", "נער", "ליט", "ט ז", "נעמ", "ּרא", "היו", "אַש", "ת װ", "אומ", "ק א", "יבע", "ֿן ", "ץ א", "פֿי", "ײן ", "ם ט"}, } whatlanggo-1.0.1/lang_test.go000066400000000000000000000100721343770452200161620ustar00rootroot00000000000000package whatlanggo import "testing" func TestCodeToLang(t *testing.T) { tests := map[string]Lang{ "afr": Afr, "aka": Aka, "amh": Amh, "arb": Arb, "azj": Azj, "bel": Bel, "ben": Ben, "bho": Bho, "bul": Bul, "ceb": Ceb, "ces": Ces, "cmn": Cmn, "dan": Dan, "deu": Deu, "ell": Ell, "eng": Eng, "epo": Epo, "est": Est, "fin": Fin, "fra": Fra, "guj": Guj, "hat": Hat, "hau": Hau, "heb": Heb, "hin": Hin, "hrv": Hrv, "hun": Hun, "ibo": Ibo, "ilo": Ilo, "ind": Ind, "ita": Ita, "jav": Jav, "jpn": Jpn, "kan": Kan, "kat": Kat, "khm": Khm, "kin": Kin, "kor": Kor, "kur": Kur, "lav": Lav, "lit": Lit, "mai": Mai, "mal": Mal, "mar": Mar, "mkd": Mkd, "mlg": Mlg, "mya": Mya, "nep": Nep, "nld": Nld, "nno": Nno, "nob": Nob, "nya": Nya, "ori": Ori, "orm": Orm, "pan": Pan, "pes": Pes, "pol": Pol, "por": Por, "ron": Ron, "run": Run, "rus": Rus, "sin": Sin, "skr": Skr, "slv": Slv, "sna": Sna, "som": Som, "spa": Spa, "srp": Srp, "swe": Swe, "tam": Tam, "tel": Tel, "tgl": Tgl, "tha": Tha, "tir": Tir, "tuk": Tuk, "tur": Tur, "uig": Uig, "ukr": Ukr, "urd": Urd, "uzb": Uzb, "vie": Vie, "ydd": Ydd, "yor": Yor, "zul": Zul, "xxx": -1, } for codeStr, lang := range tests { got := CodeToLang(codeStr) if got != lang { t.Fatalf("%s: want %v got %v", codeStr, lang, got) } } } func TestLangToString(t *testing.T) { tests := map[Lang]string{ Afr: "afr", Aka: "aka", Amh: "amh", Arb: "arb", Azj: "azj", Bel: "bel", Ben: "ben", Bho: "bho", Bul: "bul", Ceb: "ceb", Ces: "ces", Cmn: "cmn", Dan: "dan", Deu: "deu", Ell: "ell", Eng: "eng", Epo: "epo", Est: "est", Fin: "fin", Fra: "fra", Guj: "guj", Hat: "hat", Hau: "hau", Heb: "heb", Hin: "hin", Hrv: "hrv", Hun: "hun", Ibo: "ibo", Ilo: "ilo", Ind: "ind", Ita: "ita", Jav: "jav", Jpn: "jpn", Kan: "kan", Kat: "kat", Khm: "khm", Kin: "kin", Kor: "kor", Kur: "kur", Lav: "lav", Lit: "lit", Mai: "mai", Mal: "mal", Mar: "mar", Mkd: "mkd", Mlg: "mlg", Mya: "mya", Nep: "nep", Nld: "nld", Nno: "nno", Nob: "nob", Nya: "nya", Ori: "ori", Orm: "orm", Pan: "pan", Pes: "pes", Pol: "pol", Por: "por", Ron: "ron", Run: "run", Rus: "rus", Sin: "sin", Skr: "skr", Slv: "slv", Sna: "sna", Som: "som", Spa: "spa", Srp: "srp", Swe: "swe", Tam: "tam", Tel: "tel", Tgl: "tgl", Tha: "tha", Tir: "tir", Tuk: "tuk", Tur: "tur", Uig: "uig", Ukr: "ukr", Urd: "urd", Uzb: "uzb", Vie: "vie", Ydd: "ydd", Yor: "yor", Zul: "zul", -1: "", } for lang, codeStr := range tests { got := lang.Iso6393() if got != codeStr { t.Fatalf("%d: want %s got %s", lang, codeStr, got) } } } func TestLangToStringShort(t *testing.T) { tests := map[Lang]string{ Afr: "af", Aka: "ak", Amh: "am", Arb: "ar", Azj: "az", Bel: "be", Ben: "bn", Bho: "bh", Bul: "bg", Ceb: "", Ces: "cs", Cmn: "zh", Dan: "da", Deu: "de", Ell: "el", Eng: "en", Epo: "eo", Est: "et", Fin: "fi", Fra: "fr", Guj: "gu", Hat: "ht", Hau: "ha", Heb: "he", Hin: "hi", Hrv: "hr", Hun: "hu", Ibo: "ig", Ilo: "", Ind: "id", Ita: "it", Jav: "jv", Jpn: "ja", Kan: "kn", Kat: "ka", Khm: "km", Kin: "rw", Kor: "ko", Kur: "ku", Lav: "lv", Lit: "lt", Mai: "", Mal: "ml", Mar: "mr", Mkd: "mk", Mlg: "mg", Mya: "my", Nep: "ne", Nld: "nl", Nno: "nn", Nob: "nb", Nya: "ny", Ori: "or", Orm: "om", Pan: "pa", Pes: "", Pol: "pl", Por: "pt", Ron: "ro", Run: "rn", Rus: "ru", Sin: "si", Skr: "", Slv: "sl", Sna: "sn", Som: "so", Spa: "es", Srp: "sr", Swe: "sv", Tam: "ta", Tel: "te", Tgl: "tl", Tha: "th", Tir: "ti", Tuk: "tk", Tur: "tr", Uig: "ug", Ukr: "uk", Urd: "ur", Uzb: "uz", Vie: "vi", Ydd: "", Yor: "yo", Zul: "zu", -1: "", } for lang, codeStr := range tests { got := lang.Iso6391() if got != codeStr { t.Fatalf("%d: want %s got %s", lang, codeStr, got) } } } whatlanggo-1.0.1/options.go000066400000000000000000000003451343770452200156770ustar00rootroot00000000000000package whatlanggo // Options represents options that can be set when detecting a language or/and script such // blacklisting languages to skip checking. type Options struct { Whitelist map[Lang]bool Blacklist map[Lang]bool } whatlanggo-1.0.1/script.go000066400000000000000000000114301343770452200155050ustar00rootroot00000000000000package whatlanggo import "unicode" type scriptCounter struct { checkFunc func(r rune) bool script *unicode.RangeTable count int } // Scripts is the set of Unicode script tables. var Scripts = map[*unicode.RangeTable]string{ unicode.Arabic: "Arabic", unicode.Bengali: "Bengali", unicode.Cyrillic: "Cyrillic", unicode.Ethiopic: "Ethiopic", unicode.Devanagari: "Devanagari", unicode.Han: "Han", unicode.Georgian: "Georgian", unicode.Greek: "Greek", unicode.Gujarati: "Gujarati", unicode.Gurmukhi: "Gurmukhi", unicode.Hangul: "Hangul", unicode.Hebrew: "Hebrew", unicode.Hiragana: "Hiragana", unicode.Kannada: "Kannada", unicode.Katakana: "Katakana", unicode.Khmer: "Khmer", unicode.Latin: "Latin", unicode.Malayalam: "Malayalam", unicode.Myanmar: "Myanmar", unicode.Oriya: "Oriya", unicode.Sinhala: "Sinhala", unicode.Tamil: "Tamil", unicode.Telugu: "Telugu", unicode.Thai: "Thai", } // DetectScript returns only the script of the given text. func DetectScript(text string) *unicode.RangeTable { halfLen := len(text) / 2 scriptCounter := []scriptCounter{ {isLatin, unicode.Latin, 0}, {isCyrillic, unicode.Cyrillic, 0}, {isArabic, unicode.Arabic, 0}, {isDevanagari, unicode.Devanagari, 0}, {isHiraganaKatakana, _HiraganaKatakana, 0}, {isEthiopic, unicode.Ethiopic, 0}, {isHebrew, unicode.Hebrew, 0}, {isBengali, unicode.Bengali, 0}, {isGeorgian, unicode.Georgian, 0}, {isHan, unicode.Han, 0}, {isHangul, unicode.Hangul, 0}, {isGreek, unicode.Greek, 0}, {isKannada, unicode.Kannada, 0}, {isTamil, unicode.Tamil, 0}, {isThai, unicode.Thai, 0}, {isGujarati, unicode.Gujarati, 0}, {isGurmukhi, unicode.Gurmukhi, 0}, {isTelugu, unicode.Telugu, 0}, {isMalayalam, unicode.Malayalam, 0}, {isOriya, unicode.Oriya, 0}, {isMyanmar, unicode.Myanmar, 0}, {isSinhala, unicode.Sinhala, 0}, {isKhmer, unicode.Khmer, 0}, } for _, ch := range text { if isStopChar(ch) { continue } for i, sc := range scriptCounter { if sc.checkFunc(ch) { scriptCounter[i].count++ if scriptCounter[i].count > halfLen { return sc.script } //if script is found, move it closer to the front so that it be checked first. if i > 0 { scriptCounter[i], scriptCounter[i-1] = scriptCounter[i-1], scriptCounter[i] } } } } //find the script that occurs the most in the text and return it. jpCount := 0 max := 0 maxScript := &unicode.RangeTable{} for _, script := range scriptCounter { if script.count > max { max = script.count maxScript = script.script if script.script == _HiraganaKatakana { jpCount = max } } } switch { case max == 0: //if no valid script is detected, return nil. return nil case max != 0 && (maxScript == unicode.Han && jpCount > 0): // If Hiragana or Katakana is included, even if judged as Mandarin, // it is regarded as Japanese. Japanese uses Kanji (unicode.Han) // in addition to Hiragana and Katakana. return _HiraganaKatakana default: return maxScript } } var isCyrillic = func(r rune) bool { return unicode.Is(unicode.Cyrillic, r) } var isLatin = func(r rune) bool { return unicode.Is(unicode.Latin, r) } var isArabic = func(r rune) bool { return unicode.Is(unicode.Arabic, r) } var isDevanagari = func(r rune) bool { return unicode.Is(unicode.Devanagari, r) } var isEthiopic = func(r rune) bool { return unicode.Is(unicode.Ethiopic, r) } var isHebrew = func(r rune) bool { return unicode.Is(unicode.Hebrew, r) } var isHan = func(r rune) bool { return unicode.Is(unicode.Han, r) } var isBengali = func(r rune) bool { return unicode.Is(unicode.Bengali, r) } var isHiraganaKatakana = func(r rune) bool { return unicode.Is(_HiraganaKatakana, r) } var isHangul = func(r rune) bool { return unicode.Is(unicode.Hangul, r) } var isGreek = func(r rune) bool { return unicode.Is(unicode.Greek, r) } var isKannada = func(r rune) bool { return unicode.Is(unicode.Kannada, r) } var isTamil = func(r rune) bool { return unicode.Is(unicode.Tamil, r) } var isThai = func(r rune) bool { return unicode.Is(unicode.Thai, r) } var isGujarati = func(r rune) bool { return unicode.Is(unicode.Gujarati, r) } var isGurmukhi = func(r rune) bool { return unicode.Is(unicode.Gurmukhi, r) } var isTelugu = func(r rune) bool { return unicode.Is(unicode.Telugu, r) } var isMalayalam = func(r rune) bool { return unicode.Is(unicode.Malayalam, r) } var isOriya = func(r rune) bool { return unicode.Is(unicode.Oriya, r) } var isMyanmar = func(r rune) bool { return unicode.Is(unicode.Myanmar, r) } var isSinhala = func(r rune) bool { return unicode.Is(unicode.Sinhala, r) } var isKhmer = func(r rune) bool { return unicode.Is(unicode.Khmer, r) } var isGeorgian = func(r rune) bool { return unicode.Is(unicode.Georgian, r) } whatlanggo-1.0.1/script_test.go000066400000000000000000000111011343770452200165370ustar00rootroot00000000000000package whatlanggo import ( "testing" "unicode" ) func TestDetectScript(t *testing.T) { tests := map[string]*unicode.RangeTable{ "123456789-=?": nil, "Hello, world!": unicode.Latin, "Привет всем!": unicode.Cyrillic, "ქართული ენა მსოფლიო ": unicode.Georgian, "県見夜上温国阪題富販": unicode.Han, " ككل حوالي 1.6، ومعظم الناس ": unicode.Arabic, "हिमालयी वन चिड़िया (जूथेरा सालिमअली) चिड़िया की एक प्रजाति है": unicode.Devanagari, "היסטוריה והתפתחות של האלפבית העברי": unicode.Hebrew, "የኢትዮጵያ ፌዴራላዊ ዴሞክራሲያዊሪፐብሊክ": unicode.Ethiopic, "Привет! Текст на русском with some English.": unicode.Cyrillic, "Russian word любовь means love.": unicode.Latin, "আমি ভালো আছি, ধন্যবাদ!": unicode.Bengali, } for text, want := range tests { got := DetectScript(text) if want != got { t.Fatalf("%s want %s got %s", text, Scripts[want], Scripts[got]) } } } func TestIsLatin(t *testing.T) { tests := map[rune]bool{ 'z': true, 'A': true, 'č': true, 'š': true, 'Ĵ': true, 'ж': false, } for r, want := range tests { got := isLatin(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsEthiopic(t *testing.T) { tests := map[rune]bool{ 'ፚ': true, 'ᎀ': true, 'а': false, 'L': false, } for r, want := range tests { got := isEthiopic(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsGeorgian(t *testing.T) { tests := map[rune]bool{ 'რ': true, 'Я': false, } for r, want := range tests { got := isGeorgian(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsBengali(t *testing.T) { tests := map[rune]bool{ 'а': false, 'ই': true, } for r, want := range tests { got := isBengali(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsHiraganaKatakana(t *testing.T) { tests := map[rune]bool{ 'カ': true, 'Ґ': false, 'エ': true, 'ᄁ': false, 'ひ': true, 'Ꙕ': false, 'ゐ': true, 'ф': false, } for r, want := range tests { got := isHiraganaKatakana(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsHangul(t *testing.T) { tests := map[rune]bool{ 'ᄁ': true, 't': false, } for r, want := range tests { got := isHangul(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsGreek(t *testing.T) { tests := map[rune]bool{ 'φ': true, 'ф': false, } for r, want := range tests { got := isGreek(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsKannada(t *testing.T) { tests := map[rune]bool{ 'ಡ': true, 'S': false, } for r, want := range tests { got := isKannada(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsTamil(t *testing.T) { tests := map[rune]bool{ 'ஐ': true, 'Ж': false, } for r, want := range tests { got := isTamil(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsThai(t *testing.T) { tests := map[rune]bool{ 'ก': true, '๛': true, 'Ґ': false, } for r, want := range tests { got := isThai(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsGujarati(t *testing.T) { tests := map[rune]bool{ 'ઁ': true, '૱': true, 'l': false, } for r, want := range tests { got := isGujarati(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsGurmukhi(t *testing.T) { tests := map[rune]bool{ 'ਁ': true, 'ੴ': true, 'Ж': false, } for r, want := range tests { got := isGurmukhi(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsTelugu(t *testing.T) { tests := map[rune]bool{ 'ఁ': true, '౿': true, 'l': false, } for r, want := range tests { got := isTelugu(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } func TestIsOriya(t *testing.T) { tests := map[rune]bool{ 'ଐ': true, '୷': true, 'l': false, } for r, want := range tests { got := isOriya(r) if want != got { t.Fatalf("%#U want %t got %t", r, want, got) } } } whatlanggo-1.0.1/testdata/000077500000000000000000000000001343770452200154645ustar00rootroot00000000000000whatlanggo-1.0.1/testdata/examples.json000066400000000000000000001652671343770452200202160ustar00rootroot00000000000000{ "cmn": "民國卅八年( 1949年 ), 從南京經 廣州 、 香港返回 香日德。 1950年6月 ,受十世班禪派遣, 前往西安代表班禪向彭德懷投誠 。 1951年 ,隨同十世班禪赴 北京 ,同年代表班禪列席代表資格到北京參與了和平解放西藏的談判。", "spa": "Y así mismo, aunque no son tan ágiles en el suelo como el vampiro común, son muy competentes al escalar por las ramas.", "eng": "Showing that even in the modern warfare of the 1930s and 1940s, the dilapidated fortifications still had defensive usefulness.", "hin": "उन्होंने बताया कि जेब में 14 हजार रूपए थे और जेब उस वक्त कटी जब वे वहां पर हुए एक हादसे में घायल युवक का हालचाल पूछने के लिए अपनी ग़ाडी से उतरे।", "arb": "كريستيانو رونالدو دوس سانتوس أفيرو، المعروف بكريستيانو رونالدو. هو لاعب كرة قدم برتغالي يلعب في مركز الجناح الأيسر أو كمهاجم بنادي ريال مدريد الإسباني الذي يشارك في", "rus": "Происхождение названия Село в советское время в официальных документах на русском языке именовалось «Возрожденовка» Акт проверки Конгрессовского сахарного комбината.", "ben": "যদিও চার্লস অনেক যুদ্ধে জড়িত ছিলেন, কিন্তু তিনি সব সময় তাঁর রাজ্যের মধ্যে শান্তি বজায় রাখার চেষ্টা করেছেন।", "por": "Aliás, no dia 8, antes da estreia do filme no mercado latino, o produtor Luiz Carlos Barreto, de 81 anos, pai do diretor, começa em 52 municípios gaúchos que não têm cinemas o seu projeto itinerante Roda Brasil.", "fra": "La CGT avait d'ailleurs critiqué l'avis de la Commission de garanties qui marquait, selon elle, le début d'\"un processus sans fin d'allongement de la durée de cotisation pour tous les salariés\" qui passerait ensuite à 42 ans en 2020.", "deu": "Es ist die Zeit des Sommers, des üppigen Wachstums, des Eintritts in die Pubertät und des Erwachens der Sexualität.", "ukr": "Середньовічний Львів був важливим політичним, економічним і культурним центром західної Русі.", "kat": "მასალა ვიკიპედიიდან — თავისუფალი ენციკლოპედია", "jpn": "Rust(ラスト)は並列かつマルチパラダイムのプログラミング言語である", "heb": "האקדמיה ללשון העברית", "ydd": "מענטשן איבער דער װעלט, בעיקר פֿונעם אַשכנזישן אָפּשטאַם", "pol": "W języku polskim opozycja spółgłosek miękkich i twardych stała się cechą istotną.", "amh": "አዲስ ጽሑፍ ለመጻፍ ወይንም ነባር ጽሑፍ ለማስተካከል ደፍሮ መሞከር ጥሩ ልምድ ነው። ከሌሎች ውክፔዲያዎች የተተረጎሙ ጽሑፎች እንዲያቀርቡ ይበረታታሉ። ለዚህ ተግባር እነዚህን መዝገበ ቃላት ማማከር ይችላሉ ። የሚያቀርቡት ጽሑፍ ያልተሟላ ወይንም ያልተጠናቀቀ ቢሆንም እንኳ መጨነቅ አያስፈልግም። ጅምር ጽሑፍ በተፈለገ ጊዜ ሊሻሻል ይችላልና። ", "tir": "ኤርትራ ኤርትራ ኤርትራ፡ በዓል ደማ እናልቀሰ ተደምሲሱ፡ መስዋእታ ብሓርነት ተደቢሱ። መዋእል ነኺሳ ኣብ ዕላማ፡ ትእምርቲ ጽንዓት ኰይኑ ስማ፡ ", "epo": "Estas vere tre malfacile verki facilajn tekstojn, do tio ne estas tasko por komencantoj, sed rekompence vi havos multajn legantojn.", "jav": "Basa Jawa dadi salah sijiné panyumbang sing gedhé dhéwé kanggo panuwuhané basa Indonésia. Sanadyan dudu basa resmi ing pamaréntahan, basa Jawa nduwé prabawa luwih akèh tinimbang basa-basa laladan liyané kayata ing kosakata, lan istilah-istilah sing kadhangkala nganggo tembung Jawa.", "kor": "늑대의 속은 개속에 속하며, 회색 늑대는 더 작은 아속인 코요테나 황금자칼과 비교하여 형태학적으로 몸집이 큰 먹이를 사냥하는 데 갖춰주었고 좀 더 집단적인 성격을 갖추며, 고도의 의사소통을 갖추어서 전문종으로 분류한다", "ita": "Giocò un ruolo di grande importanza nel movimento comunista internazionale con l'avvio di un processo di distanziamento dall'Unione Sovietica e l'elaborazione di un modello alternativo che prese il nome di eurocomunismo.", "nob": "Han reiste til Bergen for å få arbeidet sine vurdert av biskop Jacob Neumann. Denne ble svært imponert over språkarbeidet, og deler av arbeidet ble trykt i to nummer av Bergens Stiftstidende i 1841. Kontakten med biskop Neumann ble inngangsbilletten til Det kgl. Norske Videnskabers Selskab og raus pengestøtte som gjorde den omfattende reisingen mulig.", "nno": "I perioden frå svartedauden til reformasjonen i 1536 gjekk norsk språk gjennom ein periode med store endringar og forenklingar. Ei viktig drivkraft i språkendringane i perioden var kontakten med hanseatiske handelsmenn, det vil seie nordtyskarar, og deira nedertyske språk. Ikkje minst gjeld det ordtilfanget, som i stor grad vart bytta ut. Skandinavar og nordtyskarar kunne såleis lettare forstå kvarandre, men med det resultatet at avstanden til dei øynordiske språka islandsk og færøysk voks, og det nordiske språkområdet vart delt.", "dan": "Efter adskillige ødelæggende luftangreb trak begge sider sig tilbage fra kampområdet, uden at nogen af siderne havde opnået en klar sejr.", "swe": "I början av 1900-talet reste Karl Tirén runt i Lappland och Nordnorge för att dokumentera och uppsamla jojkar. Detta arbete tog många år i anspråk och sammanfattades i verket Die lappische Volkmusik, utgiven av Hugo Gebers Förlag i Uppsala 1942. Genom dokumentationen av jojkar utförde Tirén en pionjärinsats i och med att han använde fonografen. Hans arbete har bidragit till att bevara en utdöende och uråldrig jojktradition till eftervärlden. Karl Tirén blev känd även som fiolbyggare och folkmusiker.", "fin": "Kansanvaltuuskunnan nimilista pohjautui pitkälti Suomen työväen toimeenpanevan komitean puheenjohtajan Eero Haapalaisen ehdotukseen, jonka hän esitteli toimeenpanevan komitean suljetussa kokouksessa 25. tammikuuta 1918", "tur": "1890’lar Debussy’nin kariyerindeki en verimli dönemdir. Bu dönemin en önemli eseri Pellas et Melisande operasıdır. Bu eserin 1902’de seslendirilişi uluslar arası bir başarı oldu. Pell as’dan sonra ünlenen Debussy, Avrupa başkentlerini gezerek eserlerini piyanist veya orkestra şefi olarak seslendirdi. Bu dönemde yazdığı makalelerle esprili bir eleştirmen olarak da tanındı.", "nld": "De Goede Verwachting was een windmolen in Amsterdam, aan de huidige Czaar Peterstraat. De chocolademolen, die is 1801 is gebouwd op het onderste deel van de boormolen die er eerder stond, is in 1906 afgebroken, toen hij al volledig door stadsbebouwing was omringd. De tekening laat de molen zien in 1887, met op de voorgrond de laatste restanten van de stadsmuren. Op de foto van Jacob Olie uit 1891 is te zien hoe de wieken met oude zakken of (dek)zeilen zijn bespannen.", "hun": "Versenyzői karrierje az 1920-as évek elején kezdődött, amikor a Fafnir autógyárnál volt tanonc. Eleinte motorkerékpárokkal, később autókkal versenyzett. Első két hegyi Európa-bajnoki címét a Mercedes-Benz színeiben érte el, a harmadikat már az Alfa Romeóval.", "ces": "Puccini viděl Sardouovu hru, když byla uváděna během turné v roce 1889 v Itálii, a po určitém váhání v roce 1895 získal práva na zhudebnění tohoto dramatu. Převedení mnohomluvné francouzské hry do výstižné italské opery trvalo čtyři roky, během nichž se skladatel opakovaně dohadoval se svými libretisty a vydavatelem. Tosca pak měla premiéru v době nepokojů v Římě a její první uvedení bylo ze strachu z narušení o jeden den odloženo. Přes nevalné hodnocení kritiků měla opera okamžitý úspěch u veřejnosti.", "ell": "Μετά τη διάλυση της Δεύτερης Τριανδρίας, ο Οκταβιανός αναβίωσε φαινομενικά τη Ρωμαϊκή Δημοκρατία, παραδίδοντας και πάλι την εκτελεστική εξουσία στη Σύγκλητο, ωστόσο στην πράξη διατήρησε το στάτους του απόλυτου μονάρχη. Πέρασαν πολλά χρόνια μέχρι να οριστικοποιηθεί το θεσμικό πλαίσιο διαμέσου του οποίου ένα πρώην δημοκρατικό κράτος μετατράπηκε σε μοναρχία, αποτέλεσμα του οποίο ήταν ο γίγαντας που αποκαλούμε Ρωμαϊκή Αυτοκρατορία.", "bul": "Българският език е най-ранният писмено документиран славянски език. Историческото му развитие се характеризира с четири главни периода. Следва да се отбележи, че това делене е условно и имената не отразяват различни езици, а само периоди в развитието на българския език, за които се откриват характерни белези.", "bel": "Беларуская мова з'яўляецца старажытнапісьменнай, бо гісторыя беларускага пісьменства налічвае не менш за 10 стаго-ддзяў. Мова беларускага народа пачала складацца ў XIV—XVI стагоддзях у Вялікім Княстве Літоўскім, і была канчаткова сфармулявана ў канцы XIX—XX стагоддзяў.", "mar": "मराठी ही इंडो-युरोपीय भाषाकुलातील एक भाषा आहे. भारतातील प्रमुख २२ भाषांपैकी मराठी एक आहे. महाराष्ट्र आणि गोवा ह्या राज्यांची मराठी ही अधिकृत राजभाषा आहे. मराठी मातृभाषा असणार्‍या लोकसंख्येनुसार मराठी ही जगातील पंधरावी व भारतातील चौथी भाषा आहे.[१] मराठी बोलणार्‍यांची एकूण लोकसंख्या ९,००,००,००० आहे. मराठी भाषा ९व्या शतकापासून प्रचलित आहे. मराठी भाषेची निर्मिती संस्कृतपासून झालेल्या महाराष्ट्री प्राकृत व अपभ्रंश या भाषांपासून झाली आहे. याउलट मराठी आणि काही अन्य भारतीय भाषांच्यावर संस्कार होऊन संस्कृत भाषा बनली असेही काही विद्वान मानतात.", "kan": "ಕನ್ನಡವು ಒಂದು ದ್ರಾವಿಡ ಭಾಷೆಯಾಗಿದೆ. ಕನ್ನಡ ಲಿಪಿ ಸುಮಾರು ೧೫೦೦-೧೬೦೦ ವರ್ಷಗಳಿಗಿಂತಲೂ ಹಿಂದಿನದು. ಐದನೆಯ ಶತಮಾನದ ಹಲ್ಮಿಡಿ ಶಾಸನದ ಸಮಯಕ್ಕಾಗಲೇ ಕನ್ನಡವು ಸಾಕಷ್ಟು ಅಭಿವೃದ್ಧಿ ಹೊಂದಿತ್ತು. ದ್ರಾವಿಡ ಭಾಷಾತಜ್ಞ ಸ್ಟಾನ್‍ಫೋರ್ಡ್ ಸ್ಟೀವರ್ ಅವರ ಅಭಿಪ್ರಾಯದಂತೆ, ಕನ್ನಡದ ಭಾಷಿಕ ಚರಿತ್ರೆಯನ್ನು ಮೂರು ವಿಧವಾಗಿ ವಿಂಗಡಿಸಬಹುದು", "ron": "Limba română este o limbă indo-europeană, din grupul italic şi din subgrupul oriental al limbilor romanice. Printre limbile romanice, româna este a cincea după numărul de vorbitori, în urma spaniolei, portughezei, francezei şi italienei. Din motive de diferenţiere tipologică, limba română mai este numită în lingvistica comparată limba dacoromână sau dialectul dacoromân.", "slv": "Slovenščina se je razvila iz praslovanščine. Najstarejši pisani viri, ki kažejo značilnosti slovenskega jezika, so Brižinski spomeniki. Napisani so z latinično pisavo, po izsledkih paleografske raziskave so nastali na Koroškem v obdobju 927–1039. Besedila, ki jih vsebujejo, so bila oblikovana že prej, verjetno v 8. stoletju.", "hrv": "Južnoslavenski jezici nastaju iz dva ogranka južnoslavenskog prajezika – zapadnoga i istočnoga. Iz zapadnoga su se razvili slovenski, hrvatski, srpski, crnogorski, bošnjački, a iz istočnoga makedonski i bugarski jezik. Iva Lukežić podjelu južnoslavenskog prajezika na dva dijela povezuje s razvitkom i razgraničavanjima franačke i bugarske vlasti na ovim prostorima.", "srp": "Као и када су други језици у питању, неопходно је разграничити појам језичких система којим се Срби како етницитет служе од стандардног језика који се употребљава у државним и културним институцијама. Колико је званични (у случају српског језика, званични писани) језик једноставније дефинисати, захваљујући постојању норми у облику различитих граматика и правописа, толико је знатно сложеније дефинисати свакодневне језике који подлежу ненормираним међуљудским језичким односима", "mkd": "Македонистиката е наука која ги проучува развојот, правописот и другите карактеристики на македонскиот јазик. Почетоците на македонистиката се поврзани со политичките состојби на Балканскиот Полуостров во времето на османлиското владеење. Поради територијалните претензии на новосоздадените словенски држави Србија и Бугарија кон Македонија, кај нив се јавила потребата за докажување на културната поврзаност на населението на Македонија со она во нивните држави. Притоа македонистиката во најголем дел се развива како дел од политичките спорови околу припадноста на Македонците, а со тоа и припадноста на териториите коишто тие ги населуваат.", "lit": "Žodžio vieta sakinyje visiškai laisva, nes kalba sintetinė. Vis dėlto skirtingose situacijose ir įvairaus pobūdžio sakiniuose nusistovėjusi tam tikra vienokia ar kitokia žodžių tvarka (pvz., pažymimieji žodžiai dažniausiai eina po pažyminių). Visada galima inversija – žodžių sukeitimas vietomis, tačiau tuomet sakinys skamba neįprastai ir stilizuotai. Grožinėje literatūroje ir lyrikoje inversija vartojama dažnai, nes norima pabrėžti, paryškinti mintis, vaizdus ar nuotaikas.", "lav": "Lībiskais dialekts ir viens no trim latviešu valodas dialektiem. Lībiešu valodai bija lielāka ietekme uz latviešu valodas lībisko jeb tāmnieku dialekta substrātu, nekā uz pārējiem latviešu valodas dialektiem Latvijā. Kurzemē vārdu beigās tiek atmesti īsie patskaņi, bet garie patskaņi tiek saīsināti. Visos skaitļos un dzimtēs tiek izmantoti vienas formas darbības vārdi. Cilvēku vārdi abām dzimtēm tiek atvasināti ar galotnēm -els, -ans. Dialekts radies no līviem, kas asimilējoties sāka runāt latviešu valodā, iekļaujot tajā arī līvu valodas elementus.", "est": "Eesti keeles on kaks suuremat murderühma – põhjaeesti ja lõunaeesti murded (mõnedes käsitlustes eristatakse kolmanda rühmana kirderanniku murdeid). Nendevahelised erinevused ulatuvad arvatavasti läänemeresoome keelte ühisest algkeelest eraldumise perioodi. Murrete säilimist soodustas seotus majapidamisega, sellest tulenev vähene liikuvus ning tava võtta naine kas oma või lähedasest kihelkonnast. Seoses sunnismaisuse tekkega 14. – 15. sajandil vähenesid inimeste liikumis- ja suhtlemisvõimalused ning paikkondlikud keelekujud eristusid üldiselt kihelkonna piirides vastavate murrakutena.", "tam": "பக்தி இலக்கிய காலத்திலும், மையக் காலத்திலும் பெருமளவு வடமொழிச் சொற்கள் தமிழில் கலந்துவிட்டன. பிற்காலத்தில் பரிதிமாற் கலைஞர், மறைமலை அடிகள் முதலான தூய்மைவாதிகள் இவற்றைத் தமிழிலிருந்து நீக்க உழைத்தனர். இவ்வியக்கம் தனித்தமிழ் இயக்கம் என அழைக்கப்பட்டது. இதன் விளைவாக முறையான ஆவணங்களிலும், மேடைப் பேச்சுகளிலும், அறிவியல் எழுத்துக்களிலும் வடமொழிக் கலப்பில்லாத தமிழ் பயன்பட வழியேற்பட்டது. கி. பி. 800இற்கும் 1000இற்கும் இடைப்பட்ட காலப்பகுதியில், மலையாளம் ஒரு தனி மொழியாக உருவானதாக நம்பப்படுகின்றது.", "vie": "Với những cơ sở khoa học gần đây được đa số các nhà ngôn ngữ học thừa nhận, tiếng Việt thuộc hệ Nam Á ở khu vực Đông Nam Á hiện nay, có quan hệ gần gũi với tiếng Mường. Xa hơn là các thứ tiếng thuộc nhóm ngôn ngữ Môn-Khmer.", "urd": "عربی و فارسی الفاظ استعمال کرتی ہے۔ جبکہ ہندی زبان دیوناگری رسم الخط میں لکھی جاتی ہے اور سنسکرت الفاظ زیادہ استعمال کرتی ہے۔ کچھ ماہرینِ لسانیات اُردو اور ہندی کو ایک ہی زبان کی دو معیاری صورتیں گردانتے ہیں۔ تاہم، دیگر ماہرین اِن دونوں کو معاش اللسانی تفرّقات کی بنیاد پر الگ الگ سمجھتے ہیں۔ بلکہ حقیقت یہ ہے کہ ہندی، اُردو سے نکلی ہے۔ اسی طرح اگر اردو اور ہندی زبان کو ایک سمجھا جائے تو یہ دنیا کی چوتھی بڑی زبان ہے۔", "tha": "คำว่า ไทย หมายความว่า อิสรภาพ เสรีภาพ หรืออีกความหมายหนึ่งคือ ใหญ่ ยิ่งใหญ่ เพราะการจะเป็นอิสระได้จะต้องมีกำลังที่มากกว่า แข็งแกร่งกว่า เพื่อป้องกันการรุกรานจากข้าศึก คำนี้เป็นคำไทยแท้ที่เกิดจากการสร้างคำที่เรียก การลากคำเข้าวัด ซึ่งเป็นการลากความวิธีหนึ่ง ตามหลักคติชนวิทยา คนไทยเป็นชนชาติที่นับถือกันว่า ภาษาบาลี ซึ่งเป็นภาษาที่บันทึกพระธรรมคำสอนของพระพุทธเจ้าเป็นภาษาอันศักดิ์สิทธิ์และเป็นมงคล เมื่อคนไทยต้องการตั้งชื่อประเทศว่า ไท ซึ่งเป็นคำไทยแท้ จึงเติมตัว ย เข้าไปข้างท้าย เพื่อให้มีลักษณะคล้ายคำในภาษาบาลี - สันสกฤตเพื่อความเป็นมงคลตามความเชื่อของตน ภาษาไทยจึงหมายถึงภาษาของชนชาติไทยผู้เป็นไทนั่นเอง", "guj": "ભારત દેશના પશ્ચિમ ભાગમાં આવેલા, પહેલાંના જમાનાથી વેપાર ક્ષેત્રે આંતર રાષ્ટ્રીય મહત્વ ધરાવતા ગુજરાત રાજ્યમાં ઉદ્દભવેલી અને ગુજરાતીઓ દ્વારા બોલાતી ભાષાનું નામ છે, ગુજરાતી ભાષા. ગુજરાતી ભાષાને આંતર રાષ્ટ્રીય ફલક પર વર્ગીકરણ પ્રણાલીમાં ઇન્ડો-આર્યન ભાષા સમૂહમાં મૂકવામાં આવે છે. ગુજરાત અને ભારતનાં અન્ય રાજ્યો તથા પાકિસ્તાન ઉપરાંત વિશ્વનાં અનેક દેશોમાં ગુજરાતી ભાષા બોલતા લોકો વસે છે, જેમાં મહદ્અંશે, અમેરિકા, યુ.કે., કેન્યા તથા દક્ષિણ આફ્રિકા સહિત આફ્રિકાનાં અન્ય દેશો, કેનેડા, ઓસ્ટ્રેલિયા વગેરેનો સમાવેશ કરી શકાય. ભારતને આઝાદી મળ્યા બાદ ગુજરાત રાજ્યની સ્થાપના ૧ મે, ૧૯૬૦ના રોજ થઇ હતી અને ત્યારથી ગુજરાત રાજ્યની અધિકૃત ભાષા તરિકે ગુજરાતીને સ્વીકારવામાં આવી છે.", "uzb": "Tarixda oʻzbek tilini yozish uchun koʻp alifbolardan qoʻllanilgan. 1928-yilgacha savodli kishilar oʻzbek tilini arab yozuvida yozishgan. 1928-yildan 1940-yilgacha oʻzbek tili lotin yozuvida yozilgan. 1940-yil Iosif Stalinning buyrugʻi bilan majburan kirill yozuviga oʻtilgan. 1992-yilgacha oʻzbek tili shu yozuvda yozilgan. 1993-yil Oʻzbekiston rasman lotin yozuvini yana qaytadan kirgizdi. Hozirda Oʻzbekistonda taʼlim joylarida lotin yozuvidan qoʻllaniladi. Shunday boʻlsa ham yoshi kattalar va Oʻzbekiston tashqarisida yashaydigan oʻzbeklar hali ham kirill yozuvidan qoʻllanishadi.", "pan": "ਇਸ ਦੀਆਂ ਦੋ ਮੁੱਖ ਉਪ-ਬੋਲੀਆਂ ਹਨ- ਪੂਰਬੀ ਪੰਜਾਬੀ ਅਤੇ ਲਹਿੰਦੀ ਪੰਜਾਬੀ। ਲਹਿੰਦੀ ਪੰਜਾਬੀ, ਪੂਰਬੀ ਪੰਜਾਬੀ ਅਤੇ ਪੱਛਮੀ ਪਹਾੜੀ ਬੋਲੀਆਂ ਨੂੰ ਮਿਲਾ ਕੇ ਪੰਜਾਬੀ ਆਪਣੇ ਸੁਰ-ਵਿਗਿਆਨ ਕਰ ਕੇ ਅਜੋਕੀ ਹਿੰਦ-ਯੂਰਪੀ ਬੋਲੀਆਂ ਦੇ ਪਰਿਵਾਰ ਵਿੱਚੋਂ ਸਭ ਤੋਂ ਵੱਖਰੀ ਬੋਲੀ ਜਾਪਦੀ ਹੈ। ਪੰਜਾਬੀ ਦੀਆਂ ਕਈ ਉਪ-ਬੋਲੀਆਂ ਹਨ, ਪਰ ਮਾਝੀ ਨੂੰ ਸਭ ਤੋਂ ਅਮੀਰ ਉਪ-ਬੋਲੀ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਉਪ-ਬੋਲੀ ਪੁਰਾਣੇ ਪੰਜਾਬ ਦੇ ਮਾਝਾ ਖ਼ਿੱਤੇ ਵਿੱਚ ਬੋਲੀ ਜਾਂਦੀ ਹੈ ਜਿਸ ਦਾ ਕੇਂਦਰ ਅਜੋਕੇ ਅੰਮ੍ਰਿਤਸਰ ਅਤੇ ਲਹੌਰ ਵਿੱਚ ਹੈ। ਇਸ ਉਪ-ਬੋਲੀ ਦੀ ਵਰਤੋਂ ਪੰਜਾਬੀ ਦੀਆਂ ਕਿਤਾਬਾਂ ਲਿਖਣ ਵਿੱਚ ਹੁੰਦੀ ਹੈ।", "azj": "Eyni zamanda yazı dili də olan Azərbaycan dili yazı dili ənənəsinə sahib olma baxımından Türk dili ilə paraleldir/ Türkmən dili və qaqauz dilinin nisbətən daha gec yazı dili kimi formalaşmasına baxmayaraq Azərbaycan dili köklü bir yazı dili ənənəsinə malikdir.", "ind": "Fonologi dan tata bahasa Bahasa Indonesia dianggap relatif mudah.[8] Dasar-dasar yang penting untuk komunikasi dasar dapat dipelajari hanya dalam kurun waktu beberapa minggu.[9]", "tel": "ఆంధ్ర ప్రదేశ్ మరియు తెలంగాణ రాష్ట్రాల అధికార భాష తెలుగు. భారత దేశంలో తెలుగు మాతృభాషగా మాట్లాడే 8.7 కోట్ల (2001 ) జనాభాతో [1] ప్రాంతీయ భాషలలో మొదటి స్థానంలో ఉంది. ప్రపంచంలోని ప్రజలు అత్యధికముగా మాట్లాడే భాషలలో పదమూడవ స్థానములోనూ, భారత దేశములో హిందీ, బెంగాలీ తర్వాత మూడవ స్థానములోనూ నిలుస్తుంది. పాతవైన ప్రపంచ భాష గణాంకాల (ఎథ్నోలాగ్) ప్రకారం ప్రపంచవ్యాప్తంగా 7.4 కోట్లు మందికి మాతృభాషగా ఉంది.[2] మొదటి భాషగా మాట్లాడతారు. అతి ప్రాచీన దేశ భాషలలో సంస్కృతము తమిళముతో బాటు తెలుగు భాషను 2008 అక్టోబరు 31న భారత ప్రభుత్వము చేర్చింది.", "pes": "حدود استان امروزی فارس در جنوب ایران هستند. فارسی میانه به عنوان گویش رسمی در زمان ساسانیان در دیگر سرزمین‌های ایرانی گسترش زیادی یافت به طوری که در خراسان بزرگ جایگزین زبان‌های پارتی و بلخی شد و بخش‌های بزرگی از خوارزمی‌زبانان و سغدی‌زبانان نیز فارسی‌زبان شدند.[۱۱] گویشی از فارسی میانه که بعدها فارسی دری نام گرفت پس از اسلام به عنوان گویش استاندارد نوشتاری در خراسان شکل گرفت و این بار با گسترش به سوی غرب به ناحیه پارس و دیگر نقاط ایران بازگشت.", "mal": "ഇന്ത്യയിൽ‌ കേരള സംസ്ഥാനത്തിലും ലക്ഷദ്വീപിലും പുതുച്ചേരിയുടെ ഭാഗമായ മയ്യഴിയിലും സംസാരിക്കപ്പെടുന്ന ഭാഷയാണ് മലയാളം . ഇതു ദ്രാവിഡ ഭാഷാ കുടുംബത്തിൽപ്പെടുന്നു. ഇന്ത്യയിൽ ശ്രേഷ്ഠഭാഷാ പദവി ലഭിക്കുന്ന അഞ്ചാമത്തെ ഭാഷയാണ് മലയാളം[4].2013 മേയ് 23-നു ചേർന്ന കേന്ദ്രമന്ത്രിസഭായോഗമാണ് മലയാളത്തെ ശ്രേഷ്ഠഭാഷയായി അംഗീകരിച്ചത്", "hau": "Ƙabilar Hausa dai, ƙabila ce dake zaune a arewa maso yammacin tarayyar Nijeriya da kudu maso yammacin jamhuriyyar Nijar. Kabilace mai ɗimbin al'umma, amma kuma a al'adance mai mutuƙar haɗaka, akalla akwai sama da mutane miliyan tamanin da harshen yake asali gare su. A tarihance ƙabilar Hausawa na tattare a salasalar birane.Hausawa dai sun sami kafa daularsu ne tun daga shekarun 1300's, sa'adda suka sami nasarori da dauloli kamar su daular Mali, Songhai, Borno da kuma [fulani]. A wasu lokutan Hausawa sun sami gagarumin ikon, mulki da haɗaka ta kau da baki 'yan neman ruwa da tsaki, da kuma neman angizo a cikinta da kuma harkallar bayi. A farko-farkon shekaru na 1900's, a sa'adda kabilar Hausa ke yunkurin kawar da mulkin angizo na fulani, sai turawan mulkin mallaka na Birtaniya suka mamaye arewancin Nijeriya, da kuma kafa manufofin mulkin bayan gida,a bisa ƙarƙashin mulkin birtaniya,'yan mulkin mallaka sai suka marawa.", "ori": "ଓଡ଼ିଆ ଭାଷା ଭାଷା ଓଡ଼ିଶା ପାଖାପାଖି ଅନେକ ରାଜ୍ୟରେ କହାଯାଏ । ପଶ୍ଚିମ ବଙ୍ଗଳାର ମେଦିନୀପୁର ସମେତ ଆହୁରି ଅନେକ ଅଞ୍ଚଳ, ଝାଡ଼ଖଣ୍ଡର ସିଂହଭୂମି ଜିଲ୍ଲା, ଆନ୍ଧ୍ର ପ୍ରଦେଶର ଶ୍ରୀକାକୁଲମ, ବିଜୟନଗର ଓ ବିଶାଖାପଟନମ ଜିଲ୍ଲା, ଛତିଶଗଡ଼ର ପୂର୍ବ ଜିଲ୍ଲାମାନଙ୍କରେ ବହୁଳ ଭାବରେ କୁହା ଯାଏ । ଗୁଜରାଟର ସୁରଟ ଭାରତର ଦ୍ଵିତୀୟ ଓଡ଼ିଆ ଭାଷା ବହୁଳ ଅଞ୍ଚଳ । ଏହାଛଡା ବେଙ୍ଗାଳୁରୁ, ହାଇଦ୍ରାବାଦ, ପଣ୍ଡିଚେରୀ, ଚେନ୍ନାଇ, ଗୋଆ, ମୁମ୍ବାଇ, ଜାମସେଦପୁର, ବରୋଦା, ରାୟପୁର, ଅହମଦାବାଦ, ଦିଲ୍ଲୀ, କଲିକତା, ଖଡ଼ଗପୁର, ଗୁଆହାଟୀ, ପୁନେ ଓ ସିଲଭାସା ଆଦି ସହରରେ ଓଡ଼ିଆ ଭାଷାଭାଷୀ ଲୋକ ଦେଖାଯାନ୍ତି", "mya": "လူများတွင် ဇီကာအဖျားရောဂါ အမည်ရှိ မပြင်းထန်သည့် အဖျားရောဂါကို ဖြစ်ပွားစေသည်။ ၁၉၅၀ ခုနှစ်များဝန်းကျင်တွင် အာဖရိကနှင့် အာရှအကြား အီကွေတာ ခါးပတ်အနီးတဝိုက်တွင် စတင်ဖြစ်ပွားခဲ့သည်။ ၂၀၁၄ ခုနှစ်တွင် ဗိုင်းရပ်စ်သည် ပစိဖိတ်သမုဒ္ဒရာကို ဖြတ်ပြီး ပြင်သစ်ပိုလီနီးရှားနှင့် အီစတာကျွန်းသို့ လည်းကောင်း၊ ၂၀၁၅ တွင် မက္ကဆီကို၊ ဗဟိုအမေရိက၊ ကာရစ်ဘီယံနှင့် တောင်အာဖရိကသို့ ကူးစက်ပြန့်ပွားလာကာ ကမ္ဘာအနှံ့တွင် ဖြစ်ပွားသည့် ကပ်ရောဂါအသွင် ဆောင်လာနေသည်။", "bho": "भोजपुरी मुख्य रूप से उत्तर प्रदेश के पूर्वी जिला कुल अउर बिहार राज्य के पश्चिमी जिला कुल में बोलल जाले। उत्तरप्रदेश के वाराणसी, मिर्जापुर, गाजीपुर, बलिया, जौनपुर, गोरखपुर, देवरिया, आजमगढ़, बस्ती, सिद्धार्थ नगर आदि जिला के रहेवाला आ बिहार राज्य के शाहाबाद, सारन, चंपारन आदि जिला के रहेवाला लोग के मातृभाषा भोजपुरी ह। एकरा अलावा कलकत्ता नगर में, बंगाल के चटकल में आ आसम राज्य के चाय बगान में आ बंबई के अंधेरी-जोगेश्वरी नियन जगह में लाखन के संख्या में भोजपुरी भाषी लोग रहेले। अतने ना, मारिशस, फिजी, ट्रिनीडाड, केनिया, नैरोबी, ब्रिटिश गायना, दक्खिन अफ्रीका, बर्मा (टांगू जिला) आदि देश कुल में बड़ संख्या में भोजपुरिया लोग मिलेले। जेकरा के डॉ0 ग्रियर्सन स्टैंडर्ड भोजपुरी कहलेबाड़े उ मुख्यरूप से बिहार राज्य के आरा जिला आ उत्तर प्रदेश के बलिया, गाजीपुर जिला के पूर्वी भाग आघाघरा (सरयू) आ गंडक के दोआब में बोलल जाले। ई लम्बा भूभाग में फैलल बा। एकरा में अनेक स्थानीय विशेता मिलेला। जहाँ शाहाबाद, बलिया आ गाजीपुर आदि दक्षिणी जिला में ड़ के प्रयोग होला ओहिजे उत्तरी जिला में ट के प्रयोग होला। एह प्रकार उत्तरी आदर्श भोजपुरी में जहाँ बाटे के प्रयोग होला ओहिजे दक्षिणी आदर्श भोजपुरी में बाड़ेके प्रयोग होला ।गोरखपुर के भोजपुरी में मोहन घर में बाटें कहल जाला लेकिन बलिया में मोहन घर में बाड़ें कहल जाला। पूर्वी गोरखपुर के भाषा को 'गोरखपुरी' कहल जाला लेकिन पश्चिमी गोरखपुर आ बस्ती जिला के भाषा के सरवरिया कहल जाला। सरवरिया शब्द सरुआर से निकल बा जवन सरयूपार के अपभ्रंश रूप ह। सरवरिया और गोरखपुरी के शब्द - विशेषत: संज्ञा शब्द- के प्रयोग में भिन्नता मिलेला बलिया (उत्तर प्रदेश) और सारन (बिहार) इ दुनो जिला में 'आदर्श भोजपुरी' बोलल जाला। लेकिन कुछ शब्द के उच्चारण में तनी अन्तर बा । सारन के लोग ड का उच्चारण र करेले । जहाँ बलिया निवासी घोड़ागाड़ी आवत बा कहेले, ओहिजे छपरा या सारन का निवासी घोरा गारी आवत बा कहिहें। आदर्श भोजपुरी के एकदम निरखत रूप बलिया आ आरा में बोलल जाला", "tgl": "Ang Esperánto ay isang artipisyal na wika. Ito ang pinakakilalá at pinakagamit na dinisenyong wika para sa pandaigdigang komunikasyon.[1]Ang Polanyong optalmologo na si L. L. Zamenhof ang gumawa ng unang aklat patungkol sa Esperanto, ang Unua Libro, noong 26 Hulyo 1887. Ang pangalang Esperanto ay hango sa Doktoro Esperanto, bansag na ginamit ni Zamenhof nang ilathala niya ang aklat. Layon niyang gumawa ng isang wika na madalíng pag-aralan, patas sa lahat ng tao anumang lahi ang pinagmulan, at magtataguyod ng pandaigdigang kapayapaan at pagkakaunawaan sa lahat ng bansa.", "yor": "Èdè Yorùbá Ní báyìí, tí a bá wo èdè Yorùbá, àwọn onímọ̀ pín èdè náà sábẹ́ ẹ̀yà Kwa nínú ẹbí èdè Niger-Congo. Wọ́n tún fìdí rẹ̀ múlẹ̀ pé ẹ̀yà Kwa yìí ló wọ́pọ̀ jùlọ ní sísọ, ní ìwọ̀ oòrùn aláwọ̀ dúdú fún ẹgbẹ̣ẹgbẹ̀rún ọdún. Àwọn onímọ̀ èdè kan tilẹ̀ ti fi ìdí ọ̀rọ̀ múlẹ̀ pé láti orírun kan náà ni àwọn èdè bí Yorùbá, Kru, Banle, Twi, Ga, Ewe, Fon, Edo, Nupe, Igbo, Idoma, Efik àti Ijaw ti bẹ̀rẹ̀ sí yapa gẹ́gẹ́ èdè ọ̀tọ̀ọ̀tọ̀ tó dúró láti bí ẹgbẹ̀rún mẹ́ta ọ̀dún sẹ́yìn.", "mai": "विकी लभ्स विमिन २०१९ प्रतियोगिता आरम्भ भऽ गेल अछि। एखने सहभागिता जनाए महिला, नारीवादी आ लिङ्ग सम्बन्धी लेख बनाबी आ पुरस्कार जिती। समय अवधि: १० फरबरी २०१९ सँ ३१ मार्च २०१९ धरि", "orm": "Warraaqsa Itoophiyaa kan 1974 dura, Afaan Oromootiin barreeffama maxxansuunii fi tamsaasa reediyoo ykn TV dabarsuun dhorkaa ture. Barreeffamni xiqqoon san dura maxxanfaman kan akka hiikaa Macaafa Qulqulluu kan Onesmoos Nasibii fi Asteer Gannootin hiikaman qubee Gi'iiziitti fayyadaman. Kakuu Haaraan bara 1875 Kiraapfin maxxanfames akkasuma qubee Gi'iiziitti fayyadame. Warraaqsa Itoophiyaa bara 1974tti aansee, mootummaan duula barreessuu fi dubbisuu afaan baayyeedhaan, Afaan Oromoo dabalatee, geggeessaa kan ture yoo ta'u, Afaan Oromootin barreeffama maxxansuunii fi tamsaasa dabarsuun yeroo kana jalqabe. Barreeffamoonni yeroo kana Afaan Oromootiin maxxanfaman, kan akka gaazexaa Bariisaa, qubee Gi'iizii fayyadaman.", "ibo": "Asụsụ Igbo bu asụsụ Niger-Congo nke madu rúrú ndè iri abụô na ise nke ndi júrú ya bụ ndi Igbo. Na nleda-owuwa Naigeria na ébé Niger Delta, Igbo bụ díàlà. Ha dèrè yá nà édé Latin, nke ndí mpaghara Britain nwètèrè. Nkárí ndi ozor bu nké Èkpè búrú nkárí Nsịbịdị. Asụsụ Igbo bu ólú nke a na akpo n'ezigbo hanwa. Ó di ike taa ndi óbiá i-suta ya, dikwa ike taa ndi Igbo ozo bi na ámá nkẹ ozor Í mátá ihe ndi nke ozo na ekwu, maka na ndi Igbo hiri nne.", "ceb": "Ang Sugboanon gitabi nga lunlon sa mga nagpuyo sa Sugbo, Bohol, sidlakang Negros, kasadpang bahin sa Leyte ug Biliran, ikatulong tunga sa Masbate ug sa kinatibuk-an sa Mindanao. Gitabi usab kini sa ubang mga lungsod sa Samar, ug sa Metro Manila. Hangtod sa tuig 1975, ang Sugboanon milabaw sa Tinagalog sa gidaghanon sa mga manggagamit, apan ang Sugboanon gihapon ang labing daghan og lumad nga manggagamit. Ang mga pagpamalhin sa Sugbo, Bohol ug Negros Oriental ngadto sa Mindanao ug bali-bali nakapadaghan sa Sugboanon nga mga manabiay sa Pilipinas. Ang ubang sinultian sa Sugboanon naghatag og lain-laing ngalan sa ilang pinulongan. Ang mga nagpuyo sa Bohol motawag niini og Bol-anon samtang ang mga Sugboanon ang pinulongan sa dapit sa Leyte motawag niini usahay og Kana. Kadaghanan sa ubang dapit motawag niining pinulongan isip Binisaya lang.", "kur": "Soranî, kurdî an jî kurmanciya navendî, zaravayekî zimanê kurdî ye. Di rastiya xwe de ev navê devokekê ye ku li nêzîkî Silêmaniyê tê axaftin, lê di pêvajoya dîrokî de navê xwe li hemû devokên zaravayê kurdiya navendî kiriye. Îro devokên mukrî, kurdî û yên din bi navê soranî têne nasîn. Bi giştî bi tîpên kurdî-erebî tê nivîsandin; herwiha, gotarên bi tîpên latînî jî hene. Soranî zêdetir li Kurdistana başûr û rojhilat tê bikaranîn.", "mlg": "Ny endriky ny teny malagasy dia tsy tahaka ny fiteny ao Afrika ao. Satria io fiteny io dia ao amin'ny vondrom-piteny Malayo-Polineziana, sampan'ny vondrona Aostrôneziana. Ny fihavian'ny teny malagasy dia fantatr'ireo mpandini-piteny hatry ny taonjato faha sivy ambin'ny folo. Ny teny malagasy dia mitovy vondrom-piteny Barito avy amin'ny faritany atsimo atsinanan'ny Nosy Borneo. Betsaka ny fitovizan'ny teny malagasy amin'ny fiteny ma'anyan, fiteny iray tenenina eo amin'ny faritry ny renirano Barito, ao Atsimon'i Borneo. Izy io milaza fa mponina Aotrôneziana avy amin'ny tamba-nosy malay nandalo tany Borneo no nipetraka tao Madagasikara, na dia tsy fantatra aza ny anton'io fifindrana io. Taonjato maro tety aoriana, nifangaro tamin'ny Arabo sy ny Masombika (Afrikana avy amin'ny tontolo soahily) ny mponina Aostrôneziana.", "skr": "ݙبھاری سرائیکی تحصیل دیپال پور دا لہجہ پنجاب دی دھرتی اُتے انسان دی ہوند دے کُھرے لکھاں ورھیاں پرانے ہن، پر جتھوں تیکر تہذیبی جیون دا سانگا ہے تاں سواں وادی نوں مہذب انسان دا پہلا گھر منیا ویندا اے۔ ایہدے مگروں ہڑپا ورگی اُچ ٹیسی اُتے اپڑی تہذیب ایس گل دا ہُنگارا بھریندی ہے کہ ایتھوں دا انسان صدیاں پہلاں وی کِنا سُگھڑ ہا۔ بھیڑے بھاگ اساڈے کہ اجے تیکر ہڑپا توں لبھن والیاں مہراں نہیں پڑھیاں جا سکیاں تے ایس پاروں ایس وسیب بارے ٹھکویں گل نہیں کیتی جا سکدی ''رگ وید'' وچ ایس دھرتی نوں ''سپت سندھو'' آکھیا گیا ہے، یعنی ست دریاواں دی سر زمین۔ آریہ مگروں ایس دھرتی اُتے دھاڑاں دی ہک لمی وہیر ہے پر اوہدا وی لیکھا جوکھا ایڈا سوکھا نہیں۔ ایہو کارن ہے کہ پنجاب دا اڈو اڈ سمیاں وچ جغرافیہ کیہ رہیا؟ ایہہ گل ہُن نتارنی سوکھی نہیں۔ ترکاں دے ہلیاں تے بھیرہ لہور دے ہندو راجیاں بارے ایس گل دی دس پیندی ہے: اٹھویں صدی عیسوی تک سیاسی اور تمدنی لحاظ سے افغانستان ہندوستان میں شمار ہوتا تھا۔ اور وہاں کی ترک آبادی بُدھ مت قبول کر چکی تھی لیکن اسلامی سلطنت کی حدود بڑھتے بڑھتے دریائے کابل کے جنوب میں صوبہ لمغان تک جا پہنچیں تھیں اور اب ان کے اور ہندووں کے درمیان کوئی اور چیز حائل نہ تھی۔ رائے جے پال والی لاہور اپنی آبائی سلطنت کی بتدریج تخفیف سے سخت نالاں تھا اور سبکتگین کے بار بار کے حملوں سے عاجز آ گیا تھا۔ ''تنگ آمد بجنگ آمد'' آخر کار وہ ایک لشکر جرار لے کر جس کا رنگ رات کی طرح سیاہ اور جس کی چال طوفانی لہروں کی طرح شور انگیز تھی، لمغان کی وادی میں اُتر آیا۔'' (1) ہک سما ہا جدوں پنجاب دیاں حداں لمغان تیکر کھلریاں ہوئیاں ہان۔ وت ترک راج، مغل شاہی تے سکھاں دی حکومت سمے وی پنجاب دیاں حداں اج نالوں وکھریاں ای ہان۔ انگریزی راج دے چوکھے سمے دلی تے صوبہ سرحد وی پنجاب دا حصہ رہیا۔ آزادی مگروں پنجاب دو ٹوٹے ہو گیا تے پھیر چڑھدا پنجاب تناں ٹوٹیاں وچ اگوں ونڈیا گیا۔ جیس خطے دی تاریخ دا اینا کھلار ہوسی اوہدے وچ بولی دی نہار تے رنگا رنگی کنج دی ہوسی؟ بھوئیں دے ایس کھلار وِچ پہاڑ، دریا، صحرا تے باراں دی اک وکھری نہار اے۔ پہاڑاں وچ تاں اک وسوں چوں دوجی تیکر یاں دور دریڈے جانا اوکھیرا ہی ہا، دریاواں دے واسی وی دریاواں دے ویہن نال ہی ویہندے ہان۔ ایہناں لہجیاں نوں گریرسن نے وکھو وکھ ناں دتے پر اوہناں چوکھیری تھاویں تاں اکو پوچا ہی پھیریا۔ گریرسن نے لہور توں لہندے منے دی ساری بولی نوں لہندی آکھیا ہے اوہناں دی واہی لیک موجب:", "nep": "नेपाली भाषा एक अन्तर्राष्ट्रिय भाषा हो। दक्षिण एसियाका दुई प्रमुख देश नेपाल र भारतमा राष्ट्रिय भाषाको रूपमा स्वीकृत एवं स-साना प्रदेशलगायत राज्यहरूमा माध्यम भाषाको स्तरमा सङ्गठित नेपाली भाषा एक जीवन्त भाषा हो। नेपाली भाषा खस, पर्वते, सिञ्जाली तथा गोरखा भाषा नामले पनि चिनिदै आएको छ। भाषाको प्रकृतिअनुसार कुनै पनि भाषाले विकास गर्दा जटिलतादेखि सरलता र स्थुलताबाट सूक्ष्मतातिर उन्मुख हुने प्रक्रिया ग्रहण गर्दछ। भाषाले सुष्ठता प्राप्त गर्दा आफ्नो सांस्कृतिक सञ्चारण र अभिव्यक्ति संस्कारलाई जरैबाट समातेर राख्दछ। यसैले नेपाली भाषालाई पनि एक विशाल वटवृक्ष भन्दा अत्युक्ति नहोला। सांस्कृतिक र संस्कारगत चरित्रको आधारमा नेपाली भाषाले विविधतालाई स्वीकार गरेको छ। नेपालदेखि फैलिएको यो भाषा पूर्वमा बर्मा, पश्चिममा पञ्जावसम्म, उत्तरमा हिमवत्खण्डदेखि दक्षिण एसियाको गाङ्गेय समभूमि तथा अन्य भाषा-परिवार क्षेत्रतिर पनि यसले विस्तार पाएको छ।", "sin": "ශ්‍රී ලංකාවේ ප්‍රධාන ජාතිය වන සිංහල ජනයාගේ මව් බස සිංහල වෙයි. අද වන විට මිලියන 20 කට අධික සිංහල සහ මිලියන 3කට අධික සිංහල නොවන ජනගහනයක් සිංහල භාෂාව භාවිත කරති. සිංහල‍ ඉන්දු-යුරෝපීය භාෂාවල උප ගණයක් වන ඉන්දු-ආර්ය භාෂා ගණයට අයිති වන අතර මාල දිවයින භාවිත කරන දිවෙහි භාෂාව සිංහලයෙන් පැවත එන්නකි. සිංහල ශ්රී ලංකාවේ නිල භාෂාවයි .", "khm": "ភាសាខ្មែរ ឬខេមរភាសា គឺជាភាសារបស់ ប្រជាជាតិខ្មែរ។ ភាសាសំស្ក្រឹត និងភាសាបាលីបាន​ជួយបង្កើតខេមរភាសា ព្រោះភាសាខ្មែរបានខ្ចីពាក្យច្រើនពីភាសាអស់នោះ។​ភាសាខ្មែរមានអក្សរក្រមវែងជាងគេនៅលើពិភពលោក។​ វាជាភាសាមួយដ៏ចំណាស់​ ដែលប្រហែលជាមានដើមកំណើតតាំងតែពី​ ២០០០ឆ្នាំមុនមកម៉្លេះ។ ភាសាខ្មែរមានអនុភាពលើភាសាថៃ និងភាសាឡាវ។​ភាសាពីរនេះបានខ្ចីពាក្យច្រើនណាស់ពីភាសាខ្មែរដែលនាំឲ្យពួកអឺរ៉ុបស្មានថាវានៅក្នុងក្រុមភាសាដូចគ្នា។ ភាសានោះគឺជារបស់ក្រុមភាសាថៃក្រាដៃនិងភាសាខ្មែរនៅក្រុមភាសាមនខ្មែរជាមួយភាសាមន និងភាសាវៀតណាម ដែលទាក់ទងភាសាសំស្ក្រឹត។", "tuk": "Türkmeniň häzirki ulanylýan edebi diliniň döreýşi köp kişi tarapyndan Magtymgulynyň şygryýeti bilen baglanyşdyrylýar. Magtymguly ilkinjileriň hatarynda halkyň ulanýan dilini öz çylşyrymly dini-pelsepi-sosial temalarda ýazylan şygyrlaryna sygdyrmagy başarypdyr. Şol bir wagtyň özünde gündelik türkmen durmuşynyň meselelerine hem örän ýiti çemeleşmegiň hötdesinden gelendigi üçin türkmenleriň we beýleki Merkezi Aziýa halklarynyň arasynda aýratyn hormatdan peýdalanýar.", "som": "Far Soomaaliga waxaa la qoray Sanadkii 1972-kii. Af soomaaliga waxa lagu qoraa xuruufta laatiinka ka dib 11 sano markii la magacaabay guddigii Af Soomaaliga sanadkii 1961. Dood dheer ka dib, guddigu wuu talo gafay. Dowladii Kacaanka ayaa dib boorka uga jaftay guddiga waxaana muddo 2 sano ah lagu hirgeliay qorista iyo barashada Af Soomaaliga. 18 nooc oo far Soomaali loo damacsanayaa ayaa waxaa soo bandhigay af yaqaano kala duwan. Guddigii Af Soomaaliga ee shaqaynayay 1961 ilaa 1972 ayaa doortay fartii afyaqaan Shire Jaamac Axmed i taas oo horay uu ugu tijaabiyay buugaag, biirayaal bille ah sida Iftiinka Aqoonta iyada ay jireen tartan balaaran oo dhanka xaruufta Carabiga ah maadama Soomaalidu Quraanka ku barato Alif, Ba. Xaruufta Laatiinka waxaa loo door biday arimo dhaqaale, qalabkii wadanka yiil iyo asbaabo kale.", "nya": "Chichewa ndi chimodzi mwa zilankhulo ziwiri zovomelezeka za dziko la Malawi (chilankhulo chinacho ndi Chingerezi), ndipo Chinyanja ndi chimodzi cha zilankhulo zisanu ndi ziwiri za dziko la Zambia, kumene chimalankhulidwa kwambiri kumvuma kwa dzikoli. Chichewa chimalankhulidwanso ku Mozambique, makamaka mdera la Tete ndi Niassa ndiponso ku Zimbabwe kumene, malinga ndi kafukufuku, ndi chilankhulo chachitatu pa zilankhulo zonse za dzikolo, pambuyo pa Chishona ndi Chindebele. Maiko a Malawi, Zambia ndi Mozambique ndi kumene chilankhulochi chimayankhulidwa kwambiri. Baibulo ndi Korani anatanthauziridwa mu Chichewa.", "aka": "Akan yɛ din a wɔde frɛ kasa ahorow a Akan ebusua no nyina ka. Akanfo taa de din soronko to sɛdea wɔkasa wɔ wɔn mbrɔn pii no mu. Akuapemfo frɛ wɔn kasae no Akuapem Twi. Kumasifo so frɛ wɔn kasae Asante Twi. Dɛmara so na Mfantefo frɛ wɔn kasae Fante. Akanfo a wɔte Bono afa mu so frɛ wɔn kasae no Bono.", "zul": "Lolu limi lusukela noma lwaqanjwa ngowayeyiSilo samabandla onke iNkosi uShaka Zulu. Lokhu kungenxa yegalelo noma iqhaza alibamba ekubumbeni isizwe esasihlukene phambilini. Ezinye zezilimi ezisukela olimini lwesiZulu singabala IsiXhosa, Isindebele kanye nesiSwati. Lezi zilimi zonke isiSwati, isiZulu, isiNdebele nesiXhosa, ziyizilimi zesiNguni. Isifunda sakwaBulawayo esise Zimbabwe naso singesinye sezifunda ezisebenzisa lolu limi lwesiZulu.", "kin": "Ikinyarwanda gifite umwanya ukomeye mu mibereho y’Abanyarwanda. Ni rwo rurimi ruha Abanyarwanda ubushobozi bwo kuranga isi, kugaragaza imbamutima, gushyikirana baganira, bungurana ibitekerezo, bagezanyaho ubutumwa. Ururimi rw’Ikinyarwanda rufite uruhare rukomeye mu guhamya Umunyarwanda udafite isoni n’ubwoba by’umuco we kandi utisuzugura. Umuco w’u Rwanda ukeneye abawurinda n’abawubungabunga ngo hato imico y’amahanga itawumira. Iyo nshingano rero ni iy’Abanyarwanda ubwabo. Inzira ya mbere iriho ni ukwigisha Ikinyarwanda.", "hat": "Sou plan istorik, li difisil pou nou bay presizyon sou ki lè kreyòl ayisyen parèt. Nan lane 1697, Franse yo ki t ap viv ann Ayiti depi 1629, vin okipe ofisyèlman pati lès Sen Domeng. Kiskeya se non tout zile a. Anvan 1697, se Panyòl ki te mèt tout zile a. Se apre Franse fin pran Sen Domeng, vin genyen tout kondisyon yo pou yon kreyòl ki baze sou franse parèt: Franse yo kòmanse komès esklav epi vin genyen nesesite pou kolon yo kominike avèk esklav yo. Se konsa lang kreyòl la vin parèt. Daprè kèk istoryen, nan lane 1728, te genyen anviwon 50 000 esklav ak yon ti kras mwens kolon nan Sen Domeng, men ant 1740 ak 1791 yo estime te genyen prèske yon demi-milyon Afriken ki t ap travay kòm esklav nan jaden Sen Domeng yo. Yo te rele esklav ki te fèt nan kontinan Afrik la « bosal », men sa ki te fèt Sen Domeng yo, yo te rele yo “kreyòl”. Kreyòl ayisyen grandi nan kontèks jaden Sen Domeng yo, kote esklav afriken, ki te pale lang Niger-Congo yo, te antre an kontak avèk kolon fransè ki te pale yon varyete franse ki diferan anpil de franse moun pale kounye a, epi esklav afriken sa yo eseye kominike avèk kolon fransè sa yo. Tankou nenpòt ki lòt lang kretyen vivan pale sou latè, kreyòl ayisyen se yon sistèm lengwistik total ki gen pwòp règ pa li, ki pa depann de okenn lòt lang pou li fonksyone. Genyen 7 milyon edmi moun ki pale li ann Ayiti, gen plis pase yon milyon lòt ki pale li nan dyaspora a. Kreyòl ayisyen pa fransè mawon. Se yon lang diferan de lang fransè, menmsi gen anpil mo nan vokabilè li ki soti nan fransè tankou mo franse soti souvan nan lang laten.", "ilo": "Idi Septiembre 2012, inpasa ti probinsia ti La Union ti maysa nga ordinansia a mangbigbig iti Ilokano a kas maysa nga opisial a pagsasao ti probinsia a kakuyogna ti Filipino ken Ingles a kas dagiti nailian ken opisial a pagsasao ti Filipinas. Daytoy ti immuna a probinsia idiay Filipinas a nangipasa ti maysa nga ordinansia a mangprotekta ken mangpadur-as iti patneng a pasasao, urayno adda dagiti sabali a pagsasao a naisasao iti probinsia ti La Union a mairaman ti Pangasinan ken Kankanaey.", "run": "Ururimi rw’ikirundi ni ururimi ruri mu ndimi z'Ubufirika bubantu. Rugoye nk'uko n'izindi ndimi zo kw'isi zigora. Ariko twokwama twibuka yuko ururimi kugira rukugore cane canke buhoro bivana n'urwo canke izo usanzwe uzi, kuko indimi zigiranira isano, mbere zimwe zigasangira n'umuryango. Inyandiko y'ikirundi ikoresha indome ndatini, ni ukuvuga indome z'ururimi (ikiratini) rudasangiye umuryango n'ikirundi. Ni co gituma umuntu wese agomba kurunonosora, akura amaboko mu mpuzu, agakenyera zikaguma kugira ashobore kururyohora. Yokwitwararika ukwiga inyandiko n'indimburo vy'ikirundi, akegera Abarundi bo bene urwo rurimi kugira aganire na bo, yumve ingene baruvuga, amenye imico yabo n'ubuzima bwabo bwa misi yose. Ivyo ni vyo vyomufasha kumenya ukuntu arwandika, aruvuga, n'ukuntu arukoresha mu gushikiriza ivyiyumviro vyiwe haba mu nyandiko canke mu mvugo.", "sna": "ChiShona mutauro unobatanidza ndimi dzakawanda dzinotaurwa muZimbabwe, Botswana neMozambique. Mitauro inobatanidzwa ichinzi ChiShona inosanganisira: Karanga, Manyika, Zezuru, Korekore, Ndau, Budya nemimwewo. Zvakadaro zvakafanira kuti tionesane kuti kune vamwe vatauri vasingafare kuti vanzi vari muboka remutauro weChiShona - ivava vanoona mitauro yavo semitauro yakazvimirira yoga isiri pasi peChiShona.", "uig": "ئۇيغۇر تىلى ئۇزاق تارىخقا ئىگە گۈزەل تىل. ئۇ ئۇزاق ئەسىرلىك تەرەققىيات داۋامىدا قەدىمكى تۈركىي تىللار دەۋرى، ئورخۇن ئۇيغۇر تىلى دەۋرى، ئىدىقۇت-خاقانىيە ئۇيغۇر تىلى دەۋرى، چاغاتاي ئۇيغۇر تىلى دەۋرىنى بېسىپ ئۆتكەن. بۇ جەرياندا ئۇيغۇر تىلى ئورخۇن-يېنسەي يېزىقى، قەدىمكى ئۇيغۇر يېزىقى، بىراخما يېزىقى، مانى يېزىقى، سوغدى يېزىقى، ئەرەب يېزىقى قاتارلىق يېزىقلار بىلەن خاتىرىلەنگەن (بەئزى يېزىقلار ئومۇميۈزلۈك، بەزى يېزىقلار قىسمەن قوللىنىلغان)، شۇنداقلا سانسىكرىتچە، ساكچە، تۇخارچە، سوغدچە، ئەرەبچە، پارسچە، موڭغۇلچە، خىتايچە قاتارلىق نۇرغۇرن تىللار بىلەن ئۇچرىشىپ ھەم ئۆزئارا تەسىر كۆرسىتىپ، ئۈزلۈكسىز مۇكەممەللەشكەن ۋە ھازىرقى زامان ئۇيغۇر تىلى دەۋرىگە كىرگەن. ھازىرقى زامان ئۇيغۇر تىلى 19-ئەسىرنىڭ ئاخىرى ۋە 20-ئەسىرنىڭ دەسلىپىدىن باشلاپ ئاۋۋال چەتئەللىك ئالىملار، ئاندىن ئېلىمىز ئالىملىرى تەرىپىدىن تەتقىق قىلىنغان. بىر ئەسىردىن كۆپرەك ۋاقىتتىن بۇيان ھازىرقى زامان ئۇيغۇر تىلى ئاساسەن ئەنئەنىۋى تىلشۇناسلىق بويىچە، قوشۇمچە قۇرۇلمىچىلىق تىلشۇناسلىقى، ئايلاندۇرما-تۇغدۇرما تىلشۇناسلىقى قاتارلىق نەزەرىيىلەر بويىچە تەتقىق قىلىنىپ، خېلى سىستېمىلىق تەسۋىرلەنگەن ھەم ئايشەم شەمىيېۋا، ئەمىر نەجىپ، غۇجىئەھمەد سەيدىۋاقاسوف، ئىبراھىم مۇتىئى، ئىمىن تۇرسۇن، خەمىت تۆمۈر، مىرسۇلتان ئوسمانوف، تۇردى ئەھمەد، نەسرۇللا يولبۇلدى، ئەنسەردىن مۇسا قاتارلىق تىلشۇناسلىرىمىز ۋە يېڭى بىر ئەۋلاد تىلچىلىرىمىزنىڭ ھەرقايسى دەۋرلەرگە، مېتودلارغا ۋەكىللىك قىلىدىغان ئەسەرلىرى مەيدانغا كېلىپ ئۇيغۇر تىلى تەتقىقاتىنى چوڭقۇرلاشتۇردى" } whatlanggo-1.0.1/trigrams.go000066400000000000000000000027431343770452200160400ustar00rootroot00000000000000package whatlanggo import ( "sort" "strings" "unicode" ) type trigram struct { trigram string count int } //convert punctuations and digits to space. func toTrigramChar(ch rune) rune { if isStopChar(ch) { return ' ' } return ch } func getTrigramsWithPositions(text string) map[string]int { counterMap := count(text) trigrams := make([]trigram, len(counterMap)) i := 0 for tg, count := range counterMap { trigrams[i] = trigram{tg, count} i++ } sort.SliceStable(trigrams, func(i, j int) bool { if trigrams[i].count == trigrams[j].count { return strings.Compare(trigrams[i].trigram, trigrams[j].trigram) < 0 } return trigrams[i].count < trigrams[j].count }) trigramsWithPositions := map[string]int{} j := 0 for i := len(trigrams) - 1; i >= 0; i-- { trigramsWithPositions[trigrams[i].trigram] = j j++ } return trigramsWithPositions } func count(text string) map[string]int { var r1, r2, r3 rune trigrams := map[string]int{} var txt []rune for _, r := range text { txt = append(txt, unicode.ToLower(toTrigramChar(r))) } txt = append(txt, ' ') r1 = ' ' r2 = txt[0] for i := 1; i < len(txt); i++ { r3 = txt[i] if !(r2 == ' ' && (r1 == ' ' || r3 == ' ')) { trigram := []rune{} trigram = append(trigram, r1) trigram = append(trigram, r2) trigram = append(trigram, r3) if trigrams[string(trigram)] == 0 { trigrams[string(trigram)] = 1 } else { trigrams[string(trigram)]++ } } r1 = r2 r2 = r3 } return trigrams } whatlanggo-1.0.1/trigrams_test.go000066400000000000000000000025421343770452200170740ustar00rootroot00000000000000package whatlanggo import "testing" func TestCount(t *testing.T) { tests := map[string]map[string]int{ "": {"": 0}, ",": {"": 0}, "a": {" a ": 1}, "-a-": {" a ": 1}, "yes": {" ye": 1, "yes": 1, "es ": 1}, "Give - IT...": {" gi": 1, "giv": 1, "ive": 1, "ve ": 1, " it": 1, "it ": 1}, } for key, value := range tests { got := count(key) for key1, value1 := range value { if got[key1] != value1 { t.Fatalf("%s got %d want %d", key1, got[key1], value1) } } } } func TestToTrigramChar(t *testing.T) { tests := map[rune]rune{ 'a': 'a', 'z': 'z', 'A': 'A', 'Z': 'Z', 'Ж': 'Ж', 'ß': 'ß', //punctuation, digits, ... etc '\t': ' ', '\n': ' ', ' ': ' ', '.': ' ', '0': ' ', '9': ' ', ',': ' ', '@': ' ', '[': ' ', ']': ' ', '^': ' ', '\\': ' ', '`': ' ', '|': ' ', '{': ' ', '}': ' ', '~': ' '} for r, want := range tests { got := toTrigramChar(r) if got != want { t.Fatalf("%q got %q want %q", r, got, want) } } } func TestGetTrigramsWithPositions(t *testing.T) { tests := map[string]map[string]int{ "xaaaaabbbbd": {"aaa": 0, "bbb": 1}, } for key, value := range tests { got := getTrigramsWithPositions(key) for trigram, position := range value { if got[trigram] != position { t.Fatalf("%s : want %d got %d", trigram, position, got[trigram]) } } } } whatlanggo-1.0.1/unicode.go000066400000000000000000000003271343770452200156320ustar00rootroot00000000000000package whatlanggo import "unicode" var ( _HiraganaKatakana = &unicode.RangeTable{ R16: append(unicode.Hiragana.R16, unicode.Katakana.R16...), R32: append(unicode.Hiragana.R32, unicode.Katakana.R32...), } ) whatlanggo-1.0.1/utils.go000066400000000000000000000005521343770452200153440ustar00rootroot00000000000000package whatlanggo import "unicode" //isStopChar returns true if r is space, punctuation or digit. func isStopChar(r rune) bool { if unicode.IsSymbol(r) || unicode.IsSpace(r) || unicode.IsPunct(r) || unicode.IsDigit(r) { return true } return false } //abs returns the absolute value of x. func abs(n int) int { if n < 0 { return n * -1 } return n } whatlanggo-1.0.1/utils_test.go000066400000000000000000000013341343770452200164020ustar00rootroot00000000000000package whatlanggo import "testing" func TestIsStopChar(t *testing.T) { tests := map[rune]bool{ //Space '\t': true, '\n': true, '\v': true, '\r': true, '\f': true, 0x85: true, 0xA0: true, //Digits '0': true, '1': true, '2': true, '3': true, '5': true, '6': true, '9': true, //Punct ';': true, '!': true, '"': true, //Symbol '`': true, } for r, want := range tests { got := isStopChar(r) if got != want { t.Fatalf("%v want %t got %t", r, want, got) } } } func TestAbs(t *testing.T) { tests := map[int]int{ 1: 1, -0: 0, 69: 69, -65535: 65535, 65535: 65535, } for x, want := range tests { got := abs(x) if got != want { t.Fatalf("want %d got %d", want, got) } } }