From 4636347172fba1d9c25dff4b824b21cca870f4e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 9 Mar 2022 12:57:11 +0300 Subject: [PATCH 1/6] Completed the ABP Framework part for the blog post. --- .../2022-03-08 v5_2_Preview/POST.md | 107 ++++++++++++++++-- .../cms-kit-global-resources.png | Bin 0 -> 13826 bytes .../2022-03-08 v5_2_Preview/libs-folder.png | Bin 0 -> 12967 bytes .../single-layer-solution.png | Bin 0 -> 11254 bytes .../video-single-layer-tutorial.png | Bin 0 -> 113520 bytes 5 files changed, 98 insertions(+), 9 deletions(-) create mode 100644 docs/en/Blog-Posts/2022-03-08 v5_2_Preview/cms-kit-global-resources.png create mode 100644 docs/en/Blog-Posts/2022-03-08 v5_2_Preview/libs-folder.png create mode 100644 docs/en/Blog-Posts/2022-03-08 v5_2_Preview/single-layer-solution.png create mode 100644 docs/en/Blog-Posts/2022-03-08 v5_2_Preview/video-single-layer-tutorial.png diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md index 65585a58b7..732bdc2dba 100644 --- a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md +++ b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md @@ -36,31 +36,120 @@ You can use any IDE that supports .NET 6.x, like **[Visual Studio 2022](https:// ## What's new with ABP Framework 5.2? -In this section, I will introduce some major features released with this version. +In this section, I will introduce some major features released with this version. Here, a brief list of titles explained in the next sections: -### Single-Layer solution template +* Single-layer solution template +* API versioning +* libs folder has been removed from source control +* Hiding the default ABP endpoints from the Swagger UI +* Custom Global CSS and JavaScript for the CMS Kit module +* Other news -TODO +Let's begin with the first. + +### Single-layer solution template + +ABP's [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) is well-organized and layered solution to create maintainable business applications. However, some developers find it a little bit complex for simple and short-term applications. For such applications, we've created a new startup template that has no layering and built as simple as possible. It has the same functionality, features and modules on runtime, but the development model is minimalist and all in the single project (`csproj`), as shown in the following figure: + +![single-layer-ABP-Dotnet-solution](single-layer-solution.png) + +Use the `app-nolayers` as the template name while creating your solution: + +````bash +abp new BookStore -t app-nolayers --preview +```` + +[ABP Commercial](https://commercial.abp.io/) developers can use the `app-nolayers-pro` as the startup template: + +````csharp +abp new BookStore -t app-nolayers-pro --preview +```` + +#### Database migrations for EF Core + +After creating your solution, you need to create the database before running the application. We've added a parameter to the application that can be specified to migrate the database and seed the initial data. Open the project's directory (that contains the `csproj` file) in a command-line terminal and type the following command: + +````bash +dotnet run --migrate-database +```` + +It will run, migrate the database and exit. You can then run the application as normal. + +You could use the standard `dotnet ef database update` command (or `Update-Database` command in Visual Studio's Package Manager Console). It can successfully creates the database tables. However, it doesn't seed the initial data that is necessary to run the application. + +To keep the solution simple, we haven't added an external application (like the `DbMigrator` in the layered application startup template) to migrate the database. + +Using the same application to migrate the database is simple and useful for development environment, and it can also be used in production environment. However, there are other ways of migrating a database. Please read more on [Microsoft's documentation](https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations). + +#### Other UI and database options + +The new single-layer solution template also supports Angular and Blazor UI, and MongoDB for the database side. You can use `mvc` (default), `angular` or `blazor-server` for the `-u` (or `--ui`) parameter, `ef` (default) or `mongodb` for the `-d` (or `--database-provider`) parameter. Example: + +````bash +abp new BookStore -t app-nolayers -u angular -d mongodb --preview +```` + +This will create a single layer template with Angular as the UI framework and MongoDB as the database provider. + +#### Single-Layer tutorial + +[Hamza Albreem](https://twitter.com/st_braim) has created a video tutorial to explain how to develop a simple application with this startup template. + +![video-single-layer-tutorial](video-single-layer-tutorial.png) + +You can [watch it here](https://community.abp.io/posts/developing-a-minimalist-application-with-the-abp-framework-mvad01ca). ### API Versioning -TODO +API versioning was always possible with the ABP Framework, but we haven't had a documentation for it. With the version 5.2, we've created a document to explain how to implement API versioning for your applications and add versioning support to your standard application service classes. See the [documentation here](https://docs.abp.io/en/abp/5.2/API/API-Versioning). -### MVC UI: `libs` folder has been removed from source control +### libs folder has been removed from source control -TODO +> **NOTICE: This can be a breaking change for your development environment and CI/CD pipelines. So, please read it carefully and take the necessary actions.** + +When you create solutions with MVC (Razor Pages) or Blazor Server UI, your application has a `wwwroot/libs` folder in the UI project as shown below: + +![libs-folder](libs-folder.png) + +The `libs` folder contains all the client-side (mostly JavaScript and CSS) library dependencies. For example, in the figure above, the `bootstap` folder contains the necessary files for the Bootstrap library. The folder's content is copied from the `node_modules` folder (it only copies the minimum files to make the library working, not the whole folder) with ABP CLI's `abp install-libs` command. + +Before the version 5.2, the `libs` folder was coming with the startup template and committed into your source control system (e.g. Git). With the version 5.2, this folder is excluded from the source control by default, so every developer getting the solution must run `abp install-libs` in the UI project's root directory to install these libraries. This approach saves a huge amount of size of the solution. For example, the initial size of an MVC UI application reduces from `9.83MB` to `0.23MB` (you read it right!). + +When you create a new solution with ABP CLI, `abp install-libs` command is automatically executed, so your application directly works. However, if your teammates (or CI/CD system) get the solution from the source control, they should run the `abp install-libs` before running the solution. If you don't want that, you can simply remove the `**/wwwroot/libs/*` line from the `.gitignore` file in the root folder of your solution, then the `libs` folder is added to your source control again (if you are using a source control system other than Git, you should apply your system's rules to include/exclude that folder). ### Hiding the default ABP endpoints from the Swagger UI -TODO +[Engincan Veske](https://twitter.com/EngincanVeske) had written [an article](https://community.abp.io/posts/how-to-hide-abp-related-endpoints-on-swagger-ui-mb2w01fe) to explain how to hide ABP's default endpoints from the Swagger UI. Then We thought that can be a good built-in option in the ABP Framework and added a `HideAbpEndpoints` method to the `AddAbpSwaggerGen` method, which can be used like in the following code example: + +````csharp +services.AddAbpSwaggerGen( + options => + { + //... other options + + //Hides ABP Related endpoints on Swagger UI + options.HideAbpEndpoints(); + } +) +```` + +After that, ABP's default endpoints will still be functional, but will be hidden in the Swagger UI. ### Custom Global CSS and JavaScript for the CMS Kit module -TODO +We are improving the [CMS Kit module](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Index) and adding new features constantly. A new feature with the version 5.2 is a global resources system, where you can write custom JavaScript or CSS code on the application's UI (added a new page for it), which will be immediately available in all your application pages: + +![cms-kit-global-resources](cms-kit-global-resources.png) + +In this way, you can customize your application's look and behavior on runtime. See [the documentation](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Global-Resources) for more information. + +> Note that the [pages](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Pages) feature have already page-basis script/style editor. But this new feature allows you to write script/style that is applied to all pages of your application. ### Other news -* Upgraded to [Blazorise](https://blazorise.com/) library to v1.0 for the Blazor UI. +* Upgraded to [Blazorise](https://blazorise.com/) library to v1.0 for the Blazor UI. After upgrade, ensure that all Blazorise-related packages are using the v1.0 in your application. + +If you want to see more details, you can check [the release on GitHub](https://github.com/abpframework/abp/releases/tag/5.2.0-rc.1) that contains a list of all issues and pull requests closed with this version. ## What's new with ABP Commercial 5.2? diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/cms-kit-global-resources.png b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/cms-kit-global-resources.png new file mode 100644 index 0000000000000000000000000000000000000000..9090c97412263d31c534cfa522c0f99774d5ddc6 GIT binary patch literal 13826 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 literal 0 HcmV?d00001 diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/libs-folder.png b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/libs-folder.png new file mode 100644 index 0000000000000000000000000000000000000000..5830f39bb3f3114172cbdb7b84bda9eca46c2bf3 GIT binary patch literal 12967 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 LDN9yKm<0bHyH^#9 literal 0 HcmV?d00001 diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/single-layer-solution.png b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/single-layer-solution.png new file mode 100644 index 0000000000000000000000000000000000000000..8ec9d0370ec822cfadad49244be5e7d4aa08b0a3 GIT binary patch literal 11254 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 E3;PS)3;+NC literal 0 HcmV?d00001 diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/video-single-layer-tutorial.png b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/video-single-layer-tutorial.png new file mode 100644 index 0000000000000000000000000000000000000000..d2cd8b67bbb057413d80c3c9bae2203c55510aa4 GIT binary patch literal 113520 zcmX_nbx<5%(Cy$3ixb@4Ew}{_?(XjH1Y6vKy9Wp!+}%R(;2t2j1s2!G?|bii|J<6I z+S-}9eXIMN)2E|Vlw{D536TK+K$DY|R09C$-v9u0j0pXHr)*555CF&lIZ1I1pWM@K z?@WVHPddL!r_=R0Y(GD@5!k;_?0w`Q0E#^-E0y_yLBE)QS}l1m&GJJ3;_mir6&a6< zehj(ALKRCf8oDtP3B(VB&A~sKzkU=^`BKtxVQ>vA2@Ufjh)lHjU^Av%DNn$2s-h!G z4H=30s~GhEEM&s}7M%XyH4^ndS8<6mS@IBAtpAo;5SE?H|NR*fwM+O{6~X_x{old_ z`zkco+~o1PcO(3CN8;>YLqbZL$AT2|Qb>>z=a4f>!9?tXszkk~mQE z_|nE%KbBG7pOGNRcRTt4B?h-nin?t22C8)}FD0eX=W?gne#y$pDqk7TW2)ZS_9);n z`YphAsq;Xc5U{k9u}YXsaoEPT8-*U(OUprOrV2^K#lvATij`F;IKd#|b!fZW^q;N> z$o+J7KX_sEG}`-i`LN)V-b}?bo&UG~A6Fa$cQ#JetNfp1@**z-N-Q_XZXDcj%n~Km z+=1Wl%iUJcZv4lo6cZ7;@kZshbK{`<&y6)Z2AN9H93%9+97ijbGnuPNnJwD5OU3J5 zcx$F&3cLmK^jn?sZq81X(ihWfb6Ns#22RWz zB-zVx(|mGSk=(1%8&}0uCD#5oL??uz_x%{0oSar71skiE6Y9O6GF)2lp!VRP+*R!n zvU$Fz(kT4@a0;HTHlOq(kmWuE;5C;tmp-LscvHo(3GHzCCBuRCeM5Hn;uxss6aH`X zvF~Z+K=*AH@2L#I9cM8{bM{v>C-|1vAh98X&$nb2!O2e!<%JIACcHJ3r2b zml;cabfMf735oqg>9viOl<^-dKma0;;Uqg_tgia@6(k zG>0Ec$YbyQbg`mfg|dajN=uxzNm5&Fc?NS?PfY~y#jd*UE6|an0*3?ABvK3L3b0AL zz6paSYCJXrQ?4|wc@-os!ngDxCqziiyYG(-T!QlR_qP^#e;ffxexJ!us1b-A7$(rI z!IDNCWu}cXTz~?Q&UQHTbus;H>Q!mw5q1nroK zvJI??bByZNaPBV$nl=TIm(;PjFBfo%oTI|CV5Z4v;De*)N-eBYJT9WfXZKw^41Bz? zqDD0{T$c(~UBm4a{+NeXiI~>0Q19=0hOMB_P{L-o`0|g)rh>)#=H?A%*VTv-br?WE zXfOam#tEip{K$Kb^UXp^e~QWwOFBi}Zca`4=T$XX*5^NFF5%&;xIfSgw%69Nt0bVc z0VLiW6j!cmN<=9JO-;=?Zo?&ATSSV4U7vh>*zJz;uG$mg(LBKo+);X7*(Kf zer4WGebj$Eb5SA*T@3I*hJ_Lr!?c-Lk*JWaP!dWW4eb(yGD*Li_*x{3)xh zK38klNiByZbtzC5M2~|dr3wO9ZG82aDE2Z5a8<$s3eDBW5neuG8p4tXBLcu7fFmX| zOO~1?984+iDZvwiSPG^D$irY_UtWu!p977Y2WdPQp@PAyuB`u^Q9PX5-J6RYmsze< zH9|z#7KfDv$2DG6oXI)|-keFR@u{iJAEtwA&b=?2{ue6_EhlML#G?!`1Fi1})N5`GsoGQ>_43xn-)ChB2lwxpTDu6s% zw&5_dSOt722BIavge4rnfr9&mN(~!)eTQ2WqfzfOP2+W89u8i`j06i)h1g>*?P2*G z@f93RoDyRQU#p0V_dlfS>ge3he8PA+wH9q$J6j@K;TU0HVAy(?^8WI?OU6b&X}*}k zjPG!Ec-m>rsRJvE0N^xRNK)|!Q-%%(e;xc)W5lA(>Wxh-;$`-{98E4QFhVFT04L7? z1p{~fFd!E2~(8}mh|3B*?pFebkUUX$el*VCl?o_d4&Khm3&16=8qrhCRP~a zfQQZU+I&~Fhw7x|$+>6z|LoCfQeSfd_{#K8?p#)$e*5JJku_F4$zf(}=EqH+-Sdsk z8m$x0PmYF5nwnA^%MLBhfhYRPLYLq&TNH6fn}+@9&!Oa`%RRu4IU*GR5vz-XN{Q7n z*f3vj1$FhE6>fZd6e;R@`EMHw!r>!)0ow{!pV|BEoRM)$F zA=`tI_yfrS427xEl$cVg^78VGOiXjXf1i2@`dc>Zkp*7Q(iH@_Q7j8t366zM-F>So z(|?NmNF|B1z)>dV2|yFDO9VriCfKyOF}$5!-1BbzQBvBWrEA_GOE?Sgnh>Q~&YQY2 zYxk>hoX(#;cS_sEl)$0FRkb=%VIN@rbFHAR+TpE{oI1XGX^(|sK)}M?ysKy2$|~ik z_ovzo&LuGM3$$xtYQ*4n`+%(Pmlk?y>~v;bw|{^7-D&lIs%Y{Mpq?++n-9m}o;JA< zS8JV6B??_la7`a}eDUN-Y_CNTWJ6VSD3q1f85HAyFBFTKat|GL!la4by=E@BKXcY? zb?~HZFP(MWn+X{!&p$mmPT>=0W2g_fY&_o^XOSv>oX(HFzLo+o<2(w%DwT8W(!m@q z1R7}BIgRPew!Lv1J#i+#C)=1$)WC41^KElhR{SU`sKY!yU&N=erdOLG{RZtjhZq^Q z%p!J~atQTCLzoA-X9cl;tkevUC)qF|5XiGLTd4)r_`yz?SobDQ1dJuqMHxAO$OjSQW~s}~a>l)^;}scV!m=9QJ| zfP|+ckG!W`L&rL6d5X9GHqn-s!`6V{>GL7D;caFp@ypE0460M>Ddfudh3Fu{6TLGJ zLhTC*33?Gfupuv`KZUT!(lM4IL&vbYL@h4p$HuUDt?{Fha>GMD4fcAzO16`OB$lOo zPWL-wtqkNDC?w~&?xQK^UN=8>-wEObbX zeyf(IW}fnsBk$Tf@OoP|Pn1jcXr8Zr_#}T2may2l&Z{c1yGzwySZNQdjury1gUz38 zQGyXP_~nU(Gg6iQ+r=98{iXTKC=oQTTsqC(MNe9D%P*&TvzZ@rjGJFNmFI5CNlyp} z(Xmyasv79AeyNj-c@|18G;vuwRB0bUnj$9yG&OOhILf%OPZW*=aj30+bG6+xzWv~~ zyq|x2cyT&_Lz?*@wX(Q=r>$9Gj#ekqYW+2Fw}^>6Vp#$=S`r90bhf4?EY+B6lBJeF z#DoVI*}PuLHfHytH@G0oQuBIa9b3GIQPzh9 z^W+jy^f3{PTvZz4h^BGz7R=7nShF{_P~o5*zJ$vO1vr{oG50L^M4I^olwl#}A)}Wa z{NA>Uo+ks=B?H@9sb(q=qQ*Nc(bg`o_LKN|QrCO#AyBt-R@zuea$tQXHts|26-h0h zKZ_~ED0dJ^28iz3%%C*L$jlAnY)Uf z&-beHzmXT*N;>=rou}CdRT|b$#Kl~??z46XBboTVMybAFj*)|0m<(-pjt~OI-j@@7 zH;WlRueX1tdab^Di`*>4wQVOwM93D1t-UX?+C&^9p+6zT%;Xb~BHClAYSjO_=o@~|G6(IkBxZ#K-+Q(A#UpQ zL^A3akpiF|=bT0n8o?hbbLUWG{rB`bKLHRx%!M?424=GtgmYJWnD* z%O8@c0YuI9%NrJcJa^>ca5@Bi^i#jPIL7e?jxu-LpX_Roy6GUk*iv_`fQg&rEW1*2 z#3GfSX7v*a&+mAm`}+6i?(S}7(H9R-&zr}alU)PUQ_@R&rL!nW%6HhD^U+yk`WpNd z-^j<*#Kh!_@q|o#>@#gFyf2|A-JAr+HA!?(|NYI< z=$C(CwduFy@TvKfum7IlspD zanxN*bK+7!6^dS(9XGgNoI%(yuSyOKlCMyL5+iY_CP8!$_R0AuNEfu%a(dd7@uk`M zD;IU$%9QQ0gtb%9ZvI5Jy&qlJR|+U=MO#*o!rX`~dCd0U+f7OsST;GFhlll2p|Pf2 zY>-zl!?e!{uYzBYE()~+v#reN z&|HyJ{X=|E9SoqF9Q<45dmQHTU_rNmIbxu|lLfan{!+8B^;R7_#^8k1Am0y*?c%)$ zQozL`on=WsC-V!JdL=nHDmT~o4^w5wWXPA>Q7VBE9XcGKssFJa?BLR?v~11U%Ig{lI&8dtDk5 zeMubNi%oIxI*%aYgqoRC&UHG;#_^qz%Ou$;6~p}c3Pr)iwHab($J@va1mm3s?7hI_ zkGf`;A;mg9Uf)W6cJ6WBIjGCUl;SP%Fx1A8S}M6k`ZV;t@|Qwh#968^CameAfkQ?_ z$+(e6l{~`&cf9UCRB)+9r^SC%3k(8-D8Mfuso8ri1f36kDm6LHXts6YeuxS!dV^jTNi=$8mB zxMhFYn0eq)SXglTB%^g)A{WPK=#&6rO(rVXQqoY;?$WoqD<-5<+#Tjd^%|Ny%Gisf z@(lJART6XDT2$s5;IEaH+dp^}T~dz1kNx8_=3q{Ok<2hV zRQSOOLeAlcWRRNbv1i}6pyi}o-4?Z~y2P4MSGDj1UrkM8rLD`KNhl4K)C9F}D2W0!OK<^ER84asQyfJS!u~1w+tid&!SqM% z(BHp*@9gYQ$s}~Wy*{z9u*BlAa2oOO^6D|C+mEkeqQbX2ZP?w%c^Hxr6Q7=*I@s78 zUR+qGT!tW!x(MW*p2f2D@Nsi{c%BiX;#YWqjz7uD&_5dD=2PK>43Ct5>p&+()vQJL zPqxe%YA5y>malJ&lpd(W+g8fWT<=(b>3U2lU)}U+v<{FMB(88od>hBGdpqxCVP*P! zMeUly>j$KXKr{^f*ZB6iy+R12Q%wYfgbMChJD}e|#=d3M0wW?c1@-*nxp6k9X!rL* zi?DScAx0<`DWZ#7M)~?H07PnExAAg76^LiKl7~^NnAp^PxxQwYOpPfK%D>jrMWuW$ zcweQhq$*!CoU`LbLe@kDX8-YmY}Lqt75%Mty{CdQvUEOlP!YlC?FY>Sq^me}h3;I_O@W__?Ul<0SI{z3Ovue$VATLuz;W~IbxkP) zXChSSCo}}3&9$<|VIF!Mr}pkjN=a1G zigqIZesA(l5^D}wfD$o*d;g9UuEwjyGO`tX?s@cu){bR_nYpv+i3W;^^xR`*kssW? zZC?%`o%~L-EXM1(pVn?kBCl{CoIU_e^)2fDMj{**<*5<80arP=`AMsz`CH~lPS5kL zOhTV-p2`B4N*KZd%QrVYmm7}i7BhzE*R@&?_EHAXff-K{>)Pe|GD7DVHnQaAP)LUfE(yG8R* zM?q(?zq`((MalkfjKmawt6sL+pV$v`9^z}f-e;>F4{L!LRXvIkYDE=ms;@11G7=SW z;DocyF2iwndrl|r+0EPPTA)P?E&k^8dhHm?EG!e$Q#E2m1y-o(+Rb5_leP0 zdi(WgaCraEy3?Q_aESaq{o+e&hy6SJjl0Uz3EVnhgrrziB~|Ehb>3dPld)f6K12xi zw*8uLD1TNOsiolXziHtaZ`f$)XYb5uUYXDXgB11ag+|d|vFmvKMSFS6UBcA7Lpg<= z%QR-W6)!#zqh<(LFyIzZB*Z4r?o?}44V#H0$|ZB_`d2$z8nusVOB`)yPJ5JPat6U_ z&NZ3*I9A6f&WJZ(-tswQyJ$V~8foQoA7-&1hZIAc+8+8olW|K$nZF1d8=T%0Jg&qd zu#Z$$vbLX%pKzAxy*}p%o1+7W`|J06XTAYT`3IX$Jp<^S5b&hcTBG%J3@+0?e@VZq zfu`od@6ykcpQDTEWfF)leS}bcs6)h5Q*oKJ-YLho_V$Mj?=4GjH^k7d>FMymdp%~R zp|Du0H5?oqL=is#GA9c{K_Ul1uk^H4ZU6F~dRtm4VkRST=yYof?s)7#^09}SKs z?;IICQ;PQInt5(EvW4re7M1H-B>%X$YZEwBNIhi31F34xPRS%qMN@&`ue$D<@}@x4 zSxd>2&vb|KW_<@aTq18lZB31H!4QL`zNoJ|gA5`C7z_A;U&nOttoZ(~XC*PYT|T3Z z`syqDVE}=bHD1FX)-6>=^w#->#n!~|nu^i|{a>1Cpkn$XB4qz!$_T%}FOtp@q1kVanfZc15gOU=q@NU7A{?C-I z;Wt}{Q3b?H&3mCj&&9iw`YDNdVdaWib$L&DsK2K?Cjs)>j*5=z7dUMYZ7pZ{cM+gM zx&)IzdP!}(vRqv+kjeRR0KX;U=kD1l(#4dqZuh&4j6{KHd_%Iv6l+ivGP1flhh``) z(rz}+vhYsy&Ew3|Vd6MwXZ1X++<$Gkp4`S*5ZG4MRMgm#grye$QVy`n3!5kNIZ4yT z@CE}CB$38}mUm-n zZ?~8uDWFfmk*ZJKa2-X%HFBz~X=y2Iu_ah<*IaXADM`J}U5Bg^)h#?inS8rU%h=@i zh}h+mb|)tUY_ijvZbe42Sa?*Ym^a+E6l4E!TgR+aRsL?yfB*K$KyjA?t(uLm3Wyx) z@I1Gu;o@$VW!Mr7n#^#d_`!#ARZ;AX{S7$yeakP|qhzRs0H#&tWAMtXmp{Yhh`+VH&XlB$#_vV$f z)v14}J$pF4R#_K=3D(Ox!8UEP-s;OwV1?^i(Rbv4WKwAMSzJ*ll}o|S$YvhI>kghe zDqJCkk|V;H;+YdRLWZLmAewM-73?FkA+juWSN+R>{{8$3b~5%GCCOpxddAs}TrTAL zgr4K^z*OR}c#JWAzN1*+_qUdj4V8O-k-H_q*3C|8q0G(d8PRWPqsP%QpV+CcuBOKJ z!!SdszG!m^xukR=Mj}j`P+GP$gXRKqT_l1_CyEqrb@~J~kquSg=sx~{Hm1<@+SzRw z0!F_3N}~?5)xzID{b636c`Jf-xGM4)%(|2@X7o6Z57R-f@3NU5GhW8HWxdV>iRo=k zhLPXc#hrf5V%6{Ytm}f4^xy8mDku^Ha3u6aVjMDVoNa=ld(Su1Jn>Oyd5_qMcP?&^ z+47%_T3%*l8hwm>A4)4`x0AM>tt6YGIN>v3>h$)QSs@~Ck!54ie-OxS=`r^NxAgT? zllHxIomca3a^8eySK~Ak;Z%Y_$UXtYz&H06M=S5P^C);A_j_e!aq3owfIfO_&)bve zf;2N2G!-=cLd1!$d2kl^;q zEE((Ujo0ZtFV>n9$mFFtoLPh?7M4Cs12a@Lj)ANhS?C~?mvQ6VG+1@V_;Lr{@rs_yhK6UU@qsgI=85x3 zJHo1mx~=mMn6MPYB0nD03k)-in#_)>Na$EjZycPBPipJu4*!iz^B69vGcsLO{}H{} zL3tYS%}1HrD}qS-5h8AppTGd)^(E(sk}AM?JBa<Q`rbd5V1T5(l{~ zoauJ)>Of8oyqO4gO@2Jx)@?M=m)Ml*1yPSY!{@+3qY3r|Xort;YC@hbZtwXMP+-$H z?p!pzy_@D^tAIsWloHr9{gW;-%nKIS=C+YUp7M-B8=8Y7+g69+r7%gYKGw+ z4c$3zk(E|yEeu79Cgv5mZ$W>e`r6yVu{SXhsuuiqhN8Q=y56}KWa9V2g6H%7WqU#^ zvyLQX($&>fNJz**zW z{;B26EN1QU9$RlPE4l;kYSOvD_v*51fhpz6joJ83x|W{4_aRY9zRY4prg>IhB~o(m-ZtY!*scKf_=+? z2ZqgtBOOh2>cLbJ6G9=E)tMMjSTiMuPcakF5zUvU#8jF}B;aCI$jmdBVf<}@mjV{} zwXD;-ao%Je_wXmWBY(JOeSTv2vA%;~Z)NjcswB7wTDy?-e9txXXxJg~rGuy<$r!ro--r6w zOP6-RmXugpOG6j{Q6aA|K_im-GJw9?7Fabour(7EWE%-3_c-^xJSYN{;>BT7z{V?r zaR6O;c!D@Kek;Fs1v>{-8ZeN{VwyW9gej&^=(<}A@+TW>m^16|n37s!jfsF+1K#^4 zF~5F0vMc>!cK><9BBec7>+` z5S0^d1&POs>E+e_im7kKTstU_sC~EHGo#2N9#s|S7Q#;MnK*#{z104`hw^5$FT2)C ze01OnoT`_hoL&KtRXkMcmSxMX<;|&K zl$EPq_>p%x&`D5Ipi@vXX{q>m;6>q zb(8PSYXUV_R*p(V+{nohCF1m1eAnKdO4iWeXQh>UACJ!|`uCs*H|6B$am-fZQuXRz zZqxWFC0F&8^qKMI>X-SE!Lrjm2b&H<6PA37jm|SiZv5;c$I%~y>P0P31tfSOsT9#{odZiu;XEM~|v61~Cb2X@y z7fmsZy1k2uLu6eLi}jb+V}RbEtgCqTrz64DYz^HVrlqDpoA4z#c7Yk{@i^Ka|N7`J zE`5vwE{FZk+YbV`6KiX0@r?s6v)$_eV9u!^=+!rIlq+K@gyVIt;1vwgBk#e5!S{7W zpdp;)fJcr}Db(2gPDuN+!8Qd2^ZA8NLPj~BT)yYQ29g+L&{Os+Im0sWuwM$+Rn+(R z@4eX88zek8l2k9f;9v%)p=+&0=&4CNFvPFV-{E z5*xLgK?2||^K=2lqnI_=;Gu9e^a}X)ginBr7?2^DEV*8<-O86E5LJjhJj*)`{q1%p`9!P9G{C zizN?rb9rogd=!3MhSJ?a7+`>Sgl~lw3KhZ5a*V1zian_&ENZZ9F1cQ;@vqd!YW=(d ziM$9Bm%VY$n5CaQPcVyUa3Z85@PrXk7*%jG;U=k;d|~(1 z&JNu}h#WEl9^N{TV&0?g90KXdX59Wp^0sOZi<3-lDUMjqHpAPQkv}yWwmbj$<{!u; z6gW+OXQf}c9ZsIyzT6JUPd6_=c>y0_O4O@pgy~K-WCLOrx^np>BX;QX_SwN-MO=T> z^iuMaSfuG0Q;pYm6u(%O*w&yZIfmlIGPV3r#p&)87emywgHb1<7(SLn{Gc!f32<1E z$lL{elgA3iQf0xzI~j#^@y!HOCz4zA>(uYp>9#g-k2)5^3|-IL%1eeJoA1NNfr@#P z5Hh2hqRcA$vk*pUE4hSQaALCiXOJ>qbU|izAMp3+d2=LHQCkudHGPCOhm)e1xR9Xp zCL=#>${WiYb+`#ojiIgnGpV6&2l%-BhcpK6MGxwdC~ECFMqqHv-%T$i)v=&bUnL@7 z>igs7UFB4Ejp+nZ+&AezTolxfo?ZfreuP`I-1w!b#1$9S6Rcx;N##N8!LAOW_JfmX zpODwaT+**kyJ);OPXgXx#|rg69ADZ=aT$7I;_0jLB}!P1|S|KRcAK@omd zcFRKt{?)v#^%@4@nNmh!OMM>v5#;DqW}Q^rgj2d~(zKsvq^6pEWLWyW+t%p=ZHFF? zTm$nxHknb~-Ga8UVS~lk@j}%>3`7NI@89+yopQc{qGI>H2Ra~z_->fcmy?r&7#vQy z5>G=={*8Cw+nyDA#DI_}Bst*ZsW8ucgf%JUoCJ-#r*7_uUuH3i>Xf(nA4T7+A#eAi zamS3xdL1|Yb$joWgj25f%EVVGT~YmKz546hT@W{#vO+{y(z?M~D_PC`5M2ynFrFGZ z86mQa20By`?AJxTsA!od*jo1@?4{KS(p0{YAQIBA7}Sp!mJX;-8Jb)*u7i}=w5ziQd*1{e~g~nW$QAl{vqJf~U-&xUeOO zIBE_vrHRc?2Le*l;_b?}lw=ABbOA9CtZ&;I*-thP>+%{8pJ6d&net6-?yhe_rOY)F z@;lK%_o-4pkSYbvx(1im8ynw*wBu*P^sK#Eq@Ve25!j6w!&s~%G!nRK4W)ImkXI&i zJmo8D%hO8R0dn^_QK7D*>JV0Xl}7}dY8#gMr>P>|R{EHZT4hBZ$JdFP()RI;avl<5 zTy|*KLbL)~!WoW8ObOW!C#QB7M5-1UpE);fu+#;M;Yb}kxi&(hp;d9>ZHI=@$->o^ zzFbN39*$;5!ep22)%LVcVCM;se3zDzY_eBo@LisJZ#d8?<^IrNemAP3^s+Tl($K)|cT=DN`>s6(h7*3yqwSGU zvvTr$1J4gpSfK)bFl@cNUQ2Yz$!hltRi{C38`X3Lr%p}%wHI|? z{)*uf61hS&Z|Znsf(nF!N$;%-RVG0dT0gHUvCQvd zxRfF20GL|Jv)5?Ooq%=Y*|q;-NRqFdf1kN_$~$|LJx%S=JtGHyx6?I^fPGD2>-PJ) zde%{!xSy7#PG}eDTl8*S6kJ_VPtVTkX>&-zkvvFSVX@;&BmC(IlSNKoikCV-$wp9lF_W6)v!Zu%Jz()n|+VFI7#Hj zlqD5z^!1YU$Px&N!ZCS*&RYpVAz^y^BJ;pmuycWZTs+r=ML_kYv=| zTpqTs2qB@{J-1`|O9m*EBi-`zIz^qVk?lM8f8F1QigzTWFYP%0S@H8Hy>8iE3zQ@r z<-U||`pSoohGfS?iK!hH_E_PnChL_5{w8-^*`Qynq6v?7!n*# zMZ!1`B{+2m{w1u1S{xMGZ}M1a+cC+1G^6VVfJ_pwY3JF4a}Z#U!&LFXS%Q(?8QuX~En<{H_i*+&p-d5O^@ zH=LXu9c$|9KAyu{WM@&!EqzZK?0f!9F{t_W`_v#)@vQH_tHH%afx-(MOesddP75Az z{vvFXHk)1}XUiaAS$Y-{IhXGzV6Y{$vP`_v-Ut=!v~@ly+iE5cV;XqTlV2dRrlKtx z3c4)SC%r#zI9uaNNv{6%TG6`Y^t>08yZ9X%)-(=Em3OpDTN?!0Ar=ItaXgBwHAb|pq_!yU1bwCB9sBWz?^W?| z2ra9cHVdpX9@LOS-w5SUc#s!1+Y2@ra5N>6r?6Z9T zn|(Z(${3TJWS0RYq53w^Aetgtk9I*L^iVERWBboF0P;hgARioBY8}0BM!ZUhE+%ueqL_Lh=r1! zcC1;6xM0xlWO*%ZYn@1??tjM|QaCiWSF(3Dp6Q8>u%3DRa>b0~`0l**L@0lMH+i5^ z311Kk<8}MSfv}Ln@qFFX0zQP>9v2p9GOY=JkUyaYz!Cm(Aq{#UP6TsFugVFrIm#i4w7?=6u-NtYh^Uohnyj=iF%Iyk*FWh(hO;q?WQ)> z0&6)1D63*YRSR~*yVlRxmT<$v0Cr7HHZw|SA7u7RJtb_2`ImBn{_?FUV=4*yTKfp( zgcTf?e~-)ZtXeBPRzgQNU)~ zmytrp)Nyn76cCnY^$@&a<1l>S$dD;K29@ZDDz@xA3nL<4(DaN&&zgQqQP=h$E0|-^ zb3;A zFp}>aPRRdt%$i)7DMQJBB=$~gBx1Gcwf)qWm-@m@EGLsnX=1JG5&!#~booI6qsU^E zS6i>)hi!>W`QOMl&IRK9@Ajy|m-h@gjz=T$AB1Mi=_2z3o_!QI*moYN%l9BbhCWMY zzFwW|+*ko8XX)1YA`7!bIMh%S02s;xkObJ)O@+dbUmrhIc+|5mdP>!gS-qGJc69=glkk>}5dk z#<2d|>Te#M1?}rz5r)1+S zF0t&hx^wo;$m`d-;$=vR`rvZM_5g=gd`OGCl{mgALYOLm!F&f5LLD-&s4x}21Mv1=O8q>cw0@_Wn$u`e&b z*Y=a1#kI#82tQVQ@#e4Q3Ip&ZNSKcpy~Wm~;l|@lwv=sBTUB=R!pz`+vGYO6-#h3l z;#m6wLzjr&lFJC`9J#gsngu?MYSe621xZA^boyR@_DJnD?#gFT&#J~izEE)L`m=@7 zQB4g=QY8H7l2xf?-OH~@T|;bx?CFF0%Q@6RNC0^;OdFTeCUr!afO1pZ2;+Z-O})g{ zzolvW8XLZ?t&?Qi)p1-;31ml&D_~g%g|fV`duIEbv0HM)(9*>VOhhr~Dc!pUtH{^eCU zhGCydQ=5i1b}H*M4Q~l+HL0m(wX6X?Ne^qwvK28hJ3(P9T-bgUuSvgWgOhUwr;loG z#F6E`A()DMTzp1pS?S%kOszv`k49hh%!b=u(V?Udro5l8?v)|iny zgpuq__;n|eC2PFZnb}pTDd69u`1g*z2#JHCte1-=C6=!HMDS|8i%U{HiI=Yf_jjPN zUcEAjeaE-&TaCHf0T)HFiMAL!|UB38jCraV#(WeV&v;xuf|&5eZlKf ze|m!IpJ9u{y?%uBFME(!py)EX;^V7YFJuLqCC^+ak%wi%HB*fQBpwAU#3Ju^N}*Fw zBQn#+E3?uoTPZjHv{C*veq3eYw%a?6rz$2ucQ_Uh!$|a6%CEI2#ALy< z5+yz+LfO}UNP1PunPiMXq{x}%wXa>}`l6feCFc7Jw7quU%`c=$^>qEV0A@Z> z)kNOrALFv%iO=zYfq{*3{TdpY*ajZ}>w~?3+YefsW<9DT#6$pqG%&{$r^!_7?8oE5 z_7A*g8eiRXOSx>J_PaKf?r(fFz0`0`Ge5I-2jQ69F!#+-_@RNg`bj*#*KJjU?zZI= z^}kTU+-_FhGLL0g<#PvE(%%`rX@Fp}ZfNi-4sz{|$(UR^>7)f<@M4JoW(jWbCQa!u zIPv%5JuI|#bXEK_PB1ftxG?N}#N|>%>30P)SqDNbx6@WJ=X|zMnZbIsm+=h%B+DXJ?e22XJDBmJ56bQI z{Q^F7smJ1%Ch+7s5t(sjtHp4|a;*dApKAVm-CJgmm&cTtqU{ZG&Hh;W9rn%!5g6z$ zU;VqYgN1?tBqfz)2bR;4psQ-mt~=9!Cp`A~5@dir6uek!xvtHpZKuG6W10v4SRn$j z#5kS{LAPRj!8|z<|1I3bT9%vAy|l8VpOP1s<|;j$#oqFvD1%NBD3w;djh0he-Qy=4N?Usp#UL zRxotq)ilNQR|J4-7qza1?h*feOpnLh&cyt>R0RM+dd#^i5ZI{GsezWzI+^(gRx_C^ zgNJE2-RGOKvL_&5fzT!@d2}p~S{8?>5b$A|JK(~hXWGK~kV1`KO8;3kkZfa={Z4{{ z(CD-8>MF;7 zFte~Kj!Nx87R*@a*4Ar1m+_T#U%v1USJuvnKKJZr<;m!G$gs-E>S;p<9Nl6ttOSSJ~78(W`2+f^TOVli)M^4$DfFBp(XOhDb zd^J%LV~CfeOjWa@x4Qe-m>QRS+L-IQvCWszuD46it8KI&k|0T0&59%JA)nXp+g zCSHVHf{3({o~vIGq@zxAAA>-Bf4m?Hi8-7To|XYVAISX-(dN>04M%)9&IhValmguK}qA=l+L_74L>H4ex>=p1%3_cAGhbPPwzJMT;gi3@cP%*HhskR3-j(+JHo8U~!GFGi_xWXQkxw$ek&1{D`Bf#wJcPf~7gpH0 zf4+|tJzQ#{DR^^08orKD91BKyy^#rlk?Hh}R*J8xl!i2JBnEU}rQD@aRjY><_@B?1 zC!SppWzST|d&KAv;1>sbfaxVvx>?O%zZ(K34SjaaYI7eO&_qu>3d|ceW$~;Jxbaxr zN7~&uKG?zP)L$#GM18J!ccRANI`Vp7FP7L6NO8ywEqc1wOZ&;&@}27RFc=HI>_=13 zqA-8-NdchyF=LA)vizyX8z?@mK(fxQsY)+@sjy8L5mANA%C=CBlyVF8?5FP2tgpM$ z_E=BatBhDRX35~0xoTQH!UX%C#@$X6+b`k!lmCKL@9tLCzq!x*BR{)fBG(>L zUhpua;8OA(QZbvE_Rim9O?PY%8^=Pj)Wrl~XP;yTvng`ep3V)Kr zl-h$+A~#?M0hMOxm@LJW;+iGXLYj##hxwf`d0s^wjM#w)fo}!n2}|gV0+ZJRyQ~t@J};53Z@^vdvlSo z=IRED2lhsVSfwW)*@!5yw?r`azfXGA=D|<#qp&*N*Aj@RO?7oyP8k~#4;qiOOfnxg z2r~1jx1H~?`1YG^BYuZvomv%#N=mix8cXxCf@UijO8d0y_{?4N1v>2Z6CZJ_~|Ha_+e@elCPD8X?Rn*4(V z`Cl(UBnVCtR1Dx0%TOJa9baEJg?mn~N&)7?H%2g{pVbUz)}PtG!Ng>_RLkGJ!t~SN zN@Zn*j}eGzkN6)GCblvvmHXTZZ)w9vNNsoY3vo-HcJ@0k!+p+;{PNn0WI)D8*UI+y z2s9c`hOnQ@PmJOlTDg8E2)`= z2tfTGnyvyWs_*L#h;$4gg3{eBAT2E+NJ#e}ASK-;-Q6W1AkEMrpma%!G)N9GgtYW` zf8Sbv))Gf}jJ*5qJ+=4QM~P(z%@yCJjg*zMLGtWxRCY6>xMYs$(LzBFCFOyI$BOac zv0~5tAA=(S$;Q)g zPbp`yy3w&Lj|Mq4HnE1M6H>D`_WYfAZv3$x-6n+m=e1xE68)6_Ryq%#-|MFBm)IOM z!>_%*^TjuvSyIC4)U;LS5l$yHt{n(xd?1}VuR_PJvzMH=Gxm~S_VviaFNmu&$d08W zG|(bs0zIitKQ)$#)}HQ8Q}hWf=O8Y0o9(zz3pFNgiwc@oY*t!NKl;pKavzHoN`YSK zK*$s!Y79$(2;{25Cu*tsu}258FG%id(2$YyeZ&SQMf>jw3Q34oDB6$4OPdD?-gEK8{%VQR&^+av^C5HYc zjBW4n`ZRXP2h@z;sH)StVn>aPR{!16t3aq}$jrLjOB)H%0UIH^KZ_y_mlrfKP*OA{ zw_GA=mT;)N>@>YtcU1?m+U@2bjK+1ly+VM z7KkaX6svr#m&G<7a{SWZ)2t9_i_(pgCeV5?^*1E`fFYAZaH;euSJ3=27ZO-v(~reX zB6{DS64sKMsz;%%{R028??ql2$(vGsZtj|zn(?E{0liOn*;{}*it@Rnq~Eu8ur_qm zWaJ4%GmoqwgQ)+_!ET$eh6dg1som+)jW}7(kA{H@Kg@8Y2( z%a~pcX=0x9WZ=biKPubiZGa1}Y2RgqeAt@--5- z$eUdN;RnD84wc?-dg30B*?!t%4(A!bXb)h4V%FC1^W~$uaM6dvv`5TY9_&lgTx5H_ zblTt0%PI+#rhWg8_f1;ntOa^c^=G6AKbvXHJR|$IeoPBjT7OGDXgz%=ao#4}3&lm(Tr_*vI@{ zY(gQ*>lePuG8*J9cG9R1|CjYTtyj`1A2JXqEQJur!@=9}t~>9|pB~H*YZV`w6b)@0 zS{lr^A*^yN&~?vBA|gUh6*&H9`WRgjHgr=f7?e(ECE+x5oa5@NXn?)hTFob*0+A?% zO8t2K6Z&?y_FK_vvHpR9CvtH8Dm$Cz#e=nvbLMd2+_ADUR=u^)+R=!_U;|&jp6Ffjy1THzOH9&@aIp^Zc2gg z;qDHC)27}mZrAq`lr^*2X=(k{3#T`CKY#uNn2l8lU`!8wYAk&U4OLH)ZA<$Pc(nv-o7j$DENDM*}i@r{L%{Y@}S2gDJe;}UZ>h{ z*S#IZ)YG%2y*+!Ey0x_x#0sodl$4ao$;qHuPa>b23|Ay~te~Kvsi~>5lA~sp9nk4n zK!aaVQ4!+X(P5qGyT(T-WDjrANKnu}qmhJ18*~WjqzLC>Kv1B(4a8`FXSj<=NFpAN zmrPj{QQ-8PA?kA9F+A_X{)BTHo2 zvgIvXSN~Ebo=*ScuS2cp$Rq=)qVSV&dYt z?d6AF0a_kK%%<-lDm#a*T?Eu6rKR0f2A3-$Zgk8u(saQt_@++s3?Y{KkY2KRZV1=Y zn=@v|7E6!mZ^rJlNe}U_S=|*G>Y2w8Bi$-cZS9R?&)2Ub2R7DnL@DBa{P+P*ZTbjk z$=P-lNgjd;Qy9a|L&p)K9*2ej0S^FxwzajjfY03=b*;|L>1t}aT%Yaga*$%80cu$H z+FuN6Uv*$Vz_$zxM8(8L$=E@oxT9k;hwXfw<;=_sVm!au}Xfk0z!s&=DpiMm!Msf9!F?wn#pnQM%1;(0yIJGn@ zi7c^kC-N?xwqd7|S5Qz^R?dA>I z^?pxGsH>{RE*>;38y(a$B)>Kon3$X-jFp!uP}kGToJBS|ZvFq!Ed?*#s9aF#K4b~< z@ThBQ*1!LmB}+$$9U2xEX2(uo!SO8i;_M9imW70ko4eU%?(*WIf8!YZA7t`8WR+D_ zji*!CwBFv{-D^CAscC6(v9Y-le)?}ys;jxWR*#%pN!9kH(4_())+kO4Fvahc!_N>| z&z~(BQ_?(!Kt|(4GI`vFQE%BzK72dM8`kk(e&}E9`SBJ9gP3L^Dy9!E-WknYm%2o1<|d4kGBac8K;sYji!|J z7qk65RJGrOXuGcFG@b9GB#x9-Pzbll0_Z$2?!fY9uwtbcTF<}9dkdCq5ggHl z1$`r<+>ZXrN_5EG-Ce0#e$$=1edzT1wL1iYv5py4i~DJ?Bo^=I2x?Xj(9+S%*IXpF zN}7AMEBWaA-jmK5cHdLa$I9sBL(YvVJJnc(S42bWe0RczXK&kh3XG!)KaN?zGr(TY z-+5CyjbFpU%F2ri7GORsOr1qQSlD_|(>ax5zJG4~y^jZ^_D-&F()!(4Epg&2d6mrl z#R8iwGcwR_>yFPgioyqPcVAMaf!2Z_xSpGTKe{Gu&t1-yUeVa-_VHtFSJ&!=8(ye% zlPc`wHE;5ag{P;dtE+&)7>~yz(Q-M=wPR1P;>)q_N<;=Ta7=Ry7@eLl3*?K)*Ds^3 zUIxJf6?_gTwGFbb=F?O^nBPlK;E=Jpj}D&QCEwXfcofN+^P35B{@%=TT%$+wzkT=a z{ebUYn*&Ds_1%3?5Q?Z+YJ{(ZiJaVHy5GNk!L)JQ=cqQvm24#O+@ZH-RTDKRMlCujEoLG3WK|EvaY8j7Znr)w*P~zt*D5ImiB*8 zG44ipD9&lYLG9BS;1}WtfDzLyOYytd+xxKiZ0qu-eqG059nZiTC%gwgyr`~@PX`NT zP{c8U9p00gnhIRN^71lx0fZAkkOWo&Zm4viNoRqpw{%e7wAxVEFj{17F72d0%8Djl zQgIiQqW&>i-($Z28xdUg^6NY#3UPea7p?T4NVqrb>PS7!6?0gOaDV-+A z4i!+X0KCVtGOX~PNLkR8YczY1Ljhcpg@uKYkx@FAQF(Q>al1PwpdC?xk zxd(#EeqB91J%Elt&0(=RJDc8jT6)@{0Ma-$+(Zh*udi<;aE z|8Fsz5t}X^uNkJ3CCvv?2ib_KPle~p)8>2Mxl3?O3mm`cGjW-DHz!MaE$(9D&2p*mi5jRlD+oTIc1urSc5^V&KfWg^0A4|VsLU$!>+w9I*- zy;*`&AO8|DvW+LCqVhr_)-fDHYSdJ2zBsl;#f@Q#DDzTPQ9QM*1FhbR>TmjvXIjic#}&UTyOoSp)!rpu&1x>dcORo76{^gDE^ zG3PAKahr#%7iDwVmIUVc;uTo6@tOADI_O8o+3ZcEFHTCu%KU6v`>GH82bU#gQzdNe z;g4+1%-AE}Y%QW-(zMXAl~ZOn37`*C406&)t0)s|+Q$=jWt_cs&fRRCgYPK9W$5%2 zx7GJEqPM@aF8rApvTBa!>6mLyaGR~;%sHNNHh5uy!<$^Sd9Clkslw{cQ;iv)-?TcX zHM=uS`JD^}6Ad*ZN67D_hTosNmGs1Le^AI?LEG@`d(`MF}Il8LZW-QSo%k~Vh%~z6HJ72`0{g<~#pTW+rm>%(c!Kc~g|Qxn4c{mcS8Y6} zQk9vOhQvW|vFtMG#jE?T%Atz(1JVfy^YC9F(mYk_v=OzdJFOmM`uxj%lv*=_(k)g( zTLu>KX`VFY^{&3s;J?;FTnqRyW7H70NxolE9(Lg!_+tHnVR=V(gz^9)IinRhd1T zYzb79?7i`-*_w1RP9oMq-#&|BmifT9XL?cEiR_7n{8vowDxd#tSCWWsN0s&Br%^IC z&C!Z_d?58S-fErWtsz+@VoDrkcP|-}vkT0rPh#gSZlcdcF@mAOT%v0f>lEP@KN6HP zWch+v5z_B=TXy)1!Mo)$Qu2An6}DD~T9s#Ukf-CLyQBXrUMKf% zQgT0sT9c0T-L}m$<41rP@s!E?^G>GpKFz3iIO$qTCIM4S-&MBbl~^*upe%cQ*0^#M zdBWznLsT&6a8_tg6BSsNRAlj6h)9Y}guyE?2Z0msTbvA*{D&)7F$3hwoRcMtL7B_t z`H+Th*qX2DCsprZ6SD$=p_8#O;?oZ3&m{BQZm+41$3IgR;zq}hUr#U+CvX*?D!{At zqUGLoXE;@j=Hrj&r;(7(x93RuQwjDt$<#}Gb-FpC@TMx;TpSEkpV9Zlz2;ETKP&`> z_*>z6`=(s4F}oE-2aaIgQzwrhX}VQ9hE|nSXw1~Zm+!ocbtHqIXm8w6bSs6LkYY8y zlR06&*}{F^^(R&NIH6??lzKKY7rR=cU)?fF6&K8>+!YxI&Rw*NaID@IiLGw#>Is@o zE@tM>F$J=3U9?Pb)z90dsl@G%G^4nSZ&oo@&}1wOCY>MZPBf8V#=zwwSGbhmMb_1d zb$>~wEjXxk0|y_LGzV`QVVQi&Htqt0X1s}VIfCFI46CF$)jYhY5Egk*(s@gv;~{SN zdd8`^nTgfi@JVZDvHG{LFIT3+ifMKbWix{4D^tPYy(>|-0<~Wp8v8AR&N9Z93x(|P zh-86>OnLoO^MMyMu^hACf9WaN!x+MlW%Lvx8EHuFQ~RYuX0UFFP1~ zOh|6gYMXg>(DMFE(}t2tHD4<7TiV_Gw+ruf2L0<>lir$k3*nHi8SY%lby68}YLe^m z!9;6nG5T^ecKBsApekht35pC!bfzNq;hc_x`;>yw)pojP=%Y{crrXcnWN;X7x+^;< zSbFHKi@W2g9P-YGUr8m}9DPY1*iSScsI2AWh+YX>&&bblx#`i!E1ovI+1zRoKJ>Zg zc~zUtf!!zct$34HxrDz?k><3PJ1Y|Yeb7I7L|uaaZaJ~Y!z@96ytrS>OSF!Bn*W7f z8cjXcS(2A%iJ71(=jV}D{r9*<8B=a&I1zS@RJxu6YslGT4Sf>37)}%``l&n+AmvwIBuz_1-SxQ&a%t|G?EyNtv z@!^~#Sq^VrYF^8cvP_di7zd(Awmx$)<1JRMG-Rp!?|Rfw;Z8=PAv!*bV}P0Q1u-6I z=<9MNOxe7p8?wT-6(0&ndw-Z;9QdE@C5nX6@k<;P&zO3b)JSxs0Nav~>uj%bC^VlO zI%0RYOw`qN0v8CvLQh9MSI$U$jK9hHj6V%GaG0)VXoGG)7j0pJ8!7uF2Y>! zIE+@~x+xozS_>zv?qe+ed81$XswH@x>--GB_TJx;K|FQEkoG@YGl$E@a@2LN5tUA8 zYo4-w96fkdef5ujCDAuJCDZs+;Hu{F-EWDPZ>+{dZ@C_@~Ki`6z*p877 zNaAFT>fxnIb5|MwxNfdYoS^{5Cxl?5j(2w}qio#UWUVfoj5iIFi zcIF{TYqH?$({h2WX)cpA6nvxkoquIlJFuBMsM*d(M!oU`HkfTdf#LjJnih?9K zBBV9}#ll@2m6ihsLS~WC)I<}QkQ5GktGizFRPJ>F;xTJUg1*hi#L+xkB2hbP{16IN zbeh7#zc9W;l@gWd21?PEZdcW5H_jRk4p7W{#S!uN?q4D>F1xLQ_86!TC?p9=5I=(AA19=46+7Klu#N_zn-(!Z1VoPJx*j|f;wh0WA5kDA za<5JTg6tDx2$Ug&jEd@|>(0bvkpc$B4MuoaTboaR z_u7Q+4nfzy;-)4+(D@!s>7w}VBtpLE;NV~&KA+6?YqY#Yiq-X}T?~DR#)j{@8ZNpT zDkRAx-QSd`~S#{$7@vgbIRE;|#Koi`n(JY@Lct6m6o0iwHw zt{V^J@2d8ulEo~sjMllJJNl~byji%&E4Ozr;-Wu;r#2kn;V`AmJz7?W_uTG0klGN! z=m9|SmuCwNg!oQxtM++LxCuYpjt>>xGI@(I z2*QN=%K(m14aWCa?HD>gIlTT8kSMW*Csaq&mN!EMz-0)kpvT9~M4G<5xB zgp5G#(3*pc0#t^EU`hPjuC2aQj$V4L0~>Ei9#4)X(}_#GXOf&1F5@3}NlS6^3(Ab| zN2 zB>nbFn-ANII}428rVJ^C*qxli_-x3whcru#{kLX-o)=gYW@0RD?GB06lP!CI7PM@{ ziGGua@7C@YR^f{xW2Gmf5cfU{2ErCwzsiz(dg$T0D$|X1Qu9%%748RZPOF^;h7M1y zzOu4yiZPS%^$4hr#K_V)_P3Em{ErLp?YJL^XgYOv_?dp>p^Enr%LA3F7q-6ve&BP{ zRCO#4Mbg_`8eD0je>a`V7xV~yVd(C4N@Gs8lIN`FZzBW70XyuU^Qolawb zAg~Ca2L>f2Eo3c#Be~*ong_~MrJ7bTs$;l5oR@}mG%B5GVYwgOfbCw2IoPiUPiew_chNFDi5bt~Ch`7d>3Y zi&qeNH(S|`_lJXt^h2_Rb!{J(@sRF^ORb3Qj)(izhpV`QMgPA&)F|JmyGtV!N( zQTuI;JZwDN2Z)G@Zj^2Ecir}tN}lgVot&`aJyF&LIMwRI{iVt3Lm12Ylg^NBQFT)&1{jjS>eKXpVf7h|vK7cqi+E6v->RqjTBZd1oK+dgy{u)J@fAd){P@z&Wh40KS$ec{^3E zU4c(6aqF>qza7*};OcIyQj!#7CYHE!fE4%JJ6oeyC}*qqU1c)+>zC{1V0)NN|N60% z&2B&5bG3Yl>1mfCMe?G83GhJ5%h@SO zqNbLX>cGjWGHBv3Xre%&x9Mh9%lX)DRK-~pRS2s}DoeRKn^u#&-YHr(5- zukQf%|M~OZLN8vhMuDp98wTP#KR?9cI0kA^*4_uB*_VifOt&<~q}N4-bm#;L~OsD-c(5W&uGB&1qhKFUwNDS&PW9J08 z4NVOxDJeW-*g~HJjEAbnqO)~4v*X`<5M`L{NtKVLkkcugIIXg*aOZHB*(TH0X7=T; zZvusK%9qXzAWkG^9cc)uRejV;Qc}LhEOCFVUGXkY#A~m8_0HJCqqO`4oZ0tXCfdJX zY~&Pp_;>{8mjnzOL)?DH1diXF5Jn!$=j+Pc7{Naf{#Q$R;zCEuJ|n>Q0K3j*w0E$- zuit3?Sm$2|x^CLc^7LH~_5I(a)>By^!`NuK*aYP6i#iL&w%oDI@bK^`C2q$mYC0E| zXXck@?*45^UV7hothxzpG`WVzlElgvCGs|p%uJ|vS&ei0TbCbz@-udlrUbU;IAG<^wF*EjmJA%klZSdhT5 zF!X%Ci+Q0{-)NQc@^bxF=RO6=6S(DwLGBwNh&+Ab#(;$HZgKip&dcf5)rS*hZmb7e)jCSpK<>5u5-KCjJEdk-!%r! z{ylID1(||LYXR@$^*&LDE}-X32f&1Y8o_`enfF<)J27z{wEvn>?}V-38Tl_q&0IjhdtOjg@B|{kFpCslOyWkC-129`^-p zP4Z^n>WfZO(@kvczM9m3XdGG7A`dtkG&9nE$7%BZ87un4%*;z39#bqCK!-tL3B>x& zj~G9CSk5lrHZ4Ed9T#(5q-=H?BYARw?j(i&)p=!M>f~v_JpwcUI;6XJ!v1Zgo4iO0 z;|WdW8)_hX<)S&Af4iH%ztk$D{W1wcB!&74f+AB~)wm`3Q2Ov|X^AMdZ{^|7PEc@o ze|O?Xfs4Z%>KuDXN9+nqJ>=}et*t62p5d0XZVVx2GztxhLKCt-*W_wA{rNMbs;1cG zZ8Tz$J40GGgtP!cfrb8XOx@*iG$3*PotYYF;`@(8^nWU<={WfyK=iitdVbu0yUD=u z^x78<_H<;6BDB`7eq~kJV{N3d+zr=HQ`f%+f0{8(R{X90R97a`fEjvMTFs6aPT9GwS?{gay{tr-+~^H z1`Wioz$^tGE3;c%sp)IwaEqm;1~0Zpe3I zFW+EFGfJVUY8x2*=P~3#)@XAL>>_2XJfLkLYmN{(qPb(>Z5tb#*vh-fP}P}6Fi?nS zSj+1yN79zt-O0;-0e=l5JK`a&3tZq&h8Q-m2{B(uPaJPB%ZDjIYYPk4!D_R!vumcX z;u`0imX{B!`R%=u<-xVE1}fw2BXyN}E6c^-*SWZ&Po$DKEU}Mm*b+CL<>0}P2sFCh zb@-1Tucmp(_+T+8`e~MW(zBG7mRlVicazpB>`Dd(i`R`p4Bql;9j?Oe4Nu477$qp| z9?mDV0_;w&f8I|`DbhK?PtAoXxVURrxVfLog0NklZR^y#!FHdPfCvQeq!2>a6!;TxpMNl9ZiFLwCf zd3UYmi%Y~k43M=gAKC+%el0C*+Bf+Ul=$HT(iT=@IdG2pwzl^pX`F36K|uDKzIm=& zLI3dh>JF%X13FT9IiN#;y5mUhYgEjaI)s^iW=|IuH;!9mJnU9GJ1Q#;-%bah(oj(U ztJw8+QJx0Tik3F;Mo+m6Yy0r8J_d{N)G4NMXmqBGVkny#8tE-25`NVj0w^F#Ex(!R zwi!XhpW_z##0VQbhjiQX@|kCv*W+$_!Mtiy1p}1TUlbzQik9j99a(wvh)QU9#l$Mh zqeiyCey!u^5um_d-gR{zBZ`!z%WP2LXa7kY=_y7U-4~<9MjFdyYwIGC8*_Xn%BaC~ zZvAY`OHQu1kR{EM@K14`vik|wnC@#D^=Fu0%e%=(9L6E!G<3XZ=+;;jb#>*Pof4@^ z@^ovSbcsrgJ!>ENG69VSd?>&mo-e)n|233gBZ8zp7Z$2a|4K|WGuR(A#DvmXxEpH= zsJeXo$U_<}YE+$;_OAcQD83+rlr#e@uBSO-E(Gh$;7STrgw!7QO=Bv~JqmLwDIaanfWWW-+VMTkO-Pm z_{N_c+pLmuKnfUw4fDjfA}21`R0EpQIeP@20HTSJ_6wB?hmySTh_4?Hom=-KfR6B+ zI$<0LM^ZVx2PezA+bce0XX@hUMUb|uwCCzI_ZRQgqtwM$JYL+syxLCF31Gp9OW%tB4%vdf+}KB59Z*(Ul>V!WA7ziMFcu9?_06a(8)_><&iMTV+-OSJC$? z5;cqUVAMnU^rX|Vxrs@BA&Y7(9tceGc%(4_G3la(8COADo1Gn;PRkrW&s$xAXOu!e zrW~NSf%G3`SDeqMQ-<+Y}b4 zQy~meU8;Cj z#S;UgOB4oWod>Ca>Y$LnCz7ws1xOaU0s4-w)*UCzsQt{}h+g4ss zU{d5JC^WYFwBhx96v5k8fk`}xTHLJciK)*Otj7zJtI^P1Uqvz{<8YmhDKLs!aTsVVM(3FinM5&OGJ zUBLD%DbLxs?0Se_HZqF%PDYQ0S{G6qQai|}dfFSg5%AyPsa+%*KjI2!p;KTvV>s-Zz>&WJO39Ok7=@+WxLCtEmCB%NSaO z;TpD%R;X==nB`lm@#5&aaYAXf%-Z$W?3v}|Rjo)1>bo8BO9t~u@OQqqH&^TOVTaF! zmbQ))BV}44GHz=m9kBAo=F!+?EamzXB%Eh46jrIJsQkB5bpUe`3?Hfo51uPs`7Md4 z#+TCen;D&eyIx{7Mxw|DJTyoUnY5AL!GNUys!-RJsqy<}Y=g#?M&-!(V^ zh(M03zz8sc`#)eRkRXyP*C{NpyG}mX!janZ28?{7AR|*`)bzRduOZ9_TJy(S|H~#< zQS_k<+kdzWa#P7%K?EHQV)O=)_A}d6)dDxT=*Q~qMKhQ)HK=gddGqIo2gj>VA$QiK zkg(4uSqpXLdvHbJL?!PWF2~PHN5@M}v$;Zt9eNOn+2Wv-tGp7(FrAvx} z@=DW1Q`rRvA$HJ|X^g}IfQ(*;_fN3qmoDRXY$VuJ!hhX`DVFOjZCzZF2Q~y%*~uvU z5V5%;tJ5`QP?fID%4!HP65L{QJtH4vWPmdrr=u4(aTv zO6P`q;=ca|e*`giKn!yaS zwC~d&Cry?~m+jT*Sk2W*IkVEt5AtmqD6LD2)m!y7jp{GcIvj5gWB=^z07H5@8Sn49 z7?L&J(%8CJ{+a&=O-C(ix`(UZ?Gh5 zD><6)@EN$^M2wkytt^KPwiNESTbfu}GD4x4qSWXpGNzF4Pu}TiUjYH(A9cO|jYbd@ zbl=JCsp+~88`y9b$xXA2#l?7`I__Zx z+=5zh=fCx6z%KreLmNt;SX*Kf<5JoKcU-LkTQ6c337SC1#qQ3cxy5Rb*Cux}CNBg8 zAbJ!*{C_YN(a;>yk!c-10&-Vf_csrUUx)yQ?g81p3Rt*EcY1RkGFVKzA(ysxxl+ab zI`_T#&%GB>g_z2lU+^-<3*cW>^6YTL?!J7dZDnJMNvJ$J-S^03uVem+c$MwU*QqtP$J;-%lZR65C2Ajd@hyw*>+B7F zWdklLDuA7WA3XwSgId1ldL$V4<6d4p9&nEXhIBV=Y4(t-6-fE%J)2p1Y<(KXbkCcIFJF%(j9ZOL^b;m)JohB7PdhD!*_wI z9|Z+~hifzoau7dKFzqT>`MM3_XS{mQylSko`gd-eO4RkAItO7h2fKh^7$k>%2v%57 zaK8=8)xl~KfGA$WvNu&%1Nm;wE_ULzmIm4fXm4(f_rnyYRM_2N<|^bC74NF&I&5db zygw1|tsE-N`d|+JEXa(r zv-KAi7r6~v<|HT5l^6-(h2IK`i;F=?s;TX_$-2*`vI%Z@kD(b}rg@d@Ctgrr1x7)y z)3+}a=P6f%$qo|vVw8jqq;~=W0-z3C+1fh4<;r9s%8tpX&V{oii8FMz5H~XH+q~#@)N$$V=F#Exr%F-a zr2BL{yToht2vB&pM!>!Ut9+TBmiB?IYi`o%-(NF29LVbgn~cC6C!gWr5#-+9VcTgO zs0xS+i(FSA@&e9hX2m2x$3$J7^LSo%J)BB2N5UxWNdj;D0Mf}PJKG>>NQ;kL2=@`W zi?BfHbTJz?rgX@4TboKB=^zCS=Yh9a9`MM`jg5@!a8EijGFCL#wwyPmn%deq>UfMD zF5UrSPin@S7n;4dqPEJk*fLd0a5dkyOs{=xUq+KkgU~^Ux~EAy!=fBIx2KqSyecw$i#1*EPSP9n6L8U;6p;Y3$jNfWJE+z)_ zhe+Q2nuc57CMr<10=Il|xcnR!{fXR+n~}Db)MG-tp3SHaS=-mK&kx&>)tuQvI`2{l z@bUeQ+8_S)KkwpK?TMxe+xfWDR!yi^zhhXpAq@So`zx1ALF7ny?u5qj{h$C>`bGby z>q{etr<;l?n)X;5(H+IjYfsZj*jZN;I6CnCbjDgl2FI zR}q(R=j3J_*PjY4q+!P#35{EiIIujt0`ia689%I&Rm8FK?=Ae%I#qaNziG zA^Grg6&Dw`*8&cvwq5|7_2E}=KrON)`(2eG76i;yorud7!pFmV76wu~(ASs!EL)5! zzQm@dM@CKjE;|4IjQP>sqY@hy?3(iGGtVVRrmjoFfar*@%X?SOrf!rVLVC3Ct{>YD zvaqDY3?@QQAO#1w%Ca2I=EQ0^(2e98gq>+}=GE?IX{&k(DK2VY?rkuOi%oNR@uLYR}y3r3g6 zKYH6R$$5kKNqU*2mju8t56<-qDn5dE{jecK*OiXo~M}C zHR1mchgcrEpz9FF(v zFcSrm4iMvck^#T#IB4n=p|pso^70to{*0bA(};7o#{8?%9--B5?E>l_FqKudwh|b1 zNQT&0X>Jr1D_%3%$8QAWejUp=$Z1RkQ$%I4b(o$;54pv@F)-*wOP?Eo3%4?N+QGO-ZVSVR{}D1m5$-`At0qiktDL^%;X+J1u=TCqy|tZCHoGxf<6 zd<^>F??e%|*ipKR!=vw;ljhkoYSA=3n^=i!PsxdrXc*s+3H*%yk$~Zuy}G8Yp75F{ zo-Z6$=Jdi`fm9al@6FxK#la%n;s#jRQ{d^rkn+m*`ss#B*D7MEeqk)a=sprT8(Vv$ zdiR4oai1o;g&n8%mcoqPn5VN0t=yQhu00EllGl^*xILI?N+A8QS}=Q+#h9si;{NaT z35E1~!eWj;*j5kSiOy0or|cgcVoO-1cYPutJ2GdM=DqN;`h&U{%*+yv)Z z)G-xBuR}L<_T^52a07MqfNbtzO%FJH8H1k-dnat+G8wop%h}H2@tL6-IqcFbpESPe zvOq)Szmm~pbcjUmKeI)R4oZVGkfHKH#C_zYYac)BDU4I!|8o`XS7d=dW{|x%`ywrM z&(4&_la)k&`ImYjt5i1;Sqzi#hJQ0ZETRX&oqM>C!NbmW+dkX$+nd4^8z+buCou#HeW|H6v-XjvUr{}dM`E7Zw@GFV+s8=o zyUGV4)qgJyBA~C{dcN5lY>`pjBH%k5PwG)IZ_%(kf|;Y&->epx%m~)7kEmCsG)LHz%bC%T%Z=hH`-^dVY}RO zK#QUexcL=Y9u@WE&A^X~AQ^;rOZoNk7(Jy-;}c89tP);#8xGP5l4i|FVmI`n^e_ci z?JD+5|GDQB{FOi17n%gLS}D24RHShtX?X-CU@e1GAxWW|Suq@%K@pJAwFydmg(j+3 z3ql0^KmItUD4oPe`=0A5mUuOAY*ouZ_Mx8O3KqM`*2#aEvG0W5 zi9a0fKCy3Xws*kW*`G|0Cy13DZR1m}4YuNbk>Z^ultR!)q(&(`DNb?m^86?JqIWQS zZ)z{K(al&r4*T z`A;jcpN9A`W$SX=Nmmk`vUN~caqMolgcXR8kLuzEwZqv>@y}{FoEp=(P3G0F7Jh8h z^v32sUnmSAoxKjG)jIw^n$G$!s;-OT1EQobbVy4JNOwsn-AH#!cc;?b4H7eyfONMs z(jhG^An?!)@9~G%KY-8m&bjBDz4uz*_4_2&bhky5H|=ocdvJWa`+t8*D~~EzxY3HE z=Yf{>nPb_o6%8q;d}E{-0UDA~a8Nfxh$B0xZ&mT;YF1+<=CvQeGo0;QF&eHye{F3P<6{Em_g|N zN-J+xe!PX2e`sOvYqHOk>Am@Ek=Xn>IG8p}!3fJs8SaZmwOy8DA&5Cfl*j)@}|&VMQODbMw?scHiUxo}ZA zQ`l59_sc4(nxPm~97xj|QyF~>$+BN6)R!aOqa~SHSzXQiqOU!Hfk zoFw8$+kShyro7Hl%7PF76GJa*do1LANsWtv^d8BYq;)T};ni?^HbShN30;ET>wku! zRMJ}CxVD}7pW1U(OlJBhduV4(6L>@GRyFD#sqB?0w~1M)6#OfG>l?IG-@daUd%q@E zSgLJkUf7jKi7Xm5;?p+N?$O|3rG-E~Fkg7LgoTBfoOm}@Lh0fMSTOn$Wsst}wP;lI z_dUwPBg4@+t){GKGTEX_5>$z7tttX`&zn73k*n)N<)wo@X~9FRf^QxdV$p^5o|z8R z^xp<*KBFl}bxu<=x4e6SFSmT;z%V}(2v1^ZXC*_&wq2k^624P@~ z$IZi?l5(dvz>1Om_fOd+|L1n&#vSIjCs{qwBpc$#(hTWZ4b?prOk#*GvJ{SA_Ep!q z&o(4I40WXH5j)8x>YI*-&LPgcdlewp&#*W*3 z<-zZRVonTP)&4ZL|NH0xn&)yRJT+C5JMHG9hQNFpa&}-(T@#`?tDThHcEtK5A0hjj zi0GgQwEVQ7>CJEMg3PhTHLMtM*LrOgQ@i4l?|v8|ke)juhw9-*;`}q2q@tnIx#;01 zg~SCzKgi29alw|m6DQe&WvN36_Ij)?|7eu&UsaUKl?bsXw{h`#f32M_v>6asY`uNK zTctgzzT?h;&x~WXaO8yY1N-2aL7s%5cgKiHrTP@#!sIJCnC!~%T*^x~ZvSc7Hm5&L z(<;N*t#`M`@54MQb^PItZ*ef4Ua%@GH#j}dRb3Nyv8FWBj;#GQGp$@uRms9D#_0A3 zvwy9X%j8D^CdVSv$Uc+o9M8vWGGZauM-v7DZh2e{C<@{`C|iis%d?3v!uQ@`4R0OF zTng;5*}t2q2b!_|Uc2t+rSmn<+%c)!YSBVuwUyf-A%sZETh>W1Z{)Tm+9rr{3@{6d zIviuOzlcsU{@8M{UlZ7qfVv?j5SW#el>gZ&t(TtwJ@4r6pF;|FPV>8()WaBVd{Taf zKnyX;#eDxkC?9p1H=q4ER@l4s5u0HT=JJ*LGAB0$uZ(_KeayIC;#W}#*0agC?yD0m zrS$?C(Yn)k=!mq$Uda(=))EuXHy zokFfZi|_nLmMM`zEx&&Gc#`jzOdJuM`9N==FE{shi#dzUzU+gQ(*|Pqm_ll!huP&| zy(^W9hFcG>npO42$+dXB<=9}DG1uBc<>@-fZmJY}%`cOI;2e9EbZA&&9`Rajuc!Fj z;E)W>nPV63*NAw;XnKVZPW^36$ZQ=4KRNdevD9DH0>^moZj%uvU`JQrCs8aXYo;DiteX?H%PB^~;M8%ixhV8eJKmI2p^ z2=CK)!4zbHEr&KMmR6vP5kFY?p9T!%f2~8(W2LAd8($Fmef_aM*~dnHheojDApPFT z6#QNErH>eOq$XXKSxp0OL_VE(4-4#z9g0#!h^UmyzVXj$#*s4B%BWs*<{ea;G<$#e zJG!2eVEQ@IbNa39&(LTj38Z&)ix4KsOoFq0I*E7Lu84HZm}VSM zcZ>Y!Lc{@~PW{|jB;%Op(FSpyFy`eB__xYlymMsN8pT_HI=mBiL?<%Bz>X1#iEc&aP#uQ2KqDqD>P zVgI3JnjiJ>T;cG-k1?fORuNh#3gr2J-#8G(zGj>|)-G2#Q;QjE#y%U?a`~HVm_efX zr5TkN)wxDwXUCd3c&jM!{#_(lA}n|`Tu+|)$gd5K3*@(5BhKQNZ$@V_e*(KG8fo`P ziVB<0*K7R7>!>5$nv18nl4*77>aP9ta^a*dw>-{4ly~E%}{=jgl^T zZgl3yM}Fq=DwJzd7&-lGaWMo+D0DrNK2e&00N8pXv#HN^wU`~2h0MgUwyyMZPc5jn zh(w^19dvgsd_+h_`JZ&ejTxY7gH6v{q_Xq-h`wepwnRXzk1;W~w*N4lutD9|9eNm( z>1xnyf;jm9wm}n2!iolmBFUZ$tGF;`qHD{_cbM}nH1}NY4qkiw@`nZE(JJ!c$+de_ z&-d0VT;RhnX?0Ur2F80+MZyzO2+SD{+nB=SPE;l`HetW0w7Cc@7V#wEhkJ~{a#|1z zjHaJ&SOq<&)ME*e5Q)Bu)qN?zr1?=bZs2|RhreoP!guUvE)G3ROCaO@952_a9r1W< zU7AFpFF)IW7R19$zkq<5-uki)-LZwAzOl6?FKX1*HD|(;vUnN|TQCnZt+45&qV>cVq zii?8?!WPJnIQp(gQni42h+JpVG_Jp6v)S~n-OI*H=<%dIJs6UyZNY-!z}$KQ$*PXjz`j{vHo=AJyBx%0n{Tq!z$6H%)c%Rb1ZPcj`P?B|=Y73)-= z(G8Ivc^KJ3EL=P9>>;9b)!`b=^v%LGn*Yh!W^6C_;q%(`$kK$;JC`5vbhe+Q;^lFk z#X}fFKYz{HBNJ3#8jQ{sp0z38`8jFl?XbRwB2#HtJsiNcRfxVw*53X?60N;4dJWab0bbZqct&AA1y{8*`SnJ9YEz5+c(fxDG%$$7w&h@6F z$xe`@j6@iUUEARpe)j!5GrkjBt#3g9c{+^j-=DKM;ryy?>qN=RKzNdIm}7qRdsc{knvFnf^WhzZ+`p!WKd z4J-rpDDBY=n@}YAe0J*f>Db4s{j6qJ(GLHgJI`UuJSyUngV>yXzzFP3crBF0wCm~X zSzX~mlWL+TXBn{^>@q<%TrmEg*y04=v_bC|^W$VRSFqz*)y> zIqr9wYST2Gv3id?m-FMlI-LcB{}qO`NMp7Cka$4lo%gZwt|MXuXDRzeV|do` ztZRA>ckT7?zn5`h8LnM?!fZhREzil)M#u?fQ zO;fUczifNuVL5@6$w^d&KDOFdBpSq)k;FgKH14AU{1zuE#;N}v5RLQpOOf`y<#Vd| zF(+%M?y?PEQCVK;oOl`g#5p0N1M-)*D@_*u2^KJAX}Y4cA3Kr!UZGAdR^M2l^~z9b zL@&agDoh9BwQG*nI8y>cb_?qP!ng&z3hhx7f-6KMBNU7vSH@*=S+hVKNFt)B{a+p# zdo3Li(J(JQQ%Lrpgmci+uQuBR+P>z7SfYi*A;HJd6{C-SKQ~7DN97nbe%y-`?FLvB zmyatihXp&OHO;4v%P!^-qeNh{Q6hpf+=R_KU{S!awz1RO+IqIf1QUlJIRfPeLf{bo zc5^C2y&9?lGPUH^^w31nRW{38BrZF#oyY8VhW#0_)2pA}7tL8T+R^O?5x*BavQ$a$ zn~&8#N$Y9DVE#ph)ICiKcIqc0EDBC;mk%_Km-DR0~oL0XU^9KE!d z#^IG5S?eM{iPB-ILC5zAhj;*VfKb0M(`NUytHJGvK?h} z7&v zAQ`5b(*gW$LI`l8aKohkN_K|MDSkviJaM$82VZsncgL;y*~w=do?=6Yw^c9`VM&gK z07ZQE8%cl)@>&K0`FqJ^iFowv!Ns9T4e#zv-djU%x-?rE1)ci$7~JYK)fksn2u zKcn4zb~cY@AIw;8`x>{$ntmqw=2ht~6z9g21;k?t+@jn4MtWUZH&8}3sGxWf{@ zbhz{d=g37lH~oZ$LyBr2kfztRaflEQehK*vfG@sdfcfxR{HrT5B~#2!n~WF@>Iu4Q zfIquq;xIIv6#uVn!D~jDRga(THp^HxLx=3MCRvLXGCx3=NLNt_i@$YPs_9PNUl=;s zGn?Dlzp;f6ZYMaqP)}Dytyd1{2ng(w+lRnpHe+Zg;hN21MZU1vwqcG<#g1bQT$wMW;)zS=CkL9m%C^>P?Ih?OJ$Z@2o*@0J;bmZU;m8E> zZhQp(%GHi7&rv`RJAUJ*+IR@*7obFDvDL--l=)9Q@RAr2Iz@P6Wvh##o0%FBPBPE8 z+fw-&F5H6DC@{6@5_^+IqmRTun~|EaP|^*>Mj$qgMv(63ro<61Qe~Wd-k)B1FxvdP z9Kvt*jEKE|BKf0y4wVRI29AIKXb9uP*T?SQ?ucq;2>Z- zc%dyvONEjwHn4mdY#ZmF=VH|)YxUQ z8%4V)NJ#2WPkr;=xv&RI#MsKp>KeH0#Pj2)%v<1^A3usb-JfM1b%@gT;%tcft$5ao@~(P`8oqPEZ~?KYP{BX z|DwQ*t`{3M4Y^;W$@4XKJpsY?(OQeWO2_&;6IJnsJk$GwB&k@1PGa|dQvmOa;azR= zs(tV(gH)w3p6;`ZW12N%gxOl zJw4)a1BKEV@y@FEr;q(Kd6&YJBvIVlhFD?Z`#zz@O~OZaA5U3E1T=N;PDcX%?C;kw zkJOCf(kmhj^!wj$Ql#MFn=7idj-SkaBB*07?+h?Nw*rk;vN$O$*Go|e9* zIi!S2L%b~OWWEtuBGtmasHOZarB!S@mDC2 ziKV4^?{=01c|?e*5dDB|eI*(;0+9sJgI2X)E*9tclc0szF4;RcJk0{t;Ae_^qw!o} zpfo987zj$F5kvgryen;|c^o75>vNNz+jdLj#!WN%Gdq#(s{|+%l}r><+&z|2S|-&T zxgSw@MY!QRdqp15nro@+6&=KuZ`W3HzQ(uf|Yv_{>6eYUD<-dsmdJ%GTBs;nDtCwx} zr*Gia!l(arkmflIZ*vxUT!{&0W>s~9w^6M%3V0hBwA5eMIRHy8SJYv>Amoi^CDWU? zZ76p$2XVQnqu4k?Ptc$EA3~A!#V{7XPVdD8fEYo(g zlNBt@&q}lbO!H5-H@o#LxR@CO0|(^L5XXOZi9Hz^`_5^$q7pxFL`Cel`S}1lQ<# zEupG767flR%mR|Z9LHi7ODqr$9s&$kRy z7}Sik2ulg3)C%BV11gva!b zB}3lT-Tl`F!sdbfsvnA(G!1a0fPpe~0#b?@g5&ugmByuq_G7>K3HbO16@4EzL|NKt zy(h$D&CkQgitT}MuLT<;RvV5ANn{|10p>nfBBK!oqzDhvMFbGT3k`NQ@BANkF>1_k zNT3UV;Rwi#m-ItsH87YIiqnYt6fyE{G?$p9jASCP#ogZCa`=1pr!O5I9UoJWkd*1^ zSuf1(-oK*)=aJ%{90<00!@GvdBorRXecOee4ULq_?XwZ|l^-p}XbO=CDIe`M6JkR^?Z*#52>_0o`1;5}0zNu_5vjA$-p5J6RQOtXX<)#P>Za8)j z6bG^qaSc>e%;e)2+sk<)FR@`mNx00WvLbLf7Br-O?-n17v~HrLL`Wdb#pNX?1}3Yv z4l2mN*;|>wlr+K#a(W3tl99xONYl_=X&sVTW?RGK|E*42+xx8~CI9Q*CmjP3!)Y$W z&?NWiwbvZxHpij0BTN2A*KY=N6*Gj-^AIu|Vxw>%>tu`n)r*lm>%%@hy@#7;mL~Ue z%OC}2T3q}3n`OtZTv(?X(jUo?i@YHXN)eZp36BoMW>X&WgG@@FZ^kM8nHhnDq^LeBz=kj7q$v!WnOq-{uG2JDU^LSs$62;b?9!R$Ekq3pwDCNtw8tX&*7efwY5rSY&ch?2D26*(E@V? zW%&rHHo`_MtsJyV%#1PtJ5WsgeUWNwN?mDJq#7-=pKfU-0#XDH6?vRthjV>#r_!bX z8>Zwi_SEc(-)WLkT9w{V0>s>6JkdFCxy)ff<$IOqNop76NYrLgHw37}Q}bWTZ)O@d zwe#b2aVaQFr-wo)QPRhn#>GrS1EZ26i>rr46v@z26C&@>=7BD-H>J3epXcud{G2qXvcBQrRwbcwg+l z^#`WTyr)$l$H(Y}T-UmLj%MfXwOsx(jcW%x+ecXz|1P38%*-WaWm8-VDzSHMyoS}3 zFh7Fy`qh#vM>Df?tN>59$%5xDvb$D`T-B)5iK+nDI&Tp;P zK%5PH#|(??tBTYwr6pdVpkNCAOh0pt!~G6u4pT5-k-&R3_Q!I%Mn@+T`JJuvfB)A4 zAS3UNGHx%9uABuALliq-Af0=+>o(d0+&~GGC!x*`5*QqOPbSy^P-nt$i+qW)>C}78glk`iXi03%T9rip4;0h^SMFbxb&} z->%bt;4a|t=A8eP(1m^aMZ1$tf6d>q%F2J#l~VdVW(J0dsSNhv)+&qvE#}+3;yi;U zWx}|DDK*CF9#nTugu`FWuh|Ird>(xn@HV0W-1Da{PnCA<;3BnIs#Fa zo;(_MM4;104ULPgXIOx(>~CuuZ6hQq8ZZr40B76`R}9_SrNQ<(rm~d1eZY{NXnWc~ z+9Orp6F~gr{xI(fh#@54OwukUKtvr+T0q< zFR+P9G9SdWXRG6>&Tf3iMXvrf94_fpHR?0~8S5}?B(-dGE`lu2y-B2sprc(P=!hu4 z?ExwOWV|*nn`ZCqronbWRh6R{2BRg3N=Z#t*VMRkcA-lx?~c~+QzF9`N1=-6kAmU$ z6bnYa`7L?#A(IY8{7<<4N41E5R*{g~+b*qmo6N$9DZjawnlz;R;Mxup{d_9oQl7_u z#`3=fj0VPp1E1-d>zI`cBZ3~5H}*p^Vc3d@#eMt#n##O7ZA?7tBu~hdk1ts z{_i>pm~oM9H*UG>Jv`FiUj6D`+TUH;terokObk3P?7Yi=JAiE6tAH~3Yx#b%8qj5O zlU2(|iAQRP2EcyVaXuv{dKZ>gU@V`7%RAK3FUZ=O)ZwrB=3(WT^~UkqHs{de@S$C^ z%*#jShn(xNLnW<@MgQr#$VfCaG#(92&1aBZQf#7L-JAdDSv->L`SJym&F%c=F4wR# zem~T`Kg$`|&D~ZAPI`#H!8Es*6l0wBJv(efM?>eaTSh`r6)29i&YYW_y%`fc#=wgE ztzT@qwQ~zz&fGWcUjEjs(UgddFM~uQBn7U7^oR(M)3dXO=4K$}#$#IU(!NcH2D?5E zul$ZZb@#c+K;xIPRE%$A{NVV#HAe&m5`7jDMZlt0C!I(`J;rC56eGnyx!{yWPgEM} zCo^kC|4!JD>PO0(w6GV*4k}RMq|%v-0~TOv1{JT&d~ho#$7bH4OOuZ;!f7B!dxH$* z=vojuOCvAGvzc9C*l7>23ZI&rTUU+eI`d$H|2@yPO2L03c^B7}mEs{{l+cO8OV4F;sTN{t>O#FsDA_F3l~zODYg@T_rQqG6A58B>^!>^Cj!Ei?@h8|IRc zPFu>!OViX--@4l62pxoCtIO&Ga*DzT2TOkr9*v}<*K%g1ON_*22{vLNl$u;gD>Z|F z$OHlmn=AH!pBuyFI5pmsE9OW4r|GA8l7{PYzX=cWkA&(d+`nIa5sHmv~nq4CNERp!?4Ymx`#tEpahC{(d zxp@LEVQ#uIG1V=i^w2|sB|b|eSk1_1*!MCpu`)3+p5FN4?wIsj zP$EG>8G^n*Q|+*@umCneO9%}@9@p5^RP>c{jV)T8!yGQ32pka-{Y0Ci2N&{Ln|^Ny zg%M<_sH?RM4FeePYM7U{op*P)0Sf-smp{==hyYi0+Xb82Ii_`mTwzm@XJe~X@gXHT zw7U+#->gWEkBhX_d<*&hGN!ooOqv5knhD}NX@ zB!-&LbS4H7msQ|x<2UGsMnK=mMt9HzIf9|f%Utf1*u+2;z*<@v8 zWMN`;ZeG!|TL8VMADbuZ`9Kzpr$oc8KXP#=CmVTo@2@b;fw>_g9}OY4l!ivV|M319 zpdJmG;UIup5fD(Hot>hZab&QuylL-(a&TevZaQ<0K{*T-hLp#U&6Wwkiv<6tTXUH& zCtI})H(8{i^g}~u&`Wg-|DdvG8)qY_{xb^G-s-OMzti) z#6pEEq``b(<3yUTh7u;6N^q$Y1B%U z8H9L9!lg_azU#9#j;Ceqj)R^7hpWEud0ks{T<6qgm$H^S8`1vp0bqejn*Dk2q@vio+fS!z(3bgoHzOnCVQN{TCJ$v{z%KoR+RvcwwBH~rxCSWpn$bMMq2maeMm#@Tigh6GNv z&y|<&3x^Ny>B9TBKSPoeqFEc+2lQ{jWgfVK0d)WuEhL!(|KA0jvsme^cAY2Up_o}X z+&U)aW&MhkgRO1bq`M11gr~^LFbdmys2HnAc`blLES1IZqpIH4iFbb1+$mG{^euE!Nl0A^NqFf{2LE{qL{;{zEY(g~*_Vez#v~Aro|GKo?7tr@`q3 zpuwD#G*)g`SNBlyd^3)a!DV|Te}mP65Oi=}em8n2<)o57usM_}XE|IFO<}1_YU)8U z&Q$}bkN_la6Eoi;(E8#*kjjH{Ed9`yuxH z@)DMT>?ynoZg8NJXwd9?VIm>n;82BzOMs8B!CX>OS*FwO?WW?CV9fC5gMvZ4>gB~1 zcv1j-P@m?a`jV{vk>?5Ag58^!!=+U*F){x^zEp82pCM6gPnnODmGhoooaYJxlWr|1 z9tKR6F>O85kjG(iLrS;7wo*@L&$)SKKfRP^8;^)Gyw9Y)T{x}E00bWFA0MNCpoaV& zIRPH;imI~37IPPUeLr2BayuPJ7vEWv@Im>U!%EA|QTa!7s?ZMuAorkBuN@Gcgak;w zGcO&S5D?&30H)8u91D5e-PTZ2zA_XtQ%V{l^*m1W5oE6nH96-Q>`Y?@I=#KT9tbzm zNyWRon41HfGXJ|SL$)+s98^Xiw+Gtf!b#~lO}a-!h41Z9CxEp3GYMRhq4>ths-U@@ zly@)r@>?Cw+&*Rm0;A13YooQ@bLy3*afP+*V^wYC6R_z+= z=}`PPsdv62c0!uTwz`sqlc2hAaI``p#tDQLG!<=~(C0ERvZ@={PV)dit0=P^wc0?I zs*KZKEZGvvh>+I?h;A4d{4boPXlawBiowvZzN4k3te~xDqTWhqbzwo`KaXI!*dcdkUz3PS8%y z+JKw=-Qa}Vbe)g4cf!f}Vu;>!rCu`*W|)vYZy=tycU$fU@`X;F@8at~TPxnBmXj^*Ab!Lg%$xt+QQl&UThj$U{RL%Jw^ zw1?VKli@UpDDhMrh&6U+9-VjkOev$1SaPzmSBFcQ1_mP5ThgG{xwn7xscjD66nQv= za8N@OMz}CM{Qdo{Wn?tmE{5?((9xsN&`yhqZE2|aCq!rF7C(CAcN7+yGD9h;d)aoz zGHO9XlSQ`?g)x@w=@*yUa8!5T@bECXmsxX`3N1}MNykjy#Nzz`Zl14t31 zRa6g_m#}Z8t2ZnDs{t_ENMt#VbE&|GBOep zi$6ukPW_LU4o~pf!h`#pv!C--$cP9sMF%?m9Rc0JA-cQ{WqLK>qGYC{-6DJx*>{i@v=W*z>GB|Md1!P_v;*qUdeL zfcPtB{lvU9EMif5{{DxXvwC32u;(MSkgw)1b?LC)q?@H+9I8ugdqO6w z1N*&Ngz-?21X^2I=kytv8A?`_AO3QVr>3Md>xI@niR!0UHCzIEVxjp`7Zm0GQ3&+tmul`n!o_{`V)|(E*f!}IZa9l*qz#!EQL7EXD?rc7dfwfpRY@s>@IDnX> ze7~KsA!t<3g1SyNDT-C;sAZ9+8{CmRK=<44dVSrDLq?p50_)k|gX7YQ@`pdy)w`Wf z_hUJN_sx$dD;|o}L;%xRu37nbbk%9|$@-mHHZTlBBzk-8cpb7U`KRY@fd^><7Wx85 z@ne9ZVl3}KtM&AY6es6_c6{-0X`0(bo2nds7Yi=7vi%u$`1Af?{gssqV8Xw+&^VaS zE9DpF;7F{Iua9Kb((14qh}}p`6uiNxO`$Ze{&F6VgV0<3``1B$x8KdFdAVj4Rp8@e z$J*m%BiKYU-Z(Trv(>X@U?bu4II^|z$toZdm#&(>101@ELw8WFfe$DT95T(N*vSXP z`M%wVW`8Gq!f;NKH(K{Cy<1wV44O|TCtr_0U7W=UU%ng@-ZMl<1T4Do9KrctzrJK+ z2ebSDAG!PSs=ikG06!wAK0t9Vkr=5c2hmY&282D(qUoqA{*cIqK}elsYTEwbcacWI zr1bV?K`B5-UEOp0G-a*heCgHUAqFgQ-HKk*c-KHbY~;-a9&KJS|^e-}n^pbYKXg zVKh>n$2ghmUS3@O`zY==H)mg!KYk;qTF&|5Gp4OMSuyF4xa4^gD&Yl!u4B zi%W}B%gDQ9Il3VDC!Z`2IYIh-rc@1=)8A@uiWUqV{0=I3L9Wyn^Ebf0`Y$1<#Y_eU zSE#zgjrg&S6_?%syC!ARYp~U3!>g=lXJccF=lKSCcX@R&J3H@pKKak+=nkB+H_vZm zbs!KF<`FR7x%+eNWbT3!WZd)~F=+0f0t_hY?Q~_h5n^Ivxa+y{_}rXVZtDZi9*(QD zntQf~$5>tm+E%`$=Oe+!?#8(+RVxNDR}h8|QosldEQi6*(Q5`IWr-uc0E)}$;~fR) z@5nIfv!;zT+bu{=%+Gsh3@eEW>w~lIY4RaXsAhcg^7{!Z0z|7pm;`)+DVm=Y=K*NC zUu*FJ8Q>o4-P{OS=c=@-Pe1pDRjA9N=8o8X)2lXFYB-E^_x-OsEVffkz)es63POp8 zmLu#F>+(XZ!ESeJOPUchhhnTiiVJuG(}7rkD}q497aQ8aeXs1|0Aa>SC{}c(p)ci) z=9v{;P1Z_?~#mpU-woVR)E;H@wbCM`%6k9Z4QS1{@q2zq9jDZK1X^sx`Jv4 zZOJs&KNsr*ybtTg##qIST3$dTXIA7c2;b&blzMF?e0bdVS#xWR_F1`f)`_{r%Vm#TpN$iGjNZYsU5B-fhaUspnVjs_v&FP7XeKMF( z2(SedpY!AMTc<4OOYa;dsrlUY)s_gNtccT7I-xQMF`s;H$fp(%F+i(Q=@{C zJy0?<93ugNa#w!dO=6xy@JN|Vu!~z`_8H^_a@d;hncWC~t5FXdwit7Q?{T_bBqzA7V33m%_sbo9Q52mDnhd{XO7HrASs~>nC<(L{Y&B zrop40^>2Szdpy(xV+m3BbE^Qux2Ez=YA^Yyo}rR9n@0d?Wy2Zz5weKhUHv=Y zZa3g^Yl||lpU+Z{lgkk^T*HY#dHSRF=BF0HcS;aIk=K|>aM;{OEcTY2W#H?f2lHkU za&m!yM_;BCRUJaqB0OCl2fa>vH^TsjU5cj?rfO{iG84v=gGLb;&qIk^Hyn`*?d z**5#q(&B&q?jIc;X?PfAlv0t+l0?xO_+8W+F`S>PDWxW-GPNT@!sVy=c1b*@XcACZ z=M1O#=@~N?dn6-=3k2pXN~>=I?nmC{K9wH}w>da`RLU4uPRC0e^^Sl$g$Yir<+dyg}FJpFI##aB;j><5Q!OL8;91(Re!Zbkm6pN(Z{C==cY!G&3W~S zkF#5wHafGC6CxH-@+vg<-s0T*FC%b|mtLtr0o4l!j# zY%eTWRn?LC{%);(dCK9KmuL<)i)|C3HsK$zf1rrl1o9Jp0}>9?*3Nv z(bU!KM+38)ywL74!4%hQMlf|PlWqfel-sdx55>GvcJN;6ZqA11G&M^5bl;(Q0bRo+ zcsB$6>G3tqFj!TmAzDJhBA62aYck-UyMVO1U;nti|LvCp(+87y0=70I%v^_wbc9$! zY^mY>vqHc$Qq{H5u3IYzNUc} zEIFVR3{z*bj~^IA%t6$vpS2XVEKC(-oB^hcH{f;=NI1_qkv_R(SIc{6XMEHF zGvggDE@1cgf;VY(z9JC@3N;uM5*Ub)kqkzsA^`fY%tbP?^Cn3rQ#J#5#Ku0&|7aW3 zHSzSk2DMR1MTG|Yd?_KDnK;T)P4ds6j22aowu=fe6bR5Yt+e~3P1%>Niw}3Ku1bWh z`kejbtukmYLvx_y=w%DH+6;XOn(XkuMfWF~TW#zicgqDC;d_QD;w4RH7EAV*Zix)! zad}l0Aa7U05>qLW8dk3z>S|$;{Hf(E&AAaQ!uCR!9Daov^==!D$)mf3CtunmWB==%+75Q>)|g3eG1CrOFBCUcY%GOAiB# zCO-FjPfDor_}I__b=bY-{Y^{$c%G=C`7urqlce{7A=%T#TO=A8G*GMk%+1Y}AI9AE zT?LT;)VCw!Z#|866&sgwO8w#1i!qm%Q5S>`6-ACy0pLRs;Cw^R6UdMupDX0F|6A}l z)8f-c(Z~@kP6E`ODJ4^YJ>~O9enW6-xA(*8mTDYk&9krjMmI+sV_kdu72Z+(&Cg%| z2LcDz-yt(uS^fp}v0%HUNvpcb$|D#d&?gcNwu!Q_{WsPcX20A-1uH_mS=p?zT~g^O z`w&Sik0=p}`)O97B4?_o?i0!JX46;2h7O|l1^?g$Z4Z~-)z$3r8BUq-IMrb@js?f+ z^}e+>B9!RTZEnt(>;TSpqJaPvzhtuS2kmM&l%{ds8cbMSHIOS!ZtbsVBeTBPZE~Va z!u{==Nw=XLMPP;p$5p2~y>T8M8EI*4)fkfF_6F-4ZtW#x(0?;A@n62gaeZUsYs*gp zHklvQwf>He05t#x6+sNnfzr&clNrB50Haf+Xj*KV>X9@D^&%C9O;yg)@1upV862iEsi zj>lTN(;3{E6ER-Zn7r!4yeouFtyB^qGVxKrn6Lc(<9oGo#l%E_M@Yz-n;I!U_DP^z z{U>|X{K3VJRf|QY1)wk5CZQ0S(wI||J2=<~dYx_oP95k+P^wuFnmc?MS4FYj4KDO! z&}D!Uo$3YH#}2#>0jSIqEz&@!im6__m4i*IvXAk0WC{%m#MU_OIpV)nPD)Z^i$0Z0 zFxGrD<bA&(Dkz$08NH+ zV9SB1SSnjdx+3M8oXgF!+$p3XiYLa=`?yUdd~6k2ZRPkzpDREDX;=6eLxYMUEh{&e z$;mC598N#OhZAqN1R_2Gf5}Q$_mw7M{3LHOxy#o&hH4Dh;L$!yhA1M0t>2fQAB;pG z;@!%_Tp<$m5s()zKqHjD*3$`ASy-c&Et4(vj)V1^%r_e0k0_AAc=pgH`u_iG0d}so zK{0EtlVJ6u#!fnE(~++TLnJ02j5>CA5XHDiVrUapVSO^CP8IbP^+4ctQKlgdg-A2@ z2LmYC&D`(bfl!`ZJ>l15+>J{~SqG+rAf1$%q}EnV78O$kK{n4eFT-U^o@GFu+=Il7 z<2zo(aO!=X3QA!1Nq2V;98Q;_@c{{Aa`S{)r%8GK+*9aZJZALs$g?P3+vWdqc5~0R zx1jO!n`3VoCb(i~(o5Bu$t`2$(jk+F?#=oyb}{0Mik6r4(ng3Vln1$lY!0(889z^b zgFvEdyR^POntZm-jOLV~44L4nC@cGP_!3E(pYIVSON;9xt#NldRD`( zwzh8&ICTR^^9v%>FjSiVgu5J#Tx@%`p~TD6_2$PH3WP(9nEBiveGdUU6nrbiuLR5! z7dc)9qH?erH;!zd-RQBV*)8Qu|5E3HU{h+rfm-1PaM048fN-^$pAVK!Zt;S)_B^_i zyOJY$FPG|HeFj8y+}zxe=WOr>MCg1SX`Ch_1*bWX@0c^f+jsy z;{^b=7Vx-iGuKv?4b4V@%J5hP!*BGwlu!!!XIvKw7VzOYs($;}}LS z$ceMlrAb2NG%xeQi0;EVX}N7F{17Ju0!)~ws18a6?L3lk3M!qzU})rmsz#Y6Tb?#V z3W*YyEZMF6=X`G(1QHF7k3TEbqi)1mc9NG9oEqkR%^A)lL9M^eFhV|JHC87gDYldR zErC^k+xOoytNEui6XLhbw#QWS6BsM7IuquDZ7zusBO-@gM6 zSjhQ62J3%5321v_!AVW?zh+$PtF3!OKQ%7Z8*hf*_XxQR*4fd&3h=aQ+L@kSYOqz& zNR(D(GSA_2VoKpiU{CR^v|cO#mjPA-BuIqWsqbM(sGKI>?jV=sR<`GL~6jctwTP&VHG$4Gx{aSF~bD z;e;rT#4iv5{l@Ml5+7(A@|FJsDIN2b+;mAYV?;8)NkV(O8`ngd9M*b6*DWw;`HQy# zT}twh9H)$lI0o8}@97cZrOWu@`|EpxdmMZ>Ux72TmicTyrJN#<@13e+e>fz8exuYz zlSBe{KlXcDjR3%ZSfal$E;08-Bpix8z0|%?dj3*sqyJ9kA;zczR2!bwV4nqWD_Qh z%C+JNNRXg6x#)Bj`aPwVkdyh@ls^I@#OzC?ml@8OwzmZitl0F{uQWT4WLKo~IN`(P zTZ6iE7k{8i0%Uq=zQ3fzF+?!~pha*73UhLlkmNE)NGX{~SJ0HaBn|^1-wERnO$5O8&wB8Yi0ya_!=WCG_0~Y>t`mmvPZRA!$ElkbFQ^G;ch-*D~iuIb~?=eOAd+PMdS9_t=zI%xQ_cx-q zz8&l92`;;zRy{YBlteGKfTle%DvH=L!psCP`@vlr1H#q=hwlJMyEQBPXoN_&+2m%i z-bUB}E3nQ^kawQfQc*@AHH84$hF_H%h@tV$OtX^Pz{XZwgZ}+5NmW^&wcK{EW`D{F zS3gi>@Y*kfsGn$dT{H*@Ihnn^HPGsuHZ2ps^RUV^H7zC!f`mugXlZF(|0#?c%i_g? zynp{53>gIY*eGXGQ6XZaB*b0^zq_~JXtF6JsU{*(Yec=Tz{Ut9qNc1csQpL&etvTk zA-OR;3lg2{hs>rLm_LXVR&!c@BKN;e0EskgsjHC~(p~)(|DDTjC9iyq_8#Pjs%4M{ z!xC_Rfs^rkMFg1bnwlG+&UJ0pTX)<7D;qquvXi1wV7LtD!pyRIdwy9-2_GN9KXEx5 z(M%I2MtmS=C#6hQSqsSMdTKvhag-~KknpA^Z`t+RtXBSKq8oT}` zcy&QRL0Q?w+3vVfh6RAr{d~m>@|(R4kc?1IR(*~u4C-6T%9sk3YU`j>5Q%>N@v~if z@SXRa;>*vIyaEX-{J3ZzY?oe`1zIg^+~1&sg;f6iyE3$7|86g2FBNGEsAsM*#EO3< zaM+vi;Q{GaqJV~+pN@gSWo^K9*z;|4u9!ESJs?sd&*xG*!2Za=z?U7@aq?whM~D4T z;&66$Gx&FRbsTWDA_1b8$8tjc{P{~tO3KWV)61_!hfDa@03$X=WwBlnayBvyI;j;P zFUCVjU%!2EvxpVsdIMnQlar!#>2S9h#+x^U+k{)MH(HN7vSeX1-@(Zf8(TSRGq>&8 z-gsPJv!TXie)6lR>D?s_|Kguvq< z1Ip^J8Aw38qn<5z@BNwIAqRZ37%}8A%kQpiYFg(V;jgt?aPDBj=JYu%7YC%l=vs$3 zNX0#_-iDFC2ZdSNB&hJu5HGGY5)Js#XijErvarIxmV=R_Ub{ zds?9*h}G@flCK*|8PzK`|82+%Hq8J(XR*3)@NA*itofI+iq^h!R<+^Ch?ycd^WyU~ z@ls!9A7ZjwLtksNl9-wK^6YUU-mY((L+I?|^P)zw=?sDnIz?~HDGg%e6E{#CO;ovj z=|#oFy5xNBC&a>N9GCvH@&Jd^%ca~)nhZJ103{5tT^!C`jDi}WrhzS(HlXHY?*1|} z`Kz1i-`BvT_VsHU9%vNb8JQsn9H>b9_LOK`rd59qT4$`Cl&h`r(z40jU00TIb#8|M z>iw0;mwgGnJ+X3C@ik21~sSt?5S7=6^=ia#*2`B)-H|z|NMbZKNh}fH;Dd_oQCf};P z8Y(}#OP;a=M9@PR3AZyZG4VS~V47h{=)%*vx2l>s_PnH-KbS1IOh531)V^Bs6 zX_(z&$?(2U5hq^C1gUPK!lSdCKR|iUEwCZgS}y3hgTI@%fMEjHe@?qFv;nw=)bs{N zof2|FgTc$_aU*aE7=xXmGboejzZlSN*;IffMS%-h#v?CkVC#Omw&isvi*e{>MhWsrQ05BuFJtY*3kf_6Fk7Q9zqTw z$-$^7Y*aPAwjTz49rpW^eQRr^!`u+E99u5?z43%*k1+0yY`xn!;N&u1AhKAfDFGvQ zjbq4tW#hk}RMKLKUw7P9<2iW#j4K>Cr zh091$gNXXKA$cr#n91>gjJ;%hId253V8@n%QEzlN$Tht=Sy`EOCL@S2Sz2RYO|$Js zfe6KRMsK+;MjbABR33HjO_+jWi^Tm;r1{wgC^YXLw_Gv?&fM2S;AN1>WM`95)XNHg z%WM>UFe*lT%S6&YG_>^6OD6qJwHPkb=}lUtl_rO7{p9E@9;}f<@sN(Ek>fvx7j>>K zj8-v=Nzu^Eel5&yB(ch9n_Z%LyqLEw}0=`^bJmKxZB9t}vZvkMh~UPa*XR3MX4 zHGh({1I%8!&C_^j;w_>I{^)kFJ3F>?C5`8mQRo0^MqPe+bFB?9OBkef=)5R^-Zft1! zttDmO$VL(ii;>dJZOQ{lj=wIZ(dC2L`DG3oD6DHe*2x0taCqdCmR}181HC%vUm0eX z&_r9Z6*I9KH3O( zCa>vm9N>s@aNw6?Y2W{)Y(wZXE`MeQ;ODFw{7)O|cz1siB8W1x`5)SleI=gHH z1ZRJ(0|=p570%Fl+R5_MYKxZ#3NrF|iNJ0{&C8fLtYI!0SuQ{di%LsDMq|su5v7o3 za81oM5N0oMK*dQ!fB*Ug#2~NipS7lZhe&JYc z$Yu>Re+g5}?-+GT8pyv!%4Jdc7{UqAv5)0M!M+aDi<5vjudCEgWs}WhH9h{<7kX!W z!T+H!PvuLbO;6-ejKr;+kNX6hEQJSZdH&t~E}UU~y_>lWCZ;@38*KPmOVG_9jq3J; zD-!6(akduwu246J9Uyw5IZIUdoC`8@L&D>*nd}M={@8lh^sue;ENC;W$pzwteSU>_ zpC7%)Z|NKS%-5Pt2w`GlOOq)kC!3N3ilC<@8=sQcO>R?Bg(J6eOWqinVi-~=wJ{e~ zIh{1O>_1%|Ev}1;i)LcnJ@y;%Z{LQG!F@e*m7V=}dwUyoPP}tb%LfD;MvfHz1g~G} zpp@V=yk2EoMQ9R+rPh` zk@0sGvG*AP*33~A^aY)rFWJmhOqHkv2*BDI zWSg9EadP?$)z@YI5l*kuq$cL+76^e-1ACa1M|@viPj@$4B|><4U|_c~QF^v5JjBxr z&hU3lsq;em!W&}lwA6n3G`r7Aw1q3>+7PAZ$3T6ckZ^XSQ`S%$BCV8Qo1b1@o?dna zzPFx?2?wi;!XW}~VFQn?B4ONTF`>_tg`<4Sk-pXnz2*?ezD@5xe8Py)> zv03rO4$%^CDPCNktZ@?lRYdI2?8_Y(l@!x}O_x37`iJWKp6qc^!W|0y{^-zhHBV3z zG$tV`@tOoChIx5@-u?CzQxFChQ<*&O=*a3*swxmSuwju}bqR}7_c;+&Ybh2@&d%25 z;xPUDGX|D!X@`imyLgg8yVV_}FN&v1zNGUcR64jr%3vi54Pku&_`qnc&BDQR{Ibbo z?c#C+AoFFnopjLT;WSqfIh4v-23Tr4#kju_tM*r-R{X8~L?y1>33sHn960C1UvIPF z-}i9ap03W$0`f~8gG+pZ#bIvoJKRIPJ{2Jn6hm@?O?!qHB|n~<_vRirpho?8oxF3` zCzd>#^1#AHr@M@URHyv0wj3z5fX%4+VpzX=BmTO;NAG{AbFsEfvvO~=W@5GZMFHsH z6T(UIk44J={Y%1`UROs|)nlzaOG=uGA|f&}e}ekb>IP;|Bb^OBUC8L|+qXcro93XP z;te}I=XJBBs;Ow9PRec_tf#IbD?0?*mHX@Em6h|yHK@kP^AC@YufxRPzU!X@P>qwF z{(AS1vt~%w2Ca%Cy-wAy*4B~QJ>VZEhZ==9Sw>{=$P*v?_76#ybYE&yn64y^HP5^g z1_}>>xG!&Gu!uU=MnOxXhNh;>z&Ij-0cuHcagEK&^V7*oThc{-Ud-57NZ;$xlXsp4 z`$yYDwG^>-R?eiupc|F`o8|l66BqWNm};vPjB=svyV!6#F)TGnbGjFq9w(s52QoM9 z>_u4YEB%OwFqr`;^+(EXhx#-OVTw{Al9}?4ls!Z}^3-~gQltU>=f4&I&_Zb|=c)`~ zfw16>6(HAV&)zok?_hpsO&l@;YkkD?^D}q|GWnb|h&)0q@xkujbv`})PDHgOBP|V^ zC+7`B=|7P#Tg#+C+FRqtyxmZ0te#b3SyyVYW8d!dG&l9K8SrsbVQF{QECYiS;}dv} z#f&Kw2bh_n$JDB_v%m8Zb8f-;v$C?59wg?8MxdbqJ*Gl$6DcMHf@ca0t;z`raf*uM z`Q!6I3)mRBQ8e)#cCJNQ(tmfPLg`S{O4|y^Hpi4(YPwrxQF!2eBR5PcQ(XB-Da>nf zNwFe!4=x5?$IMLq`#(jOFYv;#YI;niYSuDXoP4NBh zMB4T~7=jV;`QYH-N5*yJfxqyY8eKs=TGmn-l92lwws_T_bisNg5Fq#k2yc&_<9F_L zRKxOQfwbNkbI=z-nm4)JSgsb&`dJ|-lEo0UnLHCda>J-n{j#C~ZpU-3!We`iMSJ~S z5&Uf>sY&&|e{L?!={EK+UPI}^WYukH;|Y)bWpes}+d2&}vqf%fR?LB#o`egNqj~ns z`^mzE`9!=yr2m3GEG19XP$qXtmV}kobLHh}4KG)E+)Pf!*TO^K$3}a5TRoq212BHE zoFOqXF(tFV#}{vVYMpI$8c1xf3e~Y;Takz~L!RR6KP)^m03 zq{jFEp$6c!@kIr`_oBjI`973^jstxBYAbOsU_H0&VMf(q(V&@~3Nvtb|7LIBt{WHJ ziDzSDQz=a9lS*~3hxggzK|vRX=x}p%6a)U8G=OX^aoQx){PZt3WnAAh1wAO!`&1)h zoGw4c<2{nlGE%#tt)Y$T1CLRm?(xli-j2wxB-{!+LKJuj$#Ga25{*GM1t<|kf1^W! zwQ9`$^Go6Q9iks61_rSAnM~0A8aF2R{Lk?rBEfjRQe#D`rCQhhBaSDr=?nFg`dLyJ z9MPumSKTO45(;LMH|XfC*Y}KCs?j+C@WD+rH8tSzbzlgwTp*1N{F{(KgpW+E>{$?- z9N>sALaIfrEgGx9J%Z(X8SbJWMIAuf(2!WB+qzs+xl8eel*IjLY6cWQUTqWFKzzUG zqlTBGd!70zPqBw?B#M?E6rUuJ<*$Fq*OeFX0A-9RQ!GNxB2o!sbhLk zvc{V!A=^Qmu)aLr@uq}s#q1Es#AbGM4>t4X;LX{Z4I`Wh8F+H}tvlr>^ni{)=Eh(i zMTSoZl0RPO$H&5F!J{fT7*}1^!XPjp^{b-DgNFSA`ilGR)11UJ$+^d0F_5 zP{QD6#2)eH^Zo?d4?d6bP|`fwd|Pc7kWPJbJewiWiLZLCI0E6s-J&z-$vSP#3ya!h z-}n{b8!jfS@5db3E8k2-fS9Df0t+datR26YjQcqgUzwruSOcRFl4#64jG7?i%NN1K zS=Z`^(Z&?+3WbTDF)3=HrCFs%g`IKwWW&v;&K2O4bgfuJt zw<%w|TS)h)Xs>_=9Wk+gb=}I$&Mq>ZOWBD5$&Y5BCc^&YyM}ZsgydgJ3xvQ66BFX_ zp{M&*Pz2EoJJf(?HZL(#H6|NTp>7iXH(hXHz1XDZMY>~+(yvjQuSBo{q;o`Pw<-LP zni?#=H=Fz{;NflRv5=sSM=jEQ2P1(L(^mlFFG#ocpRu}$t+$u(D@Zq85b8)2_i0V? z4qu-x9#W@JA{6;ol6ZON_qGrvdw0oYozK>I!0p3?n%Tbl)QQKE{!9#MGtGO%?DY|b zhbPT5{&{CKaqmH$AXxq-N6tUkVJnL^MB0g(V&ud7$;Wr-h=!;vDWK=&`ErPJnOw4^ zu|_}nVEWI6VtluO{4kmVbd3vSy|IXT_fG-9nvy zhqT~R3Px$Dv_W{Y*Y0TNrqRt@<+Ec-fjU6$+=mDTDm*h2)abe~tg=HLg+R>`XzI4I zVwZ`_!&a~#&LdAqo@S~$KpsW>&zMNs!lL+Z5_uEmso2+-`p;|x%v`lsyYpl#AS6B^p1FVJJC!lYQKLIr1VK*#tBA9Y7A`StgN|j_Eu@2KLAql zMJ9aYD!4u)tarVw2`fhwz3ohQttt6_`r$ZCi_}`m^TYXeHBUWxrr87JU zX0`s`x<;TXkBUtA-wQNJ@=+PoCY>{WxLgh+ve8de(GAyQ3(Kze_Wp_&rvF$bf&^(p z<6vRg^vKYmH>3Tp5bvv-7hoH7yzjP-kF9aiCGO(KA&@ysXT8<-4E{!9_uXt)zHCo~ zs*0xFAwSEf#nUhpSnOf<4+^2>XXRdHEgGUcNTFV&=gjJr%SuRYyGJ4*>qVpL7wKpr z>`_v@y^#@H>QM1wodD|a_}*aWE!Rc+@20}fx$;29LEZ;z92L*T&zde(DAi)ekedE8 zjg708Jy%~n(D*FuXh=cK1^GKtcC_-O8L{74zScWEb}Oy0X~@8{S9_b}VAu&~23^YapdN6xJU7egJ*c|` zKYL0V#2wfbzpY%Xr75ur%7BOy z_2XVB5LO@K-Pm4CK!UJWvj^%6afpiwOQar76n=?{ilT_akx4S304KA!_~*uvjH$tu ztz8b3?pG)lSGM=}u~{q4zKPA_U8p|E~qu zoJ;n!)F*BFbYcBTX^fL6Raj3R8%Y;t>GLTDN^F-fmZZSP^c~*6rkzr$zobd9LVyWA z-^64RO*k05zF-6URZ_w#(~;`{5n|(J{#T>3;LMOPOAp_&wZIk*91fsBr#Zj=PHUt- zS3L3>9aTp5OJqcZoUAM10_!c#OKxy2p zzrpBde3-A90FCpTr-ZX;?r~pjYI5Z}n zh(9sT05{_2CxU~M;QgJgI~oZw2oaswTh;s|nD1`|cs?qSk^kF6fZ2202O=gy&fm4d z1&RI9NELH3Ho7ajyU7d$ufogK_)LD1rVZu9tZY99RSANWZUCgi!_V4LZvjyY=*wy; zreWmef=W?4)GyL{+?cSY7!UA(&X2f0a#j64c;G(+9wV9>Vn{{(VPg=wO{0S*IXGuu z9nEJBZ83mI834#6A3^d*81QuSd1u-YOjz;L3s*j7I7s5%*&#qXR>7>D{k2z4F1jxd zbQp58#({n%?~8U^@T~a%m^nucr}-mY);b-%fqJ2` znCpO1sh@;5X$X8cAl)4{s;u8DN|`7e@w`ZFeBR4^UI8qY#nqdgMJ8E`iGl?H4-kd; zC-})JDk{>wyPD{he7)m-?>>U=-yS2u_AV0mpFqiH*yr5vax(GA=N{0-wz-*StR5l? zs%}aQ)iOK5&{}KQ1E>`*)vUduqP-$>(mcUv@EE%+RYwrg?e>q(&uhrb|8)IGI1Az)aH00^D(&ETN6zLz^2O1q|LfPAzzhO{KyfzFp z*BId8c_LwOn$F;M*uLAz%*@Deey@r|>hJiTGww_4X?s{tROaU5+#;*IEgFV9Le2?KL9!IH=> z?(X~5Gdc%*dv@=|b^5c_&im%M^7%{IWIAS>%rBN)Y;;?_pPp`(Y<^PiJSw=pDf3EL zZp_*>TkQ}F@yl!-mJTdXkcHca;N{Cu>(u)5@KCgX7=$ z5#9^y@+xEHp}%D;hPlT%fL1crR*b>4^=_axl885EXgicEZy;SZEeutP^!^?=;b}p; zV8+Ue-wG%kduS(qUL*dux#0))p-mXR#6(2N&2smw(!3BdBa#kmB3{%pKzW?bCp$ai zH|n?-5`Aez=HI8MJQaew@;Y7Q1W3b>NwHt3{n=#W9J=wD0t^1q`K1Qx;|Ch!73dQL z>f;4g)ZaEbxf%gep4Z&(KlH6)kO9>k@b*JAJh;s+b=jZ~n{oq2vf zd3o*;d_Frp{m+&t;TyP&fGzyakuhn2h~FK^*_Ma$DixyRX_i{>2#FSIPm~kpYJTl( zrVlLB7^5m3mM6W#n4RsNots!H-I%Sh*qQv6X%$YZhBIIKy=3NhNY92&7hI<$hs$ak z;lmBFjI11QqzHT|?fV`ew0syt_YsBkdioL6R8>tX&Fq4du-^!ge{3{c>MBg$l~UOR zZE(G;aJKxd&rZXo{8%`gw)X-51F7)BF!Q!NG;p=yi>YZ(<%obqfbhOfw=3B7ot)Tr zWa^cqsDTRer3+w2N|9jK(?KsiBZoDODR=SU7liEBock<6Y*{T?e{g z6L3;=ce_K<(td(Fb`Hq?zdt<$#Fw>P&x4QU@Nkrx@V8==Dp02KqS&h%nQUx#34Dih z&AbU;m=UGUmq8CMWt`jXTG0N%zJFeJcFaHheNwBZbpInzH+}|;!%vyc5Q#cr343ku zVw3uhbP)5p9|D$y(PtyKb$W5pKt0ir*M^v<>R_P}5tNAw7wkhYU$246!D%(RQo7&Y z-rgeS&MBn^Hw|jIcWA{v7JtqHU7*ho#|sbrv>KF%@X2_@FU!CuSee=E_;92Njp+q_ zNZBGm1tuo`b)8oz5J-V}sZJ$NiVQH=5(H-d<`xm@czGOo;p6A8^nMDQpXY%R5Hy@V zUNAPD_b*FZy+F%eLy%w`V5OiK#~X5d3|jgD!j)+JC^mJIwOoyVxuJ?}a-sx}2@+G^ z^+TtraIjfgxlmo3kT>PXNXWNT@+WOF%3`N`KYecrXu@Il;2x^=r=g_<2f4%jB()D| zVEbB<%Sndh5D;@2%7)>lCbA1~Tz99oJ_5!u|9r(FWJAg|k~>DK(EF;Sw)HZnzD*Syv9wsK2Voz#G?zt2M()uop?15ny}RhpoW%41T9S@1WA+NT2NKn<8tF_Su zy8IO+)ihq0Qt-5m=Mzz&UBE~88F@cnWbWA42NBP!Yb#pW3UCNKgQO6jyRD@?na@tk zEcD=VWS`R39uT2XOK(FuoeO84=*-T}{uli;BJkj-I&*HsLalw%S;YF!nFbnUF+G3j z<1N%I0VFbe@W27xj~IvLBSv`+v>qfz5x?BF2KPE4fCg&dvU}k4x!?r6@+#2%<%~(t zB=ERj?xK62!m+b}k#pr?*(DR?4uRZ3_lN67vY6fbD?%MNl-@+^?qx8r>)Li=8) z+`x?rTLEeyEj{5`#9KA73)X%RUFLqe`bjbA+kg?v%VpGyYfITljch6?kSFQ^K-;aH zj_28B3TrW6aL*cPDe$@044gW(d0L7yxs;uMBBNNNwoAiZA5oBqMt+5YsCLhFGOwxM?FeyvV4S!#K^}wJ3AeKU;_Bb)Y$r? z{iBPNq`I0QqjwiiKvuag;Bh@8a2^8`FCBw7#Q4(WvBdYIaNv-<05kDCX1BCJNI3AG z9nIQtZXkTXfP7Wfu6H^}gnM;8l4s(N(cfxr(~>BFGTy{=TcUs(pr^ml3LGcbZG*~Ruk;1o)3w*4cIK5*M_+B{n`rN{)z zgpmVaJ2EQjK^_j38T&PeqSFVutNB_uFXKArMIlj@SoaaJiKkA?<&uLB2o%NxEJuB-- z89&rFm9*s4j54rCl*)VsyXlV_Gf2O#%8RY?%aD?#9ItUs6RTA`-O*s7ERYZ+$nQ3@ zoDZTpTpwfSD}#O8d|h>7vM$}=|B}x?*RNYNR^b&-W5fJd{|}Cgi0QzU$AK}^m?fp| zWSIyQ)*66UvVug!k!a`NmwB`&OZhhZLWYu+hv%nMzNFN!+t-IUVp3l>ZI-D?1nGPI zHJHy35b{@LvtseD?M!Qi8?>7)x3qxqVY|RYvZAoi#om4#r}QUGESSA{up$~tcar|t zC$e#{g-6LEk>ayZC^lEPtTc+h5zobp#*pjGaNjTLFGe2qBi`*eWG^xy$d4Cp_!spF z?p=L*($~IRJLPJQJAUX&Gb#?lm#D>JZI|;xs&$Fx?*-l2*!cs};C!PE?CtGep5gxd zkrpPUwe2o}_0MXzQz*JzZZ69ZaH7F}BS{SqnciMAo^(v%tlF`~(Ed%(Ig5p??oPC; zydnF&qAM6EPs?5oH~~i}Gof(z0f^v~>LQ90%zm0U$xao>)`~&beh?9B4K3TN9Nm{N z3R<^d{Cb{QUiN-Cs%-`73i~MeTEv8ePiyEtbsjeZ1?I2UzR1dg_2(Ydj^QI%^a0#r z93V4cW@7_n8haq|kRw%|9)+~0=VQxRgbgs92a4#Enz@^pI2ujbg}uLu=b76P;p3QN z3I{Y@OT)>OBhR1R6l?=a$4kQhapX8Vga7+?d{>j=PB{uiPwCXH4%H=J4GlZ^Zw>)r z=E{@)NqO~iup{L~I|}1_K3AsqAxNZ@A1Nsd3#wd*NMUy#!NJmy$hZ@@wzZ=$7xf*3 z98%$F|DZk)bG}fZ7r`(qH~|G*U!Go`mrmwOX(ge)7zW_S(=$y1Dv2W*)*z8^zyla+P$|0L{xDr! zyq}}b%(YTsJV0pE#LUkhryC$O>e4yybO4x13`~jbMhHg5Z$P%Wc&Oh}@;DqEFwr9{6mnl?~^g$4@L?5A!uLf5yl8$^(i#LH%&bZ^l9> zhEXNH96B0=rVjma>+nUf&G{A%+Yz>{_1XU+U}Ps_~8`ETxrmC~bVQ~~y;F(XD|Qz|B;$#F&JUhVRSz&Uy8 zXh^jlvgE<%>d#GWb|Qk3rWCNJb!JZh@m;IO|{6+Q#1@GcRcZbP5(5FeqfSq zsWU(Or=gn2d^R#L7;hzw>$|?ZgnV<77TATpn5g|n`;I9@BloS5R?~5eqqfV+a`Ve` z^9dT-o04w=aNvvHd5C&1K$C}EDl{?%WTWcS-4TRXA$6H7Jxs1vR!0q22iM2TA3qiI zxMS%7FS7kNETP!EuCRAS{!T6Yu)fmU&znE3Xqj8mi_ zkEC*|IlXwq8n4OF+(X)7qOHx%>Ctw$V(t(W__`b~n*S^)t3zmR!PdtR9vmD@DF5RG5-m{i|7^reWpNQ@jRF^QA!)n6BGEH+i z^hy>^6ek6nEnJ`e`}r>(`YsGmAlQMCxKC$2`0Z<8TsiC6*saebSHQGzhO;kVa+N?+>3%-niutcoqy*;@Oz zXDgSeJT0I2Sa)cff{MP?UplbpwtmFj4t| z8ub6nfA%{np5K~=GY>lY*p;HYoQvsW%0w+i8S%B5;1Dp1yz1<4;hWU(@X? zeeL}O4;hXqE!~pizf$U{Fb1?ls%EA^C@~XP6iDDT3%|=jrFv-zsDPE`O%!;Z-2j#g zt-V?}BZ-~|Qut7jcg=8!y(69{JP$wW{eJ{xlZ)d%zJhst<;sIVhvb;2u9$rCt%XGq zrW$$hw<*{6N5==$UpvU+-VzPCbzi~%=oN0Wj=*$Jg$ab?}W;N*`l zuCLlw(RZU=!lJp za{z&WKNPR?;eRp?&Z(aeaWR42F>%30j*>sW0i(U<2++-df0=Xs^3m=ZyJnL+nnii8 ze}S7Xvs@D`Qy=f&7jwUxJ2WKgU3`)=rW{vNLyEy{lxBCOo^qgc!?lshVdW08Gw22` z6OGp@#(k(y$cETPp!FZlrZXznY+Zqz84TK%AbH^27lxmtm@BOCa*6|Gf(`Jtf)^mt=}!f(YBj^+zKzv!H-bjYWgk4?BC^A5QrZk$Y!_DtPtG` zdd%ji)5i;iW7`Q6M{`ULR-(+4^IqR5QTf9rYuG~2t5d5Ege|}}2}Gd%u6#PSD(^xm zaS`4rfYd@PPu^$=WPF*0tm<$LbkRIY`MMv3mOwrUB9K}SjvEce@ODroSfX-o$i;*t zI|&E~1Rv^0I6Plo6)zKRAVRq!MHC1Y$pO7qJdrSD!pqzE!EJNx)dyD)6o4yP7`hSO zvwm|}w{v?Ix3Ted8A_su3UV7XG&IrtUg6u)<3sG}STY9fhRdQtfd>7Jdt0tUQ_8O?^LP`_2Af;aU-JP$!UCpL@5k~Ui{cUx zr=ksJ;9}XWs}SFCJ0S&cnLeZQIn#`}azhVj3hFN5Ldv!i?7O+J>>k&`ch zSZy(-I+ie>8z)(I!a*G2an$o})boDX^GSL6nHGaMQlL5Pcb*Q^2_$tDL&J^R&Q37v zVAEIxyI|W62c$9D6vbo3;Gx^^BkX~G36>QO@`NUotI_Yp@LAmQ!rR8_rbt;O$*@qK z(qIV05JHuw5$!Le@Z&4O8}1}wCL%6VTe#+2C3kby*Fsr+Zn|<&R;EZGC*>`;kS0>F znF4+1EVno9c5GhmUqX5eL%%z{H#PfDmqr{43n3tGv^_p7l3-hJ&8vv`5-x|d#?p=2 zA?mB!bibeJ`7HOS++aVoUldYw;pJ77fXWH@3XHOxNwY|VtX-)$AS5KWI7IRki4g~NV2EGe>?DU| z6&m=3_V<^Tet{K+euk$?kbZSr4%zIgz*|&ncE1Y6q5Y@*C&!<0lAV}sbU6WISI*ch z9Xr|d)O3%**+gL@%%@mUr4;F4=53xg1l<+G`K=F)t&N^{_6dh5mu@G7h!Dsps38#f zL|TCbMglgW1;zI@sn!g$tTi5ZkUw~>_w@*q4k#v)V!R$%{LRtAVhkmqDGgN0i6=o% zKM}xmLjWgw$D;SlwGs5L`NZc0ps^~RF<4)E2e|(x)V|-@2H~rMXCYCwH8li*dk5hn z*`rpqOV_Q>jG1@;4&AkE%oq5HpF$)#qR{EDx+@bCx%LHnnkk`1Fh+wYq@+T@V$jwL z-qyEr~i~uM6x)&pFv$wd!;`z4qWlXj8`f5h^ zrEAbp%6zELWpW((!IGiYd#Rx()AjLsp*B!B(WjJJqci#r(V9B{psuoeI?kkRAkN=+ za1|BCOocMo&GxmWIMw@72}%+DBWNKCs#Jm>b}!qIC{#yVdkF-f)my4tSV+rS$?|U5aYS=lcQr32hiT~LreUs7VRGyDqJ;{W_7ra;0% z0Ye5g#0Uv2v7iZoMEe>+F)x&oAyTP7CCDAU)uKx^<>fKo1YHq&ENDpKzYYReS6wkV zoiQ{f_;Zf8iQ1A}ZcFxBN?~S;!@?^7X)jMKr2dqI6ROAo;<|}*oB?oVFS|ed(IX)4 zR%63TPfcRLBcO2jtyaF?`g9{WUuk->)^VbPM=)sOfYi%XDXbzbeX!)RGBrDT3)1&T z*wCmEU~PxrhJbsDhoM!}i>~YiHAbJyNLh)zLmy`aJ#vF;%qW`&ACkaB9V3C4XfI%j z$eBBq>~m;m?cb5DMyH^y9a6kXFT_PKjp;@1&xT5t5e$-S?S}J7NX6*h8TYyhp{*kS z<&F|1n_^c6-7bZu74K?6V)>(lQ_Yt6zetXaD0D%#cyyKgTI&%(W^yfK@kp4H*y0p!Eft=W%jBLNM0I z@jbilR1AAP=0>S?S+<9xHWo~tt7cvZ7hp63(-yf8mbkwyQbvjDa{ z&(_tuLKe@-i{-gsR8DcLhj*a`KY~3r#T= z>IA}+VH@~LF-ut0;GaMDWm7r+nL3%!60|$m{;BZ*0UH>ID4Kbve9-gfmjsZclL68Y z0GdSjM8hVmG+$Y92rAk#$)zDA?&?PVrgT!&I zDzg}xjhw=_5R!Lc;N#^NG?)Oo#HRVG~v`Dovj zLUYW4hDELG0Xw8Ocy@O7lu*vA%3-d8bJ_F4(&c7wF#L!MqDR2@E{q&Y=e9&2{Nk$O z;(n**$K%q2pOm=5h>CIeX{s}mkJFVSmh)A6S2H?-02#d;bYw`1Q-J+p&g2vbz{lsv zKedb+O(69L!5uVezX>udH)B!H#-?v~3a}{ojy7DRk5}$W_b#l+K?1qo#DQj|uU-B} zFOVv%hhe^OG`_0bMv1+f9mV0-$&Y(Hc!Gf7@t5y;oG!^ zTbOLKYs=8t4kChq96Geipr9`V-t{<2LtrXf_J?oq`<|5KG(MN>!@jtWj9PeU85uQ4 zS}ZBQ|NJ>nn;!!ST0lJs#oP$YRv65g&Ics;?%rPCmOUyraOTIJZGt1lX0&Q z&(iUCVd2eW(F8y!QzeH;gz4S^)u!%ry`|(q?9Y7~Qhr>t7xL}21?OYA=Sw+|E0$Pk zwZ#XRX2H8YIp8Ja2PvC2FZ-%XOG}2ihHGDc|kO_c=SoY{3qK4%XY#{0pz(mhI zFOQigEe{N?!Zg74%6E|}x8k$nmHm}V?sK)Dv>hx%7yMh8zq_+)H*?1uA0uxrFAEg* zK=1{4Nz5m<3ktf(x4>+y%+CQYgm~uqySiFg`Bi}Lldt@D@_xM9qeXx#14W8d*B`o- zt1BlE>X#js3H{(t>;7;*oWXCQ7HAO9%?cnnAo>Ll1k~096&)SCD#ec&I%dAci#2;3 zw0Z5tr0lE?fPMl(Fi5u*iCpK@>>8ZM3H_5>jY zU20|-r${GOsi-RNg|a!WcZQsWP$vk5_+kLiSqz9u666`<`mSzn(BHgyO`6a@?R*Fl zAUQcWemGl^z|P>1k&$^d?~FLQ=+@clTRMhAKp*k=bv}5S&CRXA1O4;;P>#eVbMT%_ zL2K)amKz8eAN9bL`&YnWqAyc(+tw; zy1PHCa(y8EJkGuCS<^A`C=HRcx3mOxScah^lzZlkiS!2m%}z~De*Cj?Pfty8;fbx+ z6`DZ&(%A#%2)T3~HxTN$yqp0@4N>UW@^TI6AOiOc2yO4w(}x!lU8u?QIIiDmdGYJ( zlf0tf3`h65?Z|urM$YBsmfW65;Lf%;bCp0E1KirwR6Y2w6BE0_nY%A!F=K24HfBG5 zNt4PSN9Bg2^e2q!NphwO>B{NFW7(b^W?Z>Xuv(Z`5gwB;+8e(%Vo~2z+(MQVt=UN9 zopAtGB@pLSJ~pPs07y`f_M)w=4dT|pD@hiEv@=+9B=nn^CP>J*{5>I&pxgdr3|Y{~ zP3Fj)vlz?Ve8XnVg0+RU`S8EDCljOH;hTQAvXT-=FX}X89u;`|Jct3>GOSE(&3@Gu zf`6JBc)o{-=$8O>53rEsSI;q_@+J|2Y>_&q)%{=t=)PJ*Re3f{Q{@z|Y6t`m5IY?r z9i|}V(C+cJE#SKhrC)GF#1%kNq?4ShYHLA;=FdPCogXJh90D9;6AP@|%tdUAqOoL) zc0EMJ<8^}JdyWOQg)Xi}qC~&RU&qkvE>DfBG5W*znwnjnoKM2T(8V7?l8<6^lSkmP zs7}f8|X;ig$wBM9xShO~{Sl(LVwDc77YPp7?tuZsVByrt-c zTW&0o!Pxq3iPt{f8#QHEO3y%3vwV%OFb{@LEIBJ)M1XIvWZ6B#OK)0=ybng@y-n9(GZ*VCDKfOZt+(=zHJUEzW`1H;C z+x?)aK&AeY`@n^Z;?vo^=A^eb#al%KVx~VkO2ZNJ(eFui#R#};E=|gbAX0?7mXDJ% zn?H!Y{^-5Q#LJpQ$PDQl|Df9YOK!9RntVQ_t*BjDV87D6dsy7@J^|anwoittTWaA)@*h$gKb(S}H{HAB6Z`@akETKrTGN9c zPvFGS75|>W)1VaMN@eY(j(FY{e0^u>KRO{-l8k*WA#CeVp~s6Ga9MUUxwm}Ipi}#^ z<kDSe#$C|GZ>B_+D~-U(m&D?3@0eHd~eQJY=bPR7Ht z!^+F|kwg1o!N*aN%!fl$ry%`l-eQ%>M%yO*Cd{E>{Lhz|}D??KKo@>?s1S-n^9)^gM{NUF#tS-dzbN>{Aczbxx3 z)*v5azDuNaE7ztlBUu+xbWZ`59FkER9?LOr+O0{^<6*3B&}WY;IA0b0U9vbWMbf(FY$a~r9Nf!iPQib9Z6}^Pya49*3oA}wznC@rtMg?~&vXn;tc@jeMmuh2J z%U6R#g65JUv7>#$kMuvddh8TVzd|u$AL~9`(KQ8&`;57FsH3#`loon3jtA*dD@~Ec zO9fHE?<;+JCh^mq^-vkvF`sVDqT=0eTF1l=sdh+YL)QCp4=kP%4FWDdC<5O!=gyl_ z`fd72;855}sv=$NNw>jsuUrr6`emFRxrn$`L9nrYhaI_O8o16IQ^zY3x@)(q(@ISc z>oPh^YPvcH4kB#CYDtB)ro4o;A=2J5pH|QRb+3_F$*&a0$T}~hq!C~ysdM)VF&%D6 zdQUq+N*`?zMDhoJn6ZsdPpc?u4sq>^rXn2SS|5{qLe-JTh(#?^qip?v zgpBvR6PA>DYE6}vRpxb7vZqADg`G5;Fjv>0HIpWhub}(TKO=DC(b{^diQy%ixlCP2 z6?wn=V2T?PFN}o_!%TTX`8s;%TDl73mXL(e5kBt~ofu*nh8uU`?IP+p@lWZZdJ_0A z#{TVDyL0g=j%M*+&hr|eC_GA!$V#He=TXxt_c?IA7PMu?Xp4tLRNtFL-M=(TKc>)o zYpumy;1+!zW&Mn`OTrwrrq;&y?nclysMY@BaWCo;2~}c54RPhITAjy;W7%)B1>dNQFB*_i(cDX0bq&Pgc8db@_n*ogoR%7u>%s zEdpC~mUw{}?d3<790OdhAO&$fj5`eB$k9VnP7HXk$a`R-=qd z0Y7QU;0fVgcw=I)nx?8mPVDn|#$KX2!ux|l){G5el2AwI_b~& z&8F~+%Lo!|Rx>MqQT48Np7jT(c1vBwWS`Qq3S*%`RunQwa+*V68tH3@o@eA3-Jc72 z^u}J{D;7>1T!~(3*xjA0Qy<9DL8q_5n60$pM3Lf0?HLYwX)Xq6C8~(q2+c?B{AWt6 zU^Pw63jifs9vo>37sPNj!(d2=ez0|;O3+$-Xc3zG^~(O*Be9NXCoARRKis4qH$5Fc zc_wQF0>c$;bwcP)&W_Tr8ZRKzQ`pazjw#%(qdTQfxIG?cT8RMb!!ZzqX`QAiARV^n z*s!JQkbD^s;+dMW!gh*$B<62c{PZ;g9g*T@M(ne3DG`2?PYb2mbAEL2EFHeW1OaUC zL^}5jdeJDRrW8ypoUcBf1XiBjx6!Jb^p&T2H=?58z)KhFw$6}w7nc7lLg%yFUtC}4 z#eDeq^=u1Z%gR{&FtJ-&P-|8V6Z=2w9=|n!U%TT}JS{cYsjt6maR`4$Yj(JPbSro- zIrPcLL<%z(M*&w|S7~!$O;7>;#ev?oT1#r6ZktM>h;&~9UxG%esYWQ=7fu)6>_F#pZdd*jYHDDLUH8~lDi z4!69^pheAafpeKt|4!pqsv9?=;<(NSJdpvG0KK##e<~d-!S(VBdt#kbh#IFg~ z_6!wVsH!g~foKwtQUN|l29MMJ=^DTqbAh(%6=Jr2@|ta3e!g)>pc4@h5n!1h3JdL$ z7i^rYL#_4EQu%>FLDEn5B5LCUo$t$RF|{n8bd7wP|Bt3~4#@M5+xDGpW7*5b!s^bg zRm)tqwQSpN%eHOXww7JX&-HuW_xZo;?#9LM=RA+&vD)srkFV?F{iPtWRKzdVU?x`_ z0RLE;Mz6}%>D&ERsXfYCb7;woZZsTgOP)I2Q5-zjy-B%6S%XI!U9*S6xcb?;5;kxa z*Di|sXa6%?Ap90=UefLDv%0qBxVJlNI@>>L!!IdybH{gb{4k|1-{}BPklftt&h@^r z)|I+UaBD29LG|k70L4WmQsr^A-sZEg=f5kw&Z{8HxxCYG;g>pLEnwN3dcy%re#qIE z^w8zt+mo&;gMv?^z?e9k-|IH`6LzUm!hyA}pO7ATCDcp?%kJ@EUz8w>%jDnbefIktnDf|>2L>3FeB(STLIilF> z=A|gbd{jPx@eGKVPdrcFZ>>ZFV2`#=c$KKkm*O^!_dZAv&Mk*ZD(QHO{tljtB=77B z-6W>8-Jkco!r0do2k&9$4um{s;M)xrHK+XQ7Kqc&MKp%p5=WNryN`rFo&fm>(MAMJ z&bXa6UuCTAZIf-<$LBn%QHf-B8?r+KLR_iR$}hgR9bsi8gSE~;RY|L<^QspKNPH0z z5VW*LO$ChIGBD*uvfG#>HhgNr_uQ(}PX{bM zPk?#kFjMdKq|6V9>B)9bn>jM>Nqi;vK>z_~1YK^WOHb(wyl)8tV@B-EThnZ}LxAdX z1BCHxo%BZO@*=e`n_$-zxzRg$zT&;)Rn3tG(Cf?a`nIdt*HwG~3+hwA%Cg?`Yzi

~X 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 WTCz3p(NDhvO$bs}1yL+*?Dszs9@YN< literal 0 HcmV?d00001 From 356e696b151ed9d744614e0d177bb8328c00573b Mon Sep 17 00:00:00 2001 From: Ebicoglu Date: Wed, 9 Mar 2022 14:15:54 +0300 Subject: [PATCH 2/6] closes #9279 --- .../Volo/Abp/Cli/CliConsts.cs | 15 +++++++- .../Steps/CreateAppSettingsSecretsStep.cs | 35 +++++++++++-------- .../Building/Steps/LicenseCodeReplaceStep.cs | 6 ++-- .../ProjectBuilding/Building/TemplateInfo.cs | 2 +- .../TemplateProjectBuildPipelineBuilder.cs | 5 +-- 5 files changed, 40 insertions(+), 23 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs index ce5baf1a38..ac4747de5d 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliConsts.cs @@ -1,4 +1,11 @@ -namespace Volo.Abp.Cli; +using System.Collections.Generic; +using System.Security.Policy; +using Volo.Abp.Cli.ProjectBuilding.Templates.App; +using Volo.Abp.Cli.ProjectBuilding.Templates.Microservice; +using Volo.Abp.Cli.ProjectBuilding.Templates.Module; +using Volo.Abp.Cli.ProjectBuilding.Templates.MvcModule; + +namespace Volo.Abp.Cli; public static class CliConsts { @@ -11,4 +18,10 @@ public static class CliConsts public const string HttpClientName = "AbpHttpClient"; public const string LogoutUrl = CliUrls.WwwAbpIo + "api/license/logout"; + + public const string LicenseCodePlaceHolder = @""; + + public const string AppSettingsJsonFileName = "appsettings.json"; + + public const string AppSettingsSecretJsonFileName = "appsettings.secrets.json"; } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs index 82d736bbde..5a84bda994 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs @@ -6,28 +6,28 @@ namespace Volo.Abp.Cli.ProjectBuilding.Building.Steps; public class CreateAppSettingsSecretsStep : ProjectBuildPipelineStep { - private const string FileName = "appsettings.secrets.json"; - private const string AppSettingsFileName = "appsettings.json"; private const string AppSettingsPlaceholder = ""; public override void Execute(ProjectBuildContext context) { var appSettingsFiles = context.Files - .Where(x => - x.Name.EndsWith(AppSettingsFileName) && - NotBlazorWasmProject(x.Name)) + .Where(x => x.Name.EndsWith(CliConsts.AppSettingsJsonFileName) && NotBlazorWasmProject(x.Name)) .ToList(); - var content = context.Template.IsPro() - ? $"{{{Environment.NewLine} \"AbpLicenseCode\": \"\" {Environment.NewLine}}}" - : $"{{{Environment.NewLine}}}"; + if (!appSettingsFiles.Any()) + { + return; + } + var appsettingsSecretJsonContent = GetAppSettingsSecretJsonContent(context); + foreach (var appSettingsFile in appSettingsFiles) { context.Files.Add(new FileEntry( - appSettingsFile.Name.Replace(AppSettingsFileName, FileName), - content.GetBytes(), - false)); + appSettingsFile.Name.Replace(CliConsts.AppSettingsJsonFileName, CliConsts.AppSettingsSecretJsonFileName), + appsettingsSecretJsonContent, + false) + ); } var projectFiles = context.Files.Where(x => x.Content.Contains(AppSettingsPlaceholder)).ToList(); @@ -38,6 +38,13 @@ public class CreateAppSettingsSecretsStep : ProjectBuildPipelineStep } } + private static byte[] GetAppSettingsSecretJsonContent(ProjectBuildContext context) + { + return context.Template.IsPro() + ? $"{{{Environment.NewLine} \"AbpLicenseCode\": \"{CliConsts.LicenseCodePlaceHolder}\" {Environment.NewLine}}}".GetBytes() + : $"{{{Environment.NewLine}}}".GetBytes(); + } + private static bool NotBlazorWasmProject(string fileName) { return !fileName.Contains("Blazor/wwwroot") && !fileName.Contains("Blazor.Host/wwwroot"); @@ -45,11 +52,11 @@ public class CreateAppSettingsSecretsStep : ProjectBuildPipelineStep private static string ReplaceAppSettingsSecretsPlaceholder(string content) { - var replaceContent = $"{Environment.NewLine}" + - $" {Environment.NewLine}" + + var replaceContent = $"{Environment.NewLine}" + + $" {Environment.NewLine}" + $" PreserveNewest{Environment.NewLine}" + $" Always{Environment.NewLine}" + " "; return content.Replace(AppSettingsPlaceholder, replaceContent); } -} +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/LicenseCodeReplaceStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/LicenseCodeReplaceStep.cs index 5ed63e4021..6fa6a4ee7c 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/LicenseCodeReplaceStep.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/LicenseCodeReplaceStep.cs @@ -12,12 +12,12 @@ public class LicenseCodeReplaceStep : ProjectBuildPipelineStep var licenseCode = context.BuildArgs.ExtraProperties.GetOrDefault("license-code"); var appSettingsJsonFiles = context.Files.Where(f => - f.Name.EndsWith("appsettings.json", StringComparison.OrdinalIgnoreCase) || - f.Name.EndsWith("appsettings.secrets.json", StringComparison.OrdinalIgnoreCase)); + f.Name.EndsWith(CliConsts.AppSettingsJsonFileName, StringComparison.OrdinalIgnoreCase) || + f.Name.EndsWith(CliConsts.AppSettingsSecretJsonFileName, StringComparison.OrdinalIgnoreCase)); foreach (var appSettingsJson in appSettingsJsonFiles) { - appSettingsJson.ReplaceText(@"", licenseCode); + appSettingsJson.ReplaceText(CliConsts.LicenseCodePlaceHolder, licenseCode); } } } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateInfo.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateInfo.cs index 9000053d30..88bdc27973 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateInfo.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateInfo.cs @@ -33,6 +33,6 @@ public abstract class TemplateInfo public bool IsPro() { - return Name.EndsWith("pro", StringComparison.OrdinalIgnoreCase); + return Name.EndsWith("-pro", StringComparison.OrdinalIgnoreCase); } } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs index 230a6018f3..d991c7101e 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs @@ -26,10 +26,7 @@ public static class TemplateProjectBuildPipelineBuilder pipeline.Steps.Add(new TemplateCodeDeleteStep()); pipeline.Steps.Add(new SolutionRenameStep()); - if (context.Template.Name == AppProTemplate.TemplateName || - context.Template.Name == MicroserviceProTemplate.TemplateName || - context.Template.Name == MicroserviceServiceProTemplate.TemplateName || - context.Template.Name == ModuleProTemplate.TemplateName) + if (context.Template.IsPro()) { pipeline.Steps.Add(new LicenseCodeReplaceStep()); // todo: move to custom steps? } From da43d40a744080c3965d6a39aed05ddec199ff6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 9 Mar 2022 15:12:36 +0300 Subject: [PATCH 3/6] Finalized the initial version of the blog post for v5.2. --- .../2022-03-08 v5_2_Preview/POST.md | 22 +++++++++++------- .../suite-many-to-many-entity-relation.png | Bin 0 -> 64712 bytes 2 files changed, 14 insertions(+), 8 deletions(-) create mode 100644 docs/en/Blog-Posts/2022-03-08 v5_2_Preview/suite-many-to-many-entity-relation.png diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md index 732bdc2dba..d57d47fc1f 100644 --- a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md +++ b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md @@ -153,27 +153,33 @@ If you want to see more details, you can check [the release on GitHub](https://g ## What's new with ABP Commercial 5.2? -TODO +We've also made many enhancements for the [ABP Commercial](https://commercial.abp.io/), and also made the necessary changes and improvements to align with the ABP Framework v5.2 release. For example, the **single-layer solution template** is also available for the ABP Commercial as explained above. ### Many to many relations on code generation -TODO +One exciting new feature with ABP Commercial v5.2 is supporting many-to-many entity relations while generation CRUD code with the [ABP Suite](https://commercial.abp.io/tools/suite). -### Single-layer solution template +When you open ABP Suite v5.2, you will see an "Add navigation collection" button in the Navigation tab. Here, you can click that button, select the target entity and other options: + +![suite-many-to-many-entity-relation](suite-many-to-many-entity-relation.png) -TODO +With this new feature, you can automatically generate advanced user interfaces without touching the code, then customize the generated code to implement your business logic. ## Community News We've organized the 3rd live [ABP Community Talks](https://community.abp.io/talks) event at February 23. ABP community has a good interest in these events and we will continue to organize such a live event in every month. March's event will be announced in a few days. [Follow us on twitter](https://twitter.com/abpframework). -ABP Community website is being a huge resource of articles and video tutorials on the ABP Framework and .NET. There are 93 article/tutorial have been submitted so far. Here, a list of a few contents posted in the last weeks: +[ABP Community](https://community.abp.io/) website is being a huge resource of articles and video tutorials on the ABP Framework and .NET. There are 93 article/tutorial have been submitted so far. Here, a list of a few contents posted in the last weeks: * [Ahmet Urel](https://twitter.com/YellowDraqon) submitted a series of articles to demonstrate usage of [MudBlazor](https://www.mudblazor.com/) library with the ABP Framework Blazor UI: [Part 1](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-ae23zz17), [Part 2](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-2-tkvrvyvm) and [Part 3](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-3-c8hwx00l). -* TODO +* [Enis Necipoğlu](https://twitter.com/EnisNecipoglu) has created two articles for ABP & **.NET MAUI** integration: See the [Part 1](https://community.abp.io/posts/integrating-maui-client-via-using-openid-connect-aqjjwsdf) and the [Part 2](https://community.abp.io/posts/using-abp-client-proxies-in-maui-with-openid-connect-em7x1s8k). [Bart Van Hoey](https://twitter.com/bartvanhoey) also created [an article](https://community.abp.io/posts/abp-framework-consumed-by-a-.net-maui-app-e74fmblw) for .NET MAUI and the ABP Framework. +* [Enis Necipoğlu](https://twitter.com/EnisNecipoglu) has also created [an article](https://community.abp.io/posts/using-autofilterer-with-abp-framework-uuqv81jm) to demonstrate how to use his own open source [AutoFilterer](https://github.com/enisn/AutoFilterer) library with the ABP Framework. +* [Jonathan Potts](https://github.com/jonathanpotts) has created his first ABP Community article that shows how to use Bootswatch themes with the ABP Framework. [See it here](https://community.abp.io/posts/customizing-the-abp-basic-theme-with-bootswatch-4luoqzr0). -It is appreciated if you want to submit your post and share your knowledge with the ABP community: https://community.abp.io/posts/submit +Thanks to all contributors. It is appreciated if you want to submit your post and share your knowledge with the ABP community: https://community.abp.io/posts/submit ## Conclusion -TODO +This version was mostly about minor features and enhancements for existing features, and getting the framework, architecture and solution structure more mature. Currently, we are working on middle and long term features, changes and goals. You can find most of them on the [road map here](https://docs.abp.io/en/abp/5.2/Road-Map). + +The planned release date for the [5.2.0 Stable](https://github.com/abpframework/abp/milestone/66) version is April 05, 2022. Please try the ABP v5.2 RC and provide feedback to have a more stable release. diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/suite-many-to-many-entity-relation.png b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/suite-many-to-many-entity-relation.png new file mode 100644 index 0000000000000000000000000000000000000000..d32a13b2bc97e8fff9a2923792ac13303fc12e67 GIT binary patch literal 64712 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 literal 0 HcmV?d00001 From a3d04e5ef632d92d2ef0591ae19a3096e09102f9 Mon Sep 17 00:00:00 2001 From: braim23 <94292623+braim23@users.noreply.github.com> Date: Wed, 9 Mar 2022 16:36:49 +0300 Subject: [PATCH 4/6] Updated POST.md fixed the grammar and punctuation --- .../2022-03-08 v5_2_Preview/POST.md | 80 +++++++++---------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md index d57d47fc1f..70603eadd2 100644 --- a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md +++ b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md @@ -1,22 +1,22 @@ # ABP.IO Platform 5.2 RC.1 Has Been Released -Today, we are happy to release the [ABP Framework](https://abp.io/) and the [ABP Commercial](https://commercial.abp.io/) version **5.2 RC** (Release Candidate). This blog post introduces the new features and important changes in this new version. +Today, we are happy to release the [ABP Framework](https://abp.io/) and [ABP Commercial](https://commercial.abp.io/) version **5.2 RC** (Release Candidate). This blog post introduces the new features and important changes in this new version. > **The planned release date for the [5.2.0 Stable](https://github.com/abpframework/abp/milestone/66) version is April 05, 2022**. Please try this version and provide feedback for a more stable ABP version 5.2! Thank you all. -## Get started with the 5.2 RC +## Get Started with the 5.2 RC -follow the steps below to try the version 5.2.0 RC today; +Follow the steps below to try the version 5.2.0 RC today: -1) **Upgrade** the ABP CLI to the version `5.2.0-rc.1` using a command line terminal: +1) **Upgrade** the ABP CLI to version `5.2.0-rc.1` using a command line terminal: ````bash dotnet tool update Volo.Abp.Cli -g --version 5.2.0-rc.1 ```` -**or install** if you haven't installed before: +​ **or install** it if you haven't before: ````bash dotnet tool install Volo.Abp.Cli -g --version 5.2.0-rc.1 @@ -34,22 +34,22 @@ See the [ABP CLI documentation](https://docs.abp.io/en/abp/latest/CLI) for all t You can use any IDE that supports .NET 6.x, like **[Visual Studio 2022](https://visualstudio.microsoft.com/downloads/)**. -## What's new with ABP Framework 5.2? +## What's New with ABP Framework 5.2? In this section, I will introduce some major features released with this version. Here, a brief list of titles explained in the next sections: -* Single-layer solution template -* API versioning -* libs folder has been removed from source control -* Hiding the default ABP endpoints from the Swagger UI +* Single-layer Solution Template +* API Versioning +* libs Folder Has been Removed from Source Control +* Hiding the Default ABP Endpoints from Swagger UI * Custom Global CSS and JavaScript for the CMS Kit module * Other news -Let's begin with the first. +Let's begin with the first section: -### Single-layer solution template +### Single-layer Solution Template -ABP's [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) is well-organized and layered solution to create maintainable business applications. However, some developers find it a little bit complex for simple and short-term applications. For such applications, we've created a new startup template that has no layering and built as simple as possible. It has the same functionality, features and modules on runtime, but the development model is minimalist and all in the single project (`csproj`), as shown in the following figure: +ABP's [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) is a well-organized and layered solution to create maintainable business applications. However, some developers find it a little bit complex for simple and short-term applications. For such applications, we've created a new startup template that has no layering and built as simple as possible. It has the same functionality, features and modules on runtime, but the development model is minimal and everything is in the single project (`csproj`), as shown in the following figure: ![single-layer-ABP-Dotnet-solution](single-layer-solution.png) @@ -65,7 +65,7 @@ abp new BookStore -t app-nolayers --preview abp new BookStore -t app-nolayers-pro --preview ```` -#### Database migrations for EF Core +#### Database Migrations for EF Core After creating your solution, you need to create the database before running the application. We've added a parameter to the application that can be specified to migrate the database and seed the initial data. Open the project's directory (that contains the `csproj` file) in a command-line terminal and type the following command: @@ -75,15 +75,15 @@ dotnet run --migrate-database It will run, migrate the database and exit. You can then run the application as normal. -You could use the standard `dotnet ef database update` command (or `Update-Database` command in Visual Studio's Package Manager Console). It can successfully creates the database tables. However, it doesn't seed the initial data that is necessary to run the application. +You could use the standard `dotnet ef database update` command (or `Update-Database` command in Visual Studio's Package Manager Console). It can successfully create the database tables. However, it doesn't seed the initial data that is necessary to run the application. To keep the solution simple, we haven't added an external application (like the `DbMigrator` in the layered application startup template) to migrate the database. Using the same application to migrate the database is simple and useful for development environment, and it can also be used in production environment. However, there are other ways of migrating a database. Please read more on [Microsoft's documentation](https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations). -#### Other UI and database options +#### Other UI and Database Options -The new single-layer solution template also supports Angular and Blazor UI, and MongoDB for the database side. You can use `mvc` (default), `angular` or `blazor-server` for the `-u` (or `--ui`) parameter, `ef` (default) or `mongodb` for the `-d` (or `--database-provider`) parameter. Example: +The new single-layer solution template also supports Angular and Blazor UI, and MongoDB for the database side. For the UI, you can use `mvc` (default), `angular` or `blazor-server` with the `-u` (or `--ui`) parameter. For the database provider, you can use `ef` (default) or `mongodb` with the `-d` (or `--database-provider`) parameter. Example: ````bash abp new BookStore -t app-nolayers -u angular -d mongodb --preview @@ -91,7 +91,7 @@ abp new BookStore -t app-nolayers -u angular -d mongodb --preview This will create a single layer template with Angular as the UI framework and MongoDB as the database provider. -#### Single-Layer tutorial +#### Single-Layer Tutorial [Hamza Albreem](https://twitter.com/st_braim) has created a video tutorial to explain how to develop a simple application with this startup template. @@ -101,25 +101,25 @@ You can [watch it here](https://community.abp.io/posts/developing-a-minimalist-a ### API Versioning -API versioning was always possible with the ABP Framework, but we haven't had a documentation for it. With the version 5.2, we've created a document to explain how to implement API versioning for your applications and add versioning support to your standard application service classes. See the [documentation here](https://docs.abp.io/en/abp/5.2/API/API-Versioning). +API versioning has always been possible with the ABP Framework, but we haven't had a documentation for it. With version 5.2, we've created a document to explain how to implement API versioning for your applications and add versioning support to your standard application service classes. See the [documentation here](https://docs.abp.io/en/abp/5.2/API/API-Versioning). -### libs folder has been removed from source control +### libs Folder Has been Removed from Source Control > **NOTICE: This can be a breaking change for your development environment and CI/CD pipelines. So, please read it carefully and take the necessary actions.** -When you create solutions with MVC (Razor Pages) or Blazor Server UI, your application has a `wwwroot/libs` folder in the UI project as shown below: +When you create solutions with MVC (Razor Pages) or Blazor Server UI, your application will have a `wwwroot/libs` folder in the UI project as shown below: ![libs-folder](libs-folder.png) -The `libs` folder contains all the client-side (mostly JavaScript and CSS) library dependencies. For example, in the figure above, the `bootstap` folder contains the necessary files for the Bootstrap library. The folder's content is copied from the `node_modules` folder (it only copies the minimum files to make the library working, not the whole folder) with ABP CLI's `abp install-libs` command. +The `libs` folder contains all the client-side (mostly JavaScript and CSS) library dependencies. For example, in the figure above, the `bootstap` folder contains the necessary files for the Bootstrap library. The folder's content is copied from the `node_modules` folder (it only copies the minimum files to make the library work, not the whole folder) with ABP CLI's `abp install-libs` command. -Before the version 5.2, the `libs` folder was coming with the startup template and committed into your source control system (e.g. Git). With the version 5.2, this folder is excluded from the source control by default, so every developer getting the solution must run `abp install-libs` in the UI project's root directory to install these libraries. This approach saves a huge amount of size of the solution. For example, the initial size of an MVC UI application reduces from `9.83MB` to `0.23MB` (you read it right!). +Before version 5.2, the `libs` folder was coming with the startup template and committed into your source control system (e.g. Git). With version 5.2, this folder is excluded from the source control by default, so every developer getting the solution must run `abp install-libs` in the UI project's root directory to install these libraries. This approach saves a huge amount of size of the solution. For example, the initial size of an MVC UI application reduces from `9.83MB` to `0.23MB` (you read it right!). When you create a new solution with ABP CLI, `abp install-libs` command is automatically executed, so your application directly works. However, if your teammates (or CI/CD system) get the solution from the source control, they should run the `abp install-libs` before running the solution. If you don't want that, you can simply remove the `**/wwwroot/libs/*` line from the `.gitignore` file in the root folder of your solution, then the `libs` folder is added to your source control again (if you are using a source control system other than Git, you should apply your system's rules to include/exclude that folder). -### Hiding the default ABP endpoints from the Swagger UI +### Hiding the Default ABP Endpoints from Swagger UI -[Engincan Veske](https://twitter.com/EngincanVeske) had written [an article](https://community.abp.io/posts/how-to-hide-abp-related-endpoints-on-swagger-ui-mb2w01fe) to explain how to hide ABP's default endpoints from the Swagger UI. Then We thought that can be a good built-in option in the ABP Framework and added a `HideAbpEndpoints` method to the `AddAbpSwaggerGen` method, which can be used like in the following code example: +[Engincan Veske](https://twitter.com/EngincanVeske) had written [an article](https://community.abp.io/posts/how-to-hide-abp-related-endpoints-on-swagger-ui-mb2w01fe) to explain how to hide ABP's default endpoints from Swagger UI. Then We thought that could be a good built-in option in the ABP Framework and added a `HideAbpEndpoints` method to the `AddAbpSwaggerGen` method, which can be used as in the following code example: ````csharp services.AddAbpSwaggerGen( @@ -133,31 +133,31 @@ services.AddAbpSwaggerGen( ) ```` -After that, ABP's default endpoints will still be functional, but will be hidden in the Swagger UI. +After that, ABP's default endpoints will still be functional, but will be hidden in Swagger UI. ### Custom Global CSS and JavaScript for the CMS Kit module -We are improving the [CMS Kit module](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Index) and adding new features constantly. A new feature with the version 5.2 is a global resources system, where you can write custom JavaScript or CSS code on the application's UI (added a new page for it), which will be immediately available in all your application pages: +We are improving the [CMS Kit module](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Index) and adding new features constantly. A new feature with version 5.2 is a global resources system, where you can write custom JavaScript or CSS code on the application's UI (added a new page for it), which will be immediately available in all your application pages: ![cms-kit-global-resources](cms-kit-global-resources.png) In this way, you can customize your application's look and behavior on runtime. See [the documentation](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Global-Resources) for more information. -> Note that the [pages](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Pages) feature have already page-basis script/style editor. But this new feature allows you to write script/style that is applied to all pages of your application. +> Note that the [pages](https://docs.abp.io/en/abp/5.2/Modules/Cms-Kit/Pages) feature already have a page-basis script/style editor. But this new feature allows you to write script/style that is applied to all pages of your application. ### Other news -* Upgraded to [Blazorise](https://blazorise.com/) library to v1.0 for the Blazor UI. After upgrade, ensure that all Blazorise-related packages are using the v1.0 in your application. +* Upgraded the [Blazorise](https://blazorise.com/) library to v1.0 for Blazor UI. After the upgrade, ensure that all Blazorise-related packages are using v1.0 in your application. -If you want to see more details, you can check [the release on GitHub](https://github.com/abpframework/abp/releases/tag/5.2.0-rc.1) that contains a list of all issues and pull requests closed with this version. +If you want to see more details, you can check [the release on GitHub](https://github.com/abpframework/abp/releases/tag/5.2.0-rc.1), that contains a list of all issues and pull requests closed with this version. -## What's new with ABP Commercial 5.2? +## What's New with ABP Commercial 5.2? -We've also made many enhancements for the [ABP Commercial](https://commercial.abp.io/), and also made the necessary changes and improvements to align with the ABP Framework v5.2 release. For example, the **single-layer solution template** is also available for the ABP Commercial as explained above. +We've also made many enhancements for [ABP Commercial](https://commercial.abp.io/), and also made the necessary changes and improvements to align with the v5.2 release of the ABP Framework. For example, the **single-layer solution template** is also available for ABP Commercial as explained above. -### Many to many relations on code generation +### Many to Many Relations on Code Generation -One exciting new feature with ABP Commercial v5.2 is supporting many-to-many entity relations while generation CRUD code with the [ABP Suite](https://commercial.abp.io/tools/suite). +One exciting new feature with ABP Commercial v5.2 is supporting many-to-many entity relations while generating CRUD code with [ABP Suite](https://commercial.abp.io/tools/suite). When you open ABP Suite v5.2, you will see an "Add navigation collection" button in the Navigation tab. Here, you can click that button, select the target entity and other options: @@ -167,19 +167,19 @@ With this new feature, you can automatically generate advanced user interfaces w ## Community News -We've organized the 3rd live [ABP Community Talks](https://community.abp.io/talks) event at February 23. ABP community has a good interest in these events and we will continue to organize such a live event in every month. March's event will be announced in a few days. [Follow us on twitter](https://twitter.com/abpframework). +We organized the 3rd live [ABP Community Talks](https://community.abp.io/talks) event on February 23rd. ABP community has a good interest in these events and we will continue to organize such a live event in every month. March's event will be announced in a few days. [Follow us on twitter](https://twitter.com/abpframework). -[ABP Community](https://community.abp.io/) website is being a huge resource of articles and video tutorials on the ABP Framework and .NET. There are 93 article/tutorial have been submitted so far. Here, a list of a few contents posted in the last weeks: +[ABP Community](https://community.abp.io/) website is being a huge resource of articles and video tutorials on the ABP Framework and .NET. There have been 93 articles/tutorials submitted so far. Here's a list of a few contents posted in the last weeks: -* [Ahmet Urel](https://twitter.com/YellowDraqon) submitted a series of articles to demonstrate usage of [MudBlazor](https://www.mudblazor.com/) library with the ABP Framework Blazor UI: [Part 1](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-ae23zz17), [Part 2](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-2-tkvrvyvm) and [Part 3](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-3-c8hwx00l). -* [Enis Necipoğlu](https://twitter.com/EnisNecipoglu) has created two articles for ABP & **.NET MAUI** integration: See the [Part 1](https://community.abp.io/posts/integrating-maui-client-via-using-openid-connect-aqjjwsdf) and the [Part 2](https://community.abp.io/posts/using-abp-client-proxies-in-maui-with-openid-connect-em7x1s8k). [Bart Van Hoey](https://twitter.com/bartvanhoey) also created [an article](https://community.abp.io/posts/abp-framework-consumed-by-a-.net-maui-app-e74fmblw) for .NET MAUI and the ABP Framework. +* [Ahmet Urel](https://twitter.com/YellowDraqon) submitted a series of articles to demonstrate the usage of [MudBlazor](https://www.mudblazor.com/) library with the ABP Framework Blazor UI: [Part 1](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-ae23zz17), [Part 2](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-2-tkvrvyvm) and [Part 3](https://community.abp.io/posts/mudblazor-theme-in-abp-blazor-webassembly-part-3-c8hwx00l). +* [Enis Necipoğlu](https://twitter.com/EnisNecipoglu) has created two articles for ABP & **.NET MAUI** integration: See [Part 1](https://community.abp.io/posts/integrating-maui-client-via-using-openid-connect-aqjjwsdf) and [Part 2](https://community.abp.io/posts/using-abp-client-proxies-in-maui-with-openid-connect-em7x1s8k). [Bart Van Hoey](https://twitter.com/bartvanhoey) also created [an article](https://community.abp.io/posts/abp-framework-consumed-by-a-.net-maui-app-e74fmblw) for .NET MAUI and the ABP Framework. * [Enis Necipoğlu](https://twitter.com/EnisNecipoglu) has also created [an article](https://community.abp.io/posts/using-autofilterer-with-abp-framework-uuqv81jm) to demonstrate how to use his own open source [AutoFilterer](https://github.com/enisn/AutoFilterer) library with the ABP Framework. * [Jonathan Potts](https://github.com/jonathanpotts) has created his first ABP Community article that shows how to use Bootswatch themes with the ABP Framework. [See it here](https://community.abp.io/posts/customizing-the-abp-basic-theme-with-bootswatch-4luoqzr0). -Thanks to all contributors. It is appreciated if you want to submit your post and share your knowledge with the ABP community: https://community.abp.io/posts/submit +Thanks to all the contributors. It is appreciated if you want to submit your post and share your knowledge with the ABP community: https://community.abp.io/posts/submit ## Conclusion -This version was mostly about minor features and enhancements for existing features, and getting the framework, architecture and solution structure more mature. Currently, we are working on middle and long term features, changes and goals. You can find most of them on the [road map here](https://docs.abp.io/en/abp/5.2/Road-Map). +This version was mostly about minor features and enhancements for existing features, and getting the framework, architecture and solution structure more stable. Currently, we are working on middle and long term features, changes and goals. You can find most of them on the [road map here](https://docs.abp.io/en/abp/5.2/Road-Map). The planned release date for the [5.2.0 Stable](https://github.com/abpframework/abp/milestone/66) version is April 05, 2022. Please try the ABP v5.2 RC and provide feedback to have a more stable release. From 9d5a1bfb563eb1c43ae014cb9ef1c6125f0eb423 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 9 Mar 2022 17:08:47 +0300 Subject: [PATCH 5/6] Change the wording. --- docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md index 70603eadd2..3df3e12850 100644 --- a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md +++ b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md @@ -180,6 +180,6 @@ Thanks to all the contributors. It is appreciated if you want to submit your pos ## Conclusion -This version was mostly about minor features and enhancements for existing features, and getting the framework, architecture and solution structure more stable. Currently, we are working on middle and long term features, changes and goals. You can find most of them on the [road map here](https://docs.abp.io/en/abp/5.2/Road-Map). +This version was mostly about minor features and enhancements for existing features, and getting the framework, architecture and solution structure more mature. Currently, we are working on middle and long term features, changes and goals. You can find most of them on the [road map here](https://docs.abp.io/en/abp/5.2/Road-Map). The planned release date for the [5.2.0 Stable](https://github.com/abpframework/abp/milestone/66) version is April 05, 2022. Please try the ABP v5.2 RC and provide feedback to have a more stable release. From 0862cb399c2b30f0140a3972358c5b856dda34cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Wed, 9 Mar 2022 17:28:40 +0300 Subject: [PATCH 6/6] added note --- docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md | 4 ++++ docs/en/Migration-Guides/Abp-5_2.md | 3 +++ 2 files changed, 7 insertions(+) create mode 100644 docs/en/Migration-Guides/Abp-5_2.md diff --git a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md index 3df3e12850..5699328d89 100644 --- a/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md +++ b/docs/en/Blog-Posts/2022-03-08 v5_2_Preview/POST.md @@ -65,6 +65,10 @@ abp new BookStore -t app-nolayers --preview abp new BookStore -t app-nolayers-pro --preview ```` +> There is a bug for the `app-nolayers-pro` related to the licensing system, which will be fixed with 5.2.0-rc.2: `appsettings.secrets.json` is missing in the project folder (should be near to `appsettings.json` and contains the license code normally). As a workaround, create a new solution with the layered startup template, find and copy that file to the single-layer solution. + +One note about the single-layer project is it doesn't have Blazor WebAssembly UI, because it requires 3 projects at least (one server-side, one UI and one shared library project between these two). We will consider to add Blazor UI support based on your feedback. You can continue to develop Blazor WASM projects using the standard layered solution template. + #### Database Migrations for EF Core After creating your solution, you need to create the database before running the application. We've added a parameter to the application that can be specified to migrate the database and seed the initial data. Open the project's directory (that contains the `csproj` file) in a command-line terminal and type the following command: diff --git a/docs/en/Migration-Guides/Abp-5_2.md b/docs/en/Migration-Guides/Abp-5_2.md new file mode 100644 index 0000000000..3a98e948ae --- /dev/null +++ b/docs/en/Migration-Guides/Abp-5_2.md @@ -0,0 +1,3 @@ +# ABP Version 5.2 Migration Guide + +TODO \ No newline at end of file