Your IP : 18.217.242.39
�
�Q�f� � � � d Z ddlZddlZ ddl� g d�ZdZdxZ Z
dxZZd Z
d
Zej dk( re
xZZe
ZnexZZeZe
ZeZe
ZeZ G d� d
e� Z G d� d� Z G d� de� Z G d� de� Z G d� de� Z G d� de� Z G d� de� Z G d� de� Z G d� d� Z! G d� d� Z"d2d!�Z#d3d"�Z$d#� Z%d$� Z&d%� Z'd&� Z(d'� Z)d(� Z*d4d)�Z+d4d*�Z,d+� Z-d,� Z. e/d � Z0 e/d-� Z1 e/d.� Z2 e/d/� Z3 e/d0� Z4 e/d1� Z5dZ7e7rddl8Z8yy# e$ rZ edez � �dZ[ww xY w# e6$ r dZ0dZ1dZ2dZ3dZ4dZ5Y �5w xY w)5z� codecs -- Python Codec Registry, API and helpers.
Written by Marc-Andre Lemburg (mal@lemburg.com).
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
� N)�*z%Failed to load the builtin codecs: %s),�register�lookup�open�EncodedFile�BOM�BOM_BE�BOM_LE�BOM32_BE�BOM32_LE�BOM64_BE�BOM64_LE�BOM_UTF8� BOM_UTF16�BOM_UTF16_LE�BOM_UTF16_BE� BOM_UTF32�BOM_UTF32_LE�BOM_UTF32_BE� CodecInfo�Codec�IncrementalEncoder�IncrementalDecoder�StreamReader�StreamWriter�StreamReaderWriter�
StreamRecoder�
getencoder�
getdecoder�getincrementalencoder�getincrementaldecoder� getreader� getwriter�encode�decode�
iterencode�
iterdecode�
strict_errors�
ignore_errors�replace_errors�xmlcharrefreplace_errors�backslashreplace_errors�namereplace_errors�register_error�lookup_errors s ��s ��s �� s ���littlec �, � e Zd ZdZdZ ddd�d�Zd� Zy)r z0Codec details when looking up the codec registryTN)�_is_text_encodingc � � t j | ||||f� } || _ || _ || _ || _ || _ || _ || _ |�|| _ | S �N)
�tuple�__new__�namer$ r% �incrementalencoder�incrementaldecoder�streamwriter�streamreaderr2 )
�clsr$ r% r; r: r8 r9 r7 r2 �selfs
�-/opt/alt/python312/lib64/python3.12/codecs.pyr6 zCodecInfo.__new__^ se � � �}�}�S�6�6�<��"N�O���� �������"4���"4���(���(����(�%6�D�"��� c � � d| j j | j j | j t | � fz S )Nz%<%s.%s object for encoding %s at %#x>)� __class__�
__module__�__qualname__r7 �id�r= s r>