1. tokenize by space (words) 2. preprocess (exclude puncts) -> puncs marked 3. check example base - if found stop 4. check subanta (it checks avyayas, verbs as well) -> pratipadikas -> avyayas marked -> verbs marked subanta errors -> if a word is marked _SUBANTA then remove _SUBANTA and treat it as pratipadika 5. check pratipadika list -> if found then dont process for Sandhi -> if not found then start sandhi processing 6. search of sandhi marker and sandhi patterns 7. generate possible solutions 8. search the lexicon 9. subanta processing (to parse the vibhakti of first segment, if any) 10. output (segmented text)