o
    wi#                     @   s    d dl Z d dlmZ dd ZdS )    N)romanc                 K   sL  |j }|j}|j}|j}|j}|j}|jj}	|dt	 }
|dt	 }|dt	 }|dd |r?t
dt| d  g }d}d }}t| }|j}d}d}||kr| |||  }|r||
v rn| }|d	7 }d
}n_||v rud
}n||v r{d}|s|r|dd }q^|r||v r||d}|r|| n|	r|||  d
}n||v r|r||d  |||  d
}|r||v }|t|7 }n|dd }|s`|s|r||d  ||k r|| |  d}|d7 }d}||ksVd|}|	st|jdkrdd|j d|jd f }t|d|}|jjtjv r$|j|}|S )a!  Transliterate `data` with the given `scheme_map`. This function is used
  when the source scheme is a Roman scheme.

  :param data: the data to transliterate
  :param scheme_map: a dict that maps between characters in the old scheme
                     and characters in the new scheme
  togglers
suspend_onsuspend_offmaybe_use_dravidian_variantNzUnexpected keyword argument %sr   F   T    z([%s])([%s])
yogavaahasz\2\1)vowelsvowel_marksvirama
consonantsnon_marks_viraamamax_key_length_from_scheme	to_schemeis_romanpopset	TypeErrorlistkeyslenappendgetjoinaccentsvaluesregexsubfrom_schemenamer   CAPITALIZABLE_SCHEME_IDSfix_om)data
scheme_mapkwr   r   r   r   r   r   to_romanr   r   r   bufihad_consonantfoundlen_datar   toggled	suspendedtokenmarkresultpattern r4   o/home/ubuntu/maya3_transcribe/venv/lib/python3.10/site-packages/indic_transliteration/sanscript/roman_mapper.py_roman   s   	
0
D$r6   )r   'indic_transliteration.sanscript.schemesr   r6   r4   r4   r4   r5   <module>   s    