o
    ph:                     @   s0   d dl mZmZ ddlmZ G dd deZdS )    )print_functionunicode_literals   )Num2Word_EUc                       s\   e Zd ZdddddZdZdZ fdd	Zd
d Zdd Zdd Z	dd Z
dddZ  ZS )Num2Word_NL))euror   centr	   ))pondr
   )pennypence))dollarr   r   ))yuanr   )jiaofen)EURGBPUSDCNYiljardiljoenc                    s   t t|   d| _d| _d| _d| _d| _d| _g | _	g d}g d}g d	}d
g| 
||| | _g d| _g d| _i dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0i| _d S )1Nzmin kommazHHet zwevende puntnummer %s kan niet omgezet worden naar een ordernummer.z>Alleen nummers (type (%s)) kunnen naar woorden omgezet worden.zDHet negatieve getal %s kan niet omgezet worden naar een ordernummer.z%Het getal %s moet minder zijn dan %s.)	nonoktseptsextquintquadrtrbm)
 unduotrequattuorquinsexr   oktonovem)	dezviginttrigint
quadragintquinquagintsexagint
septuagintoktogintnonagintzend)	)i  duizend)d   honderd)Z   negentig)P   tachtig)F   zeventig)<   zestig)2   vijftig)(   veertig)   dertig)twintig	negentienachttien	zeventienzestienvijftienveertiendertientwaalfelftiennegenachtzevenzesvijfvierdrietwee   éénnulrY   nuldrX   eerstrW   tweedrV   derdrU   vierdrT   vijfdrS   zesdrR   zevendrQ   achtstrP   negendrO   tiendrN   elfdrM   twaalfdigigsterderdstendendstjoenjoenstrdrdst)superr   setupnegword	pointworderrmsg_floatorderrmsg_nonnumerrmsg_negorderrmsg_toobigexclude_titlegen_high_numwordshigh_numwordsmid_numwordslow_numwordsords)selflowsunitstens	__class__ ]/var/www/html/Testing_prj/Navya-Bakers/venv/lib/python3.10/site-packages/num2words/lang_NL.pyrr   "   sj   

	
zNum2Word_NL.setupc           	      C   s   || \}}}}|dkr|dk r|S d}||kr%|dkr |d7 }|| }n7|d  k r4|  k r4dk rPn n|dkr<d}| drF|d7 }n|d	7 }||}}n|dkrX|d7 }|| }|| }||fS )
Nr   i@B een 
   r5   eu   ënen)endswith)	r   currnextctextcnumntextnnumvalwordr   r   r   mergee   s*   
"

zNum2Word_NL.mergec                 C   s^   |  | | |}| jD ]}||r*|d t|t|  | j|  } |d S q|d S Nr   )verify_ordinalto_cardinalr~   r   len)r   valueoutwordkeyr   r   r   
to_ordinal   s   



"zNum2Word_NL.to_ordinalc                 C   s   |  | t|d S r   )r   str)r   r   r   r   r   to_ordinal_num   s   
zNum2Word_NL.to_ordinal_numc                 C   s   |d S )z
        :param n:
        :param forms:
        :return:

        gettext form is nplurals=2; plural=(n != 1);
        but this claims https://onzetaal.nl/taaladvies/euro-euros/
        not sure if it's applied only to euro
        r   r   )r   nformsr   r   r   	pluralize   s   
zNum2Word_NL.pluralizeTc                 C   s&   |d d s|  |S | j|d|dS )Nr5   r   r6   )hightxtlongval)r   to_splitnum)r   r   r   r   r   r   to_year   s   
zNum2Word_NL.to_year)T)__name__
__module____qualname__CURRENCY_FORMSGIGA_SUFFIXMEGA_SUFFIXrr   r   r   r   r   r   __classcell__r   r   r   r   r      s    C	r   N)
__future__r   r   lang_EUr   r   r   r   r   r   <module>   s   