??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
 Udac@`spddlmZmZmZeZddlmZddlZddl m Z yddl Z Wne k rwdZ n#Xde jfdYZde_ddlmZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)d Z*d!Z+d"Z,d#Z-d$Z.d%Z/d&Z0d'Z1d(Z2d)Z3d*Z4d+Z5d,Z6d-Z7d.Z8d/Z9d0Z:d1Z;d2Z<d3Z=d4Z>d5Z?d6Z@d7ZAd8ZBd9ZCd:ZDd;ZEd<d=ZFd>eGd?d@ZHdAZId>dBZJd>dCZKd>dDZLd>dEdFZMd>dGZNdHZOdIZPdJZQdKZRdLZSdMZTdNZUd>dOZVd>dPdQZWd>dRZXdSZYd>dTZZdUe[fdVYZ\dS(Wi(tabsolute_importtdivisiontprint_function(tpartialN(tsixt mac_linuxcB`seZRS((t__name__t __module__(((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyR ss%.2x(terrorscC`s<|r8|dkrt|jS|dkr8t|SndS(Ntaddresstnetwork(tstrtip(tvtvtype((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_empty_ipaddr_query(s    cC`s|jdkrIttj|j}ttj|j}||fS|jdkrttj|jd}ttj|jd}||fSdS(Nii(tsizetinttnetaddrt IPAddresstfirsttlast(R t first_usablet last_usable((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _first_last2s cC`sG|jdkr|jdkr0t|j}n<|jdkrl|j|jkrct|j}qlt}nt|drttt |j d}nydj |SWqCt k rtSXn~|jdkrC|dkrtt|dr@|SqC|d krC|j|jkr9tt|jdr=|Sq@tSqCndS( Niitpublict.s$2002:{:02x}{:02x}:{:02x}{:02x}::1/48iR s 2002::/16R ( tversionRR R R tFalsetipaddrtlisttmapRtsplittformatt Exception(R Rtvaluetipconvtnumbers((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _6to4_query=s, !   cC`s[|jdkrt|jS|jdkrW|j|jksG|j rWt|jSndS(Ni(RR R R t broadcast(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _ip_query\s  cC`sF|jdkrB|j|jkrBt|jdt|jSndS(Nit/(RR R R t prefixlen(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_gateway_queryescC`sF|jdkrB|j|jkrBt|jdt|jSndS(NiR)(RR R R R*(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_address_prefix_querykscC`s|r tSdS(N(tTrue(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_bool_ipaddr_queryqscC`s |jdkrt|jSdS(Ni(RR R'(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_broadcast_queryvscC`s t|S(N(R (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _cidr_query{scC`s-y||kr|SWntk r(tSXdS(N(R"R(R tiplistR#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_cidr_lookup_querys   cC`s|dkrtjdni|dkr|jdkrUttjt|jS|jdkrttjt|jdSndS(NR sNot a network addressR ii(RtAnsibleFilterErrorRR RRRR (R R((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_first_usable_querys  cC`s_|jdkrt|S|jdkr[|j|jkr[t|jdt|jSndS(NiR)(RR R R R*(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _host_querys  cC`s t|jS(N(R thostmask(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_hostmask_queryscC`sS|dkrt|jS|dkrOtt|jdtt|jSdS(NR R R)(RR R R*(R R((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _int_querys   cC`ss|jdkr-t|jdt|jS|jdkro|j|jkrot|jdt|jSndS(NiR)i(RR R R*R (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_ip_prefix_querys cC`ss|jdkr-t|jdt|jS|jdkro|j|jkrot|jdt|jSndS(Nit i(RR R tnetmaskR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_ip_netmask_querys cC`sC|jdkr;yt|jSWq?tk r7tSXn|SdS(Ni(RR tipv4R"R(R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _ipv4_querys  cC`s'|jdkrt|jS|SdS(Ni(RR tipv6(R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _ipv6_queryscC`se|dkrtjdnC|dkra|jdkrat|\}}ttj|SndS(NR sNot a network addressR i(RR3RRR RR(R RRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_last_usable_querys   cC`srtjt|j}|jdkrCtt|drn|Sn+|jdkrntt|drn|SndS(Nis169.254.0.0/24is fe80::/10(RRR R RR(R R#tv_ip((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_link_local_queryscC`s,tjt|j}|jr(|SdS(N(RRR R t is_loopback(R R#RB((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_loopback_querys cC`s|jr|SdS(N(t is_multicast(R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_multicast_querys cC`sF|jdkrB|j|jkrBt|jdt|jSndS(NiR)(RR R R R*(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _net_queryscC`s t|jS(N(R R;(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_netmask_queryscC`s t|jS(s*Return the network of a given IP or subnet(R R (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_network_queryscC`s t|jS(s*Return the network of a given IP or subnet(R R (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_network_id_queryscC`st|jdt|jS(NR:(R R R;(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_network_netmask_queryscC`st|jdt|jS(NR:(R R R6(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_network_wildcard_queryscC`s|dkrtjdn|dkr|jdkrt|\}}ttjt|jd}||kr||krttjt|jdSqndS(NR sNot a network addressR i( RR3RRRRRR R (R RRRtnext_ip((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_next_usable_query s  "cC`s t|jS(N(RR*(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _prefix_queryscC`s|dkrtjdn|dkr|jdkrt|\}}ttjt|jd}||kr||krttjt|jdSqndS(NR sNot a network addressR i( RR3RRRRRR R (R RRRt previous_ip((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_previous_usable_querys  "cC`s|jr|SdS(N(t is_private(R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_private_query(s cC`s`tjt|j}|jr\|j r\|j r\|j r\|j r\|SdS(N( RRR R t is_unicastRSRDt is_netmaskt is_hostmask(R R#RB((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _public_query-s  cC`s|dkrtjdnj|dkr|jdkrt|\}}ttj|}ttj|}dj||SndS(NR sNot a network addressR is{0}-{1}(RR3RRR RRR!(R RRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_range_usable_query5s  cC`stjt|j}|jS(N(RRR R t reverse_dns(R RB((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _revdns_queryAscC`s|jS(N(R(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _size_queryFscC`s1|jdkrdS|jdkr&dS|jdS(Niii(R(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_size_usable_queryJs cC`s t|jS(N(R tcidr(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _subnet_queryRscC`sC|jdkrdS|jdkr?|j|jkr8dSdSndS(NiR R (RR R (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _type_queryVs cC`s|jr|SdS(N(RU(R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_unicast_query`s cC`s|jS(N(R(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_version_queryescC`si|jdkra|dkr0dt|jdS|dkredt|jdt|jSn|SdS(NiR t[t]R s]/(RR R R*(R RR#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _wrap_queryis   %cC`stj|_t|S(N(Rtmac_baretdialectR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _bare_queryts cC`s|r tSdS(N(R-(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_bool_hwaddr_queryyscC`s t|S(N(R(R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_int_hwaddr_query~scC`stj|_t|S(N(Rt mac_ciscoRgR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _cisco_querys cC`s|r |SdS(N((R R#((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_empty_hwaddr_queryscC`st|_t|S(N(RRgR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _linux_querys cC`stj|_t|S(N(Rt mac_pgsqlRgR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_postgresql_querys cC`stj|_t|S(N(Rtmac_unixRgR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _unix_querys cC`stj|_t|S(N(Rt mac_eui48RgR (R ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _win_querys tmergecC`sbt|ds+tjdt|n|dkry*gtj|D]}t|^qJSWq^tk r}tjd|q^Xn|dkrKt|dkrdSt|dkryttj |dSWqHtk r}tjd|qHXq^yttj |SWq^tk rG}tjd|q^Xntjd|dS( Nt__iter__s#cidr_merge: expected iterable, got Rus cidr_merge: error in netaddr: %stspaniiscidr_merge: invalid action '%s'( thasattrRR3treprRt cidr_mergeR R"tlentNonet IPNetworkt spanning_cidr(R#tactionR te((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRzs( * tRc C`sid@d6dAd6dBd6dCd6dDd6dEd 6dFd 6dGd 6dHd 6dId 6dJd6dKd6dLd6dMd6dNd6dOd6dPd6dQd6dRd6}i3td6td6td6td6td6td6td6td6td6t d6t d6t d6td6t d 6t d!6t d6td"6t d#6td$6td 6td 6td 6td 6td6td 6td6td%6td6td&6td'6td(6td)6td*6td+6td,6td6td6t d6t!d6t"d-6t d.6t#d/6t$d06td16t%d26t&d6td36td46t'd56t d66t(d6}dS}|st*S|t+krt*St,|t-t.t/j0frg}xH|D]@}t1|t2||r>|j3t1|t2||q>q>W|r|St-Sn=t2|j4ry| s|r|d7krt5j6d8} t7|| _8d9| _9n<|r*|d:kr*t5j6d;} t7|| _8d<| _9nWnQt:k r~y+t5j6d;} t7|| _8d<| _9Wqt:k rzt*SXnXt2| }d}n?yLt5j6|} y|j;d=\} } d'}Wnt:k rd}nXWnt:k ryE|j;d=\} } | j4t7| } | j4t7| } Wnt:k rIt*SXy%t5j6d8} | | _8| | _9WnKt:k ry%t5j6d;} | | _8| | _9Wqt:k rt*SXnXt2| }d'}nXyh|r:||ks|dkr:t2|j4 r:t1|d'r:t5j<t5j6|g} d}nWnt:k rNnX|rh| j=|krht*Sg} x1|j>|t.D]}| j3t?|qWy||| | SWnt@k rytA|| jBd>kr|dkrt2| jCS|d'krct2| SnN| jBd>kr_y#t2| |d=t2| j9SWqct:k r[t*SXn|SWqt:k rtDjE|d?|qXnXt*S(Ts; Check if string is an IP address or network and filter it RRR#t6to4R1t cidr_lookupRRR=R?Rs link-localtloopbacktlot multicastt next_usabletprevious_usabletprivateRtunicastt range_usabletwrapR saddress/prefixtboolR'R^tgatewaytgwthosts host/prefixR6thostnetR s ip/prefixt ip_netmasktnetR;R t network_idsnetwork/prefixtnetwork_netmasktnetwork_wildcardtprefixtrevdnstrouterRt size_usabletsubnetttypetv4tv6Rtwildcardis 0.0.0.0/0i is::/0iR)is: unknown filter type: %s(svtype(svtypesvalue(siplistsvalue(svtype(svtype(svalue(svalue(svtype(svalue(svalue(svalue(svalue(svtype(svtype(svalue(svalue(svalue(svtype(svtypesvalueN(FRR&R(R,R.R/R0R2R4R+R5R7R8R9R<R>R@RARCRERGRHRORIRJRKR_RLRMRPRRRTRXRYR[R\R]R`RaRbReR|RR-t isinstanceRttuplettypest GeneratorTypeRR tappendtisdigitRR}RR#R*R"R tIPSetRtgettlocalstKeyErrortfloatRR RR3(R#tqueryRtaliastquery_func_extra_argstquery_func_mapRt_rettelementR R RR1textrastarg((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRsF    &                        @        #  cC`sy4d|kr$tj|j}ntj|}Wn8tjtfk rndj|}tj|nXt |t sdj|}tj|nt ||S(NR)s0You must pass a valid IP address; {0} is invalidsCYou must pass an integer for arithmetic; {0} is not a valid integer( RR}R RtAddrFormatErrort ValueErrorR!RR3RRR (R#tamountR tmsg((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytipmaths  cC`syt|tttjfrzg}xO|D]G}t||dtddre|jt|dq+|j|q+W|St||dtdd}|rt|dS|SWntk r|SXdS(NRRtipwrapR( RRRRRRRRR"(R#RRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRs   cC`st||ddddS(NRiRR=(R(R#R((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyR=scC`st||ddddS(NRiRR?(R(R#R((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyR?stxc C`sy^t|d}|dkr0t|d}n|dkrNt|d}ntj|}Wntk rrtSXt|}|st|S|jrt|d}t|}yt|t|}|dkry!tt |j ||SWqStk rtSXn?|dkrSyt|j ||SWqStk rOtSXnWqtk r|dkry#tt t |j |SWqtk rtSXq|dkryt|j |dSWqtk rtSXqqXn|rt|d}|dkr$t|d}n<|dkrBt|d}nd j |}tj|tj|}x?t|j |jdD]"\}} | |krt|SqWd j |j|j}tj|ntS( s Manipulate IPv4/IPv6 subnets RR R^R RRiis:You must pass a valid subnet or IP address; {0} is invalids{0} is not in the subnet {1}(RRR}R"RR RRRRRtsupernetR{R!RR3t enumerateR*R^( R#RtindexRR t query_stringtvsizeRtiR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytipsubnetsl          !      #     ( cC`sy^t|d}|dkr0t|d}n|dkrNt|d}ntj|}Wntk rrtSX|s}tSy't|}|j|kr||SWntk rtSXtS(s) Get the nth host within a given network RR R^R R(RRR}R"RRRR(R#RRR tnth((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytnthhost2s$      cC`sy^t|d}|dkr0t|d}n|dkrNt|d}ntj|}Wntk rrtSXt|tkrtjdn|j dkrt |\}}ttj t|j |}||kr||krt tj t|j |SndS(NRR R^R RsMust pass in an integeri(RRR}R"RRRRR3RRRR R (R#toffsetRR RRtnth_ip((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytnext_nth_usableNs    "cC`sy^t|d}|dkr0t|d}n|dkrNt|d}ntj|}Wntk rrtSXt|tkrtjdn|j dkrt |\}}ttj t|j |}||kr||krt tj t|j |SndS(NRR R^R RsMust pass in an integeri(RRR}R"RRRRR3RRRR R (R#RRR RRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytprevious_nth_usableds    "cC`s$||kr||krtStSdS(s) Tests whether an ip address is within the bounds of the first and last address. :param ip_check: The ip to test if it is within first and last. :param first: The first IP in the range to test against. :param last: The last IP in the range to test against. :return: bool N(R-R(tip_checkRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_range_checkerys cC`sVy=t|d}|dks*|dkr<t|d}nWntk rQtSX|S(s= Used to validate an address or network type and return it in a consistent format. This is being used for future use cases not currently available such as an address range. :param value: The string representation of an address or network. :return: The address or network in the normalized form. RR R R(RR"R(R#RR ((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt_address_normalizers  c C`st|}t|}tt|dp6t|dd}tt|dp]t|dd}tt|dpt|dd}tt|dpt|dd}t|||rt|||rtStSdS(s- Checks whether 'test' is a useable address or addresses in 'value' :param: value: The string representation of an address or network to test against. :param test: The string representation of an address or network to validate if it is within the range of 'value'. :return: bool RR RRR R'N(RRRR-R(R#ttestR twtv_firsttv_lasttw_firsttw_last((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytnetwork_in_usables  ''''$c C`st|}t|}tt|dp6t|dd}tt|dp]t|dd}tt|dpt|dd}tt|dpt|dd}t|||rt|||rtStSdS(s Checks whether the 'test' address or addresses are in 'value', including broadcast and network :param: value: The network address or range to test against. :param test: The address or network to validate if it is within the range of 'value'. :return: bool R R RR'N(RRRR-R(R#RR RRRRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytnetwork_in_networks  ''''$c C`st|}tt|dp*t|dd}tt|dpQt|dd}g}x|D]}t|}tt|dpt|dd}tt|dpt|dd} t|||rgt| ||rg|j|qgqgW|S(s Reduces a list of addresses to only the addresses that match a given network. :param: value: The list of addresses to filter on. :param: network: The network to validate against. :return: The reduced list of addresses. R R RR'(RRRR( R#R tntn_firsttn_lasttrR tata_firstta_last((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytreduce_on_networks ''  ''$cC`sywt|d}|dkr0t|d}n|dkrNt|d}nt|ddkrgtStj|}Wntk rtSX|stSy%t|dd }tj|}Wntk rtSX|j|jS( s, Get the SLAAC address within given network RR R^R RRiRtslaac( RRRR}R"thwaddrtEUIR?R (R#RRR tmacteui((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRs&    RcC`s8idd6}i td6td6td6td6td6td6td6td 6td 6td 6td 6td 6}yt j |}Wn=t k r|r|dkrt j |d|qnXg}x1|j|tD]}|jt|qWy||||SWn(tk r3t j |d|nXtS(s3 Check if string is a HW/MAC address and filter it R#RtbareRRtciscoteui48tlinuxtpgsqlt postgresqltpsqltunixtwins: not a hardware address: %ss: unknown filter type: %s(svalue(RmRhRiRjRlRtRnRpRrRRR"RR3RRRRRR(R#RRRRR RR((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRs8    cC`st||ddS(NRtmacaddr(R(R#R((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyR8scO`stjd|dS(NsNThe %s filter requires python's netaddr be installed on the ansible controller(RR3(tf_nametargstkwargs((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyt _need_netaddr<s cC`s1ttt|jd}djd||S(s1 Convert an IPv4 address to Hexadecimal notation Rs+{0:02x}{sep}{1:02x}{sep}{2:02x}{sep}{3:02x}tsep(RRRR R!(Rt delimiterR%((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytip4_hexAst FilterModulecB`seZdZied6ed6ed6ed6ed6ed6e d6e d6e d 6e d 6e d 6ed 6ed 6ed6ed6ed6ed6ZdZRS(s- IP address and network manipulation filters RzRRRRR=R?RRRRRRRRRRcC`s(tr |jStd|jDSdS(Ncs`s$|]}|tt|fVqdS(N(RR(t.0tf((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pys fs(Rt filter_maptdict(tself((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pytfiltersas(RRt__doc__RzRRRRR=R?RRRRRRRRRRRR(((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyRHs( (]t __future__RRRRt __metaclass__t functoolsRRtansible.module_utilsRRt ImportErrorR|RqRtword_fmttansibleRRRR&R(R+R,R.R/R0R2R4R5R7R8R9R<R>R@RARCRERGRHRIRJRKRLRMRORPRRRTRXRYR[R\R]R_R`RaRbReRhRiRjRlRmRnRpRrRtRzRRRRR=R?RRRRRRRRRRRRRRtobjectR(((sA/usr/lib/python2.7/site-packages/ansible/plugins/filter/ipaddr.pyts                                               I        % '