
    i                    (    S r SSKJr   " S S5      rg)z
(c) 2008-2013, holger krekel
    )annotationsc                      \ rS rSr% SrSrS\S'   SrS\S'   SrS\S'   Sr	S\S	'   Sr
S\S
'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   SS jrSS jrSS jrSS jrSS jrS S jrS S jrS!S jrSrg)"XSpec   a0  Execution Specification: key1=value1//key2=value2 ...

* Keys need to be unique within the specification scope
* Neither key nor value are allowed to contain "//"
* Keys are not allowed to contain "="
* Keys are not allowed to start with underscore
* If no "=value" is given, assume a boolean True value
Nz
str | Nonechdirzbool | Nonedont_write_bytecode	execmodelid
installvianicepopenpythonsocketssh
ssh_configvagrant_sshviac                v   Xl         0 U l        UR                  S5       H  nUR                  S5      nUS:X  a  USpTOUS U X#S-   S  pTUS   S:X  a  [	        SU-  5      eX@R
                  ;   a  [        S	U< S
U< 35      eUR                  S5      (       a  XPR                  USS  '   M  [        XU5        M     g )Nz//=T   r   _z%r not a valid XSpec keyzduplicate key: z in zenv:   )	_specenvsplitfindAttributeError__dict__
ValueError
startswithsetattr)selfstringkeyvalueikeyvalues         L/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/execnet/xspec.py__init__XSpec.__init__!   s    
T*Hc"ABw%tU%bq\8EG+<U1v}$%?#%EFFmm# ?3'fZ!HII~~f%%$)QR!5) +    c                ,    US   S:X  a  [        U5      eg )Nr   r   )r   )r#   names     r)   __getattr__XSpec.__getattr__4   s    7c> &&r,   c                $    SU R                   < S3$ )Nz<XSpec >r   r#   s    r)   __repr__XSpec.__repr__9   s    a((r,   c                    U R                   $ Nr3   r4   s    r)   __str__XSpec.__str__<   s    zzr,   c                ,    [        U R                  5      $ r8   )hashr   r4   s    r)   __hash__XSpec.__hash__?   s    DJJr,   c                6    U R                   [        USS 5      :H  $ Nr   r   getattrr#   others     r)   __eq__XSpec.__eq__B       zzWUGT:::r,   c                6    U R                   [        USS 5      :g  $ r@   rA   rC   s     r)   __ne__XSpec.__ne__E   rG   r,   c                H    U R                   S L=(       a    U R                  S L $ r8   )r   r   r4   s    r)   _samefilesystemXSpec._samefilesystemH   s    zz%<$***<<r,   )r   r   )r$   strreturnNone)r.   rN   rO   zNone | bool | str)rO   rN   )rO   int)rD   objectrO   bool)rO   rS   )__name__
__module____qualname____firstlineno____doc__r   __annotations__r   r	   r
   r   r   r   r   r   r   r   r   r   r*   r/   r5   r9   r=   rE   rI   rL   __static_attributes__ r,   r)   r   r      s     E:'++ Iz B
!J
!D*E;FJFJC!J
!"K"C*&
) ;;=r,   r   N)rX   
__future__r   r   r[   r,   r)   <module>r]      s    #A= A=r,   