3
uQh                 @   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 l   * )slugc             C   s
   || _ dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)r   )selfr    r   B/tmp/pip-build-2nz6shyl/telethon/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j d| j| jfS )N    s   Th)joinserialize_bytesr   )r   r   r   r   _bytes   s    zApplyGiftCodeRequest._bytesc             C   s   |j  }| |dS )N)r   )tgread_string)clsreader_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 l   * r   )receiptpurposec             C   s   || _ || _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)r.   r/   )r   r.   r/   r   r   r   r   -   s    z)AssignAppStoreTransactionRequest.__init__c             C   s&   d| j t| jtr| jj n| jdS )Nr-   )r   r.   r/   )r.   
isinstancer/   r   r   )r   r   r   r   r   4   s    z(AssignAppStoreTransactionRequest.to_dictc             C   s   dj d| j| j| jj fS )Nr   s   }t)r   r   r.   r/   r    )r   r   r   r   r    ;   s    
z'AssignAppStoreTransactionRequest._bytesc             C   s   |j  }|j }| ||dS )N)r.   r/   )Ztgread_bytestgread_object)r"   r#   _receipt_purposer   r   r   r%   B   s    z,AssignAppStoreTransactionRequest.from_readerN)r&   r'   r(   r)   r*   bytesr   r   r    r,   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 )"AssignPlayMarketTransactionRequestl   P? l   * r
   r   )r.   r/   c             C   s   || _ || _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)r.   r/   )r   r.   r/   r   r   r   r   M   s    z+AssignPlayMarketTransactionRequest.__init__c             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )Nr5   )r   r.   r/   )r0   r.   r   r   r/   )r   r   r   r   r   T   s    z*AssignPlayMarketTransactionRequest.to_dictc             C   s   dj d| jj | jj fS )Nr   s   P)r   r.   r    r/   )r   r   r   r   r    [   s    z)AssignPlayMarketTransactionRequest._bytesc             C   s   |j  }|j  }| ||dS )N)r.   r/   )r1   )r"   r#   r2   r3   r   r   r   r%   b   s    z.AssignPlayMarketTransactionRequest.from_readerN)
r&   r'   r(   r)   r*   r   r   r    r,   r%   r   r   r   r   r5   I   s   r5   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"ml   gk Nr   )user_id	charge_idrestorec             C   s   || _ || _|| _dS )z?
        :returns Bool: This type has no constructors.
        N)r7   r8   r9   )r   r7   r8   r9   r   r   r   r   m   s    z*BotCancelStarsSubscriptionRequest.__init__c                s   |j |j| jI d H | _d S )N)get_input_userget_input_entityr7   )r   clientutilsr   r   r   resolveu   s    z)BotCancelStarsSubscriptionRequest.resolvec             C   s*   dt | jtr| jj n| j| j| jdS )Nr6   )r   r7   r8   r9   )r0   r7   r   r   r8   r9   )r   r   r   r   r   x   s    z)BotCancelStarsSubscriptionRequest.to_dictc             C   s@   dj dtjd| jd ks | jdkr$dnd| jj | j| jfS )Nr   s   "mz<IFr      )r   structpackr9   r7   r    r   r8   )r   r   r   r   r       s
    "z(BotCancelStarsSubscriptionRequest._bytesc             C   s2   |j  }t|d@ }|j }|j }| |||dS )Nr?   )r7   r8   r9   )read_intboolr1   r!   )r"   r#   flagsZ_restore_user_id
_charge_idr   r   r   r%      s
    z-BotCancelStarsSubscriptionRequest.from_reader)N)r&   r'   r(   r)   r*   r+   r   rC   r   r>   r   r    r,   r%   r   r   r   r   r6   i   s   r6   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^Ol   gk r   )r/   c             C   s
   || _ dS )z?
        :returns Bool: This type has no constructors.
        N)r/   )r   r/   r   r   r   r      s    z CanPurchaseStoreRequest.__init__c             C   s"   dt | jtr| jj n| jdS )NrG   )r   r/   )r0   r/   r   r   )r   r   r   r   r      s    zCanPurchaseStoreRequest.to_dictc             C   s   dj d| jj fS )Nr   s   ^O)r   r/   r    )r   r   r   r   r       s    zCanPurchaseStoreRequest._bytesc             C   s   |j  }| |dS )N)r/   )r1   )r"   r#   r3   r   r   r   r%      s    z#CanPurchaseStoreRequest.from_readerN)
r&   r'   r(   r)   r*   r   r   r    r,   r%   r   r   r   r   rG      s   rG   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 l   gk Nr   )peersubscription_idcanceledc             C   s   || _ || _|| _dS )z?
        :returns Bool: This type has no constructors.
        N)rI   rJ   rK   )r   rI   rJ   rK   r   r   r   r      s    z'ChangeStarsSubscriptionRequest.__init__c                s   |j |j| jI d H | _d S )N)get_input_peerr;   rI   )r   r<   r=   r   r   r   r>      s    z&ChangeStarsSubscriptionRequest.resolvec             C   s*   dt | jtr| jj n| j| j| jdS )NrH   )r   rI   rJ   rK   )r0   rI   r   r   rJ   rK   )r   r   r   r   r      s    z&ChangeStarsSubscriptionRequest.to_dictc             C   sP   dj dtjd| jd krdnd| jj | j| j| jd kr>dn| jrHdndfS )Nr   s   xwz<Ir   r?   s   urs   7y)r   r@   rA   rK   rI   r    r   rJ   )r   r   r   r   r       s    
z%ChangeStarsSubscriptionRequest._bytesc             C   s<   |j  }|j }|j }|d@ r*|j }nd }| |||dS )Nr?   )rI   rJ   rK   )rB   r1   r!   Ztgread_bool)r"   r#   rD   _peer_subscription_idZ	_canceledr   r   r   r%      s    
z*ChangeStarsSubscriptionRequest.from_reader)N)r&   r'   r(   r)   r*   r+   r   rC   r   r>   r   r    r,   r%   r   r   r   r   rH      s   	rH   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.
        N)r   )r   r   r   r   r   r      s    zCheckGiftCodeRequest.__init__c             C   s   d| j dS )NrO   )r   r   )r   )r   r   r   r   r      s    zCheckGiftCodeRequest.to_dictc             C   s   dj d| j| jfS )Nr   s   Q)r   r   r   )r   r   r   r   r       s    zCheckGiftCodeRequest._bytesc             C   s   |j  }| |dS )N)r   )r!   )r"   r#   r$   r   r   r   r%      s    z CheckGiftCodeRequest.from_readerN)r&   r'   r(   r)   r*   r+   r   r   r    r,   r%   r   r   r   r   rO      s   rO   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 l   gk N)credentialsinfoc             C   s   || _ || _dS )z?
        :returns Bool: This type has no constructors.
        N)rQ   rR   )r   rQ   rR   r   r   r   r      s    zClearSavedInfoRequest.__init__c             C   s   d| j | jdS )NrP   )r   rQ   rR   )rQ   rR   )r   r   r   r   r     s    zClearSavedInfoRequest.to_dictc             C   sJ   dj dtj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=z<IFr   r?      )r   r@   rA   rQ   rR   )r   r   r   r   r    	  s    zClearSavedInfoRequest._bytesc             C   s,   |j  }t|d@ }t|d@ }| ||dS )Nr?   rS   )rQ   rR   )rB   rC   )r"   r#   rD   _credentials_infor   r   r   r%     s    z!ClearSavedInfoRequest.from_reader)NN)r&   r'   r(   r)   r*   r   rC   r   r   r    r,   r%   r   r   r   r   rP      s   rP   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~ig^#r   r   )rI   botc             C   s   || _ || _dS )z[
        :returns payments.ConnectedStarRefBots: Instance of ConnectedStarRefBots.
        N)rI   rW   )r   rI   rW   r   r   r   r     s    z!ConnectStarRefBotRequest.__init__c                s8   |j |j| jI d H | _|j|j| jI d H | _d S )N)rL   r;   rI   r:   rW   )r   r<   r=   r   r   r   r>   #  s    z ConnectStarRefBotRequest.resolvec             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )NrV   )r   rI   rW   )r0   rI   r   r   rW   )r   r   r   r   r   '  s    z ConnectStarRefBotRequest.to_dictc             C   s   dj d| jj | jj fS )Nr   s   4~)r   rI   r    rW   )r   r   r   r   r    .  s    zConnectStarRefBotRequest._bytesc             C   s   |j  }|j  }| ||dS )N)rI   rW   )r1   )r"   r#   rM   _botr   r   r   r%   5  s    z$ConnectStarRefBotRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   r%   r   r   r   r   rV     s   rV   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tl   gk r   )stargiftc             C   s
   || _ dS )z?
        :returns Bool: This type has no constructors.
        N)rZ   )r   rZ   r   r   r   r   @  s    zConvertStarGiftRequest.__init__c             C   s"   dt | jtr| jj n| jdS )NrY   )r   rZ   )r0   rZ   r   r   )r   r   r   r   r   F  s    zConvertStarGiftRequest.to_dictc             C   s   dj d| jj fS )Nr   s   kt)r   rZ   r    )r   r   r   r   r    L  s    zConvertStarGiftRequest._bytesc             C   s   |j  }| |dS )N)rZ   )r1   )r"   r#   	_stargiftr   r   r   r%   R  s    z"ConvertStarGiftRequest.from_readerN)
r&   r'   r(   r)   r*   r   r   r    r,   r%   r   r   r   r   rY   <  s   rY   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 ig^#Nr   )rI   linkrevokedc             C   s   || _ || _|| _dS )z[
        :returns payments.ConnectedStarRefBots: Instance of ConnectedStarRefBots.
        N)rI   r]   r^   )r   rI   r]   r^   r   r   r   r   \  s    z'EditConnectedStarRefBotRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   d  s    z&EditConnectedStarRefBotRequest.resolvec             C   s*   dt | jtr| jj n| j| j| jdS )Nr\   )r   rI   r]   r^   )r0   rI   r   r   r]   r^   )r   r   r   r   r   g  s    z&EditConnectedStarRefBotRequest.to_dictc             C   s@   dj dtjd| jd ks | jdkr$dnd| jj | j| jfS )Nr   s   z<IFr   r?   )r   r@   rA   r^   rI   r    r   r]   )r   r   r   r   r    o  s
    "z%EditConnectedStarRefBotRequest._bytesc             C   s2   |j  }t|d@ }|j }|j }| |||dS )Nr?   )rI   r]   r^   )rB   rC   r1   r!   )r"   r#   rD   Z_revokedrM   Z_linkr   r   r   r%   w  s
    z*EditConnectedStarRefBotRequest.from_reader)N)r&   r'   r(   r)   r*   r+   r   rC   r   r>   r   r    r,   r%   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.
        N)r`   )r   r`   r   r   r   r     s    zExportInvoiceRequest.__init__c                s   |j | j| _d S )N)Zget_input_mediar`   )r   r<   r=   r   r   r   r>     s    zExportInvoiceRequest.resolvec             C   s"   dt | jtr| jj n| jdS )Nr_   )r   r`   )r0   r`   r   r   )r   r   r   r   r     s    zExportInvoiceRequest.to_dictc             C   s   dj d| jj fS )Nr   s   e)r   r`   r    )r   r   r   r   r      s    zExportInvoiceRequest._bytesc             C   s   |j  }| |dS )N)r`   )r1   )r"   r#   Z_invoice_mediar   r   r   r%     s    z ExportInvoiceRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   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 )FulfillStarsSubscriptionRequestl   k l   gk r   )rI   rJ   c             C   s   || _ || _dS )z?
        :returns Bool: This type has no constructors.
        N)rI   rJ   )r   rI   rJ   r   r   r   r     s    z(FulfillStarsSubscriptionRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z'FulfillStarsSubscriptionRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nra   )r   rI   rJ   )r0   rI   r   r   rJ   )r   r   r   r   r     s    z'FulfillStarsSubscriptionRequest.to_dictc             C   s   dj d| jj | j| jfS )Nr   s   [)r   rI   r    r   rJ   )r   r   r   r   r      s    z&FulfillStarsSubscriptionRequest._bytesc             C   s   |j  }|j }| ||dS )N)rI   rJ   )r1   r!   )r"   r#   rM   rN   r   r   r   r%     s    z+FulfillStarsSubscriptionRequest.from_readerN)r&   r'   r(   r)   r*   r+   r   r>   r   r    r,   r%   r   r   r   r   ra     s   ra   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.
        N)rc   )r   rc   r   r   r   r     s    zGetBankCardDataRequest.__init__c             C   s   d| j dS )Nrb   )r   rc   )rc   )r   r   r   r   r     s    zGetBankCardDataRequest.to_dictc             C   s   dj d| j| jfS )Nr   s   yy.)r   r   rc   )r   r   r   r   r      s    zGetBankCardDataRequest._bytesc             C   s   |j  }| |dS )N)rc   )r!   )r"   r#   Z_numberr   r   r   r%     s    z"GetBankCardDataRequest.from_readerN)r&   r'   r(   r)   r*   r+   r   r   r    r,   r%   r   r   r   r   rb     s   rb   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 ig^#r   r   )rI   rW   c             C   s   || _ || _dS )z[
        :returns payments.ConnectedStarRefBots: Instance of ConnectedStarRefBots.
        N)rI   rW   )r   rI   rW   r   r   r   r     s    z&GetConnectedStarRefBotRequest.__init__c                s8   |j |j| jI d H | _|j|j| jI d H | _d S )N)rL   r;   rI   r:   rW   )r   r<   r=   r   r   r   r>     s    z%GetConnectedStarRefBotRequest.resolvec             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )Nrd   )r   rI   rW   )r0   rI   r   r   rW   )r   r   r   r   r     s    z%GetConnectedStarRefBotRequest.to_dictc             C   s   dj d| jj | jj fS )Nr   s   ٷ)r   rI   r    rW   )r   r   r   r   r      s    z$GetConnectedStarRefBotRequest._bytesc             C   s   |j  }|j  }| ||dS )N)rI   rW   )r1   )r"   r#   rM   rX   r   r   r   r%     s    z)GetConnectedStarRefBotRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   r%   r   r   r   r   rd     s   rd   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 )GetConnectedStarRefBotsRequestiSiXig^#Nr   )rI   limitoffset_dateoffset_linkc             C   s   || _ || _|| _|| _dS )z[
        :returns payments.ConnectedStarRefBots: Instance of ConnectedStarRefBots.
        N)rI   rf   rg   rh   )r   rI   rf   rg   rh   r   r   r   r     s    z'GetConnectedStarRefBotsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z&GetConnectedStarRefBotsRequest.resolvec             C   s.   dt | jtr| jj n| j| j| j| jdS )Nre   )r   rI   rf   rg   rh   )r0   rI   r   r   rf   rg   rh   )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jdtjd| j d ksp| j dkrtdnd| jd ks| jdkrdndB | jj | j d ks| j dkrdn
| j| j | jd ks| jdkrdn
| j	| jtjd| j
fS )	NFzToffset_date, offset_link parameters must all be False-y (like None) or all me True-yr   s   SiXz<Ir      z<i)rg   rh   AssertionErrorr   r@   rA   rI   r    Zserialize_datetimer   rf   )r   r   r   r   r      s    P>""z%GetConnectedStarRefBotsRequest._bytesc             C   sT   |j  }|j }|d@ r"|j }nd }|d@ r8|j }nd }|j  }| ||||dS )Nri   )rI   rf   rg   rh   )rB   r1   Ztgread_dater!   )r"   r#   rD   rM   Z_offset_dateZ_offset_link_limitr   r   r   r%   '  s    

z*GetConnectedStarRefBotsRequest.from_reader)NN)r&   r'   r(   r)   r*   intr   r	   r+   r   r>   r   r    r,   r%   r   r   r   r   re     s   		re   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   )rI   msg_idc             C   s   || _ || _dS )zg
        :returns payments.GiveawayInfo: Instance of either GiveawayInfo, GiveawayInfoResults.
        N)rI   rn   )r   rI   rn   r   r   r   r   <  s    zGetGiveawayInfoRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   C  s    zGetGiveawayInfoRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nrm   )r   rI   rn   )r0   rI   r   r   rn   )r   r   r   r   r   F  s    zGetGiveawayInfoRequest.to_dictc             C   s    dj d| jj tjd| jfS )Nr   s   %#z<i)r   rI   r    r@   rA   rn   )r   r   r   r   r    M  s    zGetGiveawayInfoRequest._bytesc             C   s   |j  }|j }| ||dS )N)rI   rn   )r1   rB   )r"   r#   rM   _msg_idr   r   r   r%   T  s    z"GetGiveawayInfoRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r>   r   r    r,   r%   r   r   r   r   rm   8  s   rm   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.
        N)rq   rr   )r   rq   rr   r   r   r   r   _  s    zGetPaymentFormRequest.__init__c             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )Nrp   )r   rq   rr   )r0   rq   r   r   rr   )r   r   r   r   r   f  s    zGetPaymentFormRequest.to_dictc             C   sV   dj dtjd| jd ks | jdkr$dnd| jj | jd ksD| jdkrHdn| jj fS )Nr   s   7z<IFr   r?   )r   r@   rA   rr   rq   r    )r   r   r   r   r    m  s
    "zGetPaymentFormRequest._bytesc             C   s2   |j  }|j }|d@ r"|j }nd }| ||dS )Nr?   )rq   rr   )rB   r1   )r"   r#   rD   _invoiceZ_theme_paramsr   r   r   r%   u  s    
z!GetPaymentFormRequest.from_reader)N)r&   r'   r(   r)   r*   r   r   r   r    r,   r%   r   r   r   r   rp   [  s   rp   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   )rI   rn   c             C   s   || _ || _dS )zk
        :returns payments.PaymentReceipt: Instance of either PaymentReceipt, PaymentReceiptStars.
        N)rI   rn   )r   rI   rn   r   r   r   r     s    z!GetPaymentReceiptRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z GetPaymentReceiptRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nrt   )r   rI   rn   )r0   rI   r   r   rn   )r   r   r   r   r     s    z GetPaymentReceiptRequest.to_dictc             C   s    dj d| jj tjd| jfS )Nr   s   x$z<i)r   rI   r    r@   rA   rn   )r   r   r   r   r      s    zGetPaymentReceiptRequest._bytesc             C   s   |j  }|j }| ||dS )N)rI   rn   )r1   rB   )r"   r#   rM   ro   r   r   r   r%     s    z$GetPaymentReceiptRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r>   r   r    r,   r%   r   r   r   r   rt     s   rt   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.
        N)rv   )r   rv   r   r   r   r     s    z)GetPremiumGiftCodeOptionsRequest.__init__c                s$   | j r |j|j| j I d H | _ d S )N)rv   rL   r;   )r   r<   r=   r   r   r   r>     s    z(GetPremiumGiftCodeOptionsRequest.resolvec             C   s"   dt | jtr| jj n| jdS )Nru   )r   rv   )r0   rv   r   r   )r   r   r   r   r     s    z(GetPremiumGiftCodeOptionsRequest.to_dictc             C   sN   dj dtjd| jd ks | jdkr$dnd| jd ks<| jdkr@dn| jj fS )Nr   s   TW'z<IFr   r?   )r   r@   rA   rv   r    )r   r   r   r   r      s    "z'GetPremiumGiftCodeOptionsRequest._bytesc             C   s(   |j  }|d@ r|j }nd }| |dS )Nr?   )rv   )rB   r1   )r"   r#   rD   Z_boost_peerr   r   r   r%     s
    
z,GetPremiumGiftCodeOptionsRequest.from_reader)N)r&   r'   r(   r)   r*   r   r   r>   r   r    r,   r%   r   r   r   r   ru     s   ru   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   rw   r   )r   r   r   r   r     s    zGetSavedInfoRequest.to_dictc             C   s
   dj dS )Nr      K}")rx   )r   )r   r   r   r   r      s    zGetSavedInfoRequest._bytesc             C   s   |  S )Nr   )r"   r#   r   r   r   r%     s    zGetSavedInfoRequest.from_readerN)	r&   r'   r(   r)   r*   r   r    r,   r%   r   r   r   r   rw     s
   rw   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 l   ("* r   )rZ   c             C   s
   || _ dS )zO
        :returns payments.SavedStarGifts: Instance of SavedStarGifts.
        N)rZ   )r   rZ   r   r   r   r     s    z GetSavedStarGiftRequest.__init__c             C   s$   d| j d krg ndd | j D dS )Nry   c             S   s"   g | ]}t |tr|j n|qS r   )r0   r   r   ).0xr   r   r   
<listcomp>  s    z3GetSavedStarGiftRequest.to_dict.<locals>.<listcomp>)r   rZ   )rZ   )r   r   r   r   r     s    zGetSavedStarGiftRequest.to_dictc             C   s2   dj ddtjdt| jdj dd | jD fS )Nr   s   Us   ĵz<ic             s   s   | ]}|j  V  qd S )N)r    )rz   r{   r   r   r   	<genexpr>  s    z1GetSavedStarGiftRequest._bytes.<locals>.<genexpr>)r   r@   rA   lenrZ   )r   r   r   r   r      s    zGetSavedStarGiftRequest._bytesc             C   s>   |j   g }x&t|j  D ]}|j }|j| qW | |dS )N)rZ   )rB   ranger1   append)r"   r#   r[   r   _xr   r   r   r%     s    z#GetSavedStarGiftRequest.from_readerN)r&   r'   r(   r)   r*   r   r   r   r    r,   r%   r   r   r   r   ry     s   ry   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#l   ("* Nr   )	rI   offsetrf   exclude_unsavedexclude_savedexclude_unlimitedexclude_limitedexclude_uniquesort_by_valuec
       
      C   s:   || _ || _|| _|| _|| _|| _|| _|| _|	| _dS )zO
        :returns payments.SavedStarGifts: Instance of SavedStarGifts.
        N)	rI   r   rf   r   r   r   r   r   r   )
r   rI   r   rf   r   r   r   r   r   r   r   r   r   r     s    z!GetSavedStarGiftsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z GetSavedStarGiftsRequest.resolvec             C   sB   dt | jtr| jj n| j| j| j| j| j| j| j	| j
| jd
S )Nr   )
r   rI   r   rf   r   r   r   r   r   r   )r0   rI   r   r   r   rf   r   r   r   r   r   r   )r   r   r   r   r     s    z GetSavedStarGiftsRequest.to_dictc             C   s   dj dtj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
 | j| jtjd| jfS )Nr   s   #z<IFr   r?   rS   ri             z<i)r   r@   rA   r   r   r   r   r   r   rI   r    r   r   rf   )r   r   r   r   r    !  s    
zGetSavedStarGiftsRequest._bytesc             C   s   |j  }t|d@ }t|d@ }t|d@ }t|d@ }t|d@ }t|d@ }|j }	|j }
|j  }| |	|
|||||||d	S )Nr?   rS   ri   r   r   r   )	rI   r   rf   r   r   r   r   r   r   )rB   rC   r1   r!   )r"   r#   rD   Z_exclude_unsavedZ_exclude_savedZ_exclude_unlimitedZ_exclude_limitedZ_exclude_uniqueZ_sort_by_valuerM   _offsetrk   r   r   r   r%   *  s    z$GetSavedStarGiftsRequest.from_reader)NNNNNN)r&   r'   r(   r)   r*   r+   rl   r   rC   r   r>   r   r    r,   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.
        N)r   )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j dtjd| jfS )Nr   s   z<q)r   r@   rA   r   )r   r   r   r   r    J  s    z'GetStarGiftUpgradePreviewRequest._bytesc             C   s   |j  }| |dS )N)r   )	read_long)r"   r#   Z_gift_idr   r   r   r%   P  s    z,GetStarGiftUpgradePreviewRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r   r    r,   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   )rZ   passwordc             C   s   || _ || _dS )z]
        :returns payments.StarGiftWithdrawalUrl: Instance of StarGiftWithdrawalUrl.
        N)rZ   r   )r   rZ   r   r   r   r   r   Z  s    z(GetStarGiftWithdrawalUrlRequest.__init__c             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )Nr   )r   rZ   r   )r0   rZ   r   r   r   )r   r   r   r   r   a  s    z'GetStarGiftWithdrawalUrlRequest.to_dictc             C   s   dj d| jj | jj fS )Nr   s   n)r   rZ   r    r   )r   r   r   r   r    h  s    z&GetStarGiftWithdrawalUrlRequest._bytesc             C   s   |j  }|j  }| ||dS )N)rZ   r   )r1   )r"   r#   r[   	_passwordr   r   r   r%   o  s    z+GetStarGiftWithdrawalUrlRequest.from_readerN)
r&   r'   r(   r)   r*   r   r   r    r,   r%   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.
        N)r   )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j dtjd| jfS )Nr   s   5Vz<i)r   r@   rA   r   )r   r   r   r   r      s    zGetStarGiftsRequest._bytesc             C   s   |j  }| |dS )N)r   )rB   )r"   r#   _hashr   r   r   r%     s    zGetStarGiftsRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r   r    r,   r%   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   )r7   c             C   s
   || _ dS )zR
        :returns Vector<StarsGiftOption>: This type has no constructors.
        N)r7   )r   r7   r   r   r   r     s    z#GetStarsGiftOptionsRequest.__init__c                s$   | j r |j|j| j I d H | _ d S )N)r7   r:   r;   )r   r<   r=   r   r   r   r>     s    z"GetStarsGiftOptionsRequest.resolvec             C   s"   dt | jtr| jj n| jdS )Nr   )r   r7   )r0   r7   r   r   )r   r   r   r   r     s    z"GetStarsGiftOptionsRequest.to_dictc             C   sN   dj dtjd| jd ks | jdkr$dnd| jd ks<| jdkr@dn| jj fS )Nr   s   kz<IFr   r?   )r   r@   rA   r7   r    )r   r   r   r   r      s    "z!GetStarsGiftOptionsRequest._bytesc             C   s(   |j  }|d@ r|j }nd }| |dS )Nr?   )r7   )rB   r1   )r"   r#   rD   rE   r   r   r   r%     s
    
z&GetStarsGiftOptionsRequest.from_reader)N)r&   r'   r(   r)   r*   r   r   r>   r   r    r,   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 )
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j dS )Nr      >)r   )r   )r   r   r   r   r      s    z%GetStarsGiveawayOptionsRequest._bytesc             C   s   |  S )Nr   )r"   r#   r   r   r   r%     s    z*GetStarsGiveawayOptionsRequest.from_readerN)	r&   r'   r(   r)   r*   r   r    r,   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 )#GetStarsRevenueAdsAccountUrlRequestl   o# i"Jr   )rI   c             C   s
   || _ dS )ze
        :returns payments.StarsRevenueAdsAccountUrl: Instance of StarsRevenueAdsAccountUrl.
        N)rI   )r   rI   r   r   r   r     s    z,GetStarsRevenueAdsAccountUrlRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z+GetStarsRevenueAdsAccountUrlRequest.resolvec             C   s"   dt | jtr| jj n| jdS )Nr   )r   rI   )r0   rI   r   r   )r   r   r   r   r     s    z+GetStarsRevenueAdsAccountUrlRequest.to_dictc             C   s   dj d| jj fS )Nr   s   )r   rI   r    )r   r   r   r   r      s    z*GetStarsRevenueAdsAccountUrlRequest._bytesc             C   s   |j  }| |dS )N)rI   )r1   )r"   r#   rM   r   r   r   r%     s    z/GetStarsRevenueAdsAccountUrlRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   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 )GetStarsRevenueStatsRequestl   z?2 l   UJ Nr   )rI   darkc             C   s   || _ || _dS )zU
        :returns payments.StarsRevenueStats: Instance of StarsRevenueStats.
        N)rI   r   )r   rI   r   r   r   r   r     s    z$GetStarsRevenueStatsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z#GetStarsRevenueStatsRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nr   )r   rI   r   )r0   rI   r   r   r   )r   r   r   r   r     s    z#GetStarsRevenueStatsRequest.to_dictc             C   s6   dj dtjd| jd ks | jdkr$dnd| jj fS )Nr   s   z<IFr   r?   )r   r@   rA   r   rI   r    )r   r   r   r   r      s    "z"GetStarsRevenueStatsRequest._bytesc             C   s(   |j  }t|d@ }|j }| ||dS )Nr?   )rI   r   )rB   rC   r1   )r"   r#   rD   Z_darkrM   r   r   r   r%     s    z'GetStarsRevenueStatsRequest.from_reader)N)r&   r'   r(   r)   r*   r   rC   r   r>   r   r    r,   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   )rI   starsr   c             C   s   || _ || _|| _dS )ze
        :returns payments.StarsRevenueWithdrawalUrl: Instance of StarsRevenueWithdrawalUrl.
        N)rI   r   r   )r   rI   r   r   r   r   r   r     s    z,GetStarsRevenueWithdrawalUrlRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z+GetStarsRevenueWithdrawalUrlRequest.resolvec             C   s@   dt | jtr| jj n| j| jt | jtr6| jj n| jdS )Nr   )r   rI   r   r   )r0   rI   r   r   r   r   )r   r   r   r   r     s    z+GetStarsRevenueWithdrawalUrlRequest.to_dictc             C   s(   dj d| jj tjd| j| jj fS )Nr   s   z<q)r   rI   r    r@   rA   r   r   )r   r   r   r   r    &  s
    z*GetStarsRevenueWithdrawalUrlRequest._bytesc             C   s&   |j  }|j }|j  }| |||dS )N)rI   r   r   )r1   r   )r"   r#   rM   Z_starsr   r   r   r   r%   .  s    z/GetStarsRevenueWithdrawalUrlRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r>   r   r    r,   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 )GetStarsStatusRequestiOionr   )rI   c             C   s
   || _ dS )zI
        :returns payments.StarsStatus: Instance of StarsStatus.
        N)rI   )r   rI   r   r   r   r   :  s    zGetStarsStatusRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   @  s    zGetStarsStatusRequest.resolvec             C   s"   dt | jtr| jj n| jdS )Nr   )r   rI   )r0   rI   r   r   )r   r   r   r   r   C  s    zGetStarsStatusRequest.to_dictc             C   s   dj d| jj fS )Nr   s   O)r   rI   r    )r   r   r   r   r    I  s    zGetStarsStatusRequest._bytesc             C   s   |j  }| |dS )N)rI   )r1   )r"   r#   rM   r   r   r   r%   O  s    z!GetStarsStatusRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   r%   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%ionNr   )rI   r   missing_balancec             C   s   || _ || _|| _dS )zI
        :returns payments.StarsStatus: Instance of StarsStatus.
        N)rI   r   r   )r   rI   r   r   r   r   r   r   Y  s    z%GetStarsSubscriptionsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   a  s    z$GetStarsSubscriptionsRequest.resolvec             C   s*   dt | jtr| jj n| j| j| jdS )Nr   )r   rI   r   r   )r0   rI   r   r   r   r   )r   r   r   r   r   d  s    z$GetStarsSubscriptionsRequest.to_dictc             C   s@   dj dtjd| jd ks | jdkr$dnd| jj | j| jfS )Nr   s   %z<IFr   r?   )r   r@   rA   r   rI   r    r   r   )r   r   r   r   r    l  s
    "z#GetStarsSubscriptionsRequest._bytesc             C   s2   |j  }t|d@ }|j }|j }| |||dS )Nr?   )rI   r   r   )rB   rC   r1   r!   )r"   r#   rD   Z_missing_balancerM   r   r   r   r   r%   t  s
    z(GetStarsSubscriptionsRequest.from_reader)N)r&   r'   r(   r)   r*   r+   r   rC   r   r>   r   r    r,   r%   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j dS )Nr      )r   )r   )r   r   r   r   r      s    z"GetStarsTopupOptionsRequest._bytesc             C   s   |  S )Nr   )r"   r#   r   r   r   r%     s    z'GetStarsTopupOptionsRequest.from_readerN)	r&   r'   r(   r)   r*   r   r    r,   r%   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 )GetStarsTransactionsRequestiWEiionNr   )rI   r   rf   inboundoutbound	ascendingrJ   c             C   s.   || _ || _|| _|| _|| _|| _|| _dS )zI
        :returns payments.StarsStatus: Instance of StarsStatus.
        N)rI   r   rf   r   r   r   rJ   )r   rI   r   rf   r   r   r   rJ   r   r   r   r     s    z$GetStarsTransactionsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z#GetStarsTransactionsRequest.resolvec          	   C   s:   dt | jtr| jj n| j| j| j| j| j| j| j	dS )Nr   )r   rI   r   rf   r   r   r   rJ   )
r0   rI   r   r   r   rf   r   r   r   rJ   )r   r   r   r   r     s    z#GetStarsTransactionsRequest.to_dictc          	   C   s   dj dtj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j	 | j| j
tjd
| jfS )Nr   s   WEiz<IFr   r?   rS   ri   r   z<i)r   r@   rA   r   r   r   rJ   r   rI   r    r   rf   )r   r   r   r   r      s    v"
z"GetStarsTransactionsRequest._bytesc       
   	   C   sp   |j  }t|d@ }t|d@ }t|d@ }|d@ r>|j }nd }|j }|j }|j  }	| |||	||||dS )Nr?   rS   ri   r   )rI   r   rf   r   r   r   rJ   )rB   rC   r!   r1   )
r"   r#   rD   Z_inboundZ	_outboundZ
_ascendingrN   rM   r   rk   r   r   r   r%     s    
z'GetStarsTransactionsRequest.from_reader)NNNN)r&   r'   r(   r)   r*   r+   rl   r   rC   r   r>   r   r    r,   r%   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.-'ionr   r   )rI   idc             C   s   || _ || _dS )zI
        :returns payments.StarsStatus: Instance of StarsStatus.
        N)rI   r   )r   rI   r   r   r   r   r     s    z(GetStarsTransactionsByIDRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z'GetStarsTransactionsByIDRequest.resolvec             C   s>   dt | jtr| jj n| j| jd kr*g ndd | jD dS )Nr   c             S   s"   g | ]}t |tr|j n|qS r   )r0   r   r   )rz   r{   r   r   r   r|     s    z;GetStarsTransactionsByIDRequest.to_dict.<locals>.<listcomp>)r   rI   r   )r0   rI   r   r   r   )r   r   r   r   r     s    z'GetStarsTransactionsByIDRequest.to_dictc             C   s:   dj d| jj dtjdt| jdj dd | jD fS )Nr   s   .-'s   ĵz<ic             s   s   | ]}|j  V  qd S )N)r    )rz   r{   r   r   r   r}     s    z9GetStarsTransactionsByIDRequest._bytes.<locals>.<genexpr>)r   rI   r    r@   rA   r~   r   )r   r   r   r   r      s    z&GetStarsTransactionsByIDRequest._bytesc             C   sH   |j  }|j  g }x&t|j D ]}|j  }|j| q"W | ||dS )N)rI   r   )r1   rB   r   r   )r"   r#   rM   _idr   r   r   r   r   r%     s    z+GetStarsTransactionsByIDRequest.from_readerN)r&   r'   r(   r)   r*   r   r   r>   r   r    r,   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   )rI   r   rf   order_by_revenueorder_by_datec             C   s"   || _ || _|| _|| _|| _dS )z[
        :returns payments.SuggestedStarRefBots: Instance of SuggestedStarRefBots.
        N)rI   r   rf   r   r   )r   rI   r   rf   r   r   r   r   r   r     s
    z'GetSuggestedStarRefBotsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z&GetSuggestedStarRefBotsRequest.resolvec             C   s2   dt | jtr| jj n| j| j| j| j| jdS )Nr   )r   rI   r   rf   r   r   )r0   rI   r   r   r   rf   r   r   )r   r   r   r   r     s    z&GetSuggestedStarRefBotsRequest.to_dictc             C   sh   dj dtjd| jd ks | jdkr$dnd| jd ks:| jdkr>dndB | jj | j| jtjd| j	fS )	Nr   s   Hkz<IFr   r?   rS   z<i)
r   r@   rA   r   r   rI   r    r   r   rf   )r   r   r   r   r      s    >
z%GetSuggestedStarRefBotsRequest._bytesc             C   sJ   |j  }t|d@ }t|d@ }|j }|j }|j  }| |||||dS )Nr?   rS   )rI   r   rf   r   r   )rB   rC   r1   r!   )r"   r#   rD   Z_order_by_revenueZ_order_by_daterM   r   rk   r   r   r   r%     s    z*GetSuggestedStarRefBotsRequest.from_reader)NN)r&   r'   r(   r)   r*   r+   rl   r   rC   r   r>   r   r    r,   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 )GetUniqueStarGiftRequestl   rM.C iŰx)r   c             C   s
   || _ dS )zO
        :returns payments.UniqueStarGift: Instance of UniqueStarGift.
        N)r   )r   r   r   r   r   r   '  s    z!GetUniqueStarGiftRequest.__init__c             C   s   d| j dS )Nr   )r   r   )r   )r   r   r   r   r   -  s    z GetUniqueStarGiftRequest.to_dictc             C   s   dj d| j| jfS )Nr   s   rM)r   r   r   )r   r   r   r   r    3  s    zGetUniqueStarGiftRequest._bytesc             C   s   |j  }| |dS )N)r   )r!   )r"   r#   r$   r   r   r   r%   9  s    z$GetUniqueStarGiftRequest.from_readerN)r&   r'   r(   r)   r*   r+   r   r   r    r,   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 )LaunchPrepaidGiveawayRequesti _l   * r   r   )rI   giveaway_idr/   c             C   s   || _ || _|| _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)rI   r   r/   )r   rI   r   r/   r   r   r   r   C  s    z%LaunchPrepaidGiveawayRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   K  s    z$LaunchPrepaidGiveawayRequest.resolvec             C   s@   dt | jtr| jj n| j| jt | jtr6| jj n| jdS )Nr   )r   rI   r   r/   )r0   rI   r   r   r   r/   )r   r   r   r   r   N  s    z$LaunchPrepaidGiveawayRequest.to_dictc             C   s(   dj d| jj tjd| j| jj fS )Nr   s    _z<q)r   rI   r    r@   rA   r   r/   )r   r   r   r   r    V  s
    z#LaunchPrepaidGiveawayRequest._bytesc             C   s&   |j  }|j }|j  }| |||dS )N)rI   r   r/   )r1   r   )r"   r#   rM   Z_giveaway_idr3   r   r   r   r%   ^  s    z(LaunchPrepaidGiveawayRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r>   r   r    r,   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 )RefundStarsChargeRequestiJ%l   * r   )r7   r8   c             C   s   || _ || _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)r7   r8   )r   r7   r8   r   r   r   r   j  s    z!RefundStarsChargeRequest.__init__c                s   |j |j| jI d H | _d S )N)r:   r;   r7   )r   r<   r=   r   r   r   r>   q  s    z RefundStarsChargeRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nr   )r   r7   r8   )r0   r7   r   r   r8   )r   r   r   r   r   t  s    z RefundStarsChargeRequest.to_dictc             C   s   dj d| jj | j| jfS )Nr   s   J%)r   r7   r    r   r8   )r   r   r   r   r    {  s    zRefundStarsChargeRequest._bytesc             C   s   |j  }|j }| ||dS )N)r7   r8   )r1   r!   )r"   r#   rE   rF   r   r   r   r%     s    z$RefundStarsChargeRequest.from_readerN)r&   r'   r(   r)   r*   r+   r   r>   r   r    r,   r%   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**l   gk Nr   )rZ   unsavec             C   s   || _ || _dS )z?
        :returns Bool: This type has no constructors.
        N)rZ   r   )r   rZ   r   r   r   r   r     s    zSaveStarGiftRequest.__init__c             C   s&   dt | jtr| jj n| j| jdS )Nr   )r   rZ   r   )r0   rZ   r   r   r   )r   r   r   r   r     s    zSaveStarGiftRequest.to_dictc             C   s6   dj dtjd| jd ks | jdkr$dnd| jj fS )Nr   s   |i**z<IFr   r?   )r   r@   rA   r   rZ   r    )r   r   r   r   r      s    "zSaveStarGiftRequest._bytesc             C   s(   |j  }t|d@ }|j }| ||dS )Nr?   )rZ   r   )rB   rC   r1   )r"   r#   rD   Z_unsaver[   r   r   r   r%     s    zSaveStarGiftRequest.from_reader)N)r&   r'   r(   r)   r*   r   rC   r   r   r    r,   r%   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-l   j Nr   r   )form_idrq   rQ   requested_info_idshipping_option_id
tip_amountc             C   s(   || _ || _|| _|| _|| _|| _dS )zo
        :returns payments.PaymentResult: Instance of either PaymentResult, PaymentVerificationNeeded.
        N)r   rq   rQ   r   r   r   )r   r   rq   rQ   r   r   r   r   r   r   r     s    zSendPaymentFormRequest.__init__c             C   sL   d| j t| jtr| jj n| jt| jtr6| jj n| j| j| j| jdS )Nr   )r   r   rq   rQ   r   r   r   )	r   r0   rq   r   r   rQ   r   r   r   )r   r   r   r   r     s    zSendPaymentFormRequest.to_dictc             C   s   dj dtj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jd	| j| jj | jd ks| jdkrdn
| j	| j| jd ks| jdkrdn
| j	| j| j
j | jd ks| jdkrdntjd	| jfS )
Nr   s   /R-z<IFr   r?   rS   ri   z<q)r   r@   rA   r   r   r   r   rq   r    r   rQ   )r   r   r   r   r      s    Z""zSendPaymentFormRequest._bytesc       	      C   sv   |j  }|j }|j }|d@ r*|j }nd }|d@ r@|j }nd }|j }|d@ r^|j }nd }| ||||||dS )Nr?   rS   ri   )r   rq   rQ   r   r   r   )rB   r   r1   r!   )	r"   r#   rD   _form_idrs   Z_requested_info_idZ_shipping_option_idrT   Z_tip_amountr   r   r   r%     s    


z"SendPaymentFormRequest.from_reader)NNN)r&   r'   r(   r)   r*   rl   r   r+   r   r   r    r,   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ɘyl   j r   )r   rq   c             C   s   || _ || _dS )zo
        :returns payments.PaymentResult: Instance of either PaymentResult, PaymentVerificationNeeded.
        N)r   rq   )r   r   rq   r   r   r   r     s    zSendStarsFormRequest.__init__c             C   s&   d| j t| jtr| jj n| jdS )Nr   )r   r   rq   )r   r0   rq   r   r   )r   r   r   r   r     s    zSendStarsFormRequest.to_dictc             C   s    dj dtjd| j| jj fS )Nr   s   ɘyz<q)r   r@   rA   r   rq   r    )r   r   r   r   r      s    zSendStarsFormRequest._bytesc             C   s   |j  }|j }| ||dS )N)r   rq   )r   r1   )r"   r#   r   rs   r   r   r   r%      s    z SendStarsFormRequest.from_readerN)r&   r'   r(   r)   r*   rl   r   r   r    r,   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 )&ToggleChatStarGiftNotificationsRequesti`l   gk Nr   )rI   enabledc             C   s   || _ || _dS )z?
        :returns Bool: This type has no constructors.
        N)rI   r   )r   rI   r   r   r   r   r     s    z/ToggleChatStarGiftNotificationsRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>     s    z.ToggleChatStarGiftNotificationsRequest.resolvec             C   s&   dt | jtr| jj n| j| jdS )Nr   )r   rI   r   )r0   rI   r   r   r   )r   r   r   r   r     s    z.ToggleChatStarGiftNotificationsRequest.to_dictc             C   s6   dj dtjd| jd ks | jdkr$dnd| jj fS )Nr   s   `z<IFr   r?   )r   r@   rA   r   rI   r    )r   r   r   r   r      s    "z-ToggleChatStarGiftNotificationsRequest._bytesc             C   s(   |j  }t|d@ }|j }| ||dS )Nr?   )rI   r   )rB   rC   r1   )r"   r#   rD   Z_enabledrM   r   r   r   r%   #  s    z2ToggleChatStarGiftNotificationsRequest.from_reader)N)r&   r'   r(   r)   r*   r   rC   r   r>   r   r    r,   r%   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l   gk r   r   )rI   rZ   c             C   s   || _ || _dS )z?
        :returns Bool: This type has no constructors.
        N)rI   rZ   )r   rI   rZ   r   r   r   r   0  s    z*ToggleStarGiftsPinnedToTopRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   rI   )r   r<   r=   r   r   r   r>   7  s    z)ToggleStarGiftsPinnedToTopRequest.resolvec             C   s>   dt | jtr| jj n| j| jd kr*g ndd | jD dS )Nr   c             S   s"   g | ]}t |tr|j n|qS r   )r0   r   r   )rz   r{   r   r   r   r|   >  s    z=ToggleStarGiftsPinnedToTopRequest.to_dict.<locals>.<listcomp>)r   rI   rZ   )r0   rI   r   r   rZ   )r   r   r   r   r   :  s    z)ToggleStarGiftsPinnedToTopRequest.to_dictc             C   s:   dj d| jj dtjdt| jdj dd | jD fS )Nr   s   s   ĵz<ic             s   s   | ]}|j  V  qd S )N)r    )rz   r{   r   r   r   r}   E  s    z;ToggleStarGiftsPinnedToTopRequest._bytes.<locals>.<genexpr>)r   rI   r    r@   rA   r~   rZ   )r   r   r   r   r    A  s    z(ToggleStarGiftsPinnedToTopRequest._bytesc             C   sH   |j  }|j  g }x&t|j D ]}|j  }|j| q"W | ||dS )N)rI   rZ   )r1   rB   r   r   )r"   r#   rM   r[   r   r   r   r   r   r%   H  s    z-ToggleStarGiftsPinnedToTopRequest.from_readerN)r&   r'   r(   r)   r*   r   r   r>   r   r    r,   r%   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l   * r   r   )rZ   to_idc             C   s   || _ || _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)rZ   r   )r   rZ   r   r   r   r   r   X  s    z TransferStarGiftRequest.__init__c                s   |j |j| jI d H | _d S )N)rL   r;   r   )r   r<   r=   r   r   r   r>   _  s    zTransferStarGiftRequest.resolvec             C   s<   dt | jtr| jj n| jt | jtr2| jj n| jdS )Nr   )r   rZ   r   )r0   rZ   r   r   r   )r   r   r   r   r   b  s    zTransferStarGiftRequest.to_dictc             C   s   dj d| jj | jj fS )Nr   s   j)r   rZ   r    r   )r   r   r   r   r    i  s    zTransferStarGiftRequest._bytesc             C   s   |j  }|j  }| ||dS )N)rZ   r   )r1   )r"   r#   r[   Z_to_idr   r   r   r%   p  s    z#TransferStarGiftRequest.from_readerN)r&   r'   r(   r)   r*   r   r>   r   r    r,   r%   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] l   * Nr   )rZ   keep_original_detailsc             C   s   || _ || _dS )z
        :returns Updates: Instance of either UpdatesTooLong, UpdateShortMessage, UpdateShortChatMessage, UpdateShort, UpdatesCombined, Updates, UpdateShortSentMessage.
        N)rZ   r   )r   rZ   r   r   r   r   r   {  s    zUpgradeStarGiftRequest.__init__c             C   s&   dt | jtr| jj n| j| jdS )Nr   )r   rZ   r   )r0   rZ   r   r   r   )r   r   r   r   r     s    zUpgradeStarGiftRequest.to_dictc             C   s6   dj dtjd| jd ks | jdkr$dnd| jj fS )Nr   s   ֮z<IFr   r?   )r   r@   rA   r   rZ   r    )r   r   r   r   r      s    "zUpgradeStarGiftRequest._bytesc             C   s(   |j  }t|d@ }|j }| ||dS )Nr?   )rZ   r   )rB   rC   r1   )r"   r#   rD   Z_keep_original_detailsr[   r   r   r   r%     s    z"UpgradeStarGiftRequest.from_reader)N)r&   r'   r(   r)   r*   r   rC   r   r   r    r,   r%   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   )rq   rR   savec             C   s   || _ || _|| _dS )z_
        :returns payments.ValidatedRequestedInfo: Instance of ValidatedRequestedInfo.
        N)rq   rR   r   )r   rq   rR   r   r   r   r   r     s    z%ValidateRequestedInfoRequest.__init__c             C   s@   dt | jtr| jj n| jt | jtr2| jj n| j| jdS )Nr   )r   rq   rR   r   )r0   rq   r   r   rR   r   )r   r   r   r   r     s    z$ValidateRequestedInfoRequest.to_dictc             C   s>   dj dtjd| jd ks | jdkr$dnd| jj | jj fS )Nr   s   +ȶz<IFr   r?   )r   r@   rA   r   rq   r    rR   )r   r   r   r   r      s
    "z#ValidateRequestedInfoRequest._bytesc             C   s2   |j  }t|d@ }|j }|j }| |||dS )Nr?   )rq   rR   r   )rB   rC   r1   )r"   r#   rD   Z_savers   rU   r   r   r   r%     s
    z(ValidateRequestedInfoRequest.from_reader)N)r&   r'   r(   r)   r*   r   rC   r   r   r    r,   r%   r   r   r   r   r     s   r   )H__doc__Ztl.tlobjectr   r   typingr   r   r   r   osr@   r	   Ztl.typesr
   r   r   r   r   r   r   r   r   r   r   r   r-   r5   r6   rG   rH   rO   rP   rV   rY   r\   r_   ra   rb   rd   re   rm   rp   rt   ru   rw   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   <module>   sp   4  )-!$)#$5#&#&!< &%'):(0'#"< %(#"