JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr j f @sdZddlZddlZddlmZdddddZdd d ZGd d d ejZGd ddejZGdddej Z Gdddeej Z Gdddeej Z ddZ dS)aPython 'uu_codec' Codec - UU content transfer encoding. This codec de/encodes from bytes to bytes. Written by Marc-Andre Lemburg (mal@lemburg.com). Some details were adapted from uu.py which was written by Lance Ellinghouse and modified by Jack Jansen and Fredrik Lundh. N)BytesIOstrictzic Cst|}t}|j}|j}|d|d@|fjd|d}x)|r|tj||d}qWW|d|jt|fS)Nz begin %o %s iascii-s end )rreadwriteencodebinasciiZb2a_uugetvaluelen) inputerrorsfilenamemodeinfileoutfilerrchunkr7/opt/alt/python34/lib64/python3.4/encodings/uu_codec.py uu_encodes    !   rc Cs7t|}t}|j}|j}x<|}|sHtdn|dddkr*Pq*q*Wx|}| s|dkrPnytj|}Wn_tjk r}z<|ddd@ddd } tj|d| }WYdd}~XnX||qiW|s!td n|jt|fS) Nz"Missing "begin" line in input datasbeginsend r ?zTruncated input data) rreadliner ValueErrorr Za2b_uuErrorr r ) r r rrrrsdatavnbytesrrr uu_decode!s.      ,r"c@s.eZdZdddZdddZdS)CodecrcCs t||S)N)r)selfr r rrrrCsz Codec.encodecCs t||S)N)r")r$r r rrrdecodeFsz Codec.decodeN)__name__ __module__ __qualname__rr%rrrrr#Bs r#c@seZdZdddZdS)IncrementalEncoderFcCst||jdS)Nr)rr )r$r finalrrrrJszIncrementalEncoder.encodeN)r&r'r(rrrrrr)Is r)c@seZdZdddZdS)IncrementalDecoderFcCst||jdS)Nr)r"r )r$r r*rrrr%NszIncrementalDecoder.decodeN)r&r'r(r%rrrrr+Ms r+c@seZdZeZdS) StreamWriterN)r&r'r(bytescharbuffertyperrrrr,Qs r,c@seZdZeZdS) StreamReaderN)r&r'r(r-r.rrrrr/Ts r/cCs:tjdddtdtdtdtdtdtd d S) Nnameuurr%incrementalencoderincrementaldecoder streamreader streamwriter_is_text_encodingF)codecs CodecInforr"r)r+r/r,rrrr getregentryYs r9) __doc__r7r iorrr"r#r)r+r,r/r9rrrrs  !