U
    h                     @   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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 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Z0G d;d< d<eZ1G d=d> d>eZ2G d?d@ d@eZ3G dAdB dBeZ4G dCdD dDeZ5G dEdF dFeZ6G dGdH dHeZ7G dIdJ dJeZ8G dKdL dLeZ9G dMdN dNeZ:G dOdP dPeZ;G dQdR dReZ<G dSdT dTeZ=G dUdV dVeZ>G dWdX dXeZ?G dYdZ dZeZ@G d[d\ d\eZAG d]d^ d^eZBG d_d` d`eZCG dadb dbeZDG dcdd ddeZEG dedf dfeZFG dgdh dheZGdS )izBFile generated by TLObjects' generator. All changes will be ERASED   )TLObject)	TLRequest    )OptionalListUnionTYPE_CHECKINGN)datetime)TypeDataJSONTypeInputCheckPasswordSRPTypeInputInvoiceTypeInputMediaTypeInputPaymentCredentialsTypeInputPeerTypeInputSavedStarGiftTypeInputStarsTransactionTypeInputStorePaymentPurposeTypeInputUserTypePaymentRequestedInfoc                   @   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 )ApplyGiftCodeRequestl   Thm    * slugc                 C   s
   || _ dS z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        Nr   selfr    r   B/tmp/pip-unpacked-wheel-c81u5j2r/telethon/tl/functions/payments.py__init__   s    zApplyGiftCodeRequest.__init__c                 C   s   d| j dS )Nr   _r   r   r   r   r   r   to_dict   s    zApplyGiftCodeRequest.to_dictc                 C   s   d d| | jfS )N    s   Thjoinserialize_bytesr   r!   r   r   r   _bytes   s    
zApplyGiftCodeRequest._bytesc                 C   s   |  }| |dS Nr   tgread_stringclsreaderZ_slugr   r   r   from_reader#   s    z ApplyGiftCodeRequest.from_readerN__name__
__module____qualname__CONSTRUCTOR_IDSUBCLASS_OF_IDstrr   r"   r'   classmethodr.   r   r   r   r   r      s   r   c                   @   s@   e Zd ZdZdZeddddZdd Zd	d
 Ze	dd Z
dS ) AssignAppStoreTransactionRequestl   }t r   r   receiptpurposec                 C   s   || _ || _dS r   r8   r   r9   r:   r   r   r   r   -   s    z)AssignAppStoreTransactionRequest.__init__c                 C   s&   d| j t| jtr| j n| jdS )Nr7   r    r9   r:   )r9   
isinstancer:   r   r"   r!   r   r   r   r"   4   s    z(AssignAppStoreTransactionRequest.to_dictc                 C   s   d d| | j| j fS )Nr#   s   }t)r%   r&   r9   r:   r'   r!   r   r   r   r'   ;   s
    
z'AssignAppStoreTransactionRequest._bytesc                 C   s   |  }| }| ||dS Nr8   )Ztgread_bytestgread_objectr,   r-   Z_receipt_purposer   r   r   r.   B   s    z,AssignAppStoreTransactionRequest.from_readerN)r0   r1   r2   r3   r4   bytesr   r"   r'   r6   r.   r   r   r   r   r7   )   s   r7   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 )"AssignPlayMarketTransactionRequestl   P? r   r
   r   r8   c                 C   s   || _ || _dS r   r8   r;   r   r   r   r   M   s    z+AssignPlayMarketTransactionRequest.__init__c                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )NrC   r<   )r=   r9   r   r"   r:   r!   r   r   r   r"   T   s    z*AssignPlayMarketTransactionRequest.to_dictc                 C   s   d d| j | j fS )Nr#   s   P)r%   r9   r'   r:   r!   r   r   r   r'   [   s
    z)AssignPlayMarketTransactionRequest._bytesc                 C   s   |  }|  }| ||dS r>   r?   r@   r   r   r   r.   b   s    z.AssignPlayMarketTransactionRequest.from_readerN
r0   r1   r2   r3   r4   r   r"   r'   r6   r.   r   r   r   r   rC   I   s   rC   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 )!BotCancelStarsSubscriptionRequesti"m   gk Nr   user_id	charge_idrestorec                 C   s   || _ || _|| _dS z?
        :returns Bool: This type has no constructors.
        NrH   )r   rI   rJ   rK   r   r   r   r   m   s    z*BotCancelStarsSubscriptionRequest.__init__c                    s   | || jI d H | _d S Nget_input_userget_input_entityrI   r   clientutilsr   r   r   resolveu   s    z)BotCancelStarsSubscriptionRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )NrF   )r    rI   rJ   rK   )r=   rI   r   r"   rJ   rK   r!   r   r   r   r"   x   s
    z)BotCancelStarsSubscriptionRequest.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   "m<IFr      )r%   structpackrK   rI   r'   r&   rJ   r!   r   r   r   r'      s    "
z(BotCancelStarsSubscriptionRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )NrV   rH   read_intboolr?   r*   )r,   r-   flagsZ_restore_user_id
_charge_idr   r   r   r.      s
    z-BotCancelStarsSubscriptionRequest.from_reader)Nr0   r1   r2   r3   r4   r5   r   r[   r   rT   r"   r'   r6   r.   r   r   r   r   rF   i   s   rF   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 )CanPurchaseStoreRequesti^OrG   r   r:   c                 C   s
   || _ dS rL   ra   )r   r:   r   r   r   r      s    z CanPurchaseStoreRequest.__init__c                 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CanPurchaseStoreRequest.to_dictc                 C   s   d d| j fS )Nr#   s   ^O)r%   r:   r'   r!   r   r   r   r'      s    zCanPurchaseStoreRequest._bytesc                 C   s   |  }| |dS )Nra   rD   )r,   r-   rA   r   r   r   r.      s    z#CanPurchaseStoreRequest.from_readerNrE   r   r   r   r   r`      s   r`   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 )ChangeStarsSubscriptionRequestl   x rG   Nr   peersubscription_idcanceledc                 C   s   || _ || _|| _dS rL   rc   )r   rd   re   rf   r   r   r   r      s    z'ChangeStarsSubscriptionRequest.__init__c                    s   | || jI d H | _d S rM   get_input_peerrP   rd   rQ   r   r   r   rT      s    z&ChangeStarsSubscriptionRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nrb   )r    rd   re   rf   )r=   rd   r   r"   re   rf   r!   r   r   r   r"      s
    z&ChangeStarsSubscriptionRequest.to_dictc                 C   sP   d dtd| jd krdnd| j | | j| jd kr>dn| jrHdndfS )Nr#   s   xwrU   r   rV   s   urs   7y)r%   rW   rX   rf   rd   r'   r&   re   r!   r   r   r   r'      s    
z%ChangeStarsSubscriptionRequest._bytesc                 C   s<   |  }| }| }|d@ r*| }nd }| |||dS )NrV   rc   )rZ   r?   r*   Ztgread_bool)r,   r-   r\   _peer_subscription_idZ	_canceledr   r   r   r.      s    
z*ChangeStarsSubscriptionRequest.from_reader)Nr_   r   r   r   r   rb      s   	rb   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 )CheckGiftCodeRequestl   4 i)[r   c                 C   s
   || _ dS )zQ
        :returns payments.CheckedGiftCode: Instance of CheckedGiftCode.
        Nr   r   r   r   r   r      s    zCheckGiftCodeRequest.__init__c                 C   s   d| j dS )Nrk   r   r   r!   r   r   r   r"      s    zCheckGiftCodeRequest.to_dictc                 C   s   d d| | jfS )Nr#   s   Qr$   r!   r   r   r   r'      s    
zCheckGiftCodeRequest._bytesc                 C   s   |  }| |dS r(   r)   r+   r   r   r   r.      s    z CheckGiftCodeRequest.from_readerNr/   r   r   r   r   rk      s   rk   c                   @   sJ   e Zd ZdZdZdee ee dddZdd Zd	d
 Z	e
dd ZdS )ClearSavedInfoRequestl   pz0 rG   Ncredentialsinfoc                 C   s   || _ || _dS rL   rm   )r   rn   ro   r   r   r   r      s    zClearSavedInfoRequest.__init__c                 C   s   d| j | jdS )Nrl   )r    rn   ro   rm   r!   r   r   r   r"     s    zClearSavedInfoRequest.to_dictc              	   C   sJ   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 fS )Nr#   s   p=rU   Fr   rV      )r%   rW   rX   rn   ro   r!   r   r   r   r'   	  s    >zClearSavedInfoRequest._bytesc                 C   s,   |  }t|d@ }t|d@ }| ||dS )NrV   rp   rm   )rZ   r[   )r,   r-   r\   _credentials_infor   r   r   r.     s    z!ClearSavedInfoRequest.from_reader)NNr0   r1   r2   r3   r4   r   r[   r   r"   r'   r6   r.   r   r   r   r   rl      s   rl   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 )ConnectStarRefBotRequesti4~g^#r   r   rd   botc                 C   s   || _ || _dS z[
        :returns payments.ConnectedStarRefBots: Instance of ConnectedStarRefBots.
        Nrv   r   rd   rw   r   r   r   r     s    z!ConnectStarRefBotRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S rM   rh   rP   rd   rO   rw   rQ   r   r   r   rT   #  s    z ConnectStarRefBotRequest.resolvec                 C   s<   dt | jtr| j n| jt | jtr2| j n| jdS )Nrt   r    rd   rw   r=   rd   r   r"   rw   r!   r   r   r   r"   '  s    z ConnectStarRefBotRequest.to_dictc                 C   s   d d| j | j fS )Nr#   s   4~r%   rd   r'   rw   r!   r   r   r   r'   .  s
    zConnectStarRefBotRequest._bytesc                 C   s   |  }|  }| ||dS Nrv   rD   r,   r-   ri   Z_botr   r   r   r.   5  s    z$ConnectStarRefBotRequest.from_readerNr0   r1   r2   r3   r4   r   rT   r"   r'   r6   r.   r   r   r   r   rt     s   rt   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 )ConvertStarGiftRequestiktrG   r   stargiftc                 C   s
   || _ dS rL   r   r   r   r   r   r   r   @  s    zConvertStarGiftRequest.__init__c                 C   s"   dt | jtr| j n| jdS )Nr   r    r   )r=   r   r   r"   r!   r   r   r   r"   F  s    zConvertStarGiftRequest.to_dictc                 C   s   d d| j fS )Nr#   s   kt)r%   r   r'   r!   r   r   r   r'   L  s    zConvertStarGiftRequest._bytesc                 C   s   |  }| |dS Nr   rD   )r,   r-   	_stargiftr   r   r   r.   R  s    z"ConvertStarGiftRequest.from_readerNrE   r   r   r   r   r   <  s   r   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 )EditConnectedStarRefBotRequestl   $I ru   Nr   rd   linkrevokedc                 C   s   || _ || _|| _dS rx   r   )r   rd   r   r   r   r   r   r   \  s    z'EditConnectedStarRefBotRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   d  s    z&EditConnectedStarRefBotRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr   )r    rd   r   r   )r=   rd   r   r"   r   r   r!   r   r   r   r"   g  s
    z&EditConnectedStarRefBotRequest.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   rU   Fr   rV   )r%   rW   rX   r   rd   r'   r&   r   r!   r   r   r   r'   o  s    "
z%EditConnectedStarRefBotRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )NrV   r   rY   )r,   r-   r\   Z_revokedri   Z_linkr   r   r   r.   w  s
    z*EditConnectedStarRefBotRequest.from_reader)Nr_   r   r   r   r   r   X  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 )ExportInvoiceRequestiei2T6r   invoice_mediac                 C   s
   || _ dS )zQ
        :returns payments.ExportedInvoice: Instance of ExportedInvoice.
        Nr   )r   r   r   r   r   r     s    zExportInvoiceRequest.__init__c                    s   | | j| _d S rM   )Zget_input_mediar   rQ   r   r   r   rT     s    zExportInvoiceRequest.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ExportInvoiceRequest.to_dictc                 C   s   d d| j fS )Nr#   s   e)r%   r   r'   r!   r   r   r   r'     s    zExportInvoiceRequest._bytesc                 C   s   |  }| |dS )Nr   rD   )r,   r-   Z_invoice_mediar   r   r   r.     s    z ExportInvoiceRequest.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 )FulfillStarsSubscriptionRequestl   k rG   r   rd   re   c                 C   s   || _ || _dS rL   r   )r   rd   re   r   r   r   r     s    z(FulfillStarsSubscriptionRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z'FulfillStarsSubscriptionRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r    rd   re   )r=   rd   r   r"   re   r!   r   r   r   r"     s    z'FulfillStarsSubscriptionRequest.to_dictc                 C   s   d d| j | | jfS )Nr#   s   [)r%   rd   r'   r&   re   r!   r   r   r   r'     s
    
z&FulfillStarsSubscriptionRequest._bytesc                 C   s   |  }| }| ||dS )Nr   r?   r*   )r,   r-   ri   rj   r   r   r   r.     s    z+FulfillStarsSubscriptionRequest.from_readerNr0   r1   r2   r3   r4   r5   r   rT   r"   r'   r6   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 )GetBankCardDataRequestiyy.l   V numberc                 C   s
   || _ dS )zK
        :returns payments.BankCardData: Instance of BankCardData.
        Nr   )r   r   r   r   r   r     s    zGetBankCardDataRequest.__init__c                 C   s   d| j dS )Nr   )r    r   r   r!   r   r   r   r"     s    zGetBankCardDataRequest.to_dictc                 C   s   d d| | jfS )Nr#   s   yy.)r%   r&   r   r!   r   r   r   r'     s    
zGetBankCardDataRequest._bytesc                 C   s   |  }| |dS )Nr   r)   )r,   r-   Z_numberr   r   r   r.     s    z"GetBankCardDataRequest.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 )GetConnectedStarRefBotRequestl   o ru   r   r   rv   c                 C   s   || _ || _dS rx   rv   ry   r   r   r   r     s    z&GetConnectedStarRefBotRequest.__init__c                    s8   | || jI d H | _||| jI d H | _d S rM   rz   rQ   r   r   r   rT     s    z%GetConnectedStarRefBotRequest.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%GetConnectedStarRefBotRequest.to_dictc                 C   s   d d| j | j fS )Nr#   s   ٷr}   r!   r   r   r   r'     s
    z$GetConnectedStarRefBotRequest._bytesc                 C   s   |  }|  }| ||dS r~   rD   r   r   r   r   r.     s    z)GetConnectedStarRefBotRequest.from_readerNr   r   r   r   r   r     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 )GetConnectedStarRefBotsRequestiSiXru   Nr   rd   limitoffset_dateoffset_linkc                 C   s   || _ || _|| _|| _dS rx   r   )r   rd   r   r   r   r   r   r   r     s    z'GetConnectedStarRefBotsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z&GetConnectedStarRefBotsRequest.resolvec                 C   s.   dt | jtr| j n| j| j| j| jdS )Nr   )r    rd   r   r   r   )r=   rd   r   r"   r   r   r   r!   r   r   r   r"     s    z&GetConnectedStarRefBotsRequest.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 | j d ks| j dkrdn
| | j | jd ks| jdkrdn
| 	| jtd| j
fS )	NFzToffset_date, offset_link parameters must all be False-y (like None) or all me True-yr#   s   SiXrU   r      <i)r   r   AssertionErrorr%   rW   rX   rd   r'   Zserialize_datetimer&   r   r!   r   r   r   r'     s    P>""z%GetConnectedStarRefBotsRequest._bytesc                 C   sT   |  }| }|d@ r"| }nd }|d@ r8| }nd }|  }| ||||dS )Nr   r   )rZ   r?   Ztgread_dater*   )r,   r-   r\   ri   Z_offset_dateZ_offset_link_limitr   r   r   r.   '  s    

z*GetConnectedStarRefBotsRequest.from_reader)NN)r0   r1   r2   r3   r4   intr   r	   r5   r   rT   r"   r'   r6   r.   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 )GetGiveawayInfoRequestl   %Gh l   wF- r   rd   msg_idc                 C   s   || _ || _dS )zg
        :returns payments.GiveawayInfo: Instance of either GiveawayInfo, GiveawayInfoResults.
        Nr   r   rd   r   r   r   r   r   <  s    zGetGiveawayInfoRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   C  s    zGetGiveawayInfoRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   r    rd   r   r=   rd   r   r"   r   r!   r   r   r   r"   F  s    zGetGiveawayInfoRequest.to_dictc                 C   s    d d| j td| jfS )Nr#   s   %#r   r%   rd   r'   rW   rX   r   r!   r   r   r   r'   M  s
    zGetGiveawayInfoRequest._bytesc                 C   s   |  }| }| ||dS Nr   r?   rZ   r,   r-   ri   Z_msg_idr   r   r   r.   T  s    z"GetGiveawayInfoRequest.from_readerNr0   r1   r2   r3   r4   r   r   rT   r"   r'   r6   r.   r   r   r   r   r   8  s   r   c                   @   sF   e Zd ZdZdZdded dddZd	d
 Zdd Ze	dd Z
dS )GetPaymentFormRequesti7l   ?@ Nr   r
   invoicetheme_paramsc                 C   s   || _ || _dS )zw
        :returns payments.PaymentForm: Instance of either PaymentForm, PaymentFormStars, PaymentFormStarGift.
        Nr   )r   r   r   r   r   r   r   _  s    zGetPaymentFormRequest.__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"   f  s    zGetPaymentFormRequest.to_dictc                 C   sV   d dtd| jd ks | jdkr$dnd| j | jd ksD| jdkrHdn| j fS )Nr#   s   7rU   Fr   rV   )r%   rW   rX   r   r   r'   r!   r   r   r   r'   m  s    " zGetPaymentFormRequest._bytesc                 C   s2   |  }| }|d@ r"| }nd }| ||dS )NrV   r   rZ   r?   )r,   r-   r\   _invoiceZ_theme_paramsr   r   r   r.   u  s    
z!GetPaymentFormRequest.from_reader)N)r0   r1   r2   r3   r4   r   r   r"   r'   r6   r.   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 )GetPaymentReceiptRequestix$iɓ Yr   r   c                 C   s   || _ || _dS )zk
        :returns payments.PaymentReceipt: Instance of either PaymentReceipt, PaymentReceiptStars.
        Nr   r   r   r   r   r     s    z!GetPaymentReceiptRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z GetPaymentReceiptRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   r   r   r!   r   r   r   r"     s    z GetPaymentReceiptRequest.to_dictc                 C   s    d d| j td| jfS )Nr#   s   x$r   r   r!   r   r   r   r'     s
    zGetPaymentReceiptRequest._bytesc                 C   s   |  }| }| ||dS r   r   r   r   r   r   r.     s    z$GetPaymentReceiptRequest.from_readerNr   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 ) GetPremiumGiftCodeOptionsRequestiTW'i%
Nr   
boost_peerc                 C   s
   || _ dS )zX
        :returns Vector<PremiumGiftCodeOption>: This type has no constructors.
        Nr   )r   r   r   r   r   r     s    z)GetPremiumGiftCodeOptionsRequest.__init__c                    s$   | j r ||| j I d H | _ d S rM   )r   rh   rP   rQ   r   r   r   rT     s    z(GetPremiumGiftCodeOptionsRequest.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(GetPremiumGiftCodeOptionsRequest.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   TW'rU   Fr   rV   )r%   rW   rX   r   r'   r!   r   r   r   r'     s
    " z'GetPremiumGiftCodeOptionsRequest._bytesc                 C   s(   |  }|d@ r| }nd }| |dS )NrV   r   r   )r,   r-   r\   Z_boost_peerr   r   r   r.     s
    
z,GetPremiumGiftCodeOptionsRequest.from_reader)Nr0   r1   r2   r3   r4   r   r   rT   r"   r'   r6   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 )
GetSavedInfoRequestiK}"l   FqyZ c                 C   s   ddiS )Nr    r   r   r!   r   r   r   r"     s     zGetSavedInfoRequest.to_dictc                 C   s
   d dS )Nr#   )s   K}"r%   r!   r   r   r   r'     s    zGetSavedInfoRequest._bytesc                 C   s   |  S rM   r   r,   r-   r   r   r   r.     s    zGetSavedInfoRequest.from_readerN	r0   r1   r2   r3   r4   r"   r'   r6   r.   r   r   r   r   r     s   r   c                   @   sB   e Zd ZdZdZed dddZdd Zd	d
 Ze	dd Z
dS )GetSavedStarGiftRequestl   !h    ("* r   r   c                 C   s
   || _ dS zO
        :returns payments.SavedStarGifts: Instance of SavedStarGifts.
        Nr   r   r   r   r   r     s    z GetSavedStarGiftRequest.__init__c                 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"   .0xr   r   r   
<listcomp>  s     z3GetSavedStarGiftRequest.to_dict.<locals>.<listcomp>r   r   r!   r   r   r   r"     s    zGetSavedStarGiftRequest.to_dictc              	   C   s2   d ddtdt| jd dd | jD fS )Nr#   s   U   ĵr   c                 s   s   | ]}|  V  qd S rM   r'   r   r   r   r   	<genexpr>  s     z1GetSavedStarGiftRequest._bytes.<locals>.<genexpr>)r%   rW   rX   lenr   r!   r   r   r   r'     s      zGetSavedStarGiftRequest._bytesc                 C   s:   |   g }t|  D ]}| }|| q| |dS r   )rZ   ranger?   append)r,   r-   r   r    _xr   r   r   r.     s    z#GetSavedStarGiftRequest.from_readerN)r0   r1   r2   r3   r4   r   r   r"   r'   r6   r.   r   r   r   r   r     s   r   c                   @   sp   e Zd ZdZdZddee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 )GetSavedStarGiftsRequesti#r   Nr   	rd   offsetr   exclude_unsavedexclude_savedexclude_unlimitedexclude_limitedexclude_uniquesort_by_valuec
           
      C   s:   || _ || _|| _|| _|| _|| _|| _|| _|	| _dS r   r   )
r   rd   r   r   r   r   r   r   r   r   r   r   r   r     s    z!GetSavedStarGiftsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z GetSavedStarGiftsRequest.resolvec                 C   sB   dt | jtr| j n| j| j| j| j| j| j| j	| j
| jd
S )Nr   )
r    rd   r   r   r   r   r   r   r   r   )r=   rd   r   r"   r   r   r   r   r   r   r   r   r!   r   r   r   r"     s    z GetSavedStarGiftsRequest.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sr| jdkrvd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td| jfS )Nr#   s   #rU   Fr   rV   rp   r             r   )r%   rW   rX   r   r   r   r   r   r   rd   r'   r&   r   r   r!   r   r   r   r'   !  s    
zGetSavedStarGiftsRequest._bytesc                 C   s   |  }t|d@ }t|d@ }t|d@ }t|d@ }t|d@ }t|d@ }| }	| }
|  }| |	|
|||||||d	S )NrV   rp   r   r   r   r   r   rY   )r,   r-   r\   Z_exclude_unsavedZ_exclude_savedZ_exclude_unlimitedZ_exclude_limitedZ_exclude_uniqueZ_sort_by_valueri   _offsetr   r   r   r   r.   *  s    z$GetSavedStarGiftsRequest.from_reader)NNNNNNr0   r1   r2   r3   r4   r5   r   r   r[   r   rT   r"   r'   r6   r.   r   r   r   r   r     s   8	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 ) GetStarGiftUpgradePreviewRequestl   <59 ih+^gift_idc                 C   s
   || _ dS )z_
        :returns payments.StarGiftUpgradePreview: Instance of StarGiftUpgradePreview.
        Nr   )r   r   r   r   r   r   >  s    z)GetStarGiftUpgradePreviewRequest.__init__c                 C   s   d| j dS )Nr   )r    r   r   r!   r   r   r   r"   D  s    z(GetStarGiftUpgradePreviewRequest.to_dictc                 C   s   d dtd| jfS )Nr#   s   <q)r%   rW   rX   r   r!   r   r   r   r'   J  s    z'GetStarGiftUpgradePreviewRequest._bytesc                 C   s   |  }| |dS )Nr   )	read_long)r,   r-   Z_gift_idr   r   r   r.   P  s    z,GetStarGiftUpgradePreviewRequest.from_readerNr0   r1   r2   r3   r4   r   r   r"   r'   r6   r.   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 )GetStarGiftWithdrawalUrlRequestl     l   -E r   r   r   passwordc                 C   s   || _ || _dS )z]
        :returns payments.StarGiftWithdrawalUrl: Instance of StarGiftWithdrawalUrl.
        Nr   )r   r   r   r   r   r   r   Z  s    z(GetStarGiftWithdrawalUrlRequest.__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"   a  s    z'GetStarGiftWithdrawalUrlRequest.to_dictc                 C   s   d d| j | j fS )Nr#   s   n)r%   r   r'   r   r!   r   r   r   r'   h  s
    z&GetStarGiftWithdrawalUrlRequest._bytesc                 C   s   |  }|  }| ||dS )Nr   rD   )r,   r-   r   	_passwordr   r   r   r.   o  s    z+GetStarGiftWithdrawalUrlRequest.from_readerNrE   r   r   r   r   r   V  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 )GetStarGiftsRequestl   5 ixahashc                 C   s
   || _ dS )zb
        :returns payments.StarGifts: Instance of either StarGiftsNotModified, StarGifts.
        Nr   )r   r   r   r   r   r   z  s    zGetStarGiftsRequest.__init__c                 C   s   d| j dS )Nr   )r    r   r   r!   r   r   r   r"     s    zGetStarGiftsRequest.to_dictc                 C   s   d dtd| jfS )Nr#   s   5Vr   )r%   rW   rX   r   r!   r   r   r   r'     s    zGetStarGiftsRequest._bytesc                 C   s   |  }| |dS )Nr   )rZ   )r,   r-   _hashr   r   r   r.     s    zGetStarGiftsRequest.from_readerNr   r   r   r   r   r   v  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 )GetStarsGiftOptionsRequestl   k' l   7GS Nr   rI   c                 C   s
   || _ dS )zR
        :returns Vector<StarsGiftOption>: This type has no constructors.
        Nr   )r   rI   r   r   r   r     s    z#GetStarsGiftOptionsRequest.__init__c                    s$   | j r ||| j I d H | _ d S rM   )rI   rO   rP   rQ   r   r   r   rT     s    z"GetStarsGiftOptionsRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   )r    rI   )r=   rI   r   r"   r!   r   r   r   r"     s    z"GetStarsGiftOptionsRequest.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   krU   Fr   rV   )r%   rW   rX   rI   r'   r!   r   r   r   r'     s
    " z!GetStarsGiftOptionsRequest._bytesc                 C   s(   |  }|d@ r| }nd }| |dS )NrV   r   r   )r,   r-   r\   r]   r   r   r   r.     s
    
z&GetStarsGiftOptionsRequest.from_reader)Nr   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 )
GetStarsGiveawayOptionsRequestl   >}=z l   0q c                 C   s   ddiS )Nr    r   r   r!   r   r   r   r"     s     z&GetStarsGiveawayOptionsRequest.to_dictc                 C   s
   d dS )Nr#   )s   >r   r!   r   r   r   r'     s    z%GetStarsGiveawayOptionsRequest._bytesc                 C   s   |  S rM   r   r   r   r   r   r.     s    z*GetStarsGiveawayOptionsRequest.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 )#GetStarsRevenueAdsAccountUrlRequestl   o# i"Jr   rd   c                 C   s
   || _ dS )ze
        :returns payments.StarsRevenueAdsAccountUrl: Instance of StarsRevenueAdsAccountUrl.
        Nr   r   rd   r   r   r   r     s    z,GetStarsRevenueAdsAccountUrlRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z+GetStarsRevenueAdsAccountUrlRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r    rd   r=   rd   r   r"   r!   r   r   r   r"     s    z+GetStarsRevenueAdsAccountUrlRequest.to_dictc                 C   s   d d| j fS )Nr#   s   ѩr%   rd   r'   r!   r   r   r   r'     s    z*GetStarsRevenueAdsAccountUrlRequest._bytesc                 C   s   |  }| |dS Nr   rD   r,   r-   ri   r   r   r   r.     s    z/GetStarsRevenueAdsAccountUrlRequest.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 )GetStarsRevenueStatsRequestl   z?2 l   UJ Nr   rd   darkc                 C   s   || _ || _dS )zU
        :returns payments.StarsRevenueStats: Instance of StarsRevenueStats.
        Nr   )r   rd   r   r   r   r   r     s    z$GetStarsRevenueStatsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z#GetStarsRevenueStatsRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr   )r    rd   r   )r=   rd   r   r"   r   r!   r   r   r   r"     s    z#GetStarsRevenueStatsRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr#   s   rU   Fr   rV   )r%   rW   rX   r   rd   r'   r!   r   r   r   r'     s
    "z"GetStarsRevenueStatsRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )NrV   r   rZ   r[   r?   )r,   r-   r\   Z_darkri   r   r   r   r.     s    z'GetStarsRevenueStatsRequest.from_reader)Nr0   r1   r2   r3   r4   r   r[   r   rT   r"   r'   r6   r.   r   r   r   r   r     s   r   c                   @   sJ   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 )#GetStarsRevenueWithdrawalUrlRequestil     r   r   rd   starsr   c                 C   s   || _ || _|| _dS )ze
        :returns payments.StarsRevenueWithdrawalUrl: Instance of StarsRevenueWithdrawalUrl.
        Nr   )r   rd   r   r   r   r   r   r     s    z,GetStarsRevenueWithdrawalUrlRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z+GetStarsRevenueWithdrawalUrlRequest.resolvec                 C   s@   dt | jtr| j n| j| jt | jtr6| j n| jdS )Nr   )r    rd   r   r   )r=   rd   r   r"   r   r   r!   r   r   r   r"     s
    z+GetStarsRevenueWithdrawalUrlRequest.to_dictc                 C   s(   d d| j td| j| j fS )Nr#   s   r   )r%   rd   r'   rW   rX   r   r   r!   r   r   r   r'   &  s    z*GetStarsRevenueWithdrawalUrlRequest._bytesc                 C   s&   |  }| }|  }| |||dS )Nr   r?   r   )r,   r-   ri   Z_starsr   r   r   r   r.   .  s    z/GetStarsRevenueWithdrawalUrlRequest.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 )GetStarsStatusRequestiOonr   r   c                 C   s
   || _ dS zI
        :returns payments.StarsStatus: Instance of StarsStatus.
        Nr   r   r   r   r   r   :  s    zGetStarsStatusRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   @  s    zGetStarsStatusRequest.resolvec                 C   s"   dt | jtr| j n| jdS )Nr   r   r   r!   r   r   r   r"   C  s    zGetStarsStatusRequest.to_dictc                 C   s   d d| j fS )Nr#   s   Or   r!   r   r   r   r'   I  s    zGetStarsStatusRequest._bytesc                 C   s   |  }| |dS r   rD   r   r   r   r   r.   O  s    z!GetStarsStatusRequest.from_readerNr   r   r   r   r   r   6  s   r   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 )GetStarsSubscriptionsRequesti%r   Nr   rd   r   missing_balancec                 C   s   || _ || _|| _dS r   r   )r   rd   r   r   r   r   r   r   Y  s    z%GetStarsSubscriptionsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   a  s    z$GetStarsSubscriptionsRequest.resolvec                 C   s*   dt | jtr| j n| j| j| jdS )Nr   )r    rd   r   r   )r=   rd   r   r"   r   r   r!   r   r   r   r"   d  s
    z$GetStarsSubscriptionsRequest.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   %rU   Fr   rV   )r%   rW   rX   r   rd   r'   r&   r   r!   r   r   r   r'   l  s    "
z#GetStarsSubscriptionsRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )NrV   r   rY   )r,   r-   r\   Z_missing_balanceri   r   r   r   r   r.   t  s
    z(GetStarsSubscriptionsRequest.from_reader)Nr_   r   r   r   r   r   U  s   r   c                   @   s0   e Zd ZdZdZdd Zdd Zedd Zd	S )
GetStarsTopupOptionsRequestl   G  l   
) c                 C   s   ddiS )Nr    r   r   r!   r   r   r   r"     s     z#GetStarsTopupOptionsRequest.to_dictc                 C   s
   d dS )Nr#   )s   r   r!   r   r   r   r'     s    z"GetStarsTopupOptionsRequest._bytesc                 C   s   |  S rM   r   r   r   r   r   r.     s    z'GetStarsTopupOptionsRequest.from_readerNr   r   r   r   r   r   ~  s   r   c                	   @   sd   e Zd ZdZdZ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 )GetStarsTransactionsRequestiWEir   Nr   rd   r   r   inboundoutbound	ascendingre   c                 C   s.   || _ || _|| _|| _|| _|| _|| _dS r   r  )r   rd   r   r   r  r  r  re   r   r   r   r     s    z$GetStarsTransactionsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z#GetStarsTransactionsRequest.resolvec              	   C   s:   dt | jtr| j n| j| j| j| j| j| j| j	dS )Nr  )r    rd   r   r   r  r  r  re   )
r=   rd   r   r"   r   r   r  r  r  re   r!   r   r   r   r"     s    z#GetStarsTransactionsRequest.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sr| jdkrvdnd	B | jd ks| jdkrdn
| | j| j	 | | j
td
| jfS )Nr#   s   WEirU   Fr   rV   rp   r   r   r   )r%   rW   rX   r  r  r  re   r&   rd   r'   r   r   r!   r   r   r   r'     s    v"
z"GetStarsTransactionsRequest._bytesc           
   	   C   sp   |  }t|d@ }t|d@ }t|d@ }|d@ r>| }nd }| }| }|  }	| |||	||||dS )NrV   rp   r   r   r  )rZ   r[   r*   r?   )
r,   r-   r\   Z_inboundZ	_outboundZ
_ascendingrj   ri   r   r   r   r   r   r.     s    
z'GetStarsTransactionsRequest.from_reader)NNNNr   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 )GetStarsTransactionsByIDRequesti.-'r   r   r   rd   idc                 C   s   || _ || _dS r   r  )r   rd   r  r   r   r   r     s    z(GetStarsTransactionsByIDRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z'GetStarsTransactionsByIDRequest.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;GetStarsTransactionsByIDRequest.to_dict.<locals>.<listcomp>)r    rd   r  )r=   rd   r   r"   r  r!   r   r   r   r"     s    z'GetStarsTransactionsByIDRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr#   s   .-'r   r   c                 s   s   | ]}|  V  qd S rM   r   r   r   r   r   r     s     z9GetStarsTransactionsByIDRequest._bytes.<locals>.<genexpr>)r%   rd   r'   rW   rX   r   r  r!   r   r   r   r'     s      z&GetStarsTransactionsByIDRequest._bytesc                 C   sD   |  }|  g }t| D ]}|  }|| q | ||dS )Nr  r?   rZ   r   r   )r,   r-   ri   Z_idr    r   r   r   r   r.     s    z+GetStarsTransactionsByIDRequest.from_readerNr0   r1   r2   r3   r4   r   r   rT   r"   r'   r6   r.   r   r   r   r   r    s   r  c                   @   sX   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 )GetSuggestedStarRefBotsRequestiHkiCpNr   rd   r   r   order_by_revenueorder_by_datec                 C   s"   || _ || _|| _|| _|| _dS )z[
        :returns payments.SuggestedStarRefBots: Instance of SuggestedStarRefBots.
        Nr  )r   rd   r   r   r  r  r   r   r   r     s
    z'GetSuggestedStarRefBotsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z&GetSuggestedStarRefBotsRequest.resolvec                 C   s2   dt | jtr| j n| j| j| j| j| jdS )Nr  )r    rd   r   r   r  r  )r=   rd   r   r"   r   r   r  r  r!   r   r   r   r"     s    z&GetSuggestedStarRefBotsRequest.to_dictc              
   C   sh   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td| j	fS )	Nr#   s   HkrU   Fr   rV   rp   r   )
r%   rW   rX   r  r  rd   r'   r&   r   r   r!   r   r   r   r'     s    >
z%GetSuggestedStarRefBotsRequest._bytesc                 C   sJ   |  }t|d@ }t|d@ }| }| }|  }| |||||dS )NrV   rp   r  rY   )r,   r-   r\   Z_order_by_revenueZ_order_by_dateri   r   r   r   r   r   r.     s    z*GetSuggestedStarRefBotsRequest.from_reader)NNr   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 )GetUniqueStarGiftRequestl   rM.C iŰxr   c                 C   s
   || _ dS )zO
        :returns payments.UniqueStarGift: Instance of UniqueStarGift.
        Nr   r   r   r   r   r   '  s    z!GetUniqueStarGiftRequest.__init__c                 C   s   d| j dS )Nr  r   r   r!   r   r   r   r"   -  s    z GetUniqueStarGiftRequest.to_dictc                 C   s   d d| | jfS )Nr#   s   rMr$   r!   r   r   r   r'   3  s    
zGetUniqueStarGiftRequest._bytesc                 C   s   |  }| |dS r(   r)   r+   r   r   r   r.   9  s    z$GetUniqueStarGiftRequest.from_readerNr/   r   r   r   r   r  #  s   r  c                   @   sJ   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 )LaunchPrepaidGiveawayRequesti _r   r   r   rd   giveaway_idr:   c                 C   s   || _ || _|| _dS r   r  )r   rd   r  r:   r   r   r   r   C  s    z%LaunchPrepaidGiveawayRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   K  s    z$LaunchPrepaidGiveawayRequest.resolvec                 C   s@   dt | jtr| j n| j| jt | jtr6| j n| jdS )Nr  )r    rd   r  r:   )r=   rd   r   r"   r  r:   r!   r   r   r   r"   N  s
    z$LaunchPrepaidGiveawayRequest.to_dictc                 C   s(   d d| j td| j| j fS )Nr#   s    _r   )r%   rd   r'   rW   rX   r  r:   r!   r   r   r   r'   V  s    z#LaunchPrepaidGiveawayRequest._bytesc                 C   s&   |  }| }|  }| |||dS )Nr  r   )r,   r-   ri   Z_giveaway_idrA   r   r   r   r.   ^  s    z(LaunchPrepaidGiveawayRequest.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 )RefundStarsChargeRequestiJ%r   r   rI   rJ   c                 C   s   || _ || _dS r   r  )r   rI   rJ   r   r   r   r   j  s    z!RefundStarsChargeRequest.__init__c                    s   | || jI d H | _d S rM   rN   rQ   r   r   r   rT   q  s    z RefundStarsChargeRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr  )r    rI   rJ   )r=   rI   r   r"   rJ   r!   r   r   r   r"   t  s    z RefundStarsChargeRequest.to_dictc                 C   s   d d| j | | jfS )Nr#   s   J%)r%   rI   r'   r&   rJ   r!   r   r   r   r'   {  s
    
zRefundStarsChargeRequest._bytesc                 C   s   |  }| }| ||dS )Nr  r   )r,   r-   r]   r^   r   r   r   r.     s    z$RefundStarsChargeRequest.from_readerNr   r   r   r   r   r  f  s   r  c                   @   sF   e Zd ZdZdZddee dddZdd	 Zd
d Z	e
dd ZdS )SaveStarGiftRequesti|i**rG   Nr   r   unsavec                 C   s   || _ || _dS rL   r  )r   r   r  r   r   r   r     s    zSaveStarGiftRequest.__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SaveStarGiftRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr#   s   |i**rU   Fr   rV   )r%   rW   rX   r  r   r'   r!   r   r   r   r'     s
    "zSaveStarGiftRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )NrV   r  r   )r,   r-   r\   Z_unsaver   r   r   r   r.     s    zSaveStarGiftRequest.from_reader)Nrs   r   r   r   r   r    s   r  c                   @   sV   e Zd ZdZdZdeddee ee ee dddZd	d
 Z	dd Z
edd ZdS )SendPaymentFormRequesti/R-   j Nr   r   form_idr   rn   requested_info_idshipping_option_id
tip_amountc                 C   s(   || _ || _|| _|| _|| _|| _dS zo
        :returns payments.PaymentResult: Instance of either PaymentResult, PaymentVerificationNeeded.
        Nr  )r   r  r   rn   r  r  r  r   r   r   r     s    zSendPaymentFormRequest.__init__c                 C   sL   d| j t| jtr| j n| jt| jtr6| j n| j| j| j| jdS )Nr  )r    r  r   rn   r  r  r  )	r  r=   r   r   r"   rn   r  r  r  r!   r   r   r   r"     s    zSendPaymentFormRequest.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 td	| j| j | jd ks| jdkrdn
| 	| j| jd ks| jdkrdn
| 	| j| j
 | jd ks| jdkrdntd	| jfS )
Nr#   s   /R-rU   Fr   rV   rp   r   r   )r%   rW   rX   r  r  r  r  r   r'   r&   rn   r!   r   r   r   r'     s    Z""$zSendPaymentFormRequest._bytesc           	      C   sv   |  }| }| }|d@ r*| }nd }|d@ r@| }nd }| }|d@ r^| }nd }| ||||||dS )NrV   rp   r   r  )rZ   r   r?   r*   )	r,   r-   r\   _form_idr   Z_requested_info_idZ_shipping_option_idrq   Z_tip_amountr   r   r   r.     s    


z"SendPaymentFormRequest.from_reader)NNN)r0   r1   r2   r3   r4   r   r   r5   r   r"   r'   r6   r.   r   r   r   r   r    s   &r  c                   @   s@   e Zd ZdZdZeddddZdd Zd	d
 Ze	dd Z
dS )SendStarsFormRequestiɘyr  r   r  r   c                 C   s   || _ || _dS r  r"  )r   r  r   r   r   r   r     s    zSendStarsFormRequest.__init__c                 C   s&   d| j t| jtr| j n| jdS )Nr!  )r    r  r   )r  r=   r   r   r"   r!   r   r   r   r"     s    zSendStarsFormRequest.to_dictc                 C   s    d dtd| j| j fS )Nr#   s   ɘyr   )r%   rW   rX   r  r   r'   r!   r   r   r   r'     s
    zSendStarsFormRequest._bytesc                 C   s   |  }| }| ||dS )Nr"  )r   r?   )r,   r-   r   r   r   r   r   r.      s    z SendStarsFormRequest.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 )&ToggleChatStarGiftNotificationsRequesti`rG   Nr   rd   enabledc                 C   s   || _ || _dS rL   r$  )r   rd   r%  r   r   r   r     s    z/ToggleChatStarGiftNotificationsRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT     s    z.ToggleChatStarGiftNotificationsRequest.resolvec                 C   s&   dt | jtr| j n| j| jdS )Nr#  )r    rd   r%  )r=   rd   r   r"   r%  r!   r   r   r   r"     s    z.ToggleChatStarGiftNotificationsRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr#   s   `rU   Fr   rV   )r%   rW   rX   r%  rd   r'   r!   r   r   r   r'     s
    "z-ToggleChatStarGiftNotificationsRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )NrV   r$  r   )r,   r-   r\   Z_enabledri   r   r   r   r.   #  s    z2ToggleChatStarGiftNotificationsRequest.from_reader)Nr   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 )!ToggleStarGiftsPinnedToTopRequestirG   r   r   rd   r   c                 C   s   || _ || _dS rL   r'  )r   rd   r   r   r   r   r   0  s    z*ToggleStarGiftsPinnedToTopRequest.__init__c                    s   | || jI d H | _d S rM   rg   rQ   r   r   r   rT   7  s    z)ToggleStarGiftsPinnedToTopRequest.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=ToggleStarGiftsPinnedToTopRequest.to_dict.<locals>.<listcomp>)r    rd   r   )r=   rd   r   r"   r   r!   r   r   r   r"   :  s    z)ToggleStarGiftsPinnedToTopRequest.to_dictc              
   C   s:   d d| j dtdt| jd dd | jD fS )Nr#   s   r   r   c                 s   s   | ]}|  V  qd S rM   r   r   r   r   r   r   E  s     z;ToggleStarGiftsPinnedToTopRequest._bytes.<locals>.<genexpr>)r%   rd   r'   rW   rX   r   r   r!   r   r   r   r'   A  s      z(ToggleStarGiftsPinnedToTopRequest._bytesc                 C   sD   |  }|  g }t| D ]}|  }|| q | ||dS )Nr'  r	  )r,   r-   ri   r   r    r   r   r   r   r.   H  s    z-ToggleStarGiftsPinnedToTopRequest.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 )TransferStarGiftRequestijr   r   r   r   to_idc                 C   s   || _ || _dS r   r)  )r   r   r*  r   r   r   r   X  s    z TransferStarGiftRequest.__init__c                    s   | || jI d H | _d S rM   )rh   rP   r*  rQ   r   r   r   rT   _  s    zTransferStarGiftRequest.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"   b  s    zTransferStarGiftRequest.to_dictc                 C   s   d d| j | j fS )Nr#   s   j)r%   r   r'   r*  r!   r   r   r   r'   i  s
    zTransferStarGiftRequest._bytesc                 C   s   |  }|  }| ||dS )Nr)  rD   )r,   r-   r   Z_to_idr   r   r   r.   p  s    z#TransferStarGiftRequest.from_readerNr   r   r   r   r   r(  T  s   r(  c                   @   sF   e Zd ZdZdZddee dddZdd	 Zd
d Z	e
dd ZdS )UpgradeStarGiftRequestl   d] r   Nr   r   keep_original_detailsc                 C   s   || _ || _dS r   r,  )r   r   r-  r   r   r   r   {  s    zUpgradeStarGiftRequest.__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UpgradeStarGiftRequest.to_dictc                 C   s6   d dtd| jd ks | jdkr$dnd| j fS )Nr#   s   ֮rU   Fr   rV   )r%   rW   rX   r-  r   r'   r!   r   r   r   r'     s
    "zUpgradeStarGiftRequest._bytesc                 C   s(   |  }t|d@ }| }| ||dS )NrV   r,  r   )r,   r-   r\   Z_keep_original_detailsr   r   r   r   r.     s    z"UpgradeStarGiftRequest.from_reader)Nrs   r   r   r   r   r+  w  s   r+  c                   @   sH   e Zd ZdZdZdddee dddZd	d
 Zdd Z	e
dd ZdS )ValidateRequestedInfoRequestl   +qm l   D  Nr   r   r   ro   savec                 C   s   || _ || _|| _dS )z_
        :returns payments.ValidatedRequestedInfo: Instance of ValidatedRequestedInfo.
        Nr/  )r   r   ro   r0  r   r   r   r     s    z%ValidateRequestedInfoRequest.__init__c                 C   s@   dt | jtr| j n| jt | jtr2| j n| j| jdS )Nr.  )r    r   ro   r0  )r=   r   r   r"   ro   r0  r!   r   r   r   r"     s
    z$ValidateRequestedInfoRequest.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   +ȶrU   Fr   rV   )r%   rW   rX   r0  r   r'   ro   r!   r   r   r   r'     s    "z#ValidateRequestedInfoRequest._bytesc                 C   s2   |  }t|d@ }| }| }| |||dS )NrV   r/  r   )r,   r-   r\   Z_saver   rr   r   r   r   r.     s
    z(ValidateRequestedInfoRequest.from_reader)Nrs   r   r   r   r   r.    s   r.  )H__doc__Ztl.tlobjectr   r   typingr   r   r   r   osrW   r	   Ztl.typesr
   r   r   r   r   r   r   r   r   r   r   r   r7   rC   rF   r`   rb   rk   rl   rt   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.  r   r   r   r   <module>   sp   4  )-!$)#$5#&#&!< &%'):(0'#"< %(#"