3 \:@sddlZddlZy ddlTWn.ek rJZzedeWYddZ[XnXdddddd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/g,Zd0Zd1ZZ d2Z Z d3Z d4Z ejd5kre ZZe Zn e ZZe Ze Ze Ze Ze ZGd6ddeZGd7ddZGd8ddeZGd9d:d:eZGd;ddeZGdddeZGd?ddeZGd@ddZ GdAddZ!d[dEdZ"d\dFdZ#dGdZ$dHdZ%dId Z&dJd!Z'dKd"Z(dLd#Z)d]dMd&Z*d^dNd'Z+dOdPZ,dQdRZ-y4e.dCZ/e.dSZ0e.dTZ1e.dUZ2e.dVZ3e.dWZ4Wn.e5k r\dZ/dZ0dZ1dZ2dZ3dZ4YnXdZ6e6rpddl7Z7e8dXkre#ej9dYdZe_9e#ej:dZdYe_:dS)_N)*z%Failed to load the builtin codecs: %sregisterlookupopen EncodedFileBOMBOM_BEBOM_LEBOM32_BEBOM32_LEBOM64_BEBOM64_LEBOM_UTF8 BOM_UTF16 BOM_UTF16_LE BOM_UTF16_BE BOM_UTF32 BOM_UTF32_LE BOM_UTF32_BE CodecInfoCodecIncrementalEncoderIncrementalDecoder StreamReader StreamWriterStreamReaderWriter StreamRecoder getencoder getdecodergetincrementalencodergetincrementaldecoder getreader getwriterencodedecode iterencode iterdecode strict_errors ignore_errorsreplace_errorsxmlcharrefreplace_errorsbackslashreplace_errorsnamereplace_errorsregister_error lookup_errorssssslittlec@s(eZdZdZdddddZddZdS) rTN)_is_text_encodingc CsPtj|||||f} || _|| _|| _|| _|| _|| _|| _|dk rL|| _ | S)N) tuple__new__namer#r$incrementalencoderincrementaldecoder streamwriter streamreaderr0) clsr#r$r7r6r4r5r3r0selfr:/usr/lib64/python3.6/codecs.pyr2]szCodecInfo.__new__cCsd|jj|jj|jt|fS)Nz%<%s.%s object for encoding %s at %#x>) __class__ __module__ __qualname__r3id)r9r:r:r;__repr__ls zCodecInfo.__repr__)NNNNN)__name__r=r>r0r2r@r:r:r:r;rRs   c@s eZdZdddZdddZdS) rstrictcCstdS)N)NotImplementedError)r9inputerrorsr:r:r;r#sz Codec.encodecCstdS)N)rC)r9rDrEr:r:r;r$sz Codec.decodeN)rB)rB)rAr=r>r#r$r:r:r:r;rqs c@s8eZdZdddZdddZddZd d Zd d Zd S)rrBcCs||_d|_dS)N)rEbuffer)r9rEr:r:r;__init__szIncrementalEncoder.__init__FcCstdS)N)rC)r9rDfinalr:r:r;r#szIncrementalEncoder.encodecCsdS)Nr:)r9r:r:r;resetszIncrementalEncoder.resetcCsdS)Nrr:)r9r:r:r;getstateszIncrementalEncoder.getstatecCsdS)Nr:)r9stater:r:r;setstateszIncrementalEncoder.setstateN)rB)F)rAr=r>rHr#rJrKrMr:r:r:r;rs  c@s@eZdZdddZddZdddZd d Zd d Zd dZdS)BufferedIncrementalEncoderrBcCstj||d|_dS)NrF)rrHrG)r9rEr:r:r;rHs z#BufferedIncrementalEncoder.__init__cCstdS)N)rC)r9rDrErIr:r:r;_buffer_encodesz)BufferedIncrementalEncoder._buffer_encodeFcCs0|j|}|j||j|\}}||d|_|S)N)rGrOrE)r9rDrIdataresultconsumedr:r:r;r#s z!BufferedIncrementalEncoder.encodecCstj|d|_dS)NrF)rrJrG)r9r:r:r;rJs z BufferedIncrementalEncoder.resetcCs |jpdS)Nr)rG)r9r:r:r;rKsz#BufferedIncrementalEncoder.getstatecCs|pd|_dS)NrF)rG)r9rLr:r:r;rMsz#BufferedIncrementalEncoder.setstateN)rB)F) rAr=r>rHrOr#rJrKrMr:r:r:r;rNs   rNc@s8eZdZdddZdddZddZd d Zd d Zd S)rrBcCs ||_dS)N)rE)r9rEr:r:r;rHszIncrementalDecoder.__init__FcCstdS)N)rC)r9rDrIr:r:r;r$ szIncrementalDecoder.decodecCsdS)Nr:)r9r:r:r;rJszIncrementalDecoder.resetcCsdS)Nr)rSrr:)r9r:r:r;rKs zIncrementalDecoder.getstatecCsdS)Nr:)r9rLr:r:r;rM&szIncrementalDecoder.setstateN)rB)F)rAr=r>rHr$rJrKrMr:r:r:r;rs  c@s@eZdZdddZddZdddZd d Zd d Zd dZdS)BufferedIncrementalDecoderrBcCstj||d|_dS)NrS)rrHrG)r9rEr:r:r;rH4s z#BufferedIncrementalDecoder.__init__cCstdS)N)rC)r9rDrErIr:r:r;_buffer_decode9sz)BufferedIncrementalDecoder._buffer_decodeFcCs0|j|}|j||j|\}}||d|_|S)N)rGrUrE)r9rDrIrPrQrRr:r:r;r$>s z!BufferedIncrementalDecoder.decodecCstj|d|_dS)NrS)rrJrG)r9r:r:r;rJFs z BufferedIncrementalDecoder.resetcCs |jdfS)Nr)rG)r9r:r:r;rKJsz#BufferedIncrementalDecoder.getstatecCs|d|_dS)Nr)rG)r9rLr:r:r;rMNsz#BufferedIncrementalDecoder.setstateN)rB)F) rAr=r>rHrUr$rJrKrMr:r:r:r;rT.s   rTc@sTeZdZdddZddZddZdd Zdd d Zefd dZ ddZ ddZ dS)rrBcCs||_||_dS)N)streamrE)r9rVrEr:r:r;rH[szStreamWriter.__init__cCs"|j||j\}}|jj|dS)N)r#rErVwrite)r9objectrPrRr:r:r;rWtszStreamWriter.writecCs|jdj|dS)NrF)rWjoin)r9listr:r:r; writelines{szStreamWriter.writelinescCsdS)Nr:)r9r:r:r;rJs zStreamWriter.resetrcCs*|jj|||dkr&|dkr&|jdS)Nr)rVseekrJ)r9offsetwhencer:r:r;r\szStreamWriter.seekcCs ||j|S)N)rV)r9r3getattrr:r:r; __getattr__szStreamWriter.__getattr__cCs|S)Nr:)r9r:r:r; __enter__szStreamWriter.__enter__cCs|jjdS)N)rVclose)r9typevaluetbr:r:r;__exit__szStreamWriter.__exit__N)rB)r) rAr=r>rHrWr[rJr\r_r`rarfr:r:r:r;rYs   c@seZdZeZdddZd ddZd#dd Zd$d d Zd%ddZ ddZ d&ddZ ddZ ddZ efddZddZddZd S)'rrBcCs.||_||_d|_|j|_|j|_d|_dS)NrS)rVrE bytebuffercharbuffertype_empty_charbuffer charbuffer linebuffer)r9rVrEr:r:r;rHs  zStreamReader.__init__cCstdS)N)rC)r9rDrEr:r:r;r$szStreamReader.decodeFc CsL|jr|jj|j|_d|_|dkr(|}x|dkrBt|j|krBP|dkrV|jj}n |jj|}|j|}|srPy|j||j \}}Wn`t k r}zD|r|j|d|j |j \}}|j dd} t| dkr؂nWYdd}~XnX||d|_|j|7_|s*Pq*W|dkr*|j} |j|_n|jd|} |j|d|_| S)NrT)keependsrl) rkrirYrjlenrVreadrgr$rEUnicodeDecodeErrorstart splitlines) r9sizechars firstlinenewdatarPnewchars decodedbytesexclinesrQr:r:r;rosD       zStreamReader.readNTc Cs|jrP|jd}|jd=t|jdkr8|jd|_d|_|sL|jddd}|S|pVd}|j}xr|j|dd}|rt|tr|jdst|t r|jd r||jddd 7}||7}|jdd}|rt|dkr:|d}|d=t|dkr|d |j7<||_d|_n|d|j|_|s8|jddd}P|d}|djddd}||kr|jj |dd|j|_|r|}n|}P| s|dk r|r| r|jddd}P|d krb|d 9}qbW|S)NrrlF)rmHT)ru  )rsrti@) rkrnrjrrriro isinstancestrendswithbytesrY) r9rsrmlinereadsizerPrz line0withendline0withoutendr:r:r;readlines^       zStreamReader.readlinecCs|j}|j|S)N)rorr)r9sizehintrmrPr:r:r; readlines]s zStreamReader.readlinescCsd|_|j|_d|_dS)NrS)rgrirjrk)r9r:r:r;rJls zStreamReader.resetrcCs|jj|||jdS)N)rVr\rJ)r9r]r^r:r:r;r\yszStreamReader.seekcCs|j}|r|StdS)N)r StopIteration)r9rr:r:r;__next__szStreamReader.__next__cCs|S)Nr:)r9r:r:r;__iter__szStreamReader.__iter__cCs ||j|S)N)rV)r9r3r_r:r:r;r`szStreamReader.__getattr__cCs|S)Nr:)r9r:r:r;raszStreamReader.__enter__cCs|jjdS)N)rVrb)r9rcrdrer:r:r;rfszStreamReader.__exit__)rB)rBrr)rrF)NT)NT)r)rAr=r>rrhrHr$rorrrJr\rrr_r`rarfr:r:r:r;rs   P K   c@seZdZdZd ddZd"ddZd#d d Zd$d d Zd dZddZ ddZ ddZ ddZ d%ddZ efddZddZddZdS)&runknownrBcCs(||_||||_||||_||_dS)N)rVreaderwriterrE)r9rVReaderWriterrEr:r:r;rHs   zStreamReaderWriter.__init__rlcCs |jj|S)N)rro)r9rsr:r:r;roszStreamReaderWriter.readNcCs |jj|S)N)rr)r9rsr:r:r;rszStreamReaderWriter.readlinecCs |jj|S)N)rr)r9rr:r:r;rszStreamReaderWriter.readlinescCs t|jS)N)nextr)r9r:r:r;rszStreamReaderWriter.__next__cCs|S)Nr:)r9r:r:r;rszStreamReaderWriter.__iter__cCs |jj|S)N)rrW)r9rPr:r:r;rWszStreamReaderWriter.writecCs |jj|S)N)rr[)r9rZr:r:r;r[szStreamReaderWriter.writelinescCs|jj|jjdS)N)rrJr)r9r:r:r;rJs zStreamReaderWriter.resetrcCs6|jj|||jj|dkr2|dkr2|jjdS)Nr)rVr\rrJr)r9r]r^r:r:r;r\s zStreamReaderWriter.seekcCs ||j|S)N)rV)r9r3r_r:r:r;r`szStreamReaderWriter.__getattr__cCs|S)Nr:)r9r:r:r;raszStreamReaderWriter.__enter__cCs|jjdS)N)rVrb)r9rcrdrer:r:r;rfszStreamReaderWriter.__exit__)rBr)r)N)N)r)rAr=r>encodingrHrorrrrrWr[rJr\r_r`rarfr:r:r:r;rs       c@seZdZdZdZdddZdddZd d d Zd!d d Zd dZ ddZ ddZ ddZ ddZ efddZddZddZdS)"rrrBcCs4||_||_||_||||_||||_||_dS)N)rVr#r$rrrE)r9rVr#r$rrrEr:r:r;rHs   zStreamRecoder.__init__rlcCs"|jj|}|j||j\}}|S)N)rror#rE)r9rsrP bytesencodedr:r:r;ro"s zStreamRecoder.readNcCs6|dkr|jj}n |jj|}|j||j\}}|S)N)rrr#rE)r9rsrPrr:r:r;r(s   zStreamRecoder.readlinecCs(|jj}|j||j\}}|jddS)NT)rm)rror#rErr)r9rrPrr:r:r;r1s zStreamRecoder.readlinescCs t|j}|j||j\}}|S)N)rrr#rE)r9rPrr:r:r;r7s zStreamRecoder.__next__cCs|S)Nr:)r9r:r:r;r>szStreamRecoder.__iter__cCs|j||j\}}|jj|S)N)r$rErrW)r9rP bytesdecodedr:r:r;rWAszStreamRecoder.writecCs(dj|}|j||j\}}|jj|S)NrF)rYr$rErrW)r9rZrPrr:r:r;r[Fs zStreamRecoder.writelinescCs|jj|jjdS)N)rrJr)r9r:r:r;rJLs zStreamRecoder.resetcCs ||j|S)N)rV)r9r3r_r:r:r;r`QszStreamRecoder.__getattr__cCs|S)Nr:)r9r:r:r;raXszStreamRecoder.__enter__cCs|jjdS)N)rVrb)r9rcrdrer:r:r;rf[szStreamRecoder.__exit__)rBr)r)N)N)rAr=r> data_encoding file_encodingrHrorrrrrWr[rJr_r`rarfr:r:r:r;rs    rrBrlcCsV|dk rd|kr|d}tj|||}|dkr2|St|}t||j|j|}||_|S)Nb)builtinsrrrr7r6r)filenamemoderrE bufferingfileinfosrwr:r:r;r`scCsF|dkr |}t|}t|}t||j|j|j|j|}||_||_|S)N)rrr#r$r7r6rr)rrrrE data_info file_infosrr:r:r;rs cCs t|jS)N)rr#)rr:r:r;rscCs t|jS)N)rr$)rr:r:r;rscCst|j}|dkrt||S)N)rr4 LookupError)rencoderr:r:r;rs cCst|j}|dkrt||S)N)rr5r)rdecoderr:r:r;r s cCs t|jS)N)rr7)rr:r:r;r!scCs t|jS)N)rr6)rr:r:r;r"scksLt||f|}x |D]}|j|}|r|VqW|jdd}|rH|VdS)NrFT)rr#)iteratorrrEkwargsrrDoutputr:r:r;r%s     cksLt||f|}x |D]}|j|}|r|VqW|jdd}|rH|VdS)NrST)r r$)rrrErrrDrr:r:r;r&s     cCsdd|DS)NcSsi|] }||qSr:r:).0ir:r:r; "sz&make_identity_dict..r:)rngr:r:r;make_identity_dictsrcCs8i}x.|jD]"\}}||kr(|||<qd||<qW|S)N)items) decoding_mapmkvr:r:r;make_encoding_map$s   rignorereplacexmlcharrefreplacebackslashreplace namereplace__main__zlatin-1zutf-8)rNrBrl)NrB)rB)rB);rsys_codecs ImportErrorZwhy SystemError__all__rr rrrrr byteorderrrrr r r r r1rrrXrrNrrTrrrrrrrrrr r!r"r%r&rrr.r'r(r)r*r+r,r_falseZ encodingsrAstdoutstdinr:r:r:r; s     B("1+IzWn * &