From b8b1847873035e1e65c55eadad150fcb3db4a0e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Heiko=20Thei=C3=9Fen?= When referencing this specification the following citation format should be used: [OData-Data-Agg-v4.0] OData Extension for Data Aggregation Version 4.0. Edited by Ralf Handl, Hubert Heijkers, Gerald Krause, Michael Pizzo, Heiko Theißen, and Martin Zurmuehl. 28 June 2023. OASIS Committee Specification Draft 04. https://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/csd04/odata-data-aggregation-ext-v4.0-csd04.html. Latest stage: https://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/odata-data-aggregation-ext-v4.0.html. OData Extension for Data Aggregation Version 4.0. Edited by Ralf Handl, Hubert Heijkers, Gerald Krause, Michael Pizzo, Heiko Theißen, and Martin Zurmuehl. 28 June 2023. Committee Specification Draft 04. https://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/csd04/odata-data-aggregation-ext-v4.0-csd04.html. Latest stage: https://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/odata-data-aggregation-ext-v4.0.html. Copyright © OASIS Open 2023. All Rights Reserved. Distributed under the terms of the OASIS IPR Policy. The transformations and the With the exceptions of The transformations The algorithmic descriptions of the transformations make use of a union of collections, this is defined as an unordered collection containing the items from all these collections and from which duplicates have been removed. The notation \(u[t]\) is used to denote the value of a property \(t\), possibly preceded by a type-cast segment, in an instance \(u\). It is also used to denote the value of a single-valued data aggregation path \(t\), evaluated relative to \(u\). The value of a collection-valued data aggregation path is denoted in the \(\Gamma\) notation by \(γ(u,t)\). The notations introduced here are used throughout the following subsections.Key words:
Citation format:
Notices
6 Hierarchical Transformations
rolluprecursive
operator defined in this section are called hierarchical, because they make use of a recursive hierarchy and are defined in terms of hierarchy functions introduced in the previous section.traverse
and rolluprecursive
whose fourth parameter ends with traverse
, the hierarchical transformations do not define an order on the output set. An order can be reinstated by a subsequent orderby
or traverse
transformation or a $orderby
.ancestors
and descendants
do not define an order on the output set. An order can be imposed by a subsequent orderby
or traverse
transformation or a $orderby
. The output set of traverse
is in preorder or postorder, and grouping with rolluprecursive
orders its output set in analogy with simple grouping.Let \(T\) be a transformation sequence, \(P_1\) stand in for zero or more property paths and \(P_2\) for zero or more
rollup
or rolluprecursive
operators or property paths. The transformation \({\tt groupby}((P_1,{\tt rolluprecursive}(H,Q,p,S),P_2),T)\) is computed by the following algorithm, which invokes itself recursively if the number of rolluprecursive
operators in the first argument of the groupby
transformation, which is called \(M\), is greater than one. Let \(N\) be the recursion depth of the algorithm, starting with 1.
The rolluprecursive
algorithm:
A property \(χ_N\) appears in the algorithm, but is not present in the output set. It is explained later (see example 66). \(Z_N\) is a transformation whose output set is its input set with property \(χ_N\) removed.
-Let \(x_1,…,x_n\) be the nodes in \(H'\), possibly with repetitions. If the optional transformation sequence \(S\) ends with a traverse
transformation, as in example 118, the sequence \(x_1,…,x_n\) MUST have the preorder or postorder established by that traversal, otherwise its order is arbitrary. Then the transformation \({\tt groupby}((P_1,{\tt rolluprecursive}(H,Q,p,S),P_2),T)\) is defined as equivalent to \[{\tt concat}(R(x_1),…,R(x_n))\] with no order defined on the output set unless \(S\) ends with a traverse
transformation.
Let \(x_1,…,x_n\) be the nodes in \(H'\), possibly with repetitions. If the optional transformation sequence \(S\) ends with a traverse
transformation, as in example 118, the sequence \(x_1,…,x_n\) MUST have the preorder or postorder established by that traversal, and the transformation \({\tt groupby}((P_1,{\tt rolluprecursive}(H,Q,p,S),P_2),T)\) is defined as equivalent to \[{\tt concat}(R(x_1),…,R(x_n)).\]
Otherwise, if \(S\) is not specified or does not end with a traverse
transformation, the output set of the transformation \({\tt groupby}((P_1,{\tt rolluprecursive}(H,Q,p,S),P_2),T)\) is the concatenation of \(R(x_1),…,R(x_n)\). The order of occurrences from the same \(R(x_i)\) remains the same, and no order is defined between occurrences from different \(R(x_i)\) and \(R(x_j)\).
\(R(x)\) is a transformation that processes the entire sub-hierarchy rooted at \(x\), which is the output set of \(F(x)\). The output set of \(R(x)\) is a collection of aggregated instances for all rollup results.
-If at least one of \(P_1\) or \(P_2\) is non-empty, then \[R(x)=F(x)/{\tt compute}(x{\tt\ as\ }χ_N)/{\tt groupby}((P_1,P_2),T/Z_N/\Pi_G(σ(x)))\] with no order defined on the output set.
+If at least one of \(P_1\) or \(P_2\) is non-empty, then \[R(x)=F(x)/{\tt compute}(x{\tt\ as\ }χ_N)/{\tt groupby}((P_1,P_2),T/Z_N/\Pi_G(σ(x))).\]
The property \(χ_N=x\) is present during the evaluation of \(T\), but not afterwards. If \(P_2\) contains a rolluprecursive
operator, the evaluation of the formula involves a recursive invocation (with \(N\) increased by 1) of the rolluprecursive
algorithm.
Otherwise if \(P_1\) and \(P_2\) are empty, then \[R(x)=F(x)/{\tt compute}(x{\tt\ as\ }χ_N)/T/Z_N/\Pi_G(σ(x))\] with no order defined on the output set.
+Otherwise if \(P_1\) and \(P_2\) are empty, then \[R(x)=F(x)/{\tt compute}(x{\tt\ as\ }χ_N)/T/Z_N/\Pi_G(σ(x)).\]
\(F(x)\) is defined as follows: If \(p\) contains only single-valued segments, then \[\matrix{ F(x)={\tt filter}(\hbox{\tt Aggregation.isdescendant}(\hfill\\ \quad {\tt HierarchyNodes}=H,\;{\tt HierarchyQualifier}=\hbox{\tt{'$Q$'}},\hfill\\ \quad {\tt Node}=p,\;{\tt Ancestor}=x[q],\;{\tt IncludeSelf}={\tt true})).\hfill }\]
Otherwise \(p=p_1/…/p_k/r\) with \(k≥1\) and \[\matrix{ F(x)={\tt filter}(\hfill\\ \hskip1pc p_1/{\tt any}(y_1:\hfill\\ \hskip2pc y_1/p_2/{\tt any}(y_2:\hfill\\ \hskip3pc ⋱\hfill\\ \hskip4pc y_{k-1}/p_k/{\tt any}(y_k:\hfill\\ \hskip5pc \hbox{\tt Aggregation.isdescendant}(\hfill\\ \hskip6pc {\tt HierarchyNodes}=H,\;{\tt HierarchyQualifier}=\hbox{\tt{'$Q$'}},\hfill\\ \hskip6pc {\tt Node}=y_k/r,\;{\tt Ancestor}=x[q],\;{\tt IncludeSelf}={\tt true}\hfill\\ \hskip5pc )\hfill\\ \hskip4pc )\hfill\\ \hskip3pc ⋰\hfill\\ \hskip2pc )\hfill\\ \hskip1pc )\hfill\\ )\hfill }\] where \(y_1,…,y_k\) denote lambdaVariableExpr
s and \({}/r\) may be absent. (See example 113 for a case with \(k=1\).)
Informatively speaking, the effect of the algorithm can be summarized as follows: If \(M≥1\) and \(\hat F_N(x)\) denotes the collection of all instances that are related to a node \(x\) as determined by \(F(x)\) in the recursive hierarchy of the \(N\)-th rolluprecursive
operator, then \(T\) is applied to each of the intersections of \(\hat F_1(χ_1),…,\hat F_M(χ_M)\), as \(χ_N\) runs over all nodes of the \(N\)-th recursive hierarchy for \(1≤N≤M\). Into the instances of the resulting output sets the \(\Pi_G\) transformations inject information about the nodes \(χ_1,…,χ_M\).
{3=B@M2ylVR5r=-x6ixaV0{ru3dTD zcDi)WIv2GFyCP>^^YnHN zt%2EUNnfho )4xpk}#zcq%s7{pP_xW?`ML?xe%@Yiuyp4*` z@T07dNf4#@eg2$!2~a?s0#FA#paL?atn*_~NUBT=g2fK`GRQm^uSCX;$S5ewbxItO zb${vrp|jW_Uj&&&uZX 3^Odp-5F zjkkLBD`CC%h;kAVmnT5^VxuCiZ}j?0i+{IQ>IKg=xOQQ2NU4z1IT3JnVj$!N^ zQVFU+AUMpa7r_OZtlGljidriZtcTGL1zEaWV=*OO2$tgk9i86*BjTEsYlaQ5PJbRS zbS69G%YXwkivQCatFd7GI7FM+mt=`TFxeqr1{@cuT*p|wv7BQQd9GkLE-A 4K>!r(D z?-!4*oVmT_y4JfFe<}9=u8}WV3x9um%^RpVoiJ@b3xE1y?Ecvt0n`JIYF01a+2>;V zYff1CiSwBq3GV7eI}(hEoFpy6YcwRxRS-;7LG_;UEYeh9%Q4L6w5=V@_`dq=aM+6R zd^}SRpIaZn`JB0W-|q7e0N0C*jFt#N*+?GOnuf~}kI@S9{XjPSa1=uDnSb1w?2rYM zm)}H?FrT?nz{N8kom-6F=tk0oZSH$qk3Z3h-m2P@P%?!*K08aW@`H^yM9Nd*%0f*o zxQz!W*;;p6x|sTW0VA6>YC}MaQ4%pIj$mt(*?GUtzRnSh^3jD1ATSX2Jl9X!c5ERh zdD+G=pn0z9(Sh=u@KLg@XMfLUNv3q1)U)E6jJ9XgO;I&X)@~KtB(Yg?`qs{wopbZA z?P_Vbq2M?Q$1qQDQLMZ5te2>BdO+h=6d#~l>%nes&(<3Clz!L})}0YU?n%JjS0dGW z)UCs!2@^ym89L)9MXRp`hS{{wkZdf#VjQs>4);7#JhXPGoffCFHeoBVUaNV7a2nCr zFm1`I&QxoO-QsD()6M0P4IR~#C97Dp3UhyTD68zZ%%t|HsUHxQ6L $&oC~~ @Eq7%mzk%HE%!u+2%_`oP}hmBtXR?GtYNCHg|K|&HNQ&r~kdV z@z3AAmLF>mZ{L3W^#A^Z--Mj~Ta3=X{oDWi>Hqn^-v0N%)5{n9FVlau`%mLSM}PV6 z|NO>(`L}=h>F@tJzWvMp`RUKU{`B|1q&M&0e*Mc&o*(SrLTqm#z5V**r+;uR7Uyzx zE~W9OAAjoKGygr0-@EwV-hTaGKc)8aE#{uaZGQb9Z@9S9FY>F#8pm+^1zkPvlE&5P zpKyoq|3A^-=w3b48s~pqa*zvjVC0{H(oR|s3;*ssq?!jk_|}$*pqG@74FAXkK(yKJKZY mNU~j)#`EKlRV}S1 zV2^zH5Bqz2`~K6I;>+L5`1@bJ@Ok!K zKlHD-Tha&GU-`b6ReRU@gWadcw>U`2^HTA5(%M&IwJU$Y^LVf8-i6NpEL*Hi?n!?Z z-g5N2BDAgBl39$eb Hspq?eu^71w_B!7%^EK^7f;Z}HWp@jwfBXt8lXrprJ$(Nr z>Ha1ued&LZ4_|qIlk}(i(e=F-)LFj}M6B(c^vM@ZBIUX4N(!{xRb)mNa`01z(C>eq z(#%NV=SeOqe^R-Ul#x@O 3bR)eTwTVq;Ss?e)$T|df;#m z%qi!uFzojk-{U-o>O_@Wr~69jA52+vLyg_ +ioId5{dqfziNti!F(|#EInQYYgn6GWVFK&T{ zn>=jnKYg&VT{Xg+leDha$4X>$Vy7(=@UVXk9^U sF3G?A zvF88j3Av8RzT4ibQLt%ntH$=8+{m9{yFm^3m4mM~&Ac_;u9R2xt`D6`SKf? (|dAOXn@9HVMYD)WTPjveNyTd*DxB0H%!m#sv+365Q%qyk1uh&G^FPL|@ zM{mCC3*P-_H??^4$EUm;yXbNVZ{CMjXB}Uh^MAd_!-wy7&qKF2HleE?EHQtf)PeW0 z{QRnuyXN?U$`-fhf69B4b9wOInBVbFizHY$F=^W3V_eN)`s}idSM&D9(X~3!E++8r zbj|-ZXXG|z{h~Yj{Hjf?O`AD$>DgO+pn(sv6+g_p$>nt<(7L&PpL~YDJiDB?zklTS zOv~8Sd7u{gjY7cJe}>Yke(HZ`KW&``bqLUk{=Cfhs&JkZtkl}v=DH;+(#_`%YCos) zpqMW$%bntU^X&Ymxoqk(Hs_NvhhLW8r{%l!Ie!*>b(ib%EHQR7E}Xo>a}@l38H@K% z?%u^ec5i~ee|uks*knh>e8@?{>keLnZtA2n(p+EWCbB_4_eJk)?{R+xXNK7sC8B5l z{PD-7@p19|wqKTet92$qgVyesMGrp0B>MeVf86oj@_zcxngya;{nXKk+q-2B>tY1n z=>J{$lr{HiraXW@()bo-F<9b zk4zx@u1{tHDgD^*uEu}(RYtWUnM&&{8zr=xH(t1s&8oiHFUOlLTx!nz2d 3!F`4T zwtd$`*DsiNxJUmc-_=}wm5j~5epl`J6^iRS9WLnd1 293c-;89 z{Gyo6e^i5ZeO+U9f4CU>s+}7{HATT*>&eJDrT51P6YJ|d axke^=m^{SEpyWkwdZC< zYS1(W-#GzuFxfhUbC@~p@_blbDJH-CB0XIqG<3ZraFl<+$5*PktXcLPl=IjtEtJ0e zhGRG$il(n&NnCj6H_vzTPrrG5=P0@5;g!Y`6&LI`>2U%iQdWnA;b7$_E_wW#)E=*4 zj|xOm>|;lM;) &>>QTz{b{*5h7-5x3C4O0Bi}hkdkuWq$scm0m&% z4+OK_?2%lz-GYSoPb_AAc>d$Uyz^ooeg9XJ&uei{vT>DL_*4BZXO7k{Q^Q$fuD>Z8 z`L8I?p8Sxj+)b<5tseZfq-)7eSbbj~&C^{nh53Juotys7&!)8wE8=O{{^)GwuXyP1 zTzsD-BORB1R_vo`2rpK)=UkY}@=tS4rrPyU*kjmT$L%g2^7n61oPVXpNx%DDBK{aJ zf%-Dxhr@nKoV_(UsM``8iMZojO `rM~aKA(So zN!U1u{g1Bz`wSIj^^GLG#px+JYx0i2e;n$5rl6^QxknB4nWCO#;2q!CRY1-*_()c^ z{K`Xjh|4s^|J;eM7YTJQ6d&&W#gzPq4D^T54_|rzf* 2>m7y3T(JUB~w>DI9a@euIWCcH`!@TfJ2eS#Fw}dHT}L(fSYrUo+%C^3VUl z22twq6+>HMdFIIt`@`u$sxW^(v;{FESjVe|@mZ~>&m`g-H)4J{ eOz{5@a;cZ1HK_qEcm|dm(%TTGyCtHNSuF=S0}7`PRpai z;++&}<5q|B 7xQTrLj7f3+z+O$xH;MTd%qv#xgk*GG;?<6ey8*f zVQoR=vvAD6!{cwG``7if6=?h(#A!GA@PQidJ$)4>2#d6S)>?n}r$XV#f4Qr%`S%bC z+f=WitW||Lba=h@Q!+>X$A$TZ`F& E~7YWeaH+-29hpf4H8`^#O<61OEiOW)Zz*2AuSkG$V&3$~HA zX1|=={W0X=j^KaQXGkZlq_e79pHarUv;M_#3Ae3Z^ShGpmcn68qO)~gsYaQ`!i4l% zlTw<5p7)vCv|g2){TTDv@6c87ZexZt#?ALM#-voW+R|T8txC-j{a#n%vd8Q4=E@g7 zS?s@B^ynewwpjaAM?XU X-Z~B?he+U$ Si<|$QGgw5u8M~3{7v~{=h-;bd^mvS`daI6jX zamibDuj ;s{e Nru2z*d44m=(YkxH_IS;6LD^&7*5d?7O#9|H zj}w3JTu}BrXXSCuo bJIp63)u)(_jA;E#%hI z_EqoTs*Q=ec&ilqAb#*(=dj 3pdJ)aFw8gfSZ|=4tWpI3K+Q8P25)*U#9TtQM{j zt2@4G+u~Ap$$G1rc+-5i`Bw`^)zZi20)Kz$_^)sA)z_XHs!t3JB;HKU5b2vf(O)Gt z?`k|BpI*(U=KJ!C{N*ds!xegJ-Q@}qn&XPlOO6-bT&Npqx(cA{Gn8kdGfi%3J%Xt` zTp|mbU$y%2RqHW$kN0|dFBO^jmD~`2%cnfQaea8a$c5{4z4KmQ|N3dB4)t7!iiv*= zG`iWNAr3t`hZt#qf2Dx4x`2+4?P)=Q8en +X+ zr;&v?BxX(RJ+KA?K@K{!WE)z#f(d`0gJi!knTp|D$bq%&?9GAUm4=3uV`|&Tp{NZb zJ#BX^Xvb2^@|Jvc8Tx5G-W_eKYO}G08sQGBu96)jQ&JlF?8eibF8NRnFIXRwh$pS+ zu>QuP@;%#F4SzvvXmuS6EIA=0G*ITx?4dftT9i-fNNE?;`zW6@m}iK~Sf+oZn43^Y zpnf%js$Z^pp@t|=VvIk1Q1qZUJZVM88WtW2?_L(H^iEjKe7|8yrYw{+@X!TC8xEo_ zG-DF1(P!sZh6cT0{Ee}7Sxg;SX-_Iv#(UB9x*h}?|H?}E5@gNG%S9%_h9*PNUb7`d zBVJkVKwD#AxyYIgEGEWUZ8m?d%7c umNxaEKo G6VvZ5&@c*lVzR5 AH1-}AwFF&lzGgU>)vBFv o7@}w23BF|TJ z=nbB)9!i5#4MP=?Q)T&vw($qvOD9!kyg#UWLFq}UCY5VAHkH_Ya9N*T?CV{RRjCF? ziiQ}*qPsY?o_=8Si*}S*WPJJPvPyL4Sk$EGY&As8Vlr8aVlv_hPGjYx4Qzt8v9Xjq zVrZ m zI~G+AZ0L~My~#aORHbP{$Ic9bV(z~StE e5vsA1I50p?W8Uz%NNz?=`8wDJ+;g CiA36X`JQ9KVi)CR2UUJG##5v=0z`@;Oa4As 8=P&^6P}5jOi_l*l**F8g|0etyt+t94hI&6MKIxFO<6I4CAi5M$8zCt1>9dZzJIw zQ4JC^oS0!ZA5=Mlw#6*B`B;?tX(_^ZOmB0GrURR10HeYU97~1XlTvU;+bRE){uwh-2l-w!mrINry1^{Kvt zvRQvOQ4_U9apO%x2rB-(n4fv9u5#?&)sD$Mo1v*zGKeahpzpm1I`&Ifm4Y-_NTH$k zcf&4La%Ur%GHG+z$AzNQuD2Ula%o GQ?{K z%msZ^V*_x|Uet+eLUYKDXigW|$w&;;rGS4LPOgO^Xmwo7L9X`Qg}$KThG@$8fMzj~ zdkxJL+rqk33DYgZ+R;^yV*Ltsf9R@f557bC6`?{*k!G4PFDsYGZedLIt3-l8d yGlT;7ITZ7RZ=?9btgu566J11aTF2VF;%D7VD*H-%^YQRLA$c* z!}3 O7&!Dz2132RAVbDTWt1xM^ce zk?84ULQiNkhPmG19xYzkSWBWJKcav04udX40L`(3J-OEO9ZF&z6UVc3c3a`KsZ}+W z1XWDMmovc zouGn0liGp*p8iSaMKvkf1 zeN_7^@V=+Ijf8_Vm|oA80#r2@bk P&5TE}%{*>f z>w*FsJlzZ}xI%Vpwc}Tmj17M%Yc-fW_L({3Zr}=E>?NutJgjtHN9aL(I;EuGmm5OFXdE;=H#l zhiJ}bWXT&1S+ofw_UVObj5TvI2B%&$a$nOLsb_d%t;cG9H8sWtMLU1fqQS9%rC!Y0 zjITK`v*cC~<+5x;ssUO^5xz6p)VtY|N@aC#j*mC@vtp|QxHmP=5S3}`NVt>{hFhL< z=aLp}WZ2!RJ0!8=syX*le7iA^WPc^|;-{u+zB3 fnma)vuwRwG0bVzBlfYKd0$HE3m z@1Pum_`bi`16VlZMgG8Um+Qc^gttgf+2*N`5A(!~v#nqjXV#ohcFJt?IYbRF@%oC) znZBQ(_)idl%%y*ocTv4T#u+#k@QOOJPs0Y`22xgr(x=}|g7v`U8+VYLH@IO_*Cpam zjJdIORS CFueK2XX-IE@OZvtA)ZjM6q&;&KsVU~Y4Y}1&F5;A)+Nv&(@9w5gG z*_&-D7VPqen5fY 1@-+vJxWaLLpZ C;O9!uQ%lU%ls=A~G7vTVkru4!JAS`unG-5N7QfhWjQbd6H z3l#f|b+UgVO5(Xj(^wE{0TyRup8e5 F!^4CNBcPojKceZ$Eoc2s{UsF8c^ >lcYp_EgnL8k`zlBt@)bwgFCe|v~&sP*q5iw>2rA00!RJ&^zg7ZxW@Sw!7aL*{qAXJUmV#+hqEJ7R$r5>AM&n#CgC zUGiEs3-fo~dv&H5w9Xsf#rZy6LdEdxdrLb2XQw^dLo-emcp7_c#hw!NVkK7De4?kN z9Gbn5s#>MHWO)OTbgHCL2ZUs4@9uxh4H!$)+HAdeV5Qt9rB!C?6>i)4jG&56@e+h3 zv Cl5O^PI;C*vebgk+;$t62q6Ex#3 v3z3h Uowo8 z)GgsJnf|h(#Z=x_yE{p4MWg2DZD<(x<+sw*ch1;jKV0e4r_$BzQmw?3zfx{kqUE-i zYLD^7+`OztKu2y_tuc!FZT6kF%+0YZuA1wIM-DqWL+V6@jyLf*Ei325yO*l&jYT|wwd&bzx^tCuOLngEF*i89kOasm8oFoAz zs4Ko&I#iGhDO07&OA?7!$g+?p$nNA-x58(T3c2W3vfmHgYMJ3hw|Yc% M8q6t}1`4I%9oQ`MEk{4J8we zr*_EbZppr)G#@JWw~NlIiuf=CO4-H|)}rYqY`kBUOfjd1AvqI>S)a7sL|S~`u}z^| zQQz8Sq+y4i$5+=7El|h28M`y 9VY+4c*^pjskzm(A}K3WN1ks+SDC(5VDrnf-&&U*c`X$Rd*WHlP9FdZoX^m;S9BX z?ibaHCbnorD+u>9-EU~3iZ%MgtC#3K?~@PHE6mqJ;fPkIQq`}yVCD>4LDrKFtej5K zOo>>ct$1g-v}}-YF}gaHDB6n04YS{3?)Gd8^Jv6#{X&19@l#pR5bC{JvZ7M~S zVjq@)g_#`{;<>6h#?IDmiKS)Vtms{dj zIYk+XxJ-$ZmSl&U4iT3ruhT;ERLhnr7q}Zk$c&9^Exo-Fcg)B|_Lc&H#BRc>Glh+u z^&6HnPH>b2%lfva=q*u>mVh7)VTr8FrDWsVxk31-f6g7S!hofL@LKwx^GE*bL z_%bZFFykSR?qel$(`dA%MrKN}>}eZ`fLSv=klc$I?PWAoE|Xb+tHW6PXmboF#elN+ z_UeD66K_~lKkbHk4#MN$)j?S^>z2CupsLB3UZPAgLPM=9`km3i_YCD=0np^EvWXmt zgr#yq*=-m %cOM6Z3;3^EAWC_ZB@! zBHxkLZWS|Re`geb_T_B^Gn2!LjDc2X3Cw@mE~=2Wqu>qJI5% >*h>h0}s|8rhfV4DY%`)%ZHH3p%vWwtCTtE4o>o#U3tXnuHz}j29N%wjO^Y zT`^asL7|$H6#1!qvGa9myD > zFHiw_6{S}Z%VjV>Xg<-)q%A0(G<0FhZim{8SBjxJeUk1WkCJWkC6eWop&T|7Ka}FQ zVe52EG!VZA7E3a9mQ1Jd>_Lg9q)O&2p*<`~M!af6Xq%1;nqYLO5f&VSIL3cR<}OMd zeD;+&b3vh=U{a9?k{i^eB$reIl)>x04Q)!DuGU!)*@fa`u#rSE`+kwa$pekuWKGTC z`lN=5I_}zgn4t-GWek!G2(Ft-4cka$aLk(ENa7gz?6ItYT+wcFT>`<%s)l}04zPiu zRalXKazN3=W;MN}S?!oI*%g14x>($>yO|}^nMHSmM3+q|EIJl*+cZ%W2aC0&!O~C3 zBH7IuUfERpHV|{>dbj&!R)D-_HhSWbDiVuj(=bDT_r2SrnKD+)X)VTqN-kiA=fauB zv7j!R=$1+&65ehteG+hy-jdjHpmXTh>`R>#y;RjHcAO)VQF8Aru~L5(=b?7g>h0l$ zi7 G^l*I2q zEUB2G!~<73p*P%Rhsv2JiE<|{1h%2U=x261RaG8Ly>w;jL&Y?9Th3*)J6;(u zGs_aa6~3}84)B>cog!4B@7QYnPn7FCN#`xiTG5cR_uzk)QecJlzQrfMjYR(G^sgu3 zmZu|yuLhx5#aHaY0%z4~Dpwwuim?Ye>0uw)l6prcc5*u=tYK_MeGYVHVDnnaB;Jt8 z)Pj96)|~EDr-?#cSU|X?8U`;czjH=&6k%zJy#{&VXr`1NoQpVGiPRC!j8keIH$We1 zUlq&2um^t!DW-u^^-n>d&soud<3Lv#HU VkHgm8J6uG(W7#Y201=|fn6Gx3anJ*4r*DSGPqJXE^i<4PWC>vZ~ zrU!pr#nxi>%eDM1<7JwDVPhK+V@op$Pt~dg-2sZVDWibRpqFg@lo r;VgO zMYghyH(2(Tqc5>j&~Ki)1@<4XnSw!SL!kUV>&ChBLP5HV=GaHlc=0J*2GI``tW;_# zfkq?05G~tGnss4qyHyw@t^>!=oUB~6okV{bS%*I`)YhJa8aN3NSZJ22LSA-Y+J+)% zEP%i^Q^QH`Bv6G&P@fYBHBWypMS!rhIhbz@va?V*v?a`nv#(J0WLs6B?-x{RIL7LB zB)cytFfB+ICm^6<#+r{r`X&MOb&f1FaIEw6Ai~oJ427}_#uu-s_&BbN|GUbAP|AOF za%2$*IYm>$;QIJ}x$%n5R%PTSp@$XosVY`doloM54NQsi^GS|3hS8k5PL4?yCkvt3 zN{_vp3(~AqSW#-)H^&wtrdXZ1;K`5}SkBc7mn7W`C&CP2V+ot=dZDpdDU2PZz{+fD zNpTNgRbCT>3@viQ)@`t&h=l+{>u7)7Fcg~sac6BeMG3gV3x^3bc>sr%j_ocUjKLbp zEc3s?L|ZLz$7%qIJ1a2SO`nR?i|#wg)KI2q>5&P1OuF?N%m;@A!kl>M$=)xc!2g2D zNXptPFzlK)k-~-8h03hW I!^Ak6S0Ie3Y&hoUb{_G#hRj6i>ZJC}ff z&@)QWz_N5m0IwIbbl!!W*xO({p~h|CSVUK5TLZcwl47E%n)A`U2McRT8eyRzq`gm7 zFnLX-N^BTyRFybq>A zaa{lY_}FWn1*}79r0 IuczYrNV;p>M}{iGPZ%W-{K62f)>TqG5~obj7T3$ z_7=v5=GAT9B;*6TG+37j4yaK@M^^7UyT5l#^xX~hY^_7Tt=;TA(*6q)KAXvpEc^iq zLMzI|s5kGxdT-7cTNeg=uyt1dGh#zc#jNy>fSS-ti3`emJbB%@X!?IE;8;s*GXc*5 z9Z7CUNuCO(#yj~CtX5H4z7=ZnJ2Ud+O?_YbFAL9TvE>zGX78hAs`0?FUx!Ax6(SY% z!Pbso7Gy586~c-#YfK?qOHAnqUC<;XnAuLrMumIh@#j!4UGRvqRJayZntfE}HmCAB z?cZ;f1NC@6E~q5vz~q03!K6*%tP-f8sajt!-r8Wj(IRMGurMi1cRMv;o<63a@*?`U zGyn@GMY?suqAm@EB3nySu*=ek8j3=l8sa)`5UmU5MDYw|bJIYlWr`VB D7`D%(^gzINNjdIU2gC!+o8@@_MTlJ`*rwcLC`Q&MxA5L=-dVpBs<*wF zxNi?s`LDO?<`2 Ku4Hub5SQq_{VxKw>|!*aB$k$Tae zswzR~3hCEz@E+!Di9U_7)8gfed(7tdCod (# zYLS+5Rg1(0N1lgP&XIF&=N(TCNED9LEVdx}dtCFvO1XbvQ`ebj=6E3pD$n*kL9RZv z8h&xKao6;G%3g-fI`+F|_PeY8qJ~Srr*0@~CCR)`RPF)qnDs7X|0e4%zNDfPr232N z*$5I7ePYw&Hc?MqxyhH-gE1w_C;;zuvxk$kvIMg!&J5Npwy7JJS$22v7u%GB2!mbJ z@S1tfNK$_r%%Xw`rJ2wMjjAGzu_l{!tZhY8#!^imV|%w!2gbZo>ex(`@+Qqs#rl7x zsDRE}MpYu9*rso>3g*qA5DfyLo3tiglL|GaH=};8PXU_xj5I zvNb(ZAyLW624#)OZ)g!M7Ff0%^dgTQ7O;8Eq_aA`kQN XRegBTr`21m3y!z@eSyXEo}r&kY?$9%ccpqs{O)@Px99fGELT7VEx9t_OdO$h;^ zoJfCfnI-|nrUOIOJ2vZ#x1vK^>v2H|>(U;aiyL{DSg!)>Yz1_lML~=oP;%B}3(jT2 zvaMH=*`Ne>>*-A1{EFUF&bnam{35{K{J9d?mDMJQM-qit%>uQ{tH{7e)>e-l`juR{ zW@sYC5>tWn>%K&Lv!Xd!?W5haxEZ#GXPbYpo~-#FOUp`~MJyCW3=~*sDrt|O(ODtr zl?y8F?*k=XRi>j- 91fXEE?Cv7#JUDIZ)SfN zkzgFqcri;uqjt_9=e12UceJF A)m5cA(%Bw7-(G{uNCKKcGd8 zs* vXmDwV7&YuqK-p_Q2b>{e9ip2L3}F >;~^|H5f zkXEn=Q3|ukdb}0osb;x)YzNC-pv-!FO*Kyn`R6N)I6GBA+&vW;zP^NG;2?jg88WCm z BxRucwx_wE%xFDt_LTpJb_3GpbU_YPIgAg*SNAOhApQREl!X#T6}c zM @y5H1k?aOK@?XJ;t&4RkQM3iE&`U0XH D{C7YNafsq`paGfYB#wt<0f50(&qkS+r|371VQI;!AiX&ZmD=n-;1gmMf{X z88!M{VJ_PZp&WvILe&PMoCE;cttuX(=@-~|Gs1u#3fQ#G%t{J7?vMnES1@z480^la zk18Dn1gamZj#Y8SB74C(^ XPGI> 2(4T+Bu5>8#I=z9m~VuN=oUXKIv}S 4f;I??q@ggG!--|I%B_CLR4ISfsD=8|6gcCxDSl8B zYeMS|ov3siEuBmWVFTpE?o_g1O|7CDhU2%^vnY$59HJPDNV4}#g>lK J-(Me5D+A*VVtloM-Jr8XY) {Gj-YT_e>3F#Xf)1;Hb6{!Oqj0wps+=c)M&_<=dqX1%Z2 zIK@Gw-HJTeyR~C#&K+nGOVStX{=p&}cW$#9-rRyYRQqnW4iGz dFu zl)z#uONTmOWqYu6BsOAUP&JDysH+gXVkU-2SP_4y741(HUi#q8)JC2qTmsf&H1eTq z71aXSGFT;>oX}#qx6&Ao(Kb iO@}^`7u(IpIQ9>tN1a{m%;ngYwnCoG0kp$X6}7Ri zboD_tb&IZG&R#Sk*VJ$*+IS0S*3 0m{QyUXctBez z6II80?S3|O^Xw(gzFOV~ug>%m&zup&Fj`(w(!8RdJ)RspyrUXCMVq$)91KWjjndRN zRjx?p(2A|D@wgnB#OctG 3p(qg)?8=Bp*(0l2uiWYv!GS z(fe-RPA5FwqP>zE1#LdgR9}gA5SlHxCk@RAZI&D**%FWmr5eNW;y-}1%8Cud;e8rm z7Q8ylupc6KvmG!)v{C6ODf2s1itdK3cIk?LCQ-YZ6`& a*jZ)O}x{Wk>pJlBK`MWiH6ilIQ@jcvpW985q8Q5M(j;5yEKU$NB&T2ao1 zhO^FDdXG4MeKMD7;E*qNd#}^amYLNImD}24$p@eA8u0+dWG#SMV~4RaopB}x4xbc% zD+PmZnzKjr@S)gk>i(Top>Dfq-LB|hn5$Xv|FN1-tRSn1FJ$bbw%m}Q?q`3nqz@Sy ziWNsEzZ0E(-loCp*FjkNl8=EP_pL?Oz_ca_^Y5ZuTzi?T(%8YeVwAqUVw-b!qEi2M zV4$4!(TUsQi{+7PQEiltqb4t~RJB2W&kI+dwv+&{-_-YQB=uOd?qE&)>8QI?O;!?W zfQD!z+0aFE?UJ{?P&W>KafD@WIYaE2qb{$OpI-V^GcQKVeq6GZe2tAzL!8;|weFik zGLs}|uI-AsiyrZ2*Y~Dq2R7p@E6Q$Ilnpn_Yh)(qDH+b{xtqEfXGU?5O^8~5h)}Ij zm6+^DxJqIWDHn4`(%K+fs96Xs3wB1;B-Ym341|kvxnfj8c3@KlUeT!nPc#b+tWTdR z@EP3{`?F*V>S~Ngx4Y(s9D1o5-DGo?E#CwT+)e_Llaok7Yf&-IC0D()FV!okCt>-X zCYJq0I|O#G9unqqNXv8XqU*wc#jA8kM +xh>X=zmek4b0eeuN3D$e1USh!||_@K_e zQf6hh3{+o}-tR{3lBG_uwdH+87q>De_Gn#GX+*=y^EeRFb63?Ni#>IJRgOq$YRFfc z{$IEyeh?bHn+fp{Y7IVLOS`9I764iIqNK%pKvS?>8aYP>XiQchCTB-C=*Ql2(MXeQ z)Yi^2?I@L^QPVp!k0t4t&}1n`iQ`a(4xP=K?h-#M)XnvwL=6!`QWBoheAr!kF1$ z7KQ`~8k!C2ku^FJ{*y3&`>jIVZt#kfdDJQ!!vjrAiVs`-7&>!?&{{-5)jBAt-Sa(j zHHQOvc{VI)Z@Ue(Q=i5c4Y@LV!Uzg&e9A33d5X}bTP){0fE@BXw9AI(B`uatF$dPV zIRVLwabUjb(yb_}RS8={#$>-V+Q{bPls*jfLeo`Aq7+y#)r?esPa@-J;Z(%>zU|)_ zt@rDJO1a@WqYr44^tA&-pBl!by#h{mtFm+{i08FxccTVpoAi3Y*>K5dB&mv5$;uPd zd+FC&D<#m*kE;` zFW5J_I5l7MF%p%3qe)*g6BP8!bevx&aY$Iga>gJA^2zQPTil$brf(TE=-t$TFJReM zuHyI^U)#H=P{cr!o@@l_5%*n#Az_q9ZqEVv8D}B>4ai&bFp+PS&U`m5p4y046qjrH zwBw&kv?hAOQ!9=JjMjw(o(X;zw05cQqHHVR2 `0UiYFgAwzwTnCOR_|1fRQloW0|JHSleBLT?Lb?#o7TEbq6GurIr5 z!ZbnHdRpmIG<9pBE?1)yj%PsDS>Je8|8W+Wv!v-J!H|VfrlgFL#wr&{dPovbYi}d9 z{Dhg`itMY2Ov`R!)(00)uCq 5=GFc5K6QdzOLpL%6zx|! z9>#iqT|qJ6TMmh5M^89D6`_& xv_1v=@cr4ig9Fv$Ea|m1HNN(Kwxt`k<0y zo_Y!0w1wG!o^8m63oHjII{l&{F{~*aHMSzGnL~%twt+22^@OgBd+;uEvuUttS&c_j z<(;kZiAh>P(-bNq#9~6++t4f#8;JXCkBTLKs0KtIMN(XkT&rB$ai|cUTSSrmA)W^t z3BQH2J5m)axNodQ#|5W6*?TGE!LjX}{@ q_IKip9qW7!$NN+)Z zS@_0zTkV35 z l(Fnw3-fP~1W_d#g1KF=K&MvfE}%VZ=C zdBGOzU`JK)bz}LEDLMC>ka( zjSkUm@goYDH|oc1W^HjQOsbE~l$)S`3p$KMZ*^c%=@vyZ=FB3q76*3B`fqZ%ZDy@? z!-L+@Ti-{*D2~>wjSYP`?(~p3cCGN$Lj#Yqkfw>Do&9vLNa_sGSj^C;{3K{NLu0ev z2Pnj$dkS+yq8K}8Ae*y>=%O}}$JnColt>Na#L)M_B4d V5JnF-*bPO~zL z<~u;ERTi!XLy*QX3oqDze^n&D9pXH3^5+UgZvDSutJZL@AuI-gg480=WHiUc8hZL$ zyJAifxr%+3(L+w8-QB*MOq|MpdNrfuYE4FwJaAGZqBo2yZLVhGw|9i;M4NVmeza 3~lsxVMXploFLjX+ybgBcb|KlW|m#b|VeNZn3jpDjSCIMWBp91y^8t zJN*;ib|F*6Y}uhwcW9AhH!|zVGlSBsHK;|_NA7dU>Va*JrWMVs{|~NzVN^h6+Bc4` zZx`3u K^0?%9as_1YjD6BiU9T?#b7sZ(l y*k7eFVhdI_Y0{Mf`Fb{8| zG?0dktc8@G3ndzQ(tA69zg%ka8xAeflWl@|hp2zOH3EWbOwcsz?WyzwShPN&?D*Xv zN%q=7%A?+H7dhgxJveGF%Izhikrc+diHh?PePD|j*{laO^dYyz7TOJ+>VeFt O*l?xa! zw0eu~$R~DMJ$nwRe;r+~yv2O*)t! KsZvJ_74>u3)I>2?8!p|slSP(aZr~lkY-ACK7^Qmbw>(8whsNI-C}{GrQD)+ zsiViJ*v+#dlTdFFceI@Pu4p%T5|v<)8m?@MHz2ypS``F&aCS(^bpvJpw56SOk+;ri z`VvKmVxypKwxCiYLu2P*sI2~DDpInOov6OKBL_(%?$uVIl$_1C#u=4Bvz~ub^`K@# zgE`ldU`daE#{dYm7W`@0LYo(E<7DQq>u7AM$EmBo4z+^LPM@VE8<-2l;(pQ-vq3rR z#`7ra4=g-dc#)FV1{6Y>{JX0_8mLJMIdq87*$qN6DuFs@RtLMe(eI?0JCyqG9@rE~ zD@vrX-BBoLdv?%pI-^!*EOg0lUyUv~xxHZuyPeK|TBbOjt?d2V-4-XY4_=nFD^w(d z{l^6*C1zl;TH8|c(Dx-B44l1W;d-@pb7V^oJQ`~;>|Rvb g|-!6kBJ=HJzK9~ znn>gwWXlxeG(oK5unw$fJn=Hl)efA;a6=bLFHWOt8@)_4uu+T0hiWXB&Lrqa?{`+8 zA R5k{-6X!uy6nNh!L+UWPqoSmLybVMnmp;!|LUkKvT#w|W$`{qiVwvXv zQo2n;iH}y+1#U#QVUq@SlzjSh$6&4T$ZL#eYu8ek_v~1~TQ<#l;fM)+Oq$1D!zZ+n zzIl&81HM{nEssP!hU?~!5}7%s#{zf~9;R)#^nm2^pb3qB+Cojx@r{;rLlKgL2;iB2 zxS <;hZx|bIsK(B^q16*xx9vowT}-3& zgtpms$E=HOM>|i?JkpV2)BhuH#*+c^&hxHW=L_n>vCj@2eSV!VHP23k?gvv~4|XB} z`GXoVr;^#{CW+gbwu?RHtniS>p~YK&u3KJfhp35Gv?#&djsnAAEn?|BDQM7rKT!5Y z)fNRjXphUlg&M50b*sFN{(?>Azb?I>Xw!D`Mw{u(D*07&k{2)4x=B%N5DV6ebtrG5 z&>S`sPuVbUnrc2&aNfCx$Ch??Xg;dwIto;835*+GDz<{YCaXkIhcR4o(ef#O*|Ckp zkYtobbz3(Et(dvBSlM_LOFrf49!Tv1O>JgHIb&$Op{(JJ!OvHh80^3rN*jhH-HWkf zIt}xN#F>S3Bq3~xK;R*$a&mT@hMKQCDsHTfg8*7wVuLa?wAm4Z^bDMHs@>Jy`Ln6y zJ4%Nv;ch-yVKQkGodVpJsLzLgEv|1k)4T{R=5LjhuwHTAj>TdmRiopW7q^^Ac11HK z7aa5Ph>FK-oh2f$a847HEFX?(DcoxEz}WeIfJk21XR5I9SSN~)pFL;Fj;}pXHq(cg zMQW6le%+&d2cSa)&% UX{7}q>z+o|}RN?MJ^5$73Jd_<^$xHEttZ;PjR@-3@lG)x-sg*3xT1jC=6X``K z8ac!PtauCgkm&4vsR)RgP2M{dbShZwmUgxS`kppHvrkqL3R@g+@0T_?X!VS*^jSHJ z9$`b@9*XS*1b=xtm((hMOa}`5{p@ku=vq2eu-hiCl?TRN^NA&`8D)&G&ZW-NOeww% z)D8jRewGZGQqRry0oGt82K R z2Vb6Avcm+~Lq`i6#eBArr0JXDN5?&MQU;A}N=Ry>UbeYTnr4mVic*LU0;kU|MwATO zA(Lm(zUp)xr<__NAu8_y=8|QDRC&*#e_7iI3E>=qO@-A}+ 5_G6(Wi!IdPN`gg1 onI3@ z=+wW-UIF@^6pZK#e k%%d|pwWDB19h|+)38jG_EiMBdA1Cn=?m0# z>ntUm9SOBcWb!g@+b6PxyJ1OP8XG!wyLF>Ip>wA#+Jk~9a!Xcm0hDJmTDQnV;+MKz znG+)Qpz|KOrNz{kWGP)N=I%&M(U_yTwy`-#+}bgJMVZnFcg$3=9YoldrFxo{To*M? z+bmU+t!PW4hp1QDzN!HCasgv^mKPHE5S^ZJqE@wR5%TKeczJJ?V=Y`DQI%IPbCYY_ zuZ8IzjaBt*OHY-vknoZ&T5l^QFQlV)>qmQ!DlH(a+tNuPD{2Av?GE>-C3L}t@yQex zMKP&=#rBfqiEXn=8K~!^${~E)WH~MdJ}|Y_7L+7(-lvtyqSHRDl-U{2Y2BpjDT(hS zG~_u;=y`-P`J>lucZY3K^C};)LF3YZu(Q@Xc)y8uIHpfo$Ss#h0EBroC69!<*Yo<4 zcgh~isG(PwUlu9^VciZ|hS`2VQ@$DKc^fW&&y_0LQ$TTLExx4 M;;AhIA<=dE>7X0@@FXa_JvwwVq~=v-8GyBrV& zb~kKg?^i~Cu Cb~cesd^m?& S#fKw#t-A@y%pThbEw}&Rp|sxzpJemX3=C2!wf! zA8QwSLfz~d! XvTCU0E2NRi^w!X#U+S(KE@#(b;(v+}R1JHL&D}B|$Zs|Au723TcUd_KtEF zdd6B%tjLpxRh6tJz7~D$7^a7=@zq0N-BOZha&qY_##h(bV_gTf5Ud=(W?2KTIjh=+ zo>n#$%ckO1!8F!I^O19lLPD)`Y!Mn7SnY->4LM)U;h&U*hJ3Q~P=ol~pz}HV%88EM zV*T6$@j_&PdONKlI^GmRz&V?L^_t~L+0PCGNYvmRwRD5;jj^OBO=%~3?8h;g(LTLl zWE(3LE%k$^7^c17D%-}@9@VODGGdJMXz*98?G{o$fZ+fol_|{G2ROusH#L*&6&^YZ z^|%wg+`!UV?50_x&)kWgFl&3Eo#=rk>j}@D=m`s&lz0BDo#;=LJJFwiC>RzXAN*t_ zjK!X|40`$OY{z48Cwd-Q=F!Pc(HYN!5$>t>pjiT2!&4v{s`Ut>3RQsUnyc}0uE3 zp0{JRGB0$Zr=6oswxtt){fVg_x1)G9+F>!S#U=DMahA7oBYGzMx^^>49 m{!vQ?$Y;2r)ooy0dj3k4-KH8W!|Bp{Bu#Uz3(0dh_c-iKOLH z1|78%y)3txQ{0Jvp3uPo^hsU8*86mzg7`i6lC#JrWIC{+D_Ti?Q rvmJb+y%XEwqvt6G+PfWO#J%WGl&kD$_d%^+mjiq#bT{wH zBC7{UV~W~~9_ZMmX*QXsfi>Ib6k-_-+P+!Us%-8kx1uM16j`(Ljx4{ME3?5sDxz#= z>($?hEkfZ))|FZm1t>n%!cO4SyL!c~=ub>p;EHl9de$_% T zCdeOCeK4`(Ov&zJaV;Z N6=<3nWj0z=BRzE5FF?L`~y z#6`mx64aW1$iT^pjoW6o8i>Oa<6crb%I)ZBk2Y=b!|mva$a}Z68}1599N9T@nDv%K zE>=^69N8-H+Bj3JI5mXLpIp|F-*1f~GnPu9U2Ui#{eEX{NPnW-ke=Qw$d(k8BvK6) z&V?OAGw)6Bk%sg<`N5j>dtsVBHuKWLWxiwUJg+E!JWF)PUd)!zXRl?F+>oB;xdzjw zyv%dY-qb0CL}=fqZ1rlw9~~N96wBUc&kLHVgl5!Lc|+pVcOA$5D@Zr+$;ti)6`C7$MKvBnCjxE B+#+)~1nr z($lMdhiJ~oK#Ze7-p!o&pi^XJ7*V^=pA2q6(+u``a+tSQ+d9${yG1^=V!jH=Yp>PF z4e6PG``PZ?G5=mUJ?Ar#f#I^n(7aPxPxCNK0X;JFqcL%xSf-WKtr7y2R7`??c3>B+ z2r5^fXU2P#Xg$p{WVjzaiR6&%)L-0zu(iv7eP_` >ni}`4x zDvIpxaq+|QXW~e36)Q |M4>(=?6 zq&8WZvq`=A2zzk$)$F@K11R-Aa6@`lRjeVrQ<2@9)-H2DdRo;s3%SUYC9a^p8SO{U zXtU0|TqQ+loHZGWqOw0btN%%f$h7oXQAh#MfelN@>h(E;lF`}zg+oSy&Thtk>Z$0- z3gZwnAgIhUJ1G 8=`pU)I!?9+R!3wD_SO^3lAVG|_Ic1HH=`#si)6O23@X(7%%&7o3 Iy zo@buQ)fuLg1&W}6@0uJpq~EdWC124bo-BlrlWwUXZw5mD;v|6Qv>wN8a7fV&| zf)s1U$^Gc*n?tnxjxJGw7A+>oKE5>~p$+Ldo*{~ejRcWv^Q|cPcVn?#wXS2%cz0Mj ziH2YfZdJLgAw6s4!P4x1WjB?<5YuuwDf3}=2rEiJL&3Kms>vMbHCksCO#wkq31=LK z6KWe=_m%>ZT6?=Q!M>Skwi{tTSmq{eea|SV3Qp1#r5*i_tp?MICegWqp9iY3u?jV# zTExq#0y|io<;kj>Cq_#MV&;N!j@eMYRQ2}{lW-d2!d-fpho^IY`r6enV#+G6Sv70t z5RY@gs ;%S`y4?(_o>4PHMGZ5NVt*XNPYPt0S `nIN?&{}@eVRvq*0O`H)0uvjoYSwGc`<4p z h0?v8$^@5bM(9o)h<3ZcnXQ!iv#p{D)i8pV-vQSCqZ65USozdtwm@|4FrE z8g5BXtS3)ZShwLkoG7R 5PS#*~-*s|TFpzG94RX1qp%VFp9c+m!Xil(J?;o-?D zs 8>^p~I98~*w4|NO>(`L}=h>F@s;Udn&@KR^BX*Ps6Wm+@$iH+=i`FF$!2 z@^}7!Z5ZW4U2D1x-hTb@(?6u}-`;-xUq5wd!2x**?(NtA@%9htmwPzf!{rvv_oH*Z zhuu9K-@Ere{Yq0Y^ziYmG9CN_O-aOrL{ANI#U>g5g_9^^z5Uz2{m(I(G-G!YwqMB; z=A7d *RoH9C%>dKM3LSbD?twXlVphX<2XU8Wi)=IMsD( y?Bnca4SM()CY$mozv(hhb-hpi+^eOd1?ro_fV7a7>FK_&Q6 zIEe;WkRFh6PCn2mi34*%QH?1_OB|?l%ZyACjAdz$v|@7nVVnd76;{HM110UTpk`Y1 zC}7xe#Zlm;EEtpH*oVEXBQx5M#8MAz(0on%)fp%6sSzhK7+X%WSyn7)ET^b{!#-1h zXnpUD^nz-0ZdfgG#pK#B*UX+$TDPYZe(&rx6SiosIgJ!|wv7BP?^C29wE4wyr$dSQ zy5_l)k*n{HQvMy2jsPb}#j13}*%mS}l$^J|&51R8e0gy5 BAV8{RU 0I! zoWB-}S@A$5ZaS-?rO -}SWeTj(ZV}qb;e>)(*lfYeW~&zatnLM2G3rCIx|kbu63%*u2ecW1iBsN?Fpnnb zhNanZ6_q>RS&FAxlsL)pHL#M!<%?FRsa`PIZY#(s!hFMGJex9`@#v_r)S}fZ+kPuA z>QGNRI7kiN0O$9NeQgYXmNEyxB7 M1K^=!&@16Mop@0o0qT-Y)MX!qM8_ z sl8XZs;P}7rFe1N~s|fi(ysYptV|RkEHS!Dw?!^hrzp1a76Vy6q)k$ zHf&K~R*)QFxS!WI;s!7DWG%t9T0y8PX6$lN;I5^usOxr+1=R$D=c>8OccdNN$~@eT zg nHA5(g&@ezWT~gRx}rHF`rcQrIJe) zEMtxYjuxs_R8m@hC?v+v%dF2J*#N7)Z-JnU!;rQpAMw{%xeW`@NAki<4X63JKufd(=lMt^9_uVeNusMjTegBD;jpoPYih7#zwN+s^5)4;>~_gW zx17#=9XV*v>YB!XSsik-0*XtE2=%E cgFJIG|HsH&!YrHA;%`R z6g}#fvXOM6Hhp)*ubToV%Ekr%aY5N50NXxVZ8|j-!CSg{9+Wf>7-$+7n+F!5&w-6~ zt`?Q^<(LhP^^qEtyIJ)-61te4^poi{IGXd6XKJH=SNjBnzH7^O8BQUh7E&uFN-= z%pUMe7otUSjp4Q#$8CJ|5NAyzeVtRPH{MD|EMAngdz7 x>cinrB@> zUv`j*kVcz}bxd|eJoVwy{Co@YYJH#qj- zqx#~ae1o=Au|y=#41aEcAO`hyv*;!oW`kv1&rLK@cIeWEX?<%je{KVI-4cI|&eCys zBw~Bb%5|y!3dGSg>4zgIOp2i }14UX^WS#yJTs$5Oz#O$*da+!5tEedjvBTRhN#DF<+olqB1`k!q*;6{j|2l@vKtb zETdYQgYQ;bcC$1mDm|^hj0a!dD)Dz)Q4LM(v=r(#5bm04{R$}3j5&|<;GfaBSqc`E+OJNHqCsojkhF}LQQC7l%nHe`hc9XG1?7A8r%E}LeO{} eC=W7iP*?WpnO-^bmhLte5FG#-7w8i6mSHtd`tP?66c+Pb#x& zzr=%!=%nqK*(CSYhY`6{)G{?r*21$+qNvra3Fm2ONR$#fRf^V 78%&;Qq#j&jZ>SH#P))+lUbNUj;(@x zt!|xIDf6&Uqr}-mlIzUzi7pvwA`*_N82hmr5h3hT8lth2tT{l0BgeCm1`Vv#1JJ@y zB-ZKJ_deYYT=N7pxS6QRIRk`$PW4n$|0@!?mlIuJJpgOo>9(c%mknbw;3uspOd7(X zvy-za36!4QyG}5BLJ3SJgr&T>a@}Y=P^7d-G81Jp(tNb0?IQUcN? @42R4e)4xY@5C2TUXS1 zDGme&C2GSd88h>ilGaM2=!RdgZ?wsVQELRlBhk&tTLD_*JvMmQ;(E$Ls$&i9(MVSW zp$}GI+k{-g1IsB{QlCiWj3guLhAHhT##<)mYuQn(ZE1FtQHn}}t~yHvl}HmGXz#V) zNqjRPF6XTbi<}`F5k~5NV0B_H)eE@>PP?kqRz0Ziof5_>Rn%BEy=cpok5#v0RkFTN zN!BVyI`ZI?riw<=3uTyn)`(K*i_YM*GEJ#aCA80TJ^48YDix{)=RCT)qC^U%PkjnT zW5M~M*-ny{3^=gsVoaD;ozh)r%`CzQz+gKpm|VM{QlWYk0N+J_E|eOrDjK1B77V5P zt=jAR<;Dw&wy6us4@ uiLH?=qnQ>Rp?wL`}wi%bPt=4sth2S%vI zpbQ0X&`dF)g@`HpW*#RvJb(?Y-Uv(rOO;OL$w%J=8XK&|c+ovG=A+xt%KM;(VC8^t z1@73o4^|Z9ORt%Ks_j@ZR6yLlS#GY_`^4b;WCNW3eC&8hvj!W MKS0v4cHp)tz z)plT0b(pAVR~4b1*}0D@hVT?O%czBQ@!MOtBr^rk*k~tG3I$ 1qdnin zBfn{4=DII`IFd&beRU+F0$Q(8IWw+6!s=`kZBPOovS-Ug q%e&ak$OlGDD-8i}J?l1gK= z@8xYiJMzq#+)>YE-8XA-w??=JuMxUoS$jr*vVS{eQdsy6j=h^1{&omuCmDE)l4ICD zo0=F_(WI^HSHoGLA#L_yLl#>fE-O;N Rt>O!Y-CMsLjb94ex%>i{$t|qpsVJk|1 zf?!~1muDqXEU8cX=v>;VL)~jusQU|cl6dQ?S@}2{4Vn%WqV< N=vBhJF)3}o2aJ>V|sM# z#*oOb4$h0?a%2bA*3ExrHECI_Q?Gq{uvLq{Sf^ZcH&{g-eBWjB;z|S1N=J= 6KZc8>HpPo=&w do1y;!#=rJ-R1+BuOr=R@7K?DaHB$a@_qy*?{WZ%tNzX| DV19vus=(;RsXO*GMNZsdzGV^cbSHq?$3tE`g_pnQYb z7u0Ur%u7xkK!NG$Pu2i`6rlA=kOrW@sz!v)pREDtfr>BuK*6s7nZr^98?e;ObuA4* z8$_jkiFE*_S9HntvP2AEjihMZtw=z1qJML?A`fpYLvdR7YF$8qcGXCyH*27N)?AA7 zsG>3R)T-H~j?S57c9MfzrlMDFw(~v3$gbez>bjRMpo6edlmvNyZJh$54%OaM+JIuK z48l|~MQuQ_r&_j{KSh`hOsY~3loGG8%UiW@d=v5?vdK=35haeuU)|Z#2XuVR(8{ba zJ@r$ 5 z%yVwtdZJ(h20@U2wQhE2H?gB#F~L<+gThO$T Ore+5X<*l}#Y9C-H3T{ad)BJL2m98u=!^>VhOt6_{DDexjXZI(hop;~Yn`(E z-l#z3D{G;9ee1g~Ws=5*`0FRExfSeG&F?NY4abE@Gh{Ww)a`ibk_; OWm}swrq^`NJ8E$jxj!?^U@=m7 z(t>SOm_SA8jG_x+0)+~*oWUuD!jPBK85 % zF)0Jv$S3&SK<}zaBG8G tGBpx;$2^97qDBOY2eu%>l%yxD@!rT;WsFP^)4j1Z zk+{Qua5T0|O-wRpu|{*Feq}kff+i}vmfHBnIQs5JQ)#SEG$PR3lSu^nK#d4gj- {KMg*#Z&vXWjU0f1s7pDJ8A?6K>alWIHfi5Rf3aTD^cN@%P zHXcxjlH%*gct9abQm0m>c@WS*tk-bxfI03hNUg8`w(w|_LO=#P{BqbAEjg0L Hl72~a4r2WrQ{rAO2k6uI5}OglVVifT9wwSm^Ovz dW=PZTD(-UTCv!BB}rzr^K_TQ$uMW?<2W}W& a^X}rA%cDO^0t( zuQ26U 8q=M~<#Afj%%h-fyTefyxsnbHYVKm3IdNl@%7_ zBdc@y7!xRd%+XX_LTxwYm`tFeK^4-~WLpJ=DND))I;9S$Qw>gTJ(m>GGh3;Dm(3Uf zHJz #em54#2;;3pg>Vx;Ha%>B%efui%M{?ek>O8sFVC| oN_}%cSx%6W8&u~;a zNksIb$udR1TtBvi33Q>#uQ2z(m_P-sOu#cHP(d5B+X{UaIQQswnChUIIrsymRQ7?{ z$^Jl%1nGtv7wD3J@0|r{Nk3&W;~5v|QsdSz^T7-d+&X4XlxtzJ0;h3*(~i84){y=i z2dmx41S;ZzzDl)GHquU$lMYF6>gM2L^1+nmNu*`cD?8-L@VkXT5-z-wgHdz1W{vuD z`YPSCy;HQ(F+b@Z;ZJqN6Ct5Vo(& >&_Hgc6O>=udC!2%#)j=O?q6vUv~+^YV=c^o<3^aMr^H`(fv8G)B~wfviLJ zppv}Z6FRNZ1Jsv)qdKQDjH-qzG>jbC@~$|H!WgytchY5j(QY<($Znlhk&%Fkw|0af zp7mV4R7ZB?kg(tzt4P;H9hFJAz928n$WJj%j6bo{{y9-q9bm+HZzv@JMObVb(M*tl zVnw!tgR-lv>1mRp-+uJdVPig^qmhoP>)7Fg?Dc*OJiStX?z l zSFTc6HlmJfw3A-^(Z(tSw1sge)Bq1mv$_xL=Hw03Xh0vB(14!r4jNE=Wgl`ly)dXQ44`iU?IyxK z*lYxUpi>-$_uq2Y;rvHST|D{s^-9%nd>GX?3-@0Rg1cE?P9BeQKd@dN*r~$>>b~YX z*36fO&UaLMtj_BEa^vijl#Uu$dCd_q7SJgrTvV|9%1ew;E6^vts$4c-JLi*=)YLFq zi0aOINv+YFLxva$=uLa*jQKp3BTMr=-YA~ 0krn3@I~q&8>xOx8{2k4j8M}~nwNuc&VJeXX8_DGApb>EMxU?j3 zpmRlkKIOCnx=O_Apq>gg`g&r!M5EAuKJ88Qk`a;2-sH+YBkLVH$AU@h6w1slSfESJ z)DZMagi CUk8fqvJWdp(}_ zzXO+2<=jx?-&u&HRk{Q9l!V_rDZVx1G<8uVD62q zg)FlHL*rIYxDNiE2%qaRqH^z7_B7fPgReiZWp}r}Bh0Q@CQH)7B7Cm=MoYAfTh~lQ zFWZ?>35lRD;k*lCMi?-_t|iNVUo?Gfqp*$7oFg_{bnMjig{-#-^5`%%k$k>9#T&Gs z3v~94HFnqw9b+?@$I3(H+8xXs$_sa)HBEBCpe7X 0nPBsaIPt%Ii9h&v!@a>rty7t{*aXz4@7Aey@dp`g;%e56wte zNG{uqQu{u-%zN_9xsMj%%@nDq&@*pXjK_%< _Mq%F}v)hp*gV2vk#cGZRY5iwL_K+eW^ zw~7Q%KDp|iZE>8K9*lM_AE*_GtSOmpuVCv;Su}qs9xzKg3a<=2PH`jFd7yFWY)q=# zrUS5;H;HyAT16=-F#r0TgUxpjU5A%hPq&U9t#^%PQ}G%!QR2#$7VG%7X>G+Dc3WMV z>6@cczXK{5TP~b`SZ6}T)=Wg%YlA*TA7bsGeBQ4|PFmiMLDdR5a&}`>Psr_VSm>sA z09`<$zZ3@%Fq9S2SVS5O4z{rvR5Lfp0s(#y)>Yf-wKG}SRFYFCCyAYCc-H>>xN`Z) z&`lIhsFt)ejVepf8Y;Q6unO8)UTxV&(B*2O wJ1cZ8)o5WcT*a!+7~Hh9TcuHJgBFg)!y#l=BWsBmunWzFD;v59FU$iAb1~4a zR`x=k gNQ3RiG1R#09J9AW+lCp9>wrpH8L&kG#=O~Y6ERrN(8Mr-#gMgg{4s) zVu+Hn==zmN-`^CqO{C?kM@1*6j=t{>WJtj1ncBvy1hmMd`i+>;p;v;rwUHFbv8S-p zyL)TQ{E%u*e<)8YTzFC}^1wo_1=^K?Ye}*^Efp#0!du8=**yv%Hg{vgdxYFDXf? sHslTwuJ>o<%|1yz!tH~gB5`&)8jc15Wb35AWKY$KhfP^A*z?#^fx z!j{1jEWBZ?l6;`UE?k*C>1BX6a>I6nn$^p4q1U?Ne-aYuaA9)=COHusWJ{Y4cB3fU zTEXW=pBzOOwrUKo7=0U58ttsd!p-pVuX1yv?um|(ha2^ph%H>Eti7^qY(XvCFDS|c zjjp|xl(> |pd21LeXltAo)23qo!v+WoxwyMTQq>WfBEhD$x*B>ZI88kobYhK+S>BRg-j6Z ooasGm`k301m;jf8p$yN4!9H$YP3)vy*KQCIt_e)zV@? z@4>_bM OqY zf2*6>2--v~k2nOe64;~0>Sng|I$>p!Mdl%@gM>z=9dSbMlw?jnV38JX>6drV+#Ro? zUy2?!($ZGYdnq{?&=(f6`(qC $u=6>ZW4Ex|3$8y%*0V|>E0NO z!Aqgd3+AO2#!Gg?Vhh|+De%W ~-^EK!CJH`{X@p zTI+^iwvpk`SfzmWP8KxdC4+{L6XUAFsR21hZgycDyU9r7CEGA3+`XVzp~9^3e~c7f zvJKwh#CWQekqX+Ui^D;2omORI0GlA;P@rTNM=#`hYAnVVGj&U>CPK+d4<_frrZOq1 zaX6I5VmQ~2=kt)uTt{W>vL9ErOO3cC+wCRYnd;-+nBI0!2Ds41*%u*iN7q5yDHhUg zaTzt)19O$(L|v;|2OXtRlVM+6e>xE3m)%vH>+82qn^BX=wTrD-eGx&mFU(){qnj)j zZls?Y7_&+@vKjg<*A(k-?Nq4>7sYbjk!PTBeW;Ghsv@1442oy3q-hsInhmP0pl zYfIv58{8#>9jn9<{=h=#4b<4lM8VCZB@zo@BOf;L{IE $J1Hrd7OkX E{{78-7&+MkHA*d59kX?RvgOup zX$Zu)j&5yXs0astS3?H;)^yD-AJmmnd$?wCZTFNAx@Li WN)V8 z-4q!&84j45B6u!_ueiV%1%;#e&G>$MoXh5;IrW?aJBQM!$+oa~*ZbXQl(XsBN;)Ff zB=$$ zw$2vr=~CO8+Lp0{ZE<*Jdemeypn!NVCNCbfhiYX0I1FS>f8%*22iG6?ssowEu@l1# zrpV7TTWpLMEc_#Z8Z#MYdOL@#F_XPfYxM3*A0->PB$7f#m*{Nf7R;f*xB-LcRKB_G zL@OC|KM6J2r7g_4Z=O!oAw~?Ct1q1uOGZuhz(N5D)TqhuY6@ecCWGAV#^+f{O$I@e zf(}9|1EGM7e-Y{LBR@@3rzX496y!hB@Is~Qj~7&U01|RbD*f0ZND@r7a@H$+lbg%T z6p~9=eFR-@j3gmmQFL9~Ve$dX(X`mnX0>;yUyIVm!HD`h)SDaMzw9Ga+l9zaTanYe zc`0)lhtjIw#!8z~J~8o+KEaO1+y)h=)niPx-N nOPo~mXj-M=xW;*R>X73kyp zIhiNwoxTKZi_D(t%N2C{(OZOO!O_M#RFE1dI@V$ipJbX|*kzTnKv}4u5@@7W9P&fA z1d4;Ge+*Px`{;EUjI~-{k00BvIcETB*yv9m0PP(J?6UVFadYZ2k$?|3sa}bE)K$m; zCF^cTJ2RFq rT)?MX=nPPC0XK29zj1MK ze|}|%i#zJe2yUsUM|p= ;n3F9K-SAl!PeWcfW&RgDFx?T4w>Ax!lC2$o8|_Yt{$$-k368Y-8bc zS^W57uZ|NZ$$9a_v `Lv2rD(J>0jh&h$09ZDe=3dW zqzMO9u`${U)>$&TO7l0>(fB5e;iXXR9n92{*nDA^{-4@`Jv0?VzrUdHvOSb6ESfo= zS{9zr%Uz?w*sb;Do$jhWH6c^sfu}m{4Xsu(yRpnCySAWGL7v(tnc&Lm{;P6kj*Rk4 zJV(IM0$YK!Z$bo%xlfU_BjOF~e=e<{&GEs%7A;F;ZG|C=BfmiV<<_>M&7qPs=>s$6 z0^+*1iE_}@L9t1YYeDHJJL7 Xh<4y6>n9e|%{tu-~9#1(S+RFDg+gD+(mFETJ{TU}={gLnlUU *^yYpk*<|*ceteHQi_enCKbRP!aW+Id#=fXEfBMDjVs~E#8uMy_ zDmKX|PppL!rVKVZ7=^AgVGR(yHojcX (KlHRmFqdu8EJ>Gs5&cUX(b(X<--hBea&U}<|fW1-~4wcfL!xa2&KtZ)FFXiPjx za5D4D-=n^u5a{b|Jy78qJ#vJ$p_i%_c1csMxwlSw6cs`ze|GHS6I3CD%H+((2`Yq; zDbO-mfb4F`KnNzEPCrrgyyg?V26a&gSw_xAaJaFyT=GRujY`>)9+0H~o?sW&{8Pok zSco!ts93h)A1c-{!iS3WA?h=S_8GlA=kr9vn|MCqJ?f-!>Us1$#1k#WQmLhCr@RcR zuu43~)G~V?e_E;(2)@x=U87x>Dzp#$#~n3?FkYW>a1#&Hou9h*w-?>jHFDJTRcgdQ z1uHZX)R=!&HBEQD28#8KLzOu0CQ;`19lM!FCn_r9N7zH#(}mv#b!nB%(uUzoYk#VB zn$sr|*xS_cO2nsg^bCjU{>GYCwQkl e{!*Nlf>$x>ekM_Q{z#8p=x?< zoh&5x>kifGof7qtR|HhyzGId;RaW*x#zoSJ9bTFf6t3tbOq?VFTT^wVr`PCXZxl!e z!nLONL*Yp5C^6m7d0>>0C+LdO4I57 ^Ou z2W^ukjkgOcJlrI@mxje}6bQ2q=MI|uZI+<-1wnF+xzF!f!M6`j`cn*?Uj28+_xl(E zDvbw^p{2jPOs`Fg6FIPBwVj|Y|6_oB^}YsJe?AJ_Ky+V+ceFgWG{g|{)@S~K@sthF zKm3sULN?LAybEkS O7Rg&!Y>y{+c )#fGr+v2;M&e#+x41!yAnhk zf9!4}x=aS~Vx )f1V!=7C^{KjGsxuwcF9*Zr%}2wK@XRH zs`g0u4*0VrO e=tO) zCstUkc;21cYVn?>`)%gqJ%(jFT@2IRdP$#FZeNbP>%l=MHu@X~rtePK3Cxf8boWRO zN#>Vt^xjRt3h(ZtpI3gjFS44r>Kw5^uS0L-+oX%V-h6t*xV~Xixh|ie@G8p#tv;)w zcu{}j_VCV>iV_>4Y~1>Fat8x7f5r)1YeETS*~8|18vl==%~!{?tf?pJ*B)Z+J&N;S z+XKc7_P>(+vAJ~`A`)=FKK8P}Z(VF4yqEJ48fKFJvewJ(N~FDRM$v_6E#o5+OD?ri z6)19LSO$z;ayyBNDdn$cmY-#L7$42;EDN+qcP3yxMIT{QdgJZc$tzp3e^fu9m-5Bt zDdLQ~ei8Gy;f|Jb;yxa^51V{+xLCI<8_rRNc|>!`D2!a}4xsfsn6`WgstCyVyj=o+ zp1}b{XRdpEjNX ?xWuZt)47dCo4&j@!LqGdWr~%pXsgqgr=)OX)IM3_$A#&^ zbH}*h0@TKN`n*oDEuL+8e{-XxF_ZMRu($LClig&ghmaZ+= zdUA=p$kFC3{XntEGKia;nr7%m%aE1xJQejtm%!p7q;w27^f=j%e{=am)ci=$EK vmfM1x5{i&E~&zL&26Ez8dVzcM2q zA_f!sX9mYjBYAq79ybEZCKGrh@#&QI%8B~!T#)l3gV?{3oE&fZ@j#1N1~9i8eU3uI zmXT88Z_g5_&=c^|0%^KQom57WTdJfdNID)X9Rz;rBFSQ#e@9<#4Q$J`PEnhz)qtSW z%cq42571sc(pRTWMy`o&J4;x*(8|(*xbpfvL9Mq{>W=OFj>&zPS%~6OpxuROisTqa zQD7EN5a$vEYThI@Qb~s@$V`$YWjMHNF4@vSZ(x%(XJ{=!NIHBWUxJWzWTLTQaqmp) zR^ldEh-#UVe_g8^lsR>_(QW?meX`lFxQFBiEv7$?Vf(H38oeO4>YQu(uN |u zQy>fRBL_%MYWSWOCqmif@Ov(C#TLuprUTYy1SzD8f9q{DoK#5GVOwkhtXE=^7yT?! zB!Mxn!M5X@65I}hQzk)ksK1^C!bKoWc=>Cz&yAo5{XJ!_Us%=42h3SAydL!~UFku) zN#ggY_J(=N=MzN@m@Bo3!uXn>%9^^VgESi{%S%-~tY727h-U9T#LN>%yj!<)ACnbr z{u*)7e=sU3DG#|G^`jOLy@?)1PP32{mVCRipyKJM+7Tp;6410ov{Q{lJ=0u^bZ>n{ zFA>GsudK(&-cE0wP4z}Vxbr8v>V5t7`ZKeURo=()FJ@A|ZWKRRE~{b91OM?rwU9)% z^jza4fO&2KrHWAvHmFeaN<=)FZZD=2R>mA;f6&rO2~iwIZQKDvm&VSWMCGFNzFDu& zReW26+q?W^+xw^kjYyi1zrHLi^YZOh&x1~vP^Dob-tWihWo~j=LgU5_C4)wKlfa(G zsm?80E-)elsdAf|Y%1mJB)XZ|>Sj~EFf#+q<|Gh5E_2_cr^mxkbTbnhtumOUS3)Wg ze-bA;rm?Ie9q(m!PSfwbk@wD*@R5(g=Iz2{E8;6X4@0~b`vs!`7ohsc)E4$qm|-IP z#Z)u (^7Np z>3;n7q4D#P3v^N>YfL1ceB^G?+&Ri=f0dk|#6 qB=98cZy>3tJ^0^l|o{ zRc0`nSG}%!R!ma2wqTtE;O1KfI?JN%q29=n(deDdzxSv~rVGt2G3V7h9dhkrrllkf zTv+Re?E^)pz>X-vy{-u_1x9CEf9rN7DwPgWb9rI`&moCMl}}yJvC4dW{e{l`D64M; zG36bGAKXEuiJb9i7th86vl^Nks!3h?%*`~>z~=DwYl;GE^{5JJ`YU(z3aqQz54t{) zT?NgW0y-igtS(<*m7U{?9SR_rDQvYYFS=n(YVNR)PPChM45`tXT8(;)e pnxwyL)PuX*&()a?%{S39kM!4529 z C ?+B&Pz_XF<}u17i-` z_Tk<)Vs!yqkZ@_9f2~UOxPPd$yiAXy7g`hPGJ4eGDAkxA(VMjddZkp!FleTs=Plfb ztXZ-+=04~all9S6G?63*HTjB;*6Ci Vzi;2tPaY3*v)4wtJ>#twTv}bANf0DQO{2db~?hQMC(TR$5 z#1ltmQJNfA8Rhs#nOwD-uOp7rX3j;_BlRe=vp^9-p;6i|%?AsDm^->q;|P7M51V1E zq%v+D&Se?qSeuw%U@M!Ss(O0>K}(G~87|{hc67ULekgV4YnPNt-IP7;95r=Qu$lMt z4XCtLA{2Tde_N5V^XRofMQ-KEK-qOD3*m@hEs+UGc#m#a @1bp=8%zm_#J#Q#5v{-z> zj;ffrdzK@$T2F$#Cv&U7+H>g}FjE)P$aIDf5SjFYe=b>v6Z?u8MylW6F*_0Opwze* zi7hehT)dk&ITy3mvmGqBVKec^!c@3)Cl=J?ogGb`>>sM|;HVDz4~dc8v ~xV0BRUw zNZqio0Zz1jH7!16?+{ZY&0oxq>`AKGy)1%`f7K4uOqIOZ_`=bOMu_ZpFV(bSk4-w2 zRXquNDjT_r%y^F4A`5%p&?1@6ZsU2`{Ckuh(+4WyBur$FcV)9Y`%yZf%_l@hAqRL^ z$l%SG;my?GAW-)9OQygUSWt^L|Eqzl{zO>P`{+!h*Ofh@zs6EksCYqXB-R71n+Cgo ze~$Pq%Fod-`N8QxM{a;4Jh?J+z%uK{ml}Vyca|nEU2{M$wUluPyRuwE%n&3tZIMtU z6`9(L|DuxTiJA+dq!Oq*CK77ueBli9>GX9|n%*f=s$hx9Px4dHVf-+((h)7bCdDG0 zXQpCV`9{KGZiJbl^Jr585|s`ffRYqFe_%OUUe84_N9t8=Mk$u_sP`b|Z6z^?iIH~( z1-}qcfy$GAyW1-b8b_g3Uxpb^RH^0=Suw~!mCQjFm^Y4mqT-Lou+PPahor+pi@Qv2 zA98J7pdO~e{#p_#5-qN?%r=`uS;NoD>WK;EjPh2m)V}$1K0;kmye@?AvOpj~f1=bE zrG-BplBs$I)=k=cgx1zxWZOsR$S%dM<;*?^@6k#ryx4~~u7$a1ZhvFb6{(Xe$4oK? z;NMBn8B?3D$ZDzH^-ig3Wfprd vm;D zdIO6gkaQ(OoV*ullVe;L1xR;&e;@XtcTbkvHaoE~LBVPUZ r`^-?)Bx} z`f$PWoZlZG&KZi#oCUSozJrK#`jD!r@gmrcPpYn4T>5g524|fec=S1AHn%4h^Ao5P z b?GeHK1O-rpRw+IDvG_)|?;DoA*f6nJ#duj|m zlCKuC^300ixpF>HU}Y8RE1IWwVyDe}qGD-4Q%jX)N1AB*V&0lqERzPRILx6AK6>Ch z4Ou0w!w6rRa8PG#HDpH%+IYtvju#sv@A*-;9VK8E%*+|m!|Bxu{r0d8vrX=a73n&3 z$4-0my=6H^v=#6#x{ki+e{nF>PPq v<(AlGCeU~l zDlA|tCwJ;fA>9L`8FzvbUlRkek?T#)xHlG?dp7r37bVc>c|5Sw@oND@m}aFgHm6sj zRYhhc%{Kkw>54W@q%OLMo2fCE!sMUR)B<~&Mz%W{xYT+mXwKn(f0xiBL|1YR$l`o= z3&;b48wD5kLp&h3z8((Rd;?DVWswecnS~WvY%!7b8dK5Vke55Yi<(%FPcxIlS7-eU z@fbzb2gb+UPzmMXL?tl;=1>VIqxywk4GN2u%*-NMb>s`N5d&_D-E9XC4dh5IKCUe6 zVsc=QaNoC|SOlQUe`ZZ(RqG>lcRWbF_nVNY$1g31-by7!31Hfa2;VniT8~YXR7Fap z(R4mg9p5Rt0U>Y)8_79H|dXf8+xcnF$P3|2}G2 zv2^Jgk9xY>S8^&Is81V6#rm_J?uIh$5NNBEX-3isbahhUdvp`%W)7S&J{4plRl4v+ zb+1Vp*>T@Ne Jgh7d}4ygdF2%Iwo!zendn7lzDqdst4S|X3xI68s07EJUQaA0Jtmqhgg zAwTDVani1jp0H0|(2>Iw5r<2K&nE~w5t*yf0GYHwf1BfgZq|WLz4BlNC6wBU+0AJ& zY%bB2D%HKDlN1j$uo}Kh rr%zONR%)Tu30Ay36g;Z;<`O8>SKhO$ZnP zR{ >FN)IkB5kCGVSBFc;X%WQfg} zIdN(3kyn|0Bj=K~hwX%!6Wg(}<-8EuRrpn{e@r@vIV DHQh-uxs<2rk1`5)y$`)6nUO{J>R3J z1O=t>assS1N=U0+$V0|>IUkr2&zz|9au%>rHU{Ta!A3m4kdM%k@_>%X$uV9|K`W_n ze~gz?(9-9DDwb=1Vtof`j`DH>t(oPX8c9Ht^33R~@N!;y)n!aF_G-MGry>%(oDbAk zfKI(CcsWnS%6U0YeaU$_-zcl9#3DvFICrkZ9;lU^nq^6jNa5wgQ+p;Ws_}A)ZWg4q z#=!X)0Y}lyBHHc>FDK@CM}J=NN6NA*f8 hdHVP(b75*13Yu)Ob0u z>h>V%knwWLCQ8-ExT&^sX((sPzzvFZT!lHF+tU2HKvVRo+qMNuI(T2V3V?K3-xLZO zBL>>)K^3eYlnQIBg_aXgP9&337Y{bNuh*7NC2fw_ZOzrJSuz=GVSiV2ajE1Uf0hmW z5OG#$Tam8N=KV@Zl&5@E*^Wf=9WN=a?2I-zjYc^Gw3lFy@^h)w!PP$X3>nm$jh3@& zK>`C@*-xOk-EB`=&WeJF#8{6w%z*9Av=b>xxUfx+g7b0;=p1m$%PG)c3s*741ak|* z$)j#yoYLTMa3=GQP#5^pOJ}@6e@6{+H=AFiAO`2URL`P%dL{Nv)nn+ysEph}3A&-G zd5_@AT&CNUO&3d{Dl=DN6{ux*S848X3;7$`?4%7|&MJ|y;iz~hD_nn6*!FxNG_(Se zolp@0?kV(Ty>Yck);we6#7k?Y@g=1TFem!rJjfEkmMESFOh!&YJqyy Z_uJAH0g z=wHUjDLV6HgE+}dhBjL|djiU;d)Ne)S5n2jL@v=5O3Z-{YQ8(C_FQi#N zN=5RIedxN(K$=L(2q9?X4k;UlfGyDJ@3~Gd(m#kcfnPtP- +CL%*N zUst*tPgDJ>=~(+9 e+P9|i{ s*#KH zRI6fiPqpep)LnCE7!{)79eO$q;|cFkvTj~z+EL!-C qZ8KBiU~_|Qx> z>-JS!bysX==jziHe@oQ4IFaU-2HDSt>B~=j``e4Y>RLF6Yvwwy6 k2!x9xT6k|!#Q<^$}h =@wdo^A z$iB{2X1o_wX3l;#rU?ahXhJ6_N&}v^)?oZee&MT==x5HS+{2Nk_e0TWjA>2xWgZw^ zVJE1n(E}S#M<|&%@#;&8upnToW8?b&^eIVvRn)RgGL6Z1dyS 5Qa;l mTSufF}{ zQ2nWbI+JMgtZkrWHBUSele!7l>-KdgjDj$Ox996NS6u|n%&lu0ArUlHzrU%Uxk<{% z@P#L?e_&}fo0zvPxq>(j(jsG#B^8RBvi19waAWS6XoO_NZ{jtb%^3@2#J!EKP_ L-(B($j9TaYuD#1%N+(1b;ZR)ONTO4a# zBi=a-d 5EEsn$Ng0HD{Bb!qa<=)rMQ#ATUJXW;7Qb%SX;? zDsb(d