Ë
   ‰>œÌ º®ã                   ó  — d Z ddlZddlmc 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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mZmZmZmZmZ ddl	mZ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' ddl(m)Z)m*Z*m+Z+m,Z, ddlm-Z- ddl.m/Z0 ddl1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z8 ddl9m:Z:m;Z;m<Z< ddl=m>Z>m?Z? ddl@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZO ddlPmQZQ ddlRmSZSmTZTmUZUmVZVmWZW ddlXmYZY ddlZm[Z[m\Z\ ddl]m^Z^m_Z_m`Z` ddlambZbmcZc ddldmeZemfZf ddlgmhZh ddlimjZj ddlkmlZlmmZmmnZnmoZompZpmqZq ddlrmsZs ddltmuZumvZvmwZwmxZxmyZy ddlzm{Z{m|Z|m}Z}m~Z~mZm€Z€m�Z�m‚Z‚mƒZƒm„Z„ ddl…m†Z†m‡Z‡mˆZˆm‰Z‰mŠZŠ dd l‹mŒZŒ dd!l�mŽZŽm�Z�m�Z�m‘Z‘ dd"l’m“Z“m”Z”m•Z• dd#l–m—Z— dd$l˜m™Z™mšZšm›Z› dd%lœm�Z� dd&lžmŸZŸ dd'l m¡Z¡ dd(l¢m£Z£  e+d)e¬*«      Z¤d+Z¥d,Z¦dZ§ eŸd-„ ¬.«      Z¨ ed,d+¬/«       G d0„ d1«      «       Z© ed,d,¬/«       G d2„ d3«      «       Zª G d4„ d5«      Z«d6ed7ee¤ge¤f   fd8„Z¬d9e­d:e®d7ee¤ge¤f   fd;„Z¯d<eeY   d7e­fd=„Z°d<eeY   d7e®fd>„Z±d:e®d7eeY   fd?„Z²eKd@œdA„Z³dB„ Z´dC„ ZµdD„ Z¶ ed,d+¬/«       G dE„ dF«      «       Z·dGe)dHee¸   dIe¹e­e¸f   dJe¹e­ešf   dKe¹e­e#f   d7eºee¸   e¹e­e¸f   e·f   fdL„Z»dM„ Z¼d7eºe½e¾   dNf   fdO„Z¿dP„ ZÀdQ„ ZÁdR„ ZÂ e+dSe¾¬*«      ZÃdTeÄeÃ   d7eÅeÃ   fdU„ZÆe�jŽ                  d7edV   fdW„«       ZÈ G dX„ dY«      ZÉdZeÅeª   d7eÅeª   fd[„ZÊ	 dpdd\œd]„ZËe�jŽ                  dqd^„«       ZÌ ed+d+¬/«       G d_„ d`«      «       ZÍe,dae'd7eedNee)e)df   dz  f   geg df   f   fdb„«       ZÎe,dceše)   d7eedNee)e)df   dz  f   gedd   f   fde„«       ZÎe,dfeše)   e'z  d7eedNee)e)df   dz  f   gedd   f   fdg„«       ZÎdceše)   e'z  dfeše)   e'z  d7eedNee)e)df   dz  f   gedd   f   fdh„ZÎddddiœdješe™   dkee)geÏf   dle8dz  dme%dz  dne®dz  d7e™fdo„ZÐy)rzFThis module provides the core primitives of Hypothesis, such as given.é    N)Údefaultdict)ÚCallableÚ	CoroutineÚ	GeneratorÚHashableÚIterableÚSequence)Ú	dataclassÚfield©Úpartial)Ú	Parameter)ÚRandom)ÚLock)ÚEllipsisType)ÚAnyÚBinaryIOÚTypeVarÚoverload)ÚTestCase)Ú
strategies)ÚHealthCheckÚPhaseÚ	VerbosityÚall_settingsÚlocal_settingsÚsettings)ÚBuildContextÚcurrent_build_contextÚcurrently_in_test_context)Úchoices_from_bytesÚchoices_to_bytes)ÚBackendCannotProceedÚDeadlineExceededÚDidNotReproduceÚFailedHealthCheckÚFlakyFailureÚFlakyReplayÚFoundÚFrozenÚHypothesisExceptionÚHypothesisWarningÚInvalidArgumentÚNoSuchExampleÚStopTestÚUnsatisfiableÚUnsatisfiedAssumption)Úobservability)ÚPYPYÚadd_noteÚbad_django_TestCaseÚget_type_hintsÚint_from_bytes)ÚChoiceT)ÚConjectureDataÚStatus)ÚBUFFER_SIZEÚConjectureRunnerÚ
ExitReason)Úensure_free_stackframesÚgc_cumulative_time)ÚBytestringProviderÚPrimitiveProvider)Úsort_key)Údeterministic_PRNG)ÚInterestingOriginÚ_last_frame_locationÚcurrent_pytest_itemÚformat_exceptionÚget_trimmed_tracebackÚis_hypothesis_file)Úfail_health_check)ÚInfoObservationÚInfoObservationTypeÚdeliver_observationÚmake_testcaseÚobservability_enabled)
Úconvert_positional_argumentsÚdefine_function_signatureÚfunction_digestÚget_pretty_function_descriptionÚget_signatureÚimpersonateÚis_mockÚnicereprÚproxiesÚ	repr_call)ÚMONITORING_TOOL_IDÚTraceÚTracerÚexplanatory_linesÚtractable_coverage_report)Ú
check_type)Úcurrent_verbosityÚreportÚverbose_reportÚwith_reporter)Údescribe_statisticsÚdescribe_targetsÚnote_statistics)ÚNOTHING)ÚExÚSearchStrategyÚcheck_strategy©Únot_set)ÚThreadLocal)ÚRepresentationPrinter)Ú__version__ÚTestFunc)ÚboundFTc                   ó   — y ©N© rt   ó    úT/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/hypothesis/core.pyú<lambda>rw   ¥   ó   � ru   )Ú_hypothesis_global_random)ÚslotsÚfrozenc                   óZ   — e Zd ZU eed<   eed<    ed¬«      Zeed<    ed¬«      Zeed<   y)ÚExampleÚargsÚkwargsN)ÚdefaultÚraisesÚreason)Ú__name__Ú
__module__Ú__qualname__r   Ú__annotations__r   r�   r‚   rt   ru   rv   r}   r}   ¨   s*   … à
ƒIØƒKá Ô%€FˆCÓ%Ù Ô%€FˆCÔ%ru   r}   c                   ó(   — e Zd ZU ee   ed<   eed<   y)ÚReportableErrorÚ	fragmentsÚ	exceptionN)rƒ   r„   r…   ÚlistÚstrr†   ÚBaseExceptionrt   ru   rv   rˆ   rˆ   ±   s   … à�C‰yÓØÔru   rˆ   c                   ó„   — e Zd ZdZdededdfd„Zdedefd„Z	 dd	ed
œde	de
dee   eee   df   z  dd fd„Zde
dd fd„Zy)ÚexampleaP  
    Add an explicit input to a Hypothesis test, which Hypothesis will always
    try before generating random inputs. This combines the randomized nature of
    Hypothesis generation with a traditional parametrized test.

    For example:

    .. code-block:: python

        @example("Hello world")
        @example("some string with special significance")
        @given(st.text())
        def test_strings(s):
            pass

    will call ``test_strings("Hello World")`` and
    ``test_strings("some string with special significance")`` before generating
    any random inputs. |@example| may be placed in any order relative to |@given|
    and |@settings|.

    |Explicit examples| from |@example| are run in the
    |Phase.explicit| phase. Explicit examples do not count towards
    |settings.max_examples|. Note that explicit examples added by |@example| do
    not shrink. If an explicit example fails, Hypothesis will stop and report
    the failure without generating any random inputs.

    |@example| can also be used to easily reproduce a failure. For instance, if
    Hypothesis reports that ``f(n=[0, math.nan])`` fails, you can add
    ``@example(n=[0, math.nan])`` to your test to quickly reproduce that failure.

    Arguments to ``@example``
    -------------------------

    Arguments to |@example| have the same behavior and restrictions as arguments
    to |@given|. This means they may be either positional or keyword arguments
    (but not both in the same |@example|):

    .. code-block:: python

        @example(1, 2)
        @example(x=1, y=2)
        @given(st.integers(), st.integers())
        def test(x, y):
            pass

    Noting that while arguments to |@given| are strategies (like |st.integers|),
    arguments to |@example| are values instead (like ``1``).

    See the :ref:`given-arguments` section for full details.
    r~   r   ÚreturnNc                 ó‚   — |r|rt        d«      ‚|s|st        d«      ‚g | _        t        t        |«      |«      | _        y )Nz8Cannot mix positional and keyword arguments for examplesz-An example must provide at least one argument)r-   Úhypothesis_explicit_examplesr}   ÚtupleÚ_this_example)Úselfr~   r   s      rv   Ú__init__zexample.__init__î   sE   € Ù‘FÜ!ØJóð ñ ™Ü!Ð"QÓRÐRà;=ˆÔ)Ü$¤U¨4£[°&Ó9ˆÕru   Útestc                 óŠ   — t        |d«      s| j                  |_        |j                  j                  | j                  «       |S )Nr’   )Úhasattrr’   Úappendr”   )r•   r—   s     rv   Ú__call__zexample.__call__ù   s:   € Ü�tÐ;Ô<Ø04×0QÑ0QˆDÔ-Ø×)Ñ)×0Ñ0°×1CÑ1CÔDØˆru   Ú )r‚   r�   Ú	conditionr‚   r�   .c                óB  — t        t        |d«       t        t        |d«       t        |t        «      rt        |t        «      s3t        |t        «      r|rt        d„ |D «       «      st        d|›d�«      ‚|r't        j                  | j                  ||¬«      | _        | S )a  Mark this example as an expected failure, similarly to
        :obj:`pytest.mark.xfail(strict=True) <pytest.mark.xfail>`.

        Expected-failing examples allow you to check that your test does fail on
        some examples, and therefore build confidence that *passing* tests are
        because your code is working, not because the test is missing something.

        .. code-block:: python

            @example(...).xfail()
            @example(...).xfail(reason="Prices must be non-negative")
            @example(...).xfail(raises=(KeyError, ValueError))
            @example(...).xfail(sys.version_info[:2] >= (3, 12), reason="needs py 3.12")
            @example(...).xfail(condition=sys.platform != "linux", raises=OSError)
            def test(x):
                pass

        .. note::

            Expected-failing examples are handled separately from those generated
            by strategies, so you should usually ensure that there is no overlap.

            .. code-block:: python

                @example(x=1, y=0).xfail(raises=ZeroDivisionError)
                @given(x=st.just(1), y=st.integers())  # Missing `.filter(bool)`!
                def test_fraction(x, y):
                    # This test will try the explicit example and see it fail as
                    # expected, then go on to generate more examples from the
                    # strategy.  If we happen to generate y=0, the test will fail
                    # because only the explicit example is treated as xfailing.
                    x / y
        r�   r‚   c              3   ó`   K  — | ]&  }t        |t        «      xr t        |t        «      –— Œ( y ­wrs   )Ú
isinstanceÚtypeÚ
issubclassr�   )Ú.0Úrs     rv   ú	<genexpr>z example.xfail.<locals>.<genexpr>.  s+   è ø€ ò ØIJ”
˜1œdÓ#ÒD¬
°1´mÓ(DÓDñùs   ‚,.zraises=z6 must be an exception type or tuple of exception types)r�   r‚   )r_   ÚboolrŒ   r    r¡   r¢   r�   r“   Úallr-   ÚdataclassesÚreplacer”   )r•   r�   r‚   r�   s       rv   Úxfailzexample.xfailÿ   sš   € ôP 	”4˜ KÔ0Ü”3˜ Ô)ä�vœtÔ$¬°F¼MÔ)Jä�vœuÔ%ÙÜñ ØNTôô ô "Ø�6�)ÐQÐRóð ñ Ü!,×!4Ñ!4Ø×"Ñ"¨6¸&ô"ˆDÔð ˆru   Úwhencec                ó<   — t        |t        «      st        d«      ‚| S )aœ  Attach a machine-readable label noting what the origin of this example
        was. |example.via| is completely optional and does not change runtime
        behavior.

        |example.via| is intended to support self-documenting behavior, as well as
        tooling which might add (or remove) |@example| decorators automatically.
        For example:

        .. code-block:: python

            # Annotating examples is optional and does not change runtime behavior
            @example(...)
            @example(...).via("regression test for issue #42")
            @example(...).via("discovered failure")
            def test(x):
                pass

        .. note::

            `HypoFuzz <https://hypofuzz.com/>`_ uses |example.via| to tag examples
            in the patch of its high-coverage set of explicit inputs, on
            `the patches page <https://hypofuzz.com/example-dashboard/#/patches>`_.
        z.via() must be passed a string)r    rŒ   r-   )r•   r«   s     rv   Úviazexample.via;  s   € ô0 ˜&¤#Ô&Ü!Ð"BÓCÐCàˆru   )T)rƒ   r„   r…   Ú__doc__r   r–   rp   r›   r�   r¦   rŒ   r¡   r“   rª   r­   rt   ru   rv   r�   r�   º   sŸ   „ ñ1ðf	:˜cð 	:¨Sð 	:°Tó 	:ð˜Xð ¨(ó ð ð:ð ØHUò:àð:ð ð	:ð
 �]Ñ# e¨D°Ñ,?ÀÐ,DÑ&EÑEð:ð 
ó:ðx˜#ð  Yô ru   r�   Úseedr�   c                 ó   ‡ — ˆ fd„}|S )a9  
    Seed the randomness for this test.

    ``seed`` may be any hashable object. No exact meaning for ``seed`` is provided
    other than that for a fixed seed value Hypothesis will produce the same
    |test cases| (assuming that there are no other sources of nondeterminisim, such
    as timing, hash randomization, or external state).

    For example, the following test function and |RuleBasedStateMachine| will
    each generate the same series of test cases each time they are executed:

    .. code-block:: python

        @seed(1234)
        @given(st.integers())
        def test(n): ...

        @seed(6789)
        class MyMachine(RuleBasedStateMachine): ...

    If using pytest, you can alternatively pass ``--hypothesis-seed`` on the
    command line.

    Setting a seed overrides |settings.derandomize|, which is designed to enable
    deterministic CI tests rather than reproducing observed failures.

    Hypothesis will only print the seed which would reproduce a failure if a test
    fails in an unexpected way, for instance inside Hypothesis internals.
    c                 óT   •— ‰| _         t        | dd «      }t        |d ¬«      | _        | S )NÚ!_hypothesis_internal_use_settings)Údatabase)Ú_hypothesis_internal_use_seedÚgetattrÚSettingsr²   )r—   Úcurrent_settingsr¯   s     €rv   Úacceptzseed.<locals>.acceptx  s4   ø€ Ø-1ˆÔ*Ü" 4Ð)LÈdÓSÐÜ19Ø tô2
ˆÔ.ð ˆru   rt   )r¯   r¸   s   ` rv   r¯   r¯   Y  s   ø€ ô>ð €Mru   ÚversionÚblobc                 ó   ‡ ‡— ˆˆ fd„}|S )aô  
    Run the |test case| corresponding to the binary ``blob`` in order to reproduce a
    failure. ``blob`` is a serialized version of the internal input representation
    of Hypothesis.

    A test decorated with |@reproduce_failure| always runs exactly one test case,
    which is expected to cause a failure. If the provided ``blob`` does not
    cause a failure, Hypothesis will raise |DidNotReproduce|.

    Hypothesis will print an |@reproduce_failure| decorator if
    |settings.print_blob| is ``True`` (which is the default in CI).

    |@reproduce_failure| is intended to be temporarily added to your test suite in
    order to reproduce a failure. It is not intended to be a permanent addition to
    your test suite. Because of this, no compatibility guarantees are made across
    Hypothesis versions, and |@reproduce_failure| will error if used on a different
    Hypothesis version than it was created for.

    .. seealso::

        See also the :doc:`/tutorial/replaying-failures` tutorial.
    c                 ó   •— ‰‰f| _         | S rs   )Ú*_hypothesis_internal_use_reproduce_failure)r—   rº   r¹   s    €€rv   r¸   z!reproduce_failure.<locals>.acceptž  s   ø€ Ø;BÀD¸/ˆÔ7Øˆru   rt   )r¹   rº   r¸   s   `` rv   Úreproduce_failurer¾   †  s   ù€ õ0ð €Mru   Úchoicesc                 ó.   — dt         ›dt        | «      ›d�S )Nz@reproduce_failure(ú, ú))ro   Úencode_failure)r¿   s    rv   Úreproduction_decoratorrÄ   ¥  s   € Ø ¤ ¨r´.ÀÓ2IÐ1LÈAÐNÐNru   c                 ó°   — t        | «      }t        j                  |«      }t        |«      t        |«      k  rd|z   }nd|z   }t	        j
                  |«      S )Nó   ó    )r"   ÚzlibÚcompressÚlenÚbase64Ú	b64encode)r¿   rº   Ú
compresseds      rv   rÃ   rÃ   ©  sN   € Ü˜GÓ$€DÜ—‘˜tÓ$€JÜ
ˆ:ƒœ˜T›Ò"Ø�zÑ!‰à�t‰|ˆÜ×Ñ˜DÓ!Ð!ru   c                 ót  — 	 t        j                  | «      }|d d }|dk(  r|dd  }n0|dk(  r	 t	        j
                  |dd  «      }nt        d| ›d|›�«      ‚t        |«      }|€t        d| ›�«      ‚|S # t        $ r t        d| ›�«      d ‚w xY w# t        j                  $ r}t        d| ›�«      |‚d }~ww xY w)	NzInvalid base64 encoded string: é   rÇ   rÆ   z"Invalid zlib compression for blob zCould not decode blob z: Invalid start byte z,Invalid serialized choice sequence for blob )rË   Ú	b64decodeÚ	Exceptionr-   rÈ   Ú
decompressÚerrorr!   )rº   ÚdecodedÚprefixÚerrr¿   s        rv   Údecode_failurer×   ³  s÷   € ðTÜ×"Ñ" 4Ó(ˆð �R�aˆ[€FØ�‚Ø˜!˜"�+‰Ø	�5Šð	Ü—o‘o g¨a¨b kÓ2‰Gô Ø$ T HÐ,AÀ&ÀÐLó
ð 	
ô ! Ó)€GØ€ÜÐ LÈTÈHÐUÓVÐVà€Nøô- ò TÜÐ ?À¸xÐHÓIÈtÐSðTûô �z‰zò 	Ü!Ø4°T°HÐ=óàðûð	ús"   ‚A4 ­B Á4BÂB7Â#B2Â2B7©Úexcc                óf   ‡ ‡— t        |«      ˆˆ fd„«       }d|_        t        |||¬«      |_        |S )Nc                  ó   •—  ‰‰«      ‚rs   rt   )Ú	argumentsr   rÙ   Úmessages     €€rv   Úwrapped_testz_invalid.<locals>.wrapped_testÐ  s   ø€ á�'‹lÐru   T)Ú
inner_testÚ_get_fuzz_targetÚ_given_kwargs)rU   Úis_hypothesis_testÚHypothesisHandleÚ
hypothesis)rÝ   rÙ   r—   Úgiven_kwargsrÞ   s   ``   rv   Ú_invalidræ   Ï  sB   ù€ Ü�Óôó ðð '+€LÔ#Ü.ØØ%Ø"ô€LÔð
 Ðru   c                 óÎ  — t        t        | |¬«      }|s
|s |d«      S t        |j                  j	                  «       «      }|D �cg c]  }|j
                  |j                  u sŒ|‘Œ }}|D �cg c]  }|j
                  |j                  u sŒ|‘Œ }}|r||k7  r |d«      S t        |«      t        |«      kD  r0 |d| j                  › dt        |«      › dt        |«      › d|›�«      S d|v r |d	«      S |r
|r |d
«      S |D �	�cg c]$  }	|	||z   D �ch c]  }|j                  ’Œ c}vsŒ#|	‘Œ& }
}	}|
ra|g k(  s|d   j
                  |d   j                  ur>|
d   }d}|t        v rd|› d||   ›d�} || j                  › d|›d|› d||   ›d|› �	«      S t        d„ |D «       «      r |d«      S t        |«      D ��cg c]  \  }}|t        u sŒ|›d|› d�‘Œ c}}|j!                  «       D ��cg c]  \  }}|t        u sŒ|› d|›�‘Œ c}}z   }|r6t        |«      dkD  rdnd} |d|› d�dj#                  |«      z   t$        ¬«      S yc c}w c c}w c c}w c c}}	w c c}}w c c}}w ) a\  Check the arguments to ``@given`` for basic usage constraints.

    Most errors are not raised immediately; instead we return a dummy test
    function that will raise the appropriate error if it is actually called.
    When the user runs a subset of tests (e.g via ``pytest -k``), errors will
    only be reported for tests that actually ran.
    ©r—   rå   z/given must be called with at least one argumentzvpositional arguments to @given are not supported with varargs, varkeywords, positional-only, or keyword-only argumentsz"Too many positional arguments for z,() were passed to @given - expected at most z arguments, but got ú .z�... was passed as a positional argument to @given, but may only be passed as a keyword argument or as the sole argument of @givenz5cannot mix positional and keyword arguments to @givenéÿÿÿÿr   rœ   z. Did you mean @settings(ú=z)?z&() got an unexpected keyword argument z, from `z` in @givenc              3   óL   K  — | ]  }|j                   |j                  u–— Œ y ­wrs   )r€   Úempty©r£   Úps     rv   r¥   z"is_invalid_test.<locals>.<genexpr>  s   è ø€ Ò
4¨ˆ1�9‰9˜AŸG™GÔ#Ñ
4ùó   ‚"$z0Cannot apply @given to a function with defaults.z (arg rÂ   rÏ   r   Ústrategyz&Cannot generate test cases from empty ú: rÁ   rØ   N)r   ræ   r‹   Ú
parametersÚvaluesÚkindÚPOSITIONAL_OR_KEYWORDÚKEYWORD_ONLYrÊ   rƒ   ÚnameÚVAR_KEYWORDr   ÚanyÚ	enumeraterg   ÚitemsÚjoinr0   )r—   Úoriginal_sigÚgiven_argumentsrå   ÚinvalidÚparamsrï   Ú
pos_paramsÚkwonly_paramsÚkÚextra_kwargsÚargÚextraÚidxÚsrø   rí   Ústratss                     rv   Úis_invalid_testr  Ý  sÒ  € ô ”h T¸ÔE€Gá™|ÙÐHÓIÐIä�,×)Ñ)×0Ñ0Ó2Ó3€FØ#ÖI˜ q§v¡v°×1HÑ1HÒ'H’!ÐI€JÐIØ &ÖC˜1¨!¯&©&°A·N±NÒ*B’QÐC€MÐCÙ˜6 ZÒ/ÙðFó
ð 	
ô
 ˆ?Óœc *›oÒ-ÙØ0°·±°ð @)Ü),¨Z«Ð(9ð :"Ü"% oÓ"6Ð!7°q¸Ð8KðMó
ð 	
ð ˆoÑÙðMó
ð 	
ñ
 ™<ÙÐNÓOÐOà÷Ø 1¸ZÈ-Ñ=WÖ,X¸¨Q¯V«VÒ,XÒ#XŠð€Lñ ñ ˜ 2š¨°©¯©ÀÀrÁ
×@VÑ@VÑ)VØ˜1‰oˆØˆØ”,ÑØ/°¨u°A°lÀ3Ñ6GÐ5JÈ"ÐMˆEÙØ�}‰}ˆoÐCÀCÀ7ð KØ�E˜˜<¨Ñ,Ð/¨{¸5¸'ðCó
ð 	
ô Ñ
4¨VÔ
4Ô4ÙÐIÓJÐJô
 ,5°_Ó+E÷Ù!'  aÈÌgÊˆ1ˆ%ˆv�c�U˜!Òóà(4×(:Ñ(:Ó(<×M™W˜T 1ÀÄWÂˆDˆ6��1�%ŠÓMñN€Eñ Ü!$ U£¨a¢‘°ZˆÙØ4°V°H¸BÐ?À$Ç)Á)ÈEÓBRÑRÜô
ð 	
ð ùòW JùÚCùò. -Yùóùó"ùãMsN   ÁIÁ$IÁ.IÂIÄIÄIÄ%IÄ*IÆ<IÇ
IÇ-I!Ç>	I!ÉIc              #   ó‚  K  — t        | t        «      }|�sddt        j                  «       v st	        j
                  t         «      rt	        j                  t         «      nddt        j                  «       v st	        j
                  | «      rt	        j                  | «      nddt        j                  «       v st	        j
                  t        «      rt	        j                  t        «      ndt	        j                  |«      dœz  }t        t	        j                  |«      «      ‚d }|j                  j                  «       D �cg c]&  }|j                  |j                  u r|j                  ‘Œ( }}t        t        |dd«      «      D �]ª  }	t        |	t         «      }|�sddt        j                  «       v st	        j
                  t         «      rt	        j                  t         «      nddt        j                  «       v st	        j
                  |	«      rt	        j                  |	«      ndd	t        j                  «       v st	        j
                  t         «      rt	        j                  t         «      nd	t	        j                  |«      dœz  }t        t	        j                  |«      «      ‚d }|	j"                  �rJ|	j$                  }
|
 }|syd
dt        j                  «       v st	        j
                  |	«      rt	        j                  |	«      ndt	        j                  |
«      dœz  }t        t	        j                  |«      «      ‚d x}
}t'        d„ |j                  j                  «       D «       «      rt)        d«      ‚t+        |	j"                  «      t+        |«      kD  r-t)        dt+        |«      › dt+        |	j"                  «      › �«      ‚t-        t/        |t+        |	j"                  «       d  |	j"                  d¬«      «      }nt-        |	j$                  «      }dj1                  d„ t3        |j4                  j6                  «      D «       «      }dj1                  d„ t3        |«      D «       «      }||k7  rt)        d|› d|› �«      d ‚t9        |«      }|j:                  } ||«      }|�s+ddt        j                  «       v st	        j
                  t8        «      rt	        j                  t8        «      nddt        j                  «       v st	        j
                  |«      rt	        j                  |«      ndt	        j                  |«      t	        j                  |«      dt        j                  «       v st	        j
                  |«      rt	        j                  |«      ndt	        j                  |«      dœz  }t        t	        j                  |«      «      ‚d x}x}}|j=                  |«       t>        j@                  | jB                  jD                  vr�Œ‰tG        | jB                  «      5  g }tI        jJ                  g «      }	 tM        | jN                  |dd|¬«      }tQ        |jR                  «      5  |	jT                  €	 |«        �nVdj1                  d„ |D «       «      dj1                  d„ |jW                  «       D «       «      z   }	  |«        d|	jX                  › �t[        |	jX                  «      z  }|	jT                  t\        u rd }n¥t        |	jT                  t^        «      s|	jT                  j`                  }ntt+        |	jT                  «      d!k(  r|	jT                  d"   j`                  }nBdj1                  d#„ |	jT                  d d$ D «       «      d%|	jT                  d$   j`                  › �z   }|jc                  «       d"   d&v }t        d'd(|z  › d)|› d*|› d+|› d,�	«      ‚d d d «       |r²|d"   }|jŒ                  }d2} ||«      }|std3t	        j                  |«      t	        j                  |«      t	        j                  |«      t	        j                  |«      d4œz  }t        t	        j                  |«      «      ‚d x}x}x}}|d"   j�                  d2d5d!«      |d"<   |j‘                  «        t“        «       rEt•        | j–                  | j˜                  |d6| jš                  | jœ                  ¬7«      }tŸ        |«       	 |r4t¡        |d"   j�                  d8d9d!«      «       |d!d  D ]  } t¡        | «       Œ d d d «       �Œ­ y c c}w # te        «       $ rR}t        ||	jT                  «      s‚ | jf                  ji                  tk        | jl                  ||«      «       Y d }~�Œ¼d }~w|	jT                  $ r}t)        d-|› d.|›d/�«      |‚d }~ww xY w# 1 sw Y   �ŒëxY w# tn        $ rR tq        jr                  tt        «      5  |jw                  tx        jz                  «       d d d «       n# 1 sw Y   nxY wY �ŒHt\        $ �rj}|j}                  t        «       «      }t        |te        «       «      rTt'        d0„ |	j"                  t_        |	j$                  j                  «       «      z   D «       «      rt�        d1«      }||_A        |}tq        jr                  tt        «      5  |jw                  tx        jz                  «       d d d «       n# 1 sw Y   nxY wt…        ||«      –— | jB                  j†                  �rQtˆ        �rJt        |te        «       «      �r5t        |t‹        «       «      �s Y d }~|r²|d"   }|jŒ                  }d2} ||«      }|std3t	        j                  |«      t	        j                  |«      t	        j                  |«      t	        j                  |«      d4œz  }t        t	        j                  |«      «      ‚d x}x}x}}|d"   j�                  d2d5d!«      |d"<   |j‘                  «        t“        «       rDt•        | j–                  | j˜                  |d6| jš                  | jœ                  ¬7«      }tŸ        |«       d d d «       �
ŒðY d }~|r²|d"   }|jŒ                  }d2} ||«      }|std3t	        j                  |«      t	        j                  |«      t	        j                  |«      t	        j                  |«      d4œz  }t        t	        j                  |«      «      ‚d x}x}x}}|d"   j�                  d2d5d!«      |d"<   |j‘                  «        t“        «       rDt•        | j–                  | j˜                  |d6| jš                  | jœ                  ¬7«      }tŸ        |«       d d d «        y d }~ww xY w# |r²|d"   }|jŒ                  }d2} ||«      }|std3t	        j                  |«      t	        j                  |«      t	        j                  |«      t	        j                  |«      d4œz  }t        t	        j                  |«      «      ‚d x}x}x}}|d"   j�                  d2d5d!«      |d"<   |j‘                  «        t“        «       rEt•        | j–                  | j˜                  |d6| jš                  | jœ                  ¬7«      }tŸ        |«       w w xY w# 1 sw Y   �Œ:xY w­w):Nz5assert %(py4)s
{%(py4)s = %(py0)s(%(py1)s, %(py2)s)
}r    ÚstateÚStateForActualGivenExecution)Úpy0Úpy1Úpy2Úpy4r’   rt   r�   r}   z.assert not %(py2)s
{%(py2)s = %(py0)s.kwargs
})r  r  c              3   óL   K  — | ]  }|j                   |j                  u –— Œ y ­wrs   )rõ   ÚPOSITIONAL_ONLYrî   s     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>-  s$   è ø€ ò Ø01�—‘˜!×+Ñ+Ô+ñùrð   ztCannot pass positional arguments to @example() when decorating a test function which has positional-only parameters.z:example has too many arguments for test. Expected at most z	 but got T©ÚstrictrÁ   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrs   ©Úrepr©r£   r  s     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>>  s   è ø€ ò 
ØŒD��Gñ
ùó   ‚c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrs   r  r  s     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>A  s   è ø€ ÒH¨A¤ Q§ÑHùr  z/Inconsistent args: @given() got strategies for z#, but @example() got arguments for zjassert %(py8)s
{%(py8)s = %(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py0)s(%(py1)s)
}.isdisjoint
}(%(py6)s)
}ÚsetÚexample_kwargsr   )r  r  Úpy3Úpy5Úpy6Úpy8)Úis_finalÚprint_test_caser  c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wrs   ©rW   )r£   Úxs     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>`  s   è ø€ Ò(H¸¬°!¯Ñ(Hùr  c              3   óB   K  — | ]  \  }}|› d t        |«      › �–— Œ y­w)rë   Nr&  ©r£   r  Úvs      rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>`  s*   è ø€ ò UÙ59°Q¸˜q˜c ¤8¨A£; -Ô0ñUùs   ‚z	 because rŠ   rÏ   r   c              3   ó4   K  — | ]  }|j                   –— Œ y ­wrs   )rƒ   )r£   Úexs     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>€  s   è ø€ Ò-X¸b¨b¯k­kÑ-Xùs   ‚rê   z, or ÚAEIOUz
Expected aÚnré   z from @example(rÂ   z, but no exception was raised.z	@example(z) raised an expected z6, but Hypothesis does not treat this as a test failurec              3   ó<   K  — | ]  }t        |t        «      –— Œ y ­wrs   )r    ri   )r£   r  s     rv   r¥   z,execute_explicit_examples.<locals>.<genexpr>š  s!   è ø€ ò Jàô ˜s¤N×3ñJùs   ‚z¼The @example() decorator expects to be passed values, but you passed strategies instead.  See https://hypothesis.readthedocs.io/en/latest/reference/api.html#hypothesis.example for details.zFailing test casezLassert %(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.startswith
}(%(py5)s)
})r  r  r   Úpy7zFailing explicit examplezexplicit example)Ú	run_startÚpropertyÚdataÚhow_generatedÚrepresentationÚtimingÚFailingÚTrying)Qr    r  Ú@py_builtinsÚlocalsÚ
@pytest_arÚ_should_repr_global_nameÚ	_safereprÚAssertionErrorÚ_format_explanationró   rô   rõ   rö   rø   Úreversedrµ   r}   r~   r   rú   r-   rÊ   ÚdictÚziprý   Úsortedrä   rá   r  Ú
isdisjointÚupdater   Úexplicitr   Úphasesr   r9   Úfor_choicesr   Úexecute_oncerc   rš   r�   rü   r‚   r¦   r�   r“   rƒ   ÚupperÚfailure_exceptions_to_catchÚxfail_example_reprsÚaddrY   r—   r1   Ú
contextlibÚsuppressr/   Úconclude_testr:   ÚINVALIDÚwith_tracebackrH   r,   Ú	__cause__rˆ   Úreport_multiple_bugsÚpytest_shows_exceptiongroupsÚskip_exceptions_to_reraiseÚ
startswithr©   ÚfreezerO   rN   Ú_start_timestampÚtest_identifierÚ_string_reprÚ_timing_featuresrM   rb   )!r  rÞ   rÜ   r   rþ   Ú@py_assert3Ú@py_format5rï   Úposargsr�   Ú@py_assert1Ú@py_format4r  Ú	given_kwsÚexample_kwsÚ@py_assert2Ú@py_assert4Ú@py_assert7Ú@py_format9Úfragments_reportedÚ
empty_dataÚexecute_exampleÚbitsr‚   rø   ÚvowelrÖ   ÚnewÚ@py_assert0Ú@py_assert6Ú@py_format8ÚtcÚfs!                                    rv   Úexecute_explicit_examplesrs    s¥  è ø€ Ü�eÔ9Ó:Ð:Ò:×:×:×:×:Õ:Œ:×:×:Ó:Œ:×:×:×:×:×:Ò:�e×:×:Ó:�e×:×:×:×:×:Ò:Ô9×:×:Ó:Ô9×:×:Ô:Ð:×:×:×:×:×:Ð:ð ×(Ñ(×/Ñ/Ó1öàØ�6‰6�Q×,Ñ,Ñ,ð 	
�‹ð€Gð ô œG LÐ2PÐRTÓUÓVó b&ˆÜ˜'¤7Ó+Ð+Ò+×+×+×+×+Õ+Œz×+×+Ó+Œz×+×+×+×+×+Ò+˜'×+×+Ó+˜'×+×+×+×+×+Ò+¤7×+×+Ó+¤7×+×+Ô+Ð+×+×+×+×+×+Ð+ð �<‹<Ø—~‘~Ð%�~Ð%Ð%Ñ%×%×%×%×%Õ%�w×%×%Ó%�w×%×%Ô%�~×%×%×%×%×%Ò%Üñ Ø5A×5LÑ5L×5SÑ5SÓ5Uôô ô &ðLóð ô �7—<‘<Ó ¤3 w£<Ò/Ü%ØPÜ˜7“|�n I¬c°'·,±,Ó.?Ð-@ðBóð ô "Ü�GœS §¡Ó.Ð.Ð0Ð1°7·<±<ÈÔMó‰Nô " '§.¡.Ó1ˆNØ—I‘Iñ 
Ü# L×$;Ñ$;×$IÑ$IÓJô
ó 
ˆ	ð —i‘iÑH´¸Ó1GÔHÓHˆØ˜Ò#Ü!ØAÀ)Àð M4Ø4?°=ðBóð ðô �>Ó"Ð5Ð"×-Ñ-Ð5Ñ-¨fÓ5Ð5Ò5×5×5×5×5Õ5Œs×5×5Ó5Œs×5×5×5×5×5Ò5�>×5×5Ó5�>×5×5Ô5Ð"×5×5Ò5Ð-×5×5×5×5×5Ð5¨f×5×5Ó5¨f×5×5Ô5Ð5×5×5×5×5×5Ô5Ø×Ñ˜fÔ%ä�>‰> §¡×!6Ñ!6Ñ6Ùä˜EŸN™NÓ+ñ x	&Ø!#ÐÜ'×3Ñ3°BÓ7ˆJðp,Ü")Ø×&Ñ&ØØ!Ø$(Ø#1ô#�ô #Ð#5×#<Ñ#<Ó=ñ ,Ø—~‘~Ð-Ù'Ö)ð  $Ÿy™yÑ(H¸iÔ(HÓHÈ4Ï9É9ñ UØ=K×=QÑ=QÓ=SôUó Lñ  ˜ð$Ù+Ô-ð& (1°·±Ð0@Ð%AÄDÈÏÉÓDXÑ%X˜FØ&Ÿ~™~´Ñ>Ø'2¡Ü%/°·±ÄÔ%FØ'.§~¡~×'>Ñ'>¡Ü!$ W§^¡^Ó!4¸Ò!9Ø'.§~¡~°aÑ'8×'AÑ'A¡ð %)§I¡IÑ-XÀGÇNÁNÐSVÐTVÐDWÔ-XÓ$XØ(-¨g¯n©n¸RÑ.@×.IÑ.IÐ-JÐ&Kñ%Lð !%ð %)§J¡J£L°¡O°wÐ$>˜EÜ"0Ø",¨S°5©[¨M¸¸4¸&ÀÐPTÈvÐUVØ#) (Ð*Hð!Jó#ð ÷S,ñp &Ø-¨aÑ0ÐPÐ0×;Ñ;ÐPÐ<OÐPÑ;Ð<OÓPÐPÑP×P×PÐ0×P×PÒPÐ;×P×PÒPÐ<O×P×PÒPÐP×P×P×P×P×PÖPØ,>¸qÑ,A×,IÑ,IØ+Ð-GÈó-Ð& qÑ)ð ×!Ñ!Ô#Ü(Ô*Ü&Ø"'×"8Ñ"8Ø!&×!6Ñ!6Ø'Ø&8Ø',×'9Ñ'9Ø$×5Ñ5ô�Bô (¨Õ+á!ÜÐ1°!Ñ4×<Ñ<¸YÈÐRSÓTÔUØ+¨A¨BÐ/ò &�AÜ" 1Õ%ð&÷ox	&ñ x	&ñUb&ùòøôJ  ;Ó<ò Ü#-¨c°7·>±>Ô#BØ %ð "×5Ñ5×9Ñ9Ü )¨%¯*©*°iÀÓ P÷ò ûð  'Ÿ~™~ò 'ô #2Ø"+¨D¨6Ð1FÀsÀgð NWð !Wó#ð $'ð'ûð	'ú÷%,ñ ,ûôZ )ò =ô  ×(Ñ(¬Ó2ñ =Ø×,Ñ,¬V¯^©^Ô<÷=÷ =ñ =ýä ó !ð
 ×(Ñ(Ô)>Ó)@ÓA�ô
 ˜cÔ#>Ó#@ÔAÄcñ Jà&Ÿ|™|¬e°G·N±N×4IÑ4IÓ4KÓ.LÑLôJô Gô ,ð0ó�Cð %(�C”MØ�Cä×(Ñ(¬Ó2ñ =Ø×,Ñ,¬V¯^©^Ô<÷=÷ =ñ =úä%Ð&8¸#Ó>Ò>à—N‘N×7Ó7Þ4Ü" 3Ô(CÓ(EÕFÜ& sÔ,FÓ,HÕIãñ &Ø-¨aÑ0ÐPÐ0×;Ñ;ÐPÐ<OÐPÑ;Ð<OÓPÐPÑP×P×PÐ0×P×PÒPÐ;×P×PÒPÐ<O×P×PÒPÐP×P×P×P×P×PÖPØ,>¸qÑ,A×,IÑ,IØ+Ð-GÈó-Ð& qÑ)ð ×!Ñ!Ô#Ü(Ô*Ü&Ø"'×"8Ñ"8Ø!&×!6Ñ!6Ø'Ø&8Ø',×'9Ñ'9Ø$×5Ñ5ô�Bô (¨Ô+÷gx	&ñ x	&óB á%Ø-¨aÑ0ÐPÐ0×;Ñ;ÐPÐ<OÐPÑ;Ð<OÓPÐPÑP×P×PÐ0×P×PÒPÐ;×P×PÒPÐ<O×P×PÒPÐP×P×P×P×P×PÖPØ,>¸qÑ,A×,IÑ,IØ+Ð-GÈó-Ð& qÑ)ð ×!Ñ!Ô#Ü(Ô*Ü&Ø"'×"8Ñ"8Ø!&×!6Ñ!6Ø'Ø&8Ø',×'9Ñ'9Ø$×5Ñ5ô�Bô (¨Ô+÷gx	&ñ x	&ûð@!ûñF &Ø-¨aÑ0ÐPÐ0×;Ñ;ÐPÐ<OÐPÑ;Ð<OÓPÐPÑP×P×PÐ0×P×PÒPÐ;×P×PÒPÐ<O×P×PÒPÐP×P×P×P×P×PÖPØ,>¸qÑ,A×,IÑ,IØ+Ð-GÈó-Ð& qÑ)ð ×!Ñ!Ô#Ü(Ô*Ü&Ø"'×"8Ñ"8Ø!&×!6Ñ!6Ø'Ø&8Ø',×'9Ñ'9Ø$×5Ñ5ô�Bô (¨Õ+ð +ú÷Ux	&ñ x	&üs  ‚D=z?Ä?+d1Å*R6z?Ø z2Ø9/g
Ù(Af=Ú>d6ÛDf=ßg
ßE	z2ä%z?ä6f:	åAf	æ
f=æf:	æ"f5	æ5f:	æ:f=æ=gçg
ç
"vç, h	è	vèhèvè!vè$	vè-Bvë k0	ë'	vë0k9ë5AvívíDz2ñ(
z?ñ2vñ6Dz2ö
z?övövöDz/ú/z2ú2z<	ú7z?c                 óŽ  — |j                   }d |_        |j                  �t        |j                  «      S |j                  rt        t        t        | «      «      «      S t        �t        t        «      S t        j                  €t        «       t        _	        t        j                  j                  d«      }||_        t        |«      S )Né€   )r²   Ú'_hypothesis_internal_use_generated_seedr´   r   Úderandomizer7   rR   Úglobal_force_seedÚthreadlocalry   Úgetrandbits)r—   rÞ   r   r¯   s       rv   Úget_random_for_wrapped_testr{  Ë  s    € Ø×=Ñ=€HØ;?€LÔ8à×1Ñ1Ð=Ü�l×@Ñ@ÓAÐAà×ÒÜ”n¤_°TÓ%:Ó;Ó<Ð<äÐ$ÜÔ'Ó(Ð(ä×,Ñ,Ð4Ü06³ŒÔ-Ü×0Ñ0×<Ñ<¸SÓA€DØ;?€LÔ8Ü�$‹<Ðru   c                   ó6   — e Zd ZU eed<   eed<   eed<   eed<   y)ÚStuffÚselfyr~   r   rå   N)rƒ   r„   r…   r   r†   r“   rA  rt   ru   rv   r}  r}  ß  s   … àƒJØ
ƒKØƒLØÔru   r}  rÞ   rÜ   r   rå   r  c                 óî  — d }t        | ||«      \  }}|j                  «       D �cg c]'  }|j                  |j                  u sŒ|j                  ‘Œ) }}|r|j                  |d   «      }n|r|d   }t        |«      rd }t        |«      }t        «       5  |j                  «       D ]"  \  }}	t        |	|¬«       |	j                  «        Œ$ 	 d d d «       t        ||||¬«      }
|||
fS c c}w # 1 sw Y   Œ"xY w)Nr   )rø   )r~  r~   r   rå   )rP   rô   rõ   rö   rø   ÚgetrV   r“   r>   rü   rj   Úvalidater}  )rÞ   rÜ   r   rå   r  r~  rï   r_  r  r	  Ústuffs              rv   Úprocess_arguments_to_givenrƒ  ç  sô   € ð €EÜ4°\À9ÈfÓUÑ€Iˆvð
  &Ÿ}™}›ÖT˜!°!·&±&¸A×<SÑ<SÒ2Sˆq�v‹vÐT€GÐTÙØ—
‘
˜7 1™:Ó&‰Ù	Ø˜!‘ˆô ˆu„~Øˆä�iÓ €Iä	 Ó	"ñ Ø ×&Ñ&Ó(ò 	‰DˆAˆqÜ˜1 1Õ%Ø�J‰J�Lñ	÷ô
 ˜ I°fÈ<ÔX€Eà�f˜eÐ#Ð#ùò) U÷ð ús   ¥C&ÁC&Â6C+Ã+C4c                  óB  — t        «       } dt        j                  v r,| j                  t        j                  d   j                  «       dt        j                  v r,| j                  t        j                  d   j
                  «       t        t        | t        ¬«      «      S )a  Return a tuple of exceptions meaning 'skip this test', to re-raise.

    This is intended to cover most common test runners; if you would
    like another to be added please open an issue or pull request adding
    it to this function and to tests/cover/test_lazy_import.py
    Úunittestú_pytest.outcomes©Úkey)	r  ÚsysÚmodulesrM  ÚSkipTestÚSkippedr“   rC  rŒ   ©Ú
exceptionss    rv   rV  rV    sn   € ô “€Jð
 ”S—[‘[Ñ Ø�‰”s—{‘{ :Ñ.×7Ñ7Ô8ØœSŸ[™[Ñ(Ø�‰”s—{‘{Ð#5Ñ6×>Ñ>Ô?Ü”˜
¬Ô,Ó-Ð-ru   .c                  ó¶   — t         t        t        g} dt        j                  v r,| j                  t        j                  d   j                  «       t        | «      S )zÔReturn a tuple of exceptions meaning 'this test has failed', to catch.

    This is intended to cover most common test runners; if you would
    like another to be added please open an issue or pull request.
    r†  )rÑ   Ú
SystemExitÚGeneratorExitr‰  rŠ  rš   ÚFailedr“   r�  s    rv   rK  rK    sE   € ô œZ¬Ð7€JØœSŸ[™[Ñ(Ø×Ñœ#Ÿ+™+Ð&8Ñ9×@Ñ@ÔAÜ�ÓÐru   c                 óâ   — | j                  | j                  j                  «       D �cg c]6  }|j                  |v r$|j                  |j
                  |j                  fv s|‘Œ8 c}d¬«      S c c}w )z/Make an updated signature for the wrapped test.N)ró   Úreturn_annotation)r©   ró   rô   rø   rõ   rö   r÷   )rþ   rå   rï   s      rv   Únew_given_signaturer•  /  sr   € à×Ñð "×,Ñ,×3Ñ3Ó5ö
àà—‘˜,Ñ&Ø—F‘F˜q×6Ñ6¸¿¹ÐGÑGò	 ò
ð ð  ó 
ð 
ùò
s   ¨;A,c                 ó   —  || «      S rs   rt   )r3  Úfunctions     rv   Údefault_executorr˜  >  s   € Ù�D‹>Ðru   c                 óÞ   ‡‡‡— 	 | j                   Šˆfd„S # t        $ r Y nw xY wt        | d«      st        | d«      r,t        | dd «      xs d„ Št        | dd «      xs d„ Šˆˆfd„}|S t        S )Nc                 ó(   •—  ‰t        || «      «      S rs   r   )r3  r—  rj  s     €rv   rw   zget_executor.<locals>.<lambda>H  s   ø€ ¡o´g¸hÈÓ6MÓ&N€ ru   Úsetup_exampleÚteardown_examplec                   ó   — y rs   rt   rt   ru   rv   rw   zget_executor.<locals>.<lambda>K  rx   ru   c                  ó   — y rs   rt   )r,  s    rv   rw   zget_executor.<locals>.<lambda>L  rx   ru   c                 óR   •— d }	  ‰«       } || «       ‰|«       S #  ‰|«       w xY wrs   rt   )r3  r—  ÚtokenÚsetupÚteardowns      €€rv   Úexecutezget_executor.<locals>.executeN  s*   ø€ ØˆEð Ù›�Ù “~á˜•ø‘˜•ús   … œ
&)rj  ÚAttributeErrorr™   rµ   r˜  )Úrunnerr£  rj  r¡  r¢  s     @@@rv   Úget_executorr¦  B  s€   ú€ ðOØ ×0Ñ0ˆó OÐNøô ò Ùðúô
 ˆv�Ô'¬7°6Ð;MÔ+NÜ˜ °Ó6ÒH¹<ˆÜ˜6Ð#5°tÓ<ÒQÁˆõ	 ð ˆäÐs   … –	"¡"ÚTÚexcgroupc                 ó¤   — g }| j                   D ]>  }t        |t        «      r|j                  t	        |«      «       Œ.|j                  |«       Œ@ |S rs   )rŽ  r    ÚBaseExceptionGroupÚextendÚ_flatten_grouprš   )r¨  Úfound_exceptionsrÙ   s      rv   r¬  r¬  `  sQ   € Ø "ÐØ×"Ñ"ò )ˆÜ�cÔ-Ô.Ø×#Ñ#¤N°3Ó$7Õ8à×#Ñ# CÕ(ð	)ð
 Ðru   )NNNc               #   óØ  K  — 	 d –— y # t         $ �rT} | j                  t        «      \  }}|€‚ |j                  d„ «      \  }}|�‚ t        |«      }t	        |«      dk(  r|d   }||j
                  ‚|j                  t        «      \  }}|rt        |«      d   }||j
                  ‚d }	||	u}
|
s™t        j                  d|
fd||	f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |	«      dœz  }dd	|iz  }t        t        j                  |«      «      ‚d x}
}	t        t        |«      d
„ ¬«      ‚d } ~ ww xY w­w)Nc                 ó.   — t        | t        t        f«      S rs   )r    r/   r+   )Úes    rv   rw   z+unwrap_markers_from_group.<locals>.<lambda>z  s   € ”j ¤XÔ/BÐ$CÓD€ ru   rÏ   r   ©úis not©z%(py0)s is not %(py3)sÚ	stoptests©r  r  úassert %(py5)sr   c                 ó   — | j                   S rs   )Útestcounter)Ús_es    rv   rw   z+unwrap_markers_from_group.<locals>.<lambda>™  s
   € ¸S¿_¹_€ ru   r‡  )rª  Úsplitr*   r¬  rÊ   rS  r/   r;  Ú_call_reprcomparer9  r:  r<  r=  r>  r?  Úmin)r¨  Ú_frozen_exceptionsÚnon_frozen_exceptionsÚ_Úuser_exceptionsÚflattened_non_frozen_exceptionsr°  r´  Únon_stoptestsrd  r`  ra  Ú@py_format6s                rv   Úunwrap_markers_from_grouprÄ  j  sH  è ø€ ð-NÜøÜó +NØ4<·N±NÄ6Ó4JÑ1ÐÐ1ð
 !Ð(Øð 3×8Ñ8ÙDó
Ñˆˆ?ð
 Ð&Øô @NØ!ó@
Ð'ô Ð.Ó/°1Ò4Ø/°Ñ2ˆAð ˜Ÿ™Ð$ð $9×#>Ñ#>¼xÓ#HÑ ˆ	�=ñ ô ˜}Ó-¨aÑ0ˆAØ˜Ÿ™Ð$Ø $Ð$ˆy Ð$×$×$Õ$ˆy ×$×$×$×$×$Ñ$ˆy×$×$Ó$ˆy×$×$Ô$ ×$×$×$×$×$×$Ñ$ô ”. Ó+Ñ1LÔMÐMûðW+Nüs%   ‚E*„	 ˆE*‰
E'“EE"Å"E'Å'E*c                   óÒ   — e Zd Zddœdededef   dededed	ee	e
f   dz  fd
„Zedefd„«       Zd„ Zde
defd„Zdddddœd„Zdededefd„Zdeddfd„Zdededeez  ddfd„Zd„ Zy)r  N©Úthread_overlapr‚  r—   .r   ÚrandomrÞ   rÇ  c                óL  — || _         || _        || _        || _        || _        |€i n|| _        t        |j                  «      | _        t        |dd«      | _
        |j                  j                  «       D ��ch c]  \  }}|t        j                  «       k(  r|’Œ  c}}| _        d | _        d| _        d| _        t'        «       | _        d| _        d| _        t/        t&        «      | _        t3        j2                  «       | _        d| _        i | _        i | _        d | _        y c c}}w )NÚ%_hypothesis_internal_print_given_argsTrt   Frœ   )r‚  r—   r   rÈ  rÞ   rÇ  r¦  r~  Útest_runnerrµ   Úprint_given_argsrå   rü   Ústr3  Úknown_safe_to_reprÚlast_exceptionÚfalsifying_test_casesÚever_executedr  rL  Úfailed_normallyÚfailed_due_to_deadliner   Úexplain_tracesÚtimerY  r[  Ú_proxied_testsr\  Ú_runner)	r•   r‚  r—   r   rÈ  rÞ   rÇ  rø   rñ   s	            rv   r–   z%StateForActualGivenExecution.__init__�  s  € ð ˆŒ
ØˆŒ	Ø ˆŒØˆŒØ(ˆÔØ$2Ð$:™bÀˆÔä'¨¯©Ó4ˆÔÜ 'ØÐAÀ4ó!
ˆÔð
 #(×"4Ñ"4×":Ñ":Ó"<÷#
á��hØœ2Ÿ7™7›9Ò$ò ó#
ˆÔð #ˆÔØ%'ˆÔ"Ø"ˆÔÜ-0«UˆÔ Ø$ˆÔØ&+ˆÔ#äJUÜóK
ˆÔô !%§	¡	£ˆÔØˆÔØ46ˆÔØ24ˆÔà04ˆ�ùó+#
s   Á8#D r�   c                 óf   — t        t        j                  dd «      xs t        | j                  «      S )NÚnodeid)rµ   rF   ÚvaluerS   rÞ   ©r•   s    rv   rZ  z,StateForActualGivenExecution.test_identifierÉ  s1   € äÜ×%Ñ% x°ó
ò @ä,¨T×->Ñ->Ó?ð	@ru   c                 ó  — t        «       xr t        j                  }| j                  xrR | j                   xrC t
        j                  t
        j                  hj                  | j                  j                  «      }|xs |S rs   )rO   r2   ÚOBSERVABILITY_COLLECT_COVERAGErÒ  rÓ  r   ÚshrinkÚexplainÚissubsetr   rG  )r•   Ú
_trace_obsÚ_trace_failures      rv   Ú_should_tracez*StateForActualGivenExecution._should_traceÏ  st   € ô "Ó#ÒT¬×(TÑ(Tð 	ð × Ñ ò MØ×/Ñ/Ð/òMä—‘œuŸ}™}Ð-×6Ñ6°t·}±}×7KÑ7KÓLð 	ð
 Ò+˜^Ð+ru   Útimedc                óÞ   ‡ — 	 ‰ j                   |   S # t        $ r Y nw xY w|st        ‰ j                  «      ˆ fd„«       }nt        ‰ j                  «      ˆ fd„«       }|‰ j                   |<   |S )Nc                  óº   •— t        «       5  t        «       5   ‰j                  | i |¤Žcd d d «       cd d d «       S # 1 sw Y   nxY wd d d «       y # 1 sw Y   y xY wrs   )rÄ  r>   r—   )r~   r   r•   s     €rv   r—   z8StateForActualGivenExecution._proxied_test.<locals>.testæ  sQ   ø€ ä.Ó0ñ 6Ô2IÓ2Kñ 6Ø$˜4Ÿ9™9 dÐ5¨fÑ5÷6÷ 6÷ 6ó 6ú÷ 6÷ 6ñ 6ús   ŒA—<©	A¼A	ÁAÁAc                  óà  •— t        «       }|j                  |j                  }}t        j                  |j
                  j                  «       «      }t        j                  |j                  j                  «       «      }t        «       }t        «       5  t        «       5  t        j                  «       }	  ‰j                  | i |¤Ž}	t        j                  «       }
t        j                  |j
                  j                  «       «      |z
  }t        j                  |j                  j                  «       «      |z
  }t        «       |z
  }|
|z
  |z
  |z
  |z
  }||dœ|j
                  ¥|j                  ¥‰_        	 d d d «       d d d «       ‰j                  j                   x}�‰j"                  j%                  t'        j(                  «       d«      sQ|s|dz  dz  }|j+                  «       k\  r4t-        t/        j0                  |¬«      ‰j                  j                   «      ‚	S # t        j                  «       }
t        j                  |j
                  j                  «       «      |z
  }t        j                  |j                  j                  «       «      |z
  }t        «       |z
  }|
|z
  |z
  |z
  |z
  }||dœ|j
                  ¥|j                  ¥‰_        w xY w# 1 sw Y   �ŒaxY w# 1 sw Y   �ŒfxY w)N)zexecute:testz
overall:gcFé   é   )Úseconds)r   r3  r#  ÚmathÚfsumÚ
draw_timesrô   Ú_stateful_run_timesr?   rÄ  r>   rÕ  Úperf_counterr—   r\  r   ÚdeadlinerÇ  r€  Ú	threadingÚ	get_identÚtotal_secondsr$   ÚdatetimeÚ	timedelta)r~   r   Úcontextr3  r#  Úarg_drawtimeÚarg_statefulÚ
arg_gctimeÚstartÚresultÚfinishÚin_drawtimeÚin_statefulÚ	in_gctimeÚruntimeÚcurrent_deadliner•   s                   €rv   r—   z8StateForActualGivenExecution._proxied_test.<locals>.testí  sœ  ø€ ä/Ó1�Ø!(§¡¨w×/?Ñ/?�h�Ü#Ÿy™y¨¯©×)?Ñ)?Ó)AÓB�Ü#Ÿy™y¨×)AÑ)A×)HÑ)HÓ)JÓK�Ü/Ó1�
Ü.Ó0ñ Ô2IÓ2Kñ Ü ×-Ñ-Ó/�EðØ!* §¡¨DÐ!;°FÑ!;˜ä!%×!2Ñ!2Ó!4˜Ü&*§i¡i°·±×0FÑ0FÓ0HÓ&IÈLÑ&X˜ä ŸI™I d×&>Ñ&>×&EÑ&EÓ&GÓHÈ<ÑWð $ô %7Ó$8¸:Ñ$E˜	Ø"(¨5¡.°;Ñ">ÀÑ"LÈyÑ"X˜à,3Ø*3ñ1ð #Ÿo™oð1ð #×6Ñ6ð	1˜Õ-÷÷ ð( *.¯©×)?Ñ)?Ð?Ð%ÐLð !×/Ñ/×3Ñ3´I×4GÑ4GÓ4IÈ5ÔQá#Ø,<ÀÑ,AÀQÑ+FÐ(ØÐ"2×"@Ñ"@Ó"BÒBÜ.Ü$×.Ñ.°wÔ?ÀÇÁ×AWÑAWóð ð �øô5 "&×!2Ñ!2Ó!4˜Ü&*§i¡i°·±×0FÑ0FÓ0HÓ&IÈLÑ&X˜ä ŸI™I d×&>Ñ&>×&EÑ&EÓ&GÓHÈ<ÑWð $ô %7Ó$8¸:Ñ$E˜	Ø"(¨5¡.°;Ñ">ÀÑ"LÈyÑ"X˜à,3Ø*3ñ1ð #Ÿo™oð1ð #×6Ñ6ð	1˜Õ-ú÷ñ ú÷ ñ ús>   ÂK#ÂKÂ3H ÃB1KÅ7K#È B3KËKËK 	ËK#Ë#K-)rÖ  ÚKeyErrorrX   r—   )r•   rä  r—   s   `  rv   Ú_proxied_testz*StateForActualGivenExecution._proxied_testÜ  s~   ø€ ð	Ø×&Ñ& uÑ-Ð-øÜò 	Ùð	úáä�T—Y‘YÓó6ó  ñ6ô �T—Y‘YÓó%ó  ð%ðN &*ˆ×Ñ˜EÑ"Øˆs   ƒ ’	�F)r$  r#  Úexpected_failurer  c          	      óÆ  ‡ ‡‡‡‡‡‡— d‰ _         d‰ _        dŠ‰ j                  ‰ j                  j                  duxs
 t        «       ¬«      Šdt        ddfˆˆˆˆˆ ˆˆfd„}t        ‰ j                  «      5  t        «       5  t        ||‰ j                  ¬«      5 Šd}|j                  j                  «       5  ‰ j                  ||«      }ddd«       ddd«       ddd«       ddd«       ‰�Æ‰\  }}	t        |t        «      r’t!        j"                  d	„ ‰ j$                  j'                  «       D «       «      x}
r\t)        d
|j*                  j-                  «       dz  d›d‰ j                  j                  j-                  «       dz  d›d|
dz  d›d�«       nt)        d|	z   «       t/        d‰› d�|g«      ‚S # 1 sw Y   ŒëxY w# 1 sw Y   ŒïxY w# 1 sw Y   ŒóxY w# 1 sw Y   Œ÷xY w)aç  Run the test function once, using ``data`` as input.

        If the test raises an exception, it will propagate through to the
        caller of this method. Depending on its type, this could represent
        an ordinary test failure, or a fatal error, or a control exception.

        If this method returns normally, the test might have passed, or
        it might have placed ``data`` in an unsuccessful state and then
        swallowed the corresponding control exception.
        Trœ   N)rä  r3  r�   c           
      ó|	  •— ‰j                   j                  �‰j                   j                  | _        ‰j                   j                  }t	        ‰j                   j
                  «      }‰€)‰j                  ‰j                   j                  «      \  }}n‰}i }|j                  |«       ‰�t        ‰||«      Š‰st        «       t        j                  k\  rît        ‰¬«      }‰r|j                  d«       n|j                  d«       ‰j                  r‡|j                  d«       |j                  ‰j                   ||d|d ‰j"                  j$                  v rd‰j"                  j$                  d    z   nd | j&                  j(                  ‰j*                  ¬«       n|j                  d«       t-        |j/                  «       «       t1        «       r–t        ‰¬«      }|j                  ‰j                   ||d|d ‰j"                  j$                  v rd‰j"                  j$                  d    z   nd | j&                  j(                  ‰j*                  ¬«       |j/                  «       ‰_        	  ‰|i |¤Ž| j4                  � d	j7                  | j4                  «      ‰_        t1        «       rµt        ‰¬«      }| j8                  j;                  «       D ]h  \  }}|j=                  d
«      sŒ	 | j&                  j?                  |«      }|j                  d	|jC                  d«      › d�«       |jE                  |«       Œj ‰xj2                  |j/                  «       z  c_        S S # t@        $ r d}Y Œiw xY w# tF        $ rI}dtI        |«      v r6| jJ                  �*| jJ                  \  }	}
tM        ||	jO                  |
«      «       ‚ d }~ww xY w# | j4                  � d	j7                  | j4                  «      ‰_        t1        «       rÇt        ‰¬«      }| j8                  j;                  «       D ]z  \  }}|j=                  d
«      sŒ	 | j&                  j?                  |«      }n# t@        $ r d}Y nw xY w|j                  d	|jC                  d«      › d�«       |jE                  |«       Œ| ‰xj2                  |j/                  «       z  c_        w w xY w)N)rö  zFailing test case:z
Test case:ré   Tz# )Úforce_splitÚ
arg_labelsÚleading_commentÚavoid_realizationrÎ  z <state machine>ú
zgenerate:Draw z$<backend failed to realize symbolic>z	generate:rò   ri   )(r‚  r~  Úhypothesis_runnerr~   rA  r   Ú prep_args_kwargs_from_strategiesrå   rE  rY   r`   r   Úverbosern   ÚtextrÌ  rƒ   r3  Úspan_commentsÚproviderr
  rÎ  ra   ÚgetvaluerO   r[  Ú_stateful_repr_partsrý   Ú_observability_argsrü   rW  Úrealizer#   ÚremoveprefixÚprettyÚ	TypeErrorrŒ   Ú-_sampled_from_all_strategies_elements_messager4   Úformat)r3  r~   r   ÚkwÚ	arglabelsÚprinterrø   rÚ  r°  ÚmsgÚ
format_argrö  r  r  r$  r•   r—   Ú	text_reprs              €€€€€€€rv   Úrunz6StateForActualGivenExecution.execute_once.<locals>.run4  s.  ø€ à�z‰z×ÑÐ+Ø)-¯©×)9Ñ)9�Ô&à—:‘:—?‘?ˆDÜ˜$Ÿ*™*×+Ñ+Ó,ˆFØÐ%Ø '× HÑ HØ—J‘J×+Ñ+ó!‘�‘Ið $�Ø�	Ø�M‰M˜"ÔØÐ+ä% d¨D°&Ó9�	áÔ"3Ó"5¼×9JÑ9JÒ"JÜ/¸Ô@�Ù"Ø—L‘LÐ!5Õ6à—L‘L Ô.à×(Ò(Ø—L‘L Ô%Ø×%Ñ%ØŸ™ØØØ$(Ø#,ð  $ w§|¡|×'AÑ'AÑAð ! 7§<¡<×#=Ñ#=¸dÑ#CÒCà!%à*.¯-©-×*IÑ*IØ+/×+BÑ+Bð &õ ð$ —L‘LÐ!3Ô4Ü�w×'Ñ'Ó)Ô*ä$Ô&Ü/¸Ô@�Ø×!Ñ!Ø—M‘MØØØ $Ø(ð   7§<¡<×#=Ñ#=Ñ=ð ˜wŸ|™|×9Ñ9¸$Ñ?Ò?à!à&*§m¡m×&EÑ&EØ'+×'>Ñ'>ð "ô ð %,×$4Ñ$4Ó$6�Ô!ð<Ù˜TÐ, VÑ,ð ×,Ñ,Ð8Ø(,¯	©	°$×2KÑ2KÓ(L�DÔ%ä(Ô*Ü3¸GÔD�GØ'+×'?Ñ'?×'EÑ'EÓ'Gò 2™˜˜eØŸ?™?Ð+;Õ<ðOØ(,¯©×(=Ñ(=¸eÓ(D ð $ŸL™L¨2¨d×.?Ñ.?ÀÓ.LÐ-MÈRÐ)PÔQØ#ŸN™N¨5Õ1ð2ð ×%Ò%¨×)9Ñ)9Ó);Ñ;Ö%ð +øô $8ò OØ(N¢ðOûô) ò 	ð %¬¨A«Ñ.Ø×JÑJÐVà&*×&XÑ&X‘O�C˜Ü˜Q §
¡
¨:Ó 6Ô7Øûð	ûð ×,Ñ,Ð8Ø(,¯	©	°$×2KÑ2KÓ(L�DÔ%ä(Ô*Ü3¸GÔD�GØ'+×'?Ñ'?×'EÑ'EÓ'Gò 2™˜˜eØŸ?™?Ð+;Õ<ðOØ(,¯©×(=Ñ(=¸eÓ(D¡øÜ#7ò OØ(N¢ðOúà#ŸL™L¨2¨d×.?Ñ.?ÀÓ.LÐ-MÈRÐ)PÔQØ#ŸN™N¨5Õ1ð2ð ×%Ò%¨×)9Ñ)9Ó);Ñ;Ö%ð +ús]   É#M' ËMÍM$Í#M$Í'	N9Í0AN4Î4N9Î9N< Î<A4R;Ð2QÑR;ÑQ	ÑR;ÑQ	ÑAR;)r#  rÞ   c              3   óH   K  — | ]  \  }}|j                  d «      r|–— Œ y­w)zexecute:N)rW  r)  s      rv   r¥   z<StateForActualGivenExecution.execute_once.<locals>.<genexpr>ª  s(   è ø€ ò *á˜˜1Ø—|‘| JÔ/ô ñ*ùs   ‚ "z;Unreliable test timings! On an initial run, this test took iè  z.2fz#ms, which exceeded the deadline of z$ms, but on a subsequent run it took z— ms, which did not. If you expect this sort of variability in your test timings, consider turning deadlines off for this test by setting deadline=None.z*Failed to reproduce exception. Expected: 
zHypothesis zV produces unreliable results: Failed on the first call but did not on a subsequent one)rÑ  r[  r  r   rð  rO   r9   r   rC   r   rÞ   r  Úper_test_case_context_managerrË  r    r$   rë  rì  r\  rü   ra   r   ró  r'   )r•   r3  r$  r#  r  r  r!  rû  rŠ   Ú	tracebackÚruntime_secsrö  r—   r   s   ` ` ``     @@@rv   rI  z)StateForActualGivenExecution.execute_once  s  þ€ ð( "ˆÔàˆÔØˆ	Ø×!Ñ!Ø—-‘-×(Ñ(°Ð4ÒOÔ8MÓ8Oð "ó 
ˆð^	<”nð ^	<¨÷ ^	<ó ^	<ôF ˜4Ÿ=™=Ó)ñ	5äÓ ñ	5ô Ø˜x°d×6GÑ6Gôð	5ð
 ð ˆFØ—‘×<Ñ<Ó>ñ 5ð ×)Ñ)¨$°Ó4�÷5÷	5÷ 	5÷ 	5ð" Ð'Ø#3Ñ ˆI�yÜ˜)Ô%5Ô6Ü $§	¡	ñ *à $× 5Ñ 5× ;Ñ ;Ó =ô*ó !ð �ð ô ð!Ø!*×!2Ñ!2×!@Ñ!@Ó!BÀTÑ!IÈ#Ð Nð O6à—}‘}×-Ñ-×;Ñ;Ó=ÀÑDÀSÐIð J3Ø3?À$Ñ3FÀsÐ2Kð LLð	Lõ	ô ÐDÀyÑPÔQÜØ˜i˜[ð )Kð Kà�óð ð
 ˆ÷C5ð 5ú÷	5ð 	5ú÷ 	5ð 	5ú÷ 	5ð 	5úsT   Á5GÂ GÂF?Â6F3	Ã	F?ÃGÃGÆ3F<Æ8F?Æ?GÇGÇG	ÇGÇG rÖ   rö  c                 ó´  — | j                   }d }||u}|s­t        j                  d|fd||f«      dt        j                  «       v st        j
                  | «      rt        j                  | «      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}|j                  D �cg c]3  }|| j                   j                  v r| j                   j                  |   ‘Œ5 }	}|	D �
cg c]  }
|
j                  ‘Œ }}
|j                  |«       t        |j                  |«      S c c}w c c}
w )Nr±  ©z3%(py2)s
{%(py2)s = %(py0)s._runner
} is not %(py5)sr•   ©r  r  r   úassert %(py7)sr0  )r×  r;  r»  r9  r:  r<  r=  r>  r?  Ú_interesting_originsÚinteresting_test_casesÚexpected_exceptionrš   r'   r‚   )r•   rÖ   rö  r`  re  r]  rÃ  rp  Úoriginr+  rû  rŽ  s               rv   Ú_flaky_replay_to_failurez5StateForActualGivenExecution._flaky_replay_to_failureÃ  sþ   € ð �|‰|Ð' 4Ð'ˆ| 4Ð'×'×'Õ'ˆ| 4×'×'×'×'×'Ñ'ˆt×'×'Ó'ˆt×'×'Ô'ˆ|×'×'Ò' 4×'×'×'×'×'×'Ó'ð ×2Ñ2ö"
àØ˜Ÿ™×<Ñ<Ñ<ð �L‰L×/Ñ/°Ó7ð"
Ðð "
ð
 ?UÖU°F�f×/Ó/ÐUˆ
ÐUØ×Ñ˜'Ô"Ü˜CŸJ™J¨
Ó3Ð3ùò"
ùò
 Vs   Ã8EÄEr3  c                 ó¾  — t        «       }d}	 t        | j                  «       ¬«      5 }	 | j                  |«      }|j                  t
        j                  k(  r4|j                  r(| j                  d   j                  |j                  «       |j                  }	 ddd«       �@t        | j                  d| j                  j                  › d|›d�t        j                  «       	 |j‚                  j…                  |j†                  «      |_C        ti        «       �rÀ|�s½t‰        | dd«      x}r|jŠ                  }n| jr                  s| j|                  rd}nd}d| j                  jŒ                  ›�| j                  jŒ                  dk7  xr t‰        |dd«       z  }	 |j‚                  j…                  |jŽ                  «      |_G        	 |j‚                  j…                  | j�                  «      | _H        	 |j‚                  j…                  |j’                  «      |_I        |j•                  «        t—        | j˜                  | jš                  |d|› d|› �| j�                  |jŽ                  | jœ                  tŸ        |«      xs d||j‚                  j¡                  «       ¬«
      }t£        |«       |j‚                  j¥                  d¬«      D ]  } | j¦                  d i |¤Ž Œ i | _N        y# |j                  }w xY w# 1 sw Y   �Œ[xY w# t         $ rX}	 |j#                  |j$                  |j&                  ¬«       n$# t(        $ r}| j+                  ||«      d‚d}~ww xY wY d}~�Œxd}~wt,        $ r d}‚ t.        $ r ‚ t0        gt3        «       ¢­$ r ‚ t5        «       $ �r�}t7        |t8        «      r@t;        |j<                  «      d	k(  r(|j<                  d
   j>                  xs |j>                  }n|j>                  }d}	||	u}
|
s™tA        jB                  d|
fd||	f«      dtE        jF                  «       v stA        jH                  |«      rtA        jJ                  |«      ndtA        jJ                  |	«      dœz  }dd|iz  }tM        tA        jN                  |«      «      ‚dx}
}	tQ        |«      d
   }tS        |«      rEt7        |tT        «      s5|jW                  dtX        jZ                  › dtX        jZ                  › d�«      s‚ |j\                  rt/        |j^                  «      |‚||_0        tc        «       td        jf                  k\  s
ti        «       r.tk        |tm        «       «      |_7        tq        |jn                  «       d| _9        tu        jv                  |«      }|r| j                  |   j                  |«       |jx                  tz        k(  r!d| _>        | j                  j                  «        	 |j�                  |«       n$# t(        $ r}| j+                  ||«      d‚d}~ww xY wY d}~�Œ:d}~ww xY w# t,        $ r i |_C        Y �Œ*w xY w# t,        $ r i |_G        Y �ŒŒw xY w# t,        $ r d| _H        Y �Œxw xY w# t,        $ r g |_I        Y �Œdw xY w# 	 |j‚                  j…                  |j†                  «      |_C        n# t,        $ r
 i |_C        Y nw xY wti        «       �r|�st‰        | dd«      x}r|jŠ                  }n| jr                  s| j|                  rd}nd}d| j                  jŒ                  ›�| j                  jŒ                  dk7  xr t‰        |dd«       z  }	 |j‚                  j…                  |jŽ                  «      |_G        n# t,        $ r
 i |_G        Y nw xY w	 |j‚                  j…                  | j�                  «      | _H        n# t,        $ r
 d| _H        Y nw xY w	 |j‚                  j…                  |j’                  «      |_I        n# t,        $ r
 g |_I        Y nw xY w|j•                  «        t—        | j˜                  | jš                  |d|› d|› �| j�                  |jŽ                  | jœ                  tŸ        |«      xs d||j‚                  j¡                  «       ¬«
      }t£        |«       |j‚                  j¥                  d¬«      D ]  } | j¦                  d i |¤Ž Œ i | _N        w xY w)!a[  Wrapper around ``execute_once`` that intercepts test failure
        exceptions and single-test control exceptions, and turns them into
        appropriate method calls to `data` instead.

        This allows the engine to assume that any exception other than
        ``StopTest`` must be a fatal error, and should stop the entire engine.
        F)Úshould_traceNz/Tests run under @given should return None, but z
 returned z	 instead.)ÚlocationTrÏ   r   r±  r³  Útbrµ  r¶  r   ÚinternalÚ
conjecturezprovider_conformance.pyr×  rÞ  Úunknownz, using backend=rä   Ú_switch_to_hypothesis_providerz.<backend failed to realize symbolic arguments>zduring z phase)
r1  r2  r3  r4  r5  rÜ   r6  ÚcoverageÚphaseÚbackend_metadataÚ	test_case©Úlifetimert   )TÚ	frozensetr\   rã  rI  Ústatusr:   ÚVALIDÚbranchesrÔ  rM  rJ   r   r—   rƒ   r   Úreturn_valuer1   Úmark_invalidr‚   r1  r(   r.  r#   r/   r&   rV  rK  r    rª  rÊ   rŽ  Ú__traceback__r;  r»  r9  r:  r<  r=  r>  r?  rE   rI   r+   ÚendswithÚosÚsepr{   r¸  r,  r`   r   r  rO   rG   rH   Úexpected_tracebackrb   rÒ  rD   Úfrom_exceptionÚexc_typer$   rÓ  ÚclearÚmark_interestingr  r  Úeventsrµ   Ú_current_phaseÚbackendr  r[  ÚnotesrX  rN   rY  rZ  r\  r^   Úobserve_test_caserM   Úobserve_information_messagesÚ_deliver_information_message)r•   r3  ÚtraceÚbackend_cannot_proceedÚtracerrû  r°  rÖ   r2  rd  r`  ra  rÃ  ÚfilepathÚinteresting_originr¥  r8  Úbackend_descrq  r  s                       rv   Ú_execute_once_for_enginez5StateForActualGivenExecution._execute_once_for_engineÔ  sí  € ô !“{ˆØ!&Ððl	'Ü T×%7Ñ%7Ó%9Ô:ð ,¸fð,Ø!×.Ñ.¨tÓ4�FØ—{‘{¤f§l¡lÒ2°v·²Ø×+Ñ+¨DÑ1×5Ñ5°f·o±oÔFà"ŸO™O‘E÷,ð Ð!Ü!Ø—M‘MØEØ—y‘y×)Ñ)Ð*¨*°V°J¸iðIä×,Ñ,ô	ð\!Ø"Ÿm™m×3Ñ3°D·K±KÓ@�”ô %Õ&Ò/EÜ$ T¨9°dÓ;Ð;�6Ð;Ø"×1Ñ1‘Eà×+Ò+¨t×/JÒ/JØ (™à )˜Ø!1°$·-±-×2GÑ2GÐ1JÐKØ—M‘M×)Ñ)¨\Ñ9ò UÜ# FÐ,LÈeÓTÐTñ �ð2Ø/3¯}©}×/DÑ/DØ×0Ñ0ó0�DÔ,ðYØ(,¯©×(=Ñ(=¸d×>OÑ>OÓ(P�DÔ%ð$Ø!%§¡×!6Ñ!6°t·z±zÓ!B�D”Jð —‘”Ü"Ø"×3Ñ3Ø!×1Ñ1ØØ$+¨E¨7°&¸¸Ð"GØ#'×#4Ñ#4Ø"×6Ñ6Ø×0Ñ0Ü6°uÓ=ÒEÀØØ%)§]¡]×%DÑ%DÓ%Fô�ô $ BÔ'àŸ=™=×EÑEØ(ð Fó ò =�Cð 6�D×5Ñ5Ñ<¸Ó<ð=ð %'ˆDÕ!øðK #ŸO™O‘Eú÷,ñ ,ûô %ò 	FðFØ×!Ñ! !§(¡(°Q·Z±ZÐ!Õ@øÜò Fð ×3Ñ3°C¸Ó;ÀÐEûðFúõ Aûô
 $ò 	ð &*Ð"ØÜò 	ð äð
ä'Ó)ñ
ò 	ð Ü*Ó,ó A	Jô ˜!Ô/Ô0´S¸¿¹Ó5FÈ!Ò5Kð —\‘\ !‘_×2Ñ2ÒE°a·o±o‘à—_‘_�Ø!Ð!�2˜T�>×!×!Õ!�2˜T×!×!×!×!×!Ñ!�2×!×!Ó!�2×!×!Ô!˜T×!×!×!×!×!×!Ñ!Ü+¨BÓ/°Ñ2ˆHä" 8Ô,Ü" 1Ô&9Ô:ð
 !×)Ñ)ØœrŸv™v˜h j´·±°Ð8OÐPôð à�{Š{ô ˜t×/Ñ/Ó0°aÐ7ð
 +,�Ô'ô %Ó&¬)×*;Ñ*;Ò;Ô?TÔ?VÜ.>ØÔ0Ó2ó/�DÔ+ô # 4×#:Ñ#:Ô;à'+�Ô$ä%6×%EÑ%EÀaÓ%HÐ"ÙØ×'Ñ'Ð(:Ñ;×?Ñ?ÀÔFØ%×.Ñ.Ô2BÒBØ26�DÔ/Ø×'Ñ'×-Ñ-Ô/ðJØ×)Ñ)Ð*<Õ=øÜ"ò JØ×7Ñ7¸¸QÓ?ÀTÐIûðJúõ >ûðA	JûôZ (ò !Ø �—ð!ûô& ,ò 2Ø/1�D×,ð2ûô
 ,ò YØ(X�D×%ðYûô
 ,ò $Ø!#�D—Jð$ûð?!Ø"Ÿm™m×3Ñ3°D·K±KÓ@�•øÜ'ò !Ø �–ð!úô %Õ&Ò/EÜ$ T¨9°dÓ;Ð;�6Ð;Ø"×1Ñ1‘Eà×+Ò+¨t×/JÒ/JØ (™à )˜Ø!1°$·-±-×2GÑ2GÐ1JÐKØ—M‘M×)Ñ)¨\Ñ9ò UÜ# FÐ,LÈeÓTÐTñ �ð2Ø/3¯}©}×/DÑ/DØ×0Ñ0ó0�DÕ,øô ,ò 2Ø/1�DÖ,ð2úðYØ(,¯©×(=Ñ(=¸d×>OÑ>OÓ(P�DÕ%øÜ+ò YØ(X�DÖ%ðYúð$Ø!%§¡×!6Ñ!6°t·z±zÓ!B�D•JøÜ+ò $Ø!#�D–Jð$úð —‘”Ü"Ø"×3Ñ3Ø!×1Ñ1ØØ$+¨E¨7°&¸¸Ð"GØ#'×#4Ñ#4Ø"×6Ñ6Ø×0Ñ0Ü6°uÓ=ÒEÀØØ%)§]¡]×%DÑ%DÓ%Fô�ô $ BÔ'àŸ=™=×EÑEØ(ð Fó ò =�Cð 6�D×5Ñ5Ñ<¸Ó<ð=ð %'ˆDÕ!úsˆ  ŽK? ¨K2ªA"K!ÂK2ÂA
K? Ã$*X% Æ*X< Ç*Y Ç/*Y* Ë!K/Ë/K2Ë2K<Ë7K? Ë?	X"Ì	'L1Ì0MÌ1	MÌ:MÍMÍMÍZ Í:X"ÎIX×!W3×2X×3	X×<XØXØXØZ ØX"Ø"Z Ø%X9Ø8X9Ø<YÙYÙY'Ù&Y'Ù*Y>Ù=Y>ÚcÚ*Z.Ú-cÚ.[Ú>cÛ [ÛBcÝ*]:Ý9cÝ:^Þ
cÞ^ÞcÞ*^<Þ;cÞ<_ßcß_ßcß*_>ß=cß>`àcà`àCcr¡   ÚtitleÚcontentc          	      ó^   — t        t        || j                  | j                  ||¬«      «       y )N)r¡   r1  r2  rZ  r[  )rM   rK   rY  rZ  )r•   r¡   rZ  r[  s       rv   rR  z9StateForActualGivenExecution._deliver_information_messageŒ  s/   € ô 	ÜØØ×/Ñ/Ø×-Ñ-ØØôõ	
ru   c                 ód  — d}	 | j                   j                  }t        | j                  | j                  | j                  || j                  ¬«      }|| _        |j                  «        t        |j                  «       t        «       rt| j!                  ddt#        |j                  «      ¬«       t%        |j&                  x}t(        «      r|n |d«      j+                  d¬«      D ]  } | j                   d7i |¤Ž Œ |j,                  d	k(  ry|j.                  r.t1        |j.                  j3                  «       d
„ d¬«      | _        �n|j6                  d	k(  �rg }|j8                  t:        j<                  u r|j?                  d«       |j@                  tC        d|j,                  dz  «      kD  r+|j?                  |j@                  › d|j,                  › d�«       |jD                  tC        d|j,                  dz  «      kD  r+|j?                  |jD                  › d|j,                  › d�«       tG        | j
                  «      }tI        d|› ddjK                  |«      › �«      ‚tM        tN        d«      rrtP        sl| jS                  «       r\tU        jV                  «       sHtY        jZ                  dt\        › dtN        j^                  ja                  t\        «      › d�tb        d¬«       | j4                  sy| j                  jd                  rtf        s| j4                  dd…= g }ti        |jj                  «      }	|	r|	j?                  d«       tm        | jn                  | j                  «      }| j4                  D �].  }
g }|jq                  |
jr                  tu        |
jr                  «      ¬«      }|
jv                  |_;        d}d}|
jx                  }d}||u}|s­t{        j|                  d|fd||f«      d t        j€                  «       v st{        j‚                  |
«      rt{        j„                  |
«      nd t{        j„                  |«      t{        j„                  |«      d!œz  }d"d#|iz  }t‡        t{        jˆ                  |«      «      ‚dx}x}}|
jŠ                  }|€Æ|
jx                  }d}||u}|s™t{        j|                  d|fd$||f«      d%t        j€                  «       v st{        j‚                  |«      rt{        j„                  |«      nd%t{        j„                  |«      d&œz  }d'd(|iz  }t‡        t{        jˆ                  |«      «      ‚dx}}t�        |t�        |«      «      }	 t‘        |j>                  «      5  | j“                  |dd|
jx                  |f¬)«       ddd«       t•        d*«      ‚ tÇ        || j                  |	|jÈ                  r|jÊ                  s|jÈ                  ¬6«       yd¬6«       y# t        $ r" t        €t	        | j
                  «      }nd}Y �Œòw xY w# 1 sw Y   Œ‡xY w# t–        $ r@}t™        d+|
jx                  xs |g«      }|j?                  t›        ||«      «       Y d}~nÎd}~wtœ        $ r2}t™        d,|g«      }|j?                  t›        ||«      «       Y d}~n•d}~wtž        $ r†}|j¡                  ||
j¢                     «       |j¥                  t�        «       «      }|j?                  t›        ||«      «       t�        |t�        |«      «      }t§        j¨                  |«      }Y d}~nd}~ww xY w|j«                  «        t        «       r¥t­        | j®                  | j°                  |d-| j²                  |j´                  | j¶                  dtO        j¸                  «       d	   rd.nd/t»        |xs d0«      ||r'|j¼                  r|j¼                  › d1|j¾                  › �ndd2œ¬3«      }tÁ        |«       | j                  jÂ                  s�Œ™|j?                  d4tÅ        |
jr                  «      › d5�«       �ŒÃ# |j«                  «        t        «       r¥t­        | j®                  | j°                  |d-| j²                  |j´                  | j¶                  dtO        j¸                  «       d	   rd.nd/t»        |xs d0«      ||r'|j¼                  r|j¼                  › d1|j¾                  › �ndd2œ¬3«      }tÁ        |«       | j                  jÂ                  r)|j?                  d4tÅ        |
jr                  «      › d5�«       w w xY w)8zvRun the test function many times, on database input and generated
        input, using the Conjecture engine.
        TN)r   rÈ  Údatabase_keyrÇ  ÚinfozHypothesis Statistics)r¡   rZ  r[  Útest_functionr;  r   c                 ó,   — t        | j                  «      S rs   )rB   Únodes)Úds    rv   rw   z9StateForActualGivenExecution.run_engine.<locals>.<lambda>Ã  s   € œh q§w¡wÓ/€ ru   )rˆ  Úreversez¡Hypothesis tried every possible input, so the assumptions of this test are impossible to satisfy - not merely unlikely - and running more test cases cannot help.é   ré  z of zÿ test cases failed a .filter() or assume() condition. Try making your filters or assumes less strict, or rewrite using strategy parameters: st.integers().filter(lambda x: x > 0) fails less often (that is, never) when rewritten as st.integers(min_value=1).z^ test cases were too large to finish generating; try reducing the typical size of your inputs?z!Unable to satisfy assumptions of z. z Also, Ú
monitoringz/avoiding tracing test function because tool id z is already taken by tool ú.é   ©Ú
stacklevelrê   rœ   )Úmax_choicesr±  )z>%(py2)s
{%(py2)s = %(py0)s.expected_exception
} is not %(py5)sÚfalsifying_test_caser(  r)  r0  r³  rÙ   rµ  r¶  r   )r$  r#  r  zThis should be unreachablez�Inconsistent results: A test case failed on the first run but now succeeds (or fails with another error, or is for some reason not runnable).z]Unreliable assumption: A test case which satisfied assumptions on the first run now fails it.zminimal failing test caseÚpassedÚfailedzunexpected/flaky passú:)r$  Ústatus_reason_location)r1  r2  r3  r4  r5  rÜ   r6  r7  r>  Ústatus_reasonÚmetadataz8
You can reproduce this test case by temporarily adding z% as a decorator on your test function©Úunsound_backendrt   )frÞ   Ú!_hypothesis_internal_database_keyr¤  rx  rR   r—   r<   rY  r   rÈ  rÇ  r×  r!  rf   Ú
statisticsrO   rR  rd   r    r  rA   rQ  Ú
call_countr+  rC  rô   rÐ  Úvalid_test_casesÚexit_reasonr=   Úfinishedrš   Úinvalid_test_casesr¼  Úoverrun_test_casesrS   r0   rý   r™   r‰  r3   rã  r\   Ú	can_traceÚwarningsÚwarnrZ   rf  Úget_toolr,   rT  rU  re   Úbest_observed_targetsr]   rÔ  Únew_conjecture_datar¿   rÊ   r  r,  r;  r»  r9  r:  r<  r=  r>  r?  rG  rG   rH   rc   rI  ÚNotImplementedErrorr/   r'   rˆ   r1   r�   r«  rW  rR  rD   rH  rX  rN   rY  rZ  r[  r  r\  Úexc_inforŒ   ÚfilenameÚlinenorM   Ú
print_blobrÄ   Ú_raise_to_userÚ_verified_by_backendÚ_backend_found_failure)r•   Ú__tracebackhide__r^  r¥  rï   r  ÚexplanationsÚrepÚerrors_to_reportÚreport_linesrl  r‰   Úran_test_caser2  r-  r`  re  r]  rÃ  rp  rG  rÙ   rd  ra  r°  rÖ   Úerror_with_tbrq  s                               rv   Ú
run_enginez'StateForActualGivenExecution.run_engine™  s*  € ð
 !Ðð	$Ø×,Ñ,×NÑNˆLô "Ø×)Ñ)Ø—]‘]Ø—;‘;Ø%Ø×.Ñ.ô
ˆð ˆŒð 	�
‰
ŒÜ˜×)Ñ)Ô*Ü Ô"Ø×-Ñ-ØØ-Ü+¨F×,=Ñ,=Ó>ð .ô ô   V§_¡_Ð 4 Ô6GÔH‘ÉaÐPTËgß*Ñ*°OÐ*ÓDò9�ð 2�×1Ñ1Ñ8°CÓ8ð9ð
 ×Ñ Ò!ØØ×(Ò(Ü)/Ø×-Ñ-×4Ñ4Ó6Ù/Øô*ˆDÖ&ð ×&Ñ&¨!Ó+Ø!�Ø×%Ñ%¬×)<Ñ)<Ñ<Ø ×'Ñ'ð'ôð ×,Ñ,¬s°2°v×7HÑ7HÈAÑ7MÓ/NÒNØ ×'Ñ'Ø!×4Ñ4Ð5°T¸&×:KÑ:KÐ9Lð MWð Wôð ×,Ñ,¬s°2°v×7HÑ7HÈAÑ7MÓ/NÒNØ ×'Ñ'Ø!×4Ñ4Ð5°T¸&×:KÑ:KÐ9Lð MDð Dôô
 6°d·i±iÓ@�Ü#Ø7¸°u¸BØ —~‘~ lÓ3Ð4ð6óð ô ”C˜Ô&ÝØ×"Ñ"Ô$Ü×$Ñ$Ô&ä�M‰MØAÜ%Ð&Ð&@Ü—>‘>×*Ñ*Ô+=Ó>Ð?¸qðBô "Øõð ×)Ò)ØØ—-‘-×4Ò4Õ9Uà×*Ñ*¨3¨B¨3Ð/ð
 Ðä'¨×(DÑ(DÓEˆÙØ×Ñ Ô#ä(¨×)<Ñ)<¸d¿m¹mÓLˆØ$(×$>Ñ$>ó ^	Ð ØˆIà"×6Ñ6Ø$×,Ñ,ÜÐ 4× <Ñ <Ó=ð 7ó ˆMð +?×*LÑ*LˆMÔ'ØˆBØˆFØ'×:Ñ:ÐFÀ$ÐFÐ:À$ÐF×F×FÕFÐ:À$×F×F×F×F×FÑFÐ'×F×FÓFÐ'×F×FÔFÐ:×F×FÒFÀ$×F×F×F×F×F×FÓFØ!5×!HÑ!HÐØ!Ð)Ø*×=Ñ=�Ø"&Ð&�s $�×&×&Õ&�s $×&×&×&×&×&Ñ&�s×&×&Ó&�s×&×&Ô& $×&×&×&×&×&×&Ñ&Ü%5°cÔ;PÐQTÓ;UÓ%VÐ"ðNÜ" 9×#3Ñ#3Ó4ñ 	Ø×%Ñ%Ø%Ø(,Ø!%à0×CÑCØ.ð*ð	 &ô ÷	ôV *Ð*FÓGÐGðy^	ô@ 	ØØ�M‰MØð ×.Ò.°v×7TÒ7Tð ×+Ñ+ö	
ð ö	
øôU ò 	$Ü Ð(Ü.¨t¯y©yÓ9‘à#�úð		$ú÷v	ð 	ûô ò Iô #ðBð *×<Ñ<ÒAÀÐBó�ð !×'Ñ'¬¸	À3Ó(G×HÑHûÜ(ò IÜ"ðAà�Có�ð
 !×'Ñ'¬¸	À3Ó(G×HÑHûÜ ò =à× Ñ  Ð.B×.UÑ.UÑ!VÔWØ !× 0Ñ 0Ô1FÓ1HÓ I�Ø ×'Ñ'¬¸	À=Ó(QÔRÜ% aÔ)>¸qÓ)AÓB�Ü*×9Ñ9¸!Ó<•ûð=úð ×$Ñ$Ô&Ü(Ô*ä&Ø"&×"7Ñ"7Ø!%×!5Ñ!5Ø*Ø&AØ'+×'8Ñ'8Ø"/×"CÑ"CØ#×4Ñ4Ø!%Ü+.¯<©<«>¸!Ò+<™xÀ(Ü&)¨&Ò*KÐ4KÓ&Là)+ñ $*¨f¯oªoð $*§?¡?Ð"3°1°V·]±]°OÑ Dà%)ñ"ô�Bô( (¨Ô+ð —=‘=×+Ô+Ø×$Ñ$ØSÜ1Ð2F×2NÑ2NÓOÐPð Q?ð?öøð9 ×$Ñ$Ô&Ü(Ô*ä&Ø"&×"7Ñ"7Ø!%×!5Ñ!5Ø*Ø&AØ'+×'8Ñ'8Ø"/×"CÑ"CØ#×4Ñ4Ø!%Ü+.¯<©<«>¸!Ò+<™xÀ(Ü&)¨&Ò*KÐ4KÓ&Là)+ñ $*¨f¯oªoð $*§?¡?Ð"3°1°V·]±]°OÑ Dà%)ñ"ô�Bô( (¨Ô+ð —=‘=×+Ò+Ø×$Ñ$ØSÜ1Ð2F×2NÑ2NÓOÐPð Q?ð?õð ,ús   „W" ÕXÕ("XÖ
XÖ`/×"'XØXØX	ØXØ	\+Ø%6Y Ù`/Ù \+Ù,(ZÚ`/Ú\+Ú%A<\&Ü!`/Ü&\+Ü+`/à/D d/)rƒ   r„   r…   r}  r   r   r¶   r   rA  Úintr¦   r–   r2  rŒ   rZ  rã  r  rI  r(   r�   r'   r.  r9   rY  rL   rR  r’  rt   ru   rv   r  r  œ  s  „ ð 26ò*5àð*5ð �s˜C�xÑ ð*5ð ð	*5ð
 ð*5ð ð*5ð ˜S $˜Y™¨$Ñ.ó*5ðX ð@ ò @ó ð@ò
,ð: dð :¨xó :ð@ ØØØôiðV4Øð4Ø)6ð4à	ó4ð"v'¨^ð v'Àó v'ðp
Ø*ð
Ø36ð
ØADÀtÁð
à	ó
ó^
ru   r  Úerrorsc           
      óº  — t        t        «      }| D ]5  }t        j                  |j                  «      }||   j                  |«       Œ7 g }|j                  «       D ]|  }t        |«      dk(  r|j                  |d   «       Œ&d„ }t        ||¬«      }|d   }t        |«      dz
  }	t        |j                  d|	› dd|	dkD  z  › d�«       |j                  |«       Œ~ |S )	z³
    Group explicit example errors by their InterestingOrigin, keeping only the
    simplest one, and adding a note of how many other examples failed with the same
    error.
    rÏ   r   c                 óV   — | j                   r| j                   d   nd}t        |«      |fS )Nr   rœ   )r‰   rÊ   )rÓ   Úrepr_strs     rv   Úshortlex_keyz/_simplify_explicit_errors.<locals>.shortlex_key‹  s'   € Ø16·²˜5Ÿ?™?¨1Ò-Àb�Ü˜H› xÐ0Ð0ru   r‡  z(note: z other explicit exampler	  z< also failed with this error; use Verbosity.verbose to view))
r   r‹   rD   rH  rŠ   rš   rô   rÊ   rC  r4   )
r”  Ú	by_originrÓ   r-  rû  Úgroupr˜  Úsorted_groupÚsimplestÚother_counts
             rv   Ú_simplify_explicit_errorsrž  z  sõ   € ô ALÌDÓ@Q€IØò (ˆÜ"×1Ñ1°%·/±/ÓBˆØ�&Ñ× Ñ  Õ'ð(ð €FØ×!Ñ!Ó#ò $ˆÜˆu‹:˜Š?Ø�M‰M˜% ™(Õ#ò1ô " %¨\Ô:ˆLØ# A‘ˆHÜ˜e›* q™.ˆKÜØ×"Ñ"Ø˜+˜Ð&=¸cÀ[ÐSTÁ_Ñ>UÐ=Vð WNð Nôð
 �M‰M˜(Õ#ð#$ð& €Mru   rs  c                ó  — d}g }| D ][  }|j                   D ]J  }t        |j                  |«       |j                  |«      sŒ+|j	                  |j                  |«      «       ŒL Œ] t        j                  r|t        j                  _        t        | «      dk(  r| d   j                  }	n›| sedddt        j                  «       v st        j                  | «      rt        j                  | «      ndiz  }
t        t        j                   |
«      «      ‚t#        dt        | «      › d|› d	�| D �cg c]  }|j                  ‘Œ c}«      }	|j$                  t&        j(                  k\  r|D ]  }t        |	|«       Œ |rt        |	d
|›d�«       |	‚c c}w )zAHelper function for attaching notes and grouping multiple errors.zFailing test case: rÏ   r   zassert %(py0)sr  rŽ  zHypothesis found z distinct failuresrg  zbackend=zD claimed to verify this test passes - please send them a bug report!)r‰   r4   rŠ   rW  rš   r  rF   rÚ  Ú_hypothesis_failing_examplesrÊ   r9  r:  r;  r<  r=  r>  r?  rª  Ú	verbosityr   Únormal)rŽ  r   Útarget_linesÚtrailerrt  Úfailing_prefixÚlsrÓ   ÚnoteÚthe_error_hypothesis_foundÚ@py_format1Úlines               rv   rˆ  rˆ  œ  sa  € ð +€NØ	€BØ!ò =ˆØ—O‘Oò 	=ˆDÜ�U—_‘_ dÔ+Ø�‰˜~Õ.Ø—	‘	˜$×+Ñ+¨NÓ;Õ<ñ	=ð=ô
 × Ò ØACÔ×!Ñ!Ô>ä
ÐÓ Ò!Ø%5°aÑ%8×%BÑ%BÑ"á××××ÖÐ××ÓÐ×××××Ü%7Ø¤Ð$4Ó 5Ð6Ð6HÈÈ	ÐQRÐSØ*:Ö; ˆU�_‹_Ò;ó&
Ð"ð
 ×ÑœY×-Ñ-Ò-Ø ò 	7ˆDÜÐ/°Õ6ð	7ñ ÜØ&Ø�Ð)ð *-ð -ô	
ð %Ð$ùò <s   Ä)F
c              +   óL   K  — t        j                  dt        d¬«       d–— y­w)a#  Monkeypatch for `unittest.TestCase.subTest` during `@given`.

    If we don't patch this out, each failing test case is reported as a
    separate failing test by the unittest test runner, which is
    obviously incorrect. We therefore replace it for the duration with
    this version.
    z subTest per-test-case reporting interacts badly with Hypothesis trying hundreds of test cases, so we disable it for the duration of any test that uses `@given`.é   ri  N)r~  r  r,   )r•   r  Ú__s      rv   Úfake_subTestr®  Á  s&   è ø€ ô ‡M�Mð	'ô 	Øõô 
ùrð   c                   ój   — e Zd ZU dZeed<   eed<   eed<   edeee	z  e
z  ez  gedz  f   fd„«       Zy)rã   a  This object is provided as the .hypothesis attribute on @given tests.

    Downstream users can reassign its attributes to insert custom logic into
    the execution of each case, for example by converting an async into a
    sync function.

    This must be an attribute of an attribute, because reassignment of a
    first-level attribute would not be visible to Hypothesis if the function
    had been decorated before the assignment.

    See https://github.com/HypothesisWorks/hypothesis/issues/1257 for more
    information.
    rß   rà   rá   r�   Nc                 ó|   — 	 | j                   S # t        $ r$ | j                  «       | _         | j                   cY S w xY w)aA  
        Run the test as a fuzz target, driven with the ``buffer`` of bytes.

        Depending on the passed ``buffer`` one of three things will happen:

        * If the bytestring was invalid, for example because it was too short or was
          filtered out by |assume| or |.filter|, |fuzz_one_input| returns ``None``.
        * If the bytestring was valid and the test passed, |fuzz_one_input| returns
          a canonicalised and pruned bytestring which will replay that |test case|.
          This is provided as an option to improve the performance of mutating
          fuzzers, but can safely be ignored.
        * If the test *failed*, i.e. raised an exception, |fuzz_one_input| will
          add the pruned buffer to :ref:`the Hypothesis example database <database>`
          and then re-raise that exception.  All you need to do to reproduce,
          minimize, and de-duplicate all the failures found via fuzzing is run
          your test suite!

        To reduce the performance impact of database writes, |fuzz_one_input| only
        records failing inputs which would be valid shrinks for a known failure -
        meaning writes are somewhere between constant and log(N) rather than linear
        in runtime.  However, this tracking only works within a persistent fuzzing
        process; for forkserver fuzzers we recommend ``database=None`` for the main
        run, and then replaying with a database enabled if you need to analyse
        failures.

        Note that the interpretation of both input and output bytestrings is
        specific to the exact version of Hypothesis you are using and the strategies
        given to the test, just like the :ref:`database <database>` and
        |@reproduce_failure|.

        Interaction with |@settings|
        ----------------------------

        |fuzz_one_input| uses just enough of Hypothesis' internals to drive your
        test function with a bytestring, and most settings therefore have no effect
        in this mode.  We recommend running your tests the usual way before fuzzing
        to get the benefits of health checks, as well as afterwards to replay,
        shrink, deduplicate, and report whatever errors were discovered.

        * |settings.database| *is* used by |fuzz_one_input| - adding failures to
          the database to be replayed when
          you next run your tests is our preferred reporting mechanism and response
          to `the 'fuzzer taming' problem <https://blog.regehr.org/archives/925>`__.
        * |settings.verbosity| and |settings.stateful_step_count| work as usual.
        * The |~settings.deadline|, |~settings.derandomize|, |~settings.max_examples|,
          |~settings.phases|, |~settings.print_blob|, |~settings.report_multiple_bugs|,
          and |~settings.suppress_health_check| settings do not affect |fuzz_one_input|.

        Example Usage
        -------------

        .. code-block:: python

            @given(st.text())
            def test_foo(s): ...

            # This is a traditional fuzz target - call it with a bytestring,
            # or a binary IO object, and it runs the test once.
            fuzz_target = test_foo.hypothesis.fuzz_one_input

            # For example:
            fuzz_target(b"\x00\x00\x00\x00\x00\x00\x00\x00")
            fuzz_target(io.BytesIO(b"\x01"))

        .. tip::

            If you expect to discover many failures while using |fuzz_one_input|,
            consider wrapping your database with |BackgroundWriteDatabase|, for
            low-overhead writes of failures.

        .. tip::

            | Want an integrated workflow for your team's local tests, CI, and continuous fuzzing?
            | Use `HypoFuzz <https://hypofuzz.com/>`__ to fuzz your whole test suite, and find more bugs with the same tests!

        .. seealso::

            See also the :doc:`/how-to/external-fuzzers` how-to.
        )Ú _HypothesisHandle__cached_targetr¤  rà   rÛ  s    rv   Úfuzz_one_inputzHypothesisHandle.fuzz_one_inputè  s@   € ðn	(Ø×'Ñ'Ð'øÜò 	(Ø#'×#8Ñ#8Ó#:ˆDÔ Ø×'Ñ'Ò'ð	(ús   ‚ Ž*;º;)rƒ   r„   r…   r®   r   r†   r2  r   ÚbytesÚ	bytearrayÚ
memoryviewr   r²  rt   ru   rv   rã   rã   Ô  sW   … ñð ƒOØÓØÓàðZ(à	�5˜9Ñ$ zÑ1°HÑ<Ð=¸uÀt¹|ÐKÑ	LòZ(ó ñZ(ru   rã   r¿  c                 ó   — y rs   rt   )r¿  s    rv   Úgivenr·  F  ó   € ð
 ru   Ú_given_arguments).Nc                   ó   — y rs   rt   )r¹  s    rv   r·  r·  N  r¸  ru   rá   c                   ó   — y rs   rt   )rá   s    rv   r·  r·  V  r¸  ru   c                  óp   ‡ ‡— t        «       r#t        t        «       dt        j                  «       ˆ ˆfd„}|S )a†  
    The |@given| decorator turns a function into a Hypothesis test. This is the
    main entry point to Hypothesis.

    .. seealso::

        See also the :doc:`/tutorial/introduction` tutorial, which introduces
        defining Hypothesis tests with |@given|.

    .. _given-arguments:

    Arguments to ``@given``
    -----------------------

    Arguments to |@given| may be either positional or keyword arguments:

    .. code-block:: python

        @given(st.integers(), st.floats())
        def test_one(x, y):
            pass

        @given(x=st.integers(), y=st.floats())
        def test_two(x, y):
            pass

    If using keyword arguments, the arguments may appear in any order, as with
    standard Python functions:

    .. code-block:: python

        # different order, but still equivalent to before
        @given(y=st.floats(), x=st.integers())
        def test(x, y):
            assert isinstance(x, int)
            assert isinstance(y, float)

    If |@given| is provided fewer positional arguments than the decorated test,
    the test arguments are filled in on the right side, leaving the leftmost
    positional arguments unfilled:

    .. code-block:: python

        @given(st.integers(), st.floats())
        def test(manual_string, y, z):
            assert manual_string == "x"
            assert isinstance(y, int)
            assert isinstance(z, float)

        # `test` is now a callable which takes one argument `manual_string`

        test("x")
        # or equivalently:
        test(manual_string="x")

    The reason for this "from the right" behavior is to support using |@given|
    with instance methods, by automatically passing through ``self``:

    .. code-block:: python

        class MyTest(TestCase):
            @given(st.integers())
            def test(self, x):
                assert isinstance(self, MyTest)
                assert isinstance(x, int)

    If (and only if) using keyword arguments, |@given| may be combined with
    ``**kwargs`` or ``*args``:

    .. code-block:: python

        @given(x=integers(), y=integers())
        def test(x, **kwargs):
            assert "y" in kwargs

        @given(x=integers(), y=integers())
        def test(x, *args, **kwargs):
            assert args == ()
            assert "x" not in kwargs
            assert "y" in kwargs

    It is an error to:

    * Mix positional and keyword arguments to |@given|.
    * Use |@given| with a function that has a default value for an argument.
    * Use |@given| with positional arguments with a function that uses ``*args``,
      ``**kwargs``, or keyword-only arguments.

    The function returned by given has all the same arguments as the original
    test, minus those that are filled in by |@given|. See the :ref:`notes on
    framework compatibility <framework-compatibility>` for how this interacts
    with features of other testing libraries, such as :pypi:`pytest` fixtures.
    aû  Nesting @given tests results in quadratic generation and shrinking behavior, and can usually be more cleanly expressed by replacing the inner function with an st.data() parameter on the outer @given.

If it is difficult or impossible to refactor this test to remove the nested @given, you can disable this health check with @settings(suppress_health_check=[HealthCheck.nested_given]) on the outer @given. See https://hypothesis.readthedocs.io/en/latest/reference/api.html#hypothesis.HealthCheck for details.c                 ó|  •‡‡‡‡‡‡‡— t        j                  | «      rt        d«      ‚dt        j                  v r�dt        j                  v r{t        t        t        t        j                  d   j                  j                  d«      d d «      «      dk\  r2t        | t        j                  d   j                  «      rt        d«      ‚t        ‰«      }t        ‰«      Št        | «      Š|t        fk(  r_‰s]‰j                  j!                  «       D �ci c]7  }|j"                  |j$                  |j&                  fv r|j(                  t        “Œ9 c}Šd}t+        | ‰|‰«      }|�|S |rç‰ }|sed	d
dt-        j.                  «       v st1        j2                  ‰«      rt1        j4                  ‰«      ndiz  }t7        t1        j8                  |«      «      ‚d }‰j                  j!                  «       D �cg c]&  }|j"                  |j$                  u r|j(                  ‘Œ( }}t        t;        t=        |d d d…   |d d d…   d¬«      «      d d d…   «      Š~t?        ‰‰«      Šd‰j!                  «       v rtA        | «      }‰jC                  «       D ��	cg c]  \  }}	|	du sŒ|‘Œ c}	}D ]E  }|vr$tE        d|› d| jF                  › d|› d�| ‰¬«      c S tI        jJ                  ||   «      ‰|<   ŒG tM        d„ ¬«      Ši ŠtO        «       ŠtQ        | «      tS        | jF                  | jT                  ‰«      ˆˆˆˆˆˆˆfd„«       «       ŠdtV        tX        tZ        z  t\        z  t^        z  gtX        d z  f   fˆˆˆˆfd„}
ta        | «      D ]8  }|jc                  d«      rŒte        ‰|«      rŒ"tg        ‰|ti        | |«      «       Œ: d‰_5        te        | d«      rd‰_6        ti        | dd «      ‰_7        ti        | dd «      xs tp        jr                  ‰_:        ti        | dd «      ‰_;        ty        | |
‰«      ‰_=        ‰S c c}w c c}w c c}	}w ) Nz#@given cannot be applied to a classÚ_pytestz_pytest.fixturesrg  r¬  )é   rè  z,@given cannot be applied to a pytest fixturert   úassert not %(py0)sr  rå   rê   Fr  .zpassed z	=... for z, but z has no type annotationrè   c                  ó   — t         S rs   rk   rt   ru   rv   rw   z2given.<locals>.run_test_as_given.<locals>.<lambda>  s   € ´W€ ru   )Ú	prev_selfc            	      ó¨  •— d}‰.5  ‰-D ]  }d‰-|<   Œ	 t        j                  «       }t        ‰-«      dkD  }|‰-|<   d d d «       	 ‰/j                  j                  }t        |dd«      rt        d|j                  › d�«      ‚‰/j                  }t        |‰/«      }t        ‰/| |‰)‰*j                  «      \  } }}	t        j                  |«      r4t        |	j                  «      t         u rt        d|j                  › d�«      ‚|	j                  }
t#        |	j                  t$        «      rD|j                  t'        t$        «      v r)t)        |d	|j                  › d
�t*        j,                  «       t/        |
«      r"t        dt1        |
«      j2                  › d�«      ‚t        t1        |	j                  «      |j                  d «      ‰/u r|	j                  nd }‰,j4                  t6        u r|‰,_        n7|‰,j4                  ur)t)        |d|j2                  › d�t*        j8                  «       t;        |	|||‰/‰-¬«      }‰/j<                  x}	 �`|\  }}|t>        k7  rt        d|› dt>        ›d�«      ‚	 |jA                  tC        jD                  tG        |«      «      dd¬«       tI        d«      ‚tO        tQ        |‰/| |‰+«      «      x}�r\g }t        |«      }d}||k(  }|}|s|jR                  }|jT                  }|}|�s©tW        jX                  d|fd||f«      dt[        j\                  «       v stW        j^                  t        «      rtW        j`                  t        «      nddt[        j\                  «       v stW        j^                  |«      rtW        j`                  |«      ndtW        j`                  |«      tW        j`                  |«      dœz  }dd|iz  }|jc                  |«       |s€dd t[        j\                  «       v stW        j^                  |«      rtW        j`                  |«      nd tW        j`                  «      tW        j`                  «      d!œz  }|jc                  |«       tW        jd                  |d«      i z  }d"d#|iz  }tg        tW        jh                  |«      «      ‚d x}x}x}x}x}x}}t#        |d$   jj                  tm        «       «      r|d d$…= |jR                  jn                  tp        jr                  k  rtu        |«      }tw        ||jR                  g d%«       tx        jz                  |jR                  j|                  v xr t        ‰/d&d'«      }t        j€                  d(«      }tx        j‚                  |j|                  v s0tx        j„                  |j|                  v s|s|‚	 ‰.5  ‰-= d d d «       y 	 t#        |
t$        «      rPt‡        |
d)«      rD|
jˆ                  }	 t‹        jŒ                  tŽ        |
«      |
_D        |j‘                  «        ||
_D        n|j‘                  «        |s|jª                  s|‚‰.5  ‰-= d d d «       y # 1 sw Y   �ŒxY w# tJ        $ r tI        d«      d ‚tL        $ r tI        d«      d ‚w xY w# 1 sw Y   y xY w# ||
_D        w xY w# t’        $ �rŽ} ‰/j”                  }!|j–                  }d }||u}"|"s­tW        jX                  d*|"fd+||f«      d t[        j\                  «       v stW        j^                  |«      rtW        j`                  |«      nd tW        j`                  |«      tW        j`                  |«      d,œz  }#d-d.|#iz  }$tg        tW        jh                  |$«      «      ‚d x}x}"}|j–                  j˜                  j›                  d/«      d0k(  }%t�        |«      5  |!�;|jž                  r|%r-t         rd1|!› �nd2}&|%r
d3|!› d4|&› d5�}'n	d6|!› d4|&› d5�}'t£        |'«       | j¥                  t#        | t¦        «      rd «      }(|(‚t©        «       «      }(|(‚# 1 sw Y   nxY wY d } ~ �Œd } ~ ww xY w# 1 sw Y   y xY w# ‰.5  ‰-= d d d «       w # 1 sw Y   w xY wxY w)7NTr   râ   Fz$You have applied @given to the test a   more than once, which wraps the test several times and is extremely slow. A similar effect can be gained by combining the arguments of the two calls to given. For example, instead of @given(booleans()) @given(integers()), you could write @given(booleans(), integers())z=Hypothesis doesn't know how to run async test functions like zã.  You'll need to write a custom executor, or use a library like pytest-asyncio or pytest-trio which can handle the translation for you.
    See https://hypothesis.readthedocs.io/en/latest/details.html#custom-function-executionz&You have applied @given to the method z_, which is used by the unittest runner but is not itself a test. This is not useful in any way.z'You have applied @given to a method on zÁ, but this class does not inherit from the supported versions in `hypothesis.extra.django`.  Use the Hypothesis variants to ensure that each test case is run in a separate database transaction.zThe method aU   was called from multiple different executors. This may lead to flaky tests and nonreproducible errors when replaying from database.

Unlike most health checks, HealthCheck.differing_executors warns about a correctness issue with your test. We therefore recommend fixing the underlying issue, rather than suppressing this health check. However, if you are confident this health check can be safely disabled, you can do so with @settings(suppress_health_check=[HealthCheck.differing_executors]). See https://hypothesis.readthedocs.io/en/latest/reference/api.html#hypothesis.HealthCheck for details.rÆ  z_Attempting to reproduce a failure from a different version of Hypothesis. This failure is from z , but you are currently running z:. Please change your Hypothesis version to a matching one.)r$  r#  zCExpected the test to raise an error, but it completed successfully.zThe shape of the test data has changed in some way from where this blob was defined. Are you sure you're running the same test?zkThe test data failed to satisfy an assumption in the test. Have you added it since this blob was generated?rÏ   )ú==)z0%(py5)s
{%(py5)s = %(py2)s(%(py3)s)
} == %(py8)srÊ   r”  )r  r  r   r"  z%(py10)sÚpy10zT%(py16)s
{%(py16)s = %(py14)s
{%(py14)s = %(py12)s.settings
}.report_multiple_bugs
}r  )Úpy12Úpy14Úpy16zassert %(py19)sÚpy19rê   z in explicit examplesr’   rt   z<Hypothesis has been told to run no test cases for this test.ÚsubTestr±  r'  r(  r)  r0  zstopped-becausezshrinking was very slowz., or by running pytest with --hypothesis-seed=rœ   z†
This test function exited early because it took too long to shrink. If desired for debugging, you can reproduce this by adding @seed(z) to this testrg  z/You can reproduce this failure by adding @seed()Vrñ  rò  rÊ   rä   rß   rµ   r-   rƒ   r²   r{  rƒ  ró   ÚinspectÚiscoroutinefunctionr¦  r~  r˜  r    r   ÚdirrJ   r   Únot_a_test_methodr5   r¡   r…   rÂ  rl   Údiffering_executorsr  r½   ro   rI  r9   rH  r×   r%   r/   r1   r‹   rs  r   rT  r;  r»  r9  r:  r<  r=  rš   Ú_format_boolopr>  r?  rŠ   rV  r¡  r   r  rž  rˆ  r   rF  rG  r…  r‹  ÚreuseÚgenerater™   rÊ  ÚtypesÚ
MethodTyper®  r’  r�   rv  r×  rv  r€  r   rÒ  Úrunning_under_pytestra   rR  rª  rH   rÑ  )0rÜ   r   r‹  Úoverlap_thread_idÚthreadidÚhas_existing_threadsr—   r   rÈ  r‚  r¥  Úcur_selfr  r¾   Úexpected_versionÚfailurer”  r`  re  rf  ro  rn  Ú@py_assert13Ú@py_assert15rg  Ú@py_format11Ú@py_format17Ú@py_format18Ú@py_format20Úran_explicit_examplesÚSKIP_BECAUSE_NO_TEST_CASESrÊ  r°  Úgenerated_seedr]  rÃ  rp  Ústopped_because_slow_shrinkingÚpytest_extra_msgr  r¨  rå   Únew_signaturerþ   Úthread_localrÇ  Úthread_overlap_lockrÞ   s0                                            €€€€€€€rv   rÞ   z6given.<locals>.run_test_as_given.<locals>.wrapped_test!  sÔ  ø€ ð !%ÐØ$ñ @Ø)7ò =Ð%Ø8<�NÐ#4Ò5ð=ô %×.Ñ.Ó0�ô (+¨>Ó':¸QÑ'>Ð$Ø+?�˜xÑ(÷@ðp1Ø#×.Ñ.×9Ñ9�Ü˜4Ð!5°uÔ=Ü)Ø>¸t¿}¹}¸oð N9ð 9óð ð (×IÑI�Ü4°T¸<ÓH�Ü+EØ ØØØ Ø!×,Ñ,ó,Ñ(�	˜6 5ô ×/Ñ/°Ô5Ü$ U§[¡[Ó1Ô5EÑEô *ØWØŸ=™=˜/ð *ZðZóð ð Ÿ™�Ü˜eŸk™k¬8Ô4¸¿¹Ì#ÌhË-Ñ9WÜ%Ø Ø@ÀÇÁÀð P9ð 9ô $×5Ñ5ôô ' vÔ.ä)ØAÜ ›<×4Ñ4Ð5ð 60ð0óð ô œt E§K¡KÓ0°$·-±-ÀÓFÈ,ÑVð —K’Kàð ð
  ×)Ñ)¬WÑ4Ø-5�LÕ*Ø \×%;Ñ%;Ñ;Ü%Ø Ø% d×&7Ñ&7Ð%8ð 9'ð 'ô $×7Ñ7ô!ô& 5ØØØØØ Ø#1ô�ð *6×)`Ñ)`Ð`Ð%Øðð 1BÑ-Ð$ gØ'¬;Ò6Ü-ðKØK[ÐJ\ð ]9Ü9D¸ð HDðDóð ð$Ø×*Ñ*Ü*×6Ñ6´~ÀgÓ7NÓOØ,0Ø%)ð +ô ô
 .ð6óð ô$ "Ü-Ø˜|¨Y¸Àóóð �6ñ ñ Sœ3˜v›;ÐR¨!ÐR˜;¨!Ñ+ÔR¨u¯~©~ÐR¨~×/RÑ/RÐRÐ/R×R×RÖR˜;¨!×R×R×R×R×RÑRœ3×R×RÓRœ3×R×R×R×R×RÒR˜v×R×RÓR˜v×R×RÔR˜;×R×RÒR¨!×R×R×R×R×R×R×R×R×RÐR¨u×R×RÓR¨u×R×RÔR¨~×R×RÒRÐ/R×R×R×R×R×R×R×R×R×R×R×R×RÕRô
 " &¨¡*×"6Ñ"6Ô8RÓ8TÔUØ" 3 B 3˜Kà—~‘~×/Ñ/´)×2CÑ2CÒCô ";¸6Ó!B˜ä" 6¨5¯>©>¸2Ð?VÔWô —N‘N e§n¡n×&;Ñ&;Ð;ò RÜ Ð.LÈbÓQð &ô .6×->Ñ->ØRó.Ð*ô —K‘K 8§?¡?Ñ2´e·n±nÈÏÉÑ6Wá0Ø8Ð8ØðH )ñ 1Ø& xÐ0÷1ð 1ðE=9Ü! &¬(Ô3¼ÀÈ	Ô8RØ"(§.¡.˜ð5Ü-2×-=Ñ-=¼lÈFÓ-S˜FœNØ!×,Ñ,Ô.à-4˜F�Nà×(Ñ(Ô*ñl .°×1DÒ1DØ4Ð4à(ñ 1Ø& xÐ0÷1ð 1÷s@ñ @ûôD $ò $Ü-ð<óð  $ð	$ô
 1ò $Ü-ðUóð  $ð$ð$ú÷b1ð 1ûðw .5˜F�Nûô %ó 39ð
 %×LÑLð #ð !Ÿ=™=Ð4°Ð4˜=°Ð4×4×4Õ4˜=°×4×4×4×4×4Ñ4˜5×4×4Ó4˜5×4×4Ô4˜=×4×4Ò4°×4×4×4×4×4×4Ó4àŸ™×0Ñ0×4Ñ4Ð5FÓGØ4ñ5ð 3ô (¨Ó1ñ '9Ø)Ð5Ø %× 5Ò 5Ñ9Wõ $8ð%9Ø9GÐ8Hñ%Jð &(ð -ñ  >ð%NàN\ÐM]ð ^3Ø3CÐ2DÀAð%Gñ !$ð%-Ø-;Ð,<¸NØ'7Ð&8¸ð%;ð !$ô
 # 3œKð 67×5EÑ5Eä)¨!Ô-?Ô@ð !ó6Ð2ð
 9Ð8ô "7Ó!8ó6Ð2ð
 9Ð8÷O'9ð '9úõ '9ûð39ú÷p1ð 1ûÐ(ñ 1Ø& xÐ0÷1÷ 1ñ 1ýs·   †4X<ÁH `5 É$;Y	 ÊK=`5 ÖY6Ö-(Z ×/Z ØZ Ø`5 Ø/`)Ø<YÙ	*Y3Ù3`5 Ù6Y?Ú	ZÚZ Ú
`&ÚD`!ÞA1`à`	à`!à`5 à!`&à&`5 à)`2à5aà8aà<	aáaá
ar�   c                  óF  •‡‡	‡
‡— ‰j                   j                  } t        ‰j                  d ¬«      Š
t	        | ‰«      }t        ‰di ‰‰j                  «      \  }}}| }|sedddt        j                  «       v st        j                  |«      rt        j                  |«      ndiz  }t        t        j                  |«      «      ‚d }| }|sedddt        j                  «       v st        j                  |«      rt        j                  |«      ndiz  }t        t        j                  |«      «      ‚d }t        || ‰
|‰‰¬«      Št        | «      dz   Ši Š	d	t         t"        z  t$        z  t&        z  d
t         d z  fˆˆ	ˆ
ˆfd„}t(        j*                  j,                  |_        |S )N)Úparentrð  rt   rÀ  r  Ú_argsÚ_kwargsrÆ  s
   .secondaryÚbufferr�   c                 óT  •— t        | t        j                  «      r| j                  t        «      } t
        t        t        f}t        | |«      }|sÖddt        j                  «       v st        j                  t         «      rt        j                  t         «      nddt        j                  «       v st        j                  | «      rt        j                  | «      ndt        j                  |«      t        j                  |«      dœz  }t        t        j                  |«      «      ‚d x}}t        d t         d| i¬«      }	 ‰j#                  |«       t$        j&                  }	 t-        «       r‚|j/                  «        t1        ‰j2                  ‰j4                  |d‰j6                  |j8                  ‰j:                  d ||j<                  j?                  «       ¬«
      }tA        |«       i ‰_        	 |j<                  }t        |t         «      }	|	�sddt        j                  «       v st        j                  t         «      rt        j                  t         «      nddt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      dt        j                  «       v st        j                  t         «      rt        j                  t         «      ndt        j                  |	«      dœz  }
t        t        j                  |
«      «      ‚d x}}	t        |j<                  jf                  «      S # t(        $ r› |j*                  }Y t-        «       r‚|j/                  «        t1        ‰j2                  ‰j4                  |d‰j6                  |j8                  ‰j:                  d ||j<                  j?                  «       ¬«
      }tA        |«       i ‰_        y y tB        $ rÔ}t$        jD                  }|jF                  xs d	|jH                  d
<   |jJ                  |_&        Y d }~t-        «       r‚|j/                  «        t1        ‰j2                  ‰j4                  |d‰j6                  |j8                  ‰j:                  d ||j<                  j?                  «       ¬«
      }tA        |«       i ‰_        y y d }~wtN        $ rÂ}tQ        jR                  |«      |_*        ‰jW                  |jT                  «      }‰jX                  �k|�!t[        |j\                  «      t[        |«      k  rH‰jX                  j_                  ‰ta        |jb                  «      «       |j\                  ‰|jT                  <   t$        jd                  }‚ d }~ww xY w# t-        «       r‚|j/                  «        t1        ‰j2                  ‰j4                  |d‰j6                  |j8                  ‰j:                  d |j<                  j?                  «       ¬«
      }tA        |«       i ‰_        w w xY w)Nz5assert %(py5)s
{%(py5)s = %(py0)s(%(py1)s, %(py3)s)
}r    rî  )r  r  r  r   Ú
bytestring)rÈ  r  Úprovider_kwr²  )
r1  r2  r3  r4  r5  rÜ   r6  r7  r>  r9  rœ   zgave up becausezSassert %(py6)s
{%(py6)s = %(py0)s(%(py3)s
{%(py3)s = %(py1)s.provider
}, %(py4)s)
}r3  r@   )r  r  r  r  r!  )4r    ÚioÚIOBaseÚreadr;   r³  r´  rµ  r9  r:  r;  r<  r=  r>  r?  r9   r@   rI  r:   r?  r/   r>  rO   rX  rN   rY  rZ  r[  r  r\  r  rP  rM   r1   rQ  r‚   rL  r1  Úinvalid_locationr�   rD   rH  rW  r€  r³   rB   rb  Úsaver"   r¿   ÚINTERESTINGÚdrawn)rî  rd  re  rÃ  r3  r>  rq  r°  ÚknownÚ@py_assert5Ú@py_format7r^  Úminimal_failuresr   r  s              €€€€rv   r²  zRgiven.<locals>.run_test_as_given.<locals>._get_fuzz_target.<locals>.fuzz_one_inputG	  sq  ø€ ô
 ˜f¤b§i¡iÔ0Ø#Ÿ[™[¬Ó5�FÜ+0´)¼ZÐ*HÐI”z &Ð*HÓIÐIÑI×I×I×I×IÕI”z×I×IÓI”z×I×I×I×I×IÒI &×I×IÓI &×I×IÔIÐ*H×I×IÒIÐI×I×I×I×I×IÒIÜ%ØÜ/Ø!-¨vÐ 6ô�ð
*4Ø×&Ñ& tÔ,Ü#Ÿ\™\‘Fô2 -Ô.ØŸ™œÜ*Ø&+×&<Ñ&<Ø%*×%:Ñ%:Ø!%Ø*:Ø+0×+=Ñ+=Ø&*×&>Ñ&>Ø#(×#9Ñ#9Ø%)Ø#)Ø-1¯]©]×-LÑ-LÓ-Nô˜ô ,¨BÔ/Ø13˜Õ.à"&§-¡-ÐD”z -Ô1CÓDÐDÒD×D×D×D×DÕD”z×D×DÓD”z×D×D×D×D×DÒD $×D×DÓD $×D×DÔD -×D×D×D×D×DÐDÔ1C×D×DÓDÔ1C×D×DÔDÐD×D×D×D×D×DÒDÜ˜TŸ]™]×0Ñ0Ó1Ð1øôU  ò  Ø!Ÿ[™[�FØô, -Ô.ØŸ™œÜ*Ø&+×&<Ñ&<Ø%*×%:Ñ%:Ø!%Ø*:Ø+0×+=Ñ+=Ø&*×&>Ñ&>Ø#(×#9Ñ#9Ø%)Ø#)Ø-1¯]©]×-LÑ-LÓ-Nô˜ô ,¨BÔ/Ø13˜Õ.ð /ô+ -ò  Ü#Ÿ^™^�FØ56·X±X²^À�D—K‘KÐ 1Ñ2Ø,-¯J©J�DÔ)Ûô" -Ô.ØŸ™œÜ*Ø&+×&<Ñ&<Ø%*×%:Ñ%:Ø!%Ø*:Ø+0×+=Ñ+=Ø&*×&>Ñ&>Ø#(×#9Ñ#9Ø%)Ø#)Ø-1¯]©]×-LÑ-LÓ-Nô˜ô ,¨BÔ/Ø13˜Õ.ð /ûô! %ò ô /@×.NÑ.NÈqÓ.Q�DÔ+Ø,×0Ñ0°×1HÑ1HÓI�EØ×(Ñ(Ð4Ø˜¬°$·*±*Ó)=ÄÈ%ÃÒ)Pà ×)Ñ)×.Ñ.Ø(Ô*:¸4¿<¹<Ó*Hôð EIÇJÁJÐ(¨×)@Ñ)@ÑAÜ#×/Ñ/�FØûðûô  -Ô.ØŸ™œÜ*Ø&+×&<Ñ&<Ø%*×%:Ñ%:Ø!%Ø*:Ø+0×+=Ñ+=Ø&*×&>Ñ&>Ø#(×#9Ñ#9Ø%)Ø#)Ø-1¯]©]×-LÑ-LÓ-Nô˜ô ,¨BÔ/Ø13˜Õ.ð /úsD   Ä?!M ÍVÍ#V Ï1VÏ9>SÐ7V ÓVÓB=VÖVÖV ÖBX')rä   rß   r¶   r²   r{  rƒ  ró   r9  r:  r;  r<  r=  r>  r?  r  rR   r³  r´  rµ  r   rã   r²  r®   )r—   rÈ  rì  rí  r‚  r`  Ú@py_format2r²  r^  rü  r   r  rå   rç  rÇ  rÞ   s           @@@@€€€€rv   rà   z:given.<locals>.run_test_as_given.<locals>._get_fuzz_target"	  sM  ü€ ð  ×*Ñ*×5Ñ5ˆDÜØ#×EÑEÐPTôˆHô 1°°|ÓDˆFÜ$>Ø˜b " l°M×4LÑ4Ló%Ñ!ˆE�7˜Eð �9Ð‘9××××Ö�u××Ó�u×××××ÑØ�;Ð‘;××××Ö�w××Ó�w×××××ÑÜ0ØØØØØØ-ôˆEô +¨4Ó0°=Ñ@ˆLð
 &(Ðð:2Ü¤	Ñ)¬JÑ6¼ÑAð:2ä˜‘÷:2ð :2ôx &6×%DÑ%D×%LÑ%LˆNÔ"Ø!Ð!ru   r¿  TÚ%_hypothesis_internal_settings_appliedr´   r²   r½   )>rË  Úisclassr-   r‰  rŠ  r“   Úmapr“  ro   rº  r    ÚFixtureFunctionDefinitionrA  rT   ÚEllipsisró   rô   rõ   rö   r÷   rø   r  r9  r:  r;  r<  r=  r>  r?  r‹   rB  r•  r6   rü   ræ   rƒ   rÍ  Ú	from_typerm   r   rU   rQ   r®   r   r³  r´  rµ  r   rÍ  rW  r™   Úsetattrrµ   râ   rþ  r´   r¶   r€   r²   r½   rã   rä   )r—   rÿ   rï   Úcheck_invalidr`  rý  r_  Úhintsrø   rÚ  rà   Úattribrå   rç  rþ   rè  rÇ  ré  rÞ   r¹  rá   s               @@@@@@@€€rv   Úrun_test_as_givenz given.<locals>.run_test_as_givenÐ  s  ÿ€ Ü�?‰?˜4Ô ô "Ð"GÓHÐHð œŸ™Ñ$Ø"¤c§k¡kÑ1ä”cœ#œsŸ{™{¨9Ñ5×AÑA×GÑGÈÓLÈRÈaÐPÓQÓRØòô Ø”c—k‘kÐ"4Ñ5×OÑOôô "Ð"PÓQÐQäÐ 0Ó1ˆÜ˜MÓ*ˆä$ TÓ*ˆØœx˜kÒ)±,ð &×0Ñ0×7Ñ7Ó9öàØ—6‘6˜a×5Ñ5°q·~±~ÐFÑFð —‘œÑ òˆLð
 !ˆOä'Ø�, °ó
ˆð Ð$Ø Ð ñ Ø#Ð#Ð#Ñ#×#×#×#×#Ö#�|×#×#Ó#�|×#×#×#×#×#Ñ#ð &×0Ñ0×7Ñ7Ó9öàØ—6‘6˜Q×4Ñ4Ñ4ð —“ðˆGð ô
  Ü”S˜¡ 2 ™¨¹¸"¸Ñ(=ÀeÔLÓMÉdÐPRÈdÑSóˆLð ä+¨L¸,ÓGˆð �,×%Ñ%Ó'Ñ'Ü" 4Ó(ˆEØ-9×-?Ñ-?Ó-A×R™k˜d EÀUÈcÂ\’TÓRò 	;ˆDØ˜5Ñ ÜØ˜d˜V 9¨T¯]©]¨O¸6À$Àð H)ð )àØ!-ô	ò ô "$§¡¨e°D©kÓ!:ˆL˜Òð	;ô #©_Ô=ˆð
 +-ˆÜ"›fÐä	�TÓ	Ü	" 4§=¡=°$·,±,ÀÓ	N÷}	1ñ }	1ó 
Oó 
ð}	1ð~b	"Ü”eœiÑ'¬*Ñ4´xÑ?Ð@Ä%È$Á,ÐNÑO÷b	"ð b	"ôN ˜$“iò 	EˆFØ×%Ñ% cÕ*¬g°lÀFÕ.KÜ˜ f¬g°d¸FÓ.CÕDð	Eð +/ˆÔ'Ü�4Ð@ÔAàAEˆLÔ>Ü5<ØÐ1°4ó6
ˆÔ2ô �DÐ=¸tÓDÒXÌ×HXÑHXð 	Ô6ô CJØÐ>ÀóC
ˆÔ?ô #3°4Ð9IÈ<Ó"XˆÔØÐùòcùò(ùó  Ss   Ä<P.Ç.+P3Ê
P8ÊP8)r    rJ   r¶   r   Únested_given)r¹  rá   r  s   `` rv   r·  r·  ^  s8   ù€ ôD !Ô"ÜÜ‹Jð	ô ×$Ñ$ô	
õJðX Ðru   )r   rÈ  r^  Ú	specifierr�   r   rÈ  r^  c                óú  ‡‡— |€t        d¬«      }t        |t        t        «      d¬«      }|€|j                  �t	        ‰«      }t        | t        «      s$t        d| ›dt        | «      j                  › �«      ‚| j                  «        g Š|t        | «      ˆˆfd„«       «       }|�  t        |j                  d«      «      |«      }||_        	  |«        t!        t#        ‰«      «      ‚# t        $ r ‰d	   cY S w xY w)
zvReturns the minimal value from the given strategy ``specifier`` that
    matches the predicate function ``condition``.iÐ  )Úmax_examplesF)Úsuppress_health_checkrT  z Expected SearchStrategy but got z	 of type c                 ó.   •—  ‰| «      r| g‰d d  t         ‚y rs   )r)   )r*  r�   Úlasts    €€rv   r—   zfind.<locals>.test¾	  s!   ø€ ñ �QŒ<Ø�cˆD‘ˆGÜˆKð ru   é@   r   )r¶   r‹   r   r³   rR   r    ri   r-   r¡   rƒ   r�  r·  r¯   rz  ru  r)   r.   rS   )r
  r�   r   rÈ  r^  r—   r  s    `    @rv   Úfindr  Ÿ	  s  ù€ ð ÐÜ¨Ô.ˆÜØ¬¬[Ó(9ÐPUô€Hð Ð × 1Ñ 1Ð =ô ' yÓ1ˆä�i¤Ô0ÜØ.¨y¨mð <Ü˜“O×,Ñ,Ð-ð/ó
ð 	
ð ×ÑÔà€DàÜ
ˆ9Óôó ó ðð
 ÐØ+Œt�F×&Ñ& rÓ*Ó+¨DÓ1ˆà-9€DÔ*ðÙŒô Ô7¸	ÓBÓ
CÐCøô ò Ø�A‰wŠðús   ÃC) Ã)C:Ã9C:)rœ   rs   )Ñr®   Úbuiltinsr9  Ú_pytest.assertion.rewriteÚ	assertionÚrewriter;  rË   rN  r¨   rô  rË  rò  rë  rE  r‰  rñ  rÕ  rÓ  r…  r~  rÈ   Úcollectionsr   Úcollections.abcr   r   r   r   r   r	   r
   r   Ú	functoolsr   r   rÈ  r   r   r   Útypingr   r   r   r   r   rä   r   rÍ  Úhypothesis._settingsr   r   r   r   r   r   r¶   Úhypothesis.controlr   r   r    Úhypothesis.databaser!   r"   Úhypothesis.errorsr#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   Úhypothesis.internalr2   Úhypothesis.internal.compatr3   r4   r5   r6   r7   Ú%hypothesis.internal.conjecture.choicer8   Ú#hypothesis.internal.conjecture.datar9   r:   Ú%hypothesis.internal.conjecture.enginer;   r<   r=   Ú)hypothesis.internal.conjecture.junkdrawerr>   r?   Ú(hypothesis.internal.conjecture.providersr@   rA   Ú'hypothesis.internal.conjecture.shrinkerrB   Úhypothesis.internal.entropyrC   Úhypothesis.internal.escalationrD   rE   rF   rG   rH   rI   Úhypothesis.internal.healthcheckrJ   Ú!hypothesis.internal.observabilityrK   rL   rM   rN   rO   Úhypothesis.internal.reflectionrP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   Úhypothesis.internal.scrutineerrZ   r[   r\   r]   r^   Úhypothesis.internal.validationr_   Úhypothesis.reportingr`   ra   rb   rc   Úhypothesis.statisticsrd   re   rf   Ú$hypothesis.strategies._internal.miscrg   Ú*hypothesis.strategies._internal.strategiesrh   ri   rj   Úhypothesis.utils.conventionsrl   Úhypothesis.utils.threadingrm   Úhypothesis.vendor.prettyrn   Úhypothesis.versionro   rp   rÕ  rU  rx  ry  r}   rˆ   r�   r¯   rŒ   r³  r¾   rÄ   rÃ   r×   ræ   r  rs  r{  r}  ÚobjectrA  r“   rƒ  rV  r¡   r�   rK  r•  r˜  r¦  r§  rª  r‹   r¬  ÚcontextmanagerrÄ  r  rž  rˆ  r®  rã   r·  r¦   r  rt   ru   rv   ú<module>r7     sÏ  ðñ Mç  „ ƒÛ Û Û Û Û 	Û Û 	Û 
Û Û Û Û Û Û Ý #ß X× Xß (Ý Ý Ý Ý Ý ÷ó õ å '÷÷ ÷ñ ÷
 E÷÷ ÷ ÷ ñ õ" .÷õ õ :ß F÷ñ ÷
÷õ =Ý :÷÷ õ >÷õ ÷÷ ÷ ÷õ õ 6÷ó ÷ YÑ XÝ 8÷ñ õ
 1Ý 2Ý :Ý *á�: XÔ.€ð Ð Ø#Ð ØÐ ñ
 ±LÔA€ñ �˜eÔ$÷&ð &ó %ð&ñ �˜dÔ#÷ð ó $ð÷\ñ \ð~'ˆxð '˜H h Z°Ð%9Ñ:ó 'ðZ˜sð ¨%ð °H¸h¸ZÈÐ=QÑ4Ró ð>O H¨WÑ$5ð O¸#ó Oð"˜H WÑ-ð "°%ó "ð˜ð  8¨GÑ#4ó ð8 -ô ò>
òBj&òZñ( �˜eÔ$÷ð ó %ðð!$Øð!$à˜Ñð!$ð ��f�Ñð!$ð �s˜NÐ*Ñ+ð	!$ð
 ��i�Ñ ð!$ð ˆ8�FÑ˜T # v +Ñ.°Ð5Ñ6ó!$òH.ð( U¨4°Ñ+>ÀÐ+CÑ%Dó ò òòñ6 ˆC�}Ô%€ðÐ/°Ñ2ð °t¸A±wó ð ×Òð.N 9Ð-=Ñ#>ò .Nó ð.N÷b[
ñ [
ð| d¨?Ñ&;ð ÀÀ_Ñ@Uó ðF 79ð"%ØMQô"%ðJ ×Òò
ó ð
ñ$ �˜uÔ%÷n(ð n(ó &ðn(ðb 
ðØðàØˆc�9˜S # t˜^Ñ,¨tÑ3Ð3Ñ4Ð5°xÀÀDÀÑ7IÐIñòó 
ðð 
ðØ% cÑ*ðàØˆc�9˜S # t˜^Ñ,¨tÑ3Ð3Ñ4Ð5°xÀ	Ñ7JÐJñòó 
ðð 
ðØ# CÑ(¨<Ñ7ðàØˆc�9˜S # t˜^Ñ,¨tÑ3Ð3Ñ4Ð5°xÀ	Ñ7JÐJñòó 
ðð~Ø% cÑ*¨\Ñ9ð~à# CÑ(¨<Ñ7ð~ð ˆx˜˜Y s¨C° ~Ñ6¸Ñ=Ð=Ñ>Ð?ÀÈ)ÑATÐTÑUó~ðJ !%Ø Ø!%ò0DØ˜bÑ!ð0Dà˜˜˜t˜Ñ$ð0Dð ˜‰oð	0Dð
 �T‰Mð0Dð ˜$‘,ð0Dð ô0Dru   