Ë
    iKêj„  ã            
       óÞ   — d dl mZmZ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mZ d dlmZ d dlmZ d dlmZ d	Zd
Z ed¬«      dddœded   dz  deez  ez  dz  deeez     fd„«       Zy)é    )ÚIPv4AddressÚIPv4NetworkÚIPv6AddressÚIPv6NetworkÚ
ip_network)ÚLiteral)ÚInvalidArgument)Ú
check_type)ÚbinaryÚsampled_from)Úintegers)ÚSearchStrategy)Údefines_strategy)z	0.0.0.0/8z
10.0.0.0/8z100.64.0.0/10z127.0.0.0/8z169.254.0.0/16z172.16.0.0/12z192.0.0.0/24z192.0.0.0/29z192.0.0.8/32z192.0.0.9/32z192.0.0.10/32z192.0.0.170/32z192.0.0.171/32z192.0.2.0/24z192.31.196.0/24z192.52.193.0/24z192.88.99.0/24z192.168.0.0/16z192.175.48.0/24z198.18.0.0/15z198.51.100.0/24z203.0.113.0/24z240.0.0.0/4z255.255.255.255/32)z::1/128z::/128z::ffff:0:0/96z64:ff9b::/96z64:ff9b:1::/48z100::/64z	2001::/23z	2001::/32z2001:1::1/128z2001:1::2/128z2001:2::/48z2001:3::/32z2001:4:112::/48z2001:10::/28z2001:20::/28z2001:db8::/32z	2002::/16z2620:4f:8000::/48zfc00::/7z	fe80::/10T)Úforce_reusable_valuesN)ÚvÚnetworkr   ©é   é   r   Úreturnc                 óê  — | �$t        t        | d«       | dvrt        d| ›d�«      ‚|€“t        dd¬«      j	                  t
        «      t        t        «      j                  d„ «      z  }t        d	d	¬«      j	                  t        «      t        t        «      j                  d
„ «      z  }| dk(  r|S | dk(  r|S ||z  S t        |t        «      rt        |«      }t        t        t        f|d«       t        |t        t        f«      sJ ‚| d|j                   fvrt        d| ›d|›�«      ‚|j                   dk(  rt
        nt        }t#        t        |d   «      t        |d   «      «      j	                  |«      S )a  Generate IP addresses - ``v=4`` for :class:`~python:ipaddress.IPv4Address`\ es,
    ``v=6`` for :class:`~python:ipaddress.IPv6Address`\ es, or leave unspecified
    to allow both versions.

    ``network`` may be an :class:`~python:ipaddress.IPv4Network` or
    :class:`~python:ipaddress.IPv6Network`, or a string representing a network such as
    ``"127.0.0.0/24"`` or ``"2001:db8::/32"``.  As well as generating addresses within
    a particular routable network, this can be used to generate addresses from a
    reserved range listed in the
    `IANA <https://www.iana.org/assignments/iana-ipv4-special-registry/>`__
    `registries <https://www.iana.org/assignments/iana-ipv6-special-registry/>`__.

    If you pass both ``v`` and ``network``, they must be for the same version.
    Nr   r   zv=z, but only v=4 or v=6 are validr   )Úmin_sizeÚmax_sizec                 ó   — t        | ¬«      S ©N©r   ©Úip_addressesr   s    ún/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/hypothesis/strategies/_internal/ipaddress.pyú<lambda>zip_addresses.<locals>.<lambda>f   ó   € ¤,°wÔ"?€ ó    é   c                 ó   — t        | ¬«      S r   r   r   s    r   r    zip_addresses.<locals>.<lambda>i   r!   r"   r   r   z is incompatible with network=r   éÿÿÿÿ)r
   Úintr	   r   Úmapr   r   ÚSPECIAL_IPv4_RANGESÚflatmapr   ÚSPECIAL_IPv6_RANGESÚ
isinstanceÚstrr   r   r   Úversionr   )r   r   ÚfourÚsixÚ	addr_types        r   r   r   I   sc  € ð( 	€}Ü”3˜˜3ÔØ�F‰?Ü! R Q DÐ(GÐ"HÓIÐIØ€ô ˜q¨1Ô-×1Ñ1´+Ó>ÄÜóB
ç
‰'Ñ?Ó
@ñAˆô ˜b¨2Ô.×2Ñ2´;Ó?Ä,ÜóC
ç
‰'Ñ?Ó
@ñAˆð �Š6ØˆKØ�Š6ØˆJØ�c‰zÐÜ�'œ3ÔÜ˜WÓ%ˆÜ”œ[Ð)¨7°IÔ>Ü�g¤¬[Ð9Ô:Ð:Ð:Ø��w—‘Ð'Ñ'Ü   Ð$C¸7¸*ÐEÓFÐFØ&Ÿ™°!Ò3•¼€IÜ”C˜ ™
“O¤S¨°©Ó%5Ó6×:Ñ:¸9ÓEÐEr"   )Ú	ipaddressr   r   r   r   r   Útypingr   Úhypothesis.errorsr	   Úhypothesis.internal.validationr
   Ú$hypothesis.strategies._internal.corer   r   Ú'hypothesis.strategies._internal.numbersr   Ú*hypothesis.strategies._internal.strategiesr   Ú%hypothesis.strategies._internal.utilsr   r(   r*   r,   r   © r"   r   ú<module>r:      s—   ð÷ UÕ TÝ å -Ý 5ß EÝ <Ý EÝ BðÐ ð6Ð ñ0 ¨Ô-ð #Ø6:ò,Fàˆt�}�tÑð,Fð �;Ñ Ñ,¨tÑ3ð,Fð �K +Ñ-Ñ.ò	,Fó .ñ,Fr"   