+
    ÎiD*                     8   ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^RI
Ht ^RIHtHtHt ]P                   ! ]4      tRs ! R R]4      t ! R R]4      t ! R	 R
]4      t ! R R]4      t ! R R]4      t ! R R]4      t]! R4      ]]	P8                  ]/t  ^ RIt]]]PD                  &   ]]]PF                  &   ]]]PH                  &   AR t&/ t'R t(]PR                  ! ]*! R4      4      t+R t,R#   ]  d    ^ RI!t L`i ; i  ] ]%3 d     LAi ; i)    )unicode_literalsN)DistlibException)cached_propertyget_cache_baseCachec                   B   a a ] tR t^t oRV 3R lltR tR tRtVtV ;t	# )ResourceCachec                   < Vf2   \         P                  P                  \        4       \	        R4      4      p\
        \        V `  V4       R # )Nzresource-cache)ospathjoinr   strsuperr	   __init__)selfbase	__class__s   &&l/Users/ahmad/.openclaw/workspace/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/resources.pyr   ResourceCache.__init__   s4    <77<< 0#6F2GHDmT+D1    c                    R# )z
Is the cache stale for the given resource?

:param resource: The :class:`Resource` being cached.
:param path: The path of the resource in the cache.
:return: True if the cache is stale.
T r   resourcer   s   &&&r   is_staleResourceCache.is_stale"   s     r   c                   VP                   P                  V4      w  r#Vf   TpV# \        P                  P	                  V P
                  V P                  V4      V4      p\        P                  P                  V4      p\        P                  P                  V4      '       g   \        P                  ! V4       \        P                  P                  V4      '       g   RpMV P                  W4      pV'       d;   \        VR4      ;_uu_ 4       pVP                  VP                  4       RRR4       V# V#   + '       g   i     T# ; i)z
Get a resource into the cache,

:param resource: A :class:`Resource` instance.
:return: The pathname of the resource in the cache.
NTwb)finderget_cache_infor   r   r   r   prefix_to_dirdirnameisdirmakedirsexistsr   openwritebytes)r   r   prefixr   resultr"   stalefs   &&      r   getResourceCache.get-   s      55h?>F  WW\\$))T-?-?-GNFggoof-G77==))G$77>>&))h5&$''1GGHNN+ (v ('s   D77E	r   N)
__name__
__module____qualname____firstlineno__r   r   r-   __static_attributes____classdictcell____classcell__r   __classdict__s   @@r   r	   r	      s     2	 r   r	   c                   &   a  ] tR t^Gt o R tRtV tR# )ResourceBasec                    Wn         W n        R # r/   r   name)r   r   r=   s   &&&r   r   ResourceBase.__init__H   s    	r   r<   N)r0   r1   r2   r3   r   r4   r5   r8   s   @r   r:   r:   G   s      r   r:   c                   ^   a  ] tR t^Mt o RtRtR t]R 4       t]R 4       t	]R 4       t
RtV tR# )	Resourcez
A class representing an in-package resource, such as a data file. This is
not normally instantiated by user code, but rather by a
:class:`ResourceFinder` which manages the resource.
Fc                8    V P                   P                  V 4      # )zr
Get the resource as a stream.

This is not a property to make it obvious that it returns a new stream
each time.
)r   
get_streamr   s   &r   	as_streamResource.as_streamU   s     {{%%d++r   c                P    \         f   \        4       s \         P                  V 4      # r/   )cacher	   r-   rD   s   &r   	file_pathResource.file_path^   s     =!OEyyr   c                8    V P                   P                  V 4      # r/   )r   	get_bytesrD   s   &r   r(   Resource.bytese   s    {{$$T**r   c                8    V P                   P                  V 4      # r/   )r   get_sizerD   s   &r   sizeResource.sizei   s    {{##D))r   r   N)r0   r1   r2   r3   __doc__is_containerrE   r   rI   r(   rP   r4   r5   r?   s   @r   rA   rA   M   sR     
 L,   + + * *r   rA   c                   4   a  ] tR t^nt o Rt]R 4       tRtV tR# )ResourceContainerTc                8    V P                   P                  V 4      # r/   )r   get_resourcesrD   s   &r   	resourcesResourceContainer.resourcesq   s    {{((..r   r   N)	r0   r1   r2   r3   rS   r   rX   r4   r5   r?   s   @r   rU   rU   n   s     L/ /r   rU   c                      a  ] tR t^vt o Rt]P                  P                  R4      '       d   RtMRtR t	R t
R tR tR tR tR	 tR
 tR tR tR t]! ]P,                  P.                  4      tR tRtV tR# )ResourceFinderz,
Resource finder for file system resources.
javac                    Wn         \        VR R4      V n        \        P                  P                  \        VRR4      4      V n        R# )
__loader__N__file__ )modulegetattrloaderr   r   r"   r   )r   ra   s   &&r   r   ResourceFinder.__init__   s4    flD9GGOOGFJ$CD	r   c                @    \         P                  P                  V4      # r/   )r   r   realpathr   r   s   &&r   _adjust_pathResourceFinder._adjust_path   s    ww%%r   c                    \        V\        4      '       d   R pMRpVP                  V4      pVP                  ^ V P                  4       \
        P                  P                  ! V!  pV P                  V4      # )   //)	
isinstancer(   splitinsertr   r   r   r   rh   )r   resource_nameseppartsr*   s   &&   r   
_make_pathResourceFinder._make_path   s`     mU++CC##C(Q		"u%  ((r   c                @    \         P                  P                  V4      # r/   )r   r   r%   rg   s   &&r   _findResourceFinder._find   s    ww~~d##r   c                    R VP                   3# r/   )r   r   r   s   &&r   r    ResourceFinder.get_cache_info   s    X]]""r   c                    V P                  V4      pV P                  V4      '       g   R pV# V P                  V4      '       d   \        W4      pM\	        W4      pW#n        V# r/   )rs   rv   _is_directoryrU   rA   r   )r   rp   r   r*   s   &&  r   findResourceFinder.find   s\    }-zz$F  !!$''*4?!$6Kr   c                .    \        VP                  R 4      # )rb)r&   r   ry   s   &&r   rC   ResourceFinder.get_stream   s    HMM4((r   c                    \        VP                  R 4      ;_uu_ 4       pVP                  4       uuRRR4       #   + '       g   i     R# ; i)r   N)r&   r   read)r   r   r,   s   && r   rL   ResourceFinder.get_bytes   s-    (--&&!668 '&&&s	   :A	c                T    \         P                  P                  VP                  4      # r/   )r   r   getsizery   s   &&r   rO   ResourceFinder.get_size   s    wwx}}--r   c                   a  V 3R  lp\        \        P                  ! VP                  4       Uu. uF  q2! V4      '       g   K  VNK  	  up4      # u upi )c                 ^   < V R 8g  ;'       d!    V P                  SP                  4      '       * # )__pycache__)endswithskipped_extensions)r,   r   s   &r   allowed-ResourceFinder.get_resources.<locals>.allowed   s1    & 8 8JJt667,8 9r   )setr   listdirr   )r   r   r   r,   s   f&  r   rW   ResourceFinder.get_resources   s>    	9 rzz(--8G8!GAJAA8GHHGs   AAc                8    V P                  VP                  4      # r/   )r|   r   ry   s   &&r   rS   ResourceFinder.is_container   s    !!(--00r   c              #    "   V P                  V4      pVe   V.pV'       d   VP                  ^ 4      pVx  VP                  '       g   K1  VP                  pVP                   FZ  pV'       g   TpMRP                  WE.4      pV P                  V4      pVP                  '       d   VP                  V4       KV  Vx  K\  	  K  R # R # 5i)Nrl   )r}   poprS   r=   rX   r   append)r   rp   r   todornamer=   new_namechilds   &&      r   iteratorResourceFinder.iterator   s     99]+:D88A;((($MME ( 2 2$'+H'*xx'>H $		( 3 --- KK."'K !3   s    C$CAC'!C)r   rc   ra   N).pyc.pyoz.class)r   r   )r0   r1   r2   r3   rR   sysplatform
startswithr   r   rh   rs   rv   r    r}   rC   rL   rO   rW   rS   staticmethodr   r   r#   r|   r   r4   r5   r?   s   @r   r[   r[   v   s      ||v&&7-E
&
)$#
).I1 !/M( (r   r[   c                   f   a a ] tR t^t oRtV 3R ltR tR tR tR t	R t
R tR	 tR
 tRtVtV ;t# )ZipResourceFinderz.
Resource finder for resources in .zip files.
c                d  < \         \        V `  V4       V P                  P                  p^\        V4      ,           V n        \        V P                  R4      '       d   V P                  P                  V n        M\        P                  V,          V n        \        V P                  4      V n        R# )   _filesN)r   r   r   rc   archivelen
prefix_lenhasattrr   	zipimport_zip_directory_cachesortedindex)r   ra   r   r   s   && r   r   ZipResourceFinder.__init__   sv    /7++%%c'l*4;;))++,,DK#88ADKDKK(
r   c                    V# r/   r   rg   s   &&r   rh   ZipResourceFinder._adjust_path   s    r   c                (   WP                   R  pWP                  9   d   RpMV'       d4   VR,          \        P                  8w  d   V\        P                  ,           p\        P                  ! V P
                  V4      p V P
                  V,          P                  V4      pV'       g-   \        P                  RWP                  P                  4       V# \        P                  RWP                  P                  4       V#   \         d    Rp Loi ; i)NTFz_find failed: %r %rz_find worked: %r %r)r   r   r   rq   bisectr   r   
IndexErrorloggerdebugrc   r)   )r   r   r*   is   &&  r   rv   ZipResourceFinder._find   s    OO$%;;FRBFF*bff}djj$/AA11$7 LL.kk6H6HI  LL.kk6H6HI  s   ?"D DDc                r    V P                   P                  pVP                  ^\        V4      ,           R pW#3# )r   N)rc   r   r   r   )r   r   r)   r   s   &&  r   r     ZipResourceFinder.get_cache_info   s2    $$}}QV_-.|r   c                L    V P                   P                  VP                  4      # r/   )rc   get_datar   ry   s   &&r   rL   ZipResourceFinder.get_bytes   s    {{##HMM22r   c                L    \         P                  ! V P                  V4      4      # r/   )ioBytesIOrL   ry   s   &&r   rC   ZipResourceFinder.get_stream   s    zz$..233r   c                h    VP                   V P                  R  pV P                  V,          ^,          # r/   )r   r   r   r   s   && r   rO   ZipResourceFinder.get_size   s+    }}T__-.{{4 ##r   c                R   VP                   V P                  R  pV'       d4   VR,          \        P                  8w  d   V\        P                  ,          p\	        V4      p\        4       p\        P                  ! V P                  V4      pV\	        V P                  4      8  d   V P                  V,          P                  V4      '       g    V# V P                  V,          VR  pVP                  VP                  \        P                  ^4      ^ ,          4       V^,          pK  V# )Nr   )r   r   r   rq   r   r   r   r   r   addrn   )r   r   r   plenr*   r   ss   &&     r   rW   ZipResourceFinder.get_resources  s    }}T__-.DH&BFFND4yMM$**d+#djj/!::a=++D11  

1de$AJJqwwrvvq)!,-FAr   c                H   WP                   R  pV'       d4   VR,          \        P                  8w  d   V\        P                  ,          p\        P                  ! V P                  V4      p V P                  V,          P                  V4      pV#   \         d    Rp T# i ; i)NFr   )r   r   rq   r   r   r   r   )r   r   r   r*   s   &&  r   r|   ZipResourceFinder._is_directory  s    OO$%DH&BFFNDMM$**d+	ZZ]--d3F   	F	s   ,"B B! B!)r   r   r   )r0   r1   r2   r3   rR   r   rh   rv   r    rL   rC   rO   rW   r|   r4   r5   r6   r7   s   @@r   r   r      s<     	)$
34$	 	r   r   c                 *    V\         \        V 4      &   R # r/   )_finder_registrytype)rc   finder_makers   &&r   register_finderr   2  s    %1T&\"r   c                   V \         9   d   \         V ,          pV# V \        P                  9  d   \        V 4       \        P                  V ,          p\	        VRR4      pVf   \        R4      h\	        VRR4      p\        P                  \        V4      4      pVf   \        RV ,          4      hV! V4      pV\         V &   V# )z
Return a resource finder for a package.
:param package: The name of the package.
:return: A :class:`ResourceFinder` instance for the package.
__path__Nz8You cannot get a finder for a module, only for a packager^   zUnable to locate finder for %r)	_finder_cacher   modules
__import__rb   r   r   r-   r   )packager*   ra   r   rc   r   s   &     r   r   r   9  s     -w' M #++%wW%vz40<" $8 9 9t4'++DL9"#Cg#MNNf%!'gMr   	__dummy__c                2   Rp\         P                  ! V 4       \        P                  P	                  V 4      p\
        P	                  \        V4      4      pV'       d:   \        p\        P                  P                  V R4      Vn        W$n        V! V4      pV# )z
Return a resource finder for a path, which should represent a container.

:param path: The path.
:return: A :class:`ResourceFinder` instance for the path.
Nr`   )pkgutilget_importerr   path_importer_cacher-   r   r   _dummy_moduler   r   r   r_   r^   )r   r*   rc   r   ra   s   &    r   finder_for_pathr   U  ss     F$$((.F!!$v,/F'',,tR0"Mr   )-
__future__r   r   r   loggingr   r   r   typesr   r`   r   utilr   r   r   	getLoggerr0   r   rH   r	   objectr:   rA   rU   r[   r   r   zipimporterr   _frozen_importlib_external_fiImportError_frozen_importlibSourceFileLoader
FileFinderSourcelessFileLoaderAttributeErrorr   r   r   
ModuleTyper   r   r   r   r   r   <module>r      sN   (  	  	  
    8 8			8	$ 	)E )X6 *| *B/ /W(V W(tK K^ 	J, 
	(0 .<S))*'5S^^$1?S--.
2 2   [!12]  ('( 	^$ 		s0   %C< ).D <D
D 	D

D 	DD