From 2717d594511ca3dba2e8797bc1d8ab6439c6574d Mon Sep 17 00:00:00 2001 From: AustinMroz Date: Wed, 20 May 2026 11:22:42 -0700 Subject: [PATCH] Fix reactivity of vue subgraph price badges (#12029) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a subgraph contains partner nodes with price badges, those badges are also displayed on the subgraphNode. The reactivity here was spotty: The price badges would fail to display unless the user had navigated into the subgraph on the current page load. Fixing this is performed in 2 steps: - Firing a `node:property:changed` event when the badges contained in a subgraph are updated - Extending the reactivity updates so that badges update in vue mode despite using the litegraph badge getter. This PR also includes a minor styling tweak to fix text alignment on price badges | Before | After | | ------ | ----- | | before | after| Resolves FE-346 ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-12029-Fix-reactivity-of-vue-subgraph-price-badges-3586d73d3650813cb12fe265090940e4) by [Unito](https://www.unito.io) --- .../api-pricing-on-vue-chromium-linux.png | Bin 56866 -> 56559 bytes browser_tests/tests/priceBadge.spec.ts | 41 ++++++++++++++++++ src/components/node/CreditBadge.vue | 2 +- src/composables/graph/useGraphNodeManager.ts | 10 ++++- src/composables/node/useNodePricing.test.ts | 4 +- src/composables/node/useNodePricing.ts | 4 +- src/composables/node/usePriceBadge.ts | 9 ++++ tools/devtools/nodes/inputs.py | 28 ++++++++++++ 8 files changed, 91 insertions(+), 7 deletions(-) create mode 100644 browser_tests/tests/priceBadge.spec.ts diff --git a/browser_tests/tests/nodeBadge.spec.ts-snapshots/api-pricing-on-vue-chromium-linux.png b/browser_tests/tests/nodeBadge.spec.ts-snapshots/api-pricing-on-vue-chromium-linux.png index e0f46d3791b5d212abff44554b38de6893ccfb3d..df2141ad7327489e183165854cdf37e8b2b9cdab 100644 GIT binary patch literal 56559 zcmb5Wby$?$+BXbh0RjpF3JQYKr63@Uguu|M~Dtc3|>eMMYTL;s)ouWj-N5nj(Z$Kcd!ki-x2@g|#w=OB)$=JS&*gr{(Ulmw= zW+O7O%D?LtqVMYZ3Jd&Q42-p(kMJcH{b4ZFon+)?6`JU?ShwMnzs!@nWmOq1;&Tg+ z72j1(3W!;Ak&Egl_%tj$G+twxQT*7j@c4gybMU|^J^=&EQAYII*6Ql$yRmo0Wh4u! zC={xJXt}|$Pu(+hjR~cAM2x1t2!P-BY847-SfCWw-w#PGI+N&Ezf5bGQtvL+kL&Ki znCJ}wcLuz41QqZ;;)`Cp^Veq>f|%IP|Nc6c0?N<9=lX-cKI3IGs3?lotU)N5pV&aeeBSDMe?Z`uqM3 z3%#a@T&enK4|>9sFqen7Z-@1|&u({#k$9tV0=4vDorPlbK z7o+ED_0Q?IW65pYPmbr#Ub)FcG-}u*h4f_N?6C^6=*v^0Od-wuCrq}%-d`aZ5m=|2 zqeXURTVuuY0>|l+&)6S)nKHhXXt2ir*VVdaz4pC{_c)g1@#BKQ^~1x%3g~oZznRAB z;_50l9F?Z2`3r_TR(EbtYpf4gi^mQsfw~wTU8PYfSH!@O zc74p?1-JPd>uefJg3|HJtdc_NK+FpbkAu+W!>z31myaa(RDTayf()^)>lNuH30CH|u6Sy>Vi5-j>C z?Qrap@G!#Dt?|u73b)=w0k8`=X~rZ%Oo|V4rH#t?pULFje#qtYQTR#v7PlnrHW_8L z3u0!f<>3nfB@x4gh}arQaZ-zTE;nA{j3BadHC^4T{5kl2#>mFAh4@2yo}AxmV|fPqwo2~IuDMJbD z#%a$(mf_*y2wwIOS16}($5LHgojzO_@^A}}TSv&=h&LL8`y>f{$(ejQW*LQO;qkbzEmJbf1dFCZZJ+7iZDCBpP-Spj_~$gn1rzSCW}F zK6}#SmX|`y)NSJMHaUypm4rxW-%9LpKw@c0{*;CDOk*sJ%!y1WG+Q|1-Rj$)pYEYi zr-zPj=4y8v^edtDGPEAck?1m4oAi;FD&BF95JL(P!3Y0qBl_M^LMvT_J+ODjc>$W74_6#Y~=m=^02!A+und;f7W8LO?FgYNPwq$bbT-j z7dJ4NLSTa;X-X_f(5tY{e&}?TEj4r6H#{1VQo@+%Ql9P+h#ID-q|D~IH zRTRb2HL-SKnQklQKqS}Nbk`^H)Qi^EvOy7|*MUe&Yic|1&P@B5r=D3ko$bv}O-(H= zEj9bzQbanh^_3MhT-3Og{{Hdr<6xs^ zb;lIj{aFBc?kNc=X>T02%TTtWqGG>4{^OdH2}_3g%jIYqo%5>n^eQ+SQw86+hat^h z?9Cf{a-|Fbj>F#(49cl#X$*@H2&8VakdID2u}hq$bK@w_qIVdE7Sqfat>{ zb^J%K_D&{u_o~_MGdBIz*XR6Tmv;MQ=7Vh^lmO^`J&uTsRDAtS8?_ixu3O{icDet{ z?0l@)kca12PJE}ITA_~HWkp#!VLZ;vlPy$Q@i$_JhK4RLHV4)Ri{jW@V;Cs~V#{I3 zo6ZJ(Zhn>&XQq;lI*XAaKHep>v@8G!>74Xj!(6l+&K*9|52Whw(f72&T)g!UdUU0N zFvAhsm8yAa;t~?;ju$mGH9QVGjpr+I4QSXs2id!=EH6z<$4S^w46Lkj)S(J)Q3EC} z*`Pmx+l6ZJ=U7}^WMX0>*YB>iofm<=&Kqvn`w_S;@Dn_y-&&!f<`?^mFJ8PD!g^fw zz54MZX7nEF(}!m%3K8{|hx^l$9+^Q8T#q?LLVrU`jiKj@Ds3}@Pm4C<1bd*BiqfWS zT|!ub@_)L`XzEL_Ukpa_*c#5l&>uZlIyT1CBE-34CN}CQQ?dP9`n5!06xi3d_S#fY zVHkPiVz^~(Mt#S%_H`Q1%C)+FRoLVzM={~bS*SpSia(IOr2Ou6@5w(E-}}(pegexf zs)kal`R!@z-U{}2T&y*W_*Z}9S&V<7ehklRgm3@asTh0Mf8cHt z-Jc~F(S)~CQ~$_drC6DI-x=Kc?nRA?s_MF?(K!eMZe}f;e_RBKg(YIxyLt_2SPdv8I0-*6CYi z9P}nlg|XYDbQ)?p$MQiWMT0pwARw%B`RMD+PF2;bTr7_n$XyDG9_y}TmMNhJN5qu> z#YFyn{{VZCZ7a7Y5T}-p!9grLqvinQSXA*DT+`oU{-Rw)a^X7!DKHq4y181=nM+u%~Y zpa(A&Hu8#sLqc{(3gX(0a+qtHl=~_1ZhWPTNVT)ywiMnBqe;&4XshF5pSCUW?;T&ihprLJTS;fe_VX~>) zZ`&+tM1dNOSkFotTb=`DWuD~vwbxcwTi%#h(Aw>ayuzA|=3A6oR?GWR;j{p`IWc3d z5d2dunluyLH*x@%c`WF8mJzL&`Xk3fAmeARAYyA4by7K)CBHjf>hI*P?{%!Y=&zLH z*!=#6=*K(N%Te0&L8b{(MSAs9ep9%Aicgb1t;{#!aT_VA_Ca|e>(X&D|C62R8${OM z{%8SLHKoIc(tVAJ6;n=D)@!%^RINx)c5}L$!gbCEKx)*cKAP8c?@8rHi?|T}1If`s zT`VlDVGGX42mr4aYif8|YwVXh0s;bf99F7MpW83}25UZFO@gB?HjAn`Ro=rukp>VQ zkj>P7Gw^+a0BqOQ@sCib9P8G(zMyHEu60=*sXJQ;OnVblGyjpC!ei?NWLM~NuLX~s ztMB475#0;`cPd9GhlhEEg_)#s)n%>k<||UKy&7)QcUz9++o^iW!qRQT4p>k`qJ^+9 zMnMX1sYuEz+c}KmFM35;Co0Yj;EAkhl!@jFo$gF)=M9?}8F}tC-zt+YB&Ze`>@O`T zS!)Mp{Lf?1r$0?g0?@%ad@H)txHBpaTEoD@6EjfvR3dn9oNAbB*7Hy{_Ziq6b!BCa zdvgE}%ckas*o!1Cex)I7N9;Drk3Th@;NjsB@HmO*vYwEj^b(7-=-}7%7#bNVd2{$7 zrrX3vSh(87)AJJaCLA0bGn$MBht-}80c8{D^9S^zi7yOq)*HF#K?H~%J(6L#DAcWO zxIB>VFwc^SAtWXye)zE3<8%k0*G5r)`~-eCc5B2=?QRLj=$aCl%;)`)0&Vo!B0<0a z?a@orE*cfmvF<46bMnR%Q}BE#9M|28{m))*6qAq`l!q*7SqjHc8T&>wAINw!)TeJn zD?wPNrz@-{iw%F#yVS2HdI%zqlm$Jijz_c?7ZxaBX9k5!wO)vmL^PqdZQzT%K4c0~JOTmmWYL<_jLKz3jYVs=N*0Ob!m6JTKWE8Z@TCZ9rLy?_1XpQe`bA46T%qd z2Bp;PBh|7P19jVewM&LDQZVv4I8> z&KMc6Ft-1evHlB}Z%6@&Um?@Y-QLsl*GYXe6GVRAm4emZ3(ja8UPou=G*z%#o^?ExgDF#PUS3>2 z_MJP9bWKxoQ&nvS1_oQyKkl0SRiC{Z6)Z+Gq)7=PhrfM$aG|ND)@EpmhfNWwk(1fM z`=K*jK1mP>#1gI$u6C6;+u56+s|kC+zTuSe;voxatIt=UkIlCeN{8ANnJ1zL$$Gi< zph|nInWKP@z9YT&uYJ0-yo^V|@4E2wGn0CuRdI8+Vwy&2ry04Wj;LDRa91Rvd~-uB z_kwF2Yq*8a*2^k<^2vU4cUWsiGxUl>m<|}op0sB)1nsgr-MjtpuS>^>FLqd!TZt_h z>n-wgr=n@Iv$In{EobVluo6QDO7;~D3Kga*ZDwf^^BuqASJIlvcbm;#Dk(v>--NTb5z(zZ?pudgG%1t3woF{KIrD;LQ8tVkc|Jl_k;u>;wlyd7g2RFw63 ze@f?9kCHqOu(^|?JFx-8V+wD-iT`K~_AMz1zA=;o&V2Agj<$OH-(RU_;b`Pzm#Jof zd{6_wRNCQp5yxDe&NrL}E*{j;okACDY234(;R!a5%pDuQf*()1E}!i$u3uH+_MT>9 zbsefmNVPFz*q~*ZR)IeO<;sWxyu!6@{_;PbBkf5C(D051q zJz7M$+!FB!RG>~!b(YCShldrhI$S}!m;q8u$0oE9c>=nVgA4gW9S|7GT0pr7W^dY_ zth{yWmhvL#l1`f=c6jXU?1V%_NnR)8<(8up+b2M$;f`6^1U)m8>;S<0?1#&%Dnyw^ z-@@8y!+DZORWMPYb%W9%F@6jhcD0NX5YYIXw|@8Zn5-rzC%>Kl;dgZD#5)a`V$PE~ z<4%&(I!zTtN-nFhv=G5uwLDT5t)HxS{(wl+_V#wSwG{uI2E-0f5P-Jhz{J3j{=xQm zV>oD4hBjiTe(wivscCO!U9gfEWF~t?8vA=~s`SGHv}6tVOFf>~2PRkpUO zBYInNRr9`CYBAqT2tx!pHy#(5XJb^l6`4Mn(k%eO`~MA!a~5H6nEqH?*Xo(653im) zi5K+JDjF?4oCk1$lEdUqWJJhgK9lDUNZ9ncyen~aF+l-<$jBJ=kaG^NtgN`3jRO_j zdJFSo!pk;1zSsKupa01D|5XS7l*tP#eW$m#%k*sK2~ zVPWCy%tbgS=f|{3=$jH$Ngn?8FMRK%`ru1&aA9`#+tn|G2l6@(%4UmL zw|*p7eyi1v>^4zmoUF=w{!ewBtP&d#Q%qVlP>@SWms<4x#UsBvI(y#3m6Rq{IGg^V2~Cp`(dr*Qezf;{4f(pTu<*c@vp}sgYbfOWZ)>3m*VuFw(A`SA z>gPJBH5Rb%I@@`A{tf#5=-C)qSqpP=K7YC$UE})A0hg7JB(QaDfo!(NC70t54lX}p zz0-8#A7F!VcKy#;m?OGA#p3HH()DrpibZMdGWoaMyO(;KV4aX&`Rvy9&sgt2z~0@& zuoWC*F_EqxF&cPy6uS}2t6HG;{c8HS7RmP&r6`N=Eqhv>-h8 zy9P5w;r-L{E3Uc_13+fQ} zHsNRAwO-2d+@qoO!4oyw3af2IfbZ@}8=!jsDMbwd-^A_O)(;F`3_7`<(5LLL=!;F^ zfepEZYZwk=4>6i<2-6Maw`pDUs;s&*-~Ii*HWTlmVnnp6W?tH_zigg~_t&cyuXlwG zq}B4je4`#?$W8tLqe*|*2R((9Drj9-Uxd|$Dy^w_c+(b|q*8^31YQII^j zXBoip6?v_R#(-m!Q~XvsW*C+4z@_+Kzn5S1+SEM}AH%t(6ccN|;!I!$=qR;qT+7qr zd@D@m#rfi@`N*Y3J0NPfwD<%@~oNY=J781NxQu{pOxOW^8y z&1j!J6U!RZWG3BH<11`T=0q&0wei}3ZeDM4x~>9x?@ye#-FfeQlreKKedJj5oJ<-;#8@PJ!5)zY=W-re}OpG5Rjz{&!Z#)gZ zu`}B^E9$%WD};cY>x(Y0r1xZ&e$xHG2Aono%snIfv++kL655g%aDR+&{5|ToTtcgG zwR@$K*VRzu6J73s#hIq3=|pZ>S3Ozh0iZ-cw^^8lwS6J?egFPSC8=E_qnxlPF9h0f zUELR5$$R(it!8xl4SvP&$oBPM4MnJ^(7&acx9dS5uL)~g;im-O(2Nl(l(c5MMWh*z z{%k&O#@%_tJ=A;GiT!vZ?CXb=3Zm*MQP0Z5FYHIeyYyfm2mkv`(iW5dVt$J3lxXN$ znCiiiyC@6>3y%amv%kOJ*x2~^_;@N7P{X`o&eyN)A+NEnU0X|mWDHo8>()9K?29l3BVmGDJeQ}BlxnaQ$P|82!M2$OfywK{!7TG_idh=i67zSaTFK#lgnCd zYym!*h43WTjMy_mKTzX)4-O7!ZMuz9{t+&|2|5(`c|Om*eV=cOYo*Fa-3m*Gb>s27 zdeJt80|8SmpQ@30(%(l)J~5*=@oQTQ0&j0C6)JInbq2=D&;kpR^glgNK=H2(!jYW5 zS`O=pAy9*sJK<^mfKJq}#4-T4s<|tMLsV4MtXtr83W?Zd0^Qq8_Vw%678XLq8g*v< z1VA+0n&vx?wJc28ijEz(ssLt9C@muE!(nEe$;tYlKS_3X=u-)>gIo$p&HU-)9%bEK z&O7>AqJyKzIJ1yKK+$z}*t>1Lv)7j*3fd^(=xP3uk&%Gja-QyQ4(E*)RL%f#(41&u z58#-d-o~!B1cTd-d>?Myn(X4ei9s>U_spH-!;f9Jr+3M|>CE-rxGm!uJ1KMV*6+Ra zl>;}oko>`ReZbgZWvUU#pp2Km@PrO#cB_c#R@oXHQuTQuGB0=GXg(*#kcw1)B3hZ` zu!A3dyMqV6L!W}>mBG=l+-0sA^ia;IlFumsDuwwfN;yEivx$9azEI<|S-tj^N)&MB z@Pvfv4C!c~8PCWgm6NRrXylDATSkFC#BD zl{$QEs^%|3pALp%c$7YIBh6bUlrQ3aZv8=~(5x(Yox8uIr3?&S67d&5xEBkJW$fRsURY^s-3+Lr@ z3b{?y(+ZQlGWwaF=6_|9-46%|80jD>}p=9+zT0<;05Cdlcj zvmAv&;s9y-iLAFfSjuVfCm4JW$w-Ynoj$D`8`EICR(W!LVrstFa2%LP$$kK&9`DZ1 zddWZiET*KMHUBYF`A09SC@4S8Lc%8f5v9@=J3@(4a_h6M-K4nsh*<)C0VI4EcCy2? zsm@}&`oyWP58jAUG;{sgI}3Z0!`yrK^QSLS*ROjb#ywhZxNXG`t1!SXP6i)VP7@JD z_whpnY!}8t3H0FeMQIY^jYlV@A-&Z>_HSK;bl{x{!;H(pESnk<-3jQfeZv^ahJ9+R znMe4UX%jZmt+UyznOQ|_ckWN>BMT>-($bpr#3O2Go_!Ka6%T}sE%COFEkJtX z;$1@cFBJ?FsgO#VReRHj-8gL>rGXV%0e46E$#@o>e9XnUX_90{kGfWl%0Lm(DZ?;6 z;cX{;P14MJwLZs-F8t4G9vt@^Ni zb1~O5o5rG7v606=aC?>U$FFYZcibmbDV9cJMv992Hl1)b7o^4bcT@-rdEq{0^z+mF zE&NxzL^G8(I5hQW}2c>#ZGU%lZ%IzI(;NM=fLZKGP|GxI^hu|3){m*qWGc zcIMKkf1njTUE89GhkN^L!|`~CO3Tn@Ioka^0S!Ci;ubtVK~TzVj3b2Pg$7(jF^Tw* zebc|#Io`-uRkRBVe9-d1mu^766Q1}ah`gD|YiBjxk>PhvH=PnG4S!^}Jly|cU!LEV zuizo4^T6*Hi@u^ivSGC=mHK5)<@9jr)bbeP9&sy>ymV^I zr)n8AH<M>deS z5d%Dn9bzK>TC4iWVM-7grs|tO^~}^K4B@{B`FQgB^{9L!baY3cTfG4>gP`EDli(Se z8_|YRaCw@I^c&`lUMlM7Fh_R+y1E0Z@08c6?(F61Y zcIg^1FApR^YRs(hL&GUfOs(ThGm024O5TB!Yip-?^2)I73wUj8!~$#d9Pq<(o-A%D znXNabC%`_^F0_-8!ELF^W|a0DNl)LgIDQS41+j!K69-vYywmSMfzqz9T8^r9+I%xS zO{>gZ>Ed6IGEl5lAh;#s2ZAc5{YeH#(O+tPl*XL}zR1Vn-XfmErCFWBzu>W&a)h{$ z7iIaEg^>hPPPDUn>oMf$z89@FPLUjEtp3>{|C?!UQUim%?_ZrLDnpiVt{cKtdF9W8A|#lRtLP<`XxG;r^&(GI^rHxooI ziRP#bRIOSpJuZsgwpWX=2R}McgAr*u8_04{@$6E zE&7m!Owu$PBQ{;>B7aK#!+aSy&q(C%A^u}t5X?CRVI`HJ4xtY#0#~er^dWL#2gX%s z%L}_aW7WOy7~nbE;N>_I-xKDr4Xh)Plw>ZJD8FF~({q1>^hdb};E&|E#a&!n07xhs z!|v9X{Q5{jTuW;LIIaYbUd>U!WFl8L3*+8MtWWc~fsoTW0WtK_!O|b<;9pQ@JKjPd z^wQvm>q@Lx4Y1c~!`r4KZzrvDskk)wxLk7fAc?D>iK&DO_75m3UhGHMZANRz&i z7o)#TSrHj`D>Jd&Ps#V@7JD5!kB{4I1l|05)somew-1xlW*re;EfPV~Wh*X)VxIFV z5yV2=XhAKF`peZ`n2uYgu7f`MbWz9baDrIBZdZm3d3kBt)o_|eFnhKgy<2^(kG7fq zX=$TVd7$nLg`I7*P(6LKobVfUG>xuOuL+UX$87XOw}LKCoY8uuK&yV|q2R`^BEf^Y zUfoG9dk%ZQ4<8AnDUrVgIOx|q1l>RB>AnjwVzjHQl6Q-q+l1C6@FwB>C_^>v2nlH( z@l}etpO4PkuX+^m*V+X+6naA9gf5-OfA=rCpvQv|xh`C4zcgKtc%hnl-xO_kO&Qcr zm3tdA&yYej1052y(f3CsQK;FO-Pr^Lypu4mYylvj{>s&<>Qm)=k?g(2hHsL1BS#k? zr-=d*Qd$#tJFIMKx1Cj0huNf266-Xl^}DNd?mN|_NA9cTcT{rm@bKz)QPpL27RRxi zdFpyRjJjE)z*E%YbK*_7j+{lqboUXOSpgunA&R{RG`hosgYdAhYgieLEa>{GbfZ}m z)|B8a0!0Rsf+(NrEMTN(MgAkAhqUE}0X zswqvcJYBKf%ePzSTfK7$bV8Gk>^RB@l*nzIu-W=XXmrV*y0{eDF(n=ADIl-9 zQQQ5d{p1rK~r}x=wTgDTW zx^Gc>o+ZiiSHPwzv*Z%ADz+*Mbr-dD)@Mpr>DR~8Ze{#r9A(Bg+JCoNO$&s)@P zocoO71xTHpA$G|=rYVba)6#x~?JJN#5T=EQhf6DoR@<$Kf?gNGZ`u}G1L>J&$}LZ0 zg+>NC6w?L>wuI)OgLE14jxtBtM@MNArGn=_2aO&$GV`*Y4y=)y3VVOpUjs@5M%8bv zI8;DM^9@{7ELlxm-6gO)SE7b3jy-l+9Q{dHb;gV)!LtFL-iLvHAgo`AX0)!St;_qh z29hf80COd0ZNlh1Q-??+Vuz3Msd7eEcJ}Xt2=`ZI{*SrbK2ALvjRzhBrC_|2ww-+W z_@I$~&Yr9$RCvrOKKeLB@IhPlfNZ1=+ zh>ZBUJ>C$LsC^RZJ6&`7ZZ)&qD}aVj%l!G}F!|J1E0OV{7T5@jbv8Tvz?Gyn{v11> zE7B=!6}GeA8oy|X@9*`!V)M&9B&dIPniHElNC5^z@54Q3JI$Q&*R}^Tq$__y z(PzJestfeImeFgD=7CJp9w(1z+{~rz;@Y8bJby!Sc{_d(Y@;NH~aBD6mbL7YSLoANYiRH@J zA$&S7U(;=ZVD7ka-v1OcCSFAB?9A4^JFD6R(PCD|?NN(j`uD!o%WGqe7VmsYl7A(_ zkF#t9>n)}t_*VHZkfgh%xH;OVi9t~wIT0*Vf&m>VBB9w5yA5u1CDok!(_z6BQ@{9g z^Xaz};|E-2XE8JF7d41!ptG#+axRRv$Ge z^HG!`mCi}0+hNcsy@yV%^Yq?)%S{4`%eFY1%8CPkLTBntZFF^Y0~IS1_*?{zmxz=z zWioH7tRweY{8V04#0&g-Q0}%x8IqZP)ZWfR@#xXz?rM@3+BYOS3Q+_X;4$kH=B<^Y z(n>xm-&a%13kuWIN?t3doH~G`-HcZYr?GD0uMO5#sxWTP2;@k4lozLq_(AQ6hhI^dVU@AR7KXBk+&V z`tR(E%zLL7wxd|P&QJ|6s{Oo?4bIAL;wi!DgRwN5jQk?e{`zp@w>I({f4wUwFje=ag{mDY#HwBz99k<=2QZ8^A)uW zJUX=t@Wj(P*z!Qc&}#yLb84FSBio;m>b-79`n46-OYHKMu@wehMZERK&|m$!%|-0yjPV8u3h8UZa*4XBbx}G zD@dizdaZ6#!p~sH8cr2FRz^l8Rn>aL&JS)q_%QBY8)4@EHmifvDgZCuNr>tAJ*nqBnY3JK7>{sv#!M6 z{1TA2+jz1|+Z~14JBE|M%IAe=E*q!gy_ViC_7xV8J6ma<_Pcb(Y*NpNB3zEQrb80Q z2@syh^Iz-yKae5(8Eb?Ghb~Fy=g7#j`r`p*8(4{1|E_k-=DT&8z=rfg(k**h6P4le ziCC}Vh@tD3F4A434#Bv7!O<{T#zH9XjVrxwv}m?Zi1S#(xx(Y6$6=&NsoT`qX9_O! zlHMS4ZoCJ5Lfog%T!J9t;>+LXpY~dm!dfoy$o=m;w0iy^8^5dI(rLXUGEa@*acopf zOwJ(Z9eo#@vkgm|DsKI~fzBajdU^mRS|WUe4v&-(N5TIWNzkJYA`?lwpeY@d3z7b`p?Q%VVVTuEna=*^Vv zxDk8HT-C@U{Wx;_K{0MUqUf)ZwW)pq#EF@{g`hs5H6$JjeveDAVc9t>CumGzKbvGj zcFyYaFJHvfo^Bkr-YTk1>()mtgNwj*d~io*gkL3tn4`$~%$BzHtHb7+A`lopsvaV?U3-rGm&nPZ7wk7;#opSL(_=;$ycn zBUoX{egIpYl4wL*<3_qg5*wr4PWnX=&M%5+iH8QOHGQ9c#eUw|bUyd}7WNV09T*VZ z%;-_5TTi8z29}V=t#cxN2g;7V}dO<1700lBe#{2Q{@tsIP z)Pc4y7>QuL9ojVGXP%Fr5_zuq2o-@nd1JeFwV;=fJ&v;Uj4vN{EimbBOCs1~yzkkm zT`scv%_1NfK&zju-yqFXpuZp33Sz_d)$tSqn?ZqrX(IH8=h3^Ez}KwuzP#=%WP;zc zH;up7(+mNZLh36+3jq9TR3vK`xuS@+zP`SOhNRS6F|q3fpF={F^M}mGz#QRKw|J* zO-&8wx(L8CAS}Q|76jIPPrx3^=g8cOqw(agry@S1dNlA$YLN`9qN^ud8Q{$_tw$TF(v%uB?txxAO^&kSu z$_5S=(K0Go>`%A;SBGYjKuPn0<)9_He<8WT2UihY?~Q1Dm?=IQA8($9H&LRCX!ZGL^) zaZt7_sjI6iEG*2jsGjS|6YmrBFG_gdRX{;JZy3k#M{H~?NbiM^aRxX`TJozaZ(b!Z z-9MJGpreaa7(w3EI7EdtvnwWG6{L{T)H_tY$s1FF$>qLM_BAn)f{3WpaeV+JQz7oa z(_BuWW57)0Fztb(5&9PxAPb;Ypf;EX9Z#2c-}! zKCB%yStV*&zQ&E*Jo?hCiS;NJZ8N&hpFa_9?S+NC{U?}{0^@txAl2*1IDV;?qlMr(T0XKk2mpy5dd`eT z4XLT`2~{An=Grc0-HDDN-Oz%x2`k&3=hw;pT7Dgl%R@#>J@ zE&7um+B#LnAtGaSWAm+)<>Y!m!YME?kUVR)TmN2U&fvg6HWL_VpeM@YwOvdo8w>Ap z;sL-oBf*y2)S_XMiyS;l59ntcTZH2-#Sc&txj6yk-7~-G>m%JlFEPA%oJdZ|=lq3z z%%8$NyP_frrxXC^Ia>Li&Q6fsoy@N36qqWvB+d8)a-Bo#j@p&bjQ9d6Ul0NQ@Zkf9 z%PK)V=bA9vdV3Q1=w!Zq4GR;|wjM9ZaKnN?fSYLbl5E}0eJsS|fUbT<_=Y)(Eh#)Q z(&>0uolUbOeZOO+C_6jb>?+`e|mn?N?-vx=wq=_#V z=hb20nz~ihs<_p4x-xS3NS2aQ@aO!x;Vq25huJrfRS1kLgdYK`2F7;de};pO#~U`9 znEO;DzXS#v*X?3;RU=O(fj*azlmyJP9rF1aDBrWSrcR*{R+u~&?3{)sgF@@w?U#Q& zPgmj$rFIqtB{4rpqBa;oGavhIP&s9fTRYWfxilaY*PW@7%X@Orn-(|~F00qD+J;B` z_H?*yuK8QBGH_75dwO*-+g$i4r(Ql=V-oz=5bP=lF4kS^iXZi?uwyZmk#Pjbwo<0` zFgKTx(O*e5#_eA2SLFo>>;w-TVFLq2aq$~hO$v-HEncCeYZ$iYKV0~d=(*GHdbQI1 zN&j4hgTQnW@AK=iJgfP+xAE|naeO15*b&LPaTlm<%Aq|kmp#1ygv|X)N*y{nI@nOU zeyoD-K^YmwV5o$==x9HBmaOZlae62|vU^L!II(2n_E9Z~ub*tV# z4f*OD>!N1-&KW_k@BWkX|M$$moJeT9(Sr|DZci{*GAykszx}S-OTJ50`@>*xjAhta z+BmPk&tBXrUcswG&BhR8PCyJba95~y!Yma&LH(IpYr~XtL@jp9l#@_0ZRs^kP1mn^ zY>iy_!Gi~ns9)wdx;q5cl1PdeDTRt>acNF#SL0LN8lEPu)~^j!_2dULUiruLYZIPvsVK&E&j# zKEI*o6=rNIcT0QI9=EhYWh7R!g{sFL=R#S?I5FD-HFW)TKW18z{ZBj&&6sYdq3_M3 zKk;ibEskUnjcz>(x@};cbE(o&QlXu`-w2ZL2(hw8vCo6({zx?yCbZ?dkNS0IN()Md zMoHI|GFgReffwCn$GB4EzjKAAJc;~i57#DSZi>-|)1`}>Ge$77_dPc z7}%ROOm3HSD{&yrybw`um>y9M4Td)p&dd(2t(-*MBxhzW+l_p>T3@?9Jb5*JuA>ui zx29D8Kc+nN!~nc(T>!zeY8^R(_2ahIR>jBPoZjJKe{X$fUf}2dbyR|=)_IqZ#IoL9 zZtzXSosjz3iUlDNv{`M&_;eI9b>U|4U1DoyrOw5hnV%u-LCrbyI3~2cVW1=j;s`O5ae^fHf^{@5V2;4xOgTBnt>|s=n+K)Mw&`K>FRx` zTou+*`9*;u_S=>^(zK`Db0_J$tONh9nb_Q(-i!W+WHYMTjWf!RL$PF{NIq%~X=_Rr zm3;{1UP7KX(o*T8pf)yG;6Dr81errTP{7DR;*ooAWX6m=HwsMfJ8eJ`{}Uq%0*HKt zk$G(YjgdjOaZmd$Y+#nPL97p5<9 zlqYzlH!gCGIjsHuJoV?_)pw^@UP&q`+m(!r3D7#dF(bfR_9rG*O_9ox!V>SHCJ2*d(~CVjEdL2h?Hsb28u`Cr&9%2< zS~N769^NCP)YZ~ny7WYdOT3}~l3O43>9$nb$FT2u_9+{VPJXYmcP7%Jb;9%)Yg|R1 ze8yGPC?C%Vl7BmHQ9-F!J6#UP?xkCpHPopu9}c`D!xa@FSZ{V}6Qq7|=Hfv_8-9pv z+I=nfpMzb0lJNJo0vHQ)YN=*s=a!Y}uoD#4Pj64u}*7WH5_TuT&r@jM< zEBvpYxPwuVt9&(pjFnY+GxZ)xuk79@(1E0qQqD{I-pD7RcMF z-e=gz7BW^cXAQXZ&%~6>F)EXla`-Fx|1hHG%Nby5 z2Ds;2{F;?e-NQ%#J3(A=^#vv^VC*{AWMZCg{``ue|JFHN%Fq^BZBeRK;2a)XE7=Qu zp4s}iDTT(N)Krqx z?0)z%I4i;T=#6{^-c~0M%$coYuQ3H|R5u0}5UX;={_dmy+!u+#mlW5wGLxmC3tO?p zH#86W=oIv6PkrAFnIE|sXWIHtwn=i{P7oEc7Zqni zI8rS=~e3fzw}8INS-BOd!D@NYZtZr^?$*A2hizoj~D zQ?m~2*@%P$0gIt*Fm3kbq^}VUcgH8^DpNeqD=Jzg0k^zu<7N3lm?87aC>{wx`Em-K z<-4~pZ^~QWj(+4Y=D0O=JH6gLLmrznXDAmZEv2N8>pi0BwjXthg9=g~zBSQvSD&Uh@G_5YUL#4mp#?jVh&yWnzv*LVOqapZ;eQPFMaIcG38}j|gh=$l+)}oX} zoaC87kMt+&%v55JfHi$XSCNY^w$d%)%_|#SgVwU|jf(^s0w|!?%Sq&3kwYXaS6SOC zki+^|9Or3LpBiS<2t$HVxwvoNG?bLym2zIL$b(toW$=$I`e$d+HgLow7ytkh2@;!W zsi{>|bNl=IQ{JYPlTd`^igZ1yi2M)?Gk-ma4-LIXPA=Vk0tO4|9Wr&?2hybg58!uP zQ-DA^RMmCM?H1cWGF@H>IrR4V|Do)y!>Zc1_HRTG5fwpcFc6ULMnVLXu0@y9AuS*c z5=tu4EhF4u)N_mbkQWl&Zl7bSx zncRa3Bv?!r zynLh5E}GHVpq^==nAnNY|qiQVYJ$~5$X zh)Z%0A5IM_GuMD`Q}b<3`m{8TW=>T6Cwc~kphA6fa#B($;n=b(?4~*ug~bvYO(#dC z&JXiva8fEhJy=a9!{$&#lN&F=KTeoUmZ4l;VCuVk! z?+YSH`Y|N7Nv|8lJNF`aS}=pO_@3)M>Rg}i6`4cpNdJb7m%aMbV{@TU`!K@y z&aN8o=`07#J=&$>xpTklVAyzI%il4xG%VGXz2J^?_ zPYz+Mk=Chw4S3ilCqX!GO4nJ&HP`Pjj1%?t@5^Xv*qRzFG?bb!z%}=h7JuKTAg-38 zpwPViB||ynenjHQ{04*wm2@>#RK)3QWo2c}%;>0F!1-LvlzcxOkqOeufd7!LE0apR zVDZ!FY%m6-f07Yj*y(OYwxytt`QPSy(c&j@K1xvU2J+Q5`8RC`b8C?qwlhTbh3RM>PfuEt0G!LqjU6wC5&=x|}I$C0$)Cg?J9-28^GUhZH_mR=#6%n5}qS zTd|=I1G%VpvBWtx?c3FXToT2C!;eR#NoO<9Ff$BZF!JMPZ&O8XC4@aB9FR7rW6HI> zdoS^xvZ^`7SEwJ$(+7>Sx;{_5mzSa#H+a@~S4DOE+YgdaF4fhe56QgjHBQrdWJAfi zcC1x}`^u~<2RGN#tdE*cXc&H+)7!&|ZF)5<R=zO%=7=@)DkbE)W$-;Wdg z+}1_{G8?4Kek|l=YeR34`=!#KSD4dAmb=g!6*gfMPmhwcU)A&e73VK<6>s^OymRYj_wZh(?H(f{r#$11~p&lBTHjhzXn5texc(Q znPt1ddgH8}rpxpXhPgCaH$yu+Nh?g^Z-DVXmRis!bNp)P+j9ra3d z^oudMPI3cUwO38%(^jI?uIPp2mVo5l@{fweQM1;E&$aGa9Fs(~J75i+Zuh3~d6*CV zyes)qhK6VaIWodAv?+l5^D*6z-7n@i4tgP*OI*V&X2n#6$%*@s#w+yv`MFOg&42k{ zDO4;fFnDj?eEYMcJSXML7U;veg@%$pA`vdK4f)B8)gpWHXSkw9J7LvDRHcF!l52hy36Ft?Rt_T4*F4oHBH?Eh-+AVw8J%)q~2mw?YyWkWR{KEQIMh~~vp@^&(+%YwLebYHyU(ENW7 zSCBK$Zakt-Z)xT;=|?U+#l*y1-r#iEGHv&OkZJozTYY^>Co-x`GN6(ac4wxb%iPEt z)O>b+|Iya>0yP!G(}hV_v1Hr(i5iyf;^MP$1N68i%1;R2S1u^;;(W2l6idT#!_kdD z(I>}58^QhW9sp;MaL!r@Y%8dON<>{Baa9Sg1O!4IE90&>Bkp(ze#;AmEO6Nk=b_?L zD%n@>W0q6&1!)2yVxAV^HA*199q^yHHuTO4M*4ax8k!NoVR-VO1Vmi2+Qev`@te5W z?n?LmsV5^)bNHQ0Us?PG+(PRv+Smx}?N!KSmfFAN#B+Ns4QVdmnM3CE5jAE*L*qUD zE%f-9Z}Yt$QrFas3b#*ia7q7*xP+GA89@j@m7y59WdSS`Cg*_a92!e4yoY;-xako2B7#qn@po%We2ZQgfP zyx$vRymp-eG<&T(X1Oj-t{i<`afDz8*1y0PC~$+-?IuVzE42B9n(mDibKfXy*8j<> zQkEya&k;lZksgxaJaH}6;7%q;orac0VmT^(bq8MIV5?Z|IR3Y->8s4524DW93T`<{i+ z2m50c>bmn^#$Ml7%Q0FhSH(s1f)SaccHC!&~MIPb5|!T1BN&>8r%8>_oGXhbiO``gbuP#^cmJ(_TF)Th+laY^rOIE2k4 zqCqlDl|?=^lNULJTcd@}ml~Y}gdMAjr2GDsh5QBh(|85)KnYt!Bs(Sjsa*$Yh(rb= zuFE(Vw?Uw{4zoa=oPdBjx}$=Nni_GAdAnMr5v)Uf>yYSc6mixIN_rrwfhcP!iZgvF<27aFw~h7E>`GK6?Hi0BRc7yFe`Csv=_Xz4r&yP&G0n-bYVEm1h~ z=3W1yi|c@nS<}z9@vHbvXSSo>-)V+WSmFkdEI*U%GG#<1DFv(2VHxbk{9+}B5PTi{Uu_UeW zYpc|?H993$bg!Xxnfm+~n>~er|82ZX&!@ z**lp|PFW}F4q+XOVhjXbN%@VdsPDRWGlSDhOCbYs(M<%79R-Ce_O;teJxq#cY7L(l zulhG2DtI^w6q=qChgO)EQWo^8T9h(bZVwb2>I-CZxAbK|GIBE%5W=LnCdwbC*z@QZRhOW<_AN2=OUeg zxXvyM_P=uY+8)pU&B0+oV*$)7%jsrDN3x=^)Q$eY*(YgAGc||gdhopp>`znRFF^~ z^}j?Gvm~Ja?6Zu_%t`=ekgcIwVfW>NRsd<7y8mn@+G3@n3+P{l=>55K=Q5Ft%gf6U z@-ENK4RvOrs*m%G~x*HUVIx z$;WZhadB-!PJQ!xTO)*NgHn+Kv#2-rHMA-A=WC8h|3F9u`rM2SFKOQN^*}LQtv2Nh z1h`#3YHwxb)xP6jKRG^hS{Z@Ya6IRGQtN1Dozf@68&DA0SxnpQ!>{;|>#>wqEQ40s zQzr=UtfI=MM=(H#drMqge9NXgfiL11%AaUyrwl=YSUSJj-$anvR8n97$wrAM^Wkoq z?rXvixB)+)&_A$%{seZbzXBmAOErtmJ#ktTo8BlV;$oh5MZfzt3)9h$8>gn#k*Zm# z#)wZaE!{F3hU$xpm`%TFNYAs2ix_g^4hujxG2>%q4wb4cZft3u0G}wB8yiuSjtQLm zZ~uDH^W(u`9VrduopReB{+B66%B=Ok7+teH2w;~L_yK;z`T6;cyYGU5?&4d_%+*Ss zk492n3l~4Z17>F5?jS8KZFU@~rYq?>QEq#i$qD9@9=db=)AQh$=yd%v*qIN8sgZ{b z_T|f~U@b}jwpaO&P#6+*#q%gf9Rlg+^UMao4*E$Ux?4872H*F(pi4Q=NBuS4Xz?II z+aJl07XeFHvvwQD@rPrZ{rokN-wfK`4CLV8>R5&H%`2$1zM8fzCUq{NA|yEY2+#l- zG|N_wKo;Yf2&Auv&iJ-O@LP<%%&c7epyshXlXt3Fu@(vY@TteL;IaR@UD4*rQP2TY z|3*WT=KPQfpKSvxUsM z`t;-woZ+tXy|>I!rY!_Lu=1jviKyJPlnd7I%^^zrdQQ7!%=RtbHx;u_*OCJ;B5w9JB8cWU1N0 zx0f|3vHA8XCME{@xll45x%YiG*sLkjjqejsw5p5jtU1JXUlwmI~WL~VM;1MJius18lx|B@j>3K@nxD{)` zH0=YeM+Xix9b&RHS0N)E^mp9CZ)@mg{UcTzY#R{~G#(T7XFM5*cBc95b3IIKIDZDl zPK4L+@EYo|09s*>bM8LboWLJ90*bRRCaRzSR(wovwRdGP6Q;9q!ZH~MXRBbz{9m_h zeO64@?7MgG;1iwAywpCk@vFQWnx!7JAwfY*tD`6M0>nP$fRSj%^*0jHYlxO5@6WUs z4t}ZG}PXD&-2%*|Ogiye0Q&@{4W^FB~IvT-SKZFV8)G zJLFoeoE+&60&)L^f(A|;#vT>~uBeZ1lS%cnB?13XB;S4)9I;O*O+C7Oxx@rQj6Zm6iKRgr<wNC7{V*2(`U1 zU;+*=c#Z9iPM)Z$sXe#^CYr-RE$cqXaPV)zdr_GbCM@cj`}JpWZJaK?+uCa;(#y`v zI|a2bLTUzhHt97i32J{{JT}8u0>n1wdUiKAU8lnyl)qU6u{A>};{=MNNpOYfc^-4+ zNXp6zIxK#{6+RLfW+_7gA;%Ngn~<+Rfq(n>!fDdo3G&@VJwmQq^NKFzVDIrf*-Vy{ zlar#k-gU{$;kS;&2Ahh z?6S#1g52EPyu9i+O&`jqTfvuny6_!Pki4EW0CecYx_L(E6rEbehs^41J*J2r3w*7q zAG9f{$z!S2Aq(3FU{SMjhD!`}?-bzBqFD5xdo<@Hy?XWPTz6uJ_>3LjF>VMt!|e0M5*tz-br0UEGq`Gyz2jf)aHHYgPAM8vhC~tp#!u`V6mvh4BaO2UMKgQk>&J~>R_ko47Pe8PIe!X=bAAT0S z=;-JNZ7YygBpZ4H^9aT(=fQ&B)jh@@*Z;^VA}X(9mUM7ls2?a&L4kpbqh&0+uLmcc z=Mp=;p5{Z_{#Ql-i}RxQ>_NIXijX`*NB>nf=PGd*Zyg%i+zZ6=%coJEqtPf2l1W5L z-m?cJ2Z2ui{+E42IPdtFc6%rFI;+P&NQMLT>Z{>QAOQp1jR12lf7I~Y4~M9~adC0+ z%-M4?@!TPUr@#~Zl9rpx3^Y_Ou1LEPu#8GYLWD9CMYQ%K(k=fU$dD$NSP8vKB!gQ2 z0TF;$;pu0O4UPi$<(7-!rX%1;72EdaTeE%`yNUym7qN6pA+B zIKfy#N?V(JrXB_s2S6AfzjF-;z7_kMbMTQRW;VgCXANBm%#)!!kse;FcHTtQSYX?9 znsA9Ta@ozeF+6xS97fVqO!7?T1?poec47k$LU3)#4OUWe zoDdcm5;!V8v6prw(9tF!F^yPeJo0a&*znqMcLi5i=@Z>X(0N$ek8`|gzhC_a8pv$J zOT5MkOnP7T^-GAKvxG1Nn@b@v_O8vJ?@@I|6X3W*XqvDYsw259jY$$o#KA029 zQPIx#jK}F)+=NRHlWiD1++}EJ&j@@P>X|SwFj&{mtZMNupbCSq-(+(&Ta$ZW#=Pi; z=Jc4wKIzcZ;5zhIzy8{kN`w@3*%g3*Qc!f&XZ2~xSaaITUi*m1yvx(VRgXq7o$yVD zfi;e;kwp8-rSM1lAf>G&p$wPxt+D@5E|?Uk6F@;v>bZ%pEOW^(?l zcUdNtF5Xg0)t8jqh_6olfVV}x7IZ+s1XLsbfB}f!P;a#X^AeEYEx8-7n8Fo^QFjcu zGR&ea)?LKZDur?GD(WOU`AcMUpQ~*U3Yz%d-(Q%J@WYLiXADc7R*Yt>l+EB{@vcz) zlzU)S48tL2`PX+{bWQsL7r7|2!gQ$6 zjS_FOy+O5FBCYW9HO2BF8P40aVfEIyZW7gcp5I34K2?DfwG8Q^0&i0#yRDAd3*&VB zcFG^my9iQC+)O@j>Mw$&+{+R0bJh-W(6xEJa`|v$;?pdV`i+ssZ+B*r%Sb^1qAkK) z&c;)VxU2R2`;+gFBz0;(_jfDhd)lm}G``_HR9mCXohuWs*}QhqcmsZzDOjM;)Y{tG zB!*+dfN4Fw_D+G8^7ieH_I7CJ_Jf04-Ofhigw;_pKcqLdk^JUSH__1GyZu;@?r^3q zK<8#ZRjA@_{DSF%#Q<{@^2N@gjXwSN@%}*hoA9-*|EY4iux=!peqKJ2ROQgs*pWI@ zxb}Vm@6P~CT%93dRsBq%f~6`oy~BM|E+2anr6vKfGbI0Y zHecg8-%`ZQ{KU7!hP%g0&WoM0;_geWK~qlP3O(Vr=P>hex^lr!zkrvXUWz$-;J!;0 zAUM-6FFT`j&O{Z3#cE7>dE>04*ll}nx6a!**Iib^HmdZ-RV|Hen6pprMZHZYl*b%; z@idR**^7EjmYjCQgpr%Y{8%((jjk3hGWnRk>_htoT3({jyb>NR(wkjf8z9%^B#XDA zF6x^%ZHA~3cVWMu_fX0J2_TT5cm9O}?v2~q<1Nv&WF@})#1CWd`IU!P--RnZC%BLz zt^?jM)eOf-%jW*{i1e>k>;XviFcnRNp*inaZch7 zSF_ZPHal`EA{3Yo-G0Wfti{G%FLgEIW1q7B-tM7w{Q|+;?pNanh4-ljsX}u|pE^x@ z_jCpBjR^7hCaB-a;J4bveRm;0xt2ZskycQ=Kps|<_yLj8vSs!KV z>#V%8=5(2T0iuU8FE5+*j0=C;Ac~41&g~M^Y)P$}EgT!8m(;go%snftW~qC?kRMCn zyhPwkMj?~F%AsTHV&O&qf)7K*XLW1n+KcO!kB{u%C;phEgL5bKP9(SX(g&ps;yo{D zd#t?KANMek(bp47XN8ZtfD{x#bb2MW2@zRxfS@Lrv`3`$q1OaRRyO}O1|=W?OY+AW zG$>J4e)1vLRXbb8^~iG=Gj}^P3;;Xt&X1XahrW3-dF|PSgJ2}mY~%?Ib~uN!_u!bq z8ka>@i3~aO19Z3C<#(lr3RBtV=FG0PURa5$@2|;q2z~oq(0k?u#`QaoOUvSPaE!tN z1b9xx}YzJiV8(bGMT(^uG#MNJDeI)s%=1{!jC!=qHDjSzD-&5lTKA!W=P-IkRb_Tal_)k_=33YlD!f=xEE-Jv5OhCA1yaV{ zqOxjT!&gzP4i!?3$M$7r8%x1H&qh+~ibzc2wf#Qd_uevz|EHB| zR-~3GM|>k!J&~7=PSVeCA#N`ITYMQy3Mo17s0`IiB*tE#-Sv0H`PY<0H^ob5yfP)_qV1#(CM1 zH{)?{#wj&+bA9fJ(NNLKtHv_kDiI%*w&-a$zzmEU3VMD?Rk2)#UX?@#`<3TQ8G8Jr z(|ebCA(3?r(Kg`U5;!DaQiI=0^U>b|r&}BUBE=m}W%Ok;UOyeGzE<3i$$+WK4peto z%xM^wKAS1;QhVu*>m17WTz|XWqYid*v{p$ry@Tw=5(z?L;ae4IZx?$Pm1I2_ zmWt@P=yVQ0APtuX)u&Tx{IRh1G)VTYjQ1h6aA?N2J}2npooHX-{@FJipi))aS%0l} zuCwPYJC-;O2Gd0`>+(x)#%J}^$fGJA&gTa#1^T?o>)nbGGqZ^=yJyELu#$j!^A?A9 z86QGnnFk!vBtchhU18(S7)T(&rUBTT1GO`dmEAxh{PGMoJVB|+J!Fi`RN1nJg+q|B znS2mJ>d<(J=kCr|0}v1Q)*Epl4pgu0_x-_j=MOMY0N)3KA?*OwaA~WlwOX#Ot$A*C z@eKHbG_tk6wJ=bO1a>v4@TDxI)FCQHV|oYbA^@OT^n*qX7tP+(E>OC1cfqOSrAPOR zoyx{m`D??=GO;BpQQQ@4Oq;_Mv7(eoP=4-f z*?ggp-g@N`^5f*O8KFViz|w^4Y@;CZVt3?cWBjFdrj7F1TdUj;WmTnATIYo|^8;p* ztbM357zl=KVo`d>)7RrxyB3@|oh3uMhp#-3eA=6#d3A7iKZeH%AQ{~4#?adCS65e? zB)dC;RJrwYysM* zJF;;Rad9q_?z^@ezKS!k_-lYlVbUyqskF4U^|U=1pyz;Y=h)>)`2k24PFSW?ULLa} za*6hm5HQuNF5Ws*d*x!u@abqg5wjWwdyuML*6cYRf&byN_`*6{vAumq-crC>laxA= zIJiWUtmDy?K_@1eZeqRQG)=SvSe_N>1@5`_zLYq&$J`kcDy;NeocRz(BK z-sW`&F_p+;ech<8qM~AqG*-qDq}H{O5(}8|jFHlJq5$0xiAp1n9E8UF0@2)O~$++(=SB;xJW zh;CD)NFee%7bzQ_T~*W|^Gm2M4wr>4DkUc-%FZv;NGlZdg(8|SdF zaEV!Of}9P5L20Qr@PN(O?ME@0=s1Ww=ty~CT_P33wy_YHtadIEI7HGLTJP zHiwiHXcw%4SgW^;#3Lp)=o&#NeRoug^ul{1$g&y9UHkt?$rpPzGJmW_jXi!DwN z5lh;WBNQ1~Y6BFK^xP$n%T}^9X=zXSA&94w1R`qj{kLCJ*xsQpQ_~tnno1pCH-V5lWdr|}~aXq=y=>79*>_JdezpY05rfEV*8tTXDb zsVyCJ#`*%G9MHLnLcg!#%8buD--*{gIzEQI0~~N9!c{y0fgnb}DcALD5s%s4SZ|gk zn@l276Q!7+(I+Homog`=ZzckX#B^>K+Wmd8ilUMK(kba0z!3+q>l>V=uqWs0SgK~K zlBDqA_EMS0v5S**211I!V3#6zq)BIR)Uce({?a>U78dKmH~dHG(vKcZH3eK<=!Gpk z`nnH3qrDY;=R-m4e}O0&BohEH5uxrDA{am6{htG~^Tck>CN&T&h&NOu{}5n+NKCgbJ8C!%l+YMvL5vw4bVD8H6Wh zJ2RL=aL2q7sXu5M?l8w7a6tDj=(S-(c}n!}Q=p#_vW9OxkpcNLa6!REgY^$sph8e+ zzE{eCGpq;#aq|#z)h#lnJ4CcdB930`NNpvM1Gm&a2ZG$1VTpxA>0rwO{ z8EYUA!L3Uh7a5s~G{51#rI;x^VC5(J`1Ir$b$r0mww56@*Q?ONtkB?JsPr$Iy6IXX z@u>KGu(5GtP1uy%Rj|qw6s?odIDI~AQ;HJ7I^5xX_M;^v{;u-|oLzLMhPmpCR0G@tKSI1BuQm zFM12i#dAVlRr%3;J?`^@WldD-XcQmV_%lnMyU0ApB$8;PQa=e*sJMTt84F69w-gal zMi3Kc!ob9YIzSD9fTb;4gac%RnpbPBPDGoI7fFcFeu1i3R$ell&mByS9+%Stox9v z1?FduZ{IoMFp>QCM(bAK1u+%8yqr*2Xm_-;<&rx}6g@LdJ~u#&dH{TKlT^%KAAd?! z)VOmV$L=$0EH&Ks!VyFS|Mq;bejSKc|7H1dt4f+vh0kK|-C8gGrQAb5>4$H#uTn{o z!}H<`f6wigXoCO9%aQfb1V;IX;5`g<_~V4Ls9V}A%kx{mojbbiEijab2z>r)tOFw` zo5zYH-iPor7?t3V6Z_%9ZT(8*=F3;FUIhfSAn)t8O^T-|z^X3L_M@YsHe%N=7Kxxl zB{VN0DM`tIkdS*jOWX5IU~EV&i=#vB~y(EqX#98!^(QX}$Jk(@{7bW~t?D zD>j;0)Omd0D(+AU-*xI|VD}&=Z6I(q*vnoBOtoK{d z_%Fbd@s1`u09Lq)|7|}W3bMb6@zu}y%6~YPl;|VRVe;XeKo|fM)9*T|!TBw}Z$$Xy z$)qF{OayVo)FjQ+sf0tOINqGM`01$CQ?6)!DWN7YiZp+rhZw8pRFq5;;^kr&(;t{- zz_GX3UM);kCym4>7?q_dAY~|&3JR3j;aIx;=Kc4ojw6|a_VD(0Q6DBM<0;?VTlm7w zz9)hG-#eL*T@M)TTj>SNf*xY;s1cZ~4(1#8C=*XS6;4|(_r5JAP8NjlFAB}#&tPoh zQ73tJ(*(0lXmg&Lo;B^UB2ZhNKPD5oUX*4V+^_RlqzjL6Z(Hzqx|} z%ym{qom-qF7FofB#ypvvNCH9&X|6|e1ujiHb^P?7&HGg}e3=C0U5k!;RRe8e#lCEn zONL_wS4w#+(_SZ7)~ylBYB^@5wS8!@&K1yfrY^2y1Twu2(+TME69{z=S^J}L z>NAy+)YaZId?BX8=^6_9bm%XRb)F&QW(Q3;R+V5WVzo_A=KYC_oYkBy7sD~D@z(%g?fWZu= z{xnR40AfOo&(%3^FUqlx)Hv7FhJkf-$ErKNk=0gj(~6%o59f^*g4#M|`Tm6ZhD?qC3W+ z+6e`fV_dW2+O;byCe5!-Hh(6owV2{KS`WJ*$PpobSs0iFB3gx@!-nDnhS|WahUH_# zNC)tZfc-gSSqDXC)!lEx}DXA=CS zvgb$d9LVU?*>rQ2Xek$JQ7uh4towfU^=)V5xGF_;!SAK5GLJO+H9O`x5^+32 zDJa^y62ZjxhVzs%+zu8#lD#rXL#=5RqNO#h_c{Zp4bvpFI#`EO{B3!-NQGX-&Ta$5 zkm@JHh0trj=d}&9y3})Ek%O+c)K%9)6L?=dFazY^_dar|vsR!&|TprypRDeFzMn)$1Ar(C>EdUi7Va3W=ADkEe)?v&`_yq*w zFKdDfgNk>|C65~x28w>b#~a`{otmCcR}hvKvZu*4%TW6;Z0{+ot6)|pfWdhQ-iX(8UL57`V>E51e9`HGMlQ}|~l~uUdJAEzs>Ds_r6kcw;-RRQg8^Vf)2IH|h zdTJUe#BO>#b5B-iRu)S3XL29oJC?9pWHDOWP1-KxQv8)|qPxwmc72$ZjGN2hxrMvC zq{eKezDeX)h4^SQQX#gLI6Q(X&-Oevr)6jE@mD9E=Nz{+T8+5ceHiFDKYNa<)}CaT zndEMyckg+uW?wpXZH>85Xcw>hEvrLkdqZ$(QdZ{T0O7Uo8+vfDy*dr9Q*K`jUe5m6yx5Ee5Z+yIff-urBZ99-be z$OfgpXP_Oe#;v@#q5N<-@Q)VY@o;7dmYG9t$>kYHOv;z#u`R(CAsEpygVH}>NumTZ zit}^Xs1A6qGyOUvr{JkTEk1+>5(TI?N>l;W;Bh8fPtj{wLrheq=`fEat6Th~$65N; zfSx$wzU9v8&a7Vtfp_OS%%VgGaWmv#hgoYX`a7c+5Y`Vz~&;4a7bfK!`0d zJiqU&TB2)UqbK|%tBbc%sIh`-Wx%?j{RWNDgTH^QpnDah~z5j)8!xj zLEmFTTt3@dYRpF5!)+K?isPz$6oahVq-XR}^DMALHk!LId8T zgsDy$1}-|~HYf02hXmDtt-xjP+l#~9wI2S0|J)a6i5oAeY;I0B#j0Y4V9Hfn(j2R| zVjUzT(bBX|XUiWXmY=oC+7htvpwB{naA2+NDN^bFK}bT3rhV@Bptueb5)AMDwpi(p zd6%ClWxcu!Uki2(@7;3RXHI>)6~0&lrqUJgezJoL0yug~q;6nuK8fcTG6~@RD8+8H zj2L&|`B7N|s`6G5pdME5E4auA=h>UtDU6UUHL+qGC>1Si$IRD8VjFbj2f5Fyws?m-ktD)oC2gP&;MQOaSh6zqJ4!{>)1teC7HMVI60(zHizCZ~9CTgB5w97I@|a!sECl7C2S( zPq*_t!Hq9fz5isQ$V7g&9ZAMBrE1sSk!U{%Q7LXK8~EP9`#J_0W{jYFY&?=QC?Mc* zA{jv4YSTB!=3k+{?E!{9s#z7egIdlGZ+7r0qxQ#<(JylYFce@7UlDaVDwXqLQ`&UZ4BO@cQ-5Wsriq8d&JBfF%`(OOES#8p`l_L8p%1z;TUYR$7 z^o7qYEN^KMS{wK|G$028H{cqQs;LW7a4%1p5+<`{q1A^#DMc!>DDMB6aMWe$Y^o!}F>*u^6bbaZr}%O$yONRHeReB3??{&!U=FZk8@ zO}Z0cY-9m-4y-7OsASPB{#A`>6OPu6K~s;@V3DF9tKJLgW{0=Qy4Fo^mNQ8xiRs{NbH#_&J~sr0Fe_#BRc@|}m=8QmsEXToziGfk< zct>lUMkymgt9R)VP`BKyKv~whIAD@n@)}p-3^C7@k#FPyndcvEpgjn;HuTyI60$-c zRM=e+*(XBj1Y?{r|DYDap3dU!JH$r!;34gF@X@BKuf2KqZh{so@yN3(*zPV;mDqNl zJa-J^cFH$V+qo*@eYnWI%u=cBkWC|e{`@&?B4MDX|2jh>EL`_uZpqhiaP82Z{>OqkyNc>xf?WyUCvxW7CnqNnyZwg@u#y1MXQ^&^ zzg^Jlq%$)FsQp!sU*mrO3*)DOBbn*&EUFV^rdA2>(Y*!s$2K3DOPhyEgADhY+4d|(M!#td0(54pC_ zgxZ(akXu@mvPmUv8)H*9>Yy*)M-S0=lLy`F>G>IPuyMoMJ`}=}sMBdl_P6ONaSdUz z*LVSKO51GdxP$9n=%$N_!-$rp`y(B9kz&!T^ZBUY!~B&RoU=B3$)34q(Dq3AOS1bV zrI)5daW);Ks+h8r5ew)xjZE<0dD*|XzzS|ABndT_e|-xPp}3eBICKSg%cX5>&I@Me zs0981t0ftp49 zOyFRNmYEq4oQ5VQWy8ea+Ct<1q#sy;K=X1&bZA|WA>ns#}r=oZ&| zO}3>g{0W28uZB_4fDx+jHjof1jHKLA7S*Mtuwxezm-`ErOpJ_Ady4UI+#n(*o=4fE zh`jU=+9M^{Y&GA{$*e_lE8SCZtb0Axl=UXB-1*VL)+)B`Nw+SMq<%}<#p}dP$SG>< zfJQ4hx${oPTug78nJD)F zoAqp-s)mN7HD?()3CXt#HvB0Z5vp*^-Ipt#4v5#t4_Srhf8ghp=g7aZv1slKG!K6V zXr`KX7@fvkaZPx1DfcKxJ_+;k-DT(J6k@L5_s5{u$2S!9!R9%^m~WCPt?O2V5ZTX( zP=^KlPX5e^z^ia$p;^LmnsUF(lYVEIS^jO7_mtMT`4{m=+OpfIV56y$R41k7;j4}9 zck8u}`_6oldY}8yLMjZ40i(plOuf9MvX?Rd=Zzuh3f`@IGOmT6KB2u0x8r?q@05!~ zrOIxES*J2T^qo(C3R@V+c{`I{MOYuf zYbz$j%5b;BzC=o%FGszvOnxi2uv$DkkLWV)E8H!f8H-@etW2rbUl^2V*&-tbf8=R< z$;pVE#)uELVB5I4sU?jjNuw{b6h1ye`D~qj{9AlM+A(D0^8w@))?wJ69PI;u_Nm^+ zg%uiO9Z99%bcNFpJIwf)RBKo!8?iD3wR6z$rIuvdGAYm zscQHUADDAh3}SAJ+_|&OL&kW?o;{g2Y&1{LbJvsscb<%fhbP(r@wTo)XXWR3H^)CL z)^;n*iyK3K4bc^66Kd7NP_c zxLlB3B@IbSPoLlH5$@^eu;-bFb$<}~l!=@M+dkwZ5)+Rhq)_g}1#6ICiN$)XNfHT6 zTw#2=yEb_WkuZ+D0n|R&bWVrj7m8nM30H`N%=HS)UGl;<6PzfsSTZtm3Qimzm)`rR zRP<6Lr#*6>{|@56UWbkS+}~pS@|q%ah9|olcIWqntoGK>cd9i|JeS%1sPD( zetOcamC;?;YWPlG(b$-Vx-8-xaBibih1ToOjtTm98qYcJz={$@eAF&@DD&8?eQ)&= zd7*$ECwjOm=E#&AoX&kp!r=v_?N0~48pjuy?kByg(~Mf%FHV3bM})Fa`dGGwLwxG} zgI844)X?s@e*FNJGJ!+lrF0R`@VfJA58&8%Rs@)fgJJLKO-PA=Ey5N0$ci^>U_T$q z(~~Eda^9TnlhO@{9o37%<_Bw4CCymr(1;}f4q%ru>+AI@f~ z)H&_BaZ%8+Ka|FDxQ-f@RwEFIYbyHS$50ngT!3}*&#AHkA_A;^|R8|q|LQtM~K&6HC zg9jYV?o#7DYuOR`A3pdxb3uKDM)B>Srda=xpXH$;AjXt#v zcEums=^h=P44GsDJ>VJe+@Fc=dJitCPlUXmVy;x(4n4*bdFCp zSA#X^T=z78;C0KQ*0xHeLb@cmIAN`7LR;4c(s3fKic0j?&R;t-nA@-@;(1jd&-6vH zmbjPrOB5x&p6AI(aexQFe?!<~vz@nqaz#en0*$?8_%@z2A-(P4v-th%#8p38d)s zT{bKGRmn~XK(fGf`ZHdI_6bCwxZ8|@m&9A< zH@u(g)vEuwb$r>>)C4LO6w)XTU}a_HF9F^GHe!90jhA48DAIihMEj>I0byF24usce zNLs=3Fqi1mF9-WQ+>k12kP~%fsb2pC%hlN+3I#$L>m=mL>_1{?PQxh-@kzo&No9)M zFUXQ6e$n1fLIRinJ3OUL7Ng?D$%+1KDuNz)w7+T68Dk6XJV@ccsW5J#r=x>@unhw2 z*{T*nT8b@)pjD!>Sm4}y28i^E;OO?c{r!DyAJpb`M*+BHr>3T$^(&k7h^KD@-6eI| zX`KYg4?UacO>ud^80TNX7qq7$(h5A=Y8PmTT zG?HgrE#Ge#rQ6HmM;6G{$8 zm{;^~@(t@lY$eDYoy`OE4YY_OPyE>u&{p1ZO0jK_FjIIJhQcq0CJ&97k;7k=E-hvs=AZ4+Cxs_di425g4{tusoO{=oCet~*0 zbMDU-w~zc+Z8nXt{bP{Y1<1dpV#_$T2!ug${EG{{Ib3V*apTc!^%?`cb1xnWnA+{PH?quGdo4-^AOS|~2gUs)g z$7oWl!*TF~T85?LUW-@3*cNtYX>7}u2;Fu@vWas_e=_Mevl-m*G_$f>E!#AasXC6- z*;wcia#yyy0xu45J0@481(*jC&iq9Cv>h*Fg*Ehvac zS7{1_CwQ4vsD=tvDcw9rBeq}&;Ix&PuB_nb4%8TZR( zolC>NDLU_|=dEY^d1w3M zsf_4bPc$5^^~BzZHVu1|O}fyt?p+H13~ipv|X}A8*g;5 z--OC)2KG5Z7KKo}_+l%|yE36~*HTFeh^d`VG zUzbS+4WsRWNW*vk$|>W=VJDB1G~7#vf73Cj{bpgi9^ZK+O-(LZ81%V#a_a4=eFu;D zxOTlS`y!sHttS@kr!9VR&}LJAK^%%0-(ecT3Zl$)7`%~e$vgKXWIaVJ=4q4Gz}tsE zMf(<&uINwg+M%7aO3m3FE}>B6rlC8MO4M_1#$1hPeeYX{xnvBrD+qh!Z-wsD!$>yf zwSTRNI>j{=8&l1kk=;1@hWV3&FQY2)+OnQp4mmu%gzX-2@;+)%DyYUh; zJH&A(KXdcc6qjo^mU;D9#U@#b97#ATZXeEb3);PDx)M6&-5tC9g;9{_0(Gs)?ECzD zyQebQAn*Al{z^{i>gllp=^GDaa}gjanC8oSpBIU>G04~Tvw?qQcAqr-1TC7qn-yoi}Z|)avlYeu%w7s=`i5`#a2@OhU zSt-l-8d$p$pW!=^7T8l|lD8_78(|-(EUT`wKE9)TZR1&RO^oSD*efBvpd0CEyMCe zsQ1HSNsH52tV6`a$${n%A&Nn#{21QSU64xc+}_9_N0K_wbqUAC*+w7Nm7e z4fq_ybDZQ}rCsAr6W@k_D26vz8KqUwnnsS+we#Z{?PC4tDXDa&TNLJJO3KMVc<2_{=jlMdbCVGV8^;?h7C~d<^?D)Ya!A~A9 z3&MB~e|}hasWwlOBy12UaJ--Fvi)=9)_SNvKw>JPSx0o0*B-r}Rtu^38m{0#AspMUq`SCa5nDCD>wL*#8)5 zb8JlMPDxC95p^B+Ge^m_;w(uE6!n8yUuj=d;9{b1V@^N*ZV$3<4|9tx>95ofac4oY z*k}9v60*-17X{%PTH|5NL;P=+do8!q&Ip0iW1HJDldLE zYu)e#FPt|%C2mKS$g|v@3A1DDtkMnfz~RGRB@c&RMoUd}ekRauqM&DgNM*zw-)$Vd-{*vYLIObr_w5evlPe;} zGvSO+-+pK|fffs`6XIQtYS%?Ox8RNv4?gLzPr!2uT3-Gvchnv$ZMypJW)DTQR9HW} zXPhA)A|rR|FT=)d+rh)q`GU1~en-&WZuB;Pa9ncrnOwm9Lj4{wG6G)SrSze1-Z9q< zh7^an3i(I&_WSzB#m-O7Crfa7RBOlk-^ zbWhh=iWn-={qavNpjc*XXs3^wOyO`%e&2Y&q?KgL=B*&9%=>E>fzoosZc2RUU;O`& zUi1C+H%|zbha7*ErJH)C^D0>hUub>Ja0AdL;BYtrt&aBQA1J)1USyFE-W^aS06k7O zK|O4Bb1hspU3o^9psK0TTXNSDiG<+TGW8R#o12#gth*u@tvr*5`YL;4&?Ll40_FW4 zSeW%Me;GTJq}#DS^rL$uiMg4E6ZpcR>2pC@bz8HuhVau*PVh_l7w5*@w6t@K+Ipeq zqgLW%gf%NsxEA$)?H*?jM6Ip#1+EWVfy<}Y+>PFsl&JimA0ECu{A_o4IDA{#YWiU( zii|;xXeLzljm^3dRo(!dp&4at)m~+Ux4gXKNzR;KT;kC(`L5H0Gn)$(iexoO+_r+bhVl}S&+gGO*ZnYH)GTc|~n zx5;_y)eSXiHz;#HtU$VYZL!#Bd}7}KHycH#fpG3Lis*+Kv9 z^}9or35P%xS3^@10HRo|D*;fo1e#ukTs#vATzmkO0}AlVK%XnzGY0D7U`t7)8r-MW z9GKek5!fo8sN8&`R(QdsVorEH#c#M3F4P}AZ6TMtpZ@w=SnQ^f8^2dKIZ*OX@a*Ts z$1C{b`)!d7%t8b22sbL}rt$5wz41jx_;WnCWcl~KIcf!us!x#<^Tzz@?LgO)4hJSm zO=msvcpqHLz3hgUJ=!3tc$wQO0p6&ccGpSv1%}`*)h3(VK6gZDOG$hS6+rns@$7Wcg8!Zr8M_&o}h$^kXG2Id%~@3NC?x&Lfq zN4vGFV@Kk1H`0AwuPku~!(42ARt}+gLR@HUm`C-J0iG6VFlgFptYI96G8_Fe4H~0zkzrhF7 z`TwwNG@Q!q`t?<3SNZtaZ12EKt`dR0@>+t7_oW`uhtO%?R-fscCaxJ8wT@2&wAve$ zgj~5*th9*bkUFA%%+LoM0K5>OBwk6KOv>iatNji_f}m`3-DyT>PLezH-B}e-m~UXu z{sOhKq5)^a-S6+ymV^MlRUYUYpb9WPF+uJvB!MVb9{u!mms2sA*e25>ApQWZWii<; zDk7q`{PhGBhuF7wuSsqfD5kT@(NL)1lOf`^Lqe^?_ zh+=1gY`3||9gI@`^2=o49P#eZJ5AdToFuP8>#c5*K4+2u&m?t3t93qg<{dmu_7^!C2L-9E za+NXx%pcJ|&-C4{+xGC19x6qiIbEjN_ZLC#Gf0zEtwCY+4g{} zMeaR*6`biop^C&SAP_)MTL<0dmqSHUhbM_|qTPUhE1HArh|J@LG{8xjsjw_@@muW* z&K>xJ2`FMFh0fp>kI~7t*aEh^d&W1gP}~}T`q&B<1H`&6EPJR?4Nw|^mn-_=JryFb z>H#koAm?PU+HYU)HXyt#=P>CAE^3|Rapi091-&%{7MP=B-f_lk!o&Lzt&ZVBYKcxIAZX^Iy0rpeYty23X)DIq9wq<-x{F3VzBdTMnxH~3KiUtV z`oWJMU%fX~{Qv}E(`ixO2g%9E%i7u<1W>IOTT~cQ@_ajGl08qvqr#F(sgI>q-m#TN z)XX3FW#`^N)7N-;$W>#Ty+A~PTD?1Qzg}W>MZRnNG7(&dyT_$Vms$zHWKt&%2rPrg zxDOpdtPlEtu;Kkfz*8~M?9h8h21w+SbwW5(GqVpb-aJlDDc8GN>e^zN3@CvaH-U!j z9I!}x+&jUs%YEy{T?FbFqiDr(*Tp{msLosU#qsXfbZTFmMoz#s6E#@mD|emK2X}8~ zw>hu~j)>_|nwFu?7^r;w7S{;)FqT$Uc_w1nW`Q7Vx(ZO>&icnTfq{`2$R!vRAOE%G zPNx;3%8z27bB!`k*(@5^dvW^!L?LNxbV&5DvfzXJt6bRFLS3pCW|dp!Ie?Ui3rI)` zzbU5X+@5es#f8sx${T?w*-`>&8AcDWg!+Civy2&?cRq0J7|wfu zrSR;k@M(L@aX9*NLfa{Y@3gt|aX;J{FQ276A)YPQ6uOWtO$?Ksa(wAGMr)TrUTC2DtijIePcxu8sTrtg}E(%HDnI+zI3kj(70X*bObjvf& z?eG@->a#4YR%n|8`Js-(N0A#g`(ir_)}GyABX?H&aqi{N`6dw z)4dCX_{bn2cSHp-M^I;DKfJlL>1{kPT@RDi8B^tg^-mD|vV`Of^%?5xcLzSXl?$Nb5CR z>T*P#B%^q}IRTi4MASDHT&b^c)Y>HKG1W$+Hz#OjHb0(o51Xv@UZPfLO9HtOI2p=~qu5m3KO5S7>s7g5wy70aJiC4YV=Fo#D#R z@bLFno}hv}W_`Hg(3LIF1e**1W)3y1+$E@WH8eG4*j{@GVt`$f`S%6X#Tyb>_QwQt z9B7ppNWJG%$Raoa(kAGIOu_(+6VRc68E?JP=Gv>4w-2O)h^Jk?-m~)_wZUl|55(@Y&|}j-!8V4S7x^J8ChSz zL|?h{ZDQ$=zjIVfH0Sm0`g@}9UVq^OOxr}@DF#hY?==Ebc6nGX@KnOy-`Zvx3iF>9 znM{mu0>#~P=gzSnAw}2Z%js$KKu}vj;8J8rVE^+#=G$AnxcT0~5Sh!bu5@DH-W!V} zFeG&Xm}SGwuYb@Dody1JVEI3@PYPIy4|;uz6dCAhY+myFTr>%Ssjq`(yp$U#)2rY) zj^Q5eZrB3#&TZcN)%w9&WKG*~1L*aJ%$`1j(%G~fl_4+F>Ht&$t! zVk=E8VA8oS-|$eGLiZh39sONk2l%L0Y^4I`J4!6b(d_*$8v#6QQs*|0=bY~8Fba7+ zvIn4dKh}G!kBMBocyZv)*WubJ$xOvWCFbc5XJW(%;pg^vX}6-|_lMNDl<@NQXld`% zdCS<#Hhlf;VTl;sl)?GrT|3N~+rf1EkAi!7Z@jm1O0CW9VM$=_IuDnJIZysQi5=!c_Hn#0_G8mAE4|m2N zQ^SngKVbDaMBqFn0LJN`Nss8AiAthsPPj-=YlUIX{!)D*x62+*D(cM}@$BfMjm7&9 zv19hnxexjpV+(h1a(Yc4|J0+%X60bA0IaXr{CuC}@?X-6UlD%vgmo2v`0taBVA($I zkoGiC;EIoTusS|IIMs3WcjS52x!?Up}F?%Tt~6_BelqItVeP?M1c5=7^|NRpldxCwbrpB;@3}`dxdXrKh~Lo|_D4JAE3VuU5YP16 z4K~03^`9awS(_g4<15hcbbL8DiOu;>>rud&pTU&+DvxlpO2^=5*z}If&A>p_QvGZ< zP?7 zUKN~i;*lpL5a|~i3q3kIAC*eQuRP=$+H_qIDSKsAm>%*xkkJLdd=y0M$I zl9)Lq(5>)=-Zh#Zp5!T8j)LTS4^JvinOgvRSfLQ zjg=a@{`xj(GH*ZgusCEWHKzRmk9yT+1_ru>hgvF1Y>u)wJVsd*de%HpT}Pqjl!gk8 z)LF`mds}(^C!hgykUPQghLyXcjz`TcUt^&{ixSvuxh1ALzZ5*${NjM9Ug_ML)su8t z>dr5OXV7DoLv1e;H=2rWU!+>1HtqGyVxE}oeEU2_DZs_w$L#&>uF;*+%eD8ImWBJ|TUWRQRZlbx0a%n7T4}_515<9S(NMlmrxR zKY*Hm#{rU5Jpi=MI^Iy=_8OxJ-q^2^!oK(Bp1$;3XIyVxujW!u`qelx%Jg&lBwo&bMHC!ORqekN-8@r^ zTXQ)V5r1y|!8Hj8yg!Y8n+M*M;>d8H{vgX4`L-osx+cp%I-i)}Jnyl-QD(EC$t#bA8LPrPW|PW7f*Gw(v4~1(R>1y} zrAgSIVs_mMbR-3Igyoxk#tYA@M)S2(2Q1V!Fs0>i40lA}OnK)9pD>;9Yd38Qwfa0B z0r6aU_55wZ>nJr>$Ws{TFh0w1)!_&UL)eb`eM`=wmda9!p=U=no$U^aaXx9-jFg^}48Cl=){Z*bDN1AnuDu`sE?7_~DiSLZ zaA&ROro|!IrCtINea`c%thnMqqHKVJ&81TU9WfKU2{v#CWb7n`f=wKwGxk zHcdH@(P1*W&c)4&u(^t(-O-d<_IXjI#W~SwVTI8d9S?bX4-^0Nm_hrh6)LU2j)t}9 zp-tsG-ivojj6P#35HWYwjr6dIa_1fBaF}Fc+Ok`8 z*_}r17JuCN%z$_0U&fMZkc_p$DwUGc6+1c{Tk>i+&lVmB4}CO*4nj|Nx!*jm0?bfw^rvhp)x2aYebj8j{gfuC zu;)=&y;UWH7=dAy=Jh|lZ3}OSU;V@xh4Ec#Ly^v($Z5D2PHBFZDRyp8St!aHnm8YLIkI)}Y2whYulf$X7}6D$SKD3sq3pthm7~-d zsn(|*{+BosRT1*WB&oqfm8BAMW-{%~j7eP%4C0S3>znh7>c}#bgPqwES?_Joq>^B( zB7113)TzzHH`3y)xjpWnT_iXZ;8+sY{yD?@b~3#HOfr;Zga(};!Y><}n5+OEyP{!4 zJ+N-sH5}AUWoKv4=EgbqNaaW>R!34nR|OoPRe@gPz&8vG5=b!nfRjk;<{x^~nw|KYhh=F zq^62W`VooXMwNpgtE*6)$fS*~fz-b%9Qnb?rW-^ybqbMB&Bk`P3LsCk@Y zQ@Ccpz+q#hy#?qXdB^Ro4s+5^etcMEh z94kMA3uqAyko*z|!+Lyx6Sk70qDob?iCb#8t%8Uk32gI;2-Ri4l0kLlTFYQSmy8ikV*R4R?H96 z*eUTwI5u`)QJ0~j+Y#kkCsVa8NkWu9SqSaZI-aBmyH2J@DpsvN?;+!FH_wDZ`}?>Qj)D9$jk-9{^jR zF5huMbFDdSa=T&)%(bOVul{t$`RYQ32=@H^moYxju&+pHoDQqMb(c~lJ2?%^rwXg zB^uqQT&I8HLcTQ8C4fl;h&@##wS^;r7a)vgbK=&}Iw%Il_=QcrN`|{5jUWdM=|`wI z{1%SYbAm`~CJum3H85&}d5aP$IWRbIG66o>n-CGUP!8YXsZ#}=hr{@!g{Y^Aa}~1~ zJ^G1WK_XQJPf?*dD5FoRtIYJQ53OQ+?gG}z-~w_T=r$=?0g$hBaE%G;?hyT!Y0#{6 z87-RZ{(1Njj6P#dl8$70QwIVz#Vbd7v0rT=!h%`Q`>+Q?yNn>K{Yv}!*+8P0cw*m_m0c+Sy%R|^ck7F)3sN`I8#-|YVwfqia_?Ds2(Ggb* zWGxZux5CK`+~OOknAy@ZR}0!0t`XkqK~a|ywctYKE2zQms0+(eM#6My3*;&s64bQQ zm^hwTYmVGN4HY3fx^tQHp7mCXBy$v%Mr&y?!ctqkeXztLk0zo}(MVgDCtncFl5euN z(xaD%8gEEK2f7eZW%g}5QOhF{()zQmTWbxg^o4shc*aJFwvh^D2Ak~r&5y*SdpBZy z7qZ-XkQkZPdstNi!3+3G4FXt!5m0%re zN|4R!b*WyC!B$ShT5#W)zY>3lj$Ar|%R_l0!YLrUf+(7BQ9cJyp}0NsMJ_ri{@*WjLja zhHYUEu@=64ZoV}j#2XXwkYdsTJBb#`f@-GccPCRrggw4@lL^`}2;Bg5oFILf9eraJO9&dCg-EN+Ol(0s)*}<}!{3dB znFg65=9rRRBS-T~ z2bY^nV+V!NHjVZEdsy@Hl;yrEZc}3xiS&T2uZsWIA>C0DCARHUT*dQ`U zHmEMovS2VEDd9h(zU@X<2enXrtB{6(;96$s&af>DiyX)b9E1^3w;c7jFa)*m-aw)58&3%Wu^K%`P1zmy<+wEAr&YeKkD%LPc48pJ==X3MSrOR z-VQ*;K-H@Zd30XWPU$HHbw_FBQkdd^yXK5~r2=u+au15$QzKnfV2tfe%JPQDwGbC? zv4QC7yEcb8-}ja2?EBCE#-vs)1TEl*^!YOBcxHl|e@D_9=*Sba)+VFE)F<|J6_-XHu2bKi+=ZeVy?gSgy*1Jwjkhs3 zwusG4oyrT7WS^-DZ>|Ypvt4Yy55^x66|0xRvr-Tisfit2Y(lEr6^u4Pr(D8fIZKXz z!sm*bffi-#q4Bn3 zKDi~$CC97}_770BQuic6t=1nbSOrjH)RDKcP$3C0C#tqFW83QR3@10+;=_u$4~@(8 zHtPA(E~kA%6u?zx=_DaX?|mKC_qIS1zGB_MZ$KYYXN<8t?jSN;dCi#Fo4<@!f#B|$ znRe~Xni>mS&4o3yHnNM4c?`c2jUcy$6t8l^8&x3bU5lkDMn04*Qq&NwN)2RO0I~oj z|E!V*_Eld&qokvOi=S{UOKvjvMc%Tz z@+oMKI%WVQdI6wo{kTY)gVXCE0>T8_GyHg@-g18c*e8K0ur_cAH`db&nzJ%IYl6vy zN3y=*Z%V6I^B?sH^KT4us>k~*gPMG%y6>iGoV`0Jh>ky?C-ziMMjIRI&`->I2q&n| zWvSC086kTi_kJTxN(W8rbueGj)>+sQ)*mQ_sgNb>3NJ@S{eGd7v<3PUF=f>JwNKxq zBq0xqtLS4sm5jjZvf+aLI4f61LWBb|Dcfm7Dr{#Zgoha2ZgexDkD!+sy|1_*2J~#$ zhDPdB5aLiCeR={sM{eV?BbCP}iGp(kP<zGi3zt)dX9bK zkzg){sDpI@PYuAY2cYS5a6DrbtG+S($SrV8fKooonw&nZu&Oj@K-Y*ef+(S~1G!a} zwSuyOW-W=zq-4*b#b8A+2?kDv96&8cp=n>WA(3$ip(gc>Ph6nrhc9eVb_Pyi6^P4u z!eC_+C74j-yO;_pGd_UKLfs+=`+*la3mVKbtdnP5=x^zaU4uv)vf=J4QMmj|&Pg*J zblE;)MnJ*23>>)tq>*BdS~Y*PK3>a$eIP+c80_pOcy?7lsvkt$V~Dar7yPH+##tkJ z?Wn^mT+Br-;(GPEASf;YI)NvIM~JrUxwZsQzMxYMfKfJsSXcrP%}LVYgGLj=vzYBh zK{LjHNW0QMv{u4$CQQ0XyG^SmQ9PFR5)9N{Muf3;*kGY6-g8LetL%oPo1b24x1XvJ z%Di{9HjJVewHd*gii8V|Q&UtRJl`?5X6#;0f~j9-ttmi-UzIZCWnM2Bph4+1XnF8} zuRE2qvZz14)P))eHf70ZbHWIi5xsbgy#M@!k)0mGA0Qzxj!@{OMZ1^DY(}orf~D$= z71=GR4Ff{x&dT4GxzMx|4s_$B)I#L8*Y1|3hHAW1E1p*i0+JZg{+sws4^@s0W+S_^ zP@ot6gtoA!6}@T9GSzBq^}z#@PP)7sUNb46+5v#vEtON}1=twj;MpN0$cp06fjz~i zDDJ|5B&5xIfS4fAUK!)J54tGtP8}Q;$ca*f$!6|4<#kCT$ z7#6XU_QAQRFJEb^XmY-)ejsT1liQ#ku#Q)wx`M_a$Y8X&Y6xc3i#IFxJhYa#ziSbD zA&V@Elua2IM0~#;BD5(^4F_j%j770n0Zs)x-vHZ+rqyY3sTJ8bYsv;@)Uz#IQl1@? zT1!!9-lwn8xwaS~2;t?#YnSHudlgnVPTfyb~0i~IBcTf_$ zrRYUU5f?)Gk|pqx%>W?*TLME+X;TY*#f4y1{^x?1r7WuaSAo)i9DdN18YHW_{1m1P z(A5dmjD=Ed^lU#HP(BcrNt@g&M?L}#6_+G?DeIUQn3ym9^i%X5 z6U^xjd$_A?47fP&A3yx>|NdE4Gv3n=w}D^f!moR8flGRJ3&i``u0FnOYD#_6>vGE8 zxW~KQ^!Yzrk>S7W$^N)5&?E80m@8;9CU*9J_p)|@`x4hVyBdrw>G$NGtIXyZHp`Vy z-sfr=e%W>$zP8C9gwsy!@>bKV0LQtETy%%&S%Zq*Svuw;a?@hTr=U+dGIHG$y?70y zFrOXUyW)!!o!DybWO6JD1w3a!r&zxOe+C(WOZHmS)HZ+h)3F6#{x!V5tVfAW>pvXJ z9qg=(&mY5|cFokZ+Cd>Hw71hc#fvwc^#V?d{V}FLZoIjRc@365ndwrTJbo@TyT7^2 z{IwK$q84tbl496yD$!-C`qPhON$$wDfw)`S=g)(i`sWk&KX_GD)@~b4xf3TNbo2*Z z`^alw%lgSL!glNbeOW)dhkuXOf8~k)d$j%@t^ek{1soyYMSjQw@-LkTZk`%5IJXGmVW`afoV)AK)D7UWNn!}&j+O~~F>Sud21 z;;UdyavYAhK`Bu|T5Fr>$)8TX;LE?}Um^CrFTtw%;NMr(e_9Ft*a(E@Bq4Ex{qtPdIyht zJy%VeC{~oQsN9%uUviSe_cIp#m~ZBMUSObvKfLZMVQy7^ z6A>YoJL@0p1z@#0=IU9wxBfaA{A7JN=jhhS7W_?r->}-+VLGmrHOa|c=_ezUriVjb zV2=NEA_ianH5V@){)a=>&z6JV&xOD5+BH}zew&K|Phs|dd^!wO*zenqj)AN7oiT``F{vNIW=DY=Tu=jd1tfi=*th5U; z)Va$&w~N1pqcs0=`nhG zv-?JfJlf;kmC>E!Q;UaLNENvVBz4I%x?!GN5Fq@ du+9YRY;vTw3t@gfp5Plc9WBF47>!#G{|~hD=sExZ literal 56866 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
  • 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 diff --git a/browser_tests/tests/priceBadge.spec.ts b/browser_tests/tests/priceBadge.spec.ts new file mode 100644 index 0000000000..a9f8a8c4cb --- /dev/null +++ b/browser_tests/tests/priceBadge.spec.ts @@ -0,0 +1,41 @@ +import { + comfyPageFixture as test, + comfyExpect as expect +} from '@e2e/fixtures/ComfyPage' + +test('Price badge displays on subgraphs @vue-nodes', async ({ comfyPage }) => { + const apiNodeName = 'Node With Price Badge' + await comfyPage.settings.setSetting('Comfy.NodeSearchBoxImpl', 'v1 (legacy)') + + const priceBadge = comfyPage.page.locator('.lg-node-header i + span') + const apiNode = comfyPage.vueNodes.getNodeByTitle(apiNodeName) + + await comfyPage.menu.topbar.newWorkflowButton.click() + await comfyPage.nextFrame() + + await comfyPage.page.mouse.dblclick(500, 500, { delay: 5 }) + await comfyPage.searchBox.fillAndSelectFirstNode(apiNodeName) + await expect(comfyPage.searchBox.input).toBeHidden() + await expect(apiNode, 'Add partner node').toBeVisible() + await expect(apiNode.locator(priceBadge), 'Has price badge').toBeVisible() + + await comfyPage.contextMenu + .openForVueNode(apiNode) + .then((m) => m.clickMenuItemExact('Convert to Subgraph')) + const subgraphNode = comfyPage.vueNodes.getNodeByTitle('New Subgraph') + await expect(subgraphNode, 'Convert to Subgraph').toBeVisible() + + const nodePrice = subgraphNode.locator(priceBadge) + await expect(nodePrice, 'subgraphNode has price badge').toBeVisible() + const initialPrice = Number(await nodePrice.innerText()) + + await comfyPage.subgraph.editor.togglePromotion(subgraphNode, { + nodeName: apiNodeName, + widgetName: 'price', + toState: true + }) + await comfyPage.vueNodes.selectComboOption('New Subgraph', 'price', '2x') + await expect(nodePrice, 'Price is reactive').toHaveText( + String(initialPrice * 2) + ) +}) diff --git a/src/components/node/CreditBadge.vue b/src/components/node/CreditBadge.vue index dc109e354f..a306eebafc 100644 --- a/src/components/node/CreditBadge.vue +++ b/src/components/node/CreditBadge.vue @@ -12,7 +12,7 @@ diff --git a/src/composables/graph/useGraphNodeManager.ts b/src/composables/graph/useGraphNodeManager.ts index efcf059518..b4ce1b9cae 100644 --- a/src/composables/graph/useGraphNodeManager.ts +++ b/src/composables/graph/useGraphNodeManager.ts @@ -48,6 +48,8 @@ export interface WidgetSlotMetadata { type: string } +type Badges = (LGraphBadge | (() => LGraphBadge))[] + /** * Minimal render-specific widget data extracted from LiteGraph widgets. * Value and metadata (label, hidden, disabled, etc.) are accessed via widgetValueStore. @@ -107,7 +109,7 @@ export interface VueNodeData { title: string type: string apiNode?: boolean - badges?: (LGraphBadge | (() => LGraphBadge))[] + badges?: Badges bgcolor?: string color?: string flags?: { @@ -786,6 +788,12 @@ export function useGraphNodeManager(graph: LGraph): GraphNodeManager { showAdvanced: Boolean(propertyEvent.newValue) }) break + case 'badges': + vueNodeData.set(nodeId, { + ...currentData, + badges: propertyEvent.newValue as Badges + }) + break } } }, diff --git a/src/composables/node/useNodePricing.test.ts b/src/composables/node/useNodePricing.test.ts index 950d2e44cb..7533b7b770 100644 --- a/src/composables/node/useNodePricing.test.ts +++ b/src/composables/node/useNodePricing.test.ts @@ -625,9 +625,9 @@ describe('useNodePricing', () => { getNodeDisplayPrice(node) await new Promise((r) => setTimeout(r, 50)) - // VueNodes path bumps per-node ref instead of the global tick. + // VueNodes path bumps per-node ref and the global tick. expect(getNodeRevisionRef(node.id).value).toBeGreaterThan(revBefore) - expect(pricingRevision.value).toBe(tickBefore) + expect(pricingRevision.value).toBeGreaterThan(tickBefore) } finally { LiteGraph.vueNodesMode = false } diff --git a/src/composables/node/useNodePricing.ts b/src/composables/node/useNodePricing.ts index 634d94d0f6..5d5ed7668e 100644 --- a/src/composables/node/useNodePricing.ts +++ b/src/composables/node/useNodePricing.ts @@ -509,10 +509,8 @@ const scheduleEvaluation = ( if (LiteGraph.vueNodesMode) { // VueNodes mode: bump per-node revision (only this node re-renders) getNodeRevisionRef(node.id).value++ - } else { - // Nodes 1.0 mode: bump global tick to trigger setDirtyCanvas - pricingTick.value++ } + pricingTick.value++ }) inflight.set(node, { sig, promise }) diff --git a/src/composables/node/usePriceBadge.ts b/src/composables/node/usePriceBadge.ts index 489e412849..5febb21b16 100644 --- a/src/composables/node/usePriceBadge.ts +++ b/src/composables/node/usePriceBadge.ts @@ -18,6 +18,15 @@ export const usePriceBadge = () => { } else { node.badges.push(...newBadges) } + const graph = node.graph + if (!graph) return + graph.trigger('node:property:changed', { + type: 'node:property:changed', + nodeId: node.id, + property: 'badges', + oldValue: node.badges, + newValue: node.badges + }) } function collectCreditsBadges( graph: LGraph, diff --git a/tools/devtools/nodes/inputs.py b/tools/devtools/nodes/inputs.py index 56baaf06e1..4a89d77076 100644 --- a/tools/devtools/nodes/inputs.py +++ b/tools/devtools/nodes/inputs.py @@ -2,6 +2,8 @@ from __future__ import annotations import time +from comfy_api.v0_0_2 import IO + class LongComboDropdown: @classmethod @@ -317,6 +319,30 @@ class NodeWithLegacyWidget: def node_with_legacy_widget(self): return () +class NodeWithPriceBadge(IO.ComfyNode): + @classmethod + def define_schema(cls): + return IO.Schema( + node_id="DevToolsNodeWithPriceBadge", + display_name="Node With Price Badge", + description="An API node with a price badge", + inputs=[IO.Combo.Input("price", options=["1x", "2x", "3x"])], + is_api_node=True, + price_badge=IO.PriceBadge( + depends_on=IO.PriceBadgeDepends(widgets=["price"]), + expr=""" + ( + $p := widgets.price; + {"type":"usd","usd": $contains($p, "2x") ? 2 : $contains($p, "3x") ? 3 : 1} + ) + """, + ), + ) + + @classmethod + async def execute(cls, price): + return IO.NodeOutput() + NODE_CLASS_MAPPINGS = { "DevToolsLongComboDropdown": LongComboDropdown, @@ -334,6 +360,7 @@ NODE_CLASS_MAPPINGS = { "DevToolsNodeWithValidation": NodeWithValidation, "DevToolsNodeWithV2ComboInput": NodeWithV2ComboInput, "DevToolsNodeWithLegacyWidget": NodeWithLegacyWidget, + "DevToolsNodeWithPriceBadge": NodeWithPriceBadge, } NODE_DISPLAY_NAME_MAPPINGS = { @@ -352,6 +379,7 @@ NODE_DISPLAY_NAME_MAPPINGS = { "DevToolsNodeWithValidation": "Node With Validation", "DevToolsNodeWithV2ComboInput": "Node With V2 Combo Input", "DevToolsNodeWithLegacyWidget": "Node With Legacy Widget", + "DevToolsNodeWithPriceBadge": "Node With Price Badge", } __all__ = [