+
    iS  c                   s&   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHtHtHtH	t	H
t
HtHt ^ RIHtHt ^ RIHt ]]]P"                  ],          3,          t. ROt ! R R] P(                  R	7      t ! R
 R]4      t] ! R R]4      4       t ! R R]4      tR# )i    N)AnyBinaryIOIterableIteratorNoReturnTextOptional)runtime_checkableProtocol)UnionResourceReaderTraversableTraversableResourcesc                   s   a  ] tR t^t o Rt]P                  V 3R lR l4       t]P                  V 3R lR l4       t]P                  V 3R lR l4       t	]P                  V 3R lR	 l4       t
R
tV tR# )r
   zDAbstract base class for loaders to provide resource reading support.c                &   < V ^8  d   QhRS[ RS[/#    resourcereturn)r   r   Zformat__classdict__   "0/usr/lib64/python3.14/importlib/resources/abc.py__annotate__ResourceReader.__annotate__   s     	  	 d 	 x 	     c                    \         h)zReturn an opened, file-like object for binary reading.

The 'resource' argument is expected to represent only a file name.
If the resource cannot be found, FileNotFoundError is raised.
ZFileNotFoundErrorselfr      &&r   open_resourceZResourceReader.open_resource   s
      r   c                s&   < V ^8  d   QhRS[ RS[ /# r   )r   r   r   r   r   r       s     
  
 d 
 t 
 r   c                r   )zReturn the file system path to the specified resource.

The 'resource' argument is expected to represent only a file name.
If the resource does not exist on the file system, raise
FileNotFoundError.
r   r   r   r   resource_pathZResourceReader.resource_path   s
      r   c                r   r   pathr   )r   boolr   r   r   r   r   -   s            r   c                r   )zZReturn True if the named 'path' is a resource.

Files are resources, directories are not.
r   r   r!   r   r   is_resourceZResourceReader.is_resource,   s
      r   c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r   strr   r   r   r   r   5   s        (3-  r   c                r   )z+Return an iterable of entries in `package`.r   r      &r   contentsZResourceReader.contents4   s
      r    N)__name__
__module____qualname____firstlineno____doc__abcabstractmethodr   r   r$   r*   __static_attributes____classdictcell__r      @r   r
   r
      sn     N	  	  	
  
  	    	   r   )Z	metaclassc                   s    ] tR t^:tRtR# )TraversalErrorr+   N)r,   r-   r.   r/   r3   r+   r   r   r7   r7   :   s    r   r7   c                   sb  a  ] tR t^>t o Rt]P                  V 3R lR l4       tV 3R lR ltRV 3R lR llt	]P                  V 3R	 lR
 l4       t
]P                  V 3R lR l4       tV 3R lR ltV 3R lR lt]P                  RR l4       t]]P                  V 3R lR l4       4       tRtV tR# )r   z
An object with a subset of pathlib.Path methods suitable for
traversing directories and opening files.

Any exceptions that occur when accessing the backing resource
may propagate unaltered.
c                s.   < V ^8  d   QhRS[ R,          /# r   r   r   )r   r   r   r   r   Traversable.__annotate__I   s      -0 r   c                    R# )z#
Yield Traversable objects in self
Nr+   r(   r)   r   iterdirZTraversable.iterdirH       r   c                    < V ^8  d   QhRS[ /# r&   )Zbytesr   r   r   r   r9   N   s      E r   c                s    V P                  R4      ;_uu_ 4       pVP                  4       uuRRR4       #   + '       g   i     R# ; i)z 
Read contents of self as bytes
rbNopenZread)r   strm   & r   
read_bytesZTraversable.read_bytesN   s(     YYt__99; ___s	   5A	Nc                s6   < V ^8  d   QhRS[ S[,          RS[/# )r   encodingr   )r   r'   r   r   r   r   r9   U   s      (3- 3 r   c                s    V P                  VR7      ;_uu_ 4       pVP                  4       uuRRR4       #   + '       g   i     R# ; i)z
Read contents of self as text
)rD   Nr?   )r   rD   rA   s   && r   	read_textZTraversable.read_textU   s/     YYY))T99; *)))s	   6A	c                r=   r&   r"   r   r   r   r   r9   ]   s       r   c                r:   )z$
Return True if self is a directory
Nr+   r(   r)   r   is_dirZTraversable.is_dir\   r<   r   c                r=   r&   rF   r   r   r   r   r9   c   s       r   c                r:   )z
Return True if self is a file
Nr+   r(   r)   r   is_fileZTraversable.is_fileb   r<   r   c                $   < V ^8  d   QhRS[ RR/# )r   descendantsr   r   StrPathr   r   r   r   r9   h   s     & &W & &r   c                s`  a V'       g   V # \         P                  P                  R \        \        P
                  V4       4       4      p\        V4      oV3R lV P                  4        4       p \        V4      pTP                  ! T!  #   \         d    \        RS\        T4      4      hi ; i)z
Return Traversable resolved with any descendants applied.

Each descendant should be a path segment relative to self
and each may contain multiple levels separated by
``posixpath.sep`` (``/``).
c              3   8   "   T F  qP                   x  K  	  R # 5iN)Zparts).0r!   rB   r   	<genexpr>'Traversable.joinpath.<locals>.<genexpr>r   s      .
#J4JJ#J   c              3   sL   <"   T F  qP                   S8X  g   K  Vx  K  	  R # 5irN   name)rO   Ztraversabletargets   & r   rP   rQ   v   s"      
+9K=M=MQW=WKK>s   $
$z"Target not found during traversal.)	itertoolsZchainZfrom_iterableZmappathlibZPurePosixPathZnextr;   ZStopIterationr7   Zlistjoinpath)r   rJ   ZnamesZmatchesZmatchrU   s   &*   @r   rX   ZTraversable.joinpathh   s     K-- .
#&w'<'<k#J.
 
 e
+/<<>
	ME
 ~~u%%	  	 4fd5k 	s   0B "B-c                rI   )r   childr   r   rK   r   r   r   r   r9      s     $ $ $] $r   c                s$    V P                  V4      # )z"
Return Traversable child in self
)rX   )r   rY   r   r   __truediv__ZTraversable.__truediv__   s     }}U##r   c                r:   )z
mode may be 'r' or 'rb' to open as text or binary. Return a handle
suitable for reading (same as pathlib.Path.open).

When opening as text, accepts encoding parameters such as those
accepted by io.TextIOWrapper.
Nr+   )r   ZmodeZargsZkwargss   &&*,r   r@   ZTraversable.open   r<   r   c                r=   r&   )r'   r   r   r   r   r9      s      c r   c                r:   )z=
The base name of this object without any parent references.
Nr+   r(   r)   r   rT   ZTraversable.name   r<   r   r+   rN   )Zr)r,   r-   r.   r/   r0   r1   r2   r;   rC   rE   rG   rH   rX   rZ   r@   ZpropertyrT   r3   r4   r5   r6   r   r   r   >   s      	 
   	 
 	 
& &2$ $ 	    r   c                   s   a  ] tR t^t o Rt]P                  V 3R lR l4       tV 3R lR ltV 3R lR lt	V 3R lR	 lt
V 3R
 lR ltRtV tR# )r   z=
The required interface for providing traversable
resources.
c                s   < V ^8  d   QhRR/# r8   r+   r   r   r   r   !TraversableResources.__annotate__   s     B B} Br   c                r:   )z3Return a Traversable object for the loaded package.Nr+   r(   r)   r   filesZTraversableResources.files   r<   r   c                s:   < V ^8  d   QhRS[ RS[P                  /# r   )rL   ioZBufferedReaderr   r   r   r   r[      s!     : :g :"2C2C :r   c                s^    V P                  4       P                  V4      P                  R 4      # )r>   )r\   rX   r@   r   r   r   r   Z"TraversableResources.open_resource   s$    zz|$$X.33D99r   c                r   r   )r    r   r   r   r   r   r[      s     * *c *h *r   c                s    \        V4      hrN   r   r   r   r   r   Z"TraversableResources.resource_path   s    ))r   c                r   r    )rL   r"   r   r   r   r   r[      s     5 5 5D 5r   c                s\    V P                  4       P                  V4      P                  4       # rN   )r\   rX   rH   r#   r   r   r$   Z TraversableResources.is_resource   s"    zz|$$T*2244r   c                r%   r&   )r   r'   r   r   r   r   r[      s     > >(3- >r   c                sL    R  V P                  4       P                  4        4       # )c              3   rM   rN   rS   )rO   ZitemrB   r   rP   Z0TraversableResources.contents.<locals>.<genexpr>   s     =&<d		&<rR   )r\   r;   r(   r)   r   r*   ZTraversableResources.contents   s    =djjl&:&:&<==r   r+   N)r,   r-   r.   r/   r0   r1   r2   r\   r   r   r$   r*   r3   r4   r5   r6   r   r   r      sN     
 	B B: :* *5 5> >r   )r
   r   r   )r1   r]   rV   ZosrW   Ztypingr    r   r   r   r   r   r   r   r   r	   r'   ZPathLikerL   Z__all__ZABCMetar
   Z	Exceptionr7   r   r   r+   r   r   <module>r^      s    
 	  	  N N N .  R[[%%
&
C' s{{ ' T	Y 	 W( W Wt>> >r   