From 3c7c81df4b64fc8718e1cde6f9d160c8611a0844 Mon Sep 17 00:00:00 2001
From: vlobzakov <39057925+vlobzakov@users.noreply.github.com>
Date: Wed, 16 Jun 2021 14:30:07 +0300
Subject: [PATCH 1/9] JE-53455 onBeforeInit quotas validation
---
docs/creating-manifest/events.md | 2 --
1 file changed, 2 deletions(-)
diff --git a/docs/creating-manifest/events.md b/docs/creating-manifest/events.md
index d3edb498..52fb2254 100644
--- a/docs/creating-manifest/events.md
+++ b/docs/creating-manifest/events.md
@@ -1366,8 +1366,6 @@ The *onBeforeInit* event is executed:
installation dialog in the dashboard
- on application installation
-
-Placeholders do not work inside *onBeforeInit*, since even *globals* can be defined dynamically.
You can override all the parameters of the manifest, except for:
- `type`
From 8879ca6730d41cca866f3972340e8d76ac762092 Mon Sep 17 00:00:00 2001
From: vlobzakov <39057925+vlobzakov@users.noreply.github.com>
Date: Wed, 16 Jun 2021 16:03:17 +0300
Subject: [PATCH 2/9] JE-53455 onBeforeInit new placeholders added
The ${account.(key)}, ${quota.(key)} and ${quota.data.(key)} placeholders added to Placeholders
---
docs/creating-manifest/placeholders.md | 108 ++++++++++++++++++++++++-
1 file changed, 107 insertions(+), 1 deletion(-)
diff --git a/docs/creating-manifest/placeholders.md b/docs/creating-manifest/placeholders.md
index 32fa89da..abad856a 100644
--- a/docs/creating-manifest/placeholders.md
+++ b/docs/creating-manifest/placeholders.md
@@ -28,7 +28,13 @@ The following specific groups of placeholders are singled out:
- [Array Placeholders](placeholders/#array-placeholders)
-- [File Path Placeholders](placeholders/#file-path-placeholders)
+- [File Path Placeholders](placeholders/#file-path-placeholders)
+
+- [Engine Placeholder](placeholders/#engine-placeholder)
+
+- [Account Placeholders](placeholders/#account-placeholders)
+
+- [Quota Placeholders](placeholders/#account-placeholders)
Placeholders like `env`, `nodes`, `targetNodes`, `response` are dynamically updated. They could be updated by their requests if they are required to be updated.
@@ -1249,6 +1255,106 @@ onInstall:
```
@@!
+## Account Placeholders
+
+To ensure ability to process user's quotas and collaboration the following `${account.(key)}` placeholders are available:
+
+- `${account.}`
+ - `${account.groupType}`
+ - `${account.bonus}`
+ - `${account.hardNodeGroups}`
+ - `${account.createdOn}`
+ - `${account.updatedGroupOn}`
+ - `${account.defaultHardNodeGroup}`
+ - `${account.uid}`
+ - `${account.isCommerial}`
+ - `${account.balance}`
+ - `${account.isRegistered}`
+ - `${account.updatedStatusOn}`
+ - `${account.status}`
+ - `${account.group}`
+ - `${account.email}`
+
+Placeholders *${account.}* are initialized on demand, that is, only if they are used and only at the moment they are required.
+Placeholder values are filled in depending on which user the installation is carried out for. That is, the placeholders will be filled with values for the collaborator selected during installation.
+
+## Quotas Placeholders
+
+To ensure ability to process user's quotas and collaboration the following `${quota.(key)` and `${quota.data.(key)}` placeholders are available:
+
+- `${quota.}`
+ - `${quota.maxcloudletsperrec}`
+ - `${quota.maxcount}`
+ - `${quota.disk.iolimit}`
+ - ...
+
+- `${quota.data.}`
+ - `${quota.data.environment.maxcloudletsperrec.quota.name}`
+ - `${quota.data.environment.maxcloudletsperrec.quota.description}`
+ - `${quota.data.environment.maxcloudletsperrec.quota.id}`
+ - `${quota.data.environment.maxcloudletsperrec.type}`
+ - `${quota.data.environment.maxcloudletsperrec.value}
+ - ...
+
+Placeholders `${quota.(key)}` are initialized on demand, that is, only if they are used and only at the moment they are required.
+Placeholder values are filled in depending on which user the installation is carried out for. That is, the placeholders will be filled with values for the collaborator selected during installation.
+
+Placeholders `${quota.(key)}` are filled with quota values, where **key** is the name of the quota (for example: *${quota.environment.maxcloudletsperrec}*).
+
+Placeholders `${quota.data.(key)}` allow you to get quota data (for example, *type: ${quota.data.environment.maxcloudletsperrec.type}*).
+
+Example:
+
+@@@
+```yaml
+type: install
+name: Account And Quota Placeholders
+
+settings:
+ fields: []
+
+ onBeforeInit: |
+ settings.fields.push({
+ type: "string",
+ caption: "Account",
+ name: "email",
+ value: "${account.email}"
+ }, {
+ type: "string",
+ caption: "Cloudlets",
+ name: "cloudlets",
+ value: "${quota.environment.maxcloudletsperrec}"
+ });
+ return settings;
+```
+```json
+{
+ "type": "install",
+ "name": "Account And Quota Placeholders",
+ "settings": {
+ "fields": [
+
+ ],
+ "onBeforeInit": [
+ "settings.fields.push({",
+ " type: 'string',",
+ " caption: 'Account',",
+ " name: 'email',",
+ " value: '${account.email}'",
+ "},",
+ "{",
+ " type: 'string',",
+ " caption: 'Cloudlets',",
+ " name: 'cloudlets',",
+ " value: '${quota.environment.maxcloudletsperrec}'",
+ "});",
+ "return settings;"
+ ]
+ }
+}
+```
+@@!
+
2TCckHCM0S2{fecxTxBor%jM_wc$~pH|*{cMGnGx7gh5m_X>LOnOiP&cAedy^)sL z&hKg5lm8v?3EYMZZt-uS) T;q)xRzYaS)W$f5q%CoI3BT>*@rh zK(I0=y8oKi{M*5_?iqBL^#8*J8?AEvuga|ONR?~l*0U`&(sdvvYR(MEw#vC!iRpij z1@?Zze 2B?~d2h-tV$Z1*8=Joh3qsVAkQ)c)dF}R+*k yRt|dhm#YmGpdu4AS zvE{;FYa=B=usEkVe4&C|50wZWCK`YSPji4M5*u_?L2ba&ow&TbcmaA#*XWHIlZGwl zjJR9;rfAXOi5TRc{*lzDFY+8y6Gbqzi^nQ?aoP}1+IkT2)%(KI?6_io$?|l1th-yA zS7fLa);FNk8J) ^GF+KZX>0^+u}S+8uLrk JE}@{y?{O zh%~n$8O$i8qlZu7=dI;s8yRN7w4_6yPX604&NMDH6J} QR8pUqPTxN_dI`iMz^RDiKKER8n?tyes~eI z7vscsz+2YfEgF5AfiD|9QB EW7?TAeFW? zBe97iLdjMb&`xcBmO~}zbeV#w_MNvUL|dw=25gIPaFF;V()vs#b9N0+BblyZzF4Q4 zYQh?-dk7!ooo=s>S~P>qt@|CPZ#DZYmnXMhIBDDQNA9B^GppTeIo7WlIec!9`=u(U z0;`7B&ObwMx@u0(I8%t;_ed!400VB`CAj>CV?n3x4!IqN*n7 j7+M?zC>#4G!hT*X(v6hjr%V?7iRRZJ?TI zL))8Ke!NPZOd-`topBoQZ$Tv`%!W>M`rMq>7(;*7y|OHpj|CaHULi_KpbeGUnNsmh zK?e}ya@L%~EZ!!#>BI<=qT;{R79YcHO)iW|$jz9!7>(lF{p82JGKCD%vl9g^;L;*v zYArOWkr=+8V!auMXKLquQ-C=#5Mv_c@ee|U{!NF!(v@pX?kyuN20L%6G5Y1&fPv*s zCUv$iX#-PCytS{Qhzc+`To^G=DWyTFY@&`$urs_`X1Htu`7HZWhBmVPZS^TU#sVl_ zIGmoIKX?6MgHfHvQ7v_AXxUAq-bPP$`bNElF?vG6sNQBmLE&LW%Uo;G(99R>$I?F@ zg-<&m%=-hcsWcW^#5g0pV!p0=sV^&wqd?_Dg$T}QpP&3MG0Z6o3cB8j$!Ck3=FHK` z`?##l{slH3iejRJ1TYSpCB=h)85!1PnZ^Rgj@Ann0S+I7@3(!yB8%8hXH cph@%M0c?6HrI&SqT(e76b%GQE7V|Nn;W-D3{>Y%iYve01!4x1H# z;)KHbemOv#h1~U9A?ckSyK+)XZnQXkt6!Nt*Q5f*?Z*YK?kiIQmm^(1dB=*8tkLWr zsD6lybS__B_w~mFwRPuZ#dJ`51+B56A>D1spn(HNo#g<-O;+7xTC!NhwCuhA`=1T9 z%k`dsvPl^eBe9p0ogbPl7*8jH@+KE ~8bqq2-bLaFRHmTD~>`JZKN!f<9SePjn%(-H}! zljOpi>UQrA!*}apbtx-M7;_2EyB*5E)37JvsK*CYn0; VA6^87^siBWC9ag+0+2D^2kbO7MH&2 ztRo2 g3CA_>*tZ9yKg3<}0w11S{;(vlJL03G-~YgqUTNRi zKDIZkwXRNmv$Z17<3Fv@b#B~2aN!bXvUS441FlXessZu}fzQ}{ E;qJFOH+1jOBV7RKFUAa5+Fq;xs#U<@`!l#q_YNlJ zbmkEKr!zTd5!k1}ymu4odZ8a9h 0Gx1m+tRq~WaCl2tje$#n6Ci~aA{ zB7+Enhoav?Nk0dF+vsu!e;LtPs#)#5cmZS3ZTAxm@6sw(;%+-R{PjjvkN^;1FiP!+ z!K*%Nys&Mo-;1GPK&jAsABRvqTx7Afhi*B1lA~(mNZHUH+ZV*JQr8xVuZUT{C?j2m z8;{d)pj>P$JznTcoBMfDHvAxbYB`pzI3ZtMHpEzyR)vJ5)z+HPVN*fAuG;@X|7&ov zYUfaSEw)&Ot>G<3gMwR1{oVfSYp3&uhd8}*fH!3$JksQJmHst(Q`Uxi783dW-j>!- z!H!>Bibf=2bXW9A0Rk>voR>QLMD?FSXH#NYwcK8=>J;NhO?YSx8d@_us%wqR9~vsr z(6r&`8R^*TJ|UO_4H>W1RRhUtgPugGGfBTE>Ur=a7a>;Q@YV;1)E4Yyr7${{u {ht;a5Is#=$J={z3qci3p=s0S#|LmD5!Y@r* z_vr#!vzX~xiBqY!`2Og2VOic7U9?}ztdZ-<7>p4hw(^!G-O~!_Ip<`WN7n2=WPSfB zC?SQ=R>+OAMWZxaoJf!l?pR!dtWm~5Q_?qg8>F7fl(5=hVkeA@|GOs#1YY>tVS?92 zHz|a|77|bD+a5#4R5J5 Y&aKPhhs<$;dd)5ZY=GD0b{|% zB#d8rixhVA*=ml~QluTKpP~1`K3d&RG$}?8_JNurFfEMPawW!;v}!i_EXFLHF+A_v zAuP vBl1*EZyM84zvwrDL|%r#xI4+*;3Cv+Db_YekBEwv8&8W9k4ZRauSM&|1^ zz7%p2rUq63#MlyhtcJ5;{U ?$*T9jCi*B0EOfG5QT-Sjh ZS>Y|mE Vy9NBbRrh_bC`3B6la0yDNI+-1NAr5*Au==?-?eO`9}$~ *T7G{Pnu5#-6I*gh;K5Ax0MO{)fyGn{3 zNf H~N_DZ37^d`4J%=m8jBo*QX5#p?xU11t=G-~VPCTMJ|xDPiL8jN TqQY v#1X+K)vZz$OUszUQB0j5Qql2HU}}2(oI(=is>R;r#u?!iMmf0us@UlX_sn z+M|88stK+nIrDmm56Sq!SolB$s(YmSQ%QJSStF&&cR-<@IoV9&>!Q*=W>HsX@QaFg z4A}}91-X(S>0>h60(7K% @^COs z+P;mb`p4m`yP}x5CK#fN^Y;qb$ND>6pCH(k=SF&ecGpm}nxKQh{6^_8T!9Su9OsR? zH{GP5&_XlsgnqxzzcMZ-v;C}>es69taCEb8 DQ9%kh%c9q~STm&aq z4@Ayg(|kW(kdQ-Qwto=z1^afzMRZ(lKNmo;ElG*VJrlskTa-l`Tr4QWeC(U@zKNFA z5YoWEnBh3GG}}AHqIYP^1{u-|Xtbx49L3ADxpQzuG`-y{adLgd2>o0dSpj+bw=l}+ z|N2lPpv@(Cp28JW0#R-}JYiP!L$0)c(DHu1;kCR}|2Ex^A@O>g*ZMHS89o9#t4uZY zdCsLvM;ohte7qaA^%}tZxYpyZywy6AMc}ZtCNUl&h>}%}a~+-4QB@U>P3*op0&^PK z+Lyn?EKulpzU%tD(wT-LY4R7YDdeEE0NH;$h8%jo?_tkky~UsDi&1f}I-5F+ckB~q z&w_=ZeYn5ho*_l_13jYRl!1)QNKA4rn&8S5cC&YO-5wVvgj+araR#J#C~A&?A&vf| zI>-fEAZdF6(BT0(_ZN}fK$q?gQU2gdu2cd43%#=V@oE>R)#$m!-Y8jwTF>B(?D`KW zI^0Kw7+hsHa>|4 zdeg(nH*R_&f;O+r>~zZdJ~e_wd^|~@K7qF^Fy=X!|8m9}v$#37NP$juZ#w&r%SMo> zLyH^>*y)uNgdHB8>m^(4lLZ(npSYHr**|uOv+n9adjn3GW2EP@(@qCRdWcn86 zS)C;_nsU#U)7>b3QSa$)r^E6Pg2|Q-L+5Vm_!)R _E7#M&7 zs5^V+V}l6!Lv(xe&dH>+C{YaEZ}5f9$|ra~)>|xGSadjn(v9ztHbv`G4f$owZ8Sjq z_xn7>MbEC{Qv3iU(HrhmkM3~1CnOFHY{m@L!s2P`XY=6-^DgDvxxf0L`A&6DPj4p* z(Vi(IhP3p1OjyU6_?u6)uK1&p=hU99TQa#kK`%Q4qHtJ9nI7H};>9)!x)*rzdPpB; z7&9GqS&5xES3K6%;QO*@!7{aiMU)v^^wVqLcpl}7s+{)<8xWBsM4!5%pQGXN!a58| z@EA6tcXn{3bv-rCdW8CFQhx!?&naL7v(v}gsV9A+$rB0h5I836D{tcKLk%1At=9UG znMPw1%EdEF!I%l%%F#($jj%cWTv)~|4AHg@!PA7JF5=o5|I^g34|GNbC#7PB0YB;21H6IxUjY-CDn zwL-LS@D~lDrUq>h&5*~(S)JP_L|4V^-sne3+saq=j0J0-5B`0(EDo57L+u ^d^l?#;NVeeZN0nhixSAh}Lg;|%wBWL65gDyu`S3BAFC}UL zv5c P9n=1ta}r4j zHZ3gFVQkPlRb@jQE?*SEn5&WqSq&q>k|@v$?^bwO)j#r 2~R@@O+{|4;{>LzIV@c@wxdj~PWNK$Nf0 z2pB!j&lXK}8Tq}Oze?@(?pu{M*G8wEF;ju<{=u)gWnuXp=`ebZV7FNBnHdR>c)43| zgzhf|U4e>@D}YBR6C{2F4h_zHEaF^w3jXS;`MQ#O$<6*i%RTHv?}U`}%^x4=opp4a zpY}KS WmY(M%xy%8zBc0Q+RFNA-rkT zBiWdd{&>v*z?`TNfCk}D<_;6`FW#%8J`N1E!&2ZhagyU3B$gn)lpZ9Sw#xJPGp{C2 z7sxgvGws}S5 MtEbMPAN~^Az&NFQUrWj`x|32V29Ch->2aw0i#s3qYjk%!9w( z?9wK_ZrKtza*~OkVZX8vmCF_49O;Oi${Ng^`WYNBs%4Xb<8L_sKIvnJ$MJB}yLYX1 zy+>?b48(Ck(CJDq+A);G h7WV?V^D1Orysi@VIEu;(paCxbrY@3R@wU+T~;cK%Fla10HYD2KNxT zd9H?5ga~Ne7+$=H6I$<(wmvM8cixR?rV-3f)SkP5?v (~R!Z(3{g#m$cdz_%+mT|s za8v);v;+*)osQJ9zSS7q{- zle#-7I*be U4pCeSiS;R9-G@&d3P_am9T|1 zgmMBP&=sP{Y~9BJv;a9_XmKGCt;NIj G4>GW@?wre~(p4i`Jc ziZvVIQ<85L?b*IDHiA-3d#Kt)R~*>{vx|4PKaypvlI3X^o@@G5<(6R|dCT>oHhbD| z%we^s?P0N}X<`M}0JqW+&po=Yu7EvCe#{-;Yx*)@n0>wHm!rP(d&sHdC^N$nW}6MW z#=t+i)3sRy7xU*3!SGe+oeZxyO|(&1c0k=rP_w<=O(lWV?;ii`ViPMJ#x2J=;NnrB zN6dSU&P7aZ%ARt{H^B&wsQ7_Dd#Pz<{0eeb20z-1Btljn>MDu#jzA&0e=U#86eOg3 zyZZe#c_O+UAkGGp5!>bV{szaCl@ltYe8@t ~R?7sq@(!b6WlY$cP2mC(~~B<-{80#^e{T zz5RzCa5#|jEy*kyW5KZ1Nr?*D*E4s(|9B84(Db!|u8sd|kBNe*)?iT@iz?&90A9Ql z+jiAUSj!{b&UNJQ*PBcBK#L9JyocLVb!!|sE4rB!KsPrM>n?<%Wnnl+85nfPkrT iPg5&Bd)yH&KV2yapAlqes m-+AOCz)y+NL;;}Re6n4^P0CbPeG=eA2mX;39q|KQ)J@0El<-A1@ zL^5?+(O$JETV5DN2}M)=?t{UH2H%F7Zj~9#t%hntBzNPWh+F %zP>`s{$0?a zYlwASaUFOEMUVmkzQ8@cyxR}`H0m;e0b0wCE?pBmiw>)@n$RdJ1FqF_KB&Ap&YA6^ zcm9d*7&K-A)(RHPSyQ%kR354p;x|*y3;JXf5Zst=N%`F#OrV?Ka-WEKoa$;$Lqwj* zPri3zXzdpnw(H}8;}5s;;w^}Q0Jy!POH|wdp=dKczX_S()tL7qm>lnGvs4V0Wa{Li zy{qb1 $jYM0iX|T(DUR#U!%N&;U5RgQ|FQGBV z!J@>NI9s;416_)xC5`@ApiiW9kLSnPv02b#$;{;OVZHO&!5IqVSySt|-Ub)NG{s@t zg{f&k)DbcEdALJ?&X~(wyyc1&V|VC=qlse?h0_5rXKIQBrF|9rBaf{ghoE7xvkayH zC%>9W*>LzTrQwi6rt=i*%N+~Zh@3M)*Iy=_sT|v$Le!Gp*nOa;m|Wgw{&2`ek6ei2 zl~TMsz!mslid_v+ys?`)SfKXa(Uzj>xC9k!UmF<}C2$SLz6o8PshRj{4)NQ)bvw=sgDBh-r0q%d+Ni39YZ`uS?4l{iBx| N zDz4B1st&%Q+Nq#>g=@u|BA8B1Pvht%`n;JIZO* BGa6&zjY!r(l_w|E%q7AKzV8-QSg5Q zp=XmBb{-xAb#3wOBBQeR+E~B1)7WJr-6N9?b$-;frMHWuC9nQ9E;RX@#36PWc!xeo zER)2Dh2OR#&27h~9v+yz7wl6(fGAK&+xfo0Nxv1L4_~^#JC&0HrMDcf-kmK90^NP1 z8-_?s$Do?-?1p_C;g$Gi`KT<6hukm+x#ewVRL6`=5@QMCl$CKnT{_?~Ys|L6sq(aN zeRY91p-q|8TWxT`NN$3p#0!zfa^tYE9HmOTovY3r);Sz!?}gAq3}@_*d3jok)nVGQ ztYaaxwE>Iy+CxL$6ZNVLn>qI)xZXm`a^Gq_#`6hrmoi_Je!w+T?xp!D`#Z*Zi$V%- zBsu4_wXHBZ!~OxK&h{oOBS~i}0E^& oXn4w5xPZhxv`; zZVq=ol%5aHkGn#VZ=1KLEROZRqFn~bWhCS&IgHVk8M?#B@XQw8oAmgUF@ck$oU-4^ zy}3cAoBc&j^m3YbNY27lh51;wGbdJl_VuCj&e%0jNn-UitwEZM@Zx-XFMQqwd}$8I z09@gva;&~D06ifq0$Ak6Y{3qQ*f!`Iih$XMlK8Z&@lo| HV+jkyPd%p|Lv`i zTgOe{J;TGfS{#e@kND6S ylgfJIskhpsM zC3Yx08R9IiVpg8&*yvBQ?5Pe@zt8{1 7M0s|A$T&^p#NZM zzeOH!)QWI=U(w4J{G7ODaGAovtJ5n#yH8UkL@={uzHvTsJ74*uOSS4}v9)|@%liaX zk~X6;)!SR|!SQ|@xGocLy*)u$GWK*wr{=E>rT6ZkejJ8>GTkydwz~L2*BrpsANCOG z?UTmZ0fh~j*1tjFR-O5R-1%u@L~2GsO|cX=rMbHDVv&%^g-NMCw^Yf#UIBQiI{p{I zrfvsq18>h4qP(0PNTs)Axz%ezw_d`RYC~G=R$HbAv$-3+h#0TWw>>aDBI=#Hq95oz zS;i=_Lss^MbLDjhJwx6^Dmz#Nb4|V-5bg(U6dztK0f#2EcHDek?G+gZ&tfWmA4RFU ze2xiN7jz)?4v5mFVA@MK*G_KSb328syV|$(MBdj-7Ms)y>+c&zH1F1Uss%4dY_|co0D#;gZ$|HCs=cs z4dGj2#Ng$jo6OLO(a)C9Wqyb2(%jU<+1=Rjo!w&Kp7QfZ-9~F8=4K_a)y7uX`LaGQ zdqqexpi&+vR2XA;3d&8mdvd$*TnSh`8QKGmp8!+prV~YF7#XiGd~MD&mH~YCgp6Ca z6tTSaqyX94xjzer+--p)skQ|q6rik+nbLk|JBf28-y3wFdl@>$4R=Jq+Pa;EbL-94 zUW{7iEHbB3-LtPcpEr){My^=blr*3B{564dZEpW*HHZ@>meO}9^Ue8D9m>ao zPm{ WI5$! ?oS% zq}wexl%xF$WzK2h()V`5GB^Hq`xh_gmQ?1l)D|MjmBavu*X5QZiO5SvzXr$JU@G@B zG(MK$plu|JO;fNYxF3b+@IKH!C
Qv3FbgZ5QG|HwD%tUD@yrs4irT+;K6 z_`=f-LY0lmqG!9$m`DLPRbn3Xv_%`52uWeOcx4Re6lNc3YtoGX5r~oHcJJD$nJpy2 zBy6K*-2ntu;h@+}c#qLF`n9~FU$pr$_V`>=_;f9dM#}q6SGVJ6wY(kf?N#l}o@dkk z$p?NAa_`|HmUw+K7ch4C34dDrg{olF<5MB*-`MM3A6$R`HVi(ThZXYRb^j9tQ4HID z@EPep{POX#_`RTN82kW~s Kwn0trNUVH?keR}wFGH?xAFTX`I5}dyhxh_X`dR>1_ z0r-Z >mHYU7=!7r29jxYSzj9E;(cO!Qrrs5{lGg9p)+aM^WX%<;H(Ny@F(e8v%G zVnH3$^kth$frLPh;jeL$$!BEFDAS>O#W`#}9XSDPWy)C&|EV{2G%#o`&i4LP%% zyl`9M_8^!Pa^F#~WB5@#15eXmwMZKX8&2#ki;uPf8kpWK-u`d~3Ep;du6VFya AcvWdpB$PeXdZzs9FsoIY@-9vTCqFl 6hLky&+ow7w&C7L)zckJuf**gPettYWGQRpL6(OJ=J<-} z!;qws|De(YZ!Di?+_K;M{vLkn#SM)yP26l? )%QX_pR)f>McY2meQpszP0B! zDxPK(4sN_Yzq*^9EBJm#K3Rao&X^^kG%U>&qREf;DC8(MWTwNwbP4eLu#0+qpJF9q zk27)!oz1qU4i@*x=(QwXJ%diDwB8wz%Krwm)aT0ycO{Tpl)NTaefhQvirpYzA2{`J zG350&6%hyqM$_0L%XBV9S(NKQhA~ah3E!+r3z(zKl)1$Jpr<8fMpP8aR!HD{4Xe6? zVlN3Nu&(#?N#w&@@i`)sw9j8i<; nH_C1Os7`J1RC>!qR?UTU-zl zNs+TI3jG>-K6Dy#oZqA0yQ;2Lstq M+7*l?6N_vOzK4zlL-Z1E0e;ehv^ zu&+p7jmqT>`8l-OC~3Fk)i yVtOcezisLws$F71iVN2uvf&8 ze>-62r}G p294l00o6PCVcCseZw^ZTrm6wTs`0?1Pn>zcATUX72Q!@9I?AOHzHwhD)0EE5yje zQ)&0hX#xMCQP-Ai=3J`wW5Y&HVDF^a(9ut-6lZ}R$|jUxA%oR3r*|`A3gHN1=Aj<4 zX>9_SLuLILIwe?zBlGoy|Dw`$Uh8zwW)3a?+}qQ-3O!m (lzrO0Rqz7+`L)Q@{y8c*9pqJ!C%#r<{bG9*Ex5@9FXZNu)j3l6+5J~ zoQJQX-BDHb0|U45 ^gIrr~@!;?Ry!Hm#qt5u=)Avp+L0 zuu|{bXy9l$bCUF)l#3Y54VG-+_x8fS?*3-ip-uH|TyTH>0xX$W4;8EIwX!h3C6;(u z-4|q(>%8KLgVN;#t2-@cX_;%xwg7rKt6|un@&-EZIJI71n(}_Gy}UlB*}||ge2M!c zzONK)>GL@Nfe-t$+9tYKEwReG#(H4uF<^DQu6fKV1d!!T(0f2K%e1E**BN{H0Q9vG zoLfS37ujsz!T_nC@xiGjR~L@44QxA-Id7W+&u6a4Y`8q4w7vjq#&7;|l3U8IH$S)M z={!MvKE`T=`2hf;j!eoPr^1Dl+i`+NwAVY*&gKIc4UJwsGn328p1qtVhBwG>Sz3>- zTb(aBHs1Hv)s0|Cr*3;w=X-A!aNaDwkn5I2pi uXwMUtU#CZY?>CFGwK1_y<;44t E5KTy#pqi??@6@W}3!JRDM^}@Sv@Arn(HVs45 zK)kRsbLx7v|7Y%=zzO-jmG8B(e!eFe5+*}e(^r7#c1mwJI3LFE{l1dbDp32cfL}(_ zTgDos|8ME4ChcAjzMyC(3n=rI0o<$hRTdgiQIo~&Y)LCdWW1l@v;0ZJkyZ3<8H%?m z$hjF%EojTHgU|>uHwf81tQy&pW=h~F8H5JLZX7fq(coB5)*zWoS&^LgpJ0(FX-4H_ z%`uR*dG-Cl&uxdV8t1f>gDL4UM7o0e(KulOBVQ;4`q9y6W`%^!nX9)IMR4VvX=$f0 zpc_xbP|*t@)mWXQt%IP1r8U9){VB}L4_7(s3-0)K?mg^R_6TQdGNlR!fVw(hq<`_o zS&X{t5eXv)eY&RtMF14;wfUj1oPTmro-*O2u^qX^P-I9rW}??mLh`;9baWahMiTR4 z1djX#W;ZI9JGt-4V@R0EeAj77TvFxpS2WjFt9^rni<0X*b(k?jq9iGK*ANsE|6};Q zQCVZ{7%qyy@ny%t`1{URm< s#SM#JK 95p_RLKzy(z#0Z!#(-`LBM}F z{=-qns_fsGCY$$K6p4a=&sxm{LgMoI(B?_s<_UOeCxzy}u {E$rS!y#dhDGRXYhc&;&vT zmU(9n9~3{ku?$z$lr)9H9BGiS8tjz(1u7Lly){69DaeR~A>!JU9hds&Ke%zvGdx{I zTq+4PQ{iA@GVDMNsol`!hWnrqakMgv%LD&-W|4Fw@U{;1AK+m_143tI*AKVqu;}*S zaZ%z3@_(6s%6S!2OIqtsq)xZDjP0TH`al489!i>QO>Pd`BfeDQGvH{Uml()t3BVGd z{hWs3!a?-u+b4Z_mHGPV?!yjC;Ef@IjN)a-IDBZUcN{@seh#c%vBN^2Klf^-)`J7G zBzP!tn8S$HXjY9p)^haJrM9D(zTG+Ds@5D#zz`@J)?=%-`&%?%C>StN*JhlzdanL` zTMm|yv{Sws;y_OKEFr%-5_9?GBLESM@D_d#&8P3C9+r(Vd-q#CBRH^8u6XfqJdq~G z+%dsyt2-ESZvUTAgHM_k@jk$>XgGMpg@azeFr<4$2=2Q7@_^sFhi9X|;{=%@N$6tb z6W COZ zI@=HP;f5@+gG4Wh$un>U&yKA?`65#D^sz8Ovp_c}_* Sayz&bd3(_~koO4e()57QI{AMh zm12v(D3(V>g@hy+Na1F0HdllZ#)~!f`4< *>o8;A=KIIZT4t&0) yx=}w-AUD2;! zUR=}&A9`1XY#xrB#URjpHgC7{gGawFhZss)hnEm*sf2sHlAdpg`7O!g4i^kbk#t@n zd@i6Vrr+>^0SiURl!2u7nMu4#Q7aBZG;gWz=uAZlnV`5)^YO}~*ToIX_}Xv`N4>9f zWKB*~*R6B=K1WA(E|@$a2Q63-$;Of(I8;tybFF(5HBqXfJwcd$CrS=Q{LlvU)E$`A zE-XoqEt51YJ8@ljM%&;NMBF}VG?ysERMw}VHk@C`-k3EqRH-Z|uiG~l{KFF|;pDa5 za`m(i((OgMfhH~}Nq;cJQjuq^jEYxAzss_h sKGFvhFR@Tvnc-%g3s*_Pc?^`uYwo#ux@rbybmE__`|3|)SyK1&)!5$3r`rw z5~zNeZeJ+eHTkJV<{)uw?i-dvR}?$InFL*O^h&hi;1j{lrg-k&P D%fe2* zD3U0Wt*%F%oC! cMo~RMPjpG z>4wBwL;r$rOJ@w>j!s1(KSX46rZ-wKyEhtRHJl+pC0{5-;LjstEee#B!WbELkH$ T0Iyy|oKWc9Fph*RYkl 7U98G5pEt5Tc zDwtceP0ulNM$gF!uP?~TX77GaN5l3Ngxdd19r-l9>?|y-SmJ+^;Yl>2NHkIkWkd4_ zRS2H(gk_WkhwcblQMeYqtDwUCY2|hvfK)_E5TsC)2!^I1ArW}DRRVYv7m^V23$j=R zXf!NMW_drX9`bc`_H4%V7vey|un7@5rUg osH4QRbq`xzeZ`z+em3mL z;FOyzK5;ajECeIVuGs _sO8oFg9RW>yEouO!1@e*(C0heqK@jz)he2g1h6o` z inA{fteTjLbxxvZqv`sm>==c;c?l}Q7#z}gs* zPAnugx+4S(l*0v@5{*6QX=ElE^_v104FU@y2L~|>m`&_Xp172%x!1M>xUI2xl j?^gXtfjmvE JA63{gt%C!%$+Kbyp9KIfJU??~z7 zqh0wh#i#TE4wa)3aA%`kmAFeY*8AvA-gI4)k!6`o05l~Q*o)M&*L7uoQ3lwwNkC+s zvX{i~{-E_;o6dzV&*G_1NEVL@YWyPRNsu`n39w_EP51kGd1HEtc@pdSLj8Ync8<}R zG~e2vBr~yX+qP|+6Wg|J+jb_lZQGnUxnsY1{y67+en0f;wW?Ot+TB%Mbye-(t}bvO ze%E5{r_l%DvtpOEQbZhC`Rc#c=w`OPAl2mb=f{T!xAEip4u`qG@fgY=rl5mKO=`%( zeZz$`B(UbgQsS*}f^hcXgf!HTt|4%~klTrKta5)Lc4!0D8iaH?oH9PVk@xu^guTf# zoJkS))HAe~#0LU$puaq7x`i{8Pxf0(@W JTmdl>D2VsQH9<)C%sFebLPI|Xha5S9n)fSoZ@ B75SIq*&_jWPx<}z`THucOT->YSR7H57tLZO`_{Bfv z5Nel4I*Zy(u$s$Ej@+vIzZ #?TUT)fA6r2qmrj5;3z2{Gdp3-2Nu{!FmdC zwyEw|NOn@uQexx{u1$fQH&KGA(b!|T%)aJdIe|+Xn<^e1ltd95JUpDvZlS4FLrPpl z>6YVn^(U}P*{}|I=s5utkMtXl6KpC1Lo>1MhAn=z3Bh8bZ91!7^mUycD53gG1{*o| zjj4bjZ!-K*b|!}S4N{SbDuF+;HGz}d6jajXX+VdCuWSayrnY$)=Sq`FNs=I!HBzkh zV>=$BXnhMD<{qDf5;k%jj4m5fO5f1qp+c=WH5V8y8AXi^2hrVtv+AFI^wU=)Um1Qi zAP6^Bt%Fp;oKi5=3A=4gT;O-4 XKOie-lTivu9*(KpJQIv^|-_~$= zqNwQoso1LP7t#EMh@Y;EPr)yVgj7x>Nf;6eiNVpVIAETeS&Xqs`h42E@IzWeG}&CR zWKbC{IqqBi-3z=^)jm^2clP}0o1s`jR-boT9n{W#vhxtT+Y579;Y-7hdFu zTi~G0^6 11H!@*K(4L=2ez#4cW(u{6I>vhkRP zMBKH7V+ehalsc#fYIWp5;c$hoKVxs_!UU)@Ub&$Pqp^KVsc}wN3f}SvpmA3N8JPHt zwR2tF-G*ruzX|__rVCx= 0U>fhXLfjcv5 zPUk4(I`^$@Wj1dOmF*omA~j9UZc~4hl$HI4(nj|##mb32jcLtz0?l1;GAWZdu=#3# z^M|qdp!#ObT$2jah{^z^2df6m$KJlhjGyBiQMzt!YQtmQLj2RDH)u$bC_`}a-S!}U zU){Miul;MgVRV+X34WjhV6*eBfvN3s1{x+qL Dy# z3Uj|_-L4p}4aQ=S6YjFi)@SjWhf=fg_*)>Jb}^g$AJFI$gr$&&7_d2&?Je2kG?v6I zP#CM}oQYi}_hSJIn>t<(Hafa%bt&-!ngHi}grYoB_9GPdwol7P>da7+QM3y$TXLO; zj%St*))X0H+JUf|`7S@?#ke1gs}8pgqeOS5fd1O6tY`aQ3p;6p;Uhg{>sADx%8bJT zv}tl8j%9WAWK>F=g*D-}l&&LG@_`I=;XA%wu{+&aLM<;F&o*vynD4J33}5xYEcIdx zR7Bcl=w>AXaZQ^czeE`KX)9K}7f*)?RmIu4blQ?LrcC;*CJzN;kgCt#ZcSfBB;}Fj znSVT0b|No9?iPtA2+3?`R=6aGZQ6yEzy-~XLKeS)r&0W&uy?2w! $CahES|r|D(OBg8&uX@Tvr7^+Y` zxKKV7&~H{BiwY-damH$IoHV=^LCPa7lVV#>i*2})|9r5nup|7KLI1nsr^*=qjDta* zjM*y;7(;G%J{25k1u4#CE9*R+rGh?{{^_|dQ_%Ep4VtofD?2P@8COG+knzq5vQl)w z602;{7sd-S7O6f);LHRZNa>R#{EisDSi|QXKz*UrgQRq>z`ZsC1~JQu)z>fsU8<%7 zWuiq)#YU!3`$a6uDi1^%0LC*qq4c_-ZW5$~wdx=!wnK(j*wBJXW=hj8O7!gZ0NS07 z9w2QoQH3(`e4PI1R_ScE1p;oiog<$ef1ebIK0Il #@4;YT&6xGr0@E3Fyy7sd@sLG#I%>Hj7J9ABFg-> z=tBx>sf#CKj8+~#v8*UhTvQ-F3S{mK3r&Lj7V><=+b~q;Hl4l-Wjg|~fc1)mtd6K~ z1lr&}?J9^gmv9<#+~P5kybWC_L zBV;%fdCh9?UV?gpo%Vsfx%qt0ctd*+n>7!AHr`mo1BII_UT^Eyz3IJoAjAqu{RuyC z3g((}Op<2?dN7c$J2aV6_C(2AIem`i#CU^jBMxi891$pkjg{%yA>MB6g24pWzxCr! zjh?+koF5}_R;1)bOV(|peQ2ynzE3-ENS|*$`~5rzwX3Z_c>|pSO)+{K&YV))mc20$ ziRoBmI&&+QsZIM+Fpg%89+ZZB?};I?og<#HF8x?c7ER%+EVg%xzHo^LRf9$@`hPbZ z-T(Ohut*HbfVxQI%08t6$aAJMaIozsx7pGclp_TP=PhxDZE=U5+Ts#QF%sEw#?Kr} z6HA*COh9Xn2{;UD>$-iwCD3SkbTQ?sy@BP?k`Gdw$3x22-#4YEVU-WQX!2HS@$s%d zQ+Kk&n6e(HZmZcVtaSzL>8OWkR1P6@gs&}})X}VfBroQ)uy*-h1=c%Oaj>sX{od-g zlkI*4rnBV?tQZ>bx;Yl^?~EX4ww!bD50f)tury|6982%JQ@crUXZ1F{pwWV^+0RLj z)PM(oe7PIpK-5gR-41*)7L;Q;reH`==|^l0UZfuXA=0{QNxw>T`$WgQ&ZGLI8y6>T z)PKVqVRClzd3jPnpndjCr9CTO8iq-xPe`;2v06~Ub{q@!Yj>7UE{e}c2%p!16LDYF z;juF^DFoOCq&9?a4lW?Kvy%1-!IU`B79Hj}fQB{$b!Uvrm9z6?K#Rfmb=ROsAq?L$ zX^*lLGBozisKhkk`$uZ9I@ur|cOo8c`?I4ACKxLg-d03fj&USJZ!f~!P&*&Xm=lwr z?xSkLWdrA>Wd)&2Ze}Ws$Urm$J18bl#F^W#tWr!;iymVH#fFA#Jj86+O*XbqdnOQL zCpW`_jS3GdR=AfeQ`6?i6%5)JuP%bI4GUS1B&7 s&F&Z9<3ndF__is%iTN2jyAk-Lg;NH}!J2X+aFzOu{Y4DmV{+B8Z=t+~O1h M24dLX2Nt{MY)H>2>v*1Zk4k;u~hcXW~d&fLb$mX+{A!Fjejnoo?wxN`E z4>w9-*9W%?ypJqe k{^Z)73{DH^PHa3QA9&qE}OpEe+*{hx@;m=<| z2!P*akUBuw`G%5fM>j!K)C5;C8$V!6Dz +-l^DG1QZ|Lv7rI910nqFxC5V}&{MRV_=1wn0q=SY}onA3r?CDAO zUW>fZHx3HF=_H7lsNkvz(D_OY5EB;uwEf&WJ&S_o5-}$mP5Om&;ppxPZfL@6j;aR? ztxI0zZe*(6Tg3!_cmi8)8a}b2EI!bqMh=7>m0}}EyoAcdS_yMViM-+%b*X9v%K )`BN8GvGB9p8jOROMDHK|7OtF%r8XN64;NW*vS<-|;`K`@!og>N9V~^`v zLpcB4+EGP|ZkY}Yjp}}=f2& uW%b#0bQc+(6Zxh(0wkp~OF{rGMpu=l@Ky`5Tu?T1EFiNuLQ}Jn{d@{^tfx@~?;Z zcZ%TuDH|k@_}^-N0uv |JVXA`MsA!Xs)5r4-PDV!JCs) z6v;>cf5e{z;=ijWUo*7$@6r5UwUqVi83>OpjrFfik2O|j%J?e`ttqReT*2h^mLbZC z|Bw0aZ$a~pATx|Lj*7)!?QCPeH+jOTS6Abl<3Vr#*PcF{qZ-+7zF*FOBpx}jfPiHM z;)fa;RfA}bk+^z<+qYf+F>!Z?APE|mgqw{V)NfInjMQh@9|DSt!AloyTXU(Ad$R## zCZd%1IW&);Oo$yPkl8oh?Pq|m!5ZR`(9N}wUJp^1)*HUci;vpEVk0w7z($y!P mR{sqF|qbPXjv zT70ryR&{0bAHF5U4m(96QQieK^A$O2o;al=L7;nYho3M8sttBp4o%T6t7&8REVf4j zOQ!T{$YDBScl>0lPXmlD#SzfYGrhSC4W&$@*Ymbazt-A{a=3a!nmWQMXFNIExo_aJ zU1kpX4d!IDXCi^*WC|Cq&^T_K=V-c+$_J3V0P5i76MV-HGH8_83UkMQR@}o#I&Y4` zCEYdgTV34Cr2G18ZG>|`2zy)oKt8LpyWD{jsSi@l{vP@QT=R@NbV9;T>1YJB_WZZVk$mH{P53C0o1@Wi+8WPx)x8Dr{dt7Fxh5=|#n z!mIHwPYJWq5-qk*P%QRf9(<`q&5`7rZXo*N^c^J+D=qUCN0_H4s0yde-&bs?ZEO*< zO`AuONY1a^z@SoJ@T(Iwz%5zs%`MqZgMlk>Me{-W)5DuIoGTp^+RT?|qw!?wEt@+J z6>26<<(kL2t;o4(AZYYo&IbZeRePtUSNyZ{A*^3NS*YRA)Br=Nda5s8{b*Q*Hi3r9 zf2_8K0R-@yB71XIqxhVhTsM~-ak?rY@Kq*Qu$2f}$=9xlQm1ulu63v4->)&v!xw79 z^6$f@mh?GbW#ji`r!^=J=hW{FzJez}t@%mE@k7y}E-JpYkORBJcH#UjsL!t^%Zv@^ zBmX+>6j}61s!$y}MT%bC{x4pgzVpiCxqMTp?igO+Z^bzr08_VivBX)y%Eex#W*KI^ zdf_(}Rd|8tJyK5X) o;0Y}5NPbBNP0dvVn ?H2u 6vnaLV1Pe?9U*-QsNy37ij;_6P=y0?6~xpfrf#l8!RGx4Du zFE$)K;Xh}lgx-~|wI65~d%*J7% K5 z)^}lZo?7eaGzlCATfND%#A4^#?g4qy=j@Y>CNlEHkXcW4I?kmh0Y dHHy z#s^OZePyhGVnW16tK+{*^GbYK=5Wm;GensTO4r73>&X|gKdnD*=2`jSg3C?Unq0U# zY8l=N44$hJJ)fOlfDorr*K?7qm|Tqw++ZtrbR?2Ag7rdmqrh!r1T6D+H~j%O+6_MT zr3Yo<(6$vKw!UfRXFSEtz1gfFA@dzga5ahu6rQYih8k}=-UhY$9j{$(1wsf|&1eX$ z6?`}!v^#PZAD`R^Hu?ik8xv=oKk(YO`H% `9*dwgn@ v6Fm%~<_gm7-;MosNc1VsVyX^@*PDzg^g7qm zMl~Bpww*hL1k(_{-jtk8M&smjMsvJ%4Oeypao#rwmU|ox7SLwrL %c zYKO88HTQb?7V*XxrdzMo#2BCqrhClo76elYq5iSaHH&X$*Bn{qA24YPwGMc)Ce2+9 zaY4&)4AoxDRTcvqk!;_)ndCD+U249fKir+u-aoaZZL5KmTSFg=Cj*tzeQL={T}ABr zW@FPE^z^5r1pdlh8L5S!4VZGz9KIU6x1S30YCJQ4sLWYy)g>pc+jRc9Nv0BQ`squA zOl!tsV{E(+7|~GN=Eqf-yZF=cY-B-%E!I+JqeZOPWA4S-!B?zN^!?d@f4cwmge~ac z2`COtP;c7DCIER|tjb<-H9GEJlZKr(IeA5~;wd*=y?B|#IF`#9;IEYcF)yaElv;-~ zdav`5#+|RSVvXY3J0OL}O^Q|62swq?F Fgl(H87p2Vo#vS?$( zm#cTgOiCrBFY_vSWklKzGcVaOBF7|Ui}TQnmf`M(`a}O(areF^YjKpH4NnHwGUS^- z6hbMUhrSr~2{kfZnVvU`7vaj?9ld=(v@5qnWllDFIv*MrCA;v#dIrsW1} zhQH*Dyg2lAEvD9}^(4h5D+DP58_Gi4W2B?omp)luGh7S!0%C29&ugqO`Cd`=q^)&7 zs0+_mWdRn`H*dpCj>C2ViLQSh_+g{3J^k58gMUxPFSsqDi?-DK4t@1b=PsuSsp2O7 zq92C76!vqX$eEM&t-z|mfG|?8HC>Tv_K5oOYy>JP)RH>iS}~=+1l<5wZmfmJ`Fyl~ zm7}FCm#3BKAPkys+@8J3Eof;)X9tEbn)V4fsb>E^Y0k!G388oI(~`FIFcr)CM7%SD z#uZiN>q%{(C@yZw->WCp!&70B8}l+F%1i*Y+sT5v*=+TH=!kJ7 _z;B`utxgM-Sjt5<-W9Da14*u;soRgAB-cb0t zGxF8#n}vYWjL;=EIn&cYZtr4bEdD3C~AdU$=&{TIDheHcL*PdU@?Nolxjt^q5?= zR-YovTRbyq(iC{iy~FoFnJJA)f0c)C2C@LwBFc%b_d@yW?fL2fPrZv5G?93qeL_6) zl5U})I3jGSr_OsE4EpchKuPjxF^pbp%AvJKOqhYZ@`g$Qzd~KG1|PKHk`mHiw|ga6 z =QsX}`pn5@8>gI5HnXB>|nM1PIK{^m3M5){icFIyoWJ-6oJY_x%p$AkSL zWmr58+WH-xA&Bco!}L?*Du6F+NB5WiR{0`lth#LV;pOFqhDXs4vh?VOwdgf2wkXy0 zsUp;Mx>OqfUA$1Zu8?M8x_z#g^`=##WxK<*5sdX$(*ihM&qbcH9Xk&yHio10SaxDZ z0h93E&L>Hqt`@pzyzL=`w*@D&DuWSyv-xIPh)mXl<$_-V*hg85L60zi=YvZ1&R4!k z{8Slkj(2NV3a3$OEcWBZ4C4cjn}M9A*;=?MhZVqRR55m{@+#|lxW|@ciE?ULQCAhu zGal(O$5e($4?-b~!Qj1*+eP-+U$#d>7lq$DPT&iGC2rm#j-H&Tig{48zs|OB@1JSk z`Godmm((0d!xtx-NO_@Nl`u`Fq*BAYQyGYCoA0kTuYprxUq F2itk}DJ zc>78yp$6VxV_Qou6|GIMIXOyCc>Ai5Xv9hL7{bXq*u*&1Eka*; z)|J@IX=<|^{BkiuL8|0ABPC8m-%A7CeNwTbJ$XKvt~FhF6g1&Hb$3%eP3v)B7)LY$ z+Py^H=<(PybUQpa{}3G1nwx^DW@65~KSX(&u(VA}T7hkvwRn)z2v%EF8JK?L-7dD^ znH*=4Tr^VJQET *D@q~P#$@wP zPAsG|zq`N6{FGkHistNJR+&(*=W1)rTVmG6m?E7vd>A~VOZVww{snFF*fC|kmmw=$ zuPj0gr0D43y5zV&QoDLyCYH_VM-yV}6J;_vpabr>Ej3tQO$>8Amd6?y9#ij!EP6d% zBTTz0)Lt}b;EeCyRG@U8h&|ctM-fo!K__;l0N2%^-AL!!rM3l842|7PS>rPdw2YfR zSk)GJyMZ+39|#t<>X DZM<9w3l!-Yj;NgX bMi- zSzfu4r|J%WNNg_&3VDQ)Vl8{pNAt||Ulw2k=n1~j0Ve$Q@!leS`nc^xVYD{?QH7JS z+cQw)1MTj<5JA}6tpsqJB+hDOJ`g9SYt-2Xq9) s 5rU(Q(KvpGdA}y}2rC^)> ?|OvQ+AsPl!+aW27yaxE b&Rc*IdJ7 z{2vTy_5h)BvU0oUw|#M5se({A%^%UpN~HjL)t1w2#n1*tP(}z-Ho2^#- w|d0|h2)lMR9u8lY>HszcX zjo9~VBLL}#8GLUKG=iu}Gc<@g+Qs1W>O8X3>Bu4HIogDnHV?E*1Zn*}>55NLw7#;i z(&WhSoA^{2+eDAg>BplNWW4-nZDYejudNkZ*AQ2a&-fLO!UbPz?B(0HM`k|1JMiHX z$JU@CqNpG7*LloxzE~pk`=*p9o|0qsvxS)1r7kPgN PnYsEM-zcc!RuP%S;dGXjp@ZA^A(8i~2{omx4 z^!O*>Yn-xO_P;zgO9CHzx%DnL#t=vH?f$L|+nO8zB})xY17yRHrlZ2L5AnUOzZa_` znH!M`1-}nQuIG*WsJ!ZJz|m%Mj)fO_m+7kOCvtbM@?l7bd&L16#FNTt!zH7}mmpo? z7kn`gPmiXHQTfsb+?6|710!G)0C9ilhJ6QP%a*jhJ!ND4s)!Ug8l&wGS!~UQnCy-P z2F{FqwC$oQZFWbKB@csPXe0Fn7;3mn=|acz^u)Yl56= aiOFr2e36VF@Ee3W 9C$`gzZU!!niB zasPnLvK@5~-jD>$h$4o g1l-ag0|Zqx&t!!KQ*m~Jiyp&XO(B1Zb%9|eB4fIt z@81HASIUl&B_XICq)}dFR49Luh9Yv9z+Ur=O!`FMLMhHqJ}~QL^M#VGr{>czW5Zbm zosZ?R69i6=&jTuwD4m{4aEwlCPsD$`CnKs;y8NnC7?WYSR#FZu7LF WMUtBAYHUR%$`BqH-h>_ST>_KPWbR zw9MZ-jrB}lS9)_Atk!4p+O^KSr%>=TUiZYk(Nz28It>|y?sGmO3Hu}?7F*}ehPl-v zcs~M1OOtWKH+`nP7IpSy;K7T*i#)rVV}RBXW mE24|^h!3EpyAu~Y z@Q6&u@|+yIoh9 Nzj-Ms{x# zY`BwoL8IUgjC`A!wr-5!bLqk8c7yNn Q zF15Zt$Nku2^^dDO5bc1{YPn2yYZ8Ez=$@yCUhe-8rtv~LhN$hEQVTVG(zD-V=}~vn z7Ee5qHomakZj1IFGg*4>h(*s?9?!*6GDfs=HrlGZr~86-Y?T0rN|UWNe!Li!Bx;8o zLt ExnA6#KKu(9Dvm63;V& zEv7wBd3+A$B63}VdKmeAfop@4v7#l1C|COTa62SU^<%sA%cBq|G=%=zirS7S8xs+T zCYVxc;9$x}>7A2^^*H`Q74h3M!ZgoT66_`OVz};reH(P_z!>*dH_s&uXhCXjFQJ+p z0TEo`9y;IGlcTJfBDv9TN?cBi5a@EjXFv;fM9+JAO}*U^Nk8%-BB`xr0?#`pgYZ!W~ai z%_o($XMGcgEG?BI$xBz!-y?WKgVgtl;@$l)cyLG~sy^d6L$(T47DHLie1O5$%L`q* z6I~^Tkz VA%RzhJMb8GAC zzVU2gqUsOWxFvS&A?#A&@`MU6WR?kK2Q}`->9Vb)i|6mfZNh3;>9KV2Mse^%FvMU< zVB&aRzR+AMpV+kHy%Q)0>yPlx%Zb$!v!UK?9gNlG(PQIy^@(<1BTc=tXE1{ZzHvE6 zQ~H_{vu^2%kvx4G1lmCyQJVafj>44=q{T)UqMY2R&N*J}^gE!;JIa+T#f5OM9wSu4 zjOT-+l`#IV-&Q2B*dlGndXUJo{s^h8wzIB9wo>7aVsc96J!lQ#goT*S{8GRVx~;Fl z40~((i%bEUloLRdObAksdutE&q^wa!#zE;Bw82SSZ3quzZ&vr{ Xbx$xx0$nH +n~niBu}A1 o2B{LD7<%R(F z{R1Rr7}>uW0j`rP(mq&^QGb}W9!NxjSc)*p>;2GZRBPhdtaKh1q@1Qfb+TZuxy9|c zkjSXg`R~U%QUy~&j)Ouc@_o#{@CO6l%|=>%Ziy9b*7i&SS;>ugQc$VZ5$FK+3lZKI zL+DD+XHIB+B)t@^S# xE1nd&UlP}WAA{OCpA0C$gpGpIr5dj< zq#oTLn3i0JisC?Ed}-5`%QJ4*!7rTzp6M$sCkC4h2{?3*c_-Ts!fDFNT&a7M-W1a@ zNS$nC0XcVXscP@>k$k4tsdRS_2|h*#_>Ko$++1?QD_>8DJ6fnW-G5w;h^*J7b!*-T z8oIwNYlxgZ(-~cTL7=-F?KEL=zBQn%?ctC!>gh3ZcgsXEtl&thk1vPwlByo=P-?k* z$;kHttd~;H(26qV9u=N^#`eeZ?v1(E5_q0s={xlC!TW+jTMOzAMqaeE=2aY8R!FFK zMWjI_Vyy3x`E*D^*DvVZEN=cl?SA}a3FXLOx%EfPXCMhKMqlA?9GBvnyRyN18MF&F zop21~+nSJYM~tD{JZj7lg#bi-A|IfC1IUa0Kxr8j)o{7JP-c4^i|Hvb7SqLNoQsS1 zWa`%r1Mx;c+i$u`Hj=qnIl+Jl96w_t9FD;@GTfuUWF7XKQ$y)57t-1n-_feto`W$f zs03Ys{j<}~?x_In%Fco*@mCYl+F+m2%E+FRF+mhfikKz3nZs0SGESYjD2-LXv6JSc zZz`P{EOCc?u&yof*#?_B4%F!PF4?5MmNG9?iSKyHUe9g6Q10!O(hj|8A9TtSZ3#S# zhZyz5_Io_}UGmkzgVl+0pv$U<6%s;4aFo5~1QM7si&g&;@zQt=+t|Z}7f-cOOr_C@ zY0h)n1J3cy*m%B?sa9MgEqY 0OVKEIg+2&!#5#DU4_DboQm z=%y38lpB=fp^p!a6yyr>>ZCc#Vi*?AI9mFwJ|Lxc%Z>Ssx3#-TsM @!FxA+s8>$&rn>?F7p ztvmW(a>pZhcmh4=IwhUmkwJnS-aD^pYG6O{si=QeqaKVIcd{Nh!lL~h_gJ`G6(Xw# zjNBg5bjF7B9Vep<5+2Hs0oJm@gHEZ9(gmnE#ADJXplZJaBDC*|R+0wqMrPf>bZ&hW zL<#d@HuP$-g0q6m>ZMbIyQOLK9UKN^u46MNir4#uZT54KTbuD`g=7^xs4+-sfCxOY zB9z3XfvO39W*3!AH9)0XJ}3Afp~fHS_fBLCwE^RR2Etjm54kO>LmjlrR}n7CNtrlc zsRR`L1v3a+`QiFiM%Fz3l7zQcZ@E#3jQ-_+_sBnRmS|briv~$KSYgf z6Aga5 9B)77)&LmolK1(=O(l(s=9y~u;8emxRkeCt$QW-V zwl|J{lwBc`8<^zObSwoJ+=YhlMGyiLk1onwVziNSkrU5~B6a*{@^~n}o$GjCb+54Q zeD0w*3 UJU(1m!G)@5N{$7o3#^;)Y86* zT3SsNb4@5k!% uz&b>GNjS=&sR=ysqx`G1vuMiNTsFrU%e@EvXa0 2 )0^=0*NB%!wJd`s^PUwr{Q!+wil+XfGVcWLE6 U1VleAC!?5-zj$sBne>cT> zaP^OdHNKk8w#lZ=2yN=lbJlkKTbxRi(hZ#xeC;xkN#9vqzOrr&_N7Z)WGCS>TXJA# zSuKu(N_wng;_Yb7Jn7muNCTO~(iZj|eNP~!z>p(l?N=XCNcv6OaE&I9XEbrKLaBl! zua9Re)461#ASc%vwrJKVy<}lEZ&`c4H#MHqlvmaooSc(1Rb*eHR jzStQOZTDQGYnoy~vFf(D2aZ+j-Vb4A+tG>@Ka8lI$9|JHX_jE= zbUp&kHuPCo+s<0LN1B-2z?vy^0hJ{a$ZA4T6`l|I(wC8XcEKTsf*2d%S)W)F`MFbArV>7!;r1J&KTb=i=q)Aot z;?!iK;D}CUPTFKW08ie-Nl!Bdsmx0@!~{x`VJqS9N_FrrCU6<*Fh8-lZ6)2(TBJ)q zo-}q3gJbo67b{5q2W9EgL6%f$YoskFJXv5lM3zFIDzL0$L{q;5{A^xR3hT%loEp)( zFnXdBxZKK$(?W=sg713>3=;VDZx-hBOt7325RLdEN&r+N99%sp9WwxC%NI-^`X5q; z|Hc+kGN6*EWbt2!_CG+5D=x!|%>R%%;Qtp63a}(HafbN0vL`57{|^r|9{7EIgWYhX zpPLBEHr>geNJRfj;qc4<`oA#I{}+Gcu+akcbYoYn_T*yLl!3*`_qxdO?ew6@N&4>t z;6I;$7wc|q%oUkChQMN|pF1io%*WU2%2;jwa&UkgTtIxEvKyjP52bhj<|wg%?Qm0A z!BRwIWY~(Cpdxniu)U|1tSTV{Ffop`=pcaW@YB=2Kose^-;nk%Q|7l&==SMBQl!at zohSI3k&!Xgx^%+6cs|+#T$G;@$Yiuwh v#uFHyGdp zE5Co1WJH2(dS3BQu*o8A)?!%v%)Q9^1CkWnp>mu25AR%TfxxsS>P?rf)M@uw^M1E> ztc2Cq7feDZk&?HSyvJhi9v7op?S8x^H!jE>SZJ)@hEpe*60OB64~520HjQxdN=exw zy7?%LHqWoE`ZBze%{#FPnmM>=f?SV9ed&4{F8dza s5 krc{_jhw2D){*JNr909tU`B5ehYr{DWpq<26gzv`xp0 zhZf_C)qJ1_!_nUM;;(?|D )*a-8$j3&J(fxPiUv6FdI-LRGz5&bqxiF1uBm zzOq;`t`L|28NN%B232$TcWVi~v5#usRu6YOb$j-URa3`IgRDk-ICBr%*O@4rj2j zWym7|jLF_~sORT5&Q7--Y!}oYgMhVJdfplZ-Npku_V0QH0&A|^njm!pjeA`fb1^F(?Amj%~u~(+M@2 Vhq>=r5dbp?HSw+F1KO%)2wq xL`+#4MBk)QD-E-p?szwN9^2;xy$pH`fVfB~$59F66^|J`hDJNA9Fa1c%J z^E=WBhX&>LA~JY65QMzjN&8Z4;gP1SGH|~rQ5aP(KJwOPHNnJRx0O6XBK#xq;15UA z1Y#3fv}R*oO)RGL3vo8b_}C$2JbAz=LnF$s9`ET8BNm%z4|_Q&U#DiTX<=N_jSh~Q zla%_oO9GF^mqa|clOME;mzyx&!}>9$DZK8fex%HmXnrlAfW&EscOzi6OoY-$OTh^f zAh$}CGyt6)DL`&KvFNctccEnQ$puJ@;q=z{sSt{!QwrQ8JG|~@Ig7^!(K2$}T>fu> z`C179C=4=LHVFXJywzmYa&?lVm1QakLKyAWY<@8xZL_p2ZUo`>nb^dm48*MZ7`tQI z=qm7FP;bWXyd9z^1UnCeovX15eASQ}2V15Iz7FxsFH5Q6eG#iRaB 9>`D_? z!$}PBUeg>m8W4eZ$?aor^H2Dh6g(e-=3DjmW}X@9FOklBaUmBUH`JTrr=-*}*G~XX znNT~Ej}_edvs4;w)^5uX)vEiSSIzm3k1lTJ0-6UW3jiH CwaNi9`VIty=QZ|wKA0hf=+DRUcgTN4# I6=T<3?XzFk1E6gIykPZ@Y8jQJ--nJvGmrFQP z+>bwOL>bjbg?}Lh#Ww;duDd5&O%T6kw!Ou~R4#q-eC4>9($nv^3E&aIaZYt26q8Dr z5fJ7g|H}1=3DfO2<*)u23OUl`S12kJSBk(FM~a(81TK=FpCC@>oxy`3$S2XBSUP`d zLbZ&~@*d}PbUF4qzUV3~`q|laSyYuau( OvM- 558R{yHDw(@Xyha;S(%=9CWw)Cx`AU z0oJ5-8nY)P(E$noKuzwi|98e(f4XtaEAc9BSs@ePFlnD{uIrPb z5v8OQOIocNmtCK$Wc=BP!yVO}^I`RQ`m@IGcyo~hdbA2s0_HWwgkPD~v-yf_07 +%j#O~Da)Om#e?C5i_xhvHEm8Eckrch!PKr%rE=JechCf*fQ>wX;-o~J5= zz9cZUSIxz~3!U%2qaXB)&T;o(vwS69BKGC+d_j?iPS>B&M7Z}?05+%LV8IB!u-!B9 z^MEx$&OE#=pUn{QvEFRVhxXF1BK&MDjo{DW<@zvPxvW>Fi|OAqdR6aMe zlHe45gtsmt)De`67|T6v55rGPS_O94b}?uHpx>Agu&q zKS6G(wFh&6+cqszqbn8gaL>I$9yYqmI_szIvv0r$oak;-T#-Oy&?V1?MXLBfwsO;E z-m#c8=uIicbS0#{3ee_2*~XFyPE*wQ_LGmv)Nih9*Q~84!zk`FmiHAvC)XpR?QAli z5N5 {MfiMpcJ`2l?&7-M z4Hv|4vz-y7WR+`p=F)x{taZj1`8?9<*)+`EEQe3(EhdG6%9?tID=O?@!QS=t(_j-v z$hLe%8ta%Wc$)AU+pvLVCigqKCuyJ%dd3(zDI?g@@&2^N)1T|?My~ZqMcFw$Wj@xU zJ_nErjnEtn8WWUr)zW%qJeEtj`)&aVdTdU;i&&>|UMQ%3|N0B9i~ns=q_fR}syR-} z%~ewY`@bxJ-S&x-uRXRa4R17W6;B}<@qG8C#H024;8jZDi|?Io@jx?T6~+0pk1N!$ zth+y(RSSbtpGMo}(2itkxPKZjl}$Pn)8+epc_)Rq{A=W&>(7)X3^t~-AvN%K7nmI@ zp3(e6D{2d*PXw8o4(;T;AN?Q~EN|gdCil*6XPC2=_&l9Y45sb~?VZk5QeA-pEvzTm zhh52X*3wRyujoYHJ;vG-r| x7 zmFmn7x-M5)W7{@~=?v=nLt8j*2A&WWI`Bd}no|=CBlc#SZ^R>T2J`Sd6SkH^NF7yW zo1p7F9~icq+d0p8s)iWM3Gw-!Zml2QUOIWhhE}6Ru6zd1dBUudZz4I=OQP8$bbKd{ zLJc0z*ED6|i24xB%*71{b`X@wl?9eDSm06x?&7R`(_blpsJ}KT4m0p}Yl_CLU)YKb z1G07SsCPpN=@zk%)c^QPv@{j=U8xuiw-8A<`jP0_km^*59P!G=Jbg&F=2P^Ay2c5? z%Vd;E==$I`*-Cjhv)S(+xW43z3rs=GZ|O^8D33N8bmU*>Oi-5_hOx@23`Wv@TL|m%|p|VTc!!vpdrU zjeegj@6{C_$f0?IjsNn@YY;6 !rN1HzczFq6Xtf^IQ#qiZrKP__07?dT23riJ)i(Dz14w8@?}b;F>Nf zPLzBP&1ITy+eqkH}fy}K3fZ_V@mJaawv0NsCJuhs}w%vJdItL~`@ zfxD~q2Md*kCv8&hcEvkZ7JEXdE%m{~#`VD|5$0mm;fCYq`^~gEs88MhYwew)Bwf0& z!Lqw-c2}2eyQ<5!ZQHIc+jf_2+qP}no;;_|_s`9&S#vRQld;~+H m+Cgs6$k7pqRKI_Oz?d4PfbT)dOBRtR#Mxw**aB#*`$h=6>5c76x?Y|#l% zbF#E&)&GJuadYT`B^?@pI_2{MmtN*hv|3cax(%Auy$W~qas&tG_?AWNab2#~*XP1w z^dND-%!@&}Hb5#vZG5BRK`vW%ZRtE~{)Pf)T2}q}rn<@s``zH;Z2Xn!o1!&(`EyXG zm7}XP-ccFeUJ9a9O4Xsy0B|Pl26t9iWlIVcoAGx!ULO9olXS8Lchzdr?3J%7dOLpG z-8eD&JcwwcoHvcjEV^(4E^O6X*uW~u?|E4Q0q6!;#TsM%kj6DLg})9qMctp(lQ!5B zl*5l~m-j#jSUt48VoVT9w#)1}9=#G%6a-K1Zsl-G3sl#h4p&&d&CtfwDC}P4A6#@Q zXT;Z?|<+Zw>)@GB^8PIVYHebfpZV#bp>Ymg8Su0i<9It zfWfO6MO #$7#Jdr29K;nu1@Uzn~yD9k_I-i+% z*Q4K`_PXCcJEcPIA)lgFA_(xpOQ90}Oga`PPdq6^^GOoMHj8-}z~nEclGnY?eH0#& zd1N1L LI#FxjVsXvCc*~si?EUMl<+&_ ;q;R3sLK~$zsxTjsk_vE*!@&`v5y>&Qkusq|p>y zWDnR2$M a@@`Fg6^3JxZ0Zu3Z(>6}Fmty?4OPoWnJvUL^zLDO=~Y&|KXk6Q!N z_HomBCt4hpG4?UYj208JX%(6$wrY;s5eoYJxiTO$XFynX?3Vd6p+JW%n9hk8)~0pL zNfFqoU57m&j%5}`w>rE;pN2f7Zy}2I%gMWZMVLTjGTfp;4TNMbOy;7fh#a=qGMnzX z+|LGcL$kG6y+N-xLMzhOcjN{}9{#sKyJGld)Je#6We6t$#(RHGp|Muel~2yxPIFpH zxl^RvMK`8C8NLrgHQJXaD~p5{X!#>FjweZGWXZBC4@-e5`=em*_R%tj9i6|XRjtA6 zE~9*yV(v$3LlY0?$mW5w^)#hR(|PxbluNJozFx7^8J!_`Hi6G`aPz2GAc#{@qo6S; z7a1^PQ*KtvRPDyTCF$gHlQCH<6EGxQhfiw09C|0X5VR89_uS)X6UZmqP8$hpu=CE+ zdcYgt;R|}%u)*n0Y}=+GRp866kvFP|@ur0i=?aCzON2@dB87d4dCPI+sk__Ri(nPF zVFWA9pP3Tv2w# cs8{DLMV~`9iPaY?tyRrG- zji$ejCO=NLu1HAQ=Q9CUK6X=_L)A+Sng_-TJRJdcS0 swsXr#T ziMlNE`NP9l)wCAr N<%`+8A9X=ol4$vvFoy?^}iuuQVsU{7~=Xc12z8WYErw4hLex; z(Hk3Nrdmr00%z-RCAo4*>HGNljPRH&v@_k}XDL@5VI8>@ZJA8gQiFM$di-N$;Pd#t zFBl($EnUSPsZdc$54Dy*<2x5ww#wZk?p5;*FwyEwXE2>KBZ^yax9t4Kk-wQs{ZepJ zSu0-K8$7wmxdDQpcDKNC{^t7PCMZX)d@+Di>>l~E#`xlo5O`}2l&1qD&6#+xy3!3K zKmE2*^R)!$QGAn}>!fhxJ|tLuN4Ol`e8&3=kQu3XH8Q`ffa^iyDEs?BSw^^xV7ReZ z{l!|=W-0Dtg<4OeIs}_({kFWr&AVB &bZz*Ns zhPNL@!ON*uB4&R;ahI8G^?*`GPx^x(JK&+N`-Y5jg+TcqKz^`hDkxq2i0Sl7ll6QS ztX0gh$>MVqW)PuiqjGWuy60$*#HjMi^D2A36*?vE5zl?-fAQq%>5n2FTWS9QQchFo zQn`aA4FatTo;`R2UT3z4@* =J1bWm55E|>*SRd(^M20U-g-Notx%#UtZ(^ekDc+?=v znMrJbo=@gHVHk~6{lN;hVvTg5H?2H@$UY8SFrkW=ckobyS* _;YiQJ$FJ@QzKrELeAahi9gy&!fU^=s50+X(Uf& z**#K5Rc{J?b_S(P=(L*4KoyJ2y2Q=FJAiW{>~qN6z^8m1tJQ%qD&rW!>hN-!m+yL^ zR=bk;o<2dbrmG OIH|v^@ZYnY!46h$k9@}-gP*@-FMZeP9=r2A#;Zok9;?YgS z&x&CqBT?QMjyH&7x2bGS?J{f__>}JGp{2vo+Q(B$H v!1cZ8fiXy?SyIMLE5K1(fXdLyet?0>YMS~5?L5ax|G@Ud-VhyvqW)D< zP)r{;%@TCSYty5Bu~?Mnhpunud(kc2$*J}c0LM&`iJ`9bkb^1|Z_JPS2?&V)l#r`j zCYL(yIIYEHU9lpm_v+m#^AY+@8t(y;xBDU!$KiSmRP&>vFu@ac{^=pGRPSZ;_dpui z7?;b)Z}=q|4fQqlwggGqN1SOp-4}O;!TSOk2Trdwv>LN@{*2_TwKzsp6iHFrhN*1A zd_eR=2HA{wK_vXeNw2U#_T(nWDq;5J`<~y=Kp5_TZ5BzAek7I8j)uhxtdmdK7~auJ zAg PM%y_10h>uu zjThLFe8k@b->)dg9P)(7$+XQ|CE<4WqvQp!Pb?%iZOuheGm5)@JP@=ner0_wPpy%2 z%ZI5~30J7(&wik5u*~dyVzqO3-~cBs%#x8rZ03RmLdx29f^p@PI<%bHAgkAN9K`vg zS!^k!ax%2bfRSGz6lup75-~}az5{NU-&EuimZN*bIEHy8jAQ+Zg<}_#qw>~L*05p> z{T0;q5ykW+8{$zHgOHw{@&%XKrH$2Ra7IT~GsiDWeMDAVr~<;OfM&K)=2CP8$=^C( zd`Snl1hUQ2ryIKhD}jAiqjQdh?tfuS*!1=Qv>USZ4cMUyFyO zOD~h{<+UCazmyrC64oj+Ka&Mg=tIBWWU22hqoIai2?oT0NTXd$Qbe->qM&fp;bL>X z? X-g3lJf^8&jf;hB}mCQM+-`fy6tTHF3V`g`t6`NeW9ee*A%I-6c@K z1iqS8P-f@{ck!_J&OP2t>M`t#?h-Z&T9fg405>$#YYrnsEWlKTr95Nso3`%O z#3-J3L_s9rxs0zl;Vq#@%9TeOJ$lK%DKHL{xr3_R zU2!5zLDLx@YjT )joq zfIVSNP$R+QOdIy2jQi|JuaW~rHecL`U~VnKEw6k%px5Hu8@xxN`Dl2iZ4FS~W$8L{ z%N*3=wB$=1Fme=-yC7JJ-5fHXCm@UrY^^`lIarJvs&wUxk=P)16TAzNyEqLvmUU`* z-B=yL`ZD*4Kkn+hZ3qzm$#6vSIRb6BluNlgK#!YZ=Y#%HvZh-YVb1qh=(21@+fyce z0Cd31o93&{IwK}#{0IX}PcO!N^$VfO&}#7e>&9w^OPou!r4~ffI#bjS9OGIpaQ(Nf zfqJorm(NZkPY3;PXY!DYp1pYG9Ix~vkBF_2+5Mm!QFrr0Th&G@=wUhp1N(X+Zr)NP z&hIDJ*L7T57nm|p?(ua2CUx7BActIZ;Rh!WaEI ^Qog=VS=PK#ZN+a4kk$p+*I455jD3 zcoHmzJ2R(pC9unNb-y{=wz_G T4Xcccz8M622~~hxjmk%5cArB zjxwvd4$XKabI4ZXOK ->sEaQ{qcOC 06x!qLG+OO=H_Fe(m2@~3BC}ubKG7sZb}!8wN-AQUgO{N2}W7S-P4OZjhT1C z=*rZCm3?=$fsXrjNcYk}rtM>e1{r=q#-kj^>y?3ZM$M+^kn*gKdZ(i`aT&*Dx#{Qn z=+)hS)Tqbr6No_l`}xf_q3z{l4uk w@X3b{}Q&N-oRe7+w9BavL-S zd*38l72RIJ2I}kcc8LLd!)$0WE3epeMjO`G0&xw0sL87T(n+lcMW41*r=fE*+2#8a z7s-CtXm@avg8d3goxQ-7TeebDw$ZB<;|s~wFg2r&(W#W&u@#Ja?ehI;K38i!R7FqN zLKXN_`zzH)+Hp@I-;Fd+Dnlfzf)r-?um1H<5C?(_(drF -Z zNZRqkk@URjWJMZU_VHvH?!mIRd9qG1$;>;Zfb`> !g;6#N%>{?cbXR+QbBvIh6^ z)oSHADtop5lT!%aw(XL3$r^mwfow*}YMN!Syk<_Ad?A}E5ItIO;=2%3Z^<80 >AT+X8F#} z%`t~H-wt)p)`H#*XNDu3oJuL5@g;YmxLYZ#Vm&H(F+gcAp!I#%xhJ%)9x-?bme&S> z7@URfCHI(Vn`%&9UvLj4Lb|VEY|(yl-H3fzlLT%v5rw~*N;Mo{n*=&t3XIDZ=3sXw zICHjeYi) BW+mL zr; Eqi~^(xITjdW+vYn4@$s5-N}2XSL{Aebv1dF4OT{21Lyh)x8E} z5AE9c3tD=o0U&Bt-*dNZw#0x@A4DoKIwCXSF!RU9G`{z0cId*GYJ*K=4Y1c$GxS~~ zf~vX~Q`?#ny`hGd1gnC~!Ts*Ss2dl)A_n~A-r!zI%H!KE5%j{6lGf+j8Jmg|rALJW z$>&&X>EhDi>cvj4{R3L%PmD@=(ntuNVL^kpS&m5@oeq3UV#6Xly`k0t&-Q0X`3;QK z0Dqo5)+(P*8UG^$-Q~Qzv8ub(%G}jeP<$?H4E*_Gnhs^3u}9m9JBkZ_s2`s}{3WYv zzGHr4S~rD-3+CQVExfEX5P7Z*}wYyX9;ZgPMi~V>J#^zl{^&7l&8tGO;Nd(p7aKd;abXY zdIBL;-xic-GjHdG-mk!GIGTb( ?roOZGlc4e%AMNd_ISqo$5an2H69ns05opOQ!X@8T5m94KLv ziXL)fGM+cP5M1W8j>bAn_Bv#rlNUek1cOK>V;{c**b|~*#e<`>whuS8M8zb!K7EZC zkWuh@vbaU|6OngW5srlKy@lBk1VlXmlma(fP~vS*xIZ3*NZb!zAv+8ex-Yp!syQ=m z#i9R_Mtr*XBlGd|hh~`lM q8ElM`OXhpo?TKc5dEw74gp1{M!ns8 `V|MoW~M^VsDR{==h`^DFILSqq1 ztj* ilM#$Yk7r$%YH=;-|~pD z26ozzXLm+mv!v+`+yKV+(8{*f0@S1Yo}%XI>LYL<(^8(|%qgg|9HCX|^mm|6&k;`C zRSq$NJE?HIR@~B9y0Cob6ZYCaUeCi!a~bUjjacIGy?=)kA7ks8ofTf4ro?g39i;k9 zzpjG_N4li}NShtinejcyEBo!J-ruvwQ`}>aWGsoh?9qt7hdrzM+$Y`P%8U%!Yn4#_ zetwp1CqJ;X$2O@-5pw)JM2cLQU{66D`7SX=_SruqvQwei85u_70KShRAm5%^H-fRa zgoKD9(!mF=p^Z&`QlRuhlwM?})(XU1&A1m-a{nNCm%>3$5VD!Z`mOY#a`6DsM}IFL z>W}Z _MA5OeOq^7bSI=`NT^ zrTLyW?-K1F3jEX_3^T8vSX{hZNW`?+$i%)-S9j&v>;YIfb+qVnP5PrA2y@ik@P2w= zYVfy T?GF3;B!tsFoi4^V`@06J*CxZ~(U|E?L79;djC5Ry ztRg)9AnteT5>GSSt$cvsy(=OdJ^w>Qx%CeV7rjCHO#75H9vL#oqGw6x#eQhePA z?)WyT0K~Lt9##*^91I30KaVk{hBhzY;~bsu{q)F=Sg!X$9hTE*zX|_csoe9c57vYC z Se*zSc2qtk$a*?si?)C zu5S-3fF%W5j9I1Fbm_v8R&V9YV}P-h`6N 7M4Mo5eh}Ci7N#FYO z!u>H%qYR#_oiwAZaO+p_D#Ts?y}|7@Sk%P1;2nIX*;Xmqo^t8&+jKGZ8TM+EAn%v5 zy5q4>cv91yHa`do{;3EX-#gy8D_iLM62xq~AZ@G5x#*QoCeg_!xg@|Lp{Rd%aJ`gx z{7l00qo+NyFn{gY =J41+pyFI)uxpD5IM18>ms7=d@gk7XA_6K8p&w`7rXeEeus!mi|***NmPQ &>sj13}y2V>hQz>1#?Hb71o`e0j|WNew!m239fHeVkYY+GM6zrnFan?vVOa_8T~D zJi>lP?!GyilH@TH&}aQwYKY0zk*7UH+;E61VP3#Woh~;Pf5pjyyvv1FrfYI%sMvak z<_{tYzmQ|oIG2oWY*gul7WI|{rSUCeLJEplvMtRdS}EbJVsPpS#H~7T=tVrw`gti) zMXsILZ)97|DFhYt^;fu%#j<+cF&$AaI&C)y(LEX#1|NXn4jng2QO_(t2pM7#&ye5^ zkD;pwqWs| 93aebwx6JX7ZkUfe%z;YC-I14V>m>d#Ci zhHCvaN>1g*Rk><~@-=)9!f=~$Aq*i0pUllCGS@3CyIerwH5|L^-jT*wrDKg_#}V`; z-g?Hftxr1|I4UE=<6fyVONHCf$W5tdeZga1@v^_tRd`ib)O3vP@XD{wOa1$4(=oPm zP&`2pSvHND$a07MG&IG;)Wzw0>B3FG*=KqXGN!HoKmScoUce-W;YjNeC+S+`qk#5& z$qW#Fv?puLzZ=u@Tk+h+Rj7o3oS7MxjHFMlG-os2o|aX_FSB|zMi_uBjdIKqvzD|$ zr+)tpFj>OvXg60|>nW+1G>s9OE1R%1VbO!A=CtzwN~| 8xET90peLOtYJ zL0fDe-Dp}DT6?T8 bdd<8CME>_aLOHf)13JULl z+Dl M=>Q3Kz;5w$@2cMnBQplL8T(&qW{ z!~&9ecOXHRFw0!DX!qj47P&B@jWBAJ<*8T@RMIP ow7cYQkXb zBqJ@Xgi)tmLgLbArci4Ht?T25Az={DAm 1=r{R^}p~&{HVav|vvd0{=pQ zOaRUL3g;hv&FGeIeI7*e^#&*&nK3O!>>dx9n5>;@M#YRX?&G4Zr%yG8V=a_dtz_AR zWqv71tcZCkvTrQL#}Tiky*mAJfyLlDnk;F@||GgT!`f3+UugvyimmyEN`&>FJH zBpec5Kp!pDQf+VnJ!9JB=_p;p)AU4ELR{>$=A1bZOJz*bi>@H9x?$6P*=Ourdq<<( z%ogzZur}VLPs3`{G?i6oeE=uv@QG5M^6p<;fL&>}W amb zY&uzWxI-RJe)fTDu}Ez=(K?l~)|Eh8Bx!W>QYJ|v_sU)6QyrZ{@1Ry^O^=f-oqORj z#c !D^D&>{h zdnvQUkz`g~rto_?_iL>sa+3^c!3K(wOssEd&b)meSOy29dT@cX))U45AlVSDKba19 z<2hqS9nQ@+s3A>en`T%IIgXYCie7`>8w#$WP{MD({BoF10Kcd#o uVATnBWxGF zoJ=qV2iF8DD{A(4;@45(1KA+6bEC2#`8TYmK&%Bv2(e{h#4P N zmq602nSAHD2$j!ZrIr7HohHZzVg8Cv_iB6gjGRSf=|))<>vd^Te5Hqnb=P%s#ZyY$ zV3A0GdHt#Lx@l$YyLcI!Z7W|z84G#9TBJxtCHB<59lLG5VE#+R*+-Yee=2+NWtV+2 zuA3#29d8%Ea_=xUFgc~2;z3HG&u3{2SkCP6^l2qp97So>4EYzos%-wEcI)QBkCIci zN^F0MMuj85Zx(YGv=|(;8e$yvvau(w %!6=jnf{5^9Uuy-xfYEeA;VWG4Z68#wh;0 zc`*l?2DhMZV$qkp6;OC-+scA>@Z~i=n6g(kXU889;`4?6Rq67dx-RtAC6Cm!5Lr@! z@yYt4{4r_d5dUVx6NP)^WHp96=LamvF-x*Y0A8JJ=x`kTjcUym4%T-z$SgdI@V(DY zQZ?gas|paSVe{n=!cfurgafbECOEzKyCwP~&*(?~QT5cP#`(0+*^bK`>0)muEw8cQ z>j5#y>egh(h5&n;1AX>q3^ldXUv07AeM<6hd)RJwqepSi1-k>=0cXz1iZtg8mFL|M z`zNy2pNp;0L4wD4qiFr-`()K?NmdY`YJHc0xx;q{#Z9#+P>ja1-`|rr;4AID+vGHb zkv$$wj$?M#eLU(Yxk_MipEmNbIR5Z{q`iq#qWrsW`LO%6kcwC8W8jzJB<|=BIwZDI zQtWxSIWh4p&3#N}Z#KF7w7d$x$E=GG$VZACjU0QVs6ucHUiexHu-4O1i`DVML#Yw7 z1C#H**&h!hm0lpzv+EB|pVpXk;395YwZ}UIVpN5xhU}kVn(hVI9nu)$IjG`B_DU_^ z&WeiB9?ZfS!b{}HvF#W9v3un(SFO>)b1Rx-%e*SK!%dQK&P(~AH~6t-Z`N `vULx*&3u-2h@A7K0Ow2xoj6CEiJZq++-9F9o)e> zM3$#6yv7|caTHRW@iiYM3b7mdHGKD)eGGdv@6atOBpF_6%{|gR 2P;8BgDSF@>P>UKWH)RJ^ckF}Vs;|1zf{p?U` zs^reCBmh306aa5P8ryjSNL9LH)NJglym$f#-jhn h4SE40`{@w!c|ElJm+l}2|0$CPoAIs!wXE8~91W1#62 zgV2bufj=FXrD=}V!$EDFv$X(4AHmZvVcL4#%|P_m m-}T*+QMAQJPTS*@({#kmV*%PVj}J^$@J_ zh?0$JPmYMj3Xj vT7;N( zN}78v?4o>iNwct9(}L6u{Fu`@|IU4{58d?+IPR0#5a?8Ae{WTn{$Acn`@1b~9Ef?+ zr1l%Wg*Y}MR;s9|8pmHPJ`bn`RwOotEdv1t8yPE=*dE>#c4k7(yXd1a}$uEL!J! zU_`bz;9V}E@ctCLJ6GxIF24vE2?<*0MB&+1kAa_>b57lFc~VRW{bE1-!kF;qUMSRK z^ Vh)!84r3_e5i{fVeCu~5$%RRkPL`bIwtwn4YNhX4ICz_irR9vb%(m%#yi?p z@>yl9s@AzyLt-9|bvcZhcv+Ss>y_?|vqfY$Wut^ini}if3?#Z|9x_yPSibHFNM{pE zjzlt|S?Ir_V^`*YcJ4u%pdv>|v)xR^Oi4+>-=iGOAfdd3#a;zn*V?Mr;7<140J<{o z?9H0E!sYu*`j+1N=#kx9|8%JWsrv&qUzhjSP?yJ6cij`u5NqPcoP90#F%52
Pz#tF)pnTZ5{R~itcP#0#mkQDdlg?&uoMF z4}seZ{u3OU-hMF(Li`I+XpZ2&_UDyrb{#TqQi_*LA)H>+?5_v+%W|AAkII}@JQo{C z#qQ=r;Z0?(4u4suwG$){`krF5Yb3V&J7Ezp=*r@TA7vMwJ>KD=7`oojkba^~wz=UAp``DgyqqP6WkYi3kf>7u{**eJT5aGNg>wW$AHv z=!#*br$@DY%9dD89p6;)83U0mVZf6!6*!x&7Yi50y}rDa%iUvkI`W KtCrE={!K zv`av9D1?gR@)eI%d9ZRdJ5{8OgaEi`Gh_dQi7IlGMYUV~5;SZIead7;Y^DPbS8!6= zWcZcF3YAV7Jv(?3=~ _G=O-M#`347DSCoAHPf_A$go z|I*PSCw!t{-yL*-W&WZ$$8r|9gcE{p!DN$^iew&5O~WSVRut}O-L<$PDr99OaoN8Q zuKVYl1{-{!I0y5i$1aHqN9g2?f!LKvOZ|6j$D`Qcr>t*YbU!Iu!Xk9COkzdpXY-(a z8p_JF{E^<%W#0liS&n@^BPLsXJg8P5wBoivE8S8!F$|k+h2U-I_g**;%IqNWof <7|LJ+WIn$>tW$BmFp09p2 !4iL?MZ15#v3(y8$u zIpp;;=qawrkVm-`G$6dg6qX3rSAO^7_?23c4tSBIp%X$%p2*d>V-vo7=sy$7kS)Z+ zFg%-RKaRvTN2qj?`TM;0TFTtWAZQtbwprGncJw>5*OGO=d(F`>c&^f!+iLy_fi~^? zohxO*OC;!Ejk8r~KO2bHif}2c_$cG~ ?T?RC?DJg{~_&W$O=Cg*4Is{!bqopHzTK zApc~ +;;V$uHFoNgR@0M-3x|PzYF*6r&ztrk+S%D}%D_LlL{tTbsTI5Jsu&|%j z`k`+Ivv{}sbEf_FoJrY|VnCnOfFyk4&iGoHp%~RH;;&4b5?pYZ-oW<_;H~&s=pD}c z&~xhFa17E=d~eP~!dwtMdegOnA?UbqS?hp)w8W!4VwOwxMKwS}jU*@ctiR{^CFyhx1lhJ=m`mzLTWR%1sjYy(&*$b5Kme9-E? zCpI~lr5@T(J6UB!&NYIuz!;=`w8l&z1kT=`hLOPYbWg|2GhW9;Tl@aI5u^2933san zm$jp;{Ug-Ct1BTWh4V4F1S#WMs1G2lAhmDiE~5xJGYjE*6=7J**i?MF%5QeABsxK? zBE~v9ECZ G|TlPY3U*KQk}1R4@_0O+xf zhG`HEe&s#IJM2BM^%LgL?`+nJ*6 -TEX^^Lf?lT(0W7Eo+IjN*I)U@Iz z4g;QQAFdxxjKJ?mk-WHC!kfIP-+MHjK4$uQ@Fn^WYG{T&R%!d?NexWT6)jdPrfEi9 zl<#pgmJ3%Xc^`bQ45PC>aaM9#DOL{<_KGAwn&
wID_ zc@TNx>@@EBY=`+@57KbirR_0}@)yfwvF1&^Xo6s)#{$acwdiR^PGVKwDCBuldZ%T^ z*Z?d5nKqUOME_mU091xChczx;2dyWJahPk>%>88YXYip c^{K~^5#qJxTLWALAI~ !B4e?b(@pU( z1gS+w?5u=>VlB|XC@7_v4kuvX9~5MH`$WYfZbY(IeFZ=w`*``9d9JA@@vJ11sH`XW zrGH(?@nkRGm-3&ApVc2T#*7$v%rTyi62GTA>)kHsEOWxK4x7^?&t6ze1Asn^&nIaK}MDhvmYcE~Z-}BFA2!BM#R$1Wr zf);IvJBw2kDu>p$-`n=7Pd90^kYg#YFK7>iX{At3S_xq0&aVB#+>R*l?)Q1ylnv3* zyQJYPuc;oCw*WAE1 -%HWX<=l0L5$MNub=7L%e( U>PJ!^JRq*YLEhVjt_BaV?PUNni35ji)HNjkArG8WVXyxypA=*#qHg6k4 z8WoJGw^J2NDQrm|>1Q)*!Z+H%iigr#06q}?W{Xv;b<|@JgYSMBdv}1loF4i!rK$3Z zX`VQbha#V`iStc|8qK}R$l~PoOr_4I*;YUR#|^jdjKZWy=3}H&JA%z62^Zm=+XWXb zY=1WX6&fL1D>{#%amm_xv%~z7*z6%|ug)g#G2Rg^1+4jy_q*9ok-1KL&tJM_YL+^6 z2& 5j^E~V?wXA{vuwYOdQP=wcI=_d!f zBy32SIELPVt)9OwHr#9z4uFSlu8gbBjqBK1en9WQ{P+RQj~s~Dosd7jQ%e_As{6|> zr$U6=osJ{Gszcq@oU_;ovj#?66%nb%fb9GCFf#jiupjmZ-}ilgYqqVF`49=vg%XNu zTwL949eQOQd2JnSurhYJMNPE2!>O&zsj2h&a#oI65~!8-Z0M6%Rr@Ki8qJuj>nvZu z8qG(XrC@bNwuv0YaC&nI+Fuz8J}-=CCkkWg;-?H<7)YHryHKg^k;HJivsh@U5xF>s zFsH+^=|+(JEa65O>W?$0-l=9yI_J3vL`D{Ez|%h~glRWP?^Xy8hWYd!!%a%$I|*ws z{Puxn^Rjx$>1YZOH86+8Kp0(qex~Nkko8_8rWIA3iNZCUHbHH8RM;e=119-_nSEh+ zwDwlQ=tzc>J=U&<#YB}UJz0Gdf#rr4pUp8it+vF#txa1I0!U