Ë
    iKêj›c  ã                   óæ  — U d dl Z d dlmZmZmZmZ d dl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 d dlmZ d dlmZmZmZ d d	lmZ  ed
«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z e!e"z  e#z  e$z  e%z  Z&e
e'd<   eez  ez  ez  e z  Z(e
e'd<   e	d   Z)e
e'd<   e!e"z  e%z  e*e	d   e#f   z  e*e	d   e!f   z  Z+e
e'd<    edd¬«       G d„ d «      «       Z, edd¬«       G d!„ d"«      «       Z- edd¬«       G d#„ d$«      «       Z.d%e!d&e!d'e!fd(„Z/d)e!d&e!d'e!fd*„Z0d+ee   d,e!d&e!d-eege!f   d'e!f
d.„Z1d)e!d,e!d&e!d/ee!gef   d'e2e   f
d0„Z3d1e!d2e!d'e!fd3„Z4d)e!d2e!d'e!fd4„Z5d+e&d5e(d'e!fd6„Z6d)e!d7e)d5e(d'e&fd8„Z7d+e&d5e(d'e#fd9„Z8d:ee&   d'e*e+d;f   fd<„Z9 e:e!e"e%h«      Z;d+e&d'e+fd=„Z<d>e&d?e&d'e#fd@„Z=d7e)dAe(dBe(d'e#fdC„Z>d7e)d5e(d'e*ed;f   fdD„Z?d:ee&   d'e!fdE„Z@d+e&d'e!fdF„ZAy)Gé    N)ÚCallableÚHashableÚIterableÚSequence)Ú	dataclass)ÚLiteralÚ	TypeAliasÚ	TypedDictÚTypeVarÚcast)ÚChoiceTooLarge)Úfloat_to_lexÚlex_to_float)Úidentity)Úfloat_to_intÚmake_float_clamperÚsign_aware_lte)ÚIntervalSetÚTc                   óR   — e Zd ZU edz  ed<   edz  ed<   eeef   dz  ed<   eed<   y)ÚIntegerConstraintsNÚ	min_valueÚ	max_valueÚweightsÚshrink_towards)Ú__name__Ú
__module__Ú__qualname__ÚintÚ__annotations__ÚdictÚfloat© ó    új/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/hypothesis/internal/conjecture/choice.pyr   r      s0   … Ø�T‰zÓØ�T‰zÓØ�#�u�*Ñ Ñ$Ó$ØÔr$   r   c                   ó6   — e Zd ZU eed<   eed<   eed<   eed<   y)ÚFloatConstraintsr   r   Ú	allow_nanÚsmallest_nonzero_magnitudeN)r   r   r   r"   r    Úboolr#   r$   r%   r'   r'   &   s   … ØÓØÓØƒOØ %Ô%r$   r'   c                   ó,   — e Zd ZU eed<   eed<   eed<   y)ÚStringConstraintsÚ	intervalsÚmin_sizeÚmax_sizeN)r   r   r   r   r    r   r#   r$   r%   r,   r,   -   s   … ØÓØƒMØ„Mr$   r,   c                   ó"   — e Zd ZU eed<   eed<   y)ÚBytesConstraintsr.   r/   N)r   r   r   r   r    r#   r$   r%   r1   r1   3   s   … ØƒMØ„Mr$   r1   c                   ó   — e Zd ZU eed<   y)ÚBooleanConstraintsÚpN)r   r   r   r"   r    r#   r$   r%   r3   r3   8   s   … Ø„Hr$   r3   ÚChoiceTÚChoiceConstraintsT)ÚintegerÚstringÚbooleanr"   ÚbytesÚChoiceTypeTr*   r"   Ú
ChoiceKeyTTF)ÚslotsÚfrozenc                   ó6   — e Zd ZU ed   ed<   edz  ed<   dd„Zy)ÚChoiceTemplateÚsimplestÚtypeNÚcountc                 ó@   — | j                   �| j                   dkD  sJ ‚y y )Nr   )rC   ©Úselfs    r%   Ú__post_init__zChoiceTemplate.__post_init__O   s!   € Ø�:‰:Ð!Ø—:‘: ’>Ð!‘>ð "r$   )ÚreturnN)r   r   r   r   r    r   rG   r#   r$   r%   r@   r@   J   s   … à
�*Ñ
ÓØ�‰:Óô"r$   r@   c                   ó   — e Zd ZU dZeed<   y)Ú	ValueHoleaj  A hole in a choice sequence, carrying a value instead of choices.

    When ``ConjectureData.draw`` finds a ValueHole at the current prefix
    position, it asks the strategy being drawn to ``_invert`` the value, and
    on success splices the resulting choices into the prefix in place of the
    hole - so the value is re-encoded by whichever strategy is drawn at that
    position, with that strategy's own constraints. If no strategy claims the
    hole (inversion failed, or the hole fell out of alignment with strategy
    draw boundaries), it is treated as a misalignment when a draw_* call
    reaches it.
    ÚvalueN)r   r   r   Ú__doc__Úobjectr    r#   r$   r%   rJ   rJ   T   s   … ñ
ð „Mr$   rJ   c                   ó°   — e Zd ZU eed<   eed<   eed<   eed<   dZe	dz  ed<   dddœdedz  d	edz  d
d fd„Z
ed
efd„«       Zded
efd„Zd
e	fd„Zd
efd„Zy)Ú
ChoiceNoderB   rK   ÚconstraintsÚ
was_forcedNÚindex)Ú
with_valueÚwith_constraintsrS   rT   rH   c                óª   — | j                   r	|�J d«       ‚t        | j                  |€| j                  n||€| j                  n|| j                   ¬«      S )Nz*modifying a forced node doesn't make sense)rB   rK   rP   rQ   )rQ   rO   rB   rK   rP   )rF   rS   rT   s      r%   ÚcopyzChoiceNode.copyn   sY   € ð �?Š?ØÐ%ÐSÐ'SÓSÐ%ô Ø—‘Ø *Ð 2�$—*’*¸
à$4Ð$<�× Ò ÐBRà—‘ô
ð 	
r$   c                 óÔ  — | j                   ry| j                  dk7  r7t        d| j                  | j                  «      }t	        | j
                  |«      S t        t        | j                  «      }|d   }|d   }d}|t        j                   k(  r)|t        j                  k(  rt	        | j
                  |«      S t        j                  |«      s�t        j                  |«      sˆt        j                  |«      t        j                  |«      k  r]t        t        j                  |«      |«      }t        t        j                  |«      |«      }t	        | j
                  t        |«      «      S y)a-  
        A node is trivial if it cannot be simplified any further. This does not
        mean that modifying a trivial node can't produce simpler test cases when
        viewing the tree as a whole. Just that when viewing this node in
        isolation, this is the simplest the node can get.
        Tr"   r   r   r   g        F)rQ   rB   Úchoice_from_indexrP   Úchoice_equalrK   r   r'   ÚmathÚinfÚisinfÚceilÚfloorÚmaxÚminr"   )rF   Ú
zero_valuerP   r   r   r   s         r%   ÚtrivialzChoiceNode.trivial„   s  € ð �?Š?Øà�9‰9˜ÒÜ*¨1¨d¯i©i¸×9IÑ9IÓJˆJÜ §
¡
¨JÓ7Ð7äÔ/°×1AÑ1AÓBˆKØ# KÑ0ˆIØ# KÑ0ˆIØ ˆNàœTŸX™X˜IÒ%¨)´t·x±xÒ*?Ü# D§J¡J°Ó?Ð?ô —J‘J˜yÔ)ÜŸ
™
 9Ô-Ü—I‘I˜iÓ(¬D¯J©J°yÓ,AÒAô "%¤T§Y¡Y¨yÓ%9¸>Ó!J�Ü!$¤T§Z¡Z°	Ó%:¸NÓ!K�Ü# D§J¡J´°nÓ0EÓFÐFð r$   Úotherc                 ó4  — t        |t        «      st        S | j                  |j                  k(  xrh t	        | j
                  |j
                  «      xrF t        | j                  | j                  |j                  «      xr | j                  |j                  k(  S ©N)	Ú
isinstancerO   ÚNotImplementedrB   rY   rK   Úchoice_constraints_equalrP   rQ   )rF   rc   s     r%   Ú__eq__zChoiceNode.__eq__¬   sz   € Ü˜%¤Ô,Ü!Ð!ð �I‰I˜Ÿ™Ñ#ò 4Ü˜TŸZ™Z¨¯©Ó5ò4ä(¨¯©°D×4DÑ4DÀe×FWÑFWÓXò4ð —‘ 5×#3Ñ#3Ñ3ð		
r$   c                 óª   — t        | j                  t        | j                  «      t	        | j                  | j
                  «      | j                  f«      S re   )ÚhashrB   Ú
choice_keyrK   Úchoice_constraints_keyrP   rQ   rE   s    r%   Ú__hash__zChoiceNode.__hash__·   sB   € Üà—	‘	Ü˜4Ÿ:™:Ó&Ü& t§y¡y°$×2BÑ2BÓCØ—‘ð	ó
ð 	
r$   c                 óv   — | j                   rdnd}| j                  › d| j                  ›|› d| j                  ›�S )Nz	 [forced]Ú ú )rQ   rB   rK   rP   )rF   Úforced_markers     r%   Ú__repr__zChoiceNode.__repr__Á   s9   € Ø'+§¢™¸BˆØ—)‘)�˜A˜dŸj™j˜^¨M¨?¸!¸D×<LÑ<LÐ;OÐPÐPr$   )r   r   r   r;   r    r5   r6   r*   rR   r   rV   Úpropertyrb   rM   ri   rn   Ústrrs   r#   r$   r%   rO   rO   f   s¤   … à
ÓØƒNØ#Ó#ØÓØ€Eˆ3�‰:Óð
 &*Ø6:ò	
ð ˜d‘Nð
ð -¨tÑ3ð	
ð
 
ó
ð, ð%˜ò %ó ð%ðN	
˜Fð 	
 tó 	
ð
˜#ó 
ðQ˜#ô Qr$   rO   ÚsizeÚalphabet_sizerH   c                óf   — |dk  r| dk(  sJ ‚y|dk(  r| S || z  dz
  |dz
  z  }t        t        |«      S )Nr   é   )r   r   )rv   rw   Úvs      r%   Ú_size_to_indexr{   Æ   sM   € ð ˜ÒØ�qŠyÐˆyØØ˜ÒØˆØ	˜Ñ	˜qÑ	  m°aÑ&7Ñ8€Aä”�Q‹<Ðr$   rR   c                 ó  — |dk(  ry|dk(  r| S | |dz
  z  dz   }t        j                  ||«      }dt        j                  |«      |z
  cxk  rdk  rn nd}||k\  r||z  }|dz  }||k\  rŒ|S t        j                  |«      S )Nr   ry   gH¯¼šò×z>)rZ   Úlogr]   r^   )rR   rw   Útotalrv   Úss        r%   Ú_index_to_sizer€   Ô   sž   € Ø˜ÒØØ	˜!Ò	ð ˆð �] QÑ&Ñ'¨!Ñ+€EÜ�8‰8�E˜=Ó)€Dð
 	Œ4�9‰9�T‹?˜TÑ!Ô( DÕ(ØˆØ�}Ò$Ø�mÑ#ˆEØ�‰FˆAð �}Ó$ð ˆÜ�:‰:�dÓÐr$   Úchoicer.   Úto_orderc                ó˜   — t        t        | «      |¬«      t        ||¬«      z
  }d}t        | «      D ]  }|| ||«      z  z  }||z  }Œ |S )N©rw   ry   )r{   ÚlenÚreversed)r�   r.   rw   r‚   rR   Úrunning_expÚcs          r%   Úcollection_indexr‰   ñ   se   € ô œ3˜v›;°mÔDÄ~Ø ôHñ €Eð €KÜ�fÓò %ˆØ�™x¨›{Ñ*Ñ*ˆØ�}Ñ$‰ð%ð €Lr$   Ú
from_orderc                ó  — ddl m} | t        ||¬«      z  } t        | |¬«      }||k\  rt        ‚| t        ||¬«      z  } g }t        t        |«      «      D ]4  }| dk(  rd}n| ||z  z  }| |||z  z  z  } |j                   ||«      «       Œ6 |S )Nr   )ÚBUFFER_SIZEr„   )Ú%hypothesis.internal.conjecture.enginerŒ   r{   r€   r   r†   ÚrangeÚappend)	rR   r.   rw   rŠ   rŒ   rv   ÚvalsÚiÚns	            r%   Úcollection_valuer“     s¯   € õ Bð
 
Œ^˜H°MÔBÑB€EÜ˜%¨}Ô=€Dð ˆ{ÒÜÐð 
Œ^˜D°Ô>Ñ>€EØ€DÜ”e˜D“kÓ"ò 	#ˆð �AŠ:Ø‰Aà˜-¨Ñ*Ñ+ˆAà�Q˜-¨Ñ*Ñ+Ñ+ˆEØ�‰‘J˜q“MÕ"ð	#ð €Kr$   rK   r   c                ó<   — dt        || z
  «      z  }| |kD  r|dz  }|S )Né   ry   )Úabs)rK   r   rR   s      r%   Úzigzag_indexr—   2  s.   € ð ”�N UÑ*Ó+Ñ+€EØˆ~ÒØ�‰
ˆØ€Lr$   c                óD   — | dk\  sJ ‚| dz   dz  }| dz  dk(  r|dz  }||z   S )Nr   ry   r•   éÿÿÿÿr#   )rR   r   r’   s      r%   Úzigzag_valuerš   ;  s<   € Ø�AŠ:Ðˆ:à	�‰�qÑ€Aà�‰	�aÒØ	ˆR‰ˆØ˜AÑÐr$   rP   c                 óÔ  — t        | t        «      �r?t        | t        «      �s.t        t        |«      }|d   }|d   }|d   }|�t        ||«      }|�t        ||«      }|€|€t        | |¬«      S |�(|€&t        | |z
  «      ||z
  k  rt        | |¬«      S | |z
  S |�(|€&t        | |z
  «      ||z
  k  rt        | |¬«      S || z
  S |€J ‚|€J ‚|d   �*t        d„ |d   j                  «       D «       «      sJ d«       ‚||z
  ||z
  k  r&t        | |z
  «      ||z
  k  rt        | |¬«      S | |z
  S t        | |z
  «      ||z
  k  rt        | |¬«      S || z
  S t        | t        «      r.t        t        |«      }|d   }d	|cxk  rd
k  sy yt        | «      S t        | t        «      r/t        t        |«      }t        t        | «      |d   dt         ¬«      S t        | t"        «      r:t        t$        |«      }|d   }t        | |d   t'        |«      |j(                  ¬«      S t        | t*        «      r<t        t-        j.                  d
| «      dk  «      }|dz  t1        t        | «      «      z  S t2        ‚)Nr   r   r   ©r   r   c              3   ó&   K  — | ]	  }|d kD  –— Œ y­w©r   Nr#   ©Ú.0Úws     r%   ú	<genexpr>z"choice_to_index.<locals>.<genexpr>Š  ó   è ø€ ò 9Ø��A•ñ9ùó   ‚z@technically possible but really annoying to support zero weightsr4   ç      ð;ç      ð?r   r.   é   )r.   rw   r‚   r-   é@   )rf   r   r*   r   r   r_   r`   r—   r–   ÚallÚvaluesr3   r:   r1   r‰   Úlistr   ru   r,   r…   Úindex_from_char_in_shrink_orderr"   rZ   Úcopysignr   ÚNotImplementedError)r�   rP   r   r   r   r4   r-   Úsigns           r%   Úchoice_to_indexr°   E  sÓ  € ô �&œ#Õ¤z°&¼$Õ'?ô Ô-¨{Ó;ˆØ$Ð%5Ñ6ˆØ Ñ,ˆ	Ø Ñ,ˆ	àÐ Ü  ¨NÓ;ˆNØÐ Ü  ¨NÓ;ˆNàÐ Ð!2ä °~ÔFÐFØÐ" yÐ'8ô �6˜NÑ*Ó+°ÀÑ0JÒKÜ# F¸>ÔJÐJØ˜IÑ%Ð%ØÐ" yÐ'8ä�6˜NÑ*Ó+°	¸NÑ0JÒKÜ# F¸>ÔJÐJØ˜vÑ%Ð%ð Ð(Ð(Ð(ØÐ(Ð(Ð(Ø˜yÑ)Ð1´Sñ 9Ø*¨9Ñ5×<Ñ<Ó>ô9ô 6ð RàQóRð ð
  Ñ*¨y¸>Ñ/IÒJô �v Ñ.Ó/°NÀYÑ4NÒOÜ'¨¸~ÔNÐNØ 	Ñ)Ð)ô �v Ñ.Ó/°IÀÑ4NÒOÜ'¨¸~ÔNÐNØ  6Ñ)Ð)Ü	�FœDÔ	!ÜÔ-¨{Ó;ˆà˜ÑˆØ˜QÔ1 .Ò1àð 2àÜ�6‹{ÐÜ	�FœEÔ	"ÜÔ+¨[Ó9ˆÜÜ�‹LØ  Ñ,ØÜô	
ð 	
ô 
�FœCÔ	 ÜÔ,¨kÓ:ˆØ Ñ,ˆ	ÜØØ  Ñ,Ü˜i›.Ø×>Ñ>ô	
ð 	
ô 
�FœEÔ	"Ü”4—=‘=  fÓ-°Ñ1Ó2ˆØ˜‘
œl¬3¨v«;Ó7Ñ7Ð7ä!Ð!r$   Úchoice_typec                 ó¢  — | dk\  sJ ‚|dk(  �rt        t        |«      }|d   }|d   }|d   }|�t        ||«      }|�t        ||«      }|€|€t	        | |¬«      S |�$|€"| t        ||¬«      k  rt	        | |¬«      S | |z   S |�$|€"| t        ||¬«      k  rt	        | |¬«      S || z
  S |€J ‚|€J ‚|d   �*t        d„ |d   j                  «       D «       «      sJ d	«       ‚||z
  ||z
  k  r"| t        ||¬«      k  rt	        | |¬«      S | |z   S | t        ||¬«      k  rt	        | |¬«      S || z
  S |d
k(  rBt        t        |«      }|d   }d }|dk  rd}n|dk\  rd}| dv sJ ‚|�	| dk(  sJ ‚|S t        | «      S |dk(  r1t        t        |«      }t        | |d   dt        ¬«      }t        |«      S |dk(  rKt        t        |«      }|d   }	t        | |d   t        |	«      |	j                   ¬«      }
dj#                  |
«      S |dk(  rMt        t$        |«      }| dz	  rdnd}|t'        | dz  «      z  }t)        |d   |d   |d   |d   ¬«      } ||«      S t*        ‚) Nr   r7   r   r   r   rœ   r   c              3   ó&   K  — | ]	  }|d kD  –— Œ y­wrž   r#   rŸ   s     r%   r¢   z$choice_from_index.<locals>.<genexpr>Û  r£   r¤   z4possible but really annoying to support zero weightsr9   r4   r¥   Fr¦   T>   r   ry   r:   r.   r§   )r.   rw   rŠ   r8   r-   rp   r"   r¨   r™   ry   l   ÿÿÿÿ r)   r(   )r   r   r)   r(   )r   r   r_   r`   rš   r—   r©   rª   r3   r*   r1   r“   r   r:   r,   r…   Úchar_in_shrink_orderÚjoinr'   r   r   r®   )rR   r±   rP   r   r   r   r4   ÚonlyÚvalue_br-   Úvalue_sr¯   ÚresultÚclampers                 r%   rX   rX   »  s  € ð �AŠ:Ðˆ:Ø�iÓÜÔ-¨{Ó;ˆØ$Ð%5Ñ6ˆØ Ñ,ˆ	Ø Ñ,ˆ	àÐ Ü  ¨NÓ;ˆNØÐ Ü  ¨NÓ;ˆNàÐ Ð!2ä °nÔEÐEØÐ" yÐ'8àœ Y¸~ÔNÒNÜ# E¸.ÔIÐIØ˜9Ñ$Ð$ØÐ" yÐ'8àœ Y¸~ÔNÒNÜ# E¸.ÔIÐIØ˜uÑ$Ð$ð Ð(Ð(Ð(ØÐ(Ð(Ð(Ø˜yÑ)Ð1´Sñ 9Ø*¨9Ñ5×<Ñ<Ó>ô9ô 6ð FàEóFð ð  Ñ*¨y¸>Ñ/IÒJàœL¨À>ÔRÒRÜ'¨¸nÔMÐMØ˜yÑ(Ð(ð œL¨À>ÔRÒRÜ'¨¸nÔMÐMØ  5Ñ(Ð(Ø	˜	Ò	!ÜÔ-¨{Ó;ˆà˜ÑˆØˆØ�
Š?Ø‰DØ�>Ò"ØˆDà˜‰ÐˆØÐà˜A’:Ð�:ØˆKÜ�E‹{ÐØ	˜Ò	ÜÔ+¨[Ó9ˆÜ"ØØ  Ñ,ØÜô	
ˆô �W‹~ÐØ	˜Ò	 ÜÔ,¨kÓ:ˆØ Ñ,ˆ	ô #ØØ  Ñ,Ü˜i›.Ø ×5Ñ5ô	
ˆð �w‰w�wÓÐØ	˜Ò	ÜÔ+¨[Ó9ˆØ˜b’[‰r aˆØœ U¨mÑ%<Ó=Ñ=ˆä$Ø! +Ñ.Ø! +Ñ.Ø'2Ð3OÑ'PØ! +Ñ.ô	
ˆñ �v‹Ðä!Ð!r$   c                 ób  ‡— t        | t        «      r>t        | t        «      s.t        t        ‰«      Š‰d   }‰d   }|�| |k  ry|d uxr | |kD   S t        | t
        «      rct        t        ‰«      Št        j                  | «      r‰d   S dt        | «      cxk  r‰d   k  ry t        ‰d   | «      xr t        | ‰d   «      S t        | t        «      rHt        t        ‰«      Št        | «      ‰d   k  ryt        | «      ‰d   kD  ryt        ˆfd	„| D «       «      S t        | t        «      r3t        t         ‰«      Št        | «      ‰d   k  ryt        | «      ‰d   k  S t        | t        «      r)t        t"        ‰«      Š‰d
   dk  r| du S ‰d
   dk\  r| du S yt%        dt'        | «      › d| › �«      ‚)Nr   r   Fr(   r   r)   r.   r/   c              3   ó>   •K  — | ]  }t        |«      ‰d    v –— Œ y­w)r-   N)Úord)r    rˆ   rP   s     €r%   r¢   z#choice_permitted.<locals>.<genexpr>5  s   øè ø€ ÒF¸!”3�q“6˜[¨Ñ5Ô5ÑFùs   ƒr4   ry   Tzunhandled type z with value )rf   r   r*   r   r   r"   r'   rZ   Úisnanr–   r   ru   r,   r…   r©   r:   r1   r3   r®   rB   )r�   rP   r   r   s    `  r%   Úchoice_permittedr¿     sÍ  ø€ Ü�&œ#Ô¤z°&¼$Ô'?ÜÔ-¨{Ó;ˆØ Ñ,ˆ	Ø Ñ,ˆ	ØÐ  V¨iÒ%7ØØ TÐ)Ò@¨f°yÑ.@ÐAÐAÜ	�FœEÔ	"ÜÔ+¨[Ó9ˆÜ�:‰:�fÔØ˜{Ñ+Ð+ØŒs�6‹{ÔF˜[Ð)EÑFÒFØð Gä˜k¨+Ñ6¸Ó?ò 
ÄNØ�K Ñ,óE
ð 	
ô 
�FœCÔ	 ÜÔ,¨kÓ:ˆÜˆv‹;˜ ZÑ0Ò0ØÜˆv‹;˜ ZÑ0Ò0ØÜÓF¸vÔFÓFÐFÜ	�FœEÔ	"ÜÔ+¨[Ó9ˆÜˆv‹;˜ ZÑ0Ò0ØÜ�6‹{˜k¨*Ñ5Ñ5Ð5Ü	�FœDÔ	!ÜÔ-¨{Ó;ˆØ�sÑ˜qÒ Ø˜U�?Ð"Ø�sÑ˜qÒ Ø˜T�>Ð!Øä! O´D¸³L°>ÀÈfÈXÐ"VÓWÐWr$   Úchoices.c           	      ó’   — t        | D �cg c].  }t        |«      t        v rt        t        |«      n
t        |«      ‘Œ0 c}«      S c c}w re   )ÚtuplerB   Ú_SELF_KEYED_TYPESr   r<   rl   )rÀ   r�   s     r%   Úchoices_keyrÄ   F  sQ   € äð "ö	
ð ô ˜“<Ô#4Ñ4ô ”Z Ô(ä Ó'ñ(ò	
ó	ð 	ùò	
s   Š3Ac                 óh   — t        | t        «      rdt        | «      fS t        | t        «      rd| fS | S )Nr"   r*   )rf   r"   r   r*   )r�   s    r%   rl   rl   W  s8   € Ü�&œ%Ô ð œ fÓ-Ð.Ð.Ü�&œ$Ôà˜ÐÐØ€Mr$   Úchoice1Úchoice2c                 ón   — t        | «      t        |«      u s	J | |f«       ‚t        | «      t        |«      k(  S re   )rB   rl   )rÆ   rÇ   s     r%   rY   rY   b  s7   € Ü�‹=œD ›MÑ)Ð=¨G°WÐ+=Ó=Ð)Ü�gÓ¤*¨WÓ"5Ñ5Ð5r$   Úconstraints1Úconstraints2c                 ó4   — t        | |«      t        | |«      k(  S re   )rm   )r±   rÉ   rÊ   s      r%   rh   rh   g  s&   € ô
 " +¨|Ó<Ô@VØ�\óAñ ð r$   c                 ób  ‡— | dk(  r4t        t        ‰«      Št        ‰d   «      t        ‰d   «      ‰d   ‰d   fS | dk(  rIt        t        ‰«      Š‰d   ‰d   ‰d   €d n$t	        t        ‰d   j                  «       «      «      ‰d   fS | d	k(  r‰d
   fS t	        ˆfd„t        ‰«      D «       «      S )Nr"   r   r   r(   r)   r7   r   r   r9   r4   c              3   ó(   •K  — | ]	  }‰|   –— Œ y ­wre   r#   )r    ÚkeyrP   s     €r%   r¢   z)choice_constraints_key.<locals>.<genexpr>Š  s   øè ø€ ÒA c�˜SÕ!ÑAùs   ƒ)r   r'   r   r   rÂ   ÚsortedÚitems)r±   rP   s    `r%   rm   rm   q  sä   ø€ ð �gÒÜÔ+¨[Ó9ˆä˜ [Ñ1Ó2Ü˜ [Ñ1Ó2Ø˜Ñ$ØÐ4Ñ5ð	
ð 	
ð �iÒÜÔ-¨{Ó;ˆà˜Ñ$Ø˜Ñ$ð ˜yÑ)Ð1ñ äœ6 +¨iÑ"8×">Ñ">Ó"@ÓAÓBàÐ(Ñ)ð	
ð 		
ð �iÒØ˜CÑ Ð"Ð"ÜÓA¬V°KÓ-@ÔAÓAÐAr$   c                 ó0   — ddl m} t         || «      «      S )Nr   )Úchoices_to_bytes)Úhypothesis.databaserÒ   r…   )rÀ   rÒ   s     r%   Úchoices_sizerÔ   �  s   € Ý4äÑ Ó(Ó)Ð)r$   c                 ó¾  — t        | t        «      ryt        | t        «      rd}n‹t        | t        «      rd| j	                  «       dz  z   }ndt        | t
        «      rt        | «      }nHt        | t        «      sJ ‚| j                  «       rt        | «      nt        | j                  d¬«      «      }|dk  rd|z   S dt        d|j	                  «        dz   «      z   |z   S )zIEquivalent to ``choices_size([choice])``, without serializing ``choice``.ry   é   Úsurrogatepass)Úerrorsé   é   )rf   r*   r"   r   Ú
bit_lengthr:   r…   ru   ÚisasciiÚencoder_   )r�   rv   s     r%   Úchoice_sizerÞ   “  sË   € ä�&œ$ÔØÜ�&œ%Ô Ø‰Ü	�FœCÔ	 Ø�6×$Ñ$Ó&¨!Ñ+Ñ+‰Ü	�FœEÔ	"Ü�6‹{‰ä˜&¤#Ô&Ð&Ð&ð �~‰~Ôô �ŒKä�V—]‘]¨/�]Ó:Ó;ð 	ð
 ˆg‚~Ø�4‰xˆàŒs�1˜Ÿ™Ó*Ð*¨aÑ/Ð0Ó1Ñ1°DÑ8Ð8r$   )BrZ   Úcollections.abcr   r   r   r   Údataclassesr   Útypingr   r	   r
   r   r   Úhypothesis.errorsr   Ú%hypothesis.internal.conjecture.floatsr   r   Ú$hypothesis.internal.conjecture.utilsr   Úhypothesis.internal.floatsr   r   r   Ú hypothesis.internal.intervalsetsr   r   r   r'   r,   r1   r3   r   ru   r*   r"   r:   r5   r    r6   r;   rÂ   r<   r@   rJ   rO   r{   r€   r‰   r«   r“   r—   rš   r°   rX   r¿   rÄ   Ú	frozensetrÃ   rl   rY   rh   rm   rÔ   rÞ   r#   r$   r%   ú<module>rè      s¼  ðô ß BÓ BÝ !÷õ õ -ß LÝ 9ß WÑ WÝ 8áˆCƒL€ô˜ô ô&�yô &ô˜	ô ô�yô ô
˜ô ð ˜3‘Y Ñ%¨Ñ-°Ñ5€ˆÓ 5àØñàñð ñð ñ	ð �Ió ð !Ð!QÑR€ˆYÓ Ràˆ#�I�Ñ˜˜g f™o¨tÐ3Ñ4Ñ4°u¸WÀWÑ=MÈsÐ=RÑ7SÑSð ˆIó ñ
 �˜eÔ$÷"ð "ó %ð"ñ �˜dÔ#÷ð ó $ðñ" �˜eÔ$÷\Qð \Qó %ð\Qð~˜ð °ð ¸ó ð˜#ð ¨cð °có ð:Ø�Q‰Kðð ðð ð	ð
 ˜�s˜C�xÑ ðð 	óð:!Øð!ð ð!ð ð	!ð
 ˜#˜ ˜Ñ"ð!ð 
ˆ!�Wó!ðH˜ð °ð ¸ó ð˜ð °ð ¸ó ðs"˜Gð s"Ð2Dð s"Èó s"ðl`"Øð`"Ø(ð`"Ø7Ið`"àó`"ðF%X˜Wð %XÐ3Eð %XÈ$ó %XðP˜ 'Ñ*ð ¨u°ZÀ°_Ñ/Eó ñ ˜s C¨Ð/Ó0Ð ð�wð  :ó ð6˜'ð 6¨Gð 6¸ó 6ð
Øðà$ðð %ðð 
ó	ðBØðBØ+=ðBà
ˆ8�Sˆ=ÑóBð8*˜( 7Ñ+ð *°ó *ð9˜ð 9 Cô 9r$   