grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a ÊÒgp ã@s`dZddlZejddkr†ejZeZeZ dd„Z dd„Z dd„Z dd„Z d d„Zd d„Zd d„Zd d „Zdd„Zdd„ZeZdd„ZnŒejdd…ddgk�r ejZeefZeZ eZ dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd „Zdd„Zdd„ZeZdd„Znedƒ‚zdd lmZWne�y>ddl ZYn0e!ed!ƒ�rVd"d#„Z"nej#Z"dS)$z« Compatibility wrappers providing uniform behaviour for Python code required to run under both Python 2.x and 3.x. All operations emulate 2.x behaviour where applicable. éNécCs t|dƒS)NzUTF-8)Úbytes©Úx©rú2/usr/lib/python3.9/site-packages/netaddr/compat.pyÚórcCst|ttd ¡ƒfƒS©NÚ)Ú isinstanceÚstrÚtypeÚencoderrrrrr cCs t|tƒS©N)r Úintrrrrrr cCs t|dƒS)NÚ__call__)Úhasattrrrrrrr cCs t| ¡ƒSr)ÚlistÚkeysrrrrrr cCs t| ¡ƒSr)rÚitemsrrrrr r cCs| ¡Sr©rrrrrr"r cGsd ¡j|ŽSr )rÚjoin©ÚargsrrrÚ _bytes_join$srcGs tt|ŽƒSr)rÚziprrrrÚ_zip'srcOstt|i|¤ŽƒSr)rÚrange©rÚkwargsrrrÚ_range*sr!cCst|ƒSr©ÚnextrrrrÚ _iter_next/sr$écCs t|tƒSr)r Ú basestringrrrrr<r cCst|ttfƒSr)r rÚlongrrrrr>r cCst|ƒSr)Úcallablerrrrr@r cCs| ¡SrrrrrrrBr cCs| ¡Sr)rrrrrrDr cCs t| ¡ƒSr)ÚiterrrrrrrFr cGs dj|ŽSr )rrrrrrHscGst|ŽSr)rrrrrrKscOst|i|¤ŽSr)rrrrrr!NscCs| ¡Srr"rrrrr$SszAthis module only supports Python 2.4.x or higher (including 3.x)!)Ú resourcesÚfilescCst |¡ |¡ d¡S)NÚrb)Ú_importlib_resourcesr+ÚjoinpathÚopen)ÚpkgÚresrrrÚ _open_binaryasr2)$Ú__doc__ÚsysÚ_sysÚ version_infoÚmaxsizeZ _sys_maxintrZ _int_typer Z _str_typeZ _bytes_typeZ_is_strZ_is_intZ _callableZ _dict_keysZ _dict_itemsZ_iter_dict_keysrrr!rZ _iter_ranger$Zmaxintr'r&ZxrangeÚ RuntimeErrorÚ importlibr*r-Ú ImportErrorZimportlib_resourcesrr2Z open_binaryrrrrÚsV  ÿ