+
    %i'                       ^ RI Ht ^ RIt^ RIHtHt ^RIHt ^RIH	t	 . ROt
R R lt ! R R	]4      t ! R R]4      t ! R R
]4      t ! R R4      t ! R R4      tR R lt]P&                  ! R4      tR R ltR R ltR# )    )annotationsN)MappingSequence)_ErrorCollector)RequirementCyclicDependencyGroupDependencyGroupIncludeDependencyGroupResolverDuplicateGroupNamesInvalidDependencyGroupObjectc                   V ^8  d   QhRR/# )   returnz	list[str] )formats   "Y/var/www/html/photoedit/myenv/lib/python3.14/site-packages/packaging/dependency_groups.py__annotate__r      s           c                     \         # N)__all__r   r   r   __dir__r      s    Nr   c                      ] tR t^tRtRtR# )r   zU
The same dependency groups were defined twice, with different non-normalized names.
r   N__name__
__module____qualname____firstlineno____doc____static_attributes__r   r   r   r   r      s    r   c                  2   a  ] tR t^"tRtR V 3R lltRtV ;t# )r   z-
The dependency group includes form a cycle.
c               (    V ^8  d   QhRRRRRRRR/# )r   requested_groupstrgroupinclude_groupr   Noner   )r   s   "r   r   "CyclicDependencyGroup.__annotate__'   s)     
 
 
C 
 
PT 
r   c                	   < Wn         W n        W0n        W28X  d   V R 2pMV RV RV RV 2p\        SV `  RV RV 24       R# )z includes itselfz -> , z0Cyclic dependency group include while resolving z: N)r#   r%   r&   super__init__)selfr#   r%   r&   reason	__class__s   &&&& r   r,   CyclicDependencyGroup.__init__'   sd    .
*!w./F%d5'E7$}oNF>r&+	
r   )r%   r&   r#   )r   r   r   r   r   r,   r    __classcell__)r/   s   @r   r   r   "   s    
 
r   c                      ] tR t^9tRtRtR# )r   zY
A member of a dependency group was identified as a dict, but was not in a valid
format.
r   Nr   r   r   r   r   r   9   s    r   c                  2    ] tR t^EtRtR R ltR R ltRtR# )r	   c                    V ^8  d   QhRRRR/# )r   r&   r$   r   r'   r   )r   s   "r   r   #DependencyGroupInclude.__annotate__H   s     + +c +d +r   c                    Wn         R# )zp
Initialize a DependencyGroupInclude.

:param include_group: The name of the group referred to by this include.
Nr&   )r-   r&   s   &&r   r,   DependencyGroupInclude.__init__H   s
     +r   c                   V ^8  d   QhRR/# )r   r   r$   r   )r   s   "r   r   r5   P   s     D D# Dr   c                	P    V P                   P                   R V P                  : R2# )())r/   r   r&   )r-   s   &r   __repr__DependencyGroupInclude.__repr__P   s'    ..))*!D,>,>+ACCr   r7   N)r   r   r   r   	__slots__r,   r=   r    r   r   r   r	   r	   E   s    "I+D Dr   c                  V    ] tR t^TtRtR R ltR R ltR R ltR R	 ltR
 R lt	Rt
R# )r
   a@  
A resolver for Dependency Group data.

This class handles caching, name normalization, cycle detection, and other
parsing requirements. There are only two public methods for exploring the data:
``lookup()`` and ``resolve()``.

:param dependency_groups: A mapping, as provided via pyproject
    ``[dependency-groups]``.
c                    V ^8  d   QhRRRR/# )r   dependency_groups/Mapping[str, Sequence[str | Mapping[str, str]]]r   r'   r   )r   s   "r   r   $DependencyGroupResolver.__annotate__`   s"     @ @J@ 
@r   c                	    \        4       p\        W4      V n        / V n        / V n        / V n        VP                  R 4       R# )z$[dependency-groups] data was invalidN)r   _normalize_group_namesrB   _parsed_groups_include_graph_ancestors_resolve_cachefinalize)r-   rB   errorss   && r   r,    DependencyGroupResolver.__init__`   sH     !"!78I!R
  	 EG%BD>?r   c                    V ^8  d   QhRRRR/# )r   r%   r$   r   0tuple[Requirement | DependencyGroupInclude, ...]r   )r   s   "r   r   rD   s   s     4 4C 4$T 4r   c                    \        V4      p\        4       P                  RV: R24      ;_uu_ 4       pV P                  W4      uuRRR4       #   + '       g   i     R# ; i)z
Lookup a group name, returning the parsed dependency data for that group.
This will not resolve includes.

:param group: the name of the group to lookup
[dependency-groups] data for  was malformedN)_normalize_namer   on_exit_parse_groupr-   r%   rK   s   && r   lookupDependencyGroupResolver.lookups   sV      &&&+E9NC
 
$$U3
 
 
 
s   AA	c                    V ^8  d   QhRRRR/# )r   r%   r$   r   tuple[Requirement, ...]r   )r   s   "r   r   rD      s     7 7S 7%< 7r   c                    \        V4      p\        4       P                  RV: R24      ;_uu_ 4       pV P                  WV4      uuRRR4       #   + '       g   i     R# ; i)zg
Resolve a dependency group to a list of requirements.

:param group: the name of the group to resolve
rP   rQ   N)rR   r   rS   _resolverU   s   && r   resolveDependencyGroupResolver.resolve   sV      &&&+E9NC
 
==v6
 
 
 
s   AA 	c               (    V ^8  d   QhRRRRRRRR/# )r   r%   r$   r#   rK   r   r   rY   r   )r   s   "r   r   rD      s,     8* 8*8*+.8*8G8*	 8*r   c                   WP                   9   d   V P                   V,          # V P                  W4      p. pV F  p\        V\        4      '       d   VP	                  V4       K,  \        V\
        4      '       d   \        VP                  4      pWpP                  P                  VR4      9   d(   VP                  \        W!VP                  4      4       K  . V P                  P                  VR4      OVN5V P                  V&   VP                  V P                  WrV4      4       K  \        RV 24      h	  VP                  '       d   R# \!        V4      V P                   V&   V P                   V,          # )a\  
This is a helper for cached resolution to strings. It preserves the name of the
group which the user initially requested in order to present a clearer error in
the event that a cycle is detected.

:param group: The normalized name of the group to resolve.
:param requested_group: The group which was used in the original, user-facing
    request.
z+Invalid dependency group item after parse: r   )rI   rT   
isinstancer   appendr	   rR   r&   rH   geterrorr   extendr[   NotImplementedErrorrK   tuple)r-   r%   r#   rK   parsedresolved_groupitemr&   s   &&&&    r   r[    DependencyGroupResolver._resolve   sY    '''&&u--""51D$,,%%d+D"899 /0B0B C !$A$A$E$EeR$PPLL-+D4F4FD66::5"EDDD11-@ #))mfM *A$H 5 B ===I%*>%:E"""5))r   c               $    V ^8  d   QhRRRRRR/# )r   r%   r$   rK   r   r   rN   r   )r   s   "r   r   rD      s$     /* /*/*"1/*	9/*r   c                	   WP                   9   d   V P                   V,          # WP                  9  d!   VP                  \        R V R24      4       R# V P                  V,          p\	        V\
        4      '       d"   VP                  \        RV: R24      4       R# \	        V\        4      '       g"   VP                  \        RV: R24      4       R# . pV F  p\	        V\
        4      '       d   VP                  \        V4      4       K5  \	        V\        4      '       de   \        VP                  4       4      R	8w  d!   VP                  \        RV: 24      4       K  VR,          pVP                  \        VR7      4       K  VP                  \        RV: 24      4       K  	  \        V4      V P                   V&   V P                   V,          # )
zDependency group 'z' not foundzDependency group z' contained a string rather than a list.z is not a sequence type.include-groupzInvalid dependency group item: r7   r   )rm   )rG   rB   rc   LookupErrorr`   r$   	TypeErrorr   ra   r   r   rf   keysr   r	   )r-   r%   rK   	raw_groupelementsri   r&   s   &&&    r   rT   $DependencyGroupResolver._parse_group   s    '''&&u--...LL'9%%LMNI**51	i%%LL'y0WX
 I)X..LL-eY6NOP I?AD$$$ D 12D'**%);;LL4=dXF %)$9MOO$:$WXY)H'QRS# & &+8_E"""5))r   )rH   rG   rI   rB   N)r   r   r   r   r   r,   rV   r\   r[   rT   r    r   r   r   r
   r
   T   s'    	@&478*t/* /*r   c               $    V ^8  d   QhRRRRRR/# )r   rB   rC   groupsr$   r   ztuple[str, ...]r   )r   s   "r   r   r      s)     N NFNTWNNr   c               ~   a \        V 4      o\        ;QJ d    . V3R lV 4       F  NK  	  5# ! V3R lV 4       4      # )z
Resolve a dependency group to a tuple of requirements, as strings.

:param dependency_groups: the parsed contents of the ``[dependency-groups]`` table
    from ``pyproject.toml``
:param groups: the name of the group(s) to resolve
c              3  j   <"   T F(  pSP                  V4       F  p\        V4      x  K  	  K*  	  R # 5ir   )r\   r$   ).0r%   rresolvers   &  r   	<genexpr>,resolve_dependency_groups.<locals>.<genexpr>
  s+     MVEX5E5Ee5LQ5LVs   03)r
   rf   )rB   ru   rz   s   "*@r   resolve_dependency_groupsr}      s2     ''89H5MVM5M5MVMMMr   z[-_.]+c                    V ^8  d   QhRRRR/# )r   namer$   r   r   )r   s   "r   r   r     s     5 5# 5# 5r   c                J    \         P                  R V 4      P                  4       # )-)_NORMALIZE_PATTERNsublower)r   s   &r   rR   rR     s    !!#t,2244r   c               $    V ^8  d   QhRRRRRR/# )r   rB   rC   rK   r   r   z,dict[str, Sequence[str | Mapping[str, str]]]r   )r   s   "r   r   r     s&      F 2r   c                V   / p/ pV P                  4        F5  w  rE\        V4      pVP                  V. 4      P                  V4       WSV&   K7  	  VP                  4        FG  w  rx\	        V4      ^8  g   K  VP                  \        RV RRP                  V4       R24      4       KI  	  V# )   z"Duplicate dependency group names: z (r*   r<   )itemsrR   
setdefaultra   lenrc   r   join)	rB   rK   original_namesnormalized_groups
group_namevaluenormed_group_namenormed_namenamess	   &&       r   rF   rF     s     ,.NFH.446
+J7!!"3R8??
K/4+, 7
 -224u:>LL#8"m2dii&6%7q: 5 r   )r   r	   r
   r   r   r}   )
__future__r   recollections.abcr   r   rK   r   requirementsr   r   r   
ValueErrorr   r   r   r	   r
   r}   compiler   rR   rF   r   r   r   <module>r      s~    " 	 - # %* 
J 
.: D Dc* c*VN& ZZ	* 5r   