ó
¼S]c           @` sÒ  d  d l  m Z m Z m Z m Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l	 Z	 d  d l
 Z
 d  d l Z d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l m Z e j j d d ƒ Z d e f d	 „  ƒ  YZ d
 e f d „  ƒ  YZ d „  Z d „  Z d „  Z e d d d d „ Z d d „ Z  d d „ Z! d „  Z" d a# d „  Z$ d dI d d d „ Z% d dJ d d d „ Z& d d d d „ Z' d „  Z( d „  Z) dK d d „ Z* d „  Z+ d „  Z, d „  Z- d „  Z. d „  Z/ d „  Z0 d  „  Z1 d! „  Z2 d" „  Z3 d# „  Z4 e j5 d$ d% d& d' d( d) g ƒ Z6 e
 j7 d* e
 j8 ƒ Z9 e
 j7 d+ e
 j8 ƒ Z: d, „  Z; dL Z< d0 „  Z= d1 „  Z> d2 „  Z? d a@ d aA e= ƒ  d3 „ ZB dM ZC eD eE eC ƒ ƒ eC k sÊtF ‚ dN ZG eD eE eG ƒ ƒ eG k sîtF ‚ d9 d: d; h ZH eD eE eI eG ƒ d< g g  eH D] ZJ d= eJ ^ qƒ ƒ ZK dO ZL eD eE eL ƒ ƒ eL k s[tF ‚ dP ZM eD eE eM ƒ ƒ eM k stF ‚ eN ƒ  ZO xz eL D]r ZP g  ZQ x- eG D]% ZR eR jS eP ƒ r¢eQ jT eR ƒ q¢q¢WeD eQ ƒ eO eP <eD eE eO eP ƒ ƒ eO eP k stF ‚ qWdA „  ZU eU ƒ  eO dB <eD eE eO dB ƒ ƒ eO dB k sAtF ‚ eG eO dC <dQ eL ZV eW eV ƒ eW eO jX ƒ  ƒ k sytF ‚ dD „  ZY eD eE eI eW eC eY ƒ  f ƒ ƒ ƒ ƒ ZZ dE „  Z[ dF „  Z\ dG „  Z] dH „  Z^ d S(R   i    (   t   absolute_importt   print_functiont   divisiont   unicode_literalsN(   t   streaming_popen(   t"   subdirectory_relative_to_directory(   t	   is_stringu	   CONDA_EXEu   condat
   CondaErrorc           B` s   e  Z d  Z d d „ Z RS(   u   General Conda error.c         C` s#   t  t |  ƒ j | ƒ | |  _ d  S(   N(   t   superR   t   __init__t   json(   t   selft   messageR
   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyR	      s    N(   t   __name__t
   __module__t   __doc__t   NoneR	   (    (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyR      s   t   CondaEnvExistsErrorc           B` s   e  Z d  Z RS(   u!   Conda environment already exists.(   R   R   R   (    (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyR   #   s   c         C` s   t  g } | j |  ƒ | S(   N(   t	   CONDA_EXEt   extend(   t
   extra_argst   cmd_list(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _get_conda_command*   s    	c         C` s    d j  d |  d | ƒ j ƒ  d S(   NuV  import conda
try:
    # this is conda 4.2 and 4.3

    # fix whether default channels have msys
    import conda.base.constants
    from conda.base.constants import DEFAULT_CHANNELS_UNIX, DEFAULT_CHANNELS_WIN
    if "{platform}" == 'win':
        corrected_channels = DEFAULT_CHANNELS_WIN
    else:
        corrected_channels = DEFAULT_CHANNELS_UNIX

    setattr(conda.base.constants, 'DEFAULT_CHANNELS', corrected_channels)

    from conda.base.context import Context

    class KapselHackedContext(Context):
        @property
        def subdir(self):
            return "{platform}-{bits}"

        @property
        def bits(self):
            return {bits}

    setattr(conda.base.context.context, "__class__", KapselHackedContext)
except ImportError:
    # this is conda 4.1
    import conda.config

    setattr(conda.config, "platform", "{platform}")
    setattr(conda.config, "bits", "{bits}")
    setattr(conda.config, "subdir", "{platform}-{bits}")

    # fix up the default urls
    msys_url = 'https://repo.continuum.io/pkgs/msys2'
    if "{platform}" == "win":
        if msys_url not in conda.config.defaults_:
            conda.config.defaults_.append(msys_url)
    else:
        if msys_url in conda.config.defaults_:
            conda.config.defaults_.remove(msys_url)


import conda.cli
import sys

sys.argv[0] = "conda"
sys.exit(conda.cli.main())
t   platformt   bitsu   
(   t   formatt   strip(   R   R   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _platform_hacked_conda_code4   s    2	c   
      C` s  | t  ƒ  k s | d k r: t |  ƒ } | d j | ƒ f S| j d ƒ \ } } t | | ƒ } t ƒ  } d } xK d d d d f D]7 } t j j | | Œ }	 t j j	 |	 ƒ r€ |	 } Pq€ q€ W| d k	 sÍ t
 ‚ | d | g } | j |  ƒ | d j d	 g | d
 ƒ f Sd S(   uA   Get conda command and a string representing it in error messages.u    u   -u   binu   pythonu
   python.exeu   Scriptsu   Libraryu   -cu   condai   N(   u   binu   python(   u
   python.exe(   u   Scriptsu
   python.exe(   u   Libraryu   binu
   python.exe(   t   current_platformR   R   t   joint   splitR   t   _get_root_prefixt   ost   patht   isfilet   AssertionErrorR   (
   R   R   R   t   platform_nameR   t
   conda_codet   root_prefixt   root_pythont   locationt	   candidate(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt"   _get_platform_hacked_conda_commandj   s"    	c         C` s¾  t  |  ƒ d k s t ‚ t |  d | ƒ\ } } y( t j | d | d | ƒ\ } } }	 Wn/ t k
 r‰ }
 t d | t |
 ƒ f ƒ ‚ n Xd j |	 ƒ } | j	 d k r[d  } | } | r<yk d j | ƒ } t j | ƒ } | d  k	 r$t | t ƒ r$x+ d D]  } | | k rý | | } Pqý qý Wn  Wq<t k
 r8q<Xn  t d	 | | f d
 | ƒ‚ nV | d k r±| d  k r±x; |	 D]0 } t d d |  d | j ƒ  f d t j ƒqzWn  d j | ƒ S(   Ni    R   t   stdout_callbackt   stderr_callbacku   failed to run: %r: %ru    u   messageu   erroru   %s: %sR
   u	   %s %s: %su   condat   file(   u   messageu   error(   t   lenR#   R*   R   t   popent   OSErrorR   t   reprR   t
   returncodeR   R
   t   loadst
   isinstancet   dictt	   Exceptiont   printR   t   syst   stderr(   R   t	   json_modeR   R+   R,   R   t   command_in_errorst   pt   stdout_linest   stderr_linest   et   errstrt   parsedR   t   outt   fieldt   line(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _call_conda…   s6    " 
1c         C` sY   t  |  d t d | ƒ} y t j | ƒ SWn) t k
 rT } t d t | ƒ ƒ ‚ n Xd  S(   NR:   R   u   Invalid JSON from conda: %s(   RE   t   TrueR
   R3   t
   ValueErrorR   t   str(   R   R   RB   R?   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _call_and_parse_json¬   s
    c         C` s   t  d d g d |  ƒS(   u¶   Return a dictionary with configuration information.

    No guarantee is made about which keys exist.  Therefore this function
    should only be used for testing and debugging.
    u   infou   --jsonR   (   RI   (   R   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   info´   s    c         C` s„   t  j j |  ƒ r |  St ƒ  } | j d d ƒ } |  d k rA | S| j d g  ƒ } x* | D]" } t  j j | ƒ |  k rZ | SqZ Wd S(   u‡   Convert an env name or path into a canonical prefix path.

    Returns:
        Absolute path of prefix or None if it isn't found.
    u   root_prefixu   rootu   envsN(   R    R!   t   isabsRJ   t   getR   t   basename(   t   name_or_prefixR
   R&   t   envst   prefix(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   resolve_env_to_prefix½   s    	c           C` s   t  d  k r t d ƒ a  n  t  S(   Nu   root(   t   _cached_root_prefixR   RQ   (    (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyR   Õ   s    c         C` s®   | s t  | t t f ƒ r, t d ƒ ‚ n  t j j |  ƒ rQ t d |  ƒ ‚ n  d d d |  g } x! | D] } | j d | g ƒ qj W| j | ƒ t	 | d | d | ƒd	 S(
   uN   Create an environment either by name or path with a specified set of packages.uK   must specify a list of one or more packages to install into new environmentu%   Conda environment [%s] already existsu   createu   --yesu   --prefixu	   --channelR+   R,   N(
   R4   t   listt   tuplet	   TypeErrorR    R!   t   existsR   R   RE   (   RP   t   pkgst   channelsR+   R,   R   t   channel(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   createÝ   s    c         C` s™   | s t  | t t f ƒ r/ t d | ƒ ‚ n  d d g } | j d |  g ƒ x! | D] } | j d | g ƒ qU W| j | ƒ t | d | d | ƒd S(	   u]   Install packages into an environment either by name or path with a specified set of packages.uX   must specify a list of one or more packages to install into existing environment, not %ru   installu   --yesu   --prefixu	   --channelR+   R,   N(   R4   RS   RT   RU   R   RE   (   RP   RW   RX   R+   R,   R   RY   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   installî   s    c         C` sr   | s t  | t t f ƒ r, t d ƒ ‚ n  d d g } | j d |  g ƒ | j | ƒ t | d | d | ƒd S(   u;   Remove packages from an environment either by name or path.uO   must specify a list of one or more packages to remove from existing environmentu   removeu   --yesu   --prefixR+   R,   N(   R4   RS   RT   RU   R   RE   (   RP   RW   R+   R,   R   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   removeþ   s    c         C` s6   |  j  d d ƒ } t | ƒ d k r. t | ƒ Sd  Sd  S(   Nu   -i   i   (   t   rsplitR.   RT   R   (   t   distt   pieces(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _parse_dist
  s    
c         C` sÅ   t  j j |  d ƒ } y# t d „  t  j | ƒ Dƒ ƒ } WnC t k
 r} } | j t j k rh t ƒ  } q~ t t	 | ƒ ƒ ‚ n Xt
 ƒ  } x7 | D]/ } t | ƒ } | d k	 rŽ | | | d <qŽ qŽ W| S(   u=   Get a dict of package names to (name, version, build) tuples.u
   conda-metac         s` s(   |  ] } | j  d  ƒ r | d  Vq d S(   u   .jsoniûÿÿÿN(   t   endswith(   t   .0t   fn(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pys	   <genexpr>  s    i    N(   R    R!   R   t   sett   listdirR0   t   errnot   ENOENTR   RH   R5   R`   R   (   RP   t   meta_dirt
   full_namesR?   t   resultt	   full_nameR_   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt	   installed  s    #	c         C` sr  |  s t  |  t t f ƒ r/ t d |  ƒ ‚ n  t j d d ƒ } t j | ƒ d d d d d d	 | g } x! | D] } | j d
 | g ƒ qp W| j |  ƒ z t	 | d | ƒ} Wd y& t j
 j | ƒ rØ t j | ƒ n  Wn t k
 rì n XXg  } | j d g  ƒ } t  | t ƒ r!| g } n  x#| D]}	 t  |	 t ƒ r(|	 j d g  ƒ }
 xñ |
 D]æ } d } t  | t ƒ rà| j d d ƒ } | j d d ƒ } | j d d ƒ } | d k	 r | d k	 r | d k	 r | | | f } q n@ t | ƒ r | j ƒ  } t | ƒ d k r t | d ƒ } q n  | d k	 rV| j | ƒ qVqVWq(q(Wt | ƒ d k rnt d d | ƒ‚ n  | S(   uN   Resolve packages into a full transitive list of (name, version, build) tuples.uX   must specify a list of one or more packages to install into existing environment, not %rRP   u   _anaconda_project_resolve_u   createu   --yesu   --quietu   --jsonu	   --dry-runu   --prefixu	   --channelR   Nu   actionsu   LINKu   nameu   versionu   build_stringi    uQ   Could not understand JSON from Conda, could be a problem with this Conda version.R
   (   R4   RS   RT   RU   t   tempfilet   mkdtempR    t   rmdirR   RI   R!   t   isdirt   shutilt   rmtreeR6   RL   R5   R   R   R   R.   R`   t   appendR   (   RW   RX   R   RP   R   RY   RA   t   resultst   actionst   actiont   linkst   linkt   foundt   namet   versiont   build_stringR_   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   resolve_dependencies&  sV    c         C` s%   t  j j |  d ƒ } t  j j | ƒ S(   Nu
   conda-meta(   R    R!   R   Rp   (   R!   t
   conda_meta(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _contains_conda_metal  s    c         C` sK   |  j  d ƒ r |  d  }  n  |  j  d ƒ s/ t St j j |  ƒ } t | ƒ S(   Nu   /iÿÿÿÿu   /bin(   Ra   t   FalseR    R!   t   dirnameR   (   R!   t   possible_prefix(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _is_conda_bindir_unixq  s    c         C` s‡   |  j  d ƒ s |  j  d ƒ r+ |  d  }  n  | j d d ƒ } |  j  d | ƒ p† |  j  d | ƒ p† |  j  d | ƒ p† |  j  d | ƒ S(   Nu   \u   /iÿÿÿÿ(   Ra   t   replace(   R!   t   suffixt   replaced(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _path_endswith_windowsz  s    c         C` s¥   |  j  d ƒ s |  j  d ƒ r+ |  d  }  n  t |  ƒ r; t St |  d ƒ rr t j j t j j |  ƒ ƒ } t | ƒ St |  d ƒ r t j j |  ƒ } t | ƒ St Sd  S(   Nu   \u   /iÿÿÿÿu   Library\binu   Scripts(   Ra   R   RF   R‡   R    R!   R   R€   (   R!   R‚   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _is_conda_bindir_windows„  s    

c         C` s:   |  g } x* d D]" } | j  t j j |  | ƒ ƒ q W| S(   Nu   Scriptsu   Library\bin(   u   Scriptsu   Library\bin(   Rs   R    R!   R   (   RP   t   dirst   item(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _windows_bindirs—  s    	 c         C` s   t  j j |  d ƒ g S(   Nu   bin(   R    R!   R   (   RP   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _unix_bindirsŸ  s    c         C` s}   |  j  t j ƒ } g  } | d  k	 r3 | | ƒ } n  x7 | D]/ } | d k r: | | ƒ r: | j | ƒ q: q: Wt j j | ƒ S(   Nu    (   R   R    t   pathsepR   Rs   R   (   R!   RP   t   bindirs_funct   is_bindir_funct   elementst   new_elementst   element(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _set_conda_env_in_path£  s    c         C` s   t  |  | t t ƒ S(   N(   R“   RŒ   Rƒ   (   R!   RP   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _set_conda_env_in_path_unix¯  s    c         C` s   t  |  | t t ƒ S(   N(   R“   R‹   Rˆ   (   R!   RP   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _set_conda_env_in_path_windows³  s    c         C` s0   t  j ƒ  d k r t |  | ƒ St |  | ƒ Sd S(   u  Remove any existing conda envs in the given path string, then add the given one.

    Args:
        path (str): value of the PATH environment variable
        prefix (str): the environment prefix, or None to remove all conda bindirs
    Returns:
        the new PATH value
    u   WindowsN(   R   t   systemR•   R”   (   R!   RP   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   set_conda_env_in_path·  s    	u
   ParsedSpecu   nameu   conda_constraintu   pip_constraintu   exact_versionu   exact_build_stringu  
(?P<name>[^=<>!\s]+)               # package name
\s*                                # ignore spaces
(
  (?P<cc>=[^=<>!]+(=[^=<>!]+)?)    # conda constraint
  |
  (?P<pc>[=<>!]{1,2}.+)            # new (pip-style) constraint(s)
)?
$                                  # end-of-line
u+   =(?P<version>[^=<>!]+)(?P<build>=[^=<>!]+)?c         C` sv  t  |  ƒ s t d |  ƒ ‚ n  t j |  ƒ } | d k r> d S| j d ƒ j ƒ  } | j d ƒ } | d k	 rƒ | j d d ƒ } n  | j d ƒ } d } d } | d k	 rQt j | ƒ } | d k	 sË t	 ‚ | j d ƒ } x$ d D] } | | k rá d } Pqá qá W| d k	 rQ| j d ƒ } | d k	 rN| d d k s>t	 ‚ | d } qNqQn  t
 d | d | d | d | d | ƒ S(   uq   Parse a package name and version spec as conda would.

    Returns:
       ``ParsedSpec`` or None on failure
    u   Expected a string not %ru   nameu   pcu    u    u   ccu   versionu   |u   *u   ,u   buildi    u   =i   Rz   t   conda_constraintt   pip_constraintt   exact_versiont   exact_build_stringN(   u   |u   *u   ,(   R   RU   t	   _spec_patt   matchR   t   groupt   lowerR„   t   _conda_constraint_patR#   t
   ParsedSpec(   t   spect   mRz   R™   R˜   Rš   R›   t   special(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt
   parse_specÙ  s>    u   CONDA_PREFIXu   CONDA_ENV_PATHu   CONDA_DEFAULT_ENVc          C` s(   x! t  D] }  |  t j k r |  Sq Wd S(   Nu   CONDA_PREFIX(   t   _all_prefix_variablesR    t   environ(   Rz   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   conda_prefix_variable
  s    c         C` s.   x' t  D] } | |  k r |  j | ƒ Sq Wd  S(   N(   R¦   RL   R   (   R§   Rz   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   environ_get_prefix"  s    c         C` s+   x$ t  D] } | |  k r |  | =q q Wd  S(   N(   R¦   (   R§   Rz   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   environ_delete_prefix_variables)  s    c         C` sâ   t  j j | ƒ } | |  | <| d k rÞ t d  k rŒ t ƒ  } g  | j d g  ƒ D] } t  j j | ƒ ^ qP a t  j j | j d ƒ ƒ a n  | t k r¡ d } n0 x- t D]% } t | | ƒ } | | k r¨ Pq¨ q¨ W| |  d <n  d  S(   Nu   CONDA_DEFAULT_ENVu	   envs_dirsu   root_prefixu   root(	   R    R!   t   normpatht
   _envs_dirsR   RJ   RL   t	   _root_dirR   (   R§   RP   t   varnamet   it   dRz   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   environ_set_prefix3  s    
	1	u   linux-64u   osx-64u   win-64u   linux-32u   win-32u   armv6lu   armv7lu   ppc64leu   osx-32u   linux-%su   linuxu   osxu   winc          C` sQ   g  }  x> t  D]6 } x- t D]% } | j | ƒ r |  j | ƒ q q Wq Wt |  ƒ S(   N(   t   unix_platform_namest   default_platforms_plus_32_bitt
   startswithRs   RT   (   Rj   t	   unix_nameR<   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   _known_unix_platformsm  s    u   unixu   allc          C` sp   t  j ƒ  }  |  t k r  d |  Si d d 6d d 6d d 6d d 6} | j t j  d ƒ } d	 | d
 t j f Sd  S(   Nu   linux-%su   linuxu   linux2u   osxu   darwinu   winu   win32u   unknownu   %s-%di   (   R   t   machinet   _non_x86_linux_machinesRL   R8   RT   t   __itemsize__(   R£   t   _platform_mapR<   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyR   ‚  s    
c           C` s   t  S(   N(   t   _default_platforms_with_current(    (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   default_platforms_with_current”  s    c         C` s6   d |  k s t  ‚ |  j d d ƒ } | d | d f S(   u-   Split platform into OS name and architecture.u   -i   i    (   R#   R]   (   R   R_   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   parse_platform˜  s    c         C` s   t  ƒ  } t  ƒ  } t  ƒ  } xS |  D]K } d | k rD | j | ƒ q" | j | ƒ | t k r" | j | ƒ q" q" Wt | ƒ t | ƒ t | ƒ f S(   u¶  Split platform list into known, unknown, and invalid platforms.

    Also, sort the list into canonical order.

    We return a tuple, the second list in the tuple
    is a subset of the first, and indicates platforms
    we don't know about. These may create a warning.
    The third list is not in the other two and indicates
    unusably-invalid platform names.

    Returns:
       Tuple of known platforms and unknown platforms.
    u   -(   Rd   t   addt   _known_platformst   sort_platform_list(   t	   platformsRj   t   unknownt   invalidR<   (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   validate_platform_list¢  s    			c         C` sj   t  |  ƒ } g  } x; t t D]/ } | | k r | j | ƒ | j | ƒ q q W| t t | ƒ ƒ } | S(   uJ   Sort platform list (including "grouping" names) from more to less general.(   Rd   t   _known_platform_groups_keysR¿   Rs   R\   t   sortedRS   (   RÁ   t	   remainingRj   t   known(    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyRÀ   À  s    (    (    (    (   u   CONDA_PREFIXu   CONDA_ENV_PATHu   CONDA_DEFAULT_ENV(   u   linux-64u   osx-64u   win-64(   u   linux-32u   linux-64u   osx-64u   win-32u   win-64(   u   linuxu   osxu   win(   u   linuxu   osx(   u   allu   unix(_   t
   __future__R    R   R   R   t   collectionsRf   R
   R    R   t   reRq   R8   Rm   t   anaconda_project.internalR   t,   anaconda_project.internal.directory_containsR   t$   anaconda_project.internal.py2_compatR   R§   RL   R   R6   R   R   R   R   R*   R€   R   RE   RI   RJ   RQ   RR   R   RZ   R[   R\   R`   Rl   R}   R   Rƒ   R‡   Rˆ   R‹   RŒ   R“   R”   R•   R—   t
   namedtupleR¡   t   compilet   VERBOSERœ   R    R¥   R¦   R¨   R©   Rª   R¬   R­   R±   t   default_platformsRT   RÆ   R#   R³   R¸   RS   R£   R¿   t   known_platform_namesR²   R5   t   _known_platform_groupsRz   Rj   R<   R´   Rs   R¶   RÅ   Rd   t   keysR   R»   R¼   R½   RÄ   RÀ   (    (    (    sB   lib/python2.7/site-packages/anaconda_project/internal/conda_api.pyt   <module>   s¨   "	
	6	'				
	F				
							
	.			7	*		&

$	(		
	