
    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dddde
e   de
e   d	e
e   d
e
e   de
e   de
e   de
e   ddfdZedededd fd       ZdefdZy)InitTakeoutSessiona|  Telegram API function.

    Details:
        - Layer: ``158``
        - ID: ``8EF3EAB0``

    Parameters:
        contacts (``bool``, *optional*):
            N/A

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

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

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

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

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

        file_max_size (``int`` ``64-bit``, *optional*):
            N/A

    Returns:
        :obj:`account.Takeout <pyrogram.raw.base.account.Takeout>`
    contactsmessage_usersmessage_chatsmessage_megagroupsmessage_channelsfilesfile_max_size	__slots__l   j z$functions.account.InitTakeoutSessionNr   r   r   r   r   r   r   returnc                f    || _         || _        || _        || _        || _        || _        || _        y )Nr   )selfr   r   r   r   r   r   r   s           f/var/www/files/kim/lib/python3.12/site-packages/pyrogram/raw/functions/account/init_takeout_session.py__init__zInitTakeoutSession.__init__G   s8     **"4 0
*    bargsc           	          t        j                  |       }|dz  rdnd}|dz  rdnd}|dz  rdnd}|dz  rdnd}|dz  rdnd}|dz  rdnd}|dz  rt        j                  |       nd }	t        |||||||		      S )
N   TF                r   )r   readr   r   )
r#   r$   flagsr   r   r   r   r   r   r   s
             r    r,   zInitTakeoutSession.readP   s      F+4 % 0e % 0e%*f%5T5#(F#34(e(-(8		!d!8=`m  CU  hx  @E  Ub  c  	cr"   c                 "   t               }|j                  t        | j                  d             d}|| j                  rdndz  }|| j
                  rdndz  }|| j                  rdndz  }|| j                  rdndz  }|| j                  rdndz  }|| j                  rdndz  }|| j                  dndz  }|j                  t        |             | j                  $|j                  t        | j                               |j                         S )	NFr   r&   r'   r(   r)   r*   r+   )r   writer   IDr   r   r   r   r   r   r   r   getvalue)r   r$   r#   r-   s       r    r/   zInitTakeoutSession.write^   s    I	DGGU#$T]]&1T//&Q6T//&Q6T44&!;T22&9TZZ&Q.T//;&B	E
)GGD++,-zz|r"   )__name__
__module____qualname____doc__r   r   str__annotations__r0   QUALNAMEr   boolintr!   staticmethodr   r   r,   bytesr/    r"   r    r   r   !   s(   @ NItCy  N	B5H59[_  BF  mq  VZ  tx  Y] +HTN +(SW. +pxy}p~ +  \d  ei  \j +  EM  NR  ES +  ck  lp  cq +  IQ  RU  IV +  bf + c c c(< c c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   r=   r"   r    <module>rC      s-   &  g g g &  & &N Nr"   