mò &U²Ic@sÁdkZdkZdkZdkZeidƒZdZeedƒZd„Z d„Z d„Z dei fd„ƒYZ d e ei fd „ƒYZ d e eifd „ƒYZd „ZdS(Nu [.。.。]sxn--tasciicCs”g}x;|D]3}ti|ƒoq n|iti|ƒƒq Wdi|ƒ}ti d|ƒ}xµ|D]­}ti |ƒp€ti |ƒppti |ƒp`ti |ƒpPti|ƒp@ti|ƒp0ti|ƒp ti|ƒpti|ƒotdt|ƒ‚qlqlWtti|ƒ}x^|D]V}|oItti|ƒo td‚n|d p |d o td‚qŒq6q6W|S(NutNFKCsInvalid character %ssViolation of BIDI requirement 2iiÿÿÿÿsViolation of BIDI requirement 3(tnewlabeltlabeltct stringprept in_table_b1tappendt map_table_b2tjoint unicodedatat normalizet in_table_c12t in_table_c22t in_table_c3t in_table_c4t in_table_c5t in_table_c6t in_table_c7t in_table_c8t in_table_c9t UnicodeErrortreprtmapt in_table_d1tRandALtfiltert in_table_d2(RRRR((t+/data/zmath/lib/python2.4/encodings/idna.pytnameprep s*  cCs7y|idƒ}Wntj on7Xdt|ƒjo djno|Sntd‚t|ƒ}y|idƒ}Wntj on7Xdt|ƒjo djno|Sntd‚|itƒo td‚n|idƒ}t|}dt|ƒjo djno|Sntd‚dS(NRii@slabel too longsLabel starts with ACE prefixtpunycode(RtencodeRtlenRt startswitht uace_prefixt ace_prefix(R((RtToASCII=s,$  $   $cCst|tƒo t}n6y|idƒ}t}Wntj o t}nX|pBt|ƒ}y|idƒ}Wq˜tj otd‚q˜Xn|i t ƒpt |dƒSn|t t ƒ}|idƒ}t|ƒ}|iƒ|jotd||f‚n|S(NRsInvalid character in IDN labelRsIDNA does not round-trip(t isinstanceRtstrtTruet pure_asciiRRtFalseRR!R#tunicodeR tlabel1tdecodetresultR$tlabel2tlower(RR(R+R.R-((Rt ToUnicodehs*     tCodeccBs tZdd„Zdd„ZRS(NtstrictcCs¸|djotd|‚n|pdSng}ti|ƒ}|o(t|dƒdjod}|d=nd}x!|D]}|i t |ƒƒq~Wdi |ƒ|t|ƒfS(NR2sunsupported error handling tiiÿÿÿÿt.(R3i( terrorsRtinputR-tdotstsplittlabelsR t trailing_dotRRR$R (tselfR6R5R:R9RR-((RR’s  cCsô|djotd|‚n|pd Snt|tƒoti|ƒ}n)t|ƒ}t|dƒ|idƒ}|o(t |dƒdjod}|d=nd}g}x!|D]}|i t|ƒƒqºWdi|ƒ|t |ƒfS( NR2sUnsupported error handling uiRR4iÿÿÿÿu.(ui(R5RR6R%R*R7R8R9R&R R:R-RRR0R (R;R6R5R:R9RR-((RR,§s$    (t__name__t __module__RR,(((RR1‘s t StreamWritercBstZRS(N(R<R=(((RR>Äst StreamReadercBstZRS(N(R<R=(((RR?ÇscCstƒitƒittfS(N(R1RR,R?R>(((Rt getregentryÌs(RR tretcodecstcompileR7R#R*R"RR$R0R1R>R?R@(R7R>R R1R#RRAR$RR0RBR@R"R?((Rt?s$ 0 + )3