+
     h  c            	      s2   ^ RI Ht ^ RIt^ RIHt ^ RIHtHtHtH	t	H
t
HtHtHtHtHt ]! R4      t]! R4      t]! R4      t]]	],          ]. ]	],          3,          3,          t]'       d3   ^RIHt  ! R	 R
]]]]3,          4      t ! R R]]]]]3,          4      tM]! R
RR.4      t]! R. RO4      t ! R R]],          4      t ! R R]]]
],          3,          ]]]]3,          4      t ! R R]	],          4      t ! R R]	],          4      tR R lt]	tR# )i    )annotationsN)
namedtuple)
TYPE_CHECKINGCallableGenericIterableIteratorMapping
NamedTupleSequenceTypeVarUnionKTRTCT)	Criterionc                  s,    ] tR t^t$ R]R&   R]R&   RtR# )RequirementInformationr   requirementz	CT | Noneparent N)__name__
__module____qualname____firstlineno____annotations____static_attributes__r       C/usr/lib/python3.14/site-packages/pip/_vendor/resolvelib/structs.pyr   r      s    r   r   c                  s:    ] tR t^t$ RtR]R&   R]R&   R]R&   RtR	# )
StatezResolution state in a round.zdict[KT, CT]mappingzdict[KT, Criterion[RT, CT]]criteriaz$list[RequirementInformation[RT, CT]]backtrack_causesr   N)r   r   r   r   __doc__r   r   r   r   r   r   r      s    *-->>r   r   r   r   c                  s    ] tR t^-tRtR R ltR R ltR R ltR R	 ltR
 R lt	R R lt
R R ltR R ltR R ltR R ltR R ltR R ltRtR# )DirectedGraphz&A graph structure with directed edges.c                   V ^8  d   QhRR/# )   returnNoner   format   "r   __annotate__DirectedGraph.__annotate__0   s     0 0$ 0r   c                	s@    \        4       V n        / V n        / V n        R # N)set	_vertices	_forwards
_backwardsself   &r   __init__ZDirectedGraph.__init__0   s    "%%,.-/r   c               r"   r#   r$   Iterator[KT]r   r&   r(   r   r)   r*   5        $ $, $r   c                	,    \        V P                  4      # r+   )iterr-   r0   r2   r   __iter__ZDirectedGraph.__iter__5       DNN##r   c               r"   r#   r$   Zintr   r&   r(   r   r)   r*   8   s     # # #r   c                	r7   r+   )lenr-   r0   r2   r   __len__ZDirectedGraph.__len__8   s    4>>""r   c                    V ^8  d   QhRRRR/# )r#   keyr   r$   boolr   r&   r(   r   r)   r*   ;   s     % % %t %r   c                	s    WP                   9   # r+   )r-   r1   r?      &&r   __contains__ZDirectedGraph.__contains__;   s    nn$$r   c               r"   )r#   r$   zDirectedGraph[KT]r   r&   r(   r   r)   r*   >   s      ' r   c                sf   \        V 4      ! 4       p\        V P                  4      Vn        V P                  P	                  4        UUu/ uF  w  r#V\        V4      bK  	  uppVn        V P
                  P	                  4        UUu/ uF  w  r#V\        V4      bK  	  uppVn        V# u uppi u uppi )z$Return a shallow copy of this graph.)typer,   r-   r.   itemsr/   )r1   Zotherkv   &   r   copyZDirectedGraph.copy>   s    T
dnn-151E1E1GH1G1c!f91GH26//2G2G2IJ2I$!As1vI2IJ IJs   B'B-c               r>   r#   r?   r   r$   r%   r   r&   r(   r   r)   r*   F   s     % %r %d %r   c                s    WP                   9   d   \        R4      hV P                   P                  V4       \        4       V P                  V&   \        4       V P
                  V&   R# )zAdd a new vertex to the graph.zvertex existsN)r-   Z
ValueErroraddr,   r.   r/   rA   rB   r   rK   ZDirectedGraph.addF   sI    .. _--3!es"ur   c               r>   rJ   r   r&   r(   r   r)   r*   N   s     * *" * *r   c                sL   V P                   P                  V4       V P                  P                  V4       F%  pV P                  V,          P                  V4       K'  	  V P                  P                  V4       F%  pV P                  V,          P                  V4       K'  	  R# )zCRemove a vertex from the graph, disconnecting all edges from/to it.N)r-   remover.   Zpopr/   )r1   r?   fts   &&  r   rL   ZDirectedGraph.removeN   st    c"##C(AOOA%%c* )$$S)ANN1$$S) *r   c               $    V ^8  d   QhRRRRRR/# )r#   rM   r   rN   r$   r@   r   r&   r(   r   r)   r*   V   s&     B B2 B" B Br   c                	sf    WP                   V,          9   ;'       d    W P                  V,          9   # r+   )r/   r.   r1   rM   rN      &&&r   	connectedZDirectedGraph.connectedV   s(    OOA&&AA1q0A+AAr   c               rO   )r#   rM   r   rN   r$   r%   r   r&   r(   r   r)   r*   Y   s!     " " " "t "r   c                s    W P                   9  d   \        V4      hV P                  V,          P                  V4       V P                  V,          P                  V4       R# )zWConnect two existing vertices.

Nothing happens if the vertices are already connected.
N)r-   KeyErrorr.   rK   r/   rP   rQ   r   connectZDirectedGraph.connectY   sF    
 NN"1+qa q!r   c               r"   )r#   r$   zIterator[tuple[KT, KT]]r   r&   r(   r   r)   r*   c   s      3 r   c              #  	sp   "   V P                   P                  4        F  w  rV F  pW3x  K
  	  K  	  R # 5ir+   )r.   rE   )r1   rM   ZchildrenrN   rH   r   
iter_edgesZDirectedGraph.iter_edgesc   s/     >>//1KAd
  2s   46c               r>   r#   r?   r   r$   r5   r   r&   r(   r   r)   r*   h   s     ) ) ) )r   c                	:    \        V P                  V,          4      # r+   )r8   r.   rA   rB   r   iter_childrenZDirectedGraph.iter_childrenh   s    DNN3'((r   c               r>   rV   r   r&   r(   r   r)   r*   k   s     * * *| *r   c                	rW   r+   )r8   r/   rA   rB   r   iter_parentsZDirectedGraph.iter_parentsk   s    DOOC())r   )r/   r.   r-   N)r   r   r   r   r    r3   r9   r=   rC   rI   rK   rL   rR   rT   rU   rX   rY   r   r   r   r   r!   r!   -   sG    00
$#%%*B"
)* *r   r!   c                  sn    ] tR t^otRR R lltR R ltR R ltR R	 ltR
 R ltR R lt	R R lt
RtR# )IteratorMappingNc               s(    V ^8  d   QhRRRRRRRR/# )	r#   r   zMapping[KT, RT]accessorzCallable[[RT], Iterable[CT]]appendsz Mapping[KT, Iterable[CT]] | Noner$   r%   r   r&   r(   r   r)   IteratorMapping.__annotate__p   s8     A A A /A 2	A
 
Ar   c                	s@    Wn         W n        T;'       g    / V n        R # r+   )_mapping	_accessor_appends)r1   r   r[   r\   s   &&&&r   r3   ZIteratorMapping.__init__p   s      !3:==br   c               r"   r#   r$   Zstrr   r&   r(   r   r)   r]   z   s     
 
# 
r   c                	sd    R P                  V P                  V P                  V P                  4      # )z!IteratorMapping({!r}, {!r}, {!r}))r'   r^   r_   r`   r0   r2   r   __repr__ZIteratorMapping.__repr__z   s*    299MMNNMM
 	
r   c               r"   r#   r$   r@   r   r&   r(   r   r)   r]      s     4 4$ 4r   c                	sT    \        V P                  ;'       g    V P                  4      # r+   )r@   r^   r`   r0   r2   r   __bool__ZIteratorMapping.__bool__   s    DMM22T]]33r   c               r>   )r#   r?   Zobjectr$   r@   r   r&   r(   r   r)   r]      s     < < <4 <r   c                	sJ    WP                   9   ;'       g    WP                  9   # r+   )r^   r`   rA   rB   r   rC   ZIteratorMapping.__contains__   s    mm#;;smm';;r   c               r>   )r#   rF   r   r$   zIterator[CT]r   r&   r(   r   r)   r]      s     L LR LL Lr   c                	s    V P                   V,          p\        P
                  ! T P                  T4      T P                  P                  TR4      4      #   \         d     \        T P                  T,          4      u # i ; i)Nr   )r^   rS   r8   r`   	itertoolschainr_   Zget)r1   rF   rG   s   && r   __getitem__ZIteratorMapping.__getitem__   sg    	*a A t~~a0$--2C2CAr2JKK  	*a())	*s   A 'A?>A?c               r"   r4   r   r&   r(   r   r)   r]      s     4 4, 4r   c                	sr   a  V 3R  lS P                    4       p\        P                  ! S P                  V4      # )c              3  sL   <"   T F  qSP                   9  g   K  Vx  K  	  R # 5ir+   r^   Z.0rF   r1      & r   	<genexpr>Z+IteratorMapping.__iter__.<locals>.<genexpr>   s     C=aT]],B=   $
$)r`   re   rf   r^   r1   Zmore   f r   r9   ZIteratorMapping.__iter__   s&    C4==Ct}}d33r   c               r"   r;   r   r&   r(   r   r)   r]      s     ) ) )r   c                	sz   a  \        V 3R  lS P                   4       4      p\        S P                  4      V,           # )c              3  sL   <"   T F  qSP                   9  g   K  ^x  K  	  R# 5i)i   Nrh   ri   rj   r   rk   Z*IteratorMapping.__len__.<locals>.<genexpr>   s     Fm/E11mrl   )Zsumr`   r<   r^   rm   rn   r   r=   ZIteratorMapping.__len__   s+    FdmmFF4==!D((r   )r_   r`   r^   r+   )r   r   r   r   r3   rb   rd   rC   rg   r9   r=   r   r   r   r   rZ   rZ   o   s,    A
4<L4) )r   rZ   c                  sJ    ] tR t^tRtR R ltR R ltR R ltR R	 ltR
t	R# )_FactoryIterableViewa&  Wrap an iterator factory returned by `find_matches()`.

Calling `iter()` on this class would invoke the underlying iterator
factory, making it a "collection with ordering" that can be iterated
through multiple times, but lacks random access methods presented in
built-in Python sequence types.
c               r>   )r#   factoryzCallable[[], Iterable[RT]]r$   r%   r   r&   r(   r   r)   !_FactoryIterableView.__annotate__   s     3 3 : 3t 3r   c                	s     Wn         R V n        R # r+   _factory	_iterable)r1   rp   rB   r   r3   Z_FactoryIterableView.__init__   s    .2r   c               r"   ra   r   r&   r(   r   r)   rq      s     6 6# 6r   c                	sJ    \        V 4      P                   R \        V 4       R2# Z(Z))rD   r   listr0   r2   r   rb   Z_FactoryIterableView.__repr__   s$    t*%%&aT
|155r   c               r"   rc   r   r&   r(   r   r)   rq      s      $ r   c                	sT     \        \        V 4      4       R#   \         d     R # i ; i)FT)Znextr8   ZStopIterationr0   r2   r   rd   Z_FactoryIterableView.__bool__   s,    	d   		s    ''c               r"   r#   r$   zIterator[RT]r   r&   r(   r   r)   rq      s      , r   c                	s    V P                   f   V P                  4       MV P                   p\        P                  ! V4      w  V n         pV# r+   )rt   rs   re   Ztee)r1   ZiterableZcurrents   &  r   r9   Z_FactoryIterableView.__iter__   s6    &*nn&<4==?$.."+--"9r   rr   N
r   r   r   r   r    r3   rb   rd   r9   r   r   r   r   ro   ro      s     36 r   ro   c                  sJ    ] tR t^tRtR R ltR R ltR R ltR R	 ltR
t	R# )_SequenceIterableViewzWrap an iterable returned by find_matches().

This is essentially just a proxy to the underlying sequence that provides
the same interface as `_FactoryIterableView`.
c               r"   )r#   sequencezSequence[RT]r   r&   r(   r   r)   "_SequenceIterableView.__annotate__   s     " " "r   c                	s    Wn         R # r+   	_sequence)r1   rz   rB   r   r3   Z_SequenceIterableView.__init__   s    !r   c               r"   ra   r   r&   r(   r   r)   r{      s     : :# :r   c                	sL    \        V 4      P                   R V P                   R2# ru   )rD   r   r}   r0   r2   r   rb   Z_SequenceIterableView.__repr__   s%    t*%%&a'7q99r   c               r"   rc   r   r&   r(   r   r)   r{      s     $ $$ $r   c                	r7   r+   )r@   r}   r0   r2   r   rd   Z_SequenceIterableView.__bool__   r:   r   c               r"   rw   r   r&   r(   r   r)   r{      r6   r   c                	r7   r+   )r8   r}   r0   r2   r   r9   Z_SequenceIterableView.__iter__   r:   r   r|   Nrx   r   r   r   ry   ry      s     ":$$ $r   ry   c               r>   )r#   matcheszMatches[CT]r$   zIterable[CT]r   r&   r(   r   r)   r)      s     * *[ *\ *r   c                s    \        V 4      '       d   \        V 4      # \        V \        4      '       g   \	        V 4      p \        V 4      # )zCBuild an iterable view from the value returned by `find_matches()`.)Zcallablero   Z
isinstancer	   rv   ry   )r~   r2   r   build_iter_viewr      s9    #G,,gx((w- ))r   )r   r   r   )Z
__future__r    re   Zcollectionsr   Ztypingr   r   r   r   r   r   r   r	   r
   r   r   r   r   ZMatchesZresolvers.criterionr   r   r   r!   rZ   ro   ry   r   ZIterableViewr   r   r   <module>r      s   "  "   T]T]T]
hr8B<'788
9.WRV_ ?
GBBJ/ ? ( =("; w KLE?*GBK ?*D%)gb(2,./R1D %)P8B< :$HRL $(* r   