From 010ed5d096bf274c386aba2daf3807ae4c33f68f Mon Sep 17 00:00:00 2001 From: ccurme Date: Fri, 3 Oct 2025 13:41:37 -0400 Subject: [PATCH] fix(anthropic,openai): fix tests (#33257) following https://github.com/langchain-ai/langchain/pull/33192 --- .../integration_tests/test_chat_models.py | 8 ++++---- .../tests/integration_tests/test_llms.py | 4 ++-- .../cassettes/test_mcp_builtin_zdr.yaml.gz | Bin 29785 -> 34397 bytes .../chat_models/test_azure.py | 6 +++--- .../chat_models/test_base.py | 4 ++-- .../integration_tests/llms/test_azure.py | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/libs/partners/anthropic/tests/integration_tests/test_chat_models.py b/libs/partners/anthropic/tests/integration_tests/test_chat_models.py index d9019150727..218b098cfa4 100644 --- a/libs/partners/anthropic/tests/integration_tests/test_chat_models.py +++ b/libs/partners/anthropic/tests/integration_tests/test_chat_models.py @@ -319,7 +319,7 @@ def test_anthropic_streaming_callback() -> None: callback_manager = CallbackManager([callback_handler]) chat = ChatAnthropic( model=MODEL_NAME, # type: ignore[call-arg] - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) message = HumanMessage(content="Write me a sentence with 10 words.") @@ -335,7 +335,7 @@ async def test_anthropic_async_streaming_callback() -> None: callback_manager = CallbackManager([callback_handler]) chat = ChatAnthropic( model=MODEL_NAME, # type: ignore[call-arg] - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) chat_messages: list[BaseMessage] = [ @@ -379,7 +379,7 @@ def test_streaming() -> None: llm = ChatAnthropic( # type: ignore[call-arg, call-arg] model_name=MODEL_NAME, streaming=True, - callback_manager=callback_manager, + callbacks=callback_manager, ) response = llm.generate([[HumanMessage(content="I'm Pickle Rick")]]) @@ -395,7 +395,7 @@ async def test_astreaming() -> None: llm = ChatAnthropic( # type: ignore[call-arg, call-arg] model_name=MODEL_NAME, streaming=True, - callback_manager=callback_manager, + callbacks=callback_manager, ) response = await llm.agenerate([[HumanMessage(content="I'm Pickle Rick")]]) diff --git a/libs/partners/anthropic/tests/integration_tests/test_llms.py b/libs/partners/anthropic/tests/integration_tests/test_llms.py index 5cf633d55e3..1e8a4332350 100644 --- a/libs/partners/anthropic/tests/integration_tests/test_llms.py +++ b/libs/partners/anthropic/tests/integration_tests/test_llms.py @@ -49,7 +49,7 @@ def test_anthropic_streaming_callback() -> None: llm = AnthropicLLM( model=MODEL, # type: ignore[call-arg] streaming=True, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) llm.invoke("Write me a sentence with 100 words.") @@ -70,7 +70,7 @@ async def test_anthropic_async_streaming_callback() -> None: llm = AnthropicLLM( model=MODEL, # type: ignore[call-arg] streaming=True, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) result = await llm.agenerate(["How many toes do dogs have?"]) diff --git a/libs/partners/openai/tests/cassettes/test_mcp_builtin_zdr.yaml.gz b/libs/partners/openai/tests/cassettes/test_mcp_builtin_zdr.yaml.gz index 0d01636fd5072280fc2716d1ac6b0f39c47fd955..5befec093cf0efabb8cd83130ec2265f513b5945 100644 GIT binary patch literal 34397 zcmV(=K-s?^iwFSW2HnX@W2W@0R)R`=6SH?8J%`|`Fu^oRfYAHV%8 z-^=rV{p)}J&wSTrujhaLKmX%j@Za|AcX@*kk`uM6x_s68DoyZv-l#Wmo+|k4yiIIF zaPpLzvp4CnH#zs^dJf-fZ6xQbJ8m6z`m@V`;{~g`m6H2337_TCFY^{3bIUhYOZ%K# zQ!G0$b ztcsmKOQPd0=d)Vy<8HI_+hQ5^I6`kJpT4hl$6Wy{xeQn|bhl|lnJ=+|fd*KzO1ZJy zwB#%~J*-;t4ucO`z94S{xf%iwN(p7p79|MunjH;{3^Hc>UsaK1XM8uyTUGfVHJ^k(n*GT3bt z>|BCh6U#*+!A8bsZ!2XSv=$Tz>xzawrHQR&XQrbV#u?^IS#FbH_r%Z){!nf+xqSsK z)1PHUvF-Zt|9|_}|N4*rAkN}`9y^Qw_>cef<$~X~ZLycT_W6&leCx~o>u$*U-M;;U z>xzBbZi_#^sNc5zZ))2<_vK%>us?U(Ke(*iAO2{SZ-?#cZ`m^p^amH6emnHpu2tK^ z;kWFyDF5oEhjUx}#cNgeha&!Z>HhE+FYL0ShNb=X4x9eRLjU@$*KPlL{;k-*{biB7 z!lk=r`}eN?(^)lJ&?@;~|9ad+G5q@Wy8EvmFZu^9|1Mgtmxo=(Lk$stMfM>X>`HLI zNn=(8UU0@$ZCwTwad-^kbRy#WBW?mCScKDbcs_07`-!O7ZWFU67*>PuQUm@qeniNx z;5eG=Cqlws%QD0Hl0eXP=8M^_Xx;3E;-|D z7%v7C^k$osBlW|VHO7M`6#C0GAZJxH>L@++p6_5YYuQPsMCr~xk4sMM_rg>L?CNy0 zv)`pT1)0sx`tPtYYTXoXEBCk)jjLq_&f@S6&|9V!DOS6B_XM5@;8=mj`PgOfE{C05 zs-uYDjx9EdiwCkmE)&Oi?@cn-2+S{s&MFn&qiSDrg$XZz-HW}uw#1&=<%ok9O_ z2TtO=jr`f=?hQLhuFgX5FgT6NHO92eIn^S7&)6_7->Ciuo38B()UId`;N_Y!n(v-|d*wV-x8bop#tGI!oUe(l;M=adTrwBK4= zxXL`%r%`Z`5!|T1h@*j}q1l&NUEJSW4oaOSA2OVN>~aeB3cnw=(QRgI_UoM;WtO*K z5Z4XS7B|Wec20r~r;)wP60(wf^^+_$r})^k233VSJ7lmaiFKt2t#QyGGpdaShSnc` zWlBF-k+oUKGFV)!Xo@+jHheX~9$1o@8lnk@%YY+mVSUcsvtBAk+SPw3HSDfCfEaFy z{X1}`XD;o_fFX75koxb~ad(k}^Z=r0Sr{*vNY#E4cycIAr{8dO5JNC*+}UYO%Qs<3 zAq>1A3|qVD1)P{X5lfQzZ)sfGnHvr`Nsj?5xmeK2CU%z_w|j|`m5B{? z=JD#dalRcleAX~Ed)qc_4XYSun9|OU4fW0#cH==>gw0lzss~Y{DRE|fR?prx2`*!b zmSM9$rnSnpF1EL=s0z+ls>A{i>KqSse;JTAY>w+b+BWGaMJ38wS6~mB*qK3llss-Jn}U9wL!(PV#(YU-k~hz1W?+(_;7A>21YVh7 zI^%q4cYJP4w)J!ua-5B7c7rRnp`KdimhFd@z`5#B*se^;)G-)jB2AR!XtpBA zU#04s74vB?74E@hEJ^LYNcD_H=CCOH#1Ly9`|F~a8oASE z2as(qRBaZFWW|y!xNC1%Eq&VFA0vL8rWP1Sf*&sf;)X1U=UbGMmttuf>jX3As0DMy z1kB8hO@Rs?q5!!Awb&#~=tRc#6!h>xIMZq7u&1nYDW>c+I{KK|X;ZGa=b!P?@9)iz@3uJbAc0T?>8MTOl)p{Qn+RCEW8=G z*3pLt)%_Vq#xXb>XS}m@)Hr+$xbkMrNF;3>qI;lrwo1?U`@cKuD}%jU(5;pj!7c;7 zh5s97JJY`A5B+fqys-u5s%8i9oGOP^j!p{r3kcQ9c;D$kesGs%aiPT!ZM&L4jk3D# z{CAOcV!FpGKZIp~Q%@|QbCwMh7b`vREwI&t1D!)6`utnUPfsJ~ff>8A50$zN_`7=b zcU0<$8HekV(L2!Dk=9yZDKYJH%~#GBIceUg31|be8uToIc4$}IfBoAnq`wTfQT-Ny?+r##s#Kk{}i+>Uq|0FK{NnHGsxcDb=@lWF7pTxyKiHm;{7yl$K{z+W? zapEF6{pWSbs{WYvpF8`hh{@I2+ogzsz6{QEvsj%s@f94zBDKaP`mF@^3aoz6H`t=% z7wX0e;6KGJYjSn)6Zs|VSet0v<=?vibQ6BQ@IN&g002j+`D6jCOUoRz;`yddSM~*D z$0P3|3C37uu{s77?Sng} z`XRCbYVAvu^#~$)(m9)EWV0W&8DDcPns5KL#Lw4ckqxBDJ%D20(o^p7J6#+HfBF(N zo&Un_Ly+W-l=vDoO*e6I!XA*Jfx#Ek3FdBjF+YoeoigJi0{8zz$U`105Qu=Pc+K(Rgd41YsF+Tly$z1Z0g)R=A749L^@{=Ba4pF!Dy zh`KGrgzd`n6_Bk_hJsHYdYN6THo)Yij$_^j0; z8E4q2@y3GaS!s6(OI8?7U(N53FKZoaHh@mooCDlddf%Q?xEmmJJXX`8GHp(3<&>1U_uuQ|eD$1x zF#xoIgI|4uLmOP-OREG7cAaS$BTTR6R>88s$AmrHu>X|tcXE6K-K|o%0cgk71uR(& z%Zo=)UG>z|(WULemoH}c;NqA>^{9hOo#0@A&=+;8z)!y(q-x&{^AF7yg(FOgR~O^H~Wc& zuzao9Vi_D(uLgc;df!;^DW9{^9C28irE*mJEZ+v=kD7a9LV>qZ89 z<#zgxS|u`od*Fc<*yd%K*UkC?FO~j*6)2D+(IVMxBm253-fXyl!k1%LtI zdQ}_kQbC!k5k$)2A-V@;o)-Bos5B1VAaGP0=TvSv=n~)|`%FseO#u*)00Qbx>nhyT z09Rp1^P7e+%_iPbE7bZp)hpb5MH>Q2nnrezCQ9!d3=)nk!u@XNub+=F2dkl90XBw# zui3d3_y_k5!d#7O->Jd4lNaNE1AD$HatSuR*J$&Jr5Zf099!FIs#!x*TxJDPCM<~= zDOWm?+kn^Wukv+Z1In9-U;{1C-zuBi`i6B55O$Se7stk=r^;S{6MqX}$5QYQFq0k> zd(bmqfuBx+b>$8G{~R_05Jsa5yVJZ3k7y$YXAcOhOue(Pj27I&^mEY3^J+eM9+Q%v>he<_TMq_$*1`qdRZ(l1_#blB zN~{3@$a=SJZWIJ$2cr2BS!`jls6F{U< z*Hl$<`63v&Uy3$-Pj!&PgZHl}U7V-ASeDO#lU)vadkG%B3#fhv%GVt14Vi5S1i|#q zwvH|#I>MJF!xt`S^MEuierMDA`m0)v^1PzWr%?40FX%BhP5~eYjlWrk&d#$na4BZz){&i4gREDs-Xx~=umXAipD{zE zX9$Al5C~Z}PyoEV*f#(wP?1Y&=CU#1kN3B7hEcK2&%DjLfdQl0paCK^_3U&y0DTQ` z`Y(B}Va;_W06zsysMGtqD}xPsh;494Kl&dbz z6?*6El|=|7+618ozhqhfOAXUiWlmLyL3<`O`Zp?R>#<~r!ix%xvHm(k|S64 zTY$(pR_rJ%d!)p)76x}`S&p!PrLH*@oixfj=Ad%JKxL^C>sTzP*}rniRDx<0o8^Hf z!luSy*tp#^SjddJYRG;nwuQr&2ji_>+ zC?T1k$O~9_%By=L7#vg3(-0e&5V%pkEXPcH?v!3&`N77MFxTlz9*1C3y`8r5D8URv zG=s=RCfFl{seKUNajocjiT)`n13) zS>S|L;NT^7WM8z7m7?ci>rCe`8;7?x-gw0`-0+44xg}?nE{>dQ@TGF z9_pE5;u`pr!Nzrr(CQu}!+u8ngEXJdu>m1#TRxyl4N3rc_CfV*#e?5tx*CL~ z+Qd@ttm#jINsMjG01w6Wk-F2@q$Vy0=M!^P@=6N15DQS^H(c2jt)3@wQ!XNd8L%{K zBlm9aVK7GeLL~oDzeKdI&q4gl285d3nrPd6IQ$GLGIt!>vM-_WDV9W(WnK z%R`VIZO}Y7L{Cj;O6kD>rdBZ;plG=o%VQV}$hmQ*wM>cW&xKL}Po5`~_OD@6-bIbb zvZZPZ!+mFbmXc)+3Vv@fNzZr|D3Xt1+HC% z7HmmeP6D&%Tkn*xwzi6;aznK5iBm2^WUn_1mrJnkED?)w$t*N;%+fAQ7i9x+B@!6UI+%VXltM!Zx*JK#UU};me#7aG|jAtFr|3 z2oyN}y7%d#%&@6efItS1eHJP?70T%uo%AshDd&ERUAEggXb(3#5?~US0ZENx&V`F> zaG{L6#Gbzi+;UC8{K8tAk<*vhn4E;6-odwkJ7R9m^s@1usnm=XwTTVMH{SGR+!R{& zkr7P57Y{`x54q9bff{+j^mjR6Wkewcj8H`#lF3*;<%2qJy+a>0= z$n0@g*<{@1SeEOge9dF=4!T%ni~1;#gc@|J#;m+mRT-T6LEwUJx$Zl_SOu=dEL0b5_>2b?7OX8DY?ez1IV>4Fh?=@s zs#|WT4+P&gV=A(oq7e_NQY%5HT~sqOOmG-gEG12sU}Q%!W)Bjn$H<#aGV9)83cmmk zV%RM$>Ya9gHX&)GS$M@c7}%BDAUD~z#VKmgB%m??cVKSoo?=!$f$|~-vLmg7GOI+z zqU;GHZwzQl>?m9C)f6D^xK%SD6&c}+t8YhqMjJtyw@%Vi?3^N?A7Rm?<`#%(?sR@^ z`KJH?A#X&TJ5!68v%A1NMM9BRa9?MhlvYm5(Nf|8!%lXM^g1i&$3BgNVdLQkvA`BX zZi%h(5&nOJn`ytT-Az8YubYJga$59wfy2~tjJ%$$H`EyYGOdD>*rC@5%{t5+a~<1H zYzPov;w~K6e8Yk>eCb5%l9QG!IK_`Zb&QnubxK#qC{{JAY?#c|jb_L{#typ^jWG!U zj!0E5*D-#?N*+>X&w<80(xFUbGcm9?t68k>KpfM=Bm~p&3~sjCwxG+6?5+>}rvXvy zZL{q5c&Mj*j?Q2KC77Z}DNCd$*HPj|++%_|MZe9FHmuvuP+)y?{+s2*Kh4MmFSX&-UiUwRQl7u_qId|=+Vu{_r5=?k_ zhrRvyI2at$YUAQlwj>Ld0Dd4DY{B%ic0X*Zz)BlZM$XjLd^=ytCxRdV;tD|3y#t5V z0`oO;6il&$(vdlUlPVhV1bFxYJdc1Ic&C(|1H&Z{l^*%hZDfRqXzOD>FqH%2WrMxn zD%Ta>^p3#axu;eIyB41m#>~YgP+XU!5aRl&vYWiZ2C4mB5!=AG#YVCj+g5fM4dM;f zJc$O`rDo@D7j_FA;=EmyL9X19V@qRtkgo5`rkIAYve)!zhAqL7L4u&3y%m+cW6X96 zU<{d3?_rJKQ(l&#>N>G>=i5r$Ws7nZ#45VhEcr~jO2w7nk=KWDBf*Cpd%(EGHj&37 z>8b*#Nxk-P;1hScJG>+$H-(qE zxPiN-ascj1pRJ-Hr`TfyOBitQ=@9WyTaw3HrnWB7YUdi70o`~D5(VH|Sm0aM>)1a- zr1Tb>?j%KJEn`v2rYs|VawDUB+q&hXSlDyP_K4LuW#DVDQ$F#=A6)=N%m`c;mPh=^ zAqmis3MVYhY8Aum2V&Xl$Rl@a>ZZV25m0A{Q9Ez5C=Y?vy>Am-bC;aAj+kC4vCjZA zpYpo1G6SN|c5g&faBL|jvgBPrT?4{4Oe^&oTLK4-eBHz;I4}rT8sroMNwy%4E%2cc zzWDT!CS}0P^o-4!4+^?Wcj%!=*h7Gd0c>^&Kmqns&Ls!d!`yeg6fXhm=7D!aAcBY7 zUtC)aKdC!ybiCXp}(2G85#Ux@DCp{NM&J6zQkF|5aU4VuV24>de3*`q3oW`az#LV`Efqbyj6ZIf! zU)}@aOjnts9#WtvThFk-#<8pz-T>tbmgQIk6~G^&R($;-sg!#u|uNRa_zjHwt_KWZ+JO!8&@RM@{gJ0Ac)rnsV7@$WKDPlSEzBd6PC2!~v;N#J3JG%6xPcoa(#Un8kwA6Z=>SqDMC z%TvXeuv|inZh;4X53-$aC`#5WH6{8sq|AT7v`g2_wKlPG1?{}pssTSwqfepqgn@p% zF$b2__#uO^t3V7C`We_lIuXgU5qYOGZ`>|y#Ug|aOk+FPf;lq8(p0H6tcdZQF_y=0 zD*4uN3^u6u6d1!+g;VYsx+Zf0&K#ImM=}d5FfFiG1_6+aafBd#ncl^;U*KjoEm{>9 z&g}XaPLW6AoR*RYr<95f_0ma(N*}yl9qiBw$k3`-iqn>MiLCCY3HcJ%~rV zDUJt~2Hs>6*J1-CwOz+9C+J!+z6BXl=DtWntVw)7w#%A{nKDw+2Gqy# zPr0G)a;i$~`4b!~RB(I zl5U+Qvfj|*7;$z=RY#c9dAKDRUy@d*4&sHv*VKJqZD6h7LN^&J3~Av_Y$_Tx-D42} zHlo?NScpI_ePFa@6R;Hm@8>}z)o+=NC`T3sQbOpIU5k_NCtJ?ibyA!fU z#;_?{ux-Xk88oML4Bie{YZp}hk%C(lo_Z)02?#$u#sg3~v!9QSp7$Xv(ZFtD5eRk) zZlJ>Jk_d$m8#BIUT@cj}no)#!LsX1P0gS;5I8Z(noP)Y&tcGx;mSgIE!&uMV?ie9< z0Q6S5=}aPy28i9lyzwV;DQJRb;kF_?s%HszY9OTODQ1NkB@p`1E+gLQE~L}ZmN&8Q zNxC`-euBH#1Lw+sNQp_6PPya1G4pr|kqRZ6iS5EU;aaEd%QdHmNkNqf{PHbd+7=+y z`1pfZ{*o*42n2}*Oe_=Q^peGFLKgQBCHr&S$OloCgc+yz%)u6z-Y#!#XWO8%por#9 z*>Sozia}nB@z|XyL&rW>v%(oi0;*qNALY;0oVpL)Z1`rJHCPrOSEEEMMINEa7lA2cJAsNKHVCo6Cof9wBJgnF%HDt!x z?lCfF9D+%dZ;5jKuSVImtg(-eakO)plCQP9%?d%afXCQ^jw z%r_-O_L$aI;H*$Oh?pTC7m01BJb(zwe-IR98;2dRF+CS9J_A!5T>y4i2%g`~If-wEI4A`~B z7NXX|m>e+!Mz0SOc=aG4gb3Mwpv@EzMxM!%EeXP#%yAL8&7+Q2Qj453W&H%0b%y#;M z7Yt+1IbRb&!H{_vhe`=ybtl=1CS#o+ID`k@?2uP#1MWZ{yI~O}xS;!~jLR}Hdl!4| zE<_l-0b2$OdnB9@z|j_5XYR2WLbQgvHkcx**`hur`dL7tDA9wMr*jU59xGwcW>$rU zKaCgol{O_X4>grZS&suYt^-1yL%dQ!82cdRXbOxOI?}kwkV4GOlAojqEFPXLk|^BzNT!kU0???PzP8p;5K@1;WGRHjc1C9dTbA?d(+Xz_h7GJ8fWULC9QGI|rAI3U;jG%jF1rwc z9#UgA2k@rzIB1T}$h;Z4i@XCE&5hM5Z z7N#zxPTxheJCWuH;lzwbiEn0=TBc{?NQTmtR=EJRYsZvnCBbS>3RJ*NEZdH139fO9 z)5_-%_Id!QCTR(fbri~mJc{OoL)2|Ht_|wuJ_YXV2w~d;sYHBzMz0PrEdh1ir;wIs z=9F)uc21d5K1S}n5w`Y*IMR<|+lYB@iyGYjAj36RVPQFEIY%z$#4EfjodXZH1V3MI zo!J0!NJ}g16W6h_q$7y|z_E}mSqh*YF#A@-(gG?>r6?NT!b^7_3}i1CPLHW9uk34v zfXR0umk%3$D)HrL&U90_`<^*|h!=E7Td`gj@fQHS`40oc|sf^bu* z;L|8`eL-8`)y~Obi+d|_Fp@Di+m>+f>RG&GcFg1|h<&tKiYA9uUe!kVVS|#~{B~S} zYYbx&#EI+Y)HupYPC%(2^s^Ok=4Qz32?f0a7rPKO*s(5dAqVNdd?a_ zQ`jY7rh#^VvhLY?N0R^i;eRYW50Y2E%oS3zrTczc<#}ZczKLX;Q}d&CzEI zbw}KC7nt~t1DLXUb&3}3A&byXSf#*B1{=d*PN(F#=L#-46vX!>q<< z9H%;TGuCu=&gr)?)+=iEk~Px}HTp-8gN~x!Vy}Ns2Y(kd6C<}eKX1qjnWM!z@mB!| zMVJQ^n=YcrMmUi}Xmp#R*^iGuqLx&_(jAD=ukson!WJLnN;N>pLtgm|$C!&m0rz(L zZ3VdJl4&tVfZ{^P*iD#=R|LRUy6$F-^%m3w%`tUq9vfsDwq-;;xrr8H2uxW+B*lsf zuVq~y)5-;Rq+VG)GhjsxcshIAFdCb9!V-HN5XTTa@)^?0&K(3yEbS#vk91I~04*0o zcq-g71iy?@KtGwd5U?{s7XDpWPbYL)AX4`hUWn*+e)%;S)Hxm09e2dt#=SqqO?r%% z?qlSsQ|toBf@&}&-h#Nabb)P5XKx}_%@zn$=Gw1mRfZVdkIzOSe5G-$O37gN>f>{OMHYos##>GY;MN|1ZWdT#q;ufiIza3!U!+C^ z9+uX?nh-fkxRNa0gwzI#8|DM;okk3wHw*E?ta_peRngKTWv3Tmz`uV*$iGTF@is?ka8AOE9n?WpW85wT&Y5m@Ue8km2=s zo#mHB>zess2b-Aectm~n;Ae5s!c%#yI}UI^?uR`u-& z-YCP*(^%u-3voGSGu9^Mtv*QpU3-=5i3Z(PRUbLIoTgFRr9K?9>aQi}W5wBbm3xc* zbHwb$YAL!@pX=e5)BKgLi`6CTV=?pPdv9w?|Eo{B-|w#(&TC12guW}+j}(54cPOIH zSdF%h>_07_9|3lEtq6DRM~cE{X(}U|UynbS(=ykU zQjYHGLi_WzY_;qlw60g)NeR=fw$XPr?mK-{A^3JBM_R64RvOR+tEc>;icqXexBsIp4Uro`{yUNNQJ9(dOe&!fzJUW zivdtv1q-*na%`clrt@7<81r;NcR#EyXUqKee6$pO)akrxk?t!pR`rdC@{e+UrNnCv zy4HNV*2U>!&@U|)+H0NWcYpi+-pZe?1AeCq$KUO({IzSxM}y^mr?>L89{c+S%m4IN z{-^EHKW&fxUfZMF%03(2Uj{q$ui6NH?1rR|&Is+v?^estqt)vM>+^`(Q9KBJPAA?! ze}xn#NXCv(FtLQZAHSs;7*T%UM6sDD`!V zMhB@Xm?iiraM7SVX~K*j8xUTH{Omc%dfgidECF3!f>1ecTHUWa_ztWGD4X7z@Q1EX zBR|%yk8V4z56d*OAxp^gO1~hf9isnE%TwbPWKDFZwC~$N zjHgtJTflWeq65UgKLP)(Eegm>0k8p@VPorx553jx0nqWLmzQDi9u((QB=wie zzB?16!A%L>5TG5qV1TuCk{jQhtNB2pQFfPxbf(*Y2b?CRs>hgDbl+Lc2pvc%o&G5T6IDa=*YD(SWP9K}R>E+k$_`O%u z+#;y2_^HqBfwgsGLSu4~_f0Q9#r|DapC23ge1wq}JCC22hFsc%Zu_Sl%^I%%kmc9& zWZ%BQENf6I%`N}0Yy1mN)qVm&w3j{(n(U0*r6KzGW&1uH1%TQ0=Q5sbL+vj{t7+E-Pot0R*;;7!6z(5>&4yv;o+!8x8QeW-x?3sA?MAQNZjn~PXZlHFP(`l=afHK-1O^#$zRfi zPv-W)8pbADr%v}Ux+2h5ulPqgYG~oy4Dv6?=&uUrI^bkI-*vEsDQH4-gALDlCg5nJCEHzK!Mnsj?>dnCXuj;uK3mOx z4WmB!<%PuDcH9CQ&|XfYUoQXJ^7ila-qq8(4*84O-K}(v9js!l>8SVZ`N5+w)I>KB z0RE|WdG?;2XIfyDbdS4-kv^P0l<1?S-raZfUY8T;Xm|HZnO<5?eeGbYyD8j|2pGgo zyw}|N`D+JbaJ+g3m*#t!ZZ+@@b`-@B${=(H0{cy!&6HR136A>45`7Y}E z3n$vsp_pLPIbJ&w0vZK3Vx3mc0JrHND$tz*^YUNHni`BX$`l{eDjTrNU`#S(Q! z?BQK%;@d27?AB5#lNi7o8-0AOq`|<v3H@eCgFQvA>qm{iTS^{t-aY1(8d8cdG5nXn^L^fyahP;w zYPpJWpNGS}5!BzNYxcq1!b+@Z+cg2lspQ>>$E24P*$&ASqtjh|GnUg177`d|>UIyNzCke6A76*XXQ@V7YC?Zy71ZV2FtK1cvn3Fq7 zeJeuu$E|}gHaj~UY|0#G!iMK*z`CAP_RXD1qjU<@Jz_N57nZw;Jx1|R@>ux|uVp1I zu>pO}m~mQRR~MjeM?!930 zA*f+DRoG{yzuHzVgW)EzAp?T!b;SEs=E`X6h??`+oFQ_{UnYj^Vy~xpLa1QhEQrin z##9!AqF}>+W38I9sy@=86d5W#wz$`akr%ls){$Z)G`szlhQqcFZq~ynWXv@6BETEu$U!#X3m}>M@Et7KVbvC<%x*%M7|M2 z*jX!5oP?8`J7Y61LiIVa{5R>H9wb*`rkDts8ictT=+c=)E$}ondy9AIEFD;l8R`zw zaWwc9ZMr!?Ny_W#{5oXpgvV?t6n04+7;Y$CxrbSqnTu)Ay88lTyyimS)}_3)jS!V# zti&>6{xNXWVZ$*BD>lS~xannRkex(sowfE+&e6aa@nNg@7L1S3StAp-#xW)Z!f5Nb zXtSi#4d`Xmkj<8tZes3FY{A?j`A9v5+}}rTxhpDiVl|m0mI$RGH;hU5@yDF6>MsuA z_dLOml=aFH{~dDpCB6LXTwC#Lav1%B9A10H-+a%%*)slX6!-CP=C3z2`JtDIpP+IR zH>I^<@{9-jBl{nrQaJrOKzn1mBsd!6uwg}?qb|*!^RH=S^5dB*b`p5v~b--EZuWvx`)D2tITk{PzhVcjB#!l#0!q0 zE@WwXml}1yZNL{r$e|0jyk%e<|CLtm`#Pb0nsldB)n-`X$JoL8oR}^p4TG4>!IBKx z5+iQdlDgtSG$f2&yv!)tMBvMr$v$Dj-81lrsVUx=rwFlhwFZ0Nxb=`zlErgmM9yq2 z>aZuyOo@7R4k?=h^sy~h4x^nDAiv(a1E1MgqqViXgDwJ^`V^uH#>b1d?90EGK&9VR&Uzq3-F7XSeUxAXW z*$`T}vO$>yD_qGq%VnSi0+w>&`W^6pSxS3_q6U%-A~8+d6yQa$KKHI1#63H+N=q zbMCMV$VrWz=?=V|3A7{)xB}O9m@@Bh#H~DH@6>J`eU97KeFYeeaSA&PL}%JCkM>1U ziW`Bc#h%9Egd62>H-H6nud>3cc%VmW$W=1PAkyxvF^tsoEg)k~+>pI&SrEjb8O1nD zTk)RJYs+?BnJ3qT`{20kgc%bcc%arphyt)Esb)_J@@=-X0Y^I;P%_ynC4yQl@NjPl z*B(MsSOGtkIeoqvWNfLF8t4$Ujzyg^=AJuG%=Cl}$p*!~xzTPn_Yml)87Z z`ON?{s*Bi}K)i%9OZ2+m{%yzWlcEa&932lJW`=2Z$_5|2Bzee;J#gI#L}sVgf&n*L zkRTrLj=1DZ`2hh-VX&1uX1b?Pm8;wKsB)P@kdZ@3Pc3!;Hx|>{M}b-HVxteSQ|dNB zr@+F9*JPI%rxa75LCk%{#uWII{}MT=6)_xrJb>+1=?=X|RPF)yrqq>haw(2!eVRnx z3Q@X0!D4~9pk2mTCiuz1>KSDXp5&(Nq~$k2c|liKA92ru!ClLGTluH0C$h*=HFrfC zsC%HRcvl##$qj$cVW+vbI@1=1xGp_v;UzVZ$m(evm~10J#@8W>E^Jn0fbd+nxoRZah-b zp*A*7*#kOruoRCkSP0a$i5=t!S4~AMYTTqJ*<$@NBA+v09!oa^B0g-FwnZ1^EjlZd zJf#WKX(qm9r4`5Ef4phBS%`hmuv5H%AP|C;AbvJE#I?YcI)+3YA>nQpt|1)VvZs8> zZ{?F<<28BVarp)^<+`YfR`zRXBE~8kJfVM=wthn>d&9BQr>5LdDyK1^Ro3(?Sb-7M zsKU$cSQy=nvPSxa3MFvq`K0--MOGFj+t_B zT$|kM&ZKc^Zj`63t~0IW`LoDkLd{bbwwJ?tiY2U-wA*DAKWvxIAnTJG8mD;?(_^e= zF>mEV?x6{F7|4^6tt($7vm0TETb6YTfJQxe7qsO7hGt>YuVeGsES!#j0BEFU73l3M zHD?dJg|MHhR6vZAR=$cLfqiix|2cq%cLUS6! zPR=C<*hSCNVxb;0uSNkVQmoV)1ckNq@ErVc2ejei(dHaA%(ZI_6e?KAyMnVLk3|5% zTu@lg=j~Fyu}V(3a+eVDyS#E=Vyi0yI-NqG#{ga)Wz9H*3AY3pc1XPC*x0&$mFXh) zNY;UR$QYRJCTe}bo32gk3EDUqfVktW@`$M9g1H@Aqn$2UAJn_0L z7-SRE{s<(n#!3NSLPrUD1#!?V-~(fGfj?5Q0861Kp8z`(76dLF)v-ZdQYvxLcB>qm zF7v(_skJfzAKlCaRgc{s9LEBHt|AcS-N;~sTl6N_-X0~+xX4ltuOJ>>u)go#sHkq5v}EG+jU(p?6Vym3z8c%vACKM3vX zK)L$lgbl1L=FCoV01oa=EpT`H0vH-a>2cfQhqyj9p?O5H3u|lo&5as>bb{s-Mhfn% zgn=Uz0t5EI;Haq4F>9HZ8Azu}ddb{Hpt{2v$RDi8$IEg_>)y`2Z>Mx{Z*fn&aH|-p z39c0lEc-3v#d+&FR%D{3ZvBiIeuRJ-n1&rg$nSuAbJCWyq7sjEaSw_%dx_g}Le5_+ z$o_Ib_h+fSk0F1~@cnmEdz;U~fL~6Cn-J_{;-RY~#j*h5qsFFgq!TmV%- zs=o^=Y72sr9j*!lUo|%iR;IstOT{lGsoNqS% zHS_!z%BlZPOGMPaPDJc}=PA|FfBMK@{`>FBxuv9kC`!{W`T6;sD&e2Lt?BEFnm*Dc z|K9tWzP_sIgBtvMZ*2PdvZjv*3jf|ao4&rT>1I9u=3AS-)^~j1wk5f%vDecAeQvp?rXW&ZI+FC(+>#c^@z?-MQ7%Ro$F>L>K8S{xALX( z1J%E)ME>bi%Jo1>e^c|#+&JP(2Jw2U`R%2x;YW$mf1@zv_n!FQ7XIHTO!>Wvln>u? zeWfp-zU6v1Z#CEBBjXZw9^myf{dl~Y7{7c>9DX_qeHv;T*V^UB*#NAZVmzWqBdz5UEs|KYoD|ITY~zc`9Ndi(9)dGYN{ zFaPBIw}0o=w;!d(fBXjAzw`3j4;%jxy)SQoKm7Qx;IBL-_~4g+?P0-Rc}noHW+hK1O=ikY)O3j&5|wb z?&+R)=KtS|cO&*4}Y|xP zT+SVEDwW}fyXm-~Z&^(b5YFRWi?Vzy#BUV+W8{NrGAu#u0!^{X0{LR@5&J7nm1*PY9pasa4ntQNl!VR@M)cH^EPa=qNhe z6AuDJhZ_QNL2EZEaN(pk{%VMHSA7)9fWz7x(ssTE|D1w22SrRRDOHno-$pA(`{*a+SP%H zY){~0AhLDC(w{k$kynba%e#IbM}#10@1aQbGl13ml(H^zSh2tyni-<#q%&Q)`Ln4BsG4o(OoAoIHgb=s%EU`w#@_sIS;^in< z=GcX>RP9+p>&!ac5H@^*fM2C^-2*!8Q_()%!R324RuQb{FW^f6YOxD$`Xh@X|M z`Wy^i%*#yyD^MivTC~M{Yox%UPZS5!{kYK2=Iob>zRtPU%t{B6Gyt!D4ALVOm$VX6 z>$sy%0p>>Pz?BJ&cw4pQct2x|KJS|O9W2N#F<`q4OrJg^_2QIq{1|uosjz65d8h|# z{QxF|b9ttrQ~9~mzbAIdsjPU}ls|Kj=?&Kx=FkVlCz!Rxp_BVGNyWVrS=FP!0Vza* zsLe;}s5t*x1qvh~6wR;~2!k<8VN~}{XrH%PdyXS(VWrk0l+3-sEIdd!rh|S>EV2^FXvUwE!Xi1flXW-?L-g%+hvBHO~D- zq@40Gm8DE|?^D0Bvt`w(mGX+V=Oj_dhO0p}l$m4sVp+{gVa~3#TQuRgWpt~o>R7D$ z+o6u+Kb(~Dd1xOmTRy})-!NsmPg_ps@v7=0UeXNwd*P`g8*u``bhcgf=hEY7C;NBN zsg7#gZj<|)qsTgdQkuZ4q6_i$oH9dze|C!{C0o%yZKZk=%^AhbToru&%o=o&{$dsK zIihuS2XT2{Vs`{{d_x->5h2!*IAZ~0unjpEsggJj6TD5)BH=o?fY2ndgWtiO9l=bm zBdPoyqa?A0phRlmc(Dg7b@Px6yG@=PE)==jC@B$G`8`7mr(7wA%c@J6%SyQz%P}Az zWc!eZmu-v=g*TrG9~~neohcYjVK3-yEtfP4d37m36I4^}spF=lMZxEsk?_D#NZd<5 z&=EgB(q%Oh_P|+F-W4FCFiJz!t7+HUnbx=aaaF4bqOCq$2^IV0MQMGPx5|~$bBKLD zu@+ocTMF*1&qU%wxFqu}BcQB^NH4rFqw`jiOe4beV5o~n`<)Gz?>@(chVI$^X zs+|z6#~7^Y)(gDc_HG_BZ0RdN`#T8k4#LKF+Z9#0Pg*vrEy$Zlc{CJOkbgtU)=*WbdaEp+r zU2MQ+S}{{ft`3*b!!X>s)X@km$}wy4&q&}`)(9AJ5Q2r8 z1LT)si{E0CQ6|fQwgFRoHcw6e082dZ)|+$GOcVF}w6!blXB&S!djC()-2c_N`oB84{ugKNQzrP|kKX^& zGxu9q`Y(>&|I;(~$rAnj=>0!EbN_thN13l%71ts=ar|C|c|A|-%;6comJ6uFpf@po zZ!d4E5^twrU&ke80)yd5h1ZzS{W*g$;M<{@$?*rRnqN;@u9b#Twbyn3UdjD+G6-uh z02sMUmF_DuYEr3I7%I{pCT6-#wjZVF)6ZPXI7|UJ%<7|Navyvhf~yK1yH;?SX0+FG z^e<8ZQi-CjV29ocDnw%DSEt~wtlpB{&pn#y(;0OqWzkbZw|Qk*V7hL0rIWz z^Z8m4|51mU`HMcaKbo?a34Q;5j5pOh{z4*Uin%|Cef;x#X^Un$+N=Bg4`(9f*Ya%e~{(O zzkSVAZ&~k8t3WFs*XH>6$sG2?pC#$``CVPh-^|Por(4bB?UfH-yI6FlQVUOKlBN&u zwPmEdo))4{60hq$&u2x=*ZFYm-6D$c@^uz@qnP;RG#W(vQw5subF@j-SvkBbs~5O>xrk`v}M~w65}(kY9)$K=}+Np$GgAdY}H!KQXpEeDVMM<>M=%4>N>5e|lh<4S)V1-o3u>UjOpZ z@Q;TN3ZOrI%wDtZ_`G}lhj*hn`qNX%KfaIcAKTu{;rPc#Gd=v{_+I?+v*P(5MOIWh zLtHbw{rUTce%EFDe;i(4vhK#H^e>+4Uk}CZc!Yufqdoo?57w~u|LTz&dCs36G4waZ z@Q=YPSATegIqr(L*Zpw$pMR$2*>&%S%RkumPF(l#7kZU^k<`_pMSSSsPt_EYRKG{|Wzpd(}5FfA}be z{honwoA_TQ{BgVOE^jkf<8N*3A1bpTW+qd^ctbcbZO^Y=w98fbZsMx!BNqL8yfq&F zspIy|1b;M*Hxv8p08aETyKI_uUx_lsXy`i)fyvtI8M9^s*Y0w?T)%~;0eV8F3rSgC z`AH#0vH(TveE+e_seSH0MEGL_H|Sej?hV0bk?+HLjc;3MvNc>jQ3rg{bMkM!pQo=~ zTvqyE8!s;Z-r7Fb*EKhcrw#1Gi<#Lp%1Mk3PseC@Ug6&wm~3MjjT@A>x!KY$=GAfS zLzJ?28w2c9=YuWuE7l*2Yj<=sfIpdfx33>&FT$^`RH#Nnz%un8(O`4sR=v@x=Dx8~ zr+<2-8J&N1QYM;A-kse zxcgmfW>+3zQ6^rL?{apzaqWH+b$ouiUibSSpTW=kHu*25{KkE>GbQfQ99o!icGm(K ztYF=Wwf^Up_OK|w$me?R_Mjd|188oe{AM^V_=l&xv;lp%Xse->- zpes4A32SwiUpaZNngg#xpul|6|7pj6Clj8%Tt_}xb^5E4e)1?A8oKP`v|{?+O)jPR zXwjH;yh5#&Xs#3S7Oo*Yz8bIiQ(Kk*&C7*(KVt-t5c{q?xY2*?3m+vHC9 z_Bq*)ZTrohnuYpCuJb{;Y}O~3n_V>r8&`hkt1KD{;YFQ&kYfIoBzgS+a;?u(=E^1f zW+zWC> z?@BA@ovWQWB=Yf_`b>uTPHjDX{$T{Q(YSv$!Qu7QdlwAXyi!+#_XlaX+Jm_^XyZes z4eM2PrBj^j<%h{N)+N1W_?SbD8_6`du-N?q*}l5uw)JVTt^xYzLakvdr-Mw`p2Pae zrA&`TslM@hzl8hQ3AU{QQHIeVZI}rZm|F1bb!HX>{{F#VJu@apPE|P{`fX(Kmo53t z?VCwowaR!&+hhcZ=4Lmqqh7A3{Ov1uW(c@E{d)X^e%t7MRe*WU5@mMzsAO5CPV?=# z`0i#J`H@~=edF9Y`F zC=9EM$%?!luzfSvo*{z~ll-Rsbe@+w;rkUo+UBtGMqUm&-{Q7>SQsSNr#x=upY}!}KWJFa;DE0aFV@Y~61^I``HQaO>A3YKYv17N z_vJSx#o93M3}yvgHO2UL_}Nb<3^P0H4~6w^#_f}|z8f$^Nv1 zups7qUV}dO@O87xw=?{YHUZZ}Lvs>IjuT%Gy%N@^$(Q>7MeoNF!d0_w@Y*l*`(dJA zxHFkx}C?purV z7-v;h*B$kLd~OH$9oBfkdT`XXpO z{_T-#BsO|ISnXkr2S&Z)3pcF4ApRz8{J+yEdH=BmhQYG9nG1;2jNZSz81qZb6%{UT z9ujuy4&2$qn)sc(_R3o85Pj8oGeQXYH_7*qAAJw`hv_C3B7gMbqLwf75KKpUL2W2i zyJ55mm-oYVxt^)mvdQxPq}p`8UA{P}9TcW0;MzZmFLR1fXIht0b56BX`K{qCD3<%e8nGe!t}n?h^;A-Kq>()8A#@;T+qGIJD+| zIMRKF7Jk{_jEG(cFPs5YG4!-Oo7vWprT5L6whEaS)$Pcd@$vgw;# zS1Yn~pNbkbZl(7ojlT3K+sa@QJMJYLaS~c*C${y&#Bat=CD&)+>wRwe^=U)Z7;H#G zL*7;rP@5^rAJmf4t%pfrsXK*=d8i}Uvf)|z-f8DGNO{v)F!zawnXBa<1?95zm|r!i z5JV;}W~+M?jatN#j;cA!trR`ibS2yKgW>~@YVPFr`4wJmT;hBpD$*lZ?v?D+PwuI^ zbkr43UPh_cC+4_wCd6y5o4MfhB(?h%B6?w3oXXlg@hnQ<(lI7zLr4fc@;=3IKW9WQvv z%Qmz*zPD2gt-@7$F5BQPb;?K4xk+rRhY|#a`Q>rPs)%~?x3D>H#b|m4y_~j^5&-1O za_LT)E8f}SvdrS8tSB|KuqHTL3!W{M*}6wx`a@2zn3Y{kzbvk0Z|Q~9bo=U(N9 zP7rSW62?2fQ3vGgx^r&Ym8TN)G(wA&0E|I=N=-A~NZ_t$dQ}Q<2F@Ygt-^UEF)LVO zE1iznNMN~epO4j)3?t76)*_yZ$C?b7;TJVk7$@pMrODcs|Etya7M7&W&eB~yl z^PGxNShOest8@r!Lt_&Rgs(^C=q_>eyJ!d4Woqr10DB1@(;FJvP%HtIGdUHK%eqwM z(xf$_H&VMbuU}@Yt(LJRESR9P^>t?2zV7zuj_YP%LQ$E7=ft8m>~a#>jkS>gazr&T zEjE=cBzlW1Tt_w^*ixv>QX0&%j9?9Uiym@I4czuj7eGt3i(2py#jCX=;FVHZ7v7X9 zwWsY-T8A=unQ=b6Ms0N$w<^n4x+^UFF61Jms|G~=-r?vTZTTWDWpI!>Aemm=<+2i- z)3vfdM%hzV2uxb|CgWUP&M0AZ~2+AUK7^qjRBIItiODs#!dx$HS zTts$`f>e47i`!E{1sJvi(^ZlQ!Sfa1e!FrD8>4KbxJ2q_30t!3nwgO2uCUi9;SiTQ zWk{_viS0QpC4&85UrIjZ$%Z-{R5Jv8S!Kl5YcNulWPyluIak`S=*$L&R4QfA5iIsQ z4;|p=PSie+v>{ANg-H|CM9`ZhVt%j(74*UJbDo&cJDpMO{ueeAaLWvgIo~*ymtUV-C?;jB4)DtYqbLKI+TP zKMrwQy#r8;GNzvktu?IOI;zP!visQjw3aE`V)t&)PkL`g(wM%nWR-2@H&6#=!*{mmyndW5rM{+N~90WdMBH3{j z601L#ItbKgs1g?m<9JJv#&isVNTOG6ndS?nC3z5r7=#St_bGFws=*W4h3@06T*$B{ zN_3S+>}mz5&MBFPxNS1g`qh>PNcn-yxXN;l=3MKw;`2UkgdHX1hBji8t=IMmL2g_! z@mM1L6#I*rX(=c)`3W#e5L}tQ>3gt55p7Gm@QX`0ih&@U?7HF{w`dmfsh|RUhrMeC zPDJ$#;*12WA?-YrITb3F)j$P(6M%V`r(Gr2b1;CXonEL?Qzi9}6S<(R;=3K>Q zJ;wlAqM}XhU5(q^>jUNl=g@SBZdH?ebBEfCyU;$zO4CUdV(EH+zi&3GN2 z)gHaZXwehl*%NYepT!s=xgvcuiifQTFNULoHFtGt4W12$5c5}L^cH6ur7Hxuk!Cb)Y zYFmnh*wt;VXpC}wC2YW2SM2u^N8siLFW{0VpHW`aNpMdn&6c(tWR1_+eM8yKGslL#E@z2}FstX0?*BKiqVj zwI%qP(*QPbxl77Zk@R%|fF=~>GxHT7xO*pWf`qalEPQ+yuc{hA*ASt=fe2&Zb@?7z zj$Y_@@JE33ru)WhJWEm4luT7+TUD_<W z{NzYjA;vH}8pIw=Cb@KLl87{GG=qtZ)NwblPwzGyr+|DB;Ba5Hy}w;n$I$8DcL`}E zrk9|jxLfTN_GKk=jrg`HlAy$B}mBeY8Q=&?w|V~7fqlD7gA0yla+g?P*@aV&il;UzVhioO{vq>4s_expcfwQ1UtrsYDz8-_>*-diWB@=KG8Yzd3VoPmei=$x zdZ5d1;Ko3g)k89pBUyP4z$qO9V2Nw3Lc|A%Kme8%Gw?m{c~ad{9J%8@0Vo;bPR&Ar z58Ov*h#r;_|ClSsJ%VpRq#c$81Tm)S(_Dqd-U9wL@B!=qc%cHc&JaBYQz`{E6oAdnw;a%YQr3cO0WgNE>M4Z3$DI~MyYMrx4Y%z< z0SGfyIWKYMpTJbO0AZ;Lae3r6J^{c!%OA%2+=E1;1O2j!G0skzaJyG-&k6+ed9>-QNVk3RMx=I$evGLI9tk&9PuSTqjTP^G<}_em z&pqd70%+w;crdFrxLG0r!CZj^i1-U2jC7`w7c2J97un)I>eMoV9Zi`V?m$Te5^1XS z24*Epk8sILx$`_rjQTwVcyT)!)X`k}*09s=65Kzaww`7V(V%dk#{xpCl93oeJT$*! zd{~lpF)upJ3U6^Cnm$qQyeegQPPy7nXB+7(LsbACvI+NS4KQk5tkikO`=qSz=K_Tn z=7%TViZ!!@ExW@EkO<>-Is=?P06v`yaJ~@n-b7tEl?FW2a(zHC;-=X&AvW2BNstMj z&T{=@AW6_d7=M>KB-u*(2C>j5wh6HILi=sffXLqQ#|H8WzO>P;u3UVvWF4`VgHBJK-WOkwXB=P(Bx_b3fZj(QT6E zLj3b|Tw+yY-jR;M_Uu6Qg``#3o;M6UBOu>Ctb-E=C#-z^SZEqjd46J}XOaLP3OPhD zLyO?Tq05N@w2&4m{62|M1hKb}8_|bx0|6gLNVZfnR4G6iekcJj>hKaagAh%5%$xGC z6=IOMKgCEK!NO0;*0wi`B^n_njPf>^l`F*)w1{>!m2tC3q<1AEd}gAs;{<{!-e=T5 z-$i`Rwk+^VzCJ5?hM#V3J1(WRAo>!ePUq4K-h_QRM@UB{TBzO9JCkOfWU|^wew-Ct z8<_f*uUrR=*&B6&mDK79FqH^}T218O=bsr9GrGKoC_H!|ZTYC`iVExeo_WLph1}+M=p6&&&0t9r=~Rxy@!A=X2x7jx3A$4E>>m=LCC2AgxIe~XZsQ{fT`&>(Bqb5bh@ zMy|6aZ~@shThMUun0h0`QwE_w*L{%HSeIOMiG}*94HkV=9_b4IWI;G&Q#n5xP`cq| z3z&GFHV2E#!Xh=SsqABgRV4rlP*x`41>J1{*ko3}3gr|$XC0t1jw`^A^R3jg($YS4 z#D&_kxnvL|d*tU%EMnU9gJ|J(Nx&t55Ftud=m3W+K4uS=wUOr=%-YKGiSp{b@P9Z( zQlO{{!nCV?W{LZAw~Wl;&WWIka8QYG#9M~?q*!VWaI(re+VGk_CZl>Ngnpg?Oz*Lk zeu!$ZPOUN%UH=r@3kgxI6^-S2=Le68H8f>gu9z$xRR<{tD`o0qh~L{Kgr%iNt;jwO zQ(3V%lmM>6PFN{8-^6)wNJo5#v75*~XJEJ*DSFVJ7euU+RoKXd-L=)IAb#=U~&PJhlnR4 zfC)I4G&W~RUkNLUdVv*t`i_bI5nN#s#+IEn3kcz>pr-CnN~|a%+swlVob1WOKdEW{ zAzZ+f6|62jQ_#Mm2B(PnR@Egk_Z2n`BMZN6k`f#NA4!8j?m!AxV2MPK zmF-+-%!E|cCC17YK564xL1f%F6P2Iqu>|6=&ZQ6ppQ5%HVXcmZgCQgkdj@`qKy*XL zW(2ejBcA^xOF@Y5UAPFx%qJw$S}CWW&fGfHW}**5kIK+r9P?Ul!D+nZ?Lx$yl7b)R zC9A5$9x(CoK0*Y1hFFD57w~yA?!d$5zF-je-F94J7xa`iV%eM%b4QVAPR(oV^CbrZ zz_hY>yQm{8n6o8$?%&VU^{w`MTKJ?G~oT*ee)C#Sso?2nC zFZ}9|*VM}WgF`sx+#C9s_h;IkAUIjb*jx+OdX-+R6CEpDI@J`w zTUZ)5B{62>DBtrdmi(QaG{2XG_SeHK1TCud%N5(5K z$@n?q)fb6L^`;u{oLSXVjPI?ebGOthgP6G%lY^@o01RUpZKRG0$1^vim`LguzJL(RI^V(0#TGeI?{F$O*=PRZ5_T9-z1V^* z`T$?&#YpZ-9K0z`VnY`nF*QWi4+y)kX&kwa?e#cu5%*56D|lSThJYFDpN{q70$P%& z4x$^Yr+i75qN6IZha+n+7()CeneG_^G{nyk9tQ8RMV}@L^Gf7akmV3I#Wh)`67bQo zd@qFBXASrk5uG3u@NzjD3NAn;To>RiVh!TkB{x?kEOYcAmQ&vlP{K|ny`(}}U@w!z zjxJzr(zp|84q;!WT^FLURgU|bH|IAKNq~&{;Rsr@to(RIYcSNLxLEUv^ObfXBDIi< z!8H6Rtl%eD9e*nWx3p1PdW#ug$AS3(TOA5gpk-=d9wtOXplB``AWWT;sGIWKV&?^r zS+J2(h@z`fqN{e-1rC?Po$A6%;&>xPD$9IxVtjA-0OGj$F_ZGgJk-?#X$}`P>Sv{+ zo70sdr~#Lw3=9Hl@X#HVfCDnN5-tX?SF#Nf+kjGQ0OBr|fh%_*wkvo@38)|_GaZ*u%EhL+mfdV@E z6fq%1BYJSTvry1YI95Gz+%Uu?$n1II8^_gASU)bI2XM+(RG1Nt z1naOCjk1r3*%)!;B9fG2WcAykJ&bWj>u`lfY7OhWnX;auj+|JnTY&bFtOG$9kt)$E znE0@(!7gGtFCGwBdZkK+6M@N^f_W}6-tLy%2060LO#!j!e0pUSbHCiiOErde*+6tA zikfW7ra7fG2FImeMYFJAaxHj8ch?HeY%&vxyCn?5Qn^58^0|kmI|?ryN|~PcsC5By zug2(H;3@(?j#99WWr8Jy`jjrOOiVMrDiCc3hb&c`wjgMuzNDkRlb)J@HNHQyHa)Qw zeu{m4W*E#c2#V0^Eo7BrlJyy1yeX#J9YC)PyRT_oMFibj5EXOAbX5x2!saybjT<2` z4DlwNBhenWsDda~gQY%zjMjMqfon~dg;TMe$iK)YQWqo-_Hy~A3b3n!?G z4%_+YhFeB&SDUg6Dh9}l)s4N2Q4(9{6HS5>fe4n>BrX`r0<1IrdaWdEEFF7V)`_csNY`qy$jEa{7S64&g|D${$T`Pm50~Drtj0Zc`r}eqiAIbP%nc%(2^4`QQ`z#asNa6gf zQ23q>zx}KUm?r*F(Qz%xd2ru9+APjZM(wTQ=%W^()zyDhvhn%KM|S+BNX+a!nBb~t zr}6>Ahj92vdcGx0e*!1xH$ZT#!Gi5KIwX$)&i@&mM zHxKT<{7jcM$>$%XY}cIO@3lSO^0G}`fc|O?O5f9|@^ZHSE`QI_O~P!q1W?(CnrcwT<%7609L|Hg{~Gg;AzIcyc0{;+2K-u@{WdOTlX z`wXG5R?FG`Ps;n9CuKSW|8QAf@&=E<_P{S+Tgrd#@a5Nj^7p@TrhLfpM6~`%pYly) z|CvT*53pgJ*7mPFDz{Nyx$S=ubFeyw{`u=G*IC^E26DbNC%--S#hCoEW$SSgn)Y`x z0%CUAN~QiZZr|kbH|mvXEq|HZC(N3lfLU8B{ji%~BW496(Ki-`PK<`B;S0I_LWf`q z!mfSGuj@N39y;s4Jv++>tq7ZFMdE)&EArottflz;A-(HfhU)(&K9~Pb3@xz1df)D0 zzSsZ%WNbP9n~x8NX4n1K55Ml(Y~Ps$__yEx^_747H;%jEKY71-{9nKOzcqV}$rrsp zfADm;rVbIQWq3=a3nhfbzG0u?_Wwcln(gxcvDf_Hz+Urjao|%OGPk*Pmq5mE{9=sC|@4>0w$waw3p>&Si18Yc{ zEdvFR?8NzbEUdyVME@9D^K{p_uW2`t*hdz1gd|T{S2zsyZtUqOZ_g)LSH5b`kIGvN zY9DenS5?fMHv&1LIVqiEDzEZy}+p0fyXG_`ptpNU;PWGlCg z6AHg*8t)O6d#YC}`W%gPQ&^P~F6mq_+^4*xArnL7R9+#7*lNQj+)3 zr*Bi{PD!#x@H{D7(jtfXL6Y0Yvup;+_zx?s6-v1}M-E-aPH;ZYKKOlwME(p zfdo8fV?egPbxu3?iQE0HlPlGWgmU^u8F^9~FSk6Jg;q0%2zM=URTuscfw(szs=CzH z1h(=hn$nArx@4W3GJB|trk{Zp-W)~7M4&o#6gp@#mf8e2XI66vV5dU1| zN>(Ky>T!Zxyz{GAjjkOFCHRU+x~ekT>L-fSClYoPt!AiK#p#Dpk z3W88SDB3;@oiZtKWW!E}U{YeR_7vi#F&@Qyiw{wmQr+p$Ql~5V0OfesI(nfSQx7>7bZ5<)dlOSng51#VQG5i*9Da ztGY0uQL(~q+#UvjgSF5LSOo78&m6MEOqtFjKv}P#8ftFtB^Q5PSGO3hg%^W^( zG}Wl&c6r*tv_oAH!TUQdl`N#GmJ68dgab0Rlz1WI77ek`Sz!s5S%DpoIA#(luOvA~!Stx3iLz(lSe z+QgU`unlCo+(x7&XmO0jX1>E^Mmlj8l4|Z5YN?>7OBLtV2}ysk$u!P#j~o?OM`Z_x zTn6V|(}(#=4aA!+zLcY1Y1=D_-DTtimf9mfM(%sOD$kjyeA5D$B_$I`9db`UD_*Wk zr;4~Od{EH$U3WMsQ8{F9p^2|($Rr?#h+z;H3&uQ8nf_sCV12-TI^b{}-YjbVfR3P` zO^C}jTau#`;L%qUasT|bOM0O$XyV1kw2qPRBdffVUGN_AK*<$9r65q77_B4Tx8YKp z3J#jo;tj8ZCs^+g#GNbehrMfi-*Au<{xY9>q|&E&70#p#hO&$79q%z)R%haok+0l6 zc*Sjq?ky?xyJY31aPV5yitIG`nW6N|WWYu9a%N-kts=IkE1VGvyd1AA#?%{F@+@l= ziRHNueRKd!X|f%w5P`Qe=kKfjP9?o&-uZdUXAYPhALMs7oE=9kiULNH|3F zw-cGrM$OjOdy$k6F;8v5t1Wjboz*V`06{-)@i_+*va5BJCgmGRLU1DGo9N0ciqWzZ zG!9{A!U?84VXnf&LKjt20!n!S{4>b5;*lmDv3n7&$WMZUjcNy+qG}NG+yFo%%pbH*>%Qh4W6gnGZMtM}bf;9b{848j1=qGMzqEV{fu zM>T%i`gB#=ijq~~M0|Dz-_CBL?$f8RA=Wl2m1z5=gf-bME2e5~Qfz9W-3PUFTi%>2 zE?o5ZQIyy@{ql#F;mU2vsJ zT!tWQt4J?aaTgpmfbJp-Um`6;*beWoh|*CX6>?9ERc+x^XRsYn z!IZD~Y}|U@ka9(*-o0A%8D7j-(`Os0 zA>34#s1+GR0&eE3vqDrBj<^d~J@{%0QEh;D;;u8jzHGSeK`I7r1wR2`Pc#&Xt9UCq z5Q+n7b*k)W9y-DSFo+FU=A#KjQky%$4De(a+f~EuVHr2*F|mG}bGrg%ReYNS!GzVD zv+4bmJEV>n*#p$FWvw651O&-H%tTimxTJ|<^a)}I1i)s@w1`AAhwbW9W}Q9Gha{_~ zQjKt>liZ77ZNN?O@+aU%CYhNxa zth5Gz9@@xelCRvQa3%&+wF<1TouhDtRmt2SU+GK67leBAmFW6p%gG~6=m`H?#h}wn zyLW6PN;C_~&|)69=XGqCPuv=A#w``%PWY-Rtl&Z_w&pXtKF*1irUmx zpepQMoYLg5`|6c7!vmE)AP$k{{2a!-zwJ20G+E~Lh_1+*T6#|WBa(8lRgPHiBtHxP z$EEBJHmJdCD32&~LWp-r2v*$MdWSie^Hpv-kh5wz`EiJ~0l1i)ENXIZEq%^wTrq*` zs6EpH!co@FAH|9amGBcw^pWGBO6?w;3wh3L^3Ga)_?FEqI`<&4dSI=nVQsQf^l_;x zkF*N_fI$b|I?Zd<#xk7C?rOH?=z)#?5xwaVMIF>fi( zJ+y~)JH-yRIji2H=DZFy9f>>*c`IIHhFN3>kEKm~2%j$bNPC9$3gA~3j`%Ug1Y*z1 zn#eLLfSmn4MEE&zN**pFyR7*+>NEr0&59PxLbKRNCZY^fB11UHTHKKKJj+^LQ?0AC zzDFUV@wAqeh`se3e91*v8~{x9x|63-iXi4S#5;930|Rzu9bTn%wNX;EV3A<|J%}6E z1G9R7U*&u3Pl>1n2zfSE8iL>+@MK3Dlktsl<}Eg~(+x%R6?Pu{Pl-YKz_bKNHdug> zmW5YB)GN}BRQud-rUVvrxJ1^=C2fKp5Ti?xJ2ya^`@vJ*3~z!JRw3v``hdwDcfJw& zxJ}k3weyhkBUpC2&+O_5J3pm{Kqx@R@C5!x({}MwHEKgw{fsjDnE8#p^XA7;FCLST z)QOF}xWhAs7iUo1lfg`(Ux8p@Z!3%Ql(>JUq#0ak(5wI$kAf6*e9j;cEqo6VLEjX> z7l=qttabtYR(rrg8!pHp()vh8h%f{gMDH~97?2eLBT?_Vz>PhOgwV^K#w|xZjHbU7 zzA`y+I2IKlHHpF9ya7~bA@cnhCm@Zo8bb%vLnQVwmOGh@H&|d<5SdOD~JI6MF@bB zTvRqwY8`F5B$vD{L#16b zQ5oV>j@5f<<4)L$qzIo1S7Pd+Y@YV&Ghf?x^adOUE48IJrS*t*`i`USul;q--*6Mxd zi`RSwKfOnoH47Cbhk0%fw;(06DndJgbJTBA9(cm%_7>AH>r|Qn=-Y@z2!eCSTG3Ds z>r?$3OycsnfXJOKX;X-)9WX>Yw6LmYVIOR8439fq>d2H6CBd1G<&q{^ z=T@&33Vz02|CEjRO#*l*WOD)xPa(9T94$QJl$)vKG5|}1{q0gGCFpI@kV{m*jJxDu zF+N|%*nI;*J40ad27u)*cPeYQdYPq`cuG40NCd#4U;WJ6Bl==oX(8}^S6v?($j6ts z+5te{@Rti6^&CdFB@c*feF!5uv7zl@#{6@v8jZw=$1RJ_rQbgQN}ftJJhIQ~68uYO z?-<~shRSS=&Z?P@yIMKB|J~l%HKz$gVfZhB22(GK2!et&2m*I5Bz`T%Hfc5f`ku4P zE^IJKXOhmeGr3BlMi$&p_VIbGpyyk`X;ykis0CMv9?bFkrcrX^!31ysjrm99^fzz_ zal53js2N-KbYam92HsvC4IiPGKBStyoy^T`eD*9DEIMh&wn7@*q+3{8onr?kk#>j* zw4HkeYo{&rp*?voIOxL4!G_VHlj(Gf)AFv&5!w9*bcZYgtnWG>CWzoPEK7*3zE(Cl)Ly-wZG^st)LUs=XqB#A z%m;BTDzb4_sdSm496CMR^_kyzwX$}fz| z6i!9jI5e0la>jzqrG0zJUF*jbrU$r3=8g&|^$JRWEyryrbsGxZyRJfY}`gYNHC3eA9faFH{@>?^?=CUV`Qo@gCvrqWLJ z9&goEw9%$oj-HnNGcDXcp6*}(~sITPM zai(I5#}+~SkUzfd*dUDapU$y8)xVATIq87pM&pvBy t$^-^u?b-yhlK8eUukU7u{y)wWeiDNJQ{vkvPxv=^!rx5)`2?{Q0RUye_dEaq literal 29785 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 None: max_tokens=10, streaming=True, temperature=0, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) message = HumanMessage(content="Hello") @@ -113,7 +113,7 @@ def test_chat_openai_streaming_generation_info() -> None: callback = _FakeCallback() callback_manager = CallbackManager([callback]) - chat = _get_llm(max_tokens=2, temperature=0, callback_manager=callback_manager) + chat = _get_llm(max_tokens=2, temperature=0, callbacks=callback_manager) list(chat.stream("hi")) generation = callback.saved_things["generation"] # `Hello!` is two tokens, assert that that is what is returned @@ -145,7 +145,7 @@ async def test_async_chat_openai_streaming() -> None: max_tokens=10, streaming=True, temperature=0, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) message = HumanMessage(content="Hello") diff --git a/libs/partners/openai/tests/integration_tests/chat_models/test_base.py b/libs/partners/openai/tests/integration_tests/chat_models/test_base.py index 9a91449ffcc..373f2645db0 100644 --- a/libs/partners/openai/tests/integration_tests/chat_models/test_base.py +++ b/libs/partners/openai/tests/integration_tests/chat_models/test_base.py @@ -115,7 +115,7 @@ def test_chat_openai_streaming(use_responses_api: bool) -> None: max_tokens=MAX_TOKEN_COUNT, # type: ignore[call-arg] streaming=True, temperature=0, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, use_responses_api=use_responses_api, ) @@ -138,7 +138,7 @@ def test_chat_openai_streaming_generation_info() -> None: callback = _FakeCallback() callback_manager = CallbackManager([callback]) - chat = ChatOpenAI(max_tokens=2, temperature=0, callback_manager=callback_manager) # type: ignore[call-arg] + chat = ChatOpenAI(max_tokens=2, temperature=0, callbacks=callback_manager) # type: ignore[call-arg] list(chat.stream("hi")) generation = callback.saved_things["generation"] # `Hello!` is two tokens, assert that that is what is returned diff --git a/libs/partners/openai/tests/integration_tests/llms/test_azure.py b/libs/partners/openai/tests/integration_tests/llms/test_azure.py index f1b84ed4392..36c980758a9 100644 --- a/libs/partners/openai/tests/integration_tests/llms/test_azure.py +++ b/libs/partners/openai/tests/integration_tests/llms/test_azure.py @@ -145,7 +145,7 @@ def test_openai_streaming_callback() -> None: max_tokens=10, streaming=True, temperature=0, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) llm.invoke("Write me a sentence with 100 words.") @@ -168,7 +168,7 @@ async def test_openai_async_streaming_callback() -> None: max_tokens=10, streaming=True, temperature=0, - callback_manager=callback_manager, + callbacks=callback_manager, verbose=True, ) result = await llm.agenerate(["Write me a sentence with 100 words."])