
    9%i                     R    d dl mZmZmZ ddlmZ dZ G d dej                        Zy)    )divisionprint_functionunicode_literals   )lang_EUnullac                   r     e Zd ZdZdZ fdZefdZd Zd Z	d Z
d Zd	 Zd
 ZddZ	 	 d fd	Zd Z xZS )Num2Word_HU   illiárd   illióc                    t         t        |           d| _        d| _        g d| _        g d}|D cg c]  }d|z   	 c}dgz   |z   | _        |D cg c]  }d|z   	 c}dgz   | j                  z   t        gz   | _        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)d*d+d,d-d.d/| _        y c c}w c c}w )0Nu   mínusz u   egész)	)  ezer)d      száz)Z   	kilencven)P   nyolcvan)F   hetven)<   hatvan)2      ötven)(   negyven)   harminc)	kilencnyolc   héthat   öt   négy   három   kettőegytizenu   tízhuszonu   húszr   nulladr(   egyedr'   kettedr&   harmadr%   negyedr$   u   ötödr#   hatodr"   hetedr!   nyolcadr    kilencedtizedhuszadr   	harmincadr   	negyvenedr   u   ötvenedr   hatvanadr   hetvened
nyolcvanadkilencvenedu   századezred	milliomodu   milliárdod)r   r   r   r   r   r   )	superr
   setupnegword	pointwordmid_numwordslow_numwordsZEROpartial_ords)selfrC   w	__class__s      k/var/www/html/navyabakers_fullstack/navyabakers_prod/venv/lib/python3.12/site-packages/num2words/lang_HU.pyr?   zNum2Word_HU.setup   s   k4&(!!O)3?@agk@ &x(+, 5AAqhlA 'y)#001 !%v&

X
7
 h
 h	

 X
 8
 7
 G
 Y
 j
 G
 X
 {
 {
 j
  j!
" j#
$ %&!%/
 A Bs   CCc                    t        |      |k7  r| j                  |      S |dk  r!| j                  | j                  |       z   }|S |dk(  r|}|S |dk(  r	|dk(  rd}|S |dk  r| j                  |   }|S |dk  r| j                  |      }|S |dk  r| j                  |      }|S |dk  r| j                  |      }|S | j                  |      }|S )	Nr       u   kétr   r   r   i@B )	intto_cardinal_floatr@   to_cardinalcardstens_to_cardinalhundreds_to_cardinalthousands_to_cardinalbig_number_to_cardinal)rF   valuezeroouts       rI   rO   zNum2Word_HU.to_cardinalK   s   u:))%00QY,,!1!15&!99C 
 aZC 
 RZEQJC 
 RZ**U#C 
 S[''.C 
 T\++E2C
 
	 U],,U3C 
 --e4C
    c                     	 | j                   |   S # t        $ r- | j                   |dz  dz     | j                  |dz        z   cY S w xY w)N
   )rP   KeyErrorrO   rF   rU   s     rI   rQ   zNum2Word_HU.tens_to_cardinal`   sT    	O::e$$ 	O::erkB./$2B2B52:2NNN	Os    3AAc                 |    |dz  }d}|dk7  r| j                  |d      |z   }| j                  |dz  d      }||z   S )Nr   r   r   rK   rV   rO   )rF   rU   hundredsprefixpostfixs        rI   rR   z Num2Word_HU.hundreds_to_cardinalf   sU    C<q=%%hR%86AF""53;R"8rX   c                     |dz  }d}|dk7  r| j                  |d      |z   }| j                  |dz  d      }||dk  s|sdz   |z   S dz   |z   S )Nr   r   r   rK   r^   i  -r_   )rF   rU   	thousandsra   rb   s        rI   rS   z!Num2Word_HU.thousands_to_cardinaln   so    TM	>%%ib%9FBF""54<b"9u}GEOOEOOrX   c                     t        t        |            }|dz  dk7  r|n|dz
  }d|dz  dz  z  }| j                  ||z  d      }| j                  ||z  d      | j                  |   z   |rd|z   z   S dz   S )N   r   rL   rZ   rK   rd   )lenstrrO   rP   )rF   rU   digitsexprests        rI   rT   z"Num2Word_HU.big_number_to_cardinalv   s    SZ!A:?
Vq[1_%R0  #r2TZZ_D!%3:/ 	0+-/ 	0rX   c                 &   |dk  r| j                   | j                  |       z   S |dk(  ry|dk(  ry| j                  |      }| j                  j	                         D ]/  \  }}|t        |       d  |k(  s|d t        |        |z   } |dz   S  |dz   S )Nr   r   u   elsőrL   u   másodikik)r@   
to_ordinalrO   rE   itemsrh   )rF   rU   rW   	card_wordord_words        rI   ro   zNum2Word_HU.to_ordinal~   s    19<<$//5&"999A:aZ""5)C'+'8'8'>'>'@ #	8I'(I5.I/(:CTz	 TzrX   c                 @    | j                  |       t        |      dz   S )N.)verify_ordinalri   r\   s     rI   to_ordinal_numzNum2Word_HU.to_ordinal_num   s    E"5zCrX   c                 d    d}|dk  s|t        |      }||dz   nd}|| j                  |      z   S )NrK   r    zi. e. )absrO   )rF   valsuffixlongvalra   s        rI   to_yearzNum2Word_HU.to_year   sB    7f(c(C&,&8fslhF((---rX   c                 2    t         t        |   |||||      S )N)r>   r
   to_currency)rF   rz   currencycents	separator	adjectiverH   s         rI   r   zNum2Word_HU.to_currency   s"    [$35)Y8 	8rX   c                 ^   t        |      |k7  r| j                  | j                  |       z   S t        |      j	                  d      \  }}| j                  t        |            dz   | j                  t        |            z   dz   | j                  | j                  dt        |      z        z   S )Nrt   u    egész rx   rZ   )
ry   r@   rN   ri   splitrO   rM   rE   rP   rh   )rF   rU   leftrights       rI   rN   zNum2Word_HU.to_cardinal_float   s    u:<<$"8"8%"@@@%j&&s+e  T+""3u:./  ))$**R3u:5E*FGH 	IrX   )NT)HUFT,F)__name__
__module____qualname__GIGA_SUFFIXMEGA_SUFFIXr?   rD   rO   rQ   rR   rS   rT   ro   rv   r}   r   rN   __classcell__)rH   s   @rI   r
   r
      sW    KK,
\ '+ *O P0 . FI#8
IrX   r
   N)	
__future__r   r   r   rK   r   rD   Num2Word_EUr
    rX   rI   <module>r      s,   $ B A LI'%% LIrX   