Px#1ZP1_ zK>z@;j|==^1poj9en~_@RCodHSv^SHU>JUr_|t-l6$Nz?brB2AAh?{;4vIsm4pO?+ zq0kP6o?8b&1)<$k=wQJ?*W#d?;Lu`kP-@`@e-HJQ$C{>fT9(zte%4TKkyI2VX&A;}Z*T9W-$j=S zV8lxq@&1B>g1D~h)X>mCB_$=4OYH3I(C+RoEi5chDwP^J6Y|%4-30+4ud3=-Mp|!e zZKcA(Lb^>H9e*9s;^HDD8BEiB;uWEKZ-C{Q)%CWvwp%9;fCCH(gMyp)yh{MHeob+4 zalE;?nW6@WKu9Amo$D?EPzdr-u)G)GgnVS^a<01suxg{1mzPsifnvh)v(vfe%>lil zqJpA|vr1UwT+5>yLUO~T*`FqD|FNi}NhQ5brOF2ig@2735il`#$`0fFck-9X$&b9r z4_$;x0l=-iWHN$QdX13 +@7EUbN zYdvim4;$e9^E`UmZ%|^zq_@u~R7iQ?(~NN*79bjHRJn!YV<-F*s4PqWb TX-7VMu-K&vfdhy|yK7KiM89)|N0%8yC+eF0?=#E{TQt%MO z!;7;^2K7yzx=OGNqy!*ba3E=&1W;|T?uYT-e1BF_?cM+}xIaE-djz2+1L;PF(g`G% zjZ4?PfH0Bt5L#cY@N3UY@aJQxkdhYA(WG%JqNF+>EY_WXrF+`b;RV8Iaziik`GI?o zQ)qNK6TrizPPy=4tPl0%F>9x<#g;>_O^ZVOqX7!kSJ~%es#Bo7P z-Kn;Wd_wB+_4ac^LUicm?c82mF$-e6Ttq4nP+g}~cs z)PC$f?Ve!qou}WH86p6$M>1)Eeh3soPBODU5a-&p`+cYN;W@odJNH<9b@p@u3lKmU zpfvgcbw07|&Igg)q6bu#W$%d_d!>X`5r5wTur8|8RKno3A6;Ash9`J$sEUvP`(5GU z--CQ|!{X%83&cy2c=^c|HzvRj5Z2M;4kO^IEyz^}EeB))Zve6$2wsKG5>F7x2FMff zYAO@|K;RInud=%?h+vPOX(*uaA)x`k4PYh+EP(HQ*oLfc@`P6%XXVKRD5K(aRDTAc zBrz%q_WB5;^{veIHR!&g5(PnMRS1M)jY^l1npYbLkwil1s%|BI>u5kl1nA%qiqDcZ!qa z(kgN}igaOqC|!<(a!Z?}STt;IsdeVh-ygrn=kxx&KA-37^Ll(fkIz4!3|}7)HDx_z z007jyJV^&-O5G}`l5Bimdcj^M3K6c}t^m-StMcu*qHK*l;d#&-02rnKz)S;xuQJ4( z1%UH701#3Ez_AnnkWuCLDf?uGQs^%pB;dzZt9-;QkP%pvXHX0PSQu}WTzoAdP6okP zFK;q94U-4ec5yuVB4wn&i{$DTKfX{AOhX(-JV|M(#ikL5?I>D05N{hRQ?h}LGc?23 zMJq%3Ub k4mD=Yo%yszM}g6jT)$Lq{c8Oc!mkMQQ3J z_&6QKXvnWyUUNQ{OfCFd9Xi+LVUNe91}qpL@aw8229exb5Nat#B3Opp_8S6 w+`KG^eB%c!(;6M zD(qkbt`_9xwIpi&wQiB^`DV#*6HnEx0;g5Sek;C$uC%Grjn|Hsf5gz}S!Jh1M(XW`w}YU5vbdK4gj9XO^{6`M?KM%IQVs`L|1&tEfig3^Rh+ z3;dBtnE*HSlXN=8cn0daSbOsaBt$+LcfK5rg9T>y&=#^I@8rNI;AnTB!4sxAd2T&X zdeL*E*JBXnZu7*ipR&Hd{TqjzSX@?fKg?~tnhLBV+GF4Bw~&b0JmNqdn4Kd^OJN~d zqVvgd_J=BF4M-0#Hjak)b?=c+?nTPutdVmJ-y9KhWS|C|Ic?j*;xbQuN;5>@19MIB zeTU;G=Uf#sG4<|jjNdK)R>0CYrbAtk5A$F~ B^){}aV>u>ET9oU1NzrHU}z zIrlC^C?pq+c|}TjJ<@kR<(Mp&SL|GhgqH@9#|J9-!2PO( 8*g)aO}ugFDswk;f_0SjoD;l PeT gciO(f0#sr*(I!K};ZG<;wXuReAsU@$yI$IuMh z2VVuQded?b@6_TWjm1dU!~;a@J#s55P2MFHL5=_k{s!38^oZpCn%D`smp3kg4QCc^ zTSYGSLL7Z6e|FYar&YR>dMMqFbiJfv8qLu*ze!;;4%;-aY1n=0hdQ0Wk5zBr56t-g9 z{u{*n-Vc^t40eCUpy0Cr= sTyO+x)dVD~9QyV^mw5xv@37lBWpMzScX3rWRufr6Fe! z_FyR&5>#Vn^$gZ8H`er1d?^$krQUZDOPEcYl0{tNRE4asRWUBDFI?=JRX>8VT`d~z zlWq+hOGhveJHQ_EC5Yv!vnxYlX{yhv-Oy#xI~PCvc&@kGQMKgH!?GWHdn`FHHtcw8 zxZ{cFaG3yma8?fHI9cE0huiCDW$kFQ#~f$lh{JJS*SGvnfPOaY)X9YZADBu pF delta 2468 zcmV;V30wB05v~)EB!3BTNLh0L02U Px#1ZP1_ zK>z@;j|==^1pojELrFwIRCodHolj^KR~*NGyPH%66%~bOJZzI(q(ZkK=poVe5b+?b z#h|? xhj@}oq`@Erb7<8)C{>z*;(sMcb1*6>HK<@U$!yrvh!wU|Gb&qeIM9A*^J5N_j~X6@BP*vk-=av7z_qOBa)&r85$be!XA!gGMPh# zLLtYVXW4BF)hCPWHlIqRrdL*0ZnEd&0|Nt#R0bt0fC)a!gnpI@y^rcw;DIn@j51}M zXNs7o5{Rq-tbceW`0ttE`}u3TckiaQwl->QZKchdH`BUx>!==i_wF4%fBu|aym&!# zb940g@#EF+F+~i!iior$A}Ii?KAlegPL7$OJ$v@hfddC<)22<-h`f6BitgUMOOGBs z;xElxmi0xH-4I# Q#FE`Zd0U624|im=5!A zLn%O9`B?P_4<4*rGgB%sPg7G S;moMAT*)I54Wr~zL zfNKzT-+u@{JUe#muw~}bue#P(0kHjUl4XaQhG^{Hzu$gj7Npm$78FIb1CHSiNtRjt z(SgrIVoFYx;F#Zaz6wBX2akw+45iWD-flm#EcuY%HNFaP3u`9XDg#z!Z@4yGCV# zvbcjoF_ea2y0d=Qs1#s34wLbgjvzZ WwPl*TA5O5NQ|#J%wV{NXFhLOJSl%npTw98c>|^F;8_~={!T$cUmmhWpc1q_b zX@A dTQY3l!J zX;lgMnPYj&b6pbAt^f!KwjB0a1_}Y9fFVfnS}3QOQ1Ln(FqFW7k}2T|(CPyqd Ta%lY%H{ 0Z+M*~ zR%%aIn%y$?^O+}(BNd|;?1WrfGu1QN6d;?O3%yOY!{s289X!!w+x+}PM+vqgy=_rF zqs0WxJheQl9}$Zve38Dx-q*v%{ *;oEsLk{6oPnTD-?xdk@ulF7HW~8Gx zmX+7TQI`u8jhYauqu*UxvMZ%{Op+qBDL~Fr5tiaGMRh$Ka;3peI6eH{&O4HTR&R&I zO9aI-6`gyl;|H)a`hR|(h@GHS0e^Dr&x>z<^mLY&C!%CMc%qqxzinne%j?*o1ehc4 zAN&q^s*ToaD9j3OJS(1gV%g3Zf+_}g-a*B?Vjz^g(A(_!-923eIz6 < zN6iT!WWR%X)SOiC^9o&PSAc!;wbyHlC+`RNg0Apy6F(0}m3~am7HoyW)WA33hDG7I zX3kRPDU~FaoL~Nf^ACcep>S^#f mB5D$a8OA)pIY0YXe=AF@JD^zIUoOzuJwjKUhTN8|>7q9$q|DgQ zaUI%Uc!Mst?WH>BY7={JC|0Z3|08y@LHJntzYH`-$cCX1avH!`xH {w#maU }=DoaP|3#V&GM zQY>~j;}s^)oCi;SwECKS>ZVHCDoIT$0Crtv+gGpabUv_g@rq+=TDCg=1?EXSu9WLQ zI$I-a_H)8vKy-y10s`k{4#fPjkFj$P0c6FxsA~mqu=-WGfZUy-%l?DL>4H@tHfcFk zT75g9;T0f%c7LH7-FPaD0;KrA5OC zY uCu=q86w92Z>O?nm!?B7DleERP}TU!pCO^yzfK5I1-TuVC$nUBmOrt=#m)A zJFSG3{J0Wo{y2J+k2iU9u5J>Oh~Y>O1u?lM K<8fhOfefXAK@Ol$DEJQaQSE>~a5p 3?^PN&(~Swul|zj%PAN0H#~89^-!3`6>X@f0!A%gy(ne+#y3WFyIZa)jz75 zq!bi}4&x4EnYcYO1cTMjr|U5VoL60|Q~;*`uwC#Yo?pLy-GrnefQ&Fz4?uQ7!`#9o zV&~Xx9$LM1>lPW*V2~RhX-JOjltdn7h?z1N=znGgJ9xp$#{w0m=v8KvAx9qOdHncs zGhN9A3D?BLMD>Pwa?CheFIvaha@?V0=a?eS^4Bmg3nQB_@CQ?u>Up3uRyhVaBgqo0 z1a7c$uBro_MX(#lQA95_E<9Hn);7{y#@!K^6!&>5mHL$3vQ)n_<`-F9KhGYg-SWbC i)EyOXFc=I51LuFkykG!$WcVNe0000 Kind Xcode.Xcode3.ProjectTemplateUnitKind Identifier -ru.handsapp.dt.unit.singleViewApplicationWithCodeTools +ru.handsapp.dt.unit.MVPApplication Ancestors - com.apple.dt.unit.cocoaTouchApplicationBase -com.apple.dt.unit.coreDataCocoaTouchApplication +com.apple.dt.unit.applicationBase +com.apple.dt.unit.iosBase +com.apple.dt.unit.languageChoice Concrete Description -This template is a copy of default Single View Application template, but it comes with .gitignore, SwiftLint, SwiftFormat, R.swift and script for bootstraping all this stuff with CocoaPods. +This template is for MVP application. SortOrder 1 Options @@ -26,45 +27,127 @@+ Objective-C + Nodes ++ main.m:comments +main.m:imports:importCocoa +main.m:imports:importHeader:AppDelegate.h +main.m:main:UIApplicationMain +AppDelegate.h:comments +AppDelegate.h:imports:importCocoa +AppDelegate.h:interface(AppDelegate : UIResponder <UIApplicationDelegate>) +AppDelegate.h:interface:window +AppDelegate.m:comments +AppDelegate.m:imports:importHeader:AppDelegate.h +AppDelegate.m:extension +AppDelegate.m:implementation:synthesize +AppDelegate.m:implementation:methods:applicationdidFinishLaunchingWithOptions(- (BOOL\)application:(UIApplication *\)application didFinishLaunchingWithOptions:(NSDictionary *\)launchOptions) +AppDelegate.m:implementation:methods:applicationdidFinishLaunchingWithOptions:body +AppDelegate.m:implementation:methods:applicationdidFinishLaunchingWithOptions:return +AppDelegate.m:implementation:methods:applicationWillResignActive(- (void\)applicationWillResignActive:(UIApplication *\)application) +AppDelegate.m:implementation:methods:applicationWillResignActive:comments +AppDelegate.m:implementation:methods:applicationDidEnterBackground(- (void\)applicationDidEnterBackground:(UIApplication *\)application) +AppDelegate.m:implementation:methods:applicationDidEnterBackground:comments +AppDelegate.m:implementation:methods:applicationWillEnterForeground(- (void\)applicationWillEnterForeground:(UIApplication *\)application) +AppDelegate.m:implementation:methods:applicationWillEnterForeground:comments +AppDelegate.m:implementation:methods:applicationDidBecomeActive(- (void\)applicationDidBecomeActive:(UIApplication *\)application) +AppDelegate.m:implementation:methods:applicationDidBecomeActive:comments +AppDelegate.m:implementation:methods:applicationWillTerminate(- (void\)applicationWillTerminate:(UIApplication *\)application) +AppDelegate.m:implementation:methods:applicationWillTerminate:comments +Definitions + main.m:main ++ +Beginning +int main(int argc, char * argv[]) { +End +} +Indent +1 +main.m:main:UIApplicationMain +@autoreleasepool { + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); +} + +AppDelegate.h:interface:window +@property (strong, nonatomic) UIWindow *window; + AppDelegate.m:implementation:methods:applicationdidFinishLaunchingWithOptions:body -// Override point for customization after application launch. -self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; -self.window.backgroundColor = [UIColor cyanColor]; +// Override point for customization after application launch. AppDelegate.m:implementation:methods:applicationdidFinishLaunchingWithOptions:return -self.window.rootViewController = [[UIViewController alloc] init]; -[self.window makeKeyAndVisible]; -return YES; - +return YES; +*:implementation:methods:viewDidLoad:super +[super viewDidLoad]; +// Do any additional setup after loading the view, typically from a nib. +*:implementation:methods:didReceiveMemoryWarning:super +[super didReceiveMemoryWarning]; +// Dispose of any resources that can be recreated. Swift + Nodes ++ Application/AppDelegate.swift +Definitions - AppDelegate.swift:implementation:methods:applicationdidFinishLaunchingWithOptions:body -// Override point for customization after application launch. -window = UIWindow() -window?.backgroundColor = UIColor.cyan -AppDelegate.swift:implementation:methods:applicationdidFinishLaunchingWithOptions:return -window?.rootViewController = UIViewController() -window?.makeKeyAndVisible() -return true - +Application/AppDelegate.swift ++ Group +Application +Path +AppDelegate.swift +Nodes ++ Info.plist +../.gitignore +../.swiftlint.yml +../Podfile +../R.generated.swift +../Gemfile +../Rambafile +Application/LaunchScreen.storyboard +Third Party/.gitkeep +Services/.gitkeep +User Stories/.gitkeep +Resources/Assets.xcassets +Resources/Strings/.gitkeep +Resources/Images/.gitkeep +Resources/Constants/.gitkeep +Resources/Fonts/.gitkeep +Models/.gitkeep +Library/Base Classes/.gitkeep +Library/Utils/.gitkeep +Library/Extensions/.gitkeep +Library/Reusable Layer/.gitkeep +Library/Protocols/.gitkeep +Definitions + -Info.plist ++ Path +Info.plist +TargetIndices ++ ../R.generated.swift Path R.generated.swift -SortOrder -99 +Group ++ Resources +../.gitignore @@ -112,14 +195,184 @@ end +Non-iOS Resources ../Gemfile ++ +Path +Gemfile +Group +Non-iOS Resources +../Rambafile ++ +TargetIndices ++ Path +Rambafile +Group +Non-iOS Resources +Application/LaunchScreen.storyboard ++ +Path +LaunchScreen.storyboard +Group +Application +Library/Base Classes/.gitkeep ++ +Group ++ +Library +Base Classes +Path +.gitkeep +TargetIndices ++ Library/Utils/.gitkeep ++ +Group ++ +Library +Utils +Path +.gitkeep +TargetIndices ++ Library/Extensions/.gitkeep ++ +Group ++ +Library +Extensions +Path +.gitkeep +TargetIndices ++ Library/Reusable Layer/.gitkeep ++ +Group ++ +Library +Reusable Layer +Path +.gitkeep +TargetIndices ++ Library/Protocols/.gitkeep ++ +Group ++ +Library +Protocols +Path +.gitkeep +TargetIndices ++ Models/.gitkeep ++ +Group ++ +Models +Entity +Path +.gitkeep +TargetIndices ++ Resources/Assets.xcassets ++ +Path +Assets.xcassets +Group +Resources +Resources/Strings/.gitkeep ++ +Group ++ +Resources +Strings +Path +.gitkeep +TargetIndices ++ Resources/Images/.gitkeep ++ +Group ++ +Resources +Images +Path +.gitkeep +TargetIndices ++ Resources/Constants/.gitkeep ++ +Group ++ +Resources +Constants +Path +.gitkeep +TargetIndices ++ Resources/Fonts/.gitkeep ++ +Group ++ +Resources +Fonts +Path +../.gitkeep +TargetIndices ++ User Stories/.gitkeep ++ +Group +User Stories +Path +../.gitkeep +TargetIndices ++ Services/.gitkeep ++ +Group +Services +Path +../.gitkeep +TargetIndices ++ Third Party/.gitkeep ++ Group +Third Party +Path +../.gitkeep +TargetIndices ++ Nodes -- ../.gitignore -../.swiftlint.yml -../Podfile -../R.generated.swift -Targets From 17052297e62867a0fd1904b3ea6f0750537c18f5 Mon Sep 17 00:00:00 2001 From: HandsApp <53041799+HandsAppTeam@users.noreply.github.com> Date: Mon, 2 Sep 2019 17:22:41 +0300 Subject: [PATCH 06/30] Update readme.md --- readme.md | 33 ++++++--------------------------- 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/readme.md b/readme.md index fbcd820..e18ec81 100644 --- a/readme.md +++ b/readme.md @@ -15,43 +15,22 @@ This script will copy the templates to `~/Library/Developer/Xcode/Templates/Proj ### HandsApp iOS App Template -This template is a copy of default *Single View App* Xcode template without Main.storyboard file and with several handy additions: +This template creates iOS project with [SurfMVP](https://github.com/surfstudio/Surf-iOS-Developers/blob/master/Surf_MVP.md) structure with some userful features: * `.gitignore` file; * [SwiftLint](https://github.com/realm/SwiftLint) build phase integration and configuration file; * [SwiftFormat](https://github.com/nicklockwood/SwiftFormat) build phase integration; * [R.Swift](https://github.com/mac-cain13/R.swift) build phase integration; -* `Podfile` to install all the tools mentioned above. -* manual initialozation of UIWindow with root view controller in AppDelegate +* `Podfile` to install all the tools mentioned above; +* [Generamba](https://github.com/strongself/Generamba) code generator; +* `Gemfile` to install Generamba and Cocoapods. #### Up and running 1. Open Xcode and create new project, choose *HandsApp iOS App Template* from the wizard (at the *Private* section); -  2. Configure project name and other parameters as usual; -3. Close project, navigate to it via terminal and run `pod install` to install the dependencies; +3. Close project, navigate to it via terminal and run `bundler install` to install gems. If you have no *Bundler* installed - welcome here https://bundler.io/ +4. Run `pod install` to install pods; 4. Open the generated workspace, navigate to *Build Phases* of your project's main target and **move the SwiftFormat, SwiftLint, and R.Swift script phases above the compile phase** (exactly that order). We have to make this step manually due to limitations of Xcode templates;  5. Build project and have fun! - -## References - -Developing Xcode templates without documentation is hard, so kudos to [Vokal's templates repository](https://github.com/vokal/Xcode-Template) where I was able to find some answers to my questions. - -### License - -``` -Copyright 2019 HandsApp Ltd. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -``` From e0a1a9aad73c7374200d072aded461455ec9e89f Mon Sep 17 00:00:00 2001 From: HandsApp <53041799+HandsAppTeam@users.noreply.github.com> Date: Mon, 2 Sep 2019 17:24:03 +0300 Subject: [PATCH 07/30] Delete choosing_project_template.png --- images/choosing_project_template.png | Bin 295112 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 images/choosing_project_template.png diff --git a/images/choosing_project_template.png b/images/choosing_project_template.png deleted file mode 100644 index e22271777e9e69894ada1605ea4b9c8b2247e396..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 295112 zcmZU41yoy2w{~c8Z?Qsg_Y~KX0;O1S*A#d6B7su8cnd{?ySubVfntSVMN5(5?vOx| zpT6&R@BP;LvsUJuoHKhSb0&M{+0U~Rqp7Y)ginJH004-Tm0oHC09Y*m045_Y_Wc#f zIeY>DfKbIjUS3mKUY=3Y)6Lew*#-bmiuq)KW2iGsnQNl0Y#*js^#1otuBqbp6U?|u z6wdEilQb=raG8D6Z757TqeD9iDw+8^IvzCW&ouMLE;mb)YiZ36yeljFqKsj79e5mk zypa`%4&3?yQP~>L!FW-c#_?$@zXPzLif@CLoL@EUu*<7W^ slz-Rb&MLwr?(f84oc5PC5(O;sX~MYI?d0hXvq(FYF)i@`lGf4T zH_W+!b
Z#opE=OYe^LIbn%ihznr>UO%H=<#lcW%Ql9m3nX zsCf1i1vXBvNT1FODIwz+2hwX5L90KEvr#wIhItK9Pl{v7wT2x7XFdS8donTD`&}QH z8w&T^k}4{lSy~Are(-u=Qdx@2Pgr^|i75;D#%R*#maSEN8hai6^t+KDv58PiGKUUa zZxO1y!QLoxC#E2G^bEcKSWCM?()NQft9nd?;Zw^JX)ys~m+*zOXz}_!Q9*@wf*~f+ z$cU67O%agjb5+XZy!!Ob(Wvu*wCMg{hD0^| #m8uU`V_lfs-CF>7eXPNH@7 z5;4umWbtmun3<9iKM?3$;>$jofzVD?)YdSn{xm6~NhY9|%_b?3r4Q0Cd!_v9OL1tF zCJQRcPv(ONiKxvA$j7-XX40O#?+b5^g{q~vz=tOa9~dRqO8iObLkD}DaGmMffJb7q zhjxMASmbclFxF`DQ{9~+{p$}ZgACs=@4TmH7M8FJ$q;fSG5UI =I_rIm`K`<978AQjvEhN`YlMOrY9zQT60t`$>Hx;;tp zjszkduVKTs=}P4K+?8P_IO3b-CIVMnsJPK)-C2t%j>sT{DUN3?k$UXR-Rt_{3pkw? zP^b2D#qq;$($_|<_QZfc*Ca$lbcm|Bu*w+>FF+Y2cvgbAXS0VWR4DES-zeEQiU)}K z0!#8FUJ!$_2V4AGkaVaRE`W)V_BFtR5w9q0w{C=49BT81@-qQtn4l(x{yU#M8fR>i zUiA~Qd7R8%CU@F9?D25bRhl*;I}I^^Y(&q~XVHwfc=;@Z{h0MH4@jx{AD$|_OLAw$ zR(>&+M9BIynGxTb|BOgGtm;)oGN01(Ga*k>iG*wg$t07Z;3AxWm@kR~A0uh *L|~8*=!p1IhkHa@y1m4;{pIId=uivo6xA6k1pVlURm!t?>c` z+Ec#71-%c-xce-vG+8{ab;spFj$tEegJtuy_>*Vylp1x>o)%qM*bJ*9vCpIC*hQu1 z3SZ@ei;IhGsy9nTlvS&mH7iw|YG b3j| zbLQ!VqtiLHCWV2T*O9K>^ztw>pgIujmhqeaYvWsu3uVL=Vh!;Csg0~ga9nggdD0iz zYjHxo@~lNbU7&*~8k-o~G@LdZKO9Q9NQ5A~BpReHc|!Sg_6fb{fwkr9K=$;ELDSw} zgI~sj+^k*uMIY1fi8u;(I19g#9ue<1v^RDAGI*1D8c3F=+@@SJ%$;hR+F8<8-nh#; zZB&x=S|j5sLGTI1vsh3?&`g&W J=vuFEat MI^)}(w z57iqwdGr?yrdUv0bG4W{1 Aau@~c+v;oS<5%+OAL@tC63-6L##LV% zt~BQ_-Yi-#R5d#^?lv|z<=9Kjwe((*NX6#V<_x)hU3Tci2*kP7y*)n2I)sWpk#eU~ zp{1cc5}%?Arz4= &KIloOQWnIkG`=J_h;Yqr9;$T*dmCY2ji{phRogvs}lA%$#( z`>$5qi`yH_;!K~K9w%BP#85Z-zdrxGZRIjpl4vG!buq8uYVI1~y7bGnbH7u=9enV6 z4>i@d5Pq!n$Kz+}5%pSoPvgM-Z#~`Pn@867 TzY&sE$t zK4-a0CMS!tco?i_6-^XTD7U84rBV#La7l9M= LFjQbz5! zwmm@XfQmdJ){Wvi?p>^7?C)`vjOK2`T0`w1i^z;PW<7pc>8q;!s*CAw`IqZ1blUUoOe0JbYzCri?rgTZ{Lo!{xA~h!qe}+ BG`DTDoLexv1P+x5(n=BnmRCva_6{gLx#+sN2{`98(IRHbEwvFN<3Vf&hV za~Z-|&3-J`xN)(#`QcNnr$9ISg_*X6Ag_U~Yfv<#t)0zNRVOFdY*T-IwxBw(rPx^t zS$Ldyxun)=;EZmQZz%M#`!=3>DRX(*`NOx`{>4*rqUW8ZM_m^>^BR2dHSs1_rY3 zumULpp{VTB^UL7L+r_KfBe%POqx8jxA0BS1DNP@gblGZo*{K?<4))^VEEzvECb^T` znxl)VBK}D$D*a_0_fly$Ilqui@itL8@sb`U^ZTc0;o()xFh@;pws!+k_o7^=Tj9=k zUHJB5QYg%hIOh@+c#?hGzIFb4JB#1nO#GyC?igqB>rxg!!qmBa!>_#ADrhiyv^PBw zjMsU#q<8f5e9p4g$5f*$ *n*uKp(Ux zVlG$xc)ahr?+EOlbhGM9)xEzU5AP#cE>7G@ D}kwKTlc)X>fxoF `k2M54!#BhwNRi}JSPgxD*Mq@L=UU=WH5^ALolO9ApqF?!lCuSs-fwxvHY z?lqR !V5R-R~=XDo-z~Q@`BcZCfP3FZCShhNx!_m zl<)=qk(E+4Am}3z5s@n`4Wf+*JCGpM3TyAYSUdW}`6N8{k6_~)t{W8;k$5762}Iwl zdmmijxholY0RWV2f8Q9&+N>u400z`S*U;Ng?X{$pn+v~%wVS04zrTz7eQf|h+F$bi z)Wyczg3;f_+0{$Z|2gwNH6-uP|6T?%GyYS>+vz#8p_(S6yql*DqX@q+|1)M8d`3n_ zX-{igN$r=f{$qas={d8#x3{|_5a{RU$L}Y^@8)R-6p)aR06r503JUVw*WmLCaP_wE z=X3R9`L~h(Y3HSlmzAf3ySIazE92jGEiB!9yq_~O|Ly31U;lnj8-IuY>&eyYKf}5o zAn@-UpaB0f;QzLLZz}!ws-&iazm2ouO9vMlSFig%WCVmo1*QKn`2TMGUzh)7YV=>G z&qPH3+w{L~{l`=q_;(2ZHKc!^*FRV9AD9fjH1K~Pz6}10di1CJ`Ji=psquFnAN-x1 z`vd8H!TIm;{`^6pg^^o-BLMIMp!`x+*B|5HYv4qwp3gD-i<=_jqpFlqhLP${wH_Uo zo2XS?OpUyput;418Gk9JcGT!=Or202oD%@iz`%!|au!2wTjnJEHwxadsw(!M`!+w8 z#e`;r`rtn+G^A+WQ<|PwC8X+Hfrrfc)vo-89V5R6Ymo{Bib pXQU7IurM2DvaxON*kjMp))<^NrL#h_>{zhB#;s%tz7Qec5PaOj+TN`qtXH7kKcF*pvcv${7bj> FmPZRFARWD_`IeOTotMg%sTc=aDb?oB?>+6ymLh#L4xlt;ia%{xbtZ{ z2y*a9n#)P$Y4S9*I~X}R2ljE^&`XHxLRkl0T>7DrlMu*HaL#1~8gOB6`afOyW2z8_cPjDtkS?GQvx3a7yU<9VeH#U>JppP|I!gtht zF2MDMwxV)q{+xYTIhV_a4?}gtubCSxO{jZoAwNp^F3X+iLX&@$MpJVHs3f*}kiGHL z-%3{gd2`VuNJ$4xeYU2&q(^?qarWo8@mE`fTQ3TOH0syYi=~@n9ya#snaz}|^kO;m z4%-s@1=S6ZJPS3LIZM3^2fK5%VCBt%MklEY%j7=QX08(jqE-wK7?2D=HeR7>(Os%j zA~eBmXP3BQ0h+8vVYMH%&VYO}_W1}hw_MaQPw2u+fRRFvphB1G4(Q2fD~)`x&dD+G zr-&^oM;LHdEM3lE536=Ez1={Q?scy|@>U%dJDw`rnpuSKY*ezJcuyMI)x_O-(orXG zYcHCAVT;Rb4Coaxp|93#QLF8&6Z76WvrUGoxEeu(TSAODyuRV;AWDI(e0IEl?nLM2 z%us1}!0NFDF0T%xP0SI*GgcCPaVnNu`9vTXwR`RcK|SNAEJfWN!dAv=Azsasa|{x1 zr 40pO4^}U^9A$8{x81*d6oZCuw=g z#c<~GF$9D#y2b|`n#W;R;IH?+Ij}!(rYh!I8NiNKh#x=rt^oO|9_qEU(S3z@h^xK? z^1T=tzj(Mzx_aJ^8qo#So%=bXAKZ*LfQm3Y9_(`C`TL?r^)cKl(|34IKhP7HEFkL= zm6#cl{JX5J(Mwyxug=25zF fd%dldBaMYd 9nhBN8(K^060SPwZYxb}=N(Hc zzb(M!DE;qOL#^2cNGD3QYqTR&1~v5{7`1;6fuJ^o>`uL829=?Z=~s=pd`S5897HGt z@?n ?r+?sZL{ZXI_~TFK<)LEiW964HBRD7J!i*HlR2yZ|_dBWhz?>!DdUQe!qb^tbNw_ zd%vLDdpR3f7~}Xm &`tR0^%TF{CX?)C=^_=QBM&(r( O?LG3?2jJl(H4uJ;k4O<+4y{6xqtqy#}@+#CMv=<--h~41Cz_0KQJDiIJyG*3W zVZ32}H~xZ+O!8KR!Y)8CSx7o#%A2r<{8>_V*^yJr!%qL?plJ&DqlSW^R?SmkpyEhN z&>;0VPRz!%FH4!_V1HiGZRW~IX-35;|7Koc&QR%cfzF*hlufLK9hinT-edSB<^(xl za+>a{6TV^}Z#>s43p^;8Sp JZR)yct1(U!1KKZzTAD)I4?UGB2>{jOj-O2g* zFxalr`YfY6^hQuolWE9AlwW636#q#RVBfLEMW&@GXldewmvH3}70Ip>ayrvpFYsNb zO?%{KrDahDvi9*P@TL2sxE6FHt9Q~@`L2ym$@z%11^O|OrF7cZF5C&Wiz0=yPdc1> z_=&GaAblHlOM?izT3dqZPY#1~pP2WHP)33+@>}eB>4^#@w;-2{S(+uFuq{?;-n5Ue-Or^I8*?6^6F=K z1R-tckgile-baEHZwL5L }FKr^_+9Dy&xae13thy*4>$^aaYPsymaK zNvg (-;y%c%pcmOYM&ru&2H>9VLiKqm){l-0d{(JD9JgoLSv ze}s)6SVGL%b!BG~%&A j19#=1Kv=c|u25gXk zTD*NZttxA-8BNfZi-_`Os53Q>KVUfYgOE2?_LgiJ4ubbE_!duqgA8*Q=-Htt5@jD& zfC)2}(XY &`PC&fIrD_0|e-YQ*f7Dt$DzYP$c8xiU)1RKB?j;=nKmy5uy za!&j<=X+e5+svIc{Pk|91B=qSz4q!ykFVU2g}2bbSK|)<0Y8@kljfJ(u$##PI|m4A z3sG4Mk~Uu4c9IHdJKC@9LOCJ}YrCc85Qx!6c`)Sa(hdxHtNvN0%Y0ws Yk@*6+dx1CgyiQ4Q~I9Uh#F*zSCwY3O~0F=qj(N)CRH?Bix0K^f5PD4yv>$*=*# zwwn?Hb32(C!UndggM7_kIIAii7bUk4Rt8aSo#6AR$^erPa)swds&S058z{fHs#i;B zd;C>L>PhqgHZUj!hqRvR#ucOLG~d47^%bi0cI+DDgGA4xy*>zEkr0U+f}uGvCG=t@ z7U&lA08dEK1j-+eVlle>Fww<@!a2 !h(_&ogOE-!e=dMksM{r{NHF9MBj~vM z`RPjJ=4d*J7pw-7c08?sPpYewE&H(n6Tc^Q7fd3*O9{vt_Q`766rh&L4+qfND+2<9 z=4*d_4?Y0`ObPU!kP)#r*K{Q*-O9 VJee@L-8QqH`R+1zv$m1uMP}cCZ9@AnYOtvZm;FxHWv_&yD@`eS@$s)g zVg>OJ&IynTk2=xe<_%@K{$6xI!|X@WRM*{@Wwb4{&dF_r$ad%z$T$L*fzQ coli}a}5OF6I_ 8T?iAho*yyIZl<=dqRE30>#6RUdc;Xft4qQEh=%phEob*f&u0ay zD-w&N b2l6R7AQwLO>g%kTI6BFEIJDHFtpH{|{oo#msicolM`Wg=9 z*6@{!7S247pX|OwJ3_2q#l;3);Ogm$EvoO{qhy{7p$2D i$bQ)nVH44Y;_2_Qph1Hw~PL z(;87hQ@Y5nT0tB)nkS0`sv88dJI^g3I`vh`wz-}3&C@}nuFI%pG~&i8clTT)n0r$X z3bA_*u^TIt_CTE5)pzS=U2GrocJKbhF!y1{eeoBEj_9S&J(jt;#L*ZM9Wz&ap*2VI zscUPj=DKzlE>){Gw1PbHi=yDsud@maKIMA|1`K?D*3(o61+evSnPoj=&>2_l({{n6 zd`0w=>y4dApl^{QzMAzlzfG?hRT^-D@ELIGV-QAWXl~>%V;P^*W-0?)Rx(MZLmi2X zX=%^}%-7W%RcngIdu{vqS@SmW64nW|TIox?y3QGYb%pTaFT33B@YSVfN z<8d*ug+;gRFZ?aml zTz>w=6c_iwJ?I{5z@T>u6EX_7=YFSN(>$mqZ7|v@rVC|R^qM1)Ub?6jM3u-=^>Ypy zjBKyohuNH;_gN)^WU377AG`_7*`n9@hSwDE1fNqc@*AmG3?n7tnI&NAvC|Tcw@~g3 zQHfwRMx3BO(p^{yTYQ+^HuUgK!~47W=G(W!2H{pGdHqTuS}Mh9(CeL(%Ab&A jp zVEQYA+ixLFl_fh-J7U+kl(nfGG*0D`_1*XwC=+D)3+>-iX9KCIzWW`L4e0;P1pVMO zP 3tW;VNcSdBPM)(-WX#BQrDIq6kwrB!!y$z%vA$eD{0m}Hu_V>$~rW}UoQ zhj5dib=oV+NH IXi#HhDwz*UblgVPc!?ma=&XHY zJ0vJ7w>X4!Zt90vqL_M!<4o={O=6KU?B#SSx5-%hUegV+`W5zES(8BIw=#ZehUDqZ zrMCki%P2v`YfxgVZ_|u`!qH7lV)x%kOQ(p{p`$~>S-N*%E9+F#rGLY_dn9tOuc1#8 zjHH9X{JpO({lJiIV{T}MkD9{xO${3L`3HkVjbjej7uoK-(6Hu#u{4?vWZ23LRL@ru z<@zniNZn?F*+1LdQ!0TG^CI9kUbd=**!yy|^Q^j8a@tQ$JUIj>K7FL(I4w8J%44>{ zhEoFe-u2(HoA*>xW|*OxkbPCB_Vvj0`{WBBql2TAI ks4JjwLPs3 ze`T#nkL8i~tKmQ);G$6P3}g6I w;r5eUH7Ie65yfM7V(@*UyZ=0h+nlEY^s zXSJxy6-r|SZTEURCD2rK-wA_9Zpc7h1hXET`jlLZ9(0hj?7^Z$dOUugGxtDe$WESY zlQ>Iv)6-yfBxqO-Wv^CSGTX}}-X8obl^e7(S$sAKOxc>#km0LzNr)6h7(w>`G&oW( zO<(5Mr8)TQA5S%XJ^p@0z3q`c+eB2lG`qQUZj5eJ=tQ3896>%nvmq4 vW)y13n4xlGr^|*#;*PCaC`n-9f>~xjFC;?Ei2w3v(;EczYjKKfN>f_!IOc zvaDPAwcZ>R9mL+{VI5KfeWB4e@`(qd1!^+?a-O8>XQ%@<({KrQPw^_>*hs>fGb52d zF(Yr1+u?7vs)r)D!vGa=JS6G$0^N(B9~Eqf5m4hT5soBZozQA*c1ZJ?gXkOPH^)zz zz%9RNkPAO~!{ZNt;fwk*mUA)4zV8l@yw?Z;!f_^49Pvc6g$n166(YiuZj|c9!z6wI z4MO|0vn1$c*)W>5HIB#g!TM}O*x>}AHT?BvM-uX(b8%S8XdKDeH#B3xWk=~_05AOg zQV;za h%4sjX zYfzvnf)F)}td-eE+%#etLwC+Kn(w(8s#*t6{$YvMS~LOy49*8Z2AxEfBH;aS(`GNe z>mt!wSocr%zfs@uMRtl6*LF5IahpV-<$BSn*21;#90qj$bx{Ejig+?vm$;nyfIx>x z3|ffuRY0v~pOsX~vOK@43Wr#QmQ3!oW|!8DA>jASLrg48^19NoE^gA#ZSU`9O?ltz zgtXwqoRAFOQjCh>-XTW7*7qdnhfy?k@3$>M8PV#ixqj0Fxm>aJ^ta?;Bz+O?%z}=9 zp;VN{8wPysT`WXgN3y|&;@!c{OQ9lNml#bd(%274EKemA_q{D1j~Y;i^o)Bfj*7$= zj&;N$tf>tQKsvN=Y*VH;isHY*^HngySc)QX2T^vB(OO}|TR56IQga+A1{V*W*UHNU z-FxdEWVdmmNRkR(yxVjcJR~*a$5@$L?u#|j=2+J){WH0xm@l*$dMdl;I}p7X xw;JdtL?CG;`*(SE7k7s<3h_W9RJJexc0iWx$BF1U#cF6ZQk&&aVDVNc~{>$(9 zvMVTpZKQ0=`OK gCqhKXtI?f>?T;Tx(sLd`@rdHl9w0FuHa&1^ TzWIvdvmY^%+ zXlC1x$M>hrtF^yKWFZyK^K4QeB;YCgLqkuDAs5IM@twd5m;GX|^#HBRnJ@u IITD%U90V^E*X9a> g#$HgnRN ;gra|BFk(F#7w& z_g`7#K4AQ`UsimQm<^P;zNFG;3{Z=B-V%(2n{;2A^c5z`NPgKjJEqy11yyRYVwhC0 zu&>gul21S}>$5%`etq#7Q1l`dqXc`#2=Ow}2gS3dbha&bwCF>oHj=P16xE7y!9STG zVByCYoOe@kn8_Mi;e-c?*Cm5aqqw1odu(O4&&1R&DwB_M+8n#4oGL-24F@Cz+;l8= zk 5lM`wTZ6i-OW zI@He23Eg(Yd;6ci<8?QXA&p^3(hhl7E6Z QzI~8BkkAVTLjU^q zJsx26BF4t9irpmKn~>{aAf7P|ukBfKB_1omsv2QF4&Oz8m0a#R>!-Dk0^&Z@L4flI z3* wIKjyp^gS)cX=i_k+bb;LBabG;Rb{F$fE;J4`|}I5QYP{x#2t$H9}|h+ z!`y>Usq*lshFTQ5DkcDQA+kt^=^>P3>j4HXt*K9Ly2X>T{BGyHmXgy#jJVA>nHO#c zVcNY!JQ~*^&x!f72NMaB`u8b|sg&G~ichClrFg{qz@2URgu&hk1h?50IDU&(S$&g1 z%QbavOY9PB78S4r@0TfLXN8Rgx(y#=@d`FEK29ev#wL8o8EA^)72|b&BKZx(T270O zLs8wQ%%aj)Cs;gN7SZ;fQ*Ja47^s`ZI`X6pt_CvG*~d yEJty!TNrD+Fza#Jc>f=p3#}|LBQ(}_SA&gSw zOMV6I-HA^E*6Wc~jefQ`^4@ny)6ve~-ntZ{dOI%JirD^TL7?Wfch-sQL|>lH{S9C4 z*JKS?CgOaq = udcx|vbWa$;4}#{$%vQ#{MJ#rQ&`F)^P? zyiWc7e7{2rXp>fo>k;-4O)O(cA@XTqWbX21*G@&y=koWW``~wZJFkePqq!64J6NM4 z-;e(S@OEsHzbqf$YF3gtFvmewa>d<^ErMN=nDx-kt JRS+zj1K zbGQWrV1uvI#oh1yUEP_Y=fUEeyv~zYE!&Ogo+~e+^DQjJx-CG2wX9koq2YePkXv8G zgxjQhY O_(=M399F{(q*c|m!@LJ4gI;-wx1H4OHy6tw>0(-8U*NsTO#0VJgQ3!G;Nwr zlJRiu#myySE0Yh0Glwh4+Qe?j!oPuMHxk}BgNWi#hM;B_9t2v`fDDHJVFyk!TQ4K( zp%<41V94dAL5|k#UvEVq_M1&1V=x%Wy=*mKcYD;?XcgG^tt9^GL(kL4SSQ4*KRQ2V zeE3SBllr&^sww= Z^kto!Cm_^2@rWt!Dv-w(-mi zla|Dy)T^1}lVx0RjQQ{COU0XZs&chcNqi#)soVX(=F1k1FM@(EO0||OAv^U)-|LZu z$rhZORMij5YpxP)l#?_QbX}E(wyjcp=0qUsiujyHcLiu4H`1iVG*CZ|tPOfKZY}A- z_7HB@e0-q4Ld$sQt}L5i&;)+j0Y`Z(%p5Z+Yk6;&rc*mdy_cqwdSx34yv?h)z*HqH5+vp ze64yYKK$J09f4RZLw@M*o>1 Tf=;Dfg1G1Q^0*g~)so03K zz^fk8)}xDF+OxMe&vycB4*X8-IuHIXo7hF5W64&u%ibY%OL*Hy1piphz!;5+GT2Qg zHGCUpxf7mJxuIbG#r6@W`R&SGaZ5J;rc@CA>&m<6<>$-j6gTsf$Y~|YyNa2&Sgo8| zaMM#zIBdhxcQP`^yVmQo!kq)?kW=E>BiZ_CZyAM6h@*!cvfWEL`UM0zdWvH+-#w%l zv(r^3U+!~GZC1|!*EtkS$MZ2s-FMdLlEDRg%Etv=q*RGz1Ua|ss*JY(LTX(Of*bhX zCSJCFEtA-Kr`W0Am1L-b@E+rbo=zMx6q?Cb-+~z+!KmT(_P?$;T?4w8pbSKVk-hj5 z_p9dRU&>X8263F|Yd!?ef1YSJj=HV |dy}#GwB}tbWS%C9jMmW#LQ=KgKHE zzh6q7$z6ZI9zO~%S~yLEAn6#UzV44ruG3{RJw-jO8>%%6aoVt(mLB-(i*Q>&wU}JM zKC-ufp6{ bJIiAlT!W6YP!F!9Sz^I-u@w*wqqbs^7v>QlfrPMJ#f!F&p0vx(1ZB zv%}4O^d!E;U~*i7+$8eiSl5$Oi}hu$3=$9z;IjOW7ay(GmrX{Y#7ZY#%ykIyIF22l z?cIhVl}9ultw+7an0PusU{ns#7w~^+HVV6IL9ay)QoD}-esRW&ZpA*a$Sxi)L}@Td z{yB>tr?i_i?6RN1ZhhAnFPFQtVZ4!=KJ3@h4wh)+Zx(WC4!Ybo{bK5WK5Q3ecRMx# zj;woLXX2F6lmx4RZe}-9aW7lm%44nYcP}w$?4Y& BY8@TE?(M_6P#3WTP=Dm? z%4izj)2{QJV?rK-8rpmI$MvfWJy$?j{M&T)RhG{z4Ca`t!nmb`7{M6Y6)sut9UnMP zPT=)Wym-S;8cH@GAAr!XZWBu!mc(TzQO6xB`MCe$bux(`3gdxmP7uwXu$P@gA=u9< zoEGtvqG>VtxxjDOKUJe!hDnwp1ZyKuCJo&_4jB4NulFJncBETCE%gz3y$_C707^f1 z4JDnUQL>euU-1NR%@APh<^BZUkzIqyjxNWS(A^h1q^xz}?YrocciLgICi=VRh|nY! z-~kDG3VH!zQjX?3T%L$DDfBA<52(JAlM?y%_9seF7i(QlmR#716)ae1Lta*O)eVj& zHD=qC`YvK>f{Z&{rSq*mo1_T10%7i(qjySiHy_9MN?KHXNB;ty6aqQ^Xk1uyCne_e zt3+iW8NMV_RnuK|Bl`uXrzPgB-FjzH)ue zy LxSXE9x4+(HzMCDs0efTG6QUUTZu?rJp}$DgBq$^Siqn2hCUHOT2At3hFPJOc3$w&pSYSI?SE$oWq`$Id %tT3Y)SF?!V_ z>W~2@MgyRTagdDU!Po2GeZLTwuy< nap&3ARJWg}rbKWuUg(Mm?Z(N0;} zlcdBotx3#Ph3Zv%&1agnX^Q29pL~ckO9f}KW%-hRdUT0#fL(Y$+Y8Gc%FZ&wIXT_a zFt%=1b E;H+r&bppN-=uJ^CJkispH8ZOXAotpEcytOxD<4I`~3>a$3U%#KtFS` zI7n+B8(&m`6DhLih{XlHR)$XL6*Zxm(TRd8OZ~wKsZI8Leu; YidREw{%^MES^MoNEZHQGGuSlfxV2%D`%+{A4|4Da_wdWHaJr1dH1-nj-8V#st2 zPp=nHKeTtKRr{GxdGEsTbhX#gpKj0Xq+=I78vMyG|N8WO<_83YVy^++_-}x?$(8Tv zz3IlVgtShaB;1=4DLO#YgXo7(W@zyyh*pU-+ez~{(z!`B2jAmSJ=ReSEi5Qx?NJ|k z>6G+g*kCTybA-k3{A|Fe!K>AAXfF8m(#gjldM_4u2T6Ot@9et?5~M;=31-<)SjP^> zZ5~N_ay%;jZVn7-R%qb3BDsCQTS+He(F|%W4i1sP01(de1jeXca9!3DU+O{@QKLl? zE#DvXXNb1_8Zpq{0m_^f$eHF-)$Zubk-Hsi<<{Rh$}c`TjD%cdBNJQRBjr)Q>Ijj# z^jD?N5l}G!E~we!nhhCzB98&-mURCoL#=lr5r6t!D;U}Z$IH+HX&-4WA<4BPOyJfh za_9)(ly%JRCa<)-@62eDitngd{)@qclf3Flx1B+sUx}MmiYjs;L&F_o8K}o$0qh*m zW%KD+Ee8c2;7rw-4;EA@-;f2I;flA}ZFE*$cgyHZM?E`jvv97Q;ak&EC1C_ZCKgY5 z;>B^KAE1Z7@^{=B&F);ey|O)hoH%{aDQy6}M?UBGn`UnN?cMZv?HN8%reWkqE)F}_ zl@`Ch8Fnyho0;vEh7ybH4KEHD5}tbg3WB=Y1~!%`Vh{cmz`%Em_j~I<$ac%Vj0b0X z!%G+bji&oNM^W{|;Wl0DdrMgLVN%7j&!uL-GplrORZ5@BP)f2F-#=$!p%k!fMlPX6 z0HCeBaIicJdFpbj&}QYYHAa=`vTE+%dZX|1l=lL{D^tJ#1UCb~K&ypC`ujdF+91FC zbrjtzyr-{h;SRC^0-ATGSb$e(fOvi{>a)tK+YCkUYU;xFv(?PE7mp4uG`49XzcUwL zvjB64u=9J3hds%3l?5Z=@x20+f e zoE_iB-ah%Qev}q9Nb@Uq$d8Ow|FwI?RAy2^Rq-A01DQ{q%d7&Jn8m=fK&dys?o`i zwR9S{5V&6ROvlzU?45eiWJMKdys^cx%Jy3qbgGrPVRq%0+Ak*XqfZ0E7pmzi|A{;N zZUgQ!aI#gOyWNvP8Xh2nGouuZ+%FngaOERA)mf9*(@@ZS5eR}fFa28#R(g-c1S4yq z*}=$Um^Mi47Qr(2$Xw)NrCVC)o=YgSI$iW!Iwi4m?*4}o%7ui4TRNjn$?6GdU*ts= z*xLDKHcX2|GLz|Ij69gvrY39S@YpMNVq^jeVvGQOv@z+}a9dyV 1DP$_1sMk z+7CJTCF4y&o;jRL4QLbgAFuuZGj<3EcT$JKd0ajQfxibQlzWnu>UWvgs4FjBftqA% zg}&M&-so(kD%M08hkVt@ty%k%1@5|ZYJQEJh`-CU)mpIi(UlAL8NEs6>)ZZlRjKdV zB?vRhzRy2~+!d4 W}1L RforJuJVcUCu{vavYiW^FTNn<3GeOMwYt=Bg^{^RKI=7urP7G7@DD=-OYz*gNc zfg6Xa)5x0nZjXqdehvX`zq6CwR(3Z)XQ+Qep6XWyb2}o2soyEs)DB#U;VHgQ|3OIl zl!Q5Ffyi~b@ gor)MSspO~ci6>>vA7sAIsd#tm+CjQ@63;om=}h_ zEi@3IL;O}zigFR256QZ-`2mMbSa7~pX0XT(TC6b0*#-7ZdXhRHvPGS(ZlXtqsF>`& zadOHjGXFR?-+d2dG{F0)xk2zadY3F1bxN4wwR>})+_*)^tNU(xccf9tsZ=509@$Wu z)4NE_{?)uzWYB_HGa^QRH$0Nx&!jH@Qgv6CieSiBnSG7W!zhN3w)e~dN9_?2YHTkb zhL)T(M6- QTVI2Mx&u|g{#3OyHFelm Tl|eSfgwL&X h{m&E%MT2G>vElb=4a6 ziN}E03x+q3J!h_YXZ0{7x9$u2=k#ZgAg+IT!+bsW+kA73>;YbEGZ_SP;p?{>c)U9L zfUr&e9+46y0YcyU@aB=Ihr;bWrYa~M4H=2Mn?X>d_|#G7vCKguOvd9-*^d`pKiDm0 z>UCHeWndm+BaZ&!6@~oWhz7EOLP5%2QV ZiuCg`adxQrcaytFq;OkZE7E_k)*g5*xU1 zaVF6ZD%dypU|%uCCyzYvC#3ciT WmSQw41u|w=Lq{KYP;UW`-R#SZn=MPzxuWx pJv&*kFC+GOro-CN#4~rvj}X9Qy=G*fD+@pp&5`*14%j|98wDyH z#?4hx6C-+LJMLE@zslvRgB -IW$d+}CY&rJcdmQUnXP@8c{ri0XIsZGy (0_Z|8&wM7bH&FWUJg1p@jB!n?&JERq&T zY5vDMAfocr879s&X9)eWVDSt?`YTTw`$E7}v@$}vZ%*fdN!XK$e;@FF|0ER^(6yYG zSy5hH8ZIq+d+@&%r0GgR6CBq>h6eW5;_vfTevtxD)a1ZBRMNy$R6N;-9iaZNwjX5+ zxe5qG^8GSsmpF|p$k ?C$J26|t2zAuqixw@3R=MwfI~ys?rL5+>WpghuGfx;|0R tow^PChiuP)Jg8pk5E*vWKbAlY3JeVyRiIFc!|T<= zR`1`5GA-s_eJ=Id%}#!Tlwo3|2Ft!PRa-Yn`di=cKDYHrF!rVLPxE@0Y4UFnfjfl5 z3L~ri1aBMek%mf9gy%*-bMuj=1lQJ@j>qHQHdH5V9M&>^ Gb)30-H?_#;;|aTvIz7%}GpZ;1|fh-o+^AU-=9UXWz#Ndc25N>NbY z`B7axXUaM8kl S9fya(VBCCu>+%1P1O4dzv#824FKa4jNc6xuoXJMJZ8ZK(9=KarR-!f2 z5E`OxU20*mIU{LsFw7MEs7JrIfc91DHf<~|T|aNOP Loz4!py?J4 @k!nOUwL#%41Pon4YSV_ZT!mG+59bNTqP!Q7@8 zytxZz)NM>hmRS+`tJAIXY>HL!OFf6h!i~D8J0zngZwi+$6*vURio?&nN=ekL^WY39 z5%V0@8I0SPMK 09AHH?gg 5knu zl(E}(1|J~v&aw<}^aV2|N$o*pOB=TJH99Tj*DrJE@^%-vW)S95l%pf}q$SG!a*vTJ zno%Bu^}yy|)-PMIpI4mz)-RB{tJVMMkHse%Fz8-}VsJv8UPJLty Nm8WHa>$bPg7 znWbuT94DQP!Ma^q2sz@nytY42CeA+p^f!{hIXhK1dw+Q5ru&VgesKc$sJ%CmIIIwZ z1*^EBR{k<9(mnr@94flM5`I~nQ0z^{ss6;bBab>+xh0yA9wnl*)F1xp|8{;Z$fXw* z3MM{I tpz0Pq{P3^Kmxq6x7uI{>)Y(1CmRnFE?*Ft>uecp|l zVU%@~WFR`#mTG#@FC{ag)~7;z--$CIhG#;D gU&p$~Vzfsb^ zH%P<{l=ec97xapCk(FdpHGtBIjK7J1_#D1 Kf8lN6xRnxK ze%{R<``S9~n`2{9bU)SL%-_;WeU;IMx zu(BZ71 tpAwL=yT){e|TG?d?cy*L_R@@=+XVMdNVf?nf~x#vFtddf=U~4e3s~n;{@w# zbrLt4%TSJrJ=k=;U00|E)XLN?<@#zg-eKTHt6P=y-)iNztq7hmVxd69_(s4(FP!Ta zQVV(&@yWP!H!$G$YH*z41zbTFhd%swh2c(m^c)e11dOBN>AxZ5*U 7{C4&8uTFB)#)hgtdC3&^IiadxW58Ygyaz!1 #2AaTHyyZ~^%+P2 z%M5Imbb=GkJ8>+&OK!^_=>LdajxIU8cXRz}04x8HXJ?|GvV7nP_Y#-Y^pVXvhs(;a z8fy%?xbUSJ=}`H2{3ym1^zg`Txh7DSG7jpt&0kVFE%^oMN*E)?DdBsMdh_B~fO~p< z^;5BDK8Lu2l`9jO(_p93*(GUsQ6}<_Td*cS_)5FP;>2ua>sqX0xbtufUz}?BL h;sf2@Pg)(txcfGtYR8}&Y1i-Z8&y~TaKh}w&vyjgy4Gm#Ao zM>zVRSJRN-aJxjSE5otyVTsX40CbxhMKD{R+wBa>&%sBbhkNfNI$Un;Y4%|^Wn1Nu zKkAO$$5?+H;8>Nu3PeoAJCBj# U zP2NFuBG{D)lTW4P&Ch}fzE>$ dn*pf?d`I`!9q#$Ta6Tc9J;VI zPLFfs;br$isvWT2&xRT}haV`T*zm0B)?iS-&-il LQFYon?lp-@~V3S7rV((X6 zjnG6d{a+V=&4vetXdcS>CK03Im1dW%&SEWC$N{~E8di&jbfHad#szu&)XK_%Vm4AH zAcyZ?ri$PMNepMlpO}G6q|JrHSl>Oj_SQIMB3H`D6#5dOpB!Dn?o8XpeL)>ti-Cjq zH%QAkJ=P`sr0hBl@wnFKu<6jPVUtRzjscU!nSo21?d3_ZmB2r?7W>Q!)@8iOp%(!^ z_|@sE7c^{=G)gKyRF-c(9VHdH$-|YArL06V-DHyQwzBL|hcKZ&S!y5ZV7pms>Ah%5 zJbD*)?swe9*?I1o2&|aIx20yBlT5~CqbrfFcqTZuPcN9=s}wSEU4;}A@sNZ#{ZL6L z4u{VAL|AvBlHbv{+9}jLfu&5mwR-#}&_7Fqp7;H*HXx&bWCL4IGuXPcE=d9xY$4*H zs66W!(Dt*A9>f^LPm*XJpmzbilG0g&uM;~fu}d-2vqT(0(awD&vm2H~U!t?K;XbI& zp&l+iM$pR|RwC_l+Cti4STq1knw6UT7jBURy)EL=@{=L^eK`CVjsHx6(=DK2`w4j< ze-(LL{m~(}0$%4#P`}IW?ZiE8Rlz%l4SWsCr_B3MxfWm6Rq@D~(#d_Ff#K`@Z_>9} zk13YZSe-*s`iBemHR&IjPzr~7-{`m2#Mm5VYVa9zCB)IT4Tg~)GY5R$Yz>^tuZ~zR zJ;)YYy$yVN0N`x966v$# &pJ 7TSsj@9BVZ$$)Z{B(N2&+-y*zFQ@=Yq^qQC!Wd>_7>zg#_};3&8Ahr>(Dw3b9i zS!1`Ww* UBz{&yC4)%hL17=I=v#PhH8=nxOM=3O%Wq{}ov-Uqi|9}`l} z`Pk81!UcHka}$mYV}ypAZNl#Rg$b0kUTFf$3a4{wmI_1prI;X?ev^pO4Yg_mbR3A~ zOYqaD7!ymc+Q0+R=i!pV5OfFUlL?H<#t2sB_CAWs{V)O{a=2Ppp_^p&hnxl?{WLqv ziR6tm9vTp=>9N}Sp-a^zxYD@NHJOZ>_! TWYkM+6iZ@#EXFQlX}XYm2uy~z6*Ms zwEpXg$@V*IUm27or#ZzWDA(^+B3KTqGTgxkK9a)Oivbox3dmB1oqip?Q}BY<)U_+u zbR86}7Mr=O-|%b}mu>8wCcYrH(*t E8Zd2eb4-^ieBwSFAVC4p-(a9s0yTKg{ zJsR@ad(2Zy*^~L7jAb9Bih5TOC~{cGweo44g;o1$frGK+$WTM5U~8Afd2)qQUq$S7 z=@Sy8l!VM7wTbR~5t}vB6Y^1T-(|l@BjU-<9Av^bo40xtwK1qDYkx4U*+mB2xRLOJ z^Zc{a(r;DFRr`4+5j?&ej66qK$5l36{pzT(r3C1r9i$`CXdnpYR}8+W9hxQ;p6sz)^IdMeGY?b5j8nq;RBAk5sruCS8ai{tPHafS|bbyWGygmcAD`?S#! zvHiGsn-FsLWa~LK^`CH20kBKgYrBb-lXJz0dZ&uU_V>Z)_OT@Zae+a2d(o)zQubY+ z=_hqBsU`sd8MB-O;aA$X&{7)EmlR_I&r|NuMf8Q=7Yen6ZCyU1?CS9@q D$K1j02por2%^M{7RO|G~da$o9Sr^C1e)m#Z^z(wtXB zS+-3>7pf7L8 V4%j6=T&;6$>kasNR*iImPMcP!AlC=eDO Vk@Mehc26?)rOx6~FCmyyVxDDFs?-c3Hp{zwAx{ z+I)bVOwkFoZHY?2Ri%5fPjjF3Q%nb|DE`O;zK=Wf9lUe)GI-PFU@#V$Nt69OZVwQ2 z`rKzRvS!TyUZ45x4PYHk66lDf)gMkA9}-;Km< zacP?y?fFg*IE%78c8^9LfE04<=M?&!B#=!J4#X**^5IA3&q7Y?_X>8-=cFPYz$E?* zRL~>=o3w#`&!C-qC8cK_g%o@9z~t$_mSCDvsh@H)8qVrV6wyomdu8qCl!Rn0ocol6 zX>-O35VYMh_V5L} ~54@B%B*KF*Z#7)AZnGAwlFpG}gK%{9Fhs3{`xPRErljr0Djzb{6 zy%-EF6(1EsCH -u@!s2P0RKrAvQqy||t&W(6 z?F^{|>L0P~^ybi)SKMSNEH_kK+IXbiI>|7-Ox}I+a_ez04Q*-ye3QLv|Jq$ 9o<3ta@Taa;96Q3MMZnk;$QgdybB)Xy^#a;uzsk246K<1` zaats-o*Fp}X|!}(p{2?{6~ 3W&m_oxVKFZcYm~>v3b_ z{q>gTUam%#qaALkZDr_GlS-02X>R7S^KscQ6n=pOTX=UBbRHZ|+xo890hwT!Q)$Zk zV?K%^H64TthQKR&zfQ*V6oY*6O_w!u_V(+Rbeq&GuC~2zQ&Dn!A9U1CugX_bAB-93 zL|qd#Hg0=hsb( esNs$4~RVbpJuDzn@MTvm;VYWJTsXo-tt<>j=7i9(S9xYs| zTw#r1KVNOTXwd^o2EPrWNod;ov@$Siw-I&CfLETeGhTyFit6VM?1VO>^|W7$%A@?7 zIG@qN_i6rs5p~B;^$hEsq)Tb>JLR=L%uNT)=BGVfxqZBI>_Q3h``JpOZC*})bO*S< zFD%i;mS@!LrLyAI;=}YB0``?lT$f=Bm_E)c=edl)n~Nul1c7;a#m?h2ZCOW?W6-QI ze)S7N)X{3c)gHYm3%}8YY `RQlER885g>xwKOC_HTIS zm>$W^p!K}GwsWYd)lw RJ+|J53^H!mL)bW6!t|8bpAug^5_zL;%xZ}F)58(Ee_M(?FMZmEJ_TH}; z?b*ixsN0|RtP1DlH>Ozew_Wk fsY z46w-icv(!%@}2W;Sr)nFpsM=rjLk%PEr=liY?>n<7DmeS9Flhrvhb5v-Fs@HwP?~m z6mT$?^57-SvNYlFZI{E6-O^Ix3xA@v|2_HV>72fZ%Xj(UG_x8jI+r@DZMve+r97(6 z>&=hFt=?VvPOCfCcHUcIg-+`bC9v|7{v_)1{9Qq}vAroGYzBt-z1p8`TI=lUEwns+ zpxiZZ-6 a;~Vs{(FH@p88QXKyCRbkNGjBUTlp}Jb3GIGY`SA1~xI{jRV8T523 zE~o$u#bJwL!^y$w|AnR@(2afpJG!{2<^fLwXB^gc=DupYk`l5qLRA5LG5;w%JO+D| z*QVvILf;^M>+Up_f)?NMT3~i&tL!h@;o>WILMn2lc#1@{Zw>!)Nb{`uE9 {vok8iI_n!pR)TQWF6R4_A)PhS?OpBx#$G{EL1UvMPzWB{PK(iyuE5(Em7nKKX zpd==YC)G6&C{XJ-UXy|o`8jXrPZwPVi_HiWGf>YGP%$5n4_@9DrpbOeWsRPltze*7 zknRY<@AQq={s5Bpmo7iH;{Q>&OIn7u=!FbHqYEkUIK&AvUDnUW8+6O%O*AE!g?RFz zvm_3xj}-SVAw2#{lT1~=iFEIi9%LLH>VBn(1~XkO_&_4Vzi3|oZ$U$f5`22^g_B(a z?_CBrx=ZiHXG@`teMCFi6U=D*^fWyWx^*R^dWhi$_l}PxWpuFp1nFwjLG#{F)$u}m zqRitvgRl7RH%yWmtuByywE6g)eCEpP3y<(qeYMpre?8K2MB)*RTO+BJ{!@MHzR#0$ zS2Z27)WP3bRQ}>AMPKMvJaaaK?_>Mucce#6@0raW;TF-Q6fODLf=Tu$h8|vE+u2S7 zoFJp>k7TpmT>T;u&ph=6G>+6&J_ tv@{eS&iPJA?){uw@XTiV>CSLwEfn%pWFxDnfzJo+%L&0l74b=jdc!6xlC@& zT+@Z;ad(puL?tGvUd@O<5<{YE->Db2UNlJOIQBI)P{NqQZfM8Z@D3@R*e1H&WLbEQ zy^HTb>A6rm?s#%EMbqm<`PBPs2NbvOt*?n?Sd0Y>i88{O9d}y`_gar=Tdp?n-=Ag} zjD7VE12ozc6uQK(^3-txfNZ-Hjp+0DOY8&cywJ^00Jm_+_)OKUJZ3V(y-9Jlk3}{+ ztHuAaO&|Yscct~fsvFDKv!1xkU~tZi^&IOj;xV@wdlB5E_FbkBe< `#n4B|K12Q51a z4End~Y5^BvK>nohr OeE zWZ2??3GW2S@z8i%eCLS`r@SX61Ed{@dUN^s6xf6}*q9}XfQk2u!pc_EDPQ>&P7>F} zH=vqJSvg*cnT}R`^+^TzNuqO5c@w^jn>6OV*80yJ0YJT8levoW|LZ>4`<+t(PGx>e zro+ii8s35VMZT6fwitr^KmZm??$Ln6oo!|O`V(=@R?*w30(#(Qtw2@Bn4Q*Cwx>6N zXVWxX@6SDvaJHBXO}Evj6rkhktq~41pXxX_(s4@+S@Zj_EVLLxEiayU;yR9a8LaE7 z3v#c-d %Zt4!aotT>91tS7=0;CZ0_KjG zl8)-b7XTO7zw;3^pbss6SXNfASC=Y2+SW3@xJ0QwRdVnb(kPGSIn&T!<}CmHs*o6B zr>7pcDNl(`=`IJ=D6OD5XiA7z+&kf%Tt1sHf@zKIx4(Cczj36}Cf3GWG&jpM(q}hkW7$(m@)~Sob2sgHhq0#PrvzV5hSb{CVi-W~C68 z<@BuBPh%v{MnnAjkFd6&1^;lT&tSxbi%*E1K||uu^wBpP(g{LY*88y`UzV`I?8UBD z1rt5VJk%j9)Y?wE@fP$9@UF;(LEU3&0m3m{ZH`{J)34qZtKP$B^*QsLn99d)-ps%(y9w6Ne1}Pb9P_%Z=>tRB@y&ppje}hk06J=*vpsPgdJ! z7_7pK+PUP3tvM+`BvME|xE3AxsdC~IvVkDuU3g&Sz0hPi^{^>{0pf{w?~xf5gT*BV zA1$-eL7n{SRev Zh$+fYjg4S?=46xU)E@P_};4x+XFVuEQT{LmUZW zw4#&qCvb*J1Rj1fU;XZ9s}oIV5U1aRR(X5j1jD>cTo@bg*gIX}t;k<&R_V60xsV-X z$8R<+^zDO&wFEW{Ju^xOrNlz}4eD8t8;N>#Mc(5ZUgq&Y?RPa75&t#eo@-!-jT8Pp z*6S3CbE(eMmxg{H?NOCuro|QaOv=oz3E|ayI%nJUs2
#p{V4v~C?R^k%HVt~@V&5p=g(jrO=m+G2SAv`^FGl<{;>;mJzsY^x^h7+n;s zgTGD5U;3@Wf)5aOw!M(gNiV+?8#DxZ9w3*caTAW)rp`;!sUJ!xA&wEJW?| 3bxn6EQ+lp#P5{=mJrRv-{uQP}1wl104D0(~F=}Gs%0Y)ln5p)jw zi#>^00_ &i96fvVGIi^U%80w z(Bd|R%aMPb+gx1G rb(Fd fQwjb32rPi2sT^59q-d!x}x%)Lk)I z1*9brnL}aH$A#|{bAe8-wG_YkRd#_32~8WDHW7l*R_O2}fc|uBC{=cP9k^+p;}wnM zER;m(GRY{=IyJTb8HW}TqVV#0ahHkW@g=6*JI+6VDI$q%bsfK|q^%!i`J(#J4bzR} zr?SkpplzUiv>QiA%2Bh1l3)ARphxwt9rf>5EW}tpUpOI4Hg9Ir>EE4u2Cx(Wq)rNd zXQLO}^nQzc8*$#C7|6!0>+Pg9Z%K9Jvk+r>I1=ja;uApKOGRfGH91_X7;i}&x(olo zaKqy_R*b@(>2YXoApyqKXd?PeB9fJf&wm^6*x|rR$2{CQ^z!wn+Oo`2a orB0KE>5 *d43de!xo|l3LDWMb*-*f3Ir~w63&Z<)-Hq^MG0UyS4`%aZh7uq39p3 zy~3}x2H`ms_s7G-zWQ&Iov+}RL^Gi|*#Tj4mr~%|I$#Oig(ib=Wu%X{300G`34}xs z^YtmVsOI~`wfT)A<&*h+IOZ7Uy-VDBo_yjuTcEs!K3oHCrTs65%0)}SK&JlgXUxFJ z09DiPCBTm8e~APuoxv=Pqr_HXf-~1$a_l_LPdp3!Dj`k@`{TntGs0D0C;?`!9j(o} zf}v=5iE?9Y?n$Rj_?}%A{hOJKukCi3&XKv1K-yi&qG7JtYVM11PyXg*U3Mnhzq#xw zJ2#b_BIBN=vOb2~Q*rc)tmIX!3O93M7l`Q;`^GB#$CNl5aLA_O&oIg)@u%GMZVBFt zP3`;iZ?!*-t*Wm!KHl^>zP%_No7zN+VzYVuEfA!C!@b#<^doP2Cdj(CSwqn(uRNr{ z@@g)%W#JiIW1reL;=q2QMa4b2WtyCgHYJ^`#76)sne(b}42p*hW3in#>@td3HHZw_ zd8h2hec+1v o{Y_^ddtsDfGlzUAsz)Vb{NbT%@Ci5NXmj>L%5*X6#CVaT z`@=8p#o~(T{gJbBHiB_}Uf+X194~mB655q#ET?kd$R(T0`{qX(sxlca!CK9Mf zMqRFJ`B0q|3-2*q>z^y6>rX bX#ggRq FXQ2-Gd+GaYu%F#m6smx>909^1KR4;%_bsJ~+f&iznJOn{luKdl{Ixks z4Hb2pLy<~QrBT2VO^B=7+gD{7YAauX2|qG(jLnq&+#3}-u&Gc!^Y3+*wK^}2R=}$p z#dC42M=8p^uC`8Fx-M3mZ!UdLsxI(sMRV0_fQsQIsS~6ztT3q(ajZk%(iZbtIiXzH z#M05_Z@Q(c2&Rl=>|*hEb1mWY%q(v}FMY7iyq@HXFWUMie}50oBDWI<@SI`ncD7v0 zp>-P=GB^r=`WnHYzN+=b2ypc#o0!p*|AdvaYuy4CTT}s^U4rh&6EJIRXXy_~LkI*j zlym_Fi$Pi~$SsQ%zz3yz6b0J+6pw^xIU;-FD&+m|G5k>6WarbJk3SSCM%^<1mDr(s zrJiiF Pu}dx|6)$$ed>EO2^ FvFzgCjntFxqdk%E;tAeH_YQX1>7EAg0o&Qzj9T z>6$3cDSW|(IRz@Z`i%Ez9&60aeJh$bC_A?Asq_8<_q_1=!J`$U=6I!U!z>6rz6Oq3 zqqv>G5%T!ltmSG4eAatQ!fWcid9};aFOd{hS?Stag8a8wK J>?sK&q8AW zG(M@E3$u3R?v2e{GvVn!AGij#L>85I$WgC}fx-tgn~ru!fmcm+DU)Tc6hkx;@lMNQ zz<}Az@gvynr5A-s>rF3$H!5rJ`HzBeQ uCjwB!b$ad-I0kWZ$5(Z3WK z?1q=7x7Hal^i52^x*L{>%6An7eFO7g+I|IM7CTK`2+yXMX6gFYhshE;#jP#TghZ6G ztX_!@{xVeH>X7+WttNtF%sg8Rafa0E8pH~C*=nO+>9!Hmb?Cb4v_=h3UdwwVIa_I| z%2o?)r(kogD4rPpO%B`f2PSdaItQRrk>o=`ae~iGZD8d=ChE;IoPg8^=P}(qc&eIN z!?%|_9n+MJh43YPEz01jd%jrh`H+X!wXR8ANW|3miwcjXnrxPv?X>(p4ifhW$4 zV(0iC>}v!OK3HP0wccffp51{)Aem;9&F%s=2+Xim^{dk*SF}XGwM!)rl9c?=g93 zJM%;?aW}apb2ho=4RgTa!e6MoI=U*@h#2OxNV`j^Sv&W@+cfcZPVbh%R%D=MwIdH3 z@(9-e+U Z9 zef;E*lIr*9b=FS3DaVL67(?Iw$V8o0>KIlfw8~M_(MQGzutCO{Day6^_{oQmDRnId zVUIBHa6RvgF9=%ByPx)+1G0)qF|zY=78fayOMXZmB~`_-lqwP&zpg=*2H+!ND@Y0; z$?M7Qj}9j5_d4xi`T+o@06aMz d2=^uz` zfOqdGn9$Gca%>TL(E5Cqbrs$kD7&*iuFUVIMZk~xm@3+byekcI9*s=XvNZMPleTCn zcEdkXsGw~w25Qo$veaxhKb;^Hp}t4$xHare%3OGbq}Z?9&oxNW3~`BK(!o~DtFfTl z*MU3b6$}lF&Qk*5n=({Ut=+MKluPF?s-@8zoZN{=d?iuf4XrPp*KoLowX3=+sODQw zzvzYk{`wa^E$FOkPRWDH(Fw6q**jm0wR0#EeRcivm=AhEZD}-B&W^`+PMkON6p0FI zqBx!eO|wJpuyJI#$>eiE9gGgnpi=I?1wVf!_AL`dnX7t?#FsZ0R*@)~3c!wr?XxB+vZbX8;)sX_2t9`t>vVSW3w0> zJ6vMSlK97$<5vvZoW9VEtEntv4CGd`NisbL;6gez`C-H08+4*-@il-?>$C&B^$R(_ znRZPbev;JxLV$9M&9e_Qiz^>=`_#Q^8c+@zIzdhLEzJ^(Xsg#X2=-Ru`zUFN`YKWr zVMBIBAst3)B$uI>*rlertul;m0e-5MOp=TK$&ry0;ht~}4dvJ=2mvFi*fl-^gUdWV zOY+veT|e}zFbyC4WsY28OlEM%4C=9@sIwo@vd+mAIUUP2hfpSUbleFSh+HXZ#89e) zI4rYf|9m5HcJS=OyU(#IG*q>l;a^?GBUV-~UJkmCv%`9alSAaF*^zh|No$rY@_M-i z>Br{lO`fHJa#spF6kRw4TF;E5Jpa1PnWEN0-;(M=ylniJf=KF$prz|MR1z=lvftc$ zxe!rYW{W|5(-*qi9_tKx5s6Q~wuYTW1U@lgq-vR#CeEax;$DhV7~c|qzu4aNEM(?y zr` S0;z~Ggxslib`IRMvL}>6qg3ppy%4i2o#!3ipmJD^l>c{2q z(s^ri(k^c l;#=<-_^+(A~gk#HbfLF$|EAUI7S=*BJ zg^t;te3&}=qNn>z60o!$>X5JYI;HgLUh36bE$eIIM*)ujcWK&Y9g6C^b=P`R5Pa_I zfXmatcXsE!QoNlGOL*r*AjWf&oIWB(3_0v(n6)?o_NYHA*N=*rFjavV)XKo@n`a#$ z{D5~QxAKQG(a4eD?UJux%y6Oi1V=fA;-cr_EXC|fr^cO%VJ$9C!JeH&6N_^AYjjh? zjYF%q5$-WL`@G!)>UOx{tfMzU(TVRrd#6IYCX5@SSW=WHJZ5;YoRE3RW<08tTG4HW z^3cN2f3V{(kY!o-{?lGYiZ1Rf dwsOm_c6c%rLRsQ_^@nTX|!@6s~8*Wc~!iva YiOx4 ?0sQKiE56*=2uO_1F zl6A(0{lKxYXRc)bKcY(yOK%r=CrH309n*q V**V%Wm_*3KCwa_E zG9C9Cef?vLi4$8(4s-cie%E)2cC5ImN+R_%ak9Qun(PGHqy`-P-nuR$PN6+ZbNn1m z!A%M1yH4H|)myRqRDn8hXHl^-h}D G1tY5KNd1#8`jB#U2I+k*@tT*1HBaF-jf8j4hij$KJB6mkAAmJ4a61m zTE=!8XxBB9OJS`Ko?e<#!M{CyLZq2y8IE_8PN$)pbd#Ygb73#$+5uZVRYGmoM?65_ zUq(fv8%kNH4v6=O_J*IF-R)^rv}mx?pIUDLJAq*#!}r=JzlgAyQ}rg;G(T)sn(RA6 zyZRVcS7&m~Z8~C72ChR*oG2T7OWT^szCXxU?ZP%lhy!3dB@?-@E1ZdDOWw{)p`5lA ztj9>kARI9Aq%c3@D0nUEB(~YOl<5aur$_1^Fi=7D!YPbnWE!~Be4-R=NcZBm8IZme zWgG)3py_eo<`1O+KB#;UNTwa@9THWDur3Kw;7)v#-3sQX)vY&Ni8L824w>^QWyBfT z!bcqz=)i7wIv(N87Ue8KKBf>WTV?8C4t6`U*85Q~OlZ@59;xMT&n@BBdsz Y+%5rLcL^rNuUA_#;IA|D(9W2;RCm@E7*5bgyt0sSNpy$D~B!%;l z=YWuj0a{0T*#TFdiNr6g+M6VMnAPk1BvGTQkupkT9h(EQKk!B2P7mPmM%Q#%eXwb* z_yevTEP5@DJ1ZC);g0j0VSbgFqE-e8GHROhdo(t?%QzKe-LTTlotx#iRC1mgfa@q| zefX#xM+3rd^j nWkao&^sw~_>mQQ;+>M-_CxkKGVET!SN^JB&fZi=XL;dvoE(N!7<_ z)2(=!p_9M`7*q>mG<$!5+ 0pM8Hq)v?-hlfopW-RvK0!z`kb583 &1FEsg^byvAHPPcP9+-3F`L*!zgH-)ZxXhcZ|T3khyORiNLY zNgeDIg-d}a;)x5NYS3a`&xySnx=f&LXuM6plIXH@!aB#ZP_P|zqaejr_SJ#W ;Veb;;1Kzu-AfD6H_Iik|hp!}FX7kuu@+*?um)}S- zjJP;}!zlV-OpxXkx(}}x%PyIFbFu?&d=1Q-*IJ1F 9O>=hU8j?;=<%A;q z<13RB;%Z9;Hl@T_%tCGiOy^T0h&l+kvm$-BNrhi97PNcUD;fU+WkSmF))oy`5K)UC z4xXivT%?-v5fSPw$NCC6hkqLX2-&B QBv||U*qSvPf5m~W*s`ucb5Wa6z bb>ju~Ey6=eE7z%) z@}G_vgfRU#TPU7pXZ?Jq1)4Pp45hlQ%FCm^&1-4$Mc<~(X7B;=%=LBA+$q(oiv{C| zV?FRT?Gy6%*A%*H+EQ3JP?(OQXZXbLQ{&-fL?LXTBf( zkug1R$RUT>7L1EN4WDm2zt-3<*IQ?d?fHg;Jl55<9rjN_i+-u&T r5xT6W^n3! zZFV@Rhi0U<>UeF&!`^wDqF>KZHn7n1%qEU&PG}vB@9oUvl-_4qy*2t_F~s{DajdeW zn#I<+E9x4mRQUB4_XEWt$kf1X{N><%Mh=`Yqf^sOlsQSzXO$ZJ<$HR+oa~uo4Jd@P zzzaxjmW%Q;{SNqnKaLCj$=a)+#2QYqI&S&f;| ~?h($qgAXSHOX0a~t7C-ovxrs@Qr~->er!~9 zAMHa#H;ki0`w3|+>1W+7+AapsS{ZX2w)6 +(`CP3 z>liiStF$6ISuS8U^(e}ZmjXWGFEQR49`-jQ?oe?FhqSY!1Ovl%b@rfGha#3Zs0rZ3 z<9MgQfZM@zbwA9{NEKuq?F4kp@O(&DGhn7*wkz-ti3b}&coUXLIgu4u!e)ANp_l$K zF~b`&cJC7JM>Uj|-9`rul}bLI 7f)4}jM}k;~92p1b$@lJ_TmGrlWb>UIf!mj*n=U&wqHuQBv( zm{nYgT7R@dziPHeA1PuYRL0j4bpZN&QT+Kgph&dtcY^V{RiIK8NtaM-c@$0yVdwJp z $*^{WtJz!zgUpEvjB z F{x@_Bnmr=b)~k( zTQ`rpDRzkqK4l5M2`rqQwZqI1o$yjI&ihTgtMBLCd$0veH#%5ZQK8{t!qN|Vek+zu zUz{x82jGBxBORsu$Z%4A;5C57!j%+P_0>OhG0!n2vld^rfSq9eE~O?isXzlcvm93e zLoUCaOU?(Gi$Tq8KzcCTIjvOx#2;;w8a)OVyH%i>uk#Y+5vRt-eV6a28@y}V(YJcE zie=E|PQj<>RlYetr=C`TEz~uZP3CSwGXjEIH;=EWfWDg_mXV|cQZO@cGh;r+;f}|W zNva)I_dW2YFi{tTs_8dUDLR}9!t`^%H2r3U{q?yMKi@~+ zJ&b=GE-?#Rxk5m=9aY}z2E_J(S`}oR5qy9(*J!vD>6gzRyrWO3JBjTAf>|g;aQJ;j z2)UEqJpDs3SrlkaZa%@q>1HbQL5?iDa?~Q8O^g-{s7Qs%yf9$uWS87TU@$r0vrvaI z)<+*Dt5`KwZ-$95XeVgAPg+YY&(H85qd25Y%ICXet>|K@lTo0 q4#y!m(E)40NgK)F9J@p^Dt zYQG;krsq1D{LOLlVe-t@J4NE-%*P*Dj;{5S#zbUy5S>A9?w@D~B;vSE1QTKS^_5@q ze55THlqEo1ulMOYwK2ENUFX@29-iWXOAeD9)z3S6#40$0#|=iF2Ta;G &)Uky wVTtf zloA#qe<#MvzFW7}{YZGS+{enT8-xcAcMo!pAXqg8lIy_le!m#-Ozh@l{eOhLXH=6> z(>1Jsh@#S@BS@Ftt3Z_AtJHu;Qlh5b3@5E=un;bVBb)? mBbp;?xU*2;>C!6_g+dg8mFpR>ON(x zjr1Vs*Ta)tCIvmV(jfXzwp9LJ9;^WcxN7Wo#}2ZV#g!j-2SoJF_%G4-T1Kp%A)U (XAzlH8)TR7sEHyzAU 5~Lkpd4>p5sF}4{x2xZRZ+TEMhOcE-%|q0;{6`XdU;eCLcywC;Kk{V$ zG-wLp!KhYENZ)2!U4_m6W|Z4Gd40;s1%PSq{k?RGVoV%u>33(=|KkOq2waC$TfN@o z!--ccsI)GS$i6@k-pWQh_^7{mT~sBZcGX-9(%66q#&Y!{bh&*~H>oyZd (}j5&)}rwY6UcyJeXPQG^UFqu!x)9z}@ zT* -c;519C6jSr@?avuLh05t@hahd< frh@K}taA=qZhQr>CU?GGB`;${evWHpO+j3J3J33+zR27eq7 ~d2w NRZJ+H^T2zsYi7V)XjxImZs><4Tr^Q@@zo~}E)vv1uEOkuXg zy!!Z2vSCZoZ?ge52nIVJc6 ;?Nm0JiN~ozS{ lbT)okY|&DB*Y5Ll-h47q^Php&CfG@`$fufq6`Z zfHMZ6go%b6l)~0!)*f8d8h0oH-l)n-wHTCvi|QARS7by2WH@w88Ncde``(Vh_C20l zbMaNLO?d5qhQ|R9w_&0^BdaRrF6=pTf$=OCt_ah2%fE(NoGs|q7SDID8Yqk!->Xyv zL_MX1uKqozgn6Mj;xTgJ&ji9gu~>SCW2V6I8TAL-Er<&Dl#v-of+X(;aF3s2Y{Zin zsY8IJf#kNv)OZYCCu&|a3K0p5UPHc9wV@e1f=2N<2!y*^?ziqnHdSLR5# KJa6kTK{M#2%Ci?0gCFkQv&b0$ZWt&cuc`Ca+NB|EvOS zO+IA~I|bwqZ0R#Y&dx?Cj*~P_V)BMYQ|?=CS0y50-Za5@tE9wQg5r;K1Zx2|Splmb+_OMz zZ&r)wKTh{G-7&5|;V*t~^viy7mDPu)Jertu d_;fjFQf!+TpIW1) z-Zrj%QXuZ&TW*&R5B8ebN#6Lv?Zj6}wG{4t*?0i!r9!xkg4ckIK~rs@VKM2b%xtpj z(zzZHS}zvUOn2C?pgLC%S{;AF|8{nhqfK#fRf)duNh6E@d#Z-r)$8+JpI*;~CrcJ- zm0;7UYah`k8sGl35Wl85smZX2f71pvt?2^EZjhkopTnOTTk3f4wt5bJ+}zGsG2m1m zr$4>AL~l(cbjf5vp46Kg(S7TepNB3bEV$QCQr;a^VE%vw(98Ct2FX_StXJUijGs^= zpyJ7N&v%RxhA-Y_P@wh?-&ksk)6kAf_aDBD0PsH49uowW)**S=PKB{VB_R0rFqs$^ zsU|CrAAGklg1Z-zR+i}fJFt&WbItPNY5T$wA73-1X?Yv^LxT9;x1#EKk3q+Bd_%}# zhBYl%Q?B$Ko1&drajerUfnwuZ28Gs7Sr&)GK@B&hZY`-CVyoKU86DWxmJJ`DGAyG5 z`k?q pxRg;UoY{x0?!F#BFD^?j5OR#kT8$Go=Az~0IeAGuqerPLi0m6 zashOW8>(4g=&YeKK0)T>Mq;RduI&%lS!@O)PUc@3dB#3efI>{&Dk1J_ `($$C30h5G7gz<8eWD~4&@>^&1RaC=Q zUS=je8av#4Y|}#C5c#lv YB$a=+d232Md4Ql!RW1z+@W&h}bTGLlD$O)^;}$P<7M0x`NWR^!u*K%;UlBBY z2xUd0J+wNknS=6F;fx<7_>oPH?NxLWIR}=%NWPzkm%+#qE(yd4o2KTuTf($s(irwb zBM#>YRv{SM6p8X=H!JgXz~*+oH|2Zp!p|pVQ%>|QBCVrG6?RhzYY~ByUmc4T9rvSr z-fHE17T~<&TNMNB@&JrMZ!*~qjKmNW5 N=34ViX5{+MGW&1-nYup1V3d%d!tqwoSff(aXNWal{{@|rubfa z?iQw33@1`$2f~hpG%p;))EQWi_l(;TueOQaKJN8Ls2rXb $Vy{#+T z6jLuneTrocpH?XQ8B~BPeaNS)X3C6};U3?}K|c$x+$tTec%)#o;}O=o@an|6M>s|t z1_n|hXLw4q5YH@?E>j9@^Ho+l7*|{DfC)aG!$#jbyoYLO=7rYWLdPvH6PgB_QUxQN zOecEaINihW@|#Hd>$7Hxe8I;SmevmbqOYHP2T_c83uc4~YoBBSF^x@ZIi6n#!xZLr z1z^X_82ww%!Y+{3peeuB$?@1>?#&t?d`}Zu$hOIt;E(M*kmQZx0fTSnm~SFCSeKPr zW4vLj`kMU@1rbTh@ZHj9>Eo+TgXea|ynNvJL_`((1w(!p`A)J0)CCz}cZ2z(1Q=++ zH5hU2fK@Qun@r-V1v{1I5P<{vlLJP)OvN_`$j*W`%)X(&-yPYP%h@@W&0scw7``8X z!EP;ZEHt;v5?%k1 9FbFggmszPHhei9{0RJQZ8GQ_|3gQ^&2B_Wq+y zytZuBu^{?#=t J6Ie4ME`aDqx z(Ktax3lpgjZD<)oWm+(3KCh 6e{n?6ja$<&Cfo)4-4ffszRrLOk}Zk zHPP0McYo%D!Ob~LXTh*eizzcGb?R8Ifb?Rt`{Y!ETR%KZ5xMC7w*oX*=vPQLZ_DCW zk4g-EF_^H}B;IP7<@b%Vx%c?%o!-44RcC)3cvyfM)thx%Pj9v(_@cVI@s$1N&=IYk z$V9zn*8=zrv R dM)HMk7dl!{+n7v6*eIbJ3QNgOBv_K8`kNWMQ?G7WP~Z8?&SB`s0>tIsj6 z+z`)V`YE*csme?@=|OekW`onRp)u=YvV+n#)bG{( s`K<7}N4ZeGtw5vDJjGK1`OXrlNM_6HcTTwNDi2WV8WJ!$ZBD z6-+fwkfx>ci9TGTGEA{ehC=FP{&Nd|95-BKiQ)EfMcn4?+J>B6tEC?7_S7w|$cjgT z3c<#cjj82#%%qU#Ud@V*-MGkXN-kX8w~q