ó
    |¤j5Ø  ã                   ó$   • S SK r  SS jr SS jrg)é    Nc           
      óæ  • US:”  a/  U(       a(  [        S UR                  5        5       5      nU(       a  gUS:”  aÕ  U R                  (       aÄ  U R                  (       a³  U R                  R                  (       a˜  [        U R                  R                  5      S:”  au  SU;  a  0 US'    U R                  R                  S   n[        US5      (       a  SU;   a  UR                  OSnSU R                  ;   a  [        U R                  5      US   U'   U R                  (       a¸  [        U R                  S5      (       a�  U R                  R                  (       a  U R                  R                  ck  SnXQ;  a  S
S
/ S/ 0SS	SS	S.X'   U R                  R                  (       a#  X   S==   U R                  R                  -  ss'   X   S   U R                  l        gU R                  (       Ga£  U R                  R                  (       Ga‡  U R                  R                  nU(       d  g[        U5       GHn  u  px [        US5      (       a  SU;   a  UR                  OUnXQ;  a  S
S
/ S/ 0SS	SS	S.X'   UR                  (       df  X   S   (       a  X   S   OSX   S   S.Ul        X   S   (       a  UU   S   UR                  S'   X   S   (       a  UU   S   UR                  S'   GOa[        UR                  S5      (       a6  UR                  R                  (       a  UR                  R                  X   S'   SUR                  ;   Ga  UR                  R                   n	U	(       Ga  [#        U	[$        5      (       Ga9  [#        X   S   [$        5      (       d  / X   S'   [        X   S   5      [        U	5      :  a7  X   S   R'                  SS
05        [        X   S   5      [        U	5      :  a  M7  [        U	5       HH  u  p«[#        U[        5      (       d  M  SU;   d  M$  US   (       d  M0  X   S   U
   S==   US   -  ss'   MJ     [)        [        X   S   5      5       HO  n
U
[        UR                  R                   5      :  d  M(  X   S   U
   S   UR                  R                   U
   S'   MQ     O0[#        X   S   [$        5      (       a  S
X   S'   X   S==   U	-  ss'   [#        X   S   [$        5      (       d  X   S   UR                  l        O@[#        UR                  R                   [$        5      (       d  UU   S   UR                  l        SUR                  ;   a,  UR                  R*                  nU(       a  X   S==   U-  ss'   X   S   (       a  UU   S   UR                  l        SUR                  ;   Ga  UR                  R,                  (       Gaë  UR                  R,                  nU GH·  n[#        U[        5      (       d  M  SU;   d  M#  US   nS	nX   S    H3  n[#        U[        5      (       d  M  UR/                  S5      U:X  d  M1  Un  O   U(       Ga(  SU;   au  US   (       ak  SU;  a  0 US'   SUS   ;   a'  SUS   ;  a  S
US   S'   US   S==   US   S   -  ss'   SUS   ;   a'  SUS   ;  a  S
US   S'   US   S==   US   S   -  ss'   UR1                  UR3                  5        VVs0 s H  u  nnUS:w  d  M  U(       d  M  UU_M     snn5        SU;   a]  US   (       aP  US   R1                  US   R3                  5        VVs0 s H  u  nnUS;  d  M  U(       d  M  UU_M     snn5        GM’  GM•  GM˜  X   S   R'                  [        U5      5        GMº     X   S   UR                  l        O"X   S   (       a  X   S   UR                  l        X   S   (       aL  [        UR                  S5      (       a  UR                  R                  (       d  X   S   UR                  l         SU;   a«  UR4                  (       aš  [#        UR4                  [        5      (       a{  SUR4                  ;   ak  UR4                  S   nU(       aU  [#        U[$        5      (       a@  SX   ;  a
  S/ 0X   S'   OSX   S   ;  a
  / X   S   S'   X   S   S   R7                  U5        X   S   S   (       a9  [        US5      (       a(  UR4                  (       a  X   S   S   UR4                  S'   US:”  d  GM  [        US5      (       d  GM/  UR:                  (       d  GMC  UR:                  S:w  d  GMV  UR:                  X   S'   SX   S'   GMq     US:”  Gaä  [=        S UR                  5        5       5      n/ nU H€  n[        US5      (       d  M  UR:                  (       d  M)  UR:                  S:w  d  M;  [        US5      (       a  SU;   a  UR                  OSnUR:                  nUR'                  UUU45        M‚     U(       d  gUS   S   nUS:X  Ga$  UU:  aI  U HB  n[        US5      (       d  M  UR:                  (       d  M)  UR:                  S:w  d  M;  SUl        MD     gUR                  5        H'  n[#        U[        5      (       d  M  SU;   d  M"  SUS'   M)     / n[?        UR3                  5        VVs/ s H)  u  nn[#        U[        5      (       d  M  SU;   d  M%  UU4PM+     snnS S9nU H¤  u  nnUUS   S .nSUS   (       a  US   OS0nUS   (       a%  [#        US   [@        5      (       a  US   OUS   US'   US   (       a  US   US'   US   (       a  US   US'   UUS!'   US   S   (       a  SUS   S   0US'   UR'                  U5        M¦     UU R                  l        SU;   a†  US   (       a|  0 nUS   nSn S	n!S	n"UR3                  5        H4  u  nn#SU#;   a  U U#S   -  n U!c  S"U#;   a  U#S"   n!U"b  M'  S#U#;   d  M/  U#S#   n"M6     U!b  U!US"'   U US'   U!b  U!U -   US$'   U"b  U"US#'   UU l        g/ n$U Hï  u  nnnUR/                  U5      n%U%b  U%R/                  SS5      (       a  M4  SU%S'   U$(       a  [B        RD                  " U 5      n&OU n&[B        RD                  " U5      n'U'/U&R                  l        U&R                  (       aL  SU;   aF  XQS   ;   a>  US   U   n(SU(;   a0  U(S   U&R                  S'   S"U(;   a  U(S"   U(S   -   U&R                  S$'   U$R'                  U&5        Mñ     U$(       a  U$$ gg! [        [        [        4 a     GN—f = f! [        [        4 a    Un GNdf = fs  snnf s  snnf ! [        [        [8        4 a     GNîf = fs  snnf )%a¦  Merge a single response chunk with accumulated data.

Args:
    parsed_response: The response chunk to merge
    accumulated_data: Dictionary storing accumulated data for each choice
    n: Number of expected choices (default 1)

Returns:
    bool or list: True if this response should be yielded normally,
                  False if filtered, or a list of responses for n>1 with
                  non-stop finish reasons
é   c              3   ó„   #   • U  H6  n[        U[        5      (       d  M  S U;   d  M"  UR                  S S5      v •  M8     g7f©Úall_choices_sentFN©Ú
isinstanceÚdictÚget©Ú.0Údatas     Ú«C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\dashscope/utils/message_utils.pyÚ	<genexpr>Ú(merge_single_response.<locals>.<genexpr>   ó?   é € ð 
â1�Ü˜$¤×%ó 0à*<ÀÑ*Dó 0ˆD�H‰HÐ'¨×/Ð/Ú1ùó   ‚A ŸA §A Fr   Úusage_by_indexÚindexÚoutput_tokensÚtextNÚ Úcontent©r   Úreasoning_contentÚ
tool_callsÚlogprobsÚfinishedÚfinish_reasonr   ÚroleTr    Ú	assistant©r    r   r   r   ÚfunctionÚnameÚ	arguments©r%   r$   r   r   Únullr   c              3   ó†   #   • U  H7  n[        U[        5      (       d  M  UR                  S S5      (       d  M3  Sv •  M9     g7f©r   Fr   Nr   r   s     r   r   r      ó6   é € ð !â5�DÜ˜d¤D×)ó à.2¯h©h°zÀ5×.I÷ ‘Ú5ùó   ‚AŸA¸	AÚstopr   c                 ó   • U S   $ ©Nr   © ©Úxs    r   Ú<lambda>Ú'merge_single_response.<locals>.<lambda>Ü  ó   €  a¨¢dó    ©Úkey©r   r   ÚmessageÚinput_tokensÚprompt_tokens_detailsÚtotal_tokens)#ÚallÚvaluesÚusageÚoutputÚchoicesÚlenÚhasattrr   r
   ÚKeyErrorÚAttributeErrorÚ
IndexErrorr   Ú	enumerater9   r    r   r	   ÚlistÚappendÚranger   r   r   ÚupdateÚitemsr   ÚextendÚ	TypeErrorr   ÚsumÚsortedÚstrÚcopyÚdeepcopy©)Úparsed_responseÚaccumulated_dataÚnÚall_sentÚfirst_choiceÚ
choice_idxrA   Úchoice_enum_idxÚchoiceÚcurrent_contentÚcontent_idxÚcontent_itemÚcurrent_reasoning_contentÚcurrent_tool_callsÚcurrent_callÚidxÚexisting_callÚacc_callÚkÚvÚcurrent_logprobs_contentÚfinished_countÚfinished_choices_in_packetr   Úfirst_finish_reasonr   Úall_choicesÚsorted_itemsÚfinal_choice_dictÚmessage_dictÚaggregated_usageÚusage_by_idxÚtotal_output_tokensr:   r;   r?   Úresponses_to_yieldÚcurrent_dataÚnew_responseÚchoice_copyÚcurrent_usages)                                            r   Úmerge_single_responserx      sÜ  € ð$ 	ˆ1ƒuÖ!Üñ 
à(×/Ñ/Ô1ó
ó 
ˆö
 Øð
 	
ˆA‹Ø×!×!Ø×"×"Ø×"Ñ"×*×*Ü�×&Ñ&×.Ñ.Ó/°!Ó3àÐ#3Ó3Ø13ÐÐ-Ñ.ð	Ø*×1Ñ1×9Ñ9¸!Ñ<ˆLô Ø Ø÷ñ ð ˜|Ó+ð ×"Ò"ð ð ð  /×"7Ñ"7Ó7ÜAEØ#×)Ñ)óBÐ Ð!1Ñ2°:Ñ>ð 	××Ü�O×*Ñ*¨F×3Ñ3à×&Ñ&×.×.Ø×%Ñ%×-Ñ-Ñ5ð ˆ
ØÓ-àØ%'Ø Ø&¨˜OØ!Ø!%Ø$)Øñ	,ÐÑ(ð ×!Ñ!×&×&ØÑ(Øóà ×'Ñ'×,Ñ,ñ-ó ð '7Ñ&BÀ9Ñ&Mˆ×ÑÔ#Øð ××Ð /×"8Ñ"8×"@×"@Ð"@Ø!×(Ñ(×0Ñ0ˆö Øä'0°×'9Ñ#ˆOð-ô ˜v w×/Ñ/°G¸vÓ4Eð —L’Là(ð ð Ó1à!Ø)+Ø"$Ø!*¨B Ø %Ø%)Ø(-Ø ñ	0Ð Ñ,ð —>—>ð (Ñ3°F×;ð -Ñ8¸Ò@à$Ø/Ñ;¸IÑFñ	"�”ð $Ñ/Ð0C×DØ:JØ"ñ;à)ñ;+�F—N‘NÐ#6Ñ7ð $Ñ/°×=Ø3CØ"ñ4à"ñ4$�F—N‘N <Ñ0ùô
 ˜6Ÿ>™>¨6×2Ñ2°v·~±~×7J×7JØ;A¿>¹>×;NÑ;NÐ$Ñ0°Ñ8ð  §¡Ô.Ø&,§n¡n×&<Ñ&<�Oß&ä% o´t×<Ò<ô $.Ø 0Ñ <¸YÑ GÜ $÷$ñ $ð KMÐ 0Ñ <¸YÑ Gô #&Ø 0Ñ <¸YÑ Gó#ä # OÓ 4ó#5ð !1Ñ <¸YÑ G× NÑ NØ%+¨R Lô!"ô #&Ø 0Ñ <¸YÑ Gó#ä # OÓ 4õ#5ô >GØ /ö>Ñ 9 ô %/¨|¼T×$BÓ$BØ(.°,Õ(>à'3°F×';Ñ';à(8Ñ(DØ,5ñ)*à*5ñ)7à7=ó)?àBNØ,2ñC*ñ)*õ )?ñ>ô 05Ü #Ð$4Ñ$@ÀÑ$KÓ Lö0 ð $/´°V·^±^×5KÑ5KÓ1LÕ#Lð )9Ñ(DØ(1ñ)&ð )4ñ)&ð
 )/ñ)&ð %+§N¡N×$:Ñ$:¸;Ñ$GØ(.ó%&ò	0ô   *Ø 0Ñ <¸YÑ GÜ $÷ ñ  ð KMÐ 0Ñ <¸YÑ Gà,Ñ8Ø )óà!0ñ1ó ô &Ø(Ñ4°YÑ?Ü÷ñ ð 2BÑ1MØ%ñ2˜Ÿ™Õ.ô  *¨&¯.©.×*@Ñ*@Ä$×GÑGØ5EØ *ñ6à'ñ6)˜FŸN™NÔ2ð
 '¨&¯.©.Ó8àŸ™×8Ñ8ð .ö 1Ø(Ñ4Ø/óà6ñ7ó ð
 $Ñ/Ð0C×DØ7GØ"ñ8à)ñ8+�F—N‘NÔ4ð ! F§N¡NÔ2ØŸ™×1×1Ð1à)/¯©×)BÑ)BÐ&ô );˜ä& |´T×:Ó:Ø '¨<Õ 7à".¨wÑ"7˜Cð -1˜MØ,<Ñ,HØ ,ô- ô %/¨x¼×$>Ó$>Ø(0¯©°WÓ(=ÀÕ(Dà4< MÙ$)ñ-÷  -ð %/°,Ó$>Ø(4°Z×(@à'1¸Ó'FØDF¨°jÑ(Að (.°¸jÑ1IÓ'Ià,2Ø3@ÀÑ3Ló-Mð
 13ð -:¸*Ñ,EØ06ñ-.ð )6°jÑ(AØ,2ó)*à-9¸*Ñ-EÀfÑ-Mñ)Nó )*ð
 (3°lÀ:Ñ6NÓ'Nà,7Ø3@ÀÑ3Ló-Mð
 13ð -:¸*Ñ,EØ0;ñ-.ð )6°jÑ(AØ,7ó)*à-9¸*Ñ-EØ,7ñ.*ñ)*ó )*ð !.× 4Ñ 4ð 5A×4FÑ4FÔ4Hô%&â4H©D¨A¨qØ+,°
©?ó )-ä?@ó )-¨¨1ªÙ4Hò%&ô!"ð %/°,Ó$>Ø(4°Z×(@à$1°*Ñ$=×$DÑ$Dð 9EØ0:ñ9.ç.3©e«gð96ô)*ò96±°°1ð 01Ð8MÑ/Mó	 -1ô
 12ó -1¨A¨qªDñ96ò)*÷	%&ò )Aò %?ð !1Ñ <Ø$0ñ!"ç"(¡&¬¨lÓ);×"<ñe );ðj 1AÑ0LØ$ñ1�F—N‘NÕ-ð &Ñ1°,×?ð 1AÑ0LØ$ñ1�F—N‘NÔ-ð
 $Ñ/°×7Ü §¡°×7Ñ7Ø!Ÿ>™>×.×.à*:Ñ*FÀvÑ*N�F—N‘NÔ'ðà &Ó(ØŸŸÜ" 6§?¡?´D×9Ñ9Ø! V§_¡_Ó4à/5¯©¸yÑ/IÐ,Þ/´JØ0Ü÷5ñ 5ð
 &Ð-=Ñ-IÓIà )¨2ðHÐ,Ñ8¸ÒDð &Ø#3Ñ#?À
Ñ#KóLð
 !#ð -Ñ8¸ÑDØ )ñð
 )Ñ4°ZÑ@Ø%ñç ™&Ð!9Ô:ð !Ñ,¨ZÑ8¸×CÜ˜F J×/Ñ/Ø—O—Oà-=Ñ-IØñ.àñ.�—‘ 	Ñ*ð �A–Ü˜F O×4Ô4Ø×(×(Ò(Ø×(Ñ(¨FÖ2ð ×(Ñ(ð !Ñ,Ø#ñð <@Ð Ñ,¨ZÔ8ñc	 (:ðh	 ˆqŒ5ä ñ !à,×3Ñ3Ô5ó!ó ˆNð *,Ð&Û!�ä˜F O×4Ó4Ø×,×,Ñ,Ø×,Ñ,°Õ6ô # 6¨7×3Ñ3¸À6Ó8Ið Ÿšàð ð
 %+×$8Ñ$8�MØ.×5Ñ5Ø# ]°FÐ;öñ "ö" .Øð #=¸QÑ"?ÀÑ"BÐð # fÔ,Ø! AÓ%ã")˜ä# F¨O×<Ó<Ø &× 4× 4Ñ 4Ø &× 4Ñ 4¸Õ >à39˜FÖ0ñ #*ðZ ðI !1× 7Ñ 7Ö 9˜ä& t¬T×2Ó2Ø 2°dÕ :à7;˜DÐ!3Ó4ñ !:ð #%�Kä#)ð .>×-CÑ-CÔ-Eôâ-E¡	  TÜ)¨$´×5ó (à:DÈÑ:Ló (˜S $›KÙ-Eòñ
 +ñ$�Ló -9Ñ(˜
 Dð &0Ø-1°/Ñ-Bñ-Ð)ð #Ø# FŸ|ð %)¨¢Là!,ð(˜ð
   	Ÿ?ô $.¨d°9©o¼s×#CÑ#Cð !% Y¢à%)¨)¡_ð )¨Ñ3ð
  Ð 3×4Ø@DØ 3ñA˜LÐ)<Ñ=ð   ×-Ø9=¸lÑ9K˜L¨Ñ6à7CÐ)¨)Ñ4ð   
Ñ+¨I×6à )¨4°
Ñ+;¸IÑ+Fð=Ð-¨jÑ9ð $×*Ñ*Ð+<Ö=ñE -9ðJ 6A�O×*Ñ*Ô2ð )Ð,<Ó<Ø,Ð-=×>à+-Ð(Ø'7Ð8HÑ'I˜ð /0Ð+Ø'+˜Ø04Ð-à*6×*<Ñ*<Ö*>™J˜C Ø.°%Ó7Ø 3°u¸_Ñ7MÑ MÐ 3ð !-Ñ 4Ø$2°eÓ$;à/4°^Ñ/D ð !6Ó =Ø$;¸uÕ$Dà8=Ø$;ñ9"Ò 5ñ +?ð( (Ñ3Ø?KÐ,¨^Ñ<Ø<OÐ(¨Ñ9Ø'Ñ3à ,Ð/BÑ Bð -¨^Ñ<ð 1Ñ<ð !6ð -Ø 7ñð
 1A˜Ô-ðx ðs &(Ð"ó 0ñ	ØØ!Øà#3×#7Ñ#7¸
Ó#C�LØ#Ñ+¨|×/?Ñ/?Ø*Ø÷0ñ 0ñ !à7;�LÐ!3Ñ4ö *ä'+§}¢}°_Ó'E™ð (7˜ô #'§-¢-°Ó"7�Kð 4?°-�L×'Ñ'Ô/ð %×*×*Ø,Ð0@Ó@Ø&Ð;KÑ*LÓLà(8Ð9IÑ(JØ&ñ)˜ð +¨mÓ;ð !.¨oÑ >ð )×.Ñ.Ø /ñð  .°Ó>à$1°.Ñ$AØ&3°OÑ&Dñ%Eð !-× 2Ñ 2°>Ñ Bð
 '×-Ñ-¨lÖ;ñW 0ö\ &Ø-Ð-à àøô_ œ.¬*Ð5ó 	Úð	ûôb œnÐ-ó -Ø,“
ð-üóN%&ùó)*øô~ œn¬iÐ8ó âðüóhsn   Â(A)v È8%v,ÜwÜwÜwÝ"wÝ3wÝ<wá
B1wìw-
ì.w-
ì6w-
öv)ö(v)ö,w÷w÷w*÷)w*c           
      óâ  • US:”  a/  U(       a(  [        S UR                  5        5       5      nU(       a  gUS:”  aÕ  U R                  (       aÄ  U R                  (       a³  U R                  R                  (       a˜  [        U R                  R                  5      S:”  au  SU;  a  0 US'    U R                  R                  S   n[        US5      (       a  SU;   a  UR                  OSnSU R                  ;   a  [        U R                  5      US   U'   U R                  (       a¸  [        U R                  S5      (       a�  U R                  R                  (       a  U R                  R                  ck  SnXQ;  a  S
S
/ S/ 0SS	SS	S.X'   U R                  R                  (       a#  X   S==   U R                  R                  -  ss'   X   S   U R                  l        gU R                  (       Ga!  U R                  R                  (       Ga  U R                  R                  nU(       d  g[        U5       GHì  u  px [        US5      (       a  SU;   a  UR                  OUnXQ;  a  S
S
/ S/ 0SS	SS	S.X'   UR                  (       df  X   S   (       a  X   S   OSX   S   S.Ul        X   S   (       a  UU   S   UR                  S'   X   S   (       a  UU   S   UR                  S'   GOß[        UR                  S5      (       a6  UR                  R                  (       a  UR                  R                  X   S'   SUR                  ;   GaŒ  UR                  R                   n	[#        U	[$        5      (       aê  [#        X   S   [$        5      (       d  / X   S'   U	(       a«  [        X   S   5      [        U	5      :  a7  X   S   R'                  SS
05        [        X   S   5      [        U	5      :  a  M7  [        U	5       HH  u  p«[#        U[        5      (       d  M  SU;   d  M$  US   (       d  M0  X   S   U
   S==   US   -  ss'   MJ     X   S   UR                  l        OwU	(       aG  [#        X   S   [$        5      (       a  S
X   S'   X   S==   U	-  ss'   X   S   UR                  l        O)U	(       d"  X   S   (       a  X   S   UR                  l        SUR                  ;   a,  UR                  R(                  nU(       a  X   S==   U-  ss'   X   S   (       a  UU   S   UR                  l        SUR                  ;   Ga  UR                  R*                  (       Gaë  UR                  R*                  nU GH·  n[#        U[        5      (       d  M  SU;   d  M#  US   nS	nX   S    H3  n[#        U[        5      (       d  M  UR-                  S5      U:X  d  M1  Un  O   U(       Ga(  SU;   au  US   (       ak  SU;  a  0 US'   SUS   ;   a'  SUS   ;  a  S
US   S'   US   S==   US   S   -  ss'   SUS   ;   a'  SUS   ;  a  S
US   S'   US   S==   US   S   -  ss'   UR/                  UR1                  5        VVs0 s H  u  nnUS:w  d  M  U(       d  M  UU_M     snn5        SU;   a]  US   (       aP  US   R/                  US   R1                  5        VVs0 s H  u  nnUS;  d  M  U(       d  M  UU_M     snn5        GM’  GM•  GM˜  X   S   R'                  [        U5      5        GMº     X   S   UR                  l        O"X   S   (       a  X   S   UR                  l        X   S   (       aL  [        UR                  S5      (       a  UR                  R                  (       d  X   S   UR                  l         SU;   a«  UR2                  (       aš  [#        UR2                  [        5      (       a{  SUR2                  ;   ak  UR2                  S   nU(       aU  [#        U[$        5      (       a@  SX   ;  a
  S/ 0X   S'   OSX   S   ;  a
  / X   S   S'   X   S   S   R5                  U5        X   S   S   (       a9  [        US5      (       a(  UR2                  (       a  X   S   S   UR2                  S'   US:”  d  GM™  [        US5      (       d  GM­  UR8                  (       d  GMÁ  UR8                  S:w  d  GMÔ  UR8                  X   S'   SX   S'   GMï     US:”  Gaä  [;        S UR                  5        5       5      n/ nU H€  n[        US5      (       d  M  UR8                  (       d  M)  UR8                  S:w  d  M;  [        US5      (       a  SU;   a  UR                  OSnUR8                  nUR'                  UUU45        M‚     U(       d  gUS   S   nUS:X  Ga$  UU:  aI  U HB  n[        US5      (       d  M  UR8                  (       d  M)  UR8                  S:w  d  M;  SUl        MD     gUR                  5        H'  n[#        U[        5      (       d  M  SU;   d  M"  SUS'   M)     / n[=        UR1                  5        VVs/ s H)  u  nn[#        U[        5      (       d  M  SU;   d  M%  UU4PM+     snnS S9nU H¤  u  nnUUS   S .nSUS   (       a  US   OS0nUS   (       a%  [#        US   [>        5      (       a  US   OUS   US'   US   (       a  US   US'   US   (       a  US   US'   UUS!'   US   S   (       a  SUS   S   0US'   UR'                  U5        M¦     UU R                  l        SU;   a†  US   (       a|  0 nUS   nSn S	n!S	n"UR1                  5        H4  u  nn#SU#;   a  U U#S   -  n U!c  S"U#;   a  U#S"   n!U"b  M'  S#U#;   d  M/  U#S#   n"M6     U!b  U!US"'   U US'   U!b  U!U -   US$'   U"b  U"US#'   UU l        g/ n$U Hï  u  nnnUR-                  U5      n%U%b  U%R-                  SS5      (       a  M4  SU%S'   U$(       a  [@        RB                  " U 5      n&OU n&[@        RB                  " U5      n'U'/U&R                  l        U&R                  (       aL  SU;   aF  XQS   ;   a>  US   U   n(SU(;   a0  U(S   U&R                  S'   S"U(;   a  U(S"   U(S   -   U&R                  S$'   U$R'                  U&5        Mñ     U$(       a  U$$ gg! [        [        [        4 a     GNf = f! [        [        4 a    Un G
Nâf = fs  snnf s  snnf ! [        [        [6        4 a     GNîf = fs  snnf )%a4  Merge a single response chunk with accumulated data.

Args:
    parsed_response: The response chunk to merge
    accumulated_data: Dictionary storing accumulated data for each choice
    n: Number of expected choices (default 1)

Returns:
    bool: True if this response should be yielded, False if filtered
r   c              3   ó„   #   • U  H6  n[        U[        5      (       d  M  S U;   d  M"  UR                  S S5      v •  M8     g7fr   r   r   s     r   r   Ú3merge_multimodal_single_response.<locals>.<genexpr>…  r   r   Fr   r   r   r   r   Nr   r   r   Tr    r!   r"   r   r   r#   r$   r%   r&   r   r   r'   r   c              3   ó†   #   • U  H7  n[        U[        5      (       d  M  UR                  S S5      (       d  M3  Sv •  M9     g7fr)   r   r   s     r   r   r{   ÿ  r*   r+   r,   r   c                 ó   • U S   $ r.   r/   r0   s    r   r2   Ú2merge_multimodal_single_response.<locals>.<lambda>;  r4   r5   r6   r8   r9   r:   r;   r<   )"r=   r>   r?   r@   rA   rB   rC   r   r
   rD   rE   rF   r   rG   r9   r    r   r	   rH   rI   r   r   r   rK   rL   r   rM   rN   r   rO   rP   rQ   rR   rS   rT   s)                                            r   Ú merge_multimodal_single_responser   t  s]  € ð  	ˆ1ƒuÖ!Üñ 
à(×/Ñ/Ô1ó
ó 
ˆö
 Øð
 	
ˆA‹Ø×!×!Ø×"×"Ø×"Ñ"×*×*Ü�×&Ñ&×.Ñ.Ó/°!Ó3àÐ#3Ó3Ø13ÐÐ-Ñ.ð	Ø*×1Ñ1×9Ñ9¸!Ñ<ˆLô Ø Ø÷ñ ð ˜|Ó+ð ×"Ò"ð ð ð  /×"7Ñ"7Ó7ÜAEØ#×)Ñ)óBÐ Ð!1Ñ2°:Ñ>ð 	××Ü�O×*Ñ*¨F×3Ñ3à×&Ñ&×.×.Ø×%Ñ%×-Ñ-Ñ5ð ˆ
ØÓ-àØ%'Ø Ø&¨˜OØ!Ø!%Ø$)Øñ	,ÐÑ(ð ×!Ñ!×&×&ØÑ(Øóà ×'Ñ'×,Ñ,ñ-ó ð '7Ñ&BÀ9Ñ&Mˆ×ÑÔ#Øð ××Ð /×"8Ñ"8×"@×"@Ð"@Ø!×(Ñ(×0Ñ0ˆö Øä'0°×'9Ñ#ˆOð-ô ˜v w×/Ñ/°G¸vÓ4Eð —L’Là(ð ð Ó1à!Ø)+Ø"$Ø!*¨B Ø %Ø%)Ø(-Ø ñ	0Ð Ñ,ð —>—>ð (Ñ3°F×;ð -Ñ8¸Ò@à$Ø/Ñ;¸IÑFñ	"�”ð $Ñ/Ð0C×DØ:JØ"ñ;à)ñ;+�F—N‘NÐ#6Ñ7ð $Ñ/°×=Ø3CØ"ñ4à"ñ4$�F—N‘N <Ñ0ùô
 ˜6Ÿ>™>¨6×2Ñ2°v·~±~×7J×7JØ;A¿>¹>×;NÑ;NÐ$Ñ0°Ñ8ð  §¡Ô.Ø&,§n¡n×&<Ñ&<�Oä! /´4×8Ñ8ô  *Ø,Ñ8¸ÑCÜ ÷ ñ  ð GIÐ,Ñ8¸ÑCö +ä"%Ø 0Ñ <¸YÑ Gó#ä # OÓ 4ó#5ð !1Ñ <¸YÑ G× NÑ NØ%+¨R Lô!"ô #&Ø 0Ñ <¸YÑ Gó#ä # OÓ 4õ#5ô >GØ /ö>Ñ 9 ô %/¨|¼T×$BÓ$BØ(.°,Õ(>à'3°F×';Ñ';à(8Ñ(DØ,5ñ)*à*5ñ)7à7=ó)?àBNØ,2ñC*ñ)*õ )?ñ>ð  2BÑ1MØ%ñ2˜Ÿ™Õ.ö )ô &Ø,Ñ8¸ÑCÜ ÷ñ ð GIÐ,Ñ8¸ÑCà(Ñ4Ø%óà,ñ-ó ð 2BÑ1MØ%ñ2˜Ÿ™Õ.ö ,Ø,Ñ8¸×Cð 2BÑ1MØ%ñ2˜Ÿ™Ô.ð
 '¨&¯.©.Ó8àŸ™×8Ñ8ð .ö 1Ø(Ñ4Ø/óà6ñ7ó ð
 $Ñ/Ð0C×DØ7GØ"ñ8à)ñ8+�F—N‘NÔ4ð ! F§N¡NÔ2ØŸ™×1×1Ð1à)/¯©×)BÑ)BÐ&ô );˜ä& |´T×:Ó:Ø '¨<Õ 7à".¨wÑ"7˜Cð -1˜MØ,<Ñ,HØ ,ô- ô %/¨x¼×$>Ó$>Ø(0¯©°WÓ(=ÀÕ(Dà4< MÙ$)ñ-÷  -ð %/°,Ó$>Ø(4°Z×(@à'1¸Ó'FØDF¨°jÑ(Að (.°¸jÑ1IÓ'Ià,2Ø3@ÀÑ3Ló-Mð
 13ð -:¸*Ñ,EØ06ñ-.ð )6°jÑ(AØ,2ó)*à-9¸*Ñ-EÀfÑ-Mñ)Nó )*ð
 (3°lÀ:Ñ6NÓ'Nà,7Ø3@ÀÑ3Ló-Mð
 13ð -:¸*Ñ,EØ0;ñ-.ð )6°jÑ(AØ,7ó)*à-9¸*Ñ-EØ,7ñ.*ñ)*ó )*ð !.× 4Ñ 4ð 5A×4FÑ4FÔ4Hô%&â4H©D¨A¨qØ+,°
©?ó )-ä?@ó )-¨¨1ªÙ4Hò%&ô!"ð %/°,Ó$>Ø(4°Z×(@à$1°*Ñ$=×$DÑ$Dð 9EØ0:ñ9.ç.3©e«gð96ô)*ò96±°°1ð 01Ð8MÑ/Mó	 -1ô
 12ó -1¨A¨qªDñ96ò)*÷	%&ò )Aò %?ð !1Ñ <Ø$0ñ!"ç"(¡&¬¨lÓ);×"<ñe );ðj 1AÑ0LØ$ñ1�F—N‘NÕ-ð &Ñ1°,×?à0@Ñ0LØ$ñ1�F—N‘NÔ-ð
 $Ñ/°×7Ü §¡°×7Ñ7Ø!Ÿ>™>×.×.à*:Ñ*FÀvÑ*N�F—N‘NÔ'ðà &Ó(ØŸŸÜ" 6§?¡?´D×9Ñ9Ø! V§_¡_Ó4à/5¯©¸yÑ/IÐ,Þ/´JØ0Ü÷5ñ 5ð
 &Ð-=Ñ-IÓIà )¨2ðHÐ,Ñ8¸ÒDð &Ø#3Ñ#?À
Ñ#KóLð
 !#ð -Ñ8¸ÑDØ )ñð
 )Ñ4°ZÑ@Ø%ñç ™&Ð!9Ô:ð !Ñ,¨ZÑ8¸×CÜ˜F J×/Ñ/Ø—O—Oà-=Ñ-IØñ.àñ.�—‘ 	Ñ*ð �A–Ü˜F O×4Ô4Ø×(×(Ò(Ø×(Ñ(¨FÖ2ð ×(Ñ(ð !Ñ,Ø#ñð <@Ð Ñ,¨ZÔ8ñK	 (:ðR	 ˆqŒ5ä ñ !à,×3Ñ3Ô5ó!ó ˆNð *,Ð&Û!�ä˜F O×4Ó4Ø×,×,Ñ,Ø×,Ñ,°Õ6ô # 6¨7×3Ñ3¸À6Ó8Ið Ÿšàð ð
 %+×$8Ñ$8�MØ.×5Ñ5Ø# ]°FÐ;öñ "ö" .Øð #=¸QÑ"?ÀÑ"BÐð # fÔ,Ø! AÓ%ã")˜ä# F¨O×<Ó<Ø &× 4× 4Ñ 4Ø &× 4Ñ 4¸Õ >à39˜FÖ0ñ #*ðb ðQ !1× 7Ñ 7Ö 9˜ä& t¬T×2Ó2Ø 2°dÕ :à7;˜DÐ!3Ó4ñ !:ð #%�Kä#)ð .>×-CÑ-CÔ-Eôâ-E¡	  TÜ)¨$´×5ó (à:DÈÑ:Ló (˜S $›KÙ-Eòñ
 +ñ$�Ló -9Ñ(˜
 Dð &0Ø-1°/Ñ-Bñ-Ð)ð #Ø# FŸ|ð %)¨¢Là!,ð(˜ð
   	Ÿ?ô $.Ø$(¨¡OÜ$'÷$"ñ $"ð !% Y¢ð
 &*¨)¡_ð )¨Ñ3ð  Ð 3×4Ø@DØ 3ñA˜LÐ)<Ñ=ð   ×-Ø9=¸lÑ9K˜L¨Ñ6à7CÐ)¨)Ñ4ð   
Ñ+¨I×6à )¨4°
Ñ+;¸IÑ+Fð=Ð-¨jÑ9ð $×*Ñ*Ð+<Ö=ñK -9ðP 6A�O×*Ñ*Ô2ð )Ð,<Ó<Ø,Ð-=×>à+-Ð(Ø'7Ð8HÑ'I˜ð /0Ð+Ø'+˜Ø04Ð-à*6×*<Ñ*<Ö*>™J˜C Ø.°%Ó7Ø 3°u¸_Ñ7MÑ MÐ 3ð !-Ñ 4Ø$2°eÓ$;à/4°^Ñ/D ð !6Ó =Ø$;¸uÕ$Dà8=Ø$;ñ9"Ò 5ñ +?ð( (Ñ3Ø?KÐ,¨^Ñ<Ø<OÐ(¨Ñ9Ø'Ñ3à ,Ð/BÑ Bð -¨^Ñ<ð 1Ñ<ð !6ð -Ø 7ñð
 1A˜Ô-ðz ðs &(Ð"ó 0ñ	ØØ!Øà#3×#7Ñ#7¸
Ó#C�LØ#Ñ+¨|×/?Ñ/?Ø*Ø÷0ñ 0ñ !à7;�LÐ!3Ñ4ö *ä'+§}¢}°_Ó'E™ð (7˜ô #'§-¢-°Ó"7�Kð 4?°-�L×'Ñ'Ô/ð %×*×*Ø,Ð0@Ó@Ø&Ð;KÑ*LÓLà(8Ð9IÑ(JØ&ñ)˜ð +¨mÓ;ð !.¨oÑ >ð )×.Ñ.Ø /ñð  .°Ó>à$1°.Ñ$AØ&3°OÑ&Dñ%Eð !-× 2Ñ 2°>Ñ Bð
 '×-Ñ-¨lÖ;ñW 0ö\ &Ø-Ð-à àøôQ œ.¬*Ð5ó 	Úð	ûôb œnÐ-ó -Ø,“
ð-üóx%&ùó)*øô| œn¬iÐ8ó âðüójsn   Â(A)t È8%t*ÚuÚuÚuÛ u	Û1u	Û:u	ßB1uêu+
ê,u+
ê4u+
ôt'ô&t'ô*u ô?u õu(õ'u()r   )rR   rx   r   r/   r5   r   Ú<module>r€      s!   ðó ð ôh	ð^ õ_	r5   