
    Fg	                         S SK r S SKrS SKrS SKrS SKr\R
                  R                  \ R                  " 5       S5      r\R                  " \SS9  Sr
SrS rS rS	 rS
 rS rS rS rS rS rS rg)    NcacheTexist_okupdate_time   c                     [         R                  " 5       nUR                  [        U 5      R	                  5       5        UR                  5       SS $ )Nr      )hashlibsha256updatestrencode	hexdigest)objhash_objects     ]/Users/admin/workspace/ai/PDFMathTranslate/myenv/lib/python3.13/site-packages/pdf2zh/cache.pydeterministic_hashr      s=    .."Ks3x()  "1R((    c            	      8   [         R                  " [        5       V s/ s Ho  n [         R                  R	                  [         R                  R                  [        U 5      5      (       d  MK  [         R                  R                  [        U 5      PMq     nn U$ s  sn f N)oslistdir	cache_dirpathisdirjoin)dirdirss     r   get_dirsr      sc    46JJy4Iy4ISRWW]][][b[b[g[ghqsv[wMx(BGGLLC(4IDyK zs   A
B+(Bc                      [         R                  R                  U [        5      n[	        [        USS9R                  5       5      nU$ ! [         a    [	        S5      s $ f = f)Nutf-8encodinginf)r   r   r   time_filenamefloatopenreadFileNotFoundErrorr   timefilets      r   get_timer-      sS    77<<]3$x'2779: U|s   AA	 	A! A!c           	          [         R                  R                  U [        5      n[        R                  " 5       n[        U[        USSS9SS9  g Nwr!   r"    )fileend)r   r   r   r%   timeprintr'   r*   s      r   
write_timer6   "   s6    ww||C/H		A	!$xw7R@r   c                 0    [        [        U 5      S S9S   $ )Nc                     U S   $ )N    )xs    r   <lambda>argmin.<locals>.<lambda>)   s    !A$r   )keyr   )min	enumerate)iterables    r   argminrB   (   s    y"7::r   c                     [        5       n U  HI  n[        R                  R                  U5      (       d  [        R                  " U5         [        U5        MK      [        5       n [        U 5      [        ::  a  g U  Vs/ s H  n[        U5      PM     nn[        U5      n[        R                  " X   5        M^  ! [         a    [        R                  " U5         M  f = fs  snf r   )r   r   r   r   remover-   BaseExceptionshutilrmtreelen	max_cacherB   )r   r   timesargs       r   remove_extrarL   ,   s    :Dww}}S!!IIcN	SM	  zt9	!*./$3#$/Umdi    	MM#	 0s   B9=C 9 CCc                     [         R                  R                  [        U 5      n[         R                  R	                  U5      $ r   )r   r   r   r   existshash_keyr   s     r   	is_cachedrQ   >   s)    
'',,y(
+C77>>#r   c                     [         R                  R                  [        U 5      n[         R                  " USS9  [        U5        g )NTr   )r   r   r   r   makedirsr6   rO   s     r   create_cacherT   C   s+    
'',,y(
+CKKd#sOr   c                     [         R                  R                  [        X5      n[         R                  R	                  U5      (       a  [        USS9R                  5       $ g )Nr!   r"   )r   r   r   r   rN   r'   r(   )rP   hash_key_paragraphfilenames      r   load_paragraphrX   I   sB    ww||IxDH	ww~~hHw/4466r   c           	      t    [         R                  R                  [        X5      n[	        U[        USSS9SS9  g r/   )r   r   r   r   r5   r'   )rP   rV   	paragraphrW   s       r   write_paragraphr[   Q   s+    ww||IxDH	)$xw?RHr   )tempfiler   r4   r
   rF   r   r   
gettempdirr   rS   r%   rI   r   r   r-   r6   rB   rL   rQ   rT   rX   r[   r:   r   r   <module>r^      s}     	   GGLL,,.8	 I %	)
A;!$
Ir   