From c2624f116d8d19911fb9773be263fa647fce0dd9 Mon Sep 17 00:00:00 2001 From: Joe Boccanfuso <109477394+jbocce@users.noreply.github.com> Date: Fri, 27 Jun 2025 07:11:46 -0400 Subject: [PATCH] fix(segmentation): Changes to fix problems with non hydrated/loaded segmentations to be viewable when switching hanging protocols (e.g. MPR) (#5139) --- .../src/getSopClassHandlerModule.ts | 4 +- .../src/getSopClassHandlerModule.ts | 4 +- .../src/components/SelectItemWithModality.tsx | 7 ++- .../ViewportDataOverlayMenu.tsx | 6 ++- .../ViewportDataOverlayMenuWrapper.tsx | 3 ++ .../CornerstoneViewportService.ts | 25 +++++------ extensions/cornerstone/src/utils/nthLoader.ts | 2 +- .../src/stores/useDisplaySetSelectorStore.ts | 6 +-- .../src/utils/layerConfigurationUtils.ts | 18 +++++--- .../default/src/utils/reuseCachedLayouts.ts | 17 ++++++-- .../HangingProtocolService.ts | 37 +++++++++------- platform/core/src/types/HangingProtocol.ts | 2 +- .../ui-next/src/components/Button/Button.tsx | 1 + .../src/components/ToolButton/ToolButton.tsx | 1 + tests/MPRThenSEGOverlayNoHydration.spec.ts | 41 ++++++++++++++++++ .../SEGDataOverlayNoHydrationThenMPR.spec.ts | 38 ++++++++++++++++ tests/SEGNoHydrationThenMPR.spec.ts | 22 ++++++++++ .../mprPostSEGOverlayNoHydration.png | Bin 0 -> 260491 bytes .../mprPreSEGOverlayNoHydration.png | Bin 0 -> 221166 bytes .../segDataOverlayNoHydrationPostMpr.png | Bin 0 -> 262091 bytes .../segDataOverlayNoHydrationPreMpr.png | Bin 0 -> 278257 bytes .../segNoHydrationPostMpr.png | Bin 0 -> 267800 bytes .../segNoHydrationPreMpr.png | Bin 0 -> 228920 bytes tests/utils/screenShotPaths.ts | 12 +++++ 24 files changed, 199 insertions(+), 47 deletions(-) create mode 100644 tests/MPRThenSEGOverlayNoHydration.spec.ts create mode 100644 tests/SEGDataOverlayNoHydrationThenMPR.spec.ts create mode 100644 tests/SEGNoHydrationThenMPR.spec.ts create mode 100644 tests/screenshots/chromium/MPRThenSEGOverlayNoHydration.spec.ts/mprPostSEGOverlayNoHydration.png create mode 100644 tests/screenshots/chromium/MPRThenSEGOverlayNoHydration.spec.ts/mprPreSEGOverlayNoHydration.png create mode 100644 tests/screenshots/chromium/SEGDataOverlayNoHydrationThenMPR.spec.ts/segDataOverlayNoHydrationPostMpr.png create mode 100644 tests/screenshots/chromium/SEGDataOverlayNoHydrationThenMPR.spec.ts/segDataOverlayNoHydrationPreMpr.png create mode 100644 tests/screenshots/chromium/SEGNoHydrationThenMPR.spec.ts/segNoHydrationPostMpr.png create mode 100644 tests/screenshots/chromium/SEGNoHydrationThenMPR.spec.ts/segNoHydrationPreMpr.png diff --git a/extensions/cornerstone-dicom-rt/src/getSopClassHandlerModule.ts b/extensions/cornerstone-dicom-rt/src/getSopClassHandlerModule.ts index d0c490e4b..85b87b722 100644 --- a/extensions/cornerstone-dicom-rt/src/getSopClassHandlerModule.ts +++ b/extensions/cornerstone-dicom-rt/src/getSopClassHandlerModule.ts @@ -31,7 +31,7 @@ function _getDisplaySetsFromSeries( const displaySet = { Modality: 'RTSTRUCT', loading: false, - isReconstructable: false, // by default for now since it is a volumetric SEG currently + isReconstructable: false, displaySetInstanceUID: utils.guid(), SeriesDescription, SeriesNumber, @@ -87,6 +87,7 @@ function _getDisplaySetsFromSeries( const addedDisplaySet = displaySetsAdded[0]; if (addedDisplaySet.SeriesInstanceUID === displaySet.referencedSeriesInstanceUID) { displaySet.referencedDisplaySetInstanceUID = addedDisplaySet.displaySetInstanceUID; + displaySet.isReconstructable = addedDisplaySet.isReconstructable; unsubscribe(); } } @@ -94,6 +95,7 @@ function _getDisplaySetsFromSeries( } else { const referencedDisplaySet = referencedDisplaySets[0]; displaySet.referencedDisplaySetInstanceUID = referencedDisplaySet.displaySetInstanceUID; + displaySet.isReconstructable = referencedDisplaySet.isReconstructable; } displaySet.load = ({ headers, createSegmentation = true }) => diff --git a/extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.ts b/extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.ts index 29f041694..705a46f11 100644 --- a/extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.ts +++ b/extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.ts @@ -34,7 +34,7 @@ function _getDisplaySetsFromSeries( const displaySet = { Modality: 'SEG', loading: false, - isReconstructable: true, // by default for now since it is a volumetric SEG currently + isReconstructable: false, displaySetInstanceUID: utils.guid(), SeriesDescription, SeriesNumber, @@ -91,12 +91,14 @@ function _getDisplaySetsFromSeries( const addedDisplaySet = displaySetsAdded[0]; if (addedDisplaySet.SeriesInstanceUID === displaySet.referencedSeriesInstanceUID) { displaySet.referencedDisplaySetInstanceUID = addedDisplaySet.displaySetInstanceUID; + displaySet.isReconstructable = addedDisplaySet.isReconstructable; unsubscribe(); } } ); } else { displaySet.referencedDisplaySetInstanceUID = referencedDisplaySet.displaySetInstanceUID; + displaySet.isReconstructable = referencedDisplaySet.isReconstructable; } displaySet.load = async ({ headers }) => diff --git a/extensions/cornerstone/src/components/SelectItemWithModality.tsx b/extensions/cornerstone/src/components/SelectItemWithModality.tsx index b97506d17..237d46c17 100644 --- a/extensions/cornerstone/src/components/SelectItemWithModality.tsx +++ b/extensions/cornerstone/src/components/SelectItemWithModality.tsx @@ -4,11 +4,16 @@ import React from 'react'; const SelectItemWithModality = ({ displaySet, showModality = true, + dataCY = `${displaySet.label}-${displaySet.Modality}`, }: { displaySet: AppTypes.DisplaySet; showModality?: boolean; + dataCY?: string; }): JSX.Element => ( -
%z=P$=|PSju|7Q$9~~Y30cYhJ012s)S2Y zFAOTLy7~i1pGR~^nfz(2<=z21_%}&hjnC>sU3k~w(x*%)6KwUXqx#)< z!l*yx#bG<(qrb_FOTZEc1$b=S{DIABWauEvi%)vx|3V^`qv*?@&g$|2&Wo#cK|mF8 z*y#82;a0=moJ_MY8lWKLTh{pk=jeD+2+orkWZ~jq<=77rrwr|*aH0In%wm3>UY-KN z EqcJNZ#HydM!fN`IT+tIv%3bbaj zlU;?}Xy)B1`c$4t_v1-4*IB3H!cu9=U}^9UvTbVH6FA;15*P)2bGGXWAcrMjYW!su zZ~TR|kZDbQo#Fn(L%+ilug>LctmDLj;pIAe!sNr(Ui$aHmg;eOqg#tYPO(VxmC*}2 z>g@QCd#lqIQ?)*7y)WxVCFi9(zNn`)0PRyqoDyy=nLvwZ8r}HW!OV8Y9NC&g8%pbo zIPFV{(tU2s@aXGw!tQCOB4Dq!RgFU%ti3f)=ED%%gq$K7jgxnCOOPsAHs?0d8M;x@ z3XV^v-9PMw)Fu{Ywih?ob3$kKy>JD}REWUVAmW&@rGxq5N0|T%SEa?64&3qF`=SdY zzvhdIDaudDs-J7Iyj_5XbsjIZ6eDN{(dM;U+_Lc?40f~IY`@|*LzgjICdO8` QZEPxs39|GiQRBB_QX$|9VZIid1dICV>K>-&?@+^Q-#S*^(m1RS$<7UZ&RK zz%;iV%3FIuB$ZpkN_5I#Q*-i=m!jYiwDTCtH48o`##ON|cR8>7ph5SsCTm$d(B5{? ziM|5q#}2KNcYZ>aa+%@~`XHl=Sx@#o+Oqe }yS$ zeX=0 }0;t56hV2pTr0rQ8m %2$9{2;%WvDsmCuCFrYt=%3~@u4m-o@|c# z+ hD``%`WYB1qz^4>1mi6P5jv*ph|Z0RZJw^!Y3;k~wg#AU{Tk@xMSz0H|z zg1NWn%U76MIkRy6l9~yarT+$_;5o7?ZE&*s3gc9nn#+A?@?7 iB8#mBoNjqy4=YQjboj@a+z+8<*1!O!*w_PDV?W2N$mY_ zIT=@3(SPId1G{%VOykY M fYb$y}D@^H^|=uCJJSA zVz2;06owT*r7zQ3JK}M-cQHxPP0vSE)=ebiZ0w{fZeDG-8a3(b%gyv61ImzgO_a^* ze;LvVp1wyBImTt{w%!bm1*uGa#EC}6ELwEZz%9)w$xSwBGO;n-#sAKHy7MDUHL<0} zM+cE?uai#CHPQLRA-u4|v4Qn+1}&I-(q>yYD!z;PO&Te0o(p;ab$`u8a4<(}EoJkV zCxMf^z&tvm!5=cv!V-pKK9HUqRNrrdjLM|f@w&ZRDGoQBBKOH}C9ncEhhtSfbGa?w zBMGx`0N+37@Zqt|jqj+6?k;1c cRW2i~Pw{30||D~pLPc;PMcOIZD>KlnQw-MX$V!bfA{k%6EsJ*tR9_wyAK zW9xeVmdn!*J-I8V$)qTlgOr7B*X)jIHM~E@`9p&Tv&1RmQ@we+BB#`Y$1(}h+IY1} zRF9MUB8Cp _zuKUlzJCb^%1D@?Kj$Y%wo&jTc-{>3EN>yPL zHh7))<#QC}PQ?rzOeUDngT*Q99rkuCEwsijkU}OnzaGz4?5z)O9cewzyFFNm7;t6U zEvq2*j>&Oz(5JooYa?OWwOlo6At+c3;fb_1+n%3qw4+-25Gjm3;#Kg7zr^dP+EW06 z2q58Vpj>BjU%$W9>EIR+>29d8W}|!_M$HxN*;8x$Gs}7oF7?v%Qu4pLy`|Mcb>drJ zYpNpN3eKfYYNnB4V+Ubfhe }NAxY|5A0lO(i)L7TCGD_lY)L2{A zz^BL3AaaH&J3Y5*U!{1zyq?FdJWMhS%jVXM71Of?b2HtKQ}NMk!%Hvky3?)(j xkXNvx9JQA@Om!o7uv}uI(Mh^s6CH?7Qr%LvcD78r z^U=`KfL&fBEvfb=aIg 7n(+jE-Fq&APT%6_CmlK zkt=RPc{vcPCUCclk=iWVaIVILp=eiI2P|8f9ee~_Ss)brbPLbxw6!4=Qdz0Tu3xF> zAMs5b7G##pHgHSGlHJ>46U_yl-Yzd)x&FH>;G yQFlJjG(gZ=qMCvW z(QrEw*G!j?Pkp=~6d7u72^e3eHSIF1&E(&`CDP4;3Pth^&i&1i=oz)3qb}z|1gd{t zLdua^TiJBk4z=fwBI0p@Au+YHayCBb2`$b)LTJK*{hbV9x>-_mvz%pbc0&uAdMyHj z1-yzn(3~PQfk|?~RzU4p)Da(ooi<{Q)9zoCk|ho0`s-w4qIHkCLD^_)ad9NT5aegt zliq$o_lQcuF{xf55HZ4je`LQ );@ }ZnTLR#-zHM5MoOTGC;~fQYq2M7eZ^fE_Pn;-(nEz zk})Ht&{K2snJ;H#8kCRMJm4bD_UHWcm9#yt8r%$Sa318I?|XA-v|E=*=;W|0#PQmi z$Z8El@t97!x8z)~f)u6gMeeTA`n8l`Nzm@yx5uJc|5(_+pA!J4M(5+Vx>%QRUW+c+ zoCx~2vU{h4I|hbl3FSg5UFYMg-u8E>B9@z7B+pGRFNZze$^~}sU7QgD%FWUKUX56E ziM^8>lcXE 2iC-8u+Tk65zU;xG^}fUh?fO9HsSs zSFh=>If4Z;8^=DrAc1x`S!aY8ZIaa97E# C{Z|J0>>Kh>Er@q)5x!j6ZS^h`E8xvFrINilJX7m?|+ z5Qj}asi!sOEa8H bh& zVBO%a^y ewwsgYtAF*QW}APBUD9IDs@)dt9jqNp|kHy zgHx;v5C@g?m(1ErS2WNIQ8R4pR^0>D!gHj#I73xV+P?hQ`Et1A#+hQSn1IVD @}E{yl>JaM9`uExCwzShjDtu5NZ*V%bTh@=*Adm99-ob|Z+p z_}4(Q3<=$s;qv2Db0Q0sf8td<4 3h6kU(G z3f&gRVV_~B%FMKv+mR%Py3-|1(n|7;gHT3mQe5s0SP6;HgKb4%ozm0VZgf&z&zPLF zo0Zk&Ow!oKy(qlkIP$mM 6!kmeR10B7DUhR)Zibl>t- z(cVlCb!-L}w>6$ohQ)277yKd#!lp!4|3Ma46|l^)ctvWWJfe_Oo`N^YNW-DC(-eR; zfxpt=SNBdhHmPl=aekJr{djh1cwlC3q^DVg53W~=+;$~d-^ aMeLs7M3=H%q$g^KebEB8K1>r<1tkElo|zxOyjD!944nv z_VBX0!rrVzx+o(vh`L^gljtBz#Xq{D`6X={N$LP7F3qK%NQx|qM8wi?l5-EwB%T#O zG0Gxe>z~~bPG=^nM0U FYX_}1Ae&sh4@Lzgn)e%^#mf*xRB!rs-n_&{rz z$|HLvh=Z1tM0^^5`iV?M)mi!xGg#Gjq26Kt=Q>A(oKfvqs_Wo9ttg#G<4+=pNwID+ z1D5$ J41N^&^o1(DG4Ot17yN=69 zcY&XCu)~a3?UlzaQ$8wrAll)!A#EzgrNwxffsSWwP|S{5KH^HUDn-d9=-i{eRb5@> zkNo~kA>JQ1>0U;mq!ecE!S?}*og5hVXNw*4ZvmpA;O%gW&s2AmG$+}AQYLXe-!C_& z1)(U1KHiS`ql(nP;Rqp~emByzbFXsps6m1#R?#J^$&3$)!{Xr8NRcaRNxw`2P#lm! z_)*NwkXI_Sl^UPMG`5Ej2BR&2`ioilmIHZSX773vOFjOTG$LqAJ2^>S?mMYk>5%wK zwPH!?8V(BwSyi#7Gvw%bsQC9iKVQ9-%-S8(X0n0iJ-Bo8!?s93FfZ{+;-h8Px7Dz| zDy$*@A5md!q&pMzt^~~^CVl%42(o)Uw7 {OFRxWO_#I>DG-At;s;Jo8 zS28{qI92Gul#|bDITc|^UDc~O -J zxkC%8CqEkCRl34MBmscJoKag*SuT)BF3N#Pf^~pTJdGUd_|#Zin)FVTStNSz@5Sts zFgdO{Wni*qy*-u6of5=P7n}1Ppmr?`>)>Xn^(AuB4iYWG2^ISTx|&N%t0g4bM|$X; z%M*1I?>c!{L>8sKo!~4w?`lTU!t*gV@;mpy!)1PQwX!nSby|F`k7!T3-yDJ%&`d{K ztmZ^AJ L!JMspd(MZBm(NoU-INl$lch&o z7{XyAJg-B &OvU!d*-pbDf%An-9b>8mlO$3OY@bXHRQ?Os@ag`XUDD3dw$e2tU zHL8a&T@zUlwmBoGaNgc_VEf{MP+MqOBIBm7{`&Z;g+uOYleM!y 5 z&)c;>gK3hQMe^BFqVIG*Am&`XBYFPVN;MoA%~#j$Hf7ypgttA(Q0a_7ByI2OWdAM+ zOEc?3^2v%!ItB%uT-lY{uavrzZV+tF((JVvhKk~N%q~@mryI?tGWK;hU_*}|mX<2q z&QBCdxs-5DUqUB+W2p^3AiM_9mIoUM1yzR%kj*>8)ucAH_NvK*$>^tF9}5SsEV|mS zgYVVv&a;I5T`Gg@j`IGn&~?8Bs1a$ 1!C-vV@S)1y?%QDseV?-%^DXX$ zyotm{+Eso16M$E{LpTN}2Jm|og9B1Mc^sZh;D5@C!ZyHNXbU Ef)tj8aMvb@t5XIoo~yOS;Ah96pg1&{ zO@^}dg(3LuGiFP Xl%_PJHEI~HI3bN5q2Ue6n4sl3LmpkzV~-uB$cXh5&=?eMk8ZOvn= zj+?$PMY_Mg7?y+$4LPI$WM>|+zK$vq_>c^LmNo7VM@g8u5(-aJ?=|@d 1psP35pp$a)h<)_1#~1#{#(uzZJ8%oz&3WcB V+DHsn8@`rE97-E#HEXcJNAc(I;5hBMer zRk!q$hm!sIPOf6 &Fc${^+(7#nOVuSr~H5*aGAgNY0g^So!Vx|_)Wkbw@zeMMuud;mK`p~$|C>M;$E z(?1B-yTN{qzRwpG$03Syu-(1Yqm}X2JNQOp;|?C?tH2CkL?g(`j7dK_*l}jrEkTxt z>0T6N9E%X(iQYMlrrT3<&t_g~E Np#P!$Ny2~h wZ!EDE3ofkHTx01fc?KEs+5o0Co7EY<;^4)f7T~Z)c>sBK5^bA0 znxkvVOsWVy+01i`ADCGEtn2Pp>xDz;@-!l9LIxz*7e^`hs;UF-7l2NtYm%{$Ue-!O zI-G7T*8JiO<^YLEkG_~9=^W-&N48CX8~|&7a ~414p;0;+9qgrH;YdryURde6 z1Xc_AyF}#_{^DS+Booj5W3rrLSNjf@r1|`sYarEW2GPUgswJAElPXaq5b&WQO9P*6 zJzUQTxA<<&Y7ph^%qCVaRWzLgb83;zD1Yb0%(#VEhNb}%Rs$}0ZsC49Tx!V-+V{Zx z+v#GF&EGh;kY_g=x4ngHAo&-hxV!;GrYSqmh{qVNyK;w_CS2C|(vv_QAHccCQkNXI z#*7G7AASkK%gPPQNDXru;{g-$?eSc$LQ^7~wASOtTsK+D34 CVC zvJ^jv?{kxbi#;d!+)r&v2T7E3aj_E<_r!~xa(IE~vtbi`?=2#uzGpMlDruDBjQ?th zAHIF6*-*}Xx69<(7|c!g+iE{Fb{M_}Q{&hD8D??X`uE9APhKD8E`Sq|w_Wds2mie) zJ~w$Xx?O8e7CYG9@JuOArRp|i z?@gj)vvoCFDYYoawwpi61gFr3#VpAz6f8Py={(Q#QwnWM1jkK$pb>iP{Sn5V*rH9s zkVX)RG7{iH0nt0MTY9*bmDN%EUC*~Vdk!wFksG~(PK09>BurOzH++Ing&D${@h`<+ z8Y-*{230fo71O&!LIws<;&v&he Pr#%Kv85jl6NQbX zcJ*@lkw0+Sq_2_<35U}FPDnxG?8;rkia%VB)(a wiQU~dj4k9PV# zd`={Z|C24ySwB6!5hszS&r=&XZcG{^qEMyP;h3HRXR$fJBiT4E3H$M(Re@j~fu!DS z?*@%8ppJRxjn`!8yvv* pNo4_tP0ooew(i?UpGZ)ZhDi_sOh07Ulo z%_U42KyO7AsyLVpm$cI|HrlXBcF(r@SWN-?#L`T}$*Ez3>BMK)93VkeCECbgzsqc+ z4Dra}J8~_p038*Gjs`%?(9_HupXYFMY2lzYsel2W x#8;#zr4gFL; z^<(&(7M_s5y+sZId&^8YQuJD{_rt)VP>qNK#31WUPUjtUCyazIe&Am`1S{-7{_-i` zD?lOh-b2~?ZeTC|wY{N!HA=7pF Z}x(vXmS+<#!*Y!>?ARb{t$!NYgJZ-Sh z9`T0*=mVj%Dp`=ui}3T;QVbceRo!ubd$4jC3b1m#iB_qXsjxW%BqHk}|0DKN<$}@x z@~nRMt9#t8&DMErE#Xw+C&Avi;l_2b#yqB9F<}-KPU@~17H|s^N$&ojQ9+yDy|hVy z*rVO#83@;8ydFOSKz#t(bmy=l1@i+sn~S_w^dLo*k_!BKt9?_6DYQ)qGPB(@;+>gr z4qJ%{cYXj@t$tE4 Mt3%H2Vudo%gQd&9qH--k%;g%!gdMurFdWEmXXdA;7Op>*mx>A zTcynOJW$cwL{C;aF31f_B5IWF;nGc)Qw&b7uh-u9^y4WgoaxV54T%KBB&GdKO6v`; zPOj|5LQPX^<<{i5wjxIl)61~y_*wKjoC3(a05)01JlA?wBzoSl;s5t)6i)|L1jr_@ zx!tV1U_7IU@GVS~`yQ9%`P?3_1uortj+Ng694)U`#zyecUf(Y{6^Z*7Gp~6p?aB@R z$JHzt6p^hQK73n-1X?w4C4 9PbV&sfOHr%Y H8bcWF;23kY19#6g(`&puzH7osyIm8o}$%*#Q;=#L+JqJ%qJQ$Bs_ z)(F3WXi))%xX+`dLW52koXk #Csv zmLxSc@_7hJ+zQN~gNQ}Z!7vfQ>98_ba^Ev18B$tK`i%6)$@g(!NAm5>Y;$0_3?lfr z@7K`Oj( Zs9Ea);hbq-;=MA8|3}%4|QmZ!%BWz ziU(GsADX{dsA{rW97frE3Ypr7pU;oQfMBH}Od2k(qRq!5;}{|^x^H`L?X}Y>i$VIG zJ~qq=S{Kx8kCy(JMyPX%EkcwE8+-=n`JA>ghBSzob~e|FDOgN1;R_?y9_?=gY;$>z zB&E6COc(>6+=cLFG13Q!?)HmFYz_(9KT2B1=|L>OgaMdGMT|m*IIJ7(;biK^>O4Hm zj5O~_REepLr%L+xTVJVU4&2(kuq>=~YbHj{^A R7Cl=LC$a&}<*gC8y2>VcqMl;h7lP^1Cq_o4kIzkiDh`Vs9ut7fH)a)a;}R4B{yc zz@)gXGL79$iW^3E*cjA!RMQ~^jq5j_fH7tlAc9uYSukM~B--1i4mE}YF^S`AVb8z$ z7RH#_w${AxD?5gp6buHL59b!%2=@!qsjBkStldHu1Q!wqng}~p)MdKsi-zm9oMWl? zmq^NI_C-NkupR`gJw8{_xIAvQ#sk|8AykOq6>G7k*2tK+OqX5T^?=iqh*E@&HUEc3 z5d@*_PgM}23BM$B{v}zXT9$}7e~Y4%7!E|XkigGPc~Rs`Zpr&oZuT!JAKj4m=}1t1 zQ%!ERS}s&~X~=gupFEzMEPm`!xI-q1mll1lPvbB3k J&YrQ*f0w@rwav_oH7in6j>Jq^spd|9m#(_{`a^MSFJZxbry4O7hHdcv z_TG-&^NQAZ-~E<~p|+8k#NJg$3p>QdZk`Bgvlw7hDV8ME0RC)oLM^Taz=u1U<+#ZD zsS#SMi4?6{nciW$2(YFgEtc)-E`I^a2S!>nQySmQ($LiOhB7hwq;9=vnXCekwLi?e zUv3F(WWeQeZj_!JQIHvRa;i?}&mAqHi$?g+I!gBvpx499@>=ac^((e?6$C8_yVbn7 zd$fU8) ^SuPBT@Td#BJu3MZoioHBa zd35ES@BdTku=o|E-SOHD8g0rvxspMGYEAI>paLNNxFpTEq|mL@@Qg=b;5G;J+iT8PQTQUC+{y zyRFRERMx2InNp`gWM?2iCdd;mTy%S~@w9S=#c?m>vNzq~60q)n!AZmMTxAxo4)J?O zf{qi<>LRik96*@N=Ji!A3x?EQvgyJFyk20YDfXg(_KZq|`cs(VeEW?#TU12>E4N5d zb$hd3>5+f{fJ& ;Ch|#w*WfQmNkB!VtVVXD;{UuiFVTXU8g*d z{bY0T&AJ< n&TJ#JJ^@NXUw`AV zBxSnrx;)^IL+}DiDb!g-gp*=(&DikV*ziv;Y9{2om0U=vOUdsfG#sICXZzF=06z`{ z! XD zwzmz{a`fx9E0Ar^Q{uGGa M0<=yNo&cP&8@#HbtK{QO5JXzGc;0w8ZY zT8=XLM6Elz)k?rp6z!QFV15Z{kCvf?7rV!~eqJkizb}tdZ3Y%Mj^9P%n>>56S$KSv z^}z4+zM6TTqWc3y`}IC-(;t^ogL>x+8(_$&B0#3mZr9ky`kpjss=CAm;1G_>ahnl| z`~P4Tl*TfUfPNSOh}@;RIrx0_vfr!Hepd8P^lET`Uaj4JK6oorCtPcsdsNRGFB|nV zOeKkL$MJV6CaF2@Iq!v6Ylf*}u8r^s@;vYVWZup#ib`qrN~YI7=kgF<=~(?pB$Tjg zYJ_d9t)0exR|{SW?wK0V@AJL^h;D;SLUWx${Zm0_fAL&=kpbtrwtp(O{vxiNT9l5f zK=s9GliN j4%fRo$5YJHE~iDFPe0vVPhLce9Fn?j;h`S( z5zkiLZ?fe>3F2xR!3_Yu`L2##nyZP>Gg( zq>)phGTL?_(=SU%!*gm_seDcN{9L+msjuSNi1Y>OFP=CCIZgA#Q&g_e%&0{f%+Nt? z>I|SB1t-WhWaNOL!yv6Qgp)Ng($!a4I_Ki5*#IaIFjqV8a6g8#<@J>q6@K$s{t!8+ zHj=x`MMH9OOMnaYx9t;L^__3me^ezG4A%G0_$THYyn t3x3Hw$qo=Zqa67z)3(b zAu^d)MgAwSIffb`{wMiyQ%%lq>mPd(C^-+C?fF;}P5cb#g0i*#E5mV1aD9%IY2qlr z_+qtP5z@*}22`1f`L8Z#E|#0_zPBq0khcu&V1?IR|9=9OwqgX5k8m`tJQ~8r)~EA) ztvp!&Y7@swr%OCV{d@SsFN#f{U$Mi5=lta}QJ+$C)k}a-t$nGTNTa0Q^`BJfuMd=3 z_P BU^pX)#Urxk!ApzC>8 z4*lt03HV*;egBWF=3lwn $oa_&?b1Zu3 zLaBc1nWT$&jd46OJw6*1lYPuGg6dSls4VKecZWI-lVQs (ne*V|9|Zdo00FU)(D{X*V C zfLKhCW6=IR$}jO#{VG85^6(DqQQm*(8p7yzLjY)_zE`1&Z~mumWiFo(BY7KTeRkpx z@o5L+#5jm&5m{IpMg*H>a^kSc_9%Ym;y1|UcNl&ZjdKG3dai~$YU{cE?@f@&yMbmb z9dNs*k9aNy<* W6<;0JOum@rIi7Br!HqZSOeCPX?~&zl>Z>V15Ij6PGpv(}JgJHc9OM0qZ#Z z4Z%mK>_$i4B-2xA^Hd|#U!5k8#?3ONal0cfS=8b+Pf_A3QsiGUMA#@)mY$--=>Dq! z%gC*!2LOoiSKo2JH1&Jhl!@GG;u>f`t@Yj_dFr%HS<`*f7)T-Z3?agg{^>UR&_5)) zS!4NIyCQL@;E2{Nwv%iczWF^MbNl*U$`uo2MzTZYUx@cpbZ155F)pV8H2L79`~!t7 zUbodFoZGXRoT|u~3wKeUW+FHZXrU?Qm 8B`>_ylMFpY3pn|M~tW zQnnVsE(xV&OctNkaASwXsrZrF^7eCpHPk*B&2fJj#_dTBUiS%#3C?mT>ql_u-4w^? zkGN34d^N_F*jpO9+Nr-*2Rh;qJ;f*&jKcnNjCs}r7PnA+^oAf%y&K&UICpC{;|dG1 zBSFj8YDiOYQDDtb%L!g=)2P~!{5>-Ro_I_d0y57nMq3`{;|wE1r!Lz7FNqKX`Elm9 z_p8sLZam{NWA!Qii97dd?4s2o4sJ- ^IF`Ky;I8Z!3PJ$ zkG6_lFAr12PE1IVr3+Ks23Y@ke3MY$q-)}JaHZ|=zyYy%tp4#Zcem(q^4@8!RZ(-F z i zZ&1RFK~B_NvFT6yfWLQSSrqWD6Fw7K4-JUAjV1PE^}4kiwAtU11P+K{-hQ!Lp{}tu zdpu$SFOqHlGvybOW9cr}@112(Pfg{N)Rv}Gd+RX`X-5vWBjVYboZm{yL%qpzn+js& z4MD8>R78ecDx!B==&Lm$kGCY>Nfg2j!L$YvAo=TVDiVLz_pjh>KwOynD6h!mie}O1 zk`{QO@=}e49cH`W>xz`Y;(RodR;WU?+T?I=c~l!M8NJB=7D6VO_0rkXDOx?54=08Y zCNiu0z-wk~e}=d8XJERayg$Znjy$_Vh0LL2Kn=^aQhM 8J5wl2Q q~~(Q}z(9OX^^gTWOQQEL(3# zPFJ=oGTCxH-u9Fof6@UU6_S_`#6KuR)*D#)^qEYlYhH+S{*RPtp_xfTdywadyL}!w zw9`5U>IBxjVb1fyY*oqP+xvsL9nsI(kChh5Bth>qd$V|52@8f%pdTc-Ij%Tss^vrB zxtg5nYh4yRxS>)$M)W$h|6Rwy5z66yjnoQ<%M$3z5oMl_xwY=4r0L4$EQ;AZ=+f?r zwKp~0%;}&M`E)C8+J#TGn0u3;gZ3otTzAYFMb34y5acg@M5CL@x7!V6DRVVF94g|1 z;}P2P 3-@G`;PdN(rbcGzjfiybNOn$ z-W(J5a0bCz?-(3Okg7~eV(zOwU^D8?>c3HP9m{zl+YV_+6*;K5h(I!rET=Rna_*NG z^Z&m7Df$nHb)y*Vd={*{ydXC^AZL@6`dPZeLkPUyR@vsE3Da0UPGhUxblm8nF_G3} zbx&wXZLR2Gwp>Nc^R^Jw={DgH7q?apw1fyU;`dK9A8@2$24k^p51c}z$H3 U!WxH@LEjUq_Ql9EnMk$=AAnf+|mWK0=l{ur2VYd2wi*QM)^fH$0 zm)38qCa@04qaGaZO23|Tzq|fgms_XDM#hFJ60GrzGpTF0-r}Qd32QuMiRf+jt6Ot@ z7`; !bY=o^`TC{xElg&6x;aW@D>wd-LLrr_80Bcs4RJ(uPh<&?YM} jYA347}YYk?~PTs;(TjSZe+5JBgX-l6hiSI?((6X zW3w>_p*xJQt6LHA4esXFX5_23e8Ez3WWNe@_U_7c@a()9x4-emRtMy_<|`8A9EFH3 zUe-{llLgTNB*@+eFcEPO>v@*zvyoFz%Q&r8Sm#a!SHy0Y{L_;L?sy*#3BE=dM&O(_ z{@rWf2ThnI?2n*PStbnoE>)?ux3lv=YDPwcP1q{VNlg6RZ>-~58yXQPBB30NGpqr2 zJ@Y1^4c*Q&mM)cYmH8&aRY4G Fa+me4^SPM|P}3xY&4i?kOwR$GLgm@=CD9y=w~)i6ST=UtZLHJl+{idegUD2hxd zyaVCf{EtO$9!BL&C%>+-7fG_9?P$b!QxK-3eJ%HN`QzcuNmtIKUUCfFhmSQi`gxK{ z%k*Se2SYzYF!~{9=dvbs9l(O+>~5^3W5Mq~!(0oH#lz&>ZFeiwll0RDnZ*hgj%5x# z0>vmz$dfbg8cdv;H^x^J1t{W&DYidd1spaF6)q}QdfXrDQ>5`OA!#RhyZ*NSIfFOa zEr@fkK#E^Q0%YJWKfR`3UX%w1G?i0f-QYTOyb1wFhY{j#2*#TLpOIiG_MUgh?Si2Y zQnogT)qj~J6Tda|rzT=_L-?hSVFv>?r<5skh1usbN7BY)vu`8ra!eqycWW-ZMt@DW z*@U`uO_{_92-b!7oYkI#OF)xY&k#dwa&sP(l@V6%zI=zAonyjm(Rw%ZYhYprIUf78 z?|mLdAR^$tz3rTC1PvHIJv3cgV*>iJ WnW@&13qI2@EYm2k z+CEkxr!=LD Vee3E|jy2Xz-vfjAuHfzkt`vj(aUokQ% zFI4Shv^*>CC)vhjm9rSyX_K<3j@d4#){ +P9^MFlX+%TsixvQ zA!BR^Rg7gO)+q3S%YTsKq+U^G5wo?Vkl4`BtH6)ei@;dPmur)j?^|YzOAPEIw-2=7 z&}bcniG^!dG`hK);MP*~i$6u3KYx$Ko%AH8lcTYb669+TNgC6kV|A#Y_K`7nO#gHS zPyjxHClWYPy}hoyZ+&ZBTY@I3v}cF} @K?hA_dgg+8N7db?_WP$aXw|J_%d2 z_l(4g_dLUeh$gsil0Bp=IRAa0 {$%ugm4mb}Le$>H4L1wJR*dnQo394A z=5 n)vDSDR(l76%z;^} zerYfjxOY_{B3%mg_f1FWGw!Ms)w^dVYxACN>+jfmzM7t NSO zi9XPfxnH>fx!A1%YCK>^;)ya0C70_&hM=~&Sa-FxeqQkftxO5hut3{o-;f|#xkAak zsE*$4tD1bm{Z0K$KX&!==3w1)6KTi_-C8*j>^Pf}$msaogn;e-)Y#~rlAtnI?HIx; z<7jNvidY6_d0aE#a$`>oN~Y|8<=NyDzKjV_^~8-U0xNcyygKdRgY~4h_t2tEv%U>6 z?_$}@I0-kGhFlqwo}_7dozc>s5KH#geC;7QtPFX2zx(B_J`tp|R;#`69vO}tL8hZz z5_C0F=;d$RYukMVA!~m1pKTUNm%IWt5YhNP?FsEQ3*K=vG=(Y?8HS53RlJ5 2kO0TXq@V1#VSH8onTFD})_4 z`IAD-376tExdyai%eObblYy&yTwVb&BXoqIiOYw)=VTX02vPM8LwffKsx2xv{DU$q zQ#RU=3>* 1 wA|2UQjuZOgl=4sv3_``gz8U>x_HJ@a9O=2 zkQ%qv;;X5$8Awk_L|Bey2^t3*@8><4P!h*O7FwhD-Qsc(!q$aV-FmbS4PmPi8dXQN z^FTGKdDqQf$VV>KJg1@IOk~jRff78=V8bUfozo=_mv=s`_Y=`5RVGrrzgT!J;fc4q z of!6O=H|E#rEaB1hAX0+#d|31 zE@37`8Mu=HMdLGG7Ii960$$1eg=O>0lhjP@RzVMDcK@j-euKcyI$m$Y_%#taV1g*; zVg4tK+Va(`LV)qdK`k^{h{0!Gl$8XRSDEdi;L6}V4J1XnFiUe70-f?G4U+;BljNsA zxwSo7>} Z?{~kGLb(nkWTA>*CH#Zfne8_&ng0LaPipM7TwF?Yw_`Q~8s(`ceGNhw1Ij z54tTDUT<}fR*o)~&PU64;OWf-$dzS=kugFdbzZy=cmhP|gclzv3Xwyls+;*(OTzTY zv{DUdf`=6nQB>UUTc#a1GSZNLdLttTRwGs=?+C4D-uYHbO{g@k>d;1AMJ19@glJNQ zhN9ypCyHyy1=SXaW<9DimGeSLsU<6IFPSdT>^wum!^fpQI}$C_zGR3bIj)IQj+D9< z4@k(=8n;($9ovHP;g}D=z( BLP-XB16Lb znXQ`Y8Bpp5T`q08Q7SBb wyVO)ll1zE7+Bp+dz_$a*K6CL#7ldBRxp%=G zvMt%cpth2o5%&ul!%K{Pb*AuAL2ul|Tqt03s+^`udp$?Et`*( T-^ z C;cvX%?ZK8y5Bv{b4mN3bgPse~NsXplm{eA5J7efbnx zf9NF%_} Y;e8~U7PWyyaDY%q$Q4gApR1ub =F<*=m99hLAMgLX;&R|NX6fnUCSL0U8oiHA;%KZ^s% zF(luSU%uwNCS+y#occH^`(3)6@`XRqW`K{1GU-`%fD}ul`7t5xky|a@t8KI42dkEF zMvO2abvGOt*!IBXsU%6N(xG#%CVtZxh+CQR*;L}X5(A|-wOsVu4b_5(CTSosKm0wD zEF|7#pnx1QqUe}*DNvCf<5FY!$Ir-_ACWU)&<;{fuBYp__RN8=@M!tplfl36doIXV zw+Nr$F33;3wbhqH6~T Qw#+k)hO*x-RCQ>jU!-&wVjpUA~C_0v1diUR; z$O_3cQ-={wWs`~e!oL9#zmC5j)2fzlP)z)DRkDy)XhkqV`JeyX;nM($e@2LQh%w;M zW`zCEHzh(FXC5KKgv?(;Rb@1$Kg3+-7FYdD>|*+yjz{EQm0y1kl}VK_5G+K~8hcHn zp?NA5YQ*OwN)H+s4v)(;wVv9(4ZxiuUe$5qRRSGg{}2V`;rMTk=eILrL hREswcBDPNeP1m4Gpu28HxHfb^%u48akiPuyb>B+S T3yI`g!Ivgp|J*{%l2K7QxTpf}sh$nL0oBze9ez=&7@KYBE>J{GH! zmYTnZspBr~o7YQLn4=;7`DPdOWIy~9>*4VaREiMQR4K~DnG!b*3^{DDVPAs^5+zU2 zEOpZ$KUi&)ZzI6IJwb}w(J yFrOf4{`S|4dk%TNmM#n}E4jVq^Q(-~f_UofT*8obD`R+%x8F zSE5IU>IOW|jOU=33D+7OH`BOW1)V~&-98antSw8cwPe5yuiCljU%u>!F=wX2zFu5? zB=XxPGY&d)lTa-V_IvN{u@H_fUV=!jp;-?if)dY#jEwYX_;D$Of(3tXb?c=6a72fz z(k0_OiO;xNDDt-0mYdY9FG-p3iY)xeex4tAza!!_)jo@bjSU&3t2egVWudoH$$%VF zK)I50bYpwhf}ilCQCphCzpczuu3Sm-{?mi2bjgljWM@v=L#ZhL?~Cto bwd=q~Uo zzlmw9&gS7inS6ogNcB=NPD^^=e0tb+*65P=`)qa8G@XX8U*43BCt#r_KBD!2nhkTQ z=U^%Hq%Y9A3J1<+Fm!+*1XYx*pS5XAC=+G*VfrqcIw}a$@%6!f^5K<^rbLBkeXP+n z7?(9(1Iw_eam{BPc?J)>; zS`jL{z$3iAZbx(p+J#dIzO>ZjkGrRCZG&r8< zego0VM{(+U+u~OUzhq65^p>;FKJg)sj{7rXXx{8Qm|6d#P8`HlIZlzM!Y=GxA3L{h zM9-j4a 7DC8#zk&gDVbl=&MPADs(t_U zf@A&!g=uKG7LPSVmQ 7hdd5LenUmzk-lFVE5o zgLhwxYxCW%E(eqLs%waNE9z LR` z9C+uONoMGO6z%(1&@W97XgGHlENZY#q|3cxHE|I7zRzGa+!9KjM|!c=B1F(>Z)o~! zWXC)*vZ&EmS(+ZO{^3?G^{em6K-YiQT4dpBsn<-(OAk2bJjmG#S=2v!dd}RjijA%M z&YZng=Q%wOY;Ya8Vx(t1aLTE*JSTJ=Tg9cqpd?lka{Lxx<$pegU4K7g^Wi@cZnT?( z2%`nblF 097OcK?L;4ydAdxeKF?xy{W* zyE3WNJQR9x&7jv9AF#h^+#vA?pVBmW!Aq0ZArf}%JKiy{E>p~)pLTEqC-4OBMjR); zmPXAD@3qj8C(Ja*Af&Z^7E%J)JfwfWD;Vd @L!>d!@1M(LPiVAo6{#KQlZg7f6RP|36s>IP)~ `Vf>dKL) z;%b-$VF>FCISsF3^~3nHai1fmD^hP +7}762Ke4R;tWA-RG*aNR4=z}e&9`z zWn>x?>GbLFjfeL8^?#$H%kB)$Z3GopXsai_*M2_FMd76g8vEncZG&b@g@-2R#zihy z$V5PuNO$;1Nxu!1iH ^YjrokOj1 zl(mH*id>zwUrzX#SHi%Ac&K}uM0u!IW@?kItL)Vp_ey?yA6va)m7TTxcaC$K`Qo2n z>e}CG3TcjG*3Ld1_sF(<*}6JaS`B+c`94-PI1XQXVO L8kAK3{WD`WAz zIyc8yoU-&fqn>H|(lS1hKo|t)MeeAb*&j&Jy}vD-ku_F ZOz~&h53|MfYF+v#B}O z-WpvQhZQhiYVC r=5ia)*7VWVYhaV^5OW5tKDIi93ZjJnkEUQ=C5-)LooKOC+D z6Eg3FM2 b>mhvaJT@A?L3^+C=q3vUEk#c)!Tv%dN*#+tbo;>|;^CG~{|w z;$#-lSJ*wr@E7*`FTdyqE0)zTx1?i2MD!MkIcw2%*;qJRXqn2DI})gu>7#csa;d-S zOOuw_dg7*7id9}a^mmAaK7=X1iDDRi-(-^0DsSc0(C@8O>{xOb;a~k(XECKSZlz<< zi)#k93AzMT56@*v>Q~t-ZXvEJxn$=2TI3b}INm}6 wE}+RPpmj)5&o3Y6BU)Mg2Mn z)L{C9x4i^@U;*iYW<^zQH5oGS`vF;EC?@uu+E{Q`qw$8^x4Xz(zX6+?vJ~Yd09Z-8 zf{l|~;eN+!1Mouo9&O;ae!9b)`#Q;BSb2DfWO_MBk?Lf_RjR>hH) GS zko(f1tb1LN_qA%iZttGNwd%~_Hqi6^r(yn!7E*!N9jOuj1Q&Fy=Q~Gh{1F}#9)quc zgR&XC S1S8sFRgMmxEWO`|-xKUUQ+3(`wr~{l^zwR6d zWprVrwgF5?ENPP{7P}Q~5AfWh705jp29}M42$G4KS|$LT^~ex`oA&uE%wMB+r=u5< z !G(>+{5;-+$oswVDGHs?$)Ry3F=| z16}UdotltSD^Z)yAWj84#0M+vbhW$#^^MdV`B4}IEo=bzEjkBIGuPz*dMP1kdX8B< zlL=GQx`#5*Hc%i>fCv;V7)b4P$a4v?jjs@ro!DtIpXD7>Zm_d%d>2 zVr$p >d&Q0u4g(<|o8! z(42oAhvyk4+kmK N4C@rU$tI3K&aAGnl)GF zO`TlLmvA6AJLk|UUkM^X^#0buozA?Zgt5#iQD*>_RO2Y=kY_9zuj!21E@69O5h4eT zv~&P<-E)63s%Sba0Ry{_&i6yo9eGvw87jU|b_9KWbUaD dr!tN%$+i)qt0m|ozOZY#1IKRZZ?5up{z@LeeBva^3 zY+pt-pq2cqafi?qFa2I+g*igkf8GJ-UQNosTYdKms}SSify9x4)i)nMsKcLC7_6*d z^7{ptr1p4rd7P;Wxs??)d}q;Vyz)!eQ3zK>1k+Z3p}Nhi0I1Nj+vTs ;A|w8|&UPz1W=J?QxP&SMz{M91c!Fa&NX@ zF)g}n$88!^miKk;%=fqYq93EBHb0~v#=ol{Y~sE$4*76d nzeVR8JWT%CGrwj=MH@B%9ynKBIgZ z2K!Nn*_Gk`n=ZB{ZlK1$7LEzw?D#P^UsD4TKytvOXE2%iEJyE$OM}QS`as}rT)Ae5 zousk mNU?`I5vbig*03h!)QSL +?T?unWoh{heq@4tT64emJMw4CeKF;-}vd z9&%LXSLjl1Bn>2!nSC*od2}$u|5jDHy-B2NU|^u9CQpiX)8 }e|SJQo&z&&^GO_#0cb`M{n&n~L=%{qCbl)G6Xv`n+d; zeehE_nqT0!XMg&4+vm-aqIGkHH>#9N$kXjiE0sbh;A|%SgZ9L|O`SvWEGXQB1@>#i zLK#dHA*>QH>aQ=ulMk=N8I?lwQ5zaG4MmS$%uAbkO>38v!;$^R>Son@cUMIBH{*W4 zbY5|YEjzmB?H)*s0Z@%|@5Y2;w*5PrEnLd%CG5&`K{QP4j}FB9b-v+of@K>Lyw6V; z>;#=5zb3F;Tpy7#F7B)O)YT9vo+_t?ii@zRyW3?D+7MZGx=yEW%WIx=gxd57Z(s+^ z&j={RE2oHE1J`{B3b@5cMH^%n)>n^mliGH+p>{hQ7 z1~-lbS$%;3x4tAv;1fQ(< <8u1d)e<3lYRzI;2@zX9&8xWt_;xp{@ z*PmOm^Le-=HZ&kXCkr^b!VWBngauN^neAnv@w=2`^+AMSK8nE;%9?HMI*Z`q<7!fv zYZ2jU+mB9{->2&ohr<*eZ^WfNtfa#f(T{a4`~i*&mwgcf?K+v*soZ4~yaR^@Pq&@u z*pHvnkc<>(*`WbEU^*V$x+YPPF~267>A6W3+Cqsw>cK)!r?Jrs>5K!mxv`afyW6}r zBd4IYWE4ug#EjODprFDkPI2T3>C;`OD-$#T)9jNZTkxxW#q#a^?NZ9S;m1&gmB|BY zH4GTO_);cscC~id Od%%dho+CNWwfm?hHgQb z$th3D#Task9P6F&T2~3}R}uO`4A*|ZRj5H>KD+9ML(3CRk<^?aMCJ<=k!(e-D$N zMuDpzr L4Rxj70LV<){TEGtoQRBMIMNPn z2Jftqiei%b1If&)!U)+o56H?Z{c O!;ve^v)b$8QxAL1__r|b(&<`-cHNf~PuW?Gm>wO_XA}&=TMSfatfqUsl#Jx}Q zEx$_V;@Q!8ON5BKw?+&8$K(Qu1sA00=Jct?tvMl*?OO?&typm`6eA7R`LxDX rrR ztX#VHJ%|l3{~@*r-_IOlI?KWM^Zaig;$a_RhJe)skyEf5r s6w^$}t@7_)*(oCS|1UGXnAYzELc)1IKn}ga1=Wb)F5XDYnSP=}n(V zI~;U=o{b6<5x6nb^;iHdbIyuUa;nA0HCSMZq<7D};L!bO4UBVu5s01f8NKTUo} O>I2PUa-vdM7&vrcIULGmd^ej+bRaSm{b%@2Lo?&`*`V KC15X3S(Y9g3s|KbbO+W|Kp(I$PIhMxuP;nN0d!ZP6s&C6(@)oSL!r%nrvY zlQ6*nkIw78p|Qtf4zdaH^G#-Om;Y7&cvRG7E#ay(c<%d*yZ*2)TwQSqfKd`K9y~sO zygxmDa2lfk!X9N#2vW8CFBTuHUyVZxX{BZB(sB*7z)<@M8a*LFIXtwr3z2M zYF?f@{+VFY07K`oC(p+8=%^$jW@+P`02+MxukklL-*2Y@wg@18yMrP<1)jlmoINX+ z^BTuC1<73Ae-)BHVQB~nW7c?4jdUhrR@)M7Uop0}M|2;X+$dPqcAGFQf3dRC<%6@9 zjk{P`zDnr-$A%gQ<(A`p5A~J9ekq8S1iiEJdNWf{SqLyhwfaaRU5SO2>*;jJ{p<;b z)SX_lNGGnp+U|;~^;qSh+Y0GbzW)ts0O7H#O+Fn%MXNp~MBYPdF+t`rrGCNG!NJtp zhyE2l##{xGmy#Oizd@L}PeS~Q%>NJL_9F%FD? Q;C|HqON=q2V1Bq(OVn(7 z*wVuAcV6cHCp`N3m6BRdDpR%q1CG+7|BGrdxDwOOuAGW%Mc?KK=jXpUB|6-M-vv`j z|66sa|4VYnxy{;|DifTwME;ZdvPH$hCb9?*RNa$SoBRp={-2vF2a4KnXS1Un+QLa< z|CgdVg#NU~B2MyEl=S}+XW}Ia-BLgPxsrG_S_C~(5nZ-viMX1M2jf1b4#h5f`DOY2 zVnYKLk*oB7*AaLBDv9mj;G?D_XXE@u@|TVW?>?psHOB#x1o%^Co=!8D54G{RQxL^s z|76De{+P4l1>4Y<(Un%ng0Ebn5HEWV!an%MY*vzfF*FSaE$)+xzV~1D>~I1v>{ppD z7^ZK<$@>;qWjn#P2hNnZS cOgrPWG2M;-@)aGQg-i@l16~de}3Em}X z2t&dyGPkMrU2U{tPYswb@Q)NoI8wGLwKRNAUo 1BNMQ0aB=Mwx09##1fW=yWvhL zvv6xmaOit4LREr~e< 4H@6*D`ak*Ff;4FSP2PIuZ4XB-UDm#C zGWW+hkZcQSE{gq}Gtpj+Lw5FPw96YS#q5$X79tB^!ig%JT8fRV8m>9%cg8#3-{tS_ zYxT_Jl$~TRB5;v+B=XkMWT*sv&D6x~RAg3Z{q2&q;$nCI%<<1u?VtGih2449^EtD- z9b6&<8~Yz#_I@%Y(ZoFLO>ud>8%JkG3OihFLp9mO<|dpSl?~_)^rxb-;Q4;WWi#O# zf*2#+f#VfEj?3v|Ul*!`0uA7UhCY<34^*oY2rPHv;2d9HkHEsm?NF7KacXI0JiAZK zP{kP3)t%TmI%YiYA50hH#SHu0us1zc=txU@NKouoKHfFe9L?X|528T^p>ZzCNJ;JZ z8&1JC4jz(dzHcdaj$q|cOUt~sRB}AN$hit`VGB2~M*c5X%`fC0Tf7!81*p3D;j&P* zgQ(6z6sePBtBFZFNK(ybosyq#&P{`PUfZ)qxpAVXxVW~2o|Ns^YH@+NipP%^`8JpQ zam2+nZJ8CXr#iqwy{VL*UT9DdGf2M0heb_7Vl>M^ys+%g4mOif=Vn)VQ-;H*o1xIF zU1fS^W-c~1O|`ssU%h6xhcI*s!)NMPb+x=K{)?x w+U-1sq+U^Kl-JNIV=biC+^K@8Ty)0^U#i^5+L#3D>FJXmE(0uj; z( E^;g|nPA|H?;b5gGqCDF6@?`cs#7<03>R+7fIu?xycoNl| z%zLVLrwxjk^!^r>4Y>Wa^6R9@0hZv`tK|cj5I(By+qU>^IdC hlFkR zJtD5(de790`ofKA4@?aH!7YS|GH&8It5nVlWS}S*giX8LbQm&kfY$piGiRX+dimDa zD&KGOm `n z(K>_ULqpqF@4y $J`X%J7taWXP3$6Y0(EZ7x@ZL zKv6;>Mv?m9z?R2{&!f?gh^XT1x8VI%bsg~Irs<`H1@ZVqBq`wW`rzuv@I3g|V2zW6 zR5LQF%syjQSETkiaj4Wi-|A#NV@oJ{wKS5$PA$n_5;wbt 082(T}29 {odgNlAh;D55nCI;*IVEx)$ayw># z2#XcXa#At#P%78bnuehGP}U48~V)Bk+9dh@?~Y3#cRcy*@BmgeB*j_;bCoU|n) z@?%ndhg@aca$eaF^DdSO?Zcma@SZ`5kk1`pJ7K6c+79lH0p6xWhevqCyzKDk2nW~I z0Fz8TM3VZQ60y(awG;rCaXd|Z6h520Q)ca1z1eB4WYJpcuo<(;q}eU=4c(T=ojbT! z(*x~)?^k(=VvYW|t7rd{j}OP|*u#5z`ad)@a$kI?4y7!|N)k>bgkT`MRgO{%1S8Wh z{t#TOGX;sB-=uO_jb0mcxNN4eNkshCwjhbb*VHtj2dUGV!vr%27*M2~(?2K{9fD N+sIgR~W*XS3oAh6^X1t}yt($YduJ5`L9UY_KfF9tOr{fd?F zNPKuUdr|{o0wZNi@wLAbq)sTEScegU<6~P-nc7xUiIzx5RQN7QZ3^qWh7_5=8$+w7 z0FJpK#g0Rp&jYoiJOp!7>;wX4CvblHj?c-XI_rWX?zj0~jnR*uS`k((PBBBD>z1CT zu1xSa=X9wUY=<-Iz}2024L-A >1gM0U7k^BDb6@58b!(!;6Z54rAuiHmU-6K^Zh{85%t{T^f#Z z-|yt(jcTK``TCXgcTdxJ8r};CUT@7d*x|^m^HL-Y8n+KP=*AzY>;75diaJ|s`2p_5 z76ujY;NBG!blQhJ9AMZLB1#%!6uVMWUP$DoY9}cBnGx-4LBrJbwRX&6C-#|h$YSz^ zxe|q(7cl_Hg__#R oO&U)AClsDzJ{A`g`SqR{pH>3W3@vvW7vMR0Vk4hs( zGMh6MQ`0x@tlwYi1ci2V3XLelNk;xJo19DpCw@jjD}1<8XflrXOWIXMN*%s=vdt zU{8-o_jL5o9iGK<7`L-pZu0Tm?%V0`PQPL(|KrqU@X{NNhpAKbxU=#QfX%rwlZo62 zlT^w-WA;H0?`$+XeEFQQ!~rkUd&k^}91U*NUtXJs_2!A`X+#IZU#@9O&yLpwC_1 z67p6!v)v>M`Q|lN@g*%gcX7N4e_!NDy0ob748{zA(-+Ws>#d0|X;Ks$=QG r$dR%SXSb(dSZ)eq1ap z5k=o{Kj#e21$p02Qm`&)TXvoK;mjmZwtq>*olk#!Q|TE0gqLT7Ql7uuGZP^2<~3qa zx1NHzaiUHAUFrD^By#(luWx9Q({46P-alJ;Mk4j|DE0O7oAk8Tf)fCI;C|}AzBV## z)5+oOR3Pj+X=-I^IQBGw#|eLP`*?RZ|51D@?t!z*OT&KPS3*?RXRbuSp}zMUdQ-`? z05Bl*Oo?kPbc_o%a#D^OkJ%tA+^ti;t4B5wEo8;O2qp_xmaxXz+f0Td0irj%pGZaM z>UJdLr>2IknNCW;Mb*g$Fw}&(=pK~pfO*l`vOCu$Q~&?Cgzj{k=#%S}tJFz9QP%^w zoW}lyg!C( yO(J<4Fd}iiZ&9E3%d2`47m8z9bX7iV8DYA2 zGLX6~oU6Z@)B0A4<3xBeH@z~d*F|c%o?!?ydvDy^acL8-@KnmYWbWxy?q>Pbfhxxl zc$N;96(O40&Q|1MNB79YTyJ5^pH>la9(GU_#KY~+{Ot$ZJJA}RmKQV2S3LaMmaTSM z-1B0O)~)xCyI_rdNZ#__uS6?p1NQF#v)t2G0AHUQ5ZOr%s`Eb!1p ZWDg9q{X^I}oA-sH=ROl 8ZpNS>*%Bc@B+Q`LD?(A{2vi#K1gn#d25>Avqf6kw) z;G4S(fz^*g*V&bAP$sWpbGO54IajMGgk5J@h9!18mPk8HDc`I1^bPgjfbhI%-XC0O z)S)ZT;eGI|y(2%BO^`UXBKI!}MLbp^09m nJb?hw#=mEd5L_37sm(d%63z}pS+ez_&v5<`7i)82^dQATNv` Otw4k z%!%~*?6ovMHgsmT$+?eony3TxLl_XGJZ@=kV;po_r^>e-Wl5>82@u^ZifV?jt%PdQ z<|ro1GebR^UF3WIACpu<@9wIWTkNMJ`o)V18}wF9B8km$RY#ump!WB@?sY%80g_WA z0`P5(CZl<}OQ@=STK|jf8w&B+;uQNTNz}s0lhV1iP)QuYWusXB>>hnT(e+iv9oO;S z0cbT3gNP(er+zXJ^&XRrI?;Zeo>SrZX&btL2tXU7&)xgfP-8f+F#E04&Jia59q>WK z0fCY@PNlus@6$BddQnm3vq#8d(kxWd3N-NEgDwZY1y2B?+o{i)XLnVJqxd%@peW#B zh>3uSN(X)kscv=riIig=Q+ $1z^Ln0 z-xbI#@MddWguT-wZNEDO&cFXM$bBiZj&;9*4U5UV(p3px!+$OzxqS!KeS05n=C`U{ zmHl*F48?l5^7BD>rl9b49kzJn%FR=_hFRF!@APYMRHK(IRoN5D>-I^pm+6W?cfVI) z&QL~_Z_^@&(9OMCz%eW^FiEnpy=zu1wM?jW`loF&TZ`D$Ll1GMgh5_j_QJ&@g))Tp zm8SFh8N@s0Yvojaell37N|b5DJ2Ru+L1}tMb<yVW&N82P$3_a>e-v(kYqVzN&Mt zKM^yc#=?@N^tA{N7IrpgPpYyN{eGD8Nx<4{3Fj6f4E>1vEa&5DHg!OMz-RmU-?KbN zx$3tqkJg=ERHaCbG)y?#6e_o*P+diDKH%vWp>#SFsSX(r8q)a!df zGDzSX0eihzawZG7{fQj&DO9vDQ8Oy*;mjwJ57#!TL&DvFD5YAuA_squXlVZ0nw6xH zVN4oL1^vcVoo(SP@XeZJgL_6DlF@4Sk2w?`u7MC;6UctW&_~SilV+b?VV}0yiDoTx zA5V7NgEj){j4RP(W{M9-{=sx< R^Z*Ou8{txPc^FsjN z`X75jHbeE{KZ5;VoRIHds=qs=xPMu#glNfh5Bk51el&3-@nMQ?PK@HN?@{hN2qH|o z9`e4e*G!dcT*u){{F&BK! Zf@L@F#hs?3TMJxwu7`$T4PXH#!y-` zntn$62QWAZD5OwQu+x{mwrj=~7m7LS{|P>vGtSCB!BFwU jJv^sPjA4e?+i?SVPDvpm?6=kt_)D(&qGYMFRs7}8h!%ebWP6jqaNla; zSJ|!9j!X0)O0Q;Ebw9=#6Xa-m$Tu+b1->wyjiyIFl*vS_&Gbnz&B4>MudA};Ur1Ly zHU;CuTs>7?_N?T}mSD~103Szq%i61%PukWWjsA~=TM;Q(j$+1qp+cq?Q;})YPjS=` z6W5k3=_lX%_Hb~&MBHr^GPCX7lK6q+p_;2(P7L_pH(si**j`lw>1<9lh0;>aVe#Dd zV~Tf=SL|6&J_dh|?c5 zbYgXUtF!>N{u4Qg=Jb<*-!|9pKuFSPIYbuQWXxJfzu>G{;8I*)Ht>ci%ZL{r*@+H| zT52s;E*IO?cQlW+Soe1$s=isahsWN-00!X27itjSKmWgvZts3xq4O!R%q{f$lrYmV zy~=;IY(xv>uvq&T8}^N{T=e7aq1|3L-}UMyIs8l$Oeo(@Hy)=?)XhzHrm=!urVG)5 zRn@3cTVh(uY5{)#*s=x#HB&onVQ6*RtKCjQWuKCp+YaI5>1P{>mT!zvh?kcXB7`jJ zpRJ7Jf_Atz!^Kim(?JyZ&M>3vzfc}bb!=@AQzw`?eN#s+XRzS;AKU-Yi#*RMaY(_5 zNol3)`>8P_Pau%rxpyj$FxFdF{DqVT%n~e(lx%r$@A-A;7@LxuI)6(jlnN!vVN_2) zP}GG^xr6ugS)c^epS|q5FXkuUs7;2N=+(`x8XQ@V$$*O6;bDweEUIww<=)|FTn9?k zFV*+JX3r55Cuc!5NP3E=AR?+<{-K(vc+9dSxP-LM)G(n;J~%RK-!-qAO43atjJwjA zi!Wv{XRHil7zFN$>A86`T)?58+IfdhOTI00HO*<&4GqQyRLq7SGv**FgDZ+pHke zH1-{hLL}K%DD3X&4EF0!j}scrohK;gVn_KkxF)Itj4OsCWIKO~Calo|BTib!WxSCr zBy&n#E-tyl_cndLNVovj(ox!qch{VeylL})KJvNI!)f%4(-ebgIiH>DTj-wrd5!5I zKB%PMAos6k;t-NU;<7lo4h9Ds^lVFsHWJ)k{U+-ahNsJO4=^D;Vnv$yMy3hg
>K;B675^txWBV4J~v5zMk!n!0{eqj@jlGWZtBGIC$ szz3 zxX3;Qzpy%GCy^nXjvTT5Xs=` zN&O?@jwJB9_it#Hizr~WqFm;yxWIE11-JDXf|ZF4@81m+rGx &ZRImQ zXaJzr*mc;ph63P{l!;NI#!3+rxqc3V9s~v32L_j0$Xrs2=Xo6G-0>>f{Vk^QDtV?J z{Iu`qjK)S?1*S9#DR4Uczbo1oFIw-d2x(Xo{W&j7KCJzq{jId<8KwiFlem9*l`!Yc zuM`V#sm@;bWS~hpF6fHT@{zSj6{5tRi5-h3e4qzsrw}A&B7xGs T}bam*84G_7CRYrlx{K_no987oqmw58fYhBfdt|OzseCF?%RGuh+m_e z$+{N_;4|5*v7Y6n00Nx}bYg}PAAEKC%K1TT&Nr3xh$J`$0roTl5dG2Ns5`G#Wsl zSrPJ%GwPwEl#RD>Xa|QCT1W`DtCcio4B5?ok&+BSt5so%P236TL0cmfFs#LACG(GL z8`KfuKdCDgl%Md9+gu@IhJ*!YH#D>DC3*p(945ycSvdi_;XQbv=HDL_ieMkji;v}Z zjM~u6g#7mRFg26d_ft;&$WG4A1p(TP)Zm1KLX?7J0GL&ef(MpT06Ba&gc5zl^}akY ziLDF-dnN}o%Rk%&Hapmm8~d411(1MsntoCEbL|cB!bn<2H}waP-7&vAPHGi|A6PF< z4nBshA)8MR;^PsgbRw&|>B*cvC%#cx;CW1i1kwOeRDw|jk>|7#u6lj;9)V9EJ+^Mm ziGeg-rXSo4vP(F>JUwiieU&ss1Qg_!5(>kwLa4RN_dfd|$3zGlK0fwLY8{ML^vc|1 z^NxHwKFm;k <1Ov@9u- kx&*F2KpVo_KIM~n`WZsdVj!ZVE4g+ z56a0B*5*!^720zLKQE-{>hSt_a*Fd^oKYV3VU@9h^xVsd#Kk-lcn`c`|DdA1el|?2 z+!lC%Zw2AUjFkpiDL$YJ-fIt-_y~~ mu!tyBXH)A$LeEkEr1lOO z^$npFXiG6PuAlVVqJm(4rMmany;LqF|7sQp#gYhP)0DKrx!wLmNXmsF3NE*ES8_Ox zrp2mlR;MJHRBG{{2tGM_XzB8h=TAdvG`&1pnq-Xb@S!qFMkh8Vv&>{k!(yG8rxWH% zQFf%GcD|jJxGMnSKi}IfJp$a}?|Q*Koh8$oG(uaE%mSP1Ipf4qQ2ZPVIFmAP`a-C1 zBLVg#l|tUCnuBfVL3B~D(56D()>-z-^VB*Kb{3zw9a2T~Dl4VHo#l#N%PSPwQsUym zneTQ@;0wEL4Ua!op?Z L8io~Yo-so0R?fA8 zU~tCl9ey6c(zbHM=;^n$y-(DlBd;oHKrHxQ&InvjN!&YF p6P!N)cLgU@qtnr@E%r?9qE^PV zQ>(JSbX(mUOM}trnly*`;MDv6Ql6B_{P?^tCc1AUS9Xg|Nt^31*RMUD&f8z7QC>c^ zpGwOSujsODDia*q_e{zv@VUq{d hSy9WsF!GgQHySsh&v-f`Y_ncGb$LT7nW~QcYV6D}5^|iWL z$lu5THDp)?)R58>yLhq~%3Usx310lq9< -M= z^tL@O^JDXl4eFYJMCEXD0J$)^o@dPr7UJC%UG%k;&<(Q!zYqV+r%Jwp@}>=wUaGs( zNVo^?-N0UGq1i0ko4e5e(F+hReP>ehinv#Y8K<@7=#aB?p {V-{h>Qfki^#;me~U#2jLMlm?h)lt&ATrN&Ue2a84 zG?gKB=4`qiNA}Q{1wR)^HPF0>bh2zqCb ^IZFjN+70Tw^(4}u@VPUZB> e|-H<1VV7;Fh29&tPB9oG{v$Vny@5dECHs9FHpRiD>#F_dW+23jyQL?Kwk?5LN z24X3JzgoZm2Ts7d3CbM#d+o>MlM$O7Eo3O016K+jc%TQN@f!h(yOaqZ&};Kgx_4%C z=$ta5%=B10!h4YziAOxou>em}sKDa`9Hh_>a_;23KGwz)mQBF?&?4IYLKrAnGMWM( z0l|IZ8NdGj2|r_^!wXC7_zdt^Ywb>5yM_?Wjs0aZGm6g>8q-;_4IY%oHHx5Dx_zOG z5Rtex TQd#H%8kMY$~%06#vxFwum6z$>loZoa|HdVB#xG%2|t-`)-#iT zICF&KcWnkZhkdkVjRQ*d!+YK~u`opoekJD*-!8B7)n%1rS*Q)rFWt;x#|f2DMAvFp z`#;t$*iU+%*Ku0GtSrtZS1^t$gu#9n?Xc+i^7vLMTnsf3wpR0U6REH^vk HIN>!$oiXF9qzNd3T5t-AEc8`LEfUOHONTOJfJ&0lD9< zZ{E4J(hC7HRnA%qs203E^RaMH!bZ$04cSsS*O3b>$pX-$cFT=ItOX^i0a?~6E}k`3 zgta%mdyQ!WXC#Tzg?Q?Ueo6P$|9q9PhlO$ZkB>K0!30q#?vz=CA(17NpH9^XNixd? z6_4$Wm3sKk(|v;MB4ui#r~AfP_MnRMqa-m&QyOnydKT?J99CSwjRkjNapZ;WMW0bg z6$1OOH5n&-umZ6J?~_W-M_UWi`)Y18MV*7H-uL_*aY^|w`IT*OVAyd*=Rb-myXYZ- zU(0s;N+sX#+>9zd=1sO&<|AVLI`Zq{sG1Nr2I>kl23)pUw-)n>5P=G8 >wV}^`esYEy8Y)DOug6>iYW;rVTmYKP5v8FCI#5!T)K#+GX14A8Blu*27g}Ki zT3j>M#VXl1bT59pExC@sC)%*uiw5fZka={vGQ*FCfXBb_VLiLU?r>1f3jsbDg>z?Z zaCi&0ELBb(kF%`#zBI^COv)Lec_N>>ubVukprIOL@+u{H#rST$&6}=LXI3dpW(2r@ zAVNhYrNPwOL19LezEgm5G;Xp4#;V-$`LseaS!{;qXi;}Q9~%1iaBG%gLjB2IR%C>- z%oK1|w{Kn>VE2qJM|m9=fr9ce@x*bSl2BGS5+#Pp=JCB)-f)-lrp!8%-wDkWv*lkI z^S>qbfno?Cb-%V$pTbOyU)#%x{*thbV(3aPGk8Yw&od=i89sMD^T2Lbym;5Ox2hG# zhaX?bbmuGS|5$EynN$}Vx4OkAd3ZV4=!CP`I6`nGp(cj9b~l)xQ(BewUOo`{7JrEz z`T{Jp>^hAQ6lSuKm|NrNk>l-XE8E$4lR|`_3`F^P5(g^KB-X`T2gN|Ep=$D@7~{e4 ze=E1&bn)Wu?iYGVT3ezbYdLsYsBEhbEHAU@P!wfEKOez!o-c EN`X;r^5|DQfM?B7vDJ7b?)v z=99padfx%jkFm-Idk)r07}owFu)kbRpTP|`6{|ygd#(%St`1My03(wQZhU?|Qv=Td zPKRJaQ+~5ve7sfF1?>0y&=m6YqBb4s`1n##Xayrvz>=N%JEy|#DuX!u_R|KR }X3^aChnHU%|8XT{A4k z?Zx|YPrZ3w=>Nmu07_Zyx-WG0*JL-xDp_B#N7^k=oKE89B%vra2*MhPjsrW0Mg5vR zb;k|}6#E>VI%59?wB5=l1l=IA(v%T#Cw?DtC8Vp;)`^$1|4a5Zb*?Qnl~`W-<7#a3 z76th~v?NT>Nw#+Cd0S;~ |D}b2irex}Ni8`no5Jq2sY2Nj!l%$9wI?`FM9ugxk!%sAp`qgba$me^ zjd^!XiIAPVS7iQQN+M;*s?OqTT=OW(V+H$PGy|g%Kkd(cWsScAbFH$iPUU9~Y=tk2 zjsuc*4E0x` a3N8sblCr}_liF<(gKaDbIY}J6LJ32a|84~Og8p=BG69ZzjcXn z`t&;mgQ^GW|GW)RZK1}t` ~gg=y!d+C$ACg!`Wli(l56{{J-j zaKazd)a~R*jMGGtjOPS_prC%~GfL>gYCVLcsspsn{|cuPV{&uLjxhnmKb5YN6Yu@_ zF*;NuU6KpdcN&UGi77*EWt! ZWEV{vR# 8r?E3I2Iq6rEhR -ecN zIpkKrgJyDNrQU9*%R2MR7Z l}SpLmNc-(Uq^ zhh?uGw3vXsmV}oVYbH6jiEfRmV ~Aev5=sko}Le5@CLq za(da^Ygm0;b)PdjLat9w;9dLu5-$^Qv4SI$#qWF__Rq@(hYm|#9q%62v!`$DPAyx0 z=nX>~9uB~Z2LA)6wvDFnI;$l-g$A%_i+!@=LM!m*87pn5{x-EtNT)n7z=sdqxNXGe z)VcwIFLfw8>?5f>Yg&iV>Fl^|w$~?MkwoJqiGs9MGK3H9b(|=e82a33)h1g`39Yuj zJ|5i%uQ2NvUS@haHNHZE5gSfMg`8TSG|s(GW^`6=3)q`|U-dkgx+wm&jepXhN!DI( zeFd+sW5|l *bnnA&u9(rWcZs@w<)P5n);;iEpz(r zbFg0pG*mJ42fR(fW<8}1zWUGPFB-CqSbefi9oAQ{CTPJ5w`(Fbs^eIm>5XP-x!?5V z)T+=PcereDauqyQruUr%Yo`qrq-q9V!S_&6YGnW4Q@cv)wbAu$QbR+5FY8le;^r24 z+efc+oeuxL_0s(yc-D*z_UF0aloEbYx#*~l$8C*Q*+1Z#pToQMVvlj~WjZ>{pArV2 zyFX&IT@SERi-?>(Pt(6UP|Rv92b0&7aFBVXy&%_wM ziHsn29_7QLUDj(QQfIMevGy8030{2+9kb_6V<)wpJ`#JnTzkr!aPV9;tI@@iV%%|! z@jo(=jwUT|*_|r+GjHSLRFzwr+KYW;wA|rovKPMd-p?;=BW^YmUP gIMF!>Gu46 zDf6n!1uI|wx38BabyhWnef *&tUyLLSa7zXcW zp|$#XFyETroRp3+BTZ*`E-JZT>*=C>(20X~*~o@V*8GbL1#xI6*x+mvB>0}34E=Y# z9?R^p+oo8@eE?YbNh#~$y4k+U3=Q9PAq!X?PruVz#4Nwv-fsaLXbpysrv~W4H`lIW z4<$V(kbZj6i&>#F-}5q)k1yH^1tncMm3YiNM?LlOpElqLxDRhYbY*(w;kkbx1P!cu z*Y}=pFXz#FOUXAzPZKe>4vY7H?mB=o{~UJ?oAnly%TRK0ftT#?a*+JWmaIsON F;OmRd>5Emr^U8`FpX#{xPRK)P6Sc zD)j#RbAD03d2LLVFrGmjQhbU`^m`Ki&%oH4k3yL$s4>^&`pB#?8T`oHRq8CS&zVlb zuP0~oMwPNEo*HVx66tuuP|&NgI-Wjj@m94& {`BRUb7MVx#kew&XN^6s655!~qpv!miJ#h7Ef<){_&Vz a5G3-9S;zQboWtWW~OIkCUO!&A`gT2lOoF9F?__GGYNF<*gKYGOs;J)Z2H43So=2fvT%R>D}tSkAiUCaeLEN< zv_)uxIe9H$CM%%Pe&N!tz;M`#RXfeO2%(2o;{WN8q28{??pE)D1M(50s#1^7s(vs7 zo`y`&ZNL6w>0`9Y^N*gL#|1Ip0(GX-mz7g%^7{_~a`}5PlclbM+tcUc0k0 M_8i}fmGOy&z1 z{%&`g)~g%4ZG=WaES|UJwuA~8tXvNU?*sgH%1XkJx47(o{GBjrVe>lrJ)>iosX_zr zr7hvSW(?Rc`poZM&N?#5$UG2X&K{SoqtZAD*^u9*z_9)+lIX1Re;KX_xJ_nnZ{+*& zH(x!4z+~CyDC?!b8J=a`;#;PV<3bXvfm7Rzd4s|6E%Rw(n}zLKJAGF9k0IEq_GZhT zuk)L|;kj;Ah7Ye*Yf}y0ICdM;t8HvqP9sadnM)7P8`oZ%#*7~}FuHVVdLxp+%h?Qn z|5hZ!3oSm~kz>k^gOe1b_?s*qI4x{tqRCtlVLTd0Hrty1xUt0@8#Ynl#Ei+Bn;cb4 zfO&~|ixkunUv*5hG +km67*Vb^T?Zas>CdQ>xK|yE;fu=^4=MK?gEws)3ajk zaK=SWEpaE=c+ UwQzIJ?i)AY^SbL=Z`WIHE92SbWjD4e z&i&U!)OY{ gQ0*hGnIF8t`a?x&A5TDW4)PMh+K%W*R-J}~5H2jZo6qszY+j%X@%-k6PoD_A7 zhePwm*Mc;@m+Q0k=V`w?r?>Sd9fy@t26@Vahm*T@lPc{{0=lm gnAuv6gWv9sIs&$n z$3)L9+BV{|Ras}n z$Na(_s07Ma9B>U01zF!_s>s zI%%1l(%ENNV8E+_(J7asgmohgrtuw8^#a(V$*{XBb%buKPn=i_kRSB1$E5c|%E28Y zRtZia#*;SOnp!+5ic!)Z)o>FA;aIte(QZ?mZWWuDPueDIwq2UI>?A?|kxeCJ5l(H^ zADbV8xeS-VbkfoX8`5n_gk&Gu>k@~4tg5E@o*JlUIHL&m(0<_vU>r|exWvVskoDjk z*SR0Q(vo(37{U@k=o=EPcKU)kRrw%Yd|qyE49cvjrQU;V|4*cEOtAm3PfN3l7A2jh z%hEofE-RZZ^AiI`n7U`X>BDAoHUVav =OYSE^oI970q6;jK{X&j+jC^ zM(o$*KO`u&?sBp}N30IbiWsfjCihf$f4;=wQ3|Kr<>yUBW?X_0+f+@Bu~ToPxeh4g zDZwcnA*<*w!&!{rZ)iLyYWpk10n`I-mRTwDxYzy<)Xx&I3O~@O-Tw52lXJV##Yc(y ziF^UVJY)J{4LDswY93`_-qFxPNdmt@Hv(HNvm$HmFUa-znwHqLh#AfkRjF?Rlo%*k zK*LMEcE21a*|VZ(7LJ_G=P|Oum`KWvNBG6*NWY1t9QN!lj8@f>pfgKLmP`8aVccL! zk*P#XyMzM~EN)x`eOa46Ih~9UIG8FQZ@RuKgV&0U6jUuGRN*Me_iE4~RtSF9H$m@Y zH#8o@*|wdO8fQ^$vE^?TkQs6?qOWWr5Z^SD>aWp+KaIz!%N@7K6S`P}3pFu2tuzY$_TL~4$>OS>!*B#gmHOH^w3q>an7^+y)izz zzCJY+ZM{H2#{Hj1a>|G)ddeVJoiR*qN5hyCloKf+Zpd#$71o1P(W|?G5~R<3w~;@& zD;9UesIjE>e%)UNe-{ieYcnR$H>p#?#9$QBh4itz=HVKR*$&x*UKIs%kZ9+)U>Nta zFQ}c?n?Gg3@54j|X3k+3;Ej`a5|x-YEh>Y|Pl5APZhcPF(TR{Lw(4dj7-6*%c**k{ zH&k*_cTgUk#d*{WQxsm+Tu$Qxiy>5cWn}k`<@#xSC~k!EngMyM;MhaAK=7|sNpC0L zK>5e)Jjk_|G>-PzdL9CiAR;m&_)EiT?B?W@Fc }U{iaK+pas3F-HCZe>|s fZ+k05PJDWAj*K;}u}TnsAbUKUdP3r7pI-C2TXCxuQ_Bfp_YKx4@ |YHwKnSbRIZ3nuFxb*g%U&eP`}sxM6f?-&nUTa;(Y!{KRNO6b z4oa+6f`$xx@Omx)K){7b07``}N5{pLaw5;#9_C{E{Q}n_IghnQC-|iV0$T=) z{0fcBEba`mj)Wb`AqqaWB#e;;*|)tQ y^K}~2@NJ~d zT>8XtJUnTwVG9b~1|b73xxA!Q;nT9%5VTn0oUOoN3NuYaQHsZrcv#!%WG2ClGYO}1 zFLq?sA$rR#03?BU FO>%Pa^-a2e^g$M}YdqVkzpdKj!I76<-5`AXx``!bZSp}Q;lnLa)ck^J5>W*3 zc!ZxFOyiIp?~rnJ_Ql}Tg2S&WjvFX5;>svlja1xJ-q1GB{o)gZ=a|UI7OF+aZ$px{ z?%lR3_b$jvI63xmV{n#S&6(h5TLeA^+{_rQLn2*-4RnjRd;bG1&{e1%)M{cr*}KFd z>vVG^sRECj*x0GgDh~hAv;#;b96&DGk^{kXK8?oqb|aqNCoEVek_DxPV)PMXXRw#c zblO|I8nj8;&_KOatkUGtS66G8^@V2|=eFy>(#G7=unTCd3?Shu`$Ck(MHeH(xv0;$ zNO7&+slrEuY@g_+R?+ZO1C}e)n>7gj=cgUK=C780j~|{pj%&XxVJsv*F9$~IZ!FW{ zS|nYihrk8CI$}BCEb{r@$Gx71yq+x#WLt|7@lUG>A+R4DHx*ZZ$|>erC61!sCn9a- zDY4$3_~8OE7GM(4l7M_cU(Cxa?w*ex@6KzW v~`1xXMlja;y-=nzgzCG1CTr _bZR7*7 z#Qvaec4jldqJp)6D7p}(OvRx4mrK3*S8x?+9|q@U!uOOsd!l-L{V j`iQRd(cA?ikhwuoer?j6GO6go`IqpC#$sY%rC4nX`URUAZUD|(` zW*tgS7-tTspclK8y~IHy#(_;PUR@y)$M1@d{VB9tf`l(`_~D%5G8ri?2m^x7WjULN z61p;R!;8R2b*v29Jf;}7$(D?ZIlUZORI}&4kkBW6 zX%BswwGretSz1_kkzXwFDAbXYO~<-FW|ya4aDK&ZTflu$fJKLh9S}K0FR046VO~5e zz$r5(^KuY91cTP_&p5LQ4tZ!%JynOSc)2s>8AxeG%upk_+|s2fi_g318CaO8DV@nc zx{e8bV%Ec#>n6;v%%Z%-d+NA_&F80Lt2I(w+WVUZhZs`k8ZTpyn=95JGgNM_s_5dP zc EUXS5+^F=aNv;8V)7Y^{m!VJ%)*B%tK1Co?`ia;I zZ6A2kUD0hCZA?8NZfQkcu`H{_R9=}QL6~ErJ*Hs;P6ad+8&a-5mch<#Upx`0oF}Gp zNRsP;{jx(Hw|~jX^bpC;Bj|VxFK+fOShX4xlCllKfJx!(GaCLnPF4F;l)`R_5=T$g zd_v-JodI$73RYe=-DzEmZ8Pb(5lA_rcri=q8p9n>%jgk09N`B8sp^ios_;>9iLatB zBy4fhB^61+{-A`BrXt)t6GnPoXJd4CQf$xZ=S}22##TH^ TcD!iT@RoNt)1fj0RpOW( zQXeT>sVy}ouZ5Aru5cJEzXj!jOj>LF@gFni>wO~=b)JR`29O9-aiKJqu0T{uy@)P1 zplAet^;bB^mMqECJZG~ZKZQ7p+On<_XKrwq6`~-?q@FlGIVGox0yvxWV>>+YWyOr0 zrdZz6M)1<)SK#
{G2cQ@E9wao>eWn)~_+rzmQd&FEKr9pKRC>$YOlf4BCNLsphB(32~V zoa`wjN2+7LB1bafTP(&AJX@qib#-=Nsu05O=!?kcOCBrsqH&qdr`l`W=xXP-Kmi`M zP@x2r73+b_U5vxQ7~dd-uhg802mBNy$!9?bjrr~IvDuLkkBcFLbfB?}Ox|6dCRK;g zM#m&3+ETb{-|yUfe>$(e|Cwd3FD`mSr6~%Z$hJ3YBNV|?^4WfggqRRbe<;Y!9d>XV z>YE^@T$^oiMn(?v?j*s4-lZoAHceL5xT+MYeyz|h>)AN>5{{Gov*V&wHsdRrB}>DC z4@9iWMYR {5j1Y~|Yo`w}F#wD_wx97RHM)1mQ_D5WHvRF2e?HwBDh67b;;oT|9REKRymlxCl zGGOXY