3 \@sdZddlZddlZddlmZdddZdddZGd d d ejZGd d d ejZGd ddej Z Gdddeej Z Gdddeej Z ddZ dS)zQCodec for quoted-printable encoding. This codec de/encodes from bytes to bytes. N)BytesIOstrictcCs:|dks tt|}t}tj||dd|jt|fS)NrT)Z quotetabs)AssertionErrorrquopriencodegetvaluelen)inputerrorsfgr $/usr/lib64/python3.6/quopri_codec.py quopri_encode s  rcCs6|dks tt|}t}tj|||jt|fS)Nr)rrrdecoderr)r r r r r r r quopri_decodes   rc@s eZdZdddZdddZdS) CodecrcCs t||S)N)r)selfr r r r rrsz Codec.encodecCs t||S)N)r)rr r r r rrsz Codec.decodeN)r)r)__name__ __module__ __qualname__rrr r r rrs rc@seZdZdddZdS)IncrementalEncoderFcCst||jdS)Nr)rr )rr finalr r rrszIncrementalEncoder.encodeN)F)rrrrr r r rrsrc@seZdZdddZdS)IncrementalDecoderFcCst||jdS)Nr)rr )rr rr r rr#szIncrementalDecoder.decodeN)F)rrrrr r r rr"src@seZdZeZdS) StreamWriterN)rrrbytescharbuffertyper r r rr&src@seZdZeZdS) StreamReaderN)rrrrrr r r rr)src CstjdttttttddS)NrF)namerrincrementalencoderincrementaldecoder streamwriter streamreader_is_text_encoding)codecs CodecInforrrrrrr r r r getregentry.sr&)r)r) __doc__r$riorrrrrrrrr&r r r rs