
    i              
       2   S SK r S SKrS SKrS SKJr  S SKrS SKJr  S SK	J
r
  S SKJr  SrSrSrS	rS
r\R$                  " \R&                  R)                  \R&                  R+                  \5      5      5        \" \" \" S \R4                  " \5      5      5      \
-
  5      r\R4                  " \5       V s/ s H  o SS PM	     sn r\" \5      R;                  \" \5      5      r\R>                  " S5      r S r!S r"S r#S r$SS jr%\&S:X  a  \%" 5         ggs  sn f )    N)OrderedDict)RoundTripLoader)avoid_languages)combine_dictsz<../dateparser_data/cldr_language_data/date_translation_data/z/../dateparser_data/supplementary_language_data/zE../dateparser_data/supplementary_language_data/date_translation_data/z../dateparser/data/z)../dateparser/data/date_translation_data/c                     U S S $ )N xs    a/var/www/html/trading/venv/lib/python3.13/site-packages/dateparser_scripts/write_complete_data.py<lambda>r      s
    af    r   z\{0\}c                     [        5       nU R                  5        H7  u  p#[        U5       H  u  pE[        R	                  SU5      nXSU'   M!     X1U'   M9     U$ )Nz(\\d+[.,]?\\d*))r   items	enumerateRELATIVE_PATTERNsub)relative_datamodified_relative_datakeyvalueistrings         r   _modify_relative_datar      s\    (]#))+
"5)IA%))*<fEF!H * ',s#	 ,
 "!r   c                     U R                  S0 5      n[        U5      nU R                  S0 5      nUR                  5        H"  u  p4UR                  S0 5      n[        U5      nM$     g )Nzrelative-type-regexlocale_specific)getr   r   )language_datar   locale_specific_data_infolocale_relative_datas         r   _modify_datar#   )   sf    !%%&;R@M)-8M(,,->C'--/#xx(=rB45IJ 0r   c                    0 n0 nU [         ;   a7  [        [        U -   S-   5       n[        R                  " U[
        S9nS S S 5        U [        ;   a@  [        [        U -   S-   5       n[        [        U5      R                  5       5      nS S S 5        [        X5      nSU;  a  XS'   U$ ! , (       d  f       No= f! , (       d  f       N6= f)Nz.json)object_pairs_hookz.yamlname)cldr_languagesopencldr_date_directoryjsonloadr   supplementary_languagessupplementary_date_directoryr   get_datar   )language	cldr_datasupplementary_datafgcomplete_datas         r   #_get_complete_date_translation_datar5   2   s    I>!%07:;q		!{CI <**.9GCD!,_Q-?-H-H-J!K E!)@M]" (f <; EDs   B'%#B8'
B58
Cc                     U(       a  XU '   g [        X5       nUR                  U5        S S S 5        g ! , (       d  f       g = f)N)r(   write)filenametextmode	in_memoryin_memory_resultouts         r   _write_filer>   A   s.    %)"(!SIIdO "!!s	   3
Ac                 &   0 nU (       d  [         R                  R                  [        5      (       d  [         R                  " [        5        [         R                  R                  [
        5      (       a  [        R                  " [
        5        [         R                  " [
        5        [        [        S-   5       n[        U5      R                  5       nSSS5        [         Hl  n[        U5      n[        UW5      n[        U5        [         R"                  " USSSS9nSU-   S-   R%                  S	5      n['        [
        U-   S
-   USU U5        Mn     Sn['        [        S-   USSU5        ['        [
        S-   SSSU5        U$ ! , (       d  f       N= f)a#  
This function is responsible of generating the needed py files from the
CLDR files (JSON format) and supplementary language data (YAML format).

Use it with in_memory=True to avoid writing real files and getting a
dictionary containing the file names and their content (used when testing).
zbase_data.yamlN   ),z: F)indent
separatorsensure_asciizinfo = 
zutf-8z.pywbzsfrom dateparser.data import date_translation_data
from .languages_info import language_order, language_locale_dict
z__init__.pyw )ospathisdirtranslation_data_directorymkdirdate_translation_directoryshutilrmtreer(   supplementary_directoryr   r.   all_languagesr5   r   r#   r*   dumpsencoder>   )	r;   r<   r2   	base_datar/   date_translation_datatranslation_dataout_text	init_texts	            r   write_complete_datarZ   I   s`    ww}}788HH/077==344MM45
+,	%(88	9Q#A&//1	 
: " CH M -.CY O*+::!!RW
  0047??H&1E9	
 ""	M 
 "]2 "]2BUDT G 
:	9s   :F
F__main__)F)'r*   rI   rO   collectionsr   regexreruamel.yamlr   "dateparser_scripts.order_languagesr   dateparser_scripts.utilsr   r)   rQ   r-   rL   rN   chdirrJ   dirnameabspath__file__listsetmaplistdirr'   r,   unionrR   compiler   r   r#   r5   r>   rZ   __name__r
   s   0r   <module>rm      s    	  #  ' > 2T K K  3 H  2	3 4bjj)<=>?/Q ,.::6R+ST+SaSb6+ST N#))#.E*FG::h' "K4n z O Us   4D