+
    ‰4i^   ã                   ó@   € R t ^ RIHtHt ^t^
tR tR t	R t
R tR tR# )z=Fallback routines for Python's standard library socket module)ÚunpackÚpackc                óÀ   € \        V \        4      '       g   \        R\        V 4      ,          4      h\	        V 4      ^8w  d   \        R4      hR\        RV 4      ,          # )zJ
Convert an IP address from 32-bit packed binary format to string format.
zstring type expected, not %sú*invalid length of packed IP address stringz%d.%d.%d.%dÚ4B)Ú
isinstanceÚstrÚ	TypeErrorÚtypeÚlenÚ
ValueErrorÚ_unpack)Ú	packed_ips   &Ú2/usr/lib/python3/dist-packages/netaddr/fbsocket.pyÚ	inet_ntoar      sP   € ô �i¤×%Ò%ÜÐ6¼¸i»ÕHÓIÐIä
ˆ9ƒ~˜ÔÜÐEÓFÐFàœ7 4¨Ó3Õ3Ð3ó    c                 óV  € . p. pR p^ p\        V 4       FJ  w  rVVR8X  d   Vf   TpV^,          pMV^8”  d   VP                  WC34       R p^ pVP                  V4       KL  	  V^8”  d   VP                  WC34       \        V4      ^ 8w  dŸ   VP                  R R7       V^ ,          pV F  pV^ ,          V^ ,          8”  g   K  TpK  	  Vw  ršV^ V
 R.,           WV	,           R  ,           pV^ ,          R8X  d   VP	                  ^ R4       VR,          R8X  d   VP                  R4       V# )NÚ0c                 ó   € V ^,          # )é   © )Úxs   &r   Ú<lambda>Ú&_compact_ipv6_tokens.<locals>.<lambda>8   s   €  Q q¦Tr   )ÚkeyÚ éÿÿÿÿ)Ú	enumerateÚappendr   ÚsortÚinsert)ÚtokensÚ
new_tokensÚ	positionsÚstart_indexÚ
num_tokensÚidxÚtokenÚbest_positionÚpositionÚlengthÚ	start_idxs   &          r   Ú_compact_ipv6_tokensr,      s>  € Ø€Jà€IØ€KØ€Jô   Ö'‰
ˆØ�CŒ<ØÒ"Ø!�Ø˜!�O‰Jà˜AŒ~Ø× Ñ  *Ð!:Ô;ØˆKØˆJà×Ñ˜%Ö ñ (ð �A„~Ø×Ñ˜*Ð2Ô3ô ˆ9ƒ~˜Ôà�‰™>ˆÔ*Ø! !�ˆÛ!ˆHØ˜�{˜]¨1Õ-Ö-Ø (’ñ "ð ,ÑˆØ  )Ð,°¨tÕ3°jÈVÕASÐAUÐ6VÕVˆ
ð �a�=˜BÔØ×Ñ˜a Ô$à�b�>˜RÔØ×Ñ˜bÔ!àÐr   c           
     ó¶  € V \         8X  d   \        V4      # V \        8X  Ed   \        V4      ^8w  g   \	        V\
        4      '       g   \        R4      h\        RV4       Uu. uF  pRV,          NK  	  pp\        \        RV4      4      p^ p\        \        V4      4       F  w  r&TpV^V,          ,          pWW,          pK!  	  RTu;8  d   R8:  g   M V^ ,	          R8X  dC   \        R.VR
R  Uu. uF  p\        V^4      NK  	  upO5!  p\        V4      p	V^ R
 V	.,           pRP                  \        V4      4      # \        R	V ,          4      hu upi u upi )zBConvert an packed IP address of the given family to string format.r   z>8Hú%xéÿÿ  l   ÿÿ z>2HNÚ:zunknown address family %déþÿÿÿ)ÚAF_INETr   ÚAF_INET6r   r   Úbytesr   r   Úlistr   ÚreversedÚ_packÚintÚjoinr,   )
Úafr   Úir!   ÚwordsÚint_valÚnumÚwordÚpacked_ipv4Úipv4_strs
   &&        r   Ú	inet_ntoprB   K   s9  € à	ŒW„}ä˜Ó#Ð#Ø	Œx�äˆy‹>˜RÔ¤z°)¼U×'CÒ'CÜÐIÓJÐJä$+¨E°9Ô$=Ó>Ñ$=˜q�$˜—(�(Ñ$=ˆÐ>ô ”W˜U IÓ.Ó/ˆØˆÜ¤¨£Ö0‰FˆAØˆDØ˜2 �6•>ˆDØ•nŠGñ 1ð
 �GÖ)˜zÖ)¨W¸­]¸fÔ-Dä ÐJ¸VÀBÀC¹[Ó(I¹[¸¬¨Q°®¹[Ñ(IÓJˆKÜ  Ó-ˆHØ˜A˜b�\ X JÕ.ˆFà�x‰xÔ,¨VÓ4Ó5Ð5äÐ4°rÕ9Ó:Ð:ùò% ?ùò )Js   Á"EÃ1E
c                ó  € \        V \        4      '       dÉ   \        RV ,          4      pV P                  R4      p\	        V4      ^8X  d”   . pV Fz  pVP                  R4      '       g(   VP                  R4      '       d   \	        V4      ^8”  d   Vh \        V4      pT^,	          ^ 8w  d   ThTP                  \        RT4      4       K|  	  RP                  V4      # Vh\        R\        V 4       24      h  \         d    Thi ; i)zû
Convert an IP address in string format (123.45.67.89) to the 32-bit packed
binary format used in low-level network functions. Differs from inet_aton
by only support decimal octets. Using octal or hexadecimal values will
raise a ValueError exception.
úillegal IP address string %rÚ.Ú0xr   ÚBr   ú(inet_pton() argument 2 must be str, not )r   r   ÚOSErrorÚsplitr   Ú
startswithr8   r   r   r7   r9   r	   r
   )Ú	ip_stringÚinvalid_addrr!   r<   r'   Úoctets   &     r   Ú_inet_pton_af_inetrO   j   sø   € ô �)œS×!Ò!ÜÐ=À	ÕIÓJˆà—‘ Ó%ˆô ˆv‹;˜!ÔØˆEÛ�Ø×#Ñ# D×)Ò)¨e×.>Ñ.>¸s×.CÒ.CÌÈEË
ÐUVÌØ&Ð&ð'Ü ›J�Eð ˜Q•J 1Ô$Ø&Ð&Ø—‘œU 3¨Ó.Ö/ñ  ð —8‘8˜E“?Ð"àÐä
Ð>¼tÀI»Ð>OÐPÓ
QÐQøô "ô 'Ø&Ð&ð'ús   ÂC6Ã6Dc                ó®  € V \         8X  d   \        V4      # V \        8X  EdÒ   \        RV,          4      p. p\	        V\
        4      '       g   \        R\        V4       24      hRV9   d   VhRV9   Ed   VR8X  d   RP                  4       ^,          #  VP                  R4      w  rE. p. pTR8w  d   TP                  R4      pTR8w  d   TP                  R4      p\        T4      '       dˆ   RTR,          9   dz   \        TP                  4       4      pTP                  R	\        R
TR,          4      ^ ,          ,          4       TP                  R	\        R
TR,          4      ^ ,          ,          4       \        T4      \        T4      ,           p	^ T	u;8:  d
   ^8:  g    Th Th^\        T4      \        T4      ,           ,
          p
T Uu. uF  p\        R
\!        T^4      4      NK  	  up\#        T
4       Uu. uF  pRP                  4       NK  	  up,           T Uu. uF  p\        R
\!        T^4      4      NK  	  up,           p Yg,            F$  p\!        T^4      p^ Tu;8:  d   R8:  d   K    Th Th	  EMlRV9   Edc   VP                  R4      pRV9   dã   VRR pVRR . RO8w  d   VhVR,          P%                  4       R9  d   Vh\        V4      ^8w  d   Vh\        VP                  4       4      pVP                  R	\        R
VR,          4      ^ ,          ,          4       VP                  R	\        R
VR,          4      ^ ,          ,          4       V Uu. uF  p\        R
\!        V^4      4      NK  	  ppM\        V4      ^8w  d   Vh V Uu. uF  p\!        V^4      NK  	  ppV F  p^ Tu;8:  d   R8:  d   K   Vh Vh	  T Uu. uF  p\        R
T4      NK  	  ppMVhRP'                  T4      # \        RV ,          4      h  \         d    Thi ; iu upi u upi u upi   \         d    Thi ; iu upi u upi   \         d    Thi ; iu upi )zp
Convert an IP address from string format to a packed string suitable for
use with low-level network functions.
rD   rH   r   z::Ú r   r0   rE   r.   z>H:é    é   N:rS   é   Nz  r/   Nr   zUnknown address family %dr   )r   r   r   r   r   )r   Úffff)r2   rO   r3   rI   r   r   r	   r
   ÚencoderJ   r   r   Úpopr   r   r7   r8   ÚrangeÚlowerr9   )r:   rL   rM   ÚvaluesÚprefixÚsuffixÚl_prefixÚl_suffixrA   Útoken_countÚgap_sizer;   r'   r?   r!   Úipv6_prefixs   &&              r   Ú	inet_ptonrb   Œ   s  € ð
 
ŒW„}ä! )Ó,Ð,Ø	Œx�ÜÐ=À	ÕIÓJˆàˆä˜)¤S×)Ò)ÜÐFÄtÈIÃÐFWÐXÓYÐYà�)ÔàÐà�9ÕØ˜DÔ à—}‘}“¨Õ+Ð+ð#Ø!*§¡°Ó!6‘�ð ˆHØˆHà˜Œ|Ø!Ÿ<™<¨Ó,�à˜Œ|Ø!Ÿ<™<¨Ó,�ô �8�}Š} ¨°­Ô!4Ü-¨h¯l©l«nÓ=�Ø—‘ ¤w¨t°X¸cµ]Ó'CÀAÕ'FÕ FÔGØ—‘ ¤w¨t°X¸cµ]Ó'CÀAÕ'FÕ FÔGä˜h›-¬#¨h«-Õ7ˆKà˜Ö, uÕ,Ø"Ð"ð -Ø"Ð"àœC ›M¬C°«MÕ9Õ:ˆHñ 3;Ó;±(¨Q”�tœS  B›ZÖ(±(Ñ;Ü05°h´Ó@±¨1�:×$Ñ$Ö&±Ñ@õAá4<Ó=±H¨q”5˜œs 1 b›zÖ*±HÑ=õ>ð ð
#Ø%×0Ð0�EÜ˜u b›>�DØ Ö.¨×.Ø*Ð*ð /Ø*Ð*ó 1ð �iÕØ"Ÿ™¨Ó-�à˜)Ô#Ø"(¨¨" +�KØ" 3 BÐ'Ò+DÔDØ*Ð*à" 2•×,Ñ,Ó.°mÔCØ*Ð*ô ˜6“{ aÔ'Ø*Ð*ä1°&·*±*³,Ó?�HØ—M‘M $¬°°xÀµ}Ó)EÀaÕ)HÕ"HÔIØ—M‘M $¬°°xÀµ}Ó)EÀaÕ)HÕ"HÔIá?EÓF¹v¸!œe D¬#¨a°«*Ö5¹v�FÐF�Fô ˜6“{ aÔ'Ø*Ð*ð'Ù:@ÓA¹&°œc %¨žn¹&�FÐAÛ!'˜Ø  EÖ3¨V×3Ø".Ð.ð  4Ø".Ð.ñ "(ñ 39Ó9±&¨Qœ%  až.±&�Ð9�à"Ð"à�x‰x˜ÓÐäÐ4°rÕ9Ó:Ð:øô] ô #Ø"Ð"ð#üò4 <ùÚ@ùÚ=øô ô #Ø"Ð"ð#üò. Gùò Bøô
 "ô 'Ø&Ð&ð'üò :s`   ÂP Ç	PÇ7PÈP!É#P& É-P& ÍP7ÎQ ÎP<Î%Q Î=Q Ï	QÐPÐ&P4Ð<Q ÑQN)Ú__doc__Ústructr   r   r   r7   r2   r3   r   r,   rB   rO   rb   r   r   r   Ú<module>re      s7   ðñ Dç 3ð €Ø€ò
4ò,ò^;ò>RôDi;r   