HEX
Server: LiteSpeed
System: Linux shams.tasjeel.ae 5.14.0-611.5.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 08:09:09 EST 2025 x86_64
User: infowars (1469)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //usr/lib/python3.9/site-packages/qrcode/__pycache__/util.cpython-39.opt-1.pyc
a

��;\�E�)@s�ddlZddlZddlZddlmZddlmZmZmZdZ	dZ
dZdZe	de
d	edediZ
e	d
e
dedediZe	d
e
deded
iZe�d�Ze�e�d�e�e�e�d��Zdddd�Zgddgddgddgddgddggd�gd�gd�gd�gd�gd�gd �gd!�gd"�gd#�gd$�gd%�gd&�gd'�gd(�gd)�gd*�gd+�gd,�gd-�gd.�gd/�gd0�gd1�gd2�gd3�gd4�gd5�gd6�gd7�gd8�gd9�gd:�gd;�g(Zd<Zd=Zd>Zd?Zd@ZdAdB�ZdCdD�ed�D�ZdEdF�ZdGdH�ZdIdJ�Z dKdL�Z!dMdN�Z"dOdP�Z#dQdR�Z$dSdT�Z%dUdV�Z&dWdX�Z'dYdZ�Z(d[d\�Z)dmd]d^�Z*d_d`�Z+dadb�Z,dcdd�Z-Gdedf�df�Z.Gdgdh�dh�Z/didj�Z0dkdl�Z1dS)n�N��xrange)�base�
exceptions�LUT�����
�	�����
z-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:z^[z]*\Z�)�rr������")rr�&)r��*)rr�.)r��2)rr�6)r� �:)rr�>)rrr�B)rr�0�F)rrr�J)rrr �N)rr�8�R)rrr"�V)rrr#�Z)rrr�H�^)rrrr'�b)rrr r(�f)rrr �P�j)rr!r"�T�n)rrr"r+�r)rrr#r,�v)rrrr'r/�z)rrr r(r0�~)rr�4r(�h�)rrr)r*�l�)rr�<r+�p�)rrr"r+r5�)rrr#r,r6�)rrr r(r0r8�)rrr�Lr0��)rrr r1r2��)rr!r"r3r4��)rrr r*r4r@�)rrr"r+r5rA�i7i%iT���cCs|jS�N)�
data_count)�block�rR�//usr/lib/python3.9/site-packages/qrcode/util.py�<lambda>`�rTcs*g|]"�dg�fdd�tdd�D��qS)rc
s&g|]}dtttt�|�����qS)r
)�sum�map�_data_countr�	rs_blocks)�.0�version��error_correctionrRrS�
<listcomp>bs�z<listcomp>.<listcomp>r�)r)rZrRr\rSr^as��r^cCsF|d>}t|�tt�dkr6|tt|�tt�>N}q|d>|BtAS)Nrr)�	BCH_digit�G15�G15_MASK��data�drRrRrS�
BCH_type_infohsrfcCsB|d>}t|�tt�dkr6|tt|�tt�>N}q|d>|BS)Nr
r)r`�G18rcrRrRrS�BCH_type_numberpsrhcCs"d}|dkr|d7}|dL}q|S)NrrrR)rdZdigitrRrRrSr`ws

r`cCst|dS�Nr)�PATTERN_POSITION_TABLE�r[rRrRrS�pattern_positionsrlcCs�|dkrdd�S|dkr dd�S|dkr0dd�S|dkr@d	d�S|d
krPdd�S|dkr`d
d�S|dkrpdd�S|dkr�dd�Std|��dS)z>
    Return the mask function for the given mask pattern.
    rcSs||ddkS�NrrrR��i�jrRrRrSrT�rUzmask_func.<locals>.<lambda>rcSs|ddkSrmrRrnrRrRrSrT�rUrcSs|ddkS�NrrrRrnrRrRrSrT�rUrcSs||ddkSrqrRrnrRrRrSrT�rUr	cSs$t�|d�t�|d�ddkS�Nrrr)�math�floorrnrRrRrSrT�rU�cSs||d||ddkSrrrRrnrRrRrSrT�rUrcSs ||d||dddkSrrrRrnrRrRrSrT�rUrcSs ||d||dddkS)NrrrrRrnrRrRrSrT�rUzBad mask pattern: N)�	TypeError)�patternrRrRrS�	mask_func�s"rxcCs |dkrtS|dkrtStSdS)Nr�)�MODE_SIZE_SMALL�MODE_SIZE_MEDIUM�MODE_SIZE_LARGErkrRrRrS�mode_sizes_for_version�s
r}cCsD|ttttfvrtd|��|dks,|dkr8td|��t|�|S)N�Invalid mode (%s)r�(z*Invalid version (was %s, expected 1 to 40))�MODE_NUMBER�MODE_ALPHA_NUM�MODE_8BIT_BYTE�
MODE_KANJIrv�
ValueErrorr})�moder[rRrRrS�length_in_bits�s��r�cCsDt|�}d}t||�}|t||�7}|t||�7}|t||�7}|S�Nr)�len�_lost_point_level1�_lost_point_level2�_lost_point_level3�_lost_point_level4)�modules�
modules_count�
lost_pointrRrRrSr��s
r�c	s:d}t|�}dg|d�|D]t}||}|d}d}|D]>}|||krT|d7}q:|dkrl�|d7<d}||}q:|dkr�|d7<q|D]x}|d|}d}|D]F}||||kr�|d7}q�|dkr�|d7<d}|||}q�|dkr��|d7<q�|t�fdd�td|d�D��7}|S)Nrrruc3s|]}�||dVqdS)rNrR)rZZeach_length��	containerrRrS�	<genexpr>�s�z%_lost_point_level1.<locals>.<genexpr>)rrV)	r�r�r��
modules_range�row�this_rowZprevious_color�length�colrRr�rSr��s@


�
r�c
Cs�d}t|d�}|D]z}||}||d}t|�}|D]T}||d}	|	||dkrdt|d�q8|	||krtq8q8|	||kr�q8q8|d7}q8q|S)Nrrr�r�iter�next)
r�r�r�r�r�r�Znext_rowZmodules_range_iterr�Z	top_rightrRrRrSr��s r�c	Cs�t|�}t|d�}d}|D�]&}||}t|�}d}|D�]}||d�s,||d�r,||d�s,||d�r,||d�s,||dr�||dr�||d	r�||d
s�||ds�||d�r$||d�s,||d�s,||d	�s,||d
�r,||d�r,||d�r,|d7}||dr:t|d�q:q|D�]v}t|�}d}|D�]\}||d|�s�||d|�r�||d|�s�||d|�r�||d|�s�||d|�r,||d|�r,||d	|�r,||d
|�s,||d|�s,||d|�r�||d|�s�||d|�s�||d	|�s�||d
|�r�||d|�r�||d|�r�|d7}||d|�r`t|d��q`�qJ|S)
Nrrrr	rurrrrrr
rr�)	r�r�r�Zmodules_range_shortr�r�r�Zmodules_range_short_iterr�rRrRrSr�s�


�
�
�
�
�
�
�	
�

�
�
�
�
�
�
�
�
�

�������	�
���������r�cCs>ttt|��}t|�|d}tt|dd�d�}|dS)Nr�drrur)rVrW�float�int�abs)r�r�Z
dark_count�percentZratingrRrRrSr�Lsr�ccs t|�}t�d�}t�d�t�t�t�d�}t|�|krzt�t�d�|t�d��}t�t�d�|t�d��}n@t�d�t�|��	d�t�d�}t�||�}t�||�}t
||�}|D]R\}}|r�t|td	d
�Vq�t
||�D](\}}	|�rt
}
nt}
t|	|
d	d
�Vq�q�dS)z�
    An iterator returning QRData chunks optimized to the data content.

    :param minimum: The minimum number of bytes in a row to split as a chunk.
    z\d�[�]�^z+$�{�asciiz,}F)r��
check_dataN)�
to_bytestring�six�b�re�escape�	ALPHA_NUMr��compile�	text_type�encode�_optimal_split�QRDatar�r�r�)rdZminimumZnum_patternZ
alpha_patternZ	re_repeatZnum_bitsZis_num�chunkZis_alphaZ	sub_chunkr�rRrRrS�optimal_data_chunksTs&
 "�
r�ccsp|r^t�||�}|sq^|��|��}}|r>d|d|�fVd|||�fV||d�}q|rld|fVdS)NFT)r��search�start�end)rdrw�matchr�r�rRrRrSr�rsr�cCs t|tj�st�|��d�}|S)z^
    Convert data to a (utf-8 encoded) byte-string if it isn't a byte-string
    already.
    zutf-8)�
isinstancer�Zbinary_typer�r��rdrRrRrSr��sr�cCs|��rtSt�|�rtStS)z<
    Calculate the optimal mode for this chunk of data.
    )�isdigitr��RE_ALPHA_NUMr�r�r�r�rRrRrS�optimal_mode�s

r�c@s2eZdZdZddd�Zdd�Zdd	�Zd
d�ZdS)
r�zS
    Data held in a QR compatible format.

    Doesn't currently handle KANJI.
    NTcCsh|rt|�}|dur t|�|_n>||_|tttfvr@td|��|r^|t|�kr^td�|���||_	dS)zg
        If ``mode`` isn't provided, the most compact QR data type possible is
        chosen.
        Nr~z0Provided data can not be represented in mode {0})
r�r�r�r�r�r�rvr��formatrd)�selfrdr�r�rRrRrS�__init__�s��zQRData.__init__cCs
t|j�SrO)r�rd�r�rRrRrS�__len__�szQRData.__len__cCs|jtkrRtdt|j�d�D]2}|j||d�}tt|�}|�t|�|�qn�|jtkr�tdt|j�d�D]^}|j||d�}t|�dkr�|�t	�
|d�dt	�
|d�d�qn|�t	�
|�d�qnn4tjr�|j}ndd	�|jD�}|D]}|�|d
�q�dS)Nrrrr�-rrcSsg|]}t|��qSrR)�ord)rZ�crRrRrSr^�rUz QRData.write.<locals>.<listcomp>r
)
r�r�rr�rd�
NUMBER_LENGTH�putr�r�r��findr�ZPY3)r��bufferro�chars�
bit_lengthrdr�rRrRrS�write�s*

��zQRData.writecCs
t|j�SrO)�reprrdr�rRrRrS�__repr__�szQRData.__repr__)NT)�__name__�
__module__�__qualname__�__doc__r�r�r�r�rRrRrRrSr��s

r�c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�	BitBuffercCsg|_d|_dSr�)r�r�r�rRrRrSr��szBitBuffer.__init__cCsd�dd�|jD��S)N�.cSsg|]}t|��qSrR)�str)rZ�nrRrRrSr^�rUz&BitBuffer.__repr__.<locals>.<listcomp>)�joinr�r�rRrRrSr��szBitBuffer.__repr__cCs,t�|d�}|j|d|d?d@dkS)Nr
rr)rsrtr�)r��index�	buf_indexrRrRrS�get�sz
BitBuffer.getcCs0t|�D]"}|�|||d?d@dk�qdSri)�range�put_bit)r�Znumr�rorRrRrSr��sz
BitBuffer.putcCs|jSrO)r�r�rRrRrSr��szBitBuffer.__len__cCsV|jd}t|j�|kr$|j�d�|rD|j|d|jd?O<|jd7_dS)Nr
rrEr)r�r�r��append)r��bitr�rRrRrSr��s
zBitBuffer.put_bitN)	r�r�r�r�r�r�r�r�r�rRrRrRrSr��sr�c	CsXd}d}d}dgt|�}dgt|�}tt|��D�]X}||j}||j|}	t||�}t||	�}dg|||<tt||��D]}
d|j|
|@|||
<q�||7}|	tjvr�t�	tj|	d�}n6t�	dgd�}t|	�D]}
|t�	dt�
|
�gd�}q�t�	||t|�d�}||}
dgt|�d||<tt||��D]F}
|
t|
�t||�}|dk�r~|
||||
<nd|||
<�qFq4d}|D]}||j7}�q�dg|}d}t|�D]D}
tt|��D]0}|
t||�k�r�|||
||<|d7}�qАq�t|�D]D}
tt|��D]0}|
t||�k�r|||
||<|d7}�q�q|S)Nr�r)r�r�rPZtotal_count�maxr�rZ
rsPoly_LUTrZ
PolynomialZgexp)r�rY�offsetZ
maxDcCountZ
maxEcCountZdcdataZecdata�rZdcCountZecCountroZrsPolyZrawPolyZmodPolyZmodIndexZtotalCodeCountZrs_blockrdr�rRrRrS�create_bytes�sV





r�cCs,t�}|D]4}|�|jd�|�t|�t|j|��|�|�q
t�||�}d}|D]}||jd7}qTt|�|kr�t	�
dt|�|f��tt|t|�d��D]}|�
d�q�t|�d}	|	r�td|	�D]}|�
d�q�|t|�d}
t|
�D],}|ddk�r|�td�q�|�td�q�t||�S)Nr	rr
z:Code length overflow. Data size (%s) > size available (%s)Fr)r�r�r�r�r�r�rrYrPrZDataOverflowErrorr��minr��PAD0�PAD1r�)r[r]Z	data_listr�rdrYZ	bit_limitrQroZdelimitZ
bytes_to_fillrRrRrS�create_data.s6
��r�)r	)2r�rsr�Z	six.movesrZqrcoderrrr�r�r�r�rzr{r|r�r�r�r�r�r�rjrargrbr�r�rXZBIT_LIMIT_TABLErfrhr`rlrxr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�rRrRrRrS�<module>s����
$�,���	
)L

<@