§
    ¢”jq	  ã                   ó,   — d Z dgZ G d„ de¦  «        ZdS )zMisc dict tools.Úhashdictc                   óT   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ ZdS )r   a<  
    hashable dict implementation, suitable for use as a key into
    other dicts.

        >>> h1 = hashdict({"apples": 1, "bananas":2})
        >>> h2 = hashdict({"bananas": 3, "mangoes": 5})
        >>> h1+h2
        hashdict(apples=1, bananas=3, mangoes=5)
        >>> d1 = {}
        >>> d1[h1] = "salad"
        >>> d1[h1]
        'salad'
        >>> d1[h2]
        Traceback (most recent call last):
        ...
        KeyError: hashdict(bananas=3, mangoes=5)

    based on answers from
       http://stackoverflow.com/questions/1151658/python-hashable-dicts

    c                 ó^   — t          t          |                      ¦   «         ¦  «        ¦  «        S ©N)ÚtupleÚsortedÚitems©Úselfs    úg/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/fontTools/misc/dictTools.pyÚ__keyzhashdict.__key   s    € Ý•V˜DŸJšJ™LœLÑ)Ô)Ñ*Ô*Ð*ó    c                 ó    — d                      | j        j        d                     d„ |                      ¦   «         D ¦   «         ¦  «        ¦  «        S )Nz{0}({1})z, c              3   óŽ   K  — | ]@}d                       t          |d         ¦  «        t          |d         ¦  «        ¦  «        V — ŒAdS )z{0}={1}é    é   N)ÚformatÚstrÚrepr)Ú.0Úis     r   ú	<genexpr>z$hashdict.__repr__.<locals>.<genexpr>$   sF   è è € ÐTÐTÀ!�i×&Ò&¥s¨1¨Q¬4¡y¤yµ$°q¸´t±*´*Ñ=Ô=ÐTÐTÐTÐTÐTÐTr   )r   Ú	__class__Ú__name__ÚjoinÚ_hashdict__keyr	   s    r   Ú__repr__zhashdict.__repr__!   sH   € Ø× Ò ØŒNÔ#Ø�IŠIÐTÐTÀtÇzÂzÁ|Ä|ÐTÑTÔTÑTÔTñ
ô 
ð 	
r   c                 óD   — t          |                      ¦   «         ¦  «        S r   )Úhashr   r	   s    r   Ú__hash__zhashdict.__hash__'   s   € Ý�D—J’J‘L”LÑ!Ô!Ð!r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚©Nz${0} does not support item assignment©Ú	TypeErrorr   r   r   )r
   ÚkeyÚvalues      r   Ú__setitem__zhashdict.__setitem__*   ó*   € ÝØ2×9Ò9¸$¼.Ô:QÑRÔRñ
ô 
ð 	
r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   )r
   r$   s     r   Ú__delitem__zhashdict.__delitem__/   r'   r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   r	   s    r   Úclearzhashdict.clear4   r'   r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   ©r
   ÚargsÚkwargss      r   Úpopzhashdict.pop9   r'   r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   r-   s      r   Úpopitemzhashdict.popitem>   r'   r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   r-   s      r   Ú
setdefaultzhashdict.setdefaultC   r'   r   c                 óZ   — t          d                     | j        j        ¦  «        ¦  «        ‚r!   r"   r-   s      r   Úupdatezhashdict.updateH   r'   r   c                 óZ   — t          | ¦  «        }t                               ||¦  «         |S r   )r   Údictr6   )r
   ÚrightÚresults      r   Ú__add__zhashdict.__add__P   s&   € Ý˜$‘”ˆÝ�Š�F˜EÑ"Ô"Ð"Øˆr   N)r   Ú
__module__Ú__qualname__Ú__doc__r   r   r   r&   r)   r+   r0   r2   r4   r6   r;   © r   r   r   r      sÃ   € € € € € ðð ð,+ð +ð +ð
ð 
ð 
ð"ð "ð "ð
ð 
ð 
ð

ð 
ð 
ð

ð 
ð 
ð

ð 
ð 
ð

ð 
ð 
ð

ð 
ð 
ð

ð 
ð 
ðð ð ð ð r   N)r>   Ú__all__r8   r   r?   r   r   ú<module>rA      sP   ðØ Ð àˆ,€ðLð Lð Lð Lð Lˆtñ Lô Lð Lð Lð Lr   