Ë
    A²Xj]J  ã                  óÔ  — d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
 d dlmZmZmZmZmZ d dlZd dlmZ d dlmZ d dlmZ d	d
lmZmZmZmZmZmZmZm Z  ddlm!Z! ddlm"Z"m#Z# ddl$m%Z%m&Z& ddl'm(Z(m)Z)m*Z* ddl+m,Z,m-Z- ddl.m/Z/ ddl0m1Z1m2Z2 ddl3m4Z4m5Z5  G d„ dee1   «      Z6 G d„ dee1   «      Z7 G d„ dee1   «      Z8 G d„ dee1   «      Z9	 	 	 	 	 	 d!d„Z:dZ;eefZ<e"dœ	 	 	 	 	 	 	 d"d „Z=y)#é    )Úannotations)ÚTracebackType)ÚTYPE_CHECKINGÚAnyÚTypeÚGenericÚCallableÚcast)ÚSelfÚIteratorÚ	AwaitableÚAsyncIteratorÚassert_neverN)Ú	BaseModel)ÚToolUseBlock)ÚServerToolUseBlocké   )Ú	TextEventÚCitationEventÚThinkingEventÚInputJsonEventÚSignatureEventÚParsedMessageStopEventÚParsedMessageStreamEventÚParsedContentBlockStopEventé   )ÚRawMessageStreamEvent)Ú	NOT_GIVENÚNotGiven)Úconsume_sync_iteratorÚconsume_async_iterator)ÚbuildÚconstruct_typeÚconstruct_type_unchecked)ÚStreamÚAsyncStream)Úis_givené   )ÚResponseFormatTÚ
parse_text)ÚParsedMessageÚParsedContentBlockc                  óÄ   — e Zd ZU ded<   	 	 	 	 	 	 	 dd„Zedd„«       Zedd„«       Zdd„Zdd„Z	dd„Z
	 	 	 	 	 	 	 	 dd	„Zdd
„Zdd„Zdd„Zdd„Zedd„«       Zdd„Zdd„Zy)ÚMessageStreamúIterator[str]Útext_streamc                ó‚   — || _         | j                  «       | _        | j                  «       | _        d | _        || _        y ©N)Ú_raw_streamÚ__stream_text__r0   Ú
__stream__Ú	_iteratorÚ&_MessageStream__final_message_snapshotÚ_MessageStream__output_format©ÚselfÚ
raw_streamÚoutput_formats      úg/var/www/html/content_generation/venv/lib/python3.12/site-packages/anthropic/lib/streaming/_messages.pyÚ__init__zMessageStream.__init__,   ó;   € ð
 &ˆÔØ×/Ñ/Ó1ˆÔØŸ™Ó*ˆŒØOSˆÔ%Ø,ˆÕó    c                ó.   — | j                   j                  S r2   ©r3   Úresponse©r:   s    r=   rC   zMessageStream.response7   ó   € à×Ñ×(Ñ(Ð(r@   c                óL   — | j                   j                  j                  d«      S ©Nz
request-id©rC   ÚheadersÚgetrD   s    r=   Ú
request_idzMessageStream.request_id;   ó   € à�}‰}×$Ñ$×(Ñ(¨Ó6Ð6r@   c                ó6   — | j                   j                  «       S r2   )r6   Ú__next__rD   s    r=   rN   zMessageStream.__next__?   s   € Ø�~‰~×&Ñ&Ó(Ð(r@   c              #  ó6   K  — | j                   D ]  }|–— Œ y ­wr2   ©r6   ©r:   Úitems     r=   Ú__iter__zMessageStream.__iter__B   s   è ø€ Ø—N”NˆDØ‹Jñ #ùs   ‚c                ó   — | S r2   © rD   s    r=   Ú	__enter__zMessageStream.__enter__F   s   € Øˆr@   c                ó$   — | j                  «        y r2   ©Úclose©r:   Úexc_typeÚexcÚexc_tbs       r=   Ú__exit__zMessageStream.__exit__I   s   € ð 	�
‰
�r@   c                ó8   — | j                   j                  «        y©zŠ
        Close the response and release the connection.

        Automatically called if the response body is read to completion.
        N©r3   rY   rD   s    r=   rY   zMessageStream.closeQ   s   € ð 	×Ñ×ÑÕ r@   c                óV   — | j                  «        | j                  €J ‚| j                  S )úqWaits until the stream has been read to completion and returns
        the accumulated `Message` object.
        )Ú
until_doner7   rD   s    r=   Úget_final_messagezMessageStream.get_final_messageY   s,   € ð 	�‰ÔØ×,Ñ,Ð8Ð8Ð8Ø×,Ñ,Ð,r@   c           	     óN  — | j                  «       }g }|j                  D ]-  }|j                  dk(  sŒ|j                  |j                  «       Œ/ |s@t        ddj                  |j                  D �cg c]  }|j                  ‘Œ c}«      › d�«      ‚dj                  |«      S c c}w )úçReturns all `text` content blocks concatenated together.

        > [!NOTE]
        > Currently the API will only respond with a single content block.

        Will raise an error if no `text` content blocks were returned.
        Útextúc.get_final_text() can only be called when the API returns a `text` content block.
The API returned Ú,úQ content block type(s) that you can access by calling get_final_message().contentÚ ©re   ÚcontentÚtypeÚappendrh   ÚRuntimeErrorÚjoin©r:   ÚmessageÚtext_blocksÚblockÚbs        r=   Úget_final_textzMessageStream.get_final_texta   sâ   € ð ×(Ñ(Ó*ˆØ!#ˆØ—_”_ˆEØ�z‰z˜VÓ#Ø×"Ñ" 5§:¡:Õ.ð %ñ ÜØvÐwz×wÑwð  RY÷  Raò  Raó  Abñ  Rað  MNð  BC÷  BHó  BHð  Rañ  Abó  xcð  wdð  duð  vóð ð �w‰w�{Ó#Ð#ùò Abs   Á0B"c                ó   — t        | «       y)z)Blocks until the stream has been consumedN)r    rD   s    r=   rd   zMessageStream.until_donev   s
   € ä˜dÕ#r@   c                ó6   — | j                   €J ‚| j                   S r2   )r7   rD   s    r=   Úcurrent_message_snapshotz&MessageStream.current_message_snapshot{   ó    € à×,Ñ,Ð8Ð8Ð8Ø×,Ñ,Ð,r@   c              #  óÀ   K  — | j                   D ]K  }t        || j                  | j                  ¬«      | _        t	        || j
                  ¬«      }|D ]  }|–— Œ ŒM y ­w©N)ÚeventÚcurrent_snapshotr<   )r   Úmessage_snapshot)r3   Úaccumulate_eventr7   r8   Úbuild_eventsr{   ©r:   Ú	sse_eventÚevents_to_firer   s       r=   r5   zMessageStream.__stream__€   s[   è ø€ Ø×)Ô)ˆIÜ,<ØØ!%×!>Ñ!>Ø"×2Ñ2ô-ˆDÔ)ô *°	ÈD×LiÑLiÔjˆNÛ'�Ø“ñ (ñ *ùs   ‚AAc              #  óž   K  — | D ]D  }|j                   dk(  sŒ|j                  j                   dk(  sŒ-|j                  j                  –— ŒF y ­w©NÚcontent_block_deltaÚ
text_delta©ro   Údeltarh   ©r:   Úchunks     r=   r4   zMessageStream.__stream_text__Œ   s>   è ø€ ÛˆEØ�z‰zÐ2Ó2°u·{±{×7GÑ7GÈ<Ó7WØ—k‘k×&Ñ&Ó&ñ ùs   ‚A˜A²AN)r;   zStream[RawMessageStreamEvent]r<   úResponseFormatT | NotGivenÚreturnÚNone©r�   zhttpx.Response©r�   z
str | None©r�   z)ParsedMessageStreamEvent[ResponseFormatT])r�   z3Iterator[ParsedMessageStreamEvent[ResponseFormatT]]©r�   r   ©r[   ztype[BaseException] | Noner\   zBaseException | Noner]   zTracebackType | Noner�   r‘   ©r�   r‘   ©r�   úParsedMessage[ResponseFormatT]©r�   Ústr)r�   r/   )Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r>   ÚpropertyrC   rK   rN   rS   rV   r^   rY   re   rx   rd   r{   r5   r4   rU   r@   r=   r.   r.   !   sÂ   … ØÓðð	-à1ð	-ð 2ð	-ð 
ó		-ð ò)ó ð)ð ò7ó ð7ó)óóðà,ðð "ðð %ð	ð
 
óó!ó-ó$ó*$ð
 ò-ó ð-ó
ô'r@   r.   c                  óD   — e Zd ZdZ	 	 	 	 	 	 dd„Zdd„Z	 	 	 	 	 	 	 	 dd„Zy)	ÚMessageStreamManagerz°Wrapper over MessageStream that is returned by `.stream()`.

    ```py
    with client.messages.stream(...) as stream:
        for chunk in stream:
            ...
    ```
    c               ó.   — d | _         || _        || _        y r2   )Ú_MessageStreamManager__streamÚ"_MessageStreamManager__api_requestÚ$_MessageStreamManager__output_format©r:   Úapi_requestr<   s      r=   r>   zMessageStreamManager.__init__œ   s   € ð @DˆŒØ(ˆÔØ,ˆÕr@   c                ór   — | j                  «       }t        || j                  ¬«      | _        | j                  S ©N©r<   )r¥   r.   r¦   r¤   ©r:   r;   s     r=   rV   zMessageStreamManager.__enter__¦   s.   € Ø×'Ñ'Ó)ˆ
Ü% jÀ×@TÑ@TÔUˆŒØ�}‰}Ðr@   c                óR   — | j                   �| j                   j                  «        y y r2   )r¤   rY   rZ   s       r=   r^   zMessageStreamManager.__exit__«   s#   € ð �=‰=Ð$Ø�M‰M×ÑÕ!ð %r@   N)r¨   z+Callable[[], Stream[RawMessageStreamEvent]]r<   r�   r�   r‘   )r�   zMessageStream[ResponseFormatT]r–   )rœ   r�   rž   Ú__doc__r>   rV   r^   rU   r@   r=   r¢   r¢   ’   sX   „ ñð-à@ð-ð 2ð	-ð
 
ó-óð
"à,ð"ð "ð"ð %ð	"ð
 
ô"r@   r¢   c                  óÄ   — e Zd ZU ded<   	 	 	 	 	 	 	 dd„Zedd„«       Zedd„«       Zdd„Zdd„Z	dd„Z
	 	 	 	 	 	 	 	 dd	„Zdd
„Zdd„Zdd„Zdd„Zedd„«       Zdd„Zdd„Zy)ÚAsyncMessageStreamúAsyncIterator[str]r0   c                ó‚   — || _         | j                  «       | _        | j                  «       | _        d | _        || _        y r2   )r3   r4   r0   r5   r6   Ú+_AsyncMessageStream__final_message_snapshotÚ"_AsyncMessageStream__output_formatr9   s      r=   r>   zAsyncMessageStream.__init__À   r?   r@   c                ó.   — | j                   j                  S r2   rB   rD   s    r=   rC   zAsyncMessageStream.responseË   rE   r@   c                óL   — | j                   j                  j                  d«      S rG   rH   rD   s    r=   rK   zAsyncMessageStream.request_idÏ   rL   r@   c              ƒ  óR   K  — | j                   j                  «       ƒ d {  –—† S 7 Œ­wr2   )r6   Ú	__anext__rD   s    r=   r¸   zAsyncMessageStream.__anext__Ó   s   è ø€ Ø—^‘^×-Ñ-Ó/×/Ð/Ð/ús   ‚' %¡'c               óH   K  — | j                   2 3 d {  –—† }|­–— Œ7 Œ
6 y ­wr2   rP   rQ   s     r=   Ú	__aiter__zAsyncMessageStream.__aiter__Ö   s!   è ø€ ØŸ.š.÷ 	�$ØŒJð	ø™.ùs   ‚"� “” —"ž  "c              ƒ  ó   K  — | S ­wr2   rU   rD   s    r=   Ú
__aenter__zAsyncMessageStream.__aenter__Ú   s   è ø€ Øˆùs   ‚c              ƒ  ó@   K  — | j                  «       ƒ d {  –—†  y 7 Œ­wr2   rX   rZ   s       r=   Ú	__aexit__zAsyncMessageStream.__aexit__Ý   s   è ø€ ð �j‰j‹l×Òús   ‚–—c              ƒ  óT   K  — | j                   j                  «       ƒ d{  –—†  y7 Œ­wr`   ra   rD   s    r=   rY   zAsyncMessageStream.closeå   s    è ø€ ð ×Ñ×$Ñ$Ó&×&Ò&ús   ‚( &¡(c              ƒ  ór   K  — | j                  «       ƒ d{  –—†  | j                  €J ‚| j                  S 7 Œ­w)rc   N)rd   r³   rD   s    r=   re   z$AsyncMessageStream.get_final_messageí   s;   è ø€ ð �o‰oÓ×ÐØ×,Ñ,Ð8Ð8Ð8Ø×,Ñ,Ð,ð 	 ús   ‚7–5—7c           	   ƒ  ój  K  — | j                  «       ƒ d{  –—† }g }|j                  D ]-  }|j                  dk(  sŒ|j                  |j                  «       Œ/ |s@t        ddj                  |j                  D �cg c]  }|j                  ‘Œ c}«      › d�«      ‚dj                  |«      S 7 Œ•c c}w ­w)rg   Nrh   ri   rj   rk   rl   rm   rs   s        r=   rx   z!AsyncMessageStream.get_final_textõ   sî   è ø€ ð ×.Ñ.Ó0×0ˆØ!#ˆØ—_”_ˆEØ�z‰z˜VÓ#Ø×"Ñ" 5§:¡:Õ.ð %ñ ÜØvÐwz×wÑwð  RY÷  Raò  Raó  Abñ  Rað  MNð  BC÷  BHó  BHð  Rañ  Abó  xcð  wdð  duð  vóð ð �w‰w�{Ó#Ð#ð 1úò Abùs&   ‚B3–B,—$B3¼>B3Á:B.Â B3Â.B3c              ƒ  ó6   K  — t        | «      ƒ d{  –—†  y7 Œ­w)z(Waits until the stream has been consumedN)r!   rD   s    r=   rd   zAsyncMessageStream.until_done
  s   è ø€ ä$ TÓ*×*Ò*ús   ‚‘’c                ó6   — | j                   €J ‚| j                   S r2   )r³   rD   s    r=   r{   z+AsyncMessageStream.current_message_snapshot  r|   r@   c               óÒ   K  — | j                   2 3 d {  –—† }t        || j                  | j                  ¬«      | _        t	        || j
                  ¬«      }|D ]  }|­–— Œ	 ŒT7 ŒO6 y ­wr~   )r3   r‚   r³   r´   rƒ   r{   r„   s       r=   r5   zAsyncMessageStream.__stream__  sd   è ø€ Ø#×/Ò/÷ 		�)Ü,<ØØ!%×!>Ñ!>Ø"×2Ñ2ô-ˆDÔ)ô *°	ÈD×LiÑLiÔjˆNÛ'�Ø”ñ (ð		øÑ/ùs&   ‚A'�A%“A#”A%—AA'Á#A%Á%A'c               ó°   K  — | 2 3 d {  –—† }|j                   dk(  sŒ|j                  j                   dk(  sŒ3|j                  j                  ­–— ŒM7 ŒH6 y ­wrˆ   r‹   r�   s     r=   r4   z"AsyncMessageStream.__stream_text__   sF   è ø€ Ù÷ 	'�%Ø�z‰zÐ2Ó2°u·{±{×7GÑ7GÈ<Ó7WØ—k‘k×&Ñ&Ô&ð	'ø™4ùs/   ‚A…A‰AŠA�AžA¸AÁAÁAN)r;   z"AsyncStream[RawMessageStreamEvent]r<   r�   r�   r‘   r’   r“   r”   )r�   z8AsyncIterator[ParsedMessageStreamEvent[ResponseFormatT]]r•   r–   r—   r˜   rš   )r�   r±   )rœ   r�   rž   rŸ   r>   r    rC   rK   r¸   rº   r¼   r¾   rY   re   rx   rd   r{   r5   r4   rU   r@   r=   r°   r°   µ   sÂ   … Ø#Ó#ðð	-à6ð	-ð 2ð	-ð 
ó		-ð ò)ó ð)ð ò7ó ð7ó0óóðà,ðð "ðð %ð	ð
 
óó'ó-ó$ó*+ð
 ò-ó ð-ó
ô'r@   r°   c                  óH   — e Zd ZdZedœ	 	 	 	 	 dd„Zdd„Z	 	 	 	 	 	 	 	 d	d„Zy)
ÚAsyncMessageStreamManagera"  Wrapper over AsyncMessageStream that is returned by `.stream()`
    so that an async context manager can be used without `await`ing the
    original client call.

    ```py
    async with client.messages.stream(...) as stream:
        async for chunk in stream:
            ...
    ```
    r«   c               ó.   — d | _         || _        || _        y r2   )Ú"_AsyncMessageStreamManager__streamÚ'_AsyncMessageStreamManager__api_requestÚ)_AsyncMessageStreamManager__output_formatr§   s      r=   r>   z"AsyncMessageStreamManager.__init__2  s   € ð EIˆŒØ(ˆÔØ,ˆÕr@   c              ƒ  ó†   K  — | j                   ƒ d {  –—† }t        || j                  ¬«      | _        | j                  S 7 Œ,­wrª   )rÊ   r°   rË   rÉ   r¬   s     r=   r¼   z$AsyncMessageStreamManager.__aenter__<  s7   è ø€ Ø×-Ñ-×-ˆ
Ü*¨:ÀT×EYÑEYÔZˆŒØ�}‰}Ðð .ús   ‚A’?“-Ac              ƒ  ón   K  — | j                   �#| j                   j                  «       ƒ d {  –—†  y y 7 Œ­wr2   )rÉ   rY   rZ   s       r=   r¾   z#AsyncMessageStreamManager.__aexit__A  s0   è ø€ ð �=‰=Ð$Ø—-‘-×%Ñ%Ó'×'Ñ'ð %Ø'ús   ‚*5¬3­5N)r¨   z-Awaitable[AsyncStream[RawMessageStreamEvent]]r<   r�   r�   r‘   )r�   z#AsyncMessageStream[ResponseFormatT]r–   )rœ   r�   rž   r®   r   r>   r¼   r¾   rU   r@   r=   rÇ   rÇ   &  s]   „ ñ	ð 5>ñ	-àBð-ð 2ð	-ð
 
ó-óð
(à,ð(ð "ð(ð %ð	(ð
 
ô(r@   rÇ   c           	     óÒ  — g }| j                   dk(  r|j                  | «       |S | j                   dk(  r|j                  | «       |S | j                   dk(  r*|j                  t        t        t           d|¬«      «       |S | j                   dk(  r|j                  | «       |S | j                   dk(  �rL|j                  | «       |j
                  | j                     }| j                  j                   dk(  rR|j                   dk(  �r÷|j                  t        t        d| j                  j                  |j                  ¬	«      «       |S | j                  j                   d
k(  rR|j                   dk(  �rŒ|j                  t        t        d| j                  j                  |j                  ¬«      «       |S | j                  j                   dk(  rV|j                   dk(  �r!|j                  t        t        d| j                  j                  |j                  xs g ¬«      «       |S | j                  j                   dk(  rQ|j                   dk(  r³|j                  t        t         d| j                  j"                  |j"                  ¬«      «       |S | j                  j                   dk(  r=|j                   dk(  r+|j                  t        t$        d|j&                  ¬«      «       	 |S t(        rt+        | j                  «       |S | j                   dk(  rI|j
                  | j                     }t        t,        d| j                  |¬«      }|j                  |«       |S t(        rt+        | «       |S )NÚmessage_startÚmessage_deltaÚmessage_stop)ro   rt   Úcontent_block_startr‰   rŠ   rh   )ro   rh   ÚsnapshotÚinput_json_deltaÚtool_useÚ
input_json)ro   Úpartial_jsonrÓ   Úcitations_deltaÚcitation)ro   rÙ   rÓ   Úthinking_deltaÚthinking)ro   rÛ   rÓ   Úsignature_deltaÚ	signature)ro   rÝ   Úcontent_block_stop)ro   ÚindexÚcontent_block)ro   rp   r"   r   r)   rn   rß   rŒ   r   rh   r   r×   Úinputr   rÙ   Ú	citationsr   rÛ   r   rÝ   r   r   r   )r   r�   r†   rà   Úevent_to_fires        r=   rƒ   rƒ   K  s9  € ð
 GI€Nà‡z�z�_Ò$Ø×Ñ˜eÔ$ðf Ððe 
�‰�Ò	&Ø×Ñ˜eÔ$ðb Ðða 
�‰�~Ò	%Ø×ÑÜÔ(¬Ñ9ÀÐXhÔiô	
ð^ ÐðY 
�‰Ð,Ò	,Ø×Ñ˜eÔ$ðV ÐðU 
�‰Ð,Ó	,Ø×Ñ˜eÔ$à(×0Ñ0°·±Ñ=ˆØ�;‰;×Ñ˜|Ò+Ø×!Ñ! VÓ+Ø×%Ñ%ÜÜ!Ø#Ø"Ÿ[™[×-Ñ-Ø!.×!3Ñ!3ô	ôðH Ððy �[‰[×ÑÐ!3Ò3Ø×!Ñ! ZÓ/Ø×%Ñ%ÜÜ&Ø)Ø%*§[¡[×%=Ñ%=Ø!.×!4Ñ!4ô	ôðt Ððe �[‰[×ÑÐ!2Ò2Ø×!Ñ! VÓ+Ø×%Ñ%ÜÜ%Ø'Ø!&§¡×!5Ñ!5Ø!.×!8Ñ!8Ò!>¸Bô	ôð` ÐðQ �[‰[×ÑÐ!1Ò1Ø×!Ñ! ZÒ/Ø×%Ñ%ÜÜ%Ø'Ø!&§¡×!5Ñ!5Ø!.×!7Ñ!7ô	ôðL Ðð= �[‰[×ÑÐ!2Ò2Ø×!Ñ! ZÒ/Ø×%Ñ%ÜÜ&Ø(Ø"/×"9Ñ"9ôôð ð* Ðõ% Ü˜UŸ[™[Ô)ð" Ðð! 
�‰Ð+Ò	+Ø(×0Ñ0°·±Ñ=ˆäÜ'Ø%Ø—+‘+Ø'ô	
ˆð 	×Ñ˜mÔ,ð Ðõ Ü˜ÔàÐr@   Ú
__json_bufr«   c                ó6  — t        t        t        | «      t        «      slt        t        t        t        t        t           t        «      | ¬«      «      } t        t        t        | «      t        «      st        d| › dt        | «      › �«      ‚|€x| j                  dk(  rPt        t        t           t        j                  di t        t        | j                  j                  «       «      ¤Ž«      S t        d| j                  › d�«      ‚| j                  dk(  rR|j                  j!                  t        t        t#        t$        | j&                  j)                  «       ¬«      «      «       |S | j                  dk(  �r<|j                  | j*                     }| j,                  j                  d	k(  r;|j                  d
k(  �rø|xj.                  | j,                  j.                  z  c_        |S | j,                  j                  dk(  r}t        |t0        «      �r£ddlm} t        t6        t9        |t:        d«      «      }|t7        | j,                  j<                  d«      z  }|r ||d¬«      |_        tA        |t:        |«       |S | j,                  j                  dk(  rk|j                  d
k(  �r|jB                  s| j,                  jD                  g|_!        |S |jB                  j!                  | j,                  jD                  «       |S | j,                  j                  dk(  r:|j                  dk(  r‹|xjF                  | j,                  jF                  z  c_#        |S | j,                  j                  dk(  r,|j                  dk(  r8| j,                  jH                  |_$        |S tJ        rtM        | j,                  «       |S | j                  dk(  rP|j                  | j*                     }|j                  d
k(  r&tO        |«      rtQ        |j.                  |«      |_)        |S | j                  dk(  �rx| j,                  jT                  |_*        | j,                  jV                  |_+        | j,                  jX                  �| j,                  jX                  |_,        | jZ                  j\                  |jZ                  _.        | jZ                  j^                  �%| jZ                  j^                  |jZ                  _/        | jZ                  j`                  �%| jZ                  j`                  |jZ                  _0        | jZ                  jb                  �%| jZ                  jb                  |jZ                  _1        | jZ                  jd                  �%| jZ                  jd                  |jZ                  _2        |S )N)Útype_Úvaluez;Unexpected event runtime type, after deserialising twice - z - rÏ   zUnexpected event order, got z before "message_start"rÒ   r‰   rŠ   rh   rÔ   r   )Ú	from_jsonr@   zutf-8T)Úpartial_moderØ   rÚ   rÛ   rÜ   rÞ   rÐ   rU   )3Ú
isinstancer
   r   r   r   r$   r   Ú	TypeErrorro   r+   r)   Ú	constructrt   Úto_dictrq   rn   rp   r#   r,   rà   Ú
model_dumprß   rŒ   rh   ÚTRACKS_TOOL_INPUTÚjiterrè   ÚbytesÚgetattrÚJSON_BUF_PROPERTYr×   rá   Úsetattrrâ   rÙ   rÛ   rÝ   r   r   r'   r*   Úparsed_outputÚstop_reasonÚstop_sequenceÚstop_detailsÚusageÚoutput_tokensÚinput_tokensÚcache_creation_input_tokensÚcache_read_input_tokensÚserver_tool_use)r   r€   r<   rn   rè   Újson_bufrà   s          r=   r‚   r‚   ±  s†  € ô ”dœ3 Ó&¬	Ô2ÜÜ!Ü$Üœ4Ô 5Ñ6Ô8MÓNØôó
ˆô œ$œs EÓ*¬IÔ6ÜÐYÐZ_ÐY`Ð`cÔdhÐinÓdoÐcpÐqÓrÐràÐØ�:‰:˜Ò(Üœ¤oÑ6¼×8OÑ8OÑ8uÔRVÔWZÐ\a×\iÑ\i×\qÑ\qÓ\sÓRtÑ8uÓvÐväÐ9¸%¿*¹*¸ÐE\Ð]Ó^Ð^à‡z�zÐ*Ò*à× Ñ ×'Ñ'ÜÜÜÔ%7¸u×?RÑ?R×?]Ñ?]Ó?_Ô`óô	
ð| Ððq 
�‰Ð,Ó	,Ø"×*Ñ*¨5¯;©;Ñ7ˆØ�;‰;×Ñ˜|Ò+Ø�|‰|˜vÓ%Ø—’ §¡× 0Ñ 0Ñ0•ðh Ððg �[‰[×ÑÐ!3Ò3Ü˜'Ô#4Õ5Ý+ô
  ¤¤w¨wÔ8IÈ3Ó'OÓP�ØœE %§+¡+×":Ñ":¸GÓDÑD�áÙ$-¨hÀTÔ$J�G”Mä˜Ô!2°HÔ=ðL ÐðK �[‰[×ÑÐ!2Ò2Ø�|‰|˜vÓ%Ø×(Ò(Ø).¯©×)=Ñ)=Ð(>�GÔ%ðD ÐðA ×%Ñ%×,Ñ,¨U¯[©[×-AÑ-AÔBð@ Ðð? �[‰[×ÑÐ!1Ò1Ø�|‰|˜zÒ)Ø× Ò  E§K¡K×$8Ñ$8Ñ8Õ ð: Ðð9 �[‰[×ÑÐ!2Ò2Ø�|‰|˜zÒ)Ø$)§K¡K×$9Ñ$9�Ô!ð4 Ðõ/ Ü˜UŸ[™[Ô)ð, Ðð+ 
�‰Ð+Ò	+Ø(×0Ñ0°·±Ñ=ˆØ×Ñ Ò'¬H°]Ô,CÜ*4°]×5GÑ5GÈÓ*WˆMÔ'ð$ Ðð# 
�‰�Ó	&Ø',§{¡{×'>Ñ'>ÐÔ$Ø).¯©×)BÑ)BÐÔ&Ø�;‰;×#Ñ#Ð/Ø,1¯K©K×,DÑ,DÐÔ)Ø/4¯{©{×/HÑ/HÐ×ÑÔ,ð �;‰;×#Ñ#Ð/Ø27·+±+×2JÑ2JÐ×"Ñ"Ô/Ø�;‰;×2Ñ2Ð>ØAFÇÁ×AhÑAhÐ×"Ñ"Ô>Ø�;‰;×.Ñ.Ð:Ø=B¿[¹[×=`Ñ=`Ð×"Ñ"Ô:Ø�;‰;×&Ñ&Ð2Ø5:·[±[×5PÑ5PÐ×"Ñ"Ô2àÐr@   )r   r   r�   r™   r�   z/list[ParsedMessageStreamEvent[ResponseFormatT]])r   r   r€   z%ParsedMessage[ResponseFormatT] | Noner<   r�   r�   r™   )>Ú
__future__r   Útypesr   Útypingr   r   r   r   r	   r
   Útyping_extensionsr   r   r   r   r   ÚhttpxÚpydanticr   Úanthropic.types.tool_use_blockr   Ú%anthropic.types.server_tool_use_blockr   Ú_typesr   r   r   r   r   r   r   r   r   r   r   Ú_utilsr    r!   Ú_modelsr"   r#   r$   Ú
_streamingr%   r&   Ú_utils._utilsr'   Ú_parse._responser)   r*   Útypes.parsed_messager+   r,   r.   r¢   r°   rÇ   rƒ   ró   rï   r‚   rU   r@   r=   Ú<module>r     s  ðÝ "å ß D× Dß TÕ Tã Ý å 7Ý D÷	÷ 	ó 	õ +ß )ß Cß FÑ Fß -Ý %ß :ß Eôn'�G˜OÑ,ô n'ôb "˜7 ?Ñ3ô  "ôFn'˜ Ñ1ô n'ôb"( ¨Ñ 8ô "(ðJ[à ð[ð 5ð[ð 5ó	[ð| !Ð ð ØðÐ ð 1:ñ	Wà ðWð <ðWð .ð	Wð
 $ôWr@   