ӊ^ dZddlmZddlmZddlmZdZeddedd zed d zgd zZe eee dd Z dZ dZ y)z&A basic implementation of RFC 1924 ;-))AddrFormatError) IPAddress)_zipc|tt|t|dzDcgc] }t|c}Scc}w)z2Returns all characters between low and high chars.)rangeordchr)lowhighis 4/usr/lib/python3/dist-packages/netaddr/ip/rfc1924.py chr_rangers-!#c(CIM: ;qCF ;; ;s909AZaz)!#$%&()*+-;<=>?@^_`{|}~Vct|}t|}g}|dkDr|j|dz|dz}|dkDrdjt |Dcgc] }t | c}}dt |z dz}||zScc}w)z*Convert a regular IPv6 address to base 85.rUr)rintappendjoinreversedBASE_85len)addripint_val remainderwencodedleading_zeroess ripv6_to_base85r?s 4B"gGI A+2&B A+gg8I+>?awqz?@G3w<'3.N G ##@sBct|}t|dk7rtd|d}tt |D]\}}t |}||d|zzz }t |d}t|S)zC Convert a base 85 IPv6 address to its hexadecimal format. r1zInvalid base 85 IPv6 address: rr/)listr7r enumerater5 BASE_85_DICTrstr)r8tokensresultr numr9s rbase85_to_ipv6rI-s|$ZF 6{bDJKK FHV,-"333q=!" 61 B r7NN)__doc__ netaddr.corer netaddr.iprnetaddr.compatrrr6dictrrDr?rIrJrrQsq -( < c3)C-- c322D%2,/0  $rJ