U
    ccs                     @   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ddddgZejd  dk ZerHd dlZd dlZe	Z
eZeZeZeefZeZeZe jZe jZdd ZeZeZdd
 Zd3ddZd4ddZ dd Z!d dl"Z"e"j#Z#e#Z$d d Z%d!d" Z&d#d Z'G d$d% d%e(Z)ze*e)  W n e+k
r2   ed&Z,Y n
X ed'Z,[)d(d) Z-nd dl.Z.d dl/Z/d dlZeZ
eZeZeZeZG d*d deZeZe jZe jZd+d Zd,d	 Zd-d
 Zd5d.dZd6d/dZ d0d Z!d dl0Z0e0j#Z#e0j$Z$d1d Z%d2d" Z&e'Z'ej1Z,ej-Z-dS )7    NBytesIOMAXSIZEPY2StringIObb2sbuiltinsbyte_chr	byte_maskbyte_ordbytesbytes_typesdecodebytesencodebytesinputinteger_typesis_callablelongnextstring_types	text_typeu   c                 C   s   t | tr| dS | S )Nzutf-8)
isinstanceunicodeencodes r   6/tmp/pip-unpacked-wheel-rglolp_m/paramiko/py3compat.py
bytestring.   s    

r    c                 C   s   t t| |@ S N)chrordcmaskr   r   r   r
   6   s    utf8c                 C   sB   t | tr| S t | tr"| |S t | tr0| S td| dS zcast unicode or bytes to bytes#Expected unicode or bytes, got {!r}N)r   strr   r   buffer	TypeErrorformatr   encodingr   r   r   r   9   s    



c                 C   sH   t | tr| |S t | tr"| S t | tr6| |S td| dS z cast bytes or unicode to unicoder)   N)r   r*   decoder   r+   r,   r-   r.   r   r   r   r   D   s    




c                 C   s   | S r!   r   r   r   r   r   r   O   s    c                 C   s   t | S r!   )callabler%   r   r   r   r   W   s    c                 C   s   | j S r!   r   r3   r   r   r   get_nextZ   s    r5   c                 C   s   |   S r!   r4   r3   r   r   r   r   ]   s    c                   @   s   e Zd Zdd ZdS )Xc                 C   s   dS )Nl        r   )selfr   r   r   __len__b   s    z	X.__len__N)__name__
__module____qualname__r8   r   r   r   r   r6   a   s   r6   il    c                 C   s&   t t j\}}t| ||p"dS )z*Same as time.strftime but returns unicode.ascii)locale	getlocaleLC_TIMEtimestrftimer1   )r-   t_r/   r   r   r   rA   o   s    rA   c                   @   s   e Zd ZdS )r   N)r9   r:   r;   r   r   r   r   r      s   c                 C   s   t | tst| } | S r!   )r   intr#   r3   r   r   r   r      s    
c                 C   s   t | tsttd| S NBr   rD   AssertionErrorstructpackr3   r   r   r   r	      s    c                 C   s   t | tsttd| |@ S rE   rG   r$   r   r   r   r
      s    c                 C   s4   t | tr| S t | tr"| |S td| dS r(   )r   r   r*   r   r,   r-   r.   r   r   r   r      s
    


c                 C   s4   t | tr| |S t | tr"| S td| dS r0   )r   r   r1   r*   r,   r-   r.   r   r   r   r      s
    


c                 C   s   t | tr|  S | S r!   )r   r   r1   r   r   r   r   r      s    c                 C   s   t | tjS r!   )r   collectionsCallabler3   r   r   r   r      s    c                 C   s   | j S r!   )__next__r3   r   r   r   r5      s    )r'   )r'   )r'   )r'   )2base64sysr@   __all__version_infor   __builtin__r   r=   
basestringr   r   r   r*   r   r   rD   r   r   	raw_inputr   decodestringr   encodestringr   r    r#   r   r"   r	   r
   r   r   r   	cStringIOr   r   r   r5   r   objectr6   lenOverflowErrorr   rA   rK   rI   iomaxsizer   r   r   r   <module>   s   



	
	