§
    «eîiÁ  ã                   óz   — d Z ddl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 ddlmZmZ  G d	„ d
e¦  «        ZdS )zCThis module contains an object that represents a Telegram Location.é    N)ÚFinal)Ú	constants)ÚTelegramObject)Úto_timedelta)Úget_timedelta_value)ÚJSONDictÚ
TimePeriodc                   ó4  ‡ — e Zd ZU dZdZ	 	 	 	 dddœdedededz  dedz  d	edz  d
edz  dedz  fˆ fd„Z	e
deej        z  dz  fd„¦   «         Zej        j        Zee         ed<   	 ej        j        Zee         ed<   	 ej        j        Zee         ed<   ˆ xZS )ÚLocationa 	  This object represents a point on the map.

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

    Args:
        longitude (:obj:`float`): Longitude as defined by the sender.
        latitude (:obj:`float`): Latitude as defined by the sender.
        horizontal_accuracy (:obj:`float`, optional): The radius of uncertainty for the location,
            measured in meters; 0-:tg-const:`telegram.Location.HORIZONTAL_ACCURACY`.
        live_period (:obj:`int` | :class:`datetime.timedelta`, optional): Time relative to the
            message sending date, during which the location can be updated, in seconds. For active
            live locations only.

            .. versionchanged:: v22.2
                |time-period-input|
        heading (:obj:`int`, optional): The direction in which user is moving, in degrees;
            :tg-const:`telegram.Location.MIN_HEADING`-:tg-const:`telegram.Location.MAX_HEADING`.
            For active live locations only.
        proximity_alert_radius (:obj:`int`, optional): Maximum distance for proximity alerts about
            approaching another chat member, in meters. For sent live locations only.

    Attributes:
        longitude (:obj:`float`): Longitude as defined by the sender.
        latitude (:obj:`float`): Latitude as defined by the sender.
        horizontal_accuracy (:obj:`float`): Optional. The radius of uncertainty for the location,
            measured in meters; 0-:tg-const:`telegram.Location.HORIZONTAL_ACCURACY`.
        live_period (:obj:`int` | :class:`datetime.timedelta`): Optional. Time relative to the
            message sending date, during which the location can be updated, in seconds. For active
            live locations only.

            .. deprecated:: v22.2
                |time-period-int-deprecated|
        heading (:obj:`int`): Optional. The direction in which user is moving, in degrees;
            :tg-const:`telegram.Location.MIN_HEADING`-:tg-const:`telegram.Location.MAX_HEADING`.
            For active live locations only.
        proximity_alert_radius (:obj:`int`): Optional. Maximum distance for proximity alerts about
            approaching another chat member, in meters. For sent live locations only.

    )Ú_live_periodÚheadingÚhorizontal_accuracyÚlatitudeÚ	longitudeÚproximity_alert_radiusN©Ú
api_kwargsr   r   r   Úlive_periodr   r   r   c                ó*  •— t          ¦   «                              |¬¦  «         || _        || _        || _        t          |¦  «        | _        || _        |rt          |¦  «        nd | _	        | j        | j        f| _
        |                      ¦   «          d S )Nr   )ÚsuperÚ__init__r   r   r   r   r   r   Úintr   Ú	_id_attrsÚ_freeze)	Úselfr   r   r   r   r   r   r   Ú	__class__s	           €ú\/home/div/.hermes/hermes-agent/venv/lib/python3.11/site-packages/telegram/_files/location.pyr   zLocation.__init__R   s‘   ø€ õ 	‰Œ×Ò JÐÑ/Ô/Ð/à )ˆŒØ'ˆŒð 2EˆÔ Ý2>¸{Ñ2KÔ2KˆÔØ#*ˆŒà+AÐK�CÐ&Ñ'Ô'Ð'Àtð 	Ô#ð œ.¨$¬-Ð8ˆŒà�Š‰Œˆˆˆó    Úreturnc                 ó.   — t          | j        d¬¦  «        S )Nr   )Ú	attribute)r   r   )r   s    r   r   zLocation.live_periodn   s   € å" 4Ô#4ÀÐNÑNÔNÐNr   ÚHORIZONTAL_ACCURACYÚMIN_HEADINGÚMAX_HEADING)NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__Úfloatr	   r   r   r   ÚpropertyÚdtmÚ	timedeltar   r   ÚLocationLimitr"   r   Ú__annotations__r#   r$   Ú__classcell__)r   s   @r   r   r      sc  ø€ € € € € € ð'ð 'ðR€Ið -1Ø)-Ø"Ø-1ðð '+ðð ð àðð ðð # T™\ð	ð
   $Ñ&ðð �t‘ðð !$ d¡
ðð ˜t‘Oðð ð ð ð ð ð8 ðO˜S 3¤=Ñ0°4Ñ7ð Oð Oð Oñ „XðOð '0Ô&=Ô&QÐ˜˜sœÐQÐQÑQðð (Ô5ÔA€K��s”ÐAÐAÑAðð (Ô5ÔA€K��s”ÐAÐAÑAðð ð ð r   r   )r(   Údatetimer,   Útypingr   Útelegramr   Útelegram._telegramobjectr   Útelegram._utils.argumentparsingr   Útelegram._utils.datetimer   Útelegram._utils.typesr   r	   r   © r   r   ú<module>r9      sÊ   ðð& JÐ Ià Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6ðað að að að aˆ~ñ aô að að að ar   