From aa912e5fe8679439c4fe61bdad14f11d3d2b5390 Mon Sep 17 00:00:00 2001 From: Noe Date: Tue, 21 May 2024 11:42:24 +0200 Subject: [PATCH] Updated front-end for salidomo installations Fixed zoom-in problem Added log tab for salidomo installations --- csharp/App/Backend/Database/Create.cs | 2 +- .../App/Backend/Websockets/AlarmOrWarning.cs | 2 +- .../App/Backend/Websockets/RabbitMQManager.cs | 9 +- .../App/Backend/Websockets/StatusMessage.cs | 3 +- .../SaliMax/src/DataTypes/StatusMessage.cs | 1 + csharp/App/SaliMax/src/Program.cs | 2 +- csharp/App/VrmGrabber/db.sqlite | Bin 155648 -> 962560 bytes .../dashboards/BatteryView/MainStats.tsx | 42 ++++++++-- .../Information/InformationSalidomo.tsx | 20 +++++ .../dashboards/Installations/index.tsx | 8 +- .../content/dashboards/Overview/overview.tsx | 79 ++++++++++++++---- .../FlatInstallationView.tsx | 73 +++++++++++++++- .../SalidomoInstallations/Installation.tsx | 77 ++++++++++++++++- .../SalidomoInstallations/index.tsx | 15 +++- 14 files changed, 297 insertions(+), 36 deletions(-) diff --git a/csharp/App/Backend/Database/Create.cs b/csharp/App/Backend/Database/Create.cs index 14825c49f..d1b50e107 100644 --- a/csharp/App/Backend/Database/Create.cs +++ b/csharp/App/Backend/Database/Create.cs @@ -109,7 +109,7 @@ public static partial class Db } else { - Console.WriteLine("---------------Added the new Error to the database-----------------"); + Console.WriteLine("---------------Added the new Warning to the database-----------------"); Create(newWarning); } } diff --git a/csharp/App/Backend/Websockets/AlarmOrWarning.cs b/csharp/App/Backend/Websockets/AlarmOrWarning.cs index 4c4d2c31a..6f737032b 100644 --- a/csharp/App/Backend/Websockets/AlarmOrWarning.cs +++ b/csharp/App/Backend/Websockets/AlarmOrWarning.cs @@ -8,4 +8,4 @@ public class AlarmOrWarning public required String Time { get; set; } public required String Description { get; set; } public required String CreatedBy { get; set; } -} \ No newline at end of file +} \ No newline at end of file diff --git a/csharp/App/Backend/Websockets/RabbitMQManager.cs b/csharp/App/Backend/Websockets/RabbitMQManager.cs index 0ca03cdb5..dcefab264 100644 --- a/csharp/App/Backend/Websockets/RabbitMQManager.cs +++ b/csharp/App/Backend/Websockets/RabbitMQManager.cs @@ -50,6 +50,8 @@ public static class RabbitMqManager var message = Encoding.UTF8.GetString(body); //A message can be an alarm, a warning or a heartbit StatusMessage? receivedStatusMessage = JsonSerializer.Deserialize(message); + + lock (WebsocketManager.InstallationConnections) { @@ -73,6 +75,7 @@ public static class RabbitMqManager //Traverse the Warnings list, and store each of them to the database if (receivedStatusMessage.Warnings != null) { + foreach (var warning in receivedStatusMessage.Warnings) { Warning newWarning = new Warning @@ -85,6 +88,7 @@ public static class RabbitMqManager Seen = false }; //Create a new warning and add it to the database + Console.WriteLine("Add a warning for installation "+installationId); Db.HandleWarning(newWarning, installationId); } } @@ -93,7 +97,7 @@ public static class RabbitMqManager //Traverse the Alarm list, and store each of them to the database if (receivedStatusMessage.Alarms != null) { - Console.WriteLine("Add an alarm for installation "+installationId); + foreach (var alarm in receivedStatusMessage.Alarms) { Error newError = new Error @@ -104,7 +108,7 @@ public static class RabbitMqManager Time = alarm.Time, DeviceCreatedTheMessage = alarm.CreatedBy, Seen = false - }; + }; Console.WriteLine("Add an alarm for installation "+installationId); //Create a new error and add it to the database Db.HandleError(newError, installationId); } @@ -139,6 +143,7 @@ public static class RabbitMqManager } } + } }; Channel.BasicConsume(queue: "statusQueue", autoAck: true, consumer: consumer); diff --git a/csharp/App/Backend/Websockets/StatusMessage.cs b/csharp/App/Backend/Websockets/StatusMessage.cs index 0a4a707bd..73009a3a9 100644 --- a/csharp/App/Backend/Websockets/StatusMessage.cs +++ b/csharp/App/Backend/Websockets/StatusMessage.cs @@ -4,7 +4,8 @@ namespace InnovEnergy.App.Backend.Websockets; public class StatusMessage { public required Int32 InstallationId { get; set; } - public required int Status { get; set; } + public required Int32 Product { get; set; } + public required Int32 Status { get; set; } public required MessageType Type { get; set; } public List? Warnings { get; set; } public List? Alarms { get; set; } diff --git a/csharp/App/SaliMax/src/DataTypes/StatusMessage.cs b/csharp/App/SaliMax/src/DataTypes/StatusMessage.cs index 15169c2b2..6b24a74cf 100644 --- a/csharp/App/SaliMax/src/DataTypes/StatusMessage.cs +++ b/csharp/App/SaliMax/src/DataTypes/StatusMessage.cs @@ -5,6 +5,7 @@ namespace InnovEnergy.App.SaliMax.DataTypes; public class StatusMessage { public required Int32 InstallationId { get; set; } + public required Int32 Product { get; set; } public required SalimaxAlarmState Status { get; set; } public required MessageType Type { get; set; } public List? Warnings { get; set; } diff --git a/csharp/App/SaliMax/src/Program.cs b/csharp/App/SaliMax/src/Program.cs index ee0a76355..c51db600d 100644 --- a/csharp/App/SaliMax/src/Program.cs +++ b/csharp/App/SaliMax/src/Program.cs @@ -1,4 +1,4 @@ -#undef Amax +#define Amax #undef GridLimit using System.IO.Compression; diff --git a/csharp/App/VrmGrabber/db.sqlite b/csharp/App/VrmGrabber/db.sqlite index 4847f0a8bc3ed2fff4adfde875c538d65ea8138c..29961ffced4894e9beb9ec31ac66164e1bbf1c53 100644 GIT binary patch literal 962560 zcmeFaOK&7wk|tKw?`~=4wlo^GGIzv?$zZs9JXsjDn9LWum`N7N%UjhCG@KDm zGA847<3Zl6Rtu1T0R-)4qmA?v^cMvE1FfXB0By9GSx6f}fHwN<`0Jcw=I#-}pl4=* z3Dm7j4|hB6pV_fvX2;CV`7e(Li_p2A%tpb&@qhHEKl<^HfApU_&X0cdqd&&~{uTb0 z{P{8d@_WfY@c;DhvOjc`iE+2}r)g_q%M4mhM+zMb}iMR>jl z7E6=F%Wx44hT65Cwtwdj{_Gdu{P;(MaXD}9~QHTbMVG_=G8raw_dM%-JiPknpg8{Zp-_FgB4EpD=A$Rt@PNUsuKi^plMj?#%(R63uZFRhQ-FJQO z`OeGmZqUPRJ8xjA-UlCdp6?9E$RE?iI{wjr87zW>#bP$NS`t0?`A$Ea_hy4BIRSX^ zCVKGbB_54-pS~L`ZoeH57Wna-Ij;7vmUCF?G|9Z`;cuK)dW^X_ag?JjqvyFBZz!^v_A2js@tbKVRmSHbXj zF#cc;?^}w zd9z!>ZCr|5IJ=rSZ+>NAmt7_NAgmI8_yCSy@?;elk}fb*)a!dE@zS>g;9VJhcV4aS z|Cck@H38Hw6M_v1LA*Z0FMSZp*8lp4_|Jd$2l&t5&@TSb@8CagfBYx-?;m~j@kd|% zFJJw)U;Xc2ef;Ww{OW)D>i_!czsKdLKTileA@GF269P{NJR$Iez!L&b2s|P1guoL5 zPY66A@K6N)^mo7cal6-Qb^DEezvXxTh%PibVY?r6nyv8a`VZ+s90~UN-O&33y3lQe zeyiULJ3-t3eeI6=)pgMMJ-Sf$I&QZSG#i~(<9F#oOtjN$H?Du@tKa?RkM-~}KI8Yd z9qaXlK+22dVAyvkuK}TrYZYO9SiJX&2$scD5MW2}-1FV0=Qe#asKS1u$VyX+tl)cC zWW{>AiuhEs$s(h1jL(^?WESMMPy))903J~czA#FvZB3Zanm-V(EeTikK@3^_;VNKl zG?}~}2GihbfMgoV;n|M3_NF?T*bRy1fEHzc_sffm-LuofpF7FloN;*XT*vuB@m`J7 zn~X-mxc_tK^8MlN`T1K1={~oV_S949Rk)7bCfXtRxpUC#Ek{eFU4?z;CLD*eV1d1h z*%CL8LT4~{f;*%WQG%8;89SijT-*c>l9!@Qo0{{?#h;%VymgzH+^g-FB%guj3-&;g zyNW*6q+sul$UvCSAYy9n&%_{^cXh10-YtiV!4&Xh=wXj*w%DC7CR3Vpv^O;;B)Ac%6l&WOte+pk**F|Nr!C0ad*>b-rjzBuxx%Z^ zn zbvOa`gfam?3+Zp>r`sF5-;QVDRP9HdNUI?+$)-d~)#8 zc^1D8R=S(eSxhF*?cnCt8r!dXO+VQKhsNi7k!rRx4Y;;Qt*n^3EwAZ%_0A?~70rfi zY@dar2`YNy6$vm#mPV;|+JTHNFj>jsq11~g$6{yiJifelt{A%)(LawCJlq@SU(DvE z_TsBC%?4T`GsQ%CA*-1aF9-AFaZQr!shW+U-Q*_h?n>--2}8#2gisY+Y&Mt)YI4yz zI(1<5Ib>rzGDnZ52jl)}G)~IeqiKAlaE0<~ZLbDFt~J{~_qtuTZE$)=`k8zK7d+&X zP+`Kj!fC9*pD6cflUdfl+%$6oV*U)KPSEc|zi-P=7);53D}>o?cWQ38S#y2li+LRr zWd5UqSkCpqXTksf11|hFl{G-#T$MGtHps`5UNCeX0pn7LyAb3SV6M4t^XFbr_x4@S zt?zfjdVAl+Vzl4$TJC-~xW3-M4zJvO%G9$Mu^|b?E-}T(C4ktBa5oxf4Tf$!Ynp9l zG{4+^fgHTE$#UG^g_k*X$P)!_e2J>nUpp!Sv0fJ7Y(e_5aQb*&L^xZ6JfzMj*u~5w z^%)HIh{_r;Zay!XWV{=RNe8I#iQ@qxc(lYa+*V!RiFj0j1S;_g5G>13J-iKjl$5BU zig#FTWk0#T#*^B5Z7=F4mMLtT+sWV>2`^dlT`^h8B~TetBRbVEl_kVRn8RuX7JNQD zh^1%YFbw8V7H!JYW$8=-Uj{uC$-(7O&l~Jr-J=x9XpFLX9lz^t5BAOg0z~RTyWM8} z1-wxht>#U(r+{qba5$j|oJJ}20bDWY>o&n5CL!!wRu+~hcbW{nwR5MNO=fMQ*l=b)#DK~{gtlm{=|oqCG%4HI zKzH~Z=31sP8+RnaS@UQ)UQafM0i`S#;_25KP27`-B^*L^MVVfrXRcnJ3ne{P4R$QJ zl494~CU)dH6k_MqI+lA8Um@%~(SP|Co zeT_J~$osytzRiAdQpVo8qH0V=rT0X)SiL>Nk4UV6-NtIqYqB*X!H$}|%peEr0GFro zJ+-7OR2t(p{s~g0dJ$jVh#zsvtZ=(2lEeWDyBkrW!5iU zC&sjP5z2;mt{63XpFFIo2ivDSi@ys)Xm@3chUil&oEV$pcddd^UXuk*zeTc%6ZDX6 zGIxd)%@8Mos6R@lLAmGsEm?~pR2DVM9Acm%}sGA zgRka-f<4M`wq#`O=ujLXF~?4$L!Rs|6N{LP2rpQTys#+5y9xPk&c)$rlBTpxfr%5J z_M%ZhIhK~u75-jm86tj$TQc!j-877z)VOU+2M-eeO{|P%|6Gh5(I{20tl4H3K4n+``^+Mpkh$=g{;G|N87^oi9cunr#61$=K)dt+b2#iG%(nDnDvDj+1B~YvNJA z!jy4~@{B*)_R4hS>PzVwx)T2XA4M%pQme=pLm~=0&be_V>e6d5b@>u$PGqiPm79$B zCTd;TmbQGe9PAN&tZ&*(E4OF2swU&r%NGM13J}hXidHYL#hly=N-6)%1Z^_6xM)QQ zXGHohBg(PPTl@y26l%Oz%h_Za?!5?S=$vEBq8H3V8($x|KUi|>?e+>|^V8s6U6iPCnu?)h+X??iWk5gI|e>fn3{2-G~#ZnE=lDeq%< z7E1K&x`)mxqUddBt_EFg$ZLDYN?Fn`OpFp`(^8 zRbtdjeFj5x9kby9ij$e^OmUu{972PR&~{G3wdTHdzWD|}vF*^(u!^KXC%t1D$^pSt ziw31y)NR)44!uOi4l2V^3zrzd@_ot5j>%LZy1vhLP6_yTgYjUr965yfv*mb5(JZx@ zMO7U+{_b`;5Wm5B%m|$i<@JupY_|E}#Q|Smj1nmrnCQo3*5Jd&6QI#z2^GYL^WJUP zUm_LXIiz(aS{k>ZRM0>jkQSN*?@>h)pqbwtSu2@97wQ*dc`yiQ3y!^v93+Ei_hdef z7!y)(F@9+SuEDd7)xO7hh6=|hG6cw0WK*enile@l;3RLK+&?HTJb5#MKT#0a(IWnnW3IMxyIbtc&+kU%vg(5cT&d9F%*tD8aAcMc|2!sjB|wW9=$(#rLefoy9jQX5>V7B>Sz1+8PYnd|~2^ z5>&nUp%aySZhdizCIiNJ*^5>yjF8NP+tU2aPmqMvki$rX8=G1cB_TDtET;l>yUGej zFy(r1gUy7#bB)^F-N6|3h4(p0WmJ#zT|ALuy%aU&E;Te_KM13~#wbVQ(|C-SlcQ^+ zGX`{jq*1lb7`v_-I$Nf8c4?xi`6D{<>Z2LricB>Vg{>b4WCTo6tM8KU7k%NjDsrP~ zasWdB0}wFD92u16|bg-2hNlane5oG&D2Kw&mhcv^(tZ&6}h25HPcyk7vv##u?Pn?% zVw}Wlf-y`_m|swZfHWy@%rrP@WrdJXdymInT@QLE%LQLx14`m86qhI)HxrU|lm}>Q z^VilG`FXw#G0>s_WQ-&#Rj{w!VEUexI@J>c5w4eq*aE>34!Cl9NypVqRIeopd;x`R zP5yY9J-LICJQ*&KIU6mv7$Q~xZyOUzzA0qsR(CMXuzqfSPD6~vC{P(o>HVr+cFgdNwlIU=pkN zYj~Ir6*G7_>XpsZT^GS<>yVPvEN+UCl{QtMvMCi4s)iG6TVNGV#QIF;g!kIH+#V+` zBh?9lDJMz~?ZB=;UA;rL5@NQIchVF?E$s$SU~Gt~tigtjBP|UcrF^?Ymo9Xyq7>kq zo`;RL2S-y!G?=UvSaEbaJ2IxAvxEQ(iwV1Aa&DSKlw=t3oBxKbvw+C2Lc95JIGJzU+3aMB zgQN{k*rJk>*SM9MTum|Nq2OZNiV0Q1FP}vosr{i7G0od1(_EQprQxp>)@&78-G_ZB z*Tjf~PoO;p*DhbxsP$6n=4YohdTq=rc3xxCWeeNsEqchHsRhyi=?KTwUDvx1yDzxk z*n}Adv(bD{(LBpY##UE&dR8{$PRwpYdH#*y+gN8O+H>u@U^W(#1rrNIjz17ujBR+u zhfK7!S;p)8z6-E!QvcP7gHot#6q8UdALz^lk|H0-!KjVR92%3-Gsk^O4_(gp;voTs zn&{M@2Lr`?Rox2<73s+@aCbHx*I+9>sHsQJ)?z5MM>EYTMkbnsGiUZM)?qf=gj<){ zY%Lsp@EjNk^EIa?{QrMLn4T)B;2KSAP%-qu+slqYj2U@{;edA`D_yr;N7FompF7z_ zIGP*!8 zwjk_0kwU#blT&)CN)Wvk^Z8?0PdnRhAhv?YzK$E^b6LGBb>W+JlIBe9>_it7wxSQO zzKUT>PgRR8GqGZ96B)%9tSq5B(mH(_3HuSzN#_1tnJc=3@|3O#XnaK>Dmw9AOR{{_ zW0gY63o{edjLpZz(MvL9_>>oeBO;*ZicFu#BzP(&6{^yUTk0w{RR&nJ9fTh621V{$v}FP&KNpI}5z(9% zX|lQp>3gmx%UR5)96F79*RCZI2_Z?hn2-QO-l0w{Q32)g{zwZMQ+y}Arqrq!v{7Hh;Ex|%16~#(O|)VX zN-1+FS&M=wA103N$GVL?cCK7$w?&TeODonvZ!gO5I~wmDyLr!RWtk>LnG@21?sL_+8 zliOmn!IcsQQd*UQ%mNNJ$T^DQ0U&#O2FRtFA_c~Z=wu*^0SGFoWeZ%==;yhTqnFUC6y6+9 zFM>BmJ!}rIZ^B!u9d^5&4nr5$5^zQTPTWI{DOHIr)%2SNG4kW7cIQ!I6`*Z}DNeQ! zrf7@49eo+ozMmpa;W6J%gg8e{tQ!te5F0^?lgm;Kkwg}Z^-Wz&gjn?K=*t9%qku=H zQp^(AMTm1$#YPYt5sH(`QZ1206)cDmwn!irojN+MOMp0vc2o*6^Xg)VA0toZ^F(h>(Ww+%=E{lS<|~Nx!8PI$Cr70UqE&NkaB(S-UeSy5Brh(aQz^L2 zg^R&WqY?OuYnC}eJ00uAB9zd&y7P8I-g04Nn0z-W2vJY$vySMyd3nAY(W(?&X8gwB zZq;{-k=6W)lXADsZ8Vye;Y*jI;7&($**s}qBc@X&s(zl?yH%G>p=x+*C#R)K)@`^x zLzUu=6f*0Go*I1(GZJDtm72B3iQ>YqF+R16Dc6A%A21AvywG^tNi{?w#ZA_<9 zRGD#`6>bSyHMd4g3fsKwA*D4V7YBC_X^XR1tG0O^7@ZQJ&=lPB7B6i#Ny zW)+D7oLHn*U;7oD8My>b+WaYma~H=Q*V^{-A6><>3RTeq6MG+~)YgFY;rXM?d{yc0 z$exNyZ#cB8r;%YB;{9@T70yns7122`iLpJU7NLdMl4{5d)`n7tp9SwmlKG|}My|HI&5fy3CZmS`Zp z?=_ei7-xFj4*LCYOubtH0iSaDeOe1M-!ISKmLb~pS=-fath2hZ4@lp@lvYgUu>sY= z%*7JzxYz2|F4-wmZ$tG5v2dQ3!FX^rpUij{c3PuWQ&X(z1Jh5h&XWVg3bfPfxIv+I z3%F?1&c0Xqk#=8V7w0DA)V$eDoqu_z}qqkF)PpMCu1BwGxL8TF79n+&*=gaAI_|Y7jB@BzL z;Jt>8+gUgbAzpn4K-Wx?USl_vQDbMRB+44q2F@;yN*<^+f<9d5_Q|Xe5ZW2PV)_HYy2C9V% z;`@mc#-ndy9BGeh!eH}Q|4hf-ccS7%XMo~_`@w?RT|1NOYv(HL1!()CY9}Vwstwa* zahudn%+Z`lU5iRA9F$uakDG#Fi;(dO-oEobymtbei#HkeoyEr~&PjOp3(pDAz-~17 z0q5(yoY1gI1G zw68NqwDqeoVuMC>BA_C&&i!q$m`~82Xoi6nYDANutxybt&3#AfQw46I)!FVu+435X zZAER6Xze>n6bZ(cFAp8mDc#@{OYo+mcjq+gDZ4-HKgU-Mdbg;M{eC%^ z0lEP1rPOaQUOabTA35VmtdMaf0@WPQ)_BH%oqgxcOfe#>!F8zfy{*D*U1(6Dx+)DM zTPGU#y7m3I;@eS&&(1%Nd$;IXi*r*{I}KEcT@AyLGwG=vEAl=y(rlSAX=9c}rTkP& zjPHor4(rbs&JfpjVhV-cC6`sFT_~_FBsSInyGRVb=1omsCB zTqu<;#PZ-iF1m(bsn${v)|jgOi7K=j4IotG8;fqCthx}^D0VOk<~R!nDnz1DD1I*F z51yPg@u2;v$snaSKp_Usd>EkUhcsUz6f`SP9u^E|VbK3rq!0_`*0luJEtFiZZo)%n z+#3tFA&VY)-WrpoG)&%G{m|r7Ln`aSk?GohDRt^Gz;a^v*eSGr!IJ3$mh9Q zmv*VKOWfg+3X4gVQllFjl(86)0cO2Kp{#n)t4S3sD4<{T6tZ_UKy}{78a^58KwKkB zyry!icnwTdU;+uip;oY9oO8gXIRR0ZPm0uTZ~u`kyD*;iGP` z$fV#}uU|NMJWQUbnLSQ=N=ycwtA$gp!ccJX6Vpjd`LfQ2#*`<>Z z^JT%eWS36gE4bUznm8RUF-{>Gd?TL>LgoplCKX14|Nm8G<|(z7GBc~9S>T*b=BmLH znDP({)jY3{EZaiM6#WPFfE@+FSM!9Uu6;A-WX$|6i+Pc+hbhi)we^X58%@Y;4Z_^- zv|SSwb8^;;eY`LTyi=ptsP*VT2bdLu8SHp2~X51#; zh(SPOmOaIBUtc_(F6}MSg*M|%Q-HAvtBqPE_o!*7IbAQpk<$Co3A7KHss~a3pSOdX zTa#$)ScVs+vzJ0doA6L|4l3YXP6HrQE35a%3utsQRg9&FvsP|_T5XFUY5;0-l+M?S zPp`n&Y=NU77{_@)FJa~}{$8w#KVN3TG7y*vAlWpnxZe}C5jB}fwmkx#q&m02NsU^< z$CEFZkFePUK1$o074y;WFtaFAi8yI!jJQ4AFZ4@Wov(!pWq5J^AG?4;=K=7695xs}aE6c*X|PIr$fbx_7r( zx3jBu=o+4*O-mFaNr0v>nj>LeOcPGSG`99X^)?x|FB&2_)U`^1b<} zU-{;%1pNO$9m0-C&qs?^j%2~V{GwM1F(jf;WOJzEHQ(zn<4w(OjdPS$K_?77TRZTd-G|TDrDQE>I?Dq8@^j>_*{p_Kj8TYdePza#nNt_X0_-u2P_Bu9G7=9Q8&>i(h2%xcod?a z3aKdVqPy#hrQRu_YVl^F^F*)E@rjQj>Pn$-IVW?Y5NV{2ce#+$)l|YoN7whHsCG)N zTDX~iB*DE^+1B9J1)DMj3gJ%WQ50<12Ni3;Q$iIY4gde&+V`ny+O)-!iSAsG4u^yT zg{>`^330w=l7tq5?fR};^O{_|;~!E97oAG=q0AK5X;uh5U}w&yg8H${aBxvH!qpiK zg{XVAuFD~(t0~^HyD8R;r_|N}`{BiSREufKc$^|w*K#_CQL;UkbTRl+=*0)~3rYkk z#MSMPk*Il-(S^tgk)28U3@*W-Q!SXxkBq@|9}UdXeT+gdWlymw_46V+)q=^K#28GZ zizoTVD05rq#GW$Aqy=ts$&|goCO+e#lDUO|9kYw$R8h+HM$-J`ex4*ekekYigHS=^EdV1e{c(09n4IZZfxiDC5z4I<-DqP-(+#wVY1%V8Q-H#C+|B zYy-oSomT>fu?WMgv9@esW--fN<4}@hy&c|AO<&>s`6RrNJ>9OL|rBr4>hN!m~0ysRYSQ=8$?&n878+7!K;_eq1!>GBaf>`W z`=WU$$1|v>z^9*qEH-4UgL2GXG;2!M!O|ec=d42I7)nD5NL4-wSv<;E1GmP&<1d+k zRMjcOQyNkbtZD`}S)ORN25yaeCto!8fw<1WI*nJ*^Osom$OlXSIleKA<2C~Erc>^e(`P5$wMklNMCS)vS)Ia<}Db!9m2(*#(~_tcblk6|aX55J_A zrHhY;)NNcfS&27*zAsHnB5j!M|6nCo2}!;fb5dW=SW#_<@Fqo`&7HI|4#+MP3W3+= zfV%+)N<)wIdKm|xlp+p@K_m6`j00Y!`^-&>9ReqI?5D=?1NBanT$`!r)r~EaLV?v4y(0~y-IV3T(%}z$d$dImvMHmFxw385sk?2z zUWZzb1Rinf*ylU{h!)w@D{U}Flxf_fQ*GK1pF#hn9@*L1Z?##bg6cnf9rQxI8S`** z?)o|<2enS@*G=R(MzB+^kpzy;?s7V zXK0C5|0!OdX*{Q;?brMNlqz=AA+x2e|ScE$GhP20eF+?0HP7y*< zd#mXrL*(;y5>rcbxM;avqQiMOa}+R)IZ7|7ajH~JE#BubMbKsv$>=tigoDY~W0EmB zw$CKlw2#NH-23QU1~Z(nfWsCZ$e^elB#z)tD5r!^vSU@^ z<@{~q+L${)E0PUuJ%6--N_2q8UGmw{0Uz-H|MAS;e#y+Zrs&ZtXc?O;j*PYGpjV5( z-lOr?Ta~}YwEOh@E#j>hK~S)Mdfu{d&GF;$)?bykv}KXn;-5Ef#fU{)Jk58#dCQ7M zlT-cP;an*kr3i>JzYEI_^Sbz69Ua>-Ttf?I{p!iiISm%KuzU7ky7ZU5#SyurvATUx zdRpsMU7bUfc}_d=6&25Him?c>%tbx6h7Iy?7+K&aJ^BY-;OFbDYciq z(hyY_F?Iy0=*)}tAPKQbQDvKxS;#Q5fOHpzP?ZmEE%?{gBli#(iJVy!4_*D5;B$I3#-Aj>s3^o4y%h=e#q#$ubpqc!B49S z^ZA4twZwo%rx#`NOi4gOJxsS>XoAr(DOu{I#4QYD;Tn>i?lm&Zu&i_=?Uo549A;LuSS zU&!k^mc!Bbdb0N}_#qk~vq@sGM|UL6g1l%-armP9h2yW4h$fau@8nEZCOMINcg;W8Bhmku+r>M(KE$6I-RAGk z7@7MxK~^O^L?>I}IU@(a%<@0I{Wu@=aHQ{Cop@~CY!^73g(GZ=J9mR1If{6M;1Hd2 zkK@-D3VdxSUe=(Vj$SQ3)L2ENv}fQa8=s#9sZ-41|e&hXn@71sIT($)56xfap5AznF zn;Yvr?_H7uQz-m*Zp}tHxfH=H1{}n_;^?_5VRq@b7%SeOtcOH~=OH$VhYnJxu5!+* zUR%qYE0TaU)iCGp%RtUmD&`Ln;9@L7eJPV`{qZ$%e~`(=k8RBSDz3xW1|?FGo-A*V|79PBzZHH`K<7DbzyNuZHdLAS+_1;NR9iczYZ z6de|ji&%=fZa{+X*#bjV_#dQFj-KNm#TMt#t|f?TcC+nGCV39n8jDpOjtE1t39scaEpr7>&|3`dEN{T}VyG%N zxC;iu;7T1uqP>gPY^FARM~pWp&M^5PI4WHj>TFjxQDyqvlkLjQ=AOG}&b?BrGI!p| zE@LR2BT~@0^9h;G@FyHaP%r27SAQ1w&DWAD^s2Nzh7N zFI_LDA?-BJg8R#;x_^xYBYITR()NmRIGoJ+>X38;=!mW>A;+c#7Q||UjQp56WkDhd zqaS<}*+vxvAHI|GR|{7Aw>V^TGW)pq63gC4Fi{PI0b(Zp`l5`1hz8V!lXBH%JgYp{ zuIRanr^RLDs#Nc7zHDlE>zasGH$G>!1irFl83&4tS!KvJ#M95|YRUl7pH*MYWId%; zEd$v4n!^CublDyQTs{R#EgHYp6^@^$t0@CS|FJI86bMqZ87mE zrS=#MfdBvRQ-37Ho>)>W-vUAX!Co|Z4eb+^@3 zajDFda_L&K1dC3qcqpiPtYZJF?b05!VX)>SU%no1femUcmU&USAbZVD!{P;9N?0NK zxe5Wc7{`?3elTxyHfNgrc^B}n1Q+)E9BLBJFM_?SW&uM zV^*{oD`+<+a@R!1xa|S~X;u)WDp^5$%jQxM8A=~RbU~aws(;L#14?%<42b()ttFX8 zbUC(-kU%f>|C0C6Q*u>8-sXvb7Utz^@>UE~1e+;kL=6t~k|@QmOPAzM&G)&1N>@`R zW`aj673qJkp5rUy%bEU9sa47ZmxZ?rm>{pf+hYRvmw#Ql0Jm#h zVNsx~DHCLWnZBGcA*EI&6DaSL8BQ?=%Gc;Eup{4ZE?=bmx@&K?(WQhPIexRW-xgD^Wjk%S zl&~Ymf0ndWOsQISFynRg*&(ms+hIqJ4_&^5d)-Edv4c*tk8G$MA6hbGV@g%BgECpo z#as2_M@s-zNp$`2G%`i+&?-!Nb#?~(rqEwTqlJ);1;Bk-B%92=)e4lf#|shzzIM^L zC@E#rI>#ZhKXGnx-WNvK9=Ge3zV@`o<8B2xkJ>qAU;Eml`pENeJV$2RXn>{>XkqI- zqh@v93#-D)F01*vu`0P;i;`V<^L4YB61q9W{Uz*-3cF(F>y}0-L5DssEc-gUi0A9} z3Y6>*!?I))=6v1BC6fP5P^Ko4u0VtsD0TX37^V!FY2L0XX zWH4T&?=+atk)B{qBqqOZo&d|BFsXG(M3S0HeLm&PWF{RhiAO?Uf(`?_SsuOq^-LmM z5{cx&Bq4Q5b@Vub6n#>tS%E!OTqY162?SO`hmMBbT~LR*@P}R)_U%VKCJ!FTgZ%=r z8WFJf82>%uzt-H+v2>8hJCE_-BmO5Zpkp7?$)8>xlLN#gGFp(La7GoNTWGb^KlH&N5dAqux4RlQocFsFzYQ< zUp!5wJSL2uE{uwY4q6D^#@o&)Fjc44=_Hs~dL))~Xv=O-RT^ujGg$AL$m2h^R&6>Q+FVh55*Yvx5uV>J7kxZuLBOQMCn+g=iU~-AlvUb3 z>KZA7ORRv;QaW@6rVCnZChuXrJ{=}&zJ4Q;IdBgXEq%;+HVww%&>2wXA|jKS z>1->t)B+ouG?T|hB#(^r%?#&5_Y+}BSMGh)tk-|#*GC67ZKnDfk;F3E>3U4!7!Nd4 znYYP$WRqqRjRwsGa!i`!nhtt$o(*t{_B1^}%OXR^`@VWL&{R)>2~vX4Q8+X%A*0rd$p@R7 zr37}qZbk|qh8gcd!i(MpJ+h@Dk~R&d3Yw8Bh-u)BA{z7CU>Z92v&s18r~h=%f|;p> zW~3G}BI)>qReX6e9)7f6hpB=lse%-stJ$D`6XKOnz3)83TF}1_Fk9z1EiV|_w3vcu zl7cumJbLe9>QUzS0=ugbG3$evmS~Xx)1zL=qtyD^6ghOv-gV-Gx2S#GbQ8fI-qhjgx0tPIH+))-xg~{L`O}2c;lca8^TQ)Vf<~j|7;P-o@(V8)O62|) z9UxItvY_skmZW0`gcBqP4};<0Y8H{9AP#xV3sV$b)^ZZgZlo5qnVQTxN1LlQ9Rb-$ zDQa|5RaiiW%_vv7d*|^icXB_3X+u|ecxR!~6R=(q3n8|itPkK`o~zuv3zgfV)))H; zHX&W**BQce8&!EkuZ=|oEa~s{CbQXc%KRBTZZncPJd)asy|N@erwOAX~(vdI?;sPVjg@)zF`iV^h(y%2#UsW3t zkGC@V7OnrBk5sGC-4L8lz=KLPf2Gt~I=Ue=}FcREqcD-6%*d~vE!1F59PJt~B zv-&u;5v9{y3u>?9A^lra7g;PfETt?>;JkGUi4WI@<8Znz3z8u zb1*^|lYpbEzK5Zkl3X3y7CXM^T(zQ%gE;gS+L^{`cjcwN6R@+tZX;{>|Nr4^6fE@P zcjg#pt$q#S_GJR@8z4NGTs68^k_|(X0Lk*U%F)P?%Y3t7l zmW>dRh@yfNEBjpgNaJ{<3-9a@Q!?8CvXq?0LbC>3f1o&6B$5qOXs@ccf~ z$>VFNjt5&jpLHK;v{AF$*fnu2vnSzNbAaVW(h;pnp=GsihuiL|rdo7oRAYDOymy2J zuh1WIn;o)0hQXx2BAKqO0;m$0N$V86tr)@56G;hv~a;k{beeqW~ zFyfNB_{?|q|H=pkGG5qw4;A*9hX4N`?eF|{_nC%SBTBfGDz7oOO6B#Xw3|k*G;cSp zE>e=XT6QU$iK`R2-E=~(TBunp0J~wATIyij*;}qcsI1+z*FozW+jvwLlk=%PPjvI; zcGC&DYN2LT2Qt)hg~6s!uib7M?N4~SX}Z|Tj33d%m)lJz_8%hdy$LcMmo zX|L0jq#749sTRF_x!rU^ZXKxW-Bt^W^-8-JQi%OaYd7stW+m6iTWL4_a2xM4Za3X+ zx^{`t4qdCIUFba=!ze&2cb<;Pts|;_z2U=3*<4gV@8;90U!Uh=!}>cjzD?I^URwR@ z$)3E}gE}TxCCZ|Y&|s}^O} z!AL?`HcU4|dF>X~UIU5M4CRJjtJ6`<%Gsjo0SRTXIZ;H;L>d17e|(OdI>bvmjdla} zI#t~uw|q3+*+;{?hcED|1+rJEtWc2jH5M+tz9G_Gk~iKy5@LRtzU#Nrp0yIg?giP=V48*aVWFIM6t6jPg?Lcbi-^gZwhpQTwG3dP=o|*f*3tGDz`J%`5YI~(fT}Tp0nKa;5dHSN zF4r-&DjD$QcDU|#SaT@46uSjfSt=~PlC2sOsuK0zvi8=ErtPKS+}xxuR6}%wbJ|-+ zl&WO~OYspK5h)W?UlHUbc>{M%T#oS$8@0D?v^>j=^KdDd6r!)3)80CwR4pqYGv;c% z8Y|?*c|}&h|Nl=Y*Z(wF-0tk}>Q#Rzd$WoWUj9#^TVB7kUhmbasEnk$k;w7k7|DsPZ{6N$|o{<)$-v>Z*-l>uaWd`&W9X_S!#8i(W{gXUwp4?;D)^hJ|F0EIv-@e zS?qS5(W{aVUuwJSsMU3+j@D@Ab`M>O{RHYBBrML-q7W0R68Yc0KG$fCz#M2?O1P2Z zKufWVm{PUuU?DuwO;}^Sez2<$uhpUx{p<3;b{*XZ&B@{6Qo@cLCt5OH=`m2MmK`kP zbai$-$dS(X+!Q-UEuU={5U8iH)I%HRE6u zQZ*0aV^6)V^{hWcF-&x*!&TBq{4TDjp!T;UC|&%2TgvOctz!Pra^zL)_rV zN!y`5^}2rQb*(Qo+vs)u)aUxC&vkM%LDKg5sn4~wEH|I}TpN`wO=jf&R`t1t|Nj%y zhJWgH&D&}}^}62K@7T3kUqAJ_)*}N?y{@w;30hc_QUBEIde?dCbuBi?X3FHZs@F9c z4Z;?p6awC$*Y(3|@;>uk*M1khPwK)hdHh4NPu>*scjR8zI?XEM?Vn+gcMwL3mH^k@mV)Iiq%`YiiQKYvr{~4_19_}N9c8}-UScoyLtz`J&pRwSkc})#$M9oUhm~TDBWVU zvtpB!*ru3&gJZdcJSd`3E!?bFC>L%yIea^Cql(&syR=fs&I#XfYiVnVrkHBeY>DXw zl|#;Q3vwZs_pY}CIm)Rm$Z52~+MqlMr$dhT!q{v{=>yeEILjU2aGylSYdwxeiHHj- zWm2kA+(yGrX`)MUnm|iTqG`6;&*A^?2uYR^wQBVXOB2XP|4|f7f~}(avsj^2EFit?%Us)OZG}cO5KqbHmkFy3N`nu z^K%R_3+`3#QqYbrsBEK_nA*~$uV8uF^w=6$@;2aWV@d6c!Z{A)Qq~{dJjN2uOwiwC zD`1`zsXg^y5R8k(=fsmjOtq$>I<#cJZmDDJ!K-s;6df;L&|Rs*zOq&KlsygR^Tq9K z307zTz@9dO+tG25IGNDA4K|>0+W`*1oznq^=52I>m2saki=6W%4j=#MyyNiOL5_2r zG7=1|<7m<4$0BwKnx?C(Ymrl zXnW<*B1w(Kh3YkOJ|a-Xm=GjPkXJkw5nBgT*6(s{X=UZ?=r#68vU<9LtfJ0D02JEU z?UGXwp(;jwT(P@ly%tlf7FAZ69-(>zO|VrNJ*5@5Wco|Rwe?z~*{rwI&Mz%7s^f~y z2k~rFu3IIfjW!e1uU+SOa_^j<9RA$FY0uFzLw}>QoMo8Tb_OE*6~mlQNE^U_h5!Gx z@*w8JQZqI>w;*#3Xl2-v{d!^~EH=Kcq z6&vC&$@EUW$$sfV{b~3pMzI=gDNp$c=X{8DFgOTbLixHS>C+{htUZs; zj|b*kQ>=81bi~Qy!3b@QX$q!_b@`bxREz>N+ENW?^$caZGGDiI6zgO1G*#siTR&4h zD@Gt1ZE4r1YPPy{wq8aa-Q$EFPD>|Vz2*xkDY%NWbed^jjCM}^L0Y;}it9K82;XX?W=|$@R|Fv*2izAcfLj;iI>`2^H{Euc3(?LAL`W7MVrFZHcf1CA!NX~M0K7~a zY4C168u4OY^5=tc1}P-QU;qqyYcoJ{Qv)SHn>{S2>>qbSesjD&Up|q*x@^r*df%+=uX~xvnQ4S9d zPEx$sgxA_a`j%Nq$+$s4h= zc6N{f(#Z1DI-=L@`uIcvYnP~1i#1ajHrBpq-><1O%-qYpW0olr&@hG0c5$XiNA!wa zUy4%2l&Zy<8Ek5|XlojSs0pg#rc_nzVxz)tP_v^hf+1>uqa!-3t}j__3AJjmWky?s z?Y6W;ge_AKH>K(UXt1n4!nV<@QDdA4UD11V>DV}?AQF1jqRT=$5xU#b3lX|ZA>5QI z1fYSfWXqzUi@Hf6I&rQq1zQq&m7?2V`ZqqtOxC*IYjvXRiW%=P)nfa4FQXcVQ?BmH z6mHY6`7QeZTXiv&UD=F8>Twd~%}7c#679A-2%HD@Av=?YHeL=^b@(2mb#z z3C^NhhkkaF5XTg&L>jK7jdUWzNSer16W@G;pVn8&X@&%Cu3yc|1h|XE&Y_VsZA{m2 zMVV<`*^i@7VnQ6#suEkzWj1hvEmBq=o<6PV1}l5|syroKZT&?FpBcIoOIa=X+$mP@X&d;94-ck@Wn}; zgAjQu!(cXo_;S5PlVQ~fb=T|d9T27YUNS}`SQr9i;sxShRGLeNI_cz%G9g$!14(;a zOUAVY;k#fqX6&`)Kz$D0U8AE(favTh*qH>R?^LM-ba+DVubfx2*<|K?jT6*yDPfiO#*of{O;7<7TWg0654prq(zAVrhNk3ZYYO)6e52+omH#O^V{VW1s_NO zB!>pY6a4*zeDQZgHJjRR8>B=E`FQdR+_A}|Ru5{^aHHuAG*m!Bp@A3C=xNhhi~}fa z8JqD|D^KVSil-28fV6DP;3nTzxWEz4&IHMjlJ=(5{53Q<(VETo=>KS!I#t;h6a2l9 zt*)zfvS_S~xwx2EM56PrzJ@`Xl3E#9>EP-$lgXPD{55Be0+!~^wvio^2x{P#?mPk~ z+JQB}Rp3SDrs({uFJj=Pq*e#l?KZkC>UjMCsb$8z0(UUJ3ukfZ71u})kX^KEAj-OG zx)_v+a7&QjRw}@v)87>1+6kf6Ar_jvtSP@JGO*?M;BZ%Utq{d`4W)qXm;;s8d^FxW zpDbrRvI~-R`{=w3)>zmzt$-I@&6s~bSvbL6Fc?zWEXL8awXOZ*QM5a3OYTiL4rjq) zLd%tQ8(cM`mh1d>q6{DH7TEd5EjfjS9uDG+Ed}&ek#a7#IBLFMEq4&0f1XE#uo&y-xRM zx@#xC5={g#YM{P^0ji!`15B10mZ5!$&G*&-E;L-3|Q>nDteV+D@0;wwLPW|%v;1(NIX~tTf~C+-gqM^ zvGnVrN9>D%46?$v^^9zdFn^aks)^{=I9*NTUS{Ka%yird_s+e5zYG@?JUe4Yw)EI?|@`LyElU zS^8p4UG!wc%<7P5l`KrdY!~%Zzi`z3a@3o3oN6!0yZRwTUGximvEP*_g~U{xGdQ(V)3IgJ83 z&e2P8&Xa&KSEU5H(s)pSjeXG7;z98h6}E6i2T;8_Lr^_ewKO&;jo3udU`8*XoDsCX zQKBvAQTO!*sFvpHVo%fnRRzisXm&*hPkjW#lW0^ACo>0hII)$FUJ3Xz0m%9$K$h;^ zn=r;Zp1v!3ZH+qz#zli`JMMEcC4NV`YU+CF8lOMxGR?4*2V3 zz5b$3X~9f)?<}(QH~u}zWYS&`zr@=zi}?lqQOIt;RjX@5W;~}#A*Iqi(HCsc$1xRT zP^%tq7ChBZaVQ;lNlPNvMdCtP05)X;D^e-W=VdrQTB;Z&_fE#+uov}=(PoQ1r6?O< z;q(Tx-ZE}5qup$$4#dtD!uiQf9xsA@Zuiv%bh`QYEy3Gy(b_=A2K`KU5bP#BD z8}(MV(}b!^Q-j_hfBZh6PtQzTwW3%SZi5#D9R}0jYA_ruqHN(6MXpeH_lyWVaEXY5 z?U%uDNy+~2etB`Rdv=O8jLF{+ce+nAV4dX@T0BHIkI^U?_kZqOzCYYOKY!~4%f&4+ zSO-0%%udF*J_~P-2jdSvcMf{J=Fo z)K1@cDSGP7w@1#MCqLkNHZbqQu%EP;RN{(ew^Ov8o`u)5aDIzi_UIVt4`DdnMW66H zB=*xR41+!rM4jcF?wEztl^m_DF^}iLO~{&#qqTON#U%SBVx3zePoLj3BGm2v+1plT z9(UJYOpv>_MJx0k(o|@aoDBQUhj2CyhtC~k_ut+tS(q#r&J|vT-XsyT=T5ljQLFh( zzmUIu+59~rA&gh7CKX} zo2+lBQef9q2-K%%z1IV{@ZK$#b-W~kv_~hWF^DKTHMB{Ek=+23AJGi;E z#zvl6(@!*@7)emGof%MTi`1%$sSU%+@3g6h^x9UI%j;Fo!qEfy5nYwiM*556ccRvIW-Su~hBLB9_b zzlIxK=+g|Qr8{_Cg1K39TaB9QTPU;N6vAS>0uG_zDOv>9KzDOBMlmWA-Qx+O&dwu% z3z;mGVw~jwU^_Lp=C(UO_ky~&@8aB*{YL#N-0yYj_5GgLa`(Hz_4WRBcvas=Z$Rp+ zqzU?_BowDapC4T-1WvJW;Q#-0rPp19sT)t3ChgCgOntda9YM|}%W;1f?(ozhml@b` zg+@82qhu*Ejz=q;JF`V;EVmQU&De!Gpnw;*yVXZOyWMuP=r}S~;BUJLSn9*!gyMu6rPKj%#cTmr4zb#htST&V z9JK|uuWfiVo6PWtg#~W-TCw{=#i=6qg_AsPys?Q8l=tjVpTt<1+U;@NRA|Ei zO`lx@QbY$fw!r)jOXErdHm=+arlu0Y*OSd*c?)8cLs&L)d_`GaqFb(Bo?)mSTU8t% zh8@e(PqAxm6FW*ADwM@S?BqRvpLX&-C3Y<1KE=+hZxcMf96aC3%<^yy0iGhklXvm` zj?`^cJ+_A6ZEW&4dBx+|a-0VHZ>Xp&$&lshP;{9}LwkpB?t|WZ5954?UP0JXpk&c^ zX6u*P{S9%hP*mTO{hF;ktDA}HLCrq14Z~ln{!-cvsc9hZkt-0{1i&a&a1e*r+J?d9 z**lyEc$1v!ye+<6Cc83wAdVBG;s5_rt@h!rv<^Rsa_U^GC?sooaqkAb+2s5sZLoZM z{sMU^6N=$OnlzrLZk;E(>I!zo^W+QHVEo4Gt>@-4UgZW9Wd8N#EjIr|vIl$NQiIW3dsme2^&QUf(9Q2r% zPMwzBuP1FKBf6C8`xv^4NEPrlsNB?aRuXt;!HAC3`>>{RDiqCGzjUn_Q^#dOd9(E* zeppiv_L^}Pf0wC5vV}v;YgafiHpTB+1*5zsi<;6gXgGMZhb;zYNYM;&B5bzu$D4Xc zpaJ#cn0ONSE1d(;n_**0<$?`|svlFv&(&8FB4qN(=B7B5#(g_Bgbm7Ywq#`O=ujM5 zHpfn*L!Rs|6N{LP2rpQTys#+5y9xPk&c)$rl1#Ntfr-@=ggh+a8x|N8@>jCi>^t=Zh%<3OCNRYE-4yqJ6}0-osWgWnm+o`z5lQ$WX=lHW}|ta=M~!rYYYn2YW;x zE1NdU$}QQg&arsm^2Ia&1qkOxssiEv|BPVzJGgo0sAoWGjgZ#=5H;wvn2UQsY45+8 zj0v;rZ7o`=JErPW`eyjRQFWE$?h2xr5AIg57epU4;X}jfObpztn5AgfPFp5yivzSeW6dVFs_^Jt6&HlIj1tii^nzFE` zXa=6n!{Id!#6;8bQKVz6kkdMM+bO!mwCzk?z@<(Ru=AtsEM4sYb+Ax_z^;loM|Ve* z0+=`1X}6T|u{#T+k_9tGKzvzPZbp)@DF)ihQqEuAozAmkoDqLMIkZxD zUE9gis5{S$FR`CYV~4&N`%?3a&3BD_C9Xk(XY*16e{f|*y;>NPxtf$2`Yah|-0YYo+=d56qwpg1Qzb;h}au~Ow3ka<$L zhN1aQ-8z4UD#X-!C5Ekh`Dn|C%o+>T#^GC^8fEi^>fK;G7%fK*Vg7769#RNP?O;(I zM~<7jT@J)=fCGROBXmBf{K7&$c<2~z@xjBqP<#+WLkb2a`Z1X`_^|N=XtY=s1x!$NFOEA`)Gx-$U=Yxj5PJoQnwVn{?VdE; z>x+>f1sCI&HsBgO+j#DHoM$M$i~>UVnibhpy5kXtdN0R4D++X3wl3@>n`k=!R`*FY zJ5b|{&An_4?WT-t@2vTSc_D6>fd7f=5DZ7d-k~s z8~_pBwT-C8TxB>1<<2a+1Jv*$a6-pa@PG5Mc7=NWaQ1P}%4#dVQ86PYumdOtAmBJr7Da_Yf4fsS80%N@FMd}WWOlHGvY0~B=$UbVw(Ic^hzM|}-W|t*W zpi);^;RthF4{orB(08s;t-CuIqoVL$?Ywe6=68KBt0jp8NEr1sMmZWM-OpoAj;@WS z9nk;L;9Ap;U6*$&hbXA|Bl_>^quKmXWU84cYz;XeBVdZ^e3yJb4)4R)jf0*VfHY7t zM+WqdLSvi~`*2TYhOchMeX_%PQX$n0!*q+jA%-B(q*2hP>f@`C2Nt$X<$;nyMLzIKieF7WBBqGIPp9S@|Nsi%`UdShW*Q==JA zWo6_S&g4d`*1|E~^?1CDM?3K^cnP(B%5e~3Ru~i?7gc7l98bnKC9uAKvo@?6(FE7h zqZ!+^b{)-{ontkg25bC70;?FGz;`hj)d{YMs{4=~+jfK5CS;bWjxC7BzC6V4*Ajj%H277ZO2AWYPRqGz?#{1n zaM--E*OEv~L}rSSkha)#9ivpkOBMuChjvryDs6lx4%;a4;V6EOeuc}~EIMGDPf^-H zIS`d&ndcVS1d$gG_f72;goo)+F>{wA>V#Xk8ttO*vU&$iVeXQ1LQ7Cn41u)84(&0a zYB<3b_foa_tzzG~MaJfBBTt=!B1XE7j;U9&ZP-ouKJ7k=|OjB$SV;AiPP+*!Z zrm_YbHjWB5ctri}5`W=k zh|Ko2n<*C}+Alvn^crnG?TMW)q{f!&>*!H!jkFih*Q!(F?j$-LRlCvl*w4b=1ZJI` zwPY7sMD*~w8Yw$pDjpLFNh7ofqJ0hR=0?)95B*DpjiiQnR-uBZ3ay0`6m5qd%}kJ8 zjQY8C^Yf%F3`K0OZfD~4)O7$=xCR{J7-YqtOrNdpxt~l!D}~G!m6W{3t;~KF-FF2S zQ;IR6O8Dh7pOcz%IuX;*v3Gk+b7iKLhH7KrGoGzsAwQ63VvGO{F$Bv%z2!qVcKNDC zO~KM|RMuA9INCftI;ZKfMNJ*RjE*bd8D)t}mYBGt?c9Y(fW`fK6ed2_T+uwsNX8ad zczRYg+fK|@SZi>N9@OTLJ^W*Q1%0_d-tGfA7%lB{XiLf<9{0~77t8rxJS4zSlbo7IVW60=s+DP>5`DD83d*3+ zBqG(SEyxB>rf99DO!C6G%eDB={ zZ|^cC8Z+_^LzT@?*KOC)(h;|1%5^8ZNX}79j1)*k0m*Y!;_LGc699v(dOFM8p$^=u z&!Ivybh-kZ?|$K%P(~LNjH0WrUY{u?da6ngy%zKLV>!Pb%tknwINXxRzK+RpS-mTD z-^@F}8_};tL+OPM=1?enfPVxqnyYhVGz(s%ruo zUr~sP4!qZr>>l-4rI7Nv;Y2Od88$~R$&jIiG+0m*pKp=6hD@+;#K4GX_^6|Bj`~C< z!Ba7*a8!2CE zr&3P3YpzF3v7b7h;!u!+w)xcGqjhmD`~`+pcI>67N9i(CE03E+l4aH8!Xb# z(vj4NwB+w#P~^TvTP9%gbD?+~5zTp#CM(U6zUO+foW*>~q0^{$?Q$oP5RN`6Cgj6; zXeSYamKaO&XhJbfDGetGbd@vT7upI%P80SA=#Z<2TUGCFMvJ{eom!#-%47YJ7BZ&z zPI^tLRWV?rzKX#gKez_GEIOKK#UzYU=1{W!8ByL=9M_L^8+q$oxzbLH9N!l`%idm; ziF$-Bes_-^j8Q(iER6=MXi>TDHc_y;=3 zrH+B;<3wN%a(23KON@+2E_OnyN|0TOH5j!B63S$(ZxvYj_HepR;4hrgo+5}cu%%eW5|26D`<=(O_+})jRF6Ej}p_<)9-e1mI2#`#kCmd zwirfm@qG;Fm{O%Uvn&S*=X|BHATu4H?}lq$uTWgkcw z=c|kjG4@T2OH~Ha0DOiqt|b_YVFp*Ksfa06iZP2bL>S{xzwejfxQ9(5e21Wtkv;I1 z`dzS%ZP9-_FwF}(NjfnvUQ5ctP!!ENPLzp8)9eennm{Z@8(b+_Af;6)$SmMsgPfx% z9sshpXMkL)DNEn^T9ty#0=qWIIhx`DAp0iBrK%zYCKqJU8zdj= zGXa@3fQ&#^r8;@40>|Zix2dK$)ilLvsixS)3Gu8t2iFokAv$}m)G;xpRH*>xIC~Mc zIT~VfY`r}L+foIw>-sH*Ev_ZliY}fj`FJsCRz zmS8J-cH-`7OsPt2sq2L4*`b1is>>cFN&(tdfZ}8e0gATh)zOzRz56L56dv>HM2K^A z#JYhX1+fvHIJqoU4@peHSlQIYScp5KKSy6CKpcfSDwSg9(1{S|sEUmsHewSem!(=F zi6>YPXR(Qn=+1ePJD1R^4r2KKbsTHKe7YFsM+s0UNp^LA?nI1D81BZdU-Othhii!( zi~bya7n9?dQgs*uU*^w=_~vVhwVY;!uMv|tIV#l@K!xYulkih`ts}Z}^i>kNM5j`8 znIk8no3A9+N7sl(oE()Zi8ARGy*N+u;y#7+G9NC+Hw{NXOs?5JGHrFN7mQGX>+0Uy z3AxLKpVkBZ)^Izs{*biN0$z@=%7&tVkWBUF>K*giYYT|v&uvPQ><63TLKExj9h{#Z3Go!ibkDm z?}x6%h;~JPEU#B5QCbyHRms$8QtT(KWLh`zp~+p|r1RM#93evoY18Vw0RdgaZT@;$ zufM2MciPqVCltmP2H^zfi!z+MZEd)0gQAPDB3ZOu(J52k$3#~nwJO-#NQvhCQB{Qj z64s(hCyw#znS0pzdA}T8g|m}uMRX20V`xu_KZPPpia0|Qb4&p$I$-n-49~Tab|0Lq z!^?K!mT?1WwuDdNI1(DGNvOVqmSpNgRAV#`N)&f(y`r@^%bVjgL&_nuX;Xm*;QGab!KN zQzT`dkiJ2HQju8|%x&m{TrAfu-W26AE&z=s^1KYjgRA*umYg7wDSiqSuBP}|*Ak}j zU!5mMG$#69(Dkq5jS zJDDQ7b-tWVhab(cS=PIFAMifLSSD#(9~z{6ke)0Y zRP3OTX$FN0ii_J|{9L_y_`?+S79igbsWJ83ff5NF)U~KHP_?f!N3`{;F=B&8jDd>C zI`_B1Vm?7{tr-Sds1Z$qwn8xoHuoK^(HgjczLL8W&vBxTL$;1Zs!&v23g_wr7fPiIu{^ksI|o3p zRByBhYfRNX+B>3Ja5R8Wjj6ArPPb52T?lIwjTr@Vv~|y+Q7C>cLJPSSYuy5?uKIUNBsSuf|K_d7<=rbrT}5Q0aRV z&(Hw%3Z>73g1)%L@(}B@SWK>$V^yq%Sso!_(JYiv&yrEEP)0q-=($>(cBwm2T$@T2 z@}y3wTN6$uS`5etvtFW5UOnj6q?{WR(4c<``MVmR%=BXopNzF2sT~KusctY{2U9he zKmu@R=FFGZ*Mr^wt^9@`o#mAJVPFnn$-#=CBCsK;U_AZL6YTI&w^(RWaIM!boIoBX zP;`0-PSs1y2A!*g)5N1aE&cAo3E|PUf_`_Q{Hm&K{q929^)1<@6K4&h)X=4Bk5i*f zC!H4DZD~$Ai8KFh*TcL&ObaI=V5%b~EQG6%YW1NeC)t8zLV|}=;}_`gh8|>aGEX}- z*{U>ssqdPZfEdj#Cuv%YFMEjfYo57ER&$}%t6G3&_Ac!Vt>$G%EiGrx$(Z?a7MmkK z5~_pWYD2!KG@gsJ1kW?KF2BQ6HHEa&dCwt#zkS6 zs()I#dx_@6;W#<>GvoZ~o{m94(+0Ncz z=FZzg=4#v_>+Rs?)+8ExtzqeQUeztKOa-pq-_*ou5W=lvap1g_I|NtTMT`35nk=PL zQsaY&9;kj}mV#g$MFPEqo5!WfxZ;Lq>u?jQTHq#-WD~XGo@mr&*W@O-4v43c_T0kk z)TkwlJo%Cti8WPVq_iPjF(dsBGmSE>h@<1i*cX6%7tAPnvLa&(7t8SC{7Yse{435# z1>&ckk{<8y`*wNNh>n?|Ljb1}oR3gk-oI8o6H%u^n}eR(VnE+@H3GOBPuXBPFRjP( z>sgu{{C}VPe;jLHk9R}eIy^!SxcXKGctop8JH_LzA@eaO&y3HY{DaD*eZ2^CuMl$@ zr_lY-F=u$ghnDb`T)9tyH!}?L@urB&cJTHK@uqP$$6MSs@;Xx5V)c0YUB2NTb@6|c zrQ!06UK+$0h(eHQs)`qRufxnWHErfg4lr9CUlW18ktRKF+#c!+SVMfHU zWPtd^L?a!~jKvB@QKROzoM_Mt@g2WT*YP5hDCSc7hJd@+tRQ+)QLGkv7KTfpKRgQNXFSam92~~?X^X4?Xm8h%J6CXj&6S|3zms&-QZVjzC zY^ZnC#tZ`%AX#Jh>CXV2pz9$m-Nkx~&o zTwiQ^pi!(AdggZJK%e8|t|sU3{~PnuU~!Ai&wJ4TdnWuuK7pUs!9w^`DHX+C^mBc& z6GBR;TFhC%JW(uk{_Ug4y3#0I&}rkm5b18yuQh!x=+X65&_!3*7yBY;6srZDIZ6`f z50Y|Q!Zpx!@uvKPLeNvG6vbP1M#U}(DWPhShWlU|<;hfcE=Y|-#(}`r*35)BUp6WA zs1WEzv*xzBaI4FyY>Qr{FLq7H=v50i^DPy~k7a{{f1(Ah4lXIg8+Dftl;drGC<`~17vO^9iE++2!fSF(wZ zdnm+Pi2E`7I@UFmgN|hW$^AS@l^}h6g%gz3LCW%O`}!G7cUM%tScvVf)zP(?h9GBb zwWPK86VNV5S&ArYH)O$DPj*VX((VY6Swr<~foaS@FJl@qv$oAQ;`L|9H`%A{N|`Hb z^6lZPa+lfo8sCtZoK(pGS-vQ5GPiyxuzW85B)n7mljg7TftMh(QGHB72C1VSs9<6aAGEMJA<5WT@#%2Lllig~u*f?i z%a$)R(K{(TXpAmOZRDrSK-t45>^?sOnXWW)Yd6S1B?^U_@(DALs%!)|wjn9h%2yzZ z%_Ir18|2=}m%RL_>Ph0Blw?pj_gI+6-VQg&!?Q1%hjNsoAqA2u=OK$DS$m)y@qfr3 zSQ^B5$|_Wjp){m0Rpkt1Q7UT>+!zCozGw!@@sx%X1gn~XO_pk!?SUKP-pLouJvpjE zznWlGcH|f0Z&C2#fqjR8{ ztwDSCa%ZuJs%;Ps>sgN}@Wbj8!`o~k0%JX4y^L{u3oqY#PH3|UKhk>9v-x;3aeFVN-EjPd7_3rq z#e~~Hk!Gr@8Dx_O{p0hsQ8fQp)9saXdv|Z!TR?2`@9u=uN_k3X2pRt+$?47Vl+aQ$ z8eP)@Sj=|Rl6Z${$I}nLqE@Q&Py5tYUNvZm4}X3tO<}SVn6MY9vAgXB-GBIcHAKF&ixG zUd91=^L_{if(LM*)aj+y%QygQR&zj%`ZVe583(Gp51~bor*sX#|8I{+NVH5$rtF%S z8+M~tqFc_RDfKedL4%^>WFq>imyt|Pl}md!o%~>-x_owq8fffK?iTxFcRFJGFxzG0 z-Wvv;tldvTj0h=I8E5e}Rc`_kQs42VoOZqdJL?I;FwT4F4qUhxuQp@1~=_HnRwHl;kQ zOZTB%ti`xXOZ40;#=6C(Z${b<{2l z^i#w7zIrE0uFX{R@`jd8!LXEEi%Y*FO=CQirJK{u4+0wrLdHgO&Pwg7Hp^5{J&|v^ zy~u13Js975q=q-KeCjB}g*Q%9pp|~yg8FEDi-IH7XaDt}drS6sypBdQnmFY-j{(lES!*Y*4llgR-<@Ayz_M6p9vL`O~ z!u||;3HRw4fff~HNuhH&L;{+_p_RB3th#GhDLlYP@CDqRBOb$GGSUcRK>2{s_nV zqaIQYvE}ryUzr=p)(d_}M|XV;R?xs%i+egGO^!lguUs#B^F#7QV^#aI^fKP7y1E!E zbD6f{UsNEoB?ckH`W7{8g{^IU7+J(8y@v>W<7cbwX)>Y-!ON6hf@|ps&)(}gb%8N( zjepU&ictaa^h^y~0atd2ys~(*=uT1ay_VM?bW4U*-Fcr8jPWdm6WyTdfk%%Sh^im) zlZI6E;>ALcgjl7hnx~S=4$ESN+%hIq<$JjcP|XO&sFvQ%?uWIudlUB-{g{F(y5?eT ze?qHDP<@|8*b`}=M?-a6*kUS|4pWcxzgg7lFY9!w$8${za5l1+F*MN#7x?GGtubiU zjTsFw#vf|5v1&0EJ#zJ-%qB4@RtY;lhQ)nfv&9gJQG3J5-FPvj$X$+9%S~@(xD&Dl z)fn#mgEF{P3$i`<|GP9}1~;r04YcT8i-ixG)ZJPKb%|UqYb5aE2Ne=8yJ9}~QuG{k zY+W+H#2xdy?V9i0GQUN?rQ$1k#9|pjOsZ1BWzO(Lf2gh&yrqURvc#?;ute@+{Dz3d zf_icB2LDp17?gPB2&w3OibVl2l`7#3+RRDWzdS;2U!2<-Z}Z+!A2*@O_(EQ3Q(sp9 z9*%CtJICFh^#sg}7~Yrm9BMXd+>XF+cnPf*M4wQ7Dbv3(t!g1>JKie=Ij*AXss2sg zb7t5L zd!=&j!>DjgJNy;{-WL73pe-FPCzPs1oH-${6ym7}dXEQsItR!7dR^Q_zb_C^gExV@ z?knky;Sk^VqmQKI($IvG1t&DoRB`WU)|>VxDk}V93upS;3{yYQ-RbHyKCb~m{@p|R zlKWWMCozk?-i|^2WTa@*4N&UD3lGQJXumXK-065f;`z+b+v>DyoyKm9KAP?}Xp0V_ z`eLTp6|r>$es$oPUe5)d_A0?t$-QW672pE~d}%m0aB=r*?cK0Vt;{v^ zwXieIo(nsJy=u{Cfxvw9A4TOP=rf%&F4Z|9)AeCc!>vqIC#7}0 z?60<@W*~~#3ed9ygO&H#HcTG-yfh{;r}hw%cAw!_?wg7mswSmsMpCOq^)D{;{SVI1 zF@<5Y=pQtgqAS{@uV4lX4O;9;j%;>P{F-xz4+dDY-hB&jsn^;K$c3J1^?qWb;591M-pw>*hA{NGy^@Q~?1|{t7 z)^kEdEOsI55wRi``qFwxSFHZt`7|tR>#0+8>7L(B7xvddUahC}1qrMi3C_Otm~PF@ z9-}+ptml+V;GHkf4)l{pN2d1dba$Ece0G1Jfm_gUkxOfU0d>tL88nuICuq0;CE?!l z?v3-BLBoaVB2s$7dPx_fmxFQdgIgVp_`mbX0x3#BwqQY(W(`%iqxp19XU^udlnHA+ zo4CS^IWRSyM`g5|E-+`23R4LLU0BY0cQ{bcK`r+^U3gx78g+;Lo~N~^`AImzPV#)) zVw9=bh9+bB)L3@(oy(L^w{{!#7OsVWnW2*jQFXYwT4lD`!Ocz7oA>XN{_M%Ujetb( zMsnk+;+_T9o1|bTog*i%8Z8l5-DTlD>VvN~vW^&SYEsrY1HP&0EDL(uZ|>GxZ6AB$ zgF#2yxVx9Vnf9+$SN!fAN$Q_utn+W6Dr_|M<_hErH!wu*ge$)AtKacEoz$`Jh`}WF zH4N62X;j4+kYC5A2%;KOtQJ+4OQ})4 zg(leO@;|*TTmF8nCCDg#P0Rt_$U30T!Ilj1&>3vrF3z#N5)rSB7OYFn5*`U;I&{luuiqWQEChi@K7Q;)5wavC( z{Iz8zmHG=OlwNIEC0Th`M+_Ay{1_`~nrgYo*2LF=7hASR{hP?c%@$o{n}{o9W#?J* z&zJyYQ?KuejMc(z^Ybv!2{`FsQ==`d#p)Tz4i&x*lf(IB>3LV5JX{I1Ne*f&623#S zwo@jSpPzjmCW>LJhIsy5Jrh}y#n%lF;A+o^l&OOG5%`!+BC?XU#V5EP#h_V(GF6^{ zLS?5-UpKw;0rth1nUA7SX#%|@O?^5mwUs~5QWTx^hM1X9{ZeGdR$sRyeY%)MQ*Rc{ z=Q_->G1KNf=xR=?lqzL6rMh+TG#R=pI{ytZ<)M0pvT)1S?Ht|um^@7tt;E)+sb_b^ z;6p=<=~T^Dzs|Ny?aVz+)Zw&r;UQ2U26X(O;kW5lX5}RB=7b)ktt+LtibD{DojNqw z8leYfPbP70+#vZl;J#c2+?Eu9@LORgOiw0vb0QE@iXp(&6juT_s8cn<8sIWrWPrQz zFvQE!Fa$z|Vq~YD1|WBH;t*0?H>I`;rfbK_eE9$WH48#Q8Em6h&313Rz|C^kl+!le zaI(qi{mCdfXlKc6r)8EidSAF{4*1DTG1(R42EH$aDK)i9aSxcGRDk)Wa!gFjS!&5? zX=+K^XBmX}$xJTU6@7i5K9>0wnp(A>GX+urdI%ZhcIoQbnFGGAcWGPhm3A#Q7T=bxQ z`cNk2npmZP2P}UoAMj0T77aMpEB#W%vKumOj-MdonQb?nO{ozJYNkoLrHVu-ap=_Q z@aa;amOV(ZSxx074nA*J;{v@Y%gWD)L(+D%Qa9gStAa6d~?9`8G z|AwG0`-q`bc9YPn6yXLt)X%DUZ&(gSetQ=&4+Gs@;-J+|Mm0X6xVne>EOZ8wzAR?e z_LkY?C8*2JAbk^4ya}~x(Pe>;tcX-bS1t=KLpP(Epj#Rzr3Njb>ME1vxTt0?*|sKo zeqs-ugj%KOQUiTEtth@+B|bjwEvD0GL^<~Y)<}(A4eQGY&9!zI(&f3ZezVqMK;yU6 ze30Ee@p^!mR+TUZTty_2=%gxFfOoa>Q$tZCG!sFdl&Oh!;1=NF7k!2jP|*Nyx2?X2 zDF{ucQe-Lfvq*p^7_a>_JtmSc$g!mC-C(3UjL34GagqfcUjyMfL*I$?78#sDyUT**zaoo%Av z%g_f-z1LNF5uMWhI@KcE+9-gsT>9qW^}wmoffBJ2JXOvGD_Ox}u%1dz@!5mvGsXH0GuNxgtiNnYK{0>)r^v1&pxychabB+&GsHB5J~&ZLqsTVZu-5x zw(Sy`xGB@QDSoCyQISZ*MQ2#rl0niGTZE_YTP43+lv-!oBzTWoiWm(e6hEb_YT0#u zx45E%4N?H9)2$cyyD_=m$3!(-+HV`fGCr=+3>^Ode*^OCE@>d5;t&cEo1UTEMb}^9 z%a-;kEr;tUun${4*!1A!k|qV)Z6>SEcVmGQ`)pPC?P8FMQ>ky3j;JEROQlX@`$!Vl@`yYVO0md2C}8;JMEUwp~a60 zwxX}EzKCI)l3D@WRfo1fqE~ zR!(1H=-rlqpmxaprYcVA>e(^%l5(e(0fz0*UdmD}QpYm9bKproFeX$i36lVlGa4R0LUQ z47{G=28G4U^Xnge{M)_#zdd|sF?37(yRsAlF?!OZk7n2lR4QWw(oWnpWU^t^dmwTd zAY278DZL7!>o@3-F;lu*@h=);IdnlE#2{AVssq)!@muxQPk4MC(M8_giv68(VU5XZ zo5pVSGC;p z^ET`wTOO!jUi?NaK}sHsk?{Zj(vYT3v1};$Ge(;ui)94qLAh_7Co2luK=H$Sf4=9v zS`3HOYQ~&3PioAujgEs6mE4IK=}|$g4Q0Vc6-p1v4@kxEQH7G@Bj-{al_xdo4RPiv z&y^=NdQ^}zSDwV^QF-5$Cn?EXvBKpNx|=5{=6s@T?-oi*ynaO$yqhN{dR3r`0n#bR z7n%j-h>AH-d|9-_DIaP}Gy1*c4B5Nw560fbkr$F5ydApZ^28+_*O12*3XIOJc~YZa*e{wjPi&N^k~Y*P ziirm^@KYW0033jmeXhc#QaNd2*u0Xl2A-u24v{F5-joq(n<( zTWc^>fL)K(jc^tkd19i+VofUbmoqp|P?G(&+2q@;@8`*gHHxf%>qQI2Bi<1ttwNCu zQJNJW^gsqF`Oo=-wAynQEBSr-V@U0BVGIg|q$LVtP$(l!QRss_5m6xMh2j`fevl^` zvCz{(VPnc90^Ou8w_V-_WfGxAIi@u#QXIU`PtUwgz3#upE`RXek)JS63=*kBqc3I} zqAtLhBT+EPC@c^RbN7faPZX?G<-VaS3-mpq`W|2So;)c?-t2N`FZS%bSJ7bJb!W?y z2#jw!Hk=>ki9#|Ns)_{gTw%ZmZTo(s?%!YodH;^Cgfo|T=!$`Q9$^YRk7VNC9N=yW zcZeVZ$rPdZ-H378t5i*byO48Us^LliJ>PETKJId!9&hD8F7SLCmGOBm<1(G7hhgsH zE|2jz`9L{Kgf*B|j}tWFiei0c>2baO0xqwt(=0trz`Wj;o)-A(HPo93Yk{?%CEB5) zEj{gWG+EQQ)P*d!Skgojl{KX`#x|jPwaCdsT~-@I)wI&))pQx23`!Q>CHSd!XmPa5 ze?FRgBH0>eO?CNT?HY?SyG!34j0v(1>cf5ebiAZMTX`auyg|Arh@(qo4PUS2 zh3oECsis~hBas#OJekdo+8I{L* zj50QG_YGanC#p4mL-%o)>Bi&qYVPAM*OSMwIw_RI2IR&?^#DX-of)Xfl_gj93{a2m zfP$5;UWsZzOnIcXL7-|2 zUy9GVyrpNM0>o!s#?rGexrJw;5uEo;SQHDUjfJX3XP-yrxvMDx7OPBva8ycAcUhRA zz#eoNmq5TClo&?e&mMG{m3(}ZGpu8%i! z9g840(3qSg;AI{D=f)ZJ5Osp!4#^XlWQZ_Jfv_~7zPFDq-AVE`a^sA_9a5kyaB+<^ zNuFSsF?DB_+z_J`^^?5TAUDpa4+~Tf-VIVCLnB88>OtxVk`F3S9ZjwP!veiQJEjXk zo&cyf3jZx}Ig^kLS1k8nL_FlPbs8J*Z3_W&Dm9Y~*2pp^%c`|^P z0Vmz3^Y|X0GSJc5xjQD0`35)LA$bCz5qir2D&V`D2EwntGVnoUT#_qx6P7i^dHLL^ zBVL|u+sy*j`mX7L_+pyzib;HUmjEr4;K}q5@+(Q@ABj3xKqi|Sjxp%nb=B1+A0#~MIL=%KBX=N0y zAy`4Rwnv)SKv?}qpGHMk0TjOguXx!|Lajn{Sz7y1@EGU@61ud`OVCA|M~*IjOwq+2 zDWNMRt_RdK64a_gm)Z&26(2`UsFIuFHL;~12iR8 z8Jg%R#e^5x*pDE*VS(_Lnr4XQbZ~_Yzp5$zLkf0|(GH=8#&AQt zvOX|$9w{+HiV3E)R^Z0+2SM1SzwAyTIQ_;&Z-0C8{sN07<5k*8#QM7mcQ?cUL2)M$ zgGyy=z=6BF=^I|L_mn${&_TE$-;dHs1pfd2mH`aJz&NmxEHW_vGMSSJWe@=w^MfTz7lKb2E`Fe@B;T zI0k6PH3nV$Hq}hT*sY%%iJ*bdb0ZPmugplv5gMep&P5`fdX!Gk7CUUP^m==w?h+u6 z%*(t|b3Qi`$^5efQk^b}5{>6ZA{-ne$(PIm-txxJP4ia*_uNQ?I=(5h%FPY-sXw?C zF|Z}_xsiyBj*_eAMk0`_=SCvP)P8OxqAd|5C%eT_|F|28!2f^cC|Fe8JvS3UY}$Wr zCV~KcvfZLwG%K{0$_M=1B>$uYTBtejpPPx$DM$h`)RQin`!bt}s8$}i^?v?yBN27v zo86Y|D2WB4Zs-tOg1CuRY~*t@5xT_( zKt4AUiSK85ZYJX7mIh&-MF+8Ys?9`U!+P`4j}+j(t7;*YD2#ZRt_h~Lp&wleNg7m?&wo%bu3sO5DL(PLMDbonkKVp8f; z?;;YQu`TN&f*&d0mb!?L)|W(9stwjft|5IA(*>GZb+|s=?jh~KXSfD_E!?HbVJ)w+6DD>K(bTHL^~>lU(r9<; zwRVFy1c?8TA}zaSV)qb}W_5Uf8Qnt~ZDf--b|t*kA5y$!UrlTuV$!S(?rwy_-TRI%#qPk(69zczz)bM6k9S0F^@>{~-lC$8VFI3zKGbct1A~F)L=>^VFnC z$8!UbFQ&CPqB#z-Ha$PL<$RT zq>0FzY5&?AM)PP&dU!NLcN~hlgesc$$~;NgdeQ8#c8u9@ueX@Z$3u_0=z!F++_}a4 zc$``-op$GUSUPARN`&5NI&m+h+ujII6*g1af8(jQIgUTZ@LAnIDNlg%zB$zD8<~e? z6Ifx#VNF{yz{>G%g)-igyY4LVX3gC(%7{iSMefRKRZZ0jvtX>LpGwqI`r>c&Kktr%*+<={fFjD`}u>ac}vV@G#2w&7;6WzBYP z!zHi{{3gd1KW0}Qw8XGN*pZIYAh(KMW!Sb^A7hOz>4dm7>CKdkl4uSAx?vV$4Xyce zx|43@>W92eu(v*4^jNrOHabnewp$l`VfBYpSIBV(`dX$dOp?{%&RUmd`r?sr&+ou{ z8+^DR1ZESt|4=L_q2qJ7tAqbOXb-1&WqD+@O67KoUV{gM!+?$O~Tafp{GqdL+c@R9#tzZP7;z+frIZyOEJw1@WL0(m~6s z=w9bmD9Dx!tAq{NO>`9cV>DU6y(-fsb+O4heoeKA>@dI z0hqwr3b#V0pG`6kiV2PugMk?l)c+oP~PPYXaYW68`MFTn*!=17@kC-+dS(=uE0Z2yh_o}7r;l+&G% zy5kqJTh$F@Q)WC*%Md!E52!wlsUVA5^?0)|s)34!bIa9ka>)l9c?_CVit~9H&L=pFIqh(^|-}qlIIW zL3i4pJ1ZLQlJ)fa(TCCaBb~n*^TX=59!gH-jYpd4DIN915jMJ}6hj6ifB(CG3jhBP z|H)te0sim#KhFp}Bk+vCGXl>DJR|Uoz%v5n2>jdsxc!I!?BiE|{LR<@@L&AdSAY61 zzWQJP@7_z8l6T{qE8ImJO~3a}@DI`L?atnz_piLY?+ymhhxv5u?Y;574eCL-U9Z=J z-Cv-aQcy!}T`TyLU;ognxBT7imEUTG!P{R2=(=_BSH~CcEW+Oez3*bu-vl>%hu?kE z?tQoSO>h-Y@ZH{<@5~AQ{lEJ+ervad=57sC_V3j@`^aisOkh4oGdQ1rH5-q%Ui=;W z{Bu~f2$^&mZHn>C`@;w(|8RnS$gK_<&xAf@EN0<%jQ`jryEcnos&Ijm(a3y?TRm`N zF*mZ>3thC!XoUVWC*)#e4#e^<`Q@9l?>+oi;Eku=<-wV4q`U5fF_~efyRL-%laTY{}RB{y3*OXk* zO$$ocVJEsaObChxfp~o;f7w6@Kx}V+qWu5={L>%c z|DONzjKDJj&j>st@QlFYBk*tk&%gVlfBp|&{g>oAZ7bL5fBAoQetXp)T}Pwuz1Q8v z0ErP%wDaE-sbtFU;witwl;4?CCLUHY zC3#qFzo`$sg1y)E-9it`-}RdvWO`U0)^4NT+U+!-J*+R=!?I6o&b#x$__o%kQ+LA~ zOiyh#M!QZeDlzFhPN z*B*uY@a~(423!$A&?*e1P=u3$nZ6$c4acixeiHC6Z&?_#h!WnnKxTZCP)Y(OsH}4O<`#>Im+EeE<-bK+h-nBRH-$&l@uP!b;0D?KE(akiPA^djheeBQg zybn<{+3pVT6i`Cxf7HG9#y8$#Mo&zmc^82?Y7Q`)b#J4Y^L0V9m4s~Nw9uxMs7!CO zeRjJ4OZ8s#PpF#t=-u?E!;f9$9qZ7)*BcLq-O=?gy~}s|+vn$Rz3u{NgAKhdMZxep z4lgL+{7Y|Lo_XK;_|Gq74cLUy?ij;u9E>!YVGCck@^J&&=eyCom*er=+h7vl$FkLV z0)6`-nvSBu_jG1(_fg3LnoWCGcolk+M9jYTqIr+Fo-N_!Gn+1k6L1v^r8}5Hu0BDY zy4T-(_tPPaPMkpD-_>G`uD|+AdjV{1hl&~0NJ8I|v~`BDB$M-m=na;kyPCJQ^)@Dq z``DfL?ykoq)VF=e`4maO5&_?x_yJ%U3cy|e`(t2FC=>A0i2lj`boV6Y{b(9ZRE@vV zIe;v}*pautuY%deRPO1_nR*mTX|BS=#*^-$O!`vxtGHU|OucThFzsitJ6dY=#|&=a z8=)<%r;ocodxJ4lPxt=Ti+=7wc|q%ZJNpDi4QDE2GTi?QsJ~jh^$UCAV0U-dC6`RT zeemw&_~6(c5W)?2p~?mv@BRAdWbc*tZTvdeRBj{a&arpbzrAzj4(rtR|99Hr5)--A zYG=Xkl|_o+a?e41Niq4&rjNr}FdjX9+@$Q(VK?2WEZ^*kwS4=3?2 zh4v#Fq58W)%}2?$A9j8jv{71TF?%cL39=}CaFVB*Dr6XML^3Nes^t^pD>DkQz8psN zCtmmZ8j7A)!ICSkuqdEEA;Z5I?=}J6s)dbOD|CQ%{-h9=14ClDg>Q{t0osRaGO7}= z*TB&jbwA!CAX^G7NpTC{b~?4D<7O%eH~*%f74xKhvGBnmumZLe3Vx8-HhD4jtL>La zUpX5i3cU?4XyTElB#LgW{@PQ%BP)C;l;7#Rw5Y|`bgj)mp(!5etB>HSfM~3M;lt&V z*NyBgP=~4=9}zj)=@@9sZnH%Ey~?Kol~@sX7x?Ewm9T#o^(dJq!<3?5%WbeHH`Erw z*f!n0^@I`^jK8~9FD8fof23Z(cr2|C^2J00pMYh2)gMv~V_7np#vKMEzL)Frwb*(V z4I(sdyU^8RF<%#@O9i~?_b4PZ)#EJ|FYnw5WDG{R{Epvsy9d*wABXyk$6fYcz%hjV zXv>Iev}4PS2IGnSP->3*V!RGUvmhbtTb33U9SCSYN;EJ%L_p~)ZnDcc=bt)m8lg?ca{pK8bQO>v6^f}&O9tcLv0~!`{DI8f*&;L z_9AZzm;FXI&91$d0FvqHLjK&8+Gce{)nbp@+Qg6>3W^2jh(tBWG0V$9jy4bABdEcL z;8q&p4`Fi!bRne+VD<;?x%;x~PR$0H5N2anfmENpKgi$;JItX=BPIS>MlaVXY>H zgDx4Tg$6;r)}qD~nILY(zbI)G{bBX;3_~?+X>nW&I|Od+g`8s7+$45%>Q;i?E@DEqD1aG9$^+FaP`Ej9M{-+b)$W;>YYM;z=Rm{0wOl19i$_~qj*ajp>U zcVwz&g1WphpavG00>42w0mtZ%L#Ki0^C}S80>CUQi2s8*h@&l6bzGhudq+4xpr*a} zkWKOJGC2;}0r8l2%&vRt4P3~qB(!L9tfDxm6T$EIrsMNhbgJ?G{3Q-y#}qiX`JH-i zf#{Vh$Qi$rFI<7?4-RewelFA1>F+qd+sU;juG&J=@8YD4y}qKFEk>|b={(W7#C$@Yuh>JngA*DNie42(V z2v9$YiN|X|ai?$#(Qk$mAyp=c++uP_Gkz|=n-C$JPb?UqKyaqA_-bz|I2nwl3r5xr z1fAush=4^k^1=cR$78Ypy^H zxP6FpAjW1h$Q2GA5>Bi`**zCyL?BWH!sVlNsd-+^}xr4_x6X z!+x62)g%Vbek$GOH1-+Smen*cXa1iKf_ozAE+w{M_u~ymJ47Elo3YBuE!mB(v3TPO z#ju6~gma@J6&SRbi+e$d&A%UyHW}22O;RHLTTMB(Fy_B6({=}o>3D+bx@d~l64naZ za{ol0S}4a7=rb9}_V^WcoCik~LTX838w!;5eWkl-dV~HAj+JoSw@K{dKw#Xd^9WPy zoX1ndOnBS4B0HpT(>ad@H`{1DI9m*L*8x+P(MK(p32^W;eE$(nn?VZAWd;-=dU-^? zYFP#z{Qq}ob$~2ZO6V7k5FKBEzpvq0aF>C7o$<7rA1h#CJng2*Qp3i(E?Vr+36=4j zn<9HY7=QHillFsdNy0fU!$Tgv{g9jUN=Y8uQF-yY!;&&T^t-mLGQ_Z!r`Z>=wJN2W2vP>g}8^~TmcJJw~k1+psF&a=TOC4oVB}ISC- z7Mca`P`RS3$}E8{)GyZdU=c8OM|T_9Q>AN|#CRr+`-WmjNWsPUWlXpN&mOGy1I{xP zu;Jhk3CQ@GCE2uW%=dECODM-0>9TBJ*h)^+EQPeRK_^=QF88uIMD~fXA%z@cUqY!8 z-nB`Ntxj9SJ9V;@cYUC^%2r^XK|JALX+S8!RNf;UO@PLUJka{5m~&0Bj7OV ztNLJlsJQX9h~lQjWG9|2JCcZ*IxCH=Uq?4+EkkxpW+y-xlOJiDYRKUo`eufDGIE7= z^Wc3dpfpQ+-DvflI=VQ+QMY2Ppa4~g7|yPInf=-b}OQ`0)rmDDN!M|%^+2XzVGQ0%ST!anB!GXhk`IevJ&n} zGdEQx5&Zv?Y$dE>U|=p|*KxO|{4}J797+<4*egmyYVNYE3e?IfD;xopoBk~h6Ry1* z)XQ%7N2uxhnA78dDsSli+!n6I#u&ARL?>Q-G*f7b zOf`#z?IC+)1WZsL@00I$v#C=(rQ-CyvDZ@*kQPeTNxw8Bmooe?AX_ENpD`$_IO${o z8U+g`p2c{=4d18>c&Pb?O^5~Ea6d_u3aLRaJ*#hsA&5XM+EA}mjXbazZYmFy)cc6y zK;%<#pnoY`Xf97PxmZPe!oPcZav{b^0_sM`^n{H<6#~+vtTDd3LP)5k#$)fWd%csz zoNuySO5-gQ7rhZ?Lb8hT0BvLauCT?5fffZIVm6%)cwJ*oHxVVC6PX@Ev|FJK&UiSzKBp;0RTO*JQd1DEqq!~*YSjKEbwIMq zmV&lA%fAiUrJH1023)IykNol1UO}6eM#D-(tmWGJYd3`wBQ8dpolJTAp zou1+O!rl4AZhEqU<>g#`-RVe3V@mX+82V6XF{a@aD`gq4JNmJU6;0h3#~w;F zXvd*;B1pu=on5lsmGCJ(8BtwJUWgpjif6V{-=XBO(KRKnEoM9MlmG+GM7p1-MF?0K z^HudSD`x8tc={olpzMC$GAN7{nwr|^n<^ZiH3?_VY+Qy5S8U0xkR1`Mx;|NY=9@ z$SA&GX$ch-!KoJZL!y(c{rfTlc?*g2yEdTlFNA1Iben?~zJ(#GhE)nFFBePHGF{nz z_=*-cU-F{cCIWh{$XpYd1W(1J!X5D(8#tOXqilvY(rjy7J`QYCur@k7ct~YBG!K%E zvr|j-G@s%6$ock!>_5DMLBKV9FYc%TlX@@?sH1cBNWVN;Ao@=>4L3ttd1XAup(KM?Ctgp9>8 zg>Cst7B_EkB_H1o=R5l*wPZn;#}&0s!3$(-c`N-*DM>K~qrQq^91mOpUKWK(bX=0j zQ|217B4~Z)9>);l)lYF!4lqS^i48v z{Zgq6Y5Gil0iN32#Hav$5rbCKs8n`Y@G1s2)xG#6*?3q@^TwDOO812RxzODrJt?W& zdIuvFv^hZm0osICrQou-eGKkKb#9ETp>9vg)ot6+wNRx5Xj_g6;5(SC5``+kL4aMZYD8%Kn(7Ok+wb0J`=`051YnhiVAn=%Yst z>hb|ASg-HYjf5vRil`B}I;9e6pbG#0Y}lQB*m{AjN6&>j`7XPIMTB@bnPA!G1j}D7 zc+vBs?_d(DulZW?P-Sh;He?~yxIU&&S>^Z?j^*+p1Je^o+*(aFmeajbIZgAKZCJ?^ zG*55oDmKM{+187{wxUTE0V9g$o`I&%ky0_9bE8w#LqP{Y*s(cE&*CG~w&(^D){Nch zyw&nOU~Y=Z_aslPsDK@s|6v|?tgTeRIz*2Fa{l!Kov3cl~SJ-%hpb;&RKcQ!hMYyF7neie{Y* z;cxJmp|9$(Io%e0LG=|J&zR7%c*ZxrTV3Z@#WNR9bR=1+X^ph2(!oB({bSiYFGF(g zYBrwoW;7IUSx!r_+*hWa4$hMfss+mFbzG-uJmMzvyj%>NY!Ek)Z+(nG2|CTvtgq2^ zopuQ05jO&VE;U<*U|Dnyep=v~*WWwmEbbY}X?HfmaROZqWK0O3&!TlW!s#k+$>ScG zs8TTx6mj3CO^`K>(T~n>6X4*J^QgNuh~034hKt)-G>OzDz5u#rlMEWmffF=bc#>M; zS@*^PGN3eg3#2$f#egxO3~TF|mxFQd1KZ&!1=xB_Ak}nXL9R?KX|m*eE>bU(9a9X9 z&?0Br#*j~Xo2o1&UW*Z{tb^%P)tB8Yml+|(OfM;4EFlzYorAN|jIeiOFN$Z+RQU3? zkuls52A9X?XL|k%PiH}?o2zkAGj;sHz05b>Rn+Su`&}J=;+|%zL>c41;sa2+!&&{N zi;g@Tta>wJxGfm22wATXyzt)PR%W^?lCG?!OMz$J@ehGVS2Pd%KjVF@xopy|KD0=O zAWdyV2KxHpAyoy=@4BP!)vHH8PjHe3^4F2Ryc;#Gk%yy6)i>DqI(tS}zgjakXvP>Q zP1gH(*PYMCsL+^VqPd#UCg>^@i(vDGXO!yDeY_|w87ouX;IXTyEfTF4o)SfZ@ztw+ z4@nWXXya|agsZ453hfu3_wx9hRy`d)Mz~w~<6XaZhg7_u7JXbG3GR7&O8s_6^Y1-e z1?-K+u|mc#8dQ5iSL0a|c3yaIriu|+vY&X3va1U%D&+kdAh|lxde*PMh*L||t%5lF zANB4~ypQ&ADx(-FDYyrA=#6n}J8C}20X0aoZN{dJRi;u2Rnj89Lw8>=#}}>;-}PY% zh29UHcPkWF9}*jD09=_iqWi(8-O-GiPm!(TkSY{azv(<(D3w0Ma_?iD-3h@`CFUAy zbnd$ztCW#pA426`&qh~yS-X}EHiT7&58%_&?b|X9L;T?XpD%`R^=&$kK{#{H;!|o+ zA5%ancD>o4iv$GHeu-ev$}nysFHnkwvglaFIKnY-mJkdoz`49!H#cI-v#pGr&QfUZSG&-e!gbK#!|31MEA9aU~CI#1d{lWzlU;*i#K4^NGm<=XZ z3ztbiN8IMq#)9CBA)uoJ^XWp_RoQdq(}l7dIiV?w00`yn(I{!l zn{j@5Psbu)Xc|{_;JItD0dQI%(ZLYTw2%N}i`AI5%H>LR(e`q^h=yuE(GC9BS*m-w zi0N(r_Rc06JFU@0>FTYxipkdB>ium+oW>wJ*cv!%zsJ8Ikhj28-%T?d}EG+ zU>rjNy@Z)ZUobPFrv+w8Czur%tx=`6y*$Zhperml!%2f$!pG9<+^Q}uTwzgSKNa{W zot#$8$FRf9qD&>?Zln>;1Q1F>(dY7fE!-%hi_(LLC(K8WsLa=x9JK0G`Of&-}81D7d2?LsUs97@Q+nvnFbt$xjgP`HI zu%n;!foKQbAV*w%EJHjdRHc;??vnXtABgHk8IQ7dF2Cfp1J9guQUS;~S^3&wyO~-$ zv-D<&b*xRbNU~$KcsqOBDCecRy5}LD0&~|~7s2)SGS5If!V1L8vT2rT7aL1J)y{C5 zJe{aHaj&Z7rTG=^S8sc>Ntp&~wraSglpMf}SzGiYexa<6ju;vVccr4~gjS`%Qg*zp z#ST>aUXS`_`V`7bVhOp(e)#bYe_O7&LKDZX0pb^9gLJ$$=B0baZX>9*d{0kmfUbW} zU>8FZp;!uF5Udt?7Nbaz-#;7$kBNLBB2S^i!rfYRV{&oFCP;F=D~A<)DXfsvsTOW# z?HX_^L0A1AA3@3!x`~K~WkCC3&2MlCS3k!BzAO6rA+>;ETWUtGQown=ivhTj?*tgW z#gf8)pjv@&Cv+3Q8)bl}5^1XOM6yLkJQQnQQaaTF4TD)!;fZ=BU7|GZCWSj8PH;n+ zgLDEn9g7w!lF$!oyLB$$>URuQ3Ptpr!$3MzFz8haJPTCD5}sg_08grQV?v$~*T56$ z1b8w!3V~1MQ<8Jp!KI{8rcqKl)xyo{5E6w#jd~NTNfI}PwbCS9!s#rr5NN;Vhg`nt zSBzBREjqWMSnib)+Ys9D|KCRx)F~?)4+G{LNr-P$x(&ol(Wdj*Lc~*%ltf$hKk4h9 zifFSkhGdm{7o@u(-vD4^Vx17@TP0;-6yl8B^JZHRZTgu+iflpAkqiT=d>|vYA>m$9 zu$eolFn%nf8|)KJZq;t95bjQ`xy#X}UlXup2Q!cy%#_#)Sg&8~)MOrJoPSj}66OXv zlbK8S4BsiamLt}mP*bJuc4=lF4URX*?(Bl{E(*c+5$o`S9{oQaHGE6^4@$;m2a~>) zsT6bc3dpa23ckzilQ`pxavPB(I{r9I4&g}huOj2dQqGChPsZ=BN;@`xj#l}8U3OLp zF2=kSd*yF{Y0SzgV;WBUd+D{fo8cSrx^Ss{9=^#=@2+$xx+34!S980}RxWZ)aQ%E1-pDRBU4-?ydDG;bJ19j5SA=+HeUvT{o}4pzwn1+1;*?fw6hvobe0sVE z(tcfZ*cFnDofV&|g*-Fl_22C`FQYY*HQ1CPFB z22wSskl)pi4x_7PV3TF(WqaVpxOehJb5D+{5OAN}f}#6q?W1jX58N0J&%S6L%3&Ar zdf&=dAd5m#1|w=U+Ny{%dr{p9^T3s$Rg6#9=I_E9(~aa6r(Yrc*T9? z475Yj@c(~A^?$YxZj6H`Uo;2ha7(o8Tror4K#|_3s!j_{9{7*X*hbO(V@VXRKK1lCiZKTGm;z*}j)f zfmVlci?E~dE#31=-8Ekiy0>Hl#%p;rvo<|M*z`*nJ>b1>kt0|Cg~f0Bu3T&IcRKUe z55zcBi$Gy4isz`3J8gbD#F6j4PVbMp>`u{DZT-9ElH&N3a!U9lYo{2q<89-n{Pb<3 zdnWwgIv>$)~4{{c@L~7^+gxG9ItCOR^-qq$}_-`ck45Gu|jmT7ca4uV0xG zx%Gl)EKqAMx_@%nb(Zy{A=@*#`W(xO?hrmC)fBVsWofhbtGeoAnQ6?e_!nhC24cKO zOdC+cR#+zM!^rXm(zb!<^s?f8)iR<9!ON6hf@`S(xmRydp_74Y{ENm_jN*s~`fAt; zxH8*(W$|R2eP%y%0nII1-;yDfZ>K4Rvl-Od9ah0kKhkm|XD1MYD&qNiLab6$nZuKr zuQICgy$=PbW&~p?Exq?6@M|4@K@I(wqAGgx;+bhetV&dUpM@L~ai5oTW1~hgf3v99 zU)ITM;68i-(8kFSh9)YZv?p88Y8f*cngQ2Tr>z*MVWr>)s1Icumr1co*twgB{+zSL z5CNyX;p7h22$Ln3Bi3>o1{v;ztU)z~d;b746uJbe)^3kx%b<>{rTswkp+#RSAyX;7 z>_Az$N7V3E*HFml;!dk?zQLcC73T9XRldZ4>YGst5k>2dj&qX?Oz@tUK*bl#72Xc+(0B~gWOA-Wo2+Ux*6{rcYoFsWJXC0_VB*6j;qMNPvjp4E+{_AorQoKU$y6De_jrh>b8yhFOF`cjP~XCjka{iWqDvQu z@u`H?I>?`^>)*XGe6ss~^pRd;gtNp^57+o9VQ{?TW=rc8`2WA@P5b)3rx#m@G-_i& z{XjQv=o_DNsxL(*bn;HkIwt;v!)-nCkAV}T0i!_yY(c@De z%hU_es1|Z&Md!jTXR>Vu?tsBvn(dYgx9ANvThbAG^>8y)o(ngnIS4yv?p5ZiNO#EK zrr8Rum1d*q$Tx0?ZPuuDkyb9EyVz_=T3yqsR?eAH=fI;20?r=t$`;lXbWL1PEaOte zl5@$iABz5Bvn8E3ta!~a3(>8t%iBL0ZD%5EWj1yj;AtWx1^bEi;mt=LUhx{I*@OnnNc{u>}Am=aG4 zF*WiyOlWB%H$&g~_s5p@1KoSRnQ?|JXhB;dhz`s=AoyX6_quS zHJ+;YZpQO3?QTXp^&_$U8FPZBo3kaO-E@<-&LZWo2n4ZnSV>^#>Y73A-eAd_JZwTU zTF<`vgu}Uh&(qq|e6*Eb(Cp)`X2GX!k|tyN)X*VSs#P2zyIa(oX&)CJqSH)wjx?-K zKtiy<@>@R^=KsIBD$}L)nlCgR#IG2rHmQaf7E<5AKuw9Q1ZlHXM>4%WxJOtg-m;hW z;QTtMzZFg zF#(iGYTaE?>OrA>_h2Tj#XvDo)o4q7l&WVSiJCXw%C>Cydk=wSwMH?{)zRp=2m zLbA3~CYA>VKMxbduveok#bK&vB0ItOy5Rv_M}KV#1jK6N@=+?*NX{u-?wmwlkD+VDO zVs`S%Y_0FoWfyC>cFgXHjY@KuAIH0US-Se*#|eGR@heX68-98?(G;T*eqFLfQj#k< zcWa}|7L9@KEy5C_Em?34MWNgL^0v(GPs0ahRCmjWMKp6_5mF|7N^B)a*YubDki{aL zBcI1OKo$;ox(`0!Y05DP`Y>j9t$4u0a)noQWPM($;KKXR17rCAe_e1!zjMS+i@Og# zEpCdj0`+kW;;K)J{gA~9T!=$iEv$1$ymQ1(hr2XQVVI!obhs&c^y&i{%+;R``yq1& zRoHT43WBH!n&GxoGi>i7OZ!KlpM}x3@LQ*r+-2Z5MK@c05koenR;?ChW`lsRd5pGL0!uIZNz@gm@vXllocHwz}ekfTDF|}%;WuC8wc2i10L(8h zY2=EiFuk3+kY$|SjHkoy{Kx+M?mbGra76M=ei_V69nxd*n)zm^f{87=os4SiZ(iM( z>ejZ>x9UgmMV-LW zVW^-I#9E_-TBSOH`Z?L?#{DhgU|4T4okpXa%X*NNy&Be+5sDCZ7}DkG*g>P_JNdy| z^jm^6PLd^@#cowGttw#-=p@gEIdRvLv{6BnSF_3tMUl`<1bI@XCQvivX6w;Uu@JXJ z*G+vBQxP$xO2MU$RyMe{3{S=%RgaWSK&&O$0rb zr78jTc@vyOdUYv~0BnANQJEgL&W*2TWujYFY1EP(HnA!F21<=q-QI%yvc%aYlJyL& z;N(Sleq z>-E)rueTGoH%jKv3l~#>OuRkp4NEhP-i^~Y$^>EQ{ERJQc!4nd*j=|VPD}J{73@p` z(s!y<0!ZcCTh*Iid#b64_jRM=DRKA+X92x(dgI{)y*sWT7dQRs@MCwnc7}&35J|&= zLsaA5-1K{WZRI60aZ{#uQ~b<5ts;?7tDaW8=x{d)M~S zROb@Dd~uU+xWWP_TGQDM{SO`Qq$~P@3QG&)Z&dkJS5sx{IW4$riSD-g76xlVsM1x$ zV55&`F`jTOzBkb*ns#-E zB;zr-NtXF|euvI-_FS;`tw*$Qamx|;=E*M77GnpBNlaYSt1rJCn=2ig1(fT?dO$Us z%xa{!NDZ>J<%LYm*$&Y>8Y`b5u>o#Nvpv;|j6Z+{naC_}17xEO9=k4rdT5|u%y=v| z{b2;O#pr}WO=O>k_g#U5tg=nL&@j>pD=SbAm4hp-f229_ilS55G^zUEVgao-&Dx5Ee0c+^d$_>%7AQzGLVzI?kqx<*H4Rx z%EZ?~QT2^G&qyUePDuY20(sBZU(F94~L>Zj00$* zRUND>yGqMzxLH_*)8|rHn+>;O9<2&mwY0NcTl9y+j+9oVX;p?QmAE+ZBqgk*1rA_C z-+uCLretG8IY)T;#fe+F8bK4@!AeC?%5aWv{nDrrdJxnaLeZl7J=G4Pj~t5SJO;t) zKxZDZ7G=^9j|6(KlM8xK4tl3i+m%44-&4>{e;j-&n*0sCm=1>WI-M|J>iu<+|Oq*~XImG+;F|F>SfQ^`2 z&f8xFLEV3Uy!R$B$$XcR`7ZeG@Zh_c%)kG4|Hg0QE|8|*>V$8i`9<{e{Qc;|X#8=6 z6Ya$WsV&j$ulWUIVY3y`Wd?JcwIVTRIHBX`-FBmidm<2;Opn{%VEo4}b%MzPI8tPo zdBeAQ;NdG#-O<`&Ss%rU4kHS!rORlvn0Y7XcrFWmky>6Zx##lD+4mm)EAYls@ABXb zWQ?$+8@x0oGoEsfedMRyQy*MGNxFeE#V4f3F7}f49+XHae{aq|dLn58fO!j}_f-g5Gy2 zv#bVR#C%XkJhA_BZDT2i`lxypQ+a+ph}4!aBV?@6K_tQms$<9ENx|)3Zx4>si<> z)0MTf8M1~vg&pQL#-VwYO2Lh})wSEOG(%t?4V!>krrNgRUnl@AJ0$el%+64wszHr; ze#hP3U4InC2YVaAt@Kb(B?_Jn7PIX`x)j8~&-n}CD0>+ld%0kZ?O7*Du;4XORdTSLm7jbD#vAsBYquv)6@9Et!L{jSAnY-&ail?(6~6|g=lVgRZls`{Jis)SLH*-hChs zP?vC8Bi=>Pb<&bqxdG^RH$nURX>>D~wyBAk4SzNnByTCCCaSAS^>*4B2Y z>>$IRI>T6!$$3Kb230=pYTnw`_LDH~V|U)WyB?EJ-}WKrQ%@$~yAwYEEJMGz>wkX? z>|yH!vCH_qAjJT4yFu@ z(wDLybG6W!dfg;$U_T49%+fzUW^fDN2yJ0KjY~4U!5FHidw=UiKlh-#pmo00O&VtE z65??GFQEQv^%g}D%&*?v-F3+&lW!lqJ2^g}E9H#=VI4QfJM(7)j`x0jbh7u#`!;?Z zggS2N&egGZ*T21U<__xtI`PFC5dQza6jMe6TJcN^t}Iq7DyJqUUHuG>H!(SjhU0mv z4*=zoF|4h)>2VS+Jnhc!D4qXY_d=fS=pGe2nm%3GgWVbA<3zjZtTbqNFiM)rXUd5V zw3mx18I8;h;c%C0Hiz+0TJ0hxtNLQYl!VaoT-?P`Z0A8IsZHMJ$L6AUcn(6)Y={2S7UY++9R zAU&oK7h{<|eJGRZd|Jzbzm8}(DWle|26?sp5=lO11O%^TZIBv405WE;J^}%Wieb!fSY7xM>F$2;RUjPb!M1| z9Qm~@H*48Vcn`$itE@9niFe@cq72ggyQpVZT`!-wr8|Wfo2t9>@{5velQEgxAdyvL zi(yxvKxI7Dbe3hRUKlFQ_Wm`}+L<6MZ)TTwUo$2!IF;Ji zeokOoGBr|C%W`O)+}VK27;GK=dK$q~nsj^c)8W|P$XvSiUP3CFt}fi*Zpv-A#x6Qh zp`8*DH#imloRmCEma+O0rWj#cBm}F0li6$roaEHuyKYz?;|GCRn(c#R+O|s2W^kr| zhyl$!e)#|0y(HrSXU|j`&p}PcgHOxCx{fs#cGy{88ffw5-hMSz%ek6-4$7~KXx3Uy zOEkCQUz8Oly3*?98HQ?DHQ2Ed+Z4OzCb1)5pil{iwMJ-T7ym-o1){qfcBDpAYFIVc zu}aw#JHNh3@CcYf@R0uKI9u^A3Ov!14Lf*yCU|Ptvf!;_{x^A_lC#Aq4boFdJdR{^ z?;oxbY1d(^x6~8ZfAg{1o9$p8Y7>vM0IEJbjweZiavyJrbA@QXBU?7xf0j2H)j-1n zaE-*@sBWRg1F4A+h`zA`k?|0-RKY=jcgLp~{7&7wKy=v^K{#tIhS!fepoPbo}TEuBF9?2FX91*4SME6*|J;RSk zEQ{SbDlecu@3u9aESUZXnhtWX3UHt$>pXvmBm+kL&1S!G+i*VZj>kvG23&eQKCT1YEdj=G9tWS zHS)ru5XWP({=AF*(t>r}FjG<#%tJb)`u1)M#wzx>@n~nPHiu1V$~TMt4$;T%W~{PuYj&e+ zEZ)3AF|45g;oPWd4YinydqE|DzaNhXuT8NbHcN^0Z#CuE%9#HivlME(gT-__iFRH_ zQ*`IBR?wFFC-Q|uIhH`5$w0QpFRQZFi715py5fWL^Z16IPu`$^gY%|UFKCJr@PG~3 zi7YQK4g|(`YaL;Vo%48#mb6_Cn&7GT$bL!&(s?QMiEHO zr{e(yh+ZC%znbL!89sn(79s(b(u>(qv3s5@ysJT#yA15hjHlhy+G5&nhAkp$`o=@2 zO2N&pJs*rediqHKYfSG}Gn}I*J5u=Vhum~o%Kq4%MiM=@-r@(83m6wfi7yMw%}VYC zzvM_E<>}=;>3w^IPdp#*J1Mum%RGa+_pS9M?#MKL7>e;Pwbt00XZ%}s*{>4}Yw$E& zx|0c9TvEXn24}9uWfngS{LJtuwDyy&N{o4_&tQlyZR@S4IGL%=6en&Cga#erK3oac zTEX3c5740F-VsgZVXjn*cFCJ7+{~J_y7vtp%D90jsoJ*0=v63Q;G>CDA-5sFk(^LJ z?vMJz#n2(56v$F%SX6cSjYr)-Ez6$V^JtJ7y%;q z|Gn(^UqQiSKPI&-FV?~R+#DzhFXXcPjeF6UAA z0$Czms9>!9!6IPndhR}=FCW4r#xrT)Hxy$+3NFSkW5Q*5wvOHpIM2|MLWhO$HA}Lo z^z0+Ht}jPDCl+*BwlQoa$7!ZYTHZ62%>b8s*&HJK#K4e3jl14mz zo_qP+I?O~-)MBy|&z7A@#7v!)HVeLvZo0U>)l#bv#^guZsv2@^hrXGio{U^}-K?`u z1ytf>uN$qtQ!f{XI8?>GiUL$C1OrS5S5wWyxLfYhqF+)CF9J7oL@khRKh>_#;V7DZ z+Hv|;6hEk#krUbh6pR@~)Rtw?TALE@YNd+U_q|yH^UbEtDHK7y7%<1Hp5Cdz$Ydql zm8NcfhWw+3977`97&j}*KSH&fyQ)xQtE_NDQf~UUI7PVjZct~t-5;S2@BvrTFXsed z*4LQjaFpBz6?1ZUW3@4Z?$<(Ov@zTE*)2n~(A4@7J$Uue3~@!KnuWslk3BK~CaA0T z$?f@`C z2X=Ik$^#{&KB71f`BWU}Ukb&+HpDi7Y9U za8h$j3Vs2FO(}r*#O4H-3*4ibJQ8R1mWwH3CGfT}F1;#hqeqx_Tt7EIry<5-6sU}) z^nTT_l&NjSQe2K*9WPI($i*AYY2vG{DzZ&EIVtC)ecHCX5_kFJu1zf>#^OzbY7H?e z(-tqISvS#Y$;^Q^?}9;xC}?ekbV|br9wv4%#X}=phdiAEd2xACP?~y+u3lZCb*%Pm zU=pj?YqXzE6*G4+?16fr;@$QUjHY+Ubnn)7Viq^W$ch4jEvJ}JH7kk^e67&fGMtEY znal}XymYxaPF!lW34$pnO53XARG_ZjA>#yA8hIy8G1Ss-00qW|n98zjSSQlb;1SBV z3v|>%cPYyLRpm8&OQMa6$$R1X;$4|%2be6(@=eV6c(EylOVsx;K$qSl)`OBAuKad9 zyy{0KV2UxqLNI^7c`(IjMMErCT^h_dz!V^{cI8s{2EXh06`T%lLb)51JEBrtHdgX} zU4E1L4VoT8?3WZ$>xk;L9%}57?k4(L^{v|;>zm?@2VF1dEb5J6(z!kE+D1CNe8p07*$d1VarTGRE5?;4_|llK)VR!Z2GHbJ|*!=Gc2r# z?bO{Ir=I#9Ko#!B`vctK^w3bs$s}?Tb6inL$s62CO|GUG^H6XxZpDNu;aA8akJPHr z(@aA-*{bPk`AqX=rj>@jV&EULybE{+|35mwy%}h7SIjptCJ_>BjBjeXb+~qUP@~pM zsf(Xo2N%#?v;Aw*v_@$}(`Oso=^fh0pq~Z!rt|o2mW=k_M@TQk3NlyQ-k>`j&UO^d zvy5bHbw#IVWh?H)ZaB1pZ{u9f=B~9LyVH@7DVSIwa_oW7;!OLn^tLJ4AS<(sm-hYG z#lA_sQpX;upom}8&IdXZw+hOhO~R-6>`}Me+LAb^xAz$|Cgo<1t|>QkG24l!1Q=?e zQ;Qz3GUlsl>{zHsPkzAD4_c5k&`^(@t;J9nLo>}PMkShrGiUY>OEX(KgjqT$wQP14vVJ~7f{e!|*^xxH2 zF>Gm6wb(NAD#kXEQGCIAir`cW`ytUu*8Y8&8@h$MlwDg`<6jh_q5~haB%4PKs}xdR zjhU$BJ2b96d__8xYgREZB5s-Iip({UN$^xmDpaKxchpR5qKq$n41`|oqsT*<+MITE z{U-}?svI}XIkHACyMqNHJ1=mVu+i}Q9M%Dvi4!eQu=YSZa!&V`0RI0?OsYzdnZGW9OosbLL56=|f?Vnt5Xid@$Xn`1 zkWr#6Mnxp|Iw4gh$W-rPA7Du+ld-;0ltUY3qF-n;;HHUMlc7vMCMb(x4Ej2zFA`dn z!pxE>G|cgtY^lbO&t{j<7>B?o(HMuN8e<#X+u0ec?&z*WSqvZeQuH9ER4K+RyFtP@ zUtv5D<6y_axKv>PnWlhoD#&6K!I$igm{O$}vy^rT<9v1TK#W5h<5G12WI_RB8b@;6 z7DEial+_$lsuW`uW6&7mdb6Jv(Wr+5B7BFSj*&U=mbwVALv7J_b4-iZhN5^~swkRt zr-q&_vn{sh*92lQ(%?&p0x7LZL1w`Q7vvm8u?EP&js#sNFu5R$o*?;GPXuJvR!@VhN+0r61ui4`@u8aH)X)^C zrJ7w>k{k7F{2ugjRIu!~;`Jr%GT0=FcGyp6Ybg zh)ux%zr~4Lj<*5&PH5s}&Cogk$z`dENTLWf#70D-Ejn_6qyP1(FY^=~N0XbKyjA^Hs!3ezF4B3PYS6 zmZ}K2YOaTzd2b!jdkZA*P1C6qT;{ro;N~lb)xovm4=0DE%Apus(Q6ANukAB{%Ure? z+%)gm0V`^#^7$$ zSBsG~yor+~+_e0X^p5DH1=0z|N)_pwIEV}L%-xMTX$n!xKRY=sRj@(mxDd2Ak^j&U zJu~_eZr&1&DkU_`vu!u(m?=ChpX}tcRHwQg89Z5qrs$2)cQ7=GLZx6bD>kdf5>#kz z;g{riz3L%PH6s@v@$A#tWw8pStEb(Av?l!+d$%3Y`J!&E3{N$zV&{wc0NUr3S*@Xf zDYm8McYB3tMlQjWj&}+%-EQIpn5Hp8;q+UAsOW2n4Gm*T%L-|n7fOw!)7qpY!7C{) zD9elIjSW=_JF=p5ISoLC|9|Hs-!7jbhGT|zi{Vu?J-JbYXFw%J_LTa579vYZApRk{mZK<^WZMlR!;BFy~Cr!V?bZLwgM{iwbd4>dD>KWW&cl#%ZD+UWp&mj7Fy6? zW?!uK?)ul)(TMu7;`8}(%kRBfn9+WD{xgF>b_%rc+wkl*1d6n45+P(^=w=YW_)!(9Yd^VUJk~+4{V2{mKN4y0x9aZ zU_FD%v|4gwfb+R%C6MfxViZKwHimrCOn)^)TJVd%gVH+hW6{1q)lJZVRYR9NLKh4t zTQAh*(M`Waw=X}~=;XbHV*PzEosOsYFs{0nx0EiaIx`^@Yn_9$Gf*wu58sWwD4zWx zwvjR15C)gW=4X2T3r{2H^-*{5u|KB{*53H$#=DAoU37C%Wf9{W)mdqb_DXSS#0>qG z)Ni_a!b2s6HQW{qSA?ur2wr&aqK{q|H{Fc~*WUcoB$|20KLj3?G7bAb<9)2TY|^ei zv`B{_J)V20V?cSw6bcs<=Xc%F_v+Q7pC`yd2l?xWTA}nuD{1u^?P?HeEn(Bp8~or-b<<9 z?r8qKcZI{=(KuGf_(g+iPv~kqYr@V8@6A*(A}g)+sG+^9!dzWwQ6cZw0Lj&f*0X;7 zMO?`3sq18CpGLhqG^52`D5^^a3c#)g(a;qBB=4bbb3Mp!NLX?HZE+Z4znb4V46s!#c&=EQ|k=|e2{ zKE}1w5G>U;Rb!2%dOiOC*?Y6*NR}l%jMVlwGW`gd{)3+NOZ0g}E)n5gxfBYC zZcdMpGp7rgo|&I}c({A`qH3tdLkQL6cIQX<|3iy*uDtpXSRFzb_ZDa(3^fwdv1sIq zpbr^@Gv_QmYA}b@N7)Qeial>J>Y=8Gv|l0^v@%fr)f>&D-r!4~Qp}ZI-w|FvS9*h{ z4Lwb*w>E7{9s_c|4MqjI(icEMU*2JRi1k@4CO4~zD&fH@*C;qNb7eGeWR!+Z=e#du z^g``TyVSEKZrn(9!=z5BhYe<6EQe%-IWLhbuK{#xQsfE>Xazlk{9O-GeD|e+PsU!5 zRMdjkR81A{gQ*%!AOSeEau%zbn_+*524|x$-fBi20< zs5@*lDY(w-=PsZC3rP2<#{{RuY%sZ+yF`Mn^Q_#(5YXwCNjq0|Rc@Vmb*}7&j_lHO z!}YQdIVIuG$&1cTYt45V9g(;uYK)lKyA)k77Yo#l z{^s84g!ys~o3$Sa)xj@yB|^Q8A-t|;Vy=DK;fZQMIork7UwBBJ3=j8N9%(!+M0ZXl zCtJ;k=3Ez}?75Mu!CB!65ZbjylVrwR#`*G5V2gmkELU~lx`8;&E^SA004>RxrT}A$ z)p%;1+@n69_Hw<9#%e#&(`q@>$~&rY%b*X#+dG?R?6gLgg{zmsPn+;iH5vXG9Vs6^Ku;BH{o4y-L0I0^axZ!|J-F2O7|*so4}A zJ0EgpM+nX&4E0w~oo3Vvo^Z}mVgr~z-j`~gpxTaI5 z77Tc!y!CjKSH?ACV*|W{T)gQyx%*w%Z8;fo_$9#`o`Hn7@#akEt^F; z%A2o~1*E!Mf|S|=vSZ^|@qcI)GZW)CHuR#@ore44y1;HcBlUd!rWmhK2yr%5m=Cgz z^qTO16#?jIPg+EnY~iwMTbIb1Ymj~DFJ?s=tlepJ+=fOw^doMhJR4NMN@`4f4?{H} zR_DeMQfadtPI#*ZE_yWW%%@;=5-nQ`?dPBG@V9bnLKDZf0pgcagLJ$))O5AnP2-^5 z2-}{1W)^7JQ9q}si@v`4R)%^;uU_0)3@*X_=y(!5CGLTUd!ccprf0aY$LVB#Q}o9} zvA8=WR4?Aloip%Oa;^q+J%NxXbQ1|LG>cl0@O>`f>gQC#MaMZ5YrZpjwIa?7zYWBd zgeS=GO|}7zy`frxcqeod#9KfuSEr;R>Fl~nh0|$1w?sp+`a305FVd_=CPq5ZucS_t z%H5`TC&USFXmgNG@TQahT)h4LR-+qm5!b)tZVkNX;)bXRhyVYXy8#B(df{ij*BbcO zIJ%q3x(z>(PT(iwBNzTuN=0!O9oHq9ZRS%dgrCav z2J=M2Ta9qY1sm;L1&4=zO~IDEOtH*7rB)VfUDMa1*-$z)5S@481hUezZo)QmGvhSF zrjZvq(h2)qz}LlGCT!@9rb;7I(gakxIo=w3i%Uu`%13*j%tgbqgjtc|Ec=!8am=rz z+bTlbf{*eDh?z$jL+n2d#5mkYa(r!w3(qw)qH7?QJ;^pcZW|CEU^9CJ#LS6|Ax3(7 zf(5GTDh~cxFU2^|NXXg{)2_I=6wAJ28z1*5h_@5zW5#r>YbfI!sr%E1MUompn)(`3 zWYsWP`FOp0zS8}5;au3~7|88Y4zJ*a9!TdQRVH$8hiS|rFJc<TIp)9n>R$&()Hs?LWfDkVHQXV#gsYiBs7v|>9pIxpgrN~bJbM*^SJjm8pj4-g-n zhv^5RAFhyO?5z1bIHbAZHaoMVugE(g%eEvtbB`9I%R(FZYi6MA+KV&SYiA(Sl}0Y@ z78$5SAy-p=%?y;o1yoo4{40<}Ws;27EpqSln_hl$5TXU(o}YUx%wundTjb&SH_byi z%F&VnNwup`7Dux7KsnGanluG_U||sBYgVCh45cN7scL5+i&9y8;MN#;@+~uv>Pm%p z3WZ>wU5mC^a%r{)ZjF1V-!S*!|BrpD^%Xcs;5|PFSw@Dt4{nW*=ie|NeX78gcqnDn z*R4j|ED~+)gW=YEL8A1nx)Pxrn<4C;e-X0SjI|GLje#fMGy}zGOxTv<)3vWa7LCdF z!L4!c^qc0M9Exd6Ve8tt$3ijg9=J6go`2Ikl%p~2uOJ%J+Go)i-8;cYlS8WHmT4x@$UJGVJSw?yoTPEK*|kR~Qr4 zMKTJ;@e=kg>jnr^A03t~(2UEWDy_?PciDy06ctO~x{7e|7R%{u=C%Y&n>6{M7|>Ay z#)Mq@DtcsH9h=(xm?}OIoEDD4{svqq44Bge85iJ#Yc7a!7WMUPWz^f|zD;Ky)i@yADVuO0 z*nk6tTd8uV)-6pLDv7+>{Q*OKlD$Mt(L5=7tUDqTREc)-gI#z3FEp z6H~FUx7g|LESX-DPbB3*(2d5<usWqb* z|LBO(t7gqhhy}0GT=A#D+S!oSVO_Wft;Jf5Q*^{wQ_Wa+m?g&KI#V)FCfC^`Vm&t4 zT&~6FMTfqVDUrIdW;Pd->kNo(U@gjZ_J{=Q&E;AQZ*)3RK26P7cUg?+_;x~L3($&u zOC!8gWMfa0r8;hFg4d8bzULlI(LjZvdM8Q;&s21IL(8U+V{z$sq{kQ+Wf|Nw7&4Tlt+Y;j?;XwBi6;Fo-c@goSr-_4@kq|7ZguEbno>>)pJqdD;-&JTbyK)SJeiBG zN4eZ5pPi0c!S{=XL0fdl6|9WEHOE=He0cCl@MOFV%JSA)Ygh()!5ez;>*1~F|0`IZ zpSLUk@Pxb#%kq{2;JFt4*TY*e-q01tDpy#yQsHbeU-2U*d|{|1Aj*bRW3L$w-k7_{ z&MSWMLqkqR6*O?x-Jjy%XT9Ye%!@skDT7sic}z}DtZH8uj?KMps)=BkNwO3Fq9SB% zF_Ivb`l#E=Zf#qEk%bb{0Ziy}zo@pS$%rNduTpvmu7yVjhwqxy&Bnkr{zc;|Mh(Ow z9Cce+TqTpCvUswvL0(jsdhHPy{6I#AR1Kxi2*!98!rAs4-L`s=fvEZs&(@HN9=uo+ zlMt&FRd&>s1)=l~`7`Es{R9nyrThb-N~5eRp_&nlQ7xRHj*eHMGctRJeoHXzhz_|} zyQ^mNb(0Q^Dj{v8a^u!SCtTvcb2rDJ-87zP z2r~ZANZSN;L^oW0EVD{XigiNIPxvtEY_S?6`Q~suyPK}&kyaWSs2iWi==$%xAAZ1}$_n$v zl-kwAfa)RhxdNOFb2kyiZwaQNE8NDXFu6?#)ru+egfB4$n%V%}Qri$&SgXh?k-MC} zCt@+AmzVGHk6cKVbghw5(e)IIBVsCb!WqzT3tL8yu1=6K7UxjLd%Slt#QawoUx;fJ z)8Tk>Gu`{x`&B=H*%0IV!rn{mRwH0W1b)NoX{{hSgz8I~2*!fn`jmUbvb2@kYU&%Afaih^Nospbs7gy6Eo(;_>1Z zK);w`v{I7th*TeOLWYVs2z3*nbpY^`HpTgYv98JK>Usl7po6pWB8dKNA0cM`+#)+DhHVz&4 zQ>aK%f5*KZX=Gn-Og8pAqQ|aek?poGE1a81!KLaef@ytwMf5S`XFB#Ky>XQ;T{%nQ zND=&`>7}coPX{x(1|L`ao(Mz+$G2Yc?ui6HPs&deKKf6#oA&`Iz?LZQHoUzi4b_2c15QVXN*dyMJy2Uw#^E%Wd`0Xb!?_1@}H|_!RUoq&N9V!z{Y!;=!uEuTGeK8ct(-KQ_*b2nVYpZ?YO+ubGBT5fbjG z=b(L|NaC(kJ6wD!0{O%5gJyI8{9^xS+Z^1n|DXXE{de`HOs>t_%i=Btr!{CtstIoy zONCE{%-oS1Rw>X}>tW`=EJvsz(M4FV@h<(et9@5==;@OfzFY7vD?`iTBbgN}Ln}Kq zMbKtcQ#mdSRJR(wo=K0lSHW>dduaSIO)3arMXS9 zF8V(g$!HJ+&XCd_{M7KfnUIR^xcUl)rlwXWnn8<2Mo%yu8}*sJ<(3RFqPM5QtpGC- z(G%iR?sleTBW8OUy{38W`xZOF6(xc#c3%A*%aDf`1loq>?iLFv%EsTbtktgU%M(V7 zSD;cSqxfvhSjl_S$sXKEd@@%mmA6DXI5)UdTv+`WE_p8p5t3{BkhB4%@fj>BW|{50 zF`l>nVUq3F6+;CC=d-hvMISXwx4HP-b=SWD(7Ed_E?du59)&WtwDR8dRwJ@w4Nkj` zKd+jH6=kjObyf4O=PXpsV_&mKiBQmE)| zcsQtA&Zp$L84nGRx|+(h=OsnMkt4O(DDuU>r-Lsk>36WKO*>pz~IU3$s3#09px$ugUr&Z4 zr+W9j;iz}5MjV)zw%h53u`h-r6o;6kn9r_LUJmH!!5Suc9*ufmVB>nryJWZ!#Wl7d zIEpf=PZC*7Tod(sk=#J!D3Y8BO!+gD_*R2UuC;qKnl89>Bpd&}81*3J7#r22YULlx zVNi+>rzC^k7m;mwvxRdaA0IH*YdZh3_XcAB1x!?r!2@C@{^7ESfk+VZ`7BWS6?baQ zDn>!X88j)eTCryC19CZr|wtX904#VbmA zKKzfCbf5C1xTF{2-|^dypyQWB&c(pQfn*YEGPT0aj$?E`M5SN1vi&N0M^3!y?YWh$ zfIUrb^hUK4QVt@j7lr6=vilmh=j^~Qd?el_VPzxv8QOH}-Jx#^o^IUknr<%wsqhI?`G;nXFv81*<1tb&h3&g5Kz&>Cyfb*?gGv96e<7js`b6FF^cH zUckgYrn7#D1xyZLHDi9|>uVPk{NyNK+1FULKUz(QY)@d<+;y_*&G%4=xk$=`BzZECdbd_0K@ zK3)@E+^v=a+~<5glaP=kr06at94%5*X(HtfeDf7{z?Uf<`UR#7N<@LzgyFdo3-kjCNw~C{c_bG*=<6WG`|_GigTAn}G-sqRvF#%i(ZotYe1^ zwF0t%ZCk*anmKtBTSlmxjYGl0FIy$z-bhVXoZBsk27PaY?Qn$eNEADMnnPd`J>z~6 z2Zok;Dk{B{AoLUZXeDISUNQabQez6BtrbAbLA(nIFOIDHWJ_t1E)Av%+FBLFH1I~6 z#^SCwi@b;VbaMOW|Nfo>GgAv~trjvO>GKJz_~+?l^u>K0rV84m3Q~Zs=flBmgjd3u ztoIW8z~G^W)w)0fvEIm~#S}!F6vW}t@h6%+Kq1;C0w9{0^Fd5YbVz{d)}Y{4Dwnlo zrbA4LyF^hUHF}8Sod@1vHAg>oZ`PY5w;Dn;O-=;7m)CQZq1~t8xT`HYjAI?mvHo;C zgI>WcN%}duyXZ#Rcp7|C@ljFZw&6`jxL`OR6PSC0;mu7%hjTESmP@?i!U49!*xey^ z!%Ic3xD8~7@v}qxjJti4>jeMnW_Syg>sTKh#=U)FL8_J$Wo$o>jzVqp_eo_G-Nn?z zKBd!phj?%l!inM%LMnhAL=Vl>genztk$twBD6naJLXmtF6DOtQLRr+E+v-X!n<;a7H=mxeA0#Z9MMRLx=zD5JiIM@%9QwcL3yrX}|-Rdas0D{LsR-eXD zHYnDKb4c~O>u`n0FCVc@1Dp9)%Z zh525MDa9#VE&9D0bLVNRF%Pgy@?}wfHKx2G*eSN&7j!s~f@EKHHRb`fcL`hR)Vg$* ze${G03D~co8Z&>t%&){efX&ZwRUgGv`IA;+O4$C(Q;B&1LzBb&43(G?%->QaX3+l7 zIteLdAWH>Mm6+KdwEYM7kpsTI5;M8IPAlabti%k0)CPoK%>jOnN=!+lsdCXat&g^y zGOvnUGpe!wa?w8qLb(nMa=G2KdHj^(ia3LSt5k`p3DqgFNhK!y{}qBhGu8I`)lQN& z^BmQfa9Dn}wE=<-jgG2|*P1|dx7So-Dr$8i`W07WstUtQ%T`Et-nbl7#f!M~E0CBu zLiJa5vg&(1rWK$i=&5&$P6OIu)o^J&CL(^KN~^gZQ`{z4q)X>_e6Po}g7I!>^?N-g z?JPl4^!Mwp#}p--x%)VQiVqsFUEXY`(MR=q%nmvwuzF1TF)=I=>KCfM8D=*%;o{NE)N=hCk0mY>(|s` zDq?ja`@I(P)y|dfp+|iL<5l`BwU|Lu3`jg*EvB?-e6PhsLiXf|Girnxcz#}pee>eo~IsD#GAPfVx`*pQrJgVsWs&)wG#E1Ew@Y!=|6FuTF?|j zCTr?36`?wJHL6s!V|(9pJ!asGsS3|ik10wyvv@@*|61!Y1Gk+6OT5@ z^_YrGtz!PY9`k!WrWIoQUXN)8AXz>prKcw+5lKqrUy*vu@3ojziOMA6do3n*t*qwI z%mDvhi<#l_y%y80H2+?UNj0_J_gc&~wV3e#AHLUPCWUzTzu)UIDRTCr{kBA!$ zc7S2$DuJB3tLW|xC)9~o$e>y`%4cVx-UTiK4xC;=8@rhxD}EO#P;l z{G&b(iGS4BfD3e+K9prC6ODS|W{1*i;ijCsjo^m=|7!`z0|q%gaWlx}^qCGm_A7v# zok*{RoKo^Og1iLWA%mNqwi(=FmP@-MWntDY;p{+~!+okdKs}8{(ZmInGTmIIh^a2^ zj?^2te!$sL^m@QI)+u=co&e4i%Cu0Su;c&i^k2+!X?G;!@A0Sqm3K{;gLan7dd#0h zsU(;)tuigtD*Mj92}G5xLal71eG{L`lsM5SyKjnh+*JYZvThs~n#A(UjM{5*t-Zjn zB(<0-dOz$(mvr4L*(TAX)D>x~6V>u4S3AGGxWFUky@x9rdk5P32aTneyV9nwU|7;^ zWw8`Tj8?{yjTnrvgrQh%$e?<1jB_&jT+_NBQtl{^1@R;oQ>%6*gO+U6Elqzpe0$;1 z3}(EE5$JTgar{d>811aLSS;`6D;og!bY6EQM1ws0GALy$WPXS~tPAR+XJ1B1bJlgL zRlj$!n$1REym%^*3BQZ~1^Qj|hE7-1pyjqeJCD$B5Dl?B$W6n3g`nlOC@VYeEy+^3 z=-oI{60}^HsLhxATo*9bAq;u zjEpurA32ZK5p-d>=-+`Ux_OBMPuqp(%@@=u4*QgIQiIk?fh^1Pkgeo^nQ0c@@=MQ^7y zA&UI~>BP8QZ&hOaM|}<3s#21bfNiz|7|M?TmhD#wuviL+Q=n%%K89NWIirm7q3u5g z+Gdz^3kU)+`r|hxsoe}(zq5~YSqED9|CrEKUT#@81|0P~k<^}*k=iv)&irntl?K+R z0X#QW{if83VLMIEDq2~7ljgKqqti63w@?aO71uM`d^gqvrnrhx9Q7ev(gdQomKW7l zmx(F{!<=9c#>MH;Z#^1apxftDD`NBtmT|7^7-(A-kGYtVW{7)ci*AC4NXhH#B8VWnc#z%K)sJJRxUA8JPn>wJ_(!hNH{_l10F!~& zG|o47uTP(J}SZL+S@RX8Zzt)GX9V*IMr zl|th6uR?a{gSk|R!+;j+G0acE$Mhj0D@kF0ed{q417oeObf8o}E7|D=3Q;a-I8?kB zK8Zr52k0ef>eI#7xfE&YjkF<3$0haij~$m_9Gjp|F<}PdR&+aaV7@iQN)4X%<4)2c z$f<5!eWeT)qXDh1bR1JZL)mc*rsAb)&(f_=$woL8LJxvJWtZ?C_POWtWfnS^Z@c;jG(DFN}vrN;pxB^t4#0<)mZj}(v z1Y?@iDv6U5RGa%Q)p(2 zUS7_)zgq>8mcfztldi0oF&)U@#P_arw&;&?9L(qpYe5+)IY$KDw51CP>PKLIo6^NRk z4sHw8!7e7cI+_-H%c#cjk?Z>+rP}rz-L~6MRsEQXtn8Z6H!)R^P^%YR7N5$x z>I?f8&|T9`Rmv4J(9NhO=$7%%SX)(i0VM5u>yrJlmJ}wU`ySg_wc=Tr-{yk*w()wk zNFuiz_O1N_|Nrk(6$o%J({=&&RfL4dJqGoCA=JC=#(_H)fqqM&mK`PnzJ|d{G-}1P&5W-rOMGYX zaQ1B=s|DA=^}Z0-T^xq9jSau0Vk>%Q0eu<6H>Oo5#D0rGoQN$F9`F$YwEjEqhad2# z>ie6O-Eh4qlvxb&XnORhEWbfzjcLi1-7@+hhAi$|%hl3Gio@Tg~&l@?`w;E}bZYr)i>|sfvZUSy{e84UY(wt1nVC9~n0+z8@eNmnK zZFgCP#+$37Bkv=Is}B*Ei*quE5zyC1yK~TK9dvy<>D%~(uG3}SHQwWvQn1Gn(y!B1Rd$`< zt*+^a$26hi1^#JDp7uwgnz8Xiihlw>c;B4vkL-%h6*<*H1Hw@J!4sm zzP`eiEo;10c?Ne|?QVz86*gvYo1X?;4#$xTTaPZ+^#mXCPa6P8jU_ z99sOCU@JQK>Wdh*DXFsH>axYhiYznW6}ZC*b*IxC@OBZVx-Izs|6p$ErpsZG4Eur% z`>70z-hG>*?+oXJP+6F_A;T@I1G01N507?LX9-b+D`*9rtQ_{2!~5uXvUf3E&HH4S z$Cmuz@kJ4=vA}0~fnKy+2KcAx((B##h9k;&#d8dG?QY%iQ;aKIQ|^5;U=R~QgAVw_|lbE=uSAQy53CJYiEl=9aHK4bsY#%J7 zh$hL4_5z6J$y7OeiM-qv=9{Y*nSKVBGLb3o{AG6=JeGvT8|fD_E;CF3F(}d|)I|1q zc;B)dgrV2QIad?TcWMWyw@!?btXqxVLEo5*W#?6UU*?^*@HU&0eycYn)6P3m7+OEj%nO%#>pM|0&ORV0TcDT40VZ2T^tDc z@ZOApsB zpEUbPuw6KXqw7LA!=@96PCbN<=vjxNXRWBz2PZSDv~*J2`YlSQa9~{sXWNbIw{fbc zrBn1^LwWW&QK=11Ui+3U_P4OlZohap^Xb@|L=+w3Dm15_d1vjy*M#@5FduqzQ>Xfc zVW$uSJokk>P4zq8P{S?yw;_EiQw9dX`aowMm(7U(eIpuKFeQVO`lnDa=MjP$3)5ou$=%Ggn8U`wK1ZE?O)(dp$&frd zu3r*r^&!r(W0-c?F50PX;b;dX(B2o(-p|k$eZNqwtO^@3wffLzWeiNKY!~fRr*O2x z5@>g%&9jlFD|SSeFBI#Y!bVK20@$sCPKOd-Hgio{EIC|(?Pzar5RH~SEY?cqN^bj= z!ENCgDT0-9Ya4O`m08l2T|W9KrZ!S)<*}vHjF3#u6x+*aJfjfXY966XbFxsOwk(9ma7He)%SCYz0|**!bc(0w^QjMDcvi5ew}WGgW~18i-#Cik9lsG} zQ;bFwKvx)q=waf$jb8kVmPpafQ?JetRQJ^_jV(%yv{5vranbJ~ZQ=&aIh1G%>)n5c zuV?uZ1*jIL9^wSZ0yR1O>56`y`Ur+6(WoCzwp*ES;?xq=+@f%zI&1?V3y&#n7?ZP| zuIRtDT6lQ|<8y$>;=Lw_)tY}6NFp&K*H~4DC_@t1OhM8nX@;oZPFCY9>Ib^mdG&X! zgOfOO4|f|;cQ-iy4&ka>=LAMP%Tcdk5X!>$UC}jcwZ!m!gs=lhm0cUsVV%j3vKwEk zO@|s*b1Z`lAQH8U_jgy#=IbUUJ~Az{v&{D2`0q(WQk!xd&0j7qaak_AgBG$9vqu^{ zS9>`+&38qAP<%3+*N zCQ%<9Lh%yDYH^nooqI05{&3!34cW!+A!+OjAOebmzTuMEIvS+i^U|LtpC{7?r;{mk zuB97PR+>$xogSxlMGv^u21}WgQA*BV!u|h8&_JY$F!aHB)KxS=g~2It#dvEM5cw(> zi6bg;Mizs&=e-|IuY04D;e^gE4Z@%F9v2_1Mp9{prr>!NbeTaKo;jUnx9 z2FVl|(Ik~nNxw!~cYd>t9(X_QERpzwg)p9BR&D2Ce?K_r96)EL2L5|AntkXIw==6= zZKBQ*Ww_7s&|+g0W?<C^0K-K`z{Fx9GZBEHG&u**(KvpCK0AH_$qk#t-kF2t72;nsm1g(7AqltDk z?dE~sX?6nJaNh~szY(IM(I=h3ICs|pYrD-fV!XByDVYzECxM;nTIJGi1K=^)EV<}@ z_ z3M=U<9((Zd_m`Ku=VxfZn*0}z7aqKuIO*M6&1m(Yi_du6n+$&IU41&*y}0<`^;XL} zB*G8-y(KghexFCTWI+7ZJM8yYqGhgm5meUz6I+}>FAS4%P$q(C?8OV@(i{fKhV!tmnm9WTv=q)^> z5q$Dm_FWwp47%(6PsiSUAm88zE-;^>Xpl6RRpN?9*E2MqpGP9=RpQC8D z+Z!S86DVPTTGSgL&)i!r=!$tnvkB1P9tPtAlgQcV0W{c;b0OE5?vi3oq$zh>IFGLBk+Gt})tUC7_;NYraXFqr^&wK)8_gj#Umz{L!H?ek zd<Ke*Xqu0ub-kV%VLUI$OI8FC0TJldeO4qu)oAz-A7Z9 zQ`nLkS18*zxVrVH$vm2=JU~i*Cdi^CsrsWMWttmW+107%>Qd|iOJ(#LSGt~P`cn3* zxH^Ujg+UTVm!-vi&fuo6wF&#s1=iIcd%q$N7mB5Kf9plR_Mw`fQ(o${;)RMlg-3rA z%B|7t&|YRdI5;>saLFYP-+c@J|3CP2`tj{Y`=+qjq=Bl|J7hO~Jp7B3)5AC3%lMVB z>E1@rj#KY$czfqOKWql=Fwt@1k+E9O%tUg)EUQ?$J|;+n2R`C%mECclm#Lpe<0%Z1 zcrC}fT&VW8~% zMZqfv6UAdN>-Gw`Zmz@V@W#gVWQyZh?+IW9Qn@1RcOk%?M!VVYedn~>{gc8KI}R6H z2)+<3v+u6}?8XAyro<*2*f+b>f#-a>nhbW~PtH8@IYptRCY~zRzz(BwC3n6oJZOY+ z(3CTo#ZNl3MIP6!K7{Fkm`(*GHy2TUqIbALGM0A!Mf@lT#-J;^#}e_MRA2#A;tjS( zGwpJP_vkL_+r?Go&u?{6u(4;l8!Mm4V%u8D!wnMYsjV+YM12C4aaGf)hpA+ISjV&) zbJ&I3XX$w~ih2t@s59m1s&KJ@FX*TMWjNROmZzHg@+qJTNm*gh=U!bZ{H?tCx7%#< zkA(&PZl&YpT=l6Amva|++yZA4At>&iqdtkTGBuz5HSuC8n?^mX8fP{;kqjuK)LzE# z<`EpAS+5W08lLKnY?ckY*N{f0qjULlQ)rhp6;+Ep%2E(xW$N9T3M3NsAjb?Z13A(x zz=xZ&8{t-XCWN_xtuScfe;fd_KWGyH{{MgI%U(Iv8!|Mr`zyc-pL}DpE2M7rwm_zV z5MOS^)KHZ()kJYr+_pPxv}sC0CX74rFG?asXIQ;F!%*E;RwN&X9V=)`v1@M=J2LKb z^(;QQ#jvAa2s?S0I7*QO`BQ}I!H(q#r`Y+;ZGsn;0M9wr1qumvqAwa!HI^iIa#p64 z*7BG*TASB>pRXoqSooIeY?C5>t`U=v*@ZofJr11VyJ=;!c-qnXhhBfNhv)o^K3#}D zQw73DyY15a;g%SeE2*EzTFusYd81I>Xjo&e8Tbd)+s(KjH3S0D?^Pf&9^xq#q<>=< z4RfDet$TI;5#uv&lY!{l;@een*s%xV@v!ySN4qaq_g~TCA2ES7WE)bJ~6y%KG$rn~&`o>#r;IC!6I!w<=Lm$Z9vvRG!%hRH@ z=sS(Fz*@Cmhz_uNdxjs8sDRxg77W`ik_9uI;4lqxfUo6?W({zKp$%)<9A{66m(HSa z>7Yc66m6#II#6{AT`@fkt-u7{d2dXE(mq#IOu3>t9~ABr6Y5$* zC}#*(*(>6k4fWve7w7SJ;St7F*`^_Sj|wNY2;z6GgHZt$y4j4Psezc&izJeTH=?+O zxDYnm_2W}CWSoHdNlZKm@fEHC{bo1`QdzpAkxDDe_*s4@Awo8vTyBbwviNFmC^!*} z<|{_ljRVCtlKt#74kS-^RxDyNBD`Qd^1|W`AE#vCd6!3LN%qk;1t!jC+S5+~u{u1+~gFc9ge z>E+#WIa^R30N?O7T<0m_;?piRJShjkmVjRjL&wmmJ^jwg!< zqbkTUPS)Koqaps4>yteP`{Y5+sN{Y|_67Xl?DApiq0&SpqOB%ze(X~%JQ$rBCxuC;pE#4rhh|E>&a?{D)bWKm<%{1lv)o_pK zV}CPNS+PC4)ioCHUZEJ+P=Ii5Y_fZ8#17`pYWS%-ME_A!j`iL0 zPet19?P@-qMSHKKIqKzbakheX+&_`O7Ru3t4nC8CY~NqOSlBqG5c0W^Z!a$5i3(r5 z(eMUmOE~k}CiZbCFfO7#!6WuA;zz_x_|PhzS#lALZZMb?ZTQE!JCex>imR79D}MVc zynpKN2~x}XbVMPd*C**{Z}2zAE<}bZ<^Kw2h>o|w-_@YXod))0#?@}_tAK-XwVMK) z%mQ%}kKOdwi_!EUo?T@_;1&~HpuH+G=M&J=6YIW@xwRE)Ml=umTXmG)JuH^L$r$7@Ce1pOm(I> zG1v(jbUdWI7mjNqXS`Fn!xT${PWvbHC=bs{wP=rQlw8x@Z}Y)Vh$O0wON?NJ;@3bi8a3Nb~zBg0Y+~rMwomkE@MPyt2=;8 zWeLLn|BuLs5ECjC6iobMQWbcy@git-SWX4;;-Y^S4OS>_@r(ggd;y3Cbgp7S-=ZRc zR;~6`mw#MYQpZ?ZghjyEblj~(j}pK`jBC>9uRJPT!NvGxJg@@KHdg%s=NXC@bz}%% zQ<6=E2Ox3e_iEC2!a-L>d&5q0re^Z5ymKmB0xtKmXNc?*V?zo##=eA7ExhZ}UTGz9 z67SUc(z-UF;wr1aK7)9?uUr)dgc3}ikAw24^MLSsUJiEHL0PECj`sOnvA<2W= zQMxHCt(uaM+6OGB0(G#;3P&*IW_XK(gn@U1TG-v;1l4>GYubWP@eMWaU>Tu>yHp%W z!c*VjDaVs!kU`AJ@r~8+0=i#YH%7yYU3Xmb&Mqx9wSL4j7WL6gnJF^$EEKkX9FhSr zLpirkzMuX=%CY+i+X-5R|L_;{Ug`2r2IZylbPVf`H?2X=aq$^&KnKA|`e`BWSVGmKrHW^zF$ZMj&jOT*xjYv0Gx zXI$Zi^{R|f%a;o=P7<`GgJk;)N(c!2|NmIEv3pd$FXfKeZUgPE5ESYH@zgu)VgGcs zF^x}~o$4}y7}uL49D<;ABYru%LZTGvG^vRa zg}%19{Ns)G6jLGYr)Uy?8|e)J*fj--pN8uBB#7SI!{bY;BjIVtMe}p2{v;*HJtCx6p}u~s;X`an|=)pVikFf zj?zcP%w3JC=XI{y-9?9W^$ytDIgdZVnX$-C_3@A0%K)35$iHhQPPC2 ztL<^(N~=u}OgT~5fm6-#rFY0Uft5zSNn0!{>b8IaV?#`(0vk4tv$S}8^1})}uh9RA z5`a~O4VQV^sF=Lxo&($!`E`KF!fd^P8Ecoe7%WlW!vL+aM?3;bcC_-x>G*mW6@V#v zd%0l#Y5QP`DK9OtV6`-ukLlyw;=?50z~%5}l)OP5D=W86&qZ`FBQE4B*&8$+bQkt| zA+-*u-sxM7J<{Do->J@WyVHpZXc`x~KG1p8pTeYblR?~s6ipAWYmjo&P~vAI&tr^! zD-8jJZ4RlZ_@Rfd*S$V;L$YD$1hElN`R?j z(PHo8=U^|JXAm>-9*-(ooxa~~2ENm8A^TA|M`ENv%C}DLs}tXlm+k`$vg!w`{?en4 z!R6Oat{FNj0q4ixg?L)FPwnU*2*!@+>Z{jh3W@Hj6U3my{QX$Y(^mD{5!rWf=X)-z z_l52|ihXTt^$!YL(SKK8#jvHj>cy6sS24DUjN%I(r{T}EupbkhWbNMG%GSMIsVHf>b`C5X1PoNyLC);sNJC zEYp=9CkS+%D?b!^wrGb5=L0m(?(tUD$J_C8@5rQFzt%$565mOGQ)*QV*r=~! z8&!N`1$ZCrnXu*rIuj<2>&Lo{c44ku>7+%D?@K<(VSi6&3?5JRPW(N(F-H0LsxTT5 zg!_$-dRV4Ochrv{qfizDE!0E+{{KHwu9T6pl#r_vXy&s^K$G#lRiNP`m_Qdg2SIqy z2sqIAF#%ePj7TnaLaI)XsaLCgh$W#+Hqcg44sDc)ey-hsc@T{jM;SjRD2t&C`Z}gF z5?Zyw%n~Xz%<;Kwq1KSkXG>^}W8jl$jpJgi0g&lYrq0M976S-AzKlbx=+p`@%Sn>} zUau`S1UT5U04~-RP|6J8P9no%5W$y{x&lR~R)ASLy9DrhMX@2kp$%}MqVOAS7hwDp z1KbtE3%-=ktm)JWFbgkefH7I@msK?B<7^0@A!uPF4Sb*u0_;3nblV)Of=0zB`r%!n zexR`pP5m@OMbNJa!eWqtChssEkN5@&{{I4jf? zVXLVMEHX8LU$p1Z75zIO-@}mARBBZaYuq~x>l)>-Ijq5+1#6*h2>rl?mFxp@=(?gq z=SywjG?iLmUE|DYSl6h7&0!5~Sc|nm=%7k9P6|}fc@qyv+eD*IOsQDkcHNNlPDMG7 z3`M~I|EJO+cYhD`ok+y#79tT{(RHJ*WBTAZ!Vm#--9(tzsD`Q$9|f@$gE+k^)Cx)9 zz%m%rkBM0(x^DDk0>nC=QL7{~=S_rojhfg9Vk-b~dR3?)lAwVDaTb8+iq2agI&X0> zqgIHS`xZm|BoPQD#lGpfofZcl;6=EuTjp5oi>_NBxo(7}(O$2wnim2oqD{!sA z!|8FMifD4b7(d18VPEvx0?BLBbZP~cxojf1>y<-waIK)j>2aZQXg0cBa=Qt*qPG@E z-kPRUE4a*6i@{B!4)}^2mRLmx8P#GAN@#u4NjoL4I5+4^KAIG4XznM_iauJf&PO9! zwSvox-Wc4i`e-q-h97ZS?4J28$Ka(94H>-qqH`8V#}$f3op^@p4Bo9eX9`ctFFQRe zRIj@(o;$nA$;7_sm(jN{+e=ZY714FJ?N{3nvsixwnubYnXg4LG`i^?owe~}qC`dai+Z#&`J}su zRIQLQ!!;`~6d=XMRDQo#kY?l(Na;u?7gE33*mpO4`Yl0J^tR+ChMH0ZKv}<=B&#ba z11U;|=e-PdEQMImvEry(^*!KZKmB{ZrZ)FgQznre*ZVWFI+Z8<1ho54!k zXt|6!i-3_x=9U?x*O5{&u5*jOs1>lz8e;Wd=$;l=B^-#Zo>)neKDSc3>ZAD{u-LoF z_oUc5uMaCUe|a@!9@)j(%4zp`czkmF5zyzaEmf6EkIh7Z%n;gC4`dHejLFAjD(I}o z15RfLcC0g2dw0XZAevAMR(uyFq@_2P{W3y^H${8kc~JR<7&o z)yS!~a8x8+NcpFc16OGS$i^cM8 zzOt`^jbhO{o}hYxx0QGEj?bv2ng@zQRSIQ1mNh=tmo8Sb+31V?Y?l2ic61L~E^g=1 zEP{9qJOJIWNd~QQ-~=rfo}?G%qIcr}8Bik^3#7OJ%=qendW2ZlydF*apV{_CO)RX- z1X9#t!MX;uXpLk@fb+R%9*}I8Vh}`BHimrClS-C%Jz9J7ZbGs0emkE}=lC$Lx67MJ zS9DaB5Q??V+w*f!&D{(?O}!|7dbS&uH;jzi4PkJ3Y<{Nazw&gIp*KXO!NYJ#9jm?R z&5d^*^?T^wq6#6VH>#J?6b+T)Vu%GgEUDjgy@ZF_3F~%SFkBI`ULknpeTp8u9>&{E zM+0y9Wfm>GkG~7N-aPWg!(Z_}*0XHVu0FI#haf#&dZ=7LLB|{l7ZjIwy~&U2)uUf$ z$U6u5K}0Q27ao*INN|W^-?t06`6g`IKc+gTk(I)6B z6pLW{m1i`Y0yogDYipJiw zug<2(^EB{h+l);ct4!DAQ&BL!Lw650@6TN!zU#o`3cXM6s!2OnV0}nztO5GH$pouq zIqyvtG(dseF^5#HsQPqrV?H=nDt(CM;X_xwRFhlKh5!Gb znY44|)rY|9_`$fhK+|BTk%W#(BUc1{$RIp9XYo->IjlZPXn<1ed5cjGRXn8q62YLA zfqJjrXdd+jU-FbWnlzpBzL3!iwKwfjmzKCuBP~f%r_{9uGcT4yGQymf$d%Us zx-}_l1qHNzoMEcDz)N3{K{0rzRV{S6!wr^`Eli7J7AgXVZo10);Po zjP+}e^dqY|*Xq?B`sUv0M7d;{*OA9oO&6J)gGgV);?zW#*KqM z3~%pjqOl_zT^6nAx;qEiI$ga#UeRD}7MH*_$5~5gGS1>7YUL<9Qlznb@z4u=%@#Nc zf^l34^b%&Ce8bFy6(TTGO24a{nLPIn`V;|HQf^z|BzYw&(}GRR{}b?#~b@0hn9a&p%AB3eHcM>^`$kO#St({pk? z5&-3n!=axN$l)kRkW2nuOsQVTS-#hL$SDr99mvC6$muynkmpG`d@l)d$!>cFDGv{L zCV*~p{v>c_HtRft;=xDwah;B z7qem|*68r8)=neorQtW_$O3&26aF^tt39uk3ZCuI;9E6)(WB94K1H&V0NPq;KmUA( zzm;1PnmBe25Wk!nq~q1GEVPco1N4+aS+{;_7B||_f54ki@{`{b{r*s{?>0!*xp9Y7 z7A=E+bUX>368t~}ztB!nNp~*t*a|h|qIa%7lF52Xs9wC8bC(D^@K(aEMs_`cq$hL} zF)uWag09~PJ6y{3@2QlFj&vwih8q-X1)Ud&8=xy8Pr%`uEsdhtP`yCH6S@iLR11@9 zlcrMX?7m98>Byg(q@h?Lo)W4TX*xf#Mghf0Cwi7Nic-DXl<QfT7hlSsMJC0xYmP(2svu+co=B2K^JPOVo&S2q-k%2R6fiZ}C; zB)GRK+XmdGU{h8?F5Ia+iW*$@MAuZ9H}wjs7im^yo-A_jl2kXO8whM|pG=7Jt&*g( z0BAqta*a}HvTU?miw5vQdfe&0c+Un;NZrRfm z%g{4=74Uw1$zPlKnsFjx)5shh>6Csh8H~X^JY{9Pf_3#U&*mLOM@#LS6| zAw~jwf(451Dh>l$FU2_8NXXg{)5f^D6w97t8z1*rDc(Z3kJ;1l$sgsUBe{S2ut*Xm zNLgP;USAEEl@HsiXD{7f7tV_PgBt0XX$W$?%B8NU;oe57iW{QUl#L6r7%gS_3ZBq` zbSgq*DyW_JM|*kb<~w z-pF3^fz-gNX5O^PRk!1AluGHL^6GquvQxs7b7q}6yLPT)N-MTwqw^v@;WX7WV#}`~ zb)&HZxm(nld5-0?GW|ew#TAllsnvWa9MUXto1Iw-Smd3MWm}S+x#x?~WucAyH8W85 z?!`ImwKI_EN+Yv&iwsnvkgF-bW(Laff|jIEYiA$}%q01*Tjbv9H@*DiAVf>bE2y1& zEX-qXhg;;~`8Ul&Im*$J0!g*=kj0U#Jy4GIizZFM9#|N}_?lIy97AbIVXE30$f8u% z9=J6Io_xy;q{>qvp3;(nV0AOFP3F3Fn4j%|TjSp8*ULTl|Nm??M$&&?b(c@ozyb#e zyl3|#+AJNz-3PbE$Mdh3k0p30hg}H1=jS1dL|gk{xHVspD1EE0L@38*+EQ4$b~Vak zGuA%1H3pu1(+m`&F(HkgdHxm1qA}S%xHaybe$(8OLosbBY+d{EW1$##58N6L&%bFN z%F&qiR}hV9^R$h)_+lHKIf)c4`OXOryAG>zQYpV$rq>T*Lv{p+Z4%We)gz)j3cY zjHGPgj01@CX%2{CB=z--1KpZAzyk3_9FVv34LAV*|DW##8*rh}6{a$fj0>=m6c^C> zU5F&K#fW;VRxWfX9%ZkC#E8lUaon(33AB5b(>g}~pEv!CWOB}2*vaYicNU@*&Y9^( zW9QlaIde;l4=F_1+QMhlxxsXJgfC%hHVkBIY|Tg}Y%QFE@intm3>hgzpP#KP;*h4` zCj8CT*kkyc7z@r;MGp~{@qOX$L#@P+axKP9I`o}PiPViXv%8pFXFzNN zYf-MVM7%1%hDB&Zzt3^9?hV)G(ky4Huf}GDw4GZC=IF9BscU= zE$xTuohaQlQ_6x=r9?7bCBt6fGBL4vW{!&PzrygV;b^DJvQbnY?3-RcGMj>rrneq#tlLnC&As#y z7@rWg9Y2}gqNq&GR(Ln+-IBn>JfAG+!Rac-(WQO~bSS^-jaCuPvAvgQm)HDrT$Zh1 z`mVJB%D+tPFEKu#Kw&J3pHb_2;|(5C!$5Vx+nx3LpQ*RDYUWL4cgp z_Dw%xvF8}S>Vao?-q}1#&WSQE%{I0bXmAc!d|kQuL#;M&H(+T7sjct`_)9?V*bD{G z7wW`yCNa$;lAxE;1L`&%SYReq8m?X<$=ilr!Z>@1`;zJ_rP21@F#&W9kJ{A zGw7ubZ~mD==W^$<20@~Yf~wrHR>gL?BYW)x%2%;#&}d&fsCnXh?`XbIH0giwu6lFK z_rR!+N3I*)9uyL$yorBk-B_yyP_bS7$%0~fe9e9G+39#0e7|Ulx5Y?7 zSDct!b7ZqiLxvsR22aM@pe%2#wf1%MR*Xz2SlQaGowqFHcJg$*4a@SDj-68L`|IYd z7zyc$bEK>BmX!i0GbKM_su>1(0-|gxH};z0;Em~f?7ZTRGYxhbRnWlM^a470I_oX( zV7~9cP#LWH%VP>F#H#jn;hf;>rkaA5`AR$SFDfS876TDt@shf&f6<=W`;1_WXCa(zzp>9dz~V<*ZPbXgEqd=_kxxRaR#2G>lSO^Gze1qW=n5GhRzljyO~emQ^$C> z#cGUnx5M%5Zn~ON&~A-j%WaHhb&-%YsK$67y)D99HK{wKr)5~fX3-#vPPJIil8~tt zU)T+{Wv>F^G$>KGa*@&X-+4d$fIpR$=8Gvc;E4gfI4w+7!2J5qqX%Sw?$B@eMWZS@ z!(xR=OsZB;nJaub9IGjkw^Mw9EUi_9mB?LA-xIMI)62{E_(!f*P~x>lNJZaMtoMki z)Cp(MWiHCm)d`X`4tBVv3{(wqx+`=H@k z5!8xH3$N%6s;^{vH>OiB+|1rRIx^snxBmjTt5_8_+|0Zf_Y2|fG$EIcb%Ea!z(p4= z=t_sx38i`wXO{3Ag*fIpYAx(N9q8#ZIPQZ&+;`kamPUacYnGSP}J0UxQq#M0HCWTDL-lR9C^mwkR$=cwX-cmo4 z{*d^{M~cuVO(#~;%RWUvbM*%PZftq@mj+Sv;?y@VjZxYx-W1^X;4SIU`B6goj_9ZZ z)YRTu(nO!!mHcj{B5fIvP($l;1FX`U_*UbXz)hsa>Br*Ed%!?)iUJxJy0uF`_ZAph zE?fw=#Cqn*@E+GiBZ>|h^xOib)1h;LTfFpoM9Bf_f!@nS^w7JFC`IDF2mk-SLE^;Q z2^EmL6-@7Yi|J@MAwC%ocMF%^45Nht)wl-Ri~SvEWC$AFs^k4@HHGUpgBKVL)`x{mpwT5B7m-IepxM(UcOyI9oHNIt5__Y2W*9N~Ln>E|ss_ zloF#-wVP6^X5UHL__iWb-KUF86>VJ-c;A>Q^|X}5PJK70UhSNGWs#}z z`+ElU(}|+JcjE7<$|_tO$4G~TMG8&zSnDW3oyY8pfh_f*EFwrW$_4_r12@ZpP zC%m#U>C$nY)y_L6QSrD@)Et_Wed4I*59Z?d_TmCiXIf%M|DZL67&~dxS1?UMx7DgC zx^&bdVM!-aRnBg6z*K3Cy2>9Q#hQ0fcsgbEe$1eyouuU1)D4{!8%I9w;nd;V3vZ0F z4EriKn(_`Ol9bzK5OR;Bcq2>q2+H~xgOYm+B{Z^h4{XIomhO42ZZ!EP=hNI1+cQkr zT;9!B_Sd<`wtBQN>*nbm-s;hs>@s$6tF~b8Vuf*DUp%Ucv7b&O>a8Qj3#9Y(hR*3- z&~lMWn_L3whD|bPm4hdso*dS*lSK22-i`B`LCb~dGE#cNU~bTIF?v0k_CK@3O{$2u z9xITd(rxP+^i*u1XXa!%pE`K~0aX*5*TVn*?{<=8Gsd8x?V=+iPIW>i)t&Q5WylEx zU1%=)cgPyo`E(9zsHVfB`sNEVz>oo;HK>Uu$`q2L{e3Zr*d}epbgHrR=uu@3_{j(h z{U&7!q^Gg*9#h)pMTZJkwZ5NIP7H>u_Lj&VS(9pnvXIX|iy6te<6qui1K8X>in4FhmEeliK=lbZbqO0GTbPQO;$WEoD3v)lXsh%% zjjR}Q^qZ2*rWC6n`&cin)n&=^FMN-B{G)8(x85Mlh{b>Pu189Zaa)%5^^#tiUQ*gT zz+hYT#YdzLcwyo`->A@U7JabYB4jndkl@Oo}a%W#?Ug@i4u6 zn;g{D7BCT#b)7P?I1&AMm?($6x`6L1U?Pily=Zv=H!di6LO!Ms5m`w|bzk9n6eDRZ zsyzA%Sjj>=FWTP42zz48%qLN(^Z>miO?|p3G(?_fDT<-FmRRCb|AxrQdtP)TeY#pi zb8itXm)e`z+Sd3J=xR=?5;Qe{Rv`abqBP%}swl zXtrqnfpYE+#DIj~l)Rq* z1MaaHj-V4c4e6Rlge0pev9geEKG)1@94<(BsrC2Y( z%=gs*Z%Zv`fSEqHEz}3Qes~au9ANw!7yyfYsUJ$MCsK;F0?dm+vwkPs16|*RO+0%? z6SmmE-zy!1NtgL zZ;w3&b8#aezu6#YESTxH6lU3H6NfRywCa@LfUAeZV@t9a1v!?CGx-1igX;cYB+Cii zM3QHKD%UdWI7%40Rci;)cT-=)v;)zo6<3-7l_$Ql>4WO+P!io-WVP@*xZW4z+C6ZQ zrC#tFThV6=#JN`JAYU`OKA-iPNUd%@C!o5%rCpK0T1Up$iz0C?=xrBJt`eV*pgxI- z?G~EbRaLyf`c9ZzN!K$>26ZS8I1^1!oB}x5lNOmD7^j=YaZKpf6SQJgr0RxDl* zeJ{p5d-255+-|Va)eCDxB2E(we9^~l zi-SAT2bSeGqVoG;({I9>*f=WR<{@O&uXL(1oA}};AF#p#CtCBx9{nGEG#qp9lG>N% z8g_oWfqrE4sBAsc?xQRaU-Ycix3FcD5Gsr6HUjf)J~Tt2dYgC3u_3GziehBC^0M&U zqZ|4hTKt$`EBe*yix{>ksj}d9_76Jyey52elt+jxGoKZ>!wIUv)*hcfLU2*MMU<6E zp2+X8NPa`rEZ3IbFbT{1qJP~MW19(~vJh`Wep|dM+l7(h^SBiZ*pOwyj2bi_{>y znZp17ALrxV@@E(hKVg0eTDAUAQD(^8TejZP*kJEE;3T_GPs@5 zddjt^PW;`IVD}{4a2*)88xrm=1iC83b8P*ZCa(tpZs6{(0*>)5ePUe;A>3yN{@FTG zg?glGZl>i_nZ!IkJn6Qu!|`>qNpNPm3&WGtFUk}S#CU@G5(cQcuL78?>^?&SFI1pa zLLN&{w_`HkF4|^Rk8lcj!kFMC^|yXubTd6KwqSKnpaaoaSKq~;O)1s}ui&WDri%e? zTZLCRel7uTne*pB^o>K&H{Qzmb0z8BXQ@?Mdc*C)D;z$Tfw#NwJK=fcPauoZI9v)u zA33D&5~LUR62;o2mx^5klTj&$w=k`5zj!xuYQ`U}ImKI_7PzxkQE0+@_1gg$d!zxpaexUY#aseVHEGO zhp)O}&g7;A4};snL(*oW#kKhkeof((ok{v8W;3S5szB>@2&e|FY%^No{3O5@hE|ZA z)fJGXpHpaMXHra8%*a*1mW2R~0iuXKO%~43Xe#CrW;tX^J66~xnT;l7<#r8OE;fw- zhNAn}p*Dd`R;&0mTfwo#$8T>kC943s!q5>$S~;Pk_!s4>grbM2UY#MR?yFlGTa<8W zdx@qrF8V!6JwQ7NCE9{2_1|Inv0Rh_R133baeNB0hCLkH!lCH;sgGcI5{>%dWJZAr zCyxA4e~d2^fNX98WZ@aV4P$aR8j6lwt0k7*Jp+g=#&3dHtpi|zBoZ@ny@fcj(UQjU zCtKOwIRX852rAw>N0{Pa=#bWpK`1->3Pm5WC64z_-l@XcU{Pw5A7wYb79TckkdYS! zvPSb}doQio;O0q~O*wWBmy63Hb_X}j zq-vBH*G2NV@p`Z+k<^|_c2R`0nkkl{TYg3T)fh$=grfV~5=U?Yl7IM@e*^yizw+02 z{@UO8fAGJ)|BrycKmC8hf8*a;{n@|z!;63X*Z-YA`#1mHKl|tZ=fkJfVsYK0esVv0 zKMyB3%U|BD=6iqq;Qa&d?eG5Ry&Wy5Gw<-d_ww*{5H_35*1?~{bqE?^1I;1-wg0Qx zZ+85H-gPiIh=LEl4}wXL(uRKd4QzF)eH$Z(E?-n+|Gt!vvY6&-*JibKdk8SZ08kj4-Z=VEo*e) zd))ufqjrSZnWC}=oJ0ktGH&&aRR+)IZn=ehGp?e^YT=!d2FdgTdHm&4kgndJ|LEa= z1>SV-UA;XA8DqzE&(e*D8CSWRuY8r8h;%ev%`jy1*4y*mkEYkX(aCT^88HT7H!uD)`1}l625!zu8=8>Nd#LGyut$8 z`=HSc|Iys1a(x3p^JhX(j1frj!0g640A!&+0Qh<}91T3$jJAZ~H4y}@TscIe0-V_d zp^sCRc4&ji{ziz3Q38AqThY$lb->zgGmRLpZG;f#!`{flAl~aW#fckeN4g~!UBhg# zp|$@&xQbx|^+60-^X58WZSjKTBTT`%9*%}fUFoz9o!PfCN3gqUqL^iTr3>PAKK}ml za`*fUy>yfR!olZ5TD=pSa%gom9``1L-+EV{j&?6DK6t&=@($HE!#>J=rW5==k8a6; z_^o%?@2|$I5!T$myN%+UXm7s4#be#X!9lkyr=;x7Ko6$!e7U-8R7+q{d@M`s_eB~y$irj#pZ@9par&?S+yB`A_sB>2 zo61M|Xa9HiJ@T@_b?NEEt zGL!pvli_FY{rLKW_Y$hk--QPgw6q7~H(KFe|6e~Iw4$&x=tuj#ZiqG8Yz2S#Dg4_% z#}ECD@KEw-(#OJ~d4HlD8ujSksFR}f(Z8Wb|Hgc@<=%7(-5WGlYtnIp>E2LHR&W5f z$0%_5tL@%Ebp9d!|No4p`tc;Voe#Z*XLQ+5B-<9ej=P@duJ=D3d-s8SgCDqS>r)gB zl6KQdI>wlH~7)J zpO4`%-$HXj5=q}jgFpLQ_5#@14b|y}v2f0DFUjOGA$o&yCU-;F*$vj+_t0DR?*>y6 z>f0gYe2&vIiGc4C*Z?eJKXwBfM^j)=C=>AWi2lp|baw;)X)=#yDtDf0w+ONb_fEW{ zBjx`Yk8(Heb9E_9jivIej4R!6NBUCstGHU|T)l2$BH7o%vbT2PpEJ0HZ-ln6uKw8j z)f-KrdV2S_Ui51p$_rZOrS3qnP;vk8=x;*(HJTkVn2c`;4i2dQr$sJ#`0m?Jryt*b zv~NJP(08HAZuofk7bmBOZ@icB>!8x@HiGV)dUwOyJLlP9GiZm21{9AU)M{rocx90) zubA5VZRCuaHKwJvVBVVLJQ`1zsV)GFB~A66xS4a}6(wa*7rMvuVox{U*wgfB8WD^; zkdKdp=Ed`=-cFKc`I%y(5NSEn*=W#iNRqo$vu79=rR6;0Ie;%Vf=LL~!NoRjTx4_6 zJ3jMZn0hhfPs!2a+2Lex=CJm77XOmFLxqjbK_l?H4Zqv|ZP*MuPIN*1J9)x#7a4^L zTZRIW3M^u0uca3n9p~E?K+K}y% z7Ss;=n?e{n6fa}*#T*5PKm~L+S7UUxZlilLMYfFh1mFU#Tq*Vsf`;GOhY;ichjz-x z4*#P<7h98rE4#=+3}bTt|5BDOK}$SD*Bn0hadlTG15 z`}b4a!qKF)YVp%d* z*=?4H|D;YTK_%W}do*`2S9p)^qP|@?UjDF8H#{-6O?PkQBc5yvE_t{?B2B81JD{Mk zuCPQjoqCwcj%XF;@c;i8G9b6l*7Il-p}1Ntpp>tx!lgp<4dF=PeX`Y3iL+=&1a&&s zPX`%;M=qP=SKRHx;uyxK6UODPuamu+agl4Qqj^d+no_*ixG1&4eesCF7xOcc$CVck zI=^qz(73dNOW94o-DaDXWo^8O%v-<~6-v z2pXo1)x)ZBX0yzSfGQ~L9qrvbg4Z+a_2F;BLBEmBv4Qs*LddjoE`M$c?XeI^$ej*K z&xm-&rR3*$TNA@=>Pr}q$(YGT@mCU3tN08 z(M6MEHHAWLpY7wYKc8N_p@WT|E?&c~ol@)^l4S5Zb>id>C<=1M@8kh$e=ClD2m8>c;Wy5uXdgUvdA}vxW#+( zBoNPgV;U3wxuSB)70>ygaIctXtOvejU&YXaHKRXyb%R4#Ko}L&L1DBA^!=~Ph#RpsIPDx=r_Zmkg7o#jZ~6j z#?SJ*2@$gS-O|hKslC{;(qfgcDspmY!DTWvx_LbiJyuDV&Dj`R|msz%f{|K&$0RaUZTXyu6 zdf3KdDK6WdmTSk8MT8kmWEUqZ?w8RJ|H}2qo`ZdI!`b&bUvS12CmD?m6mYEpqghq<_yRI%`<=|n!Z-;52h zNlK*us42(#ZuzGoZTEIHpU$Ga*U=nxo7M{2asNc#n%oXYeI^6hzQ4kbvvEWrq>01! z`O@2qi+G&S7jHDY!C4au^|y(A90-g%N}S*kdl&H|VkUfO6;JHCh(aL)7Pefh0E1c!#zk)0E9H6Y z&QV;_o4av0w>;o?Nc%S?TIpNpIL#mr>&?ol1<&NfNy@ofccu681fO^@J#tcKX%^V} zd#o>U?@VKeauX-D-q^ZlJgl(vH;>lvlv)}h1(zO0uc&_#-y3uO@vb9CTH*FYF{IYNkRe@0`k3 zfXlt?86x|{*pNbwu`i)i3-7ul$I+sXMCP~)DDh66F0E^nEpFWv*k=%r_mr!`fKYqlK6(;rF~8q(NOa2V*}70S64=g7*=ZCvAN#qP}T0+l!x;9ZAGYT@*Gc9z-`i zjGML8Dn2Fok<5jb9NwXCW~e83R#-P1?^8jC8ERU6r;aYpaHyWY3g}-@r%CZP(>l{s z*J0c%_G;1Lp@A2HCpw{~4Yyw!*XYR*&A;q9?O^gRRLoct-2oJg8F|zyFlh5liTB}9 zwdhCQB7ym)oKsR#v+2cvXT0g_oeGRhR>ECj=H@e`AhpC=5ma~z+$^7h1pohEP~*6b z8P`5wSrsUkRaQ6xDmTMh93~9B8yZZ*!%gLZl6s#| z9Ef}>4)l*)ad3H>$px9U<*K7y8U~kK8$Xsl;|e#dS7lgizFdfLlAsO7Fg;;^K^+3p zrpz(h=%n2hLPA|No_dEp?4Pcde3R`_8gH(+=zQEvNUA6g&^Gw)O2+z3-#|ss>jZtimMe8~$X9iv{mwf%yu_!o(uy5DhSW4w&!!9XIK%m-K{H;; z%E-@UO{?2zp`lVUeqP3-o%k6+seQM9uc@r1e#Hx$kQC)6b zY{DnmMj7cC;Rz-9z| zW$yFE@D_)rzXRG^XKF?|u`H<2`|Dw9d>YjjV;!9X$swzYQQa2v49F=`O^a|A^5zH! z=4dyKU(T+OPK&C3YWzq?BwJ);d@yy2mV@_G4AZ)ev}1-x#0>q=nidW@taY6xEEOXr z3e;y?dtE-aOtJKEE4+mN|G$@Xu+Qd5+@37y;nzLYdm-iKteBg2qD*;n-_@zEC8x#2 zF!j>u?mvV0L z6|q%Yw^)=Rv|k4>U$WVRcy3JK*^5c z|2Q3A52FGwMGHI^%s*`(Ows9X{r}v(d2{1Pk}tR)1*@_$t66JN1i&-L)}ASqnU%86 zOsOT6YI@%E9~4PRd?}GE9?H&MoBb$z-?#03-{;%wEA7uC5I{t@10YBW%3K?>o=OUE z06+KeaQE;->~By3%&3i5cq*7vvL89k`|XP|niCfaE!!C4?k@l(JS$l{KeZc4S5oJ8Jq#u|xHHnV_6J z%$ABjnW$_YH#?h;$xyR6;fqR2-nu3;xx}!9f{Sr0Ayf;$D4We)&D5VZ&`d+q>isb- zl$lm~P?7+j@r?A(W&!aXdDao*4KYE+c%~k;3&*bCHmDn48Vt^+N<}muolU)Mhip?j zzeiUwG(G~)D$Qg$cp4*%62fh-v|}{Me_S3Znim<##NryCUzDx3Gq(p_1+LMJ)*ABH z*{|r{FQk_<&GI=YT$}HnG;J*&AXHs+QS%7lcTiA2dpAGsF!^vc? z#_-7v3rZZ+A@wD+B_;AtN0*R`_3|irB*0LMoO-DN?}V?an{VN6`)qRt%b>6%BGsxL zF)Gm}oH?^G)DJ<)&E~z~)F1x;Kj(F1uF7z>7e0QD0yS=8Mtcddd$6L8FTWtY>EPAD zkDD`BrJiAo@OXLj@pE)^oz7uO82N-pm95Y)>|%sP6PIPm^&tC^oTH8yDZqCzc+Gv4 zFy0a0m^XR>7-ZFt*27gmP3Sj=xzMnmZvf}V-^VVL`UeH0=<2K2XF$?jb%Gdmn7^OM z`R!!!_+_vd?@46eCFHoQK9#!f?IuaHC8qiZg{|nntFL0%(p~jp%gn0;TO*_Rg54Cs zxfb?QqGQ(nQ<)ojfI`N;3uy9-LR56%qmE?vsM~6Vl$Y-twS13`<)?2*hjPs-21Z1~ z=Teaw5gCK0Vp8F*cy&*mC+Erl(@6su&@mkcsB2!)&aVIDAWm&YHZx-{VIg3G1knNo zXCHJ=*{GtLu3Fj=Q)DwNF-CKBsNT*c;Cr4Me}?rEeleT)5|rRJSPamigi_qCyZu@< z=?zxtXW2+vL}-_C{CZ7=L6Q3wU73K(&z0h_CYtjiZB`v8eb4P|y-4_!L#Ng3L#qj& z4lsS~Fjg8KlOyc^9ZX<7< zD_1&ck>mT4UvfM=(z)QLNU#Zy=*9%))9cb`Kos>F9WRi7pne1yg|ZlEks1{nQgwpN ze0B+BGIjO}GW-J@Hbt23}t5%p5b81mWd1{&iO_!y0GTB#&oIp!zb4O#?Bl*KqgC|Mo} zrCKp&Ib0IP`3hr8jAIw$QiXAdp)?F*{AMr~gAAdRbd^x56=N1<&=_N?;7_kppt6rbvPD;yD?}V)%guEPo>)v#_oYa*n3h0p!>Pxl~n@gDm=jC~zsa{N3E zY>s-^9@yx}0k%{-9JV>I?G#wiw+kibPSdFs*c{(Z1Dm4~wg)zLfi2Ythn<*7tQyWp z65A8~IXYox+CbB(6Ig2W;-)B|Xo?CtpCvQ_+Fn%RY!6Y1p6JTamob1}A}kRxS5AaD zM>|xF{wRo@n8ew2sbVmJ1jlMnKPFnYC%SUsqRU*j1l=?W0U^0%X*qPhQ7s0c1UIyu zwlngQ3**7?*?91wg`FyuT+wHXa(p&Lt5$HC0i1xlSD!6G*77ROHgMNMlw>pWmwq%# zL3G(7(Ev_p)d_8!X9DllYg5oV4%^vzxwZ|XsLi3pj|N)NX`?SCuh*d{ljQ~^-doU3Zq1Mil5u9CP=44zX~x_KrU<doA8*Esvs*=U z2}BZ9 MmA*uvl7F`6}DNfTD9WeR^CY_a%NOw*i;bkOA6Tu0!-omGF;UqMwpXr#) z5luBg^SD$-)22_PIx|>lTiq-N&mmx?p83TI>2;(~tm~jwoOCW~Hm~!HSj8Cnb0)P6 zebE&Z>rc|>hPCRWh=u8GzMJywqAuUi`kSjL`*bhSR9-Xb!#n z0;zbl#Eg3g|NmcH4USi<#pGs)FG_xiPG}ODKqpfubc5+9F zyO(ZH~G*Igb@c zQ6nMe8dS11%s3kF)!J#FsJ<8{5tWT4pY)^+i^Fy{mv}FtM1j9uEM^OQ7}wpKn@iVJ z&1ncFTIcP>1*jHoil1h|IC*-uD{gKeS+`rl;Pcr2%piOf=shr)phn@#WJR+Pg4ykD za5Ekb(D_A`P|R*sC#D(NF(qXbOY~<_zv)Vg00z5ryDJ#J2sy71y$U{!zXSt}P@O%D zg4Nggco}^BeH2jH)8pjNcpv9kE@@vMI;3Neo~;7ZJfIY00fh^StNX$9ck0#0f1V>_ z9pp!2YOcKuphU(2Dg)FoSL^HCC;Ix;d18y67-*n0+2G6lV6~i~JJA9UTB#?x1bv0# z5Ny8+tX5Uv2Kr(i&XhfG@z__?4vEgIK#3y3_~y+?fO4ff3_NyU!dFxdh3=~$c>VE` zRy`&8k4L}5S51cZD3tweJy`&{0p3fg-@$bCy8y;oFr6g|8NX;y-3R&_&v{_)Rq*pd zF(NC)4QNb?uflv?=un|lX$vG@Cpy=L%~wg`cc5mKFTYNQ_h@sDL0hV$28zXQ9>$Ns zY^YAM$OE-Vvu(zuja8PiwLhf!j8M?3z*`R< z7URL_Ymq`Ml-tk~+^|q`qoxZ_RH*PH^1dxFqe97xpq#Jnu{9*RED@30^;DJmV1;WG zJeq~_8F}&<70PD>`Mgy7(joPBN!kHZeKDz0>UD#uN~;MOVBSj<%4!6?YKmb&0Rsl+ zkiDA;iuArV@X6Q*Oyw6`#Y{LKlmtG|mT*)35d-6*oTdh0%t3Az0BSrJC4kN7lleF{< zLZ*5O!a}(Ds&*f06OnC5E-bh?jTr$U-j<&XPUdN+CR?4RFLkbRv$^yN3ry2xeAzD6 zuRA=JtmZ|F}4Z{}s|rhtp!Y|4B&kImYTg!)Y3=gT3;c<^;oF;Rqbf;Bvvd6N|BZk@wLsg^m(i0%GcO6g70Mm@~n|nGA0ZZGs z>f_Y`t{aJ?Qq%S&VH5Xot|`RWYPB9)C;NDh)vNKN+Enx`^j+3!(qriT_q;w-x>A90Gh><96<5OI1= z3F3t^ZXX=M|Nob>v;UrCx79D_ai1Uk>u%`JvO!#b*BgWw2~h|#jaBnjAN82grWVg~ zjf{iIuDv1EZjc=yCtJY#Ryi{!%#KE>fAnJ zDu;ICfN#}M-+-oRh7`IsakE@#KmU4t5Wj_l^DG^(9g`m zMhEKW6m`+(SKrD|&*;^QJB!8{+)qxY(R1P+iMW>P4H?otxzzT#*ik zoCATqZJ35Q-!m!ws1WF|6*syqLBiGVsf3GOWh@q=TNLZXoH>^Y=jXD)!9vjjR}&x# zA&=YWGT7me>)#FJl=~&PoML^tMX>_pyI1?Qnb(=*A2zLo(FdK$&xL)7PnF!wDVv_7 zsnYC~G&7ZMPBzTJ@``eg3Na6RH@L)dH1!Y4M4`Mn0crX;=4R4u^+L=X%mm`_c_7BA zhe`f*Aujdk3n7*r%eK^OtbT}@PnkfBymf;GYVImd5XzTg9CH}5F2tqIdm+TKE7``! z?JC842>dYn{hBy6KUl`_v(pEPdBB*W&fyVfMyzkoUzSv z*FMdlS_(3kG-d08ELt1MPAQGHXG|k96;#h2n8xh%GNvIxYu|h$UKeWim*Jc2)ruq8 zEAnmkUAfOpeT#3%Q8vXgK$dUH+pMiWm+?rgkZfsfeh{+D(vtmP0*5UvJf_~2#oPmn zLna4&KfIxm!@~9RBD|3u=DyU|s%GA_$!m8{QYfJ^K(W=u1eKh<7ZjmrOnnvaKLK7u{V1RDn*$gGvn zt57+H(vredwKI@KshmA2Ng^jVWx|A6itA;)UgkvcCXd%P}XU7 zRCHkds**KYVw^;M62mpUx6Z?zR*$Wa6y3?_8IT>8B1_pZ7Nqn~jinf`P#?gsY}R^0 z*5;W-Nu|&}ddOanU$2*%p4U$HX}Byi-K-v$HmYP=Zk8@^s+wFOpM-TogUWC^8u5m( z5Ps(h=Vh!612ERPPG|^=P=|Ag*bo-(v~y9~Aa!83)wLcB56-y(ax_HKrM%1GEI60z zhONqoX%XN%8&pr*g8uP5|i z)k-K);lGt;+0lNHDH<#Zt!BiajQV=Uil|;SLx&^oVQ(1+P)YfMG`zWKqOLX~MZyiJ`OOoxY@4QsQ(G`q7lVQWUxu(fn5%eTx{F@mBH zeR;OB5LlWMZupz6v0eCUj0JD2%2~!wrMpwEBO(SoIuz<-VAt!2bSUWJYR5D={CTkU zHl;kQOZTBXtZ7hyps&Q>Qq5R*m^H@aI#V*wCfC^`5CjvXiUDRiC!v>aiqyo9k(;kYeK!> z3yoG9tuRsVMET#D`MSBGZw z&pKa>&EZzYoB8(piRj0x&t~A)yLWe~p+kbBu5kX$A;-JOHB!*T}69yNi&RuC}=&)A$hyH73b(#T3zgMA2tcQh7hJRN=wt_KT@ zCc%`F9XX@g38J}dN;xHbmdztdcJcSE+tR(_*~t~?zF)T7L?>Rs%J^Gz zAgoLCkv-l<&&JzmQ{Fmj4a-0;c*{ilW_a5Xg9ZxLm**{u(0q74-o~5qmW~0^&F=ty@;gY(`;z#4t9@9|c62tA)LWIa>U9j^@!kRM5cL7zR45I3KL;VelNm zW*M!At5fnq6IJ`VbjD0 z0B9?}9=95mP&$VwYB#MXT5^m(G}LTLEy$uzuD+C6B{s=Aapy;{m`b-?KO!mW_;G$e zTQA7_&XH@mA+wCPA!|`h@IHBqCluNus!854JuSl;Hj4&X^sB|1979IJ7ykdh88c*XF2jIL&#~?Pz3#!*{`tKjKfDO7!K7ng}JJUY?bn zZlfi2H=qY(pi+P9bRtDZbcn@DnS_)C?6ZN&+~F&*jk+`4QNJTuVyg%&k-M7xOvDmQ zudaT^KguOFM^HuoQ>enr!sJhY9BO%J@QFXIFO9H>)KBXGEqF1QCl zj)zAU^|Ps>O>@fBnHSzS*+wU&G2m{*6JY4cpTX@?RF zl-!YIRp5>o+@)dMF!u012;&AZN$;Yf8h1R@ zV|R=(&!ks0aY3=nN)<~SwLH)d@KYmf(d-V5z3fhQ z@X<`gXlnI>&oX=R!G9JlW58!>W>%_ZI!y+Crx`ce5rtPZ__D{@k^0+cYI_48{{O$V z(Wc6xfB6h}7KLLNz%Zx7mgTB4I#3QT-ivB@~b5Ha?+w>Jom(Xn$ zuw-Wg)v;s=Q3(k|zE*nzQ-!&X)c*n`gDLT(5L2t((T0}H+1xA+rvS5bKH>4(%is}5 zb$AmeSHP{~d^cD>P^`nc#4lXsC9v=coOf|P#-apM*11k7fra7aTq2gh!d7rD(j}^Y z@jeZ^nse1TI>)c>7i;(HpnjdJ^xO_se*`7rT&CN_v&(2Gp>v(`1A@yn+SGmx=%mzr zdg#|RWkW43+@h9`Tw3%Cs2eWHsI?h95miY!?`q;_mxEjHHKUdf(-oq{{&RhdUO&u+ zpZ#)R1pU3o3Zy7W-+48ZWj0WDJ6$bibkuBP)Ar@l_`i%fQQJpGM!W3;b1_!2DS@C5 z%jNJMrwBTd<-ey7&zrB)!Q*5YXzgi#5>h)%3SCbOEw#JQWK5r0%Z}jNv}PK?K^hv9 z=FnADtH=xUx2T^NXsbX&0|qOUD}MzNe4Cvo?uVF80 zX49v8Vh~Av4TCl%Sq0d*A2wme?Eoy>uMDtQ3Upvqa8R`sw58!89Q8FNXj9L*Cq{_E zrX;T^u_~apI$;dQWCu{$Aes z%Ch-1s&~)?dtLtLcN;8!VLTjGa5w6Ot<>@Ai7}qADHb^5W+nD@V%q95N&O)VsIwXl zI{!Ktr6(r%ufffO+Gx3&t?UhG0~U{Q&Q_Pphf*6>o1mFrK-6WI=FQBVA zsS*|5pB zOzqM=Pwe5mbm27{k?1N%ov7WX>DB50qMs9hkhZRrVkM`b*^G9J>M(oK1YQv_dmeCK zZvgH_F|&S7AVRY7wuzbbdYwK+HFgN^FlA(+yZ30s>kXn2B@wfJP8>qg0WT9V3t1Qv zir^5PQV!7w6XW+r0kW!Qdrp5ie>$6*b6=KDbzWvQBhnlBSr7CZ(jHPpAqEaY`dFrW z6LOW*#IAA5h?z+RsBe|`0RR8rq24N9LYs{|OL;giO?d!TeF6GjqaCNvi|&3%Uo1gS z5u~G>8rSHT0M`@hMgrkoYPYZ{lpyD`;9n*U3Abx+Rb)_z0>PQaX+GtW!tOn zki|O%*j00;{bgAZ>U5|gq*k3z$}rE%+3bt%b4cIEfUc6Wxfhfpmd%ro@>XgkN2O?# zxk8zgYLpz9qo(NPhV+3i4|B{8Me||arwY+9a|JRf)gZYri@s+_AGj0DQkhxhv*(!E zCSGn@&M4XH`uRj1xvDI3L0JrT&%=zGqBj`QCo-Vx&%+FPGZr7}eW?ovYNjy;r3wQ* zfqV<36LuP%H0u&+08$r7^@$8>O|4b~g!e}Aq28CuaG+*dV^FFzx;()ZKUw*eQB!sq z=@S{$np(Y3vnU5?(ES-0ImX3ZslGT2LzX*?-;g|c(KxhbtZH7!5v%-{pNe@N7n zT|4?FhOMFY_wfJ!-3obvJ7-=|I}8jPgU zEBkbEiIpS)<#FtIUrvPuYDo0CM7@9_q=YXj&3=}t8e&CaS(uX4v zrJHkb)i*IUkx;4?T;AE=mErm9i<*A44~Vq{djLO`1I#OmV*F$P7F{?M7vlg|t|r>K z0tQ8Yz6v(dtDC0?z~;APDbvGF0^!ZFOms_nvqYinv(YCpZ1>QdrD`Z5%J1g1m+~S@ zD|ppKH{~T;Y7fwP6pO)^Yu#>~LMNN$XP%B8yowONh(je*umTCF8>fuJ9MQ82)7d>y zD7uRZT*l?}tLjuzZQk4Y&GpGi@DYVm6P$)6MGuoPQah6&MSNA!V%V@o@6FS2c%%n5 z9hqn7MTO2N(~AbqD=C4e`L z{`qeLJyG+Zi`K*)A!w+-*LZ|IgO$d<^eQ@%`HUX>oB!i{56+)0I4^t;<)kkb&_9Om6+xJ9Ly zZd3z_F=pBiR}K}#7tMu^RdLAa^ym^@DKY&f+wM;<%d`W9@oZ?_82on;l`WyV*=4F?^ty z#FnLc_2-fm)r^dF&u+Kb={vneYM1RSFJy5pkBH`nnQ{w^DRAdk|L8|ql|Sl5W}h9A z+1wP!?zVXB8;9zm2mNB!WtsIKi2(|Qn#jHY?^}U`tQ`l= zcdidmWN`Sp(+0F^WBFVth2HY>(%$j|%qw@nOn%XTiopo=K}=B9eYHtxM77rLhGc{K z?n{6jx?+R*Tx5;^ah;Mhl1gn+3k9`>O~26z8y7Cf_Rkt=IUpcblxH{B2sh7Kn=L05 zr_$sCe4f!V$bKk87P$gC8`nX0^Jow5*I9OSMs2BSUz^*{u`cuX|CAh^%Uai2T3__| zkq;wir|hBivAD(ZK`+OcJVZO{rW=Y>PPxCwXKRCw)!l#3m9rOqRY$`OyS9Z;G)~u4&6vXw=@YOiuw&O+m&JUV~Vcm zVn-Cq5zy7t>O+@TMSOs;%pO*QJK6r*65Uurmn@S)B|$(6vWp*6bo=oC|9vUciethY zgo$E(2=f9oXou{`S&&}@F63kE677%?HQM2{R6F!2XhBcQRIoV(j729DnQ#KE37HyE zWt$naLI%LzP>pzY!2GmSD-@wB`i4k-`4&*+wF}S&&wy$yp<1d9icl3j!$_=Es9#oD z1|c+nIkFcdH8;`AGigR26SECkSaVTg31H;~sWx1L2 zP3p(uwx7Kn_TpBfZ%X%~IL9TF3O{fwk*g2cklVEJ{*h(bne$Cb#A24833xh+vpm$sdgU70b>UeI$e0rdc1}A&bsIM?44Km=~_NDB)ddF(_>MtsJ~9r6K!j^pP^& z3C-H@j_GXC4cuv10?gN34InqSVjA)`ogPQ?x1d+(L4;zfNBo)!u;`wtuV8?t#A-tm zi9|k{u*jZ6dgB7=Ew#+F^u~G8n|f=pcnqpOl7Vg0tPgLR|LICErKzo#qTJH2JpUuW~L+ zpmi^Tf^{y!W2d7V+MBJ1LTNY`y`JH$`C&E~v7A6iymO^WuyTp9cH4~Q){|MU?eyZS z`^9XvLL&_klty8*M?&vc%?8VH^C)I)J<5(wDWYJVgNaAP9J!aEq zw{Lkmd8cy-%FZS4wmp|@i9UUszJ#f@DwgI>Kz3po$oc(XIYvja-`3-)%EjROv8>kw z6wis)WkxDdYIk#@P`EFD2oFC*haX5YWRa)M&*`n(ElKya8C@0QIo^6m(=1wI)Ib5p z_?AAgu7wcy*pZyI5NHNMm6IEZd3;v+U1>|2n`YBZ$HA;}^@}=5Xot>alG&q45yr^$t zuqM=M16If)rc@yKSbGJQ#bEBDa$rjeWLsjGAQn@0cQ25wB(6Q?L}_u2_lqivzud*; zs1}yT(%23`ROx%Ts47aeNh39!2d&N5WnGA;n#cA;e;X?${z(AMPxK!1N4S zWIl(MxfoMY9G%;z*2e<>C^W=TAS(+y{cbR)X-ATdk^DxBU@eft|Nke(2d`r4A}pzQ zOU>*T_EgDm*rRgT(Zx~JG4y*1yXaS{FJ+r4MBNaq1$G5FJA`K%X1|c9`h`OtmqH%( zWl2}Rr;v*-VJ!ACwg^^%+#jfpYpAmyGue~wuDU1?=z+Sk?g=@0O03a;!P z(l;@APKi~4)^F}n4O-bgOrX_*{4Bth21`;ba)Ff{M6q#7N~{8~ED&`yewF#|&s zPV}(c0?5*;Vi!h4mbF-lPFqXNC4UJJS;*c7vD&QU5=kUx6gmc~;Bi6%n=NrNJ~lgV zOd7J_?t=LIJ46aqnz40_f7F=0hILVPqSY3?!B$H;dNHIbtPK`)w)wHK!fvw^6pIWX z617Y4ck5>Jb@K#&XIkc9mF>UD-_HlD`-4{pM=s^W4_qy;a9JU{k($=D9+~l+YLwO5 z!8}(<1<}VbmF`fhA8!^twNMF`RS)#@!N%FJ&J9R$zAVG}?Dx1LLwEBdFLk4}2K>V= z>Pj=4PRBzex8V`imHv{V8s$|moGgax3A-5nk8@s~cv?6lK~e5x<(-53NBO@@KTl_0 zsJzp9zJHJ}9D%pfGr5lF^S0Vj02z?{{h#3e|A*tzwQdG<@Dw$=@jtr=BXI{rQd>y! zyh4`>h{5Ch;8lnQ&fR9*?8B%^yA=G4LF!)y^sSjqtF{oYmX>)8s7rjko;-{Ks7bkg zqPi`1Lj>_Eh07OZW^uDa-xozKa=0=PJ79mKyq5ynG)F)~kDT2AT}fifA^)?~C!>hspHwUkAs-;rem?fV)P)-8gB~ z5G>ZX_)(81HEkeh$P1_hS9gN|W4#xXoAqkk2!6uEl+a7AA}?z*W5;|3WW!Q>zS=cc z6@9Er!Pmty5biy`vNa&NSNZu%rX`n!9`xg4b%;4oHp5Owo-i#-z#!UgUnnOqs7w`h>#ujYe8Z9fV3eHpBV_oEpJ z_1y$=zCe&fA`toy-U2L3nfmMhWCrXBWdeRNrvGw3-PgXqOc&$1%6Ot~Km^$s_fCV8 zlb`>_z0=pa7wS^%6RVkL*!tFQ`cf`IUkhER*ERc_d##_z`fCQa@Qr@1>c_#KRTe7R z9^D1wKM$e2pml!IEl!upy^Bx&X{f(Ov*TrnM*V)@Cubgh`1aG;$G6mL#NtSd&R#xL z*$p3$|K`Kl@tfc$N{YqnAXt1ihVGmN_mjJO@7ZxPYR5(ciV+&M+L-}WS)?i`ral~l zKB5SfeS(m;|GgML&S20aTPI-L(9SwY=EfQ$%=q}1dYtU?NVlpx()2I&&J6O2H@aAs z8n$nzW-fQ8n88W-5?HqaXJui+Z@=x{mX^?`f=IWlq!bA=1z zj6|ghmvC-Jt@5g`H3V+q|Nlqcu~NdR$vha0M$q)M3^rVHg;CSVy!4Q{-9VG~23+t) z*!7_H|D-?`qaC3bk9O~`0`JzUjKZkyiQR`84n~4!Ko%@2l;jZY74d)JUq^#x^VO)` zX+lE7SA$#pYZ!IHSN*~5?W^1IP4m^@rb**EEGe&kvtkamH-6?4im~OYPpHDaZC6K| zr^LKDe7#-<7qj(rbO`5n9*~19t_~V4rUD}@_*}R|7OT>Og|?=fu?LQ}f?LcEP#?h* zj-pWo!>yM9kKG@ykqe+>6e4mIt7D*Tx|I|0UsU`9R1#%BSmVD77stu{c<8n~-29|Q zck8vbW`F-a^Q>OqvNjL5NTla8avyZW(u6YuO{X5FvI7E*ISkbOv-D#8Fh-fo72Ls$ zr|Z&X0=}RVHk9o`-;aBrRlNC50e1EA z!;GSW7NykOm;0oLa=hP%q=K*@#veAfiSf7F>|{F;7C7CNDnknurz$ZmT;$34f^CGL zeDZ<%B*x0rN)L0w+EUjV^{{H3+3xfuqO3gEJbAYm!_S%zhVbwa61bHuzftfS(#Ujl zA%AX5O~0n1>aa&`Yhp-Gy*u01h(tZeF~iP6j=VqM!!72ma4S8!>a}6-wwvffMO?}7 zOMg$y13552g75V^I6f1)Isqe z*1srG6rFAL@(e3RA<4~1*sX3*MM6};KoxbaB*u6;_S>{0@oKGgAX{N zpc-jFv@gD0oAZ_<5Km|)?0PC~OK)PAHpglTw7LhUA1A}b?D7pAoBVS58p%*Iip&Eh zi{GjH7Ktvof}E{e^MzHIzU_V+g}F>uC;kQLrXzW%O`+{~byl_({qZ$ejB3-s(GQOx zskdkN5s50;Z5z>u+HB7-3uZFKc^>3ITr@erm8v^u*_>uiNS4mBbm^cZkQ8mE>C&kx zVh)q~K8CI$QU|;(Ub=1IT?`(B(Pa6#qGBo(&Bds6pO{i5GohRzSY@wBZno5ezh7J= z--Sn5S7n=q=sPN$7@LxJt%FfWsrNUIUy$e$42H;bSq2XjwGbD=cDsIZREM+}Q2&q+ zHvzuVHK5-N$4x39@!>(`zGeK}d?z77E}wjEijQ*m>TW1Fb{sF(jI198y3{#D?z7V< zP$WCa#3Cjm!VA_TFD%-C(H@u|99*58n-r;i3QUr8b)=sH%89g;k4V%Z-Ap_-U+(%& zi`%|*@L+I~xI~##!d6GYGsZ!BN*yd~cPR|+xJQ&U1>=wov3|N=t>#NgMYv_X9=2TL zDa(Fat<*y-uKiZJ$X|qQVn{#%_kwI=(G;I;&&##b>2f?oX`{ov3I0{+kG%x@;Tk0rKfp%F}w9B=GKO;lcm^Po{Usg|QbOjLwXCtMWuXI^xRo<>uR| z=J_`IG8RK33Ol~=rnRWcsKeCd8)Pn#xr$wGHa(iP8g!irTk@J`1hucHcel6FJItpy-G77G5md*F}&+z`IFpNNIwU|9ni0JhP z@>ordV1b@Pk}Rbl3nz%4x4_@kqRO2H_GQ-9e)_F|gLSo^g-i8v_k+cqpZn}*;9fq= zz6AP8tOtvrU-58>QHMzLcQ5i&YAL_ta50wX`K1THM@fM-hFyGFSZ_{Q1o$N%0mv+T4QUT@vq9V-!>f9;_13H`5aul-OMW} z4A0!m%B+6)W|`qp=%|^kN{o7`&tQmFG8?v6oXlKjiu3a91RC^lBB#pIOsOA#1ms&E zrZ^gOHvB-33P3Q`q64x~3eEShjRI(TiHsdIxms;pVgxIux!(-(giIZx8&fH(>)sOZ zA1BkvA1Ioo4zj3FBgfy}F9(u0xJ(#f^P#-flBU6Xd@!@%V=+pkU|@Vm z$W-COwhN%uVc8VKhs)vpc(g`sO>jc{jNTgep;VSbO3x@1W;Oa+P2F|`x=_D38;L`} z+VuQ*kRI)ghgjF7k>6O12`RW3zpMvV;n}uoKjJ(?b)}9B;cGTzQ|aMHVq9NOhh8}7 zx@=!KFz0EGLfY7vldS-sd)YHY_KC3}g&bp_p;Qa+x+KRYtOx)9KSg2Is{`VnI$z3b zt+<_=nz7I#p6n~vr9mNs%gb>wr{_Om__AE=P?*JVQE@QY#Sw6rPH--bp!zEDDE7M^ zQ9rewA05nXQ0NF+Y;YAddt}4u=V&;1=b$hm$Ev2EXL=E}^2EUz3HD=p|J) z@T%0%NFqsi>N`B;bn1;Ec)WGGazOWMA+ox19ESe9!b8)zQ=UJdKALSIicCEVh3y}h zs(w11qx?Q3-|sn=$?;G-Jxx}iPPI2BUs!t}IW9-I(~H5=-+>X8Q)zfI+VQh%RO9Ef}>4y9?v zK2I~bAhUL}SglXP;?hgXg%~G^+F%UR6Ydw(As{Fj^_4X3tPm3F*zw%E>+$exz2Y0} zptO;t&c@Azq>Az=))@JDzVb{71t4Q2QK^G{T|QWnwmQ}30uin^CpZFG&net;evLFK z)M!$lCklM+aq%bH>>2u5Jk2o9@@}lR+e`txZ_P?49qjc4(>(yl&Ch9xu^0s^V=28~ zJuGD^Te0-G3NPXR|7Wibe%#KvPxyJhKtkShMGwCjs7l&Ioxg9*%emQ|fALB38 zPX)A|)owmaVikWKXLIZm=B^*9yKSNAc8Ffe>K!uudytyN@>Gnj*mXT2R1YWEvA`yr zNc5S^iRfK$y+2M|Yt;#YDJP!FIDu1vrh12r6If~F-M7U|nr;gyFwK@wsltYBBP}f_ zN~z*o@7HL&g(g�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
BiOxsf}`q0Byz5#WRl&=Erb>Z=&88=o1h z1gv0Qk*+xPwhOFqV8DU3K`l5j=!ky5FWNF2pBStLDm(wy(&}#)RN=Uw7}SFEf{y6* z`)zy?msCZoG8MoqLk%jafMe|2gAdN_jJBpABkT%GF(X}kXTbL-tqwHdeSA8+3By<% zxP|7vS9kZ^8qd#HzsDPw=zsfS@~T0wGR#?QP-9No;gK-Mpd-ah0dubq^LBl&EkI5` zhlr!QuGo7}Oi)b7RR(y*@hxeNM*`f>2HYGZ|yUV~s| zm}i{r8j1xaK98YR!v3YeDKdcF8U7>J0QNefh||w8-l8Mwi%Fabxys;X$C6B^Y!~iW zqj0#rGH^E~`R?pBW4J{}&KL750e48QGPqfWrH0$kDBFcQ)+ZcpzYN?h8SW@i#H)$E zo-Zao0`8DpRdCm3r_a*e4xGP57Xl>sEZJsCZdF@ah2UaF;gTawgRqpxW^c@ zg+%!A+?uWEfd{N_WSvh}TxXs{u8c0`h4Bfrd!~bP!;}brq4P$e@eUAYm z{QvLiA(a_GvJEc9k6xF~Cs4JgxFRS3_Z0wO=T!y37N*>|d$kmx2{_7QZVPavK~(vRJ%wTz`}b<1A6KtS+4xU@A&cmm7_Qb> zr2s$TMJ|3}@`H_H$)oY)ZX-T#pN_wRH$Sif^kS%gNUO#m6rYQG)Y*d1jHrwA8>4qB zzcN@X)MQ6#h0Vta8f5Tc!jeE@N#5+nMQZk=8LdxK4!xDd{HloCzJ~;p^97uux@U4Z3)9qW|zH7s0@o7vrBZ8w`F#LtMv}F#AeEx zHVrF7DcQ=O*bcC^>%=0UcQ(^J{=AR!@?1HRAX)?|RDb#N-+=%B{a^db-^2fX`rn^( z1pfF>|LR}-!5@A9w}1WFXMgmA-~8ck{q_(4-aq}p74?Q0|KbbhcY*;-Km>Yj_g@@4 zf9SlJEyp zx8wUKr!T&G5t4r9^`0lhpLw@0j-Nkk^`3_hc>c`0c^*FE`Qhv5<|BUfkN&=k#3-!` zUmPW^H%Iv@ zJNxixvYcX2=fK%_UXLa>-O=e#P4G1c+u4ZcZ+`dk_}F;|k$ZdeW%^ZNho&+YFT0D; zWUx1+K$t-?8GtH8~zs6rv-kVxmocuOB!wrMih%rc!5Q^!q7Gk|0;+9;AI>Hjh zHHkFsgukdbhXk8?Z3djWs}j(d$Mm+_yTc6FFe{S>kk){$Fr!n;$?Kn`p)-CZ_(bQ^ zZ{q_PeDR$XKuG!`Rh#hY!MR3)`EWv?y$$>d>y+PndksI0UGx(HC%Tz!Q=rH!{%uQlAd*KX9)7_z?+n4-6d?_pqCcUORFqro&_ zxR`MQI2(3H4kk3-WYo;Av8?HqTyPDeC5>$Q4+N{|^r;VGz?wH#fNGuBdDBq$o8f4< z&;?=JSmV7^)+Y8+P1MLQe*4p_tKExpG;NLk4f#k9ag|eOx1nY9{e5@b|FLuZ?r8V& z@{QA7F78mJH0+@)YBI*}vtU5x!jGN9UT=B79AU-v9T=&)?7@M3x}b6!YJ?XRRXCUn z1S-zepz9#%c{aRRE`mMha~J=knc~TQr%E!*nNQJY;C{o%unnTJ!x_MAu?u^DN^9=@u!pKdAUQ`nbPTn&TZ6k0`xM1ZS(1KV zRGOs8zv<2$qX~EPTIsu*HW+l*>n~57_nv%%>)F7(3xa;sl~#!>8e~t=_27y~-nBppUQ*EQJCj>yIj1XT!J-R8go;+?a}2L%ZQs${{O9@vDZ`PM Q)N&+G>n|g?yMOZk09jX!!2kdN delta 59 zcmZp8VAXJdbAmK069WT-+C&9=My8Dk3;356un2H*0fiX(KQQor*sQ1!!9TH~ula+1 O`v-l-?H}}+1PlQAaS{gr diff --git a/typescript/frontend-marios2/src/content/dashboards/BatteryView/MainStats.tsx b/typescript/frontend-marios2/src/content/dashboards/BatteryView/MainStats.tsx index 3744c5799..7861a57c8 100644 --- a/typescript/frontend-marios2/src/content/dashboards/BatteryView/MainStats.tsx +++ b/typescript/frontend-marios2/src/content/dashboards/BatteryView/MainStats.tsx @@ -114,6 +114,16 @@ function MainStats(props: MainStatsProps) { }); }, []); + const [isZooming, setIsZooming] = useState(false); + + useEffect(() => { + if (isZooming) { + setLoading(true); + } else if (!isZooming && batteryViewDataArray.length > 0) { + setLoading(false); + } + }, [isZooming, batteryViewDataArray]); + function generateSeries(chartData, category, color) { const series = []; const pathsToSearch = [ @@ -223,11 +233,14 @@ function MainStats(props: MainStatsProps) { setErrorDateModalOpen(false); }; + const startZoom = () => { + setIsZooming(true); + }; + const handleBeforeZoom = (chartContext, { xaxis }) => { const startX = parseInt(xaxis.min) / 1000; const endX = parseInt(xaxis.max) / 1000; - setLoading(true); const resultPromise: Promise<{ chartData: BatteryDataInterface; chartOverview: BatteryOverviewInterface; @@ -246,7 +259,7 @@ function MainStats(props: MainStatsProps) { }) ); - setLoading(false); + setIsZooming(false); setChartState(batteryViewDataArray.length); }) .catch((error) => { @@ -509,7 +522,10 @@ function MainStats(props: MainStatsProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -568,7 +584,10 @@ function MainStats(props: MainStatsProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -626,7 +645,10 @@ function MainStats(props: MainStatsProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -684,7 +706,10 @@ function MainStats(props: MainStatsProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -742,7 +767,10 @@ function MainStats(props: MainStatsProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} diff --git a/typescript/frontend-marios2/src/content/dashboards/Information/InformationSalidomo.tsx b/typescript/frontend-marios2/src/content/dashboards/Information/InformationSalidomo.tsx index fa4edbd13..4e4ba1481 100644 --- a/typescript/frontend-marios2/src/content/dashboards/Information/InformationSalidomo.tsx +++ b/typescript/frontend-marios2/src/content/dashboards/Information/InformationSalidomo.tsx @@ -288,6 +288,26 @@ function InformationSalidomo(props: InformationSalidomoProps) { /> +
+ +
+ +
+ +
+
{ let path = location.pathname.split('/'); @@ -50,7 +50,11 @@ function InstallationTabs() { }, [location]); useEffect(() => { - if (!socket && salimaxInstallations.length > 0) { + if (salimaxInstallations && salimaxInstallations.length > 0) { + if (socket) { + closeSocket(); + } + openSocket(salimaxInstallations); } }, [salimaxInstallations]); diff --git a/typescript/frontend-marios2/src/content/dashboards/Overview/overview.tsx b/typescript/frontend-marios2/src/content/dashboards/Overview/overview.tsx index 4b96a1343..8881c7f1e 100644 --- a/typescript/frontend-marios2/src/content/dashboards/Overview/overview.tsx +++ b/typescript/frontend-marios2/src/content/dashboards/Overview/overview.tsx @@ -71,6 +71,15 @@ function Overview(props: OverviewProps) { const [startDate, setStartDate] = useState(dayjs().add(-1, 'day')); const [endDate, setEndDate] = useState(dayjs()); + const [isZooming, setIsZooming] = useState(false); + + useEffect(() => { + if (isZooming) { + setLoading(true); + } else if (!isZooming && dailyDataArray.length > 0) { + setLoading(false); + } + }, [isZooming, dailyDataArray]); useEffect(() => { const resultPromise: Promise<{ @@ -97,11 +106,14 @@ function Overview(props: OverviewProps) { }); }, []); + const startZoom = () => { + setIsZooming(true); + }; + const handleBeforeZoom = (chartContext, { xaxis }) => { const startX = parseInt(xaxis.min) / 1000; const endX = parseInt(xaxis.max) / 1000; - setLoading(true); const resultPromise: Promise<{ chartData: chartDataInterface; chartOverview: overviewInterface; @@ -111,21 +123,31 @@ function Overview(props: OverviewProps) { UnixTime.fromTicks(endX) ); + let isComponentMounted = true; + resultPromise .then((result) => { - setDailyDataArray((prevData) => - prevData.concat({ - chartData: result.chartData, - chartOverview: result.chartOverview - }) - ); - - setLoading(false); - setChartState(dailyDataArray.length); + if (isComponentMounted) { + setDailyDataArray((prevData) => + prevData.concat({ + chartData: result.chartData, + chartOverview: result.chartOverview + }) + ); + setIsZooming(false); + setChartState(dailyDataArray.length); + } }) .catch((error) => { - console.error('Error:', error); + if (isComponentMounted) { + console.error('Error:', error); + setLoading(false); // Ensure loading is turned off even if there is an error + } }); + + return () => { + isComponentMounted = false; + }; }; const handle24HourData = () => { @@ -595,7 +617,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -761,7 +786,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -851,7 +879,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -982,7 +1013,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -1040,7 +1074,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -1111,7 +1148,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} @@ -1196,7 +1236,10 @@ function Overview(props: OverviewProps) { ), chart: { events: { - beforeZoom: handleBeforeZoom + beforeZoom: (chartContext, options) => { + startZoom(); + handleBeforeZoom(chartContext, options); + } } } }} diff --git a/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/FlatInstallationView.tsx b/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/FlatInstallationView.tsx index ce419e002..54cac80e9 100644 --- a/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/FlatInstallationView.tsx +++ b/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/FlatInstallationView.tsx @@ -1,6 +1,7 @@ import React, { useContext, useState } from 'react'; import { Card, + CircularProgress, Grid, Table, TableBody, @@ -16,6 +17,7 @@ import { WebSocketContext } from 'src/contexts/WebSocketContextProvider'; import { FormattedMessage } from 'react-intl'; import { useLocation, useNavigate } from 'react-router-dom'; import routes from '../../../Resources/routes.json'; +import CancelIcon from '@mui/icons-material/Cancel'; interface FlatInstallationViewProps { installations: I_Installation[]; @@ -29,6 +31,21 @@ const FlatInstallationView = (props: FlatInstallationViewProps) => { const [selectedInstallation, setSelectedInstallation] = useState(-1); const currentLocation = useLocation(); + const sortedInstallations = [...props.installations].sort((a, b) => { + // Compare the status field of each installation and sort them based on the status. + //Installations with alarms go first + let a_status = getStatus(a.id); + let b_status = getStatus(b.id); + + if (a_status > b_status) { + return -1; + } + if (a_status < b_status) { + return 1; + } + return 0; + }); + const handleSelectOneInstallation = (installationID: number): void => { if (selectedInstallation != installationID) { setSelectedInstallation(installationID); @@ -95,10 +112,13 @@ const FlatInstallationView = (props: FlatInstallationViewProps) => { + + + - {props.installations.map((installation) => { + {sortedInstallations.map((installation) => { const isInstallationSelected = installation.s3BucketId === selectedInstallation; @@ -200,6 +220,57 @@ const FlatInstallationView = (props: FlatInstallationViewProps) => { + + +
+ {status === -1 ? ( + + ) : ( + '' + )} + + {status === -2 ? ( + + ) : ( + '' + )} + +
+
+ ); })} diff --git a/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/Installation.tsx b/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/Installation.tsx index 4519132f0..b673f0d31 100644 --- a/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/Installation.tsx +++ b/typescript/frontend-marios2/src/content/dashboards/SalidomoInstallations/Installation.tsx @@ -1,5 +1,5 @@ import React, { useContext, useEffect, useState } from 'react'; -import { Card, Grid, Typography } from '@mui/material'; +import { Card, CircularProgress, Grid, Typography } from '@mui/material'; import { I_Installation } from 'src/interfaces/InstallationTypes'; import { UserContext } from 'src/contexts/userContext'; import { TimeSpan, UnixTime } from 'src/dataCache/time'; @@ -15,6 +15,8 @@ import { Navigate, Route, Routes, useLocation } from 'react-router-dom'; import routes from '../../../Resources/routes.json'; import InformationSalidomo from '../Information/InformationSalidomo'; import BatteryView from '../BatteryView/BatteryView'; +import Log from '../Log/Log'; +import CancelIcon from '@mui/icons-material/Cancel'; interface singleInstallationProps { current_installation?: I_Installation; @@ -174,6 +176,69 @@ function Installation(props: singleInstallationProps) { {props.current_installation.installationName}
+
+ + Status: + +
+ {status === -1 ? ( + + ) : ( + '' + )} + + {status === -2 ? ( + + ) : ( + '' + )} + +
+
+
+ + } + /> + { let path = location.pathname.split('/'); @@ -43,6 +43,15 @@ function SalidomoInstallationTabs() { } }, [salidomoInstallations]); + useEffect(() => { + if (salidomoInstallations && salidomoInstallations.length > 0) { + if (socket) { + closeSocket(); + } + openSocket(salidomoInstallations); + } + }, [salidomoInstallations]); + const handleTabsChange = (_event: ChangeEvent<{}>, value: string): void => { setCurrentTab(value); }; @@ -83,6 +92,10 @@ function SalidomoInstallationTabs() { /> ) }, + { + value: 'log', + label: + }, { value: 'information',