+
    ‰4iG<  ã                   ó&  € ^ RI t ^ RIt^ RIt^ RIt^ RIHtHtHtHtH	t	H
t
HtHt R t]P                  P                  R;R]! R4      ]! R4      ]! R4      R]! R4      ]! R4      ^3R]! R	4      ]! R	4      ]! R4      ]! R
4      ]! R4      ]! R4      R3R]! R4      ]! R4      ]! R4      ]! R4      ]! R4      ]! R4      R3.4      R 4       tR tR t]P                  P                  . R<O. R=O. R>O. R?O. R@O. RAO. RBO. RCO. RDO. REO.	4      R 4       tR tR tR tR tR tR tR  tR! tR" tR# tR$ tR% tR& t R' t!]P                  P                  R(. RFO4      R) 4       t"R* t#R+ t$R, t%R- t&R. t'R/ t(R0 t)R1 t*R2 t+R3 t,R4 t-R5 t.R6 t/R7 t0R8 t1R9 t2R: t3R# )Gé    N)Ú	IPAddressÚ	IPNetworkÚ	INET_ATONÚ	INET_PTONÚspanning_cidrÚAddrFormatErrorÚZEROFILLÚNOHOSTc                  óž  € \        R 4      p V P                  ^8X  g   Q h\        V 4      R8X  g   Q h\        V 4      R 8X  g   Q hV P	                  4       R 8X  g   Q h\        V 4      R8X  g   Q h\        V 4      R8X  g   Q h\        V 4      R8X  g   Q hV P                  R8X  g   Q hV P                  4       R8X  g   Q hV P                  R8X  g   Q hR# )	ú	192.0.2.1zIPAddress('192.0.2.1')ì      Ú
0xc0000201s   À Ú"0b11000000000000000000001000000001z#11000000.00000000.00000010.00000001N)éÀ   r   é   é   )r   ÚversionÚreprÚstrÚformatÚintÚhexÚbytesÚbinÚbitsÚwords©Úips    Ú=/usr/lib/python3/dist-packages/netaddr/tests/ip/test_ip_v4.pyÚtest_ipaddress_v4r       sÆ   € Ü	�;Ó	€BØ�:‰:˜Œ?Ðˆ?Ü�‹8Ð/Ô/Ð/Ð/Üˆr‹7�kÔ!Ð!Ð!Ø�9‰9‹;˜+Ô%Ð%Ð%Üˆr‹7�jÔ Ð Ð Üˆr‹7�lÔ"Ð"Ð"Ü�‹9Ð+Ô+Ð+Ð+Ø�6‰6Ð9Ô9Ð9Ð9Ø�7‰7‹9Ð=Ô=Ð=Ð=Ø�8‰8�~Ô%Ð%Ò%ó    r   z192.0.2.1/32ú255.255.255.255ú0.0.0.0ú192.0.2.0/24ú	192.0.2.0ú192.0.2.255ú255.255.255.0z	0.0.0.255é   z192.0.3.112/22z192.0.3.112ú	192.0.0.0z192.0.0.0/22z192.0.3.255z255.255.252.0z	0.0.3.255i   c                 ó&  € \        V 4      pVP                  V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  g   Q hVP
                  V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  g   Q hR # )N)r   r   ÚnetworkÚcidrÚ	broadcastÚnetmaskÚhostmaskÚsize)	ÚvalueÚipaddrr+   r,   r-   r.   r/   r0   Únets	   &&&&&&&& r   Útest_ipnetwork_v4r4   !   s�   € ôH �EÓ
€CØ�6‰6�VÔÐÐØ�;‰;˜'Ô!Ð!Ð!Ø�8‰8�tÔÐÐØ�=‰=˜IÔ%Ð%Ð%Ø�;‰;˜'Ô!Ð!Ð!Ø�<‰<˜8Ô#Ð#Ð#Ø�8‰8�tÔÐÒr!   c                  ó,  € \        R 4      p \        V 4      ^8X  g   Q h\        V 4      p\        V4      ^8X  g   Q hV\        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      .8X  g   Q hR	# )
ú192.0.2.16/29ú
192.0.2.16ú
192.0.2.17z
192.0.2.18z
192.0.2.19z
192.0.2.20z
192.0.2.21z
192.0.2.22ú
192.0.2.23N)r   ÚlenÚlistr   )r   Úip_lists     r   Ú!test_ipnetwork_list_operations_v4r=   O   sŽ   € Ü	�?Ó	#€BÜˆr‹7�aŒ<Ðˆ<ä�2‹h€GÜˆw‹<˜1ÔÐÐàÜ�,ÓÜ�,ÓÜ�,ÓÜ�,ÓÜ�,ÓÜ�,ÓÜ�,ÓÜ�,Óð	ô 	ð 	ò 	r!   c                  ó²   € \        R 4      p V ^ ,          \        R4      8X  g   Q hV ^,          \        R4      8X  g   Q hV R,          \        R4      8X  g   Q hR# )r6   r7   r8   r9   Néÿÿÿÿ)r   r   r   s    r   Ú"test_ipnetwork_index_operations_v4r@   b   sQ   € Ü	�?Ó	#€BØˆa�5”I˜lÓ+Ô+Ð+Ð+Øˆa�5”I˜lÓ+Ô+Ð+Ð+Øˆb�6”Y˜|Ó,Ô,Ð,Ò,r!   c                 ó¼   € \        R 4      pW0W1,          p\        V\        P                  4      '       g   Q h\	        V4      \	        V4      WV1,          8X  g   Q hR# )r6   N)r   Ú
isinstanceÚtypesÚGeneratorTyper;   )ÚstartÚstopÚstepr   Úresults   &&&  r   Ú"test_ipnetwork_slice_operations_v4rI   i   sR   € ô 
�?Ó	#€BØ�d�Õ €FÜ�fœe×1Ñ1×2Ò2Ð2Ð2Ü�‹<œ4 ›8 E¨t OÕ4Ô4Ð4Ò4r!   c                  ó¾  € \        \        R 4      4      p \        P                  ! V 4       \	        V 4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R	4      \        R
4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      .8X  g   Q hR# )ú192.0.2.128/28z192.0.2.128z192.0.2.129ú192.0.2.130z192.0.2.131z192.0.2.132z192.0.2.133z192.0.2.134z192.0.2.135z192.0.2.136z192.0.2.137z192.0.2.138z192.0.2.139z192.0.2.140z192.0.2.141z192.0.2.142z192.0.2.143N)r;   r   ÚrandomÚshuffleÚsortedr   ©r<   s    r   Útest_ipnetwork_sort_orderrQ   ~   s¹   € Ü”9Ð-Ó.Ó/€GÜ
‡N‚N�7ÔÜ�'‹?Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó Ü�-Ó ð!ô ð ò r!   c            
      ó€  € \        R 4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      .p \        P                  ! V 4       V P	                  4        V \        R4      \        R4      \        R4      \        R 4      \        R4      \        R4      \        R4      .8X  g   Q hR# )rL   rK   z::z192.0.3.0/24r$   z	fe80::/64ú10.0.0.1N)r   r   rM   rN   ÚsortrP   s    r   Ú<test_ipaddress_and_ipnetwork_canonical_sort_order_by_versionrU   •   s§   € ä�-Ó ÜÐ"Ó#Ü�$‹Ü�.Ó!Ü�.Ó!Ü�+ÓÜ�*Óð€Gô ‡N‚N�7ÔØ‡L�L„NàÜ�*ÓÜ�.Ó!ÜÐ"Ó#Ü�-Ó Ü�.Ó!Ü�$‹Ü�+Óðô ð ò r!   c                  ó<   € \        R 4      \        R4      8X  g   Q hR# )z192.168.0.15z192.168.0.15/32N©r   © r!   r   Útest_ipnetwork_v4_constructorrY   ®   s   € Ü�^Ó$¬	Ð2CÓ(DÔDÐDÒDr!   c                  ó|  € \        R 4      ^,           \        R4      8X  g   Q h^\        R 4      ,           \        R4      8X  g   Q h\        R4      ^,
          \        R 4      8X  g   Q h\        R4      \        R4      ,           \        R4      8X  g   Q h\        R4      \        R4      ,
          \        R4      8X  g   Q h\        P                  ! \        4      ;_uu_ 4        ^\        R4      ,
           RRR4       \        R4      p V ^,          p V \        R4      8X  g   Q hV ^,          p V \        R4      8X  g   Q hV \        R4      ,          p V \        R4      8X  g   Q hV \        R	4      ,          p V \        R
4      8X  g   Q h\        R4      p \        P                  ! \        4      ;_uu_ 4        V R,          p RRR4       \        R4      p \        P                  ! \        4      ;_uu_ 4        V R,          p RRR4       R#   + '       g   i     EL; i  + '       g   i     Le; i  + '       g   i     R# ; i)r%   r   r)   z0.0.0.42z
192.0.0.42NrS   ú10.0.0.2z	10.0.0.43z0.0.0.43z10.0.0.0r#   r"   r?   )r   ÚpytestÚraisesÚ
IndexErrorr   s    r   Ú$test_ipaddress_integer_operations_v4r_   ²   s½  € Ü�[Ó! AÕ%¬°;Ó)?Ô?Ð?Ð?ØŒy˜Ó%Õ%¬°;Ó)?Ô?Ð?Ð?Ü�[Ó! AÕ%¬°;Ó)?Ô?Ð?Ð?Ü�[Ó!¤I¨jÓ$9Õ9¼YÀ|Ó=TÔTÐTÐTÜ�\Ó"¤Y¨zÓ%:Õ:¼iÈÓ>TÔTÐTÐTä	�Š”z×	"Õ	"Ø	ŒI�kÓ"Ö"÷ 
#ô 
�:Ó	€BØˆ!…G€BØ”˜:Ó&Ô&Ð&Ð&àˆ!…G€BØ”˜:Ó&Ô&Ð&Ð&àŒ)�JÓ
Õ€BØ”˜;Ó'Ô'Ð'Ð'àŒ)�JÓ
Õ€BØ”˜:Ó&Ô&Ð&Ð&ô 
�9Ó	€BÜ	�Š”z×	"Õ	"Ø
ˆb�ˆ÷ 
#ô 
Ð$Ó	%€BÜ	�Š”z×	"Õ	"Ø
ˆb�ˆ÷ 
#Ñ	"÷- 
#×	"Ð	"ú÷$ 
#×	"ú÷ 
#×	"Ð	"ús$   ÃHÆ0
HÇ/
H*ÈH	ÈH'	È*H;	c                  ó^  € \        R 4      \        R4      ,          \        R4      8X  g   Q h\        R4      \        R4      ,          \        R4      8X  g   Q h\        R4      \        R4      ,          \        R4      8X  g   Q h\        R4      P                  R	P                  R
4      8X  g   Q hR# )z
192.0.2.15r'   r%   ú255.255.0.0z0.0.255.255r"   ú	255.0.0.0z	0.255.0.0z1.2.3.4zÚasciiN)r   ÚpackedÚencoderX   r!   r   Ú#test_ipaddress_binary_operations_v4rf   Ó   sŽ   € Ü�\Ó"¤Y¨Ó%?Õ?Ä9È[ÓCYÔYÐYÐYÜ�]Ó#¤i°Ó&>Õ>Ä)ÐL]ÓB^Ô^Ð^Ð^Ü�]Ó#¤i°Ó&<Õ<Ä	È+Ó@VÔVÐVÐVÜ�YÓ×&Ñ&Ð*<×*CÑ*CÀGÓ*LÔLÐLÒLr!   c            	      ó  € \        \        R 4      P                  4       4      \        R4      \        R4      \        R4      \        R4      \        R4      \        R4      .8X  g   Q h\        \        R4      4      \        R4      \        R	4      .8X  g   Q h\        \        R4      P                  4       4      \        R4      \        R	4      .8X  g   Q h\        \        R
4      P                  4       4      \        R4      .8X  g   Q hR# )z192.0.2.0/29r   z	192.0.2.2z	192.0.2.3z	192.0.2.4z	192.0.2.5z	192.0.2.6z192.168.0.0/31ú192.168.0.0z192.168.0.1z192.168.0.0/32N)r;   r   Ú
iter_hostsr   rX   r!   r   Útest_iterhosts_v4rj   Ú   sù   € Ü”	˜.Ó)×4Ñ4Ó6Ó7Ü�+ÓÜ�+ÓÜ�+ÓÜ�+ÓÜ�+ÓÜ�+Óð<ô ð ð ô ”	Ð*Ó+Ó,Ü�-Ó Ü�-Ó ð1ô ð ð ô
 ”	Ð*Ó+×6Ñ6Ó8Ó9Ü�-Ó Ü�-Ó ð>ô ð ð ô ”	Ð*Ó+×6Ñ6Ó8Ó9¼iÈÓ>VÐ=WÔWÐWÒWr!   c                  ó®   € \        \        R 4      4      '       d   Q h\        \        R4      4      '       g   Q h\        \        R4      4      '       g   Q hR# )r#   ú0.0.0.1r"   N)Úboolr   rX   r!   r   Ú$test_ipaddress_boolean_evaluation_v4rn   ð   sE   € Ü”I˜iÓ(×)Ò)Ð)Ð)Ü”	˜)Ó$×%Ò%Ð%Ð%Ü”	Ð+Ó,×-Ò-Ð-Ò-r!   c                  ó>   € \        \        R 4      4      '       g   Q hR# )z	0.0.0.0/0N)rm   r   rX   r!   r   Ú$test_ipnetwork_boolean_evaluation_v4rp   ö   s   € Ü”	˜+Ó&×'Ò'Ð'Ò'r!   c                  ó  € \        R 4      \        R4      8X  g   Q h\        R4      \        R4      8X  g   Q h\        R4      \        R4      8X  g   Q h\        R4      \        R4      8w  g   Q h\        R4      \        R4      8w  g   Q hR# )z192.0.2.0/255.255.254.0ú192.0.2.0/23z192.0.2.65/255.255.254.0z192.0.2.65/23z192.0.2.65/255.255.255.0z192.0.2.65/24NrW   rX   r!   r   Útest_ipnetwork_equality_v4rs   ú   s   € ÜÐ.Ó/´9¸^Ó3LÔLÐLÐLÜÐ/Ó0´I¸nÓ4MÔMÐMÐMÜÐ/Ó0´I¸oÓ4NÔNÐNÐNÜÐ/Ó0´I¸nÓ4MÔMÐMÐMÜÐ/Ó0´I¸oÓ4NÔNÐNÒNr!   c                  ó6  € \        R 4      \        R4      R3\        R4      \        R4      R3\        R4      \        R4      R3\        R4      \        R4      R3\        R4      \        R4      R33 F$  w  rpW9   VJ g   Q h\        V 4      V9   VJ d   K$  Q h	  R# )r   r$   Tr&   rr   FN)r   r   r   )Úwhatr+   rH   s      r   Útest_ip_network_membership_v4rv     s    € ä	�;Ó	¤¨>Ó!:¸DÐAÜ	�=Ó	!¤9¨^Ó#<¸dÐCÜ	�>Ó	"¤I¨nÓ$=¸tÐDÜ	�>Ó	"¤I¨nÓ$=¸tÐDÜ	�>Ó	"¤I¨nÓ$=¸uÐEó"Ñˆ�vð ‘ FÓ*Ð*Ð*Ü�D“	˜WÑ$¨Õ/Ð/Ð/ó"r!   c                  óÚ   € \        R 4      \        R 4      8X  g   Q h\        R 4      \        R 4      Jg   Q h\        R 4      \        R 4      8w  d   Q h\        R 4      \        R 4      J d   Q hR# )r$   NrW   rX   r!   r   Útest_ip_network_equality_v4rx     se   € Ü�^Ó$¬	°.Ó(AÔAÐAÐAÜ�^Ó$¬I°nÓ,EÓEÐEÐEä˜Ó(¬I°nÓ,EÔEÐEÐEÜ˜Ó(¬I°nÓ,EÓEÐEÐEÑEr!   c                  óâ   € \        ^4      \        R4      8X  g   Q h\        ^^4      \        R4      8X  g   Q h\        ^^4      \        R4      8X  g   Q h\        ^
4      \        R4      8X  g   Q hR# )r   rl   z::1z0.0.0.10N©r   rX   r!   r   Ú%test_ipaddress_integer_constructor_v4r{     sb   € Ü�Q‹<œ9 YÓ/Ô/Ð/Ð/Ü�Q˜‹?œi¨	Ó2Ô2Ð2Ð2Ü�Q˜‹?œi¨Ó.Ô.Ð.Ð.Ü�R‹=œI jÓ1Ô1Ð1Ò1r!   c                  óü   € \        R 4      \        R4      8X  g   Q h\        R^4      \        R4      8X  g   Q h\        R 4      \        R4      8X  g   Q h\        ^^€,          ^,
          4      \        R4      8X  g   Q hR# )l   ÿÿ z::1:ffff:ffffì   ÿÿ z::255.255.255.255z'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffffNrz   rX   r!   r   Ú%test_ipaddress_integer_constructor_v6r~     sn   € Ü�[Ó!¤Y¨Ó%?Ô?Ð?Ð?Ü�Z Ó#¤yÐ1DÓ'EÔEÐEÐEÜ�[Ó!¤Y¨Ó%?Ô?Ð?Ð?Ü�Q˜•V˜a•ZÓ ¤IÐ.WÓ$XÔXÐXÒXr!   c                  ó  € \        R \        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R\        R7      \        R4      8X  g   Q h\        R	\        R7      \        R4      8X  g   Q hR
# )z0x7f.0x1©Úflagsz	127.0.0.1z0x7f.0x0.0x0.0x1ú0177.01ú	0x7f.0.01Ú127z	0.0.0.127z127.1z127.0.1N)r   r   rX   r!   r   Ú'test_ipaddress_inet_aton_constructor_v4r…   $  sÕ   € Ü�Z¤yÔ1´Y¸{Ó5KÔKÐKÐKÜÐ'¬yÔ9¼YÀ{Ó=SÔSÐSÐSÜ�Y¤iÔ0´I¸kÓ4JÔJÐJÐJÜ�[¬	Ô2´iÀÓ6LÔLÐLÐLô �U¤)Ô,´	¸+Ó0FÔFÐFÐFÜ�U¤)Ô,´	¸+Ó0FÔFÐFÐFÜ�W¤IÔ.´)¸KÓ2HÔHÐHÐHÜ�Y¤iÔ0´I¸kÓ4JÔJÐJÒJr!   Úaddressc                 ó8  € \         P                  ! \        4      ;_uu_ 4        \        V \        R 7       RRR4       \         P                  ! \        4      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     LH; i  + '       g   i     R# ; i)r€   N)r\   r]   r   r   r   )r†   s   &r   Ú=test_ipaddress_inet_pton_constructor_v4_rejects_invalid_inputrˆ   1  sX   € ô 
�Š”×	'Õ	'Ü�'¤Õ+÷ 
(ô 
�Š”×	'Õ	'Ü�'Ô÷ 
(Ñ	'÷ 
(×	'ú÷ 
(×	'Ð	'ús   £A5ÁBÁ5B	ÂB	c                  óH   € \        R \        R7      \        R 4      8X  g   Q hR# )rS   r€   N)r   r   rX   r!   r   Ú;test_ipaddress_inet_pton_constructor_v4_accepts_valid_inputrŠ   G  s   € Ü�Z¤yÔ1´Y¸zÓ5JÔJÐJÒJr!   c                  óÆ  € \        R \        R7      \        R4      8X  g   Q h\        R \        \        ,          R7      \        R4      8X  g   Q h\        R\        \        ,          R7      \        R4      8X  g   Q h\        P                  ! \
        4      ;_uu_ 4        \        R\        R7      '       g   Q h RRR4       \        P                  ! \
        4      ;_uu_ 4        \        R\        \        ,          R7      '       g   Q h RRR4       \        R \        \        ,          R7      \        R4      8X  g   Q hR#   + '       g   i     LŽ; i  + '       g   i     LQ; i)z010.000.000.001r€   z8.0.0.1rS   z010.000.001N)r   r   r	   r\   r]   r   r   rX   r!   r   Ú0test_ipaddress_constructor_zero_filled_octets_v4rŒ   K  sç   € ÜÐ&¬iÔ8¼IÀiÓ<PÔPÐPÐPÜÐ&¬i¼(Õ.BÔCÄyÐQ[ÓG\Ô\Ð\Ð\Ü�]¬)´hÕ*>Ô?Ä9ÈZÓCXÔXÐXÐXä	�Š”×	'Õ	'Ü˜¬h×7Ó7Ð7Ñ7÷ 
(ô 
�Š”×	'Õ	'Ü˜¬i¼(Õ.B×CÓCÐCÑC÷ 
(ô Ð&¬i¼(Õ.BÔCÄyÐQ[ÓG\Ô\Ð\Ò\÷ 
(×	'ú÷ 
(×	'ús   ÂD=Ã!%EÄ=E	ÅE 	c                  ó8  € \        R 4      \        R 4      8X  g   Q h\        R4      \        R 4      8X  g   Q h\        R4      \        R 4      8X  g   Q h\        \        R 4      4      \        R 4      8X  g   Q h\        \        R 4      4      \        R 4      8X  g   Q hR# )r$   z192.0.2.0/255.255.255.0z192.0.2.0/0.0.0.255NrW   rX   r!   r   Útest_ipnetwork_constructor_v4rŽ   Y  s†   € Ü�^Ó$¬	°.Ó(AÔAÐAÐAÜÐ.Ó/´9¸^Ó3LÔLÐLÐLÜÐ*Ó+¬y¸Ó/HÔHÐHÐHÜ”Y˜~Ó.Ó/´9¸^Ó3LÔLÐLÐLÜ”Y˜~Ó.Ó/´9¸^Ó3LÔLÐLÒLr!   c                  óš   € \         P                  ! \        4      ;_uu_ 4        \        R 4       RRR4       R#   + '       g   i     R# ; i)ÚfooN©r\   r]   r   r   rX   r!   r   Ú%test_ipnetwork_bad_string_constructorr’   a  s(   € Ü	�Š”×	'Õ	'Ü�%Ô÷ 
(×	'×	'Ò	'ús	   £9¹A
	c                  óF  € \         P                  ! \        4      ;_uu_ 4        \        R 4       RRR4       \        R RR7      \        R4      8X  g   Q h\        RRR7      \        R4      8X  g   Q h\        RRR7      \        R4      8X  g   Q hR#   + '       g   i     Li; i)	z10/8NT)Úexpand_partialz
10.0.0.0/8z10.20/16z10.20.0.0/16z10.20.30/24z10.20.30.0/24r‘   rX   r!   r   Ú test_ipnetwork_expand_partial_v4r•   f  su   € Ü	�Š”×	'Õ	'Ü�&Ô÷ 
(ä�V¨DÔ1´Y¸|Ó5LÔLÐLÐLÜ�Z°Ô5¼À>Ó9RÔRÐRÐRÜ�]°4Ô8¼IÀoÓ<VÔVÐVÒV÷	 
(×	'ús   £BÂB 	c                  ó  € \        R 4      P                  4       ^ 8X  g   Q h\        R4      P                  4       ^8X  g   Q h\        R4      P                  4       ^8X  g   Q h\        R4      P                  4       ^8X  g   Q h\        R4      P                  4       ^8X  g   Q h\        R4      P                  4       ^8X  g   Q h\        R4      P                  4       ^ 8X  g   Q h\        R4      P                  4       ^ 8X  g   Q hR# )	r#   z	128.0.0.0rb   ra   r'   z255.255.255.254r"   z1.1.1.1N)r   Únetmask_bitsrX   r!   r   Útest_ipaddress_netmask_v4r˜   n  sä   € Ü�YÓ×,Ñ,Ó.°!Ô3Ð3Ð3Ü�[Ó!×.Ñ.Ó0°AÔ5Ð5Ð5Ü�[Ó!×.Ñ.Ó0°AÔ5Ð5Ð5Ü�]Ó#×0Ñ0Ó2°bÔ8Ð8Ð8Ü�_Ó%×2Ñ2Ó4¸Ô:Ð:Ð:ÜÐ&Ó'×4Ñ4Ó6¸"Ô<Ð<Ð<ÜÐ&Ó'×4Ñ4Ó6¸"Ô<Ð<Ð<ä�YÓ×,Ñ,Ó.°"Ô4Ð4Ò4r!   c                  ór   € \        \        ^ 4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q hR# )r   Ú0x0r}   Ú
0xffffffffN)r   r   rX   r!   r   Útest_ipaddress_hex_formatrœ   z  s1   € ÜŒy˜‹|Ó Ô%Ð%Ð%ÜŒy˜Ó$Ó%¨Ô5Ð5Ò5r!   c                  ór   € \        \        R 4      4      R8X  g   Q h\        \        ^ 4      4      R8X  g   Q hR# )r}   Ú0o37777777777Ú0o0N)Úoctr   rX   r!   r   Útest_ipaddress_oct_formatr¡     s1   € ÜŒy˜Ó$Ó%¨Ô8Ð8Ð8ÜŒy˜‹|Ó Ô%Ð%Ò%r!   c                  óŒ  € \        R 4      p V P                  P                  ^ ,          P                  R8X  g   Q hV P                  P                  ^ ,          P                  R8X  g   Q hV P                  P                  ^ ,          P
                  R8X  g   Q hV P                  P                  ^ ,          P                  R 8X  g   Q hR# )z224.0.1.173Ú	Multicastz224/8ÚReservedN)r   ÚinfoÚIPv4ÚdesignationÚprefixÚstatusr£   r†   r   s    r   Útest_multicast_inforª   „  s�   € Ü	�=Ó	!€BØ�7‰7�<‰<˜�?×&Ñ&¨+Ô5Ð5Ð5Ø�7‰7�<‰<˜�?×!Ñ! WÔ,Ð,Ð,Ø�7‰7�<‰<˜�?×!Ñ! ZÔ/Ð/Ð/Ø�7‰7×Ñ˜QÕ×'Ñ'¨=Ô8Ð8Ò8r!   c                  ó*  € \        R 4      p V \        R4      8X  g   Q h\        P                  ! V 4      p\        P                  ! V4      pW 8X  g   Q h\	        V4      \	        V 4      8w  g   Q hVP
                  R 8X  g   Q hVP                  ^8X  g   Q hR# )r   r   N)r   ÚpickleÚdumpsÚloadsÚidr1   r   )r   ÚbufÚip2s      r   Útest_ipaddress_pickling_v4r²   Œ  s   € Ü	�:Ó	€BØ”˜;Ó'Ô'Ð'Ð'ä
�,Š,�rÓ
€CÜ
�,Š,�sÓ
€CàŒ9Ðˆ9Üˆc‹7”b˜“fÔÐÐØ�9‰9˜
Ô"Ð"Ð"Ø�;‰;˜!ÔÐÒr!   c                  óP  € \        R 4      p V \        R 4      8X  g   Q h\        P                  ! V 4      p\        P                  ! V4      pW 8X  g   Q h\	        V4      \	        V 4      8w  g   Q hVP
                  R8X  g   Q hVP                  ^8X  g   Q hVP                  ^8X  g   Q hR# )r$   l       N)r   r¬   r­   r®   r¯   r1   Ú	prefixlenr   )r,   r°   Úcidr2s      r   Útest_ipnetwork_pickling_v4r¶   ™  s‘   € Ü�^Ó$€DØ”9˜^Ó,Ô,Ð,Ð,ä
�,Š,�tÓ
€CÜ�LŠL˜Ó€EàŒ=Ðˆ=Üˆe‹9œ˜4›Ô Ð Ð Ø�;‰;˜*Ô$Ð$Ð$Ø�?‰?˜bÔ Ð Ð Ø�=‰=˜AÔÐÒr!   c                  ó    € \        R 4      p . p\        ^4       F&  pVP                  \        V 4      4       V ^,          p K(  	  V. RO8X  g   Q hR# )ú192.0.2.0/28N)r¸   z192.0.2.16/28z192.0.2.32/28z192.0.2.48/28z192.0.2.64/28z192.0.2.80/28z192.0.2.96/28z192.0.2.112/28rK   z192.0.2.144/28z192.0.2.160/28z192.0.2.176/28z192.0.2.192/28z192.0.2.208/28z192.0.2.224/28z192.0.2.240/28)r   ÚrangeÚappendr   )r   ÚresultsÚis      r   Ú"test_ipnetwork_incrementing_by_intr½   §  sQ   € Ü	�>Ó	"€BØ€GÜ�2ŽYˆØ�‰”s˜2“wÔØ
ˆa�Šñ ð ò ô ð ò r!   c                  óÞ  € \        R 4      P                  \        R4      8X  g   Q h\        R 4      P                  e   Q h\	        \        R 4      P                  4       4      \        R4      \        R4      .8X  g   Q h\        R4      P                  \        R4      8X  g   Q h\        R4      P                  e   Q h\	        \        R4      P                  4       4      \        R4      .8X  g   Q hR# )z192.0.2.0/31r%   Nr   z192.0.2.0/32)r   r+   r   r-   r;   ri   rX   r!   r   Útest_rfc3021_subnetsr¿   Â  sÑ   € ä�^Ó$×,Ñ,´	¸+Ó0FÔFÐFÐFÜ�^Ó$×.Ñ.Ò6Ð6Ð6Ü”	˜.Ó)×4Ñ4Ó6Ó7Ü�+ÓÜ�+Óð<ô ð ð ô �^Ó$×,Ñ,´	¸+Ó0FÔFÐFÐFÜ�^Ó$×.Ñ.Ò6Ð6Ð6Ü”	˜.Ó)×4Ñ4Ó6Ó7¼IÀkÓ<RÐ;SÔSÐSÒSr!   c                  óæ   € \        R 4      p V P                  ^8X  g   Q h^V n        V P                  ^8X  g   Q h\        R4      p V P                  ^8X  g   Q h^@V n        V P                  ^@8X  g   Q hR# )ú192.168.0.0/16údead:beef::/16N)r   r´   r   s    r   Útest_ipnetwork_change_prefixlenrÃ   Ñ  sn   € Ü	Ð#Ó	$€BØ�<‰<˜2ÔÐÐØ€B„LØ�<‰<˜1ÔÐÐä	Ð#Ó	$€BØ�<‰<˜2ÔÐÐØ€B„LØ�<‰<˜2ÔÐÒr!   c                  óš   € \        R 4      p RV n        V P                  ^8X  g   Q h\        R4      p RV n        V P                  ^@8X  g   Q hR# )rÁ   rb   rÂ   zffff:ffff:ffff:ffff::N)r   r.   r´   r   s    r   Útest_ipnetwork_change_netmaskrÅ   Ý  sJ   € Ü	Ð#Ó	$€BØ€B„JØ�<‰<˜1ÔÐÐä	Ð#Ó	$€BØ(€B„JØ�<‰<˜2ÔÐÒr!   c                  ó´   € \        R 4      \        R4      RR.p \        V 4      \        R4      8X  g   Q h\        \        V 4      4      \        R4      8X  g   Q hR# )rS   r[   z10.0.0.3z10.0.0.4z10.0.0.0/29N)r   r   r   Úreversed)Ú	addressess    r   Ú"test_spanning_cidr_handles_stringsrÉ   ç  sX   € ô 	�*ÓÜ�*ÓØØð	€Iô ˜Ó#¤y°Ó'?Ô?Ð?Ð?Üœ )Ó,Ó-´¸=Ó1IÔIÐIÒIr!   c                  ón   € \        \        R 4      \        R7      P                  \        R4      8X  g   Q hR# )z192.168.0.1/24r€   rh   N)r   r
   r   r   rX   r!   r   Útest_ipnetwork_nohostrË   ô  s)   € Ü”YÐ/Ó0¼Ô?×BÑBÄiÐP]ÓF^Ô^Ð^Ò^r!   )r1   r2   r+   r,   r-   r.   r/   r0   )rE   rF   rG   )NNr?   )r?   r   éþÿÿÿ)r?   Nr?   )r?   Néýÿÿÿ)r   Né   )r   r?   N)r   rÎ   N)r   NrÎ   )r   rÎ   r   )	r‚   rƒ   Ú10z10.1z10.0.1z	010.0.0.1z	10.01.0.1z	10.0.00.1z	10.0.1.01)4r¬   rC   rM   r\   Únetaddrr   r   r   r   r   r   r	   r
   r    ÚmarkÚparametrizer4   r=   r@   rI   rQ   rU   rY   r_   rf   rj   rn   rp   rs   rv   rx   r{   r~   r…   rˆ   rŠ   rŒ   rŽ   r’   r•   r˜   rœ   r¡   rª   r²   r¶   r½   r¿   rÃ   rÅ   rÉ   rË   rX   r!   r   Ú<module>rÓ      s+  ðÛ Û Û ã ÷	÷ 	ó 	ò&ð ‡�×ÑØVð Ù�kÓ"Ù�kÓ"Ù�nÓ%ØÙÐ'Ó(Ù�iÓ Øð		
ð Ù�kÓ"Ù�kÓ"Ù�nÓ%Ù�mÓ$Ù�oÓ&Ù�kÓ"Øð		
ð Ù�mÓ$Ù�kÓ"Ù�nÓ%Ù�mÓ$Ù�oÓ&Ù�kÓ"Øð		
ð+ó"ñFóG"ðFòò&-ð ‡�×ÑÚâÚÚÚÚÚÚÚÚð
óñ5óð5òò.ò2EòòBMòXò,.ò(òOò	0òFò2òYò
Kð ‡�×ÑØò
óñóðòKò]òMòò
Wò	5ò6ò
&ò
9ò
òòò6Tò	òò
Jô_r!   