+
    ÃHàj`  ã                   ó   € ^ RI t R tR tRtR# )é    Nc                  ó@   €  ^ RI Hp  RpV#   \         d    Rp T# i ; i)r   )Ú_messageTF)Úgoogle._upbr   ÚImportError)r   Úhas_upbs     Ú�/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/50f6b671e3f94b538e344231dfcb664f/venv/lib/python3.14/site-packages/proto/utils.pyr   r      s1   € ðÝ(àˆð €Nøô ô Ø‰Ø€Nðús   ‚ Œœc                óX   a € \         P                  ! S 4      V 3R l4       p\        V4      # )zÚMake the callable into a cached property.

Similar to @property, but the function will only be called once per
object.

Args:
    fx (Callable[]): The property function.

Returns:
    Callable[]: The wrapped function.
c                 ó  <€ \        V R 4      '       g   \        P                  V R / 4       SP                  V P                  9  d    S! V 4      V P                  SP                  &   V P                  SP                  ,          # )Ú_cached_values)ÚhasattrÚobjectÚ__setattr__Ú__name__r   )ÚselfÚfxs   &€r   ÚinnerÚcached_property.<locals>.inner)   si   ø€ ô �tÐ-×.Ò.Ü×Ñ˜tÐ%5°rÔ:ð �;‰;˜d×1Ñ1Ô1Ù/1°$«xˆD×Ñ §¡Ñ,ð ×"Ñ" 2§;¡;Õ/Ð/ó    )Ú	functoolsÚwrapsÚproperty)r   r   s   f r   Úcached_propertyr      s,   ø€ ô ‡_‚_�RÓô0ó ð0ô �E‹?Ðr   )r   )r   r   r   Ú__all__© r   r   Ú<module>r      s   ðó òòð< ‚r   