From 9a450c583f1d386c53f62f0cd928e33a5b2035a7 Mon Sep 17 00:00:00 2001 From: Deep Singhvi Date: Tue, 9 Jul 2024 12:47:19 -0400 Subject: [PATCH] Revert "feat: landing page in docs" (#4021) Revert "feat: landing page in docs (#3999)" This reverts commit 990f7aca08e8d5c79130d3fdcc1bbe801a534b62. --- .pnp.cjs | 20 +- ....98.4-bf08716d8-668b36101b-79f9847bfd.zip} | Bin 1338711 -> 1332514 bytes .../configuration/fern/definition/docs.yml | 6 - packages/cli/configuration/package.json | 4 +- .../src/docs-yml/ParsedDocsConfiguration.ts | 11 +- .../configuration/src/docs-yml/getAllPages.ts | 218 ++++++++++-------- .../src/docs-yml/parseDocsConfiguration.ts | 75 +++--- .../resources/docs/types/DocsConfiguration.ts | 1 - .../docs/types/SectionConfiguration.ts | 2 - .../resources/docs/types/VersionFileConfig.ts | 1 - .../resources/docs/types/DocsConfiguration.ts | 5 - .../docs/types/SectionConfiguration.ts | 2 - .../resources/docs/types/VersionFileConfig.ts | 5 - packages/cli/docs-preview/package.json | 2 +- packages/cli/docs-resolver/package.json | 2 +- .../src/ApiReferenceNodeConverter.ts | 22 +- .../src/DocsDefinitionResolver.ts | 39 +--- .../remote-workspace-runner/package.json | 2 +- packages/cli/register/package.json | 2 +- packages/core/package.json | 2 +- yarn.lock | 22 +- 21 files changed, 209 insertions(+), 234 deletions(-) rename .yarn/cache/{@fern-api-fdr-sdk-npm-0.98.9-3b3a3fe5f-ec323dd942-95367a9b40.zip => @fern-api-fdr-sdk-npm-0.98.4-bf08716d8-668b36101b-79f9847bfd.zip} (81%) diff --git a/.pnp.cjs b/.pnp.cjs index cc355b36a66..9862609a1e4 100644 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -6497,14 +6497,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [\ ["@fern-api/configuration", "workspace:packages/cli/configuration"],\ ["@fern-api/core-utils", "workspace:packages/commons/core-utils"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/fs-utils", "workspace:packages/commons/fs-utils"],\ ["@fern-api/task-context", "workspace:packages/cli/task-context"],\ ["@fern-fern/fiddle-sdk", "npm:0.0.584"],\ ["@types/dockerode", "npm:3.3.9"],\ ["@types/jest", "npm:29.0.3"],\ ["@types/js-yaml", "npm:4.0.8"],\ - ["@types/lodash-es", "npm:4.17.12"],\ ["@types/node", "npm:18.7.18"],\ ["@types/tinycolor2", "npm:1.4.6"],\ ["depcheck", "npm:1.4.6"],\ @@ -6513,7 +6512,6 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["find-up", "npm:6.3.0"],\ ["jest", "virtual:816fb67d993b0978271f762d4ccbec7209ef2546c234ca6e241662d44336c8e32c1c3c07189cfe14b67974a4840e1ed140408a7403bf9deb68c1953445072efe#npm:29.7.0"],\ ["js-yaml", "npm:4.1.0"],\ - ["lodash-es", "npm:4.17.21"],\ ["organize-imports-cli", "npm:0.10.0"],\ ["prettier", "npm:2.7.1"],\ ["tinycolor2", "npm:1.6.0"],\ @@ -6528,7 +6526,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./packages/core/",\ "packageDependencies": [\ ["@fern-api/core", "workspace:packages/core"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/venus-api-sdk", "npm:0.0.38"],\ ["@fern-fern/fdr-test-sdk", "npm:0.0.5297"],\ ["@fern-fern/fiddle-sdk", "npm:0.0.584"],\ @@ -6644,7 +6642,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [\ ["@fern-api/docs-preview", "workspace:packages/cli/docs-preview"],\ ["@fern-api/docs-resolver", "workspace:packages/cli/docs-resolver"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/fs-utils", "workspace:packages/commons/fs-utils"],\ ["@fern-api/ir-sdk", "workspace:packages/ir-sdk"],\ ["@fern-api/logger", "workspace:packages/cli/logger"],\ @@ -6686,7 +6684,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@fern-api/configuration", "workspace:packages/cli/configuration"],\ ["@fern-api/core-utils", "workspace:packages/commons/core-utils"],\ ["@fern-api/docs-markdown-utils", "workspace:packages/cli/docs-markdown-utils"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/fs-utils", "workspace:packages/commons/fs-utils"],\ ["@fern-api/ir-generator", "workspace:packages/cli/generation/ir-generator"],\ ["@fern-api/ir-sdk", "workspace:packages/ir-sdk"],\ @@ -6771,10 +6769,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@fern-api/fdr-sdk", [\ - ["npm:0.98.9-3b3a3fe5f", {\ - "packageLocation": "./.yarn/cache/@fern-api-fdr-sdk-npm-0.98.9-3b3a3fe5f-ec323dd942-95367a9b40.zip/node_modules/@fern-api/fdr-sdk/",\ + ["npm:0.98.4-bf08716d8", {\ + "packageLocation": "./.yarn/cache/@fern-api-fdr-sdk-npm-0.98.4-bf08716d8-668b36101b-79f9847bfd.zip/node_modules/@fern-api/fdr-sdk/",\ "packageDependencies": [\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["dayjs", "npm:1.11.11"],\ ["fast-deep-equal", "npm:3.1.3"],\ ["form-data", "npm:4.0.0"],\ @@ -7470,7 +7468,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@fern-api/configuration", "workspace:packages/cli/configuration"],\ ["@fern-api/core", "workspace:packages/core"],\ ["@fern-api/core-utils", "workspace:packages/commons/core-utils"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/ir-generator", "workspace:packages/cli/generation/ir-generator"],\ ["@fern-api/ir-sdk", "workspace:packages/ir-sdk"],\ ["@fern-api/task-context", "workspace:packages/cli/task-context"],\ @@ -7499,7 +7497,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@fern-api/core", "workspace:packages/core"],\ ["@fern-api/core-utils", "workspace:packages/commons/core-utils"],\ ["@fern-api/docs-resolver", "workspace:packages/cli/docs-resolver"],\ - ["@fern-api/fdr-sdk", "npm:0.98.9-3b3a3fe5f"],\ + ["@fern-api/fdr-sdk", "npm:0.98.4-bf08716d8"],\ ["@fern-api/fs-utils", "workspace:packages/commons/fs-utils"],\ ["@fern-api/ir-generator", "workspace:packages/cli/generation/ir-generator"],\ ["@fern-api/ir-migrations", "workspace:packages/cli/generation/ir-migrations"],\ diff --git a/.yarn/cache/@fern-api-fdr-sdk-npm-0.98.9-3b3a3fe5f-ec323dd942-95367a9b40.zip b/.yarn/cache/@fern-api-fdr-sdk-npm-0.98.4-bf08716d8-668b36101b-79f9847bfd.zip similarity index 81% rename from .yarn/cache/@fern-api-fdr-sdk-npm-0.98.9-3b3a3fe5f-ec323dd942-95367a9b40.zip rename to .yarn/cache/@fern-api-fdr-sdk-npm-0.98.4-bf08716d8-668b36101b-79f9847bfd.zip index 42577dbffdd6c9d743cc09122ae4b9744d3ca872..bb2bd622382dc38c615cd950386ff8be1714062b 100644 GIT binary patch delta 86009 zcmc$_Q+Q?p(=8a=HafO#JDsFsJL%X?-q_X~+qTV))v-Iat;zSDdCos)uI6s`<-Xd_ zsaz4=3v0vxL@|&qO z{9rZ#4`p-RHa3lt&r*z%>5w?X!@-acmTQ`dp!XuDB_ccf>Io~NCfYQk8V2c<4A9(f z_d6;8_Jf0>1H6fzC@nT-`4gmwoO$$oisF1ED6n^%VSqjy?Dz(QQdq-vUo`&!pZ6z#p%v6ccER;o#lRsV(0_M_G7qSZ#CfT|@ z-5(y@+=RMc-`_qqdrP^VG?tgSh%KIS1p#fHukWMGfWo$q>-9G+Oc^cUh*tW@=aN;b z%rVVqI2A?#$hfLUeSjmSAlvCvZg}r=Lx~P2c^IfCFWGfOntTDXuTm~^&~f0O@X#9- z@l0b~m4NcLggsmYHjx0$h^Oe#e54`>wB+ z3ZicQ07rPd&D(2Iw{y!mWyX;BD(MI;!s2~a!&ph7A3PvorPmXtX^=y`+mUMGt!E!T z(L;G^2O3ac^y_I6FKq@Tqjd}2(#-p>xFWb@M?3u&?-87z;%E4j-7-@ty84OCuz{fC zm+YHKvlenl3>L=sYCy0Zc#%s_8T#RpFg7djGsQV+hPDeSJV!iQ>K-%e)4ODER#@zD zcm6-{jZuSWFO1bCldr5Y^iQ(7h{OE?e(naoME0a|wC$fexOPJ(E z0dEGw6yq6&SWb8ctZ*edzHZFRvvtY7v=NL}&f_!$Mo_8-@Vi%h6Lmx28{Dy?? zD9J}hMdj>=CMdUfDgBVjOo1=fi}g}zvG1cITxIzK>>!lKb~TO3dAz(Qhy8v5sW^jC zQBw6Xg-VHXy09(rJs-EeiNCV&bXBlR2oIiw^b-d^ za^b^XPdzFIN*|E4(@zVv^ektfnwpPQKu#x+V6CgV8c0;VrKL??QbO{;=*3&O-CVO$ z;G8w4Y&K?~IF|d+xTp={dw@O9j9+RVwMBt!&a*yxe{U7V7eZ3lc`7~RvWgt_0i{e5 z1&X^yN*^W1)U|eb3cmi>Nx+sA7o(>9bw45BdB2CdSPJE93hBIn681tDkty@lfPT0- zW9SzRM&Ba-Ja{69cK5(*s~o{%hoX~h{uH3wq2D}y80{#B_)4;u&ma)t; zLTkGz{!y!61=|z24W9RU6|3t?eySYY^^a_U0@%Wll;*9U#1cIEyt5;SV0|DerxYjyCI1E0$Q$LJu(6PeSkTJOj1Tp zfm2oiKDHdRT$SjmrblYma8>IjxJ7f2+a-40df_S*>5%M~%-HxK$qWeApV5~^4QcB^ zDm)e*S#nse7jt2ss%18s0Oc#u+wtf~!Xzg6iQnx~t?v|QH2P7S3K$VEW=T4gumBnx zmIb@d*~!bw+Ky(9!18h^hDW=T$Q0Hpr72rjSkSb%uXJ_}s^QGepN&G345#NGQ=5oc zScrd_^J_TXg~!zJ$l)}iC#CPWY)UJkR^)Y8u9ws?d zbr*m3f;OyNIC0H7T<0*}VkdznnJVnj#1LKXh?m#!s3xWFOzF6`YjmH1Z`(|9TAiKj zEP)TJY=9UF)Ni8a13seyp#s|Zb9+hGrET&@xT6~1IBY6ARRC%|R+SV>QyIGY`iVIW z4P4YNy>BD%83CsH`Dfz3$ivtIT#H}z*3w!1V#!+bW9c|_xw0VT7*1E zGhmDGjR(v^G~3X$un*b^Jj$zL;a_$7Q=Y2`-!*r1nV^<&Ytv~$C>IC`pU8tl;zoQCaKFrE2Y+Nl{CML(F5)gr18%5?@UYRNu){>K1y4})x z6q|_G;T&62&g42)q+MTBnUEB!zOcAjLgW+Od2yo7l;*9+6memT#mDnRKV8BJH7CsffpCIXi4jcZivSmv+uq&^Aw?K z@fSDw?`ex&2kti}B{^^i3=l977!cu_C76|IHzsm85RiP~q-FzB5(%*ln7w` zEtPJ){X!VI>1{}q{P#11bmJA~t?PUtWX=YEz;rZ;uiKc) z{m6FvVHD#x%FI--jA;R*{bwS5g3-0qL4P#^cKE4jWTQMKH4aa^Ca9Cv#u3Osk#unP z*d$!YphvHsSLE-{)X{u$d`FdW8(a$@u*ve*xJ{e5sI_AyS$ z>*q(qpw&c>^?_rqnrdk#LGLXN;n+4m8UJX>$faEUVbb&ajYCR$00JP_a1xQ^;Ppdh zj2~yQXudFT+b_vPm55WlWEI92(O5i}3d{k6+(}~j_aqtKXw1LJHC9spS83JCj`vHY z9?6!|*8K~JiaCE8>Vby?G36n!_gGegJbX*rN>>J8+AwQf-TV&~zcQJ|-wIJD7&;$k z2of{!87#)}Vr-nl2N{48tIq`O-YiF{NAicg1|5BJ$TMXRt61CJ@UEgIpaIe!lyp z8WbwDg!*b5BIMEu%dyodJ`s|?*(p_5Y@!rYJMuygv*cGPf(>&?XNMJ0m^&ZsA~%$K zQ0z4W4s8-#6hQ$A5cF(z)nHBT-I`Z;YO=1x;F4CGYvvuU-VJHjdb0b9-Q21}TvjyD zXqtnv^SGw5*^*h8oJ34=Ezm7`ZxIVIZ&uTJX{z2*n&1PN<5GpEnQ4pCxl0+8$YU84 zU6GVkAi1mVvc?3ux=qmK+DZ(5Rc{ntBIF`$iSbSgaH@cOUSEm1MD?%C&cMk(AIlwB z*y(&%Zv5~VYDV}3$cyqJ7?J>rd8OjnI(bd(N@jGfPvO9U`0I-wW~%&E5UP{a5x z##Pm_?-L<%6mG_0>=hx`e`~|jbDkj-e!eOwN*cyNXwX4d@z&-AFowvMr_Q7lYge^C zBMd4zCW8Y^ic^XNJeo5NHG)0%^zzYDf`xqY4nU$c-bu`w5ZHG!u^5bV+-;FOWfF)L zUwN_zt-PDIda7aC%Cg)CbYXK^PDB`fHi@5rHNw3+{DWC|Ra#IXax6?)RYPP}mqR36 zwp{qN>=9qFK7OHgZCcfaS6Jn?`$sMQ1jFX zSg*ae)Mo@~fu3YPMng^YHcss)v_8DOCg#@R5pJ1UC!eRIIJgph2a!U7l~QGOi3i8* z!ZZVzk@qdIDxydyyMy>EjQM5l^RGdY)xB+$+Pnovq|4+9R*!p%ZLAlJO=TxXf;M$E z4quk7f^I8Npi80bc(fJo)W+%AYcW<(m;v1i(lY%|!kIRx;nLZbg$}5|ZT=?F{l3)Q z-V{(h(}UlQEWl??u~3c`gPg%V#I+F_LB;~Wt8z~CqK+V~#9(bv5!m^@b(pp~X*0-6 zg{)ch#d)Ihq&zO6Dup||3_JZW749BgWD>+ujHNQzlPT?6tLzARlvU$pzTUC#N4*qZBNP|P_I zu;26g*#*i)tI|&IPCCdJlKh3&Fv|pRUZzxhFzwZa)<^%GoO;3Zno?U-uaxls0itkb@1 z{E};bw!DSqtNTlvcg%W6nrYAmYE!@o$L^+AYP@m8Uf8o1ZpcEpUSk!thIDNLEzVz8 z%it}U3_A6%@szN2loaYb*xln?z9v7hR_hS`>)FD{{Qx9TT(j43@OC%2vVP8qz~qUC zbE2d4vsH~q^^UgG19Y+eBL!tZ{bw`%L{}OCu^dv#=;`xSt)k3&uRqY3v#dQ)6(XQD zQGG1qureU@ke~&MCo*Ta{4aAf*w+`QOV7#nKs7ysreAtTX?g4C{$Hjyo`trjwsO2> z9@{!TI9Ca1rXfKrk=oYR62GS;jt8xb+lJ03tUh8*Bn0e!F!s}j)*LIqpx*E`lv*5~IDLKX}0RTM92#zjZkDH4k!H5M~L07f5$Ao$P(2kZ1^#)JpTJ|fPlHl z;YNYz2J1&haKhjt&jK1`=Nrpx@R~g!7S$NChHcOk5g4hBxj|@1`O6&EFrOiD(3DE` zxk6I zLE%J`^aO0%b9)^vh zP4AhB!yfGOSZ9k|Dr}+Ot`*jwl9-n`!+*LSH0V{TH28P7R_&eHquqO)P-wKSl!WaO zFwBm|IYPUpX_gclE0j$)Ph5JSerpA=Hj8lDr>n-_bwe;qO#~lCJ%e8iAf}mKrt4ey z({X{mT1Jk|BxjaIXWG41=@f78(5l zhbIgR@^Y(Xl`x+|@mZ0h6+-?ceY;r0pJ17`zd^Bze%-r*M1d~wJ}LQHS~(-EU4>M+ zzk5`vUrX`zbN){JSJ4XgWFY>8V9m>l_eUnysi{R3>3n z^cdU4&oc4|o-u+_wjolc%aM)9m<_x9tXz3Q5Wx|{*u0YF3RGAADpO6SBjgP|##kkQ zJ-G$vpMO4;QWbf=Y^CX#9se6AJFA(QuwtbGCk2M-MK3>kg=HlEW!X>j*w5v_G6Wps?Nw0tDm`8OX8SW6a+#U#ZAMX_-fxLSdRMclT|= zICq5gMNz9;$u^XS#4gt1dwY4a#0#8Kyjvk|^eh4y(&1Qf8KyeV4DYCFx!jX$Rb z{cS-z%g}c`f42W%Ckz6ll-1&Yllqzj^et1Ddx0o8SDYj=KS;OkoSldvS_K0Fvt-!W z`!{{_Yi;B>pp4%?hFw;T<{;kdC?i8HphVzCoWY}tQM_bS7j3ZjFG6>i&~<-z-q8z^ zMOSsMn853JmQ^9U6Nct;M>G?comGe+qd(LLaP(T~%Oy#fK*D1iQWq%eL;1I~UI~pZ@#imF0D&(PVN8Hd z0egyedYSQzxp5M=I!7;VV$POT;I?!g)9&Mqc}HR%{#d=2e0mZ2KT!Z@dt@rL6+C(N zv!WHheRU3Gdv7bC9FH@$dZN&Po<0nbL&ESUY5DpudHIxK7AbG|hR={R31iJ2mTH;( zrkq(X40ScKn4UuCVl`mHAG(-F^JdJ%Ca1l+xTqiP52GboWdD^d{jP z#jlkJ=|U1JZ9{&3=!o^%#UIMvC5>pNd8fh0HtRyyoNeq0(&}gOSs1#45&6%SvDm8j{QP^8+LK3#HL@*JnJ{Gv@{W(+I%C+ zHPG|tt+4z6{FpVuElx8SE7Gboc=U4G7bpEWDTtH^L#azsJc1u0?WQl)&}W%5oY^#D z7Itt#v5_hZh)Ys{$}YaBM8tj6_NSspW1|6S*&bhH#E|r?6oCZ=-UUv-QrTQPLTNHQ zM>mBZ8$}%6fnc*XP$z0rW6RN4X$LZ#-HfiX$P4TMe`bL;2p9O5aK13&jw^;XqGlM_ zS^-a8JiLTi$V(&Jp17Mh{qKD~3Vv#p%!= ze5cgEF|>Rx1?e@0ELLSlYf9&Uob=jOK}H%teXoFy1{Kswnn9j`loKzxWK(0}ErY6Y zRMy)=$m+=raK9A#3sLoTdh)3mDP~$tkr-mR_-fHk_iTw)PZJ@I-MfAf2bmcA6(6G} z@&JqZP8aRi~obQVeo1##kr6KbSH z&P!Pk9!gF{2lw?fMqIzyRG9?I;e+z$>5o)Ki6yY{;Tp!w1Sn6RD1)rL< zxhv?5JUz7ax@hykClFwzt&MX+r#h~EXA}}iFH4N8{v0E;ID$h&g#sXw-Hjl`f@co- zrrU$&eF%pVP6!RI>fPEeMW`OYu}=o;i{4;?U;|}iwg|@HKQZFZ66c?#dCEmf5{}s% z*!Wo-71qYC(plfrbY=4a8>PEL-3?@nN8NJ`PC-6wAB!$u9MD2#o}?SHI`En+ExQ{8 z-H|Rrk&vw=+Ys;<1b|1J+fR?z|_Dh<aB6k9!ExNIiNC zx{M-bH-waB5E~%VIdn3G;deQ%bAr(8SCHknU!STR_i4;91^53G8t`&@Id?0QeTDxI zHNK~O-;Xdb%N$f4I9mxS2#oGTf@!TS1uY~)lyq%3GWuqU%XcA@0U9AAasvU!aA^Oj zV@dsXfx;-ESNy{xNtB3N9PBIsoCLCnr}JHr?79j8L18{yPJ%ERnk*gx=tP6Mrp%s%*f#kd-a=Wv8tai%~=;1Mgo zkex)oW55ay0wVI?7^DzD!2uaoLE!-}m_byK5$?mH{Z0EybibSL$=5e!8pzXOJMnE% zzr0N_Y;AvCG=zn`Y-Regbx^Nzuk^|4Tu`pb7Q!nG=Jlj3v|mK? zkC_sR_uuhnFj}-eiEsz7xI|z+8v1~Dh8aXch`B-uF$P+qLNQg->gQ|y)|~C`(rXvqk{2JfkgHYj;BHgCOXCxDQO2M8X1+2|#NAnbV+ffRnRG*sb0R zpiH2xQX8O@E^y|-OEnbV*#CkA-b8|H14*W#puWi;lRTj~#Ec;Ep5QE`cCM%_*Apim5s8GO77BDIx+b>XRV0efuaLC zh(V+Nm!?1@G%$3-Cpr2F`JeP-lQVY{KV{S!4rPaH2kJ={s5n?+>O{AP3eJ)PHfKX8Ym9-%`fPh9Y8i3Bv z4Q>p-T!Y=|nhsnV{I!d9lE{uGotr=u8&8ok544%+MR``)EKu>I-m4o1M*_aFK2Fj2 zp`*i@BXj7E)k8?J8A~a-@fsLK#_QM`=0Z=mR13KdxP#eN8>vXNt;8XTkVi|ceSG$q z0eD%@%{#99|v!Lta@37yI*zCpU~Ui zcQ&nmv}Vh{n@^qWqiD&v(6*!aNh!}t8M=SSsl?M$GW=~9RAC>8g`!r-w*XjYRZC~o zzEUiiDw1x@-|bfp@o~LWp(aIu?->8?hK9PO#`%Xq0KK}kwDQU?;xPR0qP}fZM|->z zl6!^1-1;RsQ3~&<63l*?U2w^Ug02FG9je~RZJKDQ$|%#exen0Y^ba?`&u{qu|z5)rQ z5uB*RIvcy$)Cz}u9;ul)a&mRh?}Q^8yaInpHkaGEow8+BO={7Lq6-JqDQfsNIR~%E zl7-cJG1;z?-(Www+F6*hNSY9KHL_WcsLQTG<}wmyUM1sPhL-t_1PTFKD|0GlB}9AW zg=5nH2=$u`RG$z-~EQvYYQ z2(vb-!`Un=CoNB#-Y>u-`d3n9Sd9ex$t#4EQ><#)^E(=h+ZEv;SpTK9-Q7lxX4vU5 zjBYHoLEb7Hh36x*82%(l!enQtN~)8br-)SUU7O2FV~LDt-x`HtzS;4#(BZFgR{u1o ztL*3038zD-PhUDCLbOyJgdEBxKh;w_X`MA!&*?edAFdjb_+0?Rrb`s{k2%uP1hw(| zWgMIo@fn%tibM=G39pMs$!&Ie#qF$(F&7)bd07{?2XXnrojP%L95vrLGl_Io*EKQf zZrvFfrUIb8Srm_fSpv%T%Wt(ln)D;sHPzzqR*#rVQpm(n>xMOd^kjh0re%S5ZJYM= zhE+ph22b4~%N+op%2{$XiAhrG=8p|?{LpCKr;MzX+TXHqoT>T_iIN0mU5 zcizEoC9FY8Ed+{&Ikm4oQ}v6k6ZxCyRh|}w;}O!qs1Qq={TL;zw!ua03OIh6KJ;R| zsdg2de&Q6T-5RRS6C|**=ub1X{YAG(zfbXzx2+sw7&`!?h3Np{FNABiOu>k9!nou) z*`1(N$iWgsGmTNSRCZE$UETKei~!dIwtP$vOVeOUzQG{viNCvr*g`-0Ttquf9zdK#bGFK7;Td_UwJ&)C6xl_B=*Ndp6^-mfKeJ~eOt9#7K zVIDP8&yELS+3A{XRh#=7mFfz&tvhd-3Z8AH(?#|AymOp)tgmi|oF(LQXi{!gw{ofe zEY*(fnBD;}{YSsNBMl2Qck@oNDP4;s@f@E^g~66~5TM}6{m;s-YaCiirQdjz6z7L`cRPn9nz-sP8djt|kQ$+J zLRTtsv4X1~m=rJ6QxJ}$Y+jTe@#Pz5JDry_9(R&7I&A;L+`+pRQmA0Xj*W|6>%Y%x za>9*W{8vjTMFafTtcq|dx?NvJa?Q@upa8i1>&c>Eut&d+Q@*r1dK{}6{|B0nNypf8 z0qXcx$j;>~t~*e2+Wb)^O@N^wuu^%atRja<>AEdbI3ktgxL^@fl)|h}bhCX|DahpU z_5(3{$%+4DwRU3AwE7McUpE))O1;_UwEoHT#q32HQ|PDFUsnhHnGU}LR61X&UrzuV znj)dUhF)A?yy5J{bg}m-;Fo-|M2u<$INTtFtz1ig!jc9bi@o2(8x+78kUhBGdpHR; zj#`9EqR79jeAer3j`*G|xcmPC6i1dMK1q5g05p+ZFqcAlIfdJ~>;ImpCvdsR^V)lf z->1zz_WQn+{=Vf(WY31b9WU zd4fQgQT8*b#pTGqtikatZVd3Aw5p$o%(E%7Ox1S5ETTbBC*}f4Y^YYTibz)6$}@XA z6wOxui5wq_K^MM`^*;$%SgTzByy31kr8BfU*PiQU-5orfs6+<90j|FMU6jR(f0Kj@;um^jPR`32bQqFwdOyxniD-l>4ZUl6Y>w^+PB+=LaJJz6y_x zt=(NK_81s8GTaY%H#hO`<~S7@XiyH%0VGL5MfygqT0_o$j}xWmNQ2p~J_STavX*5- z&ii)&c~r@90dq7XS&Z2wYqE&S7LL}(6B2PEbwq`Zp(_i;w9nluH$fxt7X?Q-#g{6J z2vUO=DZGzP`ttB$X!{43N(6!Q9%O@!p7n?twL{S<5j#U!iQK?n@VeV)U71F|pK_Xy z;{a=4o_=8sIWMU4oq!xI8IDSE5`lV`#AbgXWugP33b2uevw9HPqZFl#G+-{>H0g56 zJ7%v^v}^(c>UD?@$m>f^PNIu5cxggF z{)sds#$h8%>$yUd6$hawH@AA6l9_-#sdJ}{%pZZ9>!=1#MJr;-F;!iYBb;fB2mzlaP)=_SAF!*oouG~3V5q4#54b1Q ztj>YwYuqSAwYJgB`K%%z!1~(cbFx-nO~8Z%EnE2GlFIe`|fku;1@G=Q3D*qy%8`InU#bv z6^ytXA(FV*Y%<0KWF$B3vFQ1jYeZhVS~vfE{dh&E1RdR^Yr9Z-e}0Dz>qUrS#0_QR z75x1e$T~KyJTzrcw5sz*Zzj{1*L84dGEb0r?tE4NIo0pr0;V3Z`42$L5g3MDc zGobDZe7!YGnl{kOzBD+j^b(d#_}W|3H)9zv|q0UrbjRU0f_g zBnc~4&lC|(hAT78EBpDBO+K26S!stm3Gw5kr}L_F;e~k}^Lwo%+lDfncAjqhO82YW zly9Uw^gM#Ce=MM?XeFVMJbkD3FTIAvf(UKf{QmCS6k&P-TeBG?ks{?#w!!8!F~I)t z=eKvJ0YWr|?XO>4>xjLCGvoqjmnLatV(A*QmCO?f=Hy9EbvX~7Q-TPEqqsgaL@wTR z8`Riuzh)y($^aqt%XzPI78>dtD_57MY0*R@qzvZd8_!69LAV4J&vo>_J7W&1U_<8si4^e`y$~sz1Ew*yxq4AR)~}sBuut?D zz6CZfC+2U=H4h}hJgKQOR`htc*-8}D}6*e-~AM{wtw%#d!CJ!`zG zO;ytb6$Ox;VVES;5}0BDYru=*sGey<4&1HDui1hbzIbKo|?;Dz$O6cUC?PpEFy zSSjwVS$I|Qw-WFvs7vj344 zUn%(`Y{zSFVLj;SR>z?hBr1}&?NIyk#7i&0B19NfuVuT=2jv9ISZO2%CA$z5e?PWF zhmRz5s)TAA>Ul&*gLHsDPHRKiyk>RV&xU~A=^Y0a`&~pXuk%@Fckk;;I=pA48so3f z@zd7s;GZv;Xy3ONa>^B>YwT9lTyRZ-Bp-RHq&@_s*1T?TVhzN`x(X?qZ{`a_fq>8@ zDI@*>USdEX0VeFencwwB2SMlrBRcN%K1mbyDX{>?-rVqep-5DvC5Yr}>p(2^yhsEY z5<+?n_j1ySx;w6cUgI3(}v zfh->jjebDr2GW4eNG~?77wmW|WA;6-Qe9Nn(AC-lP^LWypHIvE%YrP`!@xuy0$-n0 zq!XgQeQv}P`)Ur70fR3R(Rt3Ric%;iGv zew45Q&}ceEKUqrTSp?s49KTG$QF>5h!I!_)mbxaN81sVS%qcl-R&-?k=NR1WPxw%}!*3LeJF~eGR8>2d2#A zpL|L8wzXn-3jSPMj@RnrCm$GHh*Pk&T2zdMWKPrSdZ?pEN3S_oB9D+hYWt)8K8dai zZj~iZcYvS-OYz;$WWj{~;5nNzrW2cZlIim-kfc=kV~IO2eDgs&solPgeWN8{9~OkR z!qt_*t#txb4`feo0$lSK^`aT}uOUHbH%cn=WF`E}7`FFJW7KKJK>)JgF3-|!IB&xy zjM)w0&%D0C1(`=Qr*Rg_Q(z0NDaR|$2WYD~Hbm_|I4oA$eXZ{)u0A+$j`7>hT(=DY z2NZsVMFMt&px^?06AkPGnK6cYM6UzAQxjd-@M=!Zl}V{8xK>sGxBpEa!*7yh zb}H}?RIb8Pe&#y@H8aUPc{`!9T_x-in4Y-Fk4$+EZxI2&wuWo2Z{3uXk>-PvzGh)Q z3@PjY)r_@0T9qcNTi*L zJ=@h$XTReR^DUTFzva4}y{VajEpTcOl>R^Nay+2mI|LeFJQ#{&q;DbpH>7AZ{BeV& zPoGL%gp02BiW%3Z`_)EzDsm;_Nq0B#(U!CMGgHeL?@tBFwIdb!`DO7Y2^-c(to(>O zX00MEZKeL~?^B37^8|Prr$(*Ou|H{n6_r=IO~ew7xNQbKvEaz!=z%ZJ*BtZ#f-(tH z>d_*XR*#Q>RCBpkv^=RTuvXT<%P~@BawfbnSmyeAgIlOJQhSG^E}ZaUC>Q8stO^@R za_Bx`JV=}aFx~AuVX+j#k5pu~PXUMR6EXXgEU;h8!?-$(=p>FYstfZCa_GqM6O%z% zplqGzanmRrS6Dpdg+pCMP8piXHWLuYc;I^#`v(hv`=kue`}Tr7B;-Im-d{t!aGQ$w z^Tvg`mDrIH4d>?!G#&TKIm0=&b@B!^$kgA`KlVHY-)2zd{aE|c@tKdc(<+*gojAl5 z(4i3VCwz3JUhVPNdITa}&ZVvWH{zafY^ZC9njU4j)zg0KPUA{7OI4ga9i}ouq&ulCg->DL!1A~a9I=f| z3PrgbbHAJ#qjDW@QmdxXW%eqcjue%(T0NB2b|*{@u#HgG>BTK4I$h)aEY*P{rh$3B z*u)z~rS;h*l)(2CVbNfWJ6H+kj)Q9g9d-!o_Tb7qkk37{!OoJ|NHXOs zeM;i`9KC261Kw7JJljAbJ=elNGMp0+=Zl0No%rnGYEW?1!{_OPzYeX0zuttS+^iC5BZz_P9iN8TUy(M+GV=LmywTBBMK9g7sys;Nl0i9xa}m^DxYt(>>&Pcvq%pl2H-#S@`K4&51b`RE4g$*G@5Oi+ayct zQ8=FE9R&Os3;6Mrf<+A$#U%IKcEOY7eR*+^ne{=AxEGFaMdOM5B#0ZS(c~G))l<*X zkgSwAQaW^(yT^@g*sM5qoq`iuUc-Jf`9~luAQP73E;;1wZ&h&cBtAugcf3Kw^$t-S zzz8E86Lchx%}|oCFP~_q+!9WHF%f(N?aALA?H5#${4gKtm8p-htPw1|T*%yqwC(t) zW>E=QePuzG7*$_UI~Vj}ws%McTU|4iZ>-0)g48F$%dw1z`uFu?*z7g0uiT9&RnT zg5*Gf2tzld2d;lXssUJ#1DR32E5Q^ZVb;(|3bhdlUPO|kWgce?OsG0R^w%bQnV}PK zqw{U6lj@=5uEv&HABMMcO-X(!IJ%T+I{96>f7Ema)Qn(n$ zRY>aZA5RAY$nx~Ryaz~tl)3+uI24ebuf!um9JA>5(gk9r4i#BkZNCO|-JIG$!Ci_REh(oaS@PF^%M|G4=Q?X|*Uhbqh&!Sr?(06pu^qAU3-ynNQJ% z=#Sn9&H9QIQQRdM3Q0Thsb`W^>T{KnXL@`)W;!-v@PR~>g>HaKfrtAhp%9-Sf(i%s z4}a`x5ZVsVm07erp8*R-EM4#_LcAyff4;8PHpms;F3k_Wh9(w6*uK+2jG4EyW_@j_1$r5W({jFa;7IQ0*gAPQPPB{NG)hXJGC3& z=Y(6EUHtQxxG%Klo^@3T%||R#387?Cc;)1p53nXb1s~IRi`ErQM05BvU8eej0mfrb z$gL0MQ1isFjvO}LB;P2C182vev;cFPR^JK%WXFBXl{uPqWMgp-np%&hI9d-Pv%QI< zo>I28-hDgYT!tx8SmOU8?oGp~{JyyH&W(fPIOmupbLLqoVhfnJ%enP!9LfU)mENHE`MG*oF7$ zo;3|Ir5uL%xA8kh9y-lm=Q`7xr8ucB8XwTDwAeFEegsMyI4~N=XgWGLYUAH*m}9cv zw{3*gVeF;ahYfE>{;S_s+c(ni4(l*7tsZ-buEXlG*<4F^zvj-G{TM-wou9Mgk0ccI zna8URV!mp~@wz9z7P5Zb>&+&U>O9>3)-#ShZYL`*pJ@Ec!!>k0!J&7TXP@46{cvJ< zuv~k4WUPjeIM&qD?P~h5ZoR}EXL@wJ({z zCzvPjt(|Glrk8ZY*XQaQ24pRVLyw9NPQ}!2sNc*Jf){$(ymzyu_^{oFq?Zi0^t#7) zTL`yC>!$9L7-^~f@=JYJw>>d>R@O?;O>uL9;~`mRo2{Y+eO)!zTDFQ!KbZMG5_Na~ zQcbIVqV%(G6PkzBkRr}U{9C}QL!Z0@$<%uZZI&!NfD3JUn+Jjgx!0IztGBdc=cKEL zSFo}wjD~Jt1A43K8b}qOgV!c9X*t0pGoGI;=jG_@pL*D+p0XmeXO`7@gUpKAzT;gsJ)~D>b*r?H7ef`?L#~K_nT{riPtRB7` zPkwyDTFhf#LZ|=jUiN~kd^BMi*dzRi&=t(qi>;A0ZEu9GY+$>LNP-CbXywBIjZaUV z$T1a>A8auqKlP_2q6BxTklvJTYusfn$IFRHb-6{ji0o_4ys7%~e5(};fAG9Wpf+y+ z&ytYmzR#(N78c5er1J$2+s0O3WzGtNYB%GdOI}UWNs)dF;WK;eo*NuhmJ0nZEMuwTgHN;2!IHqV0NxO2onc`lUuv&&kJchV=gOLWzjqh$ zW!I$ed|C|qE{1~G2G4KXlj1#2-}yeEe%&GSh+ACXg{7YXZMd&3U40U^KZ#4i!7TQHg6GRqccx@joY7e1F?KkX=#wQxw*zVU}V8aBG$dr$lf#Z z#U1k=d7PyrVf~p>}Y@L3##Ml{oFUQ;K3(7wSFaEUfIcU?Hef3&yn7xY2=A=Iqy9V%P;Be!}IwU3rmcwX{~l1!N|nW z=1W8z89gp2;DpOpe4PA!N1%R$&T+kuew@#6dk=XXrg_&KQ*I#4p3C1GFxz~RuC%e% zI__}ciw}&?BfgGp9h`7|^wzo{Wkr1DFg0}5#k25Kj~dbM#xMq-c(Vars_X&f_Hg6M z!GvCgoLuJ({bBd2b2}&R)k3Kp&h8Eg!;}~0;}{mM8iNQ2+*Pa9haQ`1#)NdsN?or! z8#dpP}?#nQyZ@9!1loc=WFwllTj z1!-&ZM&_g5q`q>$vsq~va=W*B4?FLY_(Ei-N}IXUCt)+fZD*6EH*xASYG00PUg_We zwt({*4_o1AQRX$1`AtvM4zy-AT>0;=*}G+WO7hg40K?5<7_B^ddd;5Mg3yAg5;o>) zPBZ#4c1EpdzI~MtOa!zar8g&!XyJd#FMH1EaO~>d8FYzmK2MO~$FWOex0}T2G-d;> z_oUSoPoK`1sFQnzg8~|lCd0Qc$lecyi+ zNpd9lT0e%3M>zizeb2i0DLX?d=TCusdifRS^gW7Yk9diC%NQ>zq(*Drv3QT0E=iwC z=Df*rOK3_r_q1L%YasSW>vr4T#2uZCxunlE z%QdOk*u>`C zw0QS?Y(~*VO}lF%)>2u!f3Y1k^E!G-CyL|!c=MUJ`_nUN!p={KcXwMFYPO!jZ4Kv9 zUhe$yDn2ZEdfP;Zr)hpp@@DIBGv~!f;n2;`m3x3}&gM@nZ}boO=Nu6BnRpxei>A8Y znZ7xYkwxbe4Z7~J0k;O}y~tik+Grer5i%$CQ(5)=cYG%ui}tkO?bwcUy;>JDMWkik zla;-|T&@oH;DgE20smc(8O54?r0;6*-zEAjR%pzpyGqwKU*Fhokuk~mRN-ns{*1A1 zp8a8blDnGtPDyF|D1%O^t!f+}Ca=$Y8ZR}dIZ!a9xT(FQ;90-w#Xo;U7qE7sG^XA)z7RB4pOn#sk%4`S-Wq1P6AEsv^cbJ$F8EIIArrG&8 zFL`R)_*DyDT^)2cf2V+-d>9mJcCYzs%Q4A8#Y4vO>|K7mVZqzNHdUntJpItv|Mod+ z>}0okycxUhICM!gi4LTR!niqU~Wo$OcZx`&k7dv#};0b(Kq+Zv;9j_RcGFqPq z<^%F{$LTCt&TBQ<(AjZ#XtnG9w4378`VK?*SoqAWUIUk#QvAZW%V<`7)8pBDHg+3y z*`Lj?Cgu+5tK3DbAJCk#xW6#g!LWyco;{Q1q0oS)Uh#D0{w}!Y$aZDu6R*}xV{pYV zas-Oae1nF60@@WgLm-&Ipa4>AnKyylt@O0y^QPMF^$Mh)&6l|n((K%?h{YQi>(dm7 z#&kw|O7BV0Z`{jV@O{$iYezQk!FyjFT}~-w6UY5OCsky$T{!nCU$Ve8gu{O&|Ha;J zVu^AR&LXvq-z5E&!PL_a1GY9}dY^ZN&b96+kk1f#zc6=5v?TrI_Op9z2d?FMm!DA4kKDc4i z&JFZ~i0x(hh@~h|LHWYo;~5LJmrX2_T5!)pn&`~&+uQ#0G3Fj^eTS9QTIn##Oc~)? zZSRb@>}2q~ET6h*@z=52moV7pA0adV)EP3kq$}_j%fs!q0iWNvZxF&Uq9%=FD&k%J?~ z=1s@))TEgdt%#R2BFZp|&iuqaM9@lUi z;gp83*wc6n(u6>iF1JODB|?0R(wEK#)SmMyw6@;%;o%3K;-FNU#wk&S+uF?0hmA4g zuI2{%%0>SR%h(GxCp0APYR^#;$$>$@!T zx9JVIm~d*0wDh~$bX}?v@(%NBpV7;7e!nnzNOs&bo$;!ujwzjc%y^ZrQsddiH{rWt zuQLYusiiR73VTXkASZcUQQ114@j^FnZ`du9O&fJWb<20vNJY$?@rjf@Oylv0em<1O zb1@Xt!exidcxKDW!+7Y&XC<3}n>jdxD^5!SF9QtpzdsYqJ1HVWS3Fs#dVQ1GPtAl4 z+0b9AMVA+8|BZz2o|w6OfXHOQ**jwcXf$MS1f(nmW#Ey(fFq+j*>SwAY@J#{G3LQ3 z&J7$-)5ql~=UTC%G`ZQGelTEFQ8wqib+rch}cLmi}JZdfWP} z8}bb%P4Bd3%V3Y-etC6#YFfTuQvkWbhX@BigJ|E_IyyX5Vqq2QrK8G%H3z=Aymf3OC9&c55c(%!*UT^rh ztpj{%k;36J+7BO(S)0zli2%GZ<>dI_q53g%%n5fGvBSKMx!EY6k6F=SVjMI4@e}zM z1o412{AUQlMF>JB{7*eS^Kk-Yba;8f4yRx+;p1?o70x;=DHaNZ`Zr?QiHwI z@7icLZzG#c>SV4;=6rdiaQyb;JI%L2y~82EC-k`F;MD`xS`|kiB5!K5`66igH*DH| zc*86mTf|+N)^Wzk$Q@s{e$#!u>%p6SH=CsQEwaKROw)0-#Rm4=aP0XAhHYWt|8vf9 zyTe&x3}TW4u>rra0m~N|&V!o^SO)TGT?5m3H{pvo#(YNC_Ckt}u)lpR z{qTfb;aegx^ke0~hSv?pHU(Y3F~4Q}O!J`ctx2E25zD~b`YxKF1u+MAe$5{- zt6eH{Va`s@%5RLy(!+c_DPAIDA=podOJHCqt31l zRAwE0PY+MVb_guIeekk)xvnzv{nkRgiZ1r9LlHOo59;}Uz#if01CKhZy}oFWztYD~ zO2$83Q2&0u_|zU-aUL)KTRAsRk0*}K)k&4|nEaPRWSyv*t#vCU6T=*CyKA~G9=~<3 zt*0@7mYgP{mnp7wszKVJfytpx)O?0@|M7IhDzVS8f6 zhg%+e(F=c)hV1RZhic;=lZAU^lOyVp#HfMm!{qHOngowGpELC*~zDG@_ReMMdSJvN>g zy>Rp_F)wM``_9g%k?|0omln=KF(DI66E#cu|MBOH$rLaZiqDov7A*JN8{@g86bDnR zd)0Yw0uFtSCU>6eq&H+$eC%C(+DflWN?^o@o_x|7Twviy43ZQ3%c^J8|SdqRAf~KiBMfnD}^S#r)GAfv|Iu zk;gM7gf!)#x2z8}LHw4yGd~ayJZJW>ny+eY{VdkHC#7I_+l(+NQEhUUR7u+8{eYgm z#_zTiy5uCRg3`uW&!#C2rzWx(KFN|ny68Q>l~1f0_M?a)mdiZRssCeyzG?{hH0vop z#jJLJzv-@=FWH(+Y*n|by$wgc^mD(c`)cA{RJdsRYieKdrL7X*_FJ@Zk8K{84i~vm ze)!m~i=Nn~$*U``Bw7}h^8#rw2kR51ww ziopQKR>T+hD$>yc^DqJf*-7r?iKLV|Lkdbk@p*%sE${sk=<^upZ1bzcrxi?Gx*a%(0*-B3bgp>>Hndj_4&<_dNfVh1=Cia+&1#My6(aiK=4^)^#6t zWHk|#a6!wqC0>%FU6)K_tbL}R@|k}0DytOIPKcT+$mMnPd!?1v6VPn*bXS=7FHt)% z{-rO0(Z0A0j72dOB;ILQWjm*-J z#PyGrGs8CqN;tkRDTL9NhX!D{>70R99(+v(JXFP#llC^d^D2@awA(1PdG#Kf@&_bD ztc+HELJ$W@`cewmOrJrPPyIgp)2apCU|L%r2==VL~;~;e)+sNEgK@YJh&5M)h4P?Q+J+5?&nu?z z5A?9cv@=te1y9!wkLsJ2zA?OWM$Ong>)w|a&393anVN$-2ROv#TezxAQd5alOh2GhIk&R!*MmqoTD{TF3^NHy?M*xG z)lc~tbxOkgM6cZWO|EDL7b9PMY+Cn`;ulP*av#q|Gc05^;9?&A81;Jb;G}&~9%tN= z!nq5DA(4__<68o%uhpx(kb0HaxBYSUos|s-c9s{~9=KQ>623S;_L{tJkDvAC#-Zxh zdbqECxL^M{4F;n*20ZZngokejcti&$5KDD*7jke`y7Z)5!P&2t8%qqc4qCo^w%1=_ zURx&8>yk-^R4e&b>t;dYtAX0T>~{*#U+u)ns;0^28jsquzru+&#eFE2x}A8{AH$k* zaJc!|>CunTN*27<>0!v#9%o$9;wD)KUN7=CZZ4)+u{S<(-Ki$CXYZ6`=KQR>NM^sQ z<#1<6{KfX4y={@_*(3E2M!wAOKk$ss&q$x?LP#02m&N0s*Ax$Y;y+dOz3k**VBs(A zyaC6~>}#XTt|?9o8Cy%Q%ZN2zO=-BGTi~fN7Mh{f@eF@^N3LHYWBy@T#T^;1N149# zc*u1d2Dm*xP0PQid5klV?^Lg=o69HOcCxy~j9=s)-{%t8z6DOAx>l9G5WNjYbnTpy zusoOeJBJabqiT~K49op|MNJu(inehpeZBCqbk4jd^|sun+2t|ftn;(C*_r{M>-)tQ z9!=Q-(dm9eam&~1?+Z7I61T3B(&v+Ib_YBy=GpjQ?+w0%tVfMT{>mL0F5Bwm~lj9(zT<4=e$R% ztnaJ5cyRmSj%(Zuc`6^Xhs0NxJn56qJ#^~seKRX}zeW7Zg!$n?yWydQq{$=gw?-G9 z&Nn?BX3Fp@i{cr9k5vl=oSX17%G}+mT+yg_Ag)VUrrWNnc;rk?Qhn5cLS}!lcah{5 z(ach|>2<83TYj+ymuT;mj8c^@?sNFE|NJp*!uc&mmwri|+&weAG_2IRaMoJOzN@9_ z4v*1C&43G|W;*pdOAa}T#uayAJ(Kvl|BDKs)s#9|cHYHuTg7{`Y^kriB5l7PljhwN z-AMKp72>`rYEd5~@Os1d*G0z@UGHgOXb|n}Pc?c&Y~gsCS4yjkD%b;&XF@OdCu+vu zH8-rE9{CcfCUI@ED&5X3JLiy{i#V=f-rnGSEj~>=8lS{K*dv++Mlh|y#8a)6z@)kH zAB1C>q|z0l1wh9ZB0T$gfu$uUW&A${oBS^F|0&oyG|2yNu&c!jnRX$J{BL|uoP~2~ zHn6|Ov>n~9r5rEf$VnZF1h|<;TYK4Nf8Kv(0ud6UY|&b0f1H(XV{C9el$idRZD+)Q zm!k9y&hF=Fue6z;q`Oy^r!?sZ6EgX>KjZtw^;uu`iTN46=l#>HFFJ*nrW^KV+Dz>) z8s9!xzS`g(*d&qVE6H^^qmjU-qF?5Abl&|_^7npO#l2I>wjo!Uhkak079B7nJw~%6 z@b)AdPqp(kCSGaK5XVLWdnPds!2B0hvbwaJX=xj7*Nqb^ns7iqMS%7*=51g#k4+LV z6Yvb!1sl8Xy4qk90nbCeR}y{xc+(Emh3_AfELEB@=M)aKbrU5Gcf@2_Jvva&c*m1z z6sH(}>jk69=sET8Tj%0EIgguV;hkE2g3n+NU|*%4i_N}i@iC3%$Q-}i(S06wG8*pb z5uW>g)d~$h=O#ec=)W)!QBvb&tTyB2w0Vb|b5GSvUShsyW9K*hhi}QFKWYnbnaj~G z&9S4VR_f<(h0lKcV59c_2Sa_IAtEW&{6i6!7B{SVP|;7RUUp-N%jHI zY!Z;+vFC)%obWc{{zUbnHojx8Xnc&U7v(M`1eJDH7imt$bqEJq=r2$odZixbIOVa7moS!mMzSf$WM+Xc{rLOSy4w05|8hL4>L!o3_g z?#u7+-F#2Ak?pQ~nqP}W;*X~3H=cU-;!eO}Yn-#Fx2am_mG5l3T*}@fp>>;82j9iM z|?fj8=a+j`!>3^*6|fx+SYB2kL_2|W9uDB zdhyVb@3e%s?!D1V$4l?crarsXI#JtPXH}`|!Tbdrsrb2?P-0zoogVXzat#Q`7C`qr z&xL2DXDk^n^Js$u3cf*)A8$hrOVRd*!$@~QwL!wOFR6mQyg21vROQuiOkq>*O5ydcjHYj&)ywoZWvqYtP6OKMdDGW|h@KH)XH1aY$8s*1R4gr}_Q_Y|= zoSt0acym{a*c8@9U?}gpASMzX@%mnt?w8$h%Eb|@rh6|m1`o40O@;)ue-c_Op2BR3 zzg^F!ZaI$}?$Fh&eZu`kU*hWC`}?gz8|6pas!!H^t4fi*b5pwb9e?l>LVicE*6GFs zVWTKgQ0?;-hNU2{m5ataaV}RJZj6S-zf$awnH%F8%1rLAU~Z|$G+0ay{CAAEDD%n* zm*jKtx7CU&Uw!9hy!W3{7oW$>%MaP3yJr z4?atm3Qs>5su8bbGP=jZVX_FE4LwZ#iy%Y{Y?n z!O7_yhwJEmrmsTV)M5=tF&h~-p3E03f3_nuqOIyGhM!-~bf3MXss{VH2@lMI73o2R zt?X!plg@aJ@IFN^dxih{MLXV*Qze+xiQ`49G6I$-Go(iwrw%NE2~jEnO}$vSj=OFNSG%$q?sT6Q9xe}Ny|`aH z6~RXrQhQM{C8=U6#>kh$I3|Ve0PcCd_<|0qixY17!T+fmD7rhvZ1dbiC=Q%smfbUX)~rtKOS{Kj8$2!O zEAc)MS6<{YdA>O{^wHPG=s2=e#R-%ta$KRKq9>At+;h&nLM5PU4aP=;KCIi2}U zV^6YhZGNnRthrm0DmFX}xY60>*l|a#lp8bdH=uhj=py)-@NmJwRz*zEu$XR-k4M(# zw_ije8R9J36pfQwn&2yMrt9+qy9fhGeIg0%4OIr+Ik@|Yvimr%HJsIT-ZpeB>D|U> zd(yr49Xga9>&h4&Q63|IBGsCcZ1SlVSl!=JQ^|Vq=F!^Er|N$d`y{_EIan&19BDnC z+~XNeSK%JbZr@Z(XXerH!~%DhbM%B!x&g-m-%wEfw|gTIriCF_qO9k?Yo*4^H!wbn z6ljQ(c3p~%vrA|mF9nTu%4R2Sed239SeS9ltFC4!`Bt!12vqi zUBwU{A+`>!U3ifXs{Fy zJ)PW)qXhVsc9c+V>J7uK_ER0`F((mNEWif? z$_&^kN1bHAQ>*TSU^?4M%YnXA#tM>1lx85FU(|njpN=qtS zK6bEUrL{43bC2z&&wLBYJSA5ytE3Xg(gqKjO#MvqupB>p%E1H|mg(wnP+#>-O1Neh z_R`TV{)I2&_hl>3YU4-kDdBq4IE*#VZ1I+WyoH9bTB{tdkY6pnpLs8au@s1jqnB7* zfucX%x+6hyQu6xEqa251S>dY;yQKH_**~p!+8RgWeOqMg4!U`Siw`WT=l#6=YstS$ z;+VsV@Wz}6TfR!td^6No;8n43WctJqkb~T1S3i57wmW&jx7jp`Jq~kSOM2|b1w$*V zaQH?GVAnaFkS#d=Sh{Y;af?mpqLZjQyXm=uXH2+NK90NG7dzUsvqSK5W93EeoWQ_+ z=0zz@HWi11jvc+|cUQ|}Dz+rE=<||t#ih%JUPYT1ZdUG$w!2^bApa2I*>khrVzqj~!#4m;bPu$BHh9Do` zl|W)OuWo^%wI?#^lym!aq5IFV;CchYsuATXt?y(Tr76eqlc9@8bfs0T`~AU5fwpD1ix?N#tz>f5 zt@^;BmHzsOs$u=E|9QS3Jv)Em6*ScgXs6N|rVEZp{5`}YpGS8Iwee>rXW3DU9g;a& zENHcL4f_)UpHDb7MyOXf74~yZ4_vY`e;Unwyk%kKUA4*4+{o7zPE#{a%KpPw%8se{ zIu$%2^wHQ=?3v0A*0(*K5WDH_5qXRF{IgaLN#Auk_gbC5aue{1aP0`)yLI<+h^X3N zJLj1Nfzqd*PsXnu-Ty3gn~m~)jw;#vAv~fT8K<(Yf(^H@v!5&|UI&$0X0FrwXJ~_LhG!gUx_NaQM5MPz25f1q z*}rewub#oW? zlhTF-!hi>jkuOJLPmgQ;JTUdW4N0zro@B|J3NCO8?)CcEl~#dmWq`3;MP*XF=S& zfAi*{ml_F$;UOW@$tL(?9OBuU|8vfkgvjq`fmSPHz{{I727jHKa_YEDgs+CwhFJuM zAK)WUESMy1$Y#fIDL zox{OV)?%G@_nWHs+I6Rr{n*s?0_JvzGV;Fj%q4K~%&f?7{_)B+XJRUME?#r^w#$&_ zr%y*pA4b|~j=6nnOclLz@pZjs{%E-q@7qPj>V_lC=LK<|#fL}H3z+XPAQeM<5Jc#+ z)1${|jO5d)b%swB;7Ldr+~bcgT#yq^NGKbQXFt^5<o z3#&S5Vg|H~50u{OG@Kdc3#rw9YhseAfpe2^2^93no4HA+9N4pS(ov7Ymh+VL=?JCw zcTU*vvYg^lE6NU;o^@|9EcoJl-7Q|3#YFt_jTG{&G7*)uNu9p*E?OnV11swK2Y725 z_l;~as)(RxeI*gNBA%7*VpdSANBi#iTMO*;-TBj2nR$gc`pp~J+cxgHZ~8dvVVfK$ zFFED4#HQ`5T?9w45i1c z5(c=;jX2idPTHlqKLb53x(}vfm~F`^+C~r=bP=ZWki%q>gP0&Jb2mZe-sPg!d_Mj3 zG*gd+A44WLp4@gnH~VOT&i=A9qtnzYU*Z|rI_dd{=*8>VymaiH=54-ab&-sZ=rn12 zG`!!P!>e=7o9b#`_U&I1wBT4~diX5W!)~SuNS&|fQYz?XG&wAzp65^opUBxey18Z{ zJ3>sTs9kjYbisicK1O%;2S1rqQa)*&ueC*{o8DSr#_slwJZrW{ud6e}6f9(R-01dk zxt?%ha$5XAU5Vqe{K@+<(y^OwH>Aln|704Tp+TEpbT!UGV%kpD?}Vn=pwL_j;>?+rp?I%UOpq3fLwdR zE(HAj!3}(3NgTlbFhK^1-n7O;1PZ(uF0gu-AcY*}1JmJzNHBPogab8CiTpt8Hi3ZH z@q@?@gm9oBh+zZUj}Ul4?jr&La|q-*5^6C=fa4LuV~h(BI!b6n{DeVyFToNVE@$Nc z``JkRK+p=RFy0JO{Rv*+CNmu;=vg50r{^lbgEKWE4xZO6AGXdU1@g!(r zN`QqYAs^ z0JX;nd|9BLGtT z3B?FJJfi4oR>zP4;S_`sEk%A%$c`YT4mRv?0MzwaV@($iUQzE^>rzDp_CT+KJTi#< z9(3TG2i*%q0Sd&>ou|SH4T!crh>Rd?1>oA0fEy{FS|Kli6+FaQFy`Q3}_>p1!eSSzGP(rS7M>% z!@bM|gk>+7K1;A)W5xp82m%g>@57Mrf8tJl>QeVIS%(w&2oD5);UG zgr2Q?7TS3UIGiOU!*M-zmXLx;0FiM7GR6#G;^8Ql*uN&v3moEMP*fn22*?y9qmc(1 zKm-$g%)Hcq^z8uE0P{-t)b3OwK>(PZga%9;1gVLHM5NYsO$rZk4?(cYlAzgjc570M zz~>z7w#Gv!Y?L8L0-pBp?E?{55--p!hRO=;*OV}T5>ou*+PIu89%X z%484+Cu(ctone=MPKVamIiuFZWIiM@g4_&(EMn(EW$_87BLLg;un7lU|FGb}#!N`C zJBBJ(2H}|mRm8yUw}Fr0DLuml2qGHQ5kq%WC>jir=}3U_0+cfISYu=Z30bhElxVZp zlgcRI2?tP87HrZ1uQf(GQ1%gqgWcH#8Mr6smrZzp*!WOObK`LA;B*dDGjtKwXX^_v zR|u&fA_vB+qkdE#ho>;G5idg?mrIbx{W!{#4pu)ytRPti@jpRjH1~&{cIgTn6_+RA z*bd9QLU@M6`L7i+0Ebi1b?kFt^Uj?@wZyMcU`L}-69iDX1)E@83zK3pwiO66cW%XflZ*etR8ud zkpw172!ddum>`0fM^JSul)!Nd<$1x4Yf$ajU$Po5qj|B6r;l#uH&C|MZ{)4~Z>>olB`3ngKdvNxc}gG4lndV;ci92VTV0sApG zi3X9A#7qx36-Mt98RKohhUYIT=T_s6t^fqx(SDEXdQ%;(mTziYv8f1l}RBTH&E{T z$jh7SiaXwum@{i(zfz`f z*025G2RR?!3aFiXb;q?;jmsSO>%E}&xy)?mg0d$SuQr+2I)AD)CWN?Z#hZ|z*Cn=}QJ z_bsiE{H+VM<9Ces`3j<1)(YYK@@gITx9>PkaJUU}$G`dAl1)S*5Xwd*f!ZYKc)Z|tu3=F%|ntmCG{OOAJIWwIa~OJV?o>VMqWcD z7VlBU-;~26uwIVG5GU&o|9D5*2n7Y8$&4j|7jGc6O&?H-BK6e$R4o+Q)eWH)__&U2 zvPj|vW!;cF`V%#L8}`6(;Q1M?(k`)niZ1^SfT&)AEJhfV^%Bk@ zb7R!Sro%Ex7-(t3kxt2U-i%X66`m7*$zlmWvTq*@oE=|K4K`rB9|rH-uWO<#pyL}% zjN{)zb3?wNqGTZWi-ZO01F+uX6KHFqfWR*jJxYOf3_`fQCV!6yE+*(>Q!o?M8X{o9 zEYsXaEl1mn(SW(bSz2WaE) z5?c2iF#LMQC}B@}E-gLq zA;51?{P+s1rN#cCGJ}wBFgMVrM+pX?Y%75tI4DA813c)sUVy2S+(sgvWcCm2&wjHH zp`1Zzj*u|{$B#V&s%0PW(ZOOt*dioP^1!9N_#||YX-b(jNb!W8Du{zwSq)EqDkD~w`7+2OS$57>tt zc&Joi1tx3aGqB7KzgET!%4VRE{LH^8aCJvzEF>W7S99-~LF6nU4ap&(jLx8g2fi_y z(!#9oP@@TvN_N-|aTJ_`IKrg@Wc0~oB`|=Ft+4vmIoK&RYg7VI*vEtgax1X>Z^vZM zLrc?GP|?737BR8GUNwY>BYLc8S@=4OE+G)d#RVv*!A_|XT(+WOEQ9Ri0E#xmlORGA zHfxZE$WMy+r?Vz0<-wqJ31Se!1u#Dd*D&&#KVan!qcm8cX#|@nzYNV0-iQ_+2kpxQ zRbaae(>QZ_=-hcfq49k@XuZyv$}D))9vNhC6Y9)v=?WRJKl%Rj=P)bGlPT$YIq%REs8%6t-{SWxZAW!a0gmgTGlnh zdC#ANo_<6CReu6*+`yL`{$F4xMg3EWrXb25x(@%(7$Og{NFhi43q23=NSLa;O$1^L zJ)0j;I`Qdd@Xm%9xCXrp5+s6B!cnkA0NP@NQH&}|SqV89Laa6Eh%!jsZ}Ko5Q46^% z{=4nyQsoMkxCL_@2w|Zbh`$OFD2bL*r<^5v;ud5`3hfJB5FrC$|KoQgkj4NFaFbpu zwRv>cX$pfOP`J%V4=yr65kGlU#1QNZh5aXhhsH80pcG3WuLv7VUW7xG z5*UiPp?ndg%mxNLg!pev;6aoWQ8^p%h#9KwRRr35h;CGanI@ru6x_iy5T0L7o6lJ7GTKX zWP$2zw^PaHYeA$Ek}*j@k%f2!)T&So{2kZ~SfPZa3L4R2>WD@YI6g!WNmVMv{0bcL zFjJC3?*FEgZDZjCrd+UV6x0#gbsJ3%YE+RwvFCSe?qG*?lYj*~(UmeX?KvRYk~`2Q zdIP~oCTu1rBp^FcLI7G7FDdMwVQ`*ObPb~pIyi~PGF72_8wtzn|8M{n zB19vgWe8J_lzsnrzJ@4lHupYM?;#Lj13g8454CII{;DWcIsCVbM1lXGx&4X#?F<$F*HH!8mcBM-DCh-QEt2WJ&EN!Yw+R6;}* z7AC=x(5GhiQ)RUD;HS?tJz(ylB?Zal2dHH8Son%aiYF{c!4~SmZB?{}+(?LuoiwcT z!(R&YNn>aaoC#S0jSRGP)|T2AaE%I+3zI*#qP-6IWQhAgM-~%ox-6_u`w*2Co`B%M z&POon^r7LU*#4ie)c2Q*1SpOtBM0kQvPXrLfq66|4qWzuHYCeIo#ziz$&~FU;RWcX zILCj~X*jIO(E)RF*uEZC7-q6)p|dvsE+bum`RtfHj7QRrRBlLN1BVr01$Tc_G%cX$ z3zXt;1m%$h-8_HB^A1JWzz;`JvN(uPBx)dEozNd*V8R)C$5%zDImelj@xr@Kgte@d z^&h`A`p0j%UH%lRUN%p^i^8FU4IUK_6y1P04&>x_K1Zi z@Y_aoMwUHML-&A)Q}71V#g{NakpB#QsMU)?&h$a}!HezC{5)?oSqlcf%5Y-O@}VXR z@CST@;o1`7yf1aeGB1bV&#Mq+Fc*QN3ek`fYzB`b%pg`3s``4I8e$?2vTOlzYS8Z9 z6DZ|(th!vq#07>?a{I}3A?y#CAC#%X1~&Nr70JBE#D_}!E~-2ASL{y_0|?=Oft!5? zgy3NS3V|$GeTQWR?mJ*bv_XIIYTrRrMXKN~@;0Ip*twIagqVb&So}V9NDf8Vz}ubB z4AIcF>?X4g4v{mOP!mVk?;%+aqd!rLD2t5zrSMVqA~H*9)=!Xk!`DVD50KYJV?KFJ z2OBVpVxtFb+EBGu#2TYGx~%4<0$~`5f*uW0p2G#KfDUBb6Gf$T=n$2WJut&SQ*yOd zCIWRur+E;t)H{28#b6|UCcLJvxvMk$XF!!xM#1B@}y+Cz*1lP{rZlpVtV^dNQ_ zXHj6bg2c0MC+VjigdBcBj)3^b18oCh1>&86w((GAFBDSkMzeuFI7~qz)tNB#l3>*k zwlFY>x>oc}ff35w7%opK$E`=t{q0j=mr5;@Ld=q>_zR{XykNi>LNAy??JxA+p{WUR z8#0`Nb~$A(<^>huuwu%lZb%xH4Ci7_5PlxcXpc>ycyKzEENBfECk`K=yZM;GR{3U7 z0j5OeDId6UT{VNDz!L5&qn_V(oP`n8nnOl|Osf0;q3{EHG?Cv0sEmAj;Sf=~K;?ly z*ui}(=zEnH|A}kcv({=O0;hdMMdZ-Mwd`sWFy^L*Z;nB?t|)t#_Bm^oNP}TZ*a*8z z6bv&1Sh%Q5dCIxH#pN~AOp!fT)`T{KvU#SBs3hEJ(T7jT#8(h;h!Na~wjtg`H1p8L z-bR$KQhV1km<30LacVy_%r~FfUCbi%%pm9htlYMM+Ec^XY-}h69xWBf{e@5eJt^_>?FtCNV=l!L~0{kgx8|6gF=o(eZ;Rbx^pS%=35hU5cI`);Uk(q(P zAt-NgeT{<4w1?epQ%dy=m`AVxtrrLm@Ej(JoIeMBPW}cpl;*1AIY2uDo(KdFL#6XK z(1tt0g*+Z+HjXf04llrLg0iVUa`U%W`oOfn%YnER>AXcXQ^AU!gi?s$kr@HU`}Zq} z8#Y+~6O^BnQEMeT5-pJ2yVM_l9+43M(nnxStO73`iQ=G^MBE7!ROsMbt_n>KISN6f z?3m;}Sl0|eCn6W1Y)9rs!(Nj+MZh6R52>vpIT5vykVn)?C{Gn!aDoA6d_4v43k%e^bAbS#tXo&L79SpN5=F1S`r!t&ong}z9Ox|orP#xj$h!V3 zRK?CPzaDgjUE}a{T@5}4^mO3xF(NDP+EOq~4wGtJM}|*L z&;u(sXyoeukV&A|4RVh>`^!yvY{1+dwx#^}KU8=!EeTJJDfa~Yn%4XQZYo;A#bbvj z>j60F}_I1SqhahnBzEIicj&*f}`oYX)$QRD^T`$*hll_SD$dgX0 zu@tZ4&0ygMZ{S`#U_TC{_d?gdWlTW6f{j37;QjkmtPLA9|8eRquTd!vq^oz`XhXkk z142%~mR;?mDup9$6G~wPS%d#Xy6}D~L%RlK@Hq)ZX5XTk!a?pk_&qauf9QF01L*7% zwMM~GV5!*Qsa~PDd@v_LsZlzPr+#}es~QBdXV5lj{~^@u%eUis3DnTfX4#U zKrjTLs_;DSCzL(&p(o`_4sOl57 zWfmc@WhY0e%6^5wRKjbFssjFy20!NE4Gs5kDvod$gaCBIpaX3CLT&wU7|{rk{fb6y zS9q#S+(B_tj3}56ggbHSP4C_Ed{o(5eLds;mnq@h`_S}5)A_o2*I-g z)ifweY3XAol%W!-!T-xh0P*R6GO&DRwCofhg~KP8hEY*8O2R8xWvS3Mis~!XEKES| z|FCtP0Z|=YJ6w9*ySu0~1uUqDh(=>Wz^+)p#NNQ(6*a~#sIfN`<=Dk&>=9yOZ`cyM z7-Mf(V~3bx?B8={cJJ=>d;f@g+RU6e(`TN$5Gjr^u<&4NzDrUpXXCxFt;3!uG&>fj zu^nJqRAXx+88>4qEqyoU7G9aqFKyB&?zE|hqX)&Wz^qoBq`fuKojrz5lv>o$pU(PW z)t|Kw4ioWm+e~%0V2`o*RrFmrh>B2d`f8S3Dd8H{meUtwkod8PW<-!ZY5EP+o0uA= z7nMfxmSCzfub9ko+-$E(bbASkofU$fdVwFEUu#ID+*}0YttA)$BI8hDJ*d?ZG{+$1 z3~^UksSzL@8ux<|LIak=Uadg3*N|{VXwF=L<~SorCXlwsOQrFLjJ|f$pXMbrUR6q6 ziQ=>lmXw^QDB#D##^QW;6ceHln^nqPg^pl7&aCI7t4KNPTAE^3Bj4f(eQik^`U@&1 zx3Zf%rJZ&4WghO=mD2Qaaq6rq`nY4pASz&9X6gUIGf>8Nm_AG`V`naIjiISBJ4{j% z9+-ou$Xe*fmt$9bNzWf3%Vl0;5D=3Vam_2JJo9ENFT~$Ybn_~@=dsg}TXA9SSU62w zXXs4Ho4uUrt93B8xB^oaC@B$kjy-deJN5NwpIDlHk49j9TZJ9G4QMs7k=$w;@;f9P z{cNz-;b)a(!5|$#uXlm`x;fhAd2G6{bnNGVYJ0m2L7M1_8lNA<(%lK3FG3wQAunSp zb7*yQ^i)hCDYHm8Ya)U5Y0Z2+keKyQ(bOfhN>&bf+_0 zkU(585;$8;h9tBwBPuX^(u3`A)-N?3?XM4Prq!DbHArl0+$u1;(ZH?9N?uJFp^H%-X(a;GQR@XOIp$N^O3xpxV*qTLYxyza9Y)(xZE zzhfv6=gQ}EFkh%1tC53cpO^R}8o(NwpM!+*+Bkke!AHF?_2xrj(aI;)V-56Buh3a{ z*oJIC|45>dO@NPEbAKf$mLkpPq z57xn_e}=(}jikZ+1V_I`2iLG=u;APX<(noVj53=$hEdC% zIJ?W*fuVg(Q>Nmm*wM|On(u_%`FPE65GC!xd`%eL)J!v~(q;r!<}D23!84UFj?it#(|HNZTBU4Hlp?XM z9gEsJK26SHIn~{R0IhQqeLGtqUZFWmqBw3ekU z^mX&3nFmnX*fz2Ns239z-bH^u>mVYrYzIgClSQw#T%d21`)#Rmt|6KZ`nma#V=nZ& zc3{d7<)HZ6kZ#>Kn&}O5CUs&RjFkW406qDTp{fHe=j0lyhyg9{0V3?uA%uZX7a?Y) z7Nf+&P>$#-l&>B}qkGd;X0-63u?*Eeh`Qz=R4yfHf^PKgh@lP^Rt|>|mMP&% zQ)#7w8JJqOvyeiPaU%`nT#AEv)Dm-Oyr*t=8KN@?S$%EO|eMmiFXsBclVXcuA za>8KD{1qdZSSODkDn-z5tCa2G>n~UO!F<0mb(l;Cop&hh`xRGc#16~k;g$+KWoV>~ z`&tfO$jr@E0CjyDzY_69$~p$~=rjxIIl4bG{?f}qr$ zEXy#Vm@j5Ymm#u_hF(NVjq}H~<>MeIqouBONjRnUjr>EJ;T)K)0_tNRoM8Y-v_;S-)4rQE>UVZ&@Yl@*=cjO1|>c~6@o-7l7bo{9-QD3h1W zvm?J-;OIw&Td0Vf`NC%cklQxWs%L3>Wh7ZllOtD4mHe9CKD6Nh5-<0iCKy619~jD!upPEW zlCvJ+n$yRJh8V?vt?X*@$DorfSdY}ET*ZVoDgsgY+@5!^oUaGfcm&(WznAlYgjl{S z&%>zbAb!L~8c%Ucgd;eYJ%-><>owaZs`LbuSsSG4IfDr!1ycrZlv#(DJSgocC_QoQ zK=|gF;Y+3KX30*-hO?7~B4^_EP>(GZnF2!;zd|V`cjX5Dph^2uTmg>Go)1H}z}L2w zueWL{J(aX<{vqzNm7;?MNOi=|OtEa3KaKMBp~OOv=)wbotqloC8%pb%La%#cl%F{1x^CM z&DcBBjET-6Xpb&20n@7!;`dWQd$kn*zW{eJ#rFv-oJ>W#6hze(-~UMp2VY?v2*#$I zr4XJ3N_F`HqU1rj!g#R)69P<|Bb2`naf(5 z9{&bwY}{D2^?uQBF;jehMAk-Hv~LkQ{uWv%juw0ucthL0R z`pVOSmw6EtEU02I%sivz#v&}5?!2>hhHyn8UYT*us$PMjoUrL9)<;wFEb2}WnRH&u zrXS^oBWJlzI1Xw5o0eA}rr1r@ieF$28F|@_Fo(dIMu|)p9D^voOItV~RcS(m$)Bee z5z1W)S*>XDBX?I&e!OUx=t5Vuk}~;{mYyrQxT>M@9IpFiJ3+i>b>;~(9&%lg(ttzt zq9r|16V=>R)Wj8P<*p7@%-2}U(lZyjs|}QT*O^m=y39bYmO22V>I4t9v_n0r>!wCh zNM*e0LQ65xdkTIi@PJQpgsjZ=`V-l`Y9_u@07d^-zqe?T zRZGheBH+1H!6TDU@+$@v+c|8|3ya=1?{HF!sa2Jd1)8)!<^GM4DcukL5SK!O3+<$> zJe;xpsd*1uYyN6ACHN%^3daR#Ml8?Ep8CUaf4!9c$WfedQl_OMy2Z%kR~{wH#DtUPa~hKTz@~a~aZKk%R zxYOQFl;natY}sMRXV!Ea6Fs?%!@Z?WbZ6 zDCQt}9!{R*H5tRbxasz=EL!S&7f!M)e}fsb(sF8DWtgj-xtm_de5dkAT&$OyxoPJ7 zsAYMzreb#2q`m1`dHDB{yOc>hgXkR?4$2k}P9qFGuo|mW@Md-|6)!7c6ZSRn&^BJm`kbW?nzrC)L1M`Csshg z(l2?}r}h<9+{q}yRvJ6m!V2QPIz@v4R0p4Mk4BK`bnNz z2{DlEul*=N<%8i%=&N+M5(L8o?RfXAsev>;3S`_jgLt5*D%2fY)33 z6STw1IN7hsON2;)oKW{jy4)Ji728#TosFTAoLd@?%`aDhCEP(0g#o23b@>^Bb3TV) z>(Une@=oCtnT7=RgzFO6Rz?%RFjN7B=-eMtzgC5^e_6p>;OR?ss;MzbgK|TwbFTqb0YosGRl%JX^g2JAVl6i*hnibae>s!u`!AYBwrusv0P!iX^M_raF?r zZXQ}dFH-TcoaR=8!=q~=3+~l)8Fc_OO&PTxrB%b1;2;pLoT@DJG78I@(aFLGn?DyK zc=q6)QBcly7LrJ>CSx$|3wNx7YO9e-gX%1c>!~j=V~J~u!Fo?^2==ML;oE^K zMI$ul)f8H|22_kD^e|!XD;j>i84bDHwPc<{dZLYwuLFbMM{9{wa14gwp)t1XeXQ?f zrotFxx@??HEW4poai*%YHx@Q8*VRI{DD9kyO^L>FAXls}$hZ~jOZ(%{AeT4LvTn@m zi%CqEx=4RpLracYyJIv?z)X2oeONA64<`0B7Ku`NLpa37yT`m!P1$^^Mh;hA;@Y64 zu7Wi(rmSD->Z5o|yYvbM;vHW9M(~bjL)iQ-K}#=DsfZ~CCt#I{RE~UUmw=V*OVt}g zwR3CDY&ptrjDo#wqZ#w3#HMN~+SFN>lkeKGxqV8T4w~7{ibp4|$Ye@OMvq!>+Njd$ zc$gp8*;b`d%}~eZy09E6Et7N%SBf2mBE4USTG-i3mt1zTjHPpmPX&6>T&?1eNh!_L zju{`D_|S|N2>7uA+YX)|Tkp0iJZA z6Fl~9XXuxis-+4%)$Ir@=Pn>On8xm1q0E@h>@X7hDMO}U)cVjxjdWN|e|AzEi{`>LgPC|dQK=WQ@_dO*D!rH5L20?nP9}8;Qn}U}m?|e% zI~nZe1&5YPm5@lEl9bRJEv*3mDC$bi-8hPygPDDuzR2{dK1lbcRa(X{gSPMxZ>u$O zDQB5jQt~+e#kWo4 z4H%r4VEQdel=C%gbU(?hvL&g@6<0cQ4mpk*fr?vpn){(PWLRdEzB~fb2hXyz8Fgmb_p#-6#W{rx?GTIVhh3N2Bs$YSI{mJ4!}1fM?zrZ z@3Ornt}umApVjCxz8D2^r%N<(s#-In@EX>3qtrNM;$=agycofw#zXg;taw;idy6A@5Dk8a_-WrC z@w0dwlAeIOH#|2;n``o>#P8q*!D}*J#8%u`by`NkeQ$a+9ieKN0EKt=WJVT0b}A+Z zl`BkM@<94Nd9A4qg&aZ2=B0uhfrqPFm53YpaWC8hDLf60ebi$;FOoVP#*L@>*3{Y2#gC zUV5SQ9xga~Q@$4-t5*6JbG*2h?D&|B1Mj>k_gi>*++UiPJt*!C-c>c5qWT6EtrC8} z1Fm&<{hFcXq~DC9dqu} zU>Br~(Cnns3c_R4sp>SP#TyyGNz>GJ3Z9sXXijL1AOX@;5h_0&W$1#n?O1gZ-JY)2 zRt|rZA(#fZZ_1v5dKl?I6Mq96h*LmgZ~@!{$i6glCfpS1Nb^@CJd!;i%}gHqw#lP4oX=YY4* zoq2;Z%QzIJ4s#G><>!K$;7OtDG1;@?P{k>qd+RCQbkKx-Ix*RvIS(qYd_ENb4wZpt zoWAsP5oh}~*j81F;sIx6dXbI^-=Fm7T%NiuP%Ba9e3Y`Luceg!9%hPNfce**BASwb zngTk<-!Sc$frgSwq4UwSvNF(g|L~KJKp#+sRuw@&c3z0=O$uN#CL+5r2Pq7OfA-GA z!2ghWwSuGy;HD~&y2s>1FaG5USOnAe=uQUIa+^DUL1}xj(^p`EfrLz`O$i3Jr#gXw zsVb2lK{$dO7TF0KDVNk*%EOXU4!Be$WQ}cE4E6P;Wf4&;2C5K_e?+acTLNBY81shO zk#|>wx5Ix@J(Qoy$=r$?a8`^eBaPdPD!m@5bM(dXG6^eW6&`UeL%BM zRt6SC)J9l1QAKCrNJW{E3Cq(pOD0&4fDV4PZ0_cww*eu&sMWf)nXC-9D zRn;f~lzqg6v%gg!mjV*kYV`a%Fso=~b9E^VuauS!`8r0Iqro*0 zbou%GR|?u_CFQfv#_8JW#As;`F7PI=wJMrQyoXz@R-{VJkWIgJ@Xvg_bYn{PNlYL8Iw2kxuYqZ$ZbrWSDXkkGfPKh83jMoiYTX_7)6i^)MD=uT zDR-mVZG)5ABx_Fcrov0;Z&p=C{RaF5-e285&7i>jO6vps8|-I=D@A%p@27Qk2%(Ve zsH>qrL+>Rpvv?4J;{^;DZZ~en&~v%BG$&?60R8gIbn&%xZ&$ZNEv2utmeT={asv2k z<_@%Cul{yw0RAc>d(v7vq4MnjR>5)dPK;)bgJj=^AEC5m7uZti^)}#BVS9wm6ZgRz z#lDd;zyT}D6qQQvhw8AAoPUA+_baM$j)upm%ZVr+Ob(V48pR zZ#ZqiKfeK7P^tvv_ z=Fz8NvgcAx1XIsV@Q#gFYqhSt0n6XriM2)sQ2Uq^Rnt9#CT@e6-dCHkcnspUmbJhsZD5B!9-|Ll9rl*(U%{?=^P z7cgO%0A7ONlN?q>Z}1LB*LgpoM9I5Q|JPfi{xdE^W#u+*_^A>$>=S{}yLImE@Uv#C z7@fF^O#5Ah1)m+7g`!N3R8H@d*#Lr=FO9i|^}y{6_buZvS`WtbUXS+GaW~6igYKHz zT&cB}fAnGSuo84V7oGmj>queOekN-OVu5r!*Qh%EoO`wwt_i6{mFl^g4HM zA*OVroIRK_&b^7s`fymI;92Jp4_DgyJxb8`7VQ6otxAh@X@(8MM2-DZ{x;f2d2+ak zIzD+@t)VRZRmz1N_ozghCm?$p@}Yk7g!D_4li43vdSG?H9gs(zV!upfgfMRkxQjdl zoRNa+Hb7tk87!6&tRQntxs@k5S(lvsDe?glAA27rcK;?#02mCn@UC#!KR^>*^1Gd# zl@HYrdiMa*ahIetD7BOqmsv)HD|Ys_11hJ`11}{CZ=?3rJxE~8A5ihT#&Ii^FJxvd`uz*0bfdg|P5?+K1k7vB3!DZ<0kug-&NP{gnXjxZZdw8I zIuKw@S{hJ|Q%?WG6ibg3Va6@<@DK2E;5(gL?%;)qrUyi_0Lpm>!%2T4-+`|s5BOtk z1E-mjBYsBF!%+0bx~Va4nicZq2THyu$OZd9YtVCSeu+%&z|vSV4&<>Sl;+^##>Q3Z z_7?<7ey|f5SkzpKy#I!027X3&Y8tV_{Tm(;C%QmI?7r4;b+KPjesGXdY45O%N^$da z&Afp3=UM;o!0$*C09s`sho!i1Y|K2r9One+r9&Nr%^KpFtK;Y1P;t>Mv~qmEb92O z>Q3eNBAmT`*hq8mXHcxmfoVo28f~p2FL|FthdpD zbPh%JlxU6yr#KjK6(mp!+Xe^_2S=#jVF$94O7p@{&>>DJ=mC%^$idi{vR>h!AbMI=x zw_?_j>t&2q3crx;C2NQ~?pS>8X`=Do#ztORd*=VPp)+^Wq48>SdALJY8cC0de!9cHmyRz+5Suft@49fqY^AnNpIkR7g4 zs1Is2Z6H8ulP9=XSj~*kxEISBI4nuD8oJKp7jd-O*Vu#drdXv%nLzfaC&^YAF^i>g zX7H-j*Ldi$IPF_Z9??LOL*iZhB>7>y&Iel>vcPKPMkCHiGNb>vP<}l`P2(0iLGLCk zAOOX%wObVRP_3z?0J)|FxfVleo#L4yvBctPqDZ+D(N08eb}@fCP_ZRnz*~7x9@okc zKd{a=XO_ScvlQ!#uXO3ZYrz7*lQtu@tNu{=BSBbW7%_{=qP9AfPOYRsR1d&s16mAk zq5`2e`AbR8X#!vd3xKhd1QyY~T6*u|#-4;nV8tl6 z8gjM=G$po+YzIIMvy`YyD98i5O0qx<`^2wTd+Lh3DoKha_Hx0H%~?HD5*D5%OEUUI z0YGQ5-m#BPIi$NLg{xug=h)Ive$zvcGvdDXAb^L}P`>VEB^cPPHI(mqOU00$4n=5h z6O>a_Y}+u-d|%1STkdSKbFgPw@K*Pey!5ihM8#o%{E=LM3%g0>V7A6UjRMU0c*K)1 zTdO=872pZNjQs_KWryKbZ`}h&DLI5I!GbLIiMRTPL)D+|lr>_fBLc&m+60mQ3RI=x zQ0_!DbTLa+O{xG^hhbJ07B1b;jSI&XjR5PL;esW>#>PdkbH3In0&L8K)QSkP>=8`1 zK#aZXX$^(!iZHU}8_5IMn5AOwkJDAmrjabrnz6?$jq~sEF7}%@d#G}Rv2jM?N{Qx+iYo&9d!24?~^TvM4t5+Gk(&L#YkjN~x@t(;K zCNNpxk6B8vsR~P{F$)~oG8hOKEU-*i=YOcF?ru4Nw#%C)2f2}Zn7lH zxnniBxWN=VO5O)-bD#;;P^M26WQ+>}O{<2oWtx@XNy&4pzAarHMi8c;LgLF~~xPC6W@d#tdFah`WliVW5oz^#n>=tC95`N>@a+p zgUeJ{7Zw+;5@ejc3VbjZ@(V=mkFE#Sye!#lfe&U0q5qg%;yX#U;)A(l_Qbj@cfDm? z37RwXs&hHa+&f{Z++8<&4_qTP@s;gB*>RW}z~GU!JaNS7%n6*srZ#|2a=(`pTw2Fw z;+H5w*Ui>O9@-Ep2i9o=Ei;S$Jc!O0A4;5E6fmb*GAgDb1Z>r>D zQ-i12V}Eu5q6v5PmzzTKezqjX#T#Q4d@c?$3zg}(-577|OmRt=*ox{{+6=P0fR4>G zanI(+_lck7kHUfYQnKi14>X5NxgFAtR#31SN~fKYB4Ce&u|HZsaP=-p#^$Vm1cR$u z8pD(vzA%MhL0_w^4}ij*?_<-gYTFG@ZJD?n|Wg2Y4#zj)Bj^$>HV6XGXsIu zP}BpGf_JjTWKZ)f5rWPKB^iicKsC(e9~J3wFv9WCFS;If!y)Dg#4p@y{nc9imA-_L zqlcL%0Ki-*=D3wNk9pr85j;%C@ix5@s*vZIK|`wz92n}e zw~Qy#zJk4?xO^b_xasma>OK9aHNAJte`De21>+LIX^T^W9Qqz!wFc=lN1F9@=`F-1 z2F^P^zHB5wgISu^mDaGe_=Mz%6(F#|@EUfbrxX1Ui2!Zd1_E17N`b6Ro~k5gGkN|g zNyb&AKpA*JZ9$%On#lq_tOT!iaigBeH_u42I?^0M&G+$k$nQGWe>}?qIK}CKqr3D` z2)<|S&}fqLHp>NkYB#79ePHP+x*1zK%%ej|=>M`p@cuOV znG3#W%&YcY-64lBP z;{pk+GF*G-btm-#yY>qi6#2dJ4jh1GK9bj|H+X@C8n2VG_fMHdZXfOi|00LJ#-qy3 zzop;A9Xi04`H&wkGh_Qh`^G;q!Bv;BsWJC0$Zwe3`4tyIJZK7|nQt*zEgb;zhW}W) zQKo}yWm@TvErL1&L4EaFM1feC0?*8w(gs1{3A5S)i^LKjI9?lMtm1$>QT>c~S<^L& zf}PPg#SOU%gCQFXXl`z^$+H0>k#eUV1Yp&Wi*KiL)KigZ>Ag2idqgq zZ~L7C8AqT;PiDY<0GBmYq8ue9J;m5f+3CbTu=T`yh3VyRwO@dn9ejX0++u@f{7~3$ zh)e!LYPhjFo}64Yuu zrpQ1(Gsv4xKa2yp53cHuKocw+XG~HufeSv~cwDJgivLcdl$Dsn==0{i5VO2aZ5 z*+}E3BN*RCy4vp$z6ukWCmY(C_bQ&qMgCd6&pjGBRwy0OSgRw|H7y^2YG9*8yzF5 z+hhPw3c$3usp$1))!@uFBw(ch4z3uG5X43MYg1wUMor0!^aq}XAh(|ea{1bl4Cpj> zTC*Ju{u+~UQ^S^70Hld}j8s00ky*4-e1neOc$)VPxhjPB^jEnS#!AZoQFEuCW}rzZ zbtMHLYTop|u1O6_Ubt#Af0B6W|I<#XCuM=32Ka-SXg)vJmlOe=R->=#A2eq8rO)_Q zNF#Vge<94Rp(YC$)}K@(U7BU|S2FRjv{}Y)m4}V_Z&S*hjUJ#zQ&~xf9RZw%#n2oi zw=rJxfSC?N;aWlMxp2&?=IjC7u4Bp*rUbOK(+6gnkz&$OrOW1lmy@6w31xD)(xR2r zk4ncZ&a;y)TnfI_q|F4tG;eXZLDX3%HMX_1U=!%G07*T@fR0J;im+_X z_gji&Kp?*z>t!pK@d+~yT_CDqi@c-uLqMqEA#4o*j1{D*K0$H6rd<0O?o}`iY^V#o zO+eb^_879r7^fWS!UfPZ&3cri;(6OK;>E*ZZI`{gPx#WCdfsAcFSbo zs0CBM`ygKi*`WchccF{P8-&gefNCZ>8|#Ky0H0njBd9&;E>kM(<51^QfgXz?u&5^s zSUNpGt2xuo#TcvlP`5=G1f!N<#`H&T_QGIBRs&cFzfK8T3e5(6g=x{4#xx zpyGh;9t%C`CxpcC@V|uCE`!iwz|z7UR!atX1+&X?uu9{8hPBUzzJ(RA0<4{bWjz3g zEk>C=gyk&7xVOSs-2tGaOO4~`<5-MIS^Lr1Zd#9?XzxmB`VX@i1u`2yA-D3!tOEas z;eyZmMLzU+6&4b>xB(XoqVz0dGbIpD8F(DRvj{(?RHm`3p*0-HvgoWb@&a6`WvT(# z*59E47mT7i>y1Mhsm+UWze86)2sdnbv;b6_E4i;l_mRE^>bu6uL`6&p(6++1UasW5 z7Aoh)Sz=v4Hq`TNY9xT@-$#{gIq=N#Ulm` z>%8F>LR}9aU*$JLFm8@UE=CpmpoiYP8LrBlEA>OR7{@7p&(n;>Gbo%B?O%*6i^J=t zKfp-)`BDIgaG`YS2k7r!ASpnE18n$04zbz{1Q(~=7e7WRyB7%w5v|wHm`yUUD&)Z2 z1rjVodo8+g#%z?Vr_6e}gjtrLiJXhq))7CW%qxEc?<+J_Yy79VJ9^=1F3P=Xxy{(e zb7q5l?dQKv=fyu)h?=v)#re~@OK{MFpJ27mD!UY|cyTexPgzXvO=-WG%h1!GQRHUd zalH+utlt4P1>Crzv@DUE%61qzv__N0#@z%jH@Z~GScLlR;GqHV6&5{QMCE%RMR!7F z@Oq&l+5zz5>L>-ks$e-l#nn-o;H3grd)_W%e`U>P`2&$slxVjRANSf~M=8GtbFiXY zB_(ABK>M<%cwySQ#~A4_pDOR<4(hE^i%MLDt5@trQCxr2)I*tqeV08tfA!d=S&NVh zlt=rJ=bWD;8RlwY7LHNv;6^BK+z(!-?UE| zEXv-D%Gi5ImxGMmviWbm3G`gCknNlcOAdQwDvTOOdAY`#%GrIAl9+*KGh+`KnnSTE)I2 z=m}~a<&LfogUUt7lj>PVk-H1WSOtrW&)rHgdK?hb_zh9~G4KZds+qGP%e7PjPW%tD zfqprUDWy>U=@%&PJ!xkc@N&iF>Gs%P!HYR9dHHJ$)#$_T$f9`bRP#7^Kb&Qr=oCEY z=>xMb9gIK#o?+grb9TIs8xS!qPQW?M@$N!X$^PDegPlLn?Td)b=0gkNr4(DS@#@C}THvO78j<)Q#};9ea_btZcH0T(Qc^}lgEfjK}s%m;ew<^mIN z4~5%+6~qo-Bf4Sq3wr+9>B`$6SON#Mm zYc@H6+qqNRk6uohXHodI*QJ<WIR zJed`#-1=80WN3G_x>l-N;&IQo;qEHiPu+=g%vHx8kRp_xIJ?;|Hh%+9Do-}!b{Wc0 z!F7yN^KU@e`J+@$adj(i*}b?4^3c!dyn{(d2b0fD?9*Iz*O@!yK%xGouV_vyM?Cp? zgGLu~3#IPsNR=P+41kdoL)ze@PUmhJ>nWF=J|%bcb_<}nx8ag_mrr?s%JZd4`4}$` zy6Snj)Nl(qf02(YR>8FveNsTn1D^aIICa?_2>j?l=YvcG>Gf^QF>l=kxzSyayLeIE zVx~b<=<9|TVf^T%Oi^9Y@IXB@)YO&=?qUKm=pIT{${@V4DA~6-6VOcWu_0CZNIabc zj$Tn3bRXsU(`ZLdasZr6r);RWKY+>u02Z)Ytw?%q)awC?`P?kXR^+^<4tdn=Ee(qFm0-G~@{o0{#C$cB=WwlA|d_$y+C9|A6tu{`6-dP6Jb3BZwkPB0njQke?V_ zd0{_68mH8y@HmgxoK)m7R5s$u%VQ%cF1YCO7_AE^d5x4iCD=ihn}^SU?w9=pRTvT~ zs61R$pqoPg>JwLhs#yCJW?V{1o|rvb(ev;PfNB8u66==U&p5HtECn3o|1j!{i;e-$ zLEaRmOD>$wGBu*S6t*Jj6{iU=Q1l1kG9~1qpb0%&sG!8F6XZ z!5g=^wDiq|FgY4~81+m;@UjcgA_2|OD_mr9^(c1RQRPEr$xin1tsq~k^?C{RuFq-W zOXF!}R5i&iH29XJ{J)TwV%1r3I)(g;1hf9e#={U%mb$18yI_2pKG}~W9Btc%3yE6;tiEjivdas`=yb}mPRu8 z_g}_pC-@zL)2oRLP9CUgUy)Ql+WQVUXwg&(SA35Rgr)H|xojrvZzj3nCA>YT`3D%k z*xV)(*9O3oi61bTy8QvB3@xQ_ix7ON^VUZ+n5pe_t#WXJP4_BTva>qbUMI9IkxSTy zk@k#o-+V(yok04Rnt*`YbD>{ot95r=@N^=Y?%(KGpdDG=eCf}g>cW2DMf=R_v zOe*wWp={PwIEivY5rEAOAn6T#bmgC)Br}m01WLTfyV4K(# z>F@2%(Km@ws{r)F#vAVjUQc{bhxMXXI~pj@-4sZB2BB8=omV}SHNB)B$kmj`z3l{n zwg(6%4^tH-s-Kh*lmt&uCJYcEEN+7Ue$Pas>)@;;$P0<(4`fG(J`5RQG`@=E(7IN7 zp#XmPkd2-PG(O8s#RP9CcN-!Fa=cAFm4_)ZH+T|ZU^Kp>a!GN(2ZDWu=`97wiO{vN zIu{-pu9*v<&h-HZ^w@xGc#V*Tv&Op>r*p1|>+LFRRvgL2+@rJ`ZSex1j{&gHpF&J1 z^WQ*0;P%awOhR!T%}^rj4G7;_gmHOIYRFtLT`a?0(^A3ok<||1==>CgU-EnIQ{_A1g(WSt!^`AvY#kC zK56dBo4t>rut=xy-z-jM6k`F}r4V@Ma6<3<5M1*AQdmiG#Z28PCCJn;sO-qIUVlJp z8Kg3GW~K_AA)9 z4g0SM2~3YC8+F!yUC9~7mGvCV4uAp}L;ZtITyCiw1p_A@Z2F6E*#2hVRcZ}112$96{3zW8 zOu%^M;Wo`Czy>SA5sp9WY`Rj~LG)r#6|wu@d#KWaAAdSv|Guv-=9+BR%(xQ30*eQ^ z1^nCd1!VRjKHKSJkM6J~02D!$x>iE6Wp{C|fN9CFf4P-R4IRz`A_x&2Lxw7qm_QRQB1)C^Ix!iXRqqzCd8eGLx zM`?7J`}N@z^110trSwsa9V%`;2Udm6rN=apB6w?txz0N$G=;m&EB33@NU3IOtn@x^ zC)i~%;N8+M@+7l5%Fy`>Nbfx%gCp(0gJZ=Kyyp@)Cl#*gJoOho{=zeQSST$8TGWJIqdZHdmt#~tcM{Fe zyB5ed&f8^Qy@BykY@?oM-q;ILC3zK)%1*h$-HY>eNhM#@E8~pcS9PHYwGsSD(Xh}Q zTMG3|(<$l!42ua&=6#)ouK3^!*F;=#K%!Ws!j&P{rQW<44A;l-DHlx!lt3C33)`W$ zG`|Y;KOfo5AG4pW%Xx22P^;!H6PE9l4Ch_94A-sMQBH?0fxKkjf6^CVxf9nKO9$RcDp#c{(#Js*{LnLq!UuCfr z1PNGpkxJY%DGh8uPYU@D!Lz>+%5dnpowSaJ#?ct&nign# zg0v>4){4tZDJXFKqMDlODJg$hV&o_wFF$^8^P@A-Sa!bts4K>yzsVuql&gICugr<~ zd~jAzOw0vn(x7HY=*cUVnMmiFn@Uq;b5L5nwv!I&?TbB)=4kf^-`HgWV1ky@sOc@B z;`>g^PAPdB<<%18#_#P^fG8-=I*ZVTmL`8??*~mK2w+yG+Dh@y$k+$bkZ&+r%y2i@V<{}d2!fvNO_h}2eJv8D0owILds8?*S^r~eQzu$g6&*mOD(GHXbU?ut z7n5=VG4N&wXjb*tC}nAEN67RKkd&PAPGR);8)WBxm@b1`0yO~v7U)Vpbb{WSAVId^ z1gg}(GFU1_}qw=mP1BA=IkBiC-i6Fm#{~o$iV} zjH#&0L%otLltKr(Vv6)5K-8vUohzUN2P7dVT9jc5!0|tzSFTi3b*CXoFcOvw`!B+T zv=uPWnGPl+N7zo#G_0_Jf`!i>cY~ID1sN#~w3jo2C?nru1MGK{y zJNBreu}L?t2c!dfKzcvESi(_0wucFy{i-B$4e-FG%7x0d_C_5 zWoncWa<5!Qel@d{yVf73v+LQV2vk6H8v|g~)W9x9L2f+|9yh$+%x1SR%I2;~ehwNu<$NP~qP ztnS~C0;?-p+SPST54+4=GZY2+H$m3*s-dXs&s*sQ@n-udT1Wd~FtX)KDVWe4 z9he~BV6sD`~iQpmq5`8?2=??!gp$pux?fP?FlXe{P4y=Gc?Xwc)e% zvUG4XEG_IM{S`F^ZNsq-SB(v1@X9!tNE&1EQqy%4+>wBVKow>>7=i`jppff74syM8 zas{}az(WvxXv!Q9fZH46P&x?WmgE5G%#Yu=8<`xgJQ^rmL5Zn=x(X?VcD9oP#&;64k`lVIb*NUKr2JDG$9&ec(x(bmepqxpwrlSyC_mOX`xJADg#9^=>^zpVql zFz^WJvI*tQV3y~2W(}d->Fz;vrX0xeQ$WV{gvdeRANaPbfG0dr4wI6=Svoh|12Dx@ z(@tgZL@BL?05}Aogu(cX6pVbp_5=^{Hc-MR)8PJ5fL-L8jq0ri2vEY*=_uWG>{HA( zwX_nD)(n^k!)eu?{#|5mT)Cm@Cj2gQG~$tI)Qu3SU?~Zn&|cdc&_;Zc;NjCCifD6 zfl$Nk$_1E89?Ftcjz@DoG&Tb(j(fO|(8ttDU=<4UB^E+EYaJKYf>0=ou4D4%4NSHn z6joDC;*%JtX?~SnjLt1WiPqyw7yWV25VzP=l8Wrp<@II`^DIb&A~k=4*>~F{Im(JZ zC|LWMb$^Fo3H(7p?Ym?x13Hxd$w zSPts&JgH#=9TdI)G3Kp3Pj{A^b}O|naJ^T?p;I6|T7iZX^ShPcP3mZj7^1NcTM3;S zI0;{4vLFoxu7dDQoOfFWgFu?I3SQ5{mkn4ZHp}#d5_47ifv;VURnb$ehRoh;>@|GT za2>kaArH|D?_lzP8{7^DGuB|VQv8-s6%d0P4x&WW)*uIj?+~mp9Z|gQ$dZX&snKgq zEtO0hQL{q}Q`K5>Lfig(C_Kb5G?SI&cIG|Mt0Db<>X;M!ONgOHv-fzdAib(ZcSHx=*)h2?d}h-a_SAoS1QG2V~x7b)x&=H8~jds z4gGy(O3X$asUNsrC((;ps)5{&p_d5Dfsx&S*SC;?e3FCWf8{_9d%4~GX!_Ct?{&7A z_yelt7&|b4Zf`^CwYNdBB2JnQ^3m67)ms1vUf+gP7CW#+x%WfKvQ`jn;V= zQtq|`?mTM-2#l`wxgbQo*W$E%B)aHM$M=UA}GizO*w$n zPL-n72TXI7JEd9Xd!+aut~2jD?R|Z)+5CiGPDcCpEXWdlFZQqZAFvLs#Cs zg)Aa406QonTCyTm59cv13{T)6Hh{lk6!ja7Z%X87{Yv8awH}VZ`~_r(xis+%uiY#V ze-;?OC?`yf+h2g%v#&JM{tV~mPF;RS!Jaa&PaC_Gth{jLTw6O8;Q5Iu8|LO0p%T$v zQ>jX0F2ZR;I>>SgbiSxd*#5cOkqf(D>DXDzF~DkmR)Mj230>`zzPe6*GTr$N1pqQ2 zPFlMFZ6RbkB(ZCREztft?^jJ?yK_I4DtZ<9dJ5=#OE-iIN)p}=XTHyIFDZPm&dL!W z6^MGd3OLE0*U$=M0jjU*0^`rf{g_H#*J0NI@C4jj;hKbjqK4wVc=mM^x?>+!5g>lJ zoOvD6-`s%oE&vu-q>Iqmo2aAkn;-}G*Q5m!U;y1^@)DpHoHnIp?nk9ey9LMLo3tq4 zw^l+Cd_NCjDTA$I*ok{vL{a;~ObsrKt4feW=nXDF~oHY-ZlaE+KCI zNJcmTPzW2M~xhxjW(^B!W3uo2&Ne2O-eJRgW*R`|b2WoxRPo`Co}`v`vZ ze*~LzCJL3zmFVU`jZ}sKNS}*mO{56VK~&oC7{cAAX!d<2dDs(>+f1`l0h*sl^4cxb z1x?{}Rz9Z82Ohp9fpB{F6!Wq(&(N43;-iXBO*3f4Gt53(yZ|}#Imod9#piIa!ubVI zofq)rw7Fa@!zrZ`9w7q2PmoorwM>`f1-y=DuaVLQsQIjCh4PD_b%iLw%>{OX zHY~mlf5IUfftatU=y<+V<0X{GX37xJLGCab~Hc1%1 z^*}{j9uD{J{vJa|jFJk7@!TqA(XwZ7puW zeYFqh>OE&0-T7e3Rx08{v=$=*YR^PBKB9F+Q>%CAF7q}!#L(=$K5mqJ*uz;&02Xa9 zV=rc>OapLy;SzigOCZb*j_T5g+pS3n7(Orhbu6SxDX?%HfFPX9EXCYj3EL-s2pqnd zj%M5(I-t49ECKgsx?rZ>!3nC54oZgsp07LwIfDXpKpDgbeL_eGUT3o35h@| za5k=SnFRo!WzJaZkxnK12CD$VM?>AiR|vwDJvVtO*_-kTf#>%c6bF3R&dc105^p<% zlh0qyft0O6uGbw|E)@Bq43TiNkIvy89PnatG`=SQ3c8_Zq}@9&40Qg4tZ{8?OYz9 z?0})?MEgt-ZTnUydaA&ZIY*apnpYHQdcCwuGxj&Y;{i?2Nv=o-6hrk){)+_$(#PL? zu(19Ivk{CU;mYqgD&@+wJ%APFZYNw(tW1<^Ss4}B;6ExKVVh@KOzpM_#h4Ma}qJ*)K-m)8WOUWp)R z9s9skWQO0>N10umX-$y1l5*jro@|tx6HSZ5(2LKgZa;GiN`8yS<0mJ={v#$wE7+ni z3rIa5N-qK1OB`9SC8Zhg>>Cu7B7-4#+)2|1$li0@HtTo|y+U83r~N|wrn58$WIazB z7y@%$unZ12Po|I$z;y%#HwZ$_UaEeHa?g!gg__qYH9T0jA0?MG$13wZX?02SMt&fU zzXB~Um_kayLTYI|kb6|h?4v~cFmEu!>fx}iG}4PVXwnvJJwqAPN(WVDEG5X(K&Q(< z@S2g+no7w|Mo*>$sXcUEe3F^-B!Klo1fRYrYxZ&2MTw#2vQ~t>n#yNIrC|omqr`GZ zY7!R2;pRD%P|jS0rj^$D=bfLF7KnLbXnjx~&aD>6D#w%=#U)!n>y5wPj2s-b~>(GpJER*@6J+woAd4KL4$PVNOS zEE2p^W!Q5ADX%gnE&C$jqFTWJD`^%dEPfI?@A+$VfwimZ@|07KZ3-m4s!Gf9{DXJ) z1!|rLd9{W80a393USkRTJiMUoX%5P)j9N^tz)ChCy{Zlfwg_`P0Ya~;!#@6hYXbBS z0C%gKT_~z5=KNVb5d(9pK>O>8tSz>Q@frCEkjiR~G|#j|n03`vX_-i>{JD9i@+6Wq zl1Uu|IEQyl%t6$sDh%zaB+1wyDM~rLVd&OS7z&Km6*oOflL}%SG>^o0#O*t=pTr#7P?Gy$Dto;StF`|majs@q+N!Yo@tgfF+7Gqu6v{I^r zRi`SmY(RU!TIIr)s|RnCsDVP5t4V>7t{}rxMQKbOke^lK2+_dzsw&3-izo>ev^~@Y z4!s+|PRmA6I8vSY0&>sdhrP9s{)!rwNV67vNNrHFYYAfvwr8s&9BxI!&~LRR59=#u z286?>^%}wBC&6>rKn~T=vf~yj0TLO`mI;yT#2BfY^2W!9+}fhQ35-E<8;dM2>Yb|o#5|9+EM9`Gld zo1(8wY9$DiGZDDXsFAA5%r7|~a=`P8v&L}wX7HMKYpy5kp+qRcYXOwi3?<)ZBMZnr z*^tUN2Wv+g?!fF|`%s7B%J{ZcDxgFMFz`?dSZ~=*P&KeVpb)o!uxopbY(eZpz=bO& z9GRCy4;8fyAKep(eb!C~ugxtyAoh7sodigybYy7>(T4`@D|@f}(Vk9r=h>fkVj*z^ zg$>}E09&$}^rDf8$l(Kv0MPoXDw{h~=wu9)h#pHj7u7Mc3zG#rUjXhk!3V9oGDU*& zi7w_NQzMd@Dlqx%LO~s<55sPpBMU;GsM|h+bm4!)B7keS0;^BDe&=AFP(%-DMckkYx@nNn#pjv-vBAVuzr-2jO0d- z)Ft=ACLmz`swzzfvx+zg#AU`Y=ng)q#UWal4S8r3rK*f9OVXe18>A= z3LS&NS%Ck2sE*Ko&E&>on4F{~U>Vfsb_XvU-=Y{}PN3A5@cGB?=p}B9l?`7v1t>~O zd!UA*u&E@bY5!qLYA9u32tePU(VtJeTo)_%Z=CVnEL}|Bwa5$LKhcy|rSi-cSL-a8 zf3^w(a7CKr+0g%LCZG)Kdm*3iZ9D<|C)$xpm3xDCZKBk(0{>ZTo?_mwxP`#!fmc~Z z_Lx2>$eziP3>?5_%G7VQbOrifRb@1;BlLss1>T=nCp#UvKUOos3UY;X)0u)e7gX#=MA{XaM zo)sC;gSytiBu`9~$}Q71whY{P;JOya&x{r*id1(9QaF>&EE`y0Rb}pcNwGo%TBf4K zR_aVnTA=AUGgzP)rLmi$m--?@N(lf#pP}%Ygs zFA|V{Q=X$8U;araPpv#t+D)HTjw1Y)v?9#FoK{gu&`G^SOif~k!CE2 zieN#F6@y|oqOmuOK7(RGG@57-VqwJgNP>!m1Y^a5*dt;@pT%P`_NXse0{B-u1tG29C#R6u`E-`l zaXf5ujktnaQcxj&zbw-)#Eg-9K%Ewx@#cn~oYe(tRqR4bHMFt`=dSZ9>KC#YxlmxY z2xbN!rb~2yT{%MkFXGvipp#BnjK*V+(ls|B{lpLB?IoJd+a4pAQ+eC-Ah-*Ks!uRx zSgTAy5DDN$)mUt9*s%oG+MSg40r+zz`#1t*DVjfUN{XLe1UMu3Qz*7SL&MgBgZEdD zpZW|sH@_!G_Oju{)Fl(!Z~QU@i|29_pFbx86>Ps?TBQkO&j7ZhU(IHupDmC59O8!H zR+?f#ApL|GrxKedhXxVj9T6msg;rF+Cr`uw90@v59HKj7_!;e>sEIffPGGU{Xq=Y zvM-=>{D##HW+@v|p=rRMQf$oks(|`!T!pdv>ybw5M46Q>vsMV3aGS<>0PkJLz7}t` z8pGD}4*5HlW3|wm_wocEL*yt_uZBb0?ppO&kN`{Tg1M2ez~eT5YTA3}KB-R5{Mc3G zsNm~!CJapZMH&Dh@Lf3=Mh|xAs-Y z{`h4XIx-&|6iP7!44|{jZQAi#qWR1+ppWGkH^@tZ#=L_{u7bNN-e=LXya*m$wVfVA~I7QjOT?Qsa)2{f{`hR%9v zZrXEca%3KWrv)3)i;*u?N$t!Lz{t(p1nD2IOwmcevFKt}n}Z(Ml69^Y(MbzmnfX}C zUHfn7&i+ewL4pBW(bt-6xOwKa>~P{V?8*fJ(2-|TneCS-s|$W5^}0w0j1q~Bo$_Y9 ziNf>dB=)Hd(#-KdS&9iSG1C?&lRE)E*yJk&i9b?ystu-{8bAd0W_PeXWS3#4Wc%gi zAOI(Rjka!s8j*vxQd)q)D7b&3%u~?}%vC$m$}l#}dgEjRKU|UN&|TxlC9GjmgJu*U za-k`YGki1Jh(PX+S|-SV*_$yk=~&5B#R3XgZwp+%ibNh&ETDjEw?Nw+i9D*Kg8tWc zE3~H}ktfH1&9g)ZghX%LUXefP2l(cJvC?kQ9*XQ9ljWX_V{KDy20Xx8{I6Vt-ma-% zVa82iu_P3jr1}K0|eD*f9*j=#_3l!j*f4S8$e)?zN7akazb!b+*J#bweZ3TrV zZ-<=#tbv*x$SlDvRk_{ZV?14vTI(ddPlG8f&2Y4*M&F5_pM^5ok)!J z@NZDR%1_p}h}V7#@nV0gD(OS*bsV3{5CQM%tXKUW^ZMIycZQ9`Igj86){;uk^I@QI zBl04bJqnQa1wt@=7hZJR_rZ!_ukWC%SGKqD{w4(^U_suc^8puh3Sf~+Lk z_J)s#ZMVykQQv;QquH#E1fDHwdQ|W@L87Z7)6( zz94Bq8?}ZDJ*)y*6Kpn-dYG;@;4^?&?XG@LtfT07 zWFee($5P@Q!#G}4h{wdXqmaaOAw?vtzQV$ZZyd~46hRwhIzGGzzlyfT@Qar)Rtx$A zGJ~=}e7STzh$ZFHvPhnv0`~W&W0*LCy2}e|fdGacN52{%O^L2<_Hlfwd%uTOTfv+0 zkf*5xxNFS_9qlO_^m~Ex3Sv(nAe>La(V@N72Ey59Br%cM$}KP=_MCX1g3gt`vVrUo zx(2-TEo`47aZ*2NF?J-5F%jaqry=%<15^cTVQYv{K97wr)PT7xkl75QK4E9!Is6*`2)qpX1E9Z#ylV;CAMk-1 zPey)}B+pHfjH$Z1@}tV5shV!3kEF=j$JUP$@yf$eu^kyuK!0BF1Kit*6eWt0j3Hpn zgsyM_mUT8>*XxxcA`)lntQQI$#*(GEnWcs{EC{AY$0jGn)}2<0;q)ldPQSzp6}r(ZHev#7~*CHH}oIlTlo z`_Ff6k^4Cp&!qgzXvY0AYKBcCm06Pe2Qj{{C0f}6+z(qt*Fk&y6=-+bgin8}-8Hvj&x6g@@}a{yeEVzj6T(_LvA@XexH@-37pDQcMq#b_YwyHF07 zATt2?7s*!R#1o1-Gv?2cl1Y$!yI2g3_$~p|pO+~)^){^TSz;;DF#kHU`1Iy7`S{lVr0Sic1YgwRvpo-8X zh`S5Ln3exW!G+(yYiP~l*N~CfeByuXePxwX_fVw(Czjm94@D20Nb`IowrhH{ZUZR{<0E%~xg|EXoO%HB*EW)PHTxYb z3Yvz+paaL}%;}kD99KH;z#%+RL-2SVrFpc5WYcswgja?ELDsGcD~;b?m{m$7J{Ra} zPji^?rJOCDiNY6Eg<)${fwq?cT~T33W4~engCcPyat4 zsLwt^m*a8V$YaEF>|=!KD4Z|y*zg5Q&XwUh?Kk`wFWDv|705kg5~iZvSp^!y!8lsv zv0*TA_wW^;6mk!06h7FgniCkl2$qyb17(5lwZ?JJ&3{GUBLhKT_w42Em{q7T6q_&a zuGmU&i$y@V{*EE|6HJR7OeA7U!~7yV;1~RkuHlRkhy{zUft*73p3s<^yqEkM#(huf z>c||1FaLnKM*FG5U3t+Yh1&7avPkxE(^6o2$t4^4j=z}vhDdzZD z633jPc4CRl=f(S0K{E5Ss^~~?y;}U{e=xIq{;28Mg)>xd5!0WQqn6SSPJpx*!d4X1 z@Fwu5j^IvVV!%K%MGd4o%E z?ShmDc%Cp8@fM1$FPeMq#Q(aDhc{jfuz%;0?0Kbvd=~Mlu>6k3=}y=~L>H9Ud28k= z`ZWdxwvc2+7ct$#!2!ZRn^Bq7I5gGF&2wAxQVC?>VM58Y=MUJt9*h#MNRsiw75M_k zuwM4aMhRiVuM4pmmIposLvPl}bl@FmjAQeABYSlo~hi{U@l=kJ?RA$zFP2yE$ zsfKZ!e8CFr^FpKM|KS;UQ05-T4Yfc(nTu(gF1FoQoIt@6vg@w|^FX5{6T$U>zvsD!fnb>tt3xA5adEN?$I zLMPsX#H-mDPr4GOMIA@xR$p%YTHRRVW6!!)TDKZIdGS}1;l#>%u+-E`468_`13C|n zC0h7x>x-fyZz{6p=ZUhcW*XzMKJvPNq&JiuuE&q{P=dHX=VgA1$hNN!OJjV6cvZ$! zFkyn7ocR9rXk-Qz{o+Tyg>zj^HxFJ`ALHlgFAWMRo>1K755?^b=*pVVcw%qK#0C(D zG@`IEQSpTMT0_LxBFziPfdE<8jK{O*^BN&`po!mMjimwL@q`#OfhJbkf{6E90M=Dv z0-){KjI;zDFzC!wR|vlkJb$B z-_1#3K9TXF`QipjH<`K!!|uE|5JR=4rE0-MzZ-D_1Do6oo}O(*Wz#qicsR2+2-@F- z%btckMl5*;p-T^fpqLdQ6_ILWg5l*a0*Gf_FskU=Q58wV<5K(_zZkFfaI!|>rnT2v z5GXv;cCrmOwuo`l~d~-0o}T40OA(Vf{!V$a?i8rRQ}7#`5_4G?wDU6nj>xT%7s6 zcub{D$AAZ;Ypc{|-^FPa1Z@u)ZEX=@U-h?|n*?_+z8&tQE?6Q{XL}&`9Jot+XeR*s z>8Zr?_T!y|1S?YGHSrZUkml4Fek4a$(R2SuxHxx^rSE>{@C!ZL-_4c_w8CjBFT^qj zHJA9t#g_|~#jFkxw;4*}nLK?f2&RHu5ja)T-0or2GrZB5uzY&HFA8qf1o@NP6coFt zXr(3V0LlmXC5U{Gc=4O~hYiE>2DNJ;@`ZK6(>}c;%1$JRvdk-Z(}XmX1&=1dUbgl_ zZ6yE!J7dV2Vu1s;px=}P3ZL2qR*G=YNGD|p*T*O=*brboRlh*j1M{vc=D{N|P~0_9 z_0WyPfi}nxkHjrP>~663`mlaeGuIPALH^rG1OqBxx;GU7c?S|UB zd3lsFf-mi^G-vsVs%`9HI_h9gDthDO+z%eoIX&fwy$?09cXzs#qhReJC+H#;@;gNg zT20$E3Ah)hsgN*3wgA{(TUI=ioUw5Bki3LjgBL8-TsuFkar96=Vv9ev(iV6}%nJIqlfc0}7lVjZ=T)C+^TA(>wsp;)+krrnU?y-_w{9!-IQz}HYN zLsXNv@dC90`Jj8bC+A1a#UqL)ZrZ|JD2nruE%?6^~>XlO4jNKDrOjLsr%EJdCl$)%P zRlv(blHwp#iOaOAVip_u)xpqCve2ELP}Y(14dT1Wl}TAv+v8IE2L9R~5*4XRV%LY3%68NLN0YlO5@I^!ydFa8gQ zL)#-;)ehuq1MwI+mngh{EEbWcL)%kTB6%XM6^WnP{p}XdfMnf%k zNJYORK=cW*{f7`w-AOkb-T-@GpPZPDPm%aa9xwk8UPphc7P}FX4{I32Ub(URi*<` z*u8da{b9>HQP^ZWNa`0_Jud;=>&C8FOTg8u=N{YBt|rZnvue+(ow}yxJIjtb;jjM! Dve~I9 delta 89322 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

Tsc$6z}V_GVPHe7efy$OHeY6xe4Vzi*vCn{d) zYkauxa6`Cs4ak8n`NsiHjzrOMyPBG$LK|A?SRf9ocmfHpsov0< zMMO!z#9DvaC|niKSKt74qA^Lt5g=>(*rwcyzU^BDhVJ1A5O^>opzrMDj>FIOH4fV0 zT@5u@7ErtWo(9YnJdwgvT-Wh5>}6NlNI}039yREC7sgc__M!G$C&CRlzI5ShRb!3q z)3K^bCG#CG95Sc?tHW`!$E0hpupWbDqvsbZ8N@~n9o?*emud}xHf{N0KLd_b68PO6 zFJvyTldPSo-i9tLv$OnB`T&6PX)WA5#d>RTD~&gAyGWtC3mJ~A`vEu0ENP6XXmj)~ z=BiULztwJH^iL2mq+2&0&Iu{wlShvkGBPFG#^7TNsc|Hlo(UNQCGFzgX)HpZiEHJ# zw-NdFN+f%7cTRxatV(#>W! zAutrOnPx%!-I$J-HpE~gq9A0wHr+k@5IkBFTda|t-TS}65DEcL`#vEQzm)%H+`EsJ zBWB1txkCMW#WA1%0wsd})1vfk>8pBFM_ueTR*QbNgc2DI`7DiBK-v^JFc(p0cB(&7 zFii{uH2A`!z=3|&1d%B6M=XN|P%JH2ca51(vX%lAp~~ogT?WbyPk`HrW$|ZK46eF4 znzXkMq?8KS*+G^P=Rmou%MJ~eJ@!@l@octHJtglytL)C{#UQ~Y|;Q-(+ zlC2*uDI!A_TsuHS1k+_CxR2Ye!*srU;u%|4KCL>)BS%Vd>RDS~uB!pcmQp$t{$s7Noz=;*Lm^5Lp1)Kz~dg2Q)H=v1;@_C20g~y+DOiOs+vJZ z4n({9EO8oX$Yuf@yQ*@^z9SgI2c`>S;_yPHIv7wZr%CH(9J{jIr31#1_H|Ii+K*LZ zy2TFyxpS0~LqcHI>q{#iRG#tYhF|ojtq&ts@CRt>OZ%Bt#sFsLO#2@?W7Bib=M%#H zTm0*yQMfTnrqIy~-ieQ`_n}BQVK&(jaCb(YR2N~+n?n>ac2?$X7eV^hx)8*=idoQ} zXWqnn4N>(B!8RlKu1Mf10xi#80Nu&1uO1Z6WLOk{bLTBM+oouWruqWvqG$0>g_r}0 z6_E+kGy<;|l94gXqI8~CLZ|A({&$(Adzg9Qu@SRKp|9SZpL0hY{n!xkpQnkytSp%r z5brSkZiuXIU20LaP)qQhEY0zNepi;{aMm{5P?o*TCSf#~KWqV=e-0B8vkGP~v)!yW z6ab|bjh+FhVt#z*6Mz(3Bxgpz^`I46Q*IJgque}=l`Nj#!pe#ZPr86a1pr5OB&^(D zCG!LHJXgBwg|FibP4K#7(MLw6B2Uf6)n_4;us|bpX|1#(aP*EgL4(i4f{;`*N*KMH z2SC*s#*_Z+=14z@616$8@@hq*i0gz>F;P|%PR>~HE^Dzj|a&zACcVqfP z0C=ko341`@bKyr~kX9nzJfS?qziarZdnu}=r&u^5<~q!rKXeEFd`xB;Fwb2u*5fXr8!7skO*s}s@Mc2b?Dr(}o*B{KD9`7idzD&XP*#Z)@&e0r$iTod8hfnqY7$`(>Fg%hX!! M@R{dDH&lfG16)|P0{{R3 diff --git a/packages/cli/configuration/fern/definition/docs.yml b/packages/cli/configuration/fern/definition/docs.yml index b9c5d957239..01029eaad80 100644 --- a/packages/cli/configuration/fern/definition/docs.yml +++ b/packages/cli/configuration/fern/definition/docs.yml @@ -14,7 +14,6 @@ types: # navigation tabs: optional> versions: optional> - landing-page: optional navigation: type: optional docs: The navigation config is skipped when multiple versions are present. @@ -164,7 +163,6 @@ types: VersionFileConfig: properties: tabs: optional> - landing-page: optional navigation: NavigationConfig NavigationConfig: @@ -422,10 +420,6 @@ types: SectionConfiguration: properties: section: string - path: - type: optional - docs: | - The relative path to the markdown file that will be displayed when the section is clicked. contents: list collapsed: optional slug: optional diff --git a/packages/cli/configuration/package.json b/packages/cli/configuration/package.json index 72054273ff2..3f96a072b5d 100644 --- a/packages/cli/configuration/package.json +++ b/packages/cli/configuration/package.json @@ -29,14 +29,13 @@ }, "dependencies": { "@fern-api/core-utils": "workspace:*", - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/fs-utils": "workspace:*", "@fern-api/task-context": "workspace:*", "@fern-fern/fiddle-sdk": "0.0.584", "dockerode": "^4.0.2", "find-up": "^6.3.0", "js-yaml": "^4.1.0", - "lodash-es": "^4.17.21", "tinycolor2": "^1.6.0", "zod": "^3.22.3" }, @@ -44,7 +43,6 @@ "@types/dockerode": "^3.3.9", "@types/jest": "^29.0.3", "@types/js-yaml": "^4.0.8", - "@types/lodash-es": "^4.17.12", "@types/node": "^18.7.18", "@types/tinycolor2": "^1.4.6", "depcheck": "^1.4.6", diff --git a/packages/cli/configuration/src/docs-yml/ParsedDocsConfiguration.ts b/packages/cli/configuration/src/docs-yml/ParsedDocsConfiguration.ts index 699181c39d2..5a386c6e721 100644 --- a/packages/cli/configuration/src/docs-yml/ParsedDocsConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/ParsedDocsConfiguration.ts @@ -12,7 +12,7 @@ export interface ParsedDocsConfiguration { pages: Record; /* navigation */ - landingPage: DocsNavigationItem.Page | undefined; + // tabs?: Record; navigation: DocsNavigationConfiguration; navbarLinks: DocsV1Write.NavbarLink[] | undefined; footerLinks: DocsV1Write.FooterLink[] | undefined; @@ -131,7 +131,7 @@ export interface VersionedDocsNavigation { } export interface VersionInfo { - landingPage: DocsNavigationItem.Page | undefined; + // tabs?: Record; navigation: UntabbedDocsNavigation | TabbedDocsNavigation; version: string; availability: VersionAvailability | undefined; @@ -200,7 +200,6 @@ export declare namespace DocsNavigationItem { slug: string | undefined; hidden: boolean | undefined; skipUrlSlug: boolean | undefined; - overviewAbsolutePath: AbsoluteFilePath | undefined; } export interface ApiSection { @@ -211,7 +210,7 @@ export declare namespace DocsNavigationItem { audiences: Audiences; showErrors: boolean; snippetsConfiguration: SnippetsConfiguration | undefined; - overviewAbsolutePath: AbsoluteFilePath | undefined; + summaryAbsolutePath: AbsoluteFilePath | undefined; navigation: ParsedApiReferenceLayoutItem[]; hidden: boolean | undefined; slug: string | undefined; @@ -256,7 +255,7 @@ export declare namespace ParsedApiReferenceLayoutItem { type: "section"; title: string; // title referencedSubpackages: string[]; // subpackage IDs - overviewAbsolutePath: AbsoluteFilePath | undefined; + summaryAbsolutePath: AbsoluteFilePath | undefined; contents: ParsedApiReferenceLayoutItem[]; slug: string | undefined; hidden: boolean | undefined; @@ -267,7 +266,7 @@ export declare namespace ParsedApiReferenceLayoutItem { type: "package"; title: string | undefined; // defaults to subpackage title package: string; // subpackage ID - overviewAbsolutePath: AbsoluteFilePath | undefined; + summaryAbsolutePath: AbsoluteFilePath | undefined; contents: ParsedApiReferenceLayoutItem[]; slug: string | undefined; hidden: boolean | undefined; diff --git a/packages/cli/configuration/src/docs-yml/getAllPages.ts b/packages/cli/configuration/src/docs-yml/getAllPages.ts index 85dc968ada4..90c7b395b8a 100644 --- a/packages/cli/configuration/src/docs-yml/getAllPages.ts +++ b/packages/cli/configuration/src/docs-yml/getAllPages.ts @@ -6,123 +6,157 @@ import { DocsNavigationItem, ParsedApiReferenceLayoutItem } from "./ParsedDocsConfiguration"; -import { compact } from "lodash-es"; -const BATCH_SIZE = 100; // Define a reasonable batch size - -async function loadBatch( - files: AbsoluteFilePath[], - absolutePathToFernFolder: AbsoluteFilePath -): Promise> { - const pairs = await Promise.all( - files.map(async (file) => { - const content = await readFile(file, "utf-8"); - return [relativize(absolutePathToFernFolder, file), content]; - }) - ); - return Object.fromEntries(pairs); -} - -export async function loadAllPages( - filesPromise: Promise, - absolutePathToFernFolder: AbsoluteFilePath -): Promise> { - const files = await filesPromise; - const result: Record = {}; - - for (let i = 0; i < files.length; i += BATCH_SIZE) { - const batch = files.slice(i, i + BATCH_SIZE); - const batchResult = await loadBatch(batch, absolutePathToFernFolder); - Object.assign(result, batchResult); - } - - return result; -} - -export function getAllPages({ - landingPage, - navigation +export async function getAllPages({ + navigation, + absolutePathToFernFolder }: { - landingPage: DocsNavigationItem.Page | undefined; navigation: DocsNavigationConfiguration; -}): AbsoluteFilePath[] { - return compact([landingPage?.absolutePath, ...getAllPagesFromNavigationConfig(navigation)]); -} - -function getAllPagesFromNavigationConfig(navigation: DocsNavigationConfiguration): AbsoluteFilePath[] { + absolutePathToFernFolder: AbsoluteFilePath; +}): Promise> { switch (navigation.type) { case "tabbed": - return navigation.items.flatMap((tab) => { - if (tab.child.type === "layout") { - return tab.child.layout.flatMap((item) => { - return getAllPagesFromNavigationItem({ - item - }); - }); - } else if (tab.child.type === "changelog") { - return tab.child.changelog; - } - return []; - }); + return combineMaps( + await Promise.all( + navigation.items.map(async (tab) => { + if (tab.child.type === "layout") { + return combineMaps( + await Promise.all( + tab.child.layout.map(async (item) => { + return await getAllPagesFromNavigationItem({ + item, + absolutePathToFernFolder + }); + }) + ) + ); + } else if (tab.child.type === "changelog") { + return combineMaps( + await Promise.all( + tab.child.changelog.map(async (filepath) => ({ + [await relativize(absolutePathToFernFolder, filepath)]: ( + await readFile(filepath) + ).toString() + })) + ) + ); + } + return {}; + }) + ) + ); case "untabbed": - return navigation.items.flatMap((item) => { - return getAllPagesFromNavigationItem({ - item - }); - }); + return combineMaps( + await Promise.all( + navigation.items.map(async (item) => { + return await getAllPagesFromNavigationItem({ + item, + absolutePathToFernFolder + }); + }) + ) + ); case "versioned": - return navigation.versions.flatMap((version) => { - return getAllPages({ - landingPage: version.landingPage, - navigation: version.navigation - }); - }); + return combineMaps( + await Promise.all( + navigation.versions.map(async (version) => { + return await getAllPages({ + navigation: version.navigation, + absolutePathToFernFolder + }); + }) + ) + ); default: assertNever(navigation); } } -export function getAllPagesFromNavigationItem({ item }: { item: DocsNavigationItem }): AbsoluteFilePath[] { +export async function getAllPagesFromNavigationItem({ + item, + absolutePathToFernFolder +}: { + item: DocsNavigationItem; + absolutePathToFernFolder: AbsoluteFilePath; +}): Promise> { switch (item.type) { - case "apiSection": - return compact([ - item.overviewAbsolutePath, - ...item.navigation.flatMap((apiNavigation) => - getAllPagesFromApiReferenceLayoutItem({ item: apiNavigation }) + case "apiSection": { + const toRet = combineMaps( + await Promise.all( + item.navigation.map((apiNavigation) => + getAllPagesFromApiReferenceLayoutItem({ item: apiNavigation, absolutePathToFernFolder }) + ) ) - ]); + ); + if (item.summaryAbsolutePath != null) { + toRet[await relativize(absolutePathToFernFolder, item.summaryAbsolutePath)] = ( + await readFile(item.summaryAbsolutePath) + ).toString(); + } + return toRet; + } case "link": - return []; + return {}; case "page": - return [item.absolutePath]; + return { + [await relativize(absolutePathToFernFolder, item.absolutePath)]: ( + await readFile(item.absolutePath) + ).toString() + }; case "section": - return compact([ - item.overviewAbsolutePath, - ...item.contents.flatMap((subItem) => { - return getAllPagesFromNavigationItem({ item: subItem }); - }) - ]); + return combineMaps( + await Promise.all( + item.contents.map(async (sectionItem) => { + return await getAllPagesFromNavigationItem({ item: sectionItem, absolutePathToFernFolder }); + }) + ) + ); case "changelog": - return item.changelog; + return combineMaps( + await Promise.all( + item.changelog.map(async (filepath) => ({ + [await relativize(absolutePathToFernFolder, filepath)]: (await readFile(filepath)).toString() + })) + ) + ); default: assertNever(item); } } -// function combineMaps(maps: Record[]) { -// return maps.reduce((acc, record) => ({ ...acc, ...record }), {}); -// } +function combineMaps(maps: Record[]) { + return maps.reduce((acc, record) => ({ ...acc, ...record }), {}); +} -function getAllPagesFromApiReferenceLayoutItem({ item }: { item: ParsedApiReferenceLayoutItem }): AbsoluteFilePath[] { +async function getAllPagesFromApiReferenceLayoutItem({ + item, + absolutePathToFernFolder +}: { + item: ParsedApiReferenceLayoutItem; + absolutePathToFernFolder: AbsoluteFilePath; +}): Promise> { if (item.type === "page") { - return [item.absolutePath]; + return { + [await relativize(absolutePathToFernFolder, item.absolutePath)]: ( + await readFile(item.absolutePath) + ).toString() + }; } else if (item.type === "package" || item.type === "section") { - return compact([ - item.overviewAbsolutePath, - ...item.contents.flatMap((subItem) => { - return getAllPagesFromApiReferenceLayoutItem({ item: subItem }); - }) - ]); + const toRet = combineMaps( + await Promise.all( + item.contents.map(async (subItem) => { + return await getAllPagesFromApiReferenceLayoutItem({ item: subItem, absolutePathToFernFolder }); + }) + ) + ); + + if (item.summaryAbsolutePath != null) { + toRet[await relativize(absolutePathToFernFolder, item.summaryAbsolutePath)] = ( + await readFile(item.summaryAbsolutePath) + ).toString(); + } + + return toRet; } - return []; + return {}; } diff --git a/packages/cli/configuration/src/docs-yml/parseDocsConfiguration.ts b/packages/cli/configuration/src/docs-yml/parseDocsConfiguration.ts index bdf839c09c4..328c22001f7 100644 --- a/packages/cli/configuration/src/docs-yml/parseDocsConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/parseDocsConfiguration.ts @@ -5,8 +5,6 @@ import { TaskContext } from "@fern-api/task-context"; import { readFile } from "fs/promises"; import yaml from "js-yaml"; import { WithoutQuestionMarks } from "../commons/WithoutQuestionMarks"; -import { convertColorsConfiguration } from "./convertColorsConfiguration"; -import { getAllPages, loadAllPages } from "./getAllPages"; import { AbsoluteJsFileConfig, DocsNavigationConfiguration, @@ -23,7 +21,9 @@ import { UntabbedDocsNavigation, VersionInfo } from "./ParsedDocsConfiguration"; -import { FernDocsConfig as RawDocs, NavigationConfig, Serializer, VersionConfig } from "./schemas"; +import { convertColorsConfiguration } from "./convertColorsConfiguration"; +import { getAllPages } from "./getAllPages"; +import { NavigationConfig, FernDocsConfig as RawDocs, Serializer, VersionConfig } from "./schemas"; export async function parseDocsConfiguration({ rawDocsConfiguration, @@ -67,8 +67,6 @@ export async function parseDocsConfiguration({ js: rawJsConfig } = rawDocsConfiguration; - const landingPage = parsePageConfig(rawDocsConfiguration.landingPage, absoluteFilepathToDocsConfig); - const convertedNavigationPromise = getNavigationConfiguration({ tabs, versions, @@ -78,11 +76,8 @@ export async function parseDocsConfiguration({ context }); - const pagesPromise = loadAllPages( - convertedNavigationPromise.then((convertedNavigation) => - getAllPages({ navigation: convertedNavigation, landingPage }) - ), - absoluteFilepathToDocsConfig + const pagesPromise = convertedNavigationPromise.then((convertedNavigation) => + getAllPages({ navigation: convertedNavigation, absolutePathToFernFolder }) ); const logo = convertLogoReference(rawLogo, absoluteFilepathToDocsConfig); @@ -122,7 +117,7 @@ export async function parseDocsConfiguration({ pages, /* navigation */ - landingPage, + // tabs, navigation, navbarLinks: convertNavbarLinks(navbarLinks), footerLinks: convertFooterLinks(footerLinks), @@ -333,7 +328,7 @@ async function getNavigationConfiguration({ context }); versionedNavbars.push({ - landingPage: parsePageConfig(result.landingPage, absoluteFilepathToVersionFile), + // tabs: result.tabs, version: version.displayName, navigation, availability: version.availability, @@ -576,7 +571,14 @@ async function convertNavigationItem({ context: TaskContext; }): Promise { if (isRawPageConfig(rawConfig)) { - return parsePageConfig(rawConfig, absolutePathToConfig); + return { + type: "page", + title: rawConfig.page, + absolutePath: resolveFilepath(rawConfig.path, absolutePathToConfig), + slug: rawConfig.slug, + icon: rawConfig.icon, + hidden: rawConfig.hidden + }; } if (isRawSectionConfig(rawConfig)) { return { @@ -591,8 +593,7 @@ async function convertNavigationItem({ slug: rawConfig.slug ?? undefined, collapsed: rawConfig.collapsed ?? undefined, hidden: rawConfig.hidden ?? undefined, - skipUrlSlug: rawConfig.skipSlug ?? false, - overviewAbsolutePath: resolveFilepath(rawConfig.path, absolutePathToConfig) + skipUrlSlug: rawConfig.skipSlug ?? false }; } if (isRawApiSectionConfig(rawConfig)) { @@ -610,7 +611,7 @@ async function convertNavigationItem({ : undefined, navigation: rawConfig.layout?.flatMap((item) => parseApiReferenceLayoutItem(item, absolutePathToConfig)) ?? [], - overviewAbsolutePath: resolveFilepath(rawConfig.summary, absolutePathToConfig), + summaryAbsolutePath: resolveFilepath(rawConfig.summary, absolutePathToConfig), hidden: rawConfig.hidden ?? undefined, slug: rawConfig.slug, skipUrlSlug: rawConfig.skipSlug ?? false, @@ -640,31 +641,6 @@ async function convertNavigationItem({ assertNever(rawConfig); } -function parsePageConfig( - item: RawDocs.PageConfiguration, - absolutePathToConfig: AbsoluteFilePath -): DocsNavigationItem.Page; -function parsePageConfig( - item: RawDocs.PageConfiguration | undefined, - absolutePathToConfig: AbsoluteFilePath -): DocsNavigationItem.Page | undefined; -function parsePageConfig( - item: RawDocs.PageConfiguration | undefined, - absolutePathToConfig: AbsoluteFilePath -): DocsNavigationItem.Page | undefined { - if (item == null) { - return undefined; - } - return { - type: "page", - title: item.page, - absolutePath: resolveFilepath(item.path, absolutePathToConfig), - slug: item.slug, - icon: item.icon, - hidden: item.hidden - }; -} - function parseApiReferenceLayoutItem( item: RawDocs.ApiReferenceLayoutItem, absolutePathToConfig: AbsoluteFilePath @@ -675,7 +651,16 @@ function parseApiReferenceLayoutItem( // eslint-disable-next-line @typescript-eslint/no-explicit-any if (isRawPageConfig(item)) { - return [parsePageConfig(item, absolutePathToConfig)]; + return [ + { + type: "page", + title: item.page, + absolutePath: resolveFilepath(item.path, absolutePathToConfig), + slug: item.slug, + icon: item.icon, + hidden: item.hidden + } + ]; } else if (isRawLinkConfig(item)) { return [ { @@ -691,7 +676,7 @@ function parseApiReferenceLayoutItem( type: "section", title: item.section, referencedSubpackages: item.referencedPackages ?? [], - overviewAbsolutePath: resolveFilepath(item.summary, absolutePathToConfig), + summaryAbsolutePath: resolveFilepath(item.summary, absolutePathToConfig), contents: item.contents?.flatMap((value) => parseApiReferenceLayoutItem(value, absolutePathToConfig)) ?? [], slug: item.slug, @@ -718,7 +703,7 @@ function parseApiReferenceLayoutItem( type: "package", title: value.title, package: key, - overviewAbsolutePath: resolveFilepath(value.summary, absolutePathToConfig), + summaryAbsolutePath: resolveFilepath(value.summary, absolutePathToConfig), contents: value.contents?.flatMap((value) => parseApiReferenceLayoutItem(value, absolutePathToConfig)) ?? [], slug: value.slug, @@ -731,7 +716,7 @@ function parseApiReferenceLayoutItem( type: "package", title: undefined, package: key, - overviewAbsolutePath: undefined, + summaryAbsolutePath: undefined, contents: value.flatMap((value) => parseApiReferenceLayoutItem(value, absolutePathToConfig)), hidden: false, slug: undefined, diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/DocsConfiguration.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/DocsConfiguration.ts index 35ac8e31af2..c140ac0b7bc 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/DocsConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/DocsConfiguration.ts @@ -10,7 +10,6 @@ export interface DocsConfiguration { title?: string; tabs?: Record; versions?: FernDocsConfig.VersionConfig[]; - landingPage?: FernDocsConfig.PageConfiguration; /** The navigation config is skipped when multiple versions are present. */ navigation?: FernDocsConfig.NavigationConfig; navbarLinks?: FernDocsConfig.NavbarLink[]; diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/SectionConfiguration.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/SectionConfiguration.ts index cd390124362..01349177447 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/SectionConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/SectionConfiguration.ts @@ -6,8 +6,6 @@ import * as FernDocsConfig from "../../.."; export interface SectionConfiguration { section: string; - /** The relative path to the markdown file that will be displayed when the section is clicked. */ - path?: string; contents: FernDocsConfig.NavigationItem[]; collapsed?: boolean; slug?: string; diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/VersionFileConfig.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/VersionFileConfig.ts index adc57165bd2..b8622ddb7e2 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/VersionFileConfig.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/api/resources/docs/types/VersionFileConfig.ts @@ -6,6 +6,5 @@ import * as FernDocsConfig from "../../.."; export interface VersionFileConfig { tabs?: Record; - landingPage?: FernDocsConfig.PageConfiguration; navigation: FernDocsConfig.NavigationConfig; } diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/DocsConfiguration.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/DocsConfiguration.ts index 4d510856696..27271bd3e62 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/DocsConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/DocsConfiguration.ts @@ -23,10 +23,6 @@ export const DocsConfiguration: core.serialization.ObjectSchema< versions: core.serialization .list(core.serialization.lazyObject(async () => (await import("../../..")).VersionConfig)) .optional(), - landingPage: core.serialization.property( - "landing-page", - core.serialization.lazyObject(async () => (await import("../../..")).PageConfiguration).optional() - ), navigation: core.serialization.lazy(async () => (await import("../../..")).NavigationConfig).optional(), navbarLinks: core.serialization.property( "navbar-links", @@ -60,7 +56,6 @@ export declare namespace DocsConfiguration { title?: string | null; tabs?: Record | null; versions?: serializers.VersionConfig.Raw[] | null; - "landing-page"?: serializers.PageConfiguration.Raw | null; navigation?: serializers.NavigationConfig.Raw | null; "navbar-links"?: serializers.NavbarLink.Raw[] | null; "footer-links"?: serializers.FooterLinksConfig.Raw | null; diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/SectionConfiguration.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/SectionConfiguration.ts index 0952825b74c..925abdf1fc0 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/SectionConfiguration.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/SectionConfiguration.ts @@ -11,7 +11,6 @@ export const SectionConfiguration: core.serialization.ObjectSchema< FernDocsConfig.SectionConfiguration > = core.serialization.object({ section: core.serialization.string(), - path: core.serialization.string().optional(), contents: core.serialization.list(core.serialization.lazy(async () => (await import("../../..")).NavigationItem)), collapsed: core.serialization.boolean().optional(), slug: core.serialization.string().optional(), @@ -23,7 +22,6 @@ export const SectionConfiguration: core.serialization.ObjectSchema< export declare namespace SectionConfiguration { interface Raw { section: string; - path?: string | null; contents: serializers.NavigationItem.Raw[]; collapsed?: boolean | null; slug?: string | null; diff --git a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/VersionFileConfig.ts b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/VersionFileConfig.ts index 69a329e8266..2a216992756 100644 --- a/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/VersionFileConfig.ts +++ b/packages/cli/configuration/src/docs-yml/schemas/sdk/serialization/resources/docs/types/VersionFileConfig.ts @@ -16,17 +16,12 @@ export const VersionFileConfig: core.serialization.ObjectSchema< core.serialization.lazyObject(async () => (await import("../../..")).TabConfig) ) .optional(), - landingPage: core.serialization.property( - "landing-page", - core.serialization.lazyObject(async () => (await import("../../..")).PageConfiguration).optional() - ), navigation: core.serialization.lazy(async () => (await import("../../..")).NavigationConfig), }); export declare namespace VersionFileConfig { interface Raw { tabs?: Record | null; - "landing-page"?: serializers.PageConfiguration.Raw | null; navigation: serializers.NavigationConfig.Raw; } } diff --git a/packages/cli/docs-preview/package.json b/packages/cli/docs-preview/package.json index 6bdf7aa5c3d..582f22b3ee6 100644 --- a/packages/cli/docs-preview/package.json +++ b/packages/cli/docs-preview/package.json @@ -28,7 +28,7 @@ }, "dependencies": { "@fern-api/docs-resolver": "workspace:*", - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/fs-utils": "workspace:*", "@fern-api/ir-sdk": "workspace:*", "@fern-api/logger": "workspace:*", diff --git a/packages/cli/docs-resolver/package.json b/packages/cli/docs-resolver/package.json index 3625836ed9f..13dc429e947 100644 --- a/packages/cli/docs-resolver/package.json +++ b/packages/cli/docs-resolver/package.json @@ -30,7 +30,7 @@ "@fern-api/configuration": "workspace:*", "@fern-api/core-utils": "workspace:*", "@fern-api/docs-markdown-utils": "workspace:*", - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/fs-utils": "workspace:*", "@fern-api/ir-generator": "workspace:*", "@fern-api/ir-sdk": "workspace:*", diff --git a/packages/cli/docs-resolver/src/ApiReferenceNodeConverter.ts b/packages/cli/docs-resolver/src/ApiReferenceNodeConverter.ts index 3a05de3c92d..920dda49ca6 100644 --- a/packages/cli/docs-resolver/src/ApiReferenceNodeConverter.ts +++ b/packages/cli/docs-resolver/src/ApiReferenceNodeConverter.ts @@ -39,14 +39,14 @@ export class ApiReferenceNodeConverter { const idgen = NodeIdGenerator.init(this.apiDefinitionId); this.#overviewPageId = - this.apiSection.overviewAbsolutePath != null - ? FernNavigation.PageId(this.toRelativeFilepath(this.apiSection.overviewAbsolutePath)) + this.apiSection.summaryAbsolutePath != null + ? FernNavigation.PageId(this.toRelativeFilepath(this.apiSection.summaryAbsolutePath)) : undefined; // the overview page markdown could contain a full slug, which would be used as the base slug for the API section. const maybeFullSlug = - this.apiSection.overviewAbsolutePath != null - ? this.markdownFilesToFullSlugs.get(this.apiSection.overviewAbsolutePath) + this.apiSection.summaryAbsolutePath != null + ? this.markdownFilesToFullSlugs.get(this.apiSection.summaryAbsolutePath) : undefined; this.#slug = parentSlug.apply({ @@ -154,12 +154,12 @@ export class ApiReferenceNodeConverter { idgen: NodeIdGenerator ): FernNavigation.ApiPackageNode { const overviewPageId = - pkg.overviewAbsolutePath != null - ? FernNavigation.PageId(this.toRelativeFilepath(pkg.overviewAbsolutePath)) + pkg.summaryAbsolutePath != null + ? FernNavigation.PageId(this.toRelativeFilepath(pkg.summaryAbsolutePath)) : undefined; const maybeFullSlug = - pkg.overviewAbsolutePath != null ? this.markdownFilesToFullSlugs.get(pkg.overviewAbsolutePath) : undefined; + pkg.summaryAbsolutePath != null ? this.markdownFilesToFullSlugs.get(pkg.summaryAbsolutePath) : undefined; const subpackage = this.#holder.getSubpackage(pkg.package); @@ -241,13 +241,13 @@ export class ApiReferenceNodeConverter { idgen: NodeIdGenerator ): FernNavigation.ApiPackageNode { const overviewPageId = - section.overviewAbsolutePath != null - ? FernNavigation.PageId(this.toRelativeFilepath(section.overviewAbsolutePath)) + section.summaryAbsolutePath != null + ? FernNavigation.PageId(this.toRelativeFilepath(section.summaryAbsolutePath)) : undefined; const maybeFullSlug = - section.overviewAbsolutePath != null - ? this.markdownFilesToFullSlugs.get(section.overviewAbsolutePath) + section.summaryAbsolutePath != null + ? this.markdownFilesToFullSlugs.get(section.summaryAbsolutePath) : undefined; const nodeId = idgen.append(`section:${kebabCase(section.title)}`); diff --git a/packages/cli/docs-resolver/src/DocsDefinitionResolver.ts b/packages/cli/docs-resolver/src/DocsDefinitionResolver.ts index 6da6e0aab03..6cbb5ecee2a 100644 --- a/packages/cli/docs-resolver/src/DocsDefinitionResolver.ts +++ b/packages/cli/docs-resolver/src/DocsDefinitionResolver.ts @@ -233,15 +233,24 @@ export class DocsDefinitionResolver { private async convertNavigationConfig(): Promise { const slug = FernNavigation.SlugGenerator.init(FernNavigation.utils.slugjoin(this.getDocsBasePath())); - const landingPage = this.parsedDocsConfig.landingPage; switch (this.parsedDocsConfig.navigation.type) { + case "untabbed": { + const items = await Promise.all( + this.parsedDocsConfig.navigation.items.map((item) => this.convertNavigationItem(item, slug)) + ); + return { items }; + } + case "tabbed": { + return { + tabsV2: await this.convertTabbedNavigation(this.parsedDocsConfig.navigation.items, slug) + }; + } case "versioned": { const versions = await Promise.all( this.parsedDocsConfig.navigation.versions.map( async (version): Promise => { const versionSlug = slug.setVersionSlug(version.slug ?? kebabCase(version.version)); const convertedNavigation = await this.convertUnversionedNavigationConfig({ - landingPage: version.landingPage, navigationConfig: version.navigation, parentSlug: versionSlug }); @@ -259,13 +268,6 @@ export class DocsDefinitionResolver { ); return { versions }; } - case "untabbed": - case "tabbed": - return this.convertUnversionedNavigationConfig({ - landingPage: this.parsedDocsConfig.landingPage, - navigationConfig: this.parsedDocsConfig.navigation, - parentSlug: slug - }); default: assertNever(this.parsedDocsConfig.navigation); } @@ -299,14 +301,12 @@ export class DocsDefinitionResolver { return { type: "section", title: item.title, - items: sectionItems, urlSlugOverride: item.slug, collapsed: item.collapsed, icon: item.icon, hidden: item.hidden, - skipUrlSlug: item.skipUrlSlug, - overviewPageId: this.toRelativeFilepath(item.overviewAbsolutePath) + skipUrlSlug: item.skipUrlSlug }; } case "apiSection": { @@ -373,38 +373,23 @@ export class DocsDefinitionResolver { } private async convertUnversionedNavigationConfig({ - landingPage: landingPageConfig, navigationConfig, parentSlug }: { - landingPage: docsYml.DocsNavigationItem.Page | undefined; navigationConfig: docsYml.UnversionedNavigationConfiguration; parentSlug: FernNavigation.SlugGenerator; }): Promise { - const landingPage = - landingPageConfig != null - ? { - id: this.toRelativeFilepath(landingPageConfig.absolutePath), - urlSlugOverride: landingPageConfig.slug, - fullSlug: this.markdownFilesToFullSlugs.get(landingPageConfig.absolutePath)?.split("/"), - hidden: landingPageConfig.hidden, - title: landingPageConfig.title, - icon: landingPageConfig.icon - } - : undefined; switch (navigationConfig.type) { case "untabbed": { const untabs = await Promise.all( navigationConfig.items.map((item) => this.convertNavigationItem(item, parentSlug)) ); return { - landingPage, items: untabs }; } case "tabbed": { return { - landingPage, tabsV2: await this.convertTabbedNavigation(navigationConfig.items, parentSlug) }; } diff --git a/packages/cli/generation/remote-generation/remote-workspace-runner/package.json b/packages/cli/generation/remote-generation/remote-workspace-runner/package.json index 6c1ea11800b..8f27f27b7b8 100644 --- a/packages/cli/generation/remote-generation/remote-workspace-runner/package.json +++ b/packages/cli/generation/remote-generation/remote-workspace-runner/package.json @@ -32,7 +32,7 @@ "@fern-api/core": "workspace:*", "@fern-api/core-utils": "workspace:*", "@fern-api/docs-resolver": "workspace:*", - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/fs-utils": "workspace:*", "@fern-api/ir-generator": "workspace:*", "@fern-api/ir-migrations": "workspace:*", diff --git a/packages/cli/register/package.json b/packages/cli/register/package.json index 0b3c1edb0bb..2fbb3987e82 100644 --- a/packages/cli/register/package.json +++ b/packages/cli/register/package.json @@ -31,7 +31,7 @@ "@fern-api/configuration": "workspace:*", "@fern-api/core": "workspace:*", "@fern-api/core-utils": "workspace:*", - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/ir-generator": "workspace:*", "@fern-api/ir-sdk": "workspace:*", "@fern-api/task-context": "workspace:*", diff --git a/packages/core/package.json b/packages/core/package.json index ee111863e29..ec35b32e792 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -27,7 +27,7 @@ "depcheck": "depcheck" }, "dependencies": { - "@fern-api/fdr-sdk": "0.98.9-3b3a3fe5f", + "@fern-api/fdr-sdk": "0.98.4-bf08716d8", "@fern-api/venus-api-sdk": "0.0.38", "@fern-fern/fdr-test-sdk": "^0.0.5297", "@fern-fern/fiddle-sdk": "0.0.584" diff --git a/yarn.lock b/yarn.lock index c5b00c67a77..cbcff5ad62e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3453,14 +3453,13 @@ __metadata: resolution: "@fern-api/configuration@workspace:packages/cli/configuration" dependencies: "@fern-api/core-utils": "workspace:*" - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/fs-utils": "workspace:*" "@fern-api/task-context": "workspace:*" "@fern-fern/fiddle-sdk": 0.0.584 "@types/dockerode": ^3.3.9 "@types/jest": ^29.0.3 "@types/js-yaml": ^4.0.8 - "@types/lodash-es": ^4.17.12 "@types/node": ^18.7.18 "@types/tinycolor2": ^1.4.6 depcheck: ^1.4.6 @@ -3469,7 +3468,6 @@ __metadata: find-up: ^6.3.0 jest: ^29.7.0 js-yaml: ^4.1.0 - lodash-es: ^4.17.21 organize-imports-cli: ^0.10.0 prettier: ^2.7.1 tinycolor2: ^1.6.0 @@ -3502,7 +3500,7 @@ __metadata: version: 0.0.0-use.local resolution: "@fern-api/core@workspace:packages/core" dependencies: - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/venus-api-sdk": 0.0.38 "@fern-fern/fdr-test-sdk": ^0.0.5297 "@fern-fern/fiddle-sdk": 0.0.584 @@ -3588,7 +3586,7 @@ __metadata: resolution: "@fern-api/docs-preview@workspace:packages/cli/docs-preview" dependencies: "@fern-api/docs-resolver": "workspace:*" - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/fs-utils": "workspace:*" "@fern-api/ir-sdk": "workspace:*" "@fern-api/logger": "workspace:*" @@ -3628,7 +3626,7 @@ __metadata: "@fern-api/configuration": "workspace:*" "@fern-api/core-utils": "workspace:*" "@fern-api/docs-markdown-utils": "workspace:*" - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/fs-utils": "workspace:*" "@fern-api/ir-generator": "workspace:*" "@fern-api/ir-sdk": "workspace:*" @@ -3707,9 +3705,9 @@ __metadata: languageName: unknown linkType: soft -"@fern-api/fdr-sdk@npm:0.98.9-3b3a3fe5f": - version: 0.98.9-3b3a3fe5f - resolution: "@fern-api/fdr-sdk@npm:0.98.9-3b3a3fe5f" +"@fern-api/fdr-sdk@npm:0.98.4-bf08716d8": + version: 0.98.4-bf08716d8 + resolution: "@fern-api/fdr-sdk@npm:0.98.4-bf08716d8" dependencies: dayjs: ^1.11.11 fast-deep-equal: ^3.1.3 @@ -3721,7 +3719,7 @@ __metadata: tinycolor2: ^1.6.0 title: ^3.5.3 url-join: 5.0.0 - checksum: 95367a9b40741630793430ca56f0b2e97be5a49642de0a3e202d43687ea9bc3c66c796b6de1bcb60e1f3a18d2c8ba066f4954631fbddb4c478d74b157eb875b0 + checksum: 79f9847bfd0856da07ddc153583bae663aa7c6880ff60ac58033a41e5303a94c4c4c36a1f265632d8fb2de1ba3222774ea47c5c01f7354c52a214cb09aa461a4 languageName: node linkType: hard @@ -4369,7 +4367,7 @@ __metadata: "@fern-api/configuration": "workspace:*" "@fern-api/core": "workspace:*" "@fern-api/core-utils": "workspace:*" - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/ir-generator": "workspace:*" "@fern-api/ir-sdk": "workspace:*" "@fern-api/task-context": "workspace:*" @@ -4396,7 +4394,7 @@ __metadata: "@fern-api/core": "workspace:*" "@fern-api/core-utils": "workspace:*" "@fern-api/docs-resolver": "workspace:*" - "@fern-api/fdr-sdk": 0.98.9-3b3a3fe5f + "@fern-api/fdr-sdk": 0.98.4-bf08716d8 "@fern-api/fs-utils": "workspace:*" "@fern-api/ir-generator": "workspace:*" "@fern-api/ir-migrations": "workspace:*"