From db6524c7a4a3a87a50c66d4784dd6d55bccd99c6 Mon Sep 17 00:00:00 2001 From: Paul Baksic Date: Tue, 21 Jul 2026 18:43:53 +0200 Subject: [PATCH 1/3] Fix applicaiton of addMDx --- .../AdaptiveBeamForceFieldAndMass.h | 6 ++ .../AdaptiveBeamForceFieldAndMass.inl | 63 +++++++++++++++++-- 2 files changed, 64 insertions(+), 5 deletions(-) diff --git a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h index c6e47c193..5363739c3 100644 --- a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h +++ b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h @@ -200,8 +200,14 @@ protected : SingleLink, BInterpolation, BaseLink::FLAG_STOREPATH|BaseLink::FLAG_STRONGLINK> l_interpolation; SingleLink, WireRestShape, BaseLink::FLAG_STOREPATH|BaseLink::FLAG_STRONGLINK> l_instrumentParameters; +<<<<<<< Updated upstream void applyMassLarge( VecDeriv& df, int bIndex, Index nd0Id, Index nd1Id, SReal factor); void applyStiffnessLarge( VecDeriv& df, const VecDeriv& dx, int beam, Index nd0Id, Index nd1Id, SReal factor ); +======= + void applyMassLarge( VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor); + void applyGravityLarge( VecDeriv& df, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor); + void applyStiffnessLarge( VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor ); +>>>>>>> Stashed changes void computeGravityVector(); private: diff --git a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl index 474c5fbf5..e30a185a6 100644 --- a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl +++ b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl @@ -272,10 +272,49 @@ void AdaptiveBeamForceFieldAndMass::applyStiffnessLarge( VecDeriv& df template +<<<<<<< Updated upstream void AdaptiveBeamForceFieldAndMass::applyMassLarge( VecDeriv& df, int bIndex, Index nd0Id, Index nd1Id, SReal factor) +======= +void AdaptiveBeamForceFieldAndMass::applyMassLarge(VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor) +{ + /// Real mass-vector product: df += factor * M * dx (in the beam local frame). + const BeamLocalMatrices &beamLocalMatrix = m_localBeamMatrices[beamID]; + + Vec6 U0, U1; + for (unsigned int i=0; i<6; i++) + { + U0[i] = dx[nd0Id][i]; + U1[i] = dx[nd1Id][i]; + } + + /// displacement in local frame + const Vec6 a0 = beamLocalMatrix.m_A0Ref * U0; + const Vec6 a1 = beamLocalMatrix.m_A1Ref * U1; + + /// inertial force in local frame + const Vec6 f0 = beamLocalMatrix.m_M00*a0 + beamLocalMatrix.m_M01*a1; + const Vec6 f1 = beamLocalMatrix.m_M10*a0 + beamLocalMatrix.m_M11*a1; + + /// force in global frame + const Vec6 F0 = beamLocalMatrix.m_A0Ref.multTranspose(f0); + const Vec6 F1 = beamLocalMatrix.m_A1Ref.multTranspose(f1); + + /// put the result in df + for (unsigned int i=0; i<6; i++) + { + df[nd0Id][i] += F0[i]*factor; + df[nd1Id][i] += F1[i]*factor; + } +} + + +template +void AdaptiveBeamForceFieldAndMass::applyGravityLarge(VecDeriv& df, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor) +>>>>>>> Stashed changes { const BeamLocalMatrices &beamLocalMatrix = m_localBeamMatrices[bIndex]; +<<<<<<< Updated upstream /// displacement in local frame (only gravity as external force) Vec6 a0 = beamLocalMatrix.m_A0Ref * m_gravity; Vec6 a1 = beamLocalMatrix.m_A1Ref * m_gravity; @@ -283,6 +322,15 @@ void AdaptiveBeamForceFieldAndMass::applyMassLarge( VecDeriv& df, int /// internal force in local frame Vec6 f0 = beamLocalMatrix.m_M00*a0 + beamLocalMatrix.m_M01*a1; Vec6 f1 = beamLocalMatrix.m_M10*a0 + beamLocalMatrix.m_M11*a1; +======= + /// gravity acceleration expressed in the beam local frame + const Vec6 a0 = beamLocalMatrix.m_A0Ref * m_gravity; + const Vec6 a1 = beamLocalMatrix.m_A1Ref * m_gravity; + + /// gravity force in local frame + const Vec6 f0 = beamLocalMatrix.m_M00*a0 + beamLocalMatrix.m_M01*a1; + const Vec6 f1 = beamLocalMatrix.m_M10*a0 + beamLocalMatrix.m_M11*a1; +>>>>>>> Stashed changes /// force in global frame Vec6 F0 = beamLocalMatrix.m_A0Ref.multTranspose(f0); @@ -306,9 +354,9 @@ template void AdaptiveBeamForceFieldAndMass::addMDx(const MechanicalParams* mparams , DataVecDeriv& dataf, const DataVecDeriv& datadx, SReal factor) { SOFA_UNUSED(mparams); - SOFA_UNUSED(datadx); auto f = sofa::helper::getWriteOnlyAccessor(dataf); + const VecDeriv& dx = datadx.getValue(); auto size = l_interpolation->getStateSize(); if (f.size() != size) @@ -320,7 +368,7 @@ void AdaptiveBeamForceFieldAndMass::addMDx(const MechanicalParams* mp unsigned int node0Idx, node1Idx; l_interpolation->getNodeIndices( b, node0Idx, node1Idx ); - applyMassLarge( f.wref(), b, node0Idx, node1Idx, factor); + applyMassLarge( f.wref(), dx, b, node0Idx, node1Idx, factor); } } @@ -474,6 +522,7 @@ void AdaptiveBeamForceFieldAndMass::addForce (const MechanicalParams* const DataVecDeriv& v) { SCOPED_TIMER("AdaptiveBeamForceFieldAndMass_addForce"); + SOFA_UNUSED(mparams); SOFA_UNUSED(v); auto f = sofa::helper::getWriteOnlyAccessor(dataf); @@ -648,9 +697,13 @@ void AdaptiveBeamForceFieldAndMass::addForce (const MechanicalParams* if(d_computeMass.getValue()) { - /// will add gravity directly using m_gravity: - DataVecDeriv emptyVec; - addMDx(mparams, dataf, emptyVec, 1.0); + /// add the gravity force M*g directly using m_gravity: + for (sofa::Index beamId=0; beamIdgetNodeIndices(beamId, node0Idx, node1Idx); + applyGravityLarge(f.wref(), beamId, node0Idx, node1Idx, 1.0); + } } } From 421eff4536b264cded6349577288c845d7720c80 Mon Sep 17 00:00:00 2001 From: Paul Baksic Date: Tue, 21 Jul 2026 18:51:20 +0200 Subject: [PATCH 2/3] Fix github errors --- .../forcefield/AdaptiveBeamForceFieldAndMass.h | 6 +----- .../forcefield/AdaptiveBeamForceFieldAndMass.inl | 13 ------------- 2 files changed, 1 insertion(+), 18 deletions(-) diff --git a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h index 5363739c3..78ade1643 100644 --- a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h +++ b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.h @@ -200,14 +200,10 @@ protected : SingleLink, BInterpolation, BaseLink::FLAG_STOREPATH|BaseLink::FLAG_STRONGLINK> l_interpolation; SingleLink, WireRestShape, BaseLink::FLAG_STOREPATH|BaseLink::FLAG_STRONGLINK> l_instrumentParameters; -<<<<<<< Updated upstream - void applyMassLarge( VecDeriv& df, int bIndex, Index nd0Id, Index nd1Id, SReal factor); - void applyStiffnessLarge( VecDeriv& df, const VecDeriv& dx, int beam, Index nd0Id, Index nd1Id, SReal factor ); -======= + void applyMassLarge( VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor); void applyGravityLarge( VecDeriv& df, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor); void applyStiffnessLarge( VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor ); ->>>>>>> Stashed changes void computeGravityVector(); private: diff --git a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl index e30a185a6..9f9f4c2ef 100644 --- a/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl +++ b/src/BeamAdapter/component/forcefield/AdaptiveBeamForceFieldAndMass.inl @@ -272,9 +272,6 @@ void AdaptiveBeamForceFieldAndMass::applyStiffnessLarge( VecDeriv& df template -<<<<<<< Updated upstream -void AdaptiveBeamForceFieldAndMass::applyMassLarge( VecDeriv& df, int bIndex, Index nd0Id, Index nd1Id, SReal factor) -======= void AdaptiveBeamForceFieldAndMass::applyMassLarge(VecDeriv& df, const VecDeriv& dx, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor) { /// Real mass-vector product: df += factor * M * dx (in the beam local frame). @@ -310,19 +307,10 @@ void AdaptiveBeamForceFieldAndMass::applyMassLarge(VecDeriv& df, cons template void AdaptiveBeamForceFieldAndMass::applyGravityLarge(VecDeriv& df, const sofa::Index beamID, const sofa::Index nd0Id, const sofa::Index nd1Id, const SReal factor) ->>>>>>> Stashed changes { const BeamLocalMatrices &beamLocalMatrix = m_localBeamMatrices[bIndex]; -<<<<<<< Updated upstream - /// displacement in local frame (only gravity as external force) - Vec6 a0 = beamLocalMatrix.m_A0Ref * m_gravity; - Vec6 a1 = beamLocalMatrix.m_A1Ref * m_gravity; - /// internal force in local frame - Vec6 f0 = beamLocalMatrix.m_M00*a0 + beamLocalMatrix.m_M01*a1; - Vec6 f1 = beamLocalMatrix.m_M10*a0 + beamLocalMatrix.m_M11*a1; -======= /// gravity acceleration expressed in the beam local frame const Vec6 a0 = beamLocalMatrix.m_A0Ref * m_gravity; const Vec6 a1 = beamLocalMatrix.m_A1Ref * m_gravity; @@ -330,7 +318,6 @@ void AdaptiveBeamForceFieldAndMass::applyGravityLarge(VecDeriv& df, c /// gravity force in local frame const Vec6 f0 = beamLocalMatrix.m_M00*a0 + beamLocalMatrix.m_M01*a1; const Vec6 f1 = beamLocalMatrix.m_M10*a0 + beamLocalMatrix.m_M11*a1; ->>>>>>> Stashed changes /// force in global frame Vec6 F0 = beamLocalMatrix.m_A0Ref.multTranspose(f0); From 9259d0e25eac07864101ccd9e960ddb8e787b09a Mon Sep 17 00:00:00 2001 From: bakpaul Date: Fri, 24 Jul 2026 14:05:17 +0200 Subject: [PATCH 3/3] Fix regression --- ....reference_0_Instrument_DOFs_mstate.txt.gz | Bin 7543 -> 7445 bytes ...cn.reference_1_dof_visual_GC_mstate.txt.gz | Bin 27222 -> 27681 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/regression/references/Tool_from_loader.scn.reference_0_Instrument_DOFs_mstate.txt.gz b/regression/references/Tool_from_loader.scn.reference_0_Instrument_DOFs_mstate.txt.gz index b31a80699c54a8d838bd7b58fe104f89b672c12f..efdec8fa0103fd909156388623981dd311dc4d0a 100644 GIT binary patch literal 7445 zcmV+w9qQsAiwFP!000001MJ5!5da_%1hM{AoCFYn3kv)zc}hHx*|MjJx?Ee`Q{m;Mt|M*w`_EPQt{%c=rtxIdiKlk4H{CB=S`WpZDzjptv zZ|FGw`M>cU{Qk9nbo|=r^Nv8d<6Qm@|FPDXP4P9NYw*_(KHu47*ysQHhhJan|KVTn z-_*Hc1#^uRpQVp|&cFGMF^4}ozkbFPhZ$e%=iY=l-&qnUdT;lY^)3pK_3blux8Ggg z>Fox{{MzU;17!41`v`9gewBmlqyP4&Z7%=1^R+E*z<&$YoO2T4e*H?UV-6Y3{oEBU zzyIzB^R|QBZ?_c>{@Fd(7PvW!q zwgN@Id$&rW2<@JZa`0ubl(|GLQpRbLD0A!p!MZHm@Y8>Le!FLcoqM{w1na)Xo`QoD zVVwf#tM`=m=z~jikb@Lhd~l`*ksqgz#2Co(T!?P)K=)nlh|<{P z+g6L`ZbS#^tnb8_;>k@6JcVSB+@E^X*Kt8?ZTfRJ-FjEV7clnL2LT$r?u5Q%i(7SN zZLky`oA7Tyh%_x*?n>v78WA-s2n0LrdjzjHdPA@-_XbG}DV`9D1X=}gz9i;;P7;?Aca~Hc97|1V8h>hQ@b$}Ol6sxW~!(Bzz5kA*Wq#mBTW0o-&kx&?*#p}B<@cYd^ zg3Ykad~AVb1L8J)5Q^p1<}NsHdQgmh*1V2!yFGXA8tGH)cZ4?zMW6H5-hvZn*fPdp zaUe!#(c^PXX0Ag8*^?M^w_7gVW@prf8+8Xew@@(f92m!+!&h_P5(CeaOF@bfWey1^ zeK~}(PNJ}_831Ds=?QQ(xrBum=q*YM1cI*t%hAQh5CIYp;Of{)l)E-$o`L`!-k#NI z`@VM4Zs&8Tg(EOf3NuDGs>Uo{#*e?_8$syl)e{i|^?>KrmEbD;+TO7yU~EJ|`4d#A z&0~}`&=U?6y0)5Z7zqJa-!kPQrz^Zjgi#{lKKE>2;2$Df)cbTO0xAdx5UMB#2>}|6 zkb;6}!6JR3)X);J#qsCh#61H7YHaN)mPignuLn6agL>6N9|8@;$MT!8R@t$|fY@NW z^yeT49*r`6P?rp1PXrgATj_v}EKjR|fyykiFtDuYF+Rab?piRJfCI68G9r{WXzoUe zLVzHScAA2;;~qH%M5Mz(215JsxsZUw*!Kq800aA1JUU2%M?x?h_2Pt8LzD42I8Flt zT-ipw0@gK@JRC)`aW`4Bgi>D$>-SgGSYeS3s;j-ZDUe5`_S%g-T!$GO3gg zi$g&SFwawT*q3rCC@>5Gmq&aFEWdneG}(cG*a@S6pina9P!gbjb%TUGu7=cq=|kjRmgx*ocGvKU97m!lFKj(3`9wm6mPyzKe}Tml0K9dx+d{; zfLP6=kjdpySU2_$2EKGy?*Wbqt+Js}yxNWqxxmhY{O;e4&&ZBn45&RZ4A^%3$FL+c zGQwb^-d#$B$Zlj9PRs=dS}14^_FgBG9-jqxe<9#AR8Z8= z#@5I!Ih&HhF)l03g|k%DLe3-o^jKoNRIVm%4Gc@1cE3uXz$ajG`k}3W==q?-t;Hcpu}Vw1Y8~R6SR5yaR@X}6VD-5b{ewB38NB2cW0{2 zWupk!(v()d40H&SJvrzsijP<~@?*-zme@K#fJ{2WV0YqsazR3!eLWPt1_mgk|EvR) z0?UCx0@T#>;3`jfK^rA#@lm-~x|Hq0Po5lf;@2?nWygaYeAyC1Xp6#3NeGSHPXMSC z3s3MLN?Y^<8f9&u`NR*|=#EHoCGY&~3DQ^$0qhrMD4IMcAfydKmb@5c2jq|F{aFK; z-Vwlk*Mk#`(>yHj%?vH@J+d>GfY9wf83I>XaEb}o=qQHwo~S!!1KP)~0f0UGjZO6G zYK|oDY4j5uUl~Fl)Wk}a-P4RcW&G>~Hf)+J!F$_T2A#?Dx{BPro2#(877%BlVful% z*U}WU2VQmr1>fkev7|7@}@^8#B@7X9x@ms6;@)tVQ69O;;^3l6M5CZ*c_0 z+7kl0r4}^t9})sVqdv>sUwk!u-uyeD?YP8%0J~Li0IgPm0zYgkz;e+)9rO=@0EwF$ z2#e3Ijg?UNL;y*d9b`ElMfZcGx5&U&04*U7r(^*Uh7timcNkIVb?E{}K;JkVL0hc> zUFxjJxV@}EQM!(B_<$i?kch1Y3Ex^i21QsVbudH)mCVMm_rFc56A$aVT;ZX-Fabh2 zH44!T4-jl2++zX&j$+T}2olwY^XXK7QVt2yBq=y zqK6cZ%F2}}7rP*|*KQ)Mm!B4Kx)e=g+x}@mq-eSi1@gQ^yYoR{6}F+|xoG%!)MdZ0 zpZRpEnQKg046qy5VEpfx_kS zwb_Lv!Yt;VFu3*;`E8o?kms^(mFb#j51w5n!k;=km#zn~t!X=;x$6~k@NjWB0$SQy z1MI8~-FK7~0!d+u=$B_P4&g$7BVvo<@k~jnX>+{W*H=NN^B)h?0CN--;Z5t$sM5)k<5>W=8B0N0QpXyA^y77yL%?Dg6jaHG0EHAq zfPKa>UxMh4w>J>JuB7(iQFj3BCu&gF^#R;HEg;BrUXxKHPx#?*!j=%{lo^Y{EFs2V zcS8u}Oxz*P_1ekEsogm8Dly9Pkb=M#7zCIu_zR^d4*d2-th}%=gw5Q#cxn2`UqU!mV&daUpnBryQ15a z;0vfbd`Uup>Z*vGS9#WHHXS;8zSg4Kn^9j6=K%?DdEX@Id%Vy-^f*tlNp-G~0I(hF z;LAp>K`PVMeaduQlrlRD2iI*^56F?82>NOTf~u+)WKZQdZ($heUyz-6Eb*+)Hx&Ks ztK7oOt{T!$N|7aOx(woSK;{rgHZ$~KUrODgQ?3=|oRk39TW~lB>-UfV@i}Fmzb&+& z*rs21Th9#kBen*x-SLCti2(Bw%cEaSU&>yU@o-gM+X005ROgcIZuD8xSBVy2SGke% zsI#A)xq)ZPuUFt`&o<7c1s*>4%`x9ur($G*e+Ugc)_#poU6r=z^&eu2hgVw z4$CGHIQnu$3g@^M!Ky|*hIFs(L_%e5frzIyOqX1DqseJ8Vgl!%ih{r52nFRxL7r4>aL2amGEess=0XRTaW5qJpwMVhDGC*<LvAIZcr5d=b!*Zs_F&ypagwRvXB>ILUSlUgIhO+s&{8 z8|upB_Op`hAkq4K@ixd9>%QSd&%CAv*8flt_Dod1#X+jn^QFp zO!z&M6rBJ&&xCk_1U1qRn^3#qJlAxfTGxjciY;3XSkbE+hoUVlfX(YhSK?g=6n-%7 zz1CdD<98SPLiw)u`0=TTknKVUO_U=~(0hiK9|V;*Ay$`+Y!85{AtGiWh&{N0EAlo^2Y<7h13FSqngcxs% zioUg`JBO#HL=XxY7wB-bhwW8)Oog8n{XzxRfCu84mnH}SvI{eARB=IbsD-e1Nn8|z zRtUHA5(*H=bw1q&ksSxnbRJ}?Jk5Ta)Z<7%+X?Vo_ajtxSiTd;=p%(7;|cEDYYL8< zF^z4NMCS|&5{mrh&Dx3wUiPSvx=#?{OQxM^D4EV1m1DW=5SzCS90JW`O=rMuFQjzy z$_5}h?^C)SY|h-m!<{q(^{m=il%10RY`atq;BvC$2oe|INTfwmkm;o=SYU5KToV#X zqKmrAsfPP46yF(iYXOv<``}53z#ITcOCC@oG zq10@Td)f14Cl4RX6Z$5nkgR^mKuL5?EXW+00U=VEF{L659aJlc3_mQJiztY0ry|t2 zBPBdGNkdQ(s_EhF&sqhRXSGX7biNCR+I={LN{XtnSo8|wma?;X8goPU`eG1(7PL9- zA@5iAEF{&^{kO-tq(SIa+f$I;bg6WBSI7{=uG9p=DxG-Q(I)^(zMab}sm^OV_NzM^ z3o>?;C!Q_=#I1=P7}d|Z^zby#B?xuB2RBq{4i$zK_t%fst$zf%9k?mDuDjIYB}kvQ zi9WhTZ&Rai1bnHP3$NOIM#*)aUko+RKW(#1IYQ4vICU@qMR)>XeVr81J|ZtY-2QRg#zDT|K~2W~H+6&w$uunrf=M)Ead9m`cfZes;>kDW^>}O_~t% zynvXix?t3rY5NIs;SF{#-1tIw1P`*)5p20DIp!^eE7bMJAx>mDuO|3ZQF&!Q5kU0i ziTRG~Al1YU!y${nb}poD3>85Jl@6T2y~cix`4D7S;o*VE7tVyba!Lk!_gjmADy|6y ztSd9Hchm1sgYR|}Jszt%1iFZXfOvg0v2OZOK;||{1_J0ViXM7Qw*$f;2N8pNRD+gP z@1X$VvYjNvoS%n^^cMF`bU%Iqk!e*9NSk~KrSbm63JCeUj0;a;d^^wwR2e_(4LM+Y zCWq|iCj&g@{el~KbmWTwF=jLlSW&(G<^9%zILqoV@8Nz?zNg;UQr=C=utN2272Ifh zGRfr(d$R!$pgSM?$3`?duOd%?7m%!pdma$cnEq5;rd07&i5=l!C?dM z3K#;|JrVk?$-q5YJY|Q377V?Q&m)!d3l^r%cY;cuBH`BCO5GVwSg{pw-k^x=hSu5F z9l7#cVSonYg`<|B;+qc^BWnKx4%yC4fe_-3_s>iUoLxfE)=~ShIUM`Jxt}vS(!yq( z#L>zRx$Vz-s*%;hD?ER3Kzw~*yh89|WaX^8`A0IqLFq~7RK>7N`3)fZdfy}ZF{NczK&YgCXu=ACgJnsh8t@gJ2 z)QKF5Y%B-}v5`T7^G%5bH2?V~e zSl4`J`*ZsVWi#&B5@!FdM!S)Oz3une8ileg zaSH|9+1;W$){I5vh-C8Jh=;OUnY8_$&V#u@5u82xUPHpvUjMllb#pFeFzf!<1Oj!2 z0FlWF<8s=C&3JRfyYdCJX6?!^%>C4iVguycgbJJv?&G0MZ54QD+`pSW$ev~sZ+iP; zZqI{)i7lJ&crM2326N`mZi79Y9>(kuJon~Ab@Ezg6@|IAGV(az7tG>Ia0as?nRw?t zQO=vlfsJqFG}hr-*$_xMrx|oW^;7?9Fv#M`JRI-oPr^5x=E-Lz9`iD%mYpupGhk&o)gBSpkOY3 zY){WN{T+AS>X`{M$DiHae^%p19}i{+Lttl{I!unBK^5rO5qpFuBuhIySZH;rkq((UU_O&xe%*`iTsCZSmhK ziB462U`{ZEz0&9~dJ1N|n@Y&l`r8Ij+~cohxPb+hcm<)?&xt&J~`k0F}{6R5u<&q9}F<3tpLT@ zqxaTqck(6SI=CJAhY<|rCww7(f*#hA7Abx!Vx~Ub3BfcfV${c=4@QC@cpmC|E!Eb+ zxlf((5?8nQys-(4be+S8kY)nQImrp5QI5{7R^1q?OO z4-A;o>0yuFg0x0n>1GwFg8`0Id%>LhlLTN+dze!h2a&uUHvy3~>k6KGn-{5bidg$}~?h#qj4cabgK!C-)+b;eDiq!Cp3ir+*loQOb{RLjeZnax; zbAf{K^ZHD;vH zQ7NtYigaz!`p5gPpLgifZloI1w4A5%C?!H?cg@3u%{%t#TmGF7z8o_7cM|wgSuDtg zy?m8w$IIaMVha#fB4>mXDwl_0*+npYoDX=uWe1NoNglp4<_EsxwW3aE9xvnAz}Rj2 zGSE@Ge&->P*fN@3iRgSGvH3RdxT@HADvAwBxAqZtbNSafcHV9sJe7g8clkr&cH-yX zzR9%LJ#skEk#r}<%iERavA?525c&88cE7WU=pS-SYHM79oaV!WktS9ck~*H(>9)Y~h*k=IXfb+petjpwL# z4yStv6~B16AYFMs0aB9-ralCKcUJsE9xg36 zFUd!k^G^zS$WW#GTn?qhlaN>7oEe8JxPdO%^*Yb+le=b*xkTsjZCtF$tIr?_G+O`b T{{a91|NjF3R*N@T{a*k8$^S0k literal 7543 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 diff --git a/regression/references/Tool_from_loader.scn.reference_1_dof_visual_GC_mstate.txt.gz b/regression/references/Tool_from_loader.scn.reference_1_dof_visual_GC_mstate.txt.gz index 91dace6e98a4d95c6169f0a0d9963518866dae9b..185994c2965fccf1799b26a0fec14a75cee35d0b 100644 GIT binary patch literal 27681 zcmeEtRaYEcv~2^8yE`=Q?%ue&TY%v1ZjHN>;K3od>xa8*2<`+A8r&}Dp6B}yZavgP zjXhTFTD8{PbIx5w9)|$^X{{GnhG@L(+U2o8o9q;aMDJ2i@KhV^;uoB1D zA8+{|ZpOW z&z@(F+_D*BdB^RER?2U$Y{Eem-#URGs>`>03XNd--}#H$6VdOvA=$eAZSO+U%g)mR zzs1Zy^7@zA$^~z8ZhGTdb!5odYV&8rVgj*VsPE;^(^lvjRKMmAiT?i!|34r9TMi%F zip(Dd#!QlWj?#)0wHwB7I$|AIp(| z%=J-Lu8y?>Oo@Y@K}a(=ww>^MaosB*J!CBu!2MpH5`F*h1RyD|W)!UPR-@^n;}VxpAOZU36p6wD8AUaTSKAx?LlTYU9oCm<3SQ=3V`2Fb+$tIoQ+j7^ge99GpW;jr3(ZK%!W9F5e$AsdS@*g1&WOz zd^35jd`G)CU*P6>dwb%aok!h@?&J_5XYw)OlKIlH1g}Y@9>=pU&K*D0B%^W*rmjBf zNxA-7a(lEEhwFT8Fo!9~>XkFwuSh0;&C%)5Ukk5_!{;A`l#- zV*E@T9F{eWvqjfxLzn;LhyK&jTC5brd0d`eCGPX_3Q zpxS@K$HNcB!9;&(QmrdLP|~8l{QD<;38qx8LP(BM7`ji13Ga{|O`kK-8bSG!15NSh(?AY zx&RWnS}IwBF`xd?tsNp!i&4d7Vdix-s+WJ1Dj?UFD$ixGZbyE;ub4Etq}KnLv3Afx z)no62JC@F?CiYG-DX`1*y`sv8j1jELBV)3Z5f;{P)}u;O`~4^74M5* zRWq@Dz$J#_mO>Q^^cG59i{AU=Hvz>TKg;eKv)VK|=2S%58jDPzyFi&G>T&k(E~Na z@&rBwF|L{qRhbk9@|rxkX08wr^C;`6jEA{^=yxnU65uIayTcKF7dpk}k>#xh4<_{# z+y7bL*A2`550kq9`ptc*UX+DB{EQ}Gx*`#EDE3#&yx^WWIk0*MINakExAM~V&wda` z03&B8YP&&zJbW;nhRm45AC$@~S>aMbf;2Y8JfFkn0dwS>-}OG&*?jSYQt@t#Fb}`j zY|P_u^dbOfD-7n(81Jp##6`Rv_M`eE-ZwSJx@L5T0QUcw`+7Lo77!UzvyBUv(sdz2 zLdO#LN_c4@i37m*p>!m}qKDw@c?4Ru=I1|-zdQKBbnD%RrD3oHC|7AmC_T8}VV&o__=bpDGDxM;fPB+o-`tbeqKRB0dPgWP~D$Q3!)GB$2c zl1sj=!Pw>yUQ?E?2;EBim*$HX!+ucV^(M+&LfKv~3XlDAd~iq6K-L{aL_PXPgIG-x z{lG~5yK$Um@Wl-gVeaAV_G^;K{G+KuiE#l+t}FULNMwbG&YB2@ZIv(Fj+A5g#!CE* zQHXH@5)RGW({ljrbE^PM%A68;%^Aj@<~~qQTo~~YA~XWTqoYVW{1FEO%RXyLZYyI_ z1@Z+)Z}AG%ZX;wxrYb6Kb>g#3@G8yq-)yDU*2Y4bz2rcAe)wC&+%M_%N{RsawWFVr zi>r}yW!xH${FlS#D0}&UUPw&Z0~}b--7*NMK{oVXcFYmwB~oWU96f;LR5V~;|6@sx zH++EW!ym->ZEFi%`JUFP1XJ$J+37iY3zYh+Fh&Df*=vM50CPxP1k^k(eEN+1Qx!Wt zb$sTZb5H&eb^Lb}Kp-rL)b#N9r_pS`n93{Pz0o&#G9$Uf-S}_|3Wii@1CC@`e`e5RU>M)q-wDBZxb~xAr5l z`NQrSS7o{8Y8}EU+QQJtr1ju)QT#}l#yCyF9SHwt3xm8|Af-P*lM(3-Nc79wyW|2+@b4(Aw20n(&S*4PSU9I`X ziyt1mA1i=XP$1#E0BRuJZUQ93;CrV6@tmwMND1|lSR>#O4g@{rhuV zd&?bUVt;)&f!wf&FF?ccQ9l}btW38)K*U2Dgwag!>(n?_kLVwPWc>IbN!ip%wANEx z17ODeYTiO=f?w|PXeUsi?lvWGdF+x_AbQyKjz`As`PJ90_h+{462Rrqr#+LQWTie; z|EVSO#r6KnqGy8_2KPxn|6}4P0d!r;>#ivXyq;>`W@Jm+@4tmWfGBAY$+HhI6+K6@ ze}4Rv&ubgA$MZo*JG@Ys^BwZ2@-u$E(Vu5eQLAo?(2B`HqVuD^^x;Puo6=`k+XemH z5zimy$z}WbY|DDm&>*uxdI#D1VJBc0%85qiCi>2xyWzo=4DnJ`!dAEH)Xgk=ZEM6E zf3N(Rz^crbE)QdTAL~rHr9S@E{O60ne7%)+=yBmGw}zYi=35f;$A>=OOGZlpz)AK- zY)A<*6jNG;*cQImG%Dn+`f>|)aQJ44Hb?GIF(@HTMh~q*$*8#np5cBk@<{j}ugkPf z`7H29@ZRBsHEmKiR6#_#aB%D&_8;ab#C~tMIvJ?Rwc2;jG!&GA6OZ>IzwmXwqe6l= zNgt2v$9i(cUN4^|7|;jIZUltQ{vbxz(UJ}w<`CvpOw+|{LdVS&{9R9qk;dUBSmO<) zm8Rau=pi?cFDkCK2d)sn0E|V4|J~_k#-i^Tv#|a=MxGpi>+2cMJSl!Tcq&gwOsqXz zdA80a`EUK_8~K{fd33E}D<79&EMd~eJM2f9`cupIun+CPV%#Fa!OfAFNVL{`^JFDs zoR4!=U25jrCisPkFi6%EQ#}y-moM7;8OpnHPUZ(U$F=jy_|{-L`;W(p(?UqeG~NpX z{vvoR-eGQw_+sZ2{UJ>&#j^m&$$y+GV@AA_zD-C zK0}@fR(z^oEvemJt7O=I=P}rUa(ElJ%$0(~D*vji^oG`v9LZY$gPm%4+doVKx;VM| zhfdk|{Jkm(0l5)aY+Ys#o>_PDA2TgEe9*T#B*pg{)oDGG|LdMFGE$wF+&tNa0AEo*Nuzm}i zK>odhc1rQDO|FmN`abOX#p207nlbxfkdH(Z2D_-!{uU9WqaH&`tOZvN;G|cd3nEa&T@C zd|`>TVpKhTz!1=BjliB#{uMjy(w{{KxG6YOzeMEnFC|BFG4&ri%(gFWpvB;>__l2u zC2k=$O0Xno?REHr05F~%mfuQ+!Gg(9XRnctsM~NP@RPZb?`X}3Ihd!ypwz%nmkKS+ z9@F_E4%8C`kt4c*3op5|Dw{n<%{j0O0+tLIdMswWfq-5xVC4OaKS(D&M5ZXZr@nJx z=jeb=nW7XJ1ktwy2>v@xpt$}D;Bgr@GU*FL)_*Y@dDZ4ey;0Y7;t!-(+Xl`HmDTi# zdcj=9i;1e}%kHKy3zN=;e_zNfUj%}FoV4v2*7Sz?#J_X3Sz6Z*o98VC3QibKh7ga7 zcKx1?qTwm`?R(3)E2{$q_tMkbjFR z7V)WD&}^y|g&yl-{bS@>$E3cCxunlEI=>V)gj^yLXjD#J^-td^+ z5tOIwhH6NF?PupE3E$U4x`&^-ps?=ADtX=(W%3D@Q_C?0OWL+a6`zyEHC2vR{TS{>NzIC0X!y|%fL6);o&U?>AhRy zn0RvkRjhqdCY-U7*ctPU(Q>pHEZ@cCiF~WrOKbjF1X9%nx35%&&9)o@ps(KeVjBHXk>2G&U zvHwLm_X%XS^IrylkJ&xM~?zdM-`CcGD-qJAlt5A~^VqY2P~g!FPgf zu#MOU!vV2!zj)ZS_Xu+*^w!fjP~YOoQcEUn zd@@_yFV2F5SLDc$@S0WVeg_)Pp$Vc?YMmPx$Qyt2VBpW@;I;6?|1^62_W61D|L#K` ziW2ZAr24j}l}TJ*H{!QOoF}?@_7fn`{4RH47GH3ZZMHH#b3wg$6{6~vcT^D9h6&sm zX%9iUWb6*i4^>swP{?j2F{!!rX+vBFh~+#o1)!#tRd=qoeB2aO zWG%5@j|DnB)N3EX6o?na#UdlS#UBw+;@B}@f?lrl&>P?r_|-UzBk zy)OL?d_RO|zV<{Pz2$D|ZdxD2dNV_SsGC-gw{d)p7}iogZhgNNEA}2cw6+o z9R>}~xT;lNI?#8i7lcEYaz61$o2lEBwEv+Mvz|hGwOk?YsIV|WjV+^}<@A4$xn$t@ z5kxSeuXd|bzh_i3&yk71Jj%zVsPIYs1bD+H6yFE)h3(zZK#Tm$*=BQ}X&y z3mSG`$VH+y=X3yedHlV7A~e$EjSvdFZ<@8aVW3hYqElJ2`uWxB_*<2T{8T_2T9rlZVV2aR+m|xvJyE7lLQ?XQ3 z>SuhZ4HD1a0{p5kSpkw0v^ih$cJ^0hb&ksLtE6-<40n)4r`LqV``vP|Jcpu~?VV^j zxpw}3M74TND2TB&QSlV{)F!C0Zrr*4yx_*~wNnj%T6icX#Zzdfco>_)@W}+=_JJOH zI4=eKtR8No#Qrc(+5E2*fhr!Jtm`Xi$;S(q0fS{1Q@PlLc5yoF^SlP*URjQ}Pfwo3r1o%c~L^MWjK36j;FW`TFr;{$CcHWVK zemf7-sVPiBw69j-Qq73YBDD6e2mvkQP<2e~cKrDckn|;1*p(d_Hw+ie6TAI9@#R&( ztPK@yf6>LYUGXH!c56dh_ecyevCqj7zT=sAt&D|i2H_SlT3OT6YEmUDT6IYuPuMdk z%S%Y1Z`rRa7r?HtJpE`YHw!1HpD|lcW&2Rd(q-fNB`t)I7y{I(hVD^ZzIR&Gk%LSu z%CM{CaKir=87Y8)VRP$#k95F|B}5ektgIV_)gc!YsO8~<#jack^Ds(DJC=}v>7)1b z>OKj_r2%O0PX0QF!2A;Ln=ZL?v_-|_yjSP>(r;lp5;}3AK%4l>aBBzSO6tLTXJ@l#3@Yp)vhQF#)fVDjy zR}-8>eFD$K>9M{D`dE8@gAV~#+tA$H%GlM(Se|Sco|Jl_9^`w)!E6s;T1$dvRIO=} zUqSjKYYaKGnoWbA4VpfORykPAt=!1S>EsJQuF>gO^hR3}`ky6*wgx7q zca8g^btwk;$6AglPMra?N1H>k{mSdXTAB;Ov+@~Eo#0_u2(}}AZL110=$u#&N>yeuCo69rVa5AZraR!Cd?u!4K=xOgyibsr zoMG73f5@}9Q0x<98o^Jez@fMk`BUeSP!9~&7?f6nc3M9G5sk$;z03Stxjgo8J8^Kr zf>KqkJyOMIKcd#etDU}^m0fOO?4-RU32udM(?mJ*Q{^48lU)7b6LcJQkDtT&d*t6I zI4hsd1W#)^1c>D$9wEqyXtD_e8tIQZNJFnAM7yDlZJOof@|nz_MxO;=>#TkcYR zF})3LC>kz#Mno_(X=X`%s5L#@s~pe94`rg7pJIwaHN{xm$}lCGcb^{5^+~$~><#gP z9l`m5RW8Q@2rGO~eVsZ30`fnlsUi+^!kfBBuJ@y>Eutq_;3;jXoT>kWCFjsaG*8VRu(b-o3r-$t=iao^v=zjNo;03lp%Up`jafaY`QT!zf7Srp3_J`D{7Xs( z1dGva-&cxy|F+$cip!%luwnhagV9DEug{r0)7Sa9TL1vow z4zdA6h$)PQbo+oVuBl$sKJYhL1W2v=C9ePw;=U-(K7+81-gP<|0yacmPonxethAB0 zlR7M|bEN828b=XJ-6yTZ2IPgBH)5CPg^1%cZDIoJMzgbM=AjCbq*b6H%8)OIas8Bj zWO(C5N4@UuFgr4ojS}YaHH1=$+#V^%ZN06rdS&MGYI%8 zdq)UeQ(=#0sXuZ=zjc_vCufpKWWX19}UodrOahFpR)~S z;5Oxh`Y2`+wd(V>gejR4OJD}RaAICBRCW${HRp%DTQO|5J8w!{Z1Nv7GrGTe0&WB4b6DR~IR?@9Wa<4b9z6zdl8y+9zY(3N z-&`$Qm9clYcLCe z+qSn>>41RrBho#N8#en7l+FTZsTXa~s_t zG=m54GB2;MSZi?v^9X3Q_K{QzgO~;envb?|rtBq%>*q*MAdCbQ7Ijed&>BcNvXEGT%A5>R3aO2K3y*8zb1#zUBEobhx`4o_oh~y3T00(J}lLTeCZ z_DmRY)TOg!Nmd!YvXXEY_b&1T8 z5-MD{!aQgBNj9t|P{@e5(PoL{WO&sb5~Q*&PFJXF^+b`YsdWws<#!N;hIzNVuJth8 zoH!`70(ES4sNsBx{yzBQ;B*NArUS0dnUo>bX{{{cPgF<}F_cgt;8B*dPbDgjm|Cs8 z3nw?{qVgoHxr{KG^JKw1ewQivV#d`DqoCttElOu}fSG~#)72r=DLZTTO=7+Cw#b^E zcJl{tBWfmGww3lq6`tTIeGL)Ckh3@5q#TvA#=}*DS+T zc|1uY)Ym9NgbT5ZFp~I93@~FUXM8tX#GsV+Vw~}NW~dhiu-P6Mj+*}RM$XeQUXr3s zO)$mTT!xH$p-N8Z*aX+I9mP${xRd)2GBgj+H&gye7apJ14aMJ^plk9{el)0od8BWj zJa~Ob`+^EyTzDubs-l%@Ck=NJ>-wHgDxLy86qG^UEl~3$zC!u?1I{@Om3p&gqOa+9 zwlz+DKE{8n76)MkNyp>9cdOxf8C`U7{lr`AVcgl#V5hLHUZ|_BQf1FhSEOW}SYcCF z$Bnfx2==2*G1u`{h#V9_Rn!&nh9P>mj54ozCed&I0$$I%C}BZ(D91sM+aqujzK~>_ zO#<3Lt?E7+2G-7i1T>y*Z`k7~yOc*LRSsZ=qrFS>LGetOR=yB=OknO)q5l) z6m1Hi=;2bC(K~!xo5jA}m4gK*y8ue6F15tvhTQ?3LUu2jK6D|OZ%yNaXtlou#4w1Y zsoQ#k&d@_$-4?G$`!2~4(*Kk#Cc*f2`;7CfM1^da{B>s7{}I74j6WXP@&Quw;EI`X zsa^$3&>#JD{bu?Ephh`@rm#&a8t)=9Nv;Z(L-E0oGd(?aB#m)^PKB5qWqfo3lX2psW#)%*(d@t8&nCJHxYTmnOf?i^sx zKu;U>Vt^PR)9_XIA!!zamFb^k5vm2nFI^y7v)mf93 zoroA)&xw;){v;@@ELBQ%k;sEjU>lqZB*y{M8zKawSoz$Mcq^owdhj5fmQBD~>{ zvfn8G*fBIfKP%ql3(J|Kt2BGo0)QY)6GlUVbVjc%fSjJ?6jgF(3au5RBLg;B(>*8| zz?H|oiSX1#yoyrf8s~|DVqx62ZZ*d1i`_Qhx{>mpj2iSkLfB03R`+gEd1)er7{}W1 zKurkY7X#Ub3)nZ?G`);Fs$TpEz|CW9zu3ZHY#d?X%H>fqw6{SH%LzO5!J^%O7*Mg z^6cy$Q#GL>8V`VW{7Nc4*8mAR^hK0g6Ud_Bb&*yg7poDEgj!uBx1X|0jTg4W{tg2f z#h93aF4j`|AY+mD)S22ULtgX^Azeb-oA+{h9H1OW6q@jzuZ~`lfho zf@tm!%_Oc&`;fULw1srC-?%CSO?SCm4vg4{IE*Cg&;Yad!t9yZv3^D=t`2Hadal6h z@MDY|mc#-d&)X0Xq?C(&FY50J8kSxP5>!^sCk@Nhw~=!c)mnTnhwby!4aja1zbyj9 zI4W~!IWgO6Pkypju&x5LvQkrwL}JNNB>P7xA$vBy~!`5!?Z%7*L)z84w!W&V~pH9{X>8=GbY)5iK;NdOXpoo|S|M zyn%EU+aG(gXDuzU8ru69{-`}2oJlJ$E?$2d@#_jeq_9j432Uat9b@0z7dXkDAU*-d z{`kszCYMkuBpny1nPVAQ(A0#i7JiZ&zf{FS*LR@ffwUsW zdA|zLl;p%1Csl$w3%1~ESi74fE`~muj1T~B{07T8a#|5`XjRrKNBviwJ4c-kl4q&c zjRuV658cI4l+=GgwjP}jSC#c98RABDS|9IaEiN!(mBRPj6%Ta%##oZZ#p%N zTByDhQgFK{hyWL=%l>4MyhesNG+hWlmPJF|lbyu8`Sy17{8tsK!@Qaxh>~vt%8q(W zicDp@E?6awU!T$M+5(#=OIC4o47z;Ez$7AbEVNxhiz4+BtJs#9~;GdO0xe#49gqWx`AreG|nM^q|zHX#vxUimqF7nGO=%8T%TJ+;E!6 zDM)ilUdgcmH+P?iaP{Veb+$+htha!1X(_#zgetEOHDxqXLZ z_Fvm!f5{2#lL^L%H^=;Y>R;OXs0^)}67A)AfI{sx(7BS;Jf-bnlmLciaq7qD)^Hvw z7g)Mim(3>L;dWR4T)3qyM&RUD(;3<+L4p_@T)x>5OF+de)KG+Hl6`$Fb@yAyoK3Ub z*_szsAXM3denE@rEEe>{TDoR8Oex7ipVIomfyCnZC{SW1_#5ho34gm^GLod2v+>i9 zec!KADh?GV+;c{88ua|JkUL^ZT<8P}9hrFvCoZe;`H zcUSBdd4OZ|8d^y;J|CviobSVeDaisIh5+;%F@@zz#~J3os{5xH1T&~yiwNK4KT7S; zpW)@Qn1))2DAwL(t*_?5UMcsWh}v?Z9=ESsjsuuvOD>0DbJ-+F7Ny_2K7&(n8fa%i zp)dXOPa+xr=XZZc;Oo>EoM0y`YHo%Zj6tyOivW>+{8S_gr3@?9=W8r-nUjsS*VJ5q zudItp-+yTEiz26>F_&xSeKD@%$DqbQ{37TUAi60IUBwVOkx}d`S3pE=t$57k2oqlv z4a|z`H9?4`dBN1y{ucIEyq?Mpy3hIAc3?4eez9Rdo(G^jB{PYQSxqCwonifl5VwWF zg>x0*F^QW{jwo^X$;m=}CGPp<({_ufDW}Xnnd?i_T8SdDy&Im5B`LhBaHvOPz)qRQ z0W#-0kd@rrGjoi=V}bf?zx&FMSl$7$vlBWHqrn0j(HbW1a5#*Y5+zWQ&eTv$-&)C{ z6H40R!<&}G+2>}S)NBPdsY2Rym@NjED8}H#gd!$_-|>PJgq?WJU5w81j#_9VaS}Fm zy|8C(E0XCjnn5Co3^72724~X~nj+gSj7IrcM=cx-$~*5!Wtc_6s@X^%-faf4n?=G% z27N<1JSZU?$Yt}_7iZqB>UcT+1wHBFH;X}J>Cg;#;XM-IOn3>urtyLM3~Nc~l3U}c zQvu;>l<+?3^$E39HnY1QhgA5)sLXLyVc?=RV)a0sjQW@(d-EeGhA2nF>{+gqoCr+v zi7MJH&A3lUHy`JcvimghA>xaBz+g(1OGXeHa)x zZRW=6*HrH!t>hKDcb=b#uSHbW$Q8Q2!St!E`^ODakGfA!V$L2tbu%iIvM!;Aq%b9u z^$@K+xi%#(w@`4$`U6aS4T3t;G*ysTU8^^7AeA3dKKTPHO&@k zcLJvj>K5x&A$19%OXyY>O0q8aPf5Z!b12QU;EMW2Ib4}HBsM~8M48F0j=7aAI>vw6 zjVAE?)-QWCzu{bTxpr{kZDGlYp|Z1GJTfKLWQG*?N5i|@q)l8SGAOfL!pMt6Fo>31 zD0d=eFA{1!QpUD|10A9>CxB2gVfR>{|JWsPKr={)9sV za^@D}xT+Mb z!epmFD17!E{MX{FH4I4tmBa8!pnkJ-1j?}JHy_B*r_^=j{23mlM=k^X7~bA zIFASqk$pc=N#VBJD!3veI#8g67yq^3m}6(jA7?`ny@5+-(fXFOHI4^-RM2MwM#*9t zcbH=BFvk(e@-(Cpli7c<+9dhh$dU(ge>>B{WH&AE97G*x(f{Ax#c>8lb>dtl&_)H% z;Z4d#pH=F%eY$oA1rCE^wE5`(2!rTvo0uN1v-haa6fODjNNQFNoFCR@Tau-Z zW}d2eO@DaSyZA>Y>?WPGwc+i zb>%adCo#^-_TeW!FV8-+kpTbTyjO=^43QT>;m$ z6Rrzgo)<#`QKGbQVSq}UItd|PA~gSKHDhmtJy1^`(Z*mcc0PcoHY7TOfoI^@MIIFK zAd@L_)#~mK;#Js{NIWO_j}N8TMa3niAVnE!kYFk_7$?Go^M z7ebIla$SrvCDv_5f(#!$0xgvTjBKz#23orFEm_DW`k1T35Z{ef63x|myu?@g>M5ar zRrbC|Iktg^0F}P5CVw~;CiS({l3=670WePhl8INfsn^^cn2!uNo4r(jLYKUY5w;|o zUm{Ek^uHon?2RhJMDJf4%KcyqvfCybf0Uq0b>h%fPB_;_r7du!(6QFOBdbvb@-G!U zYfm#XuL0%sswSI5!8BAD*hKK;_YofLA#(6!DZTimY5@zR2noy=5}KR)$6*mw5S{rE z0TOCRGj8owg7ja$`5h~LpYN2@W>JoE@`^0bD>)0|!qE|E(H^TJKirG{6bY)-x|n|6 zc049r{rS+vnoCmT8UQv8A`p~QmEYa6^=iH_hzY~v-*wbTx(3lbi-;)pOFa_=y{pq8V1E0A& zo6qufaei8vRiEtT7^EhLriw~>Uf6SY2cA+aWx`nYJ@e_*)S#qE(Tv|OgBs!(>`9j7 zX3`I5k|}evxHFlU_=UTKlJf7uFR}8fNbea4g_iv7W1I)gZ6Sp^O^V{L`m)8Kx4aZ$ zjV4acotQgH(Q^1#4F%ip*i%vX=?BxYLYv2`pWiBpT1wfIRy6RUf@YXuALQyuw8DrL zcMal*A5!#|Z+abZsG#cejiS|u`-aX}==mVgcePaY92YVW+A>vwFQoi?ld%}zYUR2a zv^~P+|4JBnMnm6mtM;sMOG6L1K1;BxG^yPmd;BMF%KxFp&D~fSk1w>V*GK(3=-+`E zw$3~PTVIgyUkQ}=juL_WB3+0p#&4H!nQ)}$fLdEb6IG}RV8I^o*ncy%nIQRSVccw9 zaq6SLZxR|aGyzaecja91jcKoZ2R}uD>=}}1EH+bvr7;;-(qaA~m&RhGP$!2IyRO@J zfRUl3mCPN<@zGpUOWr@xZpH|gDG*wkRGZAQwH0OV6vChxk{TBjY)WFd#WB}MIP$;9 zMID*I{W(8BbF5*qY_tnjbi{&$4%G;fy+={E?ZzPqPE&lMlrcuU-hqK5^sfw!3T_v- z9C&)+mbX6!GtFfohdnToi&htjTKy7P7O%#;PP@={iB-#JTswYk3?c!2HwmVhU(F5+ zhHW*I32;fvFsKZ&$36X!R6j`cX#*%lpEvIW zsYA+W+;Z(|DfZ(qIGPlw6A$PR!DLh480rOrMu|HMN+u4f6Cz8g{RY|1z~Vc*!aztP zp7b8ZK{EQZX_*3ko`)TQGbO+($#qYm8Kv2x%q|uh&#VSaTTHItua#5><$zj zmgBWg#MK@&^8pJA@!rKaulp-*fU=Sw{WMAxIRG`Qvd6xe)NeUf-<_3rwc*mzsj)~luy?p`={T8aq%09JUcxZLN5JZ$Nfjug7GAKr$KZirbA}i= zM%3QIW@Prgud6>U*j0u?ysYNYp|Juhni)D-L!QW~!|-XoUA2&qTk()_pP+akS?uxN zimMSw>X$O2)I+zA>}7|ak*h5E)#~f(QQ)7>uRv(s;ttZIx3}bc=%rACMwy)W4ib1D zu4V-{&2qasqWmbsn|dP-1dBU)#~Dp(Y72zXRwB|XYNF1V76_+_86=}lWip}x^k2o$ zxJpob_4!OG?ezgY&Pa1J+geV@);u_+!O28Is-vrKo7C~6X@0F3%5R)|sQ6CE9HI#J zv>BkonN=KXme^BdyW}(FF+16d!Pj^N{W&%?XzaKf5yIS2;Oi)`ChtLrKDgxy;=TT1ekI>MlUkxYZGnA)j!4|_%-y(xB5JMJnF!f7%Z=Kol> z*(F5@Er!#s6d1FAlIqm*pA39}8e7Ru-wXNe=>hJnKySP+O$(BA~tcaJqhK#P$}<1k3vz0{9vCnDs+gRvHNv`MT-9sppDkSaN;{o#FcA%%yYu1PJbhXC^H9OTEG*;rpBE$_-N zR~&;K$yDZUS7j0mtMOzWF%AvJ#WnlxL?B3Bf|Ey1bf}M5pbiLf*<&he5r^n}eXK+R zumRJ5Q&i*zn3EPG+f>-}63S_=Zadz0tI8mPDY74_ri9z0YNG&ZGO}2da!-x6GtAWW zc}`=NNB!#BAWBuHnSFeXMg{5qPu=6L^g1=f^O}iaO#$ARM6A~0r@ZzpF`rfNJi|^R zf=+3#HW3POK8$?;3yiLhEd3Dq?A)JEi5QSpMAL{8m(a63a@S-Ooe{4Bi09TfJu*7N zr(CaRBO`24x$zs)igubhC@>jwUrY1%b|avT!GMVPWT`s?n5*OGIRUG(;{$F+OX2Br zAqfRO{sEUj#ONeH(8kwTy`h2XK^cSvPFzsU<7msVaY<`?QF+OKAU@H3jkC&`R&hgh(3vmffZil?kzX8no3jAs)>4c_XdKSoix^LXx57z_n?eQ zh9`vv)9+u(9gEtBg^-Ao5>pR5N$P~XPrEy>nHrUX5LZX4!6A7}oE+?p0GeK3BjU(KVAs8| zA46IuYH;vY*qK>oI%W6Shv#P%a64LN9-tpEiyI*6xh5G_mTf+6vhu{&VmfH$!8^Xa zBc7VYPiZR^VS6lbV>4m3u&YGW7hKJ;@dzU(^^7!m#6g&1r~zpKa0j1|jqjNAQzORw z*MXoX$u6bOmu_hBpJYTxIUmYm^M0JP@KJgleN4&G*g7^aETyM4DMqYyK$05UcSOjV z>>3_yi{_->-IvV@xt$KsB}%G(eJgjU=DrB&APsUPWmOg(?g}SJ20)XHHI;rE z2ekhfu#{kK^{F1$)7~PUv;$a#`Zf_dO%6kO(GHXF#fF6Uh}JwL#e8czc6bS_8YZxR`R4i{(_yay+ zv$8tBpr?P$?@h?>a?Oq)TpWdDKY>Jh8!5wlBUm6+3{G>+@O_ygxK5CvE@O1;Aje+Z zCj1tL4|52E!s~-(Wi)L){lHTDOw_g zn%^b_t&?Go)>6`Cdz992kgQADzZTCuguZlAnr>6oo0uI-uu?^w#-DVLqPHIsn*ll?j z_^WNZJ#Of+U}{_M+}GuAplg~X+|@9kG1uea1s!u`7dJ{+dd?Sp&!l6kH&{T_6LyD` zR>$070j|CaYj=p56WS_WH2%n9IF+H1d+=Kxm_$^uJ(&`P0BLKnteQQN<}?FXqESug zOlbE+NETiwaTIw&LD=>AOWT?bP^P z9v58pVo4f|jz8}%NhDh+Y-D)Q^Cn>FAZPZj6OyN!;gdm?`bNX? zHAOJv+g=D$aF$Cal?X*f*TBn5{vf`RR3+YlHVjNi`7Jq0Ly`NvG&5aXtm3$Xo@I@D zDhc0x6TIvQbbklko>nQZvZ6${&C?T=94mMf^ymU|U)lo_^OC+O=2#gJ{b7l7pM9M5 zH2i^+HE(uaErjp`ByrI+kdBuQC(5hba9V}H(jzy>12cc#MzYS#i~?O$Bz0IBvR_pv zERiT8nA+1v=^{DiR>2VGfTHTn%`-}3jTNa3Wz)29_k&d7c8``(hC1wQD6}-{7Fru> zxM#975xGCA(grL;iM(@ksaQ-2&3Ow%s=(^ATgY~aV>B(drpE%jCc}>1{8AK^cRuZ; zC_zEZj)Em5)(fcZqv8TlQSpH#~Qpqom|O;y!yT>k1;sU1F*Pyc}vg2}WEzsO9s z8Q}?cdoM>}76!`%%Re%QH7Fa(mxbbb2?N@QF_6H3v-KK;st@*Cw1f(7gY^FilqqZ0 zr#IdejNq`BGd?I=@!E**KhX7`y08M17uIOz*&lB<(9!Y?~CHq0(HKerNlv52E1T2Pt%0%DiPF z6q9mft^KS-ARw~IXGQ#WD!xL(1XnFmzD%6KFUV2~ueS#0gwq{wNmsB5MW!g7s%9JULP)VvgeF9K;vjhzCP%ivakx{IKF{D2gv_yt@)0Rm0D9LtIV^z(g7R?=?eU*F02%oha>@ zaAp6W&pw_eGZiywL7i#8A0$NqbE`ZW2;eaA+hmHf#Qar6Vur5X1;95+fF^YmFh|vd zxse{`t9S*Ssmw0OO3UHX0VVfzhjFTA^`zP*WQn*O8uDZYE0Il|KE-L&4+{9MU=~^t zjTZ?xJL{Higr1_6?hAfs$1+KP#NwJ-vB8Pi>;-X|w#4K|iHSk=Tyxs$h(I$q)d`Wt zLeuzPEwQXIF_^+O-SV&n3kD*2;?GDW z>&ibo?}f04+g#dWeSW~BQ;22)onHCECvHRpagzFy(sY=B$07mEc>iaKP&h;)3XxJ{ zU01BAyKet9+73|=QH-NuvTU8x>fxtI3X|!lgxSrI>jt4-AbFW1i-${wp4CW_!a6V; zfe>;ig?<1SRY=S@qza(PC_ya?h@XRV%4i-~e^vlHc5^5gY$0Wpkg(iT)dicA2{kSV z0jl93f)D<5hjAhy{zRz$Lji~zJF3-R@C?F@9F-Oa17~c(R3x|j-k)q7___mO;q^i9 z9(*bJaGlx;HWoQh>&T=r8Aihh(bs`@+MHDAi$~P3g%QS8xqY1q6s%~*wH}> z&RBvpNn6)Uz{OVp5yRG*-~_1=F|UclX;!8FkRHPiI1hsBMqLr15NrTNqtws>;LRF{ zbQh=$3VwhqcY853MpV^hvik-5k=*nxM}Ug2Vpt3 z%HmeE1`xqqm1|;Iji*8)ao!zLlNRsKFQhUcj3S_xw0pxaMHgX{MVJo(kiqH-B6kRu zgrFKSNRe5`KQ&BV7?KpOlTE5BGF4zH4+IYopiHte+{=XUjrmU7cunR9OB`B>Xp$lc zDFNz91jr6k5Hmy$)?5N|*YKl_vLr5Fr%Jh@nj>z-r!J1b>`i*e%!&n^{E&p0Ue62@ zt-nFO)6SDN`p+qfER}^fm|#qz4B+}F5-JQ&8%fO3MNOfgkkmQ|Ww1KE9sOJfw~>ud z^W>*MGxdJVpe6;1Fi+==;F2VAWpr3tUyb4noDG*xuTiA!OeDR06BgG+$cXjgC9mUK zR7qO@$xyWZ(7lK20mV#K|je3B>`(_D%h1D-)T9gY}*aY8=Z0YtF zg}2sgoXBcES=0NbtVKOFKgHBHI~GeUjJ^;J3}kd&8Y8j@WR%L?0JJsg81zYIC5J%% zR4U(tUb#?4Pl zI%a3)0>GW%Z-n2r0#6qTBaegN3|*D>zrbg(9R%aR3A@X(ke@c7%~sYCoyn#*P?%Gi zF7%BdyBFe$ZQD5`n5N`z6uI#-ot|Ig3`u8Yy6)Vx;kqLrN&7I=dK6smoVsSeh!9wc zd_=Y#oc{u$J!^H5O^@7-V4R_7Y8Z&t11MRrOb!csn-ERwp|sfrHDX`Lq!-p7(?-zE z<8IWWN-z?Tz6XkXl9jdUU$mLU6oF^Mi=ke0yOx>N9T%!UMXQC*yE>z}H=q>Ln!c!b zQx1Z0CVctHYopDOkS1xHSqL&9J_te|hQb!SU(S((AZlDButegkO;@U*JbEebal$}? zMf*Y$T{@*xxO!#n#Zez|P#Trr7EDX>WYubl>q4&l0+NdMQJ<@DJ3Gi99q_5}<2D-> zl#O5u7N^TkzkES~AOs>*3|BqcxRJS@3=&X@UX6MzV-smGUjsE=()woJ^P4!{6%xYz z_stPfRH!@paHl$dGdx;DNgtJJZy>zj%6fN5uy%kyL}4JTkG!h>?}k)xVG7B6m`GdK zm!j!v5!D-+Yh6hs`nypJ59`S&t&L!uz4jSZgNwEjKE^2ZT3-B&?VL9oKdx4FWOlu= z?F0*%i=PnOv3AvQEGV&C0^y89c?2Cl#?+1$5G%;&a~Ok#AvVI?Z4#*~Bvg%9^Br3gkE9N0Jg!7;Cn7BdvdVy+~lq zh2XSPfxl?Wdf#wq&o6$)s^P2#tC{OV_1ES4nPwz)U{&Xhu!z^7A6;=0p%Mi0$0*Fs z<-&iGb{o!8pY-$}Tde7O0C~o%vr#z}53EC%0SevcErs;lt|@un>| z84hUkzxkQF5HoJ%(?R@tzkzIQ+^VLmS4%gE~ z$MK7uv7#bDVJLTkL5ZJ0O*Mw6b4dWKWMfM~lDSaMLjGv?P^lz*zWfFPLTJLE@qHP? z(S?K`wI&q8tnG!YxR`?lx4fG~8ChfH?t7H@IMzROL@qM;I+Fda!*aIB z9qH3tO}dVk!+Or5xApln!7xlwNG457ARtZ6uGFINnywcDN9v(SjA`=)EGDuh1#sJV zH3_B2w_a|M*D!Gdi*)PxL6jd#)<&iQy!oLwE_;I+(oeHkO6V1_6kU{z>74>#DU-o3 z9jfGfn*6~AT$Sx>6_U0Q#A0b9^r?s$xPcNm=5UIcxMM$vF%6pD0TU~|+JtUgP&@BE zjLafSy3I`)++PKy_Tpy5g+`$hI*cPaEF&+B!aj}OV*xOf)T(Gk*@J^%7%Uu|1BG?Q z4}@4e6%s}c+1*>DEg9;pAl2;w3`?KF6B0|>yqd%b35VJKAQ&a0D^Xatyh$tJsOiud zNc`**l9P;OFz2GPa>6Vm1#p5s0As0j4V5D=I1x@YSb=k*?khH`vKhI7VEoYY7_WtA64EsbyiH7AjVNlw`}#N6t4*6xR}nXT_b`RY zu8nTg?M+&Pmo6c=T5m`N3uH@yMHu6l{bcV(A}=fIMZI zMu~(6LN*q886yQQOh6l|AXorrWTavVz*n0ZjyJ6H@){==lg2~b zO$yJX*}EKrjwG*vKkxxNqVzJvjl5 zVK0tGl$vG2X&_6dNk3ec9(hvuIc~t!1#z0`%M^$voF7VPN%zks*@GZEv9hqk$yzd4 zar_;1>d5HFGM<E~}2x#K;X|ug`n5pMA4vLy`XQd7Krj2Sd}X3^ z0FaGL3+Nxc`pN0lB=UnJC31TYGeQLTEMKJ65{J<~S9$T%$_k0H1co1mb)Z}*wxgNo z>dU;4#vpmd`(|lELjIJGL-PRTOD!NxQshb&lE!=xI@)#h2S1vtk@3zmXz1kiY1G3L z6KS#AYapAkH4M0Gzo=t&5a}Mc#k*KSQ~z|>p& zsh&z5%c%R}UWpq@KrC9plfguUPkRu!nU#oep8U;$jQN5@LuvoCNeWc(jWf6RI7ysN zRyw_DWBpV?57o?X8V*TFUV&MatD%m#v@5(M z+7N5E@JeO+`g=EmpP7O`kVdd@j|QYKVs_=J^(8pB2SK9qYt@HRMRxabk z(~5kq#u~%^0pwp;M3RadWm?1qa073+^`{tA=?zMnGDc1b?-J2aA*uLe2v43jNp{_f;Vj$=RoPA&~-14W{wb&3P(%i zPtxhq&jC^D5=o$Lq#+WBD}!(HFh6eyBNbM?W!Np9PBz5KCcKiLOx7=8M^SKH=v@w- z8!@JFk`yXcv%5_MbE2wNc@M)H%+NRy3Gt%MQVOWl`r=4c&e0v~i}(hDYBFS;S8uFw%FVq9f*n6-4<_VrFjyftyVM{Fyr6hA>QLsI0q=|+NVrs6R@C*Prg$JjEbNRVEj$j6x4vfRM{Qw zfl}CK>X`PXZdeKljbtyD=rl|*XvJ?;2Ts)NRWVZ-^7Dllj3lHxV{>i?`eT6^eGpwf zF+@(5XaaRn+yT&Sj%j3^n}q^`2Qn7!)!M{7JFiAX7e^I3#(NwlMZv+`YJSmH_@)V! zLma<|giCLA$33*IxU5AMG@U9JE`5Y3=|@+UZbTtb4HWXn5}dT857cHW4}w(5QSH9L zDgQyXFBy7ED(I$g3(Eb)5GpoF28#$R zP^8wsYni%A;f+|x&Fr5x!ff{1g zbZn+4+p8V3j{Ye&=slD%H!pTvR+ZlfYftm46Ovf=;;I(uqqQVTe6$}u=tiwenLGWE zNPS`>a2Z@ddCij*oC5q~6$V9sjcUBM+Yk%!YMHD|D18ukkQ8lcKFh4?v>Kp6pHbyU zcsAB|v&h|z+DGL*REi~H(4uhDha{0<$(e7yO5_`?rBUWENpTYUQq&^tQliGQ5i{Q5 zkn)A&S34laf@6KS#7GYhh$%5<+!6fWYhYf0B;vC4}n6rPSSqRdTeHXS|(autUl5QhCA$hoBaalXjw90^D% z-4cU3C`Xg{1R?$A(2*kwqHM%i1->gH+Y9#S2oZo&EqauZZvl3TZ-HmN!Rd!{n5*3@p^wC6LxtZ z*5{-xVnD9_L3ouO*+x*0fa(`8Ks851b&=wHwHXooQT6R!<8&Eb;MiZ^#2HHl1G*>x zOFdHOAf5-`EzD9ZXSsTpKal!8bJC~X1U{xMC3_+oB<7rjm<`yqyJP1=scBxCD6kX&sW)z`yFRvFMa{U45v!ZMc zhK1X1s9LL$fs6Gk?nYY*OzdzElcbVk+qV~OzUsCmsK6L-ag?KAtPe9tT>tUBjPggS zK2exG{6Pv&Pomp(jjI)g@^x2=BVv&+2#M;ntHK`oJU3cg)Z1D~ygEc7_^DXC78Kg^ z824IQ7+|=24^c+&$?Lz1u8IT?g60`S?5qfdKx7^$hFOYVL`Sj_jnBx#gTM%=s}Cfo zLu##!{ZVC>t=)A3mcAyWPl6cMPQYG#EN=thPwS)DX}9YSf}=7DIFI zaj+YL+04t3n>hFp2K3?xnR?Y15Bq*Fh-+O0oyJ>$a{VCwK9e#%Ay*1hi4)VDL(XZo z$MIu65Ym<{xl%12?+=3OqosH!6hCDio(HQ#d1Dbb+24)A$4v>1UIW1ZE_-gBZ|ZEy zTI-vmgi452{AA9mOjF^f!=e*tM_qO;3!Nv3gA~+g)T-W)`aB=(j~17va@mWCK@SAS z!rUc?f?88T;>I9{7;s@~7gXaapXKha7Bk{~{U}MXJ%iAqN*VNA-jucQd_n=Q{$j|W zGqJnQ?+At|eiEfd8J)OuIS5iX#&?Xu$m2kNIHJ>M088uO4KAU`SES8nvPi%IWJQne zd=iQ8H%4h#3W4+8t7(mVL{Q^-J5hDMgbb+J9wehIjb`vfCbWDojMKAmmUU!2ZUK=r=@Lll zOBF=VX$6VojSD#&^93O>mU1(pChDtAiNXxI@Uwdc30L33(Q_j3{A-)hSIatFL4LMJQY0CL(P7T_%8m$TeF;|6v!o(sQz_EWX zGN`*c%ZWSAzbSpKa0%kIKhfwE`+M4@xCNrN#%rX_wToiUUn*gfttl zu8RoV5j;Sq&lKn`+LW(x5LeH89yox!h_i5#Ep(&4IHET^d!r|WFK#+`f*EL3;GUk?{1^uF{F}*k-D3>=kHA1KqAYw2@$<+aO)f~Uj{CAM-lB$tUi8U4l zDfdI7M=AAADu;m-*5{DhZL4KH2z1%VegZ`y-$>_O21#Iws=JL6Mm1}96D9(P`|rsJ zh?}%g6nNqgk1>Miep{jjy%m0Q6EBKF$g*}J%;xd>bsZFNIDL8} zaS9prGe+fC4@945?mJBvubm#Gr>WB%a!IXso2u{M=PIY+HBJrfdFTXq5to*>n=;<4 zW`_Q$JGf(^fRv7!4emR!FdDVcjrbdjpz7qxg+3r*917-Fu78!0KZHo$QjiEzta5=7 zzyptr*{C>5wuoWduW6 zN)`rru%4s7!D4j4-KfYaNQZ7`#W4A){D9fC)`jU*3B*5kawmEzPZ(P%!KF2 z2%WLJq4}$PF zrTsuvMZSx`IM7hggKsGCF%g9BiwXeuF=^k3=f+$vkuFk4tq1BXFG?A3x4YWRNZ$vs zUxVZodmvK&p6ARS*TRj?Xn(r6sVj`Q$W;ZT|9AoI+jCg@jG57esF>#{k+(%zbBO3b zjj{+_5fU8u55h{TdTw-l+yHKp{~uN7mL*NA0@3#~ihlxK%ll>i6FV8PBdhy+Ey`3- z5fOrUUT7?*&i#^}eu?txq%3CyZZvYFISJ?;wfpId2c7CAZ^~qBN`wqaiYz3TXT2C0 z6Ccy4%B=V1^|JmEoRwo7Ofk&Ru9Z?kP1zuCqlvHaQoBYsfccUD1n;DqDMd*()Jy3G zF!f@6RHTw^zTcCdZ6F7MACFKH_>DGG0s8lA4Tqz#X}Swx+%HEzAOY+J$=FIJnWL5@ zj}m%~t%t6=rGOeBpwp~Axm&cDN~L`gEux?CWX;(nnpp-OG&P#o`O zmIf@1iS6-h@Zyf{hiK8$6VfrrLV8B{@z@ljh!h@kiH`8&2F!WChP zL<*;;=5tjk25!_Hl zg8MG_X-X;k3w8Kih%&8?B4@nbFZgI4wFwnep+^QXg%xAPsJFLvWN?_%@v)({Wqkwi zyIE3$$rg@YjR*#6C&E!b35#kQeYroL$)igP`m(u%nfY1p^WL5o2LSMOP1&R~r<32V zq(}WcZf8kWfe|uI@{9cSBOV)}z9)laedHRpA^Ipp_F`onY#F|M?zt(S|~>1es5S$bHV>z}dh(sMpuwnB5YorWhcTVeW8eZ+Fz<`xWAWgt{2 zjjv6fV3bjdk#z0CldOl&Kyl;cR#3?rGu}n*gagIPU>P_9Wl&UB$&5N4<cM#6&d z+osJd-n#O&&H|a8AYY-rjtmXiES@7(L*)F+&Eh$7y6Tw{)xELaLWu$7zzm8u#5RQ!C4@3XO%ny9-A$tv)b$f zr#RDFnoRhtH&0Iv4L3Kek5)*u7=-#f1`_*isJ18<$I4+*8sZ!RBjApsfD45NQzE+R zCEWl6yN_FQ|8n>xA$X$bw(Ozd6w$Qh7OH{{EH}lUnqd@7ZTgTcvYr{-O3d%+TxJ?W(4G%yuuB13JUNukn<;h62&F*T_>7)g))>q}10r?X zNARBm90x-v%#SqHCQeSJUUhGc65WaxVp%;pH)~0T8T=z^K=g8U#0j21c7^+Zqs!k0(ibtdz7kix4XljV3yeFfL9bSoC7u~dq zNpWhyXT)RBjZt+B3FJ54>&$|F4~y}r$U|_Yw=s}JDjYJkk_phKD~-7k#zsGH(Q~5{ zxg(T(nOv*dIq%T00nUm;&arpqXPBS&$w^kZ=VuV{Q7M*W$L7VwGpwkZz_EkTEL7u{ zRQt!qGkw{WcY>h*Dg+z&OY1|3bd zNAIvX?Y!{NIz!t$XH31bg`HTt?M+m7)q?Iipd5;oJUIhLTQX5N=U^ZY3SanZopa|5 zd!=N6LCMgZ>Pex7&GWP7k^|{*O?s5o@{@q(W``8a1Y>Lc3P-Gyv*4OhbkiWr72i{7 nnVsn46NkbC5Xk)G^iQoMY03V-{{sL3|NjF3K#LXLF_r=V9ex=K literal 27222 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