o
    "h	                     @   sh   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 er*ddlmZ G dd	 d	eZd
S )zHThis module contains an object that represents a Telegram GameHighScore.    )TYPE_CHECKINGOptional)TelegramObject)User)de_json_optional)JSONDict)Botc                
       sd   e Zd ZdZdZdddedededee f fd	d
Z	e
ddeded dd f fddZ  ZS )GameHighScoreaR  This object represents one row of the high scores table for a game.

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

    Args:
        position (:obj:`int`): Position in high score table for the game.
        user (:class:`telegram.User`): User.
        score (:obj:`int`): Score.

    Attributes:
        position (:obj:`int`): Position in high score table for the game.
        user (:class:`telegram.User`): User.
        score (:obj:`int`): Score.

    )positionscoreuserN
api_kwargsr
   r   r   r   c                   s>   t  j|d || _|| _|| _| j| j| jf| _|   d S )Nr   )super__init__r
   r   r   	_id_attrs_freeze)selfr
   r   r   r   	__class__ P/var/www/html/venv/lib/python3.10/site-packages/telegram/_games/gamehighscore.pyr   4   s   zGameHighScore.__init__databotr   returnc                    s0   |  |}t|dt||d< t j||dS )z,See :meth:`telegram.TelegramObject.de_json`.r   )r   r   )_parse_datar   getr   r   de_json)clsr   r   r   r   r   r   @   s   
zGameHighScore.de_json)N)__name__
__module____qualname____doc__	__slots__intr   r   r   r   classmethodr   __classcell__r   r   r   r   r	       s    *r	   N)r"   typingr   r   telegram._telegramobjectr   telegram._userr   telegram._utils.argumentparsingr   telegram._utils.typesr   telegramr   r	   r   r   r   r   <module>   s   