From d69bd0ac49b1bee57dc02341b21a3437bb837dcf Mon Sep 17 00:00:00 2001 From: Halil ibrahim Kalkan Date: Fri, 29 Jun 2018 09:36:25 +0300 Subject: [PATCH] Added new sections to the asp.net core mvc tutorial. --- ...Getting-Started-AspNetCore-MVC-Template.md | 7 + docs/Tutorials/AspNetCore-Mvc/Part-I.md | 156 +++++++++++++++++- docs/images/bookstore-swagger.png | Bin 0 -> 35254 bytes .../bookstore-test-js-proxy-getlist.png | Bin 0 -> 21562 bytes 4 files changed, 160 insertions(+), 3 deletions(-) create mode 100644 docs/images/bookstore-swagger.png create mode 100644 docs/images/bookstore-test-js-proxy-getlist.png diff --git a/docs/Getting-Started-AspNetCore-MVC-Template.md b/docs/Getting-Started-AspNetCore-MVC-Template.md index fe469795f9..31ccbe99c7 100644 --- a/docs/Getting-Started-AspNetCore-MVC-Template.md +++ b/docs/Getting-Started-AspNetCore-MVC-Template.md @@ -8,6 +8,13 @@ Go to [the template creation page](https://abp.io/Templates), enter a project na When you click to the *create* button, a new Visual Studio solution is created and downloaded with the name you have provided. +#### Pre Requirements + +The downloaded project requires; + +* [Visual Studio 2017 (v15.7.0+)](https://visualstudio.microsoft.com/tr/downloads/) +* [.NET Core 2.1.1+](https://www.microsoft.com/net/download/dotnet-core/) + ### The Solution Structure Open the zip file downloaded and open in **Visual Studio 2017 (15.7.0+)**: diff --git a/docs/Tutorials/AspNetCore-Mvc/Part-I.md b/docs/Tutorials/AspNetCore-Mvc/Part-I.md index 4d68689626..be915e1d8d 100644 --- a/docs/Tutorials/AspNetCore-Mvc/Part-I.md +++ b/docs/Tutorials/AspNetCore-Mvc/Part-I.md @@ -1,11 +1,15 @@ ## ASP.NET Core MVC Tutorial - Part I -> This tutorial assumes that you have created a new project, named `Acme.BookStore` from [the startup templates](https://abp.io/Templates). - ### About the Tutorial In this tutorial series, you will build an application that is used to manage a list of books & their authors. **Entity Framework Core** (EF Core) will be used as the ORM provider (as it comes pre-configured with the startup template). +You can download the **source code** of the application [from here](https://github.com/volosoft/abp/tree/master/samples/BookStore). + +### Creating the Project + +This tutorial assumes that you have created a new project, named `Acme.BookStore` from [the startup templates](https://abp.io/Templates). + ### Solution Structure This is the layered solution structure created from the startup template: @@ -101,4 +105,150 @@ PM> Update-Database The next step is to create an [application service](../../Application-Services.md) to manage (create, list, update, delete...) books. -TODO... \ No newline at end of file +#### BookDto + +Create a DTO class named `BookDto` into the `Acme.BookStore.Application` project: + +````C# +using System; +using System.ComponentModel.DataAnnotations; +using Volo.Abp.Application.Dtos; + +namespace Acme.BookStore +{ + public class BookDto : EntityDto + { + [Required] + [StringLength(128)] + public string Name { get; set; } + + public BookType Type { get; set; } + + public DateTime PublishDate { get; set; } + + public float Price { get; set; } + } +} +```` + +* **DTO** classes are used to transfer data between the presentation layer and the application layer. See the [Data Transfer Objects document](../../Data-Transfer-Objects.md) for details. + +#### IBookAppService + +First, define an interface named `IBookAppService` for the book application service: + +````C# +using System; +using Volo.Abp.Application.Services; + +namespace Acme.BookStore +{ + public interface IBookAppService : IAsyncCrudAppService + { + + } +} +```` + +* Defining interfaces for application services is not required by the framework. However, it's suggested as a good practice. +* `IAsyncCrudAppService` defines common CRUD methods: `GetAsync`, `GetListAsync`, `CreateAsync`, `UpdateAsync` and `DeleteAsync`. It's not required to extend it. Instead you could inherit from the empty `IApplicationService` interface and define your own methods. +* There are some variations of the `IAsyncCrudAppService`. In this sample, the first generic parameter, `BookDto`, is the DTO used for service methods and the second parameter, `Guid`, is the type of the primary key of the entity. + +#### BookAppService + +Implement the `IBookAppService` as named `BookAppService`: + +````C# +using System; +using Volo.Abp.Application.Services; +using Volo.Abp.Domain.Repositories; + +namespace Acme.BookStore +{ + public class BookAppService : AsyncCrudAppService, IBookAppService + { + public BookAppService(IRepository repository) + : base(repository) + { + + } + } +} +```` + +* `BookAppService` is derived from `AsyncCrudAppService` which implements all CRUD methods defined above. +* `BookAppService` injects `IRepository` which is the default repository created for the `Book` entity. See the [repository document](../../Repositories.md). + +### Auto API Controllers + +You normally create **Controllers** to expose application services as **HTTP API** endpoints. Thus, browser or 3rd-party clients can call via AJAX. + +ABP can automatically configures your application services as MVC API Controllers by convention. + +#### Swagger UI + +The startup template is configured to run the [swagger UI](https://swagger.io/tools/swagger-ui/) using the [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) library. Run the application and enter `http://localhost:53929/swagger/` as URL on your browser: + +![bookstore-swagger](../../images/bookstore-swagger.png) + +You will see some built-in service endpoints as well as the `Book` service and its REST-style service endpoints. + +### Dynamic JavaScript Proxies + +It's common to call HTTP API endpoints via AJAX from the **JavaScript** side. You can use `$.ajax` or another tool to call the endpoints. However, ABP offers a better way. + +ABP **dynamically** creates JavaScript **proxies** for all API endpoints. So, you can use any **endpoint** just like calling a **JavaScript function**. + +#### Testing in the Browser Developer Console + +You can just test the JavaScript proxy using your Browser's Developer Console now. Open your browser's **developer tools** (shortcut: F12 key), switch to the **Console** tab, type the following code and press enter: + +````js +acme.bookStore.book.getList({}).done(function (result) { console.log(result); }); +```` + +* `acme.bookStore` is the namespace of the `BookAppService` converted to [camelCase](https://en.wikipedia.org/wiki/Camel_case). +* `book` is the conventional name for the `BookAppService` (removed AppService postfix and converted to camelCase). +* `getList` is the conventional name for the `GetListAsync` method defined in the `AsyncCrudAppService` base class (removed Async postfix and converted to camelCase). +* `{}` argument is used to send an empty object to the `GetListAsync` method which normally expects an object of type `PagedAndSortedResultRequestDto` which is used to send paging and sorting options to the server. +* `getList` function returns a `promise`. So, you can pass a callback to the `done` (or `then`) function to get the result from the server. + +Running this code produces such an output: + +![bookstore-test-js-proxy-getlist](D:\Github\abp\docs\images\bookstore-test-js-proxy-getlist.png) + +You can see the **book list** returned from the server. + +Let's **create a new book** using the `create` function: + +````js +acme.bookStore.book.create({ + name: 'Foundation', + type: 7, + publishDate: '1951-05-24', + price: 21.5 +}).done(function (result) { + console.log('successfully created the book with id: ' + result.id); +}); +```` + +You should see a message in the console something like that: + +```` +successfully created the book with id: f3f03580-c1aa-d6a9-072d-39e75c69f5c7 +```` + +Check the `books` table in the database to see the new book row. You can also try `get`, `update` and `delete` functions. + +### Create the Book List Page + +TODO... + + + + + + + + + diff --git a/docs/images/bookstore-swagger.png b/docs/images/bookstore-swagger.png new file mode 100644 index 0000000000000000000000000000000000000000..437c77250387600237598e0ad79e5551ed65b45f GIT binary patch literal 35254 zcmb@u1yEdFwZ;S{oZZ{j+G{<}+G`UcFDr)d>GLNjC@2I8agZVu6f_MK)LWeoZ-FQ6Ts}rn zP()A?ps&iVX~(M`>Pl)Y0)JihxJP;V8`tA|9g>hqLlO7yGiLjTlJFB#eJoS4t5 zYIzh)8;(1Pma*)q6>7#Ga(V)5z!|}Lk8l|9o z*&9;3VBY@Hdx6;hHR8`SeH8WPP;+?{-AQ)ryR`I~u0`~w(@uUGY| zv%XY92f<^~ctLpK)mEbH;_6BSjvQ>D8@-p&$CrA)lT;>BcgXPqWMFI4G$<(OQV+>D zW-rsndot(6+~+Yr5mP3aIpD<|%34Ne)r;ljTw^evCb9Lea*#Ev-`(wPTb=o&ni%E` z2bJj{zc=M+_;c-9uSws~oPc%9!%hrr*z=YMAtB+Z?%eUv5O;dKGdGRZ{Ad0Wb_RR3 zIXSJp#usM$M46xS^PD_9a>*Ank9U_>NEBovK8MAF!a*$>Tku*n=r%PCP8&P((}{IF zb34ynYfVk?u8>8uL|Ud>u_~v7siY)qB&4Xdl22U)O)ZFf;M{0-vXzW7g{@Nqi%91EUnGhc4C_lsOfs9RIjzKjQFq76*;J<O zk&;k|S}VJfZe6h)96UHUj13xZv>+!$GYarNo~NZb3cPquNKzK_-T8q?V#N75xval7 zvP{Qb9l@C={y3>}=*8TWwU|)ze7feKlzn7&K1A2~pw;4Z@RLd|o%4M7X5DAKwf>E7 z41~BW^*qcPjK6>;_qaPB+gTIUCsepQ7j!?)-Z&TbL-u%UCH5t5aE`M@O-<~r`ga5a>%&9uN0L;0 zXh5G!idtnsO5fF#*E%=3T#q>qroA&zyn84juai%AFrD^vCx8Co2r0UMb_OSYGLpcu zYm&WPookRNVr!MPGJCk9fZ4OVb5kREC^H>$P|Mkcy=;6;19af%YFw)kyN<(4o@X_= ziRP$Kr`5YAVsYG?j+{Im|KriGTM>{J0inlE5GT7gokZuFH+9Tq7Nk$(coJi;0zTtW zcR6}Kfwu2^HLL5zz|#CTry6o8dp??@mR&(DXlcWx2%F`GYEpx_2t6nrQ=ZaFYh>K+ zGStrBrUPA9jCrbP!XS7icoZghVUT5g3UU82+&o=yQ_J<9iiSq1EnZR+QAq43TT@s{ z)bd=mEplhFWacPEm+{Pt5377%K@xBj6euXd6!x0lRdu;gH`d4lYK$->W1_k$uW-YB;xPY#I>Kgz#nIsy+ zqM+Ce-n(9;>%>md1SjO_z1+IHKkql4q`hAxs8fof2@WP9yE~W{Q2oN+Q6q&~Z7A~N zM-BS8igy<~`|RK!gLp!5k_I%O4on``8QRS`Hyc<|Nz-Rf~>)n}$3R8HSM(R=9K=_O49svO`mZ7#h2_ zU^7u-9v0zzf`U6PWty>8AGlwVBfH6$X)g13qLi{?id1QLx{WGoViv76 z#Az5}7HO!*y{@I`!cP|x{Kfe$1a}uH_UMO7VQr19*(lxt_Z12WNy)SmT)Si=WY}CL zDSm&>PlbPgenFGj5L<_9Ah7zxUO*e?7{_pv2n8je?Z#gG`8^7a6TWQ}?q~(I6-TH^ zP2AEWVS^PepcK_Y+45g7!)g_%M_V|pnUvd)6&&;w&WFN&W5HpmHgymwtZvhh;D(FA1YWG}ikx-t zBSec@z|QUU>vA=A_kJbGS$gb@SQCL`P2{nan6G#|r9h=- zytBK?>L_kXOo=lbV)%H98@Cn3Y`TDtKLL}=x7?fYQdN^`%2smEJ_xKe9( zQMCaVPtD}(YU`b{pi_U*pt~n_@z2A{>CN-Ka^K2%d}hDdh6 z=XrCgLrH1&59G^NTm-OPl9I0O9F0Kxn=Wb)2pt`LW!VI3AuT$3VvYVyS6W~o#pBhx zDkYPo02rXPKbiQ)AxKYYn&oqRrq~5oG;g4)=pQ|g#<>%_W-OhptV$IZOH@l|E!jNO zto;PL7~y*ug|fxTP&d|*oid;0$f10np)AT8Vcxw%$I#h)X-lAB1iCRbwX(FtZ5*5$ z6x2I8sX>d0K){<6Y-wesrKy>k^0}l0{pNHw7(`ON@bwEi#CUNcF*!s}+!Shp5O5AZ zs`x9nUg-@mU`fMyRuiBaZmYi`ajIh3`x4-xF*?Ew+?o2zznIHfv3&K-MoN6DoTMrkBQc6pepGv=Uc!N z+x$g_q%?AC3k%E-Fmn8N#%5cIV}E}6XL?>p_z6w`6E=GR$OG!0==7hSPEFk}7@^T7 zyRr8C`il4Y^U~B*XhbRiY@wVuQIjO|EiEnK;owe89}T&9c!B}~*xA|j6+ezlw~nD; z@xB!lD7<3|hUR85C;c`Myc>?YptefT|XuBCG#QI z_!g_vxA&3C#WPK_)y`a8TmmK@F7ZSU-`b8KxQLG33+MLFGH zeNj`JN7R~|oyF((%qx>#3#f&G3BSC&G$Pb)acYL+Tfi@UOkpwV58wa$_iwiF>PTI) zMWz!hFiYH#lUBkOE->f}WAizz99mkh~U6gS%v2-awsp_i`FG)aEAm51&3A zh9K{5ZC&=`N~Nc#2Y;d5OHt$7C14u ze_27>e~1W}d&{%4ztWzrynX5J?#{}}BKTx5IXT&K8y_1xM1Uv2-!!a1%gf74Y(Rjr zvxk+&ljwME=oc3^oy7DUM=3|Z(*LrPh~@Kq*I+wWM%cNqw!rWp_@P!?u&Ze>j`D0Z zwcnH>K`5KkVO!j`!gwsrl|<+RG}PrggwMuqMsT$$F}}X`{_hZ4d|voHTAo?p`=@s3 zbiUbx!35khqw79S_UG3X*LO2YaUuI>KI`hLss%i^gOo2%r>#B{cCP{%<02@g zDo90d%Z`$tcRV&YXn+K)F5NcuZ|8<@mM@1HI#<%aM{HuHHuArCYIS}x0F*I~0;jjq z?Q$2T*yU_Z81yN?@NBJ)%W<<(kKtfHb6;!lp|KdIX_}l^pWO28IK%n?$DzQ+``$+-YlJ?U_g^#3m z1$a~qhpC5eo`D-eRgXxAW-ue)K(~Rr1n3yVogOnAqTq#4`FCM`!Xix0SXN*8`<3Ys zaq5fjFU5*~{+JihKtJQ+WIzfEfT~cQu2&jegZ(_s1q_wt<^KY+YQn6Mh?Z1a%YqUg zAMf?|*8{*uSKGBN&j*f{IgBoo?~;ecYEIiq&S~>9`mtUs#z z!_Pax<(%}kVAtC%m$Nyi@;EA`3B^B{Nl z=j+y+aYVC7y6n!Y4zGSgVRgkRy?fygfbHV(ysdhUS#5Q}tsfj6P3QM&(V?i4r5+oc z;xGF`WtX(SE28`rRlqLsP{>A`W~?0to$k6Y$FSu0;Dkw2Xj=E-j~G8?ZR3{qz~1q= zil=2rklAs*?EYKuEHBD|YOj_tx|aS`1y*(xw%F@Qu=IcYz}V8%7Szzt%?d@qzEx=P!Qrg+s z<@zHaAUr@$jx>X;d8aay+4JFu<*+(~gIRPA5Nn9b_UMHUoPmysLhIkxM$-le{dz{O zQ$KD=uMB`EBguJx_tN@JM)YCJ>EZA3PO7TyDu-871ODEREv>;6%toX}8GDBt!q(H} zc{VXS!i@IEmfhiv2Z&6k7pLuFCy8M$-*A1c#Wh<$w0_{*p8grE0%c?r1bh2QA5r_t z4Bk~TP~cV|Do5h|0~==D&BbNG#k6Q##_S?h&=+dr{f;%yBA1=7V0t-@w=?Vqi&-3W z*x2#NyAr@^p0{mrJu-!&-F`s8P<0;`ZIO3wFujmfE3_4jN+)k){*vO=T#v+(~AmOTgl|^$R+Tg@6c~$xJa|I2xo4Qsh68%VRSoR`zQYuThMdh*u<2(Vc zTHe#sQ&TgA{s&47y?3>+YQpgFa71W|Ea-&cBQ;H2Z8Ia0KHf3~14E-y`V9i$=oJr+ z|NQx5OTqZ;uZC37+lbk^(5>bpTG`f?mhSm;co=fBtfn;Gry;IXh7q{XiR+|y_)LZE zHQdS@Xx7P%)36k#(|B1Q?Ga?g@EE?JT*nfESux1SpTU}9o^Lk#GNzmH6-3i`suhi% zTHVj+j{xuHwX(5jKOC$|Q79+pZ8cppE)5|}ts~lA+gN0Ng_hb_G!Bjl6 zJ0tc_;~O9&tD09nsGN=k^@>J05i{TF=+ajH41f*rz_2pK=;1Bi=s0ghgvS-$c~8S_ zdnVuwuR@@VEI~pMSv)Q)!9YRsBIuK|nL1k&V++EtzAvUsBnEvVd5JlV=RiV<>C}4q z^;0-Snw=?!j8y8Y?nbo%{rm!s9AHB&GJ4+;NkzUFCGQPbH;PNUOd{e=ip??CD}1xZ zG&yzr^Cu|?u){S)U4~%xhH|-!D9Pw#E;U(qu(D8+&s>ZL3R*i2k}10LLMI6&Uw*$i zrlOjSzOs%H1e?~Tvp(4<#BG(R{t77~^U0IOpFs*N6`Ao06q9)r23i2Odn zd|z7995bl$dVm0naCucHNB#@2q&8`dZEVT~^)Gb);73|~3=jfi)^t1rV8a0G(}YE5 zmZS@@u}js*!GVE+Sc9rDLzX$p%*V#lVEPCgkqds_`@WKjiUe`8lQ}<}XmK*k=O!|e z(5Hy?uH_&s%LH8$vI5>_mW@I6A#8j!!*8AlC@2q|pt^&L6R#~%+?#8n7az7Q-Bj<9 zm(jQ5>N)UAPiQCz=i%f-L`zpV1F&yG%fit|dp1d_mSRv}1z>YjhpvG`bqq2Frmb6i z6j@<120c_VDS$0Yzq=kKo zS1TBj>GBjW^a=MsuCLFJl&{o|fOsmCj4nZKC{H*T{T)jN23Mh-yPUBUv;B(CBX*0M zykpzGsfl`YCKeB;nud85c&$n{J<#es+pjv#8`FtiV$`kA3tOgRDhg>HEarwF*LJhJ z1E;Wi4qIUm!n|zlEar|bE>Fz!sP{!^?2vmL!y9OU$7mc33<;1}Bwqbvu$zgA!|J-- zJ#lz&_$Jo!Lbu|zu)2~`?K5v~W~QD%lpbhiVIe6~4;dAeHZI`hVtDY>sm~E|_$&Sv zzNfD4+qzI|em*%VDJeVq+^P<<2iSUENL@ym# zBS{vJ7-*Iw#5`DPx%OTfpOPdoX7ZyA$6?WY_!!#?hk3c0SrE4ey~y0bMN`Pt89Yq> znvyET%Y5ha>>}yz&hBnNVBkT=OaLPZbEuxR(XdB{(}9DaU{+L=oKoDcGfBuW5P0#% z?No<_g(W8bwXv}(qYobC^aI>ilI7CM%E~A*O%p#CWY6nZlmh zEq0XZRC%YymvA;XmW7I`xWNnLIWANIxx^tF>$RyeV@W2C6O#q+GP9ld2K`(d2e=t+ zdW|xTX8~j6_&rtRJB8>>0XN0FPBxY(=GFW}KZTEqk#T?<%DzX8oL}cPZ&Ue^Xg@0I z4E`;`Vqp2JIrt0XNNY!iHyVBQP(PYJ&EetU#f3wJ5cXbtl$%>~`l>+puU~$_DJh>N zS`*cEbnqWcf;ch`E*%^kHa89P6$t@uSX%j5jrGp)yHIvf$S_%>gka81!7|iSauvGYq!10UI6?RL)uxLeB71QRQRbJdt>)qn_3DT6dLPr0e?|&fqEhWy_8KMajQPsW?J1gWwH&DS=8P5y2R#* ziOwyXz*`$Ru?UbV8;x7+x!DripO86D(MHLn70{deU9wNq$ z%F5e0B4L}+B-=SG!o{yoK7#1}3I`7zWpfO6+6^~Og>r(0eqOCw&tt&IPuI^29bRX1@XR$ZC2bOjSYg_sD42jH15Hg8>^xLT=E~A3 zNd}Rz91<W@>ezs~%!Z)dYy!9w~xyI3uo7M4>GQEawut!m&U zFF>f*-3B<1_ABG&4t94E_(Fkb<#ui3$-0=4k$>j; zm*P7A&J%n*JVPU+ko|`hTv^$6H#1xIw2LaW1b`z0(uRHi{-{EQ_RAMe z`_07DOqY`-f!gIasfL|Axm61^Nq~7CWvDab;^h1h5O8;QSM6h^s-~9s^XK;N=Gcnr zR%PQNC@Q_DcPu}Baq?#rcXp+tvoiu5-1T|Pp?Aj5_(4a<%a(*VPtUybbNk~hsYLo} z540iU8ed;1h`y#~OL6`a5YQ+p3O>H;h(0-cJLtyqn|_^is+-4gZ+lzaK`N)K%Qq)S zD!n{Ab!gYq=rv4aqNFq(C&zEGs&Tlxo4{f=#>vh7DL{w@yo_}B5S1a|(^2dL29|bS zK>_$q6{#Uh=_9;5Hqy=D$8gCHq>&0FN&_;^-yiOLZR~-F5ryt?^1K6quBQW* z07SCb?$KD>iSZ!#ww9qGwkx=(y874fu+>NsQ-SUr?0khzX;IOBHx%|2q5H#45j3=a zbk{xo6OPa_RQGWzF!|B(wYf4K^80IXer02)?{lO4t^6TSxO7D(f^6b-BW zCG)u*ccpD?Z01`k%F9Q`#uSQ`4ej?D5d5Dd?8>1r`Je;^f<*MaGMlrhsu%o%@2=m1mBsM&@X!tfa@rZ%S)+#rM3dEt{hOky)x{pp7`XGTKo09mU+v)6 zcjST`y=Hp+uQDFU7=f2i9mIaG@>O3iQ7Ika4f`h>Lf^#tkr}P~Ul|f*5(2KtpA7z$ zM4_4+rj5&C%gUXD^iN>FYiQv%AI{+9-<8C9|7FJL#;&Xv$v?ZhR6zwQ7R>zqAoSXe zh4=rd!M_Oqot=UI$jjd9c2$9Uz$O7ojH8hik`vNv zNt1SNxWy&ctzHhF+vV}lHQLufyMMK{J)PI{v2l9aW|O|5K)EG^Yr(OI+sVK^*Z*Nxr~G(H^+J9lr)n$c)V zv}Z?&qTR599v`3Q&KDgyP+k!|sQpd;?f&n>PL8FjioMU_PNLMKa3gI!fjs(dtSQ;cxoihgq72*>p>yDJ+qtqk0(hK`JGwLqPsKjR+*emTay+Oe zKApn2o!U>vETqtBwokF%SE4dBlm2kaV7!oLqEIV5+LzXs)~*g|bj);QKPo9;*r|Uv zf(Q|Dn2oOwXF2TFcwPTyo!(jjas}++s}#H}E);^sVdlPVX^$b~8X1||x!MK(@Ord5 zU8IIgPH_1=ZqwnQC}`K+Xfd1(QsxA?naNF0$6OsXhs9gdL>&;?KD37io6m)BguuCI zljhtXw<)1x%$}}BFc6Vndrz^n1ovpUsoVK1p zHf}}QJ1L**y-Htxg5!gOQ*7gh7yWIsnUfp*T)yp#Llk;;O7B22`HiPldQ!&OHs#%K zSy_^i?6gN&cmqmKhoV~9z4d-q;5bHv`*8gPn(8X3Qi>ReB8-ZRJiR;*y9IJjFcWWO zA3s3OS9ADY?jH=?XcSf}JvzAmT2Dz23}eiu1k%gW+f;tKx}az&ez=en322C~^`>zl z%t0NSPDo#BQMl<#f(g=m4D^#pomL(=OsQ7!A9x^NK;UF`*Eao)XThCeZ-8`L^6;xm$0OR93%um!k1V-l0 zesa)_)_Dh;_!Km|TS(>n&@V>{%2L ziA=?a4z~qHrr>c{&E^zm94D$!b}l-O-k-gHojgO&F(K6xt;X%F=-}X=5%o7t93uqx z=H^5w3g*AJ2$J(vKu#{}lp#0utqN5~R~B7cafLuK1wZEYotGOqiVD6~XN_(vZoux^ zI(-~L)HZMP@tufV#@e?6zoL5cvu9FAHG5l)S1Z#6%|FnkNx0TpD8Hig<&{DNGITHK>ZQ-vQRsS9jXus0&Xg?@dh~VcE;$P1GTCoY8iw z)_RoN%Ieq7?B5#q$A?k;X~oMu!%T;(osaXEUkTnRNU?UgTo4L)4a@}Ifwp)M*4EGnfiGDvU;npxfd9`t&42N4XwH|{h2v?plCMS)s@-HWF6z>={}c#R z(!3@hR=NCp4_nJ+pi3P{Wx8Ynp8A#>U}ng$_)(-)bWz+K^mpZuT>Cqn=$~|G^imzUXyCJxqdkF`Bk5n z=I7^ENW{DKG;en_l~uU(p95u~xQ9n2_}qgX`h)KcDyT^|fx;Yqv+Q-YkIui1^_-iO zceX;`yuyYmB(@0Yukrd@mHujcsz-e4gR){5U51 zu{FL+nOa4LbZhs=Kd1yer~yJK?|qs5p(Cxo;QH!b@8O^QWg1mC9SQ8r^M&VO=g*kD z9;U=OC_h2u`y%_^asuP;@ZGZ~KROPnJTor-vt8cdQ=6M2YPe1z^qL0hlyIFp)qK%G z*y(gXn+iA(D6493-y(}T_r!+M?E1!6qzuLLgBb7i`fsT8e}-I+*5ixzn&6GRITGI0 zW-Ev^md*-bDg-cGW@j3-n%;}bhCME|cgVIwcnO_T)S8S`3_tf(E;qThsoW30SZXMy zq~)DkHMF62uWoNfVuU0c7kowHOkx$_dYCjhI1@ut*uCe<)MHdLn0G4B@^^QlKUI%O zqM{_ppq* ziRajz`jC4x$5gLh)lE?#A7sErr!9`^`(ZQu(dA9TxW1mAQ z63EY@?OosioiG;rXua{pfy{ZaJ|#~H!6hCflwG;p<*_YvoIYYjK=G_tX)(m9R{S$0 zF*O7a)f67lUUBC|E5;#6{6z8{N(G0pE~nHLsHvDKp57JmuQg3l{AWr(?iw=)zRy{lu*8yn$g0+=X{1670b)QbRgEAs4X7Z zik$J!)8z1N3yC9^#Vz8nIHg6k@~|6r$02_%Eb-42({O|VJgVfTLFGo{NzWH(${7hw z&sl3yzz+tmTH6nbJ?8tw4}>mi@B{GYbN38o8`6x@4n6h46;mLXPi_KfEP8IHcG%GvHdTRqoQ9c zc`spNcx_&Qbh^h%hz^lEtL!B)@53{06snH6+2vv%{=p)s#*8(adiTkMIp;XDqs9D@ zU9IXo%<3S%*qu8iU^}*1K&C=(yv(&YBq4Ae1lS!?Ff*Kmpqublqr4oyJmmw_yc~Ms zCw>$ZE*?Z@G>EQ!!H$_(VjQbzfAzbUf$JqVKF59!i4f_C=5Nfk1jDWsqcFuYsWrpR znOhYDu_k6cUQU&5NpWD}TRr)(BJ{Tg z@}@MX?gk`PuK?Ze)+L|$M%e4!g8AdrSimT|P13vwIQIP4^r|0;)*`cfn~>cG|>+W7@O7+n=cfcv{nF z2~uN*hX-AEXSDfF64ULQbtouhYR@;Aiw(kCb%-fPM=YXgrFjTUTL>&hxKGKQ@aNDr zw~RVujlQn+{H`L1yKTP(mh5q4IvJw_@87c)$9ihi=?{Q%8ofiMia(@Sy|g*%`fV5O zAkLsV6tViQY}Ib(TvyQ&_YBb6aR^Q8_-<7($xG?BbaQ@>6o_J8pt@R^=h?|#%t5nN zLe$Nc{lR+o-uTHx9e)l8B$kz{jdn9|CtdAmOd-4vq|GRA{2S)2{nETv!w4o$vE9H@ z<4c*gNC@___-5j}=-wh!D=(*nw09%bbBs*@*p~J(Xrmu=k+>|>TG;*TDuQ_}N~`yR ze>ORds~9`kH=O*xYE2RqeuahwflB0Vl#oF!lk^rTzSgdZlm+iAL?DcvjCvXZx1Ow}Qu8)lJv+l$feANVA zAH=-|6w@Q7R)i#%#}+Zi&0Wgc^nE))!prBi4IWi8icy30rj76S`)tKi_@$_emZPVl zzd9;wGspE5DlDca8;sNSLgWC;rAI&Q?LKwOHf$`BKwAjdeMUoukKw`g$Vhk;s-;7k zvmkgDWkz2$k&)OgxY|i@6hkwcNAzTiGZacs!?jB?HNJ78Y)|e>Vu_JRWV_OP`g_@K5!M z$M#QNQM8xaS=D|eTIoA@Y$D7s*zdA>d0#NY#xn)%+&p}IUVKM)AP#h7z*-kv_xty` znSbMD4FSJqE{%4n<(-wzxi$cC`#P%&_`!M9MI@fDo;>M){Ny9;57l`K%ZRlEirA>xtr&eyHsH{1)>1g|K>@i|IA=Uxp`_1&-|nK&Vj1B5*E8< zFMxf*;}fDq4~MOeXrNmChvVmtXn& z@RK*Fs)CY{-MhZ7uITeAm(HD#(+!D|mUZ6{P!`HP(!Gl@p6qIaG)%=`6d7flxUBVK zS^e{AmXg$w2ZKPiWw(f^xTM8R!g2IgpN!@tdu+XquA*J>8 z&VTaDw;$@31jbrSUT5H{>`l)C6w9B(L?l8fYh35f%Ur>>u=%?qt|c1uXIfxmN$w+&#k2bp5vwSL&k&X<@&S_MtG*I5D7^vEgJ7lguY@~gHE*mJ;(RG=WcTX z?59Q*qJw&uthmOl@tAX;HC_GkXL>um4iaYXzD@i@8Fs3L+67O4f-0ZY(BHS)Psdov zgZRn|Z0QGcSp@0d`NFo;K>d}$;d<2+ahK#YB=h(zt27TAR;@NiqoL~nQ`=81^U?cF zuyOxkiy-UCkoS(46n;q2t5f>qF?h+V&6lgxYe;y9U6)fZj|{2brtO=r0>iAN*%~$b z&cf*xb!>YT*@7m1!g?&=zZ2roBDSon1x{S4V9UJ&9u^4{s?6lr@A_pj`_`#OnH9#L z>$dWzic=fL5O!QgO@M4ulz5dL6ni#vO4n003&)Vxp>dJB$-%fZ0y2Gn_we8XAqU5H zEwskdJfDqauYx)%n2z4VN9vP&pCNZ2M@5MV6&KGdC=2xZh=h}KZWRP8kmF@A>`TEc zYr;EB%PYcqaBeYoWUr~1a<>+lK1dM@dyW%$F@~8CE7pz1Ysz0MJ(D}CzS2*(*kU4~ zHpVV{C~RC|28h^0LZ9}UuQ5;xl=#`MP1L|>kbK2y+O)7=DiSnPGUGuE98`iAsCQWQ zsff-~+UwgVY;E(p+eL4N(6kdLx8eKfCZASw)9p(?x)cTn|K>Oytz;F}2&`mw9g;WQ zpt=wb&MfeuwHwG(D^RoOybxEvp*%@isb)K0Uk&weWXm_lg(;WSVlUlthhI}rMcm`m zbJH5F!HT3fj90EQv)??Q0%r<7Sju$BkPJyjuBe*df=A|i@Z%wsTGhl_XI8n2*SNn6 zD83~E?0Vu2kH-4~a&$(aH(Q&`zQM`}9HVvUAF#81Q9gIbPn4dA;YVH|AkBthB{njw zdvZUH=2~b)7T9pLum*1rsC}m8rCveSyER@)0G_K37qNQPf}5wB$h8`)Dwojr40eA$ zjAO*Iei35u+&;Oz97@ZQImVgRO#-Pc#~=KxlD)k9Szx!To7C6O za4;id;lnJeNpZ+zqPm&TU>8(9yqs9M5PgzeymwChglye40IdX=L;XMfBz3@7QI)uYsX}M@r6Rg9%YzZkgVfot4!h6*8 zp^0%}e1mxb9Ao}ZUORGP0DmYL4Z9?w=6&T4N^D{M-}lDiQ3j*V<~$mD+!svD_`CXgwmQ4;1ti~$4o+EsgPi6 z{l%PsvnG+|Fnm~pONA``^DlriEPOs`%i#J&KpHH`<0#2;R2{yzB>ngLoTy~eJF=BP zDk0r1DjKyqSL}82L5fIvt8t{fp7mIm+v#+)?M11bR??->R?xULjx)|GTJTe zyD^O@Q$&}kDLOH(*klQ}9Tj7Bq(Y4lEmMqR4ZKc6|1~^%pnv?WlKLsI*LfxFUx+5< zDNoWieJ9~t@$|5%za947j~MQCCw$I_IdPyLH6-1d)xq0V$;Z@9F*AIM18c-n;9*yM z+ya+A))d3hMI3Etf=z|uS4I*LOjQ1%2vno=#vWT8kI}6J;P|JVlVLTGX;KSj&Cx&l z&SUPpglWtGV8Xr%Q{vg1mCy9eY}yVk=&d|VZ%L^6W~Rhh|4{w9EdIXNf$|KFkr#Bj znNL`&sB3Sl4Zw3WIQ}5tTEDjPsl-;ntip0z_r-~erZ5y>3RHBZBwNW!j@Na1;Qsu_ zgf!OC@4}RlY)rCSswz|#rn17BAEqLMk}JfxozZSkTM&oTsA>9uZcm1bny8jby5J8(8>SwK8@Z*saJi0Ba~E7(HN>>g`}@V(zl$)5+E- zDl87Ve8@Kd!vh;%U9zUcj=QVe6(rRY1ASkZndx^z*j_FNc7JV&MCMg=mROtH<9@LY zGpEq|%@DWjDDq71EictaZ7)`u z)`{w0_QTf_58PR~m$+w}e8y_)^p0l(^nne4Cx9GQMKZ#Z9`CewjBtV}Qa!iIIIv9L zuwOdY5e%0AwxW94l{a4lbB2Y+`!EAE3YGV(N*imuXjyHJ)Byiqtl%mJ#&j4``EZIp z-nc&~z1HQjYm^uOJ9=UoT>bffMhntA()0d<7G#r!1`P82M=ro6j>_Ykr$QJDmU6WW zd`9<&S1hCl++r{ZAYd~J(qh8Fr0a6hV}@B-S@B%Q0{j3B{ue(W^!?BL;9Br4F5}3( z*Ai{Dl${z-4-{nJ{-gBCQ{L=DordLlp~t^r)7*N55dMV+iDBq8kF~{mFTLg22j{M^ zcAeK9l7&nFeg-l%!!<8tf(p?I<%R02l-f`_g>KM52ig#v`Ky~r5B zP|{?md>_=uwqNAd^;}*zc)g^h_>|m(L#J^EI>=B%TnXMC%}II!A$12F%^T@^-|o?F z=*yz~wb1x~5Gzr2m}T@!PjDwoMb8}}^wH~SyL|oqo&nVO*E33rrL%LTuRBUvVpX+n zKxCc_6-Zt6kkrpZFgV7QFP*i1d_6+~1*KKcdJ!{f@K22YG_ou_;q=2l|G;2@`DtZJ zOUvpNmTI|D0wtj!Iqy$LUh9N1{nvi{|6!#1_;*Ps5rMHEB4A*&>1rFu?$$ZJPnBH&R`}a1(_{HC> zy$qw^G)2YF>uy2#&|7proV_?cf#Id))qhK;TmG8~usD|x@n{t*U$iB(Ykic?S5#2J zaC23!CVK7Nb5qkqPtc>D%t9YbV8rXpW{v+5Sa7l;=f6R_zCJwb$nEat_qNCjdOv79 zvf1}9)l`2oz9l)gh_>E^Brt&_px&varKBPv@R&vMj~xHS5@rXYwA$sCXDioefojzy zkXDjgONM||QFed7R`J^Su^iIB$N(eU|3!Ypb(c;^3yEkQU4{W6`?`u=a{)Ib{czKZ zB*(robj|xalewo-vr{|uu9y9zcuVqJ4Zo6yXWHMFcDiqD<|VQZ%6zN0L<;GL(=W;| z;M8w<23xh64c_*Pns$Rf+w251-F#8`AI&AQRPI~ryspitcD8vg%PV!^|JW+ld7Lj9 zy>3n{ybRVL?D?ymY4e8#Bickf=5%QX=u9WuA{9g&)o*xc>=KMF8TSKu37r{aE^M^Enb zohq^*Wlde#UVIRQkW*FiSE*aLo^qYXxZ6cKmzU~*jGIAD#?$-Acz3zwIs@G=16K5d z!y&;%ZPZb(8yJ3<9ZOttXv5FdJl|Wj09lcwN&rOqccp+UTXCc~@1C$k86jG|{Oy4R zc}z;MWsQ}p&svei<2Rxh(uYqy%Sold!IqynDk=u2@le*A$?p$l-=R#Vv8`3-9=MCT zP3h*S?rCj5GNUL+^_R|iutfyi*diQk+(-m{l0%VkpP5OL!~#*Au&yspvh0OW!2Cl= zuo7a;x?u=dGBqd;CrxQ>-$=2OF&qpnzRg<$?YaXLzA7H3-x5QomHmhK^?D{7|6Ory zP@-o4E(3{5+-1F$Y>H{PFVpJ#Vwm{(K<#OE6YP@z(cD`A#TBgUqQoEsf(A*jK+vGU zZ6FDQ1q<%(9^4^>1O^Z8kl^kPg9Miuf;$A)8Qkrz$=>^%eQurm-o5qe)qAO_6fP{JzWXrn_mtN)`dbP~6uQ7!B}w)r zxzB6^YLkSjPDq=xijPuPyw_}b$m9@PFm$D+cT6`{Fqi=4%!>>0dz08d3OwtxqRkE! z^X6Ghv;#0l3F>8l@pbdFZAqs&sYEY_QM*8HAcR)-`)RQM3VE%)+f2*6yy-fntN!>EGkfV7X1bABWBDcc>_nbF;zVORPh8&t)MEqs%(aPbaasE zOrP=P-jB!7{irj9B=Zo4tu6M0JK?G7(kv zOz!rua;#e;ppKLsw>fyqY42ZvLR+EP9?QQcdTV+t*0qy8`y)$qrqqUR72->T-(pf( ziDZmC$PjI`?;K=h*#^i)9hrF& z5Ty>|DlLq1hj!oJfTg`v@wKU2r~;^IHX*N(PpU%r7jRjFD#guEWd{5>O8({y$mYl? z6&B>nhLy$eiALq_px0Ns%QD72XMw0XN$uM>&vPqwmR=!!jSs6k z^TbY5o_2kJo??8l)MbtJp^s~c2OhVVdSbEui2<7I9s4RNDb_771bb(RduM)CQ@n|U zU8mN6M%M=um{P&Kg6Qi)${b-3WQ<*YfFZg7zq=6dNd%TsbUyxOBNK$PLISX!$=x9G z)@moip%*z{WoFgcLv`vm#=bU4y3te3U&QylAxb-Z9V$lJbZc2ST&%NDM9YlQA>iVUd z1X-Ok&niX^3zg<0aDo3v;HmPD4?!ObT8GgkLA$FfKTD$Y$+a(ngANKkoKBoCGrN8p zQi9{mcyBE__PX+b-s5Itg>CcwCCB#zhgahP6JO@XneQZvy>e|SG+q*JF4jK!HkG8K z+czGklNN`QoZIMPAZzfWF{?`#5O7$u`6g6%c?}T0%ov_wKWY!so9&fn%63Iu{B_-Z zEw4l);x@ZK670t`vkqQKp&rN;rtDV%|9Y6j6{?`Aaf^Mg~v3Hf%AWFK7 zSi;xAX6=_T7&Yh1aVe`&a#*|xe)5V0Nu4Q=thRFmO%%Irq-)kQm?A2l(Hy4NZgp6a zO;B=KEFm0rs0L^R>cTm+Bd2ZKgb77Z6UH=pE#b}6%?v$Xl|~?V7^0cxv#bB%JJHnF zvglhKT{5w2_iXn{@T9A<%Z>YAppD6(FR-DmIwO5=uue_kd@y>=8JLMBY-s&4=g7(H zGYr2{;^+XxEO-H-Pwh%-afscGNCV?glr~fnm)f>fr|a3(lU`?KvA^JTcfJ^QgSk*% z8Z{++zc|t8PO0~;Il8NJJ6lp5-)OnpfqLBYpdk`NiX$xbm9%BAcIqy4=!n z?-6BP7DH;U80Xz190_K%etm=bR^~i9exBhx7uC_#Bi=pvGC^oF z%^K;1UF%-##BuhoyQ^`u&&AEV(t!L(^p6@}WC z!S#o$cBaQY%|%LB2lvzh^0#zB)IAHoh^Mpep`r5t4mL4Ks;1X-dDDnfV99kvLzg2WX$qmo>`&?AF>cF)?9cVxo&p@iEcU(pJ~i1)aoNPu6yi zK~ZvpKGxp=7aG+Dd^zSt!(@5&>aZtFv!GxY6#;i<+>v z;a&1$6{r?Cl>irc@b1oF^h|_9ToD^Rz{EsKTl*mvisT%+IEqfT;vii%#+C&?6IWCn zPfuetbNc7ObkOOpjjHO(D}T!e1`=5nD=k;#DZEc_Tf6|)s5e!V-RqS9_Ie`}i{wSP zL|Rb$<#=#eVc{DPbmi`LG5hXXp#yr>e{qD55|yWQhWf!Wmwkw^5717+uUSv@VRsv0hlRakfs+tx|+tD5i=Ke^U54Ui1(v&MSM zk>Y^i46fkh??oa_B9gOLs0zg!5O$KOj-Ln_Og^vpL=Qaife~5@3Ce;^{g0}aKxq%Z z$xyK3t^L2Z!GAdrr5QEuMBzPwLV*=5#A?xd_V-6yaFnj(?fzb^v!(t{Pb#Rxuxi?d zH)Y(aX4*yzCsf50RmI=|y~0AEB2n5oz*^6pIdLyo)ap=+tc5@iA7BRm zeEvOswchb7!fOR?j#Co~fm0W^VirS38`lHy`NG{~`KEiYP0@gYb_Q{g#0J;~@=#&x zUzVH}FY($6D%Gj)8Q&lEY%NyXi5Lph%UG+oOa)b^%x?us$0y!6TL zHfJnDAN}z6WDl;6iv@kKQ9iSmY`Phy_9CX$(>8)U{v)ze%?w+UW>SJ|&T+9hfhq4OMea}y4%YNR&LHpePcEcg3 zw>Wrj3y~FA7y0y-T}aUBUG*p}s>MEui@ZiyQ(PYmAgo;~f%_}bP`!lfK+dU+)$@2} z0Acepe-A$EZj*+oAe$rtt$z-)^(Y9q zQbrT5#4*r&?zu_pRrV^-UxMyZjk~Tq$DV6Bb&W)SVA5zX8;*sLmpLdqXy%B^KFZk% zalF4bqEbh2{3>o8>^=HrGoVWL3rK>%9u5 zjFgpi;-*xR&z@n(^@?0|nUP3U^`?4;U(wT+xCk%oSL=f^yg!fuN7QM6!7TABH2win zwx;3YxkNk9m6Kl=4jR2q5gy;JUflh+s8kgT;8E>ka|*7D%|?epX6s_54< zd`THwj2C-HaNW37-lme(eYz-WtX4i@hQ5XKx>0TU5dOdr^{=6U$$^4V&qp^TkPxQ? z^=~3GaL+0!BsZwzW0gm%c;yqv=gIfcUY7Gq8@wV zve%?6Dsr2A6`zS~k>lV?CWwKv2jUluh!n9y2*Q^^V-tK3CU()GqcVFGKGqxW}Z`-ubJ4urAfmQkverWF0X6;Ji_I9UlK> z#K>czCcv7$BFM8D-fM%y4|i*BTA%Z(P4J8zLp4G7@)^##I++!`!c2AP5`Ay<9@RTOb)ntfwyjm?xPewwo(gcyL?Sm4W(C)a^RjUJaiZHCu8xfj0Le@ z;^1dJN}6h$C$~~(?@%>sZ%PEjk$4!(wEhADTw@&`{aBAsA6+D?SZweX=Nn!6+*wJ< zqQ-P?^=3T=%?3RuCxOuZI#=B7RTwiza3Y!T(eE&fG_j9PPYz{iT!e&=J}OlEvXl)n zOp9CBy5VxdVC=mFmicGcO1Z-3qf@b&*E;wza&bKqlsm&S@Z61HT;+BjE#7{%M%zG0 zPGzGSINM<~0zJy|0?ucMJjBQg=2o%1C@#qCXNmSo;Zj*+Wrq{JX>BR!JL4v?J{a)Y z$42{{NW@U}UC%~Reqfy5IC*Lp`OxEX?pGnZIG9%8pwgMgv+L2M1#evl6FXnqV;Eeu z)C2l4H;gw}!*dQM2JtPPseH7yo*rqyX&T(XvtQeGa-55>*(E*WO4)`HpLGw@ zPli8&t=|yi$5<9CfLMFP=j^j`JRM8}fNmZVtdI7&9-qP3fc2Dpm!>Z;)dW8Z;fD}h zs|tutb(~I&9q7*Pw77PJ!RD7@2ww0Ju`>=XY9x3KofekN7Ja~yeV2|j6BypX%RMok zU*}?;)TyZE(AR#QxgjmPVO`6MzPPTd@T0csrF<>-qs1vln$C|I<{)CH0C8}3O{H+^ z@H;fL%-4Vs&#Fiif%nGyOh1;vp7-`OyJhSUj^#EXA2ZNlUlV42G{Q}WT|F3tS-yHJ zV!PGOomMWz@5Y0U?6Klb(FR@Zh*fE5b-Ar`tAK88&Hc&kDNc)TQ6|2^df=2^M_av4b4bBm6k*LdUO$vu&$H&5+;)ny!9a&0$Z=&Tv(XLpeGEP zmH=0bv{jq7UH=-59j4!++_NloZyB-wTvVzjLlmCUZ_NUw&?CT{iHzei3v-SXGXP28&J@$a^_8@1E9B=o`~^ah`xe*HX+;xW)!!_`Es))1 zZ%_F3;nOs=Z`#s;DXBBved~epSZOCuna@HFqxw@G$dp2QrLU=!9Qhj^TO0jz`Mk-N zZbRvg5o{WoQ}f!i%}RP&>>()#a?a$pY1=xRU-{2ZK628&;gG~9AJmD3^_8}2dax~l zremZrEUm(;rm~jb0-aotG0PCEgaB{TT7UB)!QPZnzYUZAN77Hzknbm7bm zS*G(3W)veB;UpwKB`y*JE3$EATSPKs=jp^#t_pO2H8du0F5;+vJMg(-m30w$a-NJ3 zUl5YjZ-H`;wO55+r_=nrs_-Up&{bbMx*on*(@wzfg8n#psEt0jLLR_MDU{P&7HH?M z@bP-Fk&-0u5!y?&&HV*2OLKTy@lK>Q$tHFeyJweK z8kp5z+W06Kgk(OPb-vJjA>HmD%sbA5H$IETYmIo0uVDT5ib#9@nO z3QTRYNYpEDrj{JvG)-=emL$m&1qb|d}I5OsUsWF;gC5tosDYZX}$!!8BHISw?_ zjGC6G7#C~kctDvfyHJo2)B}~WR z@QnlUkQ^t7xb?9i@SO1td){M?iKhW@o?|z0wXUw4$Ec9AlXGZ}pd_b;ri$K|B^5<) zH2jIm>vz`}hqq(nKyiP>uIZDn3 ztZG`E*KblJbWWfHm9J2%A=*B_i2I)VC{cZg(%qt0ZiY0`j=FfSNYTRBAc#FRRp5I2 zF)`2_KT=Wx^>5zwyh(xOIjX&XnpXoRGf2KYHCw0>c-zDFz-Q&NcZfs>7A``mwJr zRAqp#6W{D0P9w8)0iXmCjZ!ekYitQQe`Bl$T)kQbXuAW3!@nxU&;KKYai^9Ek#2D4 zIzOT2V^W@C!|RyK?{Ys}S1|QkhS(50`#jr)LdoS8Dzv@m!bmR_WXt^}>F1{J`bRgJ zSM>Uv4YQ&HE&t{OO1AAtnSXmhjz4`dm^Q>4_@Ch|sk}jV6rr-D{`#e@(o9^PseIAx zX3k;RYG4s@T$q&de2P+!Jk>2c5_hl3TG!9_>}^PIthKL-Fz3nc*5uvUVr1~tOdxnA z)s=T5c(6B(qTvE4&A6@_{rXYTB$_Jg-1Dqe)q7|B9k8?W~0 zsyXmS2niBJm4$79X_d)oj1sUio(}~xhA>`c$dxoGcEekYOE-++mf*aKssY|PpEOiN z&F=R@aO1`!Wd{rv&U*pPpldg$cH^CpHoL`bR+{;_k&s{~x^>Aq3dGct_UpE_&qOYN zG_TII^TbSvf%MExcrnN~thY)%y64Moe`RIo!f-`f2L2UQJ8W>diOg>L0P#X+KL2K? zIyQQj0Y^3+L#Whbf}eU=FpZJWo%EM?U@*mDUk(ob^K^bak-Jsnl-}>bk+MF2)|jw- z-?%Pw1khw!NPc?6hL~jRWVhw-j}?Nw(&KJDZyP;nh-}fi`BgN|-hBBnf_zc+(i*U@ zbw53N(W?9RXJHO8mf4J3m^|WOH^a{TotK)Xp&2Bhn1`=_Dpe;E?6`Tcmb0G93548x z>C_BGlzzDrD@^eSg|dWOPvZ^*z5Z z+Xze>n!7k>WAYx;96Hd=IcnS~0Q!B-EZrT`#+C8(?QvQw&RA<+R~b<4g{Y8`AMXfL zmcn(Qe(!dcs4l_Wlr98Xv%+QWOeEl52n-j0_Xs#7{iRf$v5QjyZ7N2F*R@<%j+W-q zMYI??-%>fQFW|*hJ`gy*PH~AAn76iLyUHWe+oT*z^3uN5h-#D=66Ri^-oP76r5fZ7 z9#i#L|Cw%aqoJ3iP}*caUNj#dTeZhH_{`FKkxME(?dFHtNNkgR2DPL2Bu-=rXdvf6v1`l1E^gLQ&p z<8v9J9Aeo>7)gq^!jU1XuLo}WJv6*3BVXbX_X{`nRvj>SS3m9QkEn=c9P_oSA^=~7 zijAbo$x_m1)a{|M93H!^Y)!6*L}K0RIRjqi$EAYb&8jZ4!_v~o48EF8+Up#7{*-N) zqcy_Zpc6Yb9>2X@cnWIG4&yNmNyTnv{RDzq3X#R|sDV==Y^?G{**JNfioI6qWn;Ll z_=w3bwX?)KOUq$7!0%; zL!g7ufwwR&B1_RCGKASin)31MsRqW?)@=3#>L*#$gg{7@dKf~d;FKa{a)e9(T^tf~{{ zR1nBTFn~yA9)FDFy{JD*63UoYz1$h_I+4GRhG+X`5o3M3a}SxOu5f#YaY|lqp-RA( z5-WJwPaPals@#;U=c`I2O(8gvD8l4&oIN%i6CH$8kydhN(Ia84Qsg!gfA0uOL79zD z`pkXk=Z5|v6!-e3$Y(9_1m|2xA@Hn=yt5y1A2!xbs$ky>$1T`Cj3v7 zkd#t%AY}H=nNihe_{Hm7Vc3V;Z;hD<5VS_(Q{s#_BrA7+a zk^X5HE4bEd{9)2!BZN=}f~SR-w^?^LwZrZgU%@py%NrT4Ox=ckg^H^-Cm?&ha%QnI zSs9sfKbKYSAQz30VVLN z@ciTNIVD{ksY5CCPquv)gjR2_$MwGop1Yh~fW+UQ8DFq1Up8$wLEU@uueVS z?O@hoC-w-SYYV&f&-?N?V|jmBzMD9y=Vt{dO&T0C>VU(fG-u_^`epUEw*#M_^52=Z zq3e7%Z3Bq5R(E*=hs@K-l$-c_WClVR(?8tSM`wQBXL$g`h1X13>g0l#Q>sfM0A1_m z;sUIvpL5!6eO;=(+EB3hJGVEE1jAdN3YcCJGR0DOBd!#I>}2oXe`yCYajCq2|K7{X zOGBZ-)t1@V0BG|6!t>SjGL$P~TH*t|_XouwFv<;u=LbNH7Lc=dXXNuLyBEGL|BAVo zD{mRO)WHkqnF7m_5ll?m-|h3lhp0|q79>EV_D?=s_wZOUsX+^6l7e7Se}TQ-Tw%#p z%YmajQrHh~0^}C2+MbEOA;r!j7?F4JA!`2u6v=tiuqieZ2l(~i4LUtdNM?SaAQRKk zjg#anl*j(F-GbenyOL5aKukxqRo~;t8a|IXw!fQ{KKilO1Te+{vO$QESp?OjufrxB zUm2jV;T;A5cdD-H0ydhtODZ=Q-MS2tzflJw$cM~8(Mb7$(mRNa$W*SI&_(?IC+d(O z9ieQzrcZ$ZFpdI8a@7iTCf>S13Yvox`@B#!kw50 zY`Bd*oqI{hP2{qdB4+fLU}nwH?(}G$I2f+G>*s^&l%d-!*(blET5k=vTGhSZe!maM zOJ;YsH|#CvMtf(A6~;a3ATRV%%CxPdwrB<&(VKX`iCa0S*;l7?*kzw)Ns;z0@MWgDv}#q6kgFqQ0cb(bhLs4RboXUU zR)5ezCn5EzPLnI5(sUr6MU%j@?mW}{{!zSp$J2%mx9bL7@Tzl@xJfpox65yL`dap) z^v1jdNfF+cySLzVch_jFgey?&vgc&2Hv?o#@cO{@=19nmU8`l^(-9yY-bl%)Fsl{w zd!6nA8B-o0tBkrrfQMqytfZa7ad_>CDND=rMml@`C~CCq&aTgIEaPYaHe-1)P}SOy zU&?ajtM=Pi*L%-xV4$u}3rZz?A>ZXE?0tJcf*c6e83!UPqdDqgDD>v6^$t2T0XzYa zFvWGhi#^zi;kM_BOhM3(TwsotM(HjnLFa(kc8=8zu7A0bqJuEnIJ>=Vb$w(%b!V|t z1V4{+by zI@>nvggv<6aoQU-1P04f6)axmP3m7wX?Dcg>xwFYMW*y8b3u-pODhVZsmwIdq6|Ar zUbQ?SQa%2SZYHP2pCv`AH*9U8p{v@Veh2#{!89}%SuL-1^k=D!K;C~Sl1R>hwNo!I zftI168Hi_1;WC%EwM764X@EVRhDr3j4}uxeNoAq>>Bq7L3`J@pYHRxKL{)n??L;(= z2O34CP2tHxCN8Nh+^Yu*)XcS^*sGu$(3Ki|Y?Z=GP`sE*MOaUT z&-7P0(w1Z<@OHqSDv@xv04Q~1s2am<@7~=}> z;8Ke!i$M6EOd*js%I3Gbl2rk&PIT~ex1Dw9c!s8UF-gR3ndowj%go?C0l*ReStMj8 zq&T=L?*O>c+Uc1r&0DhY+^X_NoS;q zP84)p-W+(P#siG|4;lYCi4U`NsAse$HC+YMY?tr1jFAC7Mh6hC5eNimZ)0hurbJN> zmnE@!5YtEdSJ99HFy#D}d)A7QRR36q{9lW6|4Y^G|KtE{YG|YNXrTo%1`MZotcwjx zo@x3O04sMF0{pN{QS}`)UhnLYCU!4XD(Mxa{F}KN7g`VFJatj{$Tp|P8B&{ zc$H)=3#tflfH-WKDh6KQkH1_QJNkEmEF)btFVb)mFdcQ~>{RW-^1^siL>^%Az#mp0 zbS7cpi<<0iS4%VjK^0yQ=`WyN{%;lbe-AH+FYM`F@E0WY`%LzJV&$G$J7?;Fi#ZxK zA9jNGZrJ){h%frUts5Cm#qRo%f?|I)MW#p0lPt*uQ7b%lui1*KAq792brt0Sp6fMn z!Wd)`r^XbkA4bz~X2YIFcKByBq$qwUSgL~hBs1NYa&8Z7rAAb0kB8~<1qQJFueHsE z>s>tbIztafLp_~;q*We~C@=IMX6}km7W~zS&nenHl4+vX&ZvIYWtfLvIgR*KGq&2J z;l=+yl7q`MYT|f^lhk&-K-M;v`1n!rgfJQ(XlGy+O8Jaw&oYO2x|a4YT3|XzBNdg! z<1}R-9eJ}2!Acm!!K)@RF;bnkG}PRv8Xza+HVVwotF?LOA>(e?%PbWP`5MMUSs6NE z!%l#(E!#O6c=SCn`R8f{>sXM;xzGt$$ z#^uEbpyTzu?mdBKHf09dp``Nehx6pklmZwgom&s@`fb z4*I$Hl~Q!5J&eM5d-MqH;;#O!pBJ3d+f2q`~n@QGIsyJ^t0tu4LpT z@X}j4@Po;9aey4^+Mc1R;5UpPxI@l9YA?RbZT2p+j&_>q>N6h6`+Gk#hw*C9$&X)q zNCVHR-ecPX4+O~B@6J?V0@EAod@qKfVs?7|drQrFlg4&%P~$74KjE3$ka{tT=Ep6c z+@IT9=>`OVLhLNU1?Wx5;!1y2Z63+oabg3b0h?1ww`1XAsn65Qk-;VRTkG0(w(i~P z4dh%sbxsTAb;t#EHCJ%>WlfTi7E%uR=O;&Bzt{jA38l>a!wZ6C&y^4#{Us7BL+w%& z8!F&Bi#o9}2tS%7xm!=QwYxx}vjSXhBq{CdlXDNGZ`bojf`b?j+CGQIJdC%XqCs!S z_D;8O4rI*Wk2AaOV%ga9n_ih>&Sa!9aXz#=U7s64tO?M} z5LM)6+f?_|l>Zdg4=Ji;n~eSdDCR5($61iks_68p^niB*B}p%!o~4n9FJiTx2PP(~ ze%pa=>&LZLz+>ww3mIoGjvp0ut{mDgXe5f3)LZR1BKUU_>|QjP4L{ppo&ZE~K8$*; zphC$MgF;Q!`j+;+XdM-u^49Fi+`?Q&ZRQ_$zoMSI4W59Cufm$$CKnVY z2M{`IA7s+Cb${le-dE`g_v|)6;D5vgh7paU3RO6^iXXjVNoJ0Zk7Xgc!^;)- zYjx;(`QA4@rFq2FcKVBfQx^T`)B=mgEWQ(=?|Y$VfP9YSbtz zTNfFj<^lr5R;YZXBeYcduX2wO+U)U&9^Xl0Bt z^_mq{0p42tJ}AtCXMFphwDrf7OB6gs-QcjG2jm_TlafL=GUM2MRujl7be2LN)p(f( zKODSbZLu$d6g`F8v#}(msm7Jij2@=>#Wq|#(rnRo+H?2@PZf8QC6tjoLgmK?+vSh91U&Ua_klt+8`(+(v(zmzOOmawDZqC(WPc@+N^y( zqNNEGu&i57=tbu-Y!1!X7%pG7P*hS}0U50CxM&}}ef7}f&1BF)>jRV^-rd$b6_FZW zB-hPdF+GoYc--(!RX+qG<+yCRWpx~aRXS{Ack(>KaZ7jL2#}_MRc(6hmli=Ikf zaA>)cVI|7~;rYQvM=-#+FqiBI)Y@R$is<;}v)8c?f1IQyNnnVS03MiwWQnjwfkz&y z>o2Mr9EM}b@1C3E7ihP(fxb_J^b68@6Nix&>1lCHBUYBSy9IYX=1|S*pDl-YUIIO@ zd@@^41%_S&JCk^ko`EbtpEQj;}4F*y`R==p@k*Ds!a!KVCA8z_Kjr_WU1*cQ`n>GK;1(+%iC2-Iip_F z;kHRJ3GW+$*ALwo?~Px{+pu^&{o$IWB#uBQ;O~88(;&P*_6MQ4fN{5!A3d>LZVOx{ zf`Y`i4jmP|wJ1X!p zIql?~d8!jJ(MA$rf|%nmP35x)0tQt7zD~nhe8pmJjuOA#z2sFNX}ePQ z1wXXG@r|+ig63`l_$T?q8wHwWJFu6Jvhruo_1Fb2v244W5jkX$Jq)gO7w~Xtw3a9k zFiqUdtmvesX{^PS+_P)Ks(UKmIetF=QFS<<;^$ly^V~SQs?xehX!lHV_X5>ilWoyi zbxUL5B2rx6j_lQ_?FP!%~yDtD#|?s!?WT ztAWqrc6~&9I8q4F_XZESv}} z_S59ce8M}T19P4OMEsDA(6FhT6lr=C-uy)QkAcrH-CF~(CC`o54|2bZ#622HaIewq z!?yh7Lh+5~0jb$tj50j)&`ax(&kCjooUuH|8JR<~&Q|uKsi1zaifC|5&{dv&G9g*1 z8re?xZHF(=PY_->2bI)26JLihPYr*x#QYsVWk;4u-((?IVfwD2_WT>*od_8HAdLJy z$fi{VvX1M~g!FRv4Q#Dl3FlQ;cO5<5JuykGdhMp1pk4&rUMN?!)c*0!#)O&8j!s=! zqkN}J8(Q3XGom!9he>>=P@?Sc+zHZ)os@$3VE+yvGItCWtI<+3$Pum5YVG}AX0gZi z1sZ6Od;Ob4K@lRZs`Uzh%&rS$vZtVkY>hcc(Jo0(q4aWkshrk<{KOA_)`iEMWQ}8V{HE-<5FJx zA50|m_2($m_IV4G6UwE!voDwha_ay;*+*jr-xGNVdYV6h>z(qP70MYyVByGn&0Akz z<1~I5h~xoh7Uj0v_YqM6mX}2O_3&>OSWk{XX4O}>Aw^G)NS>|R7w^o!w?M;twQNev z839-{u+1&|r2r2Yvgvr|&q|9u_aB?w307`azfbHLNWBhTwQgV6QZ1@KzOwrB%)cex zn?$0cc?Q>M_D+qaXi5PAb=BXTi04`_QTbv1>4!w|q{rD1Do$5AKd9#dfJ02cBK~sl za!Hh0eOX*K+y@v;rGl?X;fTp8@l}LzfVVH#G~@L1h-vlcHsJgz0Mk4Z$E@7~j2i!i z9+iswFZAff6CxBnx+NXKMbc{sfGai^ExKt&^Z;s+?lv%3@tLY>8M&d*)L(;$gQb3v z;qv2@|0G7;dpe!UZss{QuaNi9+Fp)Y#`%==&q~Jah3|2^2p7Z+I4L63R~=vK>n7rw zWfqmb8K*R6(Et7zKz86t#mbRgTzQb2M{?#JDd0UwgkbYc`FbNf{$HU)+d*L{B>BH( zJN+ksrKzGR+7LW14hELS8fmf=(=IMP%=MwjK24kRW~T)xXCH?<=yw2unxTBcz@Cd$ z)79j}1*kkR=#Y4*iYm{GaA3#G!a`v2r`P?_WpyASJoLzBWKo~PcR0J+kD&eUsS&T} zMnxR0diaQ^gTe{_;loHgxhCm26?v(?CPY8zirvcj1-0T9`$t4f;KW(r?b*%7?S;TB zgt>Z4YF@875>s~Prc$fKl1hYm#ayVgKhg%3iRb|{oiY{&6P4}mxmqwUdam~4ohz$n z0MuM^&N99(!AC6^e#;keP&H1t2f*Vruj#9}wq4hz5eFqD&VO*>z644+JI(){{i6Bj zPV?asRjhLO$gO1tE+vK%Cxs>-zvC_Ij0*s8AOH5yVdAu2_EHilP!TBzIX5(x?~z7u zW1>2lP849TUfWDT2?0tG$Pib+D)aIdyN%DuEj8>K@Lo(_{KFJKg!UIme*Fu0|2ILW z_^oy@dZ%hDuWa(>^+mL}{MZaGl!-Sgsw>d1QE^7UcF#u+46b}y$Cl7JMDDkcIoGH| z;1h9}bB&-s@zZQ(G-$a_ z?4-Y|2*99jP*q2n-T-s(95=ZIz9BQ&%v(H>1z$O6%A0#wz4pfs<{2d7grzau{#l$C12zCJ{*i zQ<;g9Wdqk%opJgGH*rSaV5yxqp^)C;c(tfD_2TV*kR+W~(%#8#d5$<3tTlrJIX)pE zi%34yB%ApnIfQqz%f{-yrU8+0jKr~Q&MD>u+#apw#C@<+GO|SH zyQ&>zqz(nhu`ATz%cN5|LPJ!)vGgL}ge7&!OWaNT>3lV16(kI^QNSHk>OT5G3FwKK za?;>;DlbINHs}3A7^n)gnxroAO*&MdWty~C=!+E{zwO^gW^5Q#b|+mP3!_1z0nhb| zp6O#auDD3^r&aSqm^H17=e{mGo$fh@BDk10k|89MF>_Pd+F<-Dxy$(o7XS!wOA>}i z>5K1}c2eh0dB7^(3YP1PBN=UD2uhrZLb`6fe(WdfWfwP=LeKpvJzAx}y* z+P2-ep3aG1-i!Z4rClR8=#6mk6n-F2yRWHQJF}j>LB6LjM&_xoQn}=n^p%sfecB{; zfouNTSF*~XcIlcY{R@{5Fhc0%PDG>j>HR=OhkhMtSIs0Ab8n4gHX#|Y71B)JNrcX;X zJxR8^wOzX|fakHZ5k(HPUc_lWnjUyP8E4ruy}#Ys=gn6Kzf$_iG!Be3Vr{JNVO(HS=L-=FzQ%edzem$*+P@ojzvQMc8tU9 z^B@k^%d2o9bo|33@88U}>Sa3QHg?X}iNz>Piv1%;CZSZbivIW&f%(~c`gKxADjx4M zj}9VZaX}k~#cwz3O_B^AgpE^r4SKf;kaL#(SwEoh z(w}wxamHS7A}W_LGrRsXnGc|99PM58jf9VKfoCF4 zoGv-C3%DwKLU-ruW;OM6j}#Z{)H}z~H~2`12ayRyGvLY%p*zO9YYx#4H*2JB>2HCp z+u5qF%8j*TBxvrHl9q?0wpNEo1;?DDSScjuVm<(V_+^kkl>g2fiQ9p?LSv9I!;pS_ z#?rsAslC-Oj4Q`hX3cI73JgM8Rf(1M*c`m;yT{v5)W9Zgwt&3;V|j;vUr@{MW!N1B z8izqVo9>H!a|H(;bY5=t1~zptxY0&((wVY3)>S-~`AN@`+s>?aV3v;O^Sh@+rn#6vTGt{c2sl!T(*JV#oH@Gy&IBQ$oF z(k~a?fZ@tE-`)iROi7AZ1txI->J z{M`Gy8~O!M&#E4-+vJmYdBwa7OQ36@Csr<1sdn{tDWql!Ir)|i`*yKNl3UZtzv1lN zWO%>4ngW3+32g@e=|k(wU>sIIn<9Q;`@lt&Ec%a(TV?*5>{*f3q*^CtF2l6{4N4`? zx5jb4D)EwVIVkRJ4JwUee?1umMFS@Yxi_pN+&#hvGLpp+DfB}_#jIfmrV-n zGFn=SMZNzM;O*m1fren{fdHLa!b*;B5@42n9rFN(eo9I3Cqj6Pi4ye$aP6Q}?OTCANKLtAd+VvyA zcY8IHzJY_DZ?4y;%O!ql=YA+~HeP4uR&)36%f998laAGb#RKa|CkI!fl2R+IPqVu9 zwx4K9yUW&XiGpfg6`$@taXXO#RXWz~{OlO#3G(v$v{zfQFnYP2yofcGm&3Da>uzfA zc9oog>Y*qg%PM+ob3GzIdd4>YxnhWD{X_q}U&I5RCMai4Ew;vLyv_mg^BBP4@V4o? zq2Zykx<3llC*Z64ej+Md+rx&rov4!0o1a}9pLzjoYxhE=E0Hnch-zA}X=GH`&Kvs@ z?DI$$eK)=mBiY>cQz<8hh+m)mQJt{TT1}6vrR#qH*wO5(4CszVJF`~RMHv|@b}kfz4a&gadDE)BolbC?? zh&gpH0h9kpIinUDTp{9gk=A&rzsW5AFN*yw4mqcz`41$EQS&b(`^ws`isZV_Ddy+l zmEq)+Jpc-jcmR4j6KC+27yTi^V!?KEEs{z}{DVsN3oG|x$Nl4g57;*iUf1^n?p-#a z;w@8q*_zFJ5URlby$rY)2-wjF*znHau~#qszq$5#;DECSSi!{urv7&>Z@fY>eQ#)#IGzh)} zC)V?!LiH8`_(*KjN9C3ox2?(c9-l>vwrSZCZAPya9Q`~BaU_q8vFWZkaCNjZQZyb!is>TnSi(=jhsqzGtdISmS zVp{9t&XujbI37thuDZEj)fQJ7tr;D!f*vZCXXWN59=iTxm+CfXmoioFf+U<6r{j5j zIwTP0TnX<>0zU8)9_be#pU%KXy%6BF1T z5l`=d4@ihJ_B=(`y(!k4LpGB^e;uM!DNV|+17V&QNaLeT_f-&d@2*Lozq1|9ci|%J z@ha?H+VFWqp;^mJUPK4H(V|tmBSMw zO$@$A;rRlzPCg!N77N_msXV$T7-f|&-mD+;+fdaQMcgfQ!)7e-a9-?rz3X*LwhHIf z5EgWC#!h)xtTSRWb+=_w+*ED98`tzO&g|vUSGw<@;{KQgG>^@`X88Ns?uf#)8=9GO z_Pgh4BgJf9z(#pk*LgUfDy?<9Y`i;7ecVHI-^t7QvqK0TEt{8TmCtw2BfwXCZT<+$ zGY}k^LoA(IhX4qAur_UqMiN81LjsEn_zx<+-a?*&3;WSn5xZ0XQ8CPyx@!+eHCSg1rrPl6|Y&h^8&F z7KNj`zNV|XxMT>Q;JbxU+E zK;fpo#9Mab-Z@745=WixZ-k<;4|*WTvRTmy)VLhZZej&EjixaZKbVImo5=8&PPO1Z z2FR20CO$#~M2sGNhF2$gSbgX{WB!+EX<2`V>zKm3A%uUv=fTVN$0Zfge>bn&7*%RE$?TnF5lV{Aobs7*9=XdR0z-V%FA-CNeT%jJzIFaV@r?cNkWs8y5D5IU z5cHtzSpHoSdLaInvzDmW)0LdT-XuN!sgHO23bM;E74R4kU|tD$T-GgyRK0|c9Ok{g zI_5Zzg%FBN7U<9bpw*}giqfeap^xDjsYRaeUmW$L)%*XKv#T9TS-$)E*2lBeoRkNq zV{+f>yq!jNA(V=*QD2HSXRKwF;1M)nsgU(z2q4~J^IMP&p9rt0kV6IycZd(v9!e9C zc5??5FU0;9$?hI-GkVlP7w8OQ$)V}OP#*WN^iBNvh;JJ7QH?i9CZzQXiIURL(QhIx z!_!PNLet)a8)=7P6_U5CLNyWvJGd8ngozvPVQHEs2&JHet2M-1cU_CFQFE*Vx0x|Z zdC0!yd(_j36c}4;?Y*^FK~#Bb5S2ul=QbAH%?Jq}DRneH+nB_vbM28z#!-AEa6fgq zdXsLnRIR_0`Jr$kcO36LZNs@Q%HoX3L#dFbN6V`}3r`{z?GowrhbMIr+PlF^2?9`g+zikrZXl~d{kT5ezgP}? zX%)odUa8}ei>r<@X$w(i1Q}rVCwpMXQRFjjJWbz)xQy^98*c`=2 zKa!9^wwE7gbLS=gAbXGp8wB6nDVMy5@N15eS2U#%sx9((JIS^X00^?9ii!5WR8Iu% zPAA4BDaBSLB{@+4+^w02W(K^u{A%YIQS(V^UkbQXZuA;=_1*st#lNpFR9?Y!)p!4_ z@8yI=aBiY-lzTf@ElXlfurc%D%eD4=%g7Jm<$Q{F0hWna!>?H)cm^xNcCCth>vNDr z$6!8R3%(^=)yN?ES|!_L_a|AgXi=^!KiIFuP0Lp|G4$gAU^f;;q6`b^qYPWAC_eT> zX?`-4KKrgf>$5X6q|jOr34*lsCdPrgXOyM!=}q@WJ84eCPNulxV0@PbT(0dAJ1=~h zp4hwq{qV+=OfrE(AO$y|HS~MVhC8vAxc9yZCwx7aX@u4C`Zu4_k{%0>8Ac469o%ch zb7bP71pd4Qg?Xf5x3hklHR2p9)z}NnfGz57F28^yO&7$I%QoEKV32SU->#^Wzb;t& z$`zlL+KOOn`zIOxSWaWouHUjL(@UWG)S_n~1^-g()=n65mN$D(F~Eo~7pC zvsul|*fb%vbhv_|$YkK$kA>E;Lz~b|BMgA2?#O;3X-PY(a*7_x653TGm$`*Bznab#)Fqg@=_b#ta#_8c5`B zil-jkq66wE{a=YL4Rj{>-HZeMk#z-ec+(5*+3|NFZG!k z)eJQ`&@1E$BPoe@1Wj7#;W+&A)wXMq9A?d`u*Y#b>40-lz}Nlu;8&EIW@Arm9RY=vry;1M^e|ZX6G$zYJ6As3{u1jGl%7Ht*lZ!| zjps7T%P$!NPJbv=bCS^h-8`b4jMo|XDWmVQ(w;iy7$Yi8zXFuo+69BHS|=droHR42 z>VGWrjlLsCENmBwrpKTaL&4B)f@}BcyTWG|GRE?@&d0qjZD;-6hDlr0upL$nu0$Br zz9m)1$}_yCgfw;scIHH>G5edR)e}5cnAUrAmT#r3UARp>*mQJL4`JfVxXO}wl=5pY zO?WI62z=hWU;hLZjVWuUBrZ&p%169(x0c}j_Jppx#z+GkO|3flyKdad{lY5Ou$#;t zQhk%vADa~eq}H@1td{%Ut^R3;{=H~yyI;d)le^eyadv$8BJFxu zJSul?o13&b=yQ&E6G1%Tbc3kQ+o|nQYE68(ARi`~;cuvKhkISyb_vU`pa}QCi5$y003p8hIaLOEB{IvQvf=u{n*C3OLAIhzXZ@6$owS<0 zd%fgktNWk{_O(gx5iq-ROWb`E<4rM8xGw!gesZ`V9u{%BIlfqqf88i8`steFQ#;He zUId>1)M0xqW&lcQBC<~%=PURS0^zZUU*a+{1yqkQK2A7MV9F_2T@20w&}1Tjcumj; z@a9Q))8yA-Lt&2oj4gVo-4Z|EkCCp3Qe2z9mD;PSS@>Fk`tjBhA{4t5*_Y*MaSQ%h zFPjf0%y=vA(4yjyYe$Ozr=GxY>$fY59cy~!3&%XaqcS-h_$Cu=v#+{)ywI0YseLKl zxSz8d&M))tpe-%diSCgWbX3qo#EJU-N?BgLh9oY%=OPcp$|R0lqe}bqQWM7wyrEOU*y1W)? zTorKN?1>JPY(p|~l7q`)43%AuFiBRTe!cb5vJEk7*C4pEEgVbKhV0!NZtg}uY9aFq zA~>{GoV|ON=5v2Rvd~=W_hM0n{T@QK=R;oV_n$fmAkd@dMNnoG0iXo$4HY?1Vaj96 zc)pH=-kmIMJ#G9}-sQC_A&)~IHJM5Vv{J3i$OHur05oep>bhNVeEc$&$)vaO8G5h< zYns*0b?6PB;G9-JqCd8!Xu>P7EcP7|Xz3Y6j89S2*zH8RS-<^({57)jbFpdT-Bni> zv8Qv&!>z!hiPoo2zjpJ%CSqaXF-+8`jk=XEd0b4K)>Rt-1WVI|*#`M2+$F=hExxUJ zfBzH`>3(!XkxPq9Rc&98ztDAVNLWBEv}-x5^MJ-IRyFg;Lj2LJuixExaiO8=vmDqJ zMDi#HR|>Iusk2#T=WLa!Nu4(W(N`|gs zQ53ij^~6)JAml9;HYhFuhSM#FnegAleYeNKC+J5uV;|@6E34ZIG}+OAPjrUny4~A( zf{!PmgnZB=zS4#^G&w$Q@8}58{CGu-;E1l5OSoUcGn&N>$UEq>;ds9v{3scwA2PAK zbWAlxi_2`i9SEy;&R;|=6rM{?$Jr2~JQLfbR?qfu2tl5c`E;26u9F{=r>5?yRaJM0 za6X6(dKh)Lx3}PY#3JOgf*Egfse=ZXg5yqck-YEr*4ZZ^I17z{@7#wsGzUL5eT2r7 zg@Y@}Ct0bY-MYm~NNl4AucxA^u!?4K=2K(95J;z`3VoX0SGE(1nm_ZWY?}`El<0G! z39`zGUu$~V{Ru3;@sGXC=2Y2Z(PD=LG8@vxV0h);D$*rlspEvv9 zOLgCH=y7;H8JsyfaMqQWxKmU_bmZQPaEMNwLddsGKJd#UF+L|%=pa#=h_A!oD13b_ zS5A4g#5*xI+FZfM5($ADMPxl^HG+LqHnC&{pqJ zm#^W&AG)I5oPmLCSMF??5#?Q}G=++F^_{m=z(z-Tsk_es(a$J0h6;07zt=|+B6$}! zM4jw8NxcW@G{@! z*|(t1st+?GLSrHBP2P*WReJjzcxg5}b)TkDjm$DGNuF)|)#~58D!|e>Eu_!~n`1Pu z$6F+?yVcYb=arzQ>mNJwA7yola&W5kdq7F)2;PJ)n!b#M#bSXajvbouHbZE zwynFO%+LSQXTe2SZHJKiCD)2dq&-juaCe|@2HLjWhWKBP)@LaH^oL>dE)#>ymLoq( z%@GFU4LWH2R_=#Kee*d52K>9}MQq5~O3Q(M_l=X7{KjASaCRK8M4V@qX)whg0{xWK zDA2ptDh`l=C2JbJmN~K*E@PPh3z;$6nZz~66j-jDq>XDMp&~#xi!;trC@C=`Q?oTn zb$gm^3d(G}?fM9R0xI9rb!z}a8tK)Ka*3CxexmaT1>`p}jR~jZNwL(M)t}%*@F{ET zK9y*tj*DGux!;q&yo$D6>()s1^8ArPos~riG8}dG&Y4v&+Y2)i0uoj<#kQY}y*m#Yr!iX;d@F=I2NTrDl#B|DJ8&(S-n_TeBthbLO3ETwu%b9H{BtllW(tS^%Y%f8Y$8WvQUTCAQ?h<+z zZfzt()ah{08Ky`x^{dwJeo_r1rw69n=r~mEyKK$oLjQ!#I2iSqOWH-_z9fbmbx{eD zmo(xnjj9&;@5J$%suvK9M2hg%yQg+>4o4B*Xlxjcc51#lAt+mc)Y39ai>JrJUmQ&c zFX(*z4mPcV7h$z}{C6Nu6D{0WW>Z}K7;1o&M87hvxYHB?e@kB8qT5N&;ZeAspZq|LN{&svT1Gk@k%WCO z4n+y~Q^$d4k-P8Yl}7Gk#^6BqSY$fvFaHIetv~HJGq+iUXS;S63vC-crOO`nY7ty< zf~`3p2KV6`v+6EYzVYOG5B)^)%T9tFd3o&Mrt2>06i^VFQ1Ci}EgMY!b&4w9Qq!^R z1F~!(uu5{K=cf|6mit$%v*iod@n#-N|A>q{Nj~&vRbr@A3b!E=J$cW-qfRABe2W8E zPknKz)7{{<-o%X(A`%V(qgnA&G_PO49K(WWv9h;$yiMgJq|p%lq&f;-6ATPB9TTBp zWEB{|;wR^82r+b99l>-S>|1{ zm#p9`|HVpf5e>$AobH5R5L}F)zdCnp6<(j>8_K}Km$;Y>jJh@v$R{9vyt~*B`UvxR z#4*|@)lZ$3nu@UD^YoG*wdc~PPr-W(JK-<3Ov{gVhi~~~D}O&9a${3>ckb|6&I%SZ zv^j)s-s3-mYPpU0x!;PeJA8~dt;6T;$4#nvXt~I|V#Mjjr>Uu;r_z}lWNTZyqV};?Po+x+#(|&1l|n<5nhf9Zr~t`&TM#3-oj@*aYWA6a z5elF3`@e-@tdp}K2ui!A`~EqFTV%GRbw9XRWLB>mQGujwT# zBcDqmo;Z8Dt3cjUwah7wMw&I!Q6{I%QuUPnhC-QWbHMA7jBsto9Q_aKxm|N9@6n|( z+eO{VIO!5#x<6_=JzGR?^7{_$MJ>*HY>Oiu5t*r=={MKpw^fa4&J~q;TfM}kY{1?} zMlK)eB=I`pkMw}8STqX<9~nb>UKLgoZPg`OGu`=0(?s z!mPG?#{cjaobBQ6jnK|~!jf3pg~bgbmHRWB6xUuyB5-W-78NPiOuU92Ysx95nmMn; zwi-?Qw=Cvq|EJ6oL*Q&5dr5BxQxR=*AH#V)AuB>H&vx++#00#fggC&_|Aq*75ih63 zrnUb3%sNf?c(fhw!#endrTSV8s#4|5=up+w&srHQ- zK~?M~B2d2(FBmSTdDpi1_|QuHc$Gs9R(7k0jpA(t*a&ytQQA0Kh0hm?Vl#SRVX)-oK;y*y_94%xAk+I3&;{En6}=8oBszp~cOc z?uLFA%k%pdj|L%Cqf(W_8=~Ll19>H#*4y2{Mz$8=6VZC^FHQ~M;)mib4~d#q@rvP{ zwdSTo(bF<1JOzy6Rfxq&$VB!6JVlYL%FH0^y7NQ8nfT>E!RWot82Y-%zs) z#UhJwB37noEeKF0!&%!j##ZE9ecw3fZk2ocIYXGQM1()g_Mi4a7WVEUS9Vk)*2uro z@isKqPyIm@oRHD#z%wX*@9S=O^vFO$;x@TZ~z?ZQ<=;`00O}oPZTxY9=1({el4C zpN*QGvqB9fl}@>lOsqoT>J4|ZDoXSmzBV70WCTXJ!qo9%G}2XGT2VZ@`WTs(D;fLm z>XI@U6%tq@GqCW#Qp|c=+g#YD6Ct86!LV<6z?igx+Itu!QNCS~nd?KB=Hytb-)p#S z@CXT@*0EUO^lM&5nVhao9W}yAph9ScZ{-9mFp%zJ4bY7+p_#c;N{NeK4?4BR8-R$Q zn{%l1b@i^uA*%hiWsPFvK7yD@!5#?ZE-B>%_-cbljTq+Am*A4|MU{C4J_!tmwN@L< zEy7_6xG@S7TfqB^kb;b#X>SAR*Ze#e3@0wk@>|`s2Avt9!)g@00*t5tN#v)Lfe2q` zEymN@1ge!C7UT7b%;f0!Ze ztzTVjR$0mVtE&fBW*}F~UX#AT&r!HKgbraA>Z!4*WeyUnmkBC<-%Asl;tZzXbJ?we zyZ5Fb394;ktYoN2#i$ski+0_7WjPYt7UFu6F?;Cg#J=Xc6;+vUki)c$CPl*jE~n&9 zgQ{W_+cyb6?KTp1FFGEq68kBKxfPTYrvH{8Fitcf|LS!sQ2&eQ@xKWn|9@T+O5d_n z3sDq@Q&KEE#iTBDtENY1r<@(kCxA+$y+=I= zCCf%(0qogdA6Lp!gOKQV?P2sk#!e_p&Uumqs3S-?<{;y)zE+C#?1(qRh8cUn{j-wBnx%p?->hA>A z)K${Ig>XJkV?hsd{mH+)0OaYODQ~|1i#0lq5>!&JT=#5BvC$)A`V*6vP^TD2bu*}K z)H<+PY&f}%XmJxE*eGNFt&*w+)J@oOF0c4PM$-3bFu^Kgf1R9BZ-xAki_S#vcKP?x+q;o^X@CwQrWwKd298_GQ2!qT)?~94-$yqby`SV zet~{&VVMCPa9TJYhC&oidZ%S9-7}SLA{87`Nk&d{_#t^fNiKXvw%LOc}=; zk4xc6iEYG*y}uXUlW^U@gVY`cA^rJpxFaKER_)K$#YtMRou!(q8+@kEdxmVR2zYCIzRmL`_a(XJ;@4j`@gT{2?3gCl+b#FoD*%8lFD^R zsH%QBV+>eJU2OBct>~GCb1N4C{^1#0qo7A;KS&$EJRU189%)qh){q2;l!=jr_wZ=; z5Ta5t0L^n(klrshvR%(UY9RrDYhUt=2THWRrCCO4=oZg=2IA&^&Fi0Zd1F{-E>@;} zFM{N3p6A1#8N8W+p`pd}Tw>EVd(A;TJ#IRlJuwt4jkjl6Yk~B9Zm@3g^th_UYUJ%} zdwvax1gxrj6%~~Dbbmweh^q9?d#-`U?l46|vd-zSuczndf+ix2#02%}U727$Vy8;C z#867hShi9c#Q+us)9^Tq{XPV6Arc@wxW4c{reWH~>sw(~P->qw!;J3>6hKf@RV|19 zgRPgZP{w%L^7j9-P~ApRknJKl_?z z(+3;DAkTz!czg^62?*Xo;EFsxk4l-0c)?}n8<47sirUCjm;rQ8+#l~5Z=n|BN^pvx zm1j($Phfv#8mOk75f_Tg3dL~V$3G`+8I!oM+h4vJenpaOW){#@dQh$x5&XMQF<>bE zQv-xR0}LZK2v5O`W?>S00gZs31cs-@D~v%ju?lM)f!@<>$D*~tTPcLePa^(HWm(L| zTIUTLq&DG=Jf--^9>n6PM17@6F6S3q-km<*pr!{8O$6xq4UeN5ZGOJvTDZIj@`lN( z(&71uKI|n>pG#zhrgHLAViPS*$d^n4Dhw^}+C;~VcK+JT@$UX{Q_mieY$C#%)u!47 z8(*T=Xb=seJmg(p6kOYKieJ~s7;ny3H)rNBZC=fWJ&6a88@H}E$w}f!+N?d{h-7dl zvImHdy@Ij?vEfAW=;p%66d2`e%QC8snM!Dfvy_4LlTL>75oZ@q8Q#ZAPng5X%1VOxx&>=A-ST69YIf9*(LSh@185fF21VI?rxD@lWb!v!MUxaoqaVso z&R+t+6tvr~YchyO=v;+W4H?wV?jl9C_mojL3T&m4w)-xx1%2XBsRVwJTh zQtAxTPuYnH3GoNLL_{_Ap#RM^S3PRy=nWAby!nT0&d{9{W%bDUWJpy1PwzGNUPgI@ zDdHQ72p*8YFs_$aYQFxu(kOz2H#Hln|D^lRw-3<>g3RkOJOua9i|V=zi_k#0mL3CK zlXAtGG#M~@kGbIDdp2*b0m1H}Q}Ql^$?Sx~B@U~^elZ>xR=1WpS;yh3dkYDurpaiV z?nzrUIWA3;b}BnnZ!WQp?0dt02f{@I%j$B4-gHd)Je8f6@J>UDOE-HrHb6LH>H`Cs zU+mBtS*xDE0dDtnkCuz;A3^|7cJ*XCmB$2ixk1!}8r`h6;HBq?MGar@lscXoHW@5D z%J&e9nWq0EjsysfSK`2gr_jRy@;|@yT+I03`Oi_gqx&|~TzgT@8VMxAx&W`gb zhK}*=KDNj;x2I$jVhexcyT?5QkVc;QN%d8brbPbpz1eeb2nr=sI2ULW98h2_{)9Do zKDJ@3z(=S6A}ojOVcHo`)WO391fK*VBLD)+twWSpVh3weaEaAZ1;~mfqr2D`F^ou?i&umeS1Hkq*&yt~z4YQ!R&oQ<9*6;69g#-q%58$t51sAJ3 zzX{aoCU18)TWFyn_}c=r&iEZ(QJ{6`UM)y^-Dbo+U;_`%o2g$#1rRD>8_B-lD*Q{% zvGDo;QsW(WW+Ac|7s6XIY_2Z3Aik8w$U_yBjVD~I!F6;yAwUk+;c=wbfRF*a&qD6r zyn^}pHfI8IRk(xI*;&q`slU0E$n23DZ6b=7*v98A0p>Yp~vR`tL7H+6fYWMfZ| zKb@t0Xh(nbxTYsH75)M~6KFYD6Jp2M6}5u$ww$drHs-gx?p4wmw;V_P#x7yI`A4^o zKR?2D*Kz{g!=xK#a9%g1CWkQe^6B7HR+nc0Z$hg29G;_r{y#^g{8^ zn`Ys5y=Eyo*lUP@a`_Az?W|~>d4@i>bjh*EMp4NTQ3fo zKtkwF$I9R@UyZumS|3`1%gKTBmt#&#eDVzh0BwL8fL+Q@o88pyLf?=K)8f>*rVk?D z*t7hg!^`^aFkC>z<2EFyFhtkPYP_CPhTqMcHr7$6L0R`7b$Gz}m=E&Xw@xd?`T41T#l>JC&jOmpbz)FyJiA1BakQjvyaN{N*wQ3khJ+3K{tK4sr5MpoEU*a78eh;J4jfQ$M|TeO=#U~7W&_-;I8YT|o@G|4 zfJ7NZwmHGn{oGcEzVT*AlM3&h0ixfQeU5mns8-4&C!u|w=y905*N+Yh!!Q?i-EeV=K9T^yZS9_+WYjH%Je?F9%Hn56?MpfIuEwuYv$IyFPv zP#S{6!VdXKZVIlHkN|>MLu=T`^&s<;+{h;_c0jk{@&kE~)M%>Y(aJx%J?VNq7o zl{8m8)%5Jg9lHBPso%C9c#h+*-9%#Muj}>{wCgOtfn-5-49hdhJ8_gBwn&ItSKJi? zrMZ+_dB#c*?uF=RGL_-=-HoR(@B&AlYDrW*O(nbs`Zw}-`j=KjID z5KAHWLs|^)eD1ZhEic<^qb!r5B{R$+uE_DJwbIvs9K}#<*z}&Y9au9UM$SYBO^7C! z+~uMxEi}%)(<>PlyR*I=hl52^6(vi`dBMqHuijt2^iuWa1OG>2RZd8=(b;095>%EB zPA+sJ1MU9_O0||)(a#hR%SKdHE-Jys@l8lbM57sd@&VJQpKAbM$Fbw*&d*NVV8{~9 z(nAO~M4VM6-6!!X6c2pxZ+^%~e#6VfxN%56h46S{DMl2_@)5in25MYvEu4w9lwYFx zb7*Yj)`PrB3Ab@s?_K>15+q`n88odq`+aX4eGZ^x-*BH;3Wq>IHwkFk#Nb`fsvSJC zTNkJCxLfu)f$Bs6y5794+g4MlmfhB5?MeEXYYvw}h_^ffHnw!#Q?Xj8-QOZ2C@A2NwdsuWo2W-Pin#BBY_CAi=}<7(`Xd2VG~aa1g7H~x%GPbdUx*9; za!lfZJv=_W{sZ=sP^osIyyE#pg8_>rm3AFd1Ng+tt6MIpLS!$Wv zBN-uYxL5yTLn3BHf}r*Bjo7EDOh;V4~gNF*s%d$2sqKR5$c3`0T>GxCOU!SE#v9&?Q#n zd#8@f&5Gq_OkmowL$SVf3Gdr#j|_i7Q!PyG0F20h1k$6=FH|Z%7GW>7JCQ+)-pQ;^ ztTiZg+G17kI;EX3Z8I$$kxoRcBFAzsS_tIw1!Jl(>L;cGEycWYVx`}hG_p8pqHS=9y{E|oVjWkZ?J(nRD(ls?d5vh zT74mF7s(1SkqJ0L$H^bed_*cC}9H1ctlNW2?}^>r=C!`H*|BQ zGitNLqRy2-+uc#k3e`5!%9m4&Or*I!jvwt9{CG!JFK#-|1mpDly(fjmuxmfpFRtI! zQ5_b>#ieId*a+48Vgs!j#>oOvpfr8UjZA9hzr4)%YOAZBEu)ywV7og63QU0=dVYwr z3^TX!FP+-9BuAd?<^-HSOGmVUZT#5V1^$+V9OeKwZ3F#E>{ns?oO5osNxO(DAatq2 z)F8fqoa7!-sFC0z;2A*;nbjpKHq_&l$_|q}+$tf#4OU737`2CPOklcES zZ{t&>-*?|wu2SPco~?uvw8@mPRX-pq+V%BRXJllbK9^{4mJ+a5tFI^YV zixUmPlXAf4k3pfZypsY)sxCF7?)Os}|JL=ju}U@*Y$K2MUW`RTNH^7!6eANI;5+;a zvJYLt53KyTBhH@Rc74T}4)<^Ho-X0v2H)k%+A4FOCoyDYto)W*J7x$MZ-7g8IQ&AfdG6f&9?eku{ec?8P0DG#7bYRpD+;1Qt zs}AD6JgeBgRF{#{*)~3&6#V<>+mXP0`$a+5UgrkuK%0}PG^Z)^Yy22+F748k^G4;z zKFdWPW}WDfy+AC8*6>m z{CpA{U&k^Jo3jr0;9}3b^%I(2%SuW;AlMY*d5;gqQuAuW2USNSDa_E>BZyau3W+h^`ny8vZ9P$Nqe)nYaOBz3S63 z24KY6RzLF!y64X%IP(F)JN(61T`Cm%KLwDa$3yM9vUHO6>>AoACusP*;F9*}4`56g zS<09aEd__j4a|d)-lE`wNgd?sox)B5?%K>*5bjEsiAVp_WmSl z(ykgsaQnFE^7j`-uw1P2{p~r#ziZ%Lk!G)3zOCm;GxJBkLMW_&Xa@ViURL96S>|rF z+HOs&7wy7FU+Z7TGY{~*`T`X#g5lOQ78ie5E3ED7n@zPzxjTO;fIym6ET-2L;nB0y`ob9CjCm;=6 zVBg++BtMDE5wJ}WPrVrp`9F<6(#b`?SzHOLJS^S-Wx^V%AnkGb^@dt zm~?9J{CA8AN1VQDF3q8AOq+wgnNzY1F11@Nq(**yzagk@aPpne%S>w>qIWcwtc z)j)b<9W5*`-#NKM2qM}k@VVv|tz#1btrpy5I=H5G-6!ug5?{k@{U~ormBrTrfLP0I zKr`5PR?6Y2%Pq?56EZl+ULOf=3=85Xvw_7B9}>{*H<=x(Hh;5Q-*(m>m>M#%`ISL5 zl$b^P)WFPc-_cOErNI(QWb}xV}DViv%%Ug$!^UDH5>z!!3z@48V| zN|83{n@*zi)fe~^Tt26hd0epND8p_3vT9;2{f*ABUzmuKliT_8(<|ivvjr%Sd=a6R zl=%35gqXhuJu>$$ws%SYCcSDdZ+=oxydK3N6DAzqM(K>wIG@ZT2G_tL`-4i#Dzafh zi{QxDJ{&@gnbvsu-$OH0apeQ7Z|87Z8pSZ4sL$&`mri-am|&l-j-J_Ug%K2 z+a~a_H)^=BYJcN`tY$hXNUl_tI;rKdD*-lK{r&y>v+HxrQtw;zoJyF}z+PHqe+3_!bTSS8?NsmZM9A9)w_*h1s2)f#U)t5H~O(tNe z?PTk0)xD#fs8-AQ?M{P7^(DLFJ|~BqP5;or>Ox0Xm(xqdd48Pb>|iaYqpzuA1Sq4N zCAT$lR^?>q0<6SC{Lpe6dL^7*oQxaO^S#QZ{R3Ake!1GapZ^2-Z*Wa!9hulj4@$B) zrO{ir3m!Fb@NMBwsJLDrUkIw7TZ@Zg9(qu5`@D#y_0TW+cIFNTJkfI|U2$Ac^Upm6 ze@`+l6F-0Bt#@F}`b7zapNS9=%i)Xq4Z;Sj7OOaP$xRH}kx0>)f)5fBX0X?UiJDfP zf<%0-FXtGu{u+3ubfRN+$4c^*g=C@sI)f&Qf>$`!AwN_0g9_sCuX;^GwD+U4msaYPjIdEj@Lmy|`2M7Ve%2k)jc#|ir)d$F*_mCc z+KMw>#GV3Gf(TVETh$$3F&YOM+*Q8*OY)>3Z2iq7qKiG&$)0ME`R`tVvimW8C+@GP z$~)Ov&`AY$IU(9U+GH-3?gYvm;FX{SW(#nmbH4cH_|j0|jokrtX}n1b*LkMZ8q~Q@ z+`#wf9Fqr%tPs{p7`&tQ(fh#Y1<%42OMLv&1x zeKbUghM&38ndP-XEF7JrP3x&23e|k4QO`jXXXo?^Wn3KeDECIOvM4!930@YoT7DXcp8a2e)ieXP$K-`Zf{TJpD zzu9&YH?@X1^awukyRboj9rf!&EeP-%|L#1SCMl@0L-;E}?PC4;#}5?=^=CF6bS%^4 zt{%fjdM~kj0I!@S@<9_)NAq&xi=*)mhke4`i9u6>NJJ)$o11!n{`+$K=fuJ3_4rVhqc3#m7mY?C385*5`R6h=%1&4UmIFgd76%}KN)CXci(~@ z!0q+6Z{D6Z1ES31q8CXl2u4n!!}c}WQPmRo1HF?90HCX3fA3D@BRllnHFxMAgs*&w zmCx)MajNcyMOclGY_I#5bvN1jMJRd_*O-X%@ncyDxBB(*t(E)T13q!nV$+HIbapc> zS&-)q;ef7(K+Eh$&Nk;FuM%xG)#4gns{UOT!!NW3@c#Te06f%pwrn);r`}W!C9$Hh zFvaCNCjFQ?J{RYP^YT0l>=DOoIbpxI!EStghLwMd%I3uNA}UH4G5w5&GOWj63v|z_ zdVTt!`qFv+11Mzv5AyzCw-7X%vLuGI9f)C-73E^!Y|&ND9rC!v%!+FNV-X*m{g*|2 z-$djiUs9DMuvF&k!sBUQYhV+gq2{S$YK{x64vw75Nx7wb?}yU=w@18(ZiZ66G))YO zBr1zrip{Z5v$K)`!+&$ko?uvIoA5v{Kpeyk0|8r2aiZBv-A}~QLu;k2?qg`1^)0~@ z&8_1lC@N+pknL=-#kP4<7f%D<&3L#>B>U{%GL!mX>-OPSjPPj1dNHBUH`$j#mhC4j zrq{^oWCR~LW0w<>=VEfky9!61@w|SKz$Kx>oB@AmM(CU7YW*8Bke6XW70a(|pz%J_ zr1f4u^4vCnA|~!zTO+{qF|j29iOdShy$;$c6o$$kgMbCSVyyORDd-?n@#3nQkNJvb zd1h5Ky^mQZkZH{lFgeIBlxok2eS`Y{3u3Q@{1;+xV2k`FzrV`6aLv80=!io|D*<(n zsDKR&H?@Bk%X?idx5&It6E(->Fs=QAc^m?eyCNy6FRTQBGwq{Wv4*SP232KP-Zl-% zuo=Lam8H2)L{0E1f6>b%{=Q=28Vmoydnfa|x!)$wb+nY^U1iMS0J<&*@76z+ zoPa^ZmJLSeeZ?hX$P?YoYv)5wEBn+*9K6Yxcp3qcFEx2Ye2SB{NN9i_doo%< zaLf|v+u9QXfW_^5EYq*s84aZGm~b4)^~3OgDdDaa7cBw4GvlCanC}B>l;5sfG6t}XwA+5FH!y#E1D+i|j=2np>(RJ~E|J=6;$Lo@m1UmkdZ z%UFGjStV<2FGv>>k%8}AnNuG}r!YqA{$N|ySbt?ra-LRn4;)XRB2O|ti>U1PGd@AzpzQxxY%C0IbsPQ{ z1fJ%7&%pDlW1TF&v|nexrxgk)&PEFQ2cqet9=F(GZ2VjgPOmVUU8&hYIyo1@~?>ck~`~(tO^*?`W!K!XeYdG>hb3}NG^a5 z1*#MS=KNA|)NJt#m7j59DU8HJayZuBE+MkS3>#{ym5h*p-Sh<*tN9e-^B4Ur~zlX5O7(FD2<{f05uE;d5g{JgK6kOANsAaMwT0BK`n?%H<8+Xgb; z+6xuFy5t#z#oG#gzW&EIXYfA4swrSvVsOAx@X*SjfnuGWSBOHzfwyjoBl{K_G}PE4 z5|f0dz(4HJ(9>_zKgicPJ*g51B_Ox`N;Yi508XDUy!&HMWApZwF(4pbV1JZ~v2dZQqQ zL&aO#)bfA2a$3cC$4~NphIJiu1=pE9@6ickU`%Mn1^z3Le)GBE?XHQONoRlwS zg?QTghphJD=001BX^*(T3ie;b6Q~*svC8Tcs#?&DeAn3-f!c!Wu@af?sT=#=QtRsE zI;4|Q_pt^q;oI}wMBZ6gG)O=17wZ2l@OQruGN^Ny_9eJ@s)f@7@bbqiVxK{>)?&vAc9I>YCpCfe`f<=k6hT`_j-~j zj4S^uTRbhTHZl|(KN0VS?DU)6d|P?m=}|!#>cB*bob+SXdtvb_v-tDhQs_0`ieJk; zIX&&n96+06C}FX!=#$@uBHMz%O~d(BSK+$RXSZ3+N0NU$Pwm)$W}QbZz742B|Fzel z9{ppq3tt1y|5_FQ+u3E+7tqecqX;BSfL}ban z4p|!68e^+uDF*S-G+C2MP1(lSCsI=~wz4La78x=!7>|U?o`>-?hD6hQW;{z>*YjTQ zT=Un=eP7qP&wbAC`#b0N`JR(kKx{A<+qC+Pil{x~mE#UUcB*_CaQU&(@oMQG;ZNAsZB#A`&f#EYFOUdFkEo`?%84VnhVEKeoA`Q8a ziA6ap9*ZRcPc>J$15Jewf(+~Fk+G71fr`@QhcM-o0TD>Tc-Amfh@-(pOJ3()7esm% z!#f%WB4g84(+4+(X$&*bb%v_byQc6d&W zcjj~SX6GVcUvMnS-IhOAx{=q^v=iT^f}zU4cMCt2HCzRqRYHb)8Rx!Om2P$OI~L*V zdkrduAc+voJj#|?OJdV9U*t{khsp1vkL!xJGK|~><*gUp1IO*eGri_ z>meYi9Zcbe+}x!ev#J3mdK!M8LXmnTis5nu@t476U4YoniI2b&pHxbR7ujuv)3eHfwGH_cAxdQ~Y4aXx1GRf39N z4GbRZbH64r@@-Pf_&EvJ>7cx!f>p*^WSRe`1{)R^3SOlXk&#j2xiYR0m9vz>;?yRg ztrt+XpSH|M4TfG?{+f66dv$%8!VIzXFQl zJAq@Gq5H~Cb?4E)0TBwOXKJs+D0~BN#yr@i%+|@`vwvsC2fb!X)PhI?AVw~U`(EpM z*vqjXbLX>@Z4)71RDz8Kak+0iviG?~=UdwWu9$5fO{-8<$Uoc5kw z>38?V&AykG=Cx^TuQI##(%DY=53ay7|EDvYU2@`*Uze7iB8eY*qalX2N=9V@HtPAr zZP_$oO+q?9)He2v)AH5-$lCJG=*qm=gCEyjNjP3lrek2_VJl#iHpEgbXB>dM{F>n+ z{FICYPP%rIkZv~K$810LqRu_8d~rAbP4qm#x+ofU?o{;XF39xoutz}MvEs%ckqn5} z+Q_G^h7LT$B%cAcKZIshzBLi5e>*C;+wAq2a3;vu?}WBttaIWFYVry@Xb{>aCR`O7a7e|BF$5U6rpZ&sKqe0ri` zmDVl&#^DM78-@$r(Q499`;@(vkJ+4)8}74=@qd0&R^QvHg-Zlp@{l0!4P!^G!RV=C z0)LIje?77ZI2Gh1LA|sbXkDlV4}4uO)H~=2HdJlDoYq`D*(%KY7hFIqyMeH2d;idt z$ms3sn@TuiGbsTkikH`6FXb!h#$0hmGhvy-nK{e$IP`RFnFp>FMJxyI?GmkR<5p{O zfeHvf1&sK%dhfUyRkr6Vt(--;CDXPEgsbaRpe^5AM)pRiJ*3kec{$x=BL;4?8h2CfX-jm|S zX9~jHk?uN_(f^ZH(nSKYMKkm)sQ`u-C{!(r3O)dLfU*ro)ak@NqJBqY|HCzF9oi%} zrT$12S7VZoZ`VM&$V?`+2t)Ef+*nFOURqD-i3T1ChoHH3dfym^ob6My??T+YR$jj9 zZKK-MdFcnE{T(I|WF>y}+Pk)1)o1n4kictR9TN9Jsw~5|7;AnkAWIq;16bDr$5vq{ zNezMInxb~|!2t@eGMIsfH+nwhO>;WeT0PvvR3cE0hfA6^#&po{A%p2CSlBI)4^_<= zI^!k#V5AgwNpnz1<->Bdm1|c-FKqPlH_Q&3aX31dZmKq>G!)%TNLE(soyFdj$KO#Y z8xV;Izibl@UnbaBYRSnu=lvp^vpZgC49}gY>yaSh{ktfi4;?ze5kARzpsxSUWL6?1 z`HjgR1khMMQ(|W=atH|Wq|>@DuLNfL@>r4K3ii3K6_`hHF^SHw-W`bZbKZ(r+|w=^F8?+SgszS2)M z*F%J#QQ7wKS-UWsPNY?t4Gd!Nb_R%$SqIg2fXwqHj?u5CBHSNdDwjc5e0p47V*AN< z*T<4PkRuxR^vTY4;@JW3qCezK(%zEnehoh(BCQc6ZnzuyS~PKmzue zj;XhyQ$2U1cdD;Xx>Lwpi;T_6@0-TG z(|{_t!XWVv7VR0;`yTdFS;Vj_;Dx6$H_J|aAs;pyyfhbcdaK+hXZXD92w9~}+4a$4 zx80(q`pU$&;Eh$uQxzG#uD!*4hD#H96%MCVrp}yyW%L~YrTcL);Q@$=PS)?wq7j+} z%qS$v(b@V5F=A`O8mn($VSt_9bFXS{b!(!<9V)A!eWv|WFSMf%)^DVmxnpz&$qf=8 zo^Mid4XN&MBR(POvy2O}yG+#I)?wA5)$g-|MuF=brQ*8>Ox;DYQe8rhCz_UIoEDf- z_H-1+rs>EF*b@Yb@Y%}mo&~9{;|N&o4_olkyO$eS-}q^?^WDqvf$$#2ME3Xb$K7yi ziIFNDq%b*0{sHQZPP<*dOCzt4v<_W4TYOlN_LDUa`$+Xh@2^ zx~#y=t&hnUT`@^v4_31ZJ)7eC`_4Ft#fEY?-HZ7wV}EGskoQtB1Xb%<*YQE~acCxC z9aMR15Q2Q(fS)y{bfEYx5ps~JXoDCeFEk_sZMYc14<(s_t6vmyFLUF^Kvs<#s=Hy} POi;)MfwU|)Kc4VkvMoVu literal 0 HcmV?d00001