Ñò î¡ßNc @ s› d Z d d k Z d d k Z d d k l Z d d k l Z l Z l Z l Z l Z d d k l Z l Z l Z l Z d „ Z d e f d „ ƒ YZ d S( s2 Set based operations for IP addresses and subnets.iÿÿÿÿN( t IntSet( t IPNetworkt IPAddresst cidr_merget cidr_excludet iprange_to_cidrs( t _zipt _sys_maxintt _dict_keyst _int_typec C s• t | d ƒ p t d ƒ ‚ n g } g } x\ | D]T } t | d ƒ p t d ƒ ‚ n | i d j o | i | ƒ q3 | i | ƒ q3 W| | f S( sÿ Takes a sequence of IP addresses and networks splitting them into two separate sequences by IP version. @param iterable: a sequence or iterator contain IP addresses and networks. @return: a two element tuple (ipv4_list, ipv6_list). t __iter__s# A sequence or iterator is expected!t versions IPAddress or IPNetwork expected!i ( t hasattrt ValueErrort TypeErrorR t append( t iterablet ipv4t ipv6t ip( ( s3 /usr/lib/python2.6/site-packages/netaddr/ip/sets.pyt partition_ips s t IPSetc B sO e Z d Z d Z d d d „ Z d „ Z d „ Z d „ Z d „ Z d „ Z d „ Z d „ Z d d „ Z d d „ Z d „ Z d „ Z d „ Z d d „ Z d „ Z d „ Z d „ Z d „ Z d „ Z e Z d „ Z d „ Z e Z d „ Z e Z d „ Z e Z d „ Z e Z! d „ Z" e" Z# d „ Z$ e% d „ ƒ Z&