§
    £”jÿ  ã                   óF   — d dl Z  G d„ de¦  «        Z G d„ de¦  «        ZdS )é    Nc                   ó,   ‡ — e Zd ZdZˆ fd„Zˆ fd„Zˆ xZS )Ú	Singletonz›
    Singleton metaclass
    Based on Python Cookbook 3rd Edition Recipe 9.13
    Only one instance of a class can exist. Does not work with __slots__
    c                 óH   •—  t          ¦   «         j        |i |¤Ž d | _        d S ©N)ÚsuperÚ__init__Ú_Singleton__instance©ÚselfÚargsÚkwÚ	__class__s      €úh/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/openpyxl/compat/singleton.pyr   zSingleton.__init__   s*   ø€ Ø�‰ŒÔ˜$Ð% "Ð%Ð%Ð%ØˆŒˆˆó    c                 ó\   •— | j         € t          ¦   «         j        |i |¤Ž| _         | j         S r   )r	   r   Ú__call__r
   s      €r   r   zSingleton.__call__   s0   ø€ ØŒ?Ð"Ø.�e™gœgÔ.°Ð;¸Ð;Ð;ˆDŒOØŒÐr   ©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   Ú__classcell__©r   s   @r   r   r      s[   ø€ € € € € ðð ðð ð ð ð ðð ð ð ð ð ð ð ð r   r   c                   ó,   ‡ — e Zd ZdZˆ fd„Zˆ fd„Zˆ xZS )ÚCachedz™
    Caching metaclass
    Child classes will only create new instances of themselves if
    one doesn't already exist. Does not work with __slots__
    c                 ój   •—  t          ¦   «         j        |i |¤Ž t          j        ¦   «         | _        d S r   )r   r   ÚweakrefÚWeakValueDictionaryÚ_Cached__cacher
   s      €r   r   zCached.__init__   s3   ø€ Ø�‰ŒÔ˜$Ð% "Ð%Ð%Ð%ÝÔ2Ñ4Ô4ˆŒˆˆr   c                 ót   •— || j         v r| j         |         S  t          ¦   «         j        |Ž }|| j         |<   |S r   )r   r   r   )r   r   Úobjr   s      €r   r   zCached.__call__"   sA   ø€ Ø�4”<ÐÐØ”< Ô%Ð%à�e‰gŒgÔ Ð%ˆØ ˆŒ�TÑØˆ
r   r   r   s   @r   r   r      s[   ø€ € € € € ðð ð5ð 5ð 5ð 5ð 5ðð ð ð ð ð ð ð ð r   r   )r   Útyper   r   © r   r   ú<module>r$      sn   ðð €€€ðð ð ð ð �ñ ô ð ð"ð ð ð ð ˆTñ ô ð ð ð r   