
    #h!                     
   d dl Z d dlZd dlmZ d dlZd dlZd dlmZ d dl	m
Z
  ej                  ej                  j                  ej                  j                  e                   h dZd Zd Zd Zd	 Zed
k(  r e        yy)    N)OrderedDict)Selector)get_raw_data>	   vai-Latnvai-Vaiicutkvokkjndsprgvaic                  V   d} t        j                  |       }|D cg c]  }t        j                  d|      s| }}|j	                  d       i }|D ]<  }g ||<   |D ]0  }t        j
                  |dz   |      s||   j                  |       2 > t        D ]
  }||v s||=  |S c c}w )Nz!../raw_data/cldr_dates_full/main/z-[A-Z0-9]+$root)oslistdirresearchremovematchappendavoid_languages)cldr_dates_full_diravailable_locale_names	shortnameavailable_language_nameslanguage_locale_dictlanguage_namelocale_namelanguages           _/var/www/html/sandstorm/venv/lib/python3.12/site-packages/dateparser_scripts/order_languages.py_get_language_locale_dictr"      s    =ZZ(;< 0 yy3 	   
 ##F+1 H.0]+1 	HKxx5{C$]3::;G	HH $ /++$X./  ! s   B&c                 l   d }d}t        |      5 }t        j                  |      }d d d        d   d   }i |D ]N  }t        ||   d         }	 ||   d   }|D ]-  }	t	        ||	   d         |z  }
|	v r|	xx   |
z  cc<   )|
|	<   / P  |       }|t        j                         fdd	
      z   t        t              fd      }t        dt        |            D ]  }t        j                  dd||         ||<   ! | j                         }d}t        j                  |      D cg c]  }|d d 	 }}t        |      j                  t        |            }|D cg c]	  }||v s| }}t        |      t        |      z
  }g }|D ]S  }	t        j                  dd|	      }||v r%|j!                  |j#                  |      dz   |	       C|j%                  |	       U |t        |      z   }t'        t)        t*        |            }|S # 1 sw Y   xY w# t
        $ r Y w xY wc c}w c c}w )Nc                     g d} t        j                  d      }t        |j                        }|j                  rq	 |j                  d      j                         }|st        d      |D cg c]#  }|j                  dd      j                  d      % }}|d	   d
k7  rt        d      	 |S | S c c}w # t        $ r"}t        |       t        d       | cY d }~S d }~ww xY w)N)&enruesdetrfrfajazhviitnlptarplidkoukthhecssvroeldahufisrskbgnbhrltnohislcaetz:https://w3techs.com/technologies/overview/content_language)textz//table[@class='bars']//a/@hrefzNo bars foundz+https://w3techs.com/technologies/details/cl -r   r%   z!English is not the first languagez6The website could have changed, please update the code)requestsgetr   rK   okxpathgetall
ValueErrorreplacestrip	Exceptionprint)old_common_localesresponseselbarsinew_most_common_localeses          r!   get_most_common_localesz4_get_language_order.<locals>.get_most_common_locales(   s    '
R <<H
 HMM*;;*yy!BCJJL$_55
 "	+  IIKRPVV+' + +1-5$%HII 6 '& &%+  *aNO))*s/   0B4 -(B/B4 /B4 4	C=CCCz5../raw_data/cldr_core/supplemental/territoryInfo.jsonsupplementalterritoryInfo_populationlanguagePopulation_populationPercentc                     |    | fS N )xlanguage_population_dicts    r!   <lambda>z%_get_language_order.<locals>.<lambda>   s    /2A6     T)keyreversec                 &    j                  |       S rf   )index)rh   language_order_with_duplicatess    r!   rj   z%_get_language_order.<locals>.<lambda>   s    4::1= rk   )rl   r   _rM   zD../dateparser_data/supplementary_language_data/date_translation_dataz-\w+rL      )openjsonloadintfloatrV   sortedkeyssetrangelenr   subr   r   unioninsertro   r   listmapstr)r   r_   territory_info_filefterritory_contentterritory_info_data	territory
population	lang_dictr    language_populationmost_common_localeslanguage_orderro   cldr_languagessupplementary_date_directoryrh   supplementary_languagesavailable_languagesr   absent_languagesremaining_languagesparent_languagerp   ri   s                          @@r!   _get_language_orderr   '   s   C'J R	!	" )a IIaL)+N;OL!( 	,Y7FG
	+I67KLI% M)H-.BCDzQ $ 77,X6:MM69L,X6M	 23%86 %%'6< &"
 *+=N
 q#n-. J "tT>%3H IuJ *..0NN ! 02zz:V/WX!q"vXXn-33C8O4PQ#1YBU5U	N  ./#n2EE$ 1&&"h7n,!!."6"6"G!"KXV&&x01 $f-@&AAN#c>23Nk) )"  		* Ys/   H:H0H,%	H1/H1H	H)(H)c                     i }t        |       D ]3  }d|vr|g||<   ||j                  d      d      j                  |       5 |S )NrM   r   )ry   splitr   )r   datalangs      r!   generate_language_mapr      sT    D~& 2d?DJC#$++D1	2
 Krk   c                  d   t                t               } t        |       }d}d}t        j                  j                  |      st        j                  |       dt        j                  |dd      z   }t               }|D ]+  }|| j                         v rt        | |         ||<   'g ||<   - dt        j                  |dd      z   }t        |      }dt        j                  |dd      z   }	|d	z   |	z   d	z   |z   d
z   }
t        |d      5 }|j                  |
       d d d        y # 1 sw Y   y xY w)Nz../dateparser/data/z$../dateparser/data/languages_info.pyzlanguage_order = ),z:    )
separatorsindentzlanguage_locale_dict = zlanguage_map = z


w)r   r"   r   r   pathisdirmkdirru   dumpsr   rz   ry   r   rt   write)r   r   parent_directoryfilenamelanguage_order_stringcomplete_language_locale_dictrl   language_locale_dict_stringlanguage_map_datalanguage_map_data_stringlanguages_info_stringr   s               r!   mainr      s^   N46()=>N,5H77==)*
!"/$**;q3  %0M! 4&++--178LS8Q1R)#.13)#.	4 #<djj%+a? # .n=04::k!4  
 	
	
"	# 	 &		&
 	  
h	 '	%&' ' 's   D&&D/__main__)ru   r   collectionsr   regexr   rN   parselr   dateparser_scripts.utilsr   chdirr   dirnameabspath__file__r   r"   r   r   r   __name__rg   rk   r!   <module>r      su     	 #    1 2	3 4 Y ,|~%'P zF rk   