U
    ht                     @   s  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r|ddl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Z*G d5d6 d6eZ+G d7d8 d8eZ,G d9d: d:eZ-G d;d< d<eZ.G d=d> d>eZ/G d?d@ d@eZ0G dAdB dBeZ1G dCdD dDeZ2G dEdF dFeZ3G dGdH dHeZ4G dIdJ dJeZ5G dKdL dLeZ6G dMdN dNeZ7G dOdP dPeZ8G dQdR dReZ9dS )SzBFile generated by TLObjects' generator. All changes will be ERASED   )TLObject)	TLRequest    )OptionalListUnionTYPE_CHECKINGN)datetime)TypeDataJSONTypeInputFileTypeInputGroupCallTypeInputPeerTypeInputPhoneCallTypeInputUserTypePhoneCallDiscardReasonTypePhoneCallProtocolc                   @   sB   e Zd ZdZdZdeddddZdd	 Zd
d Ze	dd Z
dS )AcceptCallRequesti;   O~) r   r   peerg_bprotocolc                 C   s   || _ || _|| _dS B
        :returns phone.PhoneCall: Instance of PhoneCall.
        Nr   )selfr   r   r    r   ?/tmp/pip-unpacked-wheel-t5wbaijj/telethon/tl/functions/phone.py__init__   s    zAcceptCallRequest.__init__c                 C   s@   dt | jtr| j n| j| jt | jtr6| j n| jdS )Nr   )_r   r   r   )
isinstancer   r   to_dictr   r   r   r   r   r   r       s
    zAcceptCallRequest.to_dictc                 C   s&   d d| j | | j| j fS )N    s   ;)joinr   _bytesserialize_bytesr   r   r!   r   r   r   r$   !   s    
zAcceptCallRequest._bytesc                 C   s&   |  }| }|  }| |||dS )Nr   tgread_objecttgread_bytes)clsreader_peerZ_g_b	_protocolr   r   r   from_reader)   s    zAcceptCallRequest.from_readerN__name__
__module____qualname__CONSTRUCTOR_IDSUBCLASS_OF_IDbytesr   r    r$   classmethodr-   r   r   r   r   r      s   r   c                   @   sX   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edd ZdS )CheckGroupCallRequestl   wy9k iq&Pr   callsourcesc                 C   s   || _ || _dS )zF
        :returns Vector<int>: This type has no constructors.
        Nr7   )r   r8   r9   r   r   r   r   5   s    zCheckGroupCallRequest.__init__c                    s   | | j| _d S Nget_input_group_callr8   r   clientutilsr   r   r   resolve<   s    zCheckGroupCallRequest.resolvec                 C   s<   dt | jtr| j n| j| jd kr*g n| jd d  dS )Nr6   )r   r8   r9   )r   r8   r   r    r9   r!   r   r   r   r    ?   s    zCheckGroupCallRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   w   ĵ<ic                 s   s   | ]}t d |V  qdS rB   Nstructpack.0xr   r   r   	<genexpr>J   s     z/CheckGroupCallRequest._bytes.<locals>.<genexpr>)r#   r8   r$   rE   rF   lenr9   r!   r   r   r   r$   F   s      zCheckGroupCallRequest._bytesc                 C   sD   |  }|  g }t| D ]}| }|| q | ||dS )Nr7   r'   read_intrangeappend)r)   r*   _call_sourcesr   _xr   r   r   r-   M   s    z!CheckGroupCallRequest.from_readerc                    s"        fddt   D S )Nc                    s   g | ]}   qS r   rM   )rH   r   r*   r   r   
<listcomp>[   s     z5CheckGroupCallRequest.read_result.<locals>.<listcomp>)rM   rN   rT   r   rT   r   read_resultX   s    z!CheckGroupCallRequest.read_resultN)r/   r0   r1   r2   r3   r   intr   r@   r    r$   r5   r-   staticmethodrV   r   r   r   r   r6   1   s   

r6   c                   @   sD   e Zd ZdZdZdeeddddZdd	 Zd
d Z	e
dd ZdS )ConfirmCallRequesti".r   r   r   r   g_akey_fingerprintr   c                 C   s   || _ || _|| _|| _dS r   rZ   )r   r   r[   r\   r   r   r   r   r   b   s    zConfirmCallRequest.__init__c                 C   sD   dt | jtr| j n| j| j| jt | jtr:| j n| jdS )NrY   )r   r   r[   r\   r   )r   r   r   r    r[   r\   r   r!   r   r   r   r    k   s    zConfirmCallRequest.to_dictc              	   C   s2   d d| j | | jtd| j| j fS )Nr"   s   ".<q)	r#   r   r$   r%   r[   rE   rF   r\   r   r!   r   r   r   r$   t   s    
zConfirmCallRequest._bytesc                 C   s0   |  }| }| }|  }| ||||dS )NrZ   )r'   r(   	read_long)r)   r*   r+   Z_g_aZ_key_fingerprintr,   r   r   r   r-   }   s
    zConfirmCallRequest.from_readerN)r/   r0   r1   r2   r3   r4   rW   r   r    r$   r5   r-   r   r   r   r   rY   ^   s   			rY   c                	   @   sd   e Zd ZdZdZdee ee ee eee ee ed dddZ	dd	 Z
d
d Zedd ZdS )CreateConferenceCallRequestiD}   * Nr
   mutedvideo_stoppedr#   	random_id
public_keyblockparamsc                 C   sL   || _ || _|| _|dk	r|ntjtdddd| _|| _|| _	|| _
dS 
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N   bigTsigned)rb   rc   r#   rW   
from_bytesosurandomrd   re   rf   rg   )r   rb   rc   r#   rd   re   rf   rg   r   r   r   r      s    $z$CreateConferenceCallRequest.__init__c              
   C   s:   d| j | j| j| j| j| jt| jtr0| j	 n| jdS )Nr_   )r   rb   rc   r#   rd   re   rf   rg   )
rb   rc   r#   rd   re   rf   r   rg   r   r    r!   r   r   r   r       s    z#CreateConferenceCallRequest.to_dictc              
   C   s  | j s| j d k	r@| js | jd k	r@| js0| jd k	r@| js| jd k	s| j d ksT| j dkr| jd ksh| jdkr| jd ks|| jdkr| jd ks| jdkstdd dtd| jd ks| jdkrd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rdnd	B | jd ks.| jdkr2dnd	B | jd ksN| jdkrRdnd	B td
| j	| jd ks|| jdkrdn| jj
dddd| jd ks| jdkrdn
| | j| jd ks| jdkrdn| j fS )NFz[join, public_key, block, params parameters must all be False-y (like None) or all me True-yr"   s   D}<Ir      rj      rB       littleTrl   )r#   re   rf   rg   AssertionErrorrE   rF   rb   rc   rd   to_bytesr%   r$   r!   r   r   r   r$      s    ,&$z"CreateConferenceCallRequest._bytesc           
   	   C   s   |  }t|d@ }t|d@ }t|d@ }|  }|d@ rJ|jdd}nd }|d@ r`| }nd }|d@ rv| }	nd }	| |||||||	dS )Nrr   rj   rs      bitsra   )rM   boolread_large_intr(   r'   )
r)   r*   flags_muted_video_stoppedZ_join
_random_id_public_key_block_paramsr   r   r   r-      s    

z'CreateConferenceCallRequest.from_reader)NNNNNNN)r/   r0   r1   r2   r3   r   r{   rW   r4   r   r    r$   r5   r-   r   r   r   r   r_      s   4r_   c                   @   s\   e Zd ZdZdZdd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 )CreateGroupCallRequestiHr`   Nr   r   rtmp_streamrd   titleschedule_datec                 C   s@   || _ || _|dk	r|ntjtdddd| _|| _|| _dS rh   )	r   r   rW   rn   ro   rp   rd   r   r   )r   r   r   rd   r   r   r   r   r   r      s
    $zCreateGroupCallRequest.__init__c                    s   | || jI d H | _d S r:   get_input_peerget_input_entityr   r=   r   r   r   r@      s    zCreateGroupCallRequest.resolvec                 C   s2   dt | jtr| j n| j| j| j| j| jdS )Nr   )r   r   r   rd   r   r   )r   r   r   r    r   rd   r   r   r!   r   r   r   r       s    zCreateGroupCallRequest.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 td	| j| jd ks| jdkrdn
| 	| j| jd ks| jdkrdn
| 
| jfS )
Nr"   s   Hrq   Fr   rj   rr      rB   )r#   rE   rF   r   r   r   r   r$   rd   r%   Zserialize_datetimer!   r   r   r   r$      s    Z""zCreateGroupCallRequest._bytesc                 C   sb   |  }t|d@ }| }|  }|d@ r6| }nd }|d@ rL| }nd }| |||||dS )Nrj   rr   r   r   )rM   r{   r'   tgread_stringZtgread_date)r)   r*   r}   Z_rtmp_streamr+   r   _titleZ_schedule_dater   r   r   r-      s    

z"CreateGroupCallRequest.from_reader)NNNN)r/   r0   r1   r2   r3   r   r{   rW   strr	   r   r@   r    r$   r5   r-   r   r   r   r   r      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 )"DeclineConferenceCallInviteRequestiqG<r`   msg_idc                 C   s
   || _ dS ri   Nr   )r   r   r   r   r   r      s    z+DeclineConferenceCallInviteRequest.__init__c                 C   s   d| j dS )Nr   )r   r   r   r!   r   r   r   r      s    z*DeclineConferenceCallInviteRequest.to_dictc                 C   s   d dtd| jfS )Nr"   s   qG<rB   )r#   rE   rF   r   r!   r   r   r   r$     s    z)DeclineConferenceCallInviteRequest._bytesc                 C   s   |  }| |dS )Nr   rS   )r)   r*   Z_msg_idr   r   r   r-     s    z.DeclineConferenceCallInviteRequest.from_readerN)r/   r0   r1   r2   r3   rW   r   r    r$   r5   r-   r   r   r   r   r      s   r   c                   @   s\   e Zd ZdZdZdd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 )'DeleteConferenceCallParticipantsRequestl   %L r`   Nr   r8   idsrf   	only_leftkickc                 C   s"   || _ || _|| _|| _|| _dS r   r   )r   r8   r   rf   r   r   r   r   r   r     s
    z0DeleteConferenceCallParticipantsRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@   %  s    z/DeleteConferenceCallParticipantsRequest.resolvec                 C   sH   dt | jtr| j n| j| jd kr*g n| jd d  | j| j| jdS )Nr   )r   r8   r   rf   r   r   )r   r8   r   r    r   rf   r   r   r!   r   r   r   r    (  s    z/DeleteConferenceCallParticipantsRequest.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td	t| jd d
d | jD | 	| j
fS )Nr"   s   %rq   Fr   rr   r   rA   rB   c                 s   s   | ]}t d |V  qdS )r]   NrD   rG   r   r   r   rJ   7  s     zADeleteConferenceCallParticipantsRequest._bytes.<locals>.<genexpr>)r#   rE   rF   r   r   r8   r$   rK   r   r%   rf   r!   r   r   r   r$   2  s    >  
z.DeleteConferenceCallParticipantsRequest._bytesc           
      C   sr   |  }t|d@ }t|d@ }| }|   g }t|  D ]}| }|| q@| }	| |||	||dS )Nrr   r   r   )rM   r{   r'   rN   r^   rO   r(   )
r)   r*   r}   Z
_only_leftZ_kickrP   _idsr   rR   r   r   r   r   r-   ;  s    z3DeleteConferenceCallParticipantsRequest.from_reader)NN)r/   r0   r1   r2   r3   r   rW   r4   r   r{   r   r@   r    r$   r5   r-   r   r   r   r   r     s   $

	r   c                   @   sL   e Zd ZdZdZddedeee dddZd	d
 Z	dd Z
edd ZdS )DiscardCallRequestl   Ae r`   Nr   r   r   durationreasonconnection_idvideoc                 C   s"   || _ || _|| _|| _|| _dS r   r   )r   r   r   r   r   r   r   r   r   r   P  s
    zDiscardCallRequest.__init__c                 C   sH   dt | jtr| j n| j| jt | jtr6| j n| j| j| jdS )Nr   )r   r   r   r   r   r   )r   r   r   r    r   r   r   r   r!   r   r   r   r    Z  s    zDiscardCallRequest.to_dictc                 C   sV   d dtd| jd ks | jdkr$dnd| j td| j| j td| jfS )	Nr"   s   ˲rq   Fr   rr   rB   r]   )	r#   rE   rF   r   r   r$   r   r   r   r!   r   r   r   r$   d  s    "zDiscardCallRequest._bytesc                 C   sF   |  }t|d@ }| }|  }| }| }| |||||dS )Nrr   r   )rM   r{   r'   r^   )r)   r*   r}   _videor+   Z	_durationZ_reasonZ_connection_idr   r   r   r-   n  s    zDiscardCallRequest.from_reader)N)r/   r0   r1   r2   r3   rW   r   r{   r   r    r$   r5   r-   r   r   r   r   r   L  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 )DiscardGroupCallRequesti5qwzr`   r   r8   c                 C   s
   || _ dS r   r   r   r8   r   r   r   r   ~  s    z DiscardGroupCallRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    zDiscardGroupCallRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r   r8   r   r8   r   r    r!   r   r   r   r      s    zDiscardGroupCallRequest.to_dictc                 C   s   d d| j fS )Nr"   s   5qwzr#   r8   r$   r!   r   r   r   r$     s    zDiscardGroupCallRequest._bytesc                 C   s   |  }| |dS Nr   r'   r)   r*   rP   r   r   r   r-     s    z#DiscardGroupCallRequest.from_readerNr/   r0   r1   r2   r3   r   r@   r    r$   r5   r-   r   r   r   r   r   z  s   r   c                
   @   sn   e Zd ZdZdZdddee ee 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 )EditGroupCallParticipantRequestl   :NJ r`   Nr   r   r8   participantrb   volume
raise_handrc   video_pausedpresentation_pausedc	           	      C   s4   || _ || _|| _|| _|| _|| _|| _|| _dS r   r   )	r   r8   r   rb   r   r   rc   r   r   r   r   r   r     s    z(EditGroupCallParticipantRequest.__init__c                    s,   | | j| _||| jI d H | _d S r:   )r<   r8   r   r   r   r=   r   r   r   r@     s    z'EditGroupCallParticipantRequest.resolvec              
   C   sT   dt | jtr| j n| jt | jtr2| j n| j| j| j| j| j| j	| j
d	S )Nr   )	r   r8   r   rb   r   r   rc   r   r   )r   r8   r   r    r   rb   r   r   rc   r   r   r!   r   r   r   r      s    z'EditGroupCallParticipantRequest.to_dictc                 C   sH  d dtd| jd krdnd| jd ks0| jdkr4dndB | jd krFdndB | jd krXdnd	B | jd krjdnd
B | jd kr|dndB | j	
 | j
 | jd krdn| jrdnd| jd ks| jdkrdntd| j| jd krdn| jrdnd| jd krdn| jrdnd| jd krdn| jr"dnd| jd kr4dn| jr@dndf
S )Nr"   s   :'rq   r   rr   Fr   rj   rs      rt      ur   7yrB   )r#   rE   rF   rb   r   r   rc   r   r   r8   r$   r   r!   r   r   r   r$     s    |$z&EditGroupCallParticipantRequest._bytesc              
   C   s   |  }| }| }|d@ r*| }nd }|d@ r@|  }nd }|d@ rV| }nd }|d@ rl| }nd }|d@ r| }	nd }	|d@ r| }
nd }
| |||||||	|
dS )Nrr   r   rj   rs   r   rt   r   )rM   r'   tgread_bool)r)   r*   r}   rP   Z_participantr~   Z_volumeZ_raise_handr   Z_video_pausedZ_presentation_pausedr   r   r   r-     s,    





z+EditGroupCallParticipantRequest.from_reader)NNNNNN)r/   r0   r1   r2   r3   r   r{   rW   r   r@   r    r$   r5   r-   r   r   r   r   r     s   6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 )EditGroupCallTitleRequesti
r`   r   r8   r   c                 C   s   || _ || _dS r   r   )r   r8   r   r   r   r   r     s    z"EditGroupCallTitleRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z!EditGroupCallTitleRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r8   r   )r   r8   r   r    r   r!   r   r   r   r      s    z!EditGroupCallTitleRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s   
)r#   r8   r$   r%   r   r!   r   r   r   r$     s
    
z EditGroupCallTitleRequest._bytesc                 C   s   |  }| }| ||dS )Nr   )r'   r   )r)   r*   rP   r   r   r   r   r-     s    z%EditGroupCallTitleRequest.from_readerN)r/   r0   r1   r2   r3   r   r   r@   r    r$   r5   r-   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 )ExportGroupCallInviteRequestl   dTM i;;Nr   r8   can_self_unmutec                 C   s   || _ || _dS )z^
        :returns phone.ExportedGroupCallInvite: Instance of ExportedGroupCallInvite.
        Nr   )r   r8   r   r   r   r   r     s    z%ExportGroupCallInviteRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z$ExportGroupCallInviteRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r8   r   )r   r8   r   r    r   r!   r   r   r   r      s    z$ExportGroupCallInviteRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr"   s   drq   Fr   rr   )r#   rE   rF   r   r8   r$   r!   r   r   r   r$   "  s
    "z#ExportGroupCallInviteRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )Nrr   r   rM   r{   r'   )r)   r*   r}   Z_can_self_unmuterP   r   r   r   r-   )  s    z(ExportGroupCallInviteRequest.from_reader)Nr/   r0   r1   r2   r3   r   r{   r   r@   r    r$   r5   r-   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 )
GetCallConfigRequestiEUl   RZ c                 C   s   ddiS )Nr   r   r   r!   r   r   r   r    6  s     zGetCallConfigRequest.to_dictc                 C   s
   d dS )Nr"   )s   EU)r#   r!   r   r   r   r$   ;  s    zGetCallConfigRequest._bytesc                 C   s   |  S r:   r   )r)   r*   r   r   r   r-   @  s    z GetCallConfigRequest.from_readerN)	r/   r0   r1   r2   r3   r    r$   r5   r-   r   r   r   r   r   2  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 )GetGroupCallRequestiEiA0r   r8   limitc                 C   s   || _ || _dS )zB
        :returns phone.GroupCall: Instance of GroupCall.
        Nr   )r   r8   r   r   r   r   r   I  s    zGetGroupCallRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@   P  s    zGetGroupCallRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r8   r   )r   r8   r   r    r   r!   r   r   r   r    S  s    zGetGroupCallRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   ErB   )r#   r8   r$   rE   rF   r   r!   r   r   r   r$   Z  s
    zGetGroupCallRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r'   rM   )r)   r*   rP   _limitr   r   r   r-   a  s    zGetGroupCallRequest.from_readerNr/   r0   r1   r2   r3   rW   r   r@   r    r$   r5   r-   r   r   r   r   r   E  s   r   c                   @   sL   e Zd ZdZdZdeeedddZdd Zd	d
 Zdd Z	e
dd ZdS )GetGroupCallChainBlocksRequestl   ?] r`   r   r8   sub_chain_idoffsetr   c                 C   s   || _ || _|| _|| _dS r   r   )r   r8   r   r   r   r   r   r   r   l  s    z'GetGroupCallChainBlocksRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@   u  s    z&GetGroupCallChainBlocksRequest.resolvec                 C   s.   dt | jtr| j n| j| j| j| jdS )Nr   )r   r8   r   r   r   )r   r8   r   r    r   r   r   r!   r   r   r   r    x  s    z&GetGroupCallChainBlocksRequest.to_dictc              
   C   s8   d d| j td| jtd| jtd| jfS )Nr"   s   rB   )r#   r8   r$   rE   rF   r   r   r   r!   r   r   r   r$     s    z%GetGroupCallChainBlocksRequest._bytesc                 C   s0   |  }| }| }| }| ||||dS )Nr   r   )r)   r*   rP   Z_sub_chain_id_offsetr   r   r   r   r-     s
    z*GetGroupCallChainBlocksRequest.from_readerNr   r   r   r   r   r   h  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 )GetGroupCallJoinAsRequestl   :!^ l   pni r   r   c                 C   s
   || _ dS )zF
        :returns phone.JoinAsPeers: Instance of JoinAsPeers.
        Nr   r   r   r   r   r   r     s    z"GetGroupCallJoinAsRequest.__init__c                    s   | || jI d H | _d S r:   r   r=   r   r   r   r@     s    z!GetGroupCallJoinAsRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r   r   r   r   r   r    r!   r   r   r   r      s    z!GetGroupCallJoinAsRequest.to_dictc                 C   s   d d| j fS )Nr"   s   :!|r#   r   r$   r!   r   r   r   r$     s    z GetGroupCallJoinAsRequest._bytesc                 C   s   |  }| |dS Nr   r   r)   r*   r+   r   r   r   r-     s    z%GetGroupCallJoinAsRequest.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 )!GetGroupCallStreamChannelsRequesti@l   E" r   r   c                 C   s
   || _ dS )z^
        :returns phone.GroupCallStreamChannels: Instance of GroupCallStreamChannels.
        Nr   r   r   r   r   r     s    z*GetGroupCallStreamChannelsRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z)GetGroupCallStreamChannelsRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r   r   r!   r   r   r   r      s    z)GetGroupCallStreamChannelsRequest.to_dictc                 C   s   d d| j fS )Nr"   s   @r   r!   r   r   r   r$     s    z(GetGroupCallStreamChannelsRequest._bytesc                 C   s   |  }| |dS r   r   r   r   r   r   r-     s    z-GetGroupCallStreamChannelsRequest.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 ) GetGroupCallStreamRtmpUrlRequestl   +g= l   # r   r   revokec                 C   s   || _ || _dS )z\
        :returns phone.GroupCallStreamRtmpUrl: Instance of GroupCallStreamRtmpUrl.
        Nr   )r   r   r   r   r   r   r     s    z)GetGroupCallStreamRtmpUrlRequest.__init__c                    s   | || jI d H | _d S r:   r   r=   r   r   r   r@     s    z(GetGroupCallStreamRtmpUrlRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r   r   )r   r   r   r    r   r!   r   r   r   r      s    z(GetGroupCallStreamRtmpUrlRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   r   r   )r#   r   r$   r   r!   r   r   r   r$     s
    z'GetGroupCallStreamRtmpUrlRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r'   r   )r)   r*   r+   Z_revoker   r   r   r-     s    z,GetGroupCallStreamRtmpUrlRequest.from_readerNr/   r0   r1   r2   r3   r{   r   r@   r    r$   r5   r-   r   r   r   r   r     s   r   c                   @   sV   e Zd ZdZdZded ee eedddZdd	 Z	d
d Z
dd Zedd ZdS )GetGroupParticipantsRequestl   X
 irr   r   r8   r   r9   r   r   c                 C   s"   || _ || _|| _|| _|| _dS )zR
        :returns phone.GroupParticipants: Instance of GroupParticipants.
        Nr   )r   r8   r   r9   r   r   r   r   r   r     s
    z$GetGroupParticipantsRequest.__init__c                    sD   | | j| _g }| jD ] }||||I d H  q|| _d S r:   )r<   r8   r   rO   r   r   r   r>   r?   Z_tmprR   r   r   r   r@     s
    
z#GetGroupParticipantsRequest.resolvec                 C   s`   dt | jtr| j n| j| jd kr*g ndd | jD | jd krFg n| jd d  | j| jdS )Nr   c                 S   s"   g | ]}t |tr| n|qS r   r   r   r    rG   r   r   r   rU     s     z7GetGroupParticipantsRequest.to_dict.<locals>.<listcomp>)r   r8   r   r9   r   r   )r   r8   r   r    r   r9   r   r   r!   r   r   r   r    
  s    z#GetGroupParticipantsRequest.to_dictc                 C   sv   d d| j dtdt| jd dd | jD dtdt| jd dd | jD | | j	td| j
f
S )Nr"   s   XrA   rB   c                 s   s   | ]}|  V  qd S r:   r$   rG   r   r   r   rJ     s     z5GetGroupParticipantsRequest._bytes.<locals>.<genexpr>c                 s   s   | ]}t d |V  qdS rC   rD   rG   r   r   r   rJ     s     )r#   r8   r$   rE   rF   rK   r   r9   r%   r   r   r!   r   r   r   r$     s        
z"GetGroupParticipantsRequest._bytesc           	      C   s   |  }|  g }t| D ]}|  }|| q |  g }t| D ]}| }|| qP| }| }| |||||dS )Nr   )r'   rM   rN   rO   r   )	r)   r*   rP   r   r   rR   rQ   r   r   r   r   r   r-     s    z'GetGroupParticipantsRequest.from_readerN)r/   r0   r1   r2   r3   r   rW   r   r   r@   r    r$   r5   r-   r   r   r   r   r     s   


r   c                   @   sP   e Zd ZdZdZdddee dddZd	d
 Zdd Z	dd Z
edd ZdS )&InviteConferenceCallParticipantRequestl   &y r`   Nr   r   r8   user_idr   c                 C   s   || _ || _|| _dS r   r   )r   r8   r   r   r   r   r   r   6  s    z/InviteConferenceCallParticipantRequest.__init__c                    s,   | | j| _||| jI d H | _d S r:   )r<   r8   get_input_userr   r   r=   r   r   r   r@   >  s    z.InviteConferenceCallParticipantRequest.resolvec                 C   s@   dt | jtr| j n| jt | jtr2| j n| j| jdS )Nr   )r   r8   r   r   )r   r8   r   r    r   r   r!   r   r   r   r    B  s
    z.InviteConferenceCallParticipantRequest.to_dictc                 C   s>   d dtd| jd ks | jdkr$dnd| j | j fS )Nr"   s   &rq   Fr   rr   )r#   rE   rF   r   r8   r$   r   r!   r   r   r   r$   J  s    "z-InviteConferenceCallParticipantRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )Nrr   r   r   )r)   r*   r}   r   rP   _user_idr   r   r   r-   R  s
    z2InviteConferenceCallParticipantRequest.from_reader)Nr   r   r   r   r   r   2  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 )InviteToGroupCallRequesti`19{r`   r   r   r8   usersc                 C   s   || _ || _dS r   r   )r   r8   r   r   r   r   r   `  s    z!InviteToGroupCallRequest.__init__c                    sD   | | j| _g }| jD ] }||||I d H  q|| _d S r:   )r<   r8   r   rO   r   r   r   r   r   r   r@   g  s
    
z InviteToGroupCallRequest.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   rG   r   r   r   rU   s  s     z4InviteToGroupCallRequest.to_dict.<locals>.<listcomp>)r   r8   r   )r   r8   r   r    r   r!   r   r   r   r    o  s    z InviteToGroupCallRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr"   s   `19{rA   rB   c                 s   s   | ]}|  V  qd S r:   r   rG   r   r   r   rJ   z  s     z2InviteToGroupCallRequest._bytes.<locals>.<genexpr>)r#   r8   r$   rE   rF   rK   r   r!   r   r   r   r$   v  s      zInviteToGroupCallRequest._bytesc                 C   sD   |  }|  g }t| D ]}|  }|| q | ||dS )Nr   rL   )r)   r*   rP   Z_usersr   rR   r   r   r   r-   }  s    z$InviteToGroupCallRequest.from_readerN)r/   r0   r1   r2   r3   r   r   r@   r    r$   r5   r-   r   r   r   r   r   \  s   r   c                
   @   sj   e Zd ZdZdZddddee 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 )JoinGroupCallRequestl   W0j r`   Nr   r   r
   r8   join_asrg   rb   rc   invite_hashre   rf   c	           	      C   s4   || _ || _|| _|| _|| _|| _|| _|| _dS r   r   )	r   r8   r   rg   rb   rc   r   re   rf   r   r   r   r     s    zJoinGroupCallRequest.__init__c                    s,   | | j| _||| jI d H | _d S r:   )r<   r8   r   r   r   r=   r   r   r   r@     s    zJoinGroupCallRequest.resolvec              
   C   sj   dt | jtr| j n| jt | jtr2| j n| jt | jtrL| j n| j| j| j| j| j	| j
d	S )Nr   )	r   r8   r   rg   rb   rc   r   re   rf   )r   r8   r   r    r   rg   rb   rc   r   re   rf   r!   r   r   r   r      s    zJoinGroupCallRequest.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	
 | j
 | jd ks| jdkrdn
| | j| j d ks6| j dkr:dn| j jdddd| jd ksb| jdkrfdn
| | j| j
 fS )NFzMpublic_key, block parameters must all be False-y (like None) or all me True-yr"   s   W0rq   r   rr   rj   r   rs   rt   ru   Trl   )re   rf   rv   r#   rE   rF   rb   rc   r   r8   r$   r   r%   rw   rg   r!   r   r   r   r$     s    P&,&zJoinGroupCallRequest._bytesc              
   C   s   |  }t|d@ }t|d@ }| }| }|d@ rB| }nd }|d@ r\|jdd}nd }|d@ rr| }	nd }	| }
| |||
|||||	dS )Nrr   rj   r   rs   rx   ry   r   )rM   r{   r'   r   r|   r(   )r)   r*   r}   r~   r   rP   _join_asZ_invite_hashr   r   r   r   r   r   r-     s     

z JoinGroupCallRequest.from_reader)NNNNN)r/   r0   r1   r2   r3   r   r{   r   rW   r4   r   r@   r    r$   r5   r-   r   r   r   r   r     s   2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 ) JoinGroupCallPresentationRequestl   k r`   r   r
   r8   rg   c                 C   s   || _ || _dS r   r   )r   r8   rg   r   r   r   r     s    z)JoinGroupCallPresentationRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z(JoinGroupCallPresentationRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nr   )r   r8   rg   )r   r8   r   r    rg   r!   r   r   r   r      s    z(JoinGroupCallPresentationRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   k)r#   r8   r$   rg   r!   r   r   r   r$     s
    z'JoinGroupCallPresentationRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   r   )r)   r*   rP   r   r   r   r   r-     s    z,JoinGroupCallPresentationRequest.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 )LeaveGroupCallRequestiwPr`   r   r8   sourcec                 C   s   || _ || _dS r   r   )r   r8   r   r   r   r   r     s    zLeaveGroupCallRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    zLeaveGroupCallRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r   r8   r   )r   r8   r   r    r   r!   r   r   r   r      s    zLeaveGroupCallRequest.to_dictc                 C   s    d d| j td| jfS )Nr"   s   wPrB   )r#   r8   r$   rE   rF   r   r!   r   r   r   r$     s
    zLeaveGroupCallRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r   )r)   r*   rP   _sourcer   r   r   r-     s    z!LeaveGroupCallRequest.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 )!LeaveGroupCallPresentationRequestiDPr`   r   r   c                 C   s
   || _ dS r   r   r   r   r   r   r     s    z*LeaveGroupCallPresentationRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@      s    z)LeaveGroupCallPresentationRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r   r   r!   r   r   r   r    #  s    z)LeaveGroupCallPresentationRequest.to_dictc                 C   s   d d| j fS )Nr"   s   DPr   r!   r   r   r   r$   )  s    z(LeaveGroupCallPresentationRequest._bytesc                 C   s   |  }| |dS r   r   r   r   r   r   r-   /  s    z-LeaveGroupCallPresentationRequest.from_readerNr   r   r   r   r   r     s   r   c                   @   s>   e Zd ZdZdZddddZdd Zd	d
 Zedd Z	dS )ReceivedCallRequestiaO   gk r   r   c                 C   s
   || _ dS z?
        :returns Bool: This type has no constructors.
        Nr   r   r   r   r   r   9  s    zReceivedCallRequest.__init__c                 C   s"   dt | jtr| j n| jdS )Nr   r   r   r!   r   r   r   r    ?  s    zReceivedCallRequest.to_dictc                 C   s   d d| j fS )Nr"   s   aOr   r!   r   r   r   r$   E  s    zReceivedCallRequest._bytesc                 C   s   |  }| |dS r   r   r   r   r   r   r-   K  s    zReceivedCallRequest.from_readerN
r/   r0   r1   r2   r3   r   r    r$   r5   r-   r   r   r   r   r   5  s   r   c                   @   sT   e Zd ZdZdZddedee edddZ	d	d
 Z
dd Zdd Zedd ZdS )RequestCallRequestiBr   Nr   r   r   g_a_hashr   r   rd   c                 C   s@   || _ || _|| _|| _|dk	r$|ntjtdddd| _dS )r   Nrj   rk   Trl   )	r   r   r   r   rW   rn   ro   rp   rd   )r   r   r   r   r   rd   r   r   r   r   U  s
    zRequestCallRequest.__init__c                    s   | || jI d H | _d S r:   )r   r   r   r=   r   r   r   r@   _  s    zRequestCallRequest.resolvec                 C   sH   dt | jtr| j n| j| jt | jtr6| j n| j| j| jdS )Nr   )r   r   r   r   r   rd   )r   r   r   r    r   r   r   rd   r!   r   r   r   r    b  s    zRequestCallRequest.to_dictc              	   C   sT   d dtd| jd ks | jdkr$dnd| j td| j| | j| j	 fS )Nr"   s   Brq   Fr   rr   rB   )
r#   rE   rF   r   r   r$   rd   r%   r   r   r!   r   r   r   r$   l  s    "
zRequestCallRequest._bytesc                 C   sF   |  }t|d@ }| }|  }| }| }| |||||dS )Nrr   r   )rM   r{   r'   r(   )r)   r*   r}   r   r   r   Z	_g_a_hashr,   r   r   r   r-   v  s    zRequestCallRequest.from_reader)NN)r/   r0   r1   r2   r3   r4   r   r{   rW   r   r@   r    r$   r5   r-   r   r   r   r   r   Q  s   


r   c                   @   s@   e Zd ZdZdZdddddZdd	 Zd
d Zedd Z	dS )SaveCallDebugRequesti~z'r   r   r
   r   debugc                 C   s   || _ || _dS r   r   )r   r   r   r   r   r   r     s    zSaveCallDebugRequest.__init__c                 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    r   r!   r   r   r   r      s    zSaveCallDebugRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   ~z')r#   r   r$   r   r!   r   r   r   r$     s
    zSaveCallDebugRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   r   )r)   r*   r+   _debugr   r   r   r-     s    z SaveCallDebugRequest.from_readerNr   r   r   r   r   r     s   r   c                   @   s@   e Zd ZdZdZdddddZdd	 Zd
d Zedd Z	dS )SaveCallLogRequesti$Ar   r   r   r   filec                 C   s   || _ || _dS r   r   )r   r   r   r   r   r   r     s    zSaveCallLogRequest.__init__c                 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    r   r!   r   r   r   r      s    zSaveCallLogRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   $A)r#   r   r$   r   r!   r   r   r   r$     s
    zSaveCallLogRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   r   )r)   r*   r+   _filer   r   r   r-     s    zSaveCallLogRequest.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 )!SaveDefaultGroupCallJoinAsRequesti^Wr   r   r   r   c                 C   s   || _ || _dS r   r   )r   r   r   r   r   r   r     s    z*SaveDefaultGroupCallJoinAsRequest.__init__c                    s8   | || jI d H | _| || jI d H | _d S r:   )r   r   r   r   r=   r   r   r   r@     s    z)SaveDefaultGroupCallJoinAsRequest.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    r   r!   r   r   r   r      s    z)SaveDefaultGroupCallJoinAsRequest.to_dictc                 C   s   d d| j | j fS )Nr"   s   ^W)r#   r   r$   r   r!   r   r   r   r$     s
    z(SaveDefaultGroupCallJoinAsRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   r   )r)   r*   r+   r   r   r   r   r-     s    z-SaveDefaultGroupCallJoinAsRequest.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 )"SendConferenceCallBroadcastRequestl     r`   r   r8   rf   c                 C   s   || _ || _dS r   r  )r   r8   rf   r   r   r   r     s    z+SendConferenceCallBroadcastRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z*SendConferenceCallBroadcastRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr  )r   r8   rf   )r   r8   r   r    rf   r!   r   r   r   r      s    z*SendConferenceCallBroadcastRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s    p)r#   r8   r$   r%   rf   r!   r   r   r   r$     s
    
z)SendConferenceCallBroadcastRequest._bytesc                 C   s   |  }| }| ||dS )Nr  r&   )r)   r*   rP   r   r   r   r   r-     s    z.SendConferenceCallBroadcastRequest.from_readerN)r/   r0   r1   r2   r3   r4   r   r@   r    r$   r5   r-   r   r   r   r   r    s   r  c                   @   s@   e Zd ZdZdZdedddZdd Zd	d
 Ze	dd Z
dS )SendSignalingDataRequestl   ~ r   r   r   datac                 C   s   || _ || _dS r   r  )r   r   r  r   r   r   r     s    z!SendSignalingDataRequest.__init__c                 C   s&   dt | jtr| j n| j| jdS )Nr  )r   r   r  )r   r   r   r    r  r!   r   r   r   r      s    z SendSignalingDataRequest.to_dictc                 C   s   d d| j | | jfS )Nr"   s   z)r#   r   r$   r%   r  r!   r   r   r   r$     s
    
zSendSignalingDataRequest._bytesc                 C   s   |  }| }| ||dS )Nr  r&   )r)   r*   r+   _datar   r   r   r-   "  s    z$SendSignalingDataRequest.from_readerNr.   r   r   r   r   r  	  s   r  c                   @   sJ   e Zd ZdZdZddeeee dddZ	dd	 Z
d
d Zedd ZdS )SetCallRatingRequesti'Yr`   Nr   r   ratingcommentuser_initiativec                 C   s   || _ || _|| _|| _dS r   r  )r   r   r	  r
  r  r   r   r   r   -  s    zSetCallRatingRequest.__init__c                 C   s.   dt | jtr| j n| j| j| j| jdS )Nr  )r   r   r	  r
  r  )r   r   r   r    r	  r
  r  r!   r   r   r   r    6  s    zSetCallRatingRequest.to_dictc              	   C   sL   d dtd| jd ks | jdkr$dnd| j td| j| | jfS )Nr"   s   'Yrq   Fr   rr   rB   )	r#   rE   rF   r  r   r$   r	  r%   r
  r!   r   r   r   r$   ?  s    "
zSetCallRatingRequest._bytesc                 C   s<   |  }t|d@ }| }|  }| }| ||||dS )Nrr   r  )rM   r{   r'   r   )r)   r*   r}   Z_user_initiativer+   Z_rating_commentr   r   r   r-   H  s    z SetCallRatingRequest.from_reader)N)r/   r0   r1   r2   r3   rW   r   r   r{   r   r    r$   r5   r-   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 )StartScheduledGroupCallRequestiBVr`   r   r   c                 C   s
   || _ dS r   r   r   r   r   r   r   W  s    z'StartScheduledGroupCallRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@   ]  s    z&StartScheduledGroupCallRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr  r   r   r!   r   r   r   r    `  s    z&StartScheduledGroupCallRequest.to_dictc                 C   s   d d| j fS )Nr"   s   BVr   r!   r   r   r   r$   f  s    z%StartScheduledGroupCallRequest._bytesc                 C   s   |  }| |dS r   r   r   r   r   r   r-   l  s    z*StartScheduledGroupCallRequest.from_readerNr   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e ee dddZdd	 Z	d
d Z
dd Zedd ZdS )ToggleGroupCallRecordRequestl   GQb r`   Nr   r8   startr   r   video_portraitc                 C   s"   || _ || _|| _|| _|| _dS r   r  )r   r8   r  r   r   r  r   r   r   r   v  s
    z%ToggleGroupCallRecordRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z$ToggleGroupCallRecordRequest.resolvec                 C   s2   dt | jtr| j n| j| j| j| j| jdS )Nr  )r   r8   r  r   r   r  )r   r8   r   r    r  r   r   r  r!   r   r   r   r      s    z$ToggleGroupCallRecordRequest.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rdndB | j	 | jd ks| jdkrdn
| 
| j| jd krdn| jrd
ndfS )NFzQvideo, video_portrait parameters must all be False-y (like None) or all me True-yr"   s   (rq   r   rr   rj   r   r   r   )r   r  rv   r#   rE   rF   r  r   r8   r$   r%   r!   r   r   r   r$     s    Pl"z#ToggleGroupCallRecordRequest._bytesc                 C   sf   |  }t|d@ }t|d@ }| }|d@ r:| }nd }|d@ rP| }nd }| |||||dS )Nrr   rj   r   r  )rM   r{   r'   r   r   )r)   r*   r}   _startr   rP   r   Z_video_portraitr   r   r   r-     s    

z(ToggleGroupCallRecordRequest.from_reader)NNNN)r/   r0   r1   r2   r3   r   r{   r   r   r@   r    r$   r5   r-   r   r   r   r   r  r  s   (


r  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 )ToggleGroupCallSettingsRequesti=tr`   Nr   r8   reset_invite_hash
join_mutedc                 C   s   || _ || _|| _dS r   r  )r   r8   r  r  r   r   r   r     s    z'ToggleGroupCallSettingsRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z&ToggleGroupCallSettingsRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr  )r   r8   r  r  )r   r8   r   r    r  r  r!   r   r   r   r      s
    z&ToggleGroupCallSettingsRequest.to_dictc              	   C   sb   d dtd| jd ks | jdkr$dnd| jd kr4dndB | j | jd krPdn| jrZdnd	fS )
Nr"   s   =trq   Fr   r   rr   r   r   )r#   rE   rF   r  r  r8   r$   r!   r   r   r   r$     s    4z%ToggleGroupCallSettingsRequest._bytesc                 C   s@   |  }t|d@ }| }|d@ r.| }nd }| |||dS )Nr   rr   r  )rM   r{   r'   r   )r)   r*   r}   Z_reset_invite_hashrP   Z_join_mutedr   r   r   r-     s    
z*ToggleGroupCallSettingsRequest.from_reader)NNr   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 )'ToggleGroupCallStartSubscriptionRequesti4!r`   r   r8   
subscribedc                 C   s   || _ || _dS r   r  )r   r8   r  r   r   r   r     s    z0ToggleGroupCallStartSubscriptionRequest.__init__c                    s   | | j| _d S r:   r;   r=   r   r   r   r@     s    z/ToggleGroupCallStartSubscriptionRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr  )r   r8   r  )r   r8   r   r    r  r!   r   r   r   r      s    z/ToggleGroupCallStartSubscriptionRequest.to_dictc                 C   s    d d| j | jrdndfS )Nr"   s   4!r   r   )r#   r8   r$   r  r!   r   r   r   r$     s
    z.ToggleGroupCallStartSubscriptionRequest._bytesc                 C   s   |  }| }| ||dS )Nr  r   )r)   r*   rP   Z_subscribedr   r   r   r-     s    z3ToggleGroupCallStartSubscriptionRequest.from_readerNr   r   r   r   r   r    s   r  ):__doc__Ztl.tlobjectr   r   typingr   r   r   r   ro   rE   r	   Ztl.typesr
   r   r   r   r   r   r   r   r   r6   rY   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   <module>   sZ   ($-(>75.Q#%#+#>*-G##1  $# *7,