
    hA                    (   d dl mZ d dlZ ej        e          Z	 d dlZe                    d           dd	Zdd
Z		 dddZ
	 dddZd dZdS # e$ r= d dlZe                    d           ddZddZ		 dddZ
	 dddZd dZd!dZd"dZY dS w xY w)#    )annotationsNzUsing TgCryptodatabyteskeyivreturnc                .    t          j        | ||          S N)tgcryptoige256_encryptr   r   r   s      T/var/www/html/auto_sub_bot/venv/lib/python3.11/site-packages/hydrogram/crypto/aes.pyr   r          &tS"555    c                .    t          j        | ||          S r
   )r   ige256_decryptr   s      r   r   r   "   r   r   	bytearraystatebytearray | Nonec                N    t          j        | |||pt          d                    S N   )r   ctr256_encryptr   r   r   r   r   s       r   r   r   %   &     &tS"e6Ky||LLLr   c                N    t          j        | |||pt          d                    S r   )r   ctr256_decryptr   r   s       r   r   r   *   r   r   abc                    t                               t                               | d          t                               |d          z  t          |           d          S Nbigintto_bytes
from_byteslenr   r   s     r   xorr)   /   H    ||NN1e$$s~~a'?'??FF
 
 	
r   zTgCrypto is missing! Hydrogram will work the same, but at a much slower speed. More info: https://docs.hydrogram.org/en/latest/topics/speedups.htmlc                &    t          | ||d          S )NTiger   s      r   r   r   >   s    4b$'''r   c                &    t          | ||d          S )NFr,   r   s      r   r   r   A   s    4b%(((r   c                D    t          | |||pt          d                    S r   ctrr   r   s       r   r   r   D   #     4b%"79Q<<888r   c                D    t          | |||pt          d                    S r   r0   r   s       r   r   r   I   r2   r   c                    t                               t                               | d          t                               |d          z  t          |           d          S r!   r#   r(   s     r   r)   r)   N   r*   r   encryptboolc           	         t          j        |          }|d d         }|dd          } fdt          dt                     d          D              t	                     D ]x\  }}|r9t          |                    t          ||                    |          x} |<   |}@t          |                    t          ||                    |          x} |<   |}yd                               S )N   c                *    g | ]}||d z            S )r8    ).0ir   s     r   
<listcomp>zige.<locals>.<listcomp>[   s&    BBBQQRZ BBBr   r   r   )	pyaesAESranger'   	enumerater)   r5   decryptjoin)	r   r   r   r5   cipheriv_1iv_2r<   chunks	   `        r   r-   r-   U   s    3#2#w"##wBBBB%3t99b*A*ABBB!$ 	 	HAu !$V^^Ct4D4D%E%Et!L!LLtAw!$V^^Ct4D4D%E%Et!L!LLtAwxx~~r   c                P   t          j        |          }t          |           }|                    |          }t	          dt          |           d          D ]}t	          t          t          |           |z
  d                    D ]}|||z   xx         ||d                  z  cc<   |dxx         dz  cc<   |d         dk    rd|d<   |d         dk    rPt	          ddd          D ])}		 ||	xx         dz  cc<    n# t          $ r d||	<   Y &w xY w|                    |          }|S )Nr   r8   r      )r>   r?   r   r5   r@   r'   min
ValueError)
r   r   r   r   rD   outrG   r<   jks
             r   r1   r1   g   sS   3oor""q#d))R(( 	/ 	/A3s4yy1}b1122 / /AE


eE!Ho-


aA8r>> E!H8q=="2r2.. & &&qEEEQJEEE!E) & & &$%BqEEE& #NN2..E!/$ 
s   (C::D	D	)r   r   r   r   r   r   r   r   r
   )
r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   )
r   r   r   r   r   r   r5   r6   r   r   )
r   r   r   r   r   r   r   r   r   r   )
__future__r   logging	getLogger__name__logr   infor   r   r   r   r)   ImportErrorr>   warningr-   r1   r:   r   r   <module>rX      s  ( # " " " " " g!!fOOOHH6 6 6 66 6 6 6 KOM M M M M KOM M M M M

 
 
 
 
 
  K K KLLLKK	O  ( ( ( () ) ) ) KO9 9 9 9 9 KO9 9 9 9 9

 
 
 
   $      eKs   1A >BB