+
    {ir	                        ^ RI Ht ^ RIt^ RIHt ^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHtHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIHt ^ RIHt ]'       d   ^ RIHt R R lt]P6                  ]! 4       R3R R lltR# )    )annotationsN)TYPE_CHECKING)
IndexedSet)EXPLICIT_MARKER)context)PrefixSetupUnlinkLinkTransaction)
PrefixData)diff_for_unlink_link_precs)yield_lines)!get_package_records_from_explicit)	MatchSpec)Pathc                    V ^8  d   QhRRRR/# )   pathr   returnset[str] )formats   "0lib/python3.14/site-packages/conda_self/reset.py__annotate__r      s     
 
d 
x 
    c                    \        V 4       Uu0 uF$  q\        8w  g   K  \        V4      P                  kK&  	  up# u upi )us  Extract package names from a CEP-23 ``@EXPLICIT`` file without fetching.

Parses each URL line with :class:`~conda.models.match_spec.MatchSpec`,
which reads ``name``/``version``/``build`` from the tarball filename and
strips any ``#md5=…``/``#sha256=…`` checksum fragment as a comment.  No
network access, unlike :func:`conda.misc.get_package_records_from_explicit`.
)r   r   r   name)r   lines   & r   names_from_explicitr      s=     *5T):):o>U	$):  s   ;;c               $    V ^8  d   QhRRRRRR/# )r   prefixstruninstallable_packagesr   snapshotzPath | Noner   )r   s   "r   r   r   !   s&     & &&$& &r   c           	     @  a V'       dT   \        \        V4      4      p\        \        V4      4      p\	        W4      w  rVV'       g   V'       g   \        R 4       R# MY\        \        V 4      P                  4       R R7      p\        ;QJ d    . V3R lV 4       F  NK  	  5M! V3R lV 4       4      pRp\        V VVRRRR7      p\        V4      p	\        P                  '       g'   \        P                  '       g   V	P                  4        V	P!                  4        R# )zJNothing to do. Packages in target environment match the selected snapshot.Nc                    V P                   # Nr   )xs   &r   <lambda>reset.<locals>.<lambda>5   s    AFFr   )keyc              3  L   <"   T F  qP                   S9  g   K  Vx  K  	  R # 5ir%   r&   ).0pkgr!   s   & r   	<genexpr>reset.<locals>.<genexpr>6   s       #
$C8N(NCC9s   $
$)target_prefixunlink_precs
link_precsremove_specsupdate_specsneutered_specsr   )listr   r   r   r   printsortedr
   iter_recordstupler   r	   r   jsonquietprint_transaction_summaryexecute)
r   r!   r"   snapshot_contentpackages_in_reset_envpackages_to_removepackages_to_install	installedstptxns
   &f&       r   resetrF   !   s    
 H 56 *-.>?!
 3M3
/ "*=N :f-::<BRS	"U #
$#
UU #
$#
 
 !
'&C  
$C<<<%%'KKMr   )
__future__r   systypingr   boltons.setutilsr   conda.base.constantsr   conda.base.contextr   conda.core.linkr   r	   conda.core.prefix_datar
   conda.core.solver   conda.gateways.disk.readr   
conda.miscr   conda.models.match_specr   pathlibr   r   r   setrF   r   r   r   <module>rU      sO    " 
   ' 0 & > - 7 0 8 -
 **'*u & &r   