+
    {:j%                         ^ RI t ^ RIt^ RIHt ^ RIHt ^RIHt ^RIH	t	 ^RIH
t
 ^RIHt ^RIHt ^R	IHt ]tR
tRt]]3t]! ]4      t. ROtRtR
t]]3tRR ltRR ltRR ltR tR tR# )    N)ThreadPoolExecutor)PLATFORM_DIRECTORIES)ensure_list)get_lock)merge_or_update_dict)move_with_fallback)move_with_fallback_nolock)try_acquire_locksz.tar.bz2z.condac                    a a \        \        V4      ! 4       p\        VV 3R  lR4       F  pVP                  V4       K  	  VP	                  4       # )c                  &   < SP                  S 4      # )N)read)
buffersizefds   1lib/python3.14/site-packages/conda_index/utils.py<lambda>_checksum.<locals>.<lambda>1   s    bggj1    r   )getattrhashlibiterupdate	hexdigest)r   	algorithmr   	hash_implblocks   f&f  r   	_checksumr   /   sA    +-I137 8  r   c                    \        V R4      ;_uu_ 4       p\        W1V4      uuRRR4       #   + '       g   i     R# ; i)z9
Calculate a checksum for a filename (not an open file).
rbN)openr   )fnr   r   r   s   &&& r   checksumr!   6   s'     
b$2
3 
s   ,=	c                   \        \        V4      R7      ;_uu_ 4       pV Uu. uF  qCP                  \        WV4      NK  	  ppRRR4       X Uu. uF  qfP	                  4       NK  	  up# u upi   + '       g   i     L4; iu upi )z:
Calculate multiple checksums for a filename in parallel.
)max_workersN)r   lensubmitr!   result)r    
algorithmsr   er   resultsr&   s   &&&    r   	checksumsr*   >   sr     
J	8	8A LV
KUiHHXrj9: 	 
 
9
 +22'MMO'22
 
9	8
 3s"   A0A+A0B+A00B 	c                2    \         P                  ! WRR7      # )z9
Return True if pathA and pathB have identical contents.
F)shallow)filecmpcmp)pathApathBs   &&r   file_contents_matchr1   J   s    
 ;;uU33r   c                    V R8  d
   RV ,          # V R,          pVR8  d   R\        V4      ,          # VR,          pVR8  d   VR R2# VR,          pVR R2# )z
Return the number of bytes n in more human readable form.

Examples:
    >>> human_bytes(42)
    '42 B'
    >>> human_bytes(1042)
    '1 KB'
    >>> human_bytes(10004242)
    '9.5 MB'
    >>> human_bytes(100000004242)
    '93.13 GB'
i   z%d Bz%d KBz.1fz MBz.2fz GB)round)nkmgs   &   r   human_bytesr8   R   si     	4xz	DA4xq!!	DA4xC}	DAWC=r   )CONDA_PACKAGE_EXTENSIONSCONDA_PACKAGE_EXTENSION_V1CONDA_PACKAGE_EXTENSION_V2DEFAULT_SUBDIRSr!   r*   r   r1   r   r8   r   r   r
   )i   )i   )r-   r   concurrent.futures.threadr   conda.base.constantsr   r<   utils_buildr   r   r   r   r	   r
   r:   r;   r9   set__all__r   r!   r*   r1   r8    r   r   <module>rC      s      8 H 3 - E A O ?!' %  
 o& & ' 68RS 
!4	34r   