
    N[i                     ~    d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZmZmZ  G d de      Zy)	    )BytesIO)	IntLongInt128Int256BoolBytesStringDoubleVector)TLObject)raw)ListOptionalAnyc                       e Zd ZU dZg dZee   ed<   dZdZ	dddd	d
e
dedddee   ddfdZedededd fd       ZdefdZy)RequestCalla  Telegram API function.

    Details:
        - Layer: ``158``
        - ID: ``42FF96ED``

    Parameters:
        user_id (:obj:`InputUser <pyrogram.raw.base.InputUser>`):
            N/A

        random_id (``int`` ``32-bit``):
            N/A

        g_a_hash (``bytes``):
            N/A

        protocol (:obj:`PhoneCallProtocol <pyrogram.raw.base.PhoneCallProtocol>`):
            N/A

        video (``bool``, *optional*):
            N/A

    Returns:
        :obj:`phone.PhoneCall <pyrogram.raw.base.phone.PhoneCall>`
    user_id	random_idg_a_hashprotocolvideo	__slots__iBzfunctions.phone.RequestCallN)r   r   zraw.base.InputUserr   r   r   zraw.base.PhoneCallProtocolr   returnc                J    || _         || _        || _        || _        || _        y )Nr   )selfr   r   r   r   r   s         \/var/www/files/kim/lib/python3.12/site-packages/pyrogram/raw/functions/phone/request_call.py__init__zRequestCall.__init__A   s%    "  
    bargsc                    t        j                  |       }|dz  rdnd}t        j                  |       }t        j                  |       }t        j                  |       }t        j                  |       }t	        |||||      S )N   TFr   )r   readr   r	   r   )r!   r"   flagsr   r   r   r   r   s           r   r%   zRequestCall.readH   sj     (e--"HHQK	::a===#7i(]emrssr    c                    t               }|j                  t        | j                  d             d}|| j                  rdndz  }|j                  t        |             |j                  | j
                  j                                |j                  t        | j                               |j                  t        | j                               |j                  | j                  j                                |j                         S )NFr   r$   )r   writer   IDr   r   r   r	   r   r   getvalue)r   r"   r!   r&   s       r   r(   zRequestCall.writeX   s    I	DGGU#$TZZ&Q.	E
	""$%	DNN#$	dmm$%	##%&zz|r    )__name__
__module____qualname____doc__r   r   str__annotations__r)   QUALNAMEintbytesr   boolr   staticmethodr   r   r%   r(    r    r   r   r   !   s    4 UItCyT	B,H [_ #7 C SX   eA   JR  SW  JX   dh  t t t t te r    r   N)ior   pyrogram.raw.core.primitivesr   r   r   r   r   r	   r
   r   r   pyrogram.raw.corer   pyrogramr   typingr   r   r   r   r6   r    r   <module>r<      s-   &  g g g &  & &G( Gr    