ž nyMaŇ#c@sddlZddlZddlZddlmZejdƒZdZdZdd„Z dd „Z d d „Z Gd d „d ej ƒZ Gdd„dej ƒZGdd„dejƒZGdd„de ejƒZGdd„de ejƒZdd„ZdS(iN(u ucd_3_2_0u [.。.。]sxn--uxn--c CsŒg}x9|D]1}tj|ƒr(q n|jtj|ƒƒq Wdj|ƒ}tjd|ƒ}x¨|D] }tj|ƒs÷tj|ƒs÷tj |ƒs÷tj |ƒs÷tj |ƒs÷tj |ƒs÷tj |ƒs÷tj|ƒs÷tj|ƒrjtd|ƒ‚qjqjWdd„|Dƒ}xd|D]\}|r(tdd„|Dƒƒr\tdƒ‚n|d  sr|d  r„td ƒ‚q„q(q(W|S( NuuNFKCuInvalid character %rcSsg|]}tj|ƒ‘qS((u stringprepu in_table_d1(u.0ux((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu )s unameprep..css|]}tj|ƒVqdS(N(u stringprepu in_table_d2(u.0ux((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu 2sunameprep..uViolation of BIDI requirement 2iiuViolation of BIDI requirement 3i˙˙˙˙(u stringprepu in_table_b1uappendu map_table_b2ujoinu unicodedatau normalizeu in_table_c12u in_table_c22u in_table_c3u in_table_c4u in_table_c5u in_table_c6u in_table_c7u in_table_c8u in_table_c9u UnicodeErroruany(ulabelunewlabelucuRandAL((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyunamepreps4   unameprepcCs-y|jdƒ}Wntk r'Yn3Xdt|ƒkoEdknrN|Stdƒ‚t|ƒ}y|jdƒ}Wntk rYn3Xdt|ƒkoŤdknr´|Stdƒ‚|jtƒrŢtdƒ‚n|jdƒ}t|}dt|ƒkodknr|Stdƒ‚dS(Nuasciiii@ulabel empty or too longuLabel starts with ACE prefixupunycode(uencodeu UnicodeErrorulenunameprepu startswithu sace_prefixu ace_prefix(ulabel((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyuToASCII>s, "   "  "uToASCIIcCst|tƒrd}n4y|jdƒ}d}Wntk rKd}YnX|s•t|ƒ}y|jdƒ}Wq•tk r‘tdƒ‚Yq•Xn|jtƒsąt |dƒS|t tƒd…}|j dƒ}t |ƒ}t |dƒj ƒt |dƒkrtd||ƒ‚n|S(NuasciiuInvalid character in IDN labelupunycodeuIDNA does not round-tripTF(u isinstanceubytesuTrueuencodeu UnicodeErroruFalseunameprepu startswithu ace_prefixustrulenudecodeuToASCIIulower(ulabelu pure_asciiulabel1uresultulabel2((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu ToUnicodeis*        $u ToUnicodecBs2|EeZdZddd„Zddd„ZdS(uCodecustrictc Cst|dkrtd|ƒ‚n|s)d Sy|jdƒ}Wntk rPYn‘X|jdƒ}xI|dd …D]7}dt|ƒko”dknsqtd ƒ‚qqqqWt|d ƒdkrŃtd ƒ‚n|t|ƒfStƒ}tj|ƒ}|r|d rd}|d=nd}x7|D]/}|rC|jdƒn|jt|ƒƒq'Wt ||ƒt|ƒfS(Nustrictuunsupported error handling siuasciis.ii@ulabel empty or too longulabel too long(sii˙˙˙˙i˙˙˙˙i˙˙˙˙i˙˙˙˙( u UnicodeErroruencodeuUnicodeEncodeErrorusplitulenu bytearrayudotsuextenduToASCIIubytes(uselfuinputuerrorsuresultulabelsulabelu trailing_dot((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyuencode“s4  "   u Codec.encodec Cs|dkrtd|ƒ‚n|s)d St|tƒsGt|ƒ}nt|krˆy|jdƒt|ƒfSWqˆtk r„YqˆXn|jdƒ}|rĂt|d ƒdkrĂd}|d =nd}g}x!|D]}|jt |ƒƒqÖWdj |ƒ|t|ƒfS( NustrictuUnsupported error handling uiuasciis.iu.(uii˙˙˙˙i˙˙˙˙( u UnicodeErroru isinstanceubytesu ace_prefixudecodeulenuUnicodeDecodeErrorusplituappendu ToUnicodeujoin(uselfuinputuerrorsulabelsu trailing_doturesultulabel((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyudecode¸s(     u Codec.decodeN(u__name__u __module__u __qualname__uencodeudecode(u __locals__((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyuCodec’s%uCodeccBs |EeZdZdd„ZdS(uIncrementalEncoderc Cs |dkrtd|ƒ‚n|s)dStj|ƒ}d}|r€|ds^d}|d =q€|s€|d =|r}d}q}q€ntƒ}d}xQ|D]I}|rź|jdƒ|d7}n|jt|ƒƒ|t|ƒ7}q–W||7}|t|ƒ7}t|ƒ|fS( Nustrictuunsupported error handling siis.(sii˙˙˙˙i˙˙˙˙i˙˙˙˙(u UnicodeErrorudotsusplitu bytearrayuextenduToASCIIulenubytes( uselfuinputuerrorsufinalulabelsu trailing_doturesultusizeulabel((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu_buffer_encodeŰs2        u!IncrementalEncoder._buffer_encodeN(u__name__u __module__u __qualname__u_buffer_encode(u __locals__((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyuIncrementalEncoderÚsuIncrementalEncodercBs |EeZdZdd„ZdS(uIncrementalDecoderc Cs0|dkrtd|ƒ‚n|s)dSt|tƒrJtj|ƒ}nt|dƒ}|jdƒ}d}|r°|d sŽd}|d =q°|s°|d =|r­d}q­q°ng}d}xD|D]<}|jt|ƒƒ|rď|d7}n|t|ƒ7}qĂWdj|ƒ|}|t|ƒ7}||fS( NustrictuUnsupported error handling uiuasciiu.i(uii˙˙˙˙i˙˙˙˙i˙˙˙˙( u UnicodeErroru isinstanceustrudotsusplituappendu ToUnicodeulenujoin( uselfuinputuerrorsufinalulabelsu trailing_doturesultusizeulabel((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu_buffer_decodeţs6     u!IncrementalDecoder._buffer_decodeN(u__name__u __module__u __qualname__u_buffer_decode(u __locals__((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyuIncrementalDecoderýsuIncrementalDecodercBs|EeZdZdS(u StreamWriterN(u__name__u __module__u __qualname__(u __locals__((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu StreamWriter$su StreamWritercBs|EeZdZdS(u StreamReaderN(u__name__u __module__u __qualname__(u __locals__((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu StreamReader'su StreamReadercCs@tjdddtƒjdtƒjdtdtdtdtƒS( Nunameuidnauencodeudecodeuincrementalencoderuincrementaldecoderu streamwriteru streamreader( ucodecsu CodecInfouCodecuencodeudecodeuIncrementalEncoderuIncrementalDecoderu StreamWriteru StreamReader(((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyu getregentry,s   u getregentry(u stringprepureucodecsu unicodedatau ucd_3_2_0ucompileudotsu ace_prefixu sace_prefixunameprepuToASCIIu ToUnicodeuCodecuBufferedIncrementalEncoderuIncrementalEncoderuBufferedIncrementalDecoderuIncrementalDecoderu StreamWriteru StreamReaderu getregentry(((u3/opt/alt/python33/lib64/python3.3/encodings/idna.pyus$ 0 + )H#'