
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a«O  ã                   @   sš  d dl Z d dlZd dlZdddddddd	d
dddddddddgZeefZdd„ ZdBdd„ZdCdd„Z	dd„ Z
dd„ Ze dd¡Ze dd¡Zdd„ Zdd„ ZdZdadad d„ ZdDd!d	„Zd"d
„ ZdEd#d„Zdadad$Zd%ZdFd&d'„Zdd ddd(œd)d„Zddd*d+œd,d„Zd-Zda da!da"dGd.d„Z#d/d„ Z$d0Z%e%d1 d2 Z&d3d„ Z'd4d„ Z(d5d6„ Z)d7d„ Z*d8d9„ Z+d:d„ Z,d;d<„ Z-d=d>„ Z.d?d@„ Z/e0dAk�r–e.ƒ  dS )Hé    NÚencodeÚdecodeÚencodebytesÚdecodebytesÚ	b64encodeÚ	b64decodeÚ	b32encodeÚ	b32decodeÚ	b16encodeÚ	b16decodeÚ	b85encodeÚ	b85decodeÚ	a85encodeÚ	a85decodeÚstandard_b64encodeÚstandard_b64decodeÚurlsafe_b64encodeÚurlsafe_b64decodec                 C   s|   t | tƒr4z|  d¡W S  tk
r2   tdƒ‚Y nX t | tƒrB| S zt| ƒ ¡ W S  tk
rv   td| j	j
 ƒd ‚Y nX d S )NÚasciiz4string argument should contain only ASCII charactersz>argument should be a bytes-like object or ASCII string, not %r)Ú
isinstanceÚstrr   ÚUnicodeEncodeErrorÚ
ValueErrorÚbytes_typesÚ
memoryviewÚtobytesÚ	TypeErrorÚ	__class__Ú__name__©Ús© r!   ú+/opt/alt/python38/lib64/python3.8/base64.pyÚ_bytes_from_decode_data"   s    

ÿÿr#   c                 C   s,   t j| dd�}|d k	r(| t d|¡¡S |S )NF)Únewlineó   +/)ÚbinasciiÚ
b2a_base64Ú	translateÚbytesÚ	maketrans)r    ÚaltcharsÚencodedr!   r!   r"   r   3   s    Fc                 C   sN   t | ƒ} |d k	r*t |ƒ}|  t |d¡¡} |rDt d| ¡sDt d¡‚t | ¡S )Nr%   s   [A-Za-z0-9+/]*={0,2}zNon-base64 digit found)	r#   r(   r)   r*   ÚreÚ	fullmatchr&   ÚErrorÚ
a2b_base64)r    r+   Zvalidater!   r!   r"   r   A   s    
c                 C   s   t | ƒS ©N)r   r   r!   r!   r"   r   Z   s    c                 C   s   t | ƒS r1   )r   r   r!   r!   r"   r   a   s    r%   s   -_c                 C   s   t | ƒ t¡S r1   )r   r(   Ú_urlsafe_encode_translationr   r!   r!   r"   r   o   s    c                 C   s   t | ƒ} |  t¡} t| ƒS r1   )r#   r(   Ú_urlsafe_decode_translationr   r   r!   r!   r"   r   x   s    
s    ABCDEFGHIJKLMNOPQRSTUVWXYZ234567c                    s>  t d kr,dd„ tD ƒ‰ ‡ fdd„ˆ D ƒa d ‰ t| tƒsBt| ƒ ¡ } t| ƒd }|rb| dd|   } tƒ }tj	}t }t
dt| ƒdƒD ]V}|| ||d … dƒ}|||d?  ||d	? d
@   ||d? d
@   ||d
@   7 }q‚|dkrðd|dd …< nF|dk�rd|dd …< n.|dk�r d|dd …< n|dk�r6d|dd …< t|ƒS )Nc                 S   s   g | ]}t |fƒ‘qS r!   ©r)   ©Ú.0Úir!   r!   r"   Ú
<listcomp>•   s     zb32encode.<locals>.<listcomp>c                    s   g | ]}ˆ D ]}|| ‘qqS r!   r!   ©r6   ÚaÚb©Zb32tabr!   r"   r8   –   s       é   ó    r   Úbigé   é   iÿ  é
   é   s   ======iúÿÿÿé   s   ====éüÿÿÿé   s   ===éýÿÿÿé   ó   =éÿÿÿÿ)Ú_b32tab2Ú_b32alphabetr   r   r   r   ÚlenÚ	bytearrayÚintÚ
from_bytesÚranger)   )r    Úleftoverr,   rP   Zb32tab2r7   Úcr!   r<   r"   r   Ž   s<    
ÿþ
ý


c              	   C   sz  t d krdd„ ttƒD ƒa t| ƒ} t| ƒd r8t d¡‚|d k	r^t|ƒ}|  t 	dd| ¡¡} |rj|  
¡ } t| ƒ}|  d¡} |t| ƒ }tƒ }t }tdt| ƒdƒD ]h}| ||d … }d}	z|D ]}
|	d	> ||
  }	qÀW n  tk
rø   t d
¡d ‚Y nX ||	 d	d¡7 }q¢|d �s |dk�r*t d¡‚|�rr|�rr|	d	| K }	|	 d	d¡}dd	|  d }|d |… |dd …< t|ƒS )Nc                 S   s   i | ]\}}||“qS r!   r!   )r6   ÚkÚvr!   r!   r"   Ú
<dictcomp>Ê   s      zb32decode.<locals>.<dictcomp>é   zIncorrect paddings   01ó   OrI   r   r=   zNon-base32 digit foundr?   >   r   rC   rF   rH   é   é+   éûÿÿÿ)Ú_b32revÚ	enumeraterL   r#   rM   r&   r/   r(   r)   r*   ÚupperÚrstriprN   rQ   ÚKeyErrorÚto_bytes)r    ÚcasefoldZmap01ÚlZpadcharsÚdecodedZb32revr7   ZquantaÚaccrS   ZlastrR   r!   r!   r"   r	   ´   s@    


c                 C   s   t  | ¡ ¡ S r1   )r&   Zhexlifyr^   r   r!   r!   r"   r
   ÷   s    c                 C   s4   t | ƒ} |r|  ¡ } t d| ¡r*t d¡‚t | ¡S )Ns	   [^0-9A-F]zNon-base16 digit found)r#   r^   r-   Úsearchr&   r/   Z	unhexlify)r    rb   r!   r!   r"   r   ý   s    

s   <~s   ~>c           	         s¬   t | tƒst| ƒ ¡ } t| ƒ d }|r4| d|  } t dt| ƒd  ¡ | ¡}‡ ‡‡‡fdd„|D ƒ}|r¢|s¢|d dkrŒˆ d d	 |d< |d d | … |d< d
 |¡S )NrH   r>   z!%dIc                    sP   g | ]H}ˆr|sd n6ˆr$|dkr$dn&ˆ|d  ˆ|d d   ˆ |d   ‘qS )ó   zi    ó   yií^	 éU   i9  r!   )r6   Zword©ÚcharsÚchars2ÚfoldnulsÚ
foldspacesr!   r"   r8   !  s   û
ÿ
þz_85encode.<locals>.<listcomp>rJ   rg   r   r=   ó    )	r   r   r   r   rM   ÚstructÚStructZunpackÚjoin)	r;   rk   rl   Úpadrm   rn   ÚpaddingZwordsÚchunksr!   rj   r"   Ú	_85encode  s    
ûrv   )rn   Úwrapcolrs   Úadobec                   sº   t d kr*dd„ tddƒD ƒadd„ tD ƒa t| tt |d|ƒ‰ |rHtˆ  ‰ ˆrªt|rVdndˆƒ‰‡ ‡fd	d„td
tˆ ƒˆƒD ƒ}|r t|d ƒd ˆkr | d¡ d |¡‰ |r¶ˆ t	7 ‰ ˆ S )Nc                 S   s   g | ]}t |fƒ‘qS r!   r4   r5   r!   r!   r"   r8   D  s     za85encode.<locals>.<listcomp>é!   év   c                 S   s   g | ]}t D ]}|| ‘qqS r!   )Ú	_a85charsr9   r!   r!   r"   r8   E  s       TrD   rC   c                    s   g | ]}ˆ ||ˆ … ‘qS r!   r!   r5   ©Úresultrw   r!   r"   r8   M  s   ÿr   rJ   ro   ó   
)
Ú
_a85chars2rQ   r{   rv   Ú	_A85STARTÚmaxrM   Úappendrr   Ú_A85END)r;   rn   rw   rs   rx   ru   r!   r|   r"   r   /  s$    ÿ

s    	
)rn   rx   Úignorecharsc             	   C   s’  t | ƒ} |rH|  t¡s$td t¡ƒ‚|  t¡r<| dd… } n| d d… } t d¡j	}g }|j
}g }|j
}|j}	| d D ]ì}
d|
  krŽdkrþn nl||
ƒ t|ƒdkrüd	}|D ]}
d
| |
d  }q®z|||ƒƒ W n  tjk
rô   tdƒd ‚Y nX |	ƒ  qv|
dk�r |�rtdƒ‚|dƒ qv|�rH|
dk�rH|�r>tdƒ‚|dƒ qv|
|k�rVqvqvtd|
 ƒ‚qvd |¡}dt|ƒ }|�rŽ|d | … }|S )Nz1Ascii85 encoded byte sequences must end with {!r}rD   éþÿÿÿú!Is   uuuury   éu   r=   r   ri   zAscii85 overflowéz   zz inside Ascii85 5-tuples       éy   zy inside Ascii85 5-tuples       zNon-Ascii85 digit found: %cro   rH   )r#   Úendswithrƒ   r   ÚformatÚ
startswithr€   rp   rq   Úpackr‚   ÚclearrM   Úerrorrr   )r;   rn   rx   r„   ÚpackIrd   Zdecoded_appendZcurrZcurr_appendZ
curr_clearÚxre   r}   rt   r!   r!   r"   r   X  sZ    
ÿÿ





sU   0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!#$%&()*+-;<=>?@^_`{|}~c                 C   s2   t d kr$dd„ tD ƒadd„ tD ƒa t| tt |ƒS )Nc                 S   s   g | ]}t |fƒ‘qS r!   r4   r5   r!   r!   r"   r8   °  s     zb85encode.<locals>.<listcomp>c                 S   s   g | ]}t D ]}|| ‘qqS r!   )Ú	_b85charsr9   r!   r!   r"   r8   ±  s       )Ú
_b85chars2Ú_b85alphabetr’   rv   )r;   rs   r!   r!   r"   r   ¦  s    	c           
   	   C   sJ  t d kr,d gd a ttƒD ]\}}|t |< qt| ƒ} t| ƒ d }| d|  } g }t d¡j}tdt| ƒdƒD ]¸}| ||d … }d}z|D ]}|d t |  }qŒW nF t	k
rê   t|ƒD ]&\}}t | d kr¼t
d||  ƒd ‚q¼‚ Y nX z| ||ƒ¡ W qn tjk
�r$   t
d| ƒd ‚Y qnX qnd	 |¡}	|�rF|	d | … }	|	S )
Né   r=   ó   ~r†   r   ri   z#bad base85 character at position %dz+base85 overflow in hunk starting at byte %dro   )Ú_b85decr]   r”   r#   rM   rp   rq   r�   rQ   r   r   r‚   r�   rr   )
r;   r7   rS   rt   Úoutr�   Úchunkre   Újr}   r!   r!   r"   r   ´  sH    

ÿÿÿÿ

éL   rH   rF   c                 C   sX   |   t¡}|sqTt|ƒtk r>|   tt|ƒ ¡}|s4q>||7 }qt |¡}| |¡ q d S r1   )ÚreadÚ
MAXBINSIZErM   r&   r'   Úwrite)ÚinputÚoutputr    ÚnsÚliner!   r!   r"   r   ä  s    


c                 C   s(   |   ¡ }|sq$t |¡}| |¡ q d S r1   )Úreadliner&   r0   rž   )rŸ   r    r¢   r    r!   r!   r"   r   ó  s
    
c              
   C   s’   zt | ƒ}W n8 tk
rD } zd| jj }t|ƒ|‚W 5 d }~X Y nX |jdkrjd|j| jjf }t|ƒ‚|jdkrŽd|j| jjf }t|ƒ‚d S )Nz"expected bytes-like object, not %s)rS   r;   ÚBz-expected single byte elements, not %r from %srC   z(expected 1-D data, not %d-D data from %s)r   r   r   r   r‹   Úndim)r    ÚmÚerrÚmsgr!   r!   r"   Ú_input_type_checkü  s    
ÿ
ÿr©   c                 C   sL   t | ƒ g }tdt| ƒtƒD ]$}| ||t … }| t |¡¡ qd |¡S )Nr   ro   )r©   rQ   rM   r�   r‚   r&   r'   rr   )r    Úpiecesr7   r™   r!   r!   r"   r     s    c                 C   s   dd l }| dtd¡ t| ƒS )Nr   zAencodestring() is a deprecated alias since 3.1, use encodebytes()rD   )ÚwarningsÚwarnÚDeprecationWarningr   ©r    r«   r!   r!   r"   Úencodestring  s     þr¯   c                 C   s   t | ƒ t | ¡S r1   )r©   r&   r0   r   r!   r!   r"   r     s    c                 C   s   dd l }| dtd¡ t| ƒS )Nr   zHdecodestring() is a deprecated alias since Python 3.1, use decodebytes()rD   )r«   r¬   r­   r   r®   r!   r!   r"   Údecodestring$  s     þr°   c            	   
   C   s  dd l } dd l}z| | jdd … d¡\}}W nP |jk
r~ } z0| j| _t|ƒ td| jd  ƒ |  d¡ W 5 d }~X Y nX t}|D ]@\}}|dkrœt}|dkr¨t	}|dkr´t	}|d	krˆt
ƒ   d S qˆ|�r|d d
k�rt|d dƒ�}||| jjƒ W 5 Q R X n|| jj| jjƒ d S )Nr   rC   Zdeutz�usage: %s [-d|-e|-u|-t] [file|-]
        -d, -u: decode
        -e: encode (default)
        -t: encode and decode string 'Aladdin:open sesame'rD   z-ez-dz-uz-tú-Úrb)ÚsysÚgetoptÚargvr�   ÚstderrÚstdoutÚprintÚexitr   r   ÚtestÚopenÚbufferÚstdin)	r³   r´   ZoptsÚargsr¨   ÚfuncÚor:   Úfr!   r!   r"   Úmain.  s2    ý     rÂ   c                  C   s<   d} t t| ƒƒ t| ƒ}t t|ƒƒ t|ƒ}t t|ƒƒ d S )Ns   Aladdin:open sesame)r¸   Úreprr   r   )Zs0Ús1Ús2r!   r!   r"   rº   H  s    rº   Ú__main__)N)NF)FN)F)FFF)F)1r-   rp   r&   Ú__all__r)   rN   r   r#   r   r   r   r   r*   r2   r3   r   r   rL   rK   r\   r   r	   r
   r   r{   r   r€   rƒ   rv   r   r   r”   r’   r“   r—   r   r   ZMAXLINESIZEr�   r   r   r©   r   r¯   r   r°   rÂ   rº   r   r!   r!   r!   r"   Ú<module>	   s€               ò

	&
C

)H
-	
	


