From 84b01dea993e28fc71e6881e02a12cde507742a3 Mon Sep 17 00:00:00 2001 From: steve-chavez Date: Wed, 10 May 2023 23:44:09 -0300 Subject: [PATCH] add recursive m2m disamb --- diagrams/users.er | 13 +++++++ docs/_static/users.png | Bin 0 -> 14073 bytes docs/references/api/resource_embedding.rst | 38 +++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 diagrams/users.er create mode 100644 docs/_static/users.png diff --git a/diagrams/users.er b/diagrams/users.er new file mode 100644 index 000000000..e42ca312f --- /dev/null +++ b/diagrams/users.er @@ -0,0 +1,13 @@ +[Users] +*id +first_name +last_name +username + +[Subscriptions] +*+subscriber_id +*+subscribed_id +type + +Users 1--* Subscriptions +Subscriptions *--1 Users diff --git a/docs/_static/users.png b/docs/_static/users.png new file mode 100644 index 0000000000000000000000000000000000000000..f8b57fee753d46a31e6d918c868c8775fc8f97fb GIT binary patch literal 14073 zcmeAS@N?(olHy`uVBq!ia0y~yVBE>Tz;J+riGhJZET`)b0|NtFlDE4H!+#K5uy^@n z1_lKNPZ!6KiaBrhrpJVYU;n?C-a1Sesdu0Y>*aD~_db=?clXs+pPgkY!^f`p|U`#gO``LxcIYW@w1%!`{qjh*b$SLmZr8Z zZDWK*fKm%bQ$be_Te-yroO*kE=gytGqt4Hd&r#q| z?B|L-;`(tJ+1bIpzkdBXWV-aFpoBofETapeMx9Dp2{9*AjHXVV`f=+Ajs7hHEDKk! z?q2Wf>+9|1B_t$tZGHUvcklADvb@?3wY0G8DO$U7rKXLI$g-tNT@NT3t@668Y@p!b z<+WAB2Z#9*BY$D_mi_GeC=a^f&GH5C;RxpDjU<3*P)1r@pT zbsr514ON{V6dWAAB|}itc+UL!=aV*mD0Or^_~z#3mnFZRoSc05(xnfZD=RB)zXT`s z+vdnmke+Rp%hZ_FaO!BcxVV0t&SmAUnd|TDC{(VLm5`V*dGh63w`NVB{`~oK_gjY# z9Xj#)>FMd~qqo0%c6Rpp`S$s_xw%CTAvaV_sJ(c=w|Npc7^>wkk z%ii9atnRO+r4@8RL`;rsXZFJ36< zeg%W4PoGLkN;T za%}1W1y=cQ#{=vS8@_w@Zhrkg%gXA1e=3VkHdUGB-QQQcWbf+5N%jB#e&3XO+O0=o z;j(4Nk~S_{yqI-S=a*HN^yBv2*p_?y$H&K8w{8s$2|082>~!5|H?Ly~nl5Wx*X`wy zIBH>2{Vk_S;Y9fKnKM1@I{5oLB5zlIdg7Upv10Guy~~z8o1p0Y<;$06XJ!_^yJM+0 z-FvOt1*g>1r>jC&yY)&fU9>1EF;P%XPVa-fcipTzMsJU`?7h5~dyl_m!>$|M|4!@g zpHR;_ZQ3+(y_k%Qj2EjW7C%2Xaq8qrlRSRk+gt7Vdw%`D&fY7N`BsOmy>#i4(2vF3 z92^SK6XHUDotbGIoBJj=D@*8I)RK;^CxRs|S?i>=e>&DHy*q3E`RD(CJnmn@)xt1Y z-GANs_3GI{(Gh#AzJ7RknDrGq8(Z1qx11Mx_r5S#$HJyr{QR7%vwvaX$4RQ*TefaJ z-XpoW z_qcrhnwXuF&Za51xb;W~%FD;cg23P3@Ap?%R(6(nF6k)cm)%$Rm~H-fa|43|-%d_e zpS;lJ4Bx`p=J{=HZI3=K=1-7o8L4^s_G{Uct~CaHuVNq6o?^W6Rr2`h>H5YJJQM51qoSg&EMM{X)RQME zm-Gr_UcPwY5w>p48kOT=kB|2scQayXX>04Uw6?DORkG==u@Yd$nKEQoh@Zk|8?{$zFksvE49Ce9o$U%s69a!FB9 z(FY4}FWKx**KXXHA!UA4A?V1i=X|HV($m$&M4dSzqoVrcY-j0w`tU(v{YIx5494l_ zRMxMQf4p|>+8<8yX5A6cZglLOH!rTDqQcMb-0t%CLBYX?4;}JQJ#g-vU#C!ejc4}0 zC2Xq?=uSU6cKdm>ebSdlT>f`UEOGAVlw5^@=lSB(>h$*Q9NZ*QX? z&PuuA#Nio}Bbw2;XX(X^S+iz&ScPV)P4;}oF(Gby#InlJm$K7D)h2uLDl#t#exM4iY|*Up3vMsT|d6d z$Ng5c$72J@-z?jHceMB|pS&sY=+UG4aeEZH>;C^O|8(o>)veWh-Zj;GTXU)}c6WDs zdwKQr^i*AJKIoI1ySBBpbDzN} zo5eJ`Ev~Gre3;G7&i?7(ix(OE{QRY*Uu%DVv#tFVQlr0f=g!;P^Z%c(|M&Ub-Q8QW zuRm%z!?BQ8+U!C1)6>(lv$D?3x351l!|>OyUom>&OICfk9$!Cq)~v4UHPdw>i@v-F z>?*;)L2(&Wj7tp5J~?(WC)Dzu;8el7ao4xhn_%FoZv-rHNf z^7KuKCWU=}zeQ(fXV+wBX1;v-wDjkv)Rq88N5+5k7PYm1MYY4`*wse){9YZlwyU$# zvfu&3)fdm7KY#zefBouJs~$ail$4azGQYH>B+6F**9~_N=v_P zN8RMl^`SHDZUpwqp3_io<2$+7U*F*j{(?HnI}|My;A$=}}GJl-dJdrxI?dU|?Q z)vn%N-mN8%j&v3l7T*0Fc53@|?Gs|!x?td#zj1qmNHf=wyLWBX)YQz)zkhsu{OZ-K zU%!4md-iNrR+gKao1UIt_O&&IWo65*_4oJR-<=Wl%G$JL%bzco{jaZ$b`P5n7iwi-aN+FPx69|(?J9kJ?ep{V zH*>ZvT==ksQ~282X!pCt_ncL%dIWCmD%Ea3+}Yo+udgpY?})(3^!c@B$;WzLym+y@ z{QbU~pPTmXjdgcVzq6yzd%E7&&z~1RE1Sw$nN`$$ZM{KGoMic>Z+ zGSb&Sf9lk$Yipx@eSK3?Q?swHJNoG~0|QSfW|ht6tsRU4DISw0Y4JkI>LiclYB@o}@(FW^DM*ED>Hd**N{2LQBCq(VAXK z`?^0rK0f|f>g>$yD6rgreqLs#W$`nggoFi3HdDB8bn^4_v-rr(@Ws?%-5a(1)aB3TE?crBA}XrP z+Okuo;=_Z+?(Xikwqujk{r~;@oo{TsIrH+ezu#`>U)sK4_3G2lKNp(q+q1`pvC|-? z>is=iSy@@T`TUJS6QuusU%zht=E~1$m1W^kQM)oPFB8{~+f(`3ZQkEgEd9s1xwtM} zx@1-QO2m&_R9JZOv}s~8GBH6xpcZ>@ww9LGt5>h=|Nq%Md-m;1OTB*|OJ$fKCK1lZ zv+vg{ZE^AGbLPnK^76X=zNDI&nc3RfYG-Gc^3O)9cU#HJOX2I|N}b(YLPJgU^!z+M zHC0rWNL$-5EGTb`ur#nJd~{@beBI6Y`}YYtmA|{=$ica!>*)5ox2;XHudSJDU2bM- z`t#SXZCkf~?V9|acYfV3O-BJyQPHAzs><&cz;3hHHJV_Oj&U2nL%?CmVe;KCQ zf!ouV`{itnOiiy|z4|shuVcxA1qV)@TD5)Ba_2QHRlRL(Y%K!K2Ny_v+<)cQuV3%B zu3WN2L|i;QB}GJ9T3THEda?R_ehV2tN5{tI=H@@U^>lP}w6$M@4BESQ?~)})PM%!3 zy{aXG^NX&QXwKp^{G$~|dWqr`Sr}Ol|g9+27J$v?S z*}8RkiHRT2n%^%eEAzU^?X+U=UQp9)j#cTZY15{G#vHo6YievjUF*MpKA&fC{PXMe z`jaP53ak5t1P9MHPUp+qU-Y!=OP)f@y}i}j^Y7caySuYBFI>0IF8kV= zW+Jt=|IbUs_}Z_cPA|^PG!9XYV~pQjw${hjw(3jA$rLV$j|;bit`3{{TYD*^;*<#! z6oTK^a`hko{N;lkByyOxn*0(YL%3A*_wjZQ>VN()xLV!d3Lt>fVLrRKzqn^vwodFm9G;+DL-yBejnFJHba=ydMfxs@wd_JToVWTf{r9Zz51 zr=NdTB$ogD^z@4R2Z`c?O{_~&@9Ze#P;_=ae0jP5^{ZE}UcWAHUDl(}vCz4_XlG34 z-Ywg=KNh=l=T6?89Uq^aoqg-pt?cXT&d#x%d~07@+p&j-+vE4uc)ksfkB_f1zmceQ)|CIv-A+=#FLdo*ox{QkP$;E=U(d!uUNlNRi{ca~E|*myI) z-46$!_#}Y>=JJi1m({Z7o}R9++``1fv@2_g^v0lVf2+1`-6|?7I@>IF(o4+++H&@F zI{(j#)wWNXbg5HVeVPCKeML`Cb#!o~raqOmE}JrCO3dD>sWz8m z)O}~U)T(G}a|fEOd-nW!c}dBd`2BMICp~U;KL7d~e_5QJooD_N{_?y~Rn6S|`sK^P!NI|?v40o$+nqXbVgYzy&CAP+ z#qr7W=iOT-oEDc*S66?icWqs)b;0qeGxqG+bGV&fKWadiLy@Q1!vpxu2h%eSK>CiWM3y z7k++z?s_XYC}>HEbHY@AhBpr3wVjQx*xnsFecF4$xoc~q1)Z4we_L_D{0D>cukW6* zpOh`@{#3+Q|B$<2pRCFmC;092=fm5N9XodI+O;cO>V9(^IA+e6F=5(*1qv+zF)=b* zZ}rJq3piDOe>e5UY5V_wngwQAm1c$Ot&P~oq!_ICSL5l9ekxlk{a}WoONr#j)_ihYwv{TxPRl0|GXrpP%R4&iC-!+qZAq`Q`QA z?Ag0_@5YTAzvPvalo-tPDJ}i__;`PKSXhz8oce!1)opESA0O+TIC0`5a9Q)C`1gs4 z%3r^J<>lpF?l)J;G)u(k#JO{RKFR{x>=GaBo;vLBnp*t)oajHh3)io!U$1v|a$4bf zxQ+Mr=5&6ijQ{`s?qHgIcG=~Z2M-?Hwr$&$Syon7{qpwHHiaNwXY@d&&E=udh3H?AUDc ze5IB(g&)YH>0T)1%NjE}FcufPBKx3{-TOG!Pl zx?lT!?vJ>CpXdMYk+Ze3vf8y{$Be@dBO)W$#_TM5c&IhU?DxTD_87hECr^4NoVVY$ zIYQ^CN>#NY{XzBLD3$H!@Sg~!}Hl?kW@9yq)_d6f_-_(D$neP&lJM#5^E?&73 z5*_{f#l^*|R%xZCrpCs`T3cJ&+uQ%SsD9w=Z1ekjtCufYa*M z#m=2OO-)U!zrRz}mX?sH`SdtnH>wo(Ed3TrZ^K)~ne}B{MtGyDjE$^;XV=~VS?eKLW;o-r$74>sEJ3CKA z1P2B>X2tPH8nyK72X!g8zrVM)`r{*4KfiMy9v)6VKX2`lB_TmUpN`AdOGrv~{?U5! z`KOH>zjj_g<=0oCo}MS$+qqAo9>d#-l=H}F@6BOg`SXcJ*p)UEQMxyH7v8b@S%k-R0*GA9juqkF9xR zmKa-7Utb?n^8er8oyE_;c}4Lp*gtXl^!Dv>U7++=F@NWum%eX%u3fvfVS_<(a`K+o zbvt+dJgvW9g+obSf4z9MWXO!!v)Nf#c%;pIQdTZrytuo&domd8-Me@0+__7aE}c0u zGW@1gNJz*M{wa4EN-j2jpK-5e>hALQc4cpFtPWqFGK+PBhnpLlqkvNQyM{W}7mJu} z)9>skOcGlxYP!N@ueA31*xkocj5g-T%s(F<9&TUpLE-=X%^wd`^S@Zc{N8Y{q;~xN zy4=*%)a2yLpPyDHC@}4MaiH4gJT-r zChjhOziY=10|_2w<;BhH{Esf3IN_nKtsNQ~nw_29C~IG1_y5Vs$rkS0X3di7K6*MxTJwDcZdwc%wUArcI`~Cg> z8e#-HoYI-+}y0{JuM<4;z1>w-Te3O-}}q{d-D8wds~}b-Jc)R z- z88ajV1VE;qJ9qBRotTyjPft&mRd^Rq`syS22m zo}3VzJYj->lvGq)+`T(@=1iHgWX&2GIXO9DVPR?M=-AlU=;+;*pVQ>}#RUZ$U(dI% zx6{)*ckrO1s_N2h+qUi8X=!RY^=Oi;eVt5p?%w+m(b38+ESKgdF|vAlpO!QGcQbvy zZrq+73l=O;|Ig3GaMyjA@We;w^~*)IJvA@9zP?_$Ma^%H#sUMY+FvEy+}(YBd=t-d z9ryb9AkL#To#$HNqGjeM&Yk=A_3PE^*O#BVKbb3Y$HbeP(}Sfye*5OeA!}DNV@pX{ znbAz2^z`&k?H4jkf^NwLM?`c8{Cd=_-x6DU{##_V|1{)h&iqy(Ohn)1LXQ!mNEWey-GHVhT%$+Oi^y2C1>9+p^|H_z~ zn@30AUa~}`sGfiN>AeLHnz_g6JZ5sw z9~p9sHqO1hLoiW!Ua9MUzx_o!WAvtb_suO7{3`P8H`g`S^{ZD$?<`6U4GqoBef#U{ zYi}>FK6!h;tFFs0X0SLucqu+n%rGIgBvLkdPsPR$lavi+9ISkovS|OD!X=kqu3NXR z;>5LEx3W@GMMXqf(m#IWQ)$$hWxHg}nw%#mCR(@)E!(nX%aSE7(b2or&qhT@KY#Wt zEG(?7^wfvF>5qBQ-U3;v}1>bs;cWU_g}7SN(u`(IXDVR zOHEBppB7kb&%eKJ?OIj)_K%$VzkK;}>sHi5!_4mnW@dU?T3uaThunLNjg8H7Z@KXC z@AeG{2yk<2+r9huy4c-nJ~Ixa7{%|eiwy`U`1Ist>FaBr^8-^H9=~{@@htw~i;Ig{ zmzcBY?Ao=f#`ARf#fuk>YTMY^*uDwRRa`K?;NzpCjFQ@*QT6Ga;p^ji^>uV~czAf; z-PyT#wXRR&Tm}ZQMWD3+tGjiD{!dd85)vx<`|B&OwAqB^jxw^cZ{NO+-(PokavC!; zb8v95|9m^!{ChTyN}rxHFc=8D6lc$ov#Hon_qS?|(~8xrL1UCRZbTF*^YyxUdwI<= zO6@w(IANYa{l7mucI?=ge0cy8Osi~<=3LZaAot>Q- z-`1VkUH*PUkYt?qL7`k0M*|6-#-9fdGGCm(rLM7#DdX?Hd<|{w?Ck9Fl9C5oOKVo` z+PinJcINFzkCG<7O84{gJ9L?eW8s@OIjfiidfg5yUOjlw(ZPLI&i{XZe;+FI_CDPy ztlqU!|G|ctGiRQ-bN2i^+v*Pw82{}J+1=aAYxhdaAujIT+1cjJ&CS)>O41Cwk{%pA zRj18*OMJ$R84rBt&X_V~%7zUaHf`Fpu8g%u+MI9s`orzkw{PFBw2_;B`mNTsS+iyZ zsk0YwakWgCH*emFUs_sPO53@3WUWGc{(k#brum;gCNwlOI(oL-VqQt3mMrzH9{nuAh8)gK@Z%#VeWt@KQ%9Se*{tMJTZ(G0q{rdg?Zr!-i z(f`)-eGq^2z_vDHz<#{3^A`y|1p2D|SVqPU?U%H@wtt@5HeXquE zn(?(?r*?OH`}y^qIAVPuq2cgD5fKp!3yTx`UmrSjXw#-m`^pxB2X|baJn5;JUUhGl z$$=e32?dXibT&?^<9?z1>GNkxnLekar8RdB7(Ha#_3Q5vQxk#XQ=5f3rZCU#>+74W z?(a9#DD}#Uz*nzc_4W0!^T`~Txkk{bv9XcGk;7*L3k!u-XPrN0dy83s&{XdJ+S0TE(y1cx+;^NbP{HUnmdi;ETy&A`( z>+$uzetz>T3Kz|qb!(1gvB&SJ+TlyenH9ghySuyg_cu!`D($cSyo6{z0#m_i( z>eSZk>rxUD1`<5}{^!N@;~pfRz0||P3JxHp$(N2*FY8`huG0D zwQAMI*Co8Xy#Dj;V#CA3!TkioCWSUW*)HRl z&i70A?v>sC;MudX$H#ij^Y2}`b}epqS#OB`k)={nQtkZmbw59;ZjG<4t$lenVe`$f zurMz#uf)W}`oCYrXP>S6`^)rNT*Tfg)A{G~GcynFif?ReR8>{Y&CR`e^JZCD8E61+ z>(;5yYJ*~5#btv!a{}5=9qK!#{>V1e((>}jEGaR$I%Ce99)Vli^X2#DW@jH(=k_p- zICEyEv7nR1md^LA%jG_N|1KWTzjT}b;){8Acd6$5e=^yBN%`Xgjm#VigO~epmL#U7 zeLKi5KS9(i_m+$9(bbz685x!4ia!qe9wjaDYbt}mjSn9_eE9N(hnxHJr%%5gw#&1m zz1tvhXo=_K701@B(Q)xqm@|L={fid`g@lwQh>B(#J8T}{CN$BxVN2ta%`q?x`5Ncg9jsyigNE1VhIcjI|f=ElYV~Q)vH%UPbBr4 zS9loj)p!8Pzj8N|p8oy)ee$G9PxQ^c@0&DbipnPmo)7aDE?NYt*XPcC`|8!KnKLab zKc!Sx|6a66DdyLQht8#?rHxacf(9fyK3(q%4@o;a%XRJLd-v+Tzl$v{F0OHK@X=qp zcCG(>yVBCqw^^GN^X?x%?!II$kB`vZ1G0);UD|TT9?fcNYXd2oXEPI2u!}vAHqTRd zxk&oz(s|p}Y&X4?+_YgsKydJD(cWwZ#gezTOn<)DW)orUKAN;Kf@9&IKQ&_ATkHS- z`~3X8a!XftH!m-5rioPK=O-s8pPy%IY-qSJ@4uT!V*QzWd#kmzwZFf+tG!WtPM^g8 z^&SNbLK3%?7Di}ZS~@#DgM%j@ ziL-J@oeW?c4nFb}=_9tE;P%lapWGeevQ& zg3-)ZuU;MRmtVhT&65HP&?sJ26{v-+tgKw9{Db)?@}R|`_Vph=#&mM*xU%{w`!So9(;&a&vPt>yf1; zB_*K2yHtH9<0^?gOqVZRa$0=x*}1ve4=lIo$Lt8GGXGIyH&ZaG;m8q}7)OP@+P!YS zf4yE0E=Pspmo<3b&EvgRb}xEe+}^I`7XN=fm)D!#y*@cPS@f;A!c6(PABnfO<@)*g z`KV1knX)Nj&4&*k{`{#?R#uLAc%YHFuCDHI8?Urk&W%Z`-kUaW-nc}r)OG3R&6h7- zGE!AdeRgJMR#w(xw_YwjzJH(3+n@Y9NvQhf#^mEiyTzCL%rvU`QQ+%)mQz?w#=h>( z`SbjWQ>ITp{Y@#?YUTn?(cAO(R(*ZdBWe8Q>(|iG(BnOlkKewneR^stE4SDK zuIg`ZK!&}zxVW89)++VXl>2qRdHtn4c5YBEkXo+3_9V-Ta4n&V`9%!@Tk4)3Y-Tq$ zG7`CJ-5_vlTkdR!OX?TavozGX7ZiNhlzLj^?a>8oXUeV%D}*sQ+*gV-=Mh+NpX97fBu{~dp0yAq>W$RF8|)1GiQ7@O*#G4&CSiq(lRqUJ3BMe(%M?yvS`WHt)k$8 z-#G`~uU@}TsXws${p(}B(kzZLwpCyL{r!D;nQyXzgq4+5V`F1!Y3ZfiE@nmF-^GfH zi?cN+rlgd7c;FZ#B`KMin!0q=s;t~x-3^c1&p)4UQ+es=QCDYYXJ6mmqe+Qh56s(Z z&%hwk>tlU=sZIK)7Z;UVF06~){o(EF>+4&8FTMOSBCP-X^ZdKJLU%CP391%c3zeF` zK7N0nK-9Jz$#ctmAH90zb#3Acp}drjkB%}mEpzXa`T6Jb`ITa-s;WWryN*A8cy=#S z!p(ho`~4TFE4a?T&G<|4@0UA#jskLWa^dS@D!;xGZ9fc}Hb2@e9vTvIBJmdX?jvg; zsQW1D^ZngjZ!2Bjz;i6dGqGYef#$P`t|Ed;;e-W74_!Y)$VF- zb#-@dKXI)kd1=Lm2@^u9kGZ(IDz==PW2wB(%@-pAW_mZYo26=le@|G|+ zH-Dw;7yI_rE3c>wlUa?8j5C8)ZP+m3^wUSeJAV9q#NBe?^mP5|AKeTL0Sccwrn2+P zJt?r*UH10V_wVKg1_6PAiX4Y--I7`^>BzA$V$E{@`Dv*juypzI_V)JIuU^INC|Iao zY04@j|43Bv-~RjWg<=mSa56W#we(u>$~kew7wn8ltZ#X2q+ot+T`Z_O?pn?GMft;} zjXo!o!=_E0+ACu@sj6o=xD&?GZTWw`e95lWtF`4eZQZslDl(FlmDRT9hk)XeB}-Za zgifr`WS_pPaqHI7yu7^BRMp8R->mFrVECf`L{Pi8x3{~iYtf=bfByazbecJH=4`WE zrQ=B)isIta8yXnG!^4AvgZbKve}8*>>sHjK;))v^5;+z^dR?-zvOjlRv2AKr~iaKGsNbz<+%-!9+y1KgPv0q-^x(`MlUtL}Ov9-0ewXyNwTfWA8Cf6tD85t53l=^L*KR-X;-`y>3UAAV{tXcEs#d&y~czb*M%GvVr zkX}`EbhN3dX>9D>latktA3HWlx-i2eDk$jE6wP1>p0+zNujE)9=UA0$DJmYkdp9;Z zy86Tf#k91vxVX5JCr`e6_ipbaO9lom#w~TCoO}E&7Zj|GUm$;pcWt}{KOX~w!puf- z?a!Y+9Z9+K?bD~AEzJxJd)j&SL~t@NDAcpX@p0;~uFBA7V33G8utSJ}!P0O+v5W)y zs%;0kjx&V?@9)_*DL6ShvueffshFtH;oQ!r=ryScG!V682al{($&n7h)#2;ctz5a# z?$GO?F#;qetNH%=aG3x6JlorM?)YqVcXv0I=y~uU;nJk3Q$ds2)!*N3y!mF< ztXVg1M1+Tjf6@dGSjmfsl)S&U_t~>&+qP}{^XJcn3l}C#m~gL16jaoHTCiG%eSYn? z$l&11JBy#6nC0r~x^m@8Mn=Y{sHi1|hK3jK-`~Gv$&#HrEp>Iz9z6K)<>lq~>wfF% zO?CESy7`SqR9t-elqm_i(F>kmxpploB0}R9H$#9*x0vp&U8UJ2C0}lB&EBYLWhJHP z^6FN?v3~jbPftA8C|Z}kx^jBDespxSx~l5KDKX3a<}SLJVV-~Q%H_+4zsAPKK7Rc8 z?VC6MzSsXRzqG{D_Pa1>8HvUuMd!9Pk(-w-SfHS*%d2?h&YhZfcXrM+PQP{IM!;&& zbmXkVSI?X|bLrBiEn7tHPtxRkQDW8W790cun>KHD-aCDg!?wbuV4#{|`$a6mnwf#k zGW*(^oBQkQOG>t^Uj2G!@pI5bbKzsRnNbs*y_h7znHUt*cbzIUD0*_@Xt((PU$57P zhK3p%8j6XD&6_umskH9*Tk}_o$|55p3kyHaFiificI(!!7Zy58OG&j9cd4qXe(n3b z_YxNaLxal-OFot^v%EVuE?(T2b#>MLf4{O1xA9&%pL^zTJAZRi(>(k7dzUUvnmBP| z!ojA#K0bMQ`4}k?kt?@uy?Xbq?(3_ovt~*0wSRtev^)Fyy2|S6`}=BlhtH9(cz%$P zL1ID2$-)Ouo;-Q&KD=~tvU>dfy4pWKK3Y^e1q1{{Ma|l^%L*Ld;E=Fa z^PAIA9?3O%_H6A>Jp7&QU@+sDxNg*ya;6{Plxh&8_x;-1XhTE8b?eqWDe|pn-gl6Z zAwXq!`TJ#;Uv5r6pO>Gn{#^dIB3QM}uV261`(y;~XMx0G5hOe6`#C*?Y;c} zeV?YqiXwCb-OP8wZ z>*t@Iru*bskS6O(Az@)=CZ>6|)z@y`oH=`TcQ4k4LG_;>hI*NeqLhY#fujeH?_XJy!>*;mQ$y^R&Cs{K|t}# zQStZ>|7HLB&as$y{P9H54TaCn%)GLE(V|5HPU+|7DC#2G6B8FNT&TEJ&}OmEqqlE+ z1*~d*7-YVD^Crb;=DBm{f~<6SdbFQ1G!?2UxR@WC+7-jz-_h~m+cz_F^ZBOPV%ZtRa4f45{_Ua>tbEsbO0vSn&Dv!_lqt^HM! zxKzz-w(s83;^M{kX3dzP&=M0H>&e~gW^7t|d2(`c>sGI>et3wLot<4}s{&|vrhwJd)by1u-?BgT*CY7k zY)(8ZD0_SB>HGKj2?+}pEpifQ*}C=X?d|z1{a3D9#bvIPqf)+lIBRaSGkjsI-MTF~JG)!Js_M%N`T9Qx(>9+z zecC+#p3gh6Lpyft04-B=b#=`#+r4q)$78+HTeogaO-LF(9o-%lhy9-D(&87&?Hdx;laUQUtj0u=5AED`{d;0