§
    »! hI  ã                  óª  — d dl mZ d dl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mZ 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 ej        rd d
lmZ ddlmZ  G d„ d¦  «        Zej        d#d„¦   «         Z G d„ dej        ¦  «        Z G d„ d¦  «        Z  G d„ dej!        ¦  «        Z"d$d„Z# G d„ d ¦  «        Z$ G d!„ d"¦  «        Z%dS )%é    )ÚannotationsN)ÚTracebackTypeé   )Ú_compat)Ú
formatting)Útermui)Úutils)Ú_find_binary_reader)ÚReadableBuffer)ÚCommandc                  ó\   — e Zd Zdd„Zdd
„Zdd„Zddd„Zddd„Zddd„Zdd„Z	d d„Z
d!d„ZdS )"ÚEchoingStdinÚinputú
t.BinaryIOÚoutputÚreturnÚNonec                ó0   — || _         || _        d| _        d S )NF)Ú_inputÚ_outputÚ_paused)Úselfr   r   s      úGc:\xampp_lite_8_4\www\timesheet\venv\Lib\site-packages\click/testing.pyÚ__init__zEchoingStdin.__init__   s   € ØˆŒØˆŒØˆŒˆˆó    ÚxÚstrút.Anyc                ó,   — t          | j        |¦  «        S ©N)Úgetattrr   )r   r   s     r   Ú__getattr__zEchoingStdin.__getattr__    s   € Ý�t”{ AÑ&Ô&Ð&r   ÚrvÚbytesc                óH   — | j         s| j                             |¦  «         |S r    )r   r   Úwrite)r   r#   s     r   Ú_echozEchoingStdin._echo#   s'   € ØŒ|ð 	#ØŒL×Ò˜rÑ"Ô"Ð"àˆ	r   éÿÿÿÿÚnÚintc                ó\   — |                       | j                             |¦  «        ¦  «        S r    )r'   r   Úread©r   r)   s     r   r,   zEchoingStdin.read)   s$   € Ø�zŠz˜$œ+×*Ò*¨1Ñ-Ô-Ñ.Ô.Ð.r   c                ó\   — |                       | j                             |¦  «        ¦  «        S r    )r'   r   Úread1r-   s     r   r/   zEchoingStdin.read1,   s$   € Ø�zŠz˜$œ+×+Ò+¨AÑ.Ô.Ñ/Ô/Ð/r   c                ó\   — |                       | j                             |¦  «        ¦  «        S r    )r'   r   Úreadliner-   s     r   r1   zEchoingStdin.readline/   s$   € Ø�zŠz˜$œ+×.Ò.¨qÑ1Ô1Ñ2Ô2Ð2r   úlist[bytes]c                óN   ‡ — ˆ fd„‰ j                              ¦   «         D ¦   «         S )Nc                ó:   •— g | ]}‰                      |¦  «        ‘ŒS © ©r'   ©Ú.0r   r   s     €r   ú
<listcomp>z*EchoingStdin.readlines.<locals>.<listcomp>3   s#   ø€ Ð?Ð?Ð? !�—
’
˜1‘”Ð?Ð?Ð?r   )r   Ú	readlines©r   s   `r   r:   zEchoingStdin.readlines2   s+   ø€ Ø?Ð?Ð?Ð? t¤{×'<Ò'<Ñ'>Ô'>Ð?Ñ?Ô?Ð?r   úcabc.Iterator[bytes]c                óD   ‡ — t          ˆ fd„‰ j        D ¦   «         ¦  «        S )Nc              3  óB   •K  — | ]}‰                      |¦  «        V — Œd S r    r6   r7   s     €r   ú	<genexpr>z(EchoingStdin.__iter__.<locals>.<genexpr>6   s-   øè è € Ð7Ð7 a�D—J’J˜q‘M”MÐ7Ð7Ð7Ð7Ð7Ð7r   )Úiterr   r;   s   `r   Ú__iter__zEchoingStdin.__iter__5   s(   ø€ ÝÐ7Ð7Ð7Ð7¨4¬;Ð7Ñ7Ô7Ñ7Ô7Ð7r   c                ó*   — t          | j        ¦  «        S r    )Úreprr   r;   s    r   Ú__repr__zEchoingStdin.__repr__8   s   € Ý�D”KÑ Ô Ð r   N)r   r   r   r   r   r   )r   r   r   r   )r#   r$   r   r$   )r(   )r)   r*   r   r$   )r   r2   )r   r<   ©r   r   )Ú__name__Ú
__module__Ú__qualname__r   r"   r'   r,   r/   r1   r:   rA   rD   r5   r   r   r   r      sÛ   € € € € € ðð ð ð ð
'ð 'ð 'ð 'ðð ð ð ð/ð /ð /ð /ð /ð0ð 0ð 0ð 0ð 0ð3ð 3ð 3ð 3ð 3ð@ð @ð @ð @ð8ð 8ð 8ð 8ð!ð !ð !ð !ð !ð !r   r   ÚstreamúEchoingStdin | Noner   úcabc.Iterator[None]c              #  ó>   K  — | €d V — d S d| _         d V — d| _         d S )NTF)r   )rI   s    r   Ú_pause_echorM   <   s3   è è € à€~ØˆˆˆˆˆàˆŒØˆˆˆØˆŒˆˆr   c                  ó<   ‡ — e Zd ZdZdˆ fd„Zdˆ fd„Zdˆ fd„Zˆ xZS )ÚBytesIOCopyzdPatch ``io.BytesIO`` to let the written stream be copied to another.

    .. versionadded:: 8.2
    Úcopy_toú
io.BytesIOr   r   c                óV   •— t          ¦   «                              ¦   «          || _        d S r    )Úsuperr   rP   )r   rP   Ú	__class__s     €r   r   zBytesIOCopy.__init__L   s$   ø€ Ý‰Œ×ÒÑÔÐØˆŒˆˆr   c                óz   •— t          ¦   «                              ¦   «          | j                             ¦   «          d S r    )rS   ÚflushrP   )r   rT   s    €r   rV   zBytesIOCopy.flushP   s.   ø€ Ý‰Œ�Š‰ŒˆØŒ×ÒÑÔÐÐÐr   Úbr   r*   c                óz   •— | j                              |¦  «         t          ¦   «                              |¦  «        S r    )rP   r&   rS   )r   rW   rT   s     €r   r&   zBytesIOCopy.writeT   s/   ø€ ØŒ×Ò˜1ÑÔÐÝ‰wŒw�}Š}˜QÑÔÐr   )rP   rQ   r   r   ©r   r   )rW   r   r   r*   )rF   rG   rH   Ú__doc__r   rV   r&   Ú__classcell__©rT   s   @r   rO   rO   F   sƒ   ø€ € € € € ðð ð
ð ð ð ð ð ðð ð ð ð ð ð ð  ð  ð  ð  ð  ð  ð  ð  ð  r   rO   c                  ó   — e Zd ZdZdd„ZdS )ÚStreamMixerz‚Mixes `<stdout>` and `<stderr>` streams.

    The result is available in the ``output`` attribute.

    .. versionadded:: 8.2
    r   r   c                óž   — t          j        ¦   «         | _        t          | j        ¬¦  «        | _        t          | j        ¬¦  «        | _        d S )N)rP   )ÚioÚBytesIOr   rO   ÚstdoutÚstderrr;   s    r   r   zStreamMixer.__init__a   s;   € Ý"$¤*¡,¤,ˆŒÝ"-°d´kÐ"BÑ"BÔ"BˆŒÝ"-°d´kÐ"BÑ"BÔ"BˆŒˆˆr   NrY   )rF   rG   rH   rZ   r   r5   r   r   r^   r^   Y   s8   € € € € € ðð ðCð Cð Cð Cð Cð Cr   r^   c                  ó\   ‡ — e Zd Zdˆ fd
„Zedd„¦   «         Zedd„¦   «         Zdˆ fd„Zˆ xZS )Ú_NamedTextIOWrapperÚbufferr   Únamer   ÚmodeÚkwargsr   r   r   c                óX   •—  t          ¦   «         j        |fi |¤Ž || _        || _        d S r    )rS   r   Ú_nameÚ_mode)r   rf   rg   rh   ri   rT   s        €r   r   z_NamedTextIOWrapper.__init__h   s6   ø€ ð 	�‰ŒÔ˜Ð*Ð* 6Ð*Ð*Ð*ØˆŒ
ØˆŒ
ˆ
ˆ
r   c                ó   — | j         S r    )rk   r;   s    r   rg   z_NamedTextIOWrapper.nameo   ó
   € àŒzÐr   c                ó   — | j         S r    )rl   r;   s    r   rh   z_NamedTextIOWrapper.modes   rn   r   c                óŽ   •— 	 t          ¦   «                              ¦   «         }n!# t          $ r}t          ¦   «         |‚d }~ww xY w|S r    )rS   Ú__next__ÚStopIterationÚEOFError)r   ÚlineÚerT   s      €r   rq   z_NamedTextIOWrapper.__next__w   sO   ø€ ð	$Ý‘7”7×#Ò#Ñ%Ô%ˆDˆDøÝð 	$ð 	$ð 	$Ý‘*”* !Ð#øøøøð	$øøøàˆs   ƒ $ ¤
A®=½A)
rf   r   rg   r   rh   r   ri   r   r   r   rE   )	rF   rG   rH   r   Úpropertyrg   rh   rq   r[   r\   s   @r   re   re   g   s›   ø€ € € € € ðð ð ð ð ð ð ðð ð ñ „Xðð ðð ð ñ „Xððð ð ð ð ð ð ð ð ð r   re   r   ú str | bytes | t.IO[t.Any] | NoneÚcharsetr   r   c                ó  — t          | d¦  «        r5t          t          j        d| ¦  «        ¦  «        }|�|S t	          d¦  «        ‚| €d} n*t          | t          ¦  «        r|                      |¦  «        } t          j	        | ¦  «        S )Nr,   zt.IO[t.Any]z.Could not find binary reader for input stream.r   )
Úhasattrr
   ÚtÚcastÚ	TypeErrorÚ
isinstancer   Úencoder`   ra   )r   rx   r#   s      r   Úmake_input_streamr€      sˆ   € õ ˆu�fÑÔð JÝ ¥¤¨°uÑ!=Ô!=Ñ>Ô>ˆàˆ>ØˆIåÐHÑIÔIÐIà€}ØˆˆÝ	�E�3Ñ	Ô	ð &Ø—’˜WÑ%Ô%ˆåŒ:�eÑÔÐr   c                  ón   — e Zd ZdZ	 ddd„Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         Zdd„Z	dS )ÚResultaC  Holds the captured result of an invoked CLI script.

    :param runner: The runner that created the result
    :param stdout_bytes: The standard output as bytes.
    :param stderr_bytes: The standard error as bytes.
    :param output_bytes: A mix of ``stdout_bytes`` and ``stderr_bytes``, as the
        user would see  it in its terminal.
    :param return_value: The value returned from the invoked command.
    :param exit_code: The exit code as integer.
    :param exception: The exception that happened if one did.
    :param exc_info: Exception information (exception type, exception instance,
        traceback type).

    .. versionchanged:: 8.2
        ``stderr_bytes`` no longer optional, ``output_bytes`` introduced and
        ``mix_stderr`` has been removed.

    .. versionadded:: 8.0
        Added ``return_value``.
    NÚrunnerÚ	CliRunnerÚstdout_bytesr$   Ústderr_bytesÚoutput_bytesÚreturn_valuer   Ú	exit_coder*   Ú	exceptionúBaseException | NoneÚexc_infoú?tuple[type[BaseException], BaseException, TracebackType] | Nonec	                óv   — || _         || _        || _        || _        || _        || _        || _        || _        d S r    ©rƒ   r…   r†   r‡   rˆ   r‰   rŠ   rŒ   )	r   rƒ   r…   r†   r‡   rˆ   r‰   rŠ   rŒ   s	            r   r   zResult.__init__©   sD   € ð ˆŒØ(ˆÔØ(ˆÔØ(ˆÔØ(ˆÔØ"ˆŒØ"ˆŒØ ˆŒˆˆr   r   r   c                ót   — | j                              | j        j        d¦  «                             dd¦  «        S )a  The terminal output as unicode string, as the user would see it.

        .. versionchanged:: 8.2
            No longer a proxy for ``self.stdout``. Now has its own independent stream
            that is mixing `<stdout>` and `<stderr>`, in the order they were written.
        Úreplaceú
ú
)r‡   Údecoderƒ   rx   r‘   r;   s    r   r   zResult.output¾   s9   € ð Ô ×'Ò'¨¬Ô(;¸YÑGÔG×OÒOØ�Dñ
ô 
ð 	
r   c                ót   — | j                              | j        j        d¦  «                             dd¦  «        S )z&The standard output as unicode string.r‘   r’   r“   )r…   r”   rƒ   rx   r‘   r;   s    r   rb   zResult.stdoutÊ   s9   € ð Ô ×'Ò'¨¬Ô(;¸YÑGÔG×OÒOØ�Dñ
ô 
ð 	
r   c                ót   — | j                              | j        j        d¦  «                             dd¦  «        S )zŸThe standard error as unicode string.

        .. versionchanged:: 8.2
            No longer raise an exception, always returns the `<stderr>` string.
        r‘   r’   r“   )r†   r”   rƒ   rx   r‘   r;   s    r   rc   zResult.stderrÑ   s9   € ð Ô ×'Ò'¨¬Ô(;¸YÑGÔG×OÒOØ�Dñ
ô 
ð 	
r   c                ór   — | j         rt          | j         ¦  «        nd}dt          | ¦  «        j        › d|› d�S )NÚokayú<ú ú>)rŠ   rC   ÚtyperF   )r   Úexc_strs     r   rD   zResult.__repr__Ü   s?   € Ø*.¬.ÐD•$�t”~Ñ&Ô&Ð&¸fˆØ3•4˜‘:”:Ô&Ð3Ð3¨Ð3Ð3Ð3Ð3r   r    )rƒ   r„   r…   r$   r†   r$   r‡   r$   rˆ   r   r‰   r*   rŠ   r‹   rŒ   r�   rE   )
rF   rG   rH   rZ   r   rv   r   rb   rc   rD   r5   r   r   r‚   r‚   “   s°   € € € € € ðð ð> ð!ð !ð !ð !ð !ð* ð	
ð 	
ð 	
ñ „Xð	
ð ð
ð 
ð 
ñ „Xð
ð ð
ð 
ð 
ñ „Xð
ð4ð 4ð 4ð 4ð 4ð 4r   r‚   c                  óœ   — e Zd ZdZ	 	 	 	 d&d'd„Zd(d„Z	 d)d*d„Zej        	 	 	 d+d,d„¦   «         Z		 	 	 	 	 d-d.d!„Z
ej        	 d)d/d%„¦   «         ZdS )0r„   aë  The CLI runner provides functionality to invoke a Click command line
    script for unittesting purposes in a isolated environment.  This only
    works in single-threaded systems without any concurrency as it changes the
    global interpreter state.

    :param charset: the character set for the input and output data.
    :param env: a dictionary with environment variables for overriding.
    :param echo_stdin: if this is set to `True`, then reading from `<stdin>` writes
                       to `<stdout>`.  This is useful for showing examples in
                       some circumstances.  Note that regular prompts
                       will automatically echo the input.
    :param catch_exceptions: Whether to catch any exceptions other than
                             ``SystemExit`` when running :meth:`~CliRunner.invoke`.

    .. versionchanged:: 8.2
        Added the ``catch_exceptions`` parameter.

    .. versionchanged:: 8.2
        ``mix_stderr`` parameter has been removed.
    úutf-8NFTrx   r   Úenvú$cabc.Mapping[str, str | None] | NoneÚ
echo_stdinÚboolÚcatch_exceptionsr   r   c                óB   — || _         |pi | _        || _        || _        d S r    )rx   r    r¢   r¤   )r   rx   r    r¢   r¤   s        r   r   zCliRunner.__init__÷   s+   € ð ˆŒØ25°)¸ˆŒØ$ˆŒØ 0ˆÔÐÐr   Úclir   c                ó   — |j         pdS )zžGiven a command object it will return the default program name
        for it.  The default is the `name` attribute or ``"root"`` if not
        set.
        Úroot)rg   )r   r¦   s     r   Úget_default_prog_namezCliRunner.get_default_prog_name  s   € ð
 ŒxÐ!˜6Ð!r   Ú	overridesúcabc.Mapping[str, str | None]c                ó\   — t          | j        ¦  «        }|r|                     |¦  «         |S )z8Returns the environment overrides for invoking a script.)Údictr    Úupdate)r   rª   r#   s      r   Úmake_envzCliRunner.make_env
  s0   € õ �$”(‰^Œ^ˆØð 	!Ø�IŠI�iÑ Ô Ð Øˆ	r   r   rw   Úcolorú8cabc.Iterator[tuple[io.BytesIO, io.BytesIO, io.BytesIO]]c              #  ó  ‡‡K  — t          || j        ¦  «        }d}t          j        }t          j        }t          j        }t          j        }	dt          _        |                      |¦  «        }t          ¦   «         }
| j
        r4t          j        t          j        t          ||
j        ¦  «        ¦  «        x}}t          || j        dd¬¦  «        xt          _        Š| j
        rd‰_        t          |
j        | j        dd¬¦  «        t          _        t          |
j        | j        d	dd
¬¦  «        t          _        t#          |¦  «        ddˆfd„¦   «         }t#          |¦  «        ddˆfd„¦   «         }t#          |¦  «        dd„¦   «         }|Š	 ddˆfd„}t$          j        }t$          j        }t$          j        }t,          j        }t0          j        }|t$          _        |t$          _        |t$          _        |t,          _        |t0          _        i }	 |                     ¦   «         D ]W\  }}t4          j                             |¦  «        ||<   |€	 t4          j        |= Œ8# t:          $ r Y ŒDw xY w|t4          j        |<   ŒX|
j        |
j        |
j        fV — |                     ¦   «         D ]5\  }}|€	 t4          j        |= Œ# t:          $ r Y Œ"w xY w|t4          j        |<   Œ6|t          _        |t          _        |t          _        |t$          _        |t$          _        |t$          _        |t,          _        |t0          _        |	t          _        dS # |                     ¦   «         D ]5\  }}|€	 t4          j        |= Œ# t:          $ r Y Œ"w xY w|t4          j        |<   Œ6|t          _        |t          _        |t          _        |t$          _        |t$          _        |t$          _        |t,          _        |t0          _        |	t          _        w xY w)a\  A context manager that sets up the isolation for invoking of a
        command line tool.  This sets up `<stdin>` with the given input data
        and `os.environ` with the overrides from the given dictionary.
        This also rebinds some internals in Click to be mocked (like the
        prompt functionality).

        This is automatically done in the :meth:`invoke` method.

        :param input: the input stream to put into `sys.stdin`.
        :param env: the environment overrides as dictionary.
        :param color: whether the output should contain color codes. The
                      application can still override this explicitly.

        .. versionadded:: 8.2
            An additional output stream is returned, which is a mix of
            `<stdout>` and `<stderr>` streams.

        .. versionchanged:: 8.2
            Always returns the `<stderr>` stream.

        .. versionchanged:: 8.0
            `<stderr>` is opened with ``errors="backslashreplace"``
            instead of the default ``"strict"``.

        .. versionchanged:: 4.0
            Added the ``color`` parameter.
        NéP   z<stdin>Úr)Úencodingrg   rh   r   z<stdout>Úwz<stderr>Úbackslashreplace)rµ   rg   rh   ÚerrorsÚpromptú
str | Noner   r   c                ó  •— t           j                             | pd¦  «         t          ‰¦  «                             d¦  «        }t           j                             |› d�¦  «         t           j                             ¦   «          |S )NÚ r’   r“   )Úsysrb   r&   ÚnextÚrstriprV   )r¹   ÚvalÚ
text_inputs     €r   Úvisible_inputz*CliRunner.isolation.<locals>.visible_input\  sm   ø€ åŒJ×Ò˜V˜\ rÑ*Ô*Ð*Ý�zÑ"Ô"×)Ò)¨&Ñ1Ô1ˆCÝŒJ×Ò ˜Z˜Z˜ZÑ(Ô(Ð(ÝŒJ×ÒÑÔÐØˆJr   c                óÌ   •— t           j                             | pd› d�¦  «         t           j                             ¦   «          t	          ‰¦  «                             d¦  «        S )Nr¼   r“   r’   )r½   rb   r&   rV   r¾   r¿   )r¹   rÁ   s    €r   Úhidden_inputz)CliRunner.isolation.<locals>.hidden_inputd  sV   ø€ åŒJ×Ò  ¨"Ð0Ð0Ð0Ñ1Ô1Ð1ÝŒJ×ÒÑÔÐÝ˜
Ñ#Ô#×*Ò*¨6Ñ2Ô2Ð2r   Úechor£   c                óÂ   — t           j                             d¦  «        }| rt           j                             |¦  «         t           j                             ¦   «          |S )Nr   )r½   Ústdinr,   rb   r&   rV   )rÅ   Úchars     r   Ú_getcharz%CliRunner.isolation.<locals>._getcharj  sL   € å”9—>’> !Ñ$Ô$ˆDàð 'Ý”
× Ò  Ñ&Ô&Ð&åŒJ×ÒÑÔÐØˆKr   rI   út.IO[t.Any] | Noner°   úbool | Nonec                ó   •— |€‰ S | S r    r5   )rI   r°   Údefault_colors     €r   Úshould_strip_ansiz.CliRunner.isolation.<locals>.should_strip_ansiv  s   ø€ ð ˆ}Ø(Ð(Ð(Ø�9Ðr   r    )r¹   rº   r   r   )rÅ   r£   r   r   )NN)rI   rÊ   r°   rË   r   r£   )r€   rx   r½   rÇ   rb   rc   r   ÚFORCED_WIDTHr¯   r^   r¢   r{   r|   ÚBinaryIOr   re   Ú_CHUNK_SIZErM   r   Úvisible_prompt_funcÚhidden_prompt_funcrÉ   r	   rÎ   r   ÚitemsÚosÚenvironÚgetÚ	Exceptionr   )r   r   r    r°   Úbytes_inputÚ
echo_inputÚ	old_stdinÚ
old_stdoutÚ
old_stderrÚold_forced_widthÚstream_mixerrÂ   rÄ   rÉ   rÎ   Úold_visible_prompt_funcÚold_hidden_prompt_funcÚold__getchar_funcÚold_should_strip_ansiÚold__compat_should_strip_ansiÚold_envÚkeyÚvaluerÍ   rÁ   s                          @@r   Ú	isolationzCliRunner.isolation  s=  øøè è € õD (¨¨t¬|Ñ<Ô<ˆØˆ
å”Iˆ	Ý”Zˆ
Ý”Zˆ
Ý%Ô2ÐØ"$�
Ôà�mŠm˜CÑ Ô ˆå"‘}”}ˆàŒ?ð 	Ý'(¤vÝ”
�L¨°lÔ6IÑJÔJñ(ô (ð ˆK˜*õ "5Ø $¤,°YÀSð"
ñ "
ô "
ð 	
�Œ	�Jð Œ?ð 	'ð &'ˆJÔ"å(ØÔ¨$¬,¸ZÈcð
ñ 
ô 
�Œ
õ )ØÔØ”\ØØØ%ð
ñ 
ô 
�Œ
õ 
�ZÑ	 Ô	 ð	ð 	ð 	ð 	ð 	ð 	ñ 
!Ô	 ð	õ 
�ZÑ	 Ô	 ð	3ð 	3ð 	3ð 	3ð 	3ð 	3ñ 
!Ô	 ð	3õ
 
�ZÑ	 Ô	 ð	ð 	ð 	ñ 
!Ô	 ð	ð ˆð EIð	ð 	ð 	ð 	ð 	ð 	ð 	õ #)Ô"<ÐÝ!'Ô!:ÐÝ"œOÐÝ %Ô 7ÐÝ(/Ô(AÐ%Ø%2�Ô"Ø$0�Ô!Ø"�ŒØ"3�ÔØ$5�Ô!àˆð	7Ø!Ÿiši™kœkð ,ð ,‘
��UÝ!œzŸ~š~¨cÑ2Ô2�˜‘Ø�=ðÝœJ s˜O˜OøÝ$ð ð ð Ø˜ðøøøð ',•B”J˜s‘O�OØÔ&¨Ô(;¸\Ô=PÐQÐQÐQÐQà%Ÿmšm™oœoð ,ð ,‘
��UØ�=ðÝœJ s˜O˜OøÝ$ð ð ð Ø˜ðøøøð ',•B”J˜s‘O�OØ#�CŒJØ#�CŒJØ!�CŒIØ)@�FÔ&Ø(>�FÔ%Ø/�FŒOØ&;�EÔ#Ø(E�GÔ%Ø&6�JÔ#Ð#Ð#øð! &Ÿmšm™oœoð ,ð ,‘
��UØ�=ðÝœJ s˜O˜OøÝ$ð ð ð Ø˜ðøøøð ',•B”J˜s‘O�OØ#�CŒJØ#�CŒJØ!�CŒIØ)@�FÔ&Ø(>�FÔ%Ø/�FŒOØ&;�EÔ#Ø(E�GÔ%Ø&6�JÔ#Ð6Ð6Ð6Ð6sg   È=M ÉIÉM É
I&É#M É%I&É&)M Ê+J9Ê9
KËKÍO?Í$M2Í1O?Í2
M?	Í<O?Í>M?	Í?B O?Úargsústr | cabc.Sequence[str] | NonerË   Úextrar   r‚   c           
     óš  — d}|€| j         }|                      |||¬¦  «        5 }	d}
d}d}t          |t          ¦  «        rt	          j        |¦  «        }	 |                     d¦  «        }n%# t          $ r |                      |¦  «        }Y nw xY w	  |j	        d|pd|dœ|¤Ž}
nà# t          $ r§}t          j        ¦   «         }t          j        d|j        ¦  «        }|€d}|dk    r|}t          |t           ¦  «        sMt          j                             t          |¦  «        ¦  «         t          j                             d¦  «         d	}|}Y d}~n4d}~wt&          $ r$}|s‚ |}d	}t          j        ¦   «         }Y d}~nd}~ww xY wt          j                             ¦   «          t          j                             ¦   «          |	d                              ¦   «         }|	d	                              ¦   «         }|	d
                              ¦   «         }n�# t          j                             ¦   «          t          j                             ¦   «          |	d                              ¦   «         }|	d	                              ¦   «         }|	d
                              ¦   «         }w xY w	 ddd¦  «         n# 1 swxY w Y   t/          | ||||
|||¬¦  «        S )a{  Invokes a command in an isolated environment.  The arguments are
        forwarded directly to the command line script, the `extra` keyword
        arguments are passed to the :meth:`~clickpkg.Command.main` function of
        the command.

        This returns a :class:`Result` object.

        :param cli: the command to invoke
        :param args: the arguments to invoke. It may be given as an iterable
                     or a string. When given as string it will be interpreted
                     as a Unix shell command. More details at
                     :func:`shlex.split`.
        :param input: the input data for `sys.stdin`.
        :param env: the environment overrides.
        :param catch_exceptions: Whether to catch any other exceptions than
                                 ``SystemExit``. If :data:`None`, the value
                                 from :class:`CliRunner` is used.
        :param extra: the keyword arguments to pass to :meth:`main`.
        :param color: whether the output should contain color codes. The
                      application can still override this explicitly.

        .. versionadded:: 8.2
            The result object has the ``output_bytes`` attribute with
            the mix of ``stdout_bytes`` and ``stderr_bytes``, as the user would
            see it in its terminal.

        .. versionchanged:: 8.2
            The result object always returns the ``stderr_bytes`` stream.

        .. versionchanged:: 8.0
            The result object has the ``return_value`` attribute with
            the value returned from the invoked command.

        .. versionchanged:: 4.0
            Added the ``color`` parameter.

        .. versionchanged:: 3.0
            Added the ``catch_exceptions`` parameter.

        .. versionchanged:: 3.0
            The result object has the ``exc_info`` attribute with the
            traceback if available.
        N)r   r    r°   r   Ú	prog_namer5   )ré   rí   zint | t.Any | Noner“   r   é   r�   )r¤   rè   r~   r   ÚshlexÚsplitÚpopÚKeyErrorr©   ÚmainÚ
SystemExitr½   rŒ   r{   r|   Úcoder*   rb   r&   rØ   rV   rc   Úgetvaluer‚   )r   r¦   ré   r   r    r¤   r°   rë   rŒ   Ú
outstreamsrˆ   rŠ   r‰   rí   ru   Úe_coderb   rc   r   s                      r   ÚinvokezCliRunner.invoke§  s+  € ðj ˆØÐ#Ø#Ô4Ðà�^Š^ %¨S¸ˆ^Ñ>Ô>ð +	2À*ØˆLØ.2ˆIØˆIå˜$¥Ñ$Ô$ð )Ý”{ 4Ñ(Ô(�ð<Ø!ŸIšI kÑ2Ô2�	�	øÝð <ð <ð <Ø ×6Ò6°sÑ;Ô;�	�	�	ð<øøøð2Ø'˜sœxÐV¨T¨Z°RÀ9ÐVÐVÐPUÐVÐV��øÝð #ð #ð #Ýœ<™>œ>�ÝœÐ 4°a´fÑ=Ô=�à�>Ø�Fà˜Q’;�;Ø !�Iå! &­#Ñ.Ô.ð Ý”J×$Ò$¥S¨¡[¤[Ñ1Ô1Ð1Ý”J×$Ò$ TÑ*Ô*Ð*Ø�Fà"�	�	�	�	�	�	øøøøåð *ð *ð *Ø'ð ØØ�	Ø�	Ýœ<™>œ>������øøøøð*øøøõ ”
× Ò Ñ"Ô"Ð"Ý”
× Ò Ñ"Ô"Ð"Ø# Aœ×/Ò/Ñ1Ô1�Ø# Aœ×/Ò/Ñ1Ô1�Ø# Aœ×/Ò/Ñ1Ô1��øõ	 ”
× Ò Ñ"Ô"Ð"Ý”
× Ò Ñ"Ô"Ð"Ø# Aœ×/Ò/Ñ1Ô1�Ø# Aœ×/Ò/Ñ1Ô1�Ø# Aœ×/Ò/Ñ1Ô1�Ð1Ð1Ð1Ð1�ðW+	2ð +	2ð +	2ñ +	2ô +	2ð +	2ð +	2ð +	2ð +	2ð +	2ð +	2øøøð +	2ð +	2ð +	2ð +	2õZ ØØØØØ%ØØØð	
ñ 	
ô 	
ð 		
s†   ¤0J+ÁA+Á*J+Á+BÂ
J+ÂBÂJ+ÂB$Â#HÂ$
FÂ.BEÅHÅFÅE<Å7HÅ<FÆHÆBJ+ÈBJÊJ+Ê+J/Ê2J/Útemp_dirústr | os.PathLike[str] | Noneúcabc.Iterator[str]c              #  óŠ  K  — t          j        ¦   «         }t          j        |¬¦  «        }t          j        |¦  «         	 |V — t          j        |¦  «         |€(	 t          j        |¦  «         dS # t          $ r Y dS w xY wdS # t          j        |¦  «         |€&	 t          j        |¦  «         w # t          $ r Y w w xY ww xY w)aã  A context manager that creates a temporary directory and
        changes the current working directory to it. This isolates tests
        that affect the contents of the CWD to prevent them from
        interfering with each other.

        :param temp_dir: Create the temporary directory under this
            directory. If given, the created directory is not removed
            when exiting.

        .. versionchanged:: 8.0
            Added the ``temp_dir`` parameter.
        )ÚdirN)rÕ   ÚgetcwdÚtempfileÚmkdtempÚchdirÚshutilÚrmtreeÚOSError)r   rú   ÚcwdÚdts       r   Úisolated_filesystemzCliRunner.isolated_filesystem  sï   è è € õ  Œi‰kŒkˆÝÔ (Ð+Ñ+Ô+ˆÝ
Œ�‰Œˆð		ØˆHˆHˆHåŒH�S‰MŒMˆMàÐðÝ”M "Ñ%Ô%Ð%Ð%Ð%øÝð ð ð Ø�D�Dðøøøð  Ðøõ ŒH�S‰MŒMˆMàÐðÝ”M "Ñ%Ô%Ð%Ð%øÝð ð ð Ø�Dðøøøð  øøøsB   Á B ÁA1 Á1
A?Á>A?ÂCÂB1Â0CÂ1
B>Â;CÂ=B>Â>C)rŸ   NFT)
rx   r   r    r¡   r¢   r£   r¤   r£   r   r   )r¦   r   r   r   r    )rª   r¡   r   r«   )NNF)r   rw   r    r¡   r°   r£   r   r±   )NNNNF)r¦   r   ré   rê   r   rw   r    r¡   r¤   rË   r°   r£   rë   r   r   r‚   )rú   rû   r   rü   )rF   rG   rH   rZ   r   r©   r¯   Ú
contextlibÚcontextmanagerrè   rù   r  r5   r   r   r„   r„   á   s  € € € € € ðð ð. Ø48Ø Ø!%ð
1ð 
1ð 
1ð 
1ð 
1ð"ð "ð "ð "ð AEðð ð ð ð ð Ôð 37Ø48Øð	Q7ð Q7ð Q7ð Q7ñ ÔðQ7ðl 15Ø26Ø48Ø(,Øðo
ð o
ð o
ð o
ð o
ðb Ôà8<ðð ð ð ñ Ôðð ð r   r„   )rI   rJ   r   rK   )r   rw   rx   r   r   r   )&Ú
__future__r   Úcollections.abcÚabcÚcabcr	  r`   rÕ   rï   r  r½   r   Útypingr{   Útypesr   r¼   r   r   r   r	   r
   ÚTYPE_CHECKINGÚ	_typeshedr   Úcorer   r   r
  rM   ra   rO   r^   ÚTextIOWrapperre   r€   r‚   r„   r5   r   r   ú<module>r     sh  ðØ "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	Ø €€€Ø €€€Ø 
€
€
€
Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (à„?ð Ø(Ð(Ð(Ð(Ð(Ð(àÐÐÐÐÐð!ð !ð !ð !ð !ñ !ô !ð !ðD Ôðð ð ñ Ôðð ð  ð  ð  ð  �"”*ñ  ô  ð  ð&Cð Cð Cð Cð Cñ Cô Cð Cðð ð ð ð ˜"Ô*ñ ô ð ð0ð ð ð ð(K4ð K4ð K4ð K4ð K4ñ K4ô K4ð K4ð\Tð Tð Tð Tð Tñ Tô Tð Tð Tð Tr   