From 522d45354633f080288f82ebe1535ef4abbf0b6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=20V=C3=AEjdea?= Date: Tue, 2 Jan 2018 14:51:54 +0100 Subject: [PATCH] Add drf-yasg to documentation and schema 3rd party packages (#5720) Also fixed broken `swagger` link. --- docs/api-guide/schemas.md | 7 +++++++ docs/img/drf-yasg.png | Bin 0 -> 59949 bytes docs/topics/documenting-your-api.md | 20 +++++++++++++++++++- 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 docs/img/drf-yasg.png diff --git a/docs/api-guide/schemas.md b/docs/api-guide/schemas.md index 9234212ea..3284c9e1b 100644 --- a/docs/api-guide/schemas.md +++ b/docs/api-guide/schemas.md @@ -806,6 +806,12 @@ A short description of the meaning and intended usage of the input field. # Third party packages +## drf-yasg - Yet Another Swagger Generator + +[drf-yasg][drf-yasg] generates [OpenAPI][open-api] documents suitable for code generation - nested schemas, +named models, response bodies, enum/pattern/min/max validators, form parameters, etc. + + ## DRF OpenAPI [DRF OpenAPI][drf-openapi] renders the schema generated by Django Rest Framework @@ -815,6 +821,7 @@ in [OpenAPI][open-api] format. [cite]: https://blog.heroku.com/archives/2014/1/8/json_schema_for_heroku_platform_api [coreapi]: http://www.coreapi.org/ [corejson]: http://www.coreapi.org/specification/encoding/#core-json-encoding +[drf-yasg]: https://github.com/axnsan12/drf-yasg/ [open-api]: https://openapis.org/ [drf-openapi]: https://github.com/limdauto/drf_openapi [json-hyperschema]: http://json-schema.org/latest/json-schema-hypermedia.html diff --git a/docs/img/drf-yasg.png b/docs/img/drf-yasg.png new file mode 100644 index 0000000000000000000000000000000000000000..ed770a386825da2040d9958cc7f60cb3b8fd6c5e GIT binary patch literal 59949 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
l>MqR8Yn04&lC0m{Jf;51eYV=QNzWgoMN7_` z!WD}YdDl9l&c>qyomH*>J1e3f#cfJ92UBux0KHl4j~8gJzNjE zd+{3gosqv@|AA$7y+IHphK@9rEHvyo#PD zCyjH}I8(()H7PH+OeD~MpIbb8$jwjj{HHhje#DgT*h3^Y2G#p7R`Hj z`eJot0HVR?2lv_E6h++9IQsZ{x7j>9-0vA>;?>arWob3vQQzZ? z$I;bPALWUkNbd2&zaM8R2gKa3?xKHy zJy0ib<76sP6dKt$q8(^2YqxGCNTx@qE{N1q*jbSWXiF{ZU~3tWi8|HWYmnE!3}=#b zKCN~=$_HycRxu2YYD+WVKQXQKe*KJ#yMnQ7*=gojzW;~J#<}vTnN`Y4M-9cSyvbJx zG^jf=9%eL$?ixJ4AW;vt>oS(L@HiR}oASH1vdrjnmd|sHr}OZQ*uKFxJqx_!f= z2xFbhR;_rVzpuL0CHiMCU37F* zwCnw>ZvUOMfkHCK7XRc$ghY1%x=A~wAcj8_km2dtHCC(YR9m(G*}mFCp7%ae+ma=^ zX*<`g$yQG{etdmhq0*30-vu4*Q|L4FmdNoHL8X`eu9bjMR_K2x-SZOUxb?|tALOTF zlG%?nt$*w2-7?fPAnK#L{=LyVh`d*RV$w7E&g`t`)7;m6863~pWMSJ8VC0+c;s@Zu zf5~A3kNrE>fB7Q@2t7nu$n0c@tCi0_V90|bNBZPivZcRwlft0%$o=xw`kDQ1Tg4?yGZV_8(d<#@)fK|J+2`BPa;)O7(>hbZj<|NxCRg04~|qi z7x%+y$|{1Ii$Kl6kI?zmar1GK{^(h}LV7M)c&*j^k!# zv8uLl3E=h0z-3j9UCIOjOH;}6Wd8~TD)g&c@WkooDq3!~au|@lU!0Bx@?yj*g=8`H zHtK!*=pf(EvtQCUqnCOThGGXwGPP>7u$4rrXB>6j?_+YwTEt77BlXsfx%`BAbn3XT z@Gxw_T_3rX3^N)FT*kL`=$nq)qbY0>M_AzI^=VnZjj72$)nf8o4`}E)S^s}<_uf%W zr~kUBGZu6}7=lMKu=nmE|dbS6_ zqA(J1ZP)YTyZki+Hr3D(^J?NjJ=3+R@3adJ3>h& zds8!=mp9^V2H8ccUou(2mfe(tm)CGNG_VyKGhruG9)*o3Hu84BgC>Xpe2R)>L2ef9 zX@BJT$~}4Fw;e~1dkT%;^?VVl@Wp;#&QRq%Lw4hHy^SCi6@&Ht(Jbp zt_iR(qEU4L+&|-nL`Tke%SgYZ`9ql`7+v2)kH{cQu^f|Bk-!qN(#&MB&>|(ne-kww%>S@tsHm{C}nb^ zx%!KXZM5big$W{#$~s>>#io%HG3YSp5NH+DoiFC9*X364Ww64{suWN z{@4%MT^a`jTqX)nLWQsd45k*F?EJ46ZI5krN{8;0s_; z)JsK98t;ql^w5j}thCh!6#}pBSHIds`g!QbK-=n1O_?=K%flT*`0btKk$UJEwA&mm=n44|I5(UdISae_Oio)0bMT<|jKv;P@^1WdRwDOZR=@*c zyq|GXWNj*4<4@AyaLw84){zUpw|34)J8cZXVl3W=Wkld&8CIA6E^ku56a6E@(^aqi zd;w$iS0D{g;3=$f=m-Af>B?^xmOy&7OS~l9C33#)*yFl4qMP(SwZ=xB2tnoDLT31g5x>U4i)?!jC$ab zXT>FFvp#bwurDbh#fR_D_qJ}1J+*{fm3}TZsHY3fd)=6F)DM{JamR@h~$mNB%%qOOVzo)t&`Lt_m3C_d}qdrg- zZMY$_M66#?LnSUI9xe3cWSVVaR%V5Tjai{ruqY(kJQeG@b=8f7GIEd4E=wG`Ke5+YXZ`ji(YWYXiE52f>hYq>iLv(7OQYt$U32EaIi zrlZpIg#dxo?U+>-8kf-SgAVaH@T*MF4G*|~6+S^1tOun#B0KC(%O3wE{{)2ZJ)pMy zkLYoW(nAEM*EB|`gV4|<@)W}D^RG#kwoI1Mn~D-GoH;`}LNS9ooYUVXzTY=Yh5mwG zzMEg-i}f1%K4PRaU^qFCoV{AEU>4h9VMl&s>fL>bJR-AvFIKxq%EH3JdHQZF`B7{^ zSPQc~j|JU1ypDm-ziTH~Or^&1VihWUfx&hcNv^+d@LbuL3)uWbcAj5ouGy|#7J1Sq zbhM(ioE%XZlOOVPVc2-|XJ<|n{?lI*KA4}f`bo!Tkc-_jECpvu>%fM~{m3ux1AZ>0 z&M8}rWJmf}=7Lolf8yIM`<*Uf2I~`9wb|G)vXP%(;w*4==B(;I3_J>lSnuoJX9-=7>|Yvr**+@0nxEg{Y?UW#yKLT9hlxzVl&(Z>F0Gb~WX~)#M-~t3 z4?03pt1+m)#m=q#jd_C6kB*)`z^qzJh%EC4KJ$fIEhaM5V_44FDIo$6+a=}&=R7ek zzPFV!`tluNf)ks>F&%jiMygI3KXxdHl3jHHZitJ6tk+O0o7#EYk&UUSkxq91d@)Rd z(d)1Dy$jT`%r%AYted86P*(Uu`ux2}hU*1{EbfK?ivh@Ax9aXn5>{U-hh|l8N?DFo z25X?3O6CVb(Fi+tW|n%jG!7b}0LfZ@*+Xx7BxU%c_HL8x4K)O5z4U9lVm}kJ9*}~$ zuIsWiDgKsBJQlYO8~ zW))$*Q6~ly*9bh~Md}ERUyH=|jC%aEb!s)!dDEw@o!%AYtZyJ@$J6$wz)l(&Xa?J% zH~O>R+f4x>SPhZj|2thL@Nl>$M9ndu`-HMo{ObfbC-Lizn$PIf>!DMVawDDM2IQDV znQgWEvpxg;%KAubU#2q3$+vu>Z)Mp&;W7SRE#KYWtxY~mnPHVdU!7Q9Yr}s?Ikr`e#L6Nmrh83c?Z)X#fk9q1!I7xG^>bRj+Q{9iv+0s@&`{kOXaYJB z^Apc#BS`m8e8BpZK0;=EzF2%$UU5yyv6=89L@rrCHfGb^1*%3s1Z#`6{XZ5`_Rb_b zw;{>ctO47>iOk_}=+-fY^Kj5Y>Qf80PONXYRIGrr=c)g_NW8DavOmKK{o9rGGUGNH z8-iO)U>jNDKCWHqdt19YL*qJ=lRrBcgDe$Vo^_I-SuIFrWaxL;C-q4_q z@`2fwI}GSHmTL)40iUW)gC&6@SlPz3xeSB~#2By-rtK31SN*}|+$k3MJUqdT4H?+9 z?z@UPI{j%Y{+@#>5vd}43nh`a*y7&bm0I$Gm$+n#Z?@~nYf4U{9R|+fjA&6ww+%;G zv5Aadzgp$b>{Y9+Ke!)QYPEk!F$z4?KP~m04?)%>Ah|~L(uWt{1fhhDJ(0cW-Us3l zY9vI^8y)}3wN40z+2$%^Gk~+t4`XJyvVaIbRZQgd8p3|r(HMBBBrbaPjtp}s{Nu ztd4F^$lg~2?)Al91asMv0gHR4T^0HE>NescZ{;I^@{-w_c``*HeA-=^E{W-g++C?- zVr0JXVNseVNB&UNF~b_|YxP&er}ZrPtgi-+QLa(FVZ%q@<@&i3Ou~8~E-PK#t0<14 zL{C>to)Ez16s!z*V@xIb30xkc6`eV;U@5Ki=6fI?`S{zC|CS7^3EBO!Ok0EL4*we- zdj?||_kXK6aM^UMl0~`s!Me&b6p}dmv~q#9;8${~G;#G-hwDMVvX#h(vikPes#y}u zoum7gx`{TF24Nl5S(W|E2IfwheNwO&AB>}e=~}uX;sFC3^_Xx?t+XJ`F|Dx?m7zFj zl;a+;cxILAaBsk8=Q}=P9V77M#?p$-Ro67Eg#6G^B)SHLq;{b+5F4Y*E^=jA>Gq02 zy}1?3PS_0ohDGT$fIwc~B~sVkLRBoRqFbJNcS=HjA8kSsBcG6%U6vrx0i&ob^*og` z%*~B{kS)9_)1$CET!Q&xS&Pk7!bb#8mr@u0PC5T^J=N3J=M#@4xLlXpjqbSeXX2i? zo6p)=yZ^F7!B8=kHZGGslypji*QyWUfc{T)0cbPmwh7DB9O?&WY$a%<2N$yvTTDMp@-Z@FwTu5ea(xWgBS2uj@Wuzac& zD0j!*jqioF=TS;**3mx0)d5|Lisb3YoHmvU0EHg2mFz%mxlbhp*# zVDwzD<(!m81-}Ij2C7}ei{1sGaW1IPAkIi<-|~^@c$#_h#^ldImsnRcopLKMb@uzu zal-oNO&({Ze^}|qJ-sFr_m+4xzBcx*6JaY^dBy4IP|R?jWyPElTjKjydtQRU*e04; zq{VsYK`LxcwLNg1{Mk#=byA2Sn>WAcdbd%(W6z78 zoirP|r%(c|0U?rimn@b41v{p@AlRG3uIxSLI+-%g znR1yV`DVd`2G7tYSXi9Ez7zLv*YXs())wnC@C@z$P!zwTAsPr@cOL%_WpSz~U;$?0 z&VK=J5w7%q{j+*+tE$ur!v z50b3k(VE6i;qVRlbJ9F&^1sR!gYLX?BW`RFWf?9+*` z$dJv-Evtt_V@lOeo36Dgb-UiNln9V&fe6jq+r!GhA zJ1GZf9KCRiIe7TFyGL82cv>G19e-TRFWWEQN=QE$KxGcte5v2(dJS7(lJzueM@HG& z!IXFQ6a=krZ)UBmZ8P`mrb&6?x?J_2SOq5Eq2#6Z$Z*k%8_6uUQS82bi}cWWm&t9L z(hYhlqR&`=WN2Gv(z~S4t!ed*MH^9XQ?S+ktrMFQIiYLf(z|Fj;sRY6?HfwZmzXoJ z1k7_SPn#=(F6q^xG+Z9m@4I=`E`?5QGEu%{OmLa}ep8@5=Rf&}QC;X~CF`qf=5SH8 z76YXa)AaE_2~a}vNQTp1|35zH#4B3e+&ly$pH|TQsm-eUZGG6ed+{a`v#YJngB$U) zR^2F+Z@~{54}#-#PU%Qi+6-H|)=K)T9rV9p$1*_Ddx*9yR6AxgEUs;w(wFvBvy17I z#R@5hUcy&LM~^JHd9gGuIg#>-^;nl zcCL~C;PBf;t;>dUYk@sb_lk~IrbnG$I#3}_=PXp>3px>5Ug4Z7b94H|K#8)o*|-UT zE#AC16Fm^HK0%V(tWKoJW1&XaLf^-2QpEjuowqnEsfk3r&BU;Z*&bL#7=ld4gcW&V z@vZM^w*~%QY`sE%_a%PncvXQbgk$S}!QYACs!6@MUPZ~GEsPR(;FXcdBl;bbRNc*< zngNa)!+XnwNM%zv$D7Vh8>T^8zALb$*_%x4Guk?=C3+M&A?KgV@KAikr6V zN&!`+dc{+VdhPhIWEQ6!>MjWLK;mYWNyMITzr}T_theyuyS(y0Zvoa?8s_+$uY~^1)?Y z^Wp~+oS(4urC|`}^Q=cUS+qv=vkTm=@U?L!oW=Wq1ki z$GA{OYvujW!S$wH!?csf8MH1R{2?w{JK4-o#1tL~!oz1!{yBww*x-{1>|?2AyLGWJvc15&rc~B&0_`+T ze8o)hMe=L(hVCb%4Kow!@epHQ0>>bx+52_wLTgTXqkP0;N>A3)Pe#Zn%Afj0=fa1#Cel6m0w4cp`|$o_ zTHU(D_rEwPC}5@Bbml6CG8~O!)>0@)Lf*2j1wzJyiRm<;)k>v63Wii8cDBI7|mIG6+c=LOls+^)|{F`*+5W0Z3Td0*u{fp z2%Rgdd+UwIH(WQ8QT%MjA-~(n^xi5u+JT8k zv`4js$wK^%e3Mxk=|~1@2TBA7*g{n;+?2)JZjR`$Nv$@&$*dUOc4K<;Zst5{&R1tc zp~gP1uA@r_hB}MPoxsk}akbpsXOC>4?yiqrf%t`wAa&+q<2JBYplv!QDk7=N2$mpU zwSNA~7glR}ZsQs+Juka;QK9&*3cl9{q@Q<)zU zTbwvS%Jf}dA|3ERuu_{zpDl*{rWZOEtL3Tl;kej`#Ytl*HAfD~x3*V|VvjAPEuyJh zUH2Z$Zis}Ob`R7}5O&5hQ*f#Ht_}SJEfA9)G#yxhC+T9NP!>oSlX}sp7NkY&XXx4v zejkd9>ql~XUD=&FKq4V`PP@zY>#bjaPFV^9Vi{fO9lw+N$neE%dy#a!U&Qy-W$ z$~5zT+jo1`|I`caLD{tN)tSEn4IkIjZW&ojw~eu!12UMKLmkA=XgMY?6*fFbY33{b za|;b^J6*Wh;I|OhN-xszzB6S; z_3N$rFV?FM6z#(w3X^QpiHiz;wN8goT6AKb^oPg^%n(%FTE0G{u8!T!;^@V+$kp8X zyr!jd{<7?ADd&j&Dx%RD7CSfX9=wVlf&4LlGS#1|MrKiUAXX&V1zJ1Tc zHGCO3NsZ33AFbw6j9B~&FK6rTzw1FglJ}ooFy(RxXrr>Jvf3RxidiJw1CFIgYQLr7 zz(-6@$6AGJk9iWZDD0G+wUYa4T0B-}Un6nlR^tSQv%>N}9wd@00pRUx+!f?`wNYi_ zFS5o3T@EN*T=Z!z$mcLOr}U1lSKRg8CP1O=a>`SYYRkVay#D{um99_e{mpu^FXvr% zany5nL*E8Wm*22v9 z@5IVRWUd-Mmc4@q&AXHRH^0m+A;QN(t0Kp@3Bl?wkbhjyqO~)=SfVYt__#!q8ypC1 zOXY@bDa@q=bAkbVz4w-!B562n&NP6=7D9^A6w5x3$Uj5b3wRET1WBW`Amh7K+_msy0edNwr5x!8# z(&NUmAD#(IfXPk=EawYi+r3ufK;DE()h#X^%#|a*0lWpns9-+{xlvj~z16)=AnSBb z2)HRznHicWI@Nis9Xq_w4_lOmbi3iP-_ZNFviw@dg$RXQ$2VntW*eyeNY@nQJSie5 zgQ}&9EYRdE9%xXWqykFTro4j+Y`^Vx+69g_--T2)G&#!|7O!8c9hR!!hywqtFD-j@ z>sgKeRt|a6zm`Gk2lb>Joo;wg$!xep2c~$w9_j`v7MDy#_S<aS00|=D3XmzC8W7tKCBlACm z;u?Hn6wb19&Nv?qTYC)>dvG$_o#>=*7o;!?{ulA=JKc+;9pv(wCTjhU2oFkQ#fwbS zo$iHmD|1^doEaORYPR#5Tmh0}7HiD)G|iGs&m+bh!}sQ9;^yZim(4Cl=YQDxmdxST z5Ms8P8Sd47t(xoK$2ZqCFGMX}Pr(F4lGey0@5$p!{k`Bu(xOOjgC`Iu|DR)W-;dAm z%!;L!k(e7dRvV9L$L5O>B*YxC#~_h`?!1&duo-TzUGF1eBKwF)+y$US$nX3rODO{N zK&2{?H~WHqvsnrNC@~#Y4ot@ftK@^rk%p!1iY*I^<;_dlz1oAbV3Q~EK736PqZK+Y zC(W?P8qRH7)5*7;(29iHUmqkodz~-EL?Yo5MuO&mt7Gf^Mv@cV%rhSoof%96@`Tuj zJ&(*DFD&$plz1~*1DxtMKZ5bm2!wGxyLems_5EXO;YNOp1H>nkNGI(`-PJc$(HJi; zRA0}Dn7W^c#ly1181FCdZ(RnTGMK>R9itusrIl;cS1o!DmFis=gvBbTN>P#g|BC^j>dczYr0)eFsz$_`$o*Ym|5mJ zuSWOxo}G~apu6us@CgN}q`)ATgwO?)c6`#4bi(QtUEZn`x$YQLJYB~~O*R#r4qKD( z2+S&v<;5`2->3bwF+fdOf9ZzNVvt&##`2laiO`56o}4!PBI85b_# z6jbITUQ3(i$ey9kO9f#C;>?i3R ztp9Op!R5KT(W)js+b(_fII;r9-0hc3Z#|yCHx149 zxMPc?c7AO4ti|g)v3dxm{9E2+jv-jl9Sf-!=XkIURHV2H_%o*NP00f~A7O^K)Gkm03>Iyk15@iMvd{p|w;+ow@Gm9&u>U25*EDvXZL=7&jx_9^Ql z|M=x$e71~JYTY#iK5%>~{IU0-EtIZ2v7g~pjJ(~hXyRx&-A1|cfE)(e%&afr@2c1p zg+N+r0PL4EuEBN1+5V=oUwBAKLGU!CXV454!Nie5GZb}tCTRPe+BlWB0x(`z-YkR; zl&bGBZu2l4>>VsE=dYXx(2`fC3u8R&1O049Ss8pl8qiJ7i9`qibsjs~ZBMl^`_(LW zKUF;3_w%CGAMW<`wt3cm)UF4G>&?Sf6AZuEywX|q*ByKJF&BD`$Asmhn+!n$XCFN1 znZ$$qmkb29Oddt@@vbjB=^7L)$pNA!J}|6(QQ%Akt28aSSR+H5&Ghv!ifNj`m+c9( z=ptzWD@}bYx{c8Aoj&||@;j})ZLcQ#!Fj!xb?-ZrZEN0h^JSZ zgkhvD{`vOXYSqt8Tq)R3i)q_`$md6{$zQe^SXb*>-Ur->zrK%$>3c+Sg(xM97q*l#p{Wu>Bv0HQ)k{;3ktEOt)XzTf?O4z)K$TVN4>i}2mI3aT zC(>ReWG&pC8&wp`5gfc*0RO&JdMmrz8}y76J{2qOEe`~wXgC8~fqx0*59H_-_)?KE z+IW6zi8{kiHJ-IP@t}b$o%PU-p_sxk*X}t z_&G-9rL25qOfA<_!;V}n>>>FuEHx8aqlbOHT{5MR2?m;~EMl^h&I)s)4~&rpaJ{DCWC&w8LJxeql7zq-0KS;op6HG;k-- zv=iY~s#TwfDXAa9>^Ml-%c@)k-X%j(2!MiQBv#B7kp>J9e(w{&g%)>7O5 zIu+8hG$5SV!hik{QBOvwd-Kz{&zl2t;7Z@0? zql_2|8tEb_Ubk+HEQFze5Qkf8H%+uNN3vEc+bhZLq)Qrq^_pV+c6SG2_B)AHj!0>Z zz7%$W-9g!kJVX0YlaH$}KdL`p9lU(>$A3=?KmN`vGw?QXnfxOzsa$Vb1Bv@>?LvY& zNTjJJL{_WX+tuSAGk*N=d~wAFc3?mv`^kz;R@v~Iy06nYXHZc;+9n)zm|+S7lw%@Q zN3ian{cEHGzN`h^m>5yh(z+Jvfz^Fz9g`*l6<@x_@@8fQs8zJf3dxMb_L|HLKp_+t z1w)^ugQ#)$^2PecDSvYjz561c8?HkFW_|@J+~2&+-kM6X2BSB2N@luSnyx5-y=RV2 zmi_`6h7qqGdb8N@s6}U}9&==7h*&D|L=NO;DF*sb!*Zlg1jsith2+rgwil40w_1bs zoF`*7drT$o&Guk&p*y8!1y{m>SJ1sEGMrl+YNSJaGk#$3j!n!GvX;*@o~>DInk(Tq znojJQ8~QHdB4mx3FSR7ZHnQxED2y~2bw>w@s@neV%MYi z_QO&BEhC9W$k?7uB3(Z3!0%-!;(XFf#!c2Dc-`qnL+9ar za;$`GRl_9Zx22G4;cFFN+j+8=4FI+M_X?hFjCmkwXT{&FKQoAg>P=c83W!Eo>xxWL z1AmO4DRnPD(SW?6fZR=S#2O(qwf1WpUK^}l`;cwbbl0_i$*cTJa%w=8y((tHbrq#0 zbmmq;D7qJ1i z;o)DuK5{013do$CEY)cm`3;gu2BX>C`gw%E$l5JO@JX;w-1BDrKysk1g5#y#ruxti z)Q)WQFjC@e<%MX0%Z*4OCzFRlW%4N7YxZYFqES`zjmOAklnmf5rBd|hYipd zI0#qkB1*3wP7lg#WMxU%LGKF)CwRcKy8kL-Vgfdfn^;YhDs5z8C2xkcao9)+LDu~o z7)-XgPyjjNt;# z;1!87jxJ4*M?Z!<>8zQEmS#Sm5Hf5q}qBV z8~FpxN7V!ijZ=WY(teQ3m5O%Kn_D~Z);L+KPFc@_H*&4-qfoJ6%|*C z%M2j7bP8TVcdw*7YocK&wv0(Icn&pO3hG;IXjNOc*Z3KhQ27#Bj;t}?$ihF&REWtn z_V`JtwX{xJK|^;LEOuq1KHu5|8!dW;|5rcfRwy>~c!UpwSO3IXW&FjA{c~uWqB)-Wbd%8aoEst$3_? zx6)Q-m$<6lalffEdZWZSzg%2M-kc+JryBBBNKY3^n^h45L=s5%&&G}_Z;b0d3AIDl z1lMy@^H8mw=*(UskoSb4UAzOc=>8H?hSyF}lYBox46nXDjbSP{)8ieCJ&xiI&q9*K z1+a)OuQ9IRm`E00G}~FbjIJ9)*OSmw{40I6FZedkgHT@<#6H5Fs98ebX|mgavHRy5 zc0BGM?2qZ{3Ol~}@{ZTNafFdh&{;*3QEgDGAK2kVJG#yc`UJ$Y7(8jlKd*TRA1f7GOWDVf?rZ1emyA51AMBQ# z|9mia;BNWE6Pb|M4k@F(S%{3RVInphbQ~-wD0E91mFitET)Cn9b=6>GGTxw!f{=H! zZ3F(^-AvRd81--Vtp;pHrGw)s3D^_1Bnu<(5@pNeY;`nSJD>$II>l-4rvt!daadU;Mm8 zI_$WqjnS1>%KvhM!u^i_Y*1Jg_9wXZJ(M@DD^!k%b2ZvPhaNZDkO5X_%nI2-bw zx4A~0smgUa=!e=2noZ_@Tv&H*`*gLhoD+b_5Ccam^;_>~|Jdc~e~;{7T3DyPk9ZLY zb3B-^p@iduJ{9Nb?Dc+9T#oVbJr;BR{T8t5Genb-hA?4S^OP$j^8nJlOxA|P&xb|3 z7H_J}M2wb}gfX{9C8d%XEp58OeiCdEu{KA;8FfHHtotuxa3X=3SdK0Vf6pCPY5GvR ze(iYu{#yJ0rv`)zCy`byaLO5j8pHaXWU1MRwkC8 zlAgfb>h@$MRHmE3Bvj=i6(Hfx?tN<9UsvXqnc@D??zjCUm;HxfA?|I1R&s@@_!Kl~ zp?OBc52E1aMtgbC6DEH`^%iZ3#k$4Zj(Pr5*b}(cj!%gXe8=NdJzw=2+^XsGTSL>F z*AgnL==JYT;4Ve}+-x^?yWad_dP~x}GsVJmvFnv7zUHSo!I!IjS9f&E8qc>;JGxeW zIfs|YF=pqOfylq?AF&hir$e{e+8HCA7IyJTIB=jj{MR~p-bG4)?*80fe@R9zOmdl} zpfbEu00rlQ4-@NG{`hOvJvNy@*Msm6&?8?%Uhs2DZbxwY3BZCYza`hL_|9`zQk7-! zt^sxt7`yPui2wVhgJI3#6$p*&tdDW@qy+Fk#78t4kGrR|qDms20_Ctqn_sg=%dRn9 z`*}edznq)p3LjpSGVnzSl&^`O>XJ4llR(Ev4CDU`tp@*%h#6O+RQ-2H!9<1{kc|;` zn?Fs{DR;icw^j%J0Z%>K=r(|r`7}h>n?67rq=3^CGHgTwye-jytZBa&UjE}#LvS9$ z3*T4d0SPt)O`GBKKVZJsUoN(0w zeZY4(=l@~l^YOnznklO_MIeQ)8?;2#mdnm9Mz+p^gHBpHlb%_(ybI}k-O{vX{UK6H z0`L2mtp3hqa_fZeML54~{uT?}X~m@Uye91KYewiQ0T zYZf=qlI80#T1un>1z)8=k(JQEAGvN_dlEC@CXx0cDaEF_YITyl`tIEm?}AVpKUI^u z#>G^<(a9CrgDm>8gLnjAy@%&6Xz#qBsN0K=EIO{M4Mb@;ReFPF5q77Ks7P#`4j6b1 zuXq99TcJ+?^OaRRoziymAf;CqH%9?JGE%htLk$Zb&}y=SGTr3z!=Rpj%ehG#iwtnX zwt<}e(VfC~)myFjSW^q~m6TH=KLOYMhe8DSb{3LUpR-_m9<-O>}~4 zOK=YUW*zlC1>hSj5e2*L$u(ikoj_Oi-jno?9I8#aUxuznT=qq~x>b*=k))-XQfU7^ z6`KZG{ev5hyStZPi?e&5w4Q3@ZzIdvxr-NY)XRd`FwC0h``NKs9kj+N;i1yWZ$uV; zat#$OEP@4Yx=c=Oy9h6z`!~`@&~Juv+J%gRyxzQ)XQ4Fa$gh0CU3t6?ODgwvV)ki! zhnKR|9y!{aE4hUzfK5w?;7}z;#=i?XZ7uD99#@O$%`?5WGa*Nj-JK((V~q2FvS{NH zZlR>~k~e6#+CNgESFEj!0upWG#I)|GyPM{Mto2eXNkXgJhn-E~YysM%#|?B?RuYE) zW%fwT((yLgGx1llXYZuOzPmMKxcup_8(|UQT7c3F$?v}`UMOt2Sk1VL3bi+0j+rv< zuj$|0eDY4YUKhO1R8s2|+ zT2{W54AitZFLiguOx+w<4EFji2=I8FjTOv$m*pyOdQzF=>VjM`HcsU!^s^o>#STv* z4Sv-5U+1JeWyA%dW(vPVHCUT8tu3n?xz)1{l}V(Cxn;?3qw;Ps|8j|3Z&iPA#}?Vz zZyH17Y3U}9EH$!nCIkm|bbbmEYwOJgMYU+r)sPVa7%{~r7ShfEYA)&;66yJ!de!Kw z_@o?@sGANFf97z^a}co1PGqpy3nljxxpx4(n=h+hjsElt0)Qp0 zUk>ES;B$V+;D^`>ijj3f^~yU7A`ZwpJg!7{C$1tXJMl-GA@yNg_UvW7_ml6@nYKX) zqL9}aB$4^cvsR}6@Hy}$H}YmH6opZt4ku+({s(nePvsvaU9KBFR5w&F-?O`I&x={v z0bCrH%gT|znO;rl>Qs@hYYqyAPS31k3Z7IaMdAP17I*+#$COzZwqq?5o)P!8{ zA0Ew8*Viu_Fw>98?ak*o!L-6}T9aNGrj_ZvDz77q5N*FJ&%j_J-6sE|2cBr^rj0Zx zmv|-)M3qu>22FDVB_60=KG`zaCwVul;q_t9bq!;7C2_b+%g4*Kd39}IW13MA+uN@N z{wgeib3Z!}!>qDx3@P#B8vufh2xn_ciSDTKVq#KW;$>Ue+l(+E2aJq+IRNbd&6^Vc z79MY6BW?>I^kCW0@D0^S^OH|rp{*~LD?YjHpasjl;TF<6kebPjEw%5e@zgnc4FPx8 zQ8e4P?Yr-u{R+5USB_+F8~OFIN6Jp}uRonWceEqP>EZq4U;6hdpC{hPoJBcR``;$) zP*FWpqPkEuo&Rh;!f7h#2V^GW4jxQ7Z97dn8okG6?KM?GULyO&-TsGT z8kTa1CQuL(fV#KVp_tyEfdZUYiO^|u0xhyn_hfCs;W*IzMxpZ0uWw)IU*6~90fc@d zp6~cObDjmL_Qm_zTKBVOlMX5g|EwHH8h&%3k_c_blwFy88M2#;gFL&|uQqEUvGR;rli_{mUZ0Opey!3G-OpsP=euj`6f(z4l5K$%FTW)65;LkgP19YM zbi=37p?;uEKdww$h8BH3@be4t^_!VfYV`wz5q^6Y$tCO zlR8t4_BhssXr&(tUs-7x3Zq-){_Z|yzs!msNu5e9Sy@|9)5)B_Jr-R!6ax1#(&^rX zDuDkr(MGNB1f3hURhMh(sxV5B@adrWgDS-q zIv8omCsQ3enkHYAwT)apu%_Z4{Zyw|rp>A;oBF$M*a?&ObJ`Z-Bh79Is%2`t+>oB1iJyf1{^qDD8|cu;t2xX223n}$NXrVvyq zYWyJUT6-JptVvbCiTb*YH?w1n!I;_B&PDk0(bit2#a4QlT8HsGw}hyEQ@X!}MQlN>^_6Rr4%$vAiJbG{Uaf_hA^x}5{p!?6zgY+iRn%{73hbMwu=U(?V2AQ(jSM>;(bJkgWhSQK9`0!LZ>3}gY) zel+&}(U_s2Wxa*>XoEQ&)kbUnQdyNn3#bWE@Nuk4GrWay)-u{#x0h;<*0Ar>hb6mz zuu0-8eIQu?Rq=YX*CEKst&{z-#xhM0;y)8qeeb=Px|GuK*VN^;cDK8d)aMB!aHBK~ zf52|UJVg1*a*c(Cv**o2kh#U;aQ6t-eYMwZcnzpu9c1!Z}t(De}2Ecz601saR@!}l-%QlbNetq-)Fui|Q zJo`bg9osoDcdcz+!+8!IcO8LZ&zyq`0#CN96yD=cxmb=>$T_dCT&P=L`dwEa>9FfT zar7h8_|#krl(Xl$S0Ju&g%su$Bt6-hPeRw<;@u=7u$r|N>sg(@OM4qs>e(&*zO4Vj zrpUr9_7QvlSF2;iL2i8d%94StcL5C~Aj)9NMB15^1J{gcTMDKuE5!8bY$nd%D~6pf zmSgu#ef_G^+S&DW*~=QUcwINNMD6GgLzmPNN`v2)gxmE>w-R)U7>TmgeDe^gxg}kY zqN<8m>MB+bE?aJ7A@-h?B4r#YS$9 z;gi>O9U!U%XPcLZn5>^@Ntqgco7TFQXY5RR*Sff))=yBMYA3v2%U2a$fU1d6;gD-$ zIIG=Re2H$Ku#k-ic#L06F>)=_=cxOHTsnWzC4_ZnE8AJQC?4NPAt*9#G?s@VFxPED zaED)E3f|Nq%&amZZRZ{t$WO!vPuV2H|C}iMJ$9>`^x^nmGb5V^4_la1Rq;+B;l=GASmEFiWuR5 z`S*Ob3nSVi-P}A57%KjT>imk~v+t&? zeqC5Y^wVw%^^L3@Awp0e|Htz8u6uTs(NCji>ZrfF?NOr@)_xMtATtu<<9gP`h-bHb zn%43|Y6MN%*LqK>&PO7>Lb5PhF3ML{`rZVJg@68IO-RJn-2K^l+q{ROHw*VURr7!Q~KNk$w z>y@mP23*%wv7}oac9A{>*3bQWjF!&1)zaYu`g3U!A%|jk$@^Ikc6{%_U0b%5sNGw~ zPh@7V8WPAF8e;VZUQUx+ z?gK&W94zdre3meXT@s1?Iy)PbK7Rb_bLr)~QTJfC$?H3ncef`WA(Re$*@M}#rO!;n zqX0X5Cq!hqfKRpzfKL1WoEzaM9zf;9>vxI5e-Bx~C(k~MTWDFYBlS!!v=t0 zoF!RcwU-^z(G%c;IjL0p@bAFyqUc4=s}x3)s6nA2Wdcrgw=+>=zchV#rYJ%q12M2G z^F?A;&A}?_rOWI?J4{7SM zV3ASr8Y7o8DoCL!_Hk?#he=iTg;;*ih6K$WN8R6MFw(ge@0_DMG_iUvCG*2m8kH7J zU3&0!v7(?~qKiyXe z=pR8XxI2=s`{K3WkXjcr%LL$mRSDy++zMz zNf6IV+C(+eK{EEkm)l{AH8o+i)^&R&gQc6^pNF3dsZ6!qc}$xbNNg(8$PDlpN5k1~ zBoeNmkJN^ujUu*TPC^_a3=M_`T=MQeZz0;L#*pR~%zT~*LTYc-L}W3Y4L8twG4J!p z)8ijjy>*(R&-1z5r@qIeia6dnG0Aw64xH$gq*F(Y@`Q#L$5y<^4+srY@Tu!^SZ+00 zhFT8m0P3}s=)^cZaQ655MJj%Of6i3D()+lUr{vy>$|inU9{J_=st2fr9>SjvD zv*`kM+B+9tXporj>AcUM9_w(l8e&bnpA)g947;l)x`^Ew#~yet7!E`$07;Gi}#-Me&gU z)pOEs=8pogX+$|%uHSX8n?gRnz?IVp$M@#VUqswqUNv)=^^4HTuu0vOc`MlqO|YOe zdBNj@yxA2cC+-1-90$;g@{LUqn6A}PFIn50y=K@-#cPZ^VF2~f`as7A; z=Mc|d+RbFj4i|sk$)>n3&gRK9b@8Xpok1&SAZ*(;Gtn)wB#oaf}6^X#+t@3;3p``mrX zY95^e$n`=`I_{)F-6&+4b!Xr*x1K(w%9^JzQ(~G(pPLkotPix1NG54SnW=v3D<5Y91A2Vh3hYeW+%n;n0Nffh8iioc!pL#-HN{GxjCt z@Ewg}jq5K8a6w@!8&|vobJ>S}i;oSQToiuGjLkHZ2oHIs>7Uk4@ z#ogS^xYJcHC5*S|b9Dj@A2HM31s@z!#JO*2mC6&jCAgrF;9tPM*6bGr3ro*)GD=C< z0Y<8*9{xBRYR_{tV`V1sCa_V@tw@@-#jkZGU%v#Y*b*%Kx61Ao@M4R+8JacBPYTII3i=%TIk7 z)PK^H0QeO*i8pj&1gYo+>pD0e2D2(IagW?ab<%mP<|(?dk$djj2}pFZtYMLp9lv>H zS5#Q)dq zNaRK6yyBwI)0^gVu%JfFkT_6~zNUCsZxpZhil;ueldca0<%!TZQhzb94e^AP0b;_x zf`rh&L{?&H=Qi`L_-qciz#9W2MwXZOS$Qx#nzFdHW} zt4CUEx;`!Ri)8q+o*Cg$X4cp!lLePcek{71uiFcNZ##ISP-5 z@lIb;;eO~_o=b}-$l@1@)Tfp=6n3acTbpyg)V>TPp-kF}H~5kVPq{LO-}(E`KB=#~ z!7nE+cnFMxLA~+$L4@Bp{J*!pyjKZyAE7x_h%EOVucC)4BR%c+;$Z+Q+qz z%(D;sWu3kgovOgvTg#<#Y!xX(G4tZjxVqVbyXMU=&Meg|7!ER1`aeX3%y+<sr7#!`8p@JPGL4v(t_;L45gJvU{Jo9-qkN?zr# zBW#Ut$fdlsb@So`GNm#@60r@itNkG!&ze5}AmQ?dm{1HREOaXDoQ$T`%Idg`>+Hwu zdZ>kdRAqXgHBdV)9C<{DW2oW#<=SN*CC;sUYC<4Hf9!`EMWfy-Qi47tJMuZxjP% zAiB%r8(%LF-~R~?0p9xFOoxyf*Xv>Rgl@g33tzZLh3^eA&S@KohyXhJrmGkjtMv`n z%gzSbf?CxN2oz)a2f2Gk#y=eno2{E;x<@jO7!HOT7doFP95`T0yu&FdT{?LUgnK*n z#XHfgcqKP({E^nzK1-6fitp>VVCRU&Rn4~hFL0Qcp2N<$`W@AExEy6IXg1_+#l+t@%%hANpQgg4P6u7%A_Krj8ZOEsQU_ zaZVb3y0lhJt6@*ykjJ&{*}aKPeLs;pg6gnoiw%XXy4uI)?=6kYbEY@33;cs-mZ!t6 zC*U$p^rLc{`f&9rD)t(1W>u6(1rJQ4-LrO|RNV_O1(C^OTA0}#7TunimsfNwv zl&7A!pVj3MG7bQCPmpqDPA%%u{B^ixdQrOB>c6=$xQB4R8*Y6t8tU(%cR)Smk>?LV z+p`Dv3Tw|9wFUx5YHW9GOJVC_COe8J(`7gsWUNt)V3b_nk?=aaQ^gL9u5jPhdj?3S za7>n3730MXf^JhC0)?dp1GV#5%)Zy6KA;_={5hFWo*a2mA(`wO)4tvoXW5}u*l1a2 zTbG&O7q{MFg1B(nNL?3m)F|}JvNt!~dS8si6$vvX_sPSC0cG69CrPFIht}aP?N_;r z>C@d4jCRuXV`Y&+a64$JPmzLm9+<4Z9?BO!Fkfz z(x^4~%ap(Fv4Jwy_%%TjrgA_v;@YlkyD4V`BMMxld1@@Q&?GxR2Djtx$6a%WTCz{l@d!lWUlW%nFe4fZlpBg(n(nPnq2p9b*-)26GA zZ7{85@$E?+=!V)q3ux2YAJ@1D57N$7EuYmN^{DPa8iNP6v*al?)n6!ns^yTj2Lp}2 zJMseeG2D*|NI1p%yoZbzin+0_5)!`P*x_H$Tw)r@a+6lMiwr#}y|28ezVpi)NtQ7+ zpXZrXM4hh*W`(~pZJaX#CeBk#rIcwUVMwc3OGLDnU zeGySDIB@j94$n;%kPEZc;fysY7d1)LQ^M?q*V5o98pTry;Uc}SQO34g0VO%F zu}R;Osj}fN@sRF5cu07Ax64}}!-4G*G8iPgKQ5`5#5lTK`JDWKAavvCle=U~$~U`9 zb)*;3F?r}}0X)U0oRrv6tE?SFSYd@2xOt6Hv)C&k48WQ`i8BUnzB&x_OR^62y+S7pPr9-Fd;f*iqnkW0@DU0m9JXdXqLpOin_yesMoE+?> zNOflTWSRe?D(fPsv48Q>YoE}Xo!l+k^&QAn2GJ9Hb~^J`Zm}sVt=D6k19X7BmQtPZ zwcU_17JM=NVtRTbB_BVHdN2S{_G=?Z5+^2G7?)P?pC@`}DfhWU9`8ZwMX{K`fUW+W z!}C7@D}R?h0R8+uisk=wM>kFUL(C$_Xdu27Nk178CHW#yikM2m8<$QG;;1sX>(K)T zSRg1BrmdWfyz12_Vq(D{f#cCWF>Q8pkY|9G#iKN8d<)(4iNq?Xh5M3n;{B4iF*QhB zw2pJ~KicB-F%WAR*!9J3e_tOgGC8)?eh5gJ7fAE@hI((S+>8%@bVz#WVnE3FuZfAb z7MdrB6(h?Po*3a__bb?i3DQ$E1ClwF_#B&Q6u+e z>41mb5cV}ymcT&#@PsnGYb-L$jS!Y7SZUG8IG9DFgCJs7b0(+J17DpnWHekGVV6K3 zai5!?XwkoN*V#Yxr%81P%2rzUHYLW5r~?=aF7*4xG0FNWq;OJ-snD;P@{CVD{pPiw3d6EvdU~id8~sD;-Bd#QO`mP(+7%o!1eauEnB+hKiu`M*2qvV=yzzpZj-+H*}(YQ zm-^eGifGlJ9!YLaX)b9z_%Py?S;B)Wa~dAM%^s6p7P&`WiMexXYpwPdE}dy_=k#zru8BmZ<|Csljayy!y#^D)18;& zzx0VSH#l$I65ObO0HkcJ0@)=FPFgTGC1F6uM+52To})p z<%f+UIXZ88a%FNd7kGYg>CT37$y->%b6u|m!C;|~;zXR8Zn{R*Ji@rpucjM;s;G** zW~`A@^DwsSlxI2-tIKwx{G{dQto5KI#v&)yf8ku>A45J*$gxRIQ5y`F# zQ>76VF9rQc{t<*9!jx3D%s?x1{KbI}4sBMoP2>3Pf9&gmJL&*ce|^ zWMx@Ux%;JEmekNKFuL~sbDP3(;*<}v=e|o_QsXyuOQmD( zyz>h%!_dNJj`ddiA3%QQ)m@AHIdWHa1>56oX|TBl={|19;-&k6`Oc&_XwIj@hT!-L zPA5(?MpnKGj_6-|>SK;}*3pkxc4qsJD%mF#i0+a5`3oRw^<>)q&)M*NkGc;nhYbf4 z{)nBfI#I>dfb63lV`gxd=I72u@*9&VdCOBsS<+CA;Jj_sfb#}V8;`^J*-sRy6Q9aT z?b~(?^+)XU{s{|mKy1bNqhJ%E1Scy;mZiVxApq*FcX2IrH!nd3cuX>QEX3mH!K z>lQyY6ut++xt00MNbXdue-Ns2^Jc_)wG=tMGx_6nA6B|Yl%wYZ7e7sEbS9k-~#X4qJbo)F)_H zwDJO~>B|K}UG$D@ggg$yOwerWJ6R7K;CP*r$Q{16TKJwYIv(}2DQb5>p=J7_&t3kA z&I(<<>G++d8Ryo~ni=lId(tIM2ExIVDG6zy(*;yZ*m_9)vPm_pu}>O-W}Eb#?r1a6 zUmRV<-YfZzZ@SJbA4TYX45%qPqGSmjQj!e2)O4D6zjUpI5ctZ=^>+xBNx3ZP;G6U zx)C0ZRvik0LN`6cR)5xvc&~JeyXyf*8Q=8Sc4u#m zJU9Fqqs5o|ORcXwolM?)PYYHw5V$Yi67HadN zZv|@G$@GJM4M+D=ee;&l~_;1rm(nZ&TP5&mg z0bKm*EkA?2cbU~|!N$cFt=9+NnyT}XeJMv_FNpn0RPFp0nTeRee>0~8wE5m23m$#v z*zGk_(rSz80ND_FWyQ(MV+Ea4LAnX_DId@@PJD+{jkWvVz{@6A&)Ewi=#F*~&u?de zXn4hX;y}uLjV#T70vMNFWxiy`4Qk{0bsy9VKpf=YfS7iZsQUcDJ_F=pcp3mDYpCL3 zavr3Ew$D}q@R66(d8r>dq(&QD{D=(it&W!17W z?I6YF?x;_3NlafsBxjoEIC&bgRtr(}uzjOhB+rdeO;3+R7^!T^z7o53B;soC~BYM9%qCjTu#O;xH5D@IyrrjZr}fGlLaZZ zVI*p)eGAT}X)sHj?utjkb2-ka#G=>v7M@Q{g;}&G^2xC~8_WzNgNo2jBF~nXcj_j8 zSIVvUlw29QgWqyGVpbFLQ0A0piHGabhrTiYXVR$j^19Y6a>AH8?N`t3+0|R}E{A3n z#QMAGsd}oLntWUrZ_^=<(`>DUHdua0Xqv!T4(Hc(y(Z&Ei}r=wJ#Oz^wd|HbR~6RV zRQQqAo2n*^RC`8A>Fybkz|CGmf$j@g7&az^xO;Ijkh1RA<-$klrWxZ{ zR)n3y!=K{Q4eG{~Kn}Qf5W{sj3Vax(Sky~`nFeJ(wOJ^&yJz+=xBZVoyGSE%C!~5d z9BHi4PKqHmOgD8bHTxH@y<5YOYCk-3!7iElF0=hpq3LhA|LlzQzwv@6d1_39)OG2R zyp8-`oaXwzQP#Z4kAZFHH6|j8a?BOLS4Y(_kJ7y6S*QIWf;sEF;#Ihf*@dU9QJUc>2+1r?>Q zP_GS}TzG?~2aMMTjec^(BaFDZ4!Q7$lme8s*YohCc%iT_@w2f$N_XS~>(6KNc_N}R!C}*P-A#T^e ztN+c@HlWSllkxEXJNlnkY~5={%HUQ{e*_sg?tT^}q)2F=_*VL^6!tZJP0czlg2WOT z&~If{*Cr90qM0wMp(>%RBlez#s7koRqpe~O9dvF}R;uS`8HV(jLurJj_2j{?^l{m<~BRUKxdf18j-_X=T!2-@6j`m+1KeH+#683vS zYI<326S5Xfw++TdQ{bYStKf?_JlEOJG}j4A3=1^p%@OB1Oc?(f=HW7W176+)F&$MP z6IOouf;9hgs&!qFLwQ{l1FwXix5dPQV>ue(tNq+;#?9xE>R?4t50-0sIc|(o!L?Oa zM%*SXVNv&^D!#0+&{i%it?DhmGhy#q4QbxcE$V;jal*p?*oG6f;|+GlK!@> z!5zKBr(_jC*Tj*~pN`D0IaanuB<&KZdETK{TC+ZFR6OG?ts>{QL-bHP{G6HJ=GVJd zzp%vMy00tUD=#`=Aj*7PRreA%qYjBo3$O;UJ@uWR5Cy9Ynfpyh| zp?Lx0wuF_fqL$i+T0(5!RG&!B17jK8kYF&Emty`?x$n?VFcjMrd{>Arf!&}bYI<|s zuliNJ47a8PGp&%C6C3`NmA4p8x_i`!QXOVNjbaUnzGzIAfu9Ej#TBt436~%5w`(%1 zdgt9p2~JwfniJB0g2ilAz|P0j2nAeP1EyM0KyD4Bv4qTRq8GH^3C6}ab7XkMebJ}d z9S}Epq@k0Y^JBnXAC33I8HQH8aID+PFnqClE;WS$F+eY`7rp25BcGklh)p%niq-N7 zu2UEK@1i5i78@w(Uv7rBg3n=>Go+x34bJZc;y~I8M0O;?}b&t>v5Y zI~uhdlBhZx^Lw89uI@1H3PF5=&`;DLp+>9w2gZXtcd%ou*hYf+Rzi^I;!3bC%;ri; zd)B3itXGT;InTgF<1P39wJ9$qVN;p5V``dljas%z=m+qv7A4e51p)u{1QEs?LR_XB zWeg>RS&!5x;1QyUl#<ClJEsVXMzISDynt=~B%VHuPb-SHv>|7S-Ihg65eT+t#T;cyj{u!R}} z+kyp^Q)gEoC{}_N^P9Um7}1%JacR?vM7XiwrQcPJZPG-8=z{?7r$I`n1~Xbe2}E1wZp< zBgmmbecqlI>F~8eQai?jj^a}iXtcM*^cQI1qW7i5CpA&jz07@4EK(f<&&Jd-g3J~V z4UX7^jdk;u87PA&mC$Q!RQJ6Nztu}Oy=x-L4qW)nMS$J^cIds}Ny|;8UM;=d+8*!T zR1Qr_4O{61u^o59ZtR@srP(3p-ibtz6@#_>AcZa=VepC8g*NC=Qm%_iU&*fmD|22| z3pBJs`9)Q`>Z1*UvOlys6l79x|ZI{F) znffmW%s|Fy(xl$>AECU-8s;$c46dsSU4L?h{^# z%4U8{d;(ITq@vRL3w{^lJekR0F;_+1WwYC43M#^s*Y$doW=-K-6?k!r2pdR3U5AV7 zo;Vp4kLkRs60iu|3t=lY4mFmvQ6Y*yp9QAePeq+`_sW5!I_hkE5um+wqvaOK>Hz68 z*`bL`g0rALCQP*fSrDuhX8~fr5~X>x%-{Jo+RB!e-Ba=f?+rA08;&=2q8_Q(_@*O1 z4!^YjW8#J4hFr6wgDPjEQg#kV>nARm^>O%=;@*P#PLQ%)kfnLQFl>KF@P$w`(vM-_+v88D)#68IupkHp^DN zNy5IS_?eZRzk@Z&h=Hy!k!U3=-dlQO0*#7aP@}Ob=`BseRBqoL3KOA8uw0t(T$8-W zokt!fpv~&@_$$P~nlWJRaPQJ@$2*OohbAG#_0ui(*p~vAlTB^);Z0B_3%^llRD=0W za*meY3gRdjn2S(B;1t0Qoy`HOoWDQyUdiqF?hxS48ylUB)d{%qDk&(v##uEV*^YRT zOAm2#E1NkuXm%+)2u^@cQU3U{wIsMiU1(G#mB!7eQLXgja1}SS4iKmV@+N7}%IFif zv1IguCyj+yy4XVq*j1fV#Q&K$Tyu){iA4Fy07uXi2K4e!p?pY5jDc^>R_BQPs@WWM zTAdok!$CL+lZ$A|sE1Y#p;eltPF-=if4SOPp`oLlx>t!61mCc?%6R z%!D8^qBr?pOfCa|KidgvU!}SrQ3D(=oz=N}n$eEq1} zlOg2l^!#nzC(Yd0s3%)-=AjuVtBdo89z65~(G`i>o2$F!Ha67v-&R_r&u&2@CgK<% z-4u8YUjL0vKHb3z1^tVX^C@^?Z;b&_RNfvK4SVm4Zj&-!>N~HOQ#yW|6hRN^m|DID z1z?Y2YUN+p!b5~D60xwzxkGQm7d=8go-+WxC_ob(FOjRl_2`jqlhFC6k-Yh)e=!id z196QMwYcO>ejV{J6qFJ^p(4%#{sT7M#bP2CPP`4K+k~-(LWwYE)ZRh@*JI%;qD`GB zL5CdRCA3;!0q6(c%RQ$u=bQN!y3%C{yMic=SYZe?BRSm`wATpU&*APOfxX#WwwwTq z7jn9ViZ1Ya144Z?*5NB!3zK}IwO;lLQje_SmcS1iw^ zJdQ$m?LVut|E|FvL0Ul=(d|(3`D>%0()C(SNh6ps5h{_G#lP%pK*^gpPluP$&-5ei zX`OMDPHIv36X4P6@cCAoQDDwSHmm}xZ`!6B?tHcXo~UaLRQ|y&elA-QbVc218+`@a z8?asVjh(LZyT39HweH2;XRm)<(Au2uq5MC;$NFApq|flvL`od+iBrqfC-#@=?5EUQ zn{$3%oNt18qLyDEL<=M#`*@W}d^R)&W1*CWNy1kq^Ze;OMRT-xSRBNhy=^f8!CM_e zhQt+I0$($vx_8lyob_p&aR7MZnce--_5_2ap-}1uM)jhVNFv5(%BkR_tAxbvgMHI( zgaj2WW_9nf8#SwboAFt2dSH{HU$1EKJ5WL!b{+sTyv0$>DzA~%2&uL$o>=7p+1o+m z{a|gfPb#fnXoUF2qN7&IX@nuRPZ&4ann?0poj~d&49?z94-;|=NW}3Z-V06lf5Y$u zY?)%yFRz8OZJw@+YM5Pqnxau@hj;MjaC7x5`Io2(Io8rc$Fhx;00je-E!#e;5-Vy` z`+22h5##xdoMk}mQ9uFF&(EK-UG=6(cwt17O33m1fHw&G)6I*ge*RwqZ+jrlsvnVt zc?(q}I35sO5&*VJ<6`2Xl`ygB`N$P5n;FY_=X&I3M*AFJw6-^En_@! zS4MHSHXf%UvRO?aO&65D;JUp4IPO=qxJGz8V#Cd)2Bco(cUZru5q@j~b(MwnUSG9) z8!Z@v|L$L8KqPgRI{vpbi3T}A`EUrDLz$o%V1)!KZ+vksPncVR&f_jx5>d=>L*ZGs z@G{@e%7~jZ?nN?{$AN()Um=9n2gpEx8E-0Gb=sK-i-XtPw}(@3hy-q$FIw1`%Y`5V z@zbV|I7`f_!hxfqLaIm#*uObG{0Y+NJNKku&Y)mh`zI@hk{=^CTM&BD zBE>MAkSa{Z&oEwrIz$D|0d@5z|kuC;TMz-Y(<}LvWHY<<5+fQ#qdH8>l7rFMF8{8xm_)I(t7tA4c6yHnIg7 z?(#f_NJ1h5cDw#T)>I!Ug03`dw2)os<Mm-QJN01-B zooLYCDa_V$7l@piH)}fiLt&p;^Y^GUDYUKXeW9}n{>+gEMvEk2BAr$iF-WKN!4XPc z&?%^KM2C0P2s>N}YC4NST^(FjOXQlN9wVfkEh~SyUs5$7Q=RfI%Cgv~icucWZt)cw z8R=Oh^!6oS3F~al+X)s+6KKRG;gnxpD3yJM{bF(%5s$VtI_3Zn(6F)^Y?~xZai^sA zu1({O$1UqcP!+cQd=pf8uI7>5gtIhy4@3d2Qh?NXr4ekM0O8M<=>`m9ueTLnZG%Uz z2tmr2M6LW|7BU>cU=6FFATW*!ynsDq)O8@_q4IrjfQ#{EXT-qPeQqv&KF~m)g7HoQ zzDuC9VuB8UwOm)~#YezoS#jd%={woxr5~pdfnj~n_))^AW8Nx{R3-Ix;p>`(5yh;kAOY7b;yi&>vx%$ZsCVi zU8eD7*vYP1^pg{@Byc=8^4WtmvjNK%FIHS_%#NX}j9DVggx^Rcuw>$E*Ck_3W|YQq zwh3lYO0xGF9UYzBAHa9mU1r-G_fA$psSF0+*f5`CCxY05bVdSTcJbX zkP;q?L_~9&{fH%1CBP@*iHS!?G8X5e&oR@-1B-5B2Y3liGM@yGlvI8ltK}Vb_xe)p z{+N~W1(sLR>-o8Iacm%}H;It^sRnBQpfaBbD{Y_)^rw*72uqfvUzISwY(2~u4A@`o zB^9Ag_&81=$p}@ehZx0qXZg(P?XbRlYu#yQPWyVHlpe`>XJr&{@Ki2zGc!Wk_{>5w3BYoD)(Q z3~C(op=w)Na5p5{ty4z&_X}@NL5+H#qdP|4$Gebmh*QdbS&#>xbWkA$-0j`m3a)dU zdF?Uy#@5m4Ip;Urn@Y~M)vD{VY69<}o z7{HU?u@=2p&gOPg(D1xpf~XUiMzRI#vG<R9JH&hcM>w0x$?e1u&D^Y$ogQSk>yF8bC>>;hf zcR7K+nREnyFSy(NG0DXA*$bF+f%|=iun!JwQWp(ExHp+eNHK=30XnePbCT%2ggLZK z31u_|a-wGa41(ZQjK#h%{E<%@B|G_~@cdQPcay){Z=K2Mf4tbf>Q76Rvl#GVqmt78 zSz#iSM7&5|L*Xq2vKa8)Mv0kJ_>f?ybso6|t^MEf_p0UTivEwJzJyd1RM0=Pt zc(>hQyF9;M1<_vJtP)RJ&OfXA^wa9s{_4eRKwXHjDifjdx2L{&{P#Qeg54(HC6U&Q zz@mgtkbZx$mFIx|-`81+hM2E4@T0W(_Rl3n(rZj_3lb(i9`c9ZW$mD(!tn605->!G zVc*;Bdzq`yTxaAAhdr87p7a%kU4GHn*~