o
     JAf	                     @   s  	 d dl Z G dd de jZG dd de jZG dd de jZG dd	 d	ee jZG d
d dee jZdd Ze edZ	e	
i dddddddddddddddddd d!d"d#d$d%d&d'd(ddddddddi ddddddddd dd"d!d$d#d&d%d(d'd)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8i d9d:d;d<d=d>d?d@dAdBd*d)d,d+d.d-d0d/d2d1d4d3d6d5d8d7d:d9d<d;d>d=d@d?dBdAi dCdD ZedEkrd dlZeejej dS dS )F    Nc                   @   s    e Zd ZdddZdddZdS )Codecstrictc                 C      t |tt|fS Nstr	translate	rot13_maplenselfinputerrors r   '/usr/lib/python3.10/encodings/rot_13.pyencode      zCodec.encodec                 C   r   r   r   r   r   r   r   decode   r   zCodec.decodeN)r   )__name__
__module____qualname__r   r   r   r   r   r   r      s    
r   c                   @      e Zd ZdddZdS )IncrementalEncoderFc                 C      t |tS r   r   r   r	   r   r   finalr   r   r   r         zIncrementalEncoder.encodeNF)r   r   r   r   r   r   r   r   r          r   c                   @   r   )IncrementalDecoderFc                 C   r   r   r   r   r   r   r   r      r   zIncrementalDecoder.decodeNr   )r   r   r   r   r   r   r   r   r       r   r    c                   @      e Zd ZdS )StreamWriterNr   r   r   r   r   r   r   r"          r"   c                   @   r!   )StreamReaderNr#   r   r   r   r   r%      r$   r%   c                
   C   s"   t jdt jt jttttddS )Nrot-13F)namer   r   incrementalencoderincrementaldecoderstreamwriterstreamreader_is_text_encoding)	codecs	CodecInfor   r   r   r   r    r"   r%   r   r   r   r   getregentry$   s   r/      A   N   B   O   C   P   D   Q   E   R   F   S   G   T   H   U   I   V   J   W   K   X   L   Y   M   Z   a   n   b   o   c   p   d   q   e   r   f   s   g   t   h   u   i   v   j   w   k   x   l   y   m   z   c                 C   s   | t|  d d S )Nr&   )writer-   r   read)ZinfileZoutfiler   r   r   rot13l   s   rg   __main__)r-   r   r   r    r"   r%   r/   make_identity_dictranger	   updaterg   r   sysstdinstdoutr   r   r   r   <module>   s   	
 !"#$%&'()*+,-./012349