3 \� �6@sddlZGdd�dej�ZGdd�dej�ZGdd�dej�ZGdd �d eej�ZGd d �d eej�Zd d �Zejed��Z e j dddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;dd?d@dAdBdC�4�dDdE�Z e dFk�rddl Z e e je j�dS)G�Nc@s eZdZddd�Zddd�ZdS) �Codec�strictcCs|jt�t|�fS)N)� translate� rot13_map�len)�self�input�errors�r �(/usr/lib64/python3.6/encodings/rot_13.py�encodesz Codec.encodecCs|jt�t|�fS)N)rrr)rrr r r r �decodesz Codec.decodeN)r)r)�__name__� __module__� __qualname__r r r r r r r s rc@seZdZddd�ZdS)�IncrementalEncoderFcCs |jt�S)N)rr)rr�finalr r r r szIncrementalEncoder.encodeN)F)rrrr r r r r rsrc@seZdZddd�ZdS)�IncrementalDecoderFcCs |jt�S)N)rr)rrrr r r r szIncrementalDecoder.decodeN)F)rrrr r r r r rsrc@s eZdZdS)� StreamWriterN)rrrr r r r rsrc@s eZdZdS)� StreamReaderN)rrrr r r r rsrc Cs"tjdt�jt�jttttdd�S)Nzrot-13F)�namer r �incrementalencoder�incrementaldecoder� streamwriter� streamreader�_is_text_encoding) �codecs� CodecInforr r rrrrr r r r � getregentry$sr��N�O�P�Q�R�S�T�U�V�W�X�Y�Z�A�B�C�D�E�F�G�H�I�J�K�L�M�n�o�p�q�r�s�t�u�v�w�x�y�z�a�b�c�d�e�f�g�h�i�j�k�l�m)4r-r.r/r0r1r2r3r4r5r6r7r8r9r r!r"r#r$r%r&r'r(r)r*r+r,rGrHrIrJrKrLrMrNrOrPrQrRrSr:r;r<r=r>r?r@rArBrCrDrErFcCs|jtj|j�d��dS)Nzrot-13)�writerr �read)ZinfileZoutfiler r r �rot13lsrV�__main__)rrrrrrr�make_identity_dict�ranger�updaterVr�sys�stdin�stdoutr r r r � s�