
    %d                         d dl Z d dlmZ 	 d dlmZ n# e$ r	 d dlmZ Y nw xY wd dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZmZ d	d
lmZ d Zd Zd ZdS )    Nbasename)
IndexedSet)UpdateModifier)context)NULL)UnsatisfiableError)Channelprioritize_channels   )Environmentc                 T   d |j         D             }d|j         vr|                    t          j                    t          |          }t	          d |D                       }t	          d |D                       }	t          j                                        }
 |
| ||	|          }|S )Nc                     g | ]
}|d k    |S )
nodefaults ).0chans     :lib/python3.11/site-packages/conda_env/installers/conda.py
<listcomp>z_solve.<locals>.<listcomp>   s"    JJJTT\5IJDJJJ    r   c              3   4   K   | ]}t          |          V  d S N)r
   r   urls     r   	<genexpr>z_solve.<locals>.<genexpr>   s(      HH3'#,,HHHHHHr   c              3   4   K   | ]}t          |          V  d S r   r   r   s     r   r   z_solve.<locals>.<genexpr>   s(      HH3#HHHHHHr   )specs_to_add)channelsextendr   r   r   plugin_managerget_cached_solver_backend)prefixspecsargsenv_kwargschannel_urls_channel_priority_mapr   subdirssolver_backendsolvers               r   _solver-      s     KJS\JJJL3<' .G,---/==HH2GHHHHHHHH2GHHHHHG+EEGGN^FHgEJJJFMr   c                     t          t          j                    | ||g|R i |}|                                }t	          |j        d |D             |j                  }|S )Nc                 ,    g | ]}t          |          S r   )str)r   ps     r   r   zdry_run.<locals>.<listcomp>+   s    +++c!ff+++r   )namedependenciesr   )r-   tempfilemkdtempsolve_final_stater   r2   r   )r#   r$   r%   r&   r'   r,   pkgs
solved_envs           r   dry_runr9   &   sv    H$&&tSG1GGGGGF##%%DX++d+++  J
 r   c                    t          | |||g|R i |}	 |                    t          |dd          t          j                  }nB# t
          t          f$ r. |                    t          |dd          t                    }Y nw xY w|j        rd S |	                                 |
                                 |                                d         S )NpruneF)r;   update_modifierr   )r-   solve_for_transactiongetattrr   FREEZE_INSTALLEDr	   
SystemExitr   nothing_to_dodownload_and_extractexecute_make_legacy_action_groups)r"   r#   r$   r%   r&   r'   r,   unlink_link_transactions           r   installrF   1   s   FE4;q;;;F;;FG"(">">$//A` #? #b #b
+ G G G"(">">$// #? #G #GG , t00222##%%%"==??BBs   0A <BB)r4   os.pathr   boltons.setutilsr   ImportErrorconda._vendor.boltons.setutilsconda.base.constantsr   conda.base.contextr   conda.common.constantsr   conda.exceptionsr	   conda.models.channelr
   r   r%   r   r-   r9   rF   r   r   r   <module>rP      s         :+++++++ : : :99999999: 0 / / / / / & & & & & & ' ' ' ' ' ' / / / / / / = = = = = = = =        "  C C C C Cs    !!