Spell checker for low-resource Konkani language

preprint OA: closed CC-BY-4.0
📄 Open PDF Full text JSON View at publisher

Abstract

Abstract This is the first time a spelling checker has been developed for a low-resource Indian language, Konkani, in Devanagari script. We have presented the design and implementation of the spell checker. Konkani is a macrolanguage, and developing a spell checker is challenging. Konkani spelling checker has 1,510,514 unique words in the dictionary.
Full text 153,723 characters · extracted from preprint-html · click to expand
Spell checker for low-resource Konkani language | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Research Article Spell checker for low-resource Konkani language Annie Rajan, Nehal Kalita, Ambuja Salgaonkar This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-6288011/v1 This work is licensed under a CC BY 4.0 License Status: Published Journal Publication published 28 Dec, 2025 Read the published version in Journal of Information and Communications Technology: Algorithms, Systems and Applications → Version 1 posted You are reading this latest preprint version Abstract This is the first time a spelling checker has been developed for a low-resource Indian language, Konkani, in Devanagari script. We have presented the design and implementation of the spell checker. Konkani is a macrolanguage, and developing a spell checker is challenging. Konkani spelling checker has 1,510,514 unique words in the dictionary. natural language processing Indian language diacritics minimum edit distance Python Figures Figure 1 1. Introduction India is a country with 22 languages in its schedule language list a and 38 languages that are not on the list. A developing country like India needs the digital footprint of these languages as various Natural Language Processing (NLP) tools. Building NLP tools like Part-of-Speech (PoS) tagger, Named Entity Recognizer (NER), morphological analyzer, etc. is a challenging task since to build these tools there is a need for an annotated corpus in the language in which the tool is built. Information processing in low-resource languages involves technologies and methods to understand corpora and linguistic databases. By processing this information, the resources of low-resource languages can be preserved, helping to bridge communication gaps. A spell checker is an application that flags words in a document that may not be spelled correctly. A spell checker is a basic need of a word processor in any language. The spell checker analyzes the written text in order to identify any misspellings and gives the best correct suggestions for those misspellings. Spell checking applications present valid suggestions to the user based on each misspelled word encountered in the user’s document. The user then selects from a list of suggestions or chooses to ignore the suggestions and accept the current word as valid. Regardless of how often this is done, the spell-checking application will perform its task independent of the types of misspelled words most commonly made by the user. The spell checkers are crucial in making quality content without any mistakes or ambiguity. A misspelled word can change the meaning, focus, and intention of a word and therefore its content, and also can lead to reading and attention discomfort. The essence of digital applications is exponentially increasing day by day. It is difficult to imagine a regular day without search engines, social media, online news, emails, and word processing. Further, there are other NLP applications like speech-to-text and text-to-speech engines, Optical Character Recognition (OCR) systems, speech synthesizers, and Machine Translation (MT) systems that are evolving. Spell checkers and correctors play a crucial role in the development of all these applications, and they are deeply coupled with the NLP ecosystem. Extensive work is reported for English spelling detection and a limited number of Indian languages, whereas no work has been reported for Konkani, the state language of Goa, India. Konkani is a low-resource macrolanguage that has multiple scripts and is classified in the linguistic database ISO 639-3 b . The Konkani language has 36 consonants and 12 vowels. The methods available for other languages cannot be directly applied to Konkani [1]. In this paper, we have tried to develop a spell checker for Konkani with 1,510,514 unique words [1]. 2. Literature Survey Spelling checkers are the basic tools needed for word processing and document preparation. It is a tool that enables users to check the spellings of the words in a text file, validates them, i.e., checks whether they are right or wrongly spelled, and, in case the spell checker has doubts about the spelling of the word, suggests possible alternatives. As mentioned in Ref. 12, spell checkers look for four types of possible errors: a wrong letter (‘byll’), an inserted letter (‘buall’), an omitted letter (‘bul’), or a pair of adjacent transposed letters (‘blul’) (considering the correct word to be ’bull’). These types of errors can be resolved by a dictionary lookup. Languages like Hindi [2]−[5], [28], Tamil [6−10], Punjabi [11]−[13], Kashmiri [14], Sanskrit [15], Bengali [16]−[20], Marathi [21], [22], Gujarati [23], [24], Sindhi [25]−[27], Telugu [28], [29], Kannada [30], [31], Malayalam [32]−[37], Urdu [38]−[41], Assamese[42]−[44], Manipuri [45], Nepali [46]−[48], Oriya [49], [50], and Bodo [51], have papers in spell checker. In Table 1 , the methods used in papers on spell checking for Indian languages have been listed. Table 1 Methods used in papers of spell checking and suggestion Sl. No. Language Reference Methods Train data size in words Test data size in words Overall accuracy 1 Hindi Ref. 2 Minimum edit distance, Statistical machine translation * 870 83.2% 2 Hindi Ref. 3 Character n-gram, Dictionary lookup * * * 3 Hindi Ref. 4 Dictionary lookup, Minimum edit distance ~ 117,000 291 * 4 Hindi Ref. 5 Minimum edit distance * * * 5 Hindi Ref. 28 Statistical machine translation, Convolutional neural network and Gated recurrent unit 108,587 * 85.4% 6 Tamil Ref. 6 Character bi-gram, Minimum edit distance, Word frequency, Hashing 4,000,000 2,105 98.4% 7 Tamil Ref. 7 Bloom filter, Minimum edit distance, Long short-term memory 249,056 * * 8 Tamil Ref. 8 Dictionary lookup, Character bi-gram, Minimum edit distance * * 89.13% 9 Tamil Ref. 9 Minimum edit distance, Distance matrix * * * 10 Tamil Ref. 10 Minimum edit distance, Rule-based, Soundex, Long short-term memory * * 95.67% 11 Punjabi Ref. 11 Lexicon lookup ~ 150,000 225 95.61% 12 Punjabi Ref. 12 Lexicon lookup * * 83.5% 13 Punjabi Ref. 13 Dictionary lookup, Minimum edit distance ~ 1,000,000 * 87.2% 14 Kashmiri Ref. 14 Dictionary lookup, Hashing, Binary search tree ~ 1,000,000 * ~ 80% 15 Sanskrit Ref. 15 Morphological rules 13,000 1,500 99% 16 Bangla Ref. 16 Partition around medoids clustering * 2,450 99.8% 17 Bangla Ref. 17 Dictionary lookup, Minimum edit distance 15,162,317 250,000 ~ 95% 18 Bangla Ref. 18 Double metaphone encoding * 1,607 91.67% 19 Bangla Ref. 19 Finite state automation * * ~ 70% 20 Bangla Ref. 20 Convolutional neural network, Bidirectional encoder representations from transformers model 513,000 52,400 87.8% 21 Marathi Ref. 21 Morphological rules 13,000 10,648 99.57% 22 Marathi Ref. 22 Minimum edit distance, Cosine similarity algorithm * 929,663 85.88%; 86.76% 23 Gujarati Ref. 23 Minimum edit distance 192,000 79,024 83.14% 24 Gujarati Ref. 24 Mel frequency cepstral coefficients, Gammatone frequency cepstral coefficients, Bidirectional encoder representations from transformers model * * * 25 Sindhi Ref. 25 Minimum edit distance, SoundEx algorithm, ShapeEx algorithm 100,000+ * * 26 Sindhi Ref. 26 Minimum edit distance, SoundEx algorithm, ShapeEx algorithm 250,000 1,744 * 27 Sindhi Ref. 27 Dictionary lookup 70,576 2,052 * 28 Telugu Ref. 28 Statistical machine translation, Convolutional neural network and Gated recurrent unit 92,716 * 89.3% 29 Telugu Ref. 29 Markov Models 3,300,000+ * * 30 Kannada Ref. 30 Morphological rules, Dictionary lookup 112,000 97.83% 31 Kannada Ref. 31 Morphological rules, Dictionary lookup 3,000,000 43,209 90% noun; 80% verb 32 Malayalam Ref. 32 Long short-term memory 1,505,279 500 55.2% 33 Malayalam Ref. 33 Character n-gram, Minimum edit distance ~ 80,000 10,000 91% 34 Malayalam Ref. 34 Finite state machine * * * 35 Malayalam Ref. 35 Dictionary lookup, Character n-gram ~ 10,000 10,000 * 36 Malayalam Ref. 36 Sequence-2-sequence, Lexicon lookup, Hashing, Character n-gram 10,000 6,000 91.26% 37 Malayalam Ref. 37 Word length difference, Minimum edit distance, Character n-gram, Phoneme similarity, Random forest classifer * * 71% 38 Urdu Ref. 38 SoundEx algorithm, Single edit distance 1,700,000 724 96.27% 39 Urdu Ref. 39 SoundEx algorithm, ShapeEx algorithm 1,700,000 280 93.5% 40 Urdu Ref. 40 Reverse edit distance 110,582 * * 41 Urdu Ref. 41 Character n-gram, Minimum edit distance 593,738 510,547 83.67% 42 Assamese Ref. 42 Dictionary lookup, SoundEx algorithm, Hashing, Minimum edit distance * 5,000+ * 43 Assamese Ref. 43 Minimum edit distance, Morphological rules, Dictionary lookup 16,000 1,000; 5,000; 10,000 0.58; 0.63; 0.69 recall 44 Assamese Ref. 44 Character tri-gram 220,743 500 76.6% 45 Manipuri Ref. 45 Dictionary lookup, Reverse dictionary lookup, Minimum edit distance, Phonetic encoding ~ 10,000 * * 46 Nepali Ref. 46 Character bi-gram, Bidirectional encoder representations from transformers model, Probabilistic spelling correction ~ 350,000 ~ 125,000 69.1% 47 Nepali Ref. 47 Dictionary lookup, Minimum edit distance, Decision Tree * * 78% 48 Nepali Ref. 48 Gated recurrent unit 120,000 * 73% 49 Odia Ref. 49 Confusion matrix, Character n-gram * 685 88% 50 Odia Ref. 50 Dictionary lookup, Minimum edit distance 36,000 * * 51 Bodo Ref. 51 Morphological rules, Dictionary lookup ~ 15,000 ~ 1,500,000 * * Values not listed Currently, there are no papers available on spell checking for the Konkani language. The spell checking approach discussed in this paper is mainly based on dictionary lookups and minimum edit distance [52]. 3. Methodology The Konkani language has 15 diacritics c . A diacritic is a mark added to a letter to show a change in pronunciation, tone, or emphasis. In Konkani, diacritics in the Devanagari script help distinguish sounds. For example, in the word कां (kā̃), the nasal diacritic ं (anusvara) above आ (ā) creates a nasalized ‘a’ sound, setting it apart from का (kā), which lacks this nasal quality. In this spell checker, the character count of these diacritics is set to 0.5, and the count of other alphabets is set to 1. The dictionary developed for the spell checker has the words arranged in sequential order based on their first character, words having the same first character are further arranged in ascending order of length. Table 2 List of abbreviations Sl. No. Abbreviations Full form 1 w i input word 2 w i_l length of input word 3 w s suggested words 4 w s_l expected length of suggested words 5 w d word from dictionary as per w s_l 6 s p final minimum similarity value of w i and w s in percentage 7 s c initial count of similar characters between w i and w d in sequence 8 w ln the longer word among w i and w d 9 w st the shorter word among w i and w d Table 2 shows the various abbreviations used while explaining the pipeline of code. The workings of our code are briefly explained with the help of the five steps mentioned below. Check if w i can be traced in the dictionary by iterating through the range of words having the same initial alphabet as w i . If it is traceable, then further steps should not be continued. Identify w s_l based on w i_l . If w i_l is 1.5 or 2.0, then w s_l can be within range (1.0, 2.0); if w i_l is 3.0, then w s_l can be within range (2.0, 4.0); if w i_l is 3.0, then w s_l can be within range (2.0, 4.0); if w i_l is 3.5, then w s_l can be within range (2.5, 4.5); if w i_l is 4.0, then w s_l can be within range (3.0, 5.0); if w i_l is > 4.0, then w s_l can be within range (((ceiling value of w i_l ) * 0.8), ( w i_l / 0.8)). Compare w i with words from dictionary whose length is within the range of w s_l . If w i_l is > 4.0, then s p is 80; if w i_l is 4.0, then s p is 75; if w i_l is 3.0, then s p is 66.66; if w i_l is 1.5 or 2.0, then s p is 50 (if s c is 1.0) or 75 (if s c > 1.0). Sort w s as per s p in descending order. Display the sorted w s . If the list of w s contains s p values > 80, then display the first ten w s as most preferred suggestions and the remaining as other probable suggestions. In step (3), the calculation of similarity in terms of the comparison is done in two steps. The first step is to determine s c . There are two methods, and these are demonstrated below with the help of pseudocode. Method A: Method B: In method A, the counter for w st is not updated if the current character of w st is not equal to the current character of w ln . This method is useful for a wrong input word like ‘friiend’, and a correct word to be suggested is ‘friend’. Since ‘friiend’ is the longer word and the character ‘i’ is repeated, the counter of this word can be incremented, whereas the counter for the correct and shorter word ‘friend’ can remain unchanged when iterating through the second ‘i’. In method B, the counters for both w st and w ln are incremented in every iteration, regardless of the equality of characters. This method is useful for a wrong input word like ‘friendey’, and a correct word to be suggested is ‘friendly’. Only the characters in position 7 (‘e’ and ‘l’) of both the words do not match, but the succeeding characters in position 8 (‘y’) do. Detecting suggestions for this wrong word through method A would lead to a lesser value of s c as only the first six characters would be identified as similar. So, the larger value among s c1 and s c2 is considered the value of s c . The second step of the calculation of similarity is to determine s p . For this, the formula ( s c / length of w ln ) * 100 is used, and the value obtained is compared with different conditions of percentage values depending on w i_l . If conditions are satisfied, then that value is considered the value of s p . 4. Spell Checker Tool The Konkani Spell Check d > tool has been designed using a Python (version 3.5) based web framework, Django (version 2.2). The Konkani dictionary is parsed using the ’csv’ library. The tool did not rely on any database management system. Its user interface incorporates responsive web design, so it changes based on the screen resolution. Figure 1 shows the output of words getting analyzed by the application. 5. Observations A test dataset of 4,853 unique Konkani words from books of Standards 1, 2, and 3 by SCERT−Goa e > was analyzed, out of which 4,041 words were identified as correct by our dictionary. Out of 812 unidentified words, 522 words were assigned suggestions by our system. The F-score value in Table 4 is calculated as per the confusion matrix outcomes shown in Table 3 . Table 3 Confusion matrix Outcome Value True Positive (TP) 4,041 False Positive (FP) 0 True Negative (TN) 812 False Negative (FN) 0 Table 4 Classification metrics Metric Formula Value Precision (P) TP / (TP + FP) 1 Recall (R) TP / (TP + FN) 0.833 F-score 2 * (P * R) / (P + R) 0.909 Table 5 presents a comparison of different incorrect word inputs for a proper noun, गणपत (gəɳəpət̪ə). Since this noun is of length 4.0 units, the expected s p is 75%. Hence, in Fig. 1 , it is shown as a suggestion for 1st and 2nd input words by the application. Table 5 Comparison of incorrect inputs Sl. no. Input Length Similarity (in %) 1 गणापत (gəɳɑːpət̪ə) 4.5 88.88 2 गणपण (gəɳəpəɳə) 4.0 75 3 गणपतता (gəɳəpət̪ət̪ɑː) 5.5 72.72 4 गतापत (gət̪ɑːpət̪ə) 4.5 66.66 6. Conclusion This is the first attempt at developing a spell checker for a low-resource language, Konkani. The analysis is done on the basis of morphology. The time complexity for giving suggestions for a specific type of wrong word is much faster than that of a conventional spell checker. The spell checker developed has a corpus size of 1,510,514, and the F-score obtained with a corpus size of 4,853 is 0.909. The spell checker tool is available online for researchers and other stakeholders. In the future, we would like to increase the corpus and F-score for the spell checker. Declarations Data Statement The data used to generate the dictionary was taken from the author of Ref. 1. The test data is available in a Harvard Dataverse repository f . Acknowledgements The author(s) did not receive any specific support or assistance from individuals or organizations that require acknowledgement for this research. References Desai SN (2017) Design and Implementation of Algorithms for Morphology Learning and its Applications [Doctoral dissertation], Goa University Kaur B, Singh H (2015) Design and Implementation of HINSPELL - Hindi Spell Checker using Hybrid approach. Int J Sci Res Manage 3:2058–2061 Jain A, Jain M, Detection and correction of non word spelling errors in Hindi language, (2014) (IEEE, Delhi, 2014), pp. 1–5. https://doi.org/10.1109/ICDMIC.2014.6954235 Sharma A, Jain P, Mukerjee DA (2013) Hindi spell checker [Semester project]. Indian Institute of Technology Kanpur Rachel S, Vasudha S, Shriya T, Rhutuja K, Gadhikar L, Vyakranly: Hindi GrammarSpelling Errors Detection and Correction System, (2023) (IEEE, Navi Mumbai, 2023). https://doi.org/10.1109/ICNTE56631.2023.10146610 Uthayamoorthy K, Kanthasamy K, Senthaalan T, Sarveswaran K, Dias G (2019) DDSpell-A Data Driven Spell Checker and Suggestion Generator for the Tamil Language, 19th international conference on advances in ICT for emerging regions , (IEEE, Colombo, 2020) pp. 1–6. https://doi.org/10.1109/ICTer48817.2019.9023698 Murugan S, Bakthavatchalam TA, Sankarasubbu M (2020) SymSpell and LSTM based Spell-Checkers for Tamil, Tamil Internet Conference Segar J, Sarveswaran K (2015) Contextual spell checking for Tamil language, 14th Tamil Internet Conference , pp. 1–5. http://repo.lib.jfn.ac.lk/ujrr/handle/123456789/4224 Kumar P, Kannan A, Goel N (2020) Design and Implementation of NLP-Based Spell Checker for the Tamil Language, 1st International Electronic Conference on Applied Sciences , Noida, pp. 1–6 Sampath A, Shanmugavel V (2022) Hybrid Tamil spell checker with combined character splitting. Concurrency Comput Pract Experience 35. https://doi.org/10.1002/cpe.7440 Lehal GS (2007) Design and implementation of Punjabi spell checker. Int J Systemics Cybernetics Inf 3:70–75 Kaur J, Garg K (2014) Hybrid Approach for Spell Checker and Grammar Checker for Punjabi. Int J Adv Res Comput Sci Softw Eng 4:62–67 Kaur R, Bhatia P (2010) Spell Checker for Gurmukhi Script [Master’s thesis], Thapar Institute of Engineering And Technology http://hdl.handle.net/10266/520 Lawaye A, Purkayastha BS (2016) Design and Implementation of Spell Checker for Kashmiri. Int J Sci Res 5:199–200 Tapaswi N (2012) Morphological-based Spellchecker for Sanskrit Sentences. Int J Sci Technol Res 1:1–4 Mandal P, Hossain BMM (2017) Clustering-based Bangla spell checker, International Conference on Imaging, Vision & Pattern Recognition , 2017 (IEEE, Dhaka, https://doi.org/10.1109/ICIVPR.2017.7890878 Chaudhuri BB (2001) Reversed word dictionary and phonetically similar word grouping based spell-checker to Bangla text, Proc. LESAL Workshop – Mumbai UzZaman N, Khan M, A double metaphone encoding for Bangla and its application in spelling checker, (2005) (IEEE, Wuhan, 2006), pp. 705–710. https://doi.org/10.1109/NLPKE.2005.1598827 Abdullah MM, Islam MZ, Khan M (2007) Error-tolerant finite-state recognizer and string pattern similarity based spelling-checker for Bangla, Proceeding of 5th international conference on natural language processing , (ICON, 2007) Rahman CR, Rahman MH, Zakir S, Rafsan M, Ali ME (2023) BSpell: A CNN-Blended BERT Based Bangla Spell Checker, Proceedings of the First Workshop on Bangla Language Processing , 2023, Vol. 1 (ACL, Singapore, 2023), pp. 7–17. https://doi.org/10.18653/v1/2023.banglalp-1.2 Dixit V, Dethe S, Joshi RK (2005) Design and implementation of a morphology-based spellchecker for Marathi, and Indian language. Archives control Sci 15:251–258 Patil KT, Bhavsar RP, Pawar BV (2022) Contrastive study of minimum edit distance and cosine similarity measures in the context of word suggestions for misspelled Marathi words, Multimedia Tools and Applications 82 15573–15591. https://link.springer.com/article/10.1007/s11042-022-13948-z Patel H, Patel B, Lad K, Jodani: A spell checking and suggesting tool for Gujarati language, (2021) Vol 11 (IEEE, Noida, 2021), pp. 94–99. https://doi.org/10.1109/Confluence51648.2021.9377072 Dua M, Bhagat B, Dua S (2024) An amalgamation of integrated features with DeepSpeech2 architecture and improved spell corrector for improving Gujarati language ASR system, International Journal of Speech Technology 27 87–99. https://link.springer.com/article/10.1007/s10772-024-10082-z Bhatti Z, Ismaili IA, Hakro DN, Soomro WJ (2016) Phonetic-Based Sindhi Spellchecker System Using a Hybrid Model, Digital Scholarship in the Humanities Advance Access 31 264–282. https://doi.org/10.1093/llc/fqv005 Dahar IA, Abbas F, Rajput U, Hussain A, Azhar F (2018) An Efficient Sindhi Spelling Checker for Microsoft Word. Int J Comput Sci Netw Secur 18:144–150 Umair M, Rahman MU (2013) Analysis of Sindhi Spelling Error Patterns for Spelling Error Detection and Correction, International Conference on Computer & Emerging Technologies Etoori P, Chinnakotla M, Mamidi R (2018) Automatic spelling correction for resource-scarce languages using deep learning, Proceedings of ACL 2018- Student Research Workshop , Vol 1 (ACL, Melbourne, 2018), pp. 146–152. https://doi.org/10.18653/v1/P18-3021 Murthy KN (2008) Technology for Telugu. Bhasha 1:70–95 Murthy SR, Madi V, Sachin D, Kumar PR (2012) A non-word Kannada spell checker using morphological analyzer and dictionary lookup method. Int J Eng Sci Emerg Technol 2:43–52 Murthy SR, Akshatha AN, Upadhyaya CG, Kumar PR (2017) Kannada spell checker with sandhi splitter, International Conference on Advances in Computing, Communications and Informatics , Vol 5 (IEEE, Udupi, 2017), pp. 950–956. https://doi.org/10.1109/ICACCI.2017.8125964 Sooraj S, Manjusha K, Kumar MA, Soman KP (2018) Deep learning based spell checker for Malayalam language. J Intell Fuzzy Syst 34:1427–1434 Hema PH, Sunitha C (2016) Malayalam spell checker using n-gram method, Computational Intelligence in Data Mining 1 217–225. https://link.springer.com/chapter/10.1007/978-81-322-2734-2_23 Manohar N, Lekshmipriya PT, Jayan V, Bhadran VK, Spellchecker for Malayalam using finite state transition models, (2015) Vol 3 (IEEE, Trivandrum, 2016), pp. 157–161. https://doi.org/10.1109/RAICS.2015.7488406 Ambili T, Panchamim SK, Subash N (2016) Automatic Error Detection and Correction in Malayalam. Int J Sci Technol Eng 3:92–96 Ratman DJ, Karthika AN, Praveena K, Tania R, Thara S, Prema N (2024) Phonogram-based Automatic Typo Correction in Malayalam Social Media Comments. Procedia Comput Sci 233:391–400. https://doi.org/10.1016/j.procs.2024.03.229 Dhanya S, Kaimal MR, Nedungadi P (2024) Automatic Spelling Error Classification in Malayalam, ICT: Cyber Security and Applications , Vol 916 (Springer Nature, LNNS, 2024), pp. 301–313. https://link.springer.com/chapter/ 10.1007/978-981-97-0744-7_25 Naseem T (2004) A Hybrid Approach for Urdu Spell Checking [Master’s thesis], National University of Computer & Emerging Sciences Naseem T, Hussain S (2007) A novel approach for ranking spelling error corrections for Urdu, Language Resources and Evaluation 41 117–128. https://link.springer.com/article/10.1007/s10579-007-9028-6 Iqbal S, Anwar W, Bajwa UI, Rehman Z (2013) Urdu spell checking: Reverse edit distance approach, Proceedings of the 4th workshop on South and Southeast Asian natural language processing , Vol. 4 (ACL, Nagoya, 2013), pp. 58–65. https://aclanthology.org/W13-4707 Aziz R, Anwar MW, Jamal MH, Bajwa UI, Castilla AK, Rios CU (2023) Thompson and I Ashraf, Real Word Spelling Error Detection and Correction for Urdu Language. IEEE Access 11:100948–100962. https://doi.org/10.1109/ACCESS.2023.3312730 Das M, Borgohain S, Gogoi J, Nair SB, Design and implementation of a spell checker for Assamese, (2002) Vol 1 (IEEE, Hyderabad, 2003), pp. 156–162. https://doi.org/10.1109/LEC.2002.1182303 Kashyap K (2015) Luitspell: development of an Assamese language spell checker for open office writer. Eur J Adv Eng Technol 2:135–138 Choudhury R, Deb N, Kashyap K (2018) Context-Sensitive Spelling Checker for Assamese Language, Recent developments in machine learning and data analytics , Vol. 740 (Springer Nature, AISC, 2019), p. 177188. https://link.springer.com/chapter/ 10.1007/978-981-13-1280-9_18 Devi HM, Keat T, Chaudhuri BB (2011) Spelling Correction in Manipuri Text, Advanced Computing Applications Databases and Networks , (Narosa, Silchar, 2011), pp. 21–29 Luitel N, Bekoju N, Sah AK, Shakya S (2024) Contextual Spelling Correction with Language Model for Low-resource Setting, International Conference on Inventive Computation Technologies (ICICT) , Vol 7 (IEEE, Lalitpur, 2024), pp. 582–589. https://doi.org/10.1109/ICICT60155.2024.10544712 Devkota B, Adhikar B, Shrestha D (2015) Integrating romanized Nepali spellchecker with SMS based decision support system for Nepalese farmers, 9th International Conference on Software, Knowledge, Information Management and Applications , Vol 3 (IEEE, Kathmandu, 2016), pp. 1–6. https://doi.org/10.1109/SKIMA.2015.7400046 Prasain B, Lamichhane N, Pandey N, Adhikari P, Mudbhari P (2022) Nepali Spelling Checker. J Eng Sci 1:128–130 Mohapatra Y, Mishra AK, Mishra AK (2013) Spell Checker for OCR. Int J Comput Sci Inform Technol 4:91–97 Pradhan A, Dalai SS (2020) Design of Odia Spell Checker with word Prediction. Int J Eng Res Technol 8:1–4 Bhatima B, Prabha CS (2016) Linguistic foundations for Bodo spell checker [Doctoral dissertation], Gauhati University http://hdl.handle.net/10603/235097 Ristad ES, Yianilos PN (1998) Learning string-edit distance. IEEE Trans Pattern Anal Mach Intell 20:522–532. https://doi.org/10.1109/34.682181 Footnotes https://www.mha.gov.in/sites/default/files/EighthSchedule_19052017.pdf https://www.loc.gov/standards/iso639-2/php/code_list.php https://www.sussex.ac.uk/informatics/punctuation/misc/diacritics https://konkanispellcheck.pythonanywhere.com/ https://scert.goa.gov.in/ https://doi.org/10.7910/DVN/ECWMBB Additional Declarations The authors declare no competing interests. Cite Share Download PDF Status: Published Journal Publication published 28 Dec, 2025 Read the published version in Journal of Information and Communications Technology: Algorithms, Systems and Applications → Version 1 posted You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-6288011","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Research Article","associatedPublications":[],"authors":[{"id":432684338,"identity":"263f2d88-b021-43e1-8e91-67885f8e386b","order_by":0,"name":"Annie Rajan","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA7ElEQVRIiWNgGAWjYPACNgZ+ZsaGAx8YGBKI1yLZ3nzw4QwStDAwGJw5lmzMQ4wW/tm9B5gravgYGG7kmEnbttnl8bM3MH74mINbi8SdcwmMZ46xMTDOAGrJbUsuluw5wCw5cxsea27kGDA2sLExMEuAtTAnbriRwMbMi0eLPFjLPzYGNpAWy7Z6wloMQFoa29gYeHiA3mdsO0xYiyFYSx8bgwQ7MJB7zh1PnNlzsBmvX+TADvt2jMH+MDAqf5RVJ/YD9X74iM/7DAzsPxgYjtU3gJiMbGCyAa96KKiB0n+IUTwKRsEoGAUjDQAARq5QUbJWwaIAAAAASUVORK5CYII=","orcid":"https://orcid.org/0000-0001-6201-2654","institution":"Dhempe College of Arts \u0026 Science","correspondingAuthor":true,"prefix":"","firstName":"Annie","middleName":"","lastName":"Rajan","suffix":""},{"id":432684339,"identity":"d97b5e55-0a28-46c5-8515-a30aac0daa8c","order_by":1,"name":"Nehal Kalita","email":"","orcid":"https://orcid.org/0000-0001-6997-5621","institution":"","correspondingAuthor":false,"prefix":"","firstName":"Nehal","middleName":"","lastName":"Kalita","suffix":""},{"id":432684340,"identity":"86ff6686-3ab3-4454-9ca2-08f41eb8f95b","order_by":2,"name":"Ambuja Salgaonkar","email":"","orcid":"","institution":"University of Mumbai","correspondingAuthor":false,"prefix":"","firstName":"Ambuja","middleName":"","lastName":"Salgaonkar","suffix":""}],"badges":[],"createdAt":"2025-03-23 11:48:31","currentVersionCode":1,"declarations":{"humanSubjects":false,"vertebrateSubjects":false,"conflictsOfInterestStatement":false,"humanSubjectEthicalGuidelines":false,"humanSubjectConsent":false,"humanSubjectClinicalTrial":false,"humanSubjectCaseReport":false,"vertebrateSubjectEthicalGuidelines":false},"doi":"10.21203/rs.3.rs-6288011/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-6288011/v1","draftVersion":[],"editorialEvents":[{"content":"https://doi.org/10.64189/ict.25316","type":"published","date":"2025-12-29T00:00:00+00:00"}],"editorialNote":"","failedWorkflow":false,"files":[{"id":79157743,"identity":"f30bfffe-83bc-4a98-b1eb-0e8e4108a1ae","added_by":"auto","created_at":"2025-03-25 06:41:01","extension":"png","order_by":1,"title":"Figure 1","display":"","copyAsset":false,"role":"figure","size":63910,"visible":true,"origin":"","legend":"\u003cp\u003eAnalysis through Konkani Spell Check tool\u003c/p\u003e","description":"","filename":"Figure12.png","url":"https://assets-eu.researchsquare.com/files/rs-6288011/v1/0fda5470ba626629d0096d33.png"},{"id":99561253,"identity":"fb7315a1-ac54-4180-8e86-5c5d1a7b822b","added_by":"auto","created_at":"2026-01-05 21:22:33","extension":"pdf","order_by":0,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":916904,"visible":true,"origin":"","legend":"","description":"","filename":"manuscript.pdf","url":"https://assets-eu.researchsquare.com/files/rs-6288011/v1/3867ffff-9400-4743-bcc0-c653b5632fb6.pdf"}],"financialInterests":"The authors declare no competing interests.","formattedTitle":"\u003cp\u003eSpell checker for low-resource Konkani language\u003c/p\u003e","fulltext":[{"header":"1. Introduction","content":"\u003cp\u003eIndia is a country with 22 languages in its schedule language list\u003csup\u003ea\u003c/sup\u003e and 38 languages that are not on the list. A developing country like India needs the digital footprint of these languages as various Natural Language Processing (NLP) tools. Building NLP tools like Part-of-Speech (PoS) tagger, Named Entity Recognizer (NER), morphological analyzer, etc. is a challenging task since to build these tools there is a need for an annotated corpus in the language in which the tool is built. Information processing in low-resource languages involves technologies and methods to understand corpora and linguistic databases. By processing this information, the resources of low-resource languages can be preserved, helping to bridge communication gaps.\u003c/p\u003e \u003cp\u003eA spell checker is an application that flags words in a document that may not be spelled correctly. A spell checker is a basic need of a word processor in any language. The spell checker analyzes the written text in order to identify any misspellings and gives the best correct suggestions for those misspellings. Spell checking applications present valid suggestions to the user based on each misspelled word encountered in the user\u0026rsquo;s document. The user then selects from a list of suggestions or chooses to ignore the suggestions and accept the current word as valid. Regardless of how often this is done, the spell-checking application will perform its task independent of the types of misspelled words most commonly made by the user. The spell checkers are crucial in making quality content without any mistakes or ambiguity. A misspelled word can change the meaning, focus, and intention of a word and therefore its content, and also can lead to reading and attention discomfort.\u003c/p\u003e \u003cp\u003eThe essence of digital applications is exponentially increasing day by day. It is difficult to imagine a regular day without search engines, social media, online news, emails, and word processing. Further, there are other NLP applications like speech-to-text and text-to-speech engines, Optical Character Recognition (OCR) systems, speech synthesizers, and Machine Translation (MT) systems that are evolving. Spell checkers and correctors play a crucial role in the development of all these applications, and they are deeply coupled with the NLP ecosystem. Extensive work is reported for English spelling detection and a limited number of Indian languages, whereas no work has been reported for Konkani, the state language of Goa, India. Konkani is a low-resource macrolanguage that has multiple scripts and is classified in the linguistic database ISO 639-3\u003csup\u003eb\u003c/sup\u003e. The Konkani language has 36 consonants and 12 vowels. The methods available for other languages cannot be directly applied to Konkani [1]. In this paper, we have tried to develop a spell checker for Konkani with 1,510,514 unique words [1].\u003c/p\u003e"},{"header":"2. Literature Survey","content":"\u003cp\u003eSpelling checkers are the basic tools needed for word processing and document preparation. It is a tool that enables users to check the spellings of the words in a text file, validates them, i.e., checks whether they are right or wrongly spelled, and, in case the spell checker has doubts about the spelling of the word, suggests possible alternatives. As mentioned in Ref. 12, spell checkers look for four types of possible errors: a wrong letter (\u0026lsquo;byll\u0026rsquo;), an inserted letter (\u0026lsquo;buall\u0026rsquo;), an omitted letter (\u0026lsquo;bul\u0026rsquo;), or a pair of adjacent transposed letters (\u0026lsquo;blul\u0026rsquo;) (considering the correct word to be \u0026rsquo;bull\u0026rsquo;). These types of errors can be resolved by a dictionary lookup.\u003c/p\u003e \u003cp\u003eLanguages like Hindi [2]\u0026minus;[5], [28], Tamil [6\u0026minus;10], Punjabi [11]\u0026minus;[13], Kashmiri [14], Sanskrit [15], Bengali [16]\u0026minus;[20], Marathi [21], [22], Gujarati [23], [24], Sindhi [25]\u0026minus;[27], Telugu [28], [29], Kannada [30], [31], Malayalam [32]\u0026minus;[37], Urdu [38]\u0026minus;[41], Assamese[42]\u0026minus;[44], Manipuri [45], Nepali [46]\u0026minus;[48], Oriya [49], [50], and Bodo [51], have papers in spell checker. In Table\u0026nbsp;\u003cspan refid=\"Tab1\" class=\"InternalRef\"\u003e1\u003c/span\u003e, the methods used in papers on spell checking for Indian languages have been listed.\u003c/p\u003e \u003cp\u003e \u003cdiv class=\"gridtable\"\u003e\u003ctable float=\"Yes\" id=\"Tab1\" border=\"1\"\u003e \u003ccaption language=\"En\"\u003e \u003cdiv class=\"CaptionNumber\"\u003eTable 1\u003c/div\u003e \u003cdiv class=\"CaptionContent\"\u003e \u003cp\u003eMethods used in papers of spell checking and suggestion\u003c/p\u003e \u003c/div\u003e \u003c/caption\u003e \u003ccolgroup cols=\"7\"\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c1\" colnum=\"1\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c2\" colnum=\"2\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c3\" colnum=\"3\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c4\" colnum=\"4\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c5\" colnum=\"5\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c6\" colnum=\"6\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c7\" colnum=\"7\"\u003e\u003c/div\u003e \u003cthead\u003e \u003ctr\u003e \u003cth align=\"left\" colname=\"c1\"\u003e \u003cp\u003eSl. No.\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c2\"\u003e \u003cp\u003eLanguage\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c3\"\u003e \u003cp\u003eReference\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMethods\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c5\"\u003e \u003cp\u003eTrain data size in words\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c6\"\u003e \u003cp\u003eTest data size in words\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c7\"\u003e \u003cp\u003eOverall accuracy\u003c/p\u003e \u003c/th\u003e \u003c/tr\u003e \u003c/thead\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e1\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eHindi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 2\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, Statistical machine translation\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e870\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e83.2%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e2\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eHindi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 3\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter n-gram, Dictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e3\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eHindi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 4\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;117,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e291\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e4\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eHindi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 5\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e5\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eHindi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 28\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eStatistical machine translation, Convolutional neural network and Gated recurrent unit\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e108,587\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e85.4%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e6\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTamil\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 6\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter bi-gram, Minimum edit distance, Word frequency, Hashing\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e4,000,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e2,105\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e98.4%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e7\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTamil\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 7\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eBloom filter, Minimum edit distance, Long short-term memory\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e249,056\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e8\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTamil\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 8\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Character bi-gram, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e89.13%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e9\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTamil\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 9\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, Distance matrix\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e10\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTamil\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 10\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, Rule-based, Soundex, Long short-term memory\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e95.67%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e11\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003ePunjabi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 11\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eLexicon lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;150,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e225\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e95.61%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e12\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003ePunjabi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 12\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eLexicon lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e83.5%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e13\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003ePunjabi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 13\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;1,000,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e87.2%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e14\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eKashmiri\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 14\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Hashing, Binary search tree\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;1,000,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e~\u0026thinsp;80%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e15\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eSanskrit\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 15\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMorphological rules\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e13,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e1,500\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e99%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e16\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBangla\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 16\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003ePartition around medoids clustering\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e2,450\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e99.8%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e17\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBangla\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 17\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e15,162,317\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e250,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e~\u0026thinsp;95%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e18\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBangla\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 18\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDouble metaphone encoding\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e1,607\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e91.67%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e19\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBangla\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 19\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eFinite state automation\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e~\u0026thinsp;70%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e20\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBangla\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 20\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eConvolutional neural network, Bidirectional encoder representations from transformers model\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e513,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e52,400\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e87.8%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e21\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMarathi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 21\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMorphological rules\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e13,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e10,648\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e99.57%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e22\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMarathi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 22\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, Cosine similarity algorithm\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e929,663\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e85.88%; 86.76%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e23\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eGujarati\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 23\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e192,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e79,024\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e83.14%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e24\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eGujarati\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 24\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMel frequency cepstral coefficients, Gammatone frequency cepstral coefficients, Bidirectional encoder representations from transformers model\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e25\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eSindhi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 25\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, SoundEx algorithm, ShapeEx algorithm\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e100,000+\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e26\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eSindhi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 26\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, SoundEx algorithm, ShapeEx algorithm\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e250,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e1,744\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e27\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eSindhi\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 27\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e70,576\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e2,052\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e28\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTelugu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 28\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eStatistical machine translation, Convolutional neural network and Gated recurrent unit\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e92,716\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e89.3%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e29\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTelugu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 29\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMarkov Models\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e3,300,000+\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e30\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eKannada\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 30\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMorphological rules, Dictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e\u0026nbsp;\u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e112,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e97.83%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e31\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eKannada\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 31\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMorphological rules, Dictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e3,000,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e43,209\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e90% noun; 80% verb\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e32\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 32\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eLong short-term memory\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e1,505,279\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e500\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e55.2%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e33\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 33\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter n-gram, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;80,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e91%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e34\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 34\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eFinite state machine\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e35\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 35\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Character n-gram\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e36\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 36\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eSequence-2-sequence, Lexicon lookup, Hashing, Character n-gram\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e6,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e91.26%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e37\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eMalayalam\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 37\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eWord length difference, Minimum edit distance, Character n-gram, Phoneme similarity, Random forest classifer\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e71%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e38\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eUrdu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 38\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eSoundEx algorithm, Single edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e1,700,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e724\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e96.27%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e39\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eUrdu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 39\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eSoundEx algorithm, ShapeEx algorithm\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e1,700,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e280\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e93.5%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e40\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eUrdu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 40\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eReverse edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e110,582\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e41\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eUrdu\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 41\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter n-gram, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e593,738\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e510,547\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e83.67%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e42\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eAssamese\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 42\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, SoundEx algorithm, Hashing, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e5,000+\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e43\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eAssamese\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 43\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMinimum edit distance, Morphological rules, Dictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e16,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e1,000; 5,000; 10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e0.58; 0.63; 0.69 recall\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e44\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eAssamese\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 44\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter tri-gram\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e220,743\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e500\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e76.6%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e45\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eManipuri\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 45\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Reverse dictionary lookup, Minimum edit distance, Phonetic encoding\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;10,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e46\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eNepali\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 46\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eCharacter bi-gram, Bidirectional encoder representations from transformers model, Probabilistic spelling correction\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;350,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e~\u0026thinsp;125,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e69.1%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e47\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eNepali\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 47\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Minimum edit distance, Decision Tree\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e78%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e48\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eNepali\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 48\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eGated recurrent unit\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e120,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e73%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e49\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eOdia\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 49\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eConfusion matrix, Character n-gram\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e685\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e88%\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e50\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eOdia\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 50\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eDictionary lookup, Minimum edit distance\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e36,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e51\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eBodo\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eRef. 51\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003eMorphological rules, Dictionary lookup\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c5\"\u003e \u003cp\u003e~\u0026thinsp;15,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c6\"\u003e \u003cp\u003e~\u0026thinsp;1,500,000\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c7\"\u003e \u003cp\u003e*\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/colgroup\u003e \u003ctfoot\u003e \u003ctr\u003e\u003ctd colspan=\"7\"\u003e* Values not listed\u003c/td\u003e\u003c/tr\u003e \u003c/tfoot\u003e \u003c/table\u003e\u003c/div\u003e \u003c/p\u003e \u003cp\u003eCurrently, there are no papers available on spell checking for the Konkani language. The spell checking approach discussed in this paper is mainly based on dictionary lookups and minimum edit distance [52].\u003c/p\u003e"},{"header":"3. Methodology","content":"\u003cp\u003eThe Konkani language has 15 diacritics\u003csup\u003ec\u003c/sup\u003e. A diacritic is a mark added to a letter to show a change in pronunciation, tone, or emphasis. In Konkani, diacritics in the Devanagari script help distinguish sounds. For example, in the word कां (kā̃), the nasal diacritic ं (anusvara) above आ (ā) creates a nasalized ‘a’ sound, setting it apart from का (kā), which lacks this nasal quality. In this spell checker, the character count of these diacritics is set to 0.5, and the count of other alphabets is set to 1. The dictionary developed for the spell checker has the words arranged in sequential order based on their first character, words having the same first character are further arranged in ascending order of length.\u003c/p\u003e \u003cp\u003e \u003c/p\u003e\u003cdiv class=\"gridtable\"\u003e\u003cdiv align=\"left\" class=\"colspec\" colname=\"c1\" colnum=\"1\"\u003e\u003c/div\u003e\u003cdiv align=\"left\" class=\"colspec\" colname=\"c2\" colnum=\"2\"\u003e\u003c/div\u003e\u003cdiv align=\"left\" class=\"colspec\" colname=\"c3\" colnum=\"3\"\u003e\u003c/div\u003e\u003ctable float=\"Yes\" id=\"Tab2\" border=\"1\"\u003e\u003ccaption language=\"En\"\u003e \u003cdiv class=\"CaptionNumber\"\u003eTable 2\u003c/div\u003e \u003cdiv class=\"CaptionContent\"\u003e \u003cp\u003eList of abbreviations\u003c/p\u003e \u003c/div\u003e \u003c/caption\u003e\u003ccolgroup cols=\"3\"\u003e\u003c/colgroup\u003e\u003cthead\u003e\u003ctr\u003e\u003cth align=\"left\" colname=\"c1\"\u003e \u003cp\u003eSl. No.\u003c/p\u003e \u003c/th\u003e\u003cth align=\"left\" colname=\"c2\"\u003e \u003cp\u003eAbbreviations\u003c/p\u003e \u003c/th\u003e\u003cth align=\"left\" colname=\"c3\"\u003e \u003cp\u003eFull form\u003c/p\u003e \u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e1\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003einput word\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e2\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003elength of input word\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e3\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003esuggested words\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e4\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eexpected length of suggested words\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e5\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ed\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003eword from dictionary as per \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e6\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003efinal minimum similarity value of \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e and \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e in percentage\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e7\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003einitial count of similar characters between \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e and \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ed\u003c/em\u003e\u003c/sub\u003e in sequence\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e8\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003eln\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003ethe longer word among \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e and \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ed\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e9\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e\u003cem\u003ew\u003c/em\u003e\u003csub\u003est\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003ethe shorter word among \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e and \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ed\u003c/em\u003e\u003c/sub\u003e\u003c/p\u003e \u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e \u003cp\u003e\u003c/p\u003e \u003cp\u003eTable\u0026nbsp;\u003cspan refid=\"Tab2\" class=\"InternalRef\"\u003e2\u003c/span\u003e shows the various abbreviations used while explaining the pipeline of code. The workings of our code are briefly explained with the help of the five steps mentioned below.\u003c/p\u003e \u003cp\u003e \u003c/p\u003e\u003col\u003e \u003cspan\u003e \u003cli\u003e \u003cp\u003eCheck if \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e can be traced in the dictionary by iterating through the range of words having the same initial alphabet as \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e. If it is traceable, then further steps should not be continued.\u003c/p\u003e \u003c/li\u003e \u003c/span\u003e \u003cspan\u003e \u003cli\u003e \u003cp\u003eIdentify \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e based on \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e. If \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 1.5 or 2.0, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (1.0, 2.0); if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 3.0, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (2.0, 4.0); if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 3.0, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (2.0, 4.0); if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 3.5, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (2.5, 4.5); if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 4.0, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (3.0, 5.0); if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is \u0026gt; 4.0, then \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e can be within range (((ceiling value of \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e) * 0.8), (\u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e / 0.8)).\u003c/p\u003e \u003c/li\u003e \u003c/span\u003e \u003cspan\u003e \u003cli\u003e \u003cp\u003eCompare \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003ei\u003c/em\u003e\u003c/sub\u003e with words from dictionary whose length is within the range of \u003cem\u003ew\u003c/em\u003e\u003csub\u003es_l\u003c/sub\u003e. If \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is \u0026gt; 4.0, then \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e is 80; if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 4.0, then \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e is 75; if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 3.0, then \u003cem\u003es\u003c/em\u003e\u003csub\u003ep\u003c/sub\u003e is 66.66; if \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e is 1.5 or 2.0, then \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e is 50 (if \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e is 1.0) or 75 (if \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e \u0026gt; 1.0).\u003c/p\u003e \u003c/li\u003e \u003c/span\u003e \u003cspan\u003e \u003cli\u003e \u003cp\u003eSort \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e as per \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e in descending order.\u003c/p\u003e \u003c/li\u003e \u003c/span\u003e \u003cspan\u003e \u003cli\u003e \u003cp\u003eDisplay the sorted \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e. If the list of \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e contains \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e values \u0026gt; 80, then display the first ten \u003cem\u003ew\u003c/em\u003e\u003csub\u003e\u003cem\u003es\u003c/em\u003e\u003c/sub\u003e as most preferred suggestions and the remaining as other probable suggestions.\u003c/p\u003e \u003c/li\u003e \u003c/span\u003e \u003c/ol\u003e \u003cp\u003e\u003c/p\u003e \u003cp\u003eIn step (3), the calculation of similarity in terms of the comparison is done in two steps.\u003c/p\u003e \u003cp\u003eThe first step is to determine \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e. There are two methods, and these are demonstrated below with the help of pseudocode.\u003c/p\u003e \u003cp\u003eMethod A:\u003c/p\u003e \u003cp\u003e\u003cimg src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZUAAAEjCAYAAAD6yJxTAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAACsiSURBVHhe7Z29jiS39bfH72UYgmB4fQ0KBP0lQMGuLkCBrWgjAeNYsBIFDpSsociBBCjayKtAFyA7WMBaw4GuQTIMQ/Bt+O2ntn+rM1R1fXSzZ3q6nwfgTH2Qp0gW+5ziYRX5i/9tuBIREenA/9v+FxERORiNioiIdEOjIiIi3dCoiIhINzQqIiLSjcVvf/3iF7/YbomIyCUzZTZWGZWFUUVE5EyZswW6v0REpBsaFRER6YZGRUREuqFRERGRbmhURESkGxoVERHphkZFRES6oVEREZFuaFRERKQbGpUj8NVXXw1fnRLY7sE//vGPn8n6/e9/v906DcjPb37zm+1eX/70pz8dTfYxoC7ee++97d7hUP41UyVRV6QRuXWYpmUJK6JeNM+ePfvfgwcPtnv/G7Y5dijX19fbrZe8ePGii9xekD/aSC17L548eXI02ccgdfHo0aPtkcNI+Zf+Bmkb96m+5H4x1w41Kp1pjUhrZPalNSrt/ilAno6lyFCsp6wkuc/1vlMXvYwKxLAsgevGsGFgRHoy1w51f3XkX//619UPP/xw9cYbb2yPXA3bHOPcvuD2+uCDD7Z7cor87ne/227dLbSz77///urzzz8f9v/yl78M/0Vui7MzKhnLIBzi0yZtldWGMdnffffd8P/Xv/718L/y3//+d7u1nm+//fbqrbfe2u7NGxkUS83rkrEXxmxqmhhBfPPsxz+f/TZeS+ov9ZQxAUKl1vOSfNbxquRpTEYtzxikpSy1riIv++0YzlgdJT1gWLIdaprID+Q159p0UM8v5euvv7769NNPh+1Nb+Xqiy++GLZFbo1tj2WWFVHvDNwPcTnQ7cdlcJtw/baeNr2Ug9wQpG9dXXNuFcqdNK1bZg5kt/GT99YFxXbNG9v1PPs1r239cK7WC+d23bO4f2q52E9e27zBrnqKLELS1GOQ+xb55LPKS/xQ4wL55FjStPnjfMoCxKvy2rrjXD2/ixqHPLNf8yVyKHPtcL6VblnSoO+aKIIlEK9VQocSRVc51Kggs01bldEYxN+3bFyvyt+lkCgTocZlu1WcVTHW+km9tKHGr+wyGq3iTX6RT5pdtPKigEkXqjzKkjzWkHvDdq2rJWWv1wKOka+x8xxP+l1wjXo/gDLuqlORfZhrh2fl/sLttPmRL3IXbMq+3RqnulTGQtw6lYylVJdQ3F6//OUvh/9rWev6AuLjAmndN0v47W9/O7hMUob//Oc/w/+Q8lN/G2W1Pboe6mWj8AY5NXzzzTfbGPO0bsaN4r365JNPhm3cQO+///6w3QPqY6O0f5bfem+WsssVSn38+9//3ttV+vTp0+He1Xa6MUxXf/3rX2+0SZFjcjZGJb50fuQol1bp50e29MeFcmsVSA1jyg8lh2LI2Ar8+OOPg/IdG2eZg7z+6le/2u69pDUyLakHjMPDhw9f7UP8+3PGZvO0e/XZZ58N8d98883t0ZeGlnOU/1Awsii8Q5Qdad99993t3tXVH/7wh0EmhhflvE+d7wJZ1H1PajsJ9X6vMS7cK2jbKfUBGFmRW2HT8BaxIuqdQDc/rojWtVHPVWqcXuCCqHKpt7FrLyGukMA2x6bgeklTXTAcW3oPyS9xW1cKsqorpY3Ddi17u882aZIPZLX3oL1moNykS9mqO6mSeJyfom0jKXOt7yon56tctnNvc46ADMpR64rjxAmcq9eL/EDepuquhfPJSwt5qdcSOYRdbTBMny3MCbpr8oNLqMpnl6KqP9qeRLERuP6+tPlG7pRi4FytA0JA1pq8UDdcrxLFlxBlhYLMNiH12uYn9VKpypIwVb5ar1P3bu6+1rwSovB37ace2uP1/sRIcCzbhNRj9gkpY41HaKnnkucxarz2nrVlbc+LrIV2NMUv+LOJNAtuk4VRTwpcIbgteG8fV1De3wfcQLzTfwlQ9rfffvvqtddeG1xyuMfOEVxiuHpwhYlIf+ZswdkbFZTM5mlx2K75x6BsnhiH8Y41g8P3FYwr31Gce3kxnh999FHX8RQR+YmLNypy/sRgwrNnz862FyZyCmhURESkG3O2wLm/RESkGxoVERHphkZFRES6oVEREZFuaFRERKQbGpXOTK2fsS98azO2FsclUSf45BViETlNNCodwaD83//93/C6HeH58+ddDEs74y5Gpp1o8pzBgDJxJHV6fX39aiZiETk9NCodYbr5J0+ebPeuBuX38ccfb/f2p51xt/e07r3A2B2jB8V07pktmWl2LmVqHZH7iEalI6xbUaeKzxT1mZZ8H0jLnF2V3tO69+IYBgVDJSL3h7M0KszrdYj/HeWY9GNhbD2SGI6xxbiYwHFf/vKXv9yYdmTMyLTU8reKvi1bSJrET7xaVsY1OE6dJn3ql3gY1SwSlfqocQmB8+zjHuT/WJ1yLvO24VYkXozMrnIA58hrxmFaF2TNU/IJxEt5kDGWJxGZ4X8LWRH1zshU65nem/+3NdV3poVvp27n2Jop51uYHr3CVOZT08NnqnVInrLOBmkJIVOvB/breeRkGvnEJSQO/3Me2vSUu+4nfp1Cv54fI/c0ZQDS1HS1HByP7JpmDOLk3rRtB+byJnKJ5Le2i7MyKlWhVjhG/qeU8aFEUfY0Kshs004pOuJWJV+J0hzLX+psyqjA2vNR9m0gD7vqqyX5joFYUg7ywLXnIE6bJvupe/aX5FPkUuD3MMXZuL9wW2x++KPraHBso/y2e/O0rpU2jLlFMn5Sl4CNq4Y1TPZhreurXU++Mrcu+jFgQH2jnGmBN8Ih40E9y0E+SEPbybr/kZG6X9t2RC6dszEqKNTNk+Z2bzcYhPjcMRBj8IZRqwhr2PX2Edf/5z//ud17qQBRSFNryq+hNTItr7/++qs1yXcxty56T6jrWh896VEO4mP4s+5/jB1jK6zJ0rKk7YhcOmc1UM9AceDpc6xH8fTp02Ewmdd9MQJ1oPZQ2leIHz9+PLxmvA/16XkpMTgovYDSREmiNCkv646kB0XZ295dzgFl4fxYPU6BDPJP+ZHRDobXa6xlaTmWQpupq4HSNmCsN3XMtiNyNmyevBexIuqdsekVDPkkVN8+cG6jeAZfec7xP776XuCHTx7in9+HNv/IXZrXXJ9AuSsbZXjjfAX59Rz5T/pat8ggfzUuZPyhXjPHEtivdUTYVa42bZW7qxz1eFv2FuTXa7NPaEHObbQdkftA/b2NcTGLdPG0/be//W1wSeFGypr19AZ6uafkPLHtiPzErC3AqCxhRdSTI0+89Sm2bovswrYjcpO5du9ywiIispg5W+A0LSIi0g2NioiIdEOjIiIi3dCoiIhINzQqIiLSDY1KR/iKnDcjCGz3gK+2W1l8I3FJ8J1I6tWv2EVOG41KJ1D8TN/Bq3YEtnsYlrWTSp4bTDnDVDfU6aNHj/ae9kZEbgeNSicwIlXhsc2x3sxNKnlXYOzaxbAOhbm9mJvrjTfeGPa/+eabIYjI6aJR6QDKjwkNo/yAbY4dMnkiPZ21k0reFUwe2Ztd09yLyOlylkal+uDXuqAyrfmuUGcADpmGfWxm20MUY6ZkD0uMTM1r23Oo9VLL0cZPHdQ4pOU8IfEzvsE2BpQZidmOIa1xSR8oB8dyfqxOGTdiCWF48ODBEC8kf61c4BxpU9b2/tc8VYNPmpQHGWN5EpF5zsqooCRQFh9++OHgg3/y5MnkwlVj4F7JuMhYuC33y1gPh6nXpyYwpOzPnj0b8sl/lHzkoGQzNkHArRTFyT6KO1DG6+vr7d7LtDEaQPw6vpH01DfbGFeUd84RkMH1UPJMWx84N1anTNr44sWLYZtrEw+Q8e67776SCzEsnMs6+UwAyfnWVcj0+MiDGHyMCWl+/PHHYZ/8jD0giMgCNj+8RayIemcwRfnY1OXHJlO5VzaKazi27/ToY1Pdt9PhVyg3Ex2OgSzqpoLsmr+27rhWlbf2PPvIbwOM1dcYySN1WfcrqWdkAnmaqqdA/pKG+HWf/23di8hL5n67Z9NT4QmYJ9ClCzXtcm9wPO6RsTCWLmMptXeRp+Bf/vKXw/+1rHV9TS2lO9ZbS77ydN4b7gVh08ZuhEMYy2t6FGt7pPRuSEOPKqs8RkZb94H7e2mvc4us5WyMCgoBl8wYcYuhQFDOKJTq/qns4/5CsW2edG8scYsCJD/7uFHIb7s07i5FF4i/a5ljQMFXoxf2XT9/jrY+epKxjwpLKa+B+/L8+fNX23GhYTSyEiTXSbthmzLhJtOwiOzmrMZUMBQhxgNQbi+2/nl87PjbUfhjBmJf2leIGTfY95Xir7/++ur999/f7o0bmRbiYziqwkMRUg/pvT18+HD4D1yDOqiGKr0drofy3GV4p+CaBMa16pK/cKgy5t6h2DOAD5SPY/u8Zo0Rrj1bxozqN0Csr0+dAvVEG7q+vr6x/LCINGyevhexIuqdsVEuQz4J1a++UQyvjmcf33tvGFPIdeKf34d2TAC55HmOWk5CW8apc+Q356hH8pA4NV2O17jAcfar3BxL4Bq1jgi7ytWmrXLrfc71oR5vy9eC/Hpt9tt7ljGcXIN94olcMvwmprioRbp4av7ss88GHzpPzT17KnK+0POi1/Lmm2++Wk5Y5FKZswVn+Z1KCy4SKmLzxDm4N/Ch49qJe0xkjHzTgrsNg8LLDbgF17oERS4JlxMWEZHF2FMREZFbQ6MiIiLd0KiIiEg3NCoiItINjYqIiHRDoyIiIt24WKPCB228Gjc2H1bge4T6TUK+d5lKswS+fyCcAr3KtC98K3SMuuC+US4CZTwG5P0Y9Uae/RZG7isXaVQwKHX+qF3wxX2+ukcx1XVA9gVlwRxbS2dTPia9yrQvKOUftnNr9YTZErLmyvX19VGWdQbmDuOD2l5GCwOFQXn27JmzPci95SKNSiYHXAMTFvJjPwSeyPma/7an+UDJjs0e0KNMayEvebqPUu4NX73zBTxQ11OzNx8KhqudOHNfmOST+thnckyRU8ExlVsCpcMsuFm749hkihECU9McU7EuhR4iCv+YHMMdNQeG+dAZmIHp++m53UUZRHpxNkaFJ/EoUX6U/MizH599jrUKIGnbp3n255RFVd5jvYGQqebH1lchv5FB2FepZJyIADxFE9Y++e4qUx2H2lVnNW0Nf/7zn2+sOd+OGdR0XGeKXJtQ5SAjPR+uxfm2LjPW0ua77nMeWUthkTbmktv3voVjrW0jcqtslM4iVkS9M5iWvE5NzlTmNd9MdZ4lbzOtOYHjBLY5DhvlNOyPySMuICvygOnWd025zvGxadMjM9clXrbXMHXtKZaWqdZX4qfOkAGtLMrLfoiMnIfUc67JtcbqKRA/1wPS1nInT1N1mHwGrl3zRdp6jSW0+doHyj1VdpFToP52xlhsKeYEnQKtssh+fuz8r4qjKhKocQFFUX/kkZc0UYhtGIO4VVnDlAJEUZJmDSnTGsW0pkxzdUb5ap7b+GPp23oh79VIVLhOWyeRyX+YqtOQOPwncM2ar9Qf19qVl5a2HGvh+rXtiZwqtNUpzmpMJW6evI3DEsMbBXH19OnTYZ8lecfcT/uyUUJD2NTjjbAU1nbZKK3RZYL3GcxHDtdnDCXuoTVuHDikTFl9Mu4r1iDZKNtudT62Dv0+a+0nP//9739fra+TffKe1R/Tbm4D6pjrrb1fIqfG2Q3Ux4igHBj4/OCDD175u+eW5F0LCnPpOuz47LNcbyBPvPo6BXEwDhhK/i/5fgHjWo0B6doxhF2sKVMLynrztP5qPIMXE1i6uScYrbGxi7XjEZSTJaBpH9XosQhXOwa19B6sXSe/hVefqbOx8oncF87OqMSI8JSMcuDpHQXC+ux5zbQXa9Zhx3iMKYvnz59vt16mbdNHUXMdjARlWwPfw5Bu6dtfh6wtjyHHcMagEXb1UvZ5Il+61v5SyFtNhzEceztv7h5QVxg7BuxFLp7Nj2QRK6LeOeS1+rfZ3hiW7d5P4wgJ7X7iZx8fextno0QGWfHHJ+zyixO/poMcG0vLueSZ/ORcLcehrClTG7fdTx7rsYQ6LpFjbVyuSbzsT5WzpquyyUM9NyWjpgPi1nsDjMsk3tQ94Hgrbx+Sf5FTZq6NnqVROVVQGijPJdyGUekNSnhsgJy8twr7PrDUqLA/9WLAUrjGKd9fEdConBh5Ip+DONR57TXkWI+n4mNA3saU66nmdw4UPGX64x//uPMesB1j0wPkYVxEThXa6BSuUX8HMODLm0ynMP9XTxhTGZtT7VzbDS8/8CLCrnGjfUEuwfm/5BSZswUaFRERWcycLXDuLxER6YZGRUREuqFRERGRbmhURESkGxoVERHphkZlBbwyy5sP/K/kOGFqji3iLZm769hkDqu7mmOKOlg69csaslYKIZOK9oR7e9t1tuZe9c4fU+mkPpfmYQzSVTn3edLM3mUZq2OOHaOO+M3lGkeFV4qXsCLqRcGX4qmbbI99DHcqX0uTN/JIuIuv3PPx4NKZBZaCvHw0yPax6nrX/T0GS+9V2l2Pr/orx2izyLvPH3ceq66RV+/z0o+kl4KsXvLI5xT2VA4kExoCH8Ft6vRns9zSQ/nyyy9vdUlfnkrGek3kbaOstnu3A3nJ0xEf9KW+enJb69Jzf3utST/H0nvFBJsbpbTXpJpymtCG0Sc9eiy0VSZBZRbs20CjciDtdPZjPH78eJhm/djUrrTr0h8PFP0x3Hf7wD3n4UGDcn5gWHoshZAZH5i5/TbQqKyg9W+zjcLkKYDtMUWDUt10aX/WewkohBiCfcYB6ngO8CQ91luaI2WrsiDyKXPy2vaAqjGrYW5d+nrNubLX8ZJ6fa6NbNi1Ln18yYQKMhMXmUsNxdya9G1dVrkxAqQdOw+1PscWJqvQA+ahJdRrc+8CMlPHXK+9h2upeWzv675E3q5Qr7krEKdS67meo25S76mzXfdzKfVaPeQBvXq8IYeS38itsFFAi1gR9SzZ5d+e833u8kvHNxv/Mv/X+pq57tS1d5GypBzs1zGOjEnEz1vLnXyTBlpZpGU/tL5iIM8cyzXn6pBztW7IW63T5GnKz93mI/lOGo6vqX+unzpoQe5Y/SCfbULy39YfcWrZ2K7nKxzj3Fi5OZ48JF4tX73fu2jzErgfOY7ssTi7IO6aeu4Fea5lJh+1zS2pD9hV57mPOY7ssfuyC+KSvr3P1FXN5z5Edi/mZNlTWci+YxG4x8aeCvGDbxrMq0kl+b92gknGJ/CT8lS09Cl7DFbKpMeVJyy2N417WKp30yCHOOzTjW4nT+RJevMDfXWcRdJg7ilt8yN+tWQyK3LuctXxREmvoNYNkziSn7neTSXuIZYMBpaWrvA0yHLIa9jVi9j8rob2wpMx4y+BMnDPqa+Ut12xEndHXcZ4ym2asmRJ5cpGEb3KX5atDtRplkxeC2Ui78k/9/0U3Kxz1EXyKENd6C2kV76mXQFyuc/8VtLO+G2yTS/u0F7hIfWLXqAN0SZvC43KHUCjRSkuNSJT7gUaLg3mkHXpabT8IJBTQ2tAxjj2uvRja89H9pxrqIV8IY8fWgwa+1E2Y3mmXGvrk/jcB4hRXkIPd0mgLDzQ0NZi6DP+N7ZkcphzZWH0lo4PUs9rypT2uyukXqfCrnvFUs+08+SnPsikPfBb4mFnLTHaMSiVtLO7guvjHj3UsK1Bo3Jkxp7CUYb1ybFCo8+PA4VAY+BJfe7HjpKIMQBkLG1IxNt3EA/lxdP3Mdelhxityto14SknvYA8pWNkAKUQA0+dp/7//ve/D+WiTGPKauz65JP4ax4aWsYM6RjpoaTHUqHd0ZbokaHsYjApR5ZMbtsabYy2tqvdRCHvWjaZ9ATkEejxUsdJN0d9oBkL1OfY8Rp21Tk9Qu5J7nXuHfdrrNeGoaEeKAd1NNb+AuWjJzRF6jrta+73XFn6O95FHiAoy22gUTkyvOZKY27hxxtiPOC777579XRLY0BBY4DWrK2RH9/SbjNPMijC+sOhAS5RBqQ55rr01AGKqa7TQn1xbNfT9hw1HW6LPMkDSpgywDvvvDO4PKubEqgX7unUmvRR9GuMNfXGva4us7jCxpQz8Tm+ywjRxuqTct7Cy/1p2xptDHlz7YZ0oSpc5OKOpc1TX5SFetrVHu6Ceq/JG72usXZEveV3y/2fu4/Pnz/fbr00SIQKdYAc7i3tq/7+p0DunME6OTYFXMSKqGdJBuISNg3uxj4hA6Mtmx/qz85xLOnqIGGVm/3Nj3PY7sFYOWDT4G8cZ7+N2+6PxUmoec4x4tZyE4eyZ5+wi5qO7dDmu55raeuR/Y1S3e69JOVJXPa5RoVjrawK55KfWr5aBkJbd8lLjZf0uU8t5G0sLxyvZWO/LUfb1qCt27Y+OZY0NR2k3JQr+22+kdfm4zagLup12R+rN+o7+U/ZaxtIndW6rfVYyw+cixxktLID8kjb1tfYsbUkfzVfh4CsKabPFuYEyW5oMG0jmoOGQAPn/1jjPxUoW/2BBRrwoT+Gu4T8J7RKkHs5Vua74tD8pK1BbaeUe227hbTXUzIqS9nHqExB/MhZa1SIn/tyCGvzPIdG5USgMS2pw8QjpAGyvc+P+zYgb2ON9ZQN4RT8iFP//BjzY8+Pm+3cl1Nin3yNtTXaGfuw1qhEVu596rK2D+SdqlHJvU4Z6v+UY62CTvrarqrskGvHqBC/nj8U5PXSIeRzCo3KLUKD6dlQToH6Q6zhHOFHmR/9KULb6pk/lH+9p/vKJl2Vc6pGZQm9yzJWxxw7Rh3lWoe2EWRM4Rr1IiKymDlb4NtfIiLSDY2KiIh0Q6MiIiLd0KiIiEg3NCoiItINjcoFkbmZ5P6TOaTq1C3sT02FU+efEjkWvlJ8IWBMmG/o0cp5xOT0wChkfrAfTmxuLTl/fKVYBjAkGJSl8FTbToonpwETID5bsLYPvZap2XVFjoFGRUbRoNxveChg5mmR20ajcqLQxaw+ctxX7Ncxkaz3gAFI/PbJlDhtulDTEeJrJw2usqwGGZlcK3Hn1niocauMfamyCJWUkfxPGcPESV0S6phExhwSap5T12PnKlV2W+dtndRrc45r1Dy0Zanp2wXKko7ykbcHD35atz/3iuPEqXnPsYS0Acg5ZKeOIyskHXF9EJEBxlSWsCKqdKKdfK9OMsc57gkhkwFyrt6nmj5zdCX92AR2xA/E41ho5yPifGSNgaxMujcVbwnt5HrkO3nhf8rfxquQJiH5Io8pM/VQy5/JFnM8aafg2qkz0hE/eSOfNW/Ei3zORX7yUK8PxKn5S544n2sRcr0cS1lzv8eOhVyT/zU+oV4n16AMkVXLLucNbWCKxZZiTpD0B8UR5Qmt0mzP1x89oSohIG1NHzhGuhq/VRJRYm3YBWlr3nZBPOREOU1RlWdk838qHxXiRSFCFCf/I6cNid/WdUtk7YJzbRmRmTpGdq3/yKPM0KYnX/V8q/CzX9NEZo5xj9sykZ/ko80D1GvUuHI50Aam0P11RtS3gJas3x5XDav1bZTL9ug4G8UyhE2buRF2wcp5rFqHy2YK4m2U03ZvnLh2Hj58OFxzo8i2Z16ucglxw1T3zRxZjhdYvZI6aMu3dHXJqSWAq5urEnfXHEvi7MPYCo8sQ8x9XgLLEhM3dV/danK5aFTOiCgf1uOGKeWAskepoDhZw3wOFHldRnYXKJYodt44a5cpzjjOnLGpYExQ+LuWuY0BII+8artUuWXJX4wLyrQuCbuW1PmUARhbknbN68BL165fw1iZq9Gegryn7oHxm2MZQLk/aFROHJ6ggR8rA+cMoNcB4C+//HK7dXX12WefDa8NYyTef//94VgGT0lP2pq+Gp1dCpV0GIkPP/xwUNhVaYwNzKL4sq56iDKMIUEJ1TXfl1DroeYbmTFiGJ05hVjzxvrk9JJQjtQXdVONXTWQc1DnXBsDWKGOkM91qoHN/eBpfw7Sc1+Xrl3fssuAU/62zLQnji+BsqU8MSwiNIZFrIgqnYjfnLBRHoMPGz94yLEapxKfeM6RtqbPOUKVA/ja2a4yaxxCfOuVpEsgTWB/DOJU339LWw+UIbK5Xs0X+7tImsStdQG1vur5eqyWZwzyV+NX6rUJG+M4eryWl5C6qbKTBhmEHCfkviQ+ddKWLTLbayXt2PG6j0xC7kXiyPnDvZ7CL+rvMfjk6UGsfeq/K9KGeMJlLCWw/8EHHyxywx0C198ovsXjJCLyc+Zsge4vuTU2T7VDg3z77be3R166ZnDr6Y8XOQ/sqdxTuB/h+vr6xpO/3ARj9aCMtTx58uTe9O5ETo05W6BRERGRxczZAt1fIiLSDY2KiIh0Q6MiIiLd0KiIiEg3NCoiItINjcoJwxQhvGnh9xt9oU6XTr+yBuSOTV0jckloVE4Yvvzm1b01kw7KNCj+3sT4i4hGRU6IdqXEY3CMb61i/OsHliKXikZFTgKe9pkxV0TuNxqVE4Z5sapbpbpZ+E+YWwc9JG3OJx3jNTV+XYuECSuJX2USP7IInKswppBzNW9TeUdGpnXn+NS4RJvfQ8absu46ASj7mGzyyX5bVhEZYdNtX8SKqNIBphWnzlPv7dTjkOnMM405aZjuPLDNFOk1LXECU6bX+ImX422aHEMmJI8h1wpj10/8Nu+JM0XiJA3Trmd7DclHpp4nn7UeOFfLwTVqve0i5RU5Z+Z+p9NnC3OCpD+t0m4Vb9bRiGKt2y1jSjvy2xCFipKsyhSFWdcgaWW2cghR1nN5H8tfpY1/CMhJGQGZVTZlrkZmqaHQqMglMPU7Bd1fZ8I+bqBD12Wv5PqtrF1LAK+lrmo5B26sNa6qulY9MIPxxogNLjsRWYdG5UzIa8dr1jE/dF32Sq5fx2R6gtF69913t3s3qeNFf//734e1WVi6d6lhyVr11WBhbD/55JNBNguIicgyNCpnxPX19aJ15MOh67K3cH0UemWfjwF3GYNqAJEb2d9+++3QK4J33nlnWN0RozC1ZgppwuPHj4f4lfRWMCzHXpFS5KzY/BgXsSKqdAC/PnWe0O5nDKLuAz79epxxgjYt4xMh4wkJGTOpx5DJ8exnrKXGicwajzB2/bG8Z8yEkLGNSj2fNCHyknf2ueYUu2RVkLHrXKWtQ4LIuTLXvl2kS86G2sP6z3/+c/DqjvSEXFFT5CZztkD3l9x7UP40dFx/b7zxxtVrr702jKns43oL+7z4ICIbo2NPReQn+CCSsZQHDx50e3NN5JyYswUaFRERWYzuLxERuTU0KiIi0g2NioiIdEOjIiIi3dCoiIhINzQqJ0zmtPKbif5krZjeILdd40bkktConDCuUX8c8i1KT7LAV2+5IvcNjYqcDLf1hM9HjXzc2BMmneQBgOn5RS4ZjYqcBLj6XKNe5P6jUTlh8PnjUgkZYwH+E9qn+6RJCEmb80nHeE2NX9dDybhDlUn8yCJwrpJ5uAg1b1N5R8ZdrFEP5KHK2lUfKdch84mJXASbLvsiVkSVDtTp4iHTu9djmXI9U8WTpi6Dm+Vta9o6JTzTydf4iZfjbZocQyYkjyHXCmPXT/w274kzReIkDVPdZ3stKUuVVa/P+bauUu4pkJMp+EXOkbnf6fTZwpwg6U+rtFvFi6JjP4qxbreMKe3IbwNxoVWsKNWqMFuZrRwCMmAu72P5q7TxK+Qp11nKmNFAfsre5oe4xJlDoyLnztTvFHR/nQn7uIHOZY36HmuetG/YUQcbw/PKvUdd+RaeyDwalTPhkteoDxkPyfhNO940RYwi67GETz/9dFiXhTK9/fbb26MiMoVG5Yy4vtA16gOGjZ4XdUAvae5tslYe+a+9kfRWKNM+vTeRi2Tz41vEiqjSAXz41HlCux+ff90Hxj3qccYg2rR1bIDz9VzGA+qxjKVkP+MRNU5k1niEseuP5T1jGoSxcZN6PmkC5zKmwrVyLsd2wfnII90YyNp1rtLmj5A6ETknaNtTuEiX3HvomT18+HAYv6GX8/rrrw89C16JPnRMB3n06BxPEXnJnC3Q/SX3HlxXm17B8J8xENxfjKdwbM24yhi4yDQoIsuxpyLSgCHKeIxtXuQmc7ZAoyIiIovR/SUiIreGRkVERLqhURERkW5oVEREpBsalRXwyiqDVPWLdRER+Qnf/loJ05gwbceLFy9GJzcUETlnfKX4CPAdAx/E9ZgdV0TkPuErxUeAqT+Y4VdERG6iUdkDpv9gfikREbmJRmUPnjx5cvX06dPtnoiIBMdU9iQD9vRanHBQRC4Fx1SOAAbl8ePHQ8VqUEREfsKeyh5QF8+ePXM1QBG5OOypiIjIraFR2QPWLf/222+3eyIiEjQqe8AytSIi8nMcU1nJV199NSxX61tfInKJzNkCjcoKmFDyiy++0LiKyMWiURERkW7M2QLHVEREpBsaFRER6YZGRUREuqFRERGRbmhURESkGxqVTvD9Cm9F3OX69ckD/0VE7gKNSgfyQeRd8qc//WnIA6/6OdGliNwVGpUOoMSZtfgu+fLLL4fFw0RE7hKNypnAfGTPnz/f7omI3A0alZWgvBm3IOBymiLxWNSLKV4C4y45l/OH4jxkInIKaFRWgEH529/+NoxbMKHkxx9/vHNQHCPy4sWLIe6nn366PfrSoDx8+HA4TsBtxrLEhw7wMyfZJ598st0TEbkbNCoLoTeBIWEtFXoX/IepdVVYchi++eabq88//3zY/vrrrwc56aVkgP+7774b/q8lb3xhoN56663tURGRu0GjspAff/zx6tGjR696GAkxFi0fffTRDeMRF9e///3vYUC9lbPvG1uky3Xu8nVmERHQqCzktddeu/rrX/+63ZuHMY4YDIiL61e/+lX3AXWudX19fWPcRkTkLtCoLATXEi6v9957b3vkJbsUOcfTO4lhgffff38wTnWQn3h+sCgi54DrqayEeqhQJ+3Hj7ijGDuhR5LeDQPycXFhROi5BNxqjLscAi8R8ALALneciEgP5myBRuVMwKh8+OGHV3/4wx+2R0RE+qNRuRDSW6KX5DcrInIs5myBYypnAq41voth3MfxGRG5K+ypiIjIYuypiIjIraFRERGRbmhURESkGxoVERHphkZFRES6oVE5YTIDsRNF9oePRefWw9kH5LZT+YhcEhqVE4ZvT3h1z48Z+4Li5yPRnjD1Dg8AveWK3Dc0KnIy3NYT/vfff/9qPZxeMOEoDwDM4yZyyWhU5CTA1bdmaQEROU00KicMPn9cKiFjLMB/Qvt0nzQJIWlzPukYr6nxM10/ZNyhyiR+ZBE4V2HK/5yreZvKOzIyyzPHp9aFafN76HgTeaiydtVHyjWVNxHZsOmyL2JFVOnAkydPhjpPvT979uzVfo69ePFi2OY/kObBgwfDNrB9fX19Iy1xwg8//HAjfuLleJsmx5AJyWPItcLY9RO/zXviTJE4SfPo0aNX22tJWaqsen3Ot3WVck+BHILIuTL3O50+W5gTJP1plXareFF07Ecx1u2WMaUd+W0gLrSKFaVaFWYrs5VDQAbM5X0sf5U2foU85TpLGTMayE/Z2/wQlzhzaFTk3Jn6nYLurzNhHzdQz/Xyc/1WFoPiPfjss8+GQXAGxFt6LEzWvmFHHWwMzyv3HnXlW3gi82hUzoQovB9//HH4v4Se6+Xn+nVMpicYrXfffXe7N07GQzJ+0443TRGj+MYbbwz/4dNPP736+OOPhzK9/fbb26MiMoVG5Yy4vr4eBrxrr2VqYLn3evlcvy6TDPsMbLeD/6EaQOS2sjFs9LyoA3pJc2+TtfLIf+2NpLdCmfbpvYlcJJsf3yJWRJUO4MOnzhPa/fj86z4w7lGPMwbRpq1jA5yv5zIeUI9lLCX7GY+ocSKzxiOMXX8s7xnTIIyNm9TzSRM4lzEVrpVzObYLzkce6cZA1q5zlTZ/hNSJyDlB257CRbrk3kPP7OHDh8P4Db2c119/fehZ8Er0oWM6yKNH53iKyEvmbIHuL7n34Lra9AqG/4yB4P5iPIVja8ZVxsBFpkERWY49FZEGDFHGY2zzIjeZswUaFRERWYzuLxERuTU0KiIi0g2NioiIdEOjIiIi3dCoiIhINzQqK+A7CN58qNOgiIjIT/hK8UqYG4u5oF68eDE6Y66IyDnjdypHgI/j+Mq6x5TrIiL3Cb9TOQLMJ8W08SIichONyh4wpxSTFoqIyE00Knvw5MmTq6dPn273REQkOKayJxmwp9fiLLYicik4pnIEMCiPHz8eKlaDIiLyE/ZU9oC6ePbsmUvMisjFYU9FRERuDY3KHjx48ODq22+/3e6JiEjQqOwBa5+LiMjPcUxlJV999dWwBrpvfYnIJTJnCzQqK2BCyS+++ELjKiIXi0ZFRES6MWcLHFMREZFuaFRERKQbGhUREemGRkVERLpxVkbF5X5FRO6Ws3v7y+V+RUSOx0W+UuxyvyIix+EiXyl2uV8RkbvhLI2Ky/2KiNwNZ2lUXO5XRORuONtpWlzuV0SkPxc5puJyvyIid8NZ9lTIq8v9ioj05yJ7KiIicjecpVFxuV8RkbvhLI2Ky/2KiNwNZzem4nK/IiLHY84WnJVRcblfEZHjclFGRUREjsucLfDtLxER6YZGRUREuqFRERGRbmhURESkGxoVERHphkZFRES6oVEREZFuaFRERKQbGhUREemGRkVERLqhURERkW5oVEREpBsaFRER6YZGRUREuqFRERGRbqxaT0VERGTKbCw2KiIiInPo/hIRkW5oVEREpBsaFRER6YZGRUREuqFRERGRTlxd/X81yEffbFhEiAAAAABJRU5ErkJggg==\"\u003e\u003c/p\u003e \u003cp\u003eMethod B:\u003c/p\u003e \u003cp\u003e\u003cimg src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZEAAADhCAYAAAAJdIgiAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAACWlSURBVHhe7Z2/bt1G2oeV7zKMwAhWew0ujE0CuLD3AlysXakyoK0XSZMixTYKXG0RA65cRSlyAY4LAbEWW+Qa4iAIgtxGPj4Uf8qr8XBIziGPeM75PcBInL+ceTl8X3KGZ+aDPxqOjDHGmAr+r/tvjDHGTMZGxBhjTDU2IsYYY6qxETHGGFONjYgxxphqil9nffDBB92RMcaYQ6bPVAwakUK0McaYA6BkCzycZYwxphobEWOMMdXYiBhjjKnGRsQYY0w1NiLGGGOqsRExxhhTjY2IMcaYamxEjDHGVGMjYowxphobkZn49ttv21914jieg//+97/vlfXPf/6zO1oH1Oevf/1r55uXr776arGylwBZ/P3vf+98m0P7+5Ye4jzqb6lbWx8xew7LnvQxEG06zs/P/zg+Pu58f7THhG3K6elpd3TF5eXlLOXOBfWjj8S2z8XZ2dliZS+BZPHo0aMuZDPU/tI9SH8gnv9CYXPVwxgo9UMbkRlIjUZqVGpJjUjqXwPUaSlFjyJdsxHhOsfrjizmVN4yJH3kjAgoXxpuTC2lfujhrA35+eefj969e3d07969LuSoPSaMuFoYxnr69GnnM2vkyZMn3dG6uHv3bndkzPLshRGJ48GbjEmXxplxubJ//PHH9v9f/vKX9n/k999/746m8/bt26O//e1vnW/YqGCwYl3HjIsz5xLzyOgxD4GfMfnoT9OlSH6Sk8b0cZEo5zH1jPNNqlOujNieHJpjibJSefKnczA5GSk/YEh0LGIelS+oq+LSfBDja6FOzRvcjf5jzGJ0byRZBqJXAcMJGkLg9Z1X+W3C+VM5NW8hGw0nkD8duhoaJqHdypMOswxB2Wl61T0dUuI41i0dzkqHdFL5EBflQlzfNdOwTGwXftU1rRv0yUll4ZQnhoGum8qnnrE8pRcxLVBPwpQnrR/xaguQLpaXyo64GJ9C/ZQmungOY+aAftVHf0xDKeNa0I0/hNLhuLnnIlWSsKkRocw075BiIH2qUMfC+WL5UTFGJL+YluOxRiReg+hi+kiqhIG0qaJVfSm/dG3T8qSEySdiebRFdYxO14bjKKsxbY/nAsKoVy6ecOXPofqnfYWwXLgxtZT64c4PZzGM1Nwsg6//3333HVJo5yo+//zzLvQmcYgk5zRME9FcSBzi0TDWnTt32v9TmTqUBaT/97//XfVJ7D/+8Y+jFy9eXLfh119/bf8LtR/5NUqyC50OcmmUeFtOdK9fv+5SDJMOGzaK9uiLL75oj7nGjx8/bo/nAHk0huC9+tYME/UNbSKPX375ZaOhzxT6ONAfjFmanTYiGgvnpkaZpEpeyg9l8Nlnn7VhKCFu3Bwos1RhRJdTdipPcyPw22+/tco2N08yBHX96KOPOt8VqVFJkRwwBg8fPrz2g8bnh4xL8xR99Pz58zb9/fv3u9Arw0oc7d8UjCoKLhrcqZD3wYMHne+ova6UiaFFGdfIvA/KQvZzEvuJiNd7DmMypwyMGWKnjcibN29apSd++umn7uhqMpg3FJRfvKlQQs+ePet888ATn56GgYnN6J9C+jSdMyop8S0CdMz/jz/+uJVBlE0O3nQo55tvvnnPYMWyv//+++6on3guyQFDxnXAuGLoItHopUSjg6Hg/HogEDxAIPNPPvmkC5kHyYTzCo5jnwPCooxyIFPaTj2VlnJoH+0hnoeRk5OTNg5evnzZ/kd2U9ADQyzLmMVoFEwvA9G3DvWLrrkh23DGohmfztEXvikav8bFcfKppPWjXLUrB3FRBjhBWVPq0iix9nwRjbvLUSb/GfvXMY68kNZHcomQNqYptS/KVefIUYqDWFec5iv6/JJDGh6vDzJQmI5xkqP8OLUxpsOlxDjVOUdaTuo8H2LmhD7Vxwf8aRJk4QmoEL1aeDJkGOLrr79un3L5DxzzdMmwCsMKDP/sM7SXp/MPP/ywHWLb1/byZM8bXPqGYoyZh5It2EsjglJpngbbY9Wfsf04FNM8Ge792DHGlOGT5ql10uT1roGx/Ne//uW5AGMW4uCMiNl/ZCDh/Px8798qjblNbESMMcZUU7IFXjvLGGNMNTYixhhjqrERMcYYU42NiDHGmGpsRIwxxlRjIzIDWp8Kl+4fUQu/dcntRXFIxAUx+aTXGLM+bEQ2BAOi9alwFxcXsxiSmjW09gkMJgstItPT09PqtciMMctiI7IhLL54dnbW+a4WHOxban4K6Yq0cy9zPhcYtyXekFj4UKsJs2zN0AKSxpjbwUZkQ1hKJS6drhVw05Vep0DedEXauZc5n4slDAiGyRizG+yNEWH5603Gz1GGyp9zuf04ZChym0+x4GEtLMcel/HIGZWU2P5UsadtE8qj9EoX28q8BOHIVPklX9JhRHlrIFzyiGlxgnj8DPfxPydT4rTuGcOEpJNR6WsHEEddNY+SDinGOqmeQDq1hzJydTLGFPijwED0KtDS41q6m/86Xhotk54uZU7YlCXYU1jmO8KS4KXl0rX0OKhOWgqcvDihJcQF/hhPOVpWPS43rjT8Vzyk+Wl39Ct9XFI+xufQNY3LmZMn5ovtIFxlxzw5SKNrk/YdGKqbMYeI7rUcO29EogKNEEb9S8p3U6QY5zQilJnmLSk20kalHpGSzNVPMisZEZgaL+WeOurQJ68U1VsGYUw7qAPnHoI0aR75JXv8Y+ppzKHA/dDHTg9nMQzR3OjZfSQIa5Rd5xsmHSpJXW6YQ/MfcUtTDb2wh0cNU4ey0v3QI0P7ei8BE+CNMqbH3XCbzOfM2Q7qQR76jvatVxmS/dS+Y8whs9NGBAXaPEl2vn4wABozxyDk4AugVPFF1/d1EOf/3//+1/muFB4KKN1itpbUqKTcvXu3NaQlhvb1nhNkHeUxJ3O0g/QYeu1bL+PG3Ah7kqSM6TvGHDI7P7EeN5ri6TL3xvDq1at28pfPb1H6cWJ1U9JPetnXms9+a4hPx2ORgUHJCZQkShElSXv79vUWigPaQnxOjiUog/rTfspIJ6/jOaYyth1joc9ot0ugb0DubWnJvmPMXtA8ZfcyEL0Kmqf+tp64ODYPxDWKph3rVhz/NdY+F4yjqw4aX68hrT/ljq2rzo+j3ZFG+d2Ij1B+jKP+yh9lSxnUL6YFzR/EcypMDn+UEa6vXWneWG5fO2J42vYUyo/nxo9LoZxt9B1jdoF4v6Xs9aZUPE2/efOmHWJiWEh7rvO0P9dwk9lP3HeM+ZOiLcCI9DEQvWr0RBufUuOxMX247xhzk1K/9/a4xhhjipRsgZc9McYYU42NiDHGmGpsRIwxxlRjI2KMMaYaGxFjjDHV2IhsCL/S5ssFHMdzwK+i07L4jcIhwe80JFf/StyY9WIjsgEoepbD4NM3HMdzGJKpizDuGyzhwtIxyPTRo0fVy8gYY5bHRmQDMBpRwXFM2NwMLcJ4W2Dc0s2fNoW1sVjb6t69e63/9evXrTPGrBMbkUpQdiwAKGUHHBO2yWKDvMlMXYTxtmCxxbnpW/bdGLNO9saIxDH0qUNKWua7z8UVcoWWJc+t/LqJItQS5WKMUYl1Td8MolxiO9L0kkFMQ17icUqv+QmOMZis2MuxDGdMS35BOwhTfE6mzPuwJS4cHx+36YTql5YLxJFXbU2vf6xTNPDkUXsoI1cnY0yZnTciKAWUw7Nnz9ox9LOzs+JGTTkYLtG8Rs5tazgl9wbDUuSlBf9o+/n5eVtP/qPUVQ5KVXMLOIaJpCjxo6gFbTw9Pe18V3llJID0cX5C+ZE3xxhTlLXicJTB+VDqLOMuiMvJlEUOLy8v22POTTqgjAcPHlyXCzIkxGmfdxZMJD4d+mO5eMoDGXiMB3m0Fz71yT0QGGMGaG66XgaiVwFLdueW8l4aLW0eaRRVG1a7XHhu6fd0efgI7WZhwByUhWwilB3rl8qOc8Xypsbjp/zUQU5eOVRHZBn9EcmZMoE6leQkqJ/ykD76+Z/K3hhzRene3ek3EZ5wecIcuzFR33AF4RruyLlcPs2FxLcHPeXeuXOn/T+VqUNZpa1hc29jqpeevueGa4Fr+tUNtwm5uuqNYeobJ28v5OGNSbsYqoxU9oLre2ifVxszhZ02IigAhlhyaJgLhYEyRoHE4ZxIzXAWiqx5kr2xZSsKj/rUDItQ33Sr1z7FJkjft20voNCjkRO1+78PkcpjTjR3EWFr4ClwXS4uLq6PNSSGkdBOh5xH/YZj2sSwlw2JMXl2fk4EwyBkLABldtmNrzNGzng5Cj5nEGpJP+ll3L/2E9/vvvvu6PHjx50vb1RSSI+hiAoOxYcc9Hb28OHD9j9wDmQQDZPeZjgfyrLP0JbgnDjmpeIWtrCp8uXaocg14Q60j7Caz54xuvHNlTmf+Bsc9odHpoCc6EOnp6c3ttM1xgSaJ+1eBqJXQaNM2nri4rh4owiuw+Vn7HxumBPQeTS+XkM6pk+51HmI2E5c2sZSHPVVHHKkDkoT8yk8pgXC8cdyFSbHOaKMcH3tSvPGcuN11vkhhqftS6H8eG786TXTHIzOgZ90xhwy3BN97P2mVDwVP3/+vB0D56l4zjcRs7/wZsVbyf3796+3xzXmUCnZgr35nUgKQx40vHmibIcrGANnqEbDXcbk0G9KGD7DgPAxAsN8U4f4jDkUvD2uMcaYIgf5JmKMMWZ5bESMMcZUYyNijDGmGhsRY4wx1diIGGOMqcZGxBhjTDUHZUT4ARmfquXWkxL8HiD+JkC/NynlGQO/P8CtgbnaVAu/1VlCFlw32oWjjUtA3ZeQG3X2b1HMLnIwRgQDEtdf6oNftOtX7SiiuA9GLSgH1qgau9rwkszVplpQwu+6tanmhNUItOfI6enpItsUA2tv8QPWuYwUBgkDcn5+7tUUzE5yMEZEi+lNgQX+uLk3gSdufi2/7WUzUKq5X+fP0aapUBc9vUsJzw2/KucX5oCsS6sbbwqGKl1oshYWxUQeNYtJGrMGPCeyICgZVonV3hVLoyU7cCz1sqQiHQtvgCj4JVlieGkIDPGmKxQDy9nzZnYbbTBmDnbaiPCkLaXJTchNLb/G3BWW3vDKmz6t4x9SDlFZ5572hZZez+0vQn1VBq5WiWieBwc8JeOmPtn2tSnOI/XJLOaN7j//+c+NPdPTMf+Yj/OU0LlxsRzK0JsN5yI+laXmStJ6Rz/xlDUWNiVjLbba6yaW2tvFmK3RKJxeBqJXAct0x6W6Wdo71pulv7WFq5b5xhGO45hwaJRR68+VR1qgLJUHLD/etwQ54bllxFWmzks6HU+hdO4SY9sU5aX0khllQFoW7cUvVIbiQXLWOTlXTk6C9DofkDe2W3UqyVD1FJw71ou88RxjSOtVA+0utd2YNRDvnZSilShlXAupcpBfNzf/o6KIigNiWkAxxJta5SmPFGDqcpA2KmcoKTwUI3mmoDZNUURT2jQkM9oX65ymz+VP5ULdo1GIcJ5UJiqT/1CSqVAa/uM4Z6yX5Me5+uqSkrZjKpw/9j1j1gp9tY+dnxPRsI2+lmHL3EYhHL169ar1s8VsbjiplkbptK6R3Q03FvY2aZRUdtvbmsl3yuH8zIFouGfKsAxs0ibtrqjhKPbgaJTrbDLP7aNes1e86sM++NpfRn7qrt0N1W+2ATLmfFOvlzFrYi8m1mU0UAZMVD59+vR6vHpoi9mpoCDH7iPOmLu2nxXUiU9RS5AGY4Bh5P+Y3w9gTKPyJ186B9DHlDaloJybp/Hr+Qg+JGAr4jnBSOXmHqbOJ9BOtjSmf0Qjx6ZT6RzS2GswdZ/3FD5FRma59hmzC+yFEZHR4CkYZcDTOQqD/cX12edcTNlHHGORUw4XFxfd0VXeNL8UM+fBKNC2KfB7FPKN/Tprk73RMdwYShkwXN9bSM0T99i94sdC3WI+jF/u67mha4CsMG5MsBtz0DQ3SC8D0auCusbxaY4bQ9L5/pwHkEv9Si8/Y+RpmkZptGVpPF2ub1yb9DEfKCyXlzjVmfooLrZjU6a0KU2b+lXHGCYX5xUUlqblnKSTv9TOmC+WTR1iXKmMmA9IG68NMK+idKVrQHhaXg2qvzFrptRH98aIrBWUBMpyDNswInOD0s1NaFP3VEHvAmONCP7SRP5YOMear68xYCNyy+iJewjSIPP4VqCwOZ56l4C65ZTpWus7BAqdNn355Ze914BjGZc5oDyMiTFrhT7ah/dY3xJM0PKl0RrWz5oT5kRya5Lta7/hYwU+HOib96mFcnFeP8uskZItsBExxhhTpGQLvHaWMcaYamxEjDHGVGMjYowxphobEWOMMdXYiBhjjKnGRmQAPmHlywT+RxSOK61RRboxa18tjdaAuq01mpDB2KVUpqC9QnBahHNOuLbbltmUazV3/ViaRvIcW4cc5Ivl7PIik3O3JSdjwpaQEfeczrEYfOLbx0D0wcIvsSUbHed+fLaWXyNTN+qIu41fkevHemN/uT8WytOP9DheStZ913cJxl4r9bs5fjUfWaLPUt4u/5hyKVlTXrzOY3+UPBbKmqs86tmH30Qq0AKAwI/OGjm+twosbyAvX77c6ha1PHXk3oqoW6OcOt92oC56+uEHdJLXnGxrX3Wu71x7qg8x9lqxIGWjhKoWoTTrhD6MPpnjjYS+yqKhrBK9NDYiFaTLu+c4OTlplx1fmvhq7H3VlwPFvsRwXA1ccx4WbED2DwzJHFsDaEUFVjZfGhuRAdLxaY5RkFh5jnOKBSXavKK+93YiUABS/DXj+HE+BnhSzr0NDaG2xbJA5dNm1TV9w4nGK7qhfdXjOYfaHuc74vk5N2VD377qGgvGRShTaSlzrGEY2lM9lWUsV0qfvLl4iPLMbcQV4Q2XhxQRz821E5QpGXO+9BpOJdYxva61qLw+F8/Z50gTiXKOcchGcpfM+q7nWOK55igPeGtntGNTdI8sTqN8ehmI3nv6xqeHxi77xpU1tqrxYf5PHSvmvKVz96G2qB344xyF5hQ0ThvbrXqTB9KyyItfpGO9QJ0J0zmHZEhclA11izJVnUrj1Gk9VG/lIXyK/Dm/ZJBCuTn5UD7HONU/lR9pYts4jvERwojLtZtw1UHpYvvi9e4jrYvgeiicsnNp+iDtFDnPBXWObaYesc+NkQf0yVzXUeGUnbsufZCW/Ol1RlaxnjWo7LkoleU3kQK1cwkMd+We+hjHbjrI9SKM/J+6ICPzC4xz8tQz9ik6BztB8kalJyiOm87cbj3bdMA2DX5ei9PFBnlSbm7I63A2BYOhp7Dmpr3eApgdJ/uG3nhi5Kk/yoZFD6nP0NtLRMM9bIELbJUc4WmP7X2n0PeW0NxLbX/hyZf5E0EbuObIS+1Nd2Rk+CJuy1saBlVbtEVwpFE81/XTNswCmWoL4KnQJuqu+nPd1zBsOkTcFI42xI3NhN66p/QroFyuM/eK+hn3Jse8pW361reJfNEL9CH65DawEdkSdFKU4FijURouoKPSQTbZV51Oyg1AOdGlBiPH0vuq5/ZOV9lDQz0p1IvyuLFkwPBLueTqTLumypP0XAeQER7DHMMfgrbwAENfk2HX/F1uC2AxNDSFkRs7v4ecp7RJ/bfPSa4l13et2LqYfq76xAcX9QfuJR5upiIjLQMSUT+7LTg/w52bGrKx2IgsQO4pG+UXnwwjdHLdDCgALj5P4kM3N0pByh8oY2zHIV3tpBvKiqfrJfdVBxmpyNQ9zWknT/l6CseoAEpABh2ZS/4//PBD2y7alFNOufNTT9JPeUhIyRnOHHoD0RtJhH5HX+KNC+UmA0k7tAVw2tfoY/S1vn4jBdy3DTD5cZSH440WGSvfEPEBJueQZy48uj6Z88bHNdG11rXjeuXeyjAsyIF2IKNc/xO0jzedEpK1+tfQ/RwZex/3oQcG2rI0NiILwGendN4UblYhYwE//vjj9dMrFx+FjMGZsreEbraxr8E8qaD44o1Chxtz85NnyX3VkQGKKO5TgrwI63uaHiLmYxhCT+qA0qUN8Omnn7ZDmHHYEZAL17S0p7oU+xTjjNy41nEITENbOWVMesL7jA59LD4J6ys5XZ+0r9HHKG+o35BPRAVLuQyv0ueRF21BTn394TaI15q68VaV60fITfct13/oOl5cXHRHVwYIF0EGlMO1pX/F+78E5Q4ZqFXRNK6Xgei9RxNnck0Hu+HHaSIzpbkx34sjTPnipF4sV/7mZmyP5yDXDmg6+I1w/Gna1J9LIxfrrDDSxnaThrbLj+sj5uNYpPWOcSmpHPE3SrTzXaH2KC1+zhEhLC0rQpzqE9sX24BLZae6xHTKr+uUQt1ydSE8tg1/2o60r0Eq21SehClPzAdqN+2SP6035aX12AbIIp4Xf05uyFv1V9tjH5DMomyjHGP7gTiVQxlp2YLyyJvKKxc2FdUv1msTKKuP/piGUkZThg6SdpohuPB0aP7nOvtaoG3xhhJ02E07/21C/eVSpce1zLX5tti0PuprEPsp7Z7ab0H9dU1GZCw1RqQE6VXOVCNCel2XTZha5yFsRG4JOs8YGSodTh2O45qbeRtQt1znXLPhK8FNK/lz8+nm1s3Msa7LmqipV66v0c/ww1QjorJ07SXL2D8ob61GRNdabYj/1Y6pCln5Y7+KZQudW0aE9DF+UyhvLh1CPfuwEVkYOsicHWMNxBsvun2Em1A3+Rqhb81ZP5R9vKa1ZZMvlrNWIzKGuduSkzFhS8hI59q0j1BGH95j3RhjTJGSLfDXWcYYY6qxETHGGFONjYgxxphqbESMMcZUYyNijDGmGhuRPUdrG5ndR2swxaVQ8JeWlonrNxmzBP7Ed4/BeLBez6OJ63CZ9YER0Ppa71a2NpXZf/yJ74GC4cCAjIWn1nQRObMOWDDwfMTeNryVlFafNWZubETMNTYguw0PAazMbMw2sRFZEbwyxjFuhqPwxzkN7XeAwlf69MmTNGk+EfPhNFZOHoa+tNuhyuRcSju0x0FMG8uoJZaFi6iN1L9k/JRGssTFOQXNGcjFOkvWubhILDuVeSqTeG7iOEesQ9qWmD/dkEv5aB91Oz7+c995XSvCSRPrrjA59QFQHGVLxipLKB9p/eBh+hdEaRiINguQLlYXF2UjjmuC0+J5xMXrFPNrjSvlzy34RnpBOsJEup4P8SorB2VpkbpSujGki9FRb9WF/2p/mi5CHjnVizqqzcghtl+LEypceUtwbsmMfKRX3ahnrBvpVD5xKl91iOcH0sT6qU7E61w4nU9haquudy5M6Jz8j+lx8Tw6B21QWbHtZr+hD/RRvENKGc0yoCikLCFVkml8vMlxUekAeWN+QRj5YvpUKUhppa4P8sa69ZE7dx9RWaps/pfqESGdFCBIUfJf5aRO6VNZp6QKOYU4KVxBmZIxZUcZqDzaDGl+6hXjUwUvf8yjMhWG7NM2UR/VI60DxHPEtOZwoA/04eGsHSd+pTNm/3ENvbAbXaNMutA8jSJpXdNPbrg+2BmOXdkYgumDIRDOTTkMk8ShlIiGah4+fNimbRRXF3O1iyNoWKWvjBzaXhbYnREZxLbhxu6eWNrSNg5bRTR8NcSYNDXkdjBkW12u8xjYZpe0kn0cJjOHiY3IjiNlw37SUFIGKHeUCIqSPbiHQHHHbVH7QJFIkfNFWLrtruZhOD/n1blLW4BiPFDwfdu2SuFTRz59HavMtIUtxgTlGbc4nYpkXlL4uS1Wp3yeO3bv9Snk2hyNdAnqLtkD8y9LGTyzG9iIrBCekIGbk4luJrzjhO3Lly+7o6Oj58+ft5/xopgfP37chmmyk/zkjfmjkelToOTDKDx79qxV0FFJ5CZSUXTaF1xI+emtBKUT9ywH2ll66o9yiPWmTBktjMyQAox1Y3/t09PTVhkiL2QT35yiQRwCmXNuDF4EGVE+54kGVdeDp/khyM91Hbv3ekpsU4T2p22mPxE+Btqm9siQmAOn6Qi9DESbBdC4N65RFu0YNOPYQmExTURj2oojb8yvOFwsBxgr5ziWGdPgNDYeUT458gj8OSgnjt2npHKgDSqb88V64e9DeZQ2ygKivGJ8DIvtyUH9YvpIPDeuMYbZ8NhenGQTy1YeysApHKfrovTIJG2bykzPpby58OinTJyuhdKY/Ydr3Yd/sb5jMKbOG0L6VL9W1Id4gmXOBHiS/eabb1o/T8RLtoXzN4pu9DyHMeZ9SrbAw1lmUZqn1rYDfvLJJ62foSLG0fV7FGPMbuM3kR0iKt3T09PrJ3vzPswZHIe5krOzs515ezNmbZRsgY2IMcaYIiVb4OEsY4wx1diIGGOMqcZGxBhjTDU2IsYYY6qxETHGGFONjcgA/EiOLxOGlpkwxphDxJ/4joBfWPMDucvLy1ELFxpjzD7h34nMAAsYsiief+BnjDk0/DuRGWC1WJYON8YY8yc2IiNhKfK7d+92PmOMMWAjMhLWXkr3zDDGmEPHcyIT0AQ7byXMjxhjzCHgOZEZwICcnJy0grQBMcaYK/wmMhJk4c2NjDGHiN9EjDHGLIKNyEjY4Ojt27edzxhjDNiIjIS9zY0xxtzEcyIjYF/wJ0+e+KssY8xBUrIFNiIDsADjixcvbEyNMQeLjYgxxphqSrbAcyLGGGOqsRExxhhTjY2IMcaYamxEjDHGVGMjYowxphobkQFYeJEvE/hv5gOZ8vubuaFcPss2xmwHG5EB2FOdT9u8t/p8oOjnBoO0RLnGmDI2IuYG7CW/NEv89ojVlSmXNc6MMdvDRsRcw9P8999/3/mMMWYYG5EBNEzy888/3/AD/3Hp0/tXX311Hae0oPkVxWtRR8qO6eP8C2lIH8skveqBIy7CnIDiYt1KdacM1gcDwkvzCml9JZsaaJ/KAckoLZt64k/baoy5Zf4oMBC995yfn7cywL179+6GX7K5vLxsj/kPZ2dnfxwfH7fHwPHp6el1Ohx+Qbkxvc6hcOWhXFCYyiAcvyCcMoTOP6buSlNCaZTn0aNH18dTUD1oJ1DPKAfiYjs4h2RQQu01xsxHSS8UNUYp46EgpSlllypawvFLkcbjFMJjWSAjkDopUJRiVJ4oSBS3SOuTloOTch6qexqfkqbfBMpRG0GyUdm0ORqVsYbBRsSY+SnpBQ9nzUjNsM4vv/xy1ChMrtANV7MNr86flvXTTz+14Zvy/Pnzo8aAjfpSjWGpKUNPd+7c6Y6u+Oyzz9ql9xmCM8asFxuRGdFeI7/99lv7fwwfffTR0cXFRefbDJ1/qd+0YKQePHjQ+W6i+RYMxw8//HD08ccfH33++eejDcnvv//e/o8GCuP6xRdftGU/ffq0CzXGrAkbkZk5PT1tJ6jjW0lpkvrx48ftF1FR2WIEap/AOT8KPFLz47s+5R8NHuWqbLYO5q0HPv3006Pz8/PWCPBG0Ufcbvjk5KRNH9HbCIbEv9MxZqU0N34vA9F7j+YI5Jon6xv+NF5j/IzJx3DG+dO0cV5B8wFymvOIYZRJuPyaK4lpNNcS0+EoP02bq7vmPHCxfiLGK49Qeao7fs5Zoq+sCGX0xUVSGeKMMfNQup+8KZWZlfgG9euvvxbfRMbAm87XX3/d+Ywxt0HJFng4y8wCyp6OxlDevXv3jj788MN2TqRmKE3UfKhgjNkufhMxq4MfIDIXcnx8PNuXZcaYekq2wEbEGGNMEQ9nGWOMWQQbEWOMMdXYiBhjjKnGRsQYY0w1NiIDaGnypZYSOWRY3n2TT4D74OuudHl+Y8wy2IgM4O1xlwElP/cGWDL4fB5sjNkONiLmBtt6gn/9+nW7IvCcyODPXa4xph8bEXMNS5Z4e1xjzBRsRAbQEudagkN+4D8ufXpnBVzFKS1ouEXx3h73ilhftT2WT71BMtjW25IxZgTN638vA9F7j1amxbGCbfRLNlo9Vqvesups3JFPO+3FVWbxC8qN6XUOhSuPVsRVmMrQ6ryC8Ljqrc4/pu5KU0JplIdVe3U8Fa02rPpST/y0HYiPsgLChiDNmHTGmHGU9EJRYwwplENASlOKLVW0hOOXIo3HKYTHskBGIHVSrBgBGRBAqUYFmdYnLQcnIzVU9zQ+JU0foU46z1jIkxoJyld7U3lRvz7ZRmxEjJmXkl7wcNaM1Azr7Mv2uHMt194You7oaqKc83FeYBMrfyVnzLqwEZmRQ94eV2i+RPMvU+cvmreOo/v373e+o3ZXwxcvXrRtQlbGmHVhIzIzpwe6Pa7AkPFmhQx4Cxr62uvNmzfd0VV56ZuO3kZoE7IyxqyM5kbvZSB679EcgZy3x+3fHpc4zYlwLsUNzZPEuqbzI4K69MVF0vrhJBNjTD3cS314PxEzC7x5PXz4sJ1/4S3m7t277bwOnyhvOifDWxk7JXo+xJjboWQLbETMLDD3wdAVw2nMYQDDUITxn1+o10LZm+Q3xmyGjYjZOZgfkTF69+7d9UcDxpjtYyNijDGmmpIt8NdZxhhjqrERMcYYU42NiDHGmGpsRIwxxlRjI2KMMaaanTcifArKlwNxmRFjjDHbYS8+8WWtKdZWury89K+ajTFmZg7idyL8qpkfpM21JLkxxpgrDuJ3IqzP5KXCjTFmu+yNEWFpDBb9M8YYsz32xoiwh8WrV686nzHGmG2wV2tnaYLdC/YZY8x8HMScCAbk5OSkbagNiDHGbIe9eROhrufn5+1GSMYYY+bjIN5EjDHGbJ+9MSLHx8dHb9++7XzGGGO2wd4YEfbyNsYYs132Yk7k22+/PXry5Im/yjLGmAUo2YKdNyLai3sXjJ0xxuwie21EjDHGLEvJFvjrLGOMMdXYiBhjjKnGRsQYY0w1NiLGGGOqsRExxhhTjY2IMcaYamxEjDHGVGMjYowxpprBHxsaY4wxfaaiaESMMcaYEh7OMsYYU42NiDHGmGpsRIwxxlRjI2KMMaYaGxFjjDGVHB39P4sbMJnzRQutAAAAAElFTkSuQmCC\"\u003e\u003c/p\u003e \u003cp\u003eIn method A, the counter for \u003cem\u003ew\u003c/em\u003e\u003csub\u003est\u003c/sub\u003e is not updated if the current character of \u003cem\u003ew\u003c/em\u003e\u003csub\u003est\u003c/sub\u003e is not equal to the current character of \u003cem\u003ew\u003c/em\u003e\u003csub\u003eln\u003c/sub\u003e. This method is useful for a wrong input word like ‘friiend’, and a correct word to be suggested is ‘friend’. Since ‘friiend’ is the longer word and the character ‘i’ is repeated, the counter of this word can be incremented, whereas the counter for the correct and shorter word ‘friend’ can remain unchanged when iterating through the second ‘i’.\u003c/p\u003e \u003cp\u003eIn method B, the counters for both \u003cem\u003ew\u003c/em\u003e\u003csub\u003est\u003c/sub\u003e and \u003cem\u003ew\u003c/em\u003e\u003csub\u003eln\u003c/sub\u003e are incremented in every iteration, regardless of the equality of characters. This method is useful for a wrong input word like ‘friendey’, and a correct word to be suggested is ‘friendly’. Only the characters in position 7 (‘e’ and ‘l’) of both the words do not match, but the succeeding characters in position 8 (‘y’) do. Detecting suggestions for this wrong word through method A would lead to a lesser value of \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e as only the first six characters would be identified as similar. So, the larger value among \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec1\u003c/em\u003e\u003c/sub\u003e and \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec2\u003c/em\u003e\u003c/sub\u003e is considered the value of \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e.\u003c/p\u003e \u003cp\u003eThe second step of the calculation of similarity is to determine \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e. For this, the formula (\u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ec\u003c/em\u003e\u003c/sub\u003e / length of \u003cem\u003ew\u003c/em\u003e\u003csub\u003eln\u003c/sub\u003e) * 100 is used, and the value obtained is compared with different conditions of percentage values depending on \u003cem\u003ew\u003c/em\u003e\u003csub\u003ei_l\u003c/sub\u003e. If conditions are satisfied, then that value is considered the value of \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e.\u003c/p\u003e\n\n \u003cp\u003e \u003c/p\u003e"},{"header":"4. Spell Checker Tool","content":"\u003cp\u003eThe Konkani Spell Check\u003csup\u003ed\u003c/sup\u003e\u0026gt; tool has been designed using a Python (version 3.5) based web framework, Django (version 2.2). The Konkani dictionary is parsed using the ’csv’ library. The tool did not rely on any database management system. Its user interface incorporates responsive web design, so it changes based on the screen resolution. Figure\u0026nbsp;\u003cspan refid=\"Fig1\" class=\"InternalRef\"\u003e1\u003c/span\u003e shows the output of words getting analyzed by the application.\u003c/p\u003e"},{"header":"5. Observations","content":"\u003cp\u003eA test dataset of 4,853 unique Konkani words from books of Standards 1, 2, and 3 by SCERT\u0026minus;Goa\u003csup\u003ee\u003c/sup\u003e\u003e was analyzed, out of which 4,041 words were identified as correct by our dictionary. Out of 812 unidentified words, 522 words were assigned suggestions by our system. The F-score value in Table\u0026nbsp;\u003cspan refid=\"Tab4\" class=\"InternalRef\"\u003e4\u003c/span\u003e is calculated as per the confusion matrix outcomes shown in Table\u0026nbsp;\u003cspan refid=\"Tab3\" class=\"InternalRef\"\u003e3\u003c/span\u003e.\u003c/p\u003e \u003cp\u003e \u003cdiv class=\"gridtable\"\u003e\u003ctable float=\"Yes\" id=\"Tab3\" border=\"1\"\u003e \u003ccaption language=\"En\"\u003e \u003cdiv class=\"CaptionNumber\"\u003eTable 3\u003c/div\u003e \u003cdiv class=\"CaptionContent\"\u003e \u003cp\u003eConfusion matrix\u003c/p\u003e \u003c/div\u003e \u003c/caption\u003e \u003ccolgroup cols=\"2\"\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c1\" colnum=\"1\"\u003e\u003c/div\u003e \u003cdiv align=\"char\" char=\".\" class=\"colspec\" colname=\"c2\" colnum=\"2\"\u003e\u003c/div\u003e \u003cthead\u003e \u003ctr\u003e \u003cth align=\"left\" colname=\"c1\"\u003e \u003cp\u003eOutcome\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c2\"\u003e \u003cp\u003eValue\u003c/p\u003e \u003c/th\u003e \u003c/tr\u003e \u003c/thead\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eTrue Positive (TP)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c2\"\u003e \u003cp\u003e4,041\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eFalse Positive (FP)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c2\"\u003e \u003cp\u003e0\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eTrue Negative (TN)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c2\"\u003e \u003cp\u003e812\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eFalse Negative (FN)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c2\"\u003e \u003cp\u003e0\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/colgroup\u003e \u003c/table\u003e\u003c/div\u003e \u003c/p\u003e \u003cp\u003e \u003cdiv class=\"gridtable\"\u003e\u003ctable float=\"Yes\" id=\"Tab4\" border=\"1\"\u003e \u003ccaption language=\"En\"\u003e \u003cdiv class=\"CaptionNumber\"\u003eTable 4\u003c/div\u003e \u003cdiv class=\"CaptionContent\"\u003e \u003cp\u003eClassification metrics\u003c/p\u003e \u003c/div\u003e \u003c/caption\u003e \u003ccolgroup cols=\"3\"\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c1\" colnum=\"1\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c2\" colnum=\"2\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c3\" colnum=\"3\"\u003e\u003c/div\u003e \u003cthead\u003e \u003ctr\u003e \u003cth align=\"left\" colname=\"c1\"\u003e \u003cp\u003eMetric\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c2\"\u003e \u003cp\u003eFormula\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c3\"\u003e \u003cp\u003eValue\u003c/p\u003e \u003c/th\u003e \u003c/tr\u003e \u003c/thead\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003ePrecision (P)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTP / (TP\u0026thinsp;+\u0026thinsp;FP)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003e1\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eRecall (R)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eTP / (TP\u0026thinsp;+\u0026thinsp;FN)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003e0.833\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003eF-score\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003e2 * (P * R) / (P\u0026thinsp;+\u0026thinsp;R)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c3\"\u003e \u003cp\u003e0.909\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/colgroup\u003e \u003c/table\u003e\u003c/div\u003e \u003c/p\u003e \u003cp\u003eTable\u0026nbsp;\u003cspan refid=\"Tab5\" class=\"InternalRef\"\u003e5\u003c/span\u003e presents a comparison of different incorrect word inputs for a proper noun, गणपत (gəɳəpət̪ə). Since this noun is of length 4.0 units, the expected \u003cem\u003es\u003c/em\u003e\u003csub\u003e\u003cem\u003ep\u003c/em\u003e\u003c/sub\u003e is 75%. Hence, in Fig.\u0026nbsp;\u003cspan refid=\"Fig1\" class=\"InternalRef\"\u003e1\u003c/span\u003e, it is shown as a suggestion for 1st and 2nd input words by the application.\u003c/p\u003e \u003cp\u003e \u003cdiv class=\"gridtable\"\u003e\u003ctable float=\"Yes\" id=\"Tab5\" border=\"1\"\u003e \u003ccaption language=\"En\"\u003e \u003cdiv class=\"CaptionNumber\"\u003eTable 5\u003c/div\u003e \u003cdiv class=\"CaptionContent\"\u003e \u003cp\u003eComparison of incorrect inputs\u003c/p\u003e \u003c/div\u003e \u003c/caption\u003e \u003ccolgroup cols=\"4\"\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c1\" colnum=\"1\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c2\" colnum=\"2\"\u003e\u003c/div\u003e \u003cdiv align=\"char\" char=\".\" class=\"colspec\" colname=\"c3\" colnum=\"3\"\u003e\u003c/div\u003e \u003cdiv align=\"left\" class=\"colspec\" colname=\"c4\" colnum=\"4\"\u003e\u003c/div\u003e \u003cthead\u003e \u003ctr\u003e \u003cth align=\"left\" colname=\"c1\"\u003e \u003cp\u003eSl. no.\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c2\"\u003e \u003cp\u003eInput\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c3\"\u003e \u003cp\u003eLength\u003c/p\u003e \u003c/th\u003e \u003cth align=\"left\" colname=\"c4\"\u003e \u003cp\u003eSimilarity (in %)\u003c/p\u003e \u003c/th\u003e \u003c/tr\u003e \u003c/thead\u003e \u003ctbody\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e1\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eगणापत (gəɳɑːpət̪ə)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c3\"\u003e \u003cp\u003e4.5\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003e88.88\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e2\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eगणपण (gəɳəpəɳə)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c3\"\u003e \u003cp\u003e4.0\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003e75\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e3\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eगणपतता (gəɳəpət̪ət̪ɑː)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c3\"\u003e \u003cp\u003e5.5\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003e72.72\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003ctr\u003e \u003ctd align=\"left\" colname=\"c1\"\u003e \u003cp\u003e4\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c2\"\u003e \u003cp\u003eगतापत (gət̪ɑːpət̪ə)\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"char\" char=\".\" colname=\"c3\"\u003e \u003cp\u003e4.5\u003c/p\u003e \u003c/td\u003e \u003ctd align=\"left\" colname=\"c4\"\u003e \u003cp\u003e66.66\u003c/p\u003e \u003c/td\u003e \u003c/tr\u003e \u003c/tbody\u003e \u003c/colgroup\u003e \u003c/table\u003e\u003c/div\u003e \u003c/p\u003e"},{"header":"6. Conclusion","content":"\u003cp\u003eThis is the first attempt at developing a spell checker for a low-resource language, Konkani. The analysis is done on the basis of morphology. The time complexity for giving suggestions for a specific type of wrong word is much faster than that of a conventional spell checker. The spell checker developed has a corpus size of 1,510,514, and the F-score obtained with a corpus size of 4,853 is 0.909. The spell checker tool is available online for researchers and other stakeholders. In the future, we would like to increase the corpus and F-score for the spell checker.\u003c/p\u003e"},{"header":"Declarations","content":" \u003ch2\u003eData Statement\u003c/h2\u003e \u003cp\u003eThe data used to generate the dictionary was taken from the author of Ref. 1. The test data is available in a Harvard Dataverse repository\u003csup\u003ef\u003c/sup\u003e.\u003c/p\u003e\u003ch2\u003eAcknowledgements\u003c/h2\u003e \u003cp\u003eThe author(s) did not receive any specific support or assistance from individuals or organizations that require acknowledgement for this research.\u003c/p\u003e"},{"header":"References","content":"\u003col\u003e\u003cli\u003e\u003cspan\u003eDesai SN (2017) \u003cem\u003eDesign and Implementation of Algorithms for Morphology Learning and its Applications\u003c/em\u003e [Doctoral dissertation], Goa University\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eKaur B, Singh H (2015) Design and Implementation of HINSPELL - Hindi Spell Checker using Hybrid approach. Int J Sci Res Manage 3:2058\u0026ndash;2061\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eJain A, Jain M, Detection and correction of non word spelling errors in Hindi language, (2014) (IEEE, Delhi, 2014), pp. 1\u0026ndash;5. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICDMIC.2014.6954235\u003c/span\u003e\u003cspan address=\"10.1109/ICDMIC.2014.6954235\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eSharma A, Jain P, Mukerjee DA (2013) \u003cem\u003eHindi spell checker\u003c/em\u003e [Semester project]. Indian Institute of Technology Kanpur\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eRachel S, Vasudha S, Shriya T, Rhutuja K, Gadhikar L, Vyakranly: Hindi GrammarSpelling Errors Detection and Correction System, (2023) (IEEE, Navi Mumbai, 2023). \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICNTE56631.2023.10146610\u003c/span\u003e\u003cspan address=\"10.1109/ICNTE56631.2023.10146610\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eUthayamoorthy K, Kanthasamy K, Senthaalan T, Sarveswaran K, Dias G (2019) DDSpell-A Data Driven Spell Checker and Suggestion Generator for the Tamil Language, \u003cem\u003e19th international conference on advances in ICT for emerging regions\u003c/em\u003e, (IEEE, Colombo, 2020) pp. 1\u0026ndash;6. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICTer48817.2019.9023698\u003c/span\u003e\u003cspan address=\"10.1109/ICTer48817.2019.9023698\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMurugan S, Bakthavatchalam TA, Sankarasubbu M (2020) SymSpell and LSTM based Spell-Checkers for Tamil, \u003cem\u003eTamil Internet Conference\u003c/em\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eSegar J, Sarveswaran K (2015) Contextual spell checking for Tamil language, \u003cem\u003e14th Tamil Internet Conference\u003c/em\u003e, pp. 1\u0026ndash;5. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttp://repo.lib.jfn.ac.lk/ujrr/handle/123456789/4224\u003c/span\u003e\u003cspan address=\"http://repo.lib.jfn.ac.lk/ujrr/handle/123456789/4224\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eKumar P, Kannan A, Goel N (2020) Design and Implementation of NLP-Based Spell Checker for the Tamil Language, \u003cem\u003e1st International Electronic Conference on Applied Sciences\u003c/em\u003e, Noida, pp. 1\u0026ndash;6\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eSampath A, Shanmugavel V (2022) Hybrid Tamil spell checker with combined character splitting. Concurrency Comput Pract Experience 35. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1002/cpe.7440\u003c/span\u003e\u003cspan address=\"10.1002/cpe.7440\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eLehal GS (2007) Design and implementation of Punjabi spell checker. Int J Systemics Cybernetics Inf 3:70\u0026ndash;75\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eKaur J, Garg K (2014) Hybrid Approach for Spell Checker and Grammar Checker for Punjabi. Int J Adv Res Comput Sci Softw Eng 4:62\u0026ndash;67\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eKaur R, Bhatia P (2010) \u003cem\u003eSpell Checker for Gurmukhi Script\u003c/em\u003e [Master\u0026rsquo;s thesis], Thapar Institute of Engineering And Technology \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttp://hdl.handle.net/10266/520\u003c/span\u003e\u003cspan address=\"http://hdl.handle.net/10266/520\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eLawaye A, Purkayastha BS (2016) Design and Implementation of Spell Checker for Kashmiri. Int J Sci Res 5:199\u0026ndash;200\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eTapaswi N (2012) Morphological-based Spellchecker for Sanskrit Sentences. Int J Sci Technol Res 1:1\u0026ndash;4\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMandal P, Hossain BMM (2017) Clustering-based Bangla spell checker, \u003cem\u003eInternational Conference on Imaging, Vision \u0026amp; Pattern Recognition\u003c/em\u003e, 2017 (IEEE, Dhaka, \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICIVPR.2017.7890878\u003c/span\u003e\u003cspan address=\"10.1109/ICIVPR.2017.7890878\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eChaudhuri BB (2001) Reversed word dictionary and phonetically similar word grouping based spell-checker to Bangla text, Proc. LESAL Workshop \u0026ndash; Mumbai\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eUzZaman N, Khan M, A double metaphone encoding for Bangla and its application in spelling checker, (2005) (IEEE, Wuhan, 2006), pp. 705\u0026ndash;710. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/NLPKE.2005.1598827\u003c/span\u003e\u003cspan address=\"10.1109/NLPKE.2005.1598827\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eAbdullah MM, Islam MZ, Khan M (2007) Error-tolerant finite-state recognizer and string pattern similarity based spelling-checker for Bangla, \u003cem\u003eProceeding of 5th international conference on natural language processing\u003c/em\u003e, (ICON, 2007)\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eRahman CR, Rahman MH, Zakir S, Rafsan M, Ali ME (2023) BSpell: A CNN-Blended BERT Based Bangla Spell Checker, \u003cem\u003eProceedings of the First Workshop on Bangla Language Processing\u003c/em\u003e, 2023, Vol. 1 (ACL, Singapore, 2023), pp. 7\u0026ndash;17. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.18653/v1/2023.banglalp-1.2\u003c/span\u003e\u003cspan address=\"10.18653/v1/2023.banglalp-1.2\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDixit V, Dethe S, Joshi RK (2005) Design and implementation of a morphology-based spellchecker for Marathi, and Indian language. Archives control Sci 15:251\u0026ndash;258\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003ePatil KT, Bhavsar RP, Pawar BV (2022) Contrastive study of minimum edit distance and cosine similarity measures in the context of word suggestions for misspelled Marathi words, \u003cem\u003eMultimedia Tools and Applications\u003c/em\u003e 82 15573\u0026ndash;15591. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/article/10.1007/s11042-022-13948-z\u003c/span\u003e\u003cspan address=\"https://link.springer.com/article/10.1007/s11042-022-13948-z\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003ePatel H, Patel B, Lad K, Jodani: A spell checking and suggesting tool for Gujarati language, (2021) Vol 11 (IEEE, Noida, 2021), pp. 94\u0026ndash;99. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/Confluence51648.2021.9377072\u003c/span\u003e\u003cspan address=\"10.1109/Confluence51648.2021.9377072\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDua M, Bhagat B, Dua S (2024) An amalgamation of integrated features with DeepSpeech2 architecture and improved spell corrector for improving Gujarati language ASR system, \u003cem\u003eInternational Journal of Speech Technology\u003c/em\u003e 27 87\u0026ndash;99. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/article/10.1007/s10772-024-10082-z\u003c/span\u003e\u003cspan address=\"https://link.springer.com/article/10.1007/s10772-024-10082-z\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eBhatti Z, Ismaili IA, Hakro DN, Soomro WJ (2016) Phonetic-Based Sindhi Spellchecker System Using a Hybrid Model, \u003cem\u003eDigital Scholarship in the Humanities Advance Access\u003c/em\u003e 31 264\u0026ndash;282. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1093/llc/fqv005\u003c/span\u003e\u003cspan address=\"10.1093/llc/fqv005\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDahar IA, Abbas F, Rajput U, Hussain A, Azhar F (2018) An Efficient Sindhi Spelling Checker for Microsoft Word. Int J Comput Sci Netw Secur 18:144\u0026ndash;150\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eUmair M, Rahman MU (2013) Analysis of Sindhi Spelling Error Patterns for Spelling Error Detection and Correction, \u003cem\u003eInternational Conference on Computer \u0026amp; Emerging Technologies\u003c/em\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eEtoori P, Chinnakotla M, Mamidi R (2018) Automatic spelling correction for resource-scarce languages using deep learning, \u003cem\u003eProceedings of ACL 2018- Student Research Workshop\u003c/em\u003e, Vol 1 (ACL, Melbourne, 2018), pp. 146\u0026ndash;152. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.18653/v1/P18-3021\u003c/span\u003e\u003cspan address=\"10.18653/v1/P18-3021\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMurthy KN (2008) Technology for Telugu. Bhasha 1:70\u0026ndash;95\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMurthy SR, Madi V, Sachin D, Kumar PR (2012) A non-word Kannada spell checker using morphological analyzer and dictionary lookup method. Int J Eng Sci Emerg Technol 2:43\u0026ndash;52\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMurthy SR, Akshatha AN, Upadhyaya CG, Kumar PR (2017) Kannada spell checker with sandhi splitter, \u003cem\u003eInternational Conference on Advances in Computing, Communications and Informatics\u003c/em\u003e, Vol 5 (IEEE, Udupi, 2017), pp. 950\u0026ndash;956. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICACCI.2017.8125964\u003c/span\u003e\u003cspan address=\"10.1109/ICACCI.2017.8125964\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eSooraj S, Manjusha K, Kumar MA, Soman KP (2018) Deep learning based spell checker for Malayalam language. J Intell Fuzzy Syst 34:1427\u0026ndash;1434\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eHema PH, Sunitha C (2016) Malayalam spell checker using n-gram method, \u003cem\u003eComputational Intelligence in Data Mining\u003c/em\u003e 1 217\u0026ndash;225. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/chapter/10.1007/978-81-322-2734-2_23\u003c/span\u003e\u003cspan address=\"https://link.springer.com/chapter/10.1007/978-81-322-2734-2_23\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eManohar N, Lekshmipriya PT, Jayan V, Bhadran VK, Spellchecker for Malayalam using finite state transition models, (2015) Vol 3 (IEEE, Trivandrum, 2016), pp. 157\u0026ndash;161. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/RAICS.2015.7488406\u003c/span\u003e\u003cspan address=\"10.1109/RAICS.2015.7488406\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eAmbili T, Panchamim SK, Subash N (2016) Automatic Error Detection and Correction in Malayalam. Int J Sci Technol Eng 3:92\u0026ndash;96\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eRatman DJ, Karthika AN, Praveena K, Tania R, Thara S, Prema N (2024) Phonogram-based Automatic Typo Correction in Malayalam Social Media Comments. Procedia Comput Sci 233:391\u0026ndash;400. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1016/j.procs.2024.03.229\u003c/span\u003e\u003cspan address=\"10.1016/j.procs.2024.03.229\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDhanya S, Kaimal MR, Nedungadi P (2024) Automatic Spelling Error Classification in Malayalam, \u003cem\u003eICT: Cyber Security and Applications\u003c/em\u003e, Vol 916 (Springer Nature, LNNS, 2024), pp. 301\u0026ndash;313. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/chapter/\u003c/span\u003e\u003cspan address=\"https://link.springer.com/chapter/\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003e10.1007/978-981-97-0744-7_25\u003c/span\u003e\u003cspan address=\"10.1007/978-981-97-0744-7_25\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eNaseem T (2004) \u003cem\u003eA Hybrid Approach for Urdu Spell Checking\u003c/em\u003e [Master\u0026rsquo;s thesis], National University of Computer \u0026amp; Emerging Sciences\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eNaseem T, Hussain S (2007) A novel approach for ranking spelling error corrections for Urdu, \u003cem\u003eLanguage Resources and Evaluation\u003c/em\u003e 41 117\u0026ndash;128. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/article/10.1007/s10579-007-9028-6\u003c/span\u003e\u003cspan address=\"https://link.springer.com/article/10.1007/s10579-007-9028-6\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eIqbal S, Anwar W, Bajwa UI, Rehman Z (2013) Urdu spell checking: Reverse edit distance approach, \u003cem\u003eProceedings of the 4th workshop on South and Southeast Asian natural language processing\u003c/em\u003e, Vol. 4 (ACL, Nagoya, 2013), pp. 58\u0026ndash;65. https://aclanthology.org/W13-4707\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eAziz R, Anwar MW, Jamal MH, Bajwa UI, Castilla AK, Rios CU (2023) Thompson and I Ashraf, Real Word Spelling Error Detection and Correction for Urdu Language. IEEE Access 11:100948\u0026ndash;100962. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ACCESS.2023.3312730\u003c/span\u003e\u003cspan address=\"10.1109/ACCESS.2023.3312730\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDas M, Borgohain S, Gogoi J, Nair SB, Design and implementation of a spell checker for Assamese, (2002) Vol 1 (IEEE, Hyderabad, 2003), pp. 156\u0026ndash;162. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/LEC.2002.1182303\u003c/span\u003e\u003cspan address=\"10.1109/LEC.2002.1182303\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eKashyap K (2015) Luitspell: development of an Assamese language spell checker for open office writer. Eur J Adv Eng Technol 2:135\u0026ndash;138\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eChoudhury R, Deb N, Kashyap K (2018) Context-Sensitive Spelling Checker for Assamese Language, \u003cem\u003eRecent developments in machine learning and data analytics\u003c/em\u003e, Vol. 740 (Springer Nature, AISC, 2019), p. 177188. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://link.springer.com/chapter/\u003c/span\u003e\u003cspan address=\"https://link.springer.com/chapter/\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003e10.1007/978-981-13-1280-9_18\u003c/span\u003e\u003cspan address=\"10.1007/978-981-13-1280-9_18\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDevi HM, Keat T, Chaudhuri BB (2011) Spelling Correction in Manipuri Text, \u003cem\u003eAdvanced Computing Applications Databases and Networks\u003c/em\u003e, (Narosa, Silchar, 2011), pp. 21\u0026ndash;29\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eLuitel N, Bekoju N, Sah AK, Shakya S (2024) Contextual Spelling Correction with Language Model for Low-resource Setting, \u003cem\u003eInternational Conference on Inventive Computation Technologies (ICICT)\u003c/em\u003e, Vol 7 (IEEE, Lalitpur, 2024), pp. 582\u0026ndash;589. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/ICICT60155.2024.10544712\u003c/span\u003e\u003cspan address=\"10.1109/ICICT60155.2024.10544712\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eDevkota B, Adhikar B, Shrestha D (2015) Integrating romanized Nepali spellchecker with SMS based decision support system for Nepalese farmers, \u003cem\u003e9th International Conference on Software, Knowledge, Information Management and Applications\u003c/em\u003e, Vol 3 (IEEE, Kathmandu, 2016), pp. 1\u0026ndash;6. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/SKIMA.2015.7400046\u003c/span\u003e\u003cspan address=\"10.1109/SKIMA.2015.7400046\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003ePrasain B, Lamichhane N, Pandey N, Adhikari P, Mudbhari P (2022) Nepali Spelling Checker. J Eng Sci 1:128\u0026ndash;130\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eMohapatra Y, Mishra AK, Mishra AK (2013) Spell Checker for OCR. Int J Comput Sci Inform Technol 4:91\u0026ndash;97\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003ePradhan A, Dalai SS (2020) Design of Odia Spell Checker with word Prediction. Int J Eng Res Technol 8:1\u0026ndash;4\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eBhatima B, Prabha CS (2016) \u003cem\u003eLinguistic foundations for Bodo spell checker\u003c/em\u003e [Doctoral dissertation], Gauhati University \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttp://hdl.handle.net/10603/235097\u003c/span\u003e\u003cspan address=\"http://hdl.handle.net/10603/235097\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e \u003cli\u003e\u003cspan\u003eRistad ES, Yianilos PN (1998) Learning string-edit distance. IEEE Trans Pattern Anal Mach Intell 20:522\u0026ndash;532. \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.1109/34.682181\u003c/span\u003e\u003cspan address=\"10.1109/34.682181\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ol\u003e"},{"header":"Footnotes","content":"\u003col style=\"list-style-type:lower-alpha;\"\u003e\u003cli\u003e\u003cspan\u003e \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://www.mha.gov.in/sites/default/files/EighthSchedule_19052017.pdf\u003c/span\u003e\u003cspan address=\"https://www.mha.gov.in/sites/default/files/EighthSchedule_19052017.pdf\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli\u003e\u003cspan\u003e \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://www.loc.gov/standards/iso639-2/php/code_list.php\u003c/span\u003e\u003cspan address=\"https://www.loc.gov/standards/iso639-2/php/code_list.php\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli\u003e\u003cspan\u003e \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://www.sussex.ac.uk/informatics/punctuation/misc/diacritics\u003c/span\u003e\u003cspan address=\"https://www.sussex.ac.uk/informatics/punctuation/misc/diacritics\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli\u003e\u003cspan\u003e \u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://konkanispellcheck.pythonanywhere.com/\u003c/span\u003e\u003cspan address=\"https://konkanispellcheck.pythonanywhere.com/\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli\u003e\u003cspan\u003e\u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://scert.goa.gov.in/\u003c/span\u003e\u003cspan address=\"https://scert.goa.gov.in/\" targettype=\"URL\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli\u003e\u003cspan\u003e\u003cspan class=\"ExternalRef\"\u003e\u003cspan class=\"RefSource\"\u003ehttps://doi.org/10.7910/DVN/ECWMBB\u003c/span\u003e\u003cspan address=\"10.7910/DVN/ECWMBB\" targettype=\"DOI\" class=\"RefTarget\"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ol\u003e"}],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":true,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":true,"hideJournal":false,"highlight":"","institution":"N/A","isAcceptedByJournal":true,"isAuthorSuppliedPdf":false,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":false,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"natural language processing, Indian language, diacritics, minimum edit distance, Python","lastPublishedDoi":"10.21203/rs.3.rs-6288011/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-6288011/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"\u003cp\u003eThis is the first time a spelling checker has been developed for a low-resource Indian language, Konkani, in Devanagari script. We have presented the design and implementation of the spell checker. Konkani is a macrolanguage, and developing a spell checker is challenging. Konkani spelling checker has 1,510,514 unique words in the dictionary.\u003c/p\u003e","manuscriptTitle":"Spell checker for low-resource Konkani language","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2025-03-25 06:40:56","doi":"10.21203/rs.3.rs-6288011/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"92784c78-e2d3-43f7-82c2-2088fc996cce","owner":[],"postedDate":"March 25th, 2025","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"published-in-journal","subjectAreas":[],"tags":[],"updatedAt":"2026-01-05T21:22:23+00:00","versionOfRecord":{"articleIdentity":"rs-6288011","link":"https://doi.org/10.64189/ict.25316","journal":{"identity":"journal-of-information-and-communications-technology-algorithms-systems-and-applications","isVorOnly":true,"title":"Journal of Information and Communications Technology: Algorithms, Systems and Applications"},"publishedOn":"2025-12-29 00:00:00","publishedOnDateReadable":"December 29th, 2025"},"versionCreatedAt":"2025-03-25 06:40:56","video":"","vorDoi":"10.64189/ict.25316","vorDoiUrl":"https://doi.org/10.64189/ict.25316","workflowStages":[]},"version":"v1","identity":"rs-6288011","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-6288011","identity":"rs-6288011","version":["v1"]},"buildId":"XKTyCvWXoU3ODBz1xrDgd","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}

Text is read by the "Ask this paper" AI Q&A widget below. Extraction quality varies by source — PMC NXML preserves structure cleanly, OA-HTML may include some navigation residue, and OA-PDF can have broken hyphenation. The publisher copy (via DOI) is the canonical version.

My notes (saved in your browser only)

Ask this paper AI returns verbatim quotes from the full text · source: preprint-html

Answers must be backed by verbatim quotes from this paper's full text. Hallucinated quotes are dropped automatically; if no verbatim passage answers the question, we say so. How this works

Citation neighborhood (no data yet)

We don't have any in-corpus citations linked to this paper yet. This is a recent paper (2025) — citers typically take a year or two to land, and the OpenAlex reference graph may still be filling in.

Source provenance

europepmc
last seen: 2026-05-20T01:45:00.602351+00:00
unpaywall
last seen: 2026-05-24T02:00:01.246996+00:00
License: CC-BY-4.0