From ba369350065010fd6486c96f150876016110eab7 Mon Sep 17 00:00:00 2001 From: Gergely Brautigam <182850+Skarlso@users.noreply.github.com> Date: Sun, 26 May 2024 13:49:32 +0200 Subject: [PATCH] added minimal required values only for website --- wasm/app-worker.js | 6 +++--- wasm/app.go | 21 ++++++++++++++------- wasm/app.js | 2 +- wasm/index.go | 33 +++++++++++++++++++++++---------- wasm/index.html | 18 +++++++++--------- wasm/main.go | 2 +- wasm/share.html | 18 +++++++++--------- wasm/web/app.wasm | Bin 28368451 -> 28375894 bytes 8 files changed, 60 insertions(+), 40 deletions(-) diff --git a/wasm/app-worker.js b/wasm/app-worker.js index 3cb9ae0..26104e7 100644 --- a/wasm/app-worker.js +++ b/wasm/app-worker.js @@ -1,8 +1,8 @@ -const cacheName = "app-" + "v0.6.4"; +const cacheName = "app-" + "v0.6.5"; const resourcesToCache = ["/","/app.css","/app.js","/manifest.webmanifest","/wasm_exec.js","/web/app.wasm","/web/css/alert.css","/web/img/logo.png","https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js","https://cdn.jsdelivr.net/npm/halfmoon@2.0.1/css/cores/halfmoon.modern.css","https://cdn.jsdelivr.net/npm/halfmoon@2.0.1/css/halfmoon.min.css","https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.11/clipboard.min.js","https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css","https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-twilight.min.css"]; self.addEventListener("install", (event) => { - console.log("installing app worker v0.6.4"); + console.log("installing app worker v0.6.5"); event.waitUntil( caches @@ -28,7 +28,7 @@ self.addEventListener("activate", (event) => { ); }) ); - console.log("app worker v0.6.4 is activated"); + console.log("app worker v0.6.5 is activated"); }); self.addEventListener("fetch", (event) => { diff --git a/wasm/app.go b/wasm/app.go index 4bfa6b9..fb97490 100644 --- a/wasm/app.go +++ b/wasm/app.go @@ -25,6 +25,7 @@ type crdView struct { content []byte comment bool + minimal bool } // Version wraps a top level version resource which contains the underlying openAPIV3Schema. @@ -103,9 +104,9 @@ func (h *crdView) Render() app.UI { } versions := make([]Version, 0) - parser := pkg.NewParser(crd.Spec.Group, crd.Spec.Names.Kind, h.comment, false) + parser := pkg.NewParser(crd.Spec.Group, crd.Spec.Names.Kind, h.comment, h.minimal) for _, version := range crd.Spec.Versions { - out, err := parseCRD(version.Schema.OpenAPIV3Schema.Properties, version.Name, pkg.RootRequiredFields) + out, err := parseCRD(version.Schema.OpenAPIV3Schema.Properties, version.Name, pkg.RootRequiredFields, h.minimal) if err != nil { return h.buildError(err) } @@ -162,7 +163,6 @@ func (h *crdView) Render() app.UI { ), ) div.Body( - &header{}, app.H1().Body( app.P().Body(app.Text(fmt.Sprintf( `Version: %s/%s`, @@ -185,6 +185,7 @@ func (h *crdView) Render() app.UI { return wrapper.Body( app.Script().Src("https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js"), app.Script().Src("https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js"), + &header{}, container, ) } @@ -275,7 +276,7 @@ func render(d app.UI, p []*Property, accordionID string) app.UI { // parseCRD takes the properties and constructs a linked list out of the embedded properties that the recursive // template can call and construct linked divs. -func parseCRD(properties map[string]v1beta1.JSONSchemaProps, version string, requiredList []string) ([]*Property, error) { +func parseCRD(properties map[string]v1beta1.JSONSchemaProps, version string, requiredList []string, minimal bool) ([]*Property, error) { sortedKeys := make([]string, 0, len(properties)) output := make([]*Property, 0, len(properties)) @@ -299,6 +300,12 @@ func parseCRD(properties map[string]v1beta1.JSONSchemaProps, version string, req break } } + + // skip if only minimal is required + if minimal && !required { + continue + } + p := &Property{ Name: k, Type: v.Type, @@ -316,21 +323,21 @@ func parseCRD(properties map[string]v1beta1.JSONSchemaProps, version string, req switch { case len(properties[k].Properties) > 0 && properties[k].AdditionalProperties == nil: requiredList = v.Required - out, err := parseCRD(properties[k].Properties, version, requiredList) + out, err := parseCRD(properties[k].Properties, version, requiredList, minimal) if err != nil { return nil, err } p.Properties = out case properties[k].Type == "array" && properties[k].Items.Schema != nil && len(properties[k].Items.Schema.Properties) > 0: requiredList = v.Required - out, err := parseCRD(properties[k].Items.Schema.Properties, version, requiredList) + out, err := parseCRD(properties[k].Items.Schema.Properties, version, requiredList, minimal) if err != nil { return nil, err } p.Properties = out case properties[k].AdditionalProperties != nil: requiredList = v.Required - out, err := parseCRD(properties[k].AdditionalProperties.Schema.Properties, version, requiredList) + out, err := parseCRD(properties[k].AdditionalProperties.Schema.Properties, version, requiredList, minimal) if err != nil { return nil, err } diff --git a/wasm/app.js b/wasm/app.js index 24b7909..131d727 100644 --- a/wasm/app.js +++ b/wasm/app.js @@ -13,7 +13,7 @@ var goappOnAppInstallChange = function () { goappAppInstallChangedBeforeWasmLoaded = true; }; -const goappEnv = {"GOAPP_INTERNAL_URLS":"null","GOAPP_ROOT_PREFIX":"/","GOAPP_STATIC_RESOURCES_URL":"/web","GOAPP_VERSION":"v0.6.4"}; +const goappEnv = {"GOAPP_INTERNAL_URLS":"null","GOAPP_ROOT_PREFIX":"/","GOAPP_STATIC_RESOURCES_URL":"/web","GOAPP_VERSION":"v0.6.5"}; const goappLoadingLabel = "{progress}%"; const goappWasmContentLength = ""; const goappWasmContentLengthHeader = ""; diff --git a/wasm/index.go b/wasm/index.go index 534fa3a..5d0fbb9 100644 --- a/wasm/index.go +++ b/wasm/index.go @@ -20,6 +20,7 @@ type index struct { isMounted bool err error comments bool + minimal bool } func (i *index) buildError() app.UI { @@ -98,8 +99,9 @@ func (i *input) Render() app.UI { type form struct { app.Compo - formHandler app.EventHandler - checkHandler app.EventHandler + formHandler app.EventHandler + checkHandlerMinimal app.EventHandler + checkHandlerComment app.EventHandler } func (f *form) Render() app.UI { @@ -107,7 +109,7 @@ func (f *form) Render() app.UI { app.Div().Class("row mb-3").Body( &textarea{}, &input{}, - &checkBox{checkHandler: f.checkHandler}, + &checkBox{checkHandlerComment: f.checkHandlerComment, checkHandlerMinimal: f.checkHandlerMinimal}, ), app.Div().Class("text-end").Body(app.Button().Class("btn btn-primary").Type("submit").Style("margin-top", "15px").Text("Submit").OnClick(f.formHandler)), ) @@ -152,20 +154,31 @@ func (i *index) OnClick(_ app.Context, _ app.Event) { type checkBox struct { app.Compo - checkHandler app.EventHandler + checkHandlerComment app.EventHandler + checkHandlerMinimal app.EventHandler } func (c *checkBox) Render() app.UI { - return app.Div().Class("form-check").Body( - app.Label().Class("form-check-label").For("enable-comments").Body(app.Text("Enable comments on YAML output")), - app.Input().Class("form-check-input").Type("checkbox").ID("enable-comments").OnClick(c.checkHandler), + return app.Div().Body( + app.Div().Class("form-check").Body( + app.Label().Class("form-check-label").For("enable-comments").Body(app.Text("Enable comments on YAML output")), + app.Input().Class("form-check-input").Type("checkbox").ID("enable-comments").OnClick(c.checkHandlerComment), + ), + app.Div().Class("form-check").Body( + app.Label().Class("form-check-label").For("enable-minimal").Body(app.Text("Enable minimal required YAML output")), + app.Input().Class("form-check-input").Type("checkbox").ID("enable-minimal").OnClick(c.checkHandlerMinimal), + ), ) } -func (i *index) OnCheck(_ app.Context, _ app.Event) { +func (i *index) OnCheckComment(_ app.Context, _ app.Event) { i.comments = !i.comments } +func (i *index) OnCheckMinimal(_ app.Context, _ app.Event) { + i.minimal = !i.minimal +} + func (i *index) OnMount(_ app.Context) { i.isMounted = true } @@ -179,10 +192,10 @@ func (i *index) Render() app.UI { } if i.content != nil { - return &crdView{content: i.content, comment: i.comments} + return &crdView{content: i.content, comment: i.comments, minimal: i.minimal} } - return app.Div().Class("container").Body(&header{}, &form{formHandler: i.OnClick, checkHandler: i.OnCheck}) + return app.Div().Class("container").Body(&header{}, &form{formHandler: i.OnClick, checkHandlerComment: i.OnCheckComment, checkHandlerMinimal: i.OnCheckMinimal}) }())) } diff --git a/wasm/index.html b/wasm/index.html index 2a0b2f1..bafca51 100644 --- a/wasm/index.html +++ b/wasm/index.html @@ -1,34 +1,34 @@ - +
- - + + - +>c?AXqFP~3{l_Lc2T7)lvL!bedf5#eR4@_`yC)%IIa*f4-!|$ zLR3SjURlbLUkJGeNh8c~JVa_>(C83p>h?DEQ7Nh!1@Kg6QDx(8Dl9of28FPalq#0O zlFt(DFruXp7G4@vR3lYU5d!i~q?w)BXOe}LdrMObTJZkdStyu2)D1q>b~eJ|!=yb~ zPz;&tT}4LobM)h{ zTyj7Nx~(Z{tnH|YhFS8p6eU2w-U#)1Gp4|X(O6NzC6rYO@4)dgsYpfpgeeZb5OJBT zrIDwX$&YkW4;t=L1y)=^8HI^=qI!6%kFSurJkE19;08IubBU0Do5WEO{{0$6NESTt+Px_ODVi-e1L~$;koW*o?O#vyxk%Uaxd6!h8896ImeBjw#l=nF> zVY!PhSniQR3Q*_19l+H4B>?B{lWycd9%Nphgc?j;(Wr*~Nfg?m%neOF)qxL5BuCrB zwRZ7`3y+8gpLk7#(C4Y{Ft9<82Y5Ut)wmaS!!YPEszld6LeU$ezq zCep4feMf?EiOPCM@*%WhX*V_XJ>gg%Tmn$5I`)CM**bFTU*ZJZM`S9!H|;-?CwxNY z3CL{U(G@!ULtJgJGyWlstzeh`K@ABz%`m3^`#HvnI+SYuMB4J)J{V1SA1+IsPxuNP zMpJp-gwZoJ@Y;7?q#KjU7JlCJ01_@ETM7=Ahgs?;0r|R2#%mE%4VWr9SPHYChQ!at z7R5U~bcfvEw+L`f;%|Hog}a0OGQZ0nN}Z+f)kWIiU8Q+8j8{tYV@OUd81$6*r~{q& zT4lLJb%mM#o+G<723LaudDJC~?Um7n75H#+{0iG=!x|cS9|N1>Bon-&kw4-fZ~Ylp z7(WNM!M%d`Xzmb%<~jPQ?}GR?JhucQ?>hLwpkT~Mf$+CDt!kEWFalSF_aggF!>na9 zO=^QG{ArFvZGnI-xX(3L ih$9a-0e5?tD};nOVa2uhF*qI*oDlosTKpEm9e|L! zyblce)43dEbRz}`seoJjsdf35lnsv7 r<0%@yCe~^PH{lKk?dq3E%^&ns9bKzPv%_c{vE~li~vG) z&0N$bL&Goo!H=zZceJO(wbmGwGY>MsmDYUoa=OU0a5zsa8CC%*& &d;{(_xU}KRVNeZ&F95o<;m2Z!bK3CZFbHkSw=MTMl>@OO&e##! zRdAVi*v#W6WVOX&x1nM?z5+wY79whbfFAAmo{rY$5lixIIMfd3|82O^j;~6)FSO^& zbJ)eo9e95dGaFpCWV%ED4!i@^?)q;z(vDm_4{>h>xWjK9co*`%2qqY#{M3It@BtiI zd=>&a@t#!BebtHYK*NQd_?k|Xnr!WIuw-M}ubub?2pb>4`{7>EKZ0*f=D&s!5qxv* zBcw*~$ITz_ivdEo2X?NSgXL|?J!`D0109Y9J78HP--TSrg9%5RO~7^LJ*&_<%mfF3 z4fiR10C6;M{henig<099y85vCEuHy> &ToP0+gg2y-fc(Qn|W=!1n4fgcO z94+ECj1R|MO!S~^H*nsEy3tfjAXn{HdAK@^k0o 6dkLdfwGviV6JkmL+<^*ejWfQPK(laP fXc99A2Iwcf;9$IRuwZAP(M+r)CIRWzBVQh7nj6AV}5?1`j}W&mac$YPDc|El*q z6kD{;fS)>=c+1%p&}}|nmt58Q4?E`bPszd^FevN>nm88lfm{&;Tt{=zlLbggO+_+6 z;6jW%pAC%{;u428p@M}t$|NIMbz02t;6FE3BwSE`UB(NP5O6LQD=&rzvHUTz;w^;r zluYWWIDReX{p(rLEK-dnsVdr%WwUS~!OS1D ){{aNlZv5+#1M zHT)qSB?d&VJZuKzTD~ebm)gkCXx`b=LmjXdbtA83uSG_QQ`CU$=HS4r5c!B@-8#ND z#ge-Y1wDqQ_54UT3XNpTqri?14k)$W*z=#dp7)_GxVWCLN!IR$%+7hZS@%MlTHpqp zI@=&`F=`{d==Ud0MTp(NJ9BgnZr;czl9bm>B~^!R;`cL~itiSFAzcfTw(wL(R^_dH z0hQyAwrNWhQ_O2@=W$z*21mB@-6(Ln!!TbpG>LcRxPPE!vX;0$ng5< DLp>n&Wor=@9d6?Ueyh_Z7`}_|i}jw^rPZ6$<+?BA zdN|17oX!uX_$H?F+X!W0pWVDKT{0T(=D#xU#8H!{Q+^DTEhkEKr95|y60bb+TsCs} zirqZg8nC>ukN4+Enl|xOOBTO~@TiGGQTj7fb~=TL@cba3&XNYjNadjL7{6T|beO+I zY=!zA#X=Gm!nFc61~#ey13HCCv|K2BeT<)JpQU2?qXsg&P|ZBYC$er+JES`PJg=GH zSnS~?{;QI_uq(VL&J5fup2Jg*$yfPIay|q+T&wu0t*`MfY*}j08+;rJ2@OzH?%<+E zyV$RQ|C(Y`lkW1rGn3rZ2dEMw#s7MMVgkcv5BYmY@d-DhK$UGsBoisD9(<7Ck~) zh%j_?VaQ{q^FjC%zC2ug%nzq%F>;P47j<2_+H?L9tJd=czgwau7Y{$~3lHA%JHF8A z*5Vf2A<7?)zT*=p+@SaTa*FTudp@_MQ};je9T_d^{L81&?0f(6Xnb1wdKD*3vvzjh z8sWHR3=B#2fQf>TLlM>&g;*L!{nXF{?uf!L>|-lQV7mgw!9PjD4-`O_g|XzKCXLk< zve3a1Q`Nh!!VE^YLGHp4j#_%DZr;>Wh-dA&>?QQ2g>yY;c&Kf?1>8?q+303D;Uvdp zKv=jC3YUC^nfP58E>r}^Kw+?Y( I)_#;D&03Y)BC@K (gnb{iIMNrQL2`2 -JDtl=vB`H!GK-qq8rl@zv}B#Kw$`ZbXeAJ99scUMufJ?9U~8wV zf3+3bSerb>*4k5@gyFQcYG|ae?u$-7>nwy)o>c>S2p+aBLHC|QZ(I4?o&wmi)Oo$_ zdJ8xD3h!z0EB%CvrRi{`jTV~GglD6Lm)1eu|E+M_)=~IpoUj6WA2(iTKyXAbG(m1J zgQWibop4dmQbN=hQ-mgZHrgoYSx@I5gkvRGYEP$FAZH#O&on0ivb!8`R)raYLQApa z-+LKkwaF~u8AbX9;K(^b4+K;(Il G--F#8JvRazu0V+6`tD#Wt9wz0xr*3pJe zaY7#(q0Yn!D061(jId~h5N#bYlUgNS_>LA=H-eBuDWwkDCM>d22#iU>cuKy22BTcn zWl4fBoo;H{PT`c+o(7}b)Sps?kt~*%;!;U9?GkQ?)SgUj;;QFfp&CbC+3Sac_X*w{ zS+Wae>=(Lm%OJqp#Se=13*jVJH?2mh7}3;M6J)AFee&=&B)%K#3$vm-_(M>Zu!^MF z>&Mr!aLPVs6BQ;M5W=~W5Z9u#8Lk` }pnwPJnl^d!pl}Djo$m{tNq-zd zT>xIImktZ=GVR>c<3a +v+l ztim}V!a$PmL1f- 8e1)Wqk5I z5h90<@l<~!;-6dq6wn2bZJKbqjNt;V3og4nuDWb bbiqd7}rF!v6=lEfjX zbZ(Tyws@ZRND}d=5s`GJi#6R+`=O#E;3;=cOU6!Et%%i?)O#Y`d2tYW^fnsU6fqDF z6ji|>_FyNA{fy#Q*d=xxxz8w8 Wx6woBuh&W>US62&s=qS`iL>`XUy7OB2=#P+d1$1QK_1Ew({W#E95*pMD+zH$=( zpyBB<*s&CdH7jOtbr#EGmGzy)?qzAaxzJLTu<0||mVT$Y$yqGJSu6d`rKABuS@8q6 zGu~C~OP~PyyNVMi<~NJPi}w#Lm_(y10wqm1d}e`4EO0ipHRxx657hrDe~#ixyhO z*+WdC;Q TTa}^ao5#Rz9LUcerpm}b49A`C-y}(AQkdHqV^mUAP(pFBD5m}%pOun zbuBMWBDN^(4nm#Umg!efoQH_iZI#54g#5y0lt0w0B3=r;eg;pKm?EcHiyM~;qWT*q zS~%3nYjc`SoNvNaM5QLQ>R`kwz7Ew9>y!IuA<@rV4xH+W4aoXa5bY`Zg84y` z1B|PS10H|DW;$L@mGbZyv=gtWC;mkvk%N^0b$xwN;!2m8BeGD1Pj7(Zi^i6o4aF5q zr~msak(s}v8euI6aIlehgl$L$oi+KY&{(WXX!7}{;$RxqY9=0`;frQsC=G+c#P$lU z!g3X3)564VG&MI&JVe7K;UYEdz`<})rQ!D$@gNOrHfQ -Sjp<0gO!jenPN0wjMH#I5E=^)k#&`nCZBS?agn%}ZZj9uBc;aUfg z+Pcbi6l>}>DRk(doB iuH8^nlsvKSTXc`qP8>yxDA^+;snQrJnJa7`@%lfs*~8* z@AJA>8>x{sm`~sX&{mDb6FP~WSaDV-ai|w-5p%97ENL9=M4bq+PKEy5MQ5JD_@(5}0>qp!dOBrueQJNVl$Hd-?5-M@VM{;u`+w0Y|!u z)2#@9y#u|viEMp8+YNE$?ga1d;#zC=dECCP!TO$e*O0a7A$E|HQ#52Q4QhJ8t{&nn zEA(?6dSp)x`bbYC_`?(^-KzxS<^(u86EWWFrNK1ljTj4cj2UxAdBEo0HjF5P5`8cF zLBBp4@a{f{@NEikeM=CY{|E>BYCWjd4{=4|i5cx`_$6#zd_Nm5@<69uWPc6W_Wp=0 zHyK{{FF|(p5R4yn*aT+>XfWo12y- Mu>(x&Cpy4iL&Z2s;?<&wy9^Vy z<3Z)`i8qX}=Nk>BG7M3^)loXX8R!Au4YQ#XQfH&f02f}2&O#GK1*#9%3dIb^o<;3| zyx}E1+j%m+^CWjj_;Zi~Nh374k0THc4W;cymcZrQg8c7r3 jw|78SOZVTX{78w9x-O^fVA;8j6%V@J9x0*66yo9 zCur!dPC%&a9Z=~z8x(oO+Rvs(=kGE5)DB4e-j*#Kv!`tzIw8+Z#5U#XZ7OPrELd++ z2|0eYBXH3qt=d+T#SV^FwGvD;KpxI;PAA;;$zmspx9Svx%D0DN@?g(0$ZO$lf}>M3 zFz2b*$cH;%z*Ji!Nv>U`b*E{SE}DkTEYzF%>G>3Icr&epbnBTAGC}$e8no~uLPzan z93HRq^o9vPGGJ_|AF+}#c)A8Wb2_$kfd;JghqW|zo+e4k&d^#qWCnu8{s-*k9tber z#DixY?CY5bw)#I{?- o3`$CQxr=iLxITgzTI8_{HGXn>2)_XcH7 z37$;7x7l;FO5NuobhZwid8MW|#LO*$zMw;YHBW pS#$LO@DlLvgipoGyL-vyV2T0>_qM8JF<&^dd&2mHNIoM{!=%d#M4_bn47EfPCZ zKKrnUGSE(F`;)lF3iF#@wf|xb=KIBnu~5gD-eal{++B=noW4XoIs>-=>AiJ{2K{yk zLci6abH+^efWb>k>c7ZFXB@41{4%UMDg}-%E2(-NlZPf)8LJ_C7>mdjXsgAlOzcbN zxDs4T7tzI$;TpIcamA)U`f_ozwPE{pTuWAn5wyNLE5!DWt2JD9jCvwFzGkpHwC{pz z$agCd4T9#ZM9_rKKv5X;^R2w!b(IFUWfj6@d OT L zu}w#muvSC#e685IseU$GpLeF}QLe %@3+{4i{~b;cV))}zi7{Q?3in@li#z39Qy^T+7WhN!V6AVUr6SO>1I*D9~H0risw zNib=H=ua*D@f*Y c8JU=^_Lyu9jZ-l-zf&uZAsovafWf# zYuxst$J479&@)AxPR^yVJr=x75$92$A5+Dz*nXvG_O~7|F4^D$cT&abWI-A@rHN-K znXada>)GC5YC4hvnI<7!tQu$=L 9~o+Ff>D~SX%D|s@1gN zLo-CPCv|#e2Rxc*(${)H;08&quq#7sST-YxE*YrsYOb^t>AMUuh9aGjDOM|?ucA?w z@>7^y6V%h0;u~sFhGToh6Bw!s_KD~zh6&6Ts_qx})5thgT*s&oKFrYvDrbq?C~bbv z5^K?1{s3-v?rA$Ym~#Lb4qZex9uS!^n0fl#J%HO|-8ZJvL9sd6rJdEO3lECR30j80 z^s|_3+d$s>S-fXPzQYqO+~l03=V4Rva3N~xIWd3_KSSe_9U$^AHy`!G5pkA6)+az* zhe_Vxcp5pk_%T#JE!I?7S_J!9V`MelSR^5Z>Z|}LPO@BvOPqMWbV9coA%N0}DsD%HT<__B~ zi2Eqr`~D#=z(Xf$HB$MD;y|7h**7HS3hs)3(FuL^iddJ!b3LbP;!-qJY`7*`Ty_=U zjN_V;QkI+ACj@*adqe&ZP6Vgx;`e;Q-asg5BKW|j>$rj11!u2|%rnezLmY+Ci8r+9 zp$8MZ;p`3Z5T9L){%$Zi5OximT35}#DPE*TjD5Fp-AqyI-Vr-+T)H|tU-ZBb))t8A z7-W9$;0pcjicPU~>+gy=nAHCsvIx$sE%(IbT!VCMCYuHv9(2;loq!+c?qNx$Ic&C5 zUxN&`EwRmogmf7Dr}zzG`{Pfs3I_lFi42KcTj?*fSEa* 7=O?t$2X z@$`sh?r`RT*atx>K1BNNfb@r0AR7uFqRFNhYCRH1VB)$*ViRtMdhL<8L?F8gAmEee z2ZhhYKuCTjPNf_j_+0FQUCMhdhJ*TC^wz$6@JMP1e}!&oVTEE+P`>8D$LuKCS_F67 z;q2(L7W1LFs$s7Tb&AAdq-NC@D5c*f!L%1*rN%agYs+4Z7<4qVN {gaMUgc zDMqU3Mbx#$l*5YD%r_z)XIbg@=B@ZG*{U0j=e$Gv(IVYH>^_aeUxNToJdSAb9_M1* zZ9C79`|rgUBelL$0cxg;&kPHr57LUdvC!no8k1U1*{GzA3HrlR!zxWh=ovFn!mrMt zO=tfx3D+M)VM$<#2^rArBU%mPnW QG4_Bh6EIjJd?KZ`i&Yvt6H8@L3W!rLLFi92M^tEWKPuE4So@nKeJ)q_YV z9uYL7%?x*_#Y?^D7=_P5*V7%m PUagr)yw}&}Nk7-{zmyueMQ&-eA zWu!T5?es4zG2R 3vGUR~b^PhBO?kc48RXL7g-Zns-8W=#>>dRnmV%J|G~!^ zUX8i2^HIp&tUF9q!H&bf5Lz1Y-K5GjXwx &7c zbf~FaPI`yyQFR|_KiPzKZoEJN#8 UopI6WhUIp}#baq%$$v9hajlv(yxWH(F3HKx&Dx=>bw( zH*1@1q7QjUy&fRpg}Bql;*aCKwt5w$sW!a7RgijN(Mmy5I0hqwq)OP*xFE^BxfPMy z0;{9@Llg#fsk*a!K3+yesleD7Ve!zxj4XGR;DQK`f~3~uroCrzr;13JqdJu`>?1Cf zFy}YjKlwWvS*b4+e_(`rqMdctsf=P^i@s>Au1t&Q$lg^(D&vwAEY%}_+E+O@Sb9Tu zGc&75RmqY9NU0)KY`R3_cI&iCz_r4fgi9yALHUrkoT5qEVw_v@N$uffs-i$gT$QRy zK`yo|wpB>L ^mTnrA7?N<8A7A1YCY0bR;BuFaMk z=vrH BN}ko|4A%O*o-P6w_8%vT zK5I+jv2)N_sjhUKEj116OJA3s^W-L5m9VCSkFd19#4ZL_ZXn&kfl(StxUI(ff$UaX z$A(fNwpR`NN<$d2+lG%YGRc=-{VOfWoNEMYdY$1w~ zNN8LAa5 Vh9Nzvq{?zeb9Oln2aGzS7` z6K)5#BOJk=>f_PIg5$AoKIGKE85Cua#&T~ohIDL>Pzi6?y%IIGxzv=$yLnGqNwY8* z-CBz9e@%yq9+2Q20QRjpT)(B?mbZ9Avb9tlVU@3?gXD?*_M_lysTqeSz5#8eCPux_ zmZxdzh_=!Ndae(R+e=?n*0qN~yrt9`w{5qnPgo?1+_$s@UFk;9B`6^kHnx|_2bQ4G zXxJ5toTWuNVG+hkaId{o$E$=1a!Wob 60HDTTbTpX%E?OUKB{U%;hrkt;Zlm5eaIi`0N5orIh&(vM^v3r*0ctJI{AP73R- zNiQU=MiWikH6?DA1+;gxg}SI~V2QP+=wdF!vf7#=q1ce><7JS9UGTE2REsP})}aow zExKVZp5BFkB|&IDq>&eTMCgu@*?Oaf(#S!*=O<`nnVwUj2S(25WSG+f`3-%|Z pw*ObBgy-=~i ze7v6-Yywkn$*rM&z>L~*vh@=!R@P6!l1)D~!E=gzvb$T9F-G;4LW6Wb{g^X^o-k%H zFv|Z_lXy$3W17T`-dH($GHbE2eI&dB4b}TdRfx5Dllri}Z0RFa@}#}c-wP;JifSbk z8J>U_U}m7sTi9s3y<8JyYIjY?h$@0AeWgm}@p#_m&|4d`(Mi=3OA{@naBqVM7Zic{ zK!yo6Rw8(5wJ++GMe5IeC3FEo(pK&-jUokEb}lWM{iTfr8xc7G#d|W$7$8-uqEo=S zu9)cwKINfg!Mch%TibqqfYg>6UzlMoWT14c3}rwjdTH-a1xAxoB_2gRx{)MRfWoK- zPS9_VbRDlcG#D(kbGl=zKkcyP7OS1V zk-n43<2Z=(ukQ-xqb^3cHwJn4xHeZ+oU6`+ys(?OYO`_DE{@#SEQ6}!1SyGkw2m~} zOdOpkg%Ns@Idpe{FPNrCe~?X&*sB_9nW@rFj>}dLPLrGnxvxzf^}&z06G9y>e5N!H z9ePVVVg8ya)sghgA2gUN)v nTN zoyFdoV9SLjJ`zfbJ=FM~+7y@!MhU9PU7G;5$=&HTc{_c&Cekd)6xf1Sl+nzsmqSUA zs-f3l&=SzpD!G}r(ifRl8BX)|+UHraXpBnqHH)RSj@AW&U^}7N5>zX%;$@#qqd)Xm ziY&0r-h8odsZ^i5)Rhc}Wzqp|m-@>x3GdKu)3*g5W06zd>Ptc2IE*ZsO)up2Cwp|k z@4Fn?Cth>TQx7kfdQx@BeI-szG!3nkJn^Pvua(kR##AWd&3sR4Y;s2~XoB7;yd`57 z f{2DDvc%o>g-iMO*%{dSf)KdRC*UO>qdQZHF_82vHQ#ju9>|Z z(xnfC8i|zMxbH$&!`)I>tT 04woX1LsXl -k4i%+p6c1Sjv@Ap z9I38mo!m m%jlg~Sbi!Uni6OKzm$ko}9b5HVvSI2Qlu&Vi8PDs(* zLU0*d#t&YekY?k?mJQaTUnDmleIH9@SuFk5c08-;ClnQX;;s5$q?%ab<1f;4Yr#*y zYTGK$lTs76R5sdg(Ik#~A4)&e`%+=VNy!(X=bn^$m#3&Sy`O5~A+#ojp2 W@eU&2q#G&!?n@E??N#7o_8fi}W3ruFg6wnW#;F!x@~9 zDRBCXGyr44XQc)_&OP7`2l+wFS!oU?%IBmu7(|{!36u__&ao;^pObo*W$mQm8zn{n zK3|0`sQa4~f&(z@H>n2(%=`4lZ>SBWt8adj8jD;Zn6F8-)M0 RA%pF7nrON;4K0Tc^7y&^?fzc*c_-zug*M3y=S#v9TtbQz)d z +q w z6oivy!fUA_M;5KsZrJTFmj0phW8WKzaCCkicq{#Yxa+)=;<@tr+7u|+_A%^^P$QJS zs7O$KQpaulfHtr+sQ*DaZynt7AEi{1x=Ter*J}bY67vT=#>t~(l54-EZfB6aNRs_X z#u((<0@ Asmx4Q@5#}_Lu(sy2mXynRCn9u}WiG59S7+Gi! z`=d!7j1KX)O>zYcct80SS fJ>qxS$7_<$P zBW!&?5Qt@?&O_dK*#zF@YA#!b7rf#cu4V6zYGsCr7@&z jrujzEC zgDs5LCw^KTxdqvvN1W?oj@8&Vo<{!FX_-qS`tYhD_2dMF+o9$)m4^wmISrf3-N;re z#^!QolJWw$7IGhwtL=}~A6v-(a#jR@M_V>*@RmlF+mB4o*7Db6oqfvD)<~@so!slb zmeH&Hp0+>#_%)WsQ+2c#n4oVPxixvNM~=0@9P2YUfo #Z=$EGU0Hn zu;d|H?ah92Fi($c=u)6o>@T|*$y%K$yN|&B>}FbkKV*%NH<25<@nP~v%=w^q`|?OR zn!xgsjhi}ol-x@q`R7$+$<{nMtSJ&|{fTlnj{K$LNSP$Zl5GdnCX;1%LVnk6v=gQx z=9@at=S`KPxjm4Rlj;V!DGo+;!Zdkn32dF|NPH{o+UfHA&tSu5$oSL*;!Qk&Gq=ht zoVixm1+zYfg&I-vb~L$OijqT+Hd3_QsNCmgZVo7>a6^nj5|2##M9WtZtWJzP9)oQ$ z$n`tmw;1^>POCMu &Vv%jvG}OgejG#Rl!LFUpGN+j+7X?}oEgH+7yIVy!@ZKM&c0u0e(c zawN%4hrSDB=IoK#7T OW!r9eoWQ^OO9Z zWTZl*P}UdbEXGN@TfZ{?cCoxd *Qdvx&SX3YvHf! z 6V!1?>rb?uaW^g+3SE$7%l%t4bjdu?>^ zA^9T}Xaf(+19|#!?5I4%(P;DX3WM+sg0I@{oE(XsIXdn`7mzBOb$R0R2ckQYz@9u% z5B(v}RF4@5yy@YU^wauM6;Ih0|BtPr1S~ul)5?OSB+1OOPHujx}7PvhR &v(m%f$zVDlcoMWPge=R3K%pA8SK;fw8tR-!JXy~7R^slUII zyYt*{c4E85KXMZ~K6$egH;DgNzQrZ06F b@T{beR<b*RpJ+@uUf|j!KZAt8wtl&daI?KLRl xS8~6lor8>L0mrzbQLFeo+A4R{x zw~$MX4^Y~{WM8E=7Tf8o9Kg+eiXTq?Xp=IW*74YcS-L=I |% z7xKn&srv&I^npw~2jP$Jx *`p}+LR<3u{K4nflWd7W#^ztHLyQ<^Xa*puGfyS zzb{%=?G>UN7rB4HR8OHN2o35fb}y^O)Kk1l-dR1Qfn2VqG$om5wI{1;*H?b$$R#ZX z0S%RKm|J%?zR%UjV1#IllKK0z3$Fz yegCluWYK zUfXnUsth1$_9-ixDmTgQ7wUv&3P;G_ta~Pi3s;V#!02XC9%0a|xq`lKFr&Fr$&ns^ zph!UTWFgu`n&W`(gb&S?85m4!p|nP>&1s?Zr|fQSrBKI!0j(4tEc|0DWhln-TOq2Q z;MZE|)A-AilyGV^#&eoNnqejf%sg}ZusmdO-7G=HLOxCjys_u6UTm#gVK29&wNpG% zZU3d6(v-JqRJuQuCn7DaYgDSKlQK`jEoWw5 *(1Vsgw$qK1u})hWAm{U=3Vf#TNs=zDgyMRscD 0YXvkbel{(|?DcqB zM8CB@ pq>BTnJc8JaEo?0 zx`WwYG=kq2#hdDu4Yw$@30-Ku-KKORIretpo7 cn%( z0PLQ=lE3&3M@_#ouD&|2;M?BTn3SiC5y_&>c1}lemzA;t+4NZZv4UgQm0Nh1KH&!H zAn)PK4V2^`!EjSyFMWS=Q+YwH{=IG~XuK^v4cwiD-jLnWQv~OyW+RNggM#)W1m!E0 zTD`x|)-%fj{bL5Tj%U#blRHe8#bY-;7sZP9ZPjs^BuM_KF3(p`EPRB`1^<6Iz5W-R zURLEg`6HCMtDHrYH}0}NiuaU; vV#^2dD;og!vB; zB|aTUml;dG-dsldSek0z%C~whB|ZE8vX!qMpjbMt^IPYK${j-O6t$lyQ)rm_M5# mw43?=3sRhbKx0njF{K!43L9Rj#|x$I`UD4lW^u)UlMKhdsmpR?1Pp*?%iB z<`NjoL;C$$Q}Pii=$X --$GPlQT-u2du|@Y?@##j}HsGmtM? zY0(a&<7bB >JeUaiw+p@Dr>55_e3#A@iN*cVtMFErNzEI}bmL~H{WgoW{F2BTCj$1?TSITjx z;?p|0MlkEn<5$Wja#Ww3O0kkblI$igTq#zf$Wwa}KKYGuM &I1c{&5dbpCIrL9(TWvunSZfuXP{6(z=UnYbH8xqMA`#x}0 z5J9potq0S{0o|s3yozBzxv3As>Z+KtOPAyCsv6Fa6ZWHcw;E<&(RW+Ts~eW!VNqUn z13q?VPq6r!2xX<$pqhp@HhP_|S<>>1GI)clN{Ausvjg>oAsW5tZ_ucZLJS7ZMkAM6 z22=;`>1)T3ItX~wejPqu$M6ezsb?qE#q4KWwAX*-dWLB7O6#JURL_7$gJSjHhK7C| zxuBbmerSa7R{C6TWH?2h>fOv~j5#0eX&KN2(OE|>r-?x+ja+o5Ep{4p3a564NBV;z z{@~T#@D=5-_J|MXjj4kngT$i8oAn7%^=St~Hx3~zoeY&Q7}d#eiFP48!qA_*Wk*39 z@wZ3R@JNG^nOpJpmnRJEYzW4?bW1xM4p6M=>n_!X>|wEj8r8+{y`!v8Oqey{$7- wd% zuwU|+GtY2?(4UzJAmP`k)2AnD^%%8eA5bSQG&pb+YxE++URtXDPX;uleWoW5S!~!u zPZfkEhA|ZMyCsH(Bo-eaTVhyEi?m*9sE7?zzg=b!*r~_FI1TV_oCauGt^umc4O5uk zLdZ(PYz|SV`&Jo#XGP|%He9C(gV#__L8Lir4L X&4+$F?eBcH3cbyC#hVj!I2{c z_Oq>88uHn%nmaF?OT*?pfQVg&Km%fA+cN>24;#usO2%L(b;~Y80DTZp{dKP)n(<1` z=C Cma7LicW`l2kDfB1Egz@F zz^0D_AZ&Ug2N+oI8v&j#T3AM1dCsu4EZLz;;2w9r=#GjB AVW~UB#U^p!ExYjU(x%%%j!(yIAnf{RS!myD%(d@A>;-$fh zY};vjXw?XtUK(1FY+V)$udo59?1kFUSI7gW?G$!Zcx@0kY=xoN5QMEzLy8SokzM07 z<5;D4Ut*a5&M=d#oufSzSK+;(FM56Hdznoi5O|k<^!Vum^34Zkn^QM^G;Akiw+=S+ z6SiULY4%RjKEZf|v*i?UMq3U<6Jst~b~^J$YT$|0g7aG7C>W!tR |KFf%O~dKz9rilBRJe9l|tB_nQ}lhdGJ{6JUrv22{qChQ1<@vd#p zH`viQiy4CMl`%G=9AS1gvOC`GoQ=(>pkOx%lbww|)@ggi*@!arsW!dh%Nl=Z&R%7T zilY9(me|;HY>weYDt zvIE;*3BeYkb5mtw3CSK-wu1-?HqIl@@TtUZ_(MQvf{h;BaVQ8zCOED!L6s^-d>S=c zdm!(470k!Cse+AW5~Xp8TE40=j0$n}n`%aMu!+V?I`nnXdDV^U*oDJ{8?GK|!w} 7v!gG+s5C Q^m|?wm3IdH~)lpoCI;wL+0%mjDUx+Ic{g2E`_P1%h`}e{O9= zvqpyg=H}%##xdliF6{@kHSQy-zP#0Khtlj5dkn-~t tJl@nOTckMbTCn zz%v_XQ%c9IMAfCEQDWBtsBBZ~b~2vfC~hv&_>Am54Mma0ezv;Cb~YA~g?CEsG^;bZ z7#E?}g0A&d>}G6W1D?^%m`4&dfe&N5+vS|-jydrfH^SZ?SP>4%)}F@iXz10;xRi#; zy|7{o<=)6O7*6SJOu|q#_c7LB+#Au)m_`#m^)v2gBh20l{$qf#6$SShNGAtAt3J^9 ziabn(xQ$Kmf&M{8cT%V;>lX*13@y+is>5L8WI@(P9C8C9++h7MV IFe_-lKW3H;vtiL$}CLzOf9-YK`!a~N3$P{ z^~rIaJF=&|6JX5`MmKU@Z{oQhjMW5^oTR>=X&lSAfSpCpjWUkn@cGZeXk!?8te+5d ziZS9b;^K78H}UV;IEH`gqkC(Paj0#1955H<$2`q=v1G2%!*(=^GJ?MPLQVYmxBwoX z9hz&* ehwE26&vJsV(Y 5&BuiRsGHLyDR7Q4W1@6wn9R(^y+(BE=`%yr*;;+sguK)TjTOSH8 4r+wZxd R&@_$v{``KeTh*=(#yRwt`_HXAQf zsk&$@ 0QY8TM R@(z!gtZi6 z+LRk?p7A?#QaHXw`5d8(@h7T#!Ch6nb8gHeh0{zgkEcjhd8 zJ4Y*&YUyj@)*UCB|BboS zXe+i`dT`tc zdKXtKzSB|=_hzR+^Iet*@_@nMU6u|W=0s -JmzGLa94 zq$6|WmK_9?>%+9w2P{*~T-Hmy2;UyIxD^Qx9LCQtvyNWih@}=$y6Jkva*R|&siPL) zijY;TBW~{F>-6f!QQezzX{R@l&i1?dL5#^O08Ga%WzfiTx#O0q-H6E?efN;Q9`ll{ zEgNFj$zpe`+0FQt>+uAO%zbu@Z-DXiF$MOH0!bo?ZmmA$wfFz q zY#DU^f+Y;k1y;hVi#YA?KsEbImJ4LgIda)j$*FvbGdy;SEU;X$#35^+dc{%_oxwBl z`In3 Q<(uHn+$y4?~@+ zI0jQvVC7ZIROeHg^{?TKlaithxn^lfW=t*p26ARDWgXo38^7PAf3KChX~`rU%93sA zN>Kf?Ex+MLjd5||b=$H65$kTFaEawRb(@NH!W|T?UPII!%U~| zrDEN#yB2(%1Z?+kB8j_)ww7=bN9_B1I`-!L_x{l5zCObzPuk?GJ-=^RXeN;9k9Eks z$0!A3wosaD?-b-76Z$)zS$;**<)8mUR6B}0M;L}tD5`}j`gIij)-aXRZ~-IbSXOdy z*L_6 EsCMwBWfyKvG2OL=d6ucfauYoW zYw#M`+#X$_OI!Kc@{Ni6LZy}g+=@xi^)1%^ZKFVt`_}S1wayk%#?ucbyt7QiO*HF! zWSr?Ipv!wpH|}bdcIdqYjY=TDjQ(gTl3&03CJ_Nq|I2Lg;(ME;KU$iaw!*28mc}B9 z(^swJGF;(Lma1k9g2=+n{LJ_zF}&+%rI+gT8*v0h8WpfnB{=ZOQm?vB-pN!7;7G?Q z*_kR{;Bw?Jo<~iL6HN}BvB{|f+Xswl %BV+XzI9)IdTctsCWPs1&VbPpak;7-6J5560>01vl4`P#S@ zJKdANPM%rp>&0_iyA+~(K+a+uS@bV*@qBob?}0bDrkCT6ee3?4HY?M8#h2Uw4kXn@ z=P{z3z|$U$FXJA`$H(HhrwS=me0V=!m$@5qnWr{a2=lpXDdis8C?DRFytg~v!WS)g z5b2{GB05>zAe@)9$0QQ!ppztN!_yYtk2{zNaZ-ALN^vx9RxUBuLuR!@Isv98lTAoa z6%P`wD_0N_wRt3QNGIV<>nVIeE-xEqwcVh= z?+Ra&Tdj+F+GT~Gft9WG^yQmU_T_vZ=SRZBYWVX*zFKD{?t(r3d~5SA99LA$p<)1^ z9}{R1z!!DhLm?A;B-S%Z(wO *f_1+n3Lfqw^U _cQ??2%7vtsc`{nsVc$|XT z6yb290$;~PyF^8PG`C4t lp^b0lF{YEAwF?P=?4^Nr29 z Mdlbi4%PI-%2z=IPQ#% 6#iGYrlK^lqc@KjQWAKa zhhBryoPW$6V#7P61;3sOohMrIL$MAWF*r^c@5R|nH=sq7+{o@UjE>>`N#)Lu;lDML zA=Nb;Z_V 3rKdV$aV@=!9*#3(9svHi>})I`Nyo;#^s;p-g9 &4%~Ryx+3x0-6`Ns(V- zV~8ddT^aLHg=K?wacZJ#y;BviptGyn`|$HzHX#UO)wcBE&v00tasBxwk^j4c&Lt%c z!48^8lh^0wc)c3@;z?vMR)e!RI?paXfd2z4Y}EiFx}X}#0Gy)VWW&J3^a3)i20DE^ zvlcXvzr$@qm4!jbAjnk>qJHq*AU=m1ldNBn=suYL7G>CMU2F67PkcM1USbGeRA7~X z$zqmbmhwRYxzevsUx`?@A+(dD1<#=-ZY~-o8OnbQCES26KiLwSybW3oZx)gH8U-H5 zFMQEJhC#Y$%#UtBm!>n~Dj0*&q)=TKT?~c+sg1nh)GvGw((@|~ >Twe8Kxix(#jm3~n9auU{YfHw#_-8z90>XW?})MdHmo?DzaJ5? zHDo+Lf_zPnp0 l0 z;Z>q1G<^ymP><*UQT?POlz>Q{QBN&}1nPomD)~!x&xni>fmKf4nx%nGlQKJy(!(iy zNu*BnleA(}`4khk Nq_z4@c2L&+G?K1r=!z5fiK`sI8HdJgd{48r%(=*f^%#FUkgd! zOd!)|;ySpVNSV=_M1CTEI_gghMmx^)`McazCKirbfJrT4>24>Ui)>rrDSGfpD6;U= z3N7RpkgTUILKzXe(%nUTbJ`IX^TUa|aWUTpqw_5x$wPxBd^6e?+=im}F5$~z%(Ep} z>8P!n#Q!9aPNwq_oMq{Ns)TKYn r%cL zf(gU4-X-EYatboYuH?bNrC5E~_dYG 2t0EMQSm_#s%;-B$C3NzG7GX)D(7gr{Fw!{6pkvvbU= zYxx!)T;e^pP*3HXaFb8!k9nn}@(J8a)({;xVcqZ4B|B~ICjPmJd&F8|=@yK7$c|(( zxA1$h3aK*tnyvgoXWHGj@tyHMJ@UG|jc@p0>X#^|v!y83_;y;qX!=5dS=;$0c%z@H z(SF#DiQQzIyyZ1s!+p|68efR$bx1pS`bcBX9XhMIwu8^-ZF;TU+0R!uk$w@L&c~4c zFeIHHN!*v|d=Yxpb@Y+oP?)(Yp9GB$@IPZd_aEQ`(aAi(k4LBTL4Dz}_#oeceE0ky z-x}As4G-ZYtG{Xw8Hf0_i2UU*IwQ~ji+&e=7{?ppyByZj-Ex?3i6D<7d>lICkMNDq zIdz0DgFQg|e1yj%e?)gU#*alM?yO@xz3E#c184Nr5SPJk80DIs^raOV_H *9if}{v z23wqA`67HU%%_UEkuyY!z#a2&v~=InIfGm~j*a*l@}1zjU_pO8!B<6xi~`tpg0G1G zAD!TTMW_2o{vbNVPVv3b!M@r8o$OO6W#Glt)BF$Ek^7(KU(wq6;jBKkx18m_qg|gW zQWiOfYe}rTY3FF2UOdM~lELEERWEv;Kk0_sFYtlXNAF5Dy@1m)&I8>q@I5ib;}`f} zFh$2jey^t~Z~HZrIM8dm&Y$<>7A 6bpdcN_FuYvU%_#PP_Vkn1d^8uUD zS!dTiV4a=OmvxX;35~1UKjJip*n}^9M|6m_lX>1ke^cJPp+fBcWi)Z#J%QLvR82w= z|4DdPgUr!XIwW&6kwho0(_&1*a*~ |gl5!A z0j~Li;Zi=K66vg>kI<1Ul=}GybitJ9BTOQ^(;`epf@>{8G4x%q2xMdUH(uygjS4 |p}6 z?Or2HNZ?NEr>0s?nDE9MRePg~Zp7O& (y?K3wqg>Kc z=-dyxAiB@{32!+(S{l5dMlnquAjqa*m#Pa}Y!QQs7Aj35zV<-u04TvM9w;=z9BK~+ z3U*}w+K0h7O0Xhk|19)D2Q7frK&RSJ;aha34;5-e(&3M$z>2v{fjM^QVHMFBDgBFM z&}GLn={39?DwH)XfU~#ASc|e+py4mVdnD%=CiFvR<1ir*onym 0bgz%P(A>`z}(V-U3?v4_|@xNCbEhG&Z8YhIiN*exON-F% KfX089leJt`9Vt$P%12^|~Q(*rDOm(-;y0k76u~+Nc zF=)eg)+AviX5`ppAxLly3uL3vc`~*DPCk L|&B8LLz=~PIolp!U z6QkqpTm8=;Xq?+jpN+&t>^oRBTPUwG44K>F$$w(8402y&DhYFtS*AdzIXFU70Okm2 z;#500M>vF6=JK@32?D+x`UduZP|%z1p`^Zndmw~im{+1u9YvYwM4>Wiq+b(}OJzY) zqEOqHR4rZYN0YOxA$0d)C%jA)y61N`fZ1`z`4?qgN8HZxkXw<<4}%WX79h_0BM&(x z@5`{|Pr)ygl0)7@O&rtD2q&UGa*A^QPobo9qm%AdVV?+}FN9)l>dY4^)14!I9Uqqs zqvs1jC5hxkL!wJ#{`#Q)fHN<&Gmz>;Sq!t4bpwvf7rMK0(1lcBjx#^hM{@AZ0--{6 zMuKg7oWbk1jIJ|nCYR&;!cNK0Op}O!=zRY9;miV|b|}pm7EUMqwGR_2wNR*lUAfCb zLAARIq3`}2#Wt9*P-x-J@_~<1b@zpq7aQVpAnzxk+Q%ZH2i8dMMMAX#3=*!tpHRRD zwHa{a6TZ-avbVH-aBz|E3l6I4i-lKa{H*L!!QYIZL6>wTa8 QLNTQL*){^KbBv-KivC;8 DCG95D!y?8oK?7U&krlgCg+aJ$?|qTBwLCgI`t)h0VAd z4&_Q&gJ9=s96t%DqqJIh#Bp;MP$O{K`*kSaaH;FH4jYA?9Cx1y7!@}Q(Yn6TT>Qtq zWWldC3!}LgOaWu=7Ga2)`@*7%Xox$^4$UVJ&k5$aM?CvbUL((ZH`sv`rlA#_3-~_x zy&X7Tu4eLD$WDRm2%t=(!l|8tqBFyFD6s4lz99>?^uTk9)?k;=&1Bp JwgWNZqHt!7`IP1m<8s2C@5lo2;L{ehU?uBR}I+TXj77di<6`) z7C| 6Xk7M+9GPpWdn( z91(VLq>|_z&0ZOTU8dSybb4~GK&E8iY=F 5Og*Mw zp=ohenC_f}3NX`pkIo7k(Lxiu1hV5i!Y9r#m>mqbfFX}q35OF;Cd=>@;(2>Se}1Iu zMd1avNLM+8Z!QT7xP2@K=F12>$~-?1Po7RqJ9ruUA=$6Zx*{A$Zn!Q}sO?gJ^|>lE z3&68 $H8LJzPC`z1?=;V!aneUHRkXPySx#KXQ>Nj&k! zTJySvA%7Y}dfpP=yD~NEwor$QUk_=wN$1s`+{Ob+?51>0#@`iGZ1eEDC_JG|epd*0 zAFr~tIMH5l#No->T_Kus0WuRsc$!c+CI>%BWbp$>?+PtjkP$(iKtXX%Ur5ujLpnWq zQ@| 0AvT>LGL|5y6$If4KfSM_aFZbiJQ^4@Is#xNuK6iq4|@LTXVq_AqsNI+2g8 z-Pt@w=1A9G{m&1Cb974u`?C9(6{lXJh)J#B c}Kg@e~?@~z()oj2}SeM zK(eR{_n?X|HvEd%kH-Sndn9b7lWEshT@ qI~Yu$u5L8|BY~m^e2)PZQ(m%e?Ihd;6(Bc$aPNqzuy6AVipNg z9cC6sbGsP__xBJNa2UA7OZ)?!Nbmn2bdtOY9qoj-_(bHE>-y)~Wnb}tiChL-;4d~1 z^*ilUfer74J@Xf1X`CZatVl4!1I5n7%?uQCxEyxv`aym%*7ep=+aQt1_S&o<5$~Vm z=@9LCu=t~iJyH~+4GR^I<6U2UveLSSi)&5XZG9wbB@2iHOx&U?^!^p>C@2PS$>X5r zWHUa=UQpbRHcK}a5{m|;7*5xSMSOf04cmJRnua3pYVd_c|6rz*Moi=2)f#dPM=a8i zKAm G;sjyfJlY3rRtRRu(h@!hL zIVP=y@ PBb^dAG+k{EMO@r`j;UY&`0hW_g@tC=(Z};1`fw8 zp-m%_r4~iSLc9wYEy3V9lA5r1qy$TgigPisD#gU2{?3B4;-F~)%xxw<-Bm&igSo}T z5Cm>6CKjtifVh2&Qp^+QUt%CAoFf+7NtJnEvJXfU%1Lw=krdiiTr7+fDis&^qVux& z*C~?E^uuO7#mb23T>?ARN^Nclah3<^8b!;Bo6yy+mKD(`{Vu2wDSpGn?Sqk#;$gB# zC7Rh #L+Bbs|ro0m%Yj+b*@Tx4% z#EpuC%3@oSM6^S~O%*w`*`@0se5oRqlGr3gS9S43`ztry au moI5j(=sNNye5on67g-97ey>_$J?yFLYGH (E}I@YW&vb1$!gTo-E-UHXn> zkGhD6XB=W7@!VrE=ZR+-6EZCI44!DCXSl(mZLBAL@Zu(+K91lS0>_%*M-TPw!i1*y zUt_{d72 RZ<*&f@w{Rlt_6CgvTRgqA+E1LZfNMQ z(Wbcno^b!YK>yM^AvgfB$=5&9ExcE5Db^x=cxX$p1{v|2TZ;8@EKu_UE$5uz!7oPi z6|%27XaAIJtxAk2m;@&SK<$ ;fE4HslQ@l=oQCxA|AsOem z!-B@S^u$`O*Wc|qupQ)Y#gPIT;*JNX!-qT(x)#a^f|foWUfP~-#nS&yw*bVQ80i6D z#+9=}>F-28E6XcYiA&0cnD4|txxHl|HKbH9d_34ESS$3s7~)~t3&{(ohd}3c;%w)C zTYE8sTl@slYxNI-x9!DmT;=w3Af;v<#BL~7rgjj6$OiMt4q^#z%O&ky2QkNk8+Rlj zc4#PWFRj;vZen3?a&3{^deU0{D0&Kbq@=YTDsG}%ftF$79f8z!&RCJ&9r$LPIE(nN zj}y-kH+8&7pFIzrATB5V0~5qF;*OiBhv!Vx!xJXy;cX_1OU;SvA3`=%4FKOMBC#(I z>Qr$*aW764$)odHgK6R|dLg33Ol06BreeJKg~U{vC7Nl@s?Qc%(m&JYh-k16A#>*H zkh$|j6Agd_N?l6;alFZPikK&Inkr2@2POU#i*uQV?SA;_Pce>5Gc4mYdA`_I!1J5F zD@FP``P7x-L{dNMDlyqaZ4IAoxGz|{kRon0;X~5yP4T5`#2nKaZO&RT#)H#zp+hsL zib=FoD>jQ$X%5S873tN 2AMmBE1{=V4Gfxt+tD8Nc@KFIOn1JZo5dY zV)oa>k;MO06H|x_JH$@JeX~PsjILI9r&yF$Qomi|Boi4s$qB{7G~Ye=8NtolC-x%l z=Y4uU2JF}AJ=-sKAmL5ZbpMGoaS-v>P8Wv~cU!th9ubET2Skmy&l1P`X^jtxuW6|q ze~I*BXtM5ZKP+~o;Zu)`;V|}yNM9PSaa1qT-V@@_gv8k&UMmoKOz&k&PKv$Z<}pzv zF(IeKuG|ZzFElhmRGq{wk=Xx>&hIV~PmOK8=oFUta5;#YfOk7eo)+8EbDjz3#J8@{ z#pgwQ?1^FE^F^@^@syi{A9TDVN@l9qCEr5vXlACkftzw1@A!zp#9Cd)t73KRHHlZn z5atbl(^tiZ1hea!j=6G8tP#HExF^~8M0KtL`5cG-Lk)DVB1>T0`*fsDJFZo@PWnH7 zR_liTS^FDe4I~XWbkgVz)K1?J@tPBYa{ksq)|(X6_@)j*Z=g2jrnrE1g|KXt4@gP6 zPQ{W8yoKY@<%_&0W^&|qgz!)-kDKpkd-4x7)~0U+!nH@@S#BP#>dC3<@yE#5cd=QI zdxBFgKCOagE46A*MATenwhj9~6@5&EV5jF|F-UqQ{!TX8LZ6GZSzr@tTD4m~d{Owh zxQ_e46dtDLh))rr{g#WX5%S0XmAHfcIr~~%%MqS7@*TDyTH<;34rg;bn5y_5iJxWi zeblWc9&rA>*ch*Pgnq!*SO#rBh||!y_W=d$6e#;qyvlM6#Xcc#!ZaRz68mx7LbTz5 z%y8aNYXG+pt?yN}hHP7B9YXJEM{w3|tZ1-+vyxkFFvx7h_wN!K%6>2?0e>>g)-s5p z>a>0y*8Z60I1g)0bkaSnb C` z>r)?kD%rKC>JL#$K`%%P{>}m^Vb*9bU3`Mv4Q2(R4h71Z5^g=_LBycH3t2C4XN-o^ z&la{~H<->OqW(p(X4V*P3~0-XT2JQV9 tc_ijU)UBW+=))8%D`3puY{w^GMT}u4U9`Rxt=Gx1 zXQL`se3nidRK;3=oTJaFYOTrbr7c>?b+ z7?zuj v4 rAH*-_sB3uu5IXPXXhfG}s9W;U?mCgPGO zx>ZP}ku^WJcMg J?2v$|uYC$UP8>Vck 2w>I~YGo)+-8L z4aTl`g;D7K6UI2-;W_jZj npl)<>4eiG zz^(Kz9$27V2Kv{N{M|$UauD&8cObc@chISadm0xuuYbqR_jws;u}wm>(tlWGPtyw* z8^ER>V}0yp+NOOo+4@-_!oxR AA>S86}KGi>ySJ(RMGgb~nS|WUI;-M!_UN z7fhgbvb91O5nu4>a3a2#o#G4Gc=Bb^OMJ35gmcOTCze^yS-8dXwWJN!K~(y*Z?dN1 z`t9H*>s1cz@GseH9YNgSE!gc)c-^qY8s|X*%I&bywa4TgRw~VT@3f*}uJw?e`5_qM zE={z $BV@Ch)rdcE)frlnRf~M=2j+eRJv@ 63@65`fYgrCVFPS)Rpe~63-X*&2i${%BHoF zSy-Bx%MG@GuV-2FJh`~(aQ>dP1*!i+_pN9g5`~<$53Qv Kql{jwtOMLdh)}2e#A=*|i8*V=DouYNkXKUcY zy?u#K{4Mi^eX=ds=<$WDaWz7;f_7UhN5Z@K+A2dAxqt`!{cu}h*gfB7hX< 5l2VbOD(*VEzpzuo85756KM (8m`OaEF4e-}NE^|# z(`J;nH87de;zHqa1smzwP^O}7IC1x{Y*AP{SsMsYW(jInB$`%@Cpa0zoU=#I`CQiM#Txtukhm<*jsE zciyz_ZEYVsxK-OUTwp|tG;=HZ+UP XcW&7KDSh#sQ=he0hvu*Vzq< 9(2JWAGSy zrfm=TrbWChiJBG4oo6GfT}?}{;R_6_UP8p5woCK^FtM1CgH>+Nz>cWs$9^=@X1wWFs$B!s$iWcjEFiWwC9i1;bCK*hZn#Y_+YR`iYuE z);C=B6M;1RaJ8*G0<_h(DrA|Hv)a~+Tg|FAX)JP;U)I>j^`&?Ed+;sR*~Xg?e{sES z4mv+>usP^+6yy@Ic5H*~pkVr}P2X+H5{Om7fk$n)L9m34?QO@fHS*X9d2-D5J$ZDb zUWSdMua7i3VH@W|ig4 7eS33!1%N(D;h&N$`RjM7P3Y!tVw2cL}`c`vm#$s3GgK z7Mp1c^5FJtq}GkJX*X=4p4{YvR7*rVcFQ)|htz7TC$@EF@`uZ@&Bd3R^R&blwlvAK zT5D^Tx?v2eIFN&!t6tJ*?t)GWe)E=AU{!_ZlRlX~X`w#SIu7gTI4>Q*ZpA)Wr$}SC z4Mz;GNi|a?jpNc8?<(kz@y85zth7V^QgfMm#^jjD;!-rXoXJSDic1del>VjmqPT<` zSxXsf=~`04#noqs+1e7 JEx@ WudQk)wKNmni)z#%nqMcWyO|qz1tNbhq-Zm{O5tcL>5I0ho8-@NI~mKr-(8Y% z8uv1)Bel5*j*KsCN{tRUfG&YD+zX(fuT}p2KV>iT$wz+zoxnrlk*%Y~*%?c5blb zo6l7cuivm+?9}&Hv|hhS(*#|=%05y0%?Z-hPLw#b|Hc-7Cnia)T~_BDlciW!id!a2 zXu5Zo7CBXFYT`236u)qqlz>KTSwD=4#{`}0yv@YpwBe=9l4iNGdvKN{dYJGb^*)*k zX%%<@a_3378K$o=wH66d6J(qh3@;(=Oq9-gayd-MSiRVg$*?8ZCv)%}nkAAC=St$w zWT~?SD;lt(Lp1+&QYda^+<+>nQVA~c2>g&LeWQ*$g61zgqsaqy)lr>sJu(Y#h)$JM zxR5GkbK6 gFHfbq0 zm&s8#wn_bry$5=4M ~>xhRnxF#HsEL2@R;IOod9D|-eBAszI zFTUL?J>{;f(>5KG_L#Y4Y}GUEBxa16Ce+NQq>^Y8N$;1?>@=43*ij9oPCQ3P-rnJ? z^lO0!Xu>IiqsQ8)E%=uD@IpJ`^btf)bjL2}GNyqFVcU`2OXs9C%*WYt61~R% IFcaaXcKzzwNBf;!!h+Ho(9^?CV*)R6ngnzGj4SX*0I$rt@CRVMT={wA-+m`f}kzV8|W*Y6`1i-)gc?c!dslD&O^CHsng z_lJg(9eHRdS Wpi<7DcgQjK!`^pNW07k1x>RY^_fmBPw0JKCq0{%hR6qw%Wnerx*XF;M zaHDvCSr`mfe<<=%`i1+eEM(W+7ywTXkF>#GAEiVt?ksfvB+*l| <<<3(A=lv{`1@X3%a!q_0u`DDH4h{xuL@5<& zc+1Vc3ek3X%ROc8EL%O+36xPxG0gZ{R-k;xMh*aWEiN7kcZ$pXiD%F;JR2BXLY7S) z&-dN@5B#>cYY-%tlmkfQ%)J }J`@g+0;S&@4U tIPV!sq|b@U&%qUMsfyX z@fkxuC|5Py3)YPe65&STk21u5BQJBlwWKtbbBJ1uXA}7wJZ@;wM6N}=Gn&Z1ds4j< z2=_atY6Y9hUS_iJ!EMAat#J!^AXyJVolQr4;Y>^UAf_}oM(&QzyBHboTR`Dhc{bU0 zJe$-<(N4t5h3K>p_f81aq*n4ox$xgin+7KWa<3xFk*0^xTMFbZM>vMSqP}tiF6kY3 z^pxF(k6K>hJfL(x`6t-dQ!YgE@mD{21ef(UbnPYgB>rawcT?Sy{4l`pz7L33I6J)U zFIUrA_Lhs8{~y!7+xNeuo$!xjOF+N=a?SsdwuWhMG2`9Sb%W(hZZ+x|Ho!IB{Ga4$ z-uT)*nGa#`Ai2Kw(-3(ET7Ss{Zm7J3Sb@RXj(|f$ LgLTcCz8;tr 7AVMox02;4u~h(asD> zPFp!vZsb8Skuy=IrZFB(l3zQ`5m9py9 @mJk2 NuU7IBWbQv !dB{K&(2O{D_X5>eSC*HlWLmxHW?I}lAv(lH+7u4;8& zCIWx@B(!PK`-0q$OL`8MF31Z>3O`?zdzt{QU6iL0Z`y`ee%h!@a%0@fz75AO%Y^G` zKU|SxFyK$vo+&RUuroK({Is90%H+*sxO-DBijJ6t(>caP{yHrPI%mld7&bafR?v~# zZBSu#mh4C3)3fB7Bx?LMr4+qzM1`QE tA@6S=cf V^iTltCy5v! gP_wh!WR&^CdG-R>2X znvLpVE9m3o(ZqFRVMrBoISho67W-5feW9 zvuoQ|Ipsj2-Akfy#jeYN zU25CQ!<;(ytK7qnkbeKq0BG^sw|E43sg|IvjI#SSB6}lyC)p2D*~52+y#OqqVvjT- z+d!pG?co&rB;3Hc8UgEOd4$63Y4!k_n(B9{ccq?6fYD>|hVZFr_WDjD-#WkleTMx4 zRfgJ>Fb0={@%8}1f4tjxg=uTz?c*rE+-!Sal8Z&N?Ip}4`t@#9^m#DP9w2?46skkU zbPU7Cu@mfm1b4l^B}{9VV9)WvgXtzo_E^$fOOouT@Q`;vGWD)HkZd 8N-)vM^?J&8;eaf@MAioLq|;qz+{ zZV6LO@nAX@9ISmwv6tfhQNT0%Ai7?dqBUP@Z|g-8ZyuQHr|sWlzec p2<0;D #Tn-7V+sz_%AI4rNa7oC-d=_v=e 4`0eFvp4+h>!Q{TP#V*^ai%(bFtA49+AU^MH&@yGjBkVC br3zz0Pc$FPyYln2+H=fLG4x{u_momUl4j!S%?UG-B?^!_vhqT8G( z2}!3sy|`U(Kw5!Whz(HsJ1cq6gkA#N3{YBg*rrtj6{;9JG*Bt-Y|`C<3LbAb>7*_j z>TNm)ErXP4P6||W_Ct_@;?%zr3xQ?9%0MTyT$#ZFln>Dpn;N1gw*FRdAnaQcBso*G zhAMSENOrz0pj77)@ujST!LA;bRzO*Xw)huAkHSiI_3{0`Y59>=p^JO1jyTp6PZw6& zQ6eQvAdy{5j6@)@1XeLNPf8(dy|YG-rKED3P=8($sZV(Dzo@q@r4%)pSG~IqpZ(JP zp*>U#hh3$WzNC8(N}7}(c0CHNs0}TntTo%n89UCxY_A~*x~^-F>p%J^$+L<+TI=#k zC>ji%2J(oIQjpUynm0R=AHb%HN{X}E=*^8`m6ZPf9$Asv0R_A(D;xh6r5&!Uya@iE zBO;=ea+R)M>4*q!trYbjH9|*3_x1{!=|dkK5$`)F^9hoUh;5yfk5+Tq!w|?mT&oyF z*^78U)&RvLUus?=KExc&Lsqv9VZaYmdWpmY9Ff@cI}oD=Dv@X^Zqq UZ7@jh6p ogA`xxL9TXUkg}ePa&5#< zO0wDX9A-7{6{1!DMM2YX=@2 =(^OE7kqeraSuuxdhSW ztBwb|81e!l)x+;@{P+F|wa4hxXS5m^rVSgToTSXF!8qlZGry(BD`r-zek=@jPf(tt z&_oM&bfQwx1IzPiDk%>Xou*7S;Su>Xg|3&Qp;I`-RqW&gf5tfc{o*uz)y-~&Nc2{S z2D$OW3u)g@S3c0Lkm6Y&OdA+a@ J(iE93rb|}|bR<*31%JHu&DRZ~8 zk}AQlJxX N!a7UdXQ;Eg`;_6BXs7)ORTAH^Uule$ zWKMHeQfit`?^-6x4Xd|wuxa7x%3W3wL2&x=NV`_ykP27xS0$Sa(WmeGV&|J FWDh8z|-r%*lj(~ZaZ!rF7nY@KFl zt?zl|3`gL#F1f1GAAY~2&=-cz%)8>NMO;?0S*`hlG^C6SB{LPe1fg3Goimj-NG)RL z$ovq$^cN54e5j0FdyuKrB_FwZHMG5^_Y-_l3(b9NQ1%A8nzrwT^1BzeYKOl5ZF@)Q zh$sBack!O`8^`^%LyLK+Z1y3Y%=4x4o=QEYJmmzQP~~Z--zn)-KD5T*aNG1r38t1r zPk&b0Qo9QHJY8VI+R;3;_@d0rf0d469KDV-{Vz4+?}0wFdapF$($3ARuQnD*oSXC3 zi7o64TMxt*2w@)~OQIK32azRJadR7D(jo2Yyc{(||B~FBrM7ePo783Iqz% vu1Lh3=RCba6j8ff;wz!-@Bb$AfW z?N}rLzIb70T3}V_sFC(P4#WkInuF5GwFJ9L^;|aCRUGJ9utQaAn3Gmlhvds%coQ=^ z+Y7QT_7)(_SFKFysLPH#U#*|7THl1=&3-Bo+9B6Z9l#~6hOYi *NcFYMWdVF&SFO%vU4z+m)!rm?qp$1_gd6*M)H0{- z3xiReU-`n!{(JMos4b|gF||thaJ0ZX%?siNgnQykX=*pqHkkFJ8m3jQueLV}+vyVn zcxLBF-L5Taq$Zk7+o5t}wVaP0gDM;#gGUhbdsoH|3mdETT%Y(j&TQA7G*-QFXJS6& zHBqSqTfQlF%LiyUys5g$1;tUbUF+0L{bKq@4W#XZO_skDEv|(cX<|8pvn|yhFc%Sx zQ^KHCj5>snI~JoZAf-mbS|zmjSXJ>b5Kr0;8^2dO;WyUSYA`y{h2B+wPOa5W22lKV z?PzNipLZ_DUk-q)1%IiARy2BeYeU ei_EiiOTbW&YjhV5b^Ai0*8OTToTfr zgal}dyQm%}5~yn1yQ+VgP55w~S1|=<_E5vPw0&A?5A{2feC-<1Lv&qw!j_dsHwuT! zz0^P~U&~&qicaG>;URFQaUTJ~*ThP&xR;tHVJBc8GX1gvy;W4A->#8HH{r^5Qy=v& zQj_wt8Ub2-Uv&q{9M_<6e{}* pfN< j~yoPRJ0sPP?Q$>!T3D%lx;MMG4& zBa<^k-4emN9(|1@0yi4SJ!~S$7R3K{ Leb` z!$01mmM|^V#GUF5v$U9RNM|tEC}jr`lT!+^5EhSX! #iGkmjTP)Gf?bzPp3HLo*RgdTc+P^8UiKn>%e3cbJ^=Y<`OB6z3&EI zW)urO(1E#gd<#P72Wk)j{{FxXyw89k4-HATeyArs^r0L0kOBQ38GtPx>A(Sx+`vo* zv^~~=vjQ-WO&((&=Vd~#$1WhUlBms>!@%c>>g#G6#}g!oxGqmzIPMH>z7Q}yHKbhQ zsh)D%r*7b5mhyWeu;Mcv82e1^>1^z$4EXAqfnu5GI vP0Bf*#j$VTe za@?35Z}m2LkYgZLAQy>Y7mLbu1D~^0Z{-?*!KCwHn^b?{2Iey0^%n-9-%A}>@ueI1 zk^wKhGytVndeUWHxq;_c6`pxz09x{N;HCn;3e?C`zjanm9wVEPXFz+r*3kuCyUD&` zz(cPMz|RaA{KgG@cMwl4^bt5~8P?;wH&~BYJ$`T9m=BEDj<*J4FW%~@O7GmjPYk&E zoeu0;6g$|nci6#@qUF6C_=N%2y*E(2_g<&y@d4*;Huy&$(g**t4+h|k4?6IJ0eGI( z Jy*zQa}9U299UINuLcA4}8{>&id>IPGrDQ zUkt#VUv%K*FK*yu9XRh7U&_b`cbb>#OM2tHQ@*Yu$K%lo;UxV{ZWydGQ5^hbasi=c zA7K2hJ7<6{<`9a7-ov?|+;o=3_GSZco>>QOF}r~?88Ftv0G#Hb14oy~?zq>(w?0lo zW>4ROKHJGM1!eX#FgorCyZGMH(|4~AHlNkz`#m~D-3Irq2Vc4t3Q5*Z9*|`7Ra{Kv zvduSy E{tgl3?ASa3Ug&0Lizk@S*P_( zcHy`wcn()SDg@%~E?^-zY4;5x1RvSmz*}hNq_A%YOjBII0&qmpDc(~kFxuZY#PkgB zEA GwZ!=u(%kK*r+L-Sh2!SW zfaIT0MEl*}0Msxyq!gF@T|m?Vp#+Bq=s4u>G;`+yTo5ju72xMU1FemLNGl-|P6fJw z%UGg=@*99_^XtHj{1iC29adSBpzEQ~FUWve6{MpM2l@7LwrV_Ui64Uvz~#X@@L;eT zc$8(ZXNV4@+ X)*fasEyN9cL){Py@xqp*qFAp)Mc_BeYh!gc)!P!gSoOFc*$X zIEYped?D#>*L=`1+yG7t*TGu20nEzNF2Vqu7oh{UM!12OH=;rA>mks(fB`tWfDS|k z@2a7NjAE;T2H?zsI&eclH*gXgATfmuz-fha;Mzh?U Of@ebx4aWE$YTBWtjTK48-D!>BN>4 za|74Sfb{9%p-{KDfy?|+9D$Gt3yZsfr&(vHQ^G*;w-P$=&k_dU0T|pJJ7dj~EPI5j z4=;%YMv4g~-M}fdQbM3wDFelyOX(EnlyU 2d~K?{YeBVmXS7#36?5n_GW+D3pve z)MAfF9XBr0MUTtQgsh*?mQ2y|27=wn>p*1ct}b|kmAOy_1F&-i9XPUr8+eBSBPtqz z9V+U;5f$CQ`Cq_PN$-P{Nw=+}V}@69W0tZe394)$_I+g?IJB}Gn8Rv1po$KRtb%Rdr$mtGa=YSrP2j48Ug95SW+={i?Zu_=Fs74O?{su5oo8 z_hWSzj$6ZuA=EGc8`jW)J!`mu+b)89zgGzO)HDF=)zpDM)N}(kGm2id48Z7GI R66zRmHR|ZNc6Hpi$?xC`3=V-$Mqt$_9oRaG z0txeXPKWQK3 $q0YZh~7`v%HBm0LwdcV2pzT>HNxYuN($k*}6Ked0jV-RZVVP z1Flp(9oM9uD`9*BDR~%53eV~paK-EExJLC|IBpi3?jF}S0E;xxf%O}>fTp9m=<%R| zjx#mHK8QWW(a;6)c=GASf4~%t=1d0u?3oYlHZ+h7Z={o~)5wMA4zR-9YGeS0e1pJ0 zGoj`;ZeSX#otxhnfcYEiz-o=%z;~>3UvF#x`Zv*mm77rDS?t656cGZMO$<1-sgA4A z)J2n{zHTH2~#iI k^U#2A2FtPYHbbpyAtUU4Ya z0Q|y$q2IcJ$!r9se`^4K{8pzJ)XD`!{cXxk_O&wL-nG(k0pGcB+zFP&-QO92ufNlQ zzTdlmrb9Zx9pCG?v)^NX#BO76?SgPuS(|KYZJ?FYTBl`e;|AVhz|Cz8z^82xI6o7F zwk{z2_AD+8HnugO9<|j`KJ8p6?i?$_x^@QOePkPioL74{@CpO2Zf^kIX|Ds#9o)c2 zEQ2dM7=YOwC@`U;8yELn7t@z@G~oX3s1y8T0PbTAoYctxyw*tvzVGCwIFV6Y)Y$;M z(pd+->FfrMOVTB(`CSaai(Pc!t1fQf3`P;U8i41z>cHHtZr}knU(D@h0G{rq1D|zs z1D`MfW7ZD_;E5k};Nu_Mz-v@mqLLwt-((5ZXM#el@1I0kyX`q84Pr_1-QN zm&lmWs2>f$T|er;%pcvrBdm3Q?_&UJeRSZZJ}w}X92;(f&ub@3@M~WKbZcK7dj9`o z?79P@xSoG*kKUx+-QMl)?Vc5}fnBkIEov;-dyB@d5PNK3?_y(&73>8SVswoajIm$? zyJ9)i*kTl0G}hm|w|fQ9{J!_kyM6O{^ZL9#Gsq5Qma5e@YOoV9ZLk8&8ted~8X>w= z96rPexMPR{JTt@r%u-VsGt>#VZKwjw9O?kRQR{ceFel*VVG8j0FdI W+E@jc5$gc1R7~owBGRq}^yIRtcjORy#-ASur=%4$yjx6L8)b1g^XWDPtVK`D%}EIo1g{d#nQ7 zGS&f{u?Es=^+9vzKRE$s{G h90scEb?(Fr(iq5@n#(E(hmrm^-UC*YV#3J@kafGH}lW}Fjn zWSjzA5@!c$E+} Gu3I0GGM9#nK{+L>zdj}%S?0P^}{p;IBl8(xI-=Ikm(9Aayqs^Y%r6j zJ23CmCRk#I6SJN(6lRlVIQC%ns6}U)=`=^`G80#|tFFP=nGWDGb-vEcassxSr2vP| zasY3sBdu<>6R_oM1vq539jLjf6mpR{PPis>6kNYKb{um@Ef~+a3eYlFSBIpo*IWlC zUCoAeo)fd$^Au)X<~e{{)f)Tg46HU^0k)e@fw|kU##G#!`3gfk5-J827vQ!Y#@up& zgW+Bk_ qOE7$i19L`Yc43KAtiDT?Sj#MR0RK{} z J$ zPQcg86kyQLHlTotG6L4639$QTC)~526`b#K8;)llt1<6f?gV_aTmibTZ~$kk9Jj1c zfVgE?honxkl49syi3(Y_(uvp2l?t!-3XbePYwjrRe$^@`+?7=d?)56lkH`!K1*@G< z*{c=Qv(=82<*8X%xW);1YK;PXw8jDaM+MGFasvL5qyX IWS{sUos?{YC#;#LPxJyXOEqk3Ez~rd4I()qor|s(%PN&v8 zfXmeq9 x3daK*9l-VKq@&9wC*aae z2t;)yyEfT@(73tQ00~Wh@_^QxouG3!E6}Z*?NDYbou8PY=@uP5+U&IjvyAMLw>V+c zoYdRu#O$Z73bSQf?LZCQOdy3^ZJQG=cAJ7*u+5HRj#A;`IOXo2qF|<{*fIFJi1I42 z-HBI^?Fw$fb~}z)s2 +<} z4|nR)%IvW#O|~k3$=!Ad?}$;2?jHDdYkO4sH$>IYFY?h;T}6hJT71BVAlZADZlS+H zwug^X{t{beak9MYcU=q3SE=kDx;}UzhK3~uN0Vfjc}yp1ewDWz({0tN=SPg~aD7gu zuA$?e1xApCiMXAq>p^Z9q|Ir-F}Bn7pH4Yt``1%C-g}LD>&8W5;P$s#BRn{*GeN57 z1RwacN#_pkXLbH|Hnx-UA*Y?#Y&xx!-XEu(BFs@wGJBqJLM}g}AoreeLgHb0Zd7v- z+MU$}lRbIdIVuM8&teC`Ol&*rgjCM9(GJo%C!TTV6rQWk>DpnXy*j5O_gFOZ8n93y zOIOlXRJMKkd09?jk7uD|OM-h@x}GG9mh)&-K;71yl xPmv=_NK}a*LC&Cl}YG6c%u 2H}mK=q$j5dWFafp6HrrT#}YO`UawVwGD>6 zzjaH gBC(b*buoubl7o zHRY7|x?~r6sb_ajeHN }Zl=gT5ku= St(~tVi;KF8azI^kS8aMe|mZFWGRrufBtF>uPzM*Z}D9gT5RV&b%M=HMQ4pgEL@# za}&N4fY>2Bb+Gb}=0>P96ki3@tJlj7h7J9`D0J$lze&R{?W?Z=VUr~u*7esPL>|2c z=xYYNSaYXv0hfZ9?S3xul>z$MO3lbvGvAR)$ryrR*1^56g@I~A^$ig>VJPB~lD@#Z zocwyIz5?M@B1T`6`Irv9V)RCmg}CB $hl_^e6a~PXCFq{w2pQ)Gs6Y!ewv9 zAd@$d@=;eqhAa6q!`o1a-k?6 h^NO{Ab^fm!`U@I4oGEAo7H#ag|Cht1sxE6-Rgf&DS+pd#C z+Zv`t5Zz#yXuRNt-o0i%)Wg;a=g-Sk7a58LFt?A%UDg>oYnXlSWqG~fqJc@c4)YEe zB;xKoU^qzJp$82W(UsR8G(=eM!N`TLqhWh%)E0w2Y484+py6#ze1-#=aLrrP7Dqgfv%WQvf9HeG3C5l?T zv4Igzoify7HopYV(}rYBot$#o;7&6bFtRlZSzUMff^^d$z?*Z1S(-dKKFd&-l8;<4 zOeWVdeXknoz|@O|IwVa;FB%#YNK;2!n#`9Bwg3M#jk{!MNs@E=lA({CeavNred^^x z?0eeSdtJ%Le)E^Jyz`#H2ys^o9Z4M5uNcDBIL4FI&$(KNJ(~DbN;Lewp(watGw@DX z_(~iL?i) -_(bU_p< V@l57Ngx!X~}@8br@%R1~Dv)BNG#BSS|I)Jj0^EscTryM~g`DtEFwB#eyk zf=Q1JwMq3KdR(YOp(%EypbdZJ>rh{*`Pjb S`;xgX !Xuc0Q)=UbJ4bLD+~pz}*ZY1sddp*ZOS$nP>UbCvR#)#sIlho^6_Fdsqr zxA~c-z0Jo|My8Q2Og5^-TA68rVV|&@)RW!@z_X7^Q_D@9h(=(&S-m#O2{eEdlbr-f zo~#>5MYua#8hTEM34q3*l~yw2Gq#fKS O;|rE=2bQYfN&wx%}1 zg>`QGUy10v%YR0+(N&4)zH6a~zO_YE&n;g>Uun~;-PrD5%@Gw)JKYP#VHZ%I9{)=m z{XFu=p@Um}V%*@32fI^k6?Ndgr&32Hyb8r;AND4B<*TEw 5u1!Ha}|{x&wSZ> zC_BRZ*vja{&pccSmie(ANY @cFoTX{1K z^DIA>hsOTwWs-a`fTaWWwg61|`S&?=)~O8G_DXjRWdDc3v3DR# ?UU`mkE0DccD6sf%d2*LR(=PNC3Trk^*Hh^F@JbzS0m9E-C zr$jYhS12lbJ9vl~r{43GnrWn0YbKa2?Gl9&69VRsDu$}W-{{$rTF1BCz`(|9Y>8Q> z=DSs&-R>Yg+v*K&Mz$6afDMdnef{QBUo7!eM%H