
    )i              
          S r SSKrSSKrSSKr/ SQrSrSr\" \ V s/ s H  o S   (       d  M  U PM     sn S S9r\	" S	S
\ VVs0 s H  u  pX_M	     snn5      r
 " S S5      rS rS r\S:X  a  \" S5      r\" \5        ggs  sn f s  snnf )u  
    detect
    ~~~~~~

    Code for automatically detecting a transliteration scheme.

    :license: MIT and BSD

Example usage:

::

    from indic_transliteration import detect
    detect.detect('pitRRIn') == Scheme.ITRANS
    detect.detect('pitRRn') == Scheme.HK

When handling a Sanskrit string, it's almost always best to explicitly
state its transliteration scheme. This avoids embarrassing errors with
words like ``pitRRIn``. But most of the time, it's possible to infer the
encoding from the text itself.

``detect.py`` automatically detects a string's transliteration scheme:

::

    detect('pitRRIn') == Scheme.ITRANS
    detect('pitRRn') == Scheme.HK
    detect('pitFn') == Scheme.SLP1
    detect('पितॄन्') == Scheme.Devanagari
    detect('পিতৄন্') == Scheme.Bengali

Supported schemes
-----------------

All schemes are attributes on the ``Scheme`` class. You can also just
use the scheme name:

::

    Scheme.IAST == 'IAST'
    Scheme.Devanagari == 'Devanagari'

Scripts:

-  Bengali (``'Bengali'``)
-  Devanagari (``'Devanagari'``)
-  Gujarati (``'Gujarati'``)
-  Gurmukhi (``'Gurmukhi'``)
-  Kannada (``'Kannada'``)
-  Malayalam (``'Malayalam'``)
-  Oriya (``'Oriya'``)
-  Tamil (``'Tamil'``)
-  Telugu (``'Telugu'``)

Romanizations:

-  Harvard-Kyoto (``'HK'``)
-  IAST (``'IAST'``)
-  ITRANS (``'ITRANS'``)
-  Kolkata (``'Kolkata'``)
-  SLP1 (``'SLP1'``)
-  Velthuis (``'Velthuis'``)

    N))bengalii	  )
devanagari 	  )gujaratii
  )gurmukhii 
  )kannadai  )	malayalami   )oriyai   )tamili  )telugui   )hkN)iastN)itransN)
kolkata_v2N)slp1N)velthuisNr   i  c                     U S   * $ )N    )xs    \/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/indic_transliteration/detect.py<lambda>r   a   s
    adU    )keyEnumr   c                       \ rS rSr\R
                  " S5      r\R
                  " S5      r\R
                  " S5      r\R
                  " S5      r	\R
                  " S5      r
\R
                  " S5      rSrg	)
Regexg   uf   [āīūṛṝḷḹēōṃḥṅñṭḍṇśṣḻĀĪŪṚṜḶḸĒŌṂḤṄÑṬḌṆŚṢḺ]zaa|ii|uu|~nz4ee|oo|\^[iI]|RR[iI]|L[iI]|~N|N\^|Ch|chh|JN|sh|Sh|\.au   [ēō]zE[fFxXEOCYwWqQPB]|kz|Nk|Ng|tT|dD|Sc|Sn|[aAiIuUfFxXeEoO]R|G[yr]|(\W|^)Gz\.[mhnrltds]|"n|~sr   N)__name__
__module____qualname____firstlineno__recompileIAST_OR_KOLKATA_ONLYITRANS_OR_VELTHUIS_ONLYITRANS_ONLYKOLKATA_ONLY	SLP1_ONLYVELTHUIS_ONLY__static_attributes__r   r   r   r   r   g   st      %N  O JJ~6 

 ; <+ I&, jj + ,)
 **34-r   r   c                    [         R                  S:  a   U R                  S5      n U  HC  n[	        U5      nU[
        :  d  M  [         H  u  p4XBs=::  a  [        ::  d  M  O  M  Us  s  $    ME     [        R                  R                  U 5      (       aD  [        R                  R                  U 5      (       a  [        R                  $ [        R                  $ [        R                  R                  U 5      (       a  [        R                   $ [        R"                  R                  U 5      (       a  [        R$                  $ [        R&                  R                  U 5      (       a  [        R(                  $ [        R*                  R                  U 5      (       a  [        R                   $ [        R,                  $ ! [         a     GNf = f)zDetect the input's transliteration scheme.

:param text: some text data, either a `unicode` or a `str` encoded
             in UTF-8.
)   r   zutf-8)sysversion_infodecodeUnicodeErrorordBRAHMIC_FIRST_CODE_POINTBLOCKSBRAHMIC_LAST_CODE_POINTr   r&   searchr)   Schemer   r   r(   r   r*   r   r+   r   r'   r   )textLcodename
start_codes        r   detectr>      sJ    	[[!d
 aq6D''$
$8!888+ %  &&t,,  &&[[
d##==
__D!!;;
%%??
""))$//==	=  
s   F8 8
GGc                     SSK Jn  XR                  UR                  UR                  UR
                  UR                  UR                  4;   a  gg)Nr   )	sanscriptFT)indic_transliterationr@   
DEVANAGARIGUJARATIBENGALIPUNJABIORIYA)scriptr@   s     r   likely_dravidianrH      sR    -$$i&8&8):K:KYM^M^`i`q`qs|  tC  tC  D  D	r   __main__zUyagnopavitham-a-short-description-with-dharan-vidhi-and-yagyopavita-nasha-prayachhita)__doc__loggingr$   r/   SCHEMESr4   r6   sortedr5   typer8   r   r>   rH   r    rG   print)r   r<   r;   s   000r   <module>rP      s   ?@  	 & "  !  
G-GquG-?	C 
fb@*$4:@	A5 50(V zij&- a . As   BBB