Ë
    úmxid  ã                  óp   — U d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
  ee«      Zded<   dd„Zdd	„Zy
)é    )Úannotations)ÚFinal)ÚconfigÚutil)Ú
get_logger)Ú
ForwardMsgr   Ú_LOGGERc                óò  — | j                   dk(  rè| j                  d«      dvrÔ| j                  }| j                  d«       | j	                  d¬«      }t        j                  |«      | _         | j                  j                  |«       t        |«      t        t        j                  d«      «      k\  xr4 | j                  d«      dk(  xr | j                  j                  d«      d	k(  | j                  _        y
y
y
)z¬Computes and assigns the unique hash for a ForwardMsg.

    If the ForwardMsg already has a hash, this is a no-op.

    Parameters
    ----------
    msg : ForwardMsg

    Ú Útype>   Úref_hashÚ
initializeÚmetadataT)Údeterministiczglobal.minCachedMessageSizeÚdeltaÚnew_elementN)ÚhashÚ
WhichOneofr   Ú
ClearFieldÚSerializeToStringr   Úcalc_md5ÚCopyFromÚlenÚintr   Ú
get_optionr   Ú	cacheable)Úmsgr   Úserialized_msgs      úZ/home/htdocs/ttos/venv/lib/python3.12/site-packages/streamlit/runtime/forward_msg_cache.pyÚpopulate_hash_if_neededr       sØ   € ð ‡x�x�2‚~˜#Ÿ.™.¨Ó0Ð8RÑRð —<‘<ˆØ�‰�zÔ"ð ×.Ñ.¸TÐ.ÓBˆô —=‘= Ó0ˆŒð 	�‰×Ñ˜hÔ'ô �Ó¤3¤v×'8Ñ'8Ð9VÓ'WÓ#XÑXò >Ø—‘˜vÓ&¨'Ñ1ò>à—	‘	×$Ñ$ VÓ,°Ñ=ð 	�‰Õð5 S€~ó    c                óî   — | j                   st        j                  d«       | S t        «       }| j                   |_        |j
                  j                  | j
                  «       d|j
                  _        |S )aŒ  Create a ForwardMsg that refers to the given message via its hash.

    The reference message will also get a copy of the source message's
    metadata.

    Parameters
    ----------
    msg : ForwardMsg
        The ForwardMsg to create the reference to.

    Returns
    -------
    ForwardMsg
        A new ForwardMsg that "points" to the original message via the
        ref_hash field.

    zÀFailed to create a reference message for a ForwardMsg since the message does not have a hash. This is not expected to happen, please report this as a bug. Falling back to the original message.F)r   r	   Úwarningr   r   r   r   r   )r   Úref_msgs     r   Úcreate_reference_msgr%   E   sb   € ð$ �8Š8Ü�‰ðQô	
ð ˆ
ä‹l€GØ—x‘x€GÔØ×Ñ×Ñ˜cŸl™lÔ+Ø!&€G×ÑÔØ€Nr!   N)r   r   ÚreturnÚNone)r   r   r&   r   )Ú
__future__r   Útypingr   Ú	streamlitr   r   Ústreamlit.loggerr   Ústreamlit.proto.ForwardMsg_pb2r   Ú__name__r	   Ú__annotations__r    r%   © r!   r   ú<module>r0      s0   ðö #å ç "Ý 'Ý 5á˜HÓ%€ˆÓ %ó(
ôV r!   