o
9j @ s d Z ddlZddlZdddZdddZG dd d ejZG d
d dejZG dd
d
ejZG dd deejZG dd deej Z dd Z
dS )zPython 'hex_codec' Codec - 2-digit hex content transfer encoding.
This codec de/encodes from bytes to bytes.
Written by Marc-Andre Lemburg (mal@lemburg.com).
Nstrictc C |dksJ t | t| fS Nr )binasciib2a_hexleninputerrors r */usr/lib/python3.10/encodings/hex_codec.py
hex_encode
r
c C r r )r a2b_hexr r r r r
hex_decode r r c @ s e Zd ZdddZdddZdS )Codecr c C
t ||S N)r
selfr r
r r r encode
zCodec.encodec C r r )r r r r r decode r zCodec.decodeNr )__name__
__module____qualname__r r r r r r r s
r c @ e Zd ZdddZdS )IncrementalEncoderFc C | j dksJ t|S r )r
r r r r finalr r r r
zIncrementalEncoder.encodeNF)r r r r r r r r r r c @ r )IncrementalDecoderFc C r r )r
r r r r r r r ! r" zIncrementalDecoder.decodeNr# )r r r r r r r r r% r$ r% c @ e Zd ZeZdS )StreamWriterNr r r bytescharbuffertyper r r r r' % r' c @ r&