From c2d869549a3174cdea4ac491144a44205381274b Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Tue, 2 Nov 2021 18:11:47 +0300 Subject: [PATCH] Update the many-to-many relationship article --- .../POST.md | 153 ++++++++++++------ .../demo.png | Bin 0 -> 37232 bytes .../domain-entity-structure.png | Bin 23863 -> 0 bytes .../domain-file-structure.png | Bin 0 -> 27450 bytes 4 files changed, 107 insertions(+), 46 deletions(-) create mode 100644 docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/demo.png delete mode 100644 docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-entity-structure.png create mode 100644 docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-file-structure.png diff --git a/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/POST.md b/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/POST.md index 3e5f24d15c..97fbbc0ba3 100644 --- a/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/POST.md +++ b/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/POST.md @@ -13,11 +13,18 @@ When we've examined the ER Diagram, we can see the one-to-many relationship betw ### Source Code You can find the source code of the application at https://github.com/EngincanV/ABP-Many-to-Many-Relationship-Demo . + +### Screenshot of The Final Application + +At the end of this article, we will have created an application as in the below image. + +![Book Homepage](./demo.png) + ## Creating the Solution In this article, I will create a new startup template with EF Core as a database provider and MVC for UI framework. -* We can create a new startup template by using [ABP CLI](https://docs.abp.io/en/abp/latest/CLI): +* We can create a new startup template by using the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI): ```bash abp new BookStore -t app --version 5.0.0-beta.2 @@ -33,7 +40,7 @@ Let's start with creating our Domain Entities. We can create a folder-structure under the `BookStore.Domain` project like in the below image. -![Domain-Layer-Folder-Structure](./domain-entity-structure.png) +![Domain-Layer-Folder-Structure](./domain-file-structure.png) Open the entity classes and add the following codes to each of these classes. @@ -86,6 +93,10 @@ namespace BookStore.Authors ```csharp using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using Volo.Abp; using Volo.Abp.Domain.Entities.Auditing; namespace BookStore.Books @@ -94,70 +105,94 @@ namespace BookStore.Books { public Guid AuthorId { get; set; } - public string Name { get; set; } - - public BookType Type { get; set; } + public string Name { get; private set; } public DateTime PublishDate { get; set; } public float Price { get; set; } - - /* This constructor is for deserialization / ORM purpose */ + + public ICollection Categories { get; private set; } + private Book() { } - public Book(Guid id, Guid authorId, string name, BookType type, DateTime publishDate, float price) + public Book(Guid id, Guid authorId, string name, DateTime publishDate, float price) : base(id) { AuthorId = authorId; - Name = name; - Type = type; + SetName(name); PublishDate = publishDate; Price = price; + + Categories = new Collection(); } - } -} -``` -> We'll create the `BookType` enum later in this step. + public void SetName(string name) + { + Name = Check.NotNullOrWhiteSpace(name, nameof(name), BookConsts.MaxNameLength); + } -* **Category.cs** + public void AddCategory(Guid categoryId) + { + Check.NotNull(categoryId, nameof(categoryId)); + + if (IsInCategory(categoryId)) + { + return; + } + + Categories.Add(new BookCategory(bookId: Id, categoryId)); + } -```csharp -using System; -using Volo.Abp; -using Volo.Abp.Domain.Entities.Auditing; + public void RemoveCategory(Guid categoryId) + { + Check.NotNull(categoryId, nameof(categoryId)); -namespace BookStore.Categories -{ - public class Category : AuditedAggregateRoot - { - public string Name { get; private set; } + if (!IsInCategory(categoryId)) + { + return; + } - public bool IsActive { get; set; } + Categories.RemoveAll(x => x.CategoryId == categoryId); + } - /* This constructor is for deserialization / ORM purpose */ - private Category() + public void RemoveAllCategoriesExceptGivenIds(List categoryIds) { + Check.NotNullOrEmpty(categoryIds, nameof(categoryIds)); + + Categories.RemoveAll(x => !categoryIds.Contains(x.CategoryId)); } - public Category(Guid id, string name, bool isActive = true) : base(id) + public void RemoveAllCategories() { - SetName(name); - IsActive = isActive; + Categories.RemoveAll(x => x.BookId == Id); } - public Category SetName(string name) - { - Name = Check.NotNullOrWhiteSpace(name, nameof(name), BookConsts.MaxNameLength); - return this; + private bool IsInCategory(Guid categoryId) + { + return Categories.Any(x => x.CategoryId == categoryId); } } } ``` -> We'll create the `BookConsts` class later in this step. +* In our scenerio, a book can have more than one category and a category can have more +than one book so it's obvious to we need to establish many-to-many relationship between them. + +* For achieve this we will create an **join entity** named `BookCategory`, and this class +will simply have variables named `BookId` and `CategoryId`. + +* To manage this **join entity**, we can add it as sub-collection to the **Book** entity, as we do above. We add this sub-collection +to **Book** class instead of **Category** class, because a book can have tens or mostly hundreds of category in it but in other +view a category can have more than hundred (or even way much) book inside of it. + +* It is a significant performance problem to load thousands of items whenever you query a category. Therefore it's make much sense to add that sub-collection to `Book` entity. (Don't forget: **An aggregate (with the root entity and sub-collections) should +be serializable and transferrable on the wire as a single unit.**) + +* Notice that, `BookCategory` is not an **Aggregate Root** so we are not violating the one of the base rule about Aggregate Root (Rule: "Reference Other Aggregates Only by ID"). + +> We'll create the `BookCategory` and `BookConsts` classes later in this step. * **BookCategory.cs** @@ -173,6 +208,7 @@ namespace BookStore.Books public Guid CategoryId { get; protected set; } + /* This constructor is for deserialization / ORM purpose */ private BookCategory() { } @@ -191,27 +227,52 @@ namespace BookStore.Books } ``` -Here, as you can notice we've defined the `BookCategory` as the **Join Table** for our many-to-many relationship and ensure the required properties (BookId and CategoryId) must be set to create this object. +* Here, as you can notice we've defined the `BookCategory` as the **Join Table/Entity** for our many-to-many relationship and ensure the required properties (BookId and CategoryId) must be set to create this object. -And also we've derived this class from `Entity` class and therefore we've had to override the **GetKeys** method of this class to define **Composite Key** +* And also we've derived this class from `Entity` class and therefore we've had to override the **GetKeys** method of this class to define **Composite Key**. -> The composite key is composed of `BookId` and `CategoryId` in our case. +> The composite key is composed of `BookId` and `CategoryId` in our case. And they are unique with together. > For more information about **Entities with Composite Keys**, you can read the relavant section from [Entites documentation](https://docs.abp.io/en/abp/latest/Entities#entities-with-composite-keys) +//TODO: add BookManager class later? +* **Category.cs** -* After defining our entities, now we can open the `BookStore.Domain.Shared` project and add the relevant constants and enums from there. +```csharp +using System; +using Volo.Abp; +using Volo.Abp.Domain.Entities.Auditing; -* +namespace BookStore.Categories +{ + public class Category : AuditedAggregateRoot + { + public string Name { get; private set; } + + /* This constructor is for deserialization / ORM purpose */ + private Category() + { + } + + public Category(Guid id, string name) : base(id) + { + SetName(name); + } + + public Category SetName(string name) + { + Name = Check.NotNullOrWhiteSpace(name, nameof(name), CategoryConsts.MaxNameLength); + return this; + } + } +} +``` ### Step 2 - (Database Integration) +### Step 3 - (Database Migration) ---- +### Step 4 - (Create Application Services) -* Create the Domain Entities ✓ -* Database Integration ✓ -* Db migration ✓ -* app services (category -> crud app service) -* ui \ No newline at end of file +### Step 5 - (UI) diff --git a/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/demo.png b/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/demo.png new file mode 100644 index 0000000000000000000000000000000000000000..9b954bd7d60ac5ae8bdd48221a263a7311ffed3e GIT binary patch literal 37232 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�EaKlmyUcujTaV%4uD4|>~VVT$I%~jug`!=k( z{28%WwK?h~QMg{+8>{3cqBElBmJVplRp7jW$V{z&(B`=}&A5_s|({PZu&vFp5bVZAd=R zb^#8t-+RVeXCSdzAcOaSNvK)q za^g|uSqPm?-L9u<5UzflEnB@MX$yFm=dF?cPRpg6{`zX)DGt>)u?%XU0r2D#tYn_? zRb(#zTFu|?G**w^XzDXeev!ibZyf&WCrMTsdc&|SkA#6M6zBc~=i~V<*jiusBlBEo zKjR$ymA>ZxSB3{n7ysOpiF$SYkMx`8fBcMn^^k5Floais7JXF;f^N?K7mXnSjGl-5 ztGEz~4dhW%_@_Cyb7k*6_g4Gx`PFyI3*!r$ zn-I^V@ArEL2glR@v9kBpE-qz;B_?_!qwvdb+MZp0d-W;>uI)!!?f+y2Pzp;+ zn;TN6TZvbRU%4e>Rz-PvZ+Cb3`$r}HDjQ`l-apwwp6OP21Mx*7kKxr;4{q}@)lM>q zoo~0uy!nsqUo8@mOl>ih%C;d1#wboQJzwto=LPQthD|NnGwE*qOJY&xAC|IE{C5NZ z3UzGSpSoQ8hYHilKJ7wNHvZA{(Vxe4Yxf;GSA!mWFTeNa#{Z46v+%J)>JrP3XROT1 zS)N{A2hN9;Ir<1I**&X2MSc4@Y)ZF0S|}&=>bpgVexWC4qSq6Gz2QQ~YSO1FAFNTS zo~V+(fx$uV+TOasOI@!&!#D3@j`YV*LA4)Vd=@iU$RW^-`3r%{+%T>u4qN}=Z@fWZqjf~rO_f% zk=)*CNM>*%8o9IcM>A~xsg3&^#9~IqMf0AqRt&w!uL;MMe9opp)qhm?zG%P@)Gz%z z;$(lEgWjhTK#w00PO=sH$0&YO?!OBwP49av<+a=-Ra58uE@;0!)icN*<*OPe5MZCu zT$9Ar^0#L4+&1Q|?fMQLu)2(DRSbkHoJ;w6vEq$kMXt~~A?3axVU~l;GB^6AAEg&; zQP=dx1H=GqX0`?r|sf-7DtET=OL zToUSvjS7b986Xf7!*c$dpZT@z`Iu(EI8;4a!m`O~mpBh(Rkwc88Cr*?#`xQ&mCyQq zv&dw}7zJ}8=AjML_fEjaD%H5wXkTA_E%h6#5k9UU!d2e46c?3JXCK>cP*@F14jG|-$r`+(- zKnikvy3O4aW?hmeqBX>@7uu@b548|Lo#a(a&UIt4f3fQT09`{P+;wM+`m)iUZ*`ML z)qBLJ9@DvjOFXqBj5Mp-DVo~9?8Iod#tZ*uG%%Mr#kPB9Ulx(@Di7kJ#?^V z?3s7QJt%9G@{pUp0bfCs;d3yDB_hbEYtByQG~OB9a~DO=+BJiFIaKZWi9U7z*eE?)Fz4V#Y|c!MoS|76+YsvcD%pwJuG)Qit=e?3fI5YW zFgck%U1+$?zD8{*&zgv1g$lb`W&+mig;Tk=2t_Wc&;Q)kU`rT$m@H^Oew( z{dSkbmh2b7MqZA8s+5?<9Vzo#@5rz_?U!NM&(ja^nJn7(4;({#sIbZ|5;y!GbjqaM)#tutd5ClEwHCR z+nw<4p=3ho(2MGzV)Ny3*Q{UX7URHH3H@j()5ctn=;t3u@XdHJg})e{0Ko5<;>%Gd zg-S$7EguZ$%B)*Cb9v)4DX zK5vU9dTO;(80ul6@pvXgX1u{@lk~I7;Zu1t-O@L0nsw-7ew=?`^GhKCb`6igHcI`v zfX0F>0~{B3@8{vA7@P;j=$TV_aZ3uS!U+maf4%# zny+%Ao}No*>GjG8{0Br`cd(04KcVN!^&pHBqOK%f z2;=+B`I|wxYGYoebwr12*GoUiqB~hL{W7;e{MD{uqO}H3SMoZ$$mSnmb*FsyY9pd) zo1Na~7yF9eefyarO!C_ehqOEPWu{dOj|*Ogg>|{jQ=2xlakuu3e=9pW+yiF~NEOd6 zO!m_T=Xap?`&4e5RJmx9wm+_5?V>e16~xc)5a?5tB&TWoEq$3+0 zPdR#8-{EA%R2qq+i;W!)Q@T*?Gu_2@U$FL=9v&k{os|)qU3S0Zd<)qnzEn@%M6{|B ze^e1Tz^L~&&gdi;`TSD2(GSP)cugaQdYs{_1|uS-w9W%#1`T}ZboH9JU`{0urY%n& z+1@rATOEvh)D@&5={%xQsxrGAHdL$3xh4Yeer%f#34A4cazSg*4K!?eSl z*%dQ?ni=lB2-K2u)gSa0G#a(xPcRU_XzVVgs00+%ixnw%`7J)Vm33GD!oxcs>rVK_ zfxu21TXAq)Dy0mC>$Vo8)n5Fbp@zrf*Cu#eZv6A$?B#awU&1z zJ!@EHWu?fZ0_Tw4ojCS7Kr96UgUz_)Gwbe|i}!se|1pN!5sZUHUp|IK@t_fl$QJ$;#{yDhim-vy*$J_Ro+sb-;Zz4i#wKoVEC zl`Ltzs^0eqwA__`%1gpBgxYX)dp8=K9{lJHU2T_?C)YeO>DvO^@6)aQ!j9lC+CEu{ zGG6B1Q4h#U^c?;ATQBL4B}7GyN8~Zsad>~W9S@qSSO=9vq8RJ8%DFo6-*vAUeRBC- zI`j6DJ>p!6VmEHa8ea4%2dFgc;>iRe0k5gne-$w&%8cdl+e@(thz>>>@J%N9&Y{!v zgoD_u<4_uAhQ1PeAkVEmk)?dc6{J^_TJlC0WCI!}4@rpeU*XR{*rj4MjZ__ zkzX53Z^8<^f%I=0UCE^2?yc>GCi~vs{?od=64SwGI8e;pe5|C)<+w+0NG}$6#S!7` zbZ{`)=BDp9tkkjp0@VISH!Q5=sj`ER*j*<>Q1|!W+6T&y3u|iBKa2C#Fl0=zTsK2Y zX$LO2j}hscS~oAhZB>f!qRdt}CIv(K&U~oixh7wYmVkqSz(4Q3u2rn6bo0x-SVsGc zW*WcLTB_~^gby3P_|?;L2OA8`s4+bq*wz>9w zZr4xh8{RwG0XUMw`qSUWyOo<@9XtZH4^Fq;e^|IfxDqGY+TJ=*G7xm+5W)-cgaNV3$fMdiB{Y)`iN+Exw` z@3J0o@Ga_3um0mHd{mZ?8n6V-11R7B$7lXOgcEq~r}Afr@`!3+{51aKg$%9#N~fe7 zVB|R%^DAu~9eMjtS$S_`HUdptj3pI0Q`|SC4HpUt+M2ii@zp|Z?)Q#IET0SoXWmP< z*=RCY_(%}aWc=IBs>J>}Bp&ceN*cp_w`X_{HpWG_|7;Bb2|VWY?x_soq8#GlKv<9* zOpfld_`lwN{Qr;e$nF`uuq3&*wEDlUc?2!1#DCSCj?XaRztvo&y`ybl;Q7BUBp@;= zH8u73s|1J6zk3bvKkZ?S|H5|upBz#7YfPT32F;!XqvTdrS2sqtETuU`MMs+@t0YcZ zJG1{m5t59PyAB2$zV-F>CH;4`m;MJY66TNke_h=n6wIb#Mvd~v$^QLwX@chVbBzb9 zf?qMGGOrYjDy#$>8vM^f_ksA$MC&xfd%``y*4Q>T%9f_Pa3o@zPC>-LUIN%^u+pp+ z$0YTjKlp@q!?y4I*(mybkB%DIxCxrZ&*TMNPz0zv{NgqpU+p~VVA|k9x5%3Cf=|J$ z*{<}2fC0aKW`AXYKg6!6&#TO$xX-UF+jyb_b#ewYghc#m`|(|4cZ$7OZ7$JZnI6j8 zutS<#Z2>5jzWEtN$6x5N)TLkVZdqzpS7v8#pK*AeM}Us4!m{2fQv$@-%^Xh94pQ5@U!{mt5R@MXmxNWXrv<@zOd!HCe*O@ z#oE3&m`b6fdDdcmtSZ02SV{#omlq5vwMOL@Q^hNM^1+Rm@)Z=W?+s>(r}E8g$1*e) zvi{YK!ak3|Oo`NY*EX>A@xyo>5T=&vY&LwYv?jzn*pL@6Q%&u~5@HZ=wzDpJ60Moa zZ=ANf(w|iixUF(FnG80t)h{q>+-)@m^p@LnQWETn`+Un{)_|Kiw;Upx#eY6_o~agu zygsLJb4u)h4+1MMa=e>C#jZP8QPFKSSiXnUPV6_Yi(4mOIEl7@4o@SHz3(007Z=f6 z{X#MVJZnEbmt+vy_ZZM827VicOcocX>%3|{KY>_@ZaDMxK(`!v&;+LIs7pFyF|8Fh zB@U)wAh&IXe;TNChpj`a7L&FF5OaS%4TZ=yuJ4fx3P}%;P9D!SRMNro-Ibt=U zTk)sThQ#gVMtaWaRj(c{U|+cAQGz4@>IlmTmxe1zHTEV zpn^v$Y9*^)L_f}D)&G3!I4Aqj5PP_Y)e!CQf6xO-e*CU!ksCzku&}E7H>v`A^A5hutH3P4w=W- zZt1^Zf-~kC@kvmH^Ts#YhdrEJ1Ff9rJOOX3qnIjiHOY-98n=Mq6B>!vVQ@tKttY=iOV(BSi(&3`8%NFG7Fq4O0%O0KFW^x6nc}g@>BM8`brLs*yqXcoqUA zpys^!0>?|z*MU5C20|d01fEYjWQrGb+xwL)ME1+0PiP_YbqCgPVLZCb*4mZ^YS?N_Eq<+CC&=u3 z+{+>yVAUgNxO=uyWFZU^lnf!_)r;epql2H>VlI8}6U^%6B%SKO{9Nzfz=F9aK%GAW zn654&A@5GLbFftcuVNzi1CelP8#lJkz4gcz^Niqx4>FLZ4rHv7X^lF;Sg#4 zWQaNCoKQ;pmN9#(M~Vru$;6742NzdrVX7^+&T+hlmbYIU%Bl99d(zUpCczMBs=M0J zrjYz|?8XQpS}lE)>^|$u``Daf{h1Nfq+fHzyLaNpdUb6>(Y3dLhjk1;H@Q9Vb0S@{ z9`H49@Jvi~5w4Sbw**HZ^bb?LMInei*)@9MDXm-F5BO$%-LNyZ+f9dHPk(G%97tH~ zLrkrfJT!wCc|(KS=R5Z7=nRwJW>vsq3kQ?wzDu5b-oBNi8g2JD>8J!Js{7jb(}~2V zNJlapkKsO~UwU0mn4>HDovmLVE=E_QqMSF;M`POb#L{{>FOE})`*!8PEt77?0zDK| zNTySTjtv-E^|IsgNFxw#b5(Hjt^yFIw<1l;GjZppdv~I_b{)v;29jTy#Kj(tMqB%u zzHZ=Uu=b+guXl~{2Q@)C`>J@r7zWdA{SzQ2VEN$cG}H<4$nM+1a-Up&4r;q;+hfyU z?5gk7sUk$BMJiJ0{m3f|g4qaB`9+X!Jy<*qH}pCNgS}v%$cHZV%;8%o^~~klP6aAkdkU)042?E^ za`!pURPm$vN2F0`&a1N}@H|PUJV(?l?qGb3NL_U(F7mtTm_QP?xV`w}Q_Ja8+pSpt zK-eAlJY~630sriT7seWGwxIB1{TH__@+9AWN1{UEh5`2}=1H$?GU7XU=7No6S?|Xx z!F$Ow?gtDiGm-CIS+mNd!UM`dfdjds<`XeT@uy@wNcdq?1}FWA_itzgW1^H^1ZFV1xj4IfX}o9}F`h+s3h0nSwok~RG5X~vV@AW7DA$Y znt_Y)<3Yo?mNmaNbhP2M*^@Xab*M!(GvlWmR+*`_Rs|ztKrC8}+nAYCvWu6}60QxvIA@%GB!eJyvso@Bu`LO9>6 zUAOz|Rr`*fl02}|V5O;=iJH&;3DfNUDOG5WsC~B^r!~h+e0dPhu{g5nU^R77r3VPCZb(%^IxWq2_Wo7jYoJ1(!#e} zIsA#giYFhdZ~HBhqbqQ)e$vR~i+ld*q|o>5c6^p@c&J`S3}}I+z%$X)go9*Q}|7f#*M}w>J}Z*?$mA=KEwBG7iDuv2(!bN4(Dd&_+ETGf~MDb@!#8P zT^$+QX}FkGGVRJ%P85eFs}Xl}q`6AXa36^YL9h#*+Tl9Fv50&$M)hgzyyAnZH-oz_ z{iPSQN7v4~VNwZ#F;$m1@vA%TFZ~4uNweNfOPWjd6)lIvErZ1@bTfB$O9MFX^7FU0 zAL_`T<7Hfh;SHo#+~C~`cc)E+ed@X{;hD71IP+OegyiCe$!WP17A*8a;-k?TKegNW6!&3+ zclv|Ku+b8i2?C9F*7@+SS1zsX=V}$UO2J|ntWMr8y?7ZemROdUzh49UEkjsMU)67V z(N@S)cHGUB=Y*{fPL`s*9TGfZZxwDdT0Kc=Z2NFnBY^A*zDfVs$eEi;MP3o|NlcHQ zN&8uHylhalb$J!6Ic=hCau>XHHxyBmk0iZCv=f7B3DZ$^fg!IuPs|r>%t~*dJxX0` zR8}qAenOf#=c&wfT{QR7rn}tUdMQMR___)H4jxxo*m5J9=FoAB!1#1GQm0>iw_1_P z95H=GW8_6^XggVwe1Y(pH{XroCuoW5V&xChO~{XnWk;Ays=Jp04K5SE0hLlNPRdEL zf2MGAxgK%U-kmf@4whdBhbrVBhR6{bF|NJlD9ymV?$>W~FPa+!Ykk+7&AzL^9$Dz@ zA%n^p`D%p;p8Ya;fO;xz*N3tecK{8pZVsMCziF9vdZD2Z>-0LLg0}>sfuwRQRL*m# z<3d%wl7YAlIyM;)O?@ys{>!G~$a5)1_7Y6qF)DO-Y%UVJuHMcDY4MMbuX?%FDU1Of z>XTbfD)CcU_D^UOg3T9h&I}oEbMw$p<$m{_a(HQdAnLfi6k23$pYFPMeiUC`*A-J? z`ne@T@zZ1EdV*Yz;jId8`h<(h<=PHjUPIG&9rD(-FXB&IHqV(i*GXu&ld+qC+4*dq z>swQqQZwY|SH8dwlJ;>qkx* zslACw3iwqY8l=N<+bXQ;QpHZSq&N-E`iXwS&G{cZn&H&?bw7H$>p-0o&*lBH&kn_B zxXWC=w8*0gFKT^xA=;^XCQ)ajKMFgQIrG{7h4o8$YwCTnqj3Rod+`1W}FW5Ie017FDFBpw7^0lr5*N%5navM~-KS`(j~ZMK}b`M?;L*o%axwaku+ zstmOkS>VG>n1@;CraNv2lAShuSj{a}qA3eMkS>mwJ#}%UEh@irbLZ6e0f>L+b2@ys z(eEk_ET}hj6`LRLEeW2Uy1aiiZ7-^*H_t2r8v&MdpXv{pG34lWOku(AU5H((f7Iqg z3EpO$4A!=RQd53HQbTZIUmY0kq+9N!VgSf@hYA4}Y{qVC@m5WcvH z=F#%XoD#(=LmyDe$|H4|^{0%^^Xsc@`g*Kblg*-S%k8#>`^ zq6x8PVRUU-4{}&95|UzfF}%M*WFKb0Kn24-6(R7)@f9xCHwa|O7E$y8Im#Pl_8wPR za<~qN%KbyzV3kBIAaoiU8VI$4liIxl17iPxLLPb-KGn7wBIa^>s4@Y4@5;*s{yRAj5x~K)$o4l*#QAL=nwQUtI`iHyHR8_cQvZYR zsomj)tV~PoFHz(jeP8>N7obb|A2Hfli154HgvL87Jp zp%-uT7^k?4gW4HkMeaCA4#G$6@-Oj&1?b{JIbyR@c%R=Z2w+b;9)=TxrT){4S-x7}l!- zVciJSTlj|rrD2qDjRF|kmd&(xIVp-@HFo$1)(S}iI&?gBq2`ioW&OMCkfiQ^B7OfG zyfD1_ISXz^dFzB@$|!izYp|eu5Y{WSCjsDKuS0B*PdxXGrfXN0u!SA!!hMvyvsZ!v zFQgjxdDmb4Tv&l(9;XUX@zh_qjCWEP5m79rvDBu~R@T3Mm9{>6w+ST{O>Xh}WV*kL zY!Q~6J#lUg7Xy9>bapQD=db>*2x|n9Emu&W2zQDuoJnwc++@`6$B?XQmVB+_2ytjn zpya}U`c-ciM$L&39r@4+v7jGCtBcWU}16XW%|wu@`63-nheu#LGU9Ou~An0d6BEJHZ#n4TjN=kifW_R+0W z&!eqe+46_vs>WEKg{qAq7uGks|CjdOIxMbl+ZH4t0fGlYu%N+$MzG)xf#B}$?pi>C z1cFO&cM8|SD?oxf6iyM`B|zaty-M;s=bpajp1xoAd)@tY_ulhr2U=ff z_N#AAk2#dibm#!1bjiG;e~JqyDsL^4d2|&S>}|qE2j8DMXD@rc+;`rE8=OGCel<+qD1Hrt5{PW+ zM@pSLAb;E?CN@49gt4z)qh%1LM#o)I-r4rd^J8+9cuCe9pN7$ner1h4YR^b=)*J8@ z-$?8aysM+x@mhyjjJFHe12OEGOs2$oENfZ(jK?=)G1}t7Zoje)=yz;=;qS5x33`5* zAB$4jy?$bhzW&8FizPq1#yQTm4|36Oy=2LIju-yb8~rn(B?&t-WE}UvT@qLru2#-E z0gST}mdWA0r8!dc65rMP*^)0}V;O=zN#zsq5qlt#0$h>6EO<0yEA1!L64A^##h`s5 zpGKKcHctwaQgQ1!+8MeDMZ;95;G?WUG}z9rzn?=Kpv`TP8IaHzRx?PW?~KvZhpLKO zd&ow!&Q;H~+3QOR2^MgxvF$*rlGo@8DjS7zb7c-p)59-$`a_vqm>Ph22>LF15_>8aX4In%l)7Z=)?tGo+w@V>^aOqWtS)1m#PANWBD9JVH=61 zs@}pA*FrN|=&u^A9b%q{Hx&}z0t|J9?p59}(eG6=#cFF^rJE(dZG8a72w0yUC zt`mQlDMG$S*n)d)N_a~;b|F2kq$#zvU^CXdN1gwa{WD3%r&@(ZOhSRCPkvXgDrq$x zrs;})a6H}3`#LBrKvAN6f4z4*i?)d>s&RSZVn$!lZE1^nxA_cSw%i;LT^JGJLQxg# z>+{UXy3z7hVHcbHaJG`7_oclHw`7F>Ee3$fCKDvVv>OV$*_=q$HHPxEu{aK*T}{uZ zrAKSvRtgn zVwv}!^TN$1`p(kbx_d!hMdhtOg_s@ej~mK5&H8i4Z}(Pz z^WO|HcGS-s8I8^smV!nd-yZf-tewv2hOQ6Kw8p4hXlH}&-Zni0=LZO(MH`1{+JQ%2 zJM_JbYxRv7BBOt8-_-Y`XOrUTf$HwGq}eqE?HlRONYzYV#M02s$*XI$I3m2TMH?tu z-Yd++cKSO1v-{?+hzI_=oAq5PI;y6F@d=9U^UXJa15A?i89OaFBhGli_os*KD-1`nBV2 zBRhMS?GW<{nB26T0$yglm#5$-K0`n8Q#?~I^W}(^FcNGSlJXI%JLq6JCRslX{egtCi_P>ZMnL4K7t1 zUM;14B)_+WA>HgYUiN9@UtLBv=Bx9IdfU>R%jloay7BS0rq@IvI-m8%7gH|OpOg|7 zl9zo}mjI?^&z3HoINIoG`VP%CNS;#??0A1@eueC)9U&#aJaH&_iiW>B^lH++ z0cg`NscA^+3g!Whtu);yO6j`sR0TkJ@pLHG2W}LTQ1`fb@hiqDn_Wb&= zgB!!k#s0jsAb|i?e%E(ORskW0N&Rc6y#p*`B1bE=NpG>r^lcy9J@$tMvVTnT^ zotU)YXwiUO{ibm2P;v3xS>x?DOu*V)@Ao!CcGhH<79x!W)WdIX)@pJ{y6j%N#geJ= z$5O2r<41@gEb6ulk{y%To0G3W!rPrWrzGySLd4bG-vNq*?W?oHa(L^4`Lvf@GKU4;bD3V~R)h~u`G7J-PLRX?OwsZB0XgbsefPvG1Zyozz~{BzqgTq*s(apj|wTgvFui z@#s%+I9R{F^8TU?9?>Qs->%Qmu&OImqTqom zP@Y?g%Tw%w_J=svfXDtTbC_w1?5}tAgJ-oqLG46?GQVo|M5fAmi=h+Ip{a#z;`TD+~x>UIN@xzOp zfst+78D`s3_mU2Gz#@Q*Rwjfco`+)$l+J~dttRLA(HcfvoZPU+tL|Z-hk+Bly3k8R zj?DIX>0Nnc@o7~!E`cZ&O!o$`cy`ONNzi&3ZA^cas@q#Lwl#BudsfUVCI?Gx!C`*_ zHWTd0FF*F_^`{+SP?dQ$uMr?rx`!ml@HY+|%KzNLU?{j!vRJI<)yq5#N_nas>4iR|!6?u1uv?vOqJtVHE!fcJl z?$}pf!#IJcOT(is9jyXWGp+z8U!9mFPZh^H>`mUuq#X zu5gwI?>X!6Qo|8G;Q0Y%e80|e>tm?g!SEr0Pg>~;j#FvOfUmtB{;}qO{<*LH=VP5G zJw9b|*A@8RUTvH%$b_$5KGsRV52Hf>0CY7`Hs#yTVXag9;S4UrH0z@!INMN@Z&qw3 zUpg!9+D*+JH%z{Wewn=uf*K5q0%ngf`1UYex@3X1^l`5YoA>H$z}z9_Z@Wi zdjwwjf&-=tnBULZ<}w~Osa_rthxMGU7%4aB)p$&R#Menr&%Z4<;I%fo8pVssM;#x9 zKHR)N%*FB9&t_yxI>cufH+<22FUTqVT#uuixK!Ej85b&~WfryPMPo0g9Pv*}bVHuK z{61r|g1}g#m&%d;_m}We&{#4C9bZWrN96Gk9>W?!1f|%X5Ow(R z+Gemln8I9N>PXaH9!_@0x|VDvh^b{g5uw{uH?PPc5uA+{zz;XbSAu;foN#>41lkOr zKKkabQXHc+XBz28pc?grI`I`rLi=1g-=jzN8fF;Fcb`>%tj_Gm=*>Jo@!8@y`T6{I zwjix11i_8N>=w>bB0BeEuLGL-v(=3}ao~kcf{Ev}&-aP!*IgmWj0cf-bwM||KSH*Z zd=9!__8`iN`sKhkeEauJjnAEbVuE?CgY#;_8e`r+DO(0>N(r&L(hX}_eLf=5P|5Z_ zTPuYcmQ?T;Ncb1^`$S65{kU?fHujDC)EchF<;WtR7M5YjZ((+hzoXsVmaB}KtQQa> zbHOBiQrYlJ+2&}a_M^z=z7A?aNvG_tRX{~r$irN*_9fk}?r)@J615HPcE(VR^L-vm zy|(g-Eq{A}dfg8#DPvq5j7MmMgS*>WQ3XVN@rmktrMugt^wVc!E%7!StoB!z{-pfi zYRF;~OSp{_{>_cXLu0O!<iDiQ<)6kp=M74mlQI( zkj_I`2X#FPRm$5F#EMMqr^m6%S7*!NrpJV)`Ux!C($=*bYnok+>Hvv87I*D&UJtYkTl>?=Tkrc@5tsfy8wN8WHay z&D&ggLL+g3*D(~p88n1+PGjzPv0Y5Mu&dpIM%_0Vz?(ADZ>rHn$qz|Tu(*33c3Bal zWWc{a_Zb96cE7*8n7~~~G z>ya7~C9Z3=fDgrZPUpSFN%U)9>41$Z{T8k!wwb3`kJL%5xRe=4-V1Qq)#);>&9 zz_r|(i#{3v1Uoj_!ly+KulFedB!0H-Sw96=p<6~7Q=O_fHQ=KUcOSMijJF@HJ^j>f z+5S}ag0%LVCFhGqlH3(NZAkeGMlZ@IY_pSBTcNNwX7U;|JYWW02f)wm$?yOW(X~y# zVRrTlo*TqtuYGMi5DvM%f->>_t}MCqJfin2<~>GyHssFBMN^Fz36WGMk$UqR1z*qI zPOrD*+ICv}R}TgwoLnleHPR0+hf7LF_bN_tte&_p*0YyuBgl7Vr(m1zCszP;iktiJ zy4#hV2b`(m+K&f2I!v>NVoe7`yeqB}Q?41OZU)X^(enXrBL#!@qkt$iau8>(ev4N) zQIAwvsWrr@@j60vV?uHb0W|cg?)Y@i6>WQPQ43KeMUKny>4^gsF*}I?aI0njTZ10; zhA&{5k;QKPyl*jv#)j_jZi|d@c>4QvSHsvV_TAu!Ba)=cQGpXliwFbPDH!ZydF=FV z_ryVyYriI&eQ(zfNp^R`^&ec`F+Z8$zktpsURWnL@ax3%^fJX(&x6EYQa|XofsqmJ zEfd!X;mP6VZD7NbtI=4D=TD{MK)UPkmXaDNpo1wCYWv2pGp}wvBNaHl4geci^bH99 znn6E)Lx|mue8Xi9ZfpI}ml?xnixD3j1ZNZj0=Uv{XXgemCv3#mUn&({5c zqOVU1zRU1-ffh%SAf=%AvXC~_d%D{D1d<%+Ss-nPJN8=>b|w6soth1mpZ_G33*EBC zJ=AA=t=w<{DfuAPNX50e^lYA^c2qz!qxq{KiP~^TOchhDSz+^6DK56Gs&=X3=^lH? zQ8roBtbyDSg#05H7RWlLf_US0n(X0~^FaXXF3iymSdrf7lACKtXH#I}YZ!*2M7ANk zYkGGkghIMOhOBq}0(`5f(JG;=kEzz~$<#?L(0|H>&ep9!oO<`A?+%SNKv>tTx}7=K zBf7~byicEs{K9Zr%!jh5*s(7L4L zgPaI49&HvwX3mV&^al4J1eQXC1;!NX|=znl=!#8(1E-OHP=|Du@E5O;%A_d za1c<+xS$&Eq4Zz6*8$ozqGT6zPz37&LoJW=`q;fVb@HWj{J+$Pg`_Jv5r93(O7C|C z3tDjsF%f!~MSXmyLcc*d>ZEfxUt@zkT>LzoftZu0js}V8iUcRanNSrdmVOwaERK zO-BAGu2K5S-mP74>Y13Eo4<=nBaKf>11bt-D`sQnPyM|{IGIS2SEkP7PmKO=xI*0% zs4l}v7i*lbM=F-mstx2xb4^vBA%6tg0Dg7T zmyEq_9}4n1h+*)*QpOBPHOG<#^+z53p-FPqUr|5$^Vxr4@E(i(N1W)gcGEii5Jl+> z1O0=U`BUt)MmzEh9YYQ(N3Nq7Nn=dnC-0TSPLPtuGHHKm{^5l*{vJ{sZ5tS!PJ>mgax!_?Yuw1XLq}O6mspdnfeEFs9+x|Ajc#4zhKHJp=;+&yJ zOAhx{+j_$vxab!X=uuHS*TWCP)(WiCi#L#-T>3~DmJapQcdDaUW&>Rvt+`EoFJ*uj zMJWlXMSUkD+-bw5<{@;QS#H=a@Up_EHFt4>Kj|2SDHDm@w_Tvt%J^*(5L@u_cL-psA7v8cW&?sk8OuFFaW|3(H~Q|$Wr4T@|s z#p{jbs94rF~^H5v)zpX8roKRM>>p7Etsj zZ22fUp6gGfFO863clOdLpQeDah25wQ(%Oe|+}2BD7$g8>1yU~%q zNfAc^E=J1kFdz74wz_d{eI(=IH>};NNM_r#=imG0IQ8<4(wTeGNM_U=ilM1Bbg!CK z4>YbvU2A@~Ra-ujI?=7%T+^7r_k&aVSW{7#YA<*~g|V*r++b$FN4FxO&ED3m{m9MR zBU-t&y7+R~7lnAH^~paw^T{T|ID=Bf8L8oM~W|v zXrH+$mqyEcYN3TpNHA+WwT8$PM0rywC7v|;vl$Lm&;==AP20Jsf_t?m-W;i4P3+@I zI@-)$JL=rCw9MfkYPZPMUSO(E%DubPs6d6Um26rHzi*$POO75y0E^xLn@zV7y=oDU z!}3fm{4Z##?C*lf=ikNGzcv}ex**;h2p?Kk~6QsOGs?9HUmg}yO(UJ%n*-GL>3?X9{; zGH*Apvpfc?hsKz+A1a()S_lg3yHnHJ>yq+&+ilNg?26^%{ELxe;1+g^QtnwR(H^JFT`-KeTQvl?qEqv;k zR^~HcQFta}753R97`RR-UNrw{N=%r;f^AU2B!Fl=RUKJ%2xuI4eiJ`@k#NUg8)}%X zm}8N#IG2utZWVGdbC^Z7UG*|vCf9$)B5J5PXDW2~v;tO~_Nw@T@A-%bffJ^%!hY-v zj^el1sA>&v*;E8j9-YCQ?*2FSVuXI}mOss@{ayu?F#N>``~CXm>Rs2VyM>`F04QVDBT27zV4H`tvXbw| zTdb^o#!2b-Q9jDRoEx9S`roRMg6@ofz7#)ygw*kj+#O_h@~i*51|weA#qS@+I0~WG zE>cxNuQ&E$BXBnTOOW~?A8oOK%IP2q_~*SF-uq%G^pQ?VZ_HBqmf9sPq6kvC^~{`1 zPjMs8U${?VKAb$lPkpPhem*H-fbFRL!{!W!mW2|(8PbOHgcR}q?dHDpDUR5gMN-VL z=My*e3O2}*&U+QX4qfqtX~+G`_IOfHY1D>`Itkg`&kP^ZN!gQL&r?L>x2;I>?85Jb+Q)>I5U6ykijelM<+2Entc z9OuE2#`DAb+yYtub)cky!wBjv^`9|$Y|ssCiPAdt@=k%@aPS;l35HVNiN=YBke!gCOy}G%Ny)d*7v7zc)9l#RDJdXf3 zX&1!Qi>)PROtI)W3rnB(9>XY z%iRBgGmb`EbG@j>2pC5b2|p)SrHI($x`l>Mfh^Z`G=K~V?LCRlOR%kFA3c%U<}SZh zh7h^&$L1+5e=7DSUcsH$YVE*}y zMxD1Q_2=0On2f_NZRoDS)>W?JprXHJi7jlIjKw#*=xO(ZTpIZAuM?i3n8&K>60HrST?kAQ5&!K+-g?V0?%^8hL`5b+`Y+lI1Nj=%gp z>PKh|;XeM0!_f(F`V&oD!#x63TK39#+C*U`KiS^*9 z&fd~$m&7ZQ2Fjob$-|dN3y^@cBdNO(kR0b{Z8{fKjWkalUl&SH-KM==xGvLCla-(jnrLdWh}uvfqodnWTO-NTKA!F&U0S-uBCU(g)<-T%nbvojvPK8R_j*go3+){Pha!7l# zqcB-#;h{$i5Jfeh_Ta`@4lNJ{%n0qzk9>HC#>LeICbtXvW^kIJ^1+d@ODzM_B%o6Wa{ek2DkMPZ?Jky6?;?k}bxY{lsc~|$k8s~eo;5{=t6X&&@ z$G)nteEDEXygLh#Fj{P%^X}DWz4yrHAg;yf>i*k0Slnn(q;eFbWK$|iIiV5Hoho){ zmIuJSs{-J!Mx%Z8faP9r(obT6tERz_$0$rf$S{%H&_n(K7S)_YrrJKu#AKtP<{wzp zbHP;1y@KtvYp%C={(T#vwL&NCK~Q+H6rKh^)I5@JZoHrnGA4UXWP4E*S))8^9}+Wt zDzxc4-$aX>=yHW8@mkekhhp*kAVFPe)R8)Vf6j9-oE@=T4}&$1D7NW%TanS^Vge}t=xkK$K9PlS2np4Srpr?$fWlC7W8bn zbf|*|&H{EI!M}zIMiRcBi>AeUb9!nG4O4j^b-AG4!S8GR0o4s+cRA2e zw;r#Ju=r;5>y`K&BMXb1&D2or)RY?F5ZvoamP zLVkVa+j>K@?6+Ewp@+0Ak=p3$wnvwrY2`H1uE%2af-~by=6JJ%RrXxluV4=Qu zy37IUWE}PJw&`5>DeRhu8!|1g+pKlNuEvFb0HDdU(>?x%p*txZ0=v`EPfrc_Bq3x zGz;Xq(_O!f`njpO=Qe;Vgj-Z=&ePdJzU++{nk4;ZyNAN-d?7t?Ub+c1K^`L+elD*xr1 zg(A}RH9eIb!lg9%`$plF>=?Mtvs<;Mo1^1Cf5_x|JV> z{9%i(xLi~5QP)CK7kPiFD^U_z|0OQ<7q~;M{7=>fa^=YX}&Pcnu-R zt6E1yc6|C)G9M{~o~zL6epem_y7gZUJgbeK2!BD6@&x4|BmAslf7D%2Y})Fi?PLmBzQYJ=vv^NsCp!D)Y5@6}|7v%J{?k)C+FExH;d1;DDM) zYsl+I)3!+WkrT2juQKntV7oM*FKaicI};??CXT zz6Cx>c1MU#mcALXBP)u?#ETjK5X%7p|r3*m!0hx>@i>OF=A!?>X0KGKw-ad>F39`BbXComJ&g$ zd^FyHQ+lvf7jVXO4zIq0*Wc-eql1u_DN~M1u^@AJ&UW(2n_M#AK{9Sb4(U|-RNIza z?y3CfHsgU=s~@*%Ve_mnm2oA1-v`WG+70S*Zo6^Xhnzxi4v=8}#_>Qt_}pwX!tw6>iQVhXMSH7Yj; zz*DI`xiP4tegRTFzWk7JYwt5=)tz_M;+=;2z$y3QhQ03dJwWkbool3ykKlJlsOsxo_Z*Vs-}SDAAUF-wyGQxz zNA{tyslVFG%Wsirjdw(jv2S+2?0ZYq)}^H&jyHX4yYx2MuRU_yNPX%uv@Of>8CLT^ z(6}$|H-q}(I<^-vkh`O*2?bsM)r}t4TUFgdqC)0pbhAv_5lO6H5_~d%2+5tPjWe*^ zFKe1%k{i9cYpV#TU%+o)9_cp$zOFMe@V1>L)L_nKkEs*49akl;s)Ls&;&ax}t#cob zTz!0jRx9mU*OqbHl!{vr(mzEHKj?Wx&u-N#Bx#H^OQK%m5=S=HOZhr=eQi=Yp0>QV zE5DGF6k2E%;@%HPp*VbDI?H=jU@5u;{9INb$jpBFibqskhicb!f2I|1B zP8A|Mx*^4rMahdn>|_Pr7I=F^ z=<94g>>4o7>A5coXvJOve=`}^RD9=C^(N0>LzcCwY$gdJlsyQLHveII3hVu*N$&fb zD4l9=2@v9P=mrxv=$9V6I(rk=0sn10#AV}NboQu?rQTWme5Kt%_KG%{t$dBnuoTnbU(SC@GI!Y<%Z)`jQU`pNOvR^=I3JopHJt8x zTzD6yF38|OBs(PP8aCNoIBNHNc^9#Tv75n-xXj-#pA?<{R2d|7gy+2Q`f6_DnIKt% z0x+C4|7CAkJGMZ6(fJ&J)Y&Oss}WTaN5Hl4TrWa6n|6(1IPo)_18aFi0H_ucWKJ_1 zrVc%~c8Q?8j{3r(*TF!9orU;n(Y*1+bE6Iq`X#0(gF%&wWQ~mWX_6pG{S$i;65qg_ zB*9HzzGJw2$F+X*h8oN4ps)yU^)7w$%HC-tB4#47iS;4I(&1uZK$cJ6^y>k~7w*Ar z_Iq2Ee#y4$ozMV2f2?K2>-2KcpH$KaS76mwB(FwCv3c8#ePa8|XTtR?CK&{?y;@CA zH~V%BuRWakVOes&$PXRav6f|Y1lwN|n6wP*2Jv6F^4D&wHwWAeN5eqVWyKt$dP;s% z9h-%Zg4XA>M`C3|Tx_z>k)Agfmbq$5f?i#PCu8D`7hAOBRpk9h4ss{k(<&J+_w2|V zD$?ttdjqR>4>!JvVDQaSWcS+cx)sj;>AqeB%2-I)9sP-Prs8ST{39_Sb<;U+FYR44 z#-sf;hE5&ljYW;~XP1Wh;;q#dJ+=Cc4zQgM=|rq(_j@=zQe%|ozaRoA^ZKE7++MA@^$(P&t}}2K2%Hg z1ZOI#N*i5#ht8bBlKWj=_aCT>4^p0Ix?O<_Eum%6W87)`S8VG&e)pqlNvO3N7Vm@U zlhfi?8ovH^s&Fxa@vZS6ljkqYFW1p?s#PtovF_{`5^hr|KHRabobc!wR>TYS*|eP9 zZ`#gI)wORPyE{D7ac9@ZFPO5YkuSXL?zAGtJtG@;1;<{!g79*GJT=JgNJxizp!qux zT(mq+;qp>fvc|J}uDmR_v=V@&>j=8TJYBjwSwqs2rdNJG!VKMFXiUy$Tidp*!@d+r zTc4gN5;`FtNZ)|bQ)OGp^|(PnohHGt;|2?gRYY1Ka0XG~G0-OCdym#9tU$_Gr9-leJ7+2_7BjwB*eDQ zk0`_&tbInk4W@@=a2}bHlIAXV$efAtn=FQGgG-S-1?h6h(RYjqh-b0CF2$z83@Y$> zMDY$PE{x?&rdDbgiZrC6r!G;%h8Wu9?uhE)wTET_JIMyaS|52YVW?U8Bi)%!M2{HP zKQRq^1VtXvk5T2@s~B76eLq>y$c}N(?e7q(VE0|{3pSY&nYN|>13+Ok z5T@~<0x>{a_U_oxu=PgNgP)4gLwFm|F{$`a1<554xNlI6Frc=+DkXNx&vcuTRvts*>l@ z9i+|eP(R#}h!+!((C7h#kV>FO=W^EBV)qr*ZS~nSi3`<;iQ>>YkrPzpXU#RCA6G&6 z;du5kCaLl)Ny<8igJJNDf>GjG*f$ewiyBFx%dLp$<39W9C;1wAbx+gC9$pZ;Li3X5 zx>?kNoLhk~scg?zb!o(((111e=nLla1y$yXpE_T^=l@yVVQQ(m!8g(8?zUH3rS>U^ z?_(4#Z1Q8qd))91~!_n!IYEyr0JsOQ4UZ&|hD zS_Cg-$>yYoqm2b6f^wC3Jdkd@M5ib&?RZx{=af`S!u>;zO_e`|E50Su{$9%hjp`j7 zct`H;){l=0)BWsesGpbz5Q-~_P;sRae0#n*j2wI>v4f3yMu%AcyPcERimGP*A}Zo( zyQa=Zj9~*Sc{ma#Gv?b`&8Lyb5^`aCz-%*iQl3~5Ka9*?%J8F&4%E3^2)Ruj{L1q9 zT2q3~eSN5I@%r-Wtif;Vo=bCi(x`AY#rXnX^>u{Eb`}N>M~iZmvcNYeV`-y-DY_!3;}Z(d zfu=p4PsK#Xh{e_`999#L5BP`+)xMc1k!9f#eqAY?h=72t>vpRtZju)L9x-s=8e*Uv zLLuDFF`tz^hxY1qNm`ns4p%_KC?bwAfOFGb>fooDO(QOHVb>`Y<)g(BF)60J7+MZ$ zfMx9VeO;jPID4~ot_5L*860#3%y-d5xMu^EEsCqM54@jO*lw>)ot8L_cTny&!e7<2 z9j&?@TE#^Ob2=tc=Nn2Tj|1g3z)>s9&h-ah+c?(WcrGxMZ)qkhG^+gCx{tARO8Fy8 zq?4ZB;ncn=U_MBSA}{cZ=%IPeOQevjK(VpRA!G`5Q5l55!=(b1>ZdS9qc_LJxp$tw z?Vb3f&&0JoQ1B%I_P7Iebk3$^-|wvTSjW6$#ARCjsK5Lw!1Y#R%5kr&*|5Ksa(ET% zGJo8_c4)wJqwB3FT6z#DlRmjTgEsjlIt`DRZ2H_c%ST=}paiI~vsiN;G8_Vc4@5^5;QfLex}*rb_%f9 zwD3gH6twd*+?=|dl7Ib`J4I=vN$&mym;IbH)fWM%P69GnQDVz~N!`B*)hl59lgWv^ z01+-OC9w;4`h;dy=7vDOdQ2;Xhkt)vo(+uTEG;Jm5GJIP*DBJg-5-zwq{u+qaYF>m zcf-_oQsWe%ZfG=~cFP7gk8-n{>1rctZ9AA;Z`^y@_cfUcBl11#NrHgqcz3*z&u6`* zPQ3!{%Yl#+<2C2U=&xTyjwwfAkz;Qnyi1g|TL<8-(XSjMp!Gb*r0Lndu>P{l+@xl` z5Y_V|B}iiJHEVsxvdlvGofc76FsCu@!kvor1FE%J3ZjBJ`p;Sg2WZIK6j?-C%Sxtk zD$LURf6E=Va%Ff_;q^7+XLa7KJ<=8RKPi!so3ui0lWx(tWnpsq8F?#uM21hH0o(a@ zt>(rp`s963#7820hP)mlQDMBCmud&9?L}sN4}V)6BOwRYx4}XE74^uCUeTy%m9@aJ zviH@ly30*S@_>jv^RAJS@`oQ6r4fbg^r6u{@@8oOv z|Bh{n$Re})`!`!Cv+6*l&I}fczhhA+Cla_6Bd;9qDNQ-jjvD@`36OiRLjCLKP{MQz zKW~^X-w6-vqCA16mz2P{WeK}FP2x2=1T@v&@46~w|JF0-oB`7eBu`x6wSX;$5ziIx zU7j3&ETlW`FMQ6`dgsTaM#ooo3iy9^{U!ED2f=Bi8*tWV(cFjVp|FL`0~L0ze}u54 zm@(#B1HjMt{xu$$d%dhSysvJrLzGrr^h963?H{qNV))^d8cA@_cdOyhD3x5Xw5k3Q zcA^HbfoZ|E?|St)NHRfcQ|0&FqI~=4RE=zpigEE9REtiLYZK?9uQaH@N4_@^a>2peER|X{@n%QM95?3& z`DlNgMM;L)bfML=DyzA4pKbg<4215!{w}QX_HK4L{vrAnSka_|T>O9ivNvQ_ecePERcm1La+@nfJ@D~-Lcn?uOo<45f&!2l literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-entity-structure.png b/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-entity-structure.png deleted file mode 100644 index 496483ef1bba704db89d50c130600efb92ec2abc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23863 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 diff --git a/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-file-structure.png b/docs/en/Community-Articles/2021-10-31-Many-to-Many-Relationship-with-ABP-and-EF-Core/domain-file-structure.png new file mode 100644 index 0000000000000000000000000000000000000000..6a5405dafe31e8709798280a13cdb96478535949 GIT binary patch literal 27450 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 F{{w~tve5tl literal 0 HcmV?d00001