U
    GwiU:                    @   sH  d Z ddlmZ ddlmZ ddlmZmZmZmZ ddl	Z	ddl
Z
ddlmZ erddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZ G d	d
 d
eZG dd deZG dd deZG dd deZG dd deZG dd deZ G dd deZ!G dd deZ"G dd deZ#G dd deZ$G dd deZ%G dd  d eZ&G d!d" d"eZ'G d#d$ d$eZ(G d%d& d&eZ)G d'd( d(eZ*G d)d* d*eZ+G d+d, d,eZ,G d-d. d.eZ-G d/d0 d0eZ.G d1d2 d2eZ/G d3d4 d4eZ0G d5d6 d6eZ1G d7d8 d8eZ2G d9d: d:eZ3G d;d< d<eZ4G d=d> d>eZ5G d?d@ d@eZ6G dAdB dBeZ7G dCdD dDeZ8G dEdF dFeZ9G dGdH dHeZ:G dIdJ dJeZ;G dKdL dLeZ<G dMdN dNeZ=G dOdP dPeZ>G dQdR dReZ?G dSdT dTeZ@G dUdV dVeZAG dWdX dXeZBG dYdZ dZeZCG d[d\ d\eZDG d]d^ d^eZEG d_d` d`eZFG dadb dbeZGG dcdd ddeZHG dedf dfeZIG dgdh dheZJG didj djeZKG dkdl dleZLG dmdn dneZMG dodp dpeZNG dqdr dreZOG dsdt dteZPG dudv dveZQG dwdx dxeZRG dydz dzeZSG d{d| d|eZTG d}d~ d~eZUdS )zBFile generated by TLObjects' generator. All changes will be ERASED   )TLObject)	TLRequest    )OptionalListUnionTYPE_CHECKINGN)datetime)TypeChannelAdminLogEventsFilterTypeChannelParticipantsFilterTypeChatAdminRightsTypeChatBannedRightsTypeEmojiStatusTypeInputChannelTypeInputChatPhotoTypeInputCheckPasswordSRPTypeInputGeoPointTypeInputMessageTypeInputPeerTypeInputStickerSetTypeInputUserTypeProfileTabc                   @   sD   e Zd ZdZdZdee dddZdd Zd	d
 Z	e
dd ZdS )CheckSearchPostsFloodRequestiqV"l   L Nqueryc                 C   s
   || _ dS )zJ
        :returns SearchPostsFlood: Instance of SearchPostsFlood.
        Nr   )selfr    r   B/tmp/pip-unpacked-wheel-v4xsjwr6/telethon/tl/functions/channels.py__init__   s    z%CheckSearchPostsFloodRequest.__init__c                 C   s   d| j dS )Nr   )_r   r   r   r   r   r   to_dict   s    z$CheckSearchPostsFloodRequest.to_dictc                 C   sP   d dtd| jd ks | jdkr$dnd| jd ks<| jdkr@dn
| | jfS )N    s   qV"<IFr      )joinstructpackr   serialize_bytesr    r   r   r   _bytes   s
    ""z#CheckSearchPostsFloodRequest._bytesc                 C   s(   |  }|d@ r| }nd }| |dS )Nr$   r   )read_inttgread_string)clsreaderflags_queryr   r   r   from_reader$   s
    
z(CheckSearchPostsFloodRequest.from_reader)N)__name__
__module____qualname__CONSTRUCTOR_IDSUBCLASS_OF_IDr   strr   r!   r)   classmethodr0   r   r   r   r   r      s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )CheckUsernameRequesti,   gk r   channelusernamec                 C   s   || _ || _dS z?
        :returns Bool: This type has no constructors.
        Nr:   r   r;   r<   r   r   r   r   3   s    zCheckUsernameRequest.__init__c                    s   | || jI d H | _d S Nget_input_channelget_input_entityr;   r   clientutilsr   r   r   resolve:   s    zCheckUsernameRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr8   r   r;   r<   
isinstancer;   r   r!   r<   r    r   r   r   r!   =   s    zCheckUsernameRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s   ,r%   r;   r)   r(   r<   r    r   r   r   r)   D   s
    
zCheckUsernameRequest._bytesc                 C   s   |  }| }| ||dS Nr:   tgread_objectr+   r,   r-   _channel	_usernamer   r   r   r0   K   s    z CheckUsernameRequest.from_readerNr1   r2   r3   r4   r5   r6   r   rF   r!   r)   r7   r0   r   r   r   r   r8   /   s   r8   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )ConvertToGigagroupRequestii)   * r   r;   c                 C   s
   || _ dS z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        NrT   r   r;   r   r   r   r   V   s    z"ConvertToGigagroupRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   \   s    z!ConvertToGigagroupRequest.resolvec                 C   s"   dt | jtr| j n| jdS )NrR   r   r;   rI   r;   r   r!   r    r   r   r   r!   _   s    z!ConvertToGigagroupRequest.to_dictc                 C   s   d d| j fS )Nr"   s   i)r%   r;   r)   r    r   r   r   r)   e   s    z ConvertToGigagroupRequest._bytesc                 C   s   |  }| |dS NrT   rM   r,   r-   rO   r   r   r   r0   k   s    z%ConvertToGigagroupRequest.from_readerNr1   r2   r3   r4   r5   r   rF   r!   r)   r7   r0   r   r   r   r   rR   R   s   rR   c                   @   sl   e Zd ZdZdZdeeee ee ee ee ed ee ee d	ddZ	dd	 Z
d
d Zedd ZdS )CreateChannelRequestl   g " rS   Nr   	titleabout	broadcast	megagroup
for_importforum	geo_pointaddress
ttl_periodc
           
      C   s:   || _ || _|| _|| _|| _|| _|| _|| _|	| _dS rU   r_   )
r   r`   ra   rb   rc   rd   re   rf   rg   rh   r   r   r   r   u   s    zCreateChannelRequest.__init__c                 C   sB   d| j | j| j| j| j| jt| jtr0| j	 n| j| j
| jd
S )Nr^   )
r   r`   ra   rb   rc   rd   re   rf   rg   rh   )r`   ra   rb   rc   rd   re   rI   rf   r   r!   rg   rh   r    r   r   r   r!      s    zCreateChannelRequest.to_dictc                 C   s  | j s| j d k	r | jsP| jd k	sP| j d ks4| j dkrH| jd ksP| jdksPtdddtd| jd ksp| jdkrtdnd| jd ks| jdkrdndB | jd ks| jdkrdnd	B | j	d ks| j	dkrdnd
B | j d ks| j dkrdndB | jd ks| jdkrdndB | j
d ks| j
dkrdndB | | j| | j| j d ksP| j dkrTdn| j  | jd kst| jdkrxdn
| | j| j
d ks| j
dkrdntd| j
fS )NFzNgeo_point, address parameters must all be False-y (like None) or all me True-yr"   s   g r#   r   r$                   <i)rf   rg   AssertionErrorr%   r&   r'   rb   rc   rd   re   rh   r(   r`   ra   r)   r    r   r   r   r)      s    P

$&(zCreateChannelRequest._bytesc                 C   s   |  }t|d@ }t|d@ }t|d@ }t|d@ }| }| }|d@ rZ| }	nd }	|d@ rp| }
nd }
|d@ r|  }nd }| |||||||	|
|d	S )Nr$   ri   rj   rk   rl   rm   r_   )r*   boolr+   rM   )r,   r-   r.   
_broadcastZ
_megagroupZ_for_importZ_forum_titleZ_about
_geo_point_addressZ_ttl_periodr   r   r   r0      s"    


z CreateChannelRequest.from_reader)NNNNNNN)r1   r2   r3   r4   r5   r6   r   rp   intr   r!   r)   r7   r0   r   r   r   r   r^   q   s   <r^   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )DeactivateAllUsernamesRequesti]$
r9   r   rT   c                 C   s
   || _ dS r=   rT   rV   r   r   r   r      s    z&DeactivateAllUsernamesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF      s    z%DeactivateAllUsernamesRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nrv   rW   rX   r    r   r   r   r!      s    z%DeactivateAllUsernamesRequest.to_dictc                 C   s   d d| j fS )Nr"   s   ]$
rY   r    r   r   r   r)      s    z$DeactivateAllUsernamesRequest._bytesc                 C   s   |  }| |dS rZ   r[   r\   r   r   r   r0      s    z)DeactivateAllUsernamesRequest.from_readerNr]   r   r   r   r   rv      s   rv   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )DeleteChannelRequestl   "  rS   r   rT   c                 C   s
   || _ dS rU   rT   rV   r   r   r   r      s    zDeleteChannelRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF      s    zDeleteChannelRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nrw   rW   rX   r    r   r   r   r!      s    zDeleteChannelRequest.to_dictc                 C   s   d d| j fS )Nr"   s   rY   r    r   r   r   r)      s    zDeleteChannelRequest._bytesc                 C   s   |  }| |dS rZ   r[   r\   r   r   r   r0      s    z DeleteChannelRequest.from_readerNr]   r   r   r   r   rw      s   rw   c                   @   sP   e Zd ZdZdZddeee dddZdd	 Z	d
d Z
dd Zedd ZdS )DeleteHistoryRequestl   GU7 rS   Nr   r;   max_idfor_everyonec                 C   s   || _ || _|| _dS rU   ry   )r   r;   rz   r{   r   r   r   r      s    zDeleteHistoryRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF      s    zDeleteHistoryRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nrx   )r   r;   rz   r{   )rI   r;   r   r!   rz   r{   r    r   r   r   r!     s
    zDeleteHistoryRequest.to_dictc              	   C   sB   d dtd| jd ks | jdkr$dnd| j td| jfS )Nr"   s   Gr#   Fr   r$   rn   )r%   r&   r'   r{   r;   r)   rz   r    r   r   r   r)     s    "zDeleteHistoryRequest._bytesc                 C   s2   |  }t|d@ }| }|  }| |||dS )Nr$   ry   r*   rp   rM   )r,   r-   r.   Z_for_everyonerO   _max_idr   r   r   r0     s
    z DeleteHistoryRequest.from_reader)Nr1   r2   r3   r4   r5   ru   r   rp   r   rF   r!   r)   r7   r0   r   r   r   r   rx      s   rx   c                   @   sL   e Zd ZdZdZdee dddZdd Zd	d
 Z	dd Z
edd ZdS )DeleteMessagesRequestl   N}	 l   n@ r   r;   idc                 C   s   || _ || _dS )zS
        :returns messages.AffectedMessages: Instance of AffectedMessages.
        Nr   r   r;   r   r   r   r   r   !  s    zDeleteMessagesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   (  s    zDeleteMessagesRequest.resolvec                 C   s<   dt | jtr| j n| j| jd kr*g n| jd d  dS )Nr   r   r;   r   rI   r;   r   r!   r   r    r   r   r   r!   +  s    zDeleteMessagesRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   N   ĵrn   c                 s   s   | ]}t d |V  qdS rn   Nr&   r'   .0xr   r   r   	<genexpr>6  s     z/DeleteMessagesRequest._bytes.<locals>.<genexpr>r%   r;   r)   r&   r'   lenr   r    r   r   r   r)   2  s      zDeleteMessagesRequest._bytesc                 C   sD   |  }|  g }t| D ]}| }|| q | ||dS Nr   rM   r*   rangeappendr,   r-   rO   _idr   _xr   r   r   r0   9  s    z!DeleteMessagesRequest.from_readerNr1   r2   r3   r4   r5   r   ru   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )DeleteParticipantHistoryRequestiDu6iI,r   r   r;   participantc                 C   s   || _ || _dS )zQ
        :returns messages.AffectedHistory: Instance of AffectedHistory.
        Nr   r   r;   r   r   r   r   r   I  s    z(DeleteParticipantHistoryRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   rA   rB   r;   get_input_peerr   rC   r   r   r   rF   P  s    z'DeleteParticipantHistoryRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr   r   r;   r   rI   r;   r   r!   r   r    r   r   r   r!   T  s    z'DeleteParticipantHistoryRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   Du6r%   r;   r)   r   r    r   r   r   r)   [  s
    z&DeleteParticipantHistoryRequest._bytesc                 C   s   |  }|  }| ||dS Nr   r[   r,   r-   rO   _participantr   r   r   r0   b  s    z+DeleteParticipantHistoryRequest.from_readerNr]   r   r   r   r   r   E  s   r   c                   @   sL   e Zd ZdZdZdddedddZd	d
 Zdd Zdd Z	e
dd ZdS )EditAdminRequestl   	y& rS   r   r   r   r;   user_idadmin_rightsrankc                 C   s   || _ || _|| _|| _dS rU   r   )r   r;   r   r   r   r   r   r   r   m  s    zEditAdminRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   rA   rB   r;   get_input_userr   rC   r   r   r   rF   v  s    zEditAdminRequest.resolvec                 C   sZ   dt | jtr| j n| jt | jtr2| j n| jt | jtrL| j n| j| jdS )Nr   )r   r;   r   r   r   )rI   r;   r   r!   r   r   r   r    r   r   r   r!   z  s    zEditAdminRequest.to_dictc              	   C   s.   d d| j | j | j | | jfS )Nr"   s   <)r%   r;   r)   r   r   r(   r   r    r   r   r   r)     s    
zEditAdminRequest._bytesc                 C   s0   |  }|  }|  }| }| ||||dS )Nr   rL   )r,   r-   rO   _user_idZ_admin_rightsZ_rankr   r   r   r0     s
    zEditAdminRequest.from_readerNrQ   r   r   r   r   r   i  s   			r   c                   @   sJ   e Zd ZdZdZddddddZd	d
 Zdd Zdd Ze	dd Z
dS )EditBannedRequestl   M- rS   r   r   r   r;   r   banned_rightsc                 C   s   || _ || _|| _dS rU   r   )r   r;   r   r   r   r   r   r     s    zEditBannedRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   r   rC   r   r   r   rF     s    zEditBannedRequest.resolvec                 C   sV   dt | jtr| j n| jt | jtr2| j n| jt | jtrL| j n| jdS )Nr   )r   r;   r   r   )rI   r;   r   r!   r   r   r    r   r   r   r!     s
    zEditBannedRequest.to_dictc                 C   s$   d d| j | j | j fS )Nr"   s   )r%   r;   r)   r   r   r    r   r   r   r)     s    zEditBannedRequest._bytesc                 C   s&   |  }|  }|  }| |||dS )Nr   r[   )r,   r-   rO   r   Z_banned_rightsr   r   r   r0     s    zEditBannedRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sJ   e Zd ZdZdZddddddZd	d
 Zdd Zdd Ze	dd Z
dS )EditCreatorRequestl   Mq rS   r   r   r   r;   r   passwordc                 C   s   || _ || _|| _dS rU   r   )r   r;   r   r   r   r   r   r     s    zEditCreatorRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   r   rC   r   r   r   rF     s    zEditCreatorRequest.resolvec                 C   sV   dt | jtr| j n| jt | jtr2| j n| jt | jtrL| j n| jdS )Nr   )r   r;   r   r   )rI   r;   r   r!   r   r   r    r   r   r   r!     s
    zEditCreatorRequest.to_dictc                 C   s$   d d| j | j | j fS )Nr"   s   8)r%   r;   r)   r   r   r    r   r   r   r)     s    zEditCreatorRequest._bytesc                 C   s&   |  }|  }|  }| |||dS )Nr   r[   )r,   r-   rO   r   Z	_passwordr   r   r   r0     s    zEditCreatorRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sJ   e Zd ZdZdZddedddZdd	 Zd
d Zdd Z	e
dd ZdS )EditLocationRequestim?Xr9   r   r   r;   rf   rg   c                 C   s   || _ || _|| _dS r=   r   )r   r;   rf   rg   r   r   r   r     s    zEditLocationRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zEditLocationRequest.resolvec                 C   s@   dt | jtr| j n| jt | jtr2| j n| j| jdS )Nr   )r   r;   rf   rg   )rI   r;   r   r!   rf   rg   r    r   r   r   r!     s
    zEditLocationRequest.to_dictc                 C   s&   d d| j | j | | jfS )Nr"   s   m?X)r%   r;   r)   rf   r(   rg   r    r   r   r   r)     s    
zEditLocationRequest._bytesc                 C   s&   |  }|  }| }| |||dS )Nr   rL   )r,   r-   rO   rs   rt   r   r   r   r0     s    zEditLocationRequest.from_readerNrQ   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )EditPhotoRequestl   W\b rS   r   r   r;   photoc                 C   s   || _ || _dS rU   r   )r   r;   r   r   r   r   r     s    zEditPhotoRequest.__init__c                    s,   | || jI d H | _|| j| _d S r?   )rA   rB   r;   Zget_input_chat_photor   rC   r   r   r   rF     s    zEditPhotoRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr   )r   r;   r   )rI   r;   r   r!   r   r    r   r   r   r!     s    zEditPhotoRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   W.)r%   r;   r)   r   r    r   r   r   r)   "  s
    zEditPhotoRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   r[   )r,   r-   rO   Z_photor   r   r   r0   )  s    zEditPhotoRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )EditTitleRequestimVrS   r   r;   r`   c                 C   s   || _ || _dS rU   r   )r   r;   r`   r   r   r   r   4  s    zEditTitleRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   ;  s    zEditTitleRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r;   r`   )rI   r;   r   r!   r`   r    r   r   r   r!   >  s    zEditTitleRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s   mV)r%   r;   r)   r(   r`   r    r   r   r   r)   E  s
    
zEditTitleRequest._bytesc                 C   s   |  }| }| ||dS )Nr   rL   )r,   r-   rO   rr   r   r   r   r0   L  s    zEditTitleRequest.from_readerNrQ   r   r   r   r   r   0  s   r   c                   @   sV   e Zd ZdZdZddeee ee dddZdd	 Z	d
d Z
dd Zedd ZdS )ExportMessageLinkRequestl   -L l   D= Nr   r;   r   groupedthreadc                 C   s   || _ || _|| _|| _dS )zP
        :returns ExportedMessageLink: Instance of ExportedMessageLink.
        Nr   )r   r;   r   r   r   r   r   r   r   W  s    z!ExportMessageLinkRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   `  s    z ExportMessageLinkRequest.resolvec                 C   s.   dt | jtr| j n| j| j| j| jdS )Nr   )r   r;   r   r   r   )rI   r;   r   r!   r   r   r   r    r   r   r   r!   c  s    z ExportMessageLinkRequest.to_dictc              	   C   s^   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | j td| jfS )	Nr"   s   ?r#   Fr   r$   ri   rn   )r%   r&   r'   r   r   r;   r)   r   r    r   r   r   r)   l  s    >zExportMessageLinkRequest._bytesc                 C   s@   |  }t|d@ }t|d@ }| }|  }| ||||dS )Nr$   ri   r   r|   )r,   r-   r.   Z_grouped_threadrO   r   r   r   r   r0   t  s    z$ExportMessageLinkRequest.from_reader)NNr~   r   r   r   r   r   S  s   		r   c                
   @   s`   e Zd ZdZdZddeeeeed eed  ddd	Z	d
d Z
dd Zdd Zedd ZdS )GetAdminLogRequesti3ivQNr   r
   r   r;   qrz   min_idlimitevents_filteradminsc                 C   s.   || _ || _|| _|| _|| _|| _|| _dS )zQ
        :returns channels.AdminLogResults: Instance of AdminLogResults.
        Nr   )r   r;   r   rz   r   r   r   r   r   r   r   r     s    zGetAdminLogRequest.__init__c                    sV   | || jI d H | _| jrRg }| jD ] }||||I d H  q*|| _d S r?   )rA   rB   r;   r   r   r   r   rD   rE   Z_tmpr   r   r   r   rF     s    
zGetAdminLogRequest.resolvec              	   C   sh   dt | jtr| j n| j| j| j| j| jt | jtrB| j n| j| j	d krTg ndd | j	D dS )Nr   c                 S   s"   g | ]}t |tr| n|qS r   rI   r   r!   r   r   r   r   
<listcomp>  s     z.GetAdminLogRequest.to_dict.<locals>.<listcomp>)r   r;   r   rz   r   r   r   r   )
rI   r;   r   r!   r   rz   r   r   r   r   r    r   r   r   r!     s    zGetAdminLogRequest.to_dictc                 C   s   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | j | | j| jd ksj| jdkrndn| j | jd ks| jdkrdn.d dtd	t	| jd d
d | jD ftd| j
td| jtd	| jf	S )Nr"   s   3r#   Fr   r$   ri   r   rn   c                 s   s   | ]}|  V  qd S r?   r)   r   r   r   r   r     s     z,GetAdminLogRequest._bytes.<locals>.<genexpr><q)r%   r&   r'   r   r   r;   r)   r(   r   r   rz   r   r   r    r   r   r   r)     s    >
 FzGetAdminLogRequest._bytesc              	   C   s   |  }| }| }|d@ r*| }nd }|d@ rh|   g }t|  D ]}| }|| qNnd }| }	| }
|  }| |||	|
|||dS )Nr$   ri   r   )r*   rM   r+   r   r   	read_long)r,   r-   r.   rO   Z_qZ_events_filterZ_adminsr   r   r}   Z_min_id_limitr   r   r   r0     s"    
zGetAdminLogRequest.from_reader)NN)r1   r2   r3   r4   r5   r6   ru   r   r   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   (	r   c                   @   sP   e Zd ZdZdZdee ee ee dddZdd Zd	d
 Z	e
dd ZdS )GetAdminedPublicChannelsRequestl   6`q    K3 Nby_locationcheck_limitfor_personalc                 C   s   || _ || _|| _dS zP
        :returns messages.Chats: Instance of either Chats, ChatsSlice.
        Nr   )r   r   r   r   r   r   r   r     s    z(GetAdminedPublicChannelsRequest.__init__c                 C   s   d| j | j| jdS )Nr   )r   r   r   r   r   r    r   r   r   r!     s
    z'GetAdminedPublicChannelsRequest.to_dictc              	   C   sf   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | jd ksV| jdkrZdndB fS )	Nr"   s   6r#   Fr   r$   ri   rl   )r%   r&   r'   r   r   r   r    r   r   r   r)     s    Zz&GetAdminedPublicChannelsRequest._bytesc                 C   s:   |  }t|d@ }t|d@ }t|d@ }| |||dS )Nr$   ri   rl   r   )r*   rp   )r,   r-   r.   Z_by_locationZ_check_limitZ_for_personalr   r   r   r0     s
    z+GetAdminedPublicChannelsRequest.from_reader)NNN)r1   r2   r3   r4   r5   r   rp   r   r!   r)   r7   r0   r   r   r   r   r     s    r   c                   @   sL   e Zd ZdZdZded dddZdd	 Zd
d Zdd Z	e
dd ZdS ) GetChannelRecommendationsRequestiB%r   Nr   rT   c                 C   s
   || _ dS r   rT   rV   r   r   r   r     s    z)GetChannelRecommendationsRequest.__init__c                    s$   | j r ||| j I d H | _ d S r?   )r;   rA   rB   rC   r   r   r   rF     s    z(GetChannelRecommendationsRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   rW   rX   r    r   r   r   r!     s    z(GetChannelRecommendationsRequest.to_dictc                 C   sN   d dtd| jd ks | jdkr$dnd| jd ks<| jdkr@dn| j fS )Nr"   s   B%r#   Fr   r$   )r%   r&   r'   r;   r)   r    r   r   r   r)     s
    " z'GetChannelRecommendationsRequest._bytesc                 C   s(   |  }|d@ r| }nd }| |dS )Nr$   rT   )r*   rM   )r,   r-   r.   rO   r   r   r   r0   	  s
    
z,GetChannelRecommendationsRequest.from_reader)N)r1   r2   r3   r4   r5   r   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sJ   e Zd ZdZdZed dddZdd Zd	d
 Zdd Z	e
dd ZdS )GetChannelsRequestik
r   r   r   c                 C   s
   || _ dS r   r   )r   r   r   r   r   r     s    zGetChannelsRequest.__init__c                    s6   g }| j D ] }||||I d H  q
|| _ d S r?   )r   r   rA   rB   r   r   r   r   rF     s    
zGetChannelsRequest.resolvec                 C   s$   d| j d krg ndd | j D dS )Nr   c                 S   s"   g | ]}t |tr| n|qS r   r   r   r   r   r   r   (  s     z.GetChannelsRequest.to_dict.<locals>.<listcomp>)r   r   r   r    r   r   r   r!   %  s    zGetChannelsRequest.to_dictc              	   C   s2   d ddtdt| jd dd | jD fS )Nr"   s   k
r   rn   c                 s   s   | ]}|  V  qd S r?   r   r   r   r   r   r   .  s     z,GetChannelsRequest._bytes.<locals>.<genexpr>)r%   r&   r'   r   r   r    r   r   r   r)   +  s      zGetChannelsRequest._bytesc                 C   s:   |   g }t|  D ]}| }|| q| |dS )Nr   )r*   r   rM   r   )r,   r-   r   r   r   r   r   r   r0   1  s    zGetChannelsRequest.from_readerNr1   r2   r3   r4   r5   r   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )GetFullChannelRequesti	jsi	QZ"r   rT   c                 C   s
   || _ dS )zC
        :returns messages.ChatFull: Instance of ChatFull.
        NrT   rV   r   r   r   r   @  s    zGetFullChannelRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   F  s    zGetFullChannelRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   rW   rX   r    r   r   r   r!   I  s    zGetFullChannelRequest.to_dictc                 C   s   d d| j fS )Nr"   s   	jsrY   r    r   r   r   r)   O  s    zGetFullChannelRequest._bytesc                 C   s   |  }| |dS rZ   r[   r\   r   r   r   r0   U  s    z!GetFullChannelRequest.from_readerNr]   r   r   r   r   r   <  s   r   c                   @   s0   e Zd ZdZdZdd Zdd Zedd Zd	S )
GetGroupsForDiscussionRequestl   xSk r   c                 C   s   ddiS )Nr   r   r   r    r   r   r   r!   _  s     z%GetGroupsForDiscussionRequest.to_dictc                 C   s
   d dS )Nr"   )s   xr%   r    r   r   r   r)   d  s    z$GetGroupsForDiscussionRequest._bytesc                 C   s   |  S r?   r   r,   r-   r   r   r   r0   i  s    z)GetGroupsForDiscussionRequest.from_readerN	r1   r2   r3   r4   r5   r!   r)   r7   r0   r   r   r   r   r   [  s   r   c                   @   s0   e Zd ZdZdZdd Zdd Zedd Zd	S )
GetInactiveChannelsRequesti1l   W c                 C   s   ddiS )Nr   r   r   r    r   r   r   r!   r  s     z"GetInactiveChannelsRequest.to_dictc                 C   s
   d dS )Nr"   )s   1r   r    r   r   r   r)   w  s    z!GetInactiveChannelsRequest._bytesc                 C   s   |  S r?   r   r   r   r   r   r0   |  s    z&GetInactiveChannelsRequest.from_readerNr   r   r   r   r   r   n  s   r   c                   @   s>   e Zd ZdZdZedddZdd Zdd	 Ze	d
d Z
dS )GetLeftChannelsRequestl   l r   offsetc                 C   s
   || _ dS r   r   )r   r   r   r   r   r     s    zGetLeftChannelsRequest.__init__c                 C   s   d| j dS )Nr   )r   r   r   r    r   r   r   r!     s    zGetLeftChannelsRequest.to_dictc                 C   s   d dtd| jfS )Nr"   s   Arn   )r%   r&   r'   r   r    r   r   r   r)     s    zGetLeftChannelsRequest._bytesc                 C   s   |  }| |dS )Nr   )r*   )r,   r-   _offsetr   r   r   r0     s    z"GetLeftChannelsRequest.from_readerN)r1   r2   r3   r4   r5   ru   r   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )GetMessageAuthorRequestl    Y iwy-r   r   c                 C   s   || _ || _dS )zD
        :returns User: Instance of either UserEmpty, User.
        Nr   r   r   r   r   r     s    z GetMessageAuthorRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zGetMessageAuthorRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   r   r   r    r   r   r   r!     s    zGetMessageAuthorRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   r#   )r%   r;   r)   r&   r'   r   r    r   r   r   r)     s
    zGetMessageAuthorRequest._bytesc                 C   s    |  }|jdd}| ||dS )NF)signedr   rM   r*   )r,   r-   rO   r   r   r   r   r0     s    z#GetMessageAuthorRequest.from_readerNr1   r2   r3   r4   r5   ru   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sL   e Zd ZdZdZded dddZdd	 Zd
d Zdd Z	e
dd ZdS )GetMessagesRequestl   #[    ^h) r   r   r   c                 C   s   || _ || _dS z
        :returns messages.Messages: Instance of either Messages, MessagesSlice, ChannelMessages, MessagesNotModified.
        Nr   r   r   r   r   r     s    zGetMessagesRequest.__init__c                    sD   | || jI d H | _g }| jD ]}||| q$|| _d S r?   )rA   rB   r;   r   r   Zget_input_messager   r   r   r   rF     s
    
zGetMessagesRequest.resolvec                 C   s>   dt | jtr| j n| j| jd kr*g ndd | jD dS )Nr   c                 S   s"   g | ]}t |tr| n|qS r   r   r   r   r   r   r     s     z.GetMessagesRequest.to_dict.<locals>.<listcomp>r   r   r    r   r   r   r!     s    zGetMessagesRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   #r   rn   c                 s   s   | ]}|  V  qd S r?   r   r   r   r   r   r     s     z,GetMessagesRequest._bytes.<locals>.<genexpr>r   r    r   r   r   r)     s      zGetMessagesRequest._bytesc                 C   sD   |  }|  g }t| D ]}|  }|| q | ||dS r   r   r   r   r   r   r0     s    zGetMessagesRequest.from_readerNr   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )GetParticipantRequestl   lVA iXfr   r   r   c                 C   s   || _ || _dS )zW
        :returns channels.ChannelParticipant: Instance of ChannelParticipant.
        Nr   r   r   r   r   r     s    zGetParticipantRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   r   rC   r   r   r   rF     s    zGetParticipantRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr   r   r   r    r   r   r   r!     s    zGetParticipantRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   lr   r    r   r   r   r)     s
    zGetParticipantRequest._bytesc                 C   s   |  }|  }| ||dS r   r[   r   r   r   r   r0   
  s    z!GetParticipantRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sN   e Zd ZdZdZddeeedddZdd	 Zd
d Zdd Z	e
dd ZdS )GetParticipantsRequestiwl   dnL r   r   r;   filterr   r   hashc                 C   s"   || _ || _|| _|| _|| _dS )z
        :returns channels.ChannelParticipants: Instance of either ChannelParticipants, ChannelParticipantsNotModified.
        Nr   )r   r;   r   r   r   r   r   r   r   r     s
    zGetParticipantsRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zGetParticipantsRequest.resolvec                 C   sH   dt | jtr| j n| jt | jtr2| j n| j| j| j| jdS )Nr   )r   r;   r   r   r   r   )rI   r;   r   r!   r   r   r   r   r    r   r   r   r!   "  s    zGetParticipantsRequest.to_dictc                 C   s@   d d| j | j td| jtd| jtd| jfS )Nr"   s   wrn   r   )	r%   r;   r)   r   r&   r'   r   r   r   r    r   r   r   r)   ,  s    zGetParticipantsRequest._bytesc                 C   s:   |  }|  }| }| }| }| |||||dS )Nr   )rM   r*   r   )r,   r-   rO   Z_filterr   r   _hashr   r   r   r0   6  s    z"GetParticipantsRequest.from_readerNr   r   r   r   r   r     s   


r   c                   @   sN   e Zd ZdZdZddee dddZdd	 Zd
d Z	dd Z
edd ZdS )GetSendAsRequestl   ?$O i!8Nr   peerfor_paid_reactionsc                 C   s   || _ || _dS )zI
        :returns channels.SendAsPeers: Instance of SendAsPeers.
        Nr   )r   r   r   r   r   r   r   D  s    zGetSendAsRequest.__init__c                    s   | || jI d H | _d S r?   )r   rB   r   rC   r   r   r   rF   K  s    zGetSendAsRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r   r   )rI   r   r   r!   r   r    r   r   r   r!   N  s    zGetSendAsRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr"   s   ?r#   Fr   r$   )r%   r&   r'   r   r   r)   r    r   r   r   r)   U  s
    "zGetSendAsRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )Nr$   r   r|   )r,   r-   r.   Z_for_paid_reactionsZ_peerr   r   r   r0   \  s    zGetSendAsRequest.from_reader)Nr1   r2   r3   r4   r5   r   rp   r   rF   r!   r)   r7   r0   r   r   r   r   r   @  s   r   c                   @   sL   e Zd ZdZdZded dddZdd	 Zd
d Zdd Z	e
dd ZdS )InviteToChannelRequestl   T= i=r   r   r;   usersc                 C   s   || _ || _dS )zK
        :returns messages.InvitedUsers: Instance of InvitedUsers.
        Nr   )r   r;   r   r   r   r   r   i  s    zInviteToChannelRequest.__init__c                    sP   | || jI d H | _g }| jD ] }||||I d H  q$|| _d S r?   )rA   rB   r;   r   r   r   r   r   r   r   rF   p  s
    
zInviteToChannelRequest.resolvec                 C   s>   dt | jtr| j n| j| jd kr*g ndd | jD dS )Nr   c                 S   s"   g | ]}t |tr| n|qS r   r   r   r   r   r   r   |  s     z2InviteToChannelRequest.to_dict.<locals>.<listcomp>)r   r;   r   )rI   r;   r   r!   r   r    r   r   r   r!   x  s    zInviteToChannelRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   T=r   rn   c                 s   s   | ]}|  V  qd S r?   r   r   r   r   r   r     s     z0InviteToChannelRequest._bytes.<locals>.<genexpr>)r%   r;   r)   r&   r'   r   r   r    r   r   r   r)     s      zInviteToChannelRequest._bytesc                 C   sD   |  }|  g }t| D ]}|  }|| q | ||dS )Nr   r   )r,   r-   rO   Z_usersr   r   r   r   r   r0     s    z"InviteToChannelRequest.from_readerNr   r   r   r   r   r   e  s   r   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )JoinChannelRequesti$$rS   r   rT   c                 C   s
   || _ dS rU   rT   rV   r   r   r   r     s    zJoinChannelRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zJoinChannelRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   rW   rX   r    r   r   r   r!     s    zJoinChannelRequest.to_dictc                 C   s   d d| j fS )Nr"   s   $$rY   r    r   r   r   r)     s    zJoinChannelRequest._bytesc                 C   s   |  }| |dS rZ   r[   r\   r   r   r   r0     s    zJoinChannelRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sF   e Zd ZdZdZddddZdd Zd	d
 Zdd Ze	dd Z
dS )LeaveChannelRequestl   *mp rS   r   rT   c                 C   s
   || _ dS rU   rT   rV   r   r   r   r     s    zLeaveChannelRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zLeaveChannelRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   rW   rX   r    r   r   r   r!     s    zLeaveChannelRequest.to_dictc                 C   s   d d| j fS )Nr"   s   6rY   r    r   r   r   r)     s    zLeaveChannelRequest._bytesc                 C   s   |  }| |dS rZ   r[   r\   r   r   r   r0     s    zLeaveChannelRequest.from_readerNr]   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ReadHistoryRequestl   7I  r9   r   r;   rz   c                 C   s   || _ || _dS r=   r   )r   r;   rz   r   r   r   r     s    zReadHistoryRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zReadHistoryRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r;   rz   )rI   r;   r   r!   rz   r    r   r   r   r!     s    zReadHistoryRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   7Irn   )r%   r;   r)   r&   r'   rz   r    r   r   r   r)     s
    zReadHistoryRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r   )r,   r-   rO   r}   r   r   r   r0     s    zReadHistoryRequest.from_readerNr   r   r   r   r   r     s   r   c                   @   sL   e Zd ZdZdZdee dddZdd Zd	d
 Z	dd Z
edd ZdS )ReadMessageContentsRequestl   8\kU r9   r   r   c                 C   s   || _ || _dS r=   r   r   r   r   r   r     s    z#ReadMessageContentsRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z"ReadMessageContentsRequest.resolvec                 C   s<   dt | jtr| j n| j| jd kr*g n| jd d  dS )Nr   r   r   r    r   r   r   r!     s    z"ReadMessageContentsRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   8ܵr   rn   c                 s   s   | ]}t d |V  qdS r   r   r   r   r   r   r     s     z4ReadMessageContentsRequest._bytes.<locals>.<genexpr>r   r    r   r   r   r)     s      z!ReadMessageContentsRequest._bytesc                 C   sD   |  }|  g }t| D ]}| }|| q | ||dS r   r   r   r   r   r   r0     s    z&ReadMessageContentsRequest.from_readerNr   r   r   r   r   r     s   r   c                   @   sL   e Zd ZdZdZdee dddZdd Zd	d
 Z	dd Z
edd ZdS )ReorderUsernamesRequestl   mh r9   r   r;   orderc                 C   s   || _ || _dS r=   r   )r   r;   r   r   r   r   r     s    z ReorderUsernamesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   &  s    zReorderUsernamesRequest.resolvec                 C   s<   dt | jtr| j n| j| jd kr*g n| jd d  dS )Nr   )r   r;   r   )rI   r;   r   r!   r   r    r   r   r   r!   )  s    zReorderUsernamesRequest.to_dictc                    s>   d d j dtdt jd  fdd jD fS )Nr"   s   \r   rn   c                 3   s   | ]}  |V  qd S r?   )r(   r   r    r   r   r   4  s     z1ReorderUsernamesRequest._bytes.<locals>.<genexpr>)r%   r;   r)   r&   r'   r   r   r    r   r    r   r)   0  s      zReorderUsernamesRequest._bytesc                 C   sD   |  }|  g }t| D ]}| }|| q | ||dS )Nr   )rM   r*   r   r+   r   )r,   r-   rO   _orderr   r   r   r   r   r0   7  s    z#ReorderUsernamesRequest.from_readerN)r1   r2   r3   r4   r5   r   r6   r   rF   r!   r)   r7   r0   r   r   r   r   r     s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )"ReportAntiSpamFalsePositiveRequestl   &P r9   r   r;   msg_idc                 C   s   || _ || _dS r=   r   )r   r;   r   r   r   r   r   G  s    z+ReportAntiSpamFalsePositiveRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   N  s    z*ReportAntiSpamFalsePositiveRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r;   r   )rI   r;   r   r!   r   r    r   r   r   r!   Q  s    z*ReportAntiSpamFalsePositiveRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   Prn   )r%   r;   r)   r&   r'   r   r    r   r   r   r)   X  s
    z)ReportAntiSpamFalsePositiveRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r   )r,   r-   rO   Z_msg_idr   r   r   r0   _  s    z.ReportAntiSpamFalsePositiveRequest.from_readerNr   r   r   r   r   r   C  s   r   c                   @   sN   e Zd ZdZdZddee dddZdd	 Zd
d Z	dd Z
edd ZdS )ReportSpamRequestl   h r9   r   r   r;   r   r   c                 C   s   || _ || _|| _dS r=   r  )r   r;   r   r   r   r   r   r   j  s    zReportSpamRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S r?   r   rC   r   r   r   rF   r  s    zReportSpamRequest.resolvec                 C   sV   dt | jtr| j n| jt | jtr2| j n| j| jd krDg n| jd d  dS )Nr   )r   r;   r   r   )rI   r;   r   r!   r   r   r    r   r   r   r!   v  s
    zReportSpamRequest.to_dictc                 C   sB   d d| j | j dtdt| jd dd | jD fS )Nr"   s   Jr   rn   c                 s   s   | ]}t d |V  qdS r   r   r   r   r   r   r     s     z+ReportSpamRequest._bytes.<locals>.<genexpr>)r%   r;   r)   r   r&   r'   r   r   r    r   r   r   r)   ~  s      zReportSpamRequest._bytesc                 C   sN   |  }|  }|  g }t| D ]}| }|| q(| |||dS )Nr  r   )r,   r-   rO   r   r   r   r   r   r   r   r0     s    zReportSpamRequest.from_readerNr   r   r   r   r   r   f  s   r   c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS ) RestrictSponsoredMessagesRequestl   5 rS   r   r;   
restrictedc                 C   s   || _ || _dS rU   r  )r   r;   r  r   r   r   r     s    z)RestrictSponsoredMessagesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z(RestrictSponsoredMessagesRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr  )r   r;   r  )rI   r;   r   r!   r  r    r   r   r   r!     s    z(RestrictSponsoredMessagesRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s      ur   7y)r%   r;   r)   r  r    r   r   r   r)     s
    z'RestrictSponsoredMessagesRequest._bytesc                 C   s   |  }| }| ||dS )Nr  rM   tgread_bool)r,   r-   rO   Z_restrictedr   r   r   r0     s    z,RestrictSponsoredMessagesRequest.from_readerNr1   r2   r3   r4   r5   rp   r   rF   r!   r)   r7   r0   r   r   r   r   r    s   r  c                	   @   s`   e Zd ZdZdZdedeeee ee ee dddZdd	 Z	d
d Z
dd Zedd ZdS )SearchPostsRequestl   Mre r   Nr   offset_rateoffset_peer	offset_idr   hashtagr   allow_paid_starsc                 C   s.   || _ || _|| _|| _|| _|| _|| _dS r   r  )r   r  r  r  r   r  r   r  r   r   r   r     s    zSearchPostsRequest.__init__c                    s   | || jI d H | _d S r?   )r   rB   r  rC   r   r   r   rF     s    zSearchPostsRequest.resolvec              	   C   s:   d| j t| jtr| j n| j| j| j| j| j| j	dS )Nr
  )r   r  r  r  r   r  r   r  )
r  rI   r  r   r!   r  r   r  r   r  r    r   r   r   r!     s    zSearchPostsRequest.to_dictc                 C   s   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | jd ksV| jdkrZdndB | jd kst| jdkrxdn
| | j| jd ks| jdkrdn
| | jtd	| j| j	 td	| j
td	| j| jd ks| jdkrdntd
| jf	S )Nr"   s   Mr#   Fr   r$   ri   rl   rn   r   )r%   r&   r'   r  r   r  r(   r  r  r)   r  r   r    r   r   r   r)     s    Z""$zSearchPostsRequest._bytesc           
   	   C   s   |  }|d@ r| }nd }|d@ r0| }nd }|  }| }|  }|  }|d@ rf| }	nd }	| |||||||	dS )Nr$   ri   rl   r  )r*   r+   rM   r   )
r,   r-   r.   Z_hashtagr/   Z_offset_rateZ_offset_peerZ
_offset_idr   Z_allow_paid_starsr   r   r   r0     s    


zSearchPostsRequest.from_reader)NNN)r1   r2   r3   r4   r5   ru   r   r6   r   rF   r!   r)   r7   r0   r   r   r   r   r
    s   (r
  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )%SetBoostsToUnblockRestrictionsRequestl   sZ rS   r   r;   boostsc                 C   s   || _ || _dS rU   r  )r   r;   r  r   r   r   r     s    z.SetBoostsToUnblockRestrictionsRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z-SetBoostsToUnblockRestrictionsRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr  )r   r;   r  )rI   r;   r   r!   r  r    r   r   r   r!     s    z-SetBoostsToUnblockRestrictionsRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   9rn   )r%   r;   r)   r&   r'   r  r    r   r   r   r)     s
    z,SetBoostsToUnblockRestrictionsRequest._bytesc                 C   s   |  }| }| ||dS )Nr  r   )r,   r-   rO   Z_boostsr   r   r   r0     s    z1SetBoostsToUnblockRestrictionsRequest.from_readerNr   r   r   r   r   r    s   r  c                   @   sH   e Zd ZdZdZdddddZdd Zd	d
 Zdd Ze	dd Z
dS )SetDiscussionGroupRequesti+X@r9   r   rb   groupc                 C   s   || _ || _dS r=   r  )r   rb   r  r   r   r   r      s    z"SetDiscussionGroupRequest.__init__c                    s8   | || jI d H | _| || jI d H | _d S r?   )rA   rB   rb   r  rC   r   r   r   rF   '  s    z!SetDiscussionGroupRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr  )r   rb   r  )rI   rb   r   r!   r  r    r   r   r   r!   +  s    z!SetDiscussionGroupRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   +X@)r%   rb   r)   r  r    r   r   r   r)   2  s
    z SetDiscussionGroupRequest._bytesc                 C   s   |  }|  }| ||dS )Nr  r[   )r,   r-   rq   _groupr   r   r   r0   9  s    z%SetDiscussionGroupRequest.from_readerNr]   r   r   r   r   r    s   r  c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )SetEmojiStickersRequesti0<r9   r   r   r;   
stickersetc                 C   s   || _ || _dS r=   r  r   r;   r  r   r   r   r   D  s    z SetEmojiStickersRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   K  s    zSetEmojiStickersRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr  r   r;   r  rI   r;   r   r!   r  r    r   r   r   r!   N  s    zSetEmojiStickersRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   0<r%   r;   r)   r  r    r   r   r   r)   U  s
    zSetEmojiStickersRequest._bytesc                 C   s   |  }|  }| ||dS Nr  r[   r,   r-   rO   Z_stickersetr   r   r   r0   \  s    z#SetEmojiStickersRequest.from_readerNr]   r   r   r   r   r  @  s   r  c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )SetMainProfileTabRequesti5r9   r   r   r;   tabc                 C   s   || _ || _dS r=   r"  )r   r;   r#  r   r   r   r   g  s    z!SetMainProfileTabRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   n  s    z SetMainProfileTabRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr!  )r   r;   r#  )rI   r;   r   r!   r#  r    r   r   r   r!   q  s    z SetMainProfileTabRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   5)r%   r;   r)   r#  r    r   r   r   r)   x  s
    zSetMainProfileTabRequest._bytesc                 C   s   |  }|  }| ||dS )Nr"  r[   )r,   r-   rO   Z_tabr   r   r   r0     s    z$SetMainProfileTabRequest.from_readerNr]   r   r   r   r   r!  c  s   r!  c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )SetStickersRequestl   $U r9   r   r   r  c                 C   s   || _ || _dS r=   r  r  r   r   r   r     s    zSetStickersRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zSetStickersRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr$  r  r  r    r   r   r   r!     s    zSetStickersRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   r  r    r   r   r   r)     s
    zSetStickersRequest._bytesc                 C   s   |  }|  }| ||dS r  r[   r   r   r   r   r0     s    zSetStickersRequest.from_readerNr]   r   r   r   r   r$    s   r$  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleAntiSpamRequestihrS   r   r;   enabledc                 C   s   || _ || _dS rU   r&  r   r;   r'  r   r   r   r     s    zToggleAntiSpamRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zToggleAntiSpamRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr%  r   r;   r'  rI   r;   r   r!   r'  r    r   r   r   r!     s    zToggleAntiSpamRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   hr  r  r%   r;   r)   r'  r    r   r   r   r)     s
    zToggleAntiSpamRequest._bytesc                 C   s   |  }| }| ||dS Nr&  r  r,   r-   rO   _enabledr   r   r   r0     s    z!ToggleAntiSpamRequest.from_readerNr	  r   r   r   r   r%    s   r%  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleAutotranslationRequestirS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r     s    z%ToggleAutotranslationRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z$ToggleAutotranslationRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr/  r)  r*  r    r   r   r   r!     s    z$ToggleAutotranslationRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   r  r  r+  r    r   r   r   r)     s
    z#ToggleAutotranslationRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0     s    z(ToggleAutotranslationRequest.from_readerNr	  r   r   r   r   r/    s   r/  c                   @   sJ   e Zd ZdZdZdeedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleForumRequesti4W?rS   r   r;   r'  tabsc                 C   s   || _ || _|| _dS rU   r1  )r   r;   r'  r2  r   r   r   r     s    zToggleForumRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zToggleForumRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr0  )r   r;   r'  r2  )rI   r;   r   r!   r'  r2  r    r   r   r   r!     s
    zToggleForumRequest.to_dictc                 C   s,   d d| j | jrdnd| jr$dndfS )Nr"   s   4W?r  r  )r%   r;   r)   r'  r2  r    r   r   r   r)     s    zToggleForumRequest._bytesc                 C   s&   |  }| }| }| |||dS )Nr1  r  )r,   r-   rO   r.  Z_tabsr   r   r   r0     s    zToggleForumRequest.from_readerNr	  r   r   r   r   r0    s   r0  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleJoinRequestRequesti)LrS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r     s    z!ToggleJoinRequestRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   !  s    z ToggleJoinRequestRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr3  r)  r*  r    r   r   r   r!   $  s    z ToggleJoinRequestRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   )Lr  r  r+  r    r   r   r   r)   +  s
    zToggleJoinRequestRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0   2  s    z$ToggleJoinRequestRequest.from_readerNr	  r   r   r   r   r3    s   r3  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleJoinToSendRequestl   I rS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r   =  s    z ToggleJoinToSendRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   D  s    zToggleJoinToSendRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr4  r)  r*  r    r   r   r   r!   G  s    zToggleJoinToSendRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   r  r  r+  r    r   r   r   r)   N  s
    zToggleJoinToSendRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0   U  s    z#ToggleJoinToSendRequest.from_readerNr	  r   r   r   r   r4  9  s   r4  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleParticipantsHiddenRequestiTxnjrS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r   `  s    z(ToggleParticipantsHiddenRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   g  s    z'ToggleParticipantsHiddenRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr5  r)  r*  r    r   r   r   r!   j  s    z'ToggleParticipantsHiddenRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   Txnjr  r  r+  r    r   r   r   r)   q  s
    z&ToggleParticipantsHiddenRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0   x  s    z+ToggleParticipantsHiddenRequest.from_readerNr	  r   r   r   r   r5  \  s   r5  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )TogglePreHistoryHiddenRequestl   L9wU rS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r     s    z&TogglePreHistoryHiddenRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z%TogglePreHistoryHiddenRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr6  r)  r*  r    r   r   r   r!     s    z%TogglePreHistoryHiddenRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   Lr  r  r+  r    r   r   r   r)     s
    z$TogglePreHistoryHiddenRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0     s    z)TogglePreHistoryHiddenRequest.from_readerNr	  r   r   r   r   r6    s   r6  c                   @   sT   e Zd ZdZdZddee ee dddZdd	 Zd
d Z	dd Z
edd ZdS )ToggleSignaturesRequestiTArS   Nr   r;   signatures_enabledprofiles_enabledc                 C   s   || _ || _|| _dS rU   r8  )r   r;   r9  r:  r   r   r   r     s    z ToggleSignaturesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zToggleSignaturesRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr7  )r   r;   r9  r:  )rI   r;   r   r!   r9  r:  r    r   r   r   r!     s
    zToggleSignaturesRequest.to_dictc              	   C   sR   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | j fS )Nr"   s   TAr#   Fr   r$   ri   )r%   r&   r'   r9  r:  r;   r)   r    r   r   r   r)     s
    >zToggleSignaturesRequest._bytesc                 C   s6   |  }t|d@ }t|d@ }| }| |||dS )Nr$   ri   r8  r|   )r,   r-   r.   Z_signatures_enabledZ_profiles_enabledrO   r   r   r   r0     s
    z#ToggleSignaturesRequest.from_reader)NNr   r   r   r   r   r7    s   r7  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )ToggleSlowModeRequestl   [ rS   r   r;   secondsc                 C   s   || _ || _dS rU   r<  )r   r;   r=  r   r   r   r     s    zToggleSlowModeRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zToggleSlowModeRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr;  )r   r;   r=  )rI   r;   r   r!   r=  r    r   r   r   r!     s    zToggleSlowModeRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   rn   )r%   r;   r)   r&   r'   r=  r    r   r   r   r)     s
    zToggleSlowModeRequest._bytesc                 C   s   |  }| }| ||dS )Nr<  r   )r,   r-   rO   Z_secondsr   r   r   r0     s    z!ToggleSlowModeRequest.from_readerNr   r   r   r   r   r;    s   r;  c                   @   sJ   e Zd ZdZdZdeedddZdd Zd	d
 Z	dd Z
edd ZdS )ToggleUsernameRequestiAPr9   r   r;   r<   activec                 C   s   || _ || _|| _dS r=   r?  )r   r;   r<   r@  r   r   r   r     s    zToggleUsernameRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zToggleUsernameRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr>  )r   r;   r<   r@  )rI   r;   r   r!   r<   r@  r    r   r   r   r!     s
    zToggleUsernameRequest.to_dictc                 C   s*   d d| j | | j| jr"dndfS )Nr"   s   APr  r  )r%   r;   r)   r(   r<   r@  r    r   r   r   r)     s    
zToggleUsernameRequest._bytesc                 C   s&   |  }| }| }| |||dS )Nr?  )rM   r+   r  )r,   r-   rO   rP   _activer   r   r   r0     s    z!ToggleUsernameRequest.from_readerN)r1   r2   r3   r4   r5   r6   rp   r   rF   r!   r)   r7   r0   r   r   r   r   r>    s   r>  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS ) ToggleViewForumAsMessagesRequestl   ;q. rS   r   r&  c                 C   s   || _ || _dS rU   r&  r(  r   r   r   r     s    z)ToggleViewForumAsMessagesRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z(ToggleViewForumAsMessagesRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )NrB  r)  r*  r    r   r   r   r!   "  s    z(ToggleViewForumAsMessagesRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   8r  r  r+  r    r   r   r   r)   )  s
    z'ToggleViewForumAsMessagesRequest._bytesc                 C   s   |  }| }| ||dS r,  r  r-  r   r   r   r0   0  s    z,ToggleViewForumAsMessagesRequest.from_readerNr	  r   r   r   r   rB    s   rB  c                   @   sZ   e Zd ZdZdZddee ee ee dddZdd	 Z	d
d Z
dd Zedd ZdS )UpdateColorRequestl   q6T1 rS   Nr   r;   for_profilecolorbackground_emoji_idc                 C   s   || _ || _|| _|| _dS rU   rD  )r   r;   rE  rF  rG  r   r   r   r   ;  s    zUpdateColorRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   D  s    zUpdateColorRequest.resolvec                 C   s.   dt | jtr| j n| j| j| j| jdS )NrC  )r   r;   rE  rF  rG  )rI   r;   r   r!   rE  rF  rG  r    r   r   r   r!   G  s    zUpdateColorRequest.to_dictc              
   C   s   d dtd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | jd ksV| jdkrZdndB | j | jd ks|| jdkrdntd	| j| jd ks| jdkrdntd
| jfS )Nr"   s   q6r#   Fr   ri   rl   r$   rn   r   )r%   r&   r'   rE  rF  rG  r;   r)   r    r   r   r   r)   P  s    Z$$zUpdateColorRequest._bytesc                 C   sX   |  }t|d@ }| }|d@ r.|  }nd }|d@ rD| }nd }| ||||dS )Nri   rl   r$   rD  r*   rp   rM   r   )r,   r-   r.   Z_for_profilerO   Z_colorZ_background_emoji_idr   r   r   r0   Y  s    

zUpdateColorRequest.from_reader)NNN)r1   r2   r3   r4   r5   r   rp   ru   r   rF   r!   r)   r7   r0   r   r   r   r   rC  7  s   "			rC  c                   @   sH   e Zd ZdZdZdddddZdd	 Zd
d Zdd Ze	dd Z
dS )UpdateEmojiStatusRequestl   fa rS   r   r   r;   emoji_statusc                 C   s   || _ || _dS rU   rJ  )r   r;   rK  r   r   r   r   n  s    z!UpdateEmojiStatusRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF   u  s    z UpdateEmojiStatusRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )NrI  )r   r;   rK  )rI   r;   r   r!   rK  r    r   r   r   r!   x  s    z UpdateEmojiStatusRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   )r%   r;   r)   rK  r    r   r   r   r)     s
    zUpdateEmojiStatusRequest._bytesc                 C   s   |  }|  }| ||dS )NrJ  r[   )r,   r-   rO   Z_emoji_statusr   r   r   r0     s    z$UpdateEmojiStatusRequest.from_readerNr]   r   r   r   r   rI  j  s   rI  c                   @   sP   e Zd ZdZdZddeee dddZdd	 Z	d
d Z
dd Zedd ZdS )UpdatePaidMessagesPriceRequesti{2KrS   Nr   r;   send_paid_messages_starsbroadcast_messages_allowedc                 C   s   || _ || _|| _dS rU   rM  )r   r;   rN  rO  r   r   r   r     s    z'UpdatePaidMessagesPriceRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    z&UpdatePaidMessagesPriceRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )NrL  )r   r;   rN  rO  )rI   r;   r   r!   rN  rO  r    r   r   r   r!     s
    z&UpdatePaidMessagesPriceRequest.to_dictc              	   C   sB   d dtd| jd ks | jdkr$dnd| j td| jfS )Nr"   s   {2Kr#   Fr   r$   r   )r%   r&   r'   rO  r;   r)   rN  r    r   r   r   r)     s    "z%UpdatePaidMessagesPriceRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )Nr$   rM  rH  )r,   r-   r.   Z_broadcast_messages_allowedrO   Z_send_paid_messages_starsr   r   r   r0     s
    z*UpdatePaidMessagesPriceRequest.from_reader)Nr~   r   r   r   r   rL    s   rL  c                   @   sH   e Zd ZdZdZdedddZdd Zd	d
 Zdd Z	e
dd ZdS )UpdateUsernameRequesti޳5r9   r   r:   c                 C   s   || _ || _dS r=   r:   r>   r   r   r   r     s    zUpdateUsernameRequest.__init__c                    s   | || jI d H | _d S r?   r@   rC   r   r   r   rF     s    zUpdateUsernameRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )NrP  rG   rH   r    r   r   r   r!     s    zUpdateUsernameRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s   ޳5rJ   r    r   r   r   r)     s
    
zUpdateUsernameRequest._bytesc                 C   s   |  }| }| ||dS rK   rL   rN   r   r   r   r0     s    z!UpdateUsernameRequest.from_readerNrQ   r   r   r   r   rP    s   rP  )V__doc__Ztl.tlobjectr   r   typingr   r   r   r   osr&   r	   Ztl.typesr
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r8   rR   r^   rv   rw   rx   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  r
  r  r  r  r!  r$  r%  r/  r0  r3  r4  r5  r6  r7  r;  r>  rB  rC  rI  rL  rP  r   r   r   r   <module>   s   @"#E)($,(('$#,K$&(#-$/%-#((#-#C#$#####'####(#'#3#)