
    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e
d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)GetChannelDifferencea3  Telegram API function.

    Details:
        - Layer: ``158``
        - ID: ``3173D78``

    Parameters:
        channel (:obj:`InputChannel <pyrogram.raw.base.InputChannel>`):
            N/A

        filter (:obj:`ChannelMessagesFilter <pyrogram.raw.base.ChannelMessagesFilter>`):
            N/A

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

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

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

    Returns:
        :obj:`updates.ChannelDifference <pyrogram.raw.base.updates.ChannelDifference>`
    channelfilterptslimitforce	__slots__ix=z&functions.updates.GetChannelDifferenceN)r   r   zraw.base.InputChannelr   zraw.base.ChannelMessagesFilterr   r   r   returnc                J    || _         || _        || _        || _        || _        y )Nr   )selfr   r   r   r   r   s         h/var/www/files/kim/lib/python3.12/site-packages/pyrogram/raw/functions/updates/get_channel_difference.py__init__zGetChannelDifference.__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"   flagsr   r   r   r   r   s           r   r%   zGetChannelDifference.readH   sj     (e--"q!hhqk#GFSX`effr    c                    t               }|j                  t        | j                  d             d}|| j                  rdndz  }|j                  t        |             |j                  | j
                  j                                |j                  | j                  j                                |j                  t        | j                               |j                  t        | j                               |j                         S )NFr   r$   )
r   writer   IDr   r   r   r   r   getvalue)r   r"   r!   r&   s       r   r(   zGetChannelDifference.writeX   s    I	DGGU#$TZZ&Q.	E
	""$%	!!#$	DHH	DJJ zz|r    )__name__
__module____qualname____doc__r   r   str__annotations__r)   QUALNAMEintr   boolr   staticmethodr   r   r%   bytesr(    r    r   r   r   !   s    4 JItCyI	B7H UY #: Dd kn wz   DL  MQ  DR   ^b  g g g(> g g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8 Gr    