
    9%i}N                     v   d dl mZ ddlmZ ddlmZ dZi d dedfgddedfgd	d
edfgddedfgddedfgddedfgddedfgddedfgddedfgddedfgddedfgddedfdgddedfgddedfdgd dedfdgd!d"edfgd#dedfd$gd
edfd$gd%edfgdd$gd&Zi d dedfgddedfgd	d'edfgdd(edfgdd)edfgddedfgddedfgddedfgddedfgddedfgddedfgddedfdgddedfgdd(edfdgd d)edfdgd!d"edfgd#dedfd$gd'edfd$gd%edfgd)d$gd&Zd*d+d,d-d.d/d0d1d2d3d4d5Z	i d d6edfgdedfd7gd	d8edfgdd9edfgdd:edfgdd;edfgdd<edfgdd=edfgdd>edfgdd?edfgdd@edfgddAedfdgddBedfgdd9edfdgd d:edfdgd!dCedfgd#dDedfd$gd8edfd$gdEedfgd:edfd$gd&Z
i d d6edfgdedfdFgd	d8edfgddGedfgddHedfgdd;edfgdd<edfgdd=edfgdd>edfgdd?edfgdd@edfgddAedfdgddBedfgddGedfdgd dHedfdgd!dCedfgd#dDedfd$gd8edfd$gdEedfgdIedfd$gd&ZdJedfgdKedfgdLedfgdMedfgdNZdOedfgdPedfgdQedfgdRedfgdNZdSdTdUdVdWdXdYdZd[d\	Zd]Zd^Zd_gZ G d` dae      ZdfdbZdc Zdd Zde Zy)g    )unicode_literals   )parse_currency_parts)Num2Word_EU
__OBJECT__)dimNN)unN   )dauSM   )triAM   )pedwarN   )pumpN   )chwechr      )saithN   )wythN	   )nawN
   )degN   )zar ddegN   )deuddegN         )pymthegN   )z
ar bymthegN)deunawN)         )dwyr   )tairN)pedairN)milN)miliwnN)biliwnN)triliwnN)
cwadriliwnN)
cwintiliwnN)secsttiliwnN)	septiliwnN)octiliwnN)noniliwnN)	dengiliwnN)r   r   r   r   r#   r(               !   )dimfedN)cyntafN)ailr   )trydyddN)	pedweryddN)pumedN)chwechedN)saithfedN)wythfedN)nawfedN)degfedN)unfedr   )
deuddegfedN)
pymthegfedN)rH   N)	deunawfedN)gyntafN)trydeddr   )	pedwareddr   )rN   N)ugainN)deugainN)trigainN)zpedwar ugainN)r   r
   r   r   )ugainfedN)
deugainfedN)
trigainfedN)zpedwar ugainfedN)undegN)dauddegN)tridegN)	pedwardegN)pumdegN)chwedegN)saithdegN)wythdegN)nawdegN)	r   r
   r   r   r   r   r   r   r   )dolardolarauceiniog	ceiniogauGBPc                   p    e Zd ZdefeefdddZdZdZd Zd Z		 dd	Z
dd
Z	 	 	 	 	 ddZ	 ddZd Zd Zy)Num2Word_CY)euroeuros))puntpunnoeddr`   ))yuanyuans)ffenffens)EURUSDrc   CNYzmeinws z pwynt c                      y N )selfs    k/var/www/html/navyabakers_fullstack/navyabakers_prod/venv/lib/python3.12/site-packages/num2words/lang_CY.py__init__zNum2Word_CY.__init__   s        c           
         | j                  t        |            }t        |      j                  d      d   }dj	                  |D cg c]  }| j                  t        |             c}      }|t
        j                  z   |z   S c c}w )N.r    )to_cardinalintstrsplitjoinre   FLOAT_INFIX_WORD)rt   float_numberprefix
float_partcpostfixs         ru   float_to_wordszNum2Word_CY.float_to_words   s{     !!#l"34&,,S1!4
((/9:!Tc!f%:
 444w>> ;s   !Bc                 2   |dz  }|dz  }g }|dk(  rt         }n|rt        }nt        }|dkD  r_|dkD  r|j                  t        |          |j                  dt        d fg       |r'|dv r|j                  d       n|j                  d       |r|s|d	k\  r|d
k  r|dz  }	|dkD  r_|	dk(  r|j                  d       |S |	dk(  r|j                  dt        d fg       |S |j                  d       |j                  ||	          |S |	dk(  r|j                  dt        d fg       |S |	dk(  r|j                  dt        d fg       |S |j                  d       |j                  ||	          |S |dk  r|dkD  s
|dk(  rP|dk(  rK|dk(  r#|j                  t         t        |                |S |j                  t        t        |                |S |dz  }
|dz  }	|r|	dk(  rt        j                  |
      }nt        j                  |
      }|	dk7  ry|
dkD  r:|j                  ||	          |r\|j                  d       |j                  |       |S |j                  ||	          |r"|j                  d       |j                  |       |S |r|j                  |       |S )Nd   femr   r   )cantN)r   r   r   r%      r8      $   )   0   =   D   G   Q   X   [   )acN)ar   2   ;   r   )hannerN)zhanner ac unN)zhanner ar   )zhanner cantN)zhanner cant ac unN)zhanner cant ar   r   )arr   )
CARDINAL_WORDS_FEMORDINAL_WORDSCARDINAL_WORDSextendOBJappendr|   ORD_STR_TENSgetSTR_TENS)rt   numberinformalgenderordinalhundredsuntil100resultCWunitstensdegaus               ru   hundred_groupzNum2Word_CY.hundred_group   s    S=C<  	 U?#B"#a<!|~h79MM>C;78   $ MM,/MM+. x2~(b.a<z&67\ [ !'=T{&KLX U &89bi0R O z'<sDk&JKL K !83+FH A &=>bi0> ; RKFQJaKHM&8V&EF2 / nS[&AB. ) $r>D"RKE5A: , 0 0 6 (T 2z!8"MM"U)4$ &k : &e 4  #MM"U)4$ &l ; &e 4  e,rw   c                     |dk  rt        t        |         S |dk(  ry|dkD  rt        d      | j                  |d|d      S )Nr   r   canfedThe given number is too large.FTr   r   r   )
makestringr   NotImplementedErrorr{   )rt   r   r   r   s       ru   
to_ordinalzNum2Word_CY.to_ordinalY  sW    B;mF344S=c\%&FGGU64   
 	
rw   Nc                    d}|dk  rd}d|z  }|dk(  r|r	t         d   S t        t         d         S |dddz  z  k  st        d      t        |t              r| j                  |      S g }d }	d	D ].  }
|d|
z  z  d|
d
z
  z  z  }|j                  ||
f       |s*|	r-|}	0 g }|r|j                  d       t        |      D ]f  \  }}
|s	|
dk(  rd}n
|
d
k(  r|}nd}|dkD  s|
d
k(  r!| j                  ||||xr |	|k(        }||z  }|
d
kD  sL|j                  t        |
d
z
            h |r|S |dk  rt        ||      S |r|j                  d|d fg       t        |      S )NFr   Ti  r   r<   r   )r   r   r   r   r#   r(   r8   r9   r:   r;   r<   r   r   )meinwsNr   r   mascr   r   r   countedor   )r   r   r   
isinstancefloatr   r   reversedr   MILLION_WORDSr   )rt   r   r   r   r   r   rawnegativegroupslowestgrouppotgrr   gwordss                  ru   r{   zNum2Word_CY.to_cardinale  s    A:H&[FQ;%a((!."344#B,&%&FGG&&&v..  	  	 A 	!C2s7"rcAg6BMM2s)$+ 		! MM*+' 	:GB!8AAXAA6SAX ..!)  ' ?[B->	 / E eOF7MM-a"89)	:* M|!&'::MM;$"@A!&))rw   c                    t        |      \  }}}	 | j                  |   \  }	}
|rd| j                  j                         z  nd}| j                  ||      }|r| j                  ||      n| j                  ||      }|dk(  r||S |dk(  r||S |||d|S # t        $ r' t        d|d| j                  j
                  d      w xY w)a*  
        Args:
            val: Numeric value
            currency (str): Currency code
            cents (bool): Verbose cents
            separator (str): Cent separator
            adjective (bool): Prefix currency name with adjective
        Returns:
            str: Formatted string

        zCurrency code "z" not implemented for ""z%s  r   rz   )r   CURRENCY_FORMSKeyErrorr   	__class____name__negwordstrip_money_verbose_cents_verbose_cents_terse)rt   valcurrencycents	separator	adjectiveleftrightis_negativecr1cr2	minus_str	money_str	cents_strs                 ru   to_currencyzNum2Word_CY.to_currency  s    $8#< e[	**84HC 5@EDLL..00R	''h7	  x0""5(3 	 A:  
 QY   
 	
A  	%T^^446 	s   B 0Cc                 (   |dkD  rX| j                  |dd      }| j                  |   d   d   }|j                  d       |j                  |d f       t        |      S | j                  |dd      }| j                  |   d   d   }t        ||      S )	Nr   r   T)r   r   r   r   r   r   )r{   r   r   r   rt   r   r   mr   s        ru   r   zNum2Word_CY._money_verbose  s     C<  4 @A##H-a03AHH[!HHaY a=    4 @A ##H-a03A a++rw   c                     |dk(  ry|dkD  r| j                  |d      }n	t        d fg}| j                  |   d   d   }t        ||      S )Nr   r   r   T)r   r   )r{   r   r   r   r   s        ru   r   zNum2Word_CY._cents_verbose  s^    Q; z$$V$64[M##H-a03A a++rw   )Fr   F)Fr   )Fr   FNF)rn   T,F)r   
__module____qualname__GENERIC_CENTSGENERIC_DOLLARSr   MINUS_PREFIX_WORDr   rv   r   r   r   r{   r   r   r   rs   rw   ru   re   re      s{     "=1/?5N " 

? >C`D

 J*Z IN9
v,@,rw   re   c                     g }d }| D ]F  \  }}|t         k(  r|s|}d }|r|j                  t        ||             n|j                  |       |}H dj                  |      S )Nrz   )r   r   mutater   )r   r   outlastmutwmuts         ru   r   r   %  sl    
CG 38JJva)*JJqM 88C=rw   c                 D    |dk(  rt        |       S |dk(  rt        |       S y )Nr   r   )softmutationaspiratedmutation)wordmutations     ru   r   r   8  s-    4D!!	T	 && 
rw   c                 Z   | d   dk(  r| d   dk7  rd| dd  z   S | d   dk(  r| d   dk7  rd| dd  z   S | d   dk(  r| d   dk7  rd	| dd  z   S | d   dk(  s| d   d
k(  rd| dd  z   S | d   dk(  r| d   dk7  rd| z   S | j                  d      r| dd  S | j                  d      rd| dd  z   S | dk(  ry| S )Nr   pr   hbtdr   r   r   fllrhrr
   rO   hugain)
startswithr   s    ru   r   r   A  s    Aw#~$q'S.T!"X~	aCDGsNT!"X~	aCDGsNT!"X~	aC47c>T!"X~	aCDGsNTz		ABx		T!"X~	rw   c                     | d   dk(  r| d   dk7  rd| dd  z   S | d   dk(  r| d   dk7  rd| dd  z   S | d   dk(  r| d   dk7  rd	| dd  z   S | S )
Nr   r   r   r   phr   thr   chrs   r  s    ru   r   r   W  sv    Aw#~$q'S.d12h	aCDGsNd12h	aCDGsNd12hrw   rr   )
__future__r   r   r   lang_EUr   r   r   r   r   r   ORDINAL_WORDS_FEMr   r   STR_TENS_INFORMALr   r   CURRENCIES_FEMre   r   r   r   r   rs   rw   ru   <module>r     s  " ( *  j T{# sDk" T{#	
 T{# 3+& d$ 3+& #t% d$ T{# d$ T{$56 	S$K( d%67  	C;(9:!" 	S$K(#$ T{$89%& 
d%9:	C;'	/0+0T{# sDk" T{#	
 d$ 3+& d$ 3+& #t% d$ T{# d$ T{$56 	S$K( #t&78  	C;(9:!" 	S$K(#$ T{$89%& 
d%9:	C;'	/0+ 2 3+&d%& T{# C;'	
 c4[) #t% S$K( S$K( C;' 3+& 	C;' 3+'89 	T{+ 	S$K):; 	sDk+<=  	T{+!" 3+';<#$ 
d%9:	sDk*	sDk+?@),3+&d%& T{# C;'	
 c4[) #t% S$K( S$K( C;' 3+& 	C;' 3+'89 	T{+ 	S$K):; 	sDk+<=  	T{+!" 3+';<#$ 
d%9:	sDk*	sDk+?@) 2 	#t%C;'C;'d,	 	S$K(sDk*sDk*!C;/	 
  '(J,+ J,Z
&',rw   