o
    wi                     @   s  d dl Z d dlZd dlmZ d dlmZ d dlmZ d dl	mZ
 d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dl mZ! d dl"mZ# d dl$mZ% d dl&mZ' d dl(mZ) d dl*mZ+ d dl,mZ- d dl.mZ/ d dl0mZ1 d dl2mZ3 d dl4mZ5 d dl6mZ7 dZ8eeee
eeeeeeeeedZ9dddZ:ee!e#e%e'e)e+e-e/e1e3e5e7dZ;d	d
 Z<dd Z=dS )    N)convert)
variations)asbnenguhimlmrorpatateknurr   Fc                 C   sZ   |t vrtdt| | }|dkr|d S ttt| |}|| dd |D }|S )Nz6Language not supported. Please check the language codeFr   c                 S   s   g | ]	}t d d|qS )z[\u200c\u200b] )resub).0line r   X/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/indic_numtowords/numtowords.py
<listcomp>:   s    znum2words.<locals>.<listcomp>)supported_langs	Exceptionlang_func_dictlistsetget_variationsextend)numlangr   resultsr   r   r   	num2words2   s   
r#   c           	      C   s  t | }t }t|d }tj|dd}|D ]}t|dd  ||d < qW d    n1 s/w   Y  | |v r@||  | n|g|| < t|d.}| D ] } | d }||  D ]}||d 7 }qY| }|d7 }|	| qOW d    d S 1 s{w   Y  d S )Nr	)	delimiter   r   w
)
user_variation_file_mapdictopencsvreaderr   appendkeysstripwrite)	r    wordr!   user_variation_fileuser_variation_dictfr.   rowr   r   r   r   add_variationO   s*   
"r8   c                 C   s*   t | }t| |v rt|t|  S t S )N)r*   intr   )r    r!   r5   r   r   r   r   g   s   r   )r   F)>r   r-   indic_numtowords.asm.cardinalr   
as_convertindic_numtowords.ben.cardinal
bn_convertindic_numtowords.eng.cardinal
en_convertindic_numtowords.guj.cardinal
gu_convertindic_numtowords.hin.cardinal
hi_convertindic_numtowords.mal.cardinal
ml_convertindic_numtowords.mar.cardinal
mr_convertindic_numtowords.ori.cardinal
or_convertindic_numtowords.pun.cardinal
pa_convertindic_numtowords.tam.cardinal
ta_convertindic_numtowords.tel.cardinal
te_convertindic_numtowords.kan.cardinal
kn_convertindic_numtowords.urd.cardinal
ur_convert)indic_numtowords.asm.data.user_variationsr   as_variations)indic_numtowords.ben.data.user_variationsbn_variations)indic_numtowords.eng.data.user_variationsen_variations)indic_numtowords.guj.data.user_variationsgu_variations)indic_numtowords.hin.data.user_variationshi_variations)indic_numtowords.mal.data.user_variationsml_variations)indic_numtowords.mar.data.user_variationsmr_variations)indic_numtowords.ori.data.user_variationsor_variations)indic_numtowords.pun.data.user_variationspa_variations)indic_numtowords.tam.data.user_variationsta_variations)indic_numtowords.tel.data.user_variationste_variations)indic_numtowords.kan.data.user_variationskn_variations)indic_numtowords.urd.data.user_variationsur_variationsr   r   r#   r*   r8   r   r   r   r   r   <module>   sx    
