
    i                         d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ erddlmZ  G d	 d
e	          ZdS )zWThis module contains an object that represents a location to which a chat is connected.    )TYPE_CHECKINGFinal)	constants)Location)TelegramObject)de_json_optional)JSONDict)Botc                        e Zd ZU dZdZdddedededz  f fdZe	dd	ed
ddd f fd            Z
ej        j        Zee         ed<   	 ej        j        Zee         ed<    xZS )ChatLocationa  This object represents a location to which a chat is connected.

    Objects of this class are comparable in terms of equality. Two objects of this class are
    considered equal, if their :attr:`location` is equal.

    Args:
        location (:class:`telegram.Location`): The location to which the supergroup is connected.
            Can't be a live location.
        address (:obj:`str`): Location address;
            :tg-const:`telegram.ChatLocation.MIN_ADDRESS`-
            :tg-const:`telegram.ChatLocation.MAX_ADDRESS` characters, as defined by the chat owner.
    Attributes:
        location (:class:`telegram.Location`): The location to which the supergroup is connected.
            Can't be a live location.
        address (:obj:`str`): Location address;
            :tg-const:`telegram.ChatLocation.MIN_ADDRESS`-
            :tg-const:`telegram.ChatLocation.MAX_ADDRESS` characters, as defined by the chat owner.

    )addresslocationN
api_kwargsr   r   r   c                    t                                          |           || _        || _        | j        f| _        |                                  d S )Nr   )super__init__r   r   	_id_attrs_freeze)selfr   r   r   	__class__s       V/Users/shanyulin/my-agent/.venv/lib/python3.11/site-packages/telegram/_chatlocation.pyr   zChatLocation.__init__8   sK     	J///"*#-)    databotz
Bot | Nonereturnc                     |                      |          }t          |                    d          t          |          |d<   t	                                          ||          S )z,See :meth:`telegram.TelegramObject.de_json`.r   )r   r   )_parse_datar   getr   r   de_json)clsr   r   r   s      r   r    zChatLocation.de_jsonG   sR     t$$+DHHZ,@,@(CPPZwwDc222r   MIN_ADDRESSMAX_ADDRESS)N)__name__
__module____qualname____doc__	__slots__r   strr	   r   classmethodr    r   LocationLimitMIN_CHAT_LOCATION_ADDRESSr"   r   int__annotations__MAX_CHAT_LOCATION_ADDRESSr#   __classcell__)r   s   @r   r   r   !   s          ( (I '+   
 tO      3 38 3, 3. 3 3 3 3 3 [3 (5OKsOOO (5OKsOOO   r   r   N)r'   typingr   r   telegramr   telegram._files.locationr   telegram._telegramobjectr   telegram._utils.argumentparsingr   telegram._utils.typesr	   r
   r    r   r   <module>r8      s   & ^ ] ' ' ' ' ' ' ' '       - - - - - - 3 3 3 3 3 3 < < < < < < * * * * * * 8 8 8 8 8> 8 8 8 8 8r   