From e7a60023bab747c27dac6231101f300846240afa Mon Sep 17 00:00:00 2001 From: Abhinav Pant <67090539+abhitrueprogrammer@users.noreply.github.com> Date: Thu, 14 Nov 2024 20:02:06 +0530 Subject: [PATCH] Readme update, code formatting and bug fixes (#16) * md preview * added markdown preview to create question. Changed to md preview from blocknote in update question. Fixed update question. * Fixed incorrect padding * Fixed initial markdown * added round enable functionality * put up same fonts in edit and update page * commented out navigation section on dashboard * Added template for LeaderBoard * Added template for LeaderBoard * created boilerplate leadboard * Added better syling for leaderboard * fixed build errors and bug fixes * fixed update page * added readme * readme bugfix * readme bugfix --- .eslintrc.cjs | 42 ++- README.md | 26 ++ components.json | 2 +- package.json | 3 +- showcase_ss/dashboard_page.png | Bin 0 -> 292363 bytes showcase_ss/edit_question_page.png | Bin 0 -> 1486605 bytes showcase_ss/login_page.png | Bin 0 -> 82833 bytes showcase_ss/question_creation_page.png | Bin 0 -> 529037 bytes showcase_ss/question_page.png | Bin 0 -> 288695 bytes showcase_ss/testcase_question_page.png | Bin 0 -> 514959 bytes showcase_ss/users_page.png | Bin 0 -> 266567 bytes src/api/adminDashboard.ts | 5 +- src/api/interfaces.ts | 25 +- src/api/login.ts | 2 +- src/api/questions.ts | 39 ++- src/api/sampleData.ts | 4 +- src/api/testcases.ts | 116 ++++---- src/api/users.ts | 109 ++++--- src/app/dashboard/LeaderBoardDataColumn.tsx | 64 ++--- src/app/dashboard/page.tsx | 25 +- src/app/layout.tsx | 5 +- src/app/page.tsx | 4 +- src/app/question/ModalCreate.tsx | 12 +- src/app/question/ModalCreateTestcase.tsx | 36 ++- src/app/question/ModalDelete.tsx | 43 ++- src/app/question/ModalGetTestcase.tsx | 17 +- src/app/question/ModalTestcaseDelete.tsx | 2 +- src/app/question/ModalTestcaseUpdate.tsx | 19 +- src/app/question/ModalUpdate.tsx | 30 +- src/app/question/ModalView.tsx | 2 - src/app/question/TestcaseColumns.tsx | 5 +- src/app/question/create/[qid]/page.tsx | 284 +++++++++++++++---- src/app/question/create/page.tsx | 10 +- src/app/question/page.tsx | 2 +- src/app/question/questions-columns.tsx | 19 +- src/app/users/page.tsx | 2 +- src/app/users/user-ban.tsx | 14 +- src/app/users/user-columns.tsx | 58 ++-- src/components/AreyBC.tsx | 5 +- src/components/Table/DataTableRowActions.tsx | 35 +-- src/components/Table/DataTableToolbar.tsx | 10 +- src/components/Table/TanstackTable.d.ts | 8 +- src/components/round.tsx | 9 +- src/components/ui/alert-dialog.tsx | 60 ++-- src/components/ui/button.tsx | 26 +- src/components/ui/checkbox.tsx | 18 +- src/components/ui/dialog.tsx | 56 ++-- src/components/ui/dropdown-menu.tsx | 88 +++--- src/components/ui/input.tsx | 39 +-- src/components/ui/label.tsx | 20 +- src/components/ui/select.tsx | 60 ++-- src/components/ui/sidebar.tsx | 7 +- src/components/ui/table.tsx | 42 +-- src/components/ui/textarea.tsx | 37 +-- src/lib/utils.tsx | 2 +- src/lib/utils_backup.ts | 6 +- src/schemas/api/index.ts | 86 +++--- src/schemas/forms/login.ts | 2 +- tailwind.config.ts | 128 ++++----- 59 files changed, 974 insertions(+), 796 deletions(-) create mode 100644 showcase_ss/dashboard_page.png create mode 100644 showcase_ss/edit_question_page.png create mode 100644 showcase_ss/login_page.png create mode 100644 showcase_ss/question_creation_page.png create mode 100644 showcase_ss/question_page.png create mode 100644 showcase_ss/testcase_question_page.png create mode 100644 showcase_ss/users_page.png diff --git a/.eslintrc.cjs b/.eslintrc.cjs index a92fb0b..877501b 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,42 +1,40 @@ /** @type {import("eslint").Linter.Config} */ const config = { - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": true + parser: "@typescript-eslint/parser", + parserOptions: { + project: true, }, - "plugins": [ - "@typescript-eslint" - ], - "extends": [ + plugins: ["@typescript-eslint"], + extends: [ "next/core-web-vitals", "plugin:@typescript-eslint/recommended-type-checked", - "plugin:@typescript-eslint/stylistic-type-checked" + "plugin:@typescript-eslint/stylistic-type-checked", ], - "rules": { + rules: { "@typescript-eslint/array-type": "off", "@typescript-eslint/consistent-type-definitions": "off", "@typescript-eslint/consistent-type-imports": [ "warn", { - "prefer": "type-imports", - "fixStyle": "inline-type-imports" - } + prefer: "type-imports", + fixStyle: "inline-type-imports", + }, ], "@typescript-eslint/no-unused-vars": [ "warn", { - "argsIgnorePattern": "^_" - } + argsIgnorePattern: "^_", + }, ], "@typescript-eslint/require-await": "off", "@typescript-eslint/no-misused-promises": [ "error", { - "checksVoidReturn": { - "attributes": false - } - } - ] - } -} -module.exports = config; \ No newline at end of file + checksVoidReturn: { + attributes: false, + }, + }, + ], + }, +}; +module.exports = config; diff --git a/README.md b/README.md index a63441a..d042f81 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,32 @@ - Create, delete and update questions using intutive buttons. - All our tables have sorting with pagination and caching. +
+ +#### Login Page + + + +### Portal + +#### Dashboard + + +#### Edit Question Page + + +#### Question Creation Page + + +#### Question Page + + + +#### Users Page + + + +
## 🏁 Get Started diff --git a/components.json b/components.json index e587754..05e185a 100644 --- a/components.json +++ b/components.json @@ -17,4 +17,4 @@ "lib": "@/lib", "hooks": "@/hooks" } -} \ No newline at end of file +} diff --git a/package.json b/package.json index 75d307f..d09ab46 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "build": "next build", "dev": "next dev", "lint": "next lint", - "start": "next start" + "start": "next start", + "pretty": "prettier --write \"./**/*.{js,jsx,mjs,cjs,ts,tsx,json}\"" }, "dependencies": { "@blocknote/core": "^0.15.10", diff --git a/showcase_ss/dashboard_page.png b/showcase_ss/dashboard_page.png new file mode 100644 index 0000000000000000000000000000000000000000..aa50d7feaefe88d623842d988b6009081ac0e644 GIT binary patch literal 292363 zcmeFZXEdB~yDpxH8c|Y65G4_9lq7m5qC~GVMvn;5d#{lwK}3`xI?-o_(R&LKy&Iwn zMlWG7y7PGVf3LIl+V44gzs~va|8VkwwUB51p1WN4bzi^xo-hqH1+ts8H?Lj0MyB{m zRtxwBxps}@88IR76ErUPE%5ESi=CKf;alXd>8k>p`V%$Yi= zs7^iymOa_8hunkq+uj!jfCm6vdmYl0^p*+NX}3`GwcYTo2is`QH|MFmR{4r%zt~4hD|6o1O-s)Tt^!7pVZ3 zYN+?gzgQtb5Mb}7RWsGUn_J8P?i6lw^yu+gpn+eE@);n_?JF$u8EOD+%L_eR|F!4$ z{}tRW+#k|n77+$E7Wvuz$$7hgkSkk_42c=qPB_{K$Z%K1arHD|g1JrAn6y56kGIWm zedZ*>;KRW}*nerZ{ja&90t)qToAqQH$EIGDuDqoXd{}iLP8HhWx>vUq8Q?Zm)=?&J zsR+;{Tj{?BmH*{A4lDp$na=hwe6C}ACV3CW8goSFvYF{o(s2Z@oD{0w&ofW|JYaXg zYC7nFPNd&k8@h)(lm!7C)dMUQCAo_LC-F>Coh;)AF2&2$ooIfk`!e_=|9|=^zKFQP z;a|4zTSq}RwnWzaQL7=}6C0R{rv#=uiJxwOTW8D8o&Y8<{oYpoUlU#25bBZJs9e8H zLM+9f11A>y9Gc=@L7`l!csJ!FUi4MK#2Nf=Uil&e1SaXR;PNgy6$JC!>o2!?TkZKo z1K=HtLs81({kPc=XxhMREM^3aUxkZWE*_e5W5*}X#?7M`Y?3a86~SBIkjO`0g2@&W zivKSc{|hYSOHY+Og-+{!W@led9=|TIx40+eiQB8-Ao}c?HSONMM?dBj5xkoel(X=* z;+qLF@<4_5O>fCy<=1*v*|-?nQK}Oc4m1#@$jdi$H&H2huPZJbzi=oGi?) z6_|jnr~7reAR&Hy=H{BNOHNrgjS*nu!2uz9&h`re9XaauhjF4<`VvgPVT+N}tB{zC zP6QPGxdMgnp9)>+c6JDAOA65bsV`*8kp{TW&7Z$%z|0stZXk%1g5|U1jpg&22=r_R z088qgeB?B&QlTH~`jV(KXd-i-Gkg3}-0oH8xpou-Q{U6%?;!>V`DPJxw@k9iwR*#{ zr{l~~^F0R3In5)$nV96vo5KRfp)%`p$D5Qk^fXbIy9#4>1#_PoU|{vWsx7!$m-W;v zlt{C{7d`DCN>S|PD&Auz1lvbDCZCo&JaD^KFNseh+H!h&Iz5ncZ&ypS%e{5NS7l2v z@gB38y%qMo{#TezQj0|P&M|p6zc>eBEv2RT1>lYze*lQFLYJU vCn61)xPteLKU7Hoc zge0sav+#uhg(~|&D_rq8fx;2+12NUrGVlEd?EzKaYr9?dM24zO1`pyBhh$rsASe#> z6^)sTZpVP?X=L!d->^;tNFgnVhaM5&qbQ9+Zyi{y9ok$8A}f$q)~3B|yMtk1-teuo zV}Gi*Ulpc2P@0{~s Zw0Z~rK3cVL+DmQv%@fdtMeBO>|j{yC75OYS;4Z^Nd!^As-BR@3fV3^`1a(w z8VOTsb0m%#@!c61zb^ky1-CoJ)u+10eU)*jTW>pOAvmzLz1H6h5p!fuu4<<>xb@Fd$$K(_zrI{GyfFiCx<7#GPT<_#?eebM8_ z*xEFYiXINt(4-Hla}LZEQ724>()pb_wA6%Ghk+grQNH-!jCEq;@7e{Hq1e%H_8&7; zMZ#6IR7KY(u=hO1n+mZ$KJG|J{p^P+%`Xjt*jSfnf<$w+ppILkCAq=8Rm37_Y(z>+ zZT(SHV$T}Z3ZM#oskt7|!IqHBF=k}}o#v{7N}ELLy%qSv-#S<@s1um`foju2CD!!q zE15cVfeUad!F<;=&deVIt8hJKK pyj`UY zU$648{}A~0K4n9jK$8LoQ}o}_t{&uC<{RBQ5eCXpCcn8kW+Tpr1i29hPI!avXlH3} z&l}44@UJI1t-8rQ%6%5&&^TsnkQIDvM<9(_?!bw5p55p34!>kdesF_@zp$JK-9ql$ zw@x-1G~7u00fU7V;mHQjxTf0Rev-AZ>9&89w;8rM${?c>+0jpmuYZLa%KTDe{Kl>w znvX8RVG#FyP824a7KWduFZ>RTvL#(=+gxVNddoRFrTHeDo=f}lJ4!uauVh~a0RJgo ze@IU4u4TDpj+C?H!^|u9R-H|=vVs*r6y(u#=RKKoJ>b#ZoY*X?X$~~QR&C%JA`_$v zJwfmakJYg$tWPJOzOIt!lFF0UFH>(Ce~wH$&vT$;kiN;&u^B83n+eEm0)hCtiYd)z z9J%Vzg8_Q>w*~M1<&c_ IZ}cJ6+1#;Y`flxf;@;bdysRn*r>x$cpsvp(I|*#Trj-E9?Y}_HE+t$WS5*!%s %%(Ig7|pT&p>;b!jn9`gv&|`AtMFy{9<zi} z}pADpl@&Gr?C>Aniysjz(< z@8graU-F+`U7m*hf?po6dGCA#Eb)@5_XSh^Ao2YL=JpOLjXQm}Obo}3ke`_XA>lAl zb2AU5&Mjm$w<2~1m~Z!PkI8+bGfqcQ->~e-80JH)X^V}=8Lb8G()F%XEn3w1_i>DM zxqY+ow)ZTe?PnhauvLI`G)9RcVYif3U$yX)hxiTd&R(G-8Sc@wZ0o1>1Y+e&)4f$& zh|djnDb4oyltMONo!7evi>{IjObcVk>ud3R%XxG@jy{2sQ@UeA-E3GqMfKZWo5sC& z^me#xOD121x0jsm6_)ZT+a*KnTb+Br?m?;e(3fECx12-!(KDNv6oKXWE8!+uZt8(# zE(ui~1`EdSVcG$BJqT$E&AtA{c|M_KToEs^_BkoN8e)msgW|ou*iHUON(cxyK8R*M z_<98f f`K$D0z@I^`s+Ie%x4 zEC?RT)<*JOBt>uQy7dS@P$3G$wiy%l4sc~v2}STUBh&_f{3uV4Gts}8B96KlgN-02 zQfT*{m_!@@HjUk5i&t@@2FlMStxa6F-l`1kv>lW Aj|a%gD0DT!-#SiO~4 z9{756lH+V>q)9G|UbOaGQW*Jk+M902h|RPeMrHw|j}XH1B$!b8bo3yq*yqP uasxjl5d#btAkCM`Es1DQK4S^?d{a_JQiMXI=7a8A$ cj&wnQ|A#XQNo#jQMuAC7Oelt?B`NMLMPmD3~6atNf}o8mA9f*c6ek zeH$kPG}2vX1hv*R^a?Yq<#kBWHTDa@f(FK`uoO^trcm$gMJvK4^=1+L1~@t941VBs zH7!n8t%mzv@@WS@`51G9lrqRqY$sEu6nK60HeGtGHh1Kz&cdred*eu^)hXM4 7 z-HVl%Tia5a^i@CHFo)R;OtIuL`NrO^2qSx0MaP|CMT5n>_~oKTcSTUI%Y+TG`ohpU z4Hd*#Bq?OLJTS;=PM4zNrYq_cYGE9f*?%efnnRFMj4`H`?TP^*fk`F6^XaJ8LUCo; zO+@kpFg;j|n9Sm=^h?zF_|waWY#sZj4gKOC;Fr+|WuH<8dX4WJ3I8V6ep^0cyAjmN zO-sD_AV%0YSD7TG2v6J8O%gM$Y(e!NC509F?=fBA$iK<`s=%2(urTN02~Xbn(D+;6 zCyIJ?`{7&QB$G#T)81qsU;`!xR0859lc?|Q6YfFjo;x1(<_uUPaDI(DY#r~wzP=i* z0K2E&ax|$*Ofkm9RGO{ej)#4wz{t w{OOpIjqN>)kTuO}W#z z`HpeVZsSFGZ-vU)r-TZxh}@F9j^3h$6Lou(=K11hnNIo7s0)@~YY|Py89sEp0&72< z5(154brb{c5q&3L;B=l0dFf2$42I9oTkJf|x88M+toRt 1?)rqeWB`Gv$^DeuOtJ)QD`cC&j*( z`d$os&?AhTMFK<=4J)v@3N1NK1bUrae=S 6o;0Ff$1A YSreA~M11kXd5jZ;Sfl9b zd8X%kH@)4{Kmu9St!#?7u^cqMXc7Xf39W`|fyd*cr}?M*85f24-ub*F#+@$?CoYQ2 z^5 LR zR1?~NQ$;}3_~(0-538R%lC})MiBp&YE9non(eNj(@XOqah5FQ>xO$(_bGZYC3Z1Xa zo9udTTQpdwsyT?*L$5P&2|y~*XPI&w@iUQknc^u30*ZlA?&=pNnRq_`=5tMsuESoP z#VVAxaH25`m`0^hIOLu2Fqgx(@ZdF+j 0Yp1V$u$neO>bNaEOWgR4mGM|o)%WgzvEnjSd77Q)mkax0(F(_I$|KPh=| z3c^`wpZetXZ6ySXv`xcr{gWBRN@x?h0r&H09TvE~Kh^}xcX4M$i`9tRKhdic=;uX( z9`_k{mwvFKHZXo=Yu%$H dLTlc1$gUPII{ zQn3;*I|#q#P~6OmEJ&%EJSS7ftw>K((^+f$9uq~V(1{&?Z7Oh3nQcGnh2=V3S%mY6 z87DK4{U)ds4R}BFQCvX|CNGy%kh{e@=t|*kRnmpN%9%GJxnb)K3dKnzDM`@W7$dgo z$?KL#7CB@Ik1O9b^V0o~U2UyTmN8u%jVuB!L*`!}?A^2sqSUBUAwDMRNQ+I*+#GTp zpvdj^ADmz2O@Y;7p_9uVi+NNF%tFJJik3w7l78QtW2RfUWmA0kv}(C)|1CB~6T(f? z@^RnUf^-}$!bEMqv1$?o1l*h+ih_`8v4>LnhOoQC|!D!s=$9C258@RRAN7c3%lJ zKa-{w;4?>f3bGlow)w@uUmiWB;*koPV=0Cvw*G{Tv#Xvi3s`Uw`U-ytF*Xe#%K6q* z$g+V1)I932@)D!Pby6Gee4$|PsHn*>hYizFboa9&=H(IibHb)tr%uW)W4U0dlsHJG z`->I>O#7$JIC+{qXTYY?e)KDG`8%gMI4XhPMlod~t)noy1?fz;m(M3@7YCxCfi>K_ zgXh{i;LjL!I8GOML8n=A%p+pUJdGZP!e}Mz*M&;Skp5HAd$R&-^z{5W6TZg9J+smH zmtUx2dTWA}kX?APr7 pnjUE>8w+s(Rc&mH yoO}E4r#uDKu)@@=c8qvTc&DY^p){R_77vA^2$0IVsB>VLEqHrE_ts+=56O zE<227m3xCZ1CtudvKlnJ-7IA55L*PdNii8JS9vF -31ZaqZw+hCd z!I;2SHa4mL 519)1?BFg(dP3^AI?Qo)k?-vJB zS`*vTR38rzm;s}zsR9<% _r1rW-9ABr9 zAfh%HFz5yf7tzkQn?zddzJFLZ2;B5`+c=2`AM0u6Kyy=#nk*2mKg^U+(oGYDJ`<2M z5WCVLBvnFH;sv0+6tsHYhJBQ(93HXlFi=_pdu}sLx_ei|6ACWVf2NSfk8S3j^CHn= z*CqyVz4hVZ_Ums4ecF7YlrQr2-xXUBRPGEbBe!p}El|cZp#8wSi^D+eU*l}HrH6=) zjQe|tE{KFD^cQB0KJqc|wRUV9z*yP@LdO=Bc76Hn*N@BGxd|*vk-NS0EM47dH>-YW zP*)IOv_woksk_?ZGRa^0f(Jnj#;d-qDA=8B$N<-fl`;h;O+_-X7WU&i%Qqi)2_&jA zn(q|_a+u~~_R<>y(u{s8?EB|i&56{zH0j_yvH<_pUqI?2T5J$-+>P=tG4VJoO>ltb zFJ_=6)Vn6VHsSkUN_c1y=+wOWg#=XH60c;{Xg(8Hs7x*P>Y0*A$#P(9&m0$2`sK zJ~$Z`*H2t4EP$O@pBU}W_Y+fuPRsd3xTa%sJ9=x7(8U(jO}!Ks&+)cp`|iPG=_x9{ zA2FN*_SDZtZ}Z$#ZgcWzq8;0KN^Si^=Yx|>P5W~Tm@m{S3Y`8CCj&1TW8mb}dS(w! zHGK)D+lnS`GXonq!gbyYTSGmblupp}pS7AAHeK^_Bq%T$>%0?>h9B6eLEiS2FCRxe zPQw(0-w;qfO+!bZl=7;0r$J$BQ}T4ChTh?6JMrVAk0`V70^IwQeJR87oxx_@7Eb1j zGz@LGH&HgIs%MpIB(c#{?+{Azz30(4nO^{2=9^!_o#S`*D9d7*_4aq#y{b2t+Kx8k z3&dt+vphdlWMALUjg(qunAd%VS87ize^5y6)D-JnFaykl4D-?3$0o~8p9uFIBt_vY zJ1l_!-KX+i0B0q~6Y`d$#*L(fPp4%qCYFLU&hH8;o-${E8T@2vXLKB&rjSc639*VA zA!xBd?)?g_%eDazrZ*iM{;P>NMX1A=9)kDJL=z2=SYj=U h`ao+;t=< zjt((GBMZ(+8BN6Dh6)8qa;NQgyDASn*d(2?aWNz?cbsHSzXJFAy025Q&W@XW3R&V3 z?Vq&(V+f!Xe4Sk&ns^~Ue!ouT9r)*4CdlYT1WPouyPpbM 2(?=MZ0ww560~o8%>i?7j3?O2!AiN>tv8szbAXo>BJr5 z0p?^rq|~^P{+d&l@f$^^pWXhCPL$2%twpAasfH}6>uM$Tk;fRPg;`xU=+w?bLLawv zC4;Xd$9G5X2}9&kV1Or@rXrPL1zt1k9`1UGs!;EnzhmSuHd^qmpDrO@fTPFxmGb-> zFH|qask_AA@b-++yOB`G%@j=C+mFQHY!K=FDFho H9+d8<6!J5DCRH_n MTCv$LWK6n36Z90tzt`Gk*BYeE@ETS4D>s`-W z)9`q<`08>{5jk&TpU5_4%IXFCs6GZiaS#f0K{p9Z!tLlqG%4o^QCm%*pWmhEN(I|! z%L2B}2^H;ktZ(#-nHX*g;mt_PO(m6OX5Vd5m1wtjjljxbhTAJY`i6ik=5xo 3lRma8)%Nz~K4Q;JbF5k$>fKO3=Ls4Xm6kyS--u}@%vO*U-bN>wT+)Szv zn+{kkRRrndTpV!MB9zwt)iLtc<9d<}Nd%+O`^WUtY~-@va^R{L&+){N@>c!yus$LK zgzJ>D27{w&k?)oc>Ym}J^7{o3p)u5m>jk$5tEnoIkbx)d+1-urm-Fz6O`y#@=$;B? z$~;60e-^&p(*J6$NDrzf^)NQ^36D40*ZMxs`&KTVsz#B-O@Cu-wc65-S70D!ImTS% zYnZc{t?Gaj+G?1*qdZGz8G6)7lJ_$x#*^8K 6QxO%;5DP z&7?_^1_?XMoPH{I@H{f<*?0i9N_-*Z!3VF2(Cd^{e-Eu-u=y;%FKTQ=dZiEjJr)RV zN*PuzU)nK)kvD$4L|D**^&=RN;d=zDxkuT-;8uNuHKH`Am5!OPweqw*utz1~tiPlY zt7|KYVd?cX&8;u_&=BzaAn0Sw1BbY8VD;w9y+4qmVYCp`wi{EOtxgf#FWsb0=qePJ zf)c|lNn1*lJ()YZ%!%3yJPl@WRI&VW)jt@#?A(pxWvA3P|IlvE-8P`4D&kI2OOGCu zK}wxbTHh<1*K^_fdpzysJc1N9@V?xP! iqmh#4o+yiFoUtm@ItMWxC($!HDED9tu${v6$~|lMST?f zO#tG{Wi$IC;x~vvjQ#8@Fy+VTFvbLPk9{hcjn3hQ2F;pvtg4>v?2Q0 fx8S;{%3FKiqZyW4L;)#w&MR3L8({3Ki zW10zkcT>c>)MZh4)PW4;gK%ju7&}|2anb4R*+rrK!1Yv?QA^okcz(|32Jp==II`&! zq-mcdx}Kx;86 f-`DWQ^ILOPYN1j&I1=h%gtCwbx)1EIah#Vf z>NXUXhKP-am-AG538sjV3+GMQ`=94%MTMabK9-eLi{7zw_z(iFw!m&I8st88kkTOm zhqfFFe{(VJV$L(W`L%;AHB)+;`UYMI3NDjF&U^!I$2ddU%{w(SVln!@Y2J!aHqyoR z%Le}Dc4`Ow8krJO*092*Tqf*JtAK8MKBUP0T?HpG6 4 NFp*R<=U?X0Gcwo55y7g+sTw9T}-SO>h=_fJjeNp zedS^5@Efp d*Rg?OF^`72TsIce<%q=^_$W=NmspAsJCmsPJwS_^B0E zEI2N)UvgzESjBejC`&_OCK 5u7&w+wmAR|uT!hOE&Od8M zGNq~SUjO3PF6?kA^nGv5gY-9Gh2w}m8@TTK3O|Pmaf4&%OH~G@m8u9Tg%qTJM<34g zfrf|v52Sy&0AoTsd0xQ4d)j`n!fCP8GaEPC8RP0HT1MnLYq!^*xrt0Fgh~63zkk*u z%rSKFQX+me0#;2#kM1d0{P>Js*))Y@RgM{CUlKTOLtR%_B5xS2nC)rTq xd&6bAGWrUd5$p4-!{gaY2Wo60fJUI|fJ z@|u@~Lo_*rP;8_?jfi&cZ#Na{4p<)S2l68;9%z2Tfe)~t(4vswGn4Wd8M`rlaDBA4 zTwkT5$5EsX5q6)!kY+?_-~&2x8Z(Do9kg+hDfW0*=XW6M{r;B6a75S%lQu6+`i?4- z&fAZ)@*i;s_m+ FHYHA#H5 zi=AqT4)Tb#5==^6tvbrpxig(qZ|0_}LFiX4w}8B=U1D$zbk{8RO{Ph?%M`HE0Rr?$ zcC5r$PZBGhR>&uJ4ulGjc^j_%S!dZ6VAaj<0gmNB;WF$y<5$^ug>Cx9-Zp__#UOH` zy>)15KsmsqHu;KTs+gW3?D-#p0tMEgD^&HFRpq|7L%@(Cl395i4Su8G$B%7;l_xp} zrrE5jU@S)BxN?#G7cNV|za}n$e9L1fz**L1aey-M&j3=~Hy#3d M-Ue%<_8-HYDMjf1{lKcn%$7f;(#7nKN>pL%YLqBJA(Xv{4Odq z^AVqxo^R#jz@LjKsUNO(Lu$!nYddGYc_V7Xh=_1EtjQxN;2X3?&v`8V7T<&3yedkB zGCeu{jx` ~@c@i>S5c zz+O%nbF`m}FL}l{TcP5(_bjO7zIlJ1jZ;r8nT!p}I8TizDYGU>gHD~jq1_mR?g>s; zI*zy`X;3<81vBEHytqU*gXM^zyV{&T@Ym1Y+IkRTGFWFwJ{T5iNw*RR{GrWcG!u(l z(f@koE;M(I#m>P$mzJtNrmB24?6hu~*wx$9I09verOaMwr8H+dkva)mXTBZ+cC}Mn z V?sPtAcnB+r$YIoc(1T51UW$7m;?kwxl)<;d_85t zYVfm1+J@(zSiNS!;O5e);ShyEFNgzSd@8I1&vycGRly}4?=aaOI^=ri?g%V1xV@%~ z9A|dpTlGmu)Rtu=^>5VLDFJ!F2*zJPie}U60+nZg$AuIvU=@$MUxZUKiu+Ag#p2w> zH8a@A(6(HC&N9||uc%UI(5r8*ovu_&S9acIP|$d1s{7NeQXG4krT6msxlM=hemw{Q zxA?v!u0G2YMqit@`N_xF5GqvJmK(XvUY_lDZ}|%{GZ?&Td$3n}|9z6E$KHG2^@WBp zsjJ(`APk{AIT{ChSE%phOwecu7^pFC6!c$9> X|D0r0F8cj%D+al P;4I~OM*=RwvJcGyh%uD z_sOo-#LDH3SGKix8e!@OTy9(xz5!SXu=AYga7kS&p$A2vR~mhFF$ouuv7)*weZr1= zZAChJcG(-Xb;{(h
F>hKZ^se@|8wz_gH@{glPfITVdT0K8y zKq7+~j?NOTli##E#HbB?X4! k2*(m@QqolhfnkUxd%0DmrF0)0LEC~W}MPeAnvw1j!pcGz3MrhhJ60gs)# z?cn#MV#b-6Nc@ng2zD-9rF1QGjWLTYjN}bfCc8JxYUATimrcY~;b>VuZaVh`J3G(c z@)vNJZljPDwm Bsx3b#d2ipeLiv`d2zwy?!YdKSK4B?~u3A41bHa0Vie3zy7gA zfWvz#ITm0iPt~Slua4I&nI`4x#t&J|Ji~ZrT6Nt=>G@#+Sgghk<*^W-m1+|C+j$49 zppc(yen80$6~>uff1e_k!Zh!3hUd!-yqhH6AK6(AAz(e{K8%U+sGMf6ZlQC4C6)~- z-yOQPu1OXj^|U*9qcpZDF)tlzHFQuYM)RbC(}%<~DlYWYk_$|n*(Q~b8??akmz_t^ z9;FoC_ai$5(#$kW>gi~FF|>1kt+!g%uR-s5J7i$4yc{RH7P4sLeYt^94Q%=)<-%|m zT~1YQj7cbudtbR@&g1aI8mp^Sfc*M01*0z=!9w&E30tbMsu?RtAXE}sDv2|gINN#; z&JsQQ7LhhF0nzVWKAJHjWe+u=*wWw&;xve d0pT-b6^aM|dU_76%+kBZ%_{+~Z&Y|aC-F0ggtT_(9*5ZV3Jux>>x4Ms z-JT~e8EL^sTdpp#X%*op9<@s4<=3(I68RLLpLOmwU2Y{bj(1AxI5akvmVbXFaO1WV zaF=qlKpZ^BJ&L&<7mJv^)i(?2#W?5|2b8LhY{Z$Eu*yKMTNQpUw%>CfJeQU(Zo3A* z533(_zB}+@*M=R56B*BscRr0DtR?fb@0$<2EM8j!ukJ!ntsGAuWHDt8=SiPdEteME zg{5K02VK(M2-EHsFNZZuzC*hZWUBua;L#d>DM9&E)m|3-#H6L@kX=zbhYyE+K63Fh z{Cr?!@h{a9CokVHr#`eB4gQwhIC~XprN%6|J9Tx`$aCde-`hw5X4@Z?%zS~(?pA&s zSG-50es*6G+pUHSdvW%?`E>3=zU#8Du{3^WJ=tY?-{Vc4Hwhv}-C!UL#3yo{YOa_L z_U=cdjL8)inpajhqwxEdpUu>p2@)i(w1|WUQx1LHYqN8w1TtWk)=-=6A9V0GAf18! pK;_6lkl4MIH0gLAXVC9ljNK`sqNVj;g{D)p6q8hjAwoIp0)k{|pPidB}3dTd0&TX{0PY~{0|?VyAC zrLI~1 9YrvsnOy3;rXC4Yjw}d>ra${e2Y!= zS}Dv;KhDS%QB|m=7Bud6DQTxq8ouB5y)6G#7^WwfH^jVqtSvXiP({~u_G){3^i~(S zqTpGlr=u{UYw44-c4K{qFdzUJU)3GJo;Cpt*IetdI_W!F%im~9byxPt2BlBYuA*1( ze_rBQ^e( yqrfN)W2qWk8N)e%ijOdC4Q{Bw+>)>9FnA} z3#q=^Fqj>;X-eoNse)nUj{={=UjS$v!|HX|qxhG^@H75HG_LqtXnaTFGYFws$(Cl6 zIm|Vh&k(eN(~MWW1#!Z6N(gEy^}Tt_DTe*1R2kn#(+CbRVkLYa4%QnY_7$Y>+HZ9m z`IoNR4)h8O74DDwJXIfv_Y?Bj+t01utWvNEHrFzZU(jB{<&zg)c^`WmVBbAPr%J}6 z!tNhUI~rbr-%cN1-yQ!JE!E#v6Np6%As6bGr{*d94m;&b;h9er#^r|1VAqy^peQEY zG+0hrB;7hsOPRM%hJCVAa(7_0-uJ{9xCf~cZ`=7Mh|U`3)Jr}QM+`fdD)zDfXB@BG zaE9g#r?b|!uo9m3O}Y`+_1HIB9RMHR+|zGm7% IYihyVO1Os>@uh>xmwK@c!{*z z`&Hg+Z{*Sz3x|gY!WOjgOjWqVnOK2AMBGfa{quUe0W?0bHPxKDt2XG|;^#n_?(uef z>YWcaxi!28SzWhA>}7j0Uh(w4-8oiPSxEv`BURvv?);S_00#NA0{GB$ovlkXfX^)S zjRK(K67VlkHE~V4H$KA?2A=<>xw%N~`v^56*wD4!5XGB@?2GV?IlFRfSKZ35P`+|> zk3d->lv32-;V++Yq45k>FrS} c%Qy?gHTTI5(D3}l@E61t8`fP80RV`e)KJ9t%(SbzrF|i?ClK@B%hff(w^r* ze8(Mi+wwWRQAI-+k0YoU(>eP(#bNV_ESrj_?mw}^t0BsrMpdTM M s zU!J#ZrB7d3>0>!~0Y2?3*FYr?3? c=Z2f(^%2g=->+1QU`%kM&Fkf|+SdPi920-G=O(u7gJr;B@Q!f0I5%}Zp z9!qAa*GM69cSaZX3$(&wF7=;6EUllhGL_P~Wl dgo%!svDY%+Wv_fW1zY*g(8dFh>XmH*i);S{upzg@MF_`2g3*xP+# gOD~@%4uy-iO zu~I~H-eirJdyu|`-QxUZC{qMm=WkLC8z;~GANJldF6wpf8+9QlV4+Az8?=Ceh%^Qu zL&wa}ph!zQbcl$G2q-Bn%>+Y8$50~D2n dkz|F18qy88X6Xxx}r4dr~5w!1LW|FXZEEB%vksE{dw|te#9lX zME_WVv+vTy@z!YcR#RU1lw;$lLzCB5Cc}wu9}{XxQSS@SP%qk$qB+crdTI8s{0mj0 zD`P3>uedV6lj+-CNqt?ZfSd9QKQ)Ho^4TM7KiqH1na+88>p1Br!N!^`*oY)5Ljx*u zUjl0Ni@9UMO^Uw%&h#gl8f=HavM#^*PEPWjO$OY$0SD0NH)v&yZvcBZMs4Qa-Xg+F ztv_I#%wK|Wr0BacqbEtfTnD%RtW1eWUl$)%JqB?B;iSHXz2%(7aYu+(=KH_BGMxjy z6zpJQHwwa9_Rwe5H9Dei``};lZBt>M{}v=q_3SV>xbw4ufH 2D z=g<|F>ufAU#Z%k_o}}~v_}sX_#;8&8_xBbrzAqsPKZe_XMfg1gNYOk&Fb81Pl&Q z6hObfB%^w*1~$f_CEmNY%=U#7kx{O^G=^rL2#D?s4;NA# IS3G z$m_Tey;g&Yl&y)>>BjJwneee!l{kIoxf1!6C#h2qokB>1=7n{=F*F~1^4$nSbc=<= zV11Deu8;D(7dRxjw=G6~#u4k1$v5_-u{;w1C-fa}=Nwp-16c7`tkoOFUq07MvwqO9 zMnm<56CMVNzvlup>ui_a@lWf6(5+A?pE-kx(MfMGl?4(ynJGWgkATTmuWw~oSB-I? zGC|iM!#kw8_=YKA3Ogu?g6^yJg<5Tz$aRQEDU3V1`;k08*S1hXUas(h>QjnaYwmN= ze0E`OHvl6~2QbqB1${F@_$LDQ6WB?eZG9NIk_C~mYz2P#p5EK!G{#7b>o4BwQiG~m zW9%b}CN3koE9loc9#g=U@6SI-5i6o;T9ivEZMha=u0vLhdP^$43QTg!r8ikw%FN8n zlQ>of!{4e=*Q5{J-#g#^1vQWo`iflSzX|=|loP+qDfCg*sIj pO=#VCev<;L#IDq&-T@|>-=^Hf>Fva$@hhu{(M$TWIab HLLSnHhklT@`PWckcFG)xScaCq*y37&YGuqv{ zAm=+acF$|pDKYT7B@5`+62M`+Z7^=0=ymmDVV(CLy?Ma*pSDY#K@N}U5FdosJ2?>t zSOL)`k)9g;c1+vdu5wN<46QNYt=FB3o}Yf8j>XL5Ma#^ K;C`}{#_;#HF@uex><800s(gE*C%M6p0Y!1&u)f@s-LUj)Of6S#n zSX1On ^0GKNI0%c0yIUV< zM}XRUeTgJPH4$cQJ^i@%1mjN%Q{TTOindZZcr_2NnkgCjoB*#D9#;CbIf~hTRrVNM z*1EU&2q2~}U(z7Fe435^t)Jmy4C4kxGD938XE>d-p+LORhAD`g#85r}jC z |eU*oAEI<@$d- zmF_>&kNP->!KNQtm%4_s-PI9-(2a4qndRW#T`{l9-E>Xyj2uPY!9-1H+;Hcza6!oq zj)b*!7(i}2L6~h3i46BDHPa6d3N)+TKy__fzAX*@rat*9()c%Ep&TVeKXG8G|4jP` zYVxp|_a}t@_H<4SwPNJOSEn>Du*Z#e4uEnWYL%*uBVo3cxb+shMoL4+I{r(hji=Mn z(&}&rRL=qQa`KwPm&c`LPq&Z{Dc%}g1wD=aNUX0f5_SKq(wcDuO=OH#p%7Kf^YT6j zZDY?`Y*my;x{gjYs<6Y~_aWZ6Z3QEY1>v37_Z#??4I}9WRO+w0%^9-I<^Fcu+&x$$ z((a{+3hq?OPDP-+!BeZTEFQRdXZvsH$Gm~#`nVh1z0n_yJ`G(Q9-?$hM8A@@s^Wp< z5D-xsJ1C`AQ8!;>)#0WT?7`S^H`EPW*uig?b#qYcMo3w9$1!=GPRfW1`1!d)M})UT z`9o+;1bR%r5W*dGJZCQKFuvriegb^@DP2yfMQ&UXRvj|CBy%Zi82|B{&o-?ay6|YZ z-L(8^TMXXKWlVA5L(zI0e#JRbBQgt4i1TDuK1PO>8cOai6Zyb;W-BHpqicM6d`f zXwMO|UE&~FUtf0zGu2P8)wX8(d=}*}oj(PFg}2@`O@0JpEwA|Oc;4h;s5DJYPqza7 zrbb;3YJuxbIoCckgw@P=vY71{+&HaGx|g+NjLC^$gy|IpGls!}5Ka@bpf$iu4wa2H zqd9|hyjTI}UbGG9%l*!R=?G7YS-LN4VHF|2gX*=)vYD;y2@DK(-gQsA_k`rCU;OY& z3c+=Y!_Av9Mx$%aFymA dkT$!wURgJ1I;=Z$fX~nBlojHWIvGY=ULRP3g#1NL1AG`QudGWyDQ=TqE z7)wQK`*G?@SdxMZA2Zum+G_i9*vvE>z3BQNVF e# Uh&Ur9yVF zQR|WL_ZI=s$yp~qk;CB99H{on)8B;1u;mL7FbcS7L$gV(xUpFbNeO1~oc=l+TI$tT z=8}zDjGz0omb|7b#?CG~ndsx~X%jODgz6dJ!osUwE4}8={)lggp4A`jmKSD9AB^#- zdGK%vCz$leJXM!WC*~aMLbn7hIb5el=1$f;1>9t)`{ZGCYN{y$ViZb!v10hvxr|Ww zTxaSdwQKcu%FH|(o3rnC^jZwl6sASE+^pvH49e)HADDW*^HO0SUJm9kpo3V(W5OnP zA_!}rI#+S2O6&st3~{rk*MjwM8D{92p!onbFW}ei55{M1SAXI1<&O%T>q}GUQ9gmo zs8E?HqC+j-yX6KVj7f6<==bAvXT%AhhvKt}D9r#P-f8j61U00}uo0e7f>0tVsI+n? zqK|bjv(@C}rb>%O<8z+0L3+YdiG|7>nXLZv qqLsWi;V46NXZPht#;R#l{@| cQN%2;EpjJo ~cjijJzh^{jt$qLKBhQq5&9dV{yvvZA!^NuZlh0IrgM*L9OPpDc z8vSlrjr|GdhyCFEAPNxU;7}CpkvJ)=WvU#J_Xyf8tR`diCi3y&JdBGHPyd gz2+Bo#thP-|gam66`xtF8 wm^s}% zc(NK5Ea%q4_p*rl9Hz@@w+o2(2mYa)dPX@UazgkW=X*KaMwY5QE77gv*%b;|(8Gtf zXkxY1vX<~kl4u>~w727;r*T+C?&;$^GuBC7`CX{(1pM|*1M{Jm$Z!v5ZW|S@X6HQE zj0*;4?y5c2D5$*SV4)GM+qFL0Yqe{$o1 n}Vz6 zDe`RNSL;U~T$a;#*Zb8wTPtfi<#D6?P?$mTlKgWI&In)-kGl9?!#*;GGKnN+?Mc$B zDyAx)#+GSmXe7_h+Ol6rC%p;N2R`UrGK|j%wjY4sg1dE;!dK 59QXb7WmrUn1>lLn<9mk8hDf1NqKnZ$B@N(xc9@P?+(Y9 z32TYh_-Xq2qs3OsADGqP)vSXXSLM%ZFGoP)U3R~GzL&W&Xtk^IO3Z`fv_Y|Ut0@^I z?u*6^-9RxGBW6 ytVDeE$#+j=#(GWfl`PS%aq{7b3V%Nrv zcSav%RWKW=ax>__%_lME7|oSK-1Ag|10M~46+v1zYAB;nYI&yTLOdhjNE?^6u`Djm zkw@p0-AgYnz0iw~UF_O{Woy>p>l|AfppWoTE0PNmT4#L{Ep<;?Pr$yG2PyhVN*Shg zi!0VL`K_){0OeSgjIWqv>$|h98_}u T6_aS=acS*4?|w zE3<=W)~(Nnl~8#)LsJh9N$K%90p 6dz>Zn4Ca$mHPQ?* zAg!0MT9YAS%Cr2+WvpC+-j*PxhUq?RU6ZaBA9QQj7z&>uiD$W&r!_W~j`h*Ubhh16 z8h%a=LsaByXCyMX-hitXC^QkmaThq(q@^)x)?mC~J5tp?OJzpZpTM-xhBbh=ef}J6 zX)x#!xYRpZ)^;dkt|A&8zVq!6JG+7yGi6&mMJAcu3^iuM*iTBY$n@pQ7|jOss-?zt z3sm ORx ~nzc%w2uPRA?vkQAIHt>^q`#dfi02#G zqy>@~F 3uaEvd4;DU0r$3 z6^FYn0;7hd&rY*MWmxFNfzZ@ 9?t708smNM#=Ga3y(}sT-x$5=Xn5x62iaptSr2!}D-KC``n_pSV0zn%l(cbx zqq$n0ckw6cE9{}L!FZo_Hq_8Cfxl$zREa+SqXSoU-d-dzIosabi;RqnlzC${jPtUx zu%Hj@SqSDLfn_$1*mD7J($LW0S?CC%qR$}lt~Ba4N7JM)tb2|=pbP(59(xqgkFX&L z7=<>C#vXV~&b=XIxhVm!&%s@nwI2B}i7n>fn$1=vEamQo1 M)KgMa%WEqT{MI}r@C4I4% zt>>QkL4OBqF=h|$`Kb)QO&h+K`Z$oTDYyI f~ih`V_TRW+=W(gAWDI8 z8a2A%22o lyTV9^Q8fCRLT0PBulez_ohnH$obPpzWWzMX8c~%t*u$|8N`n+>#`lnB71bWsg z6kQR1(3VMx2KeoVCJ|VW6f&^c{mSBQgj@_?xnH2c&!!FBd|yZJt}>INztNg`?dAKQ zR5Sj;uS8GGjXh&-asxQ86lP*z_{D_QQaZfh_id;ChF6Esp^jsoc`C@Hhf4X}DirW2 z?rmK1vjgFrRClMvx-+rTR~vTkq--f49=B@ 6W7Kl)oUmUUjxQ z1?+OJ)rHFW{=U9jIaU`Qr7T{oMtyX+N3)-Ux#j`ng1MbpJvH##z7YeQIZ}PG1g~>d zb7uL@NE$a81dY*X?4r_AtPnE|N(F5n4A{okCj8%k?v zT6`pKgKD4hXvB}RZhU6vM|O^xidHk8=M2#C+H`nz>SkwcX-L ab1Ygel?{fW z{Mu tf$rBAYT$zB!3uAW+SF#e!Hv@6qOkpKt%a zAJe5bL;-(Xe&8_r5T(2* 8Ff3k-Fka#X?EEv2MY&a56K6FD`JW|mjZ;?rgF@FE zcZ?%cW?-AlvVMn?G#1CVEVDEOK>wTNkU+#n^u~~KngC1}nx?^_X9Vc)+x>!yK8ZC> z8M9X$+xbcjmfbeC2&vGFm7<%QDlz=^qnl$Nj`NTB@T+EtAJP*@4oNwM2|ax>l%OqQ zlyF`>{dIgVQjt6Da6}|4<-(uY4tv}{dydgQ7#wi?=%L4ksyV1x*#fv{rI83G0BTvM zdbBUife}OW0wyavwo)i-=Q*#B&=%|%`)%Fn1e6jw=Pn #UVPsRA(CTOr;PrAdv_G+v0(PvIaDGJ3k;kn?Jm!k@*jj^aK{l_3d6P_ks|I9> zKW%( }(m5u-IU|?Xx&h3CulCyjYDZp4w50lhO3r8j) zvKn+&;kV+FhICJv0h0rGVU8|IS^UhG+1=fp4$R^HZu5~5U?MRjQ2#7{ch7 i1=+fRC3>mGQJ(CF(mDOHVTgr+N)2Y# z)x@jeu1@hB0w PBAXkcN=i0Oy4{nA# zBig!>%@DAx$Vt4P`Xfbtb^$c3FI0kEyJ?+q+(1Zm$Y+|{^C$<*e`RD?2eUHif<~*- zzE4ZFgK}kM$^$CREpJ^dgbY1j#~)Tny`3_^u^t8uq-EoNoOv$^dF9Zum3gOId% ziV7WS>;!rSKmR%W9}-XGwDG2EU|+Y*%j|+(d6}B#yJ>@($zw8?_#UkP6TNH>CEA;0 zwU(WiUaJF 36Y8vbY{HkjU?=C zaadB`CA=2rFxg@&X>6%9Hfpzmr(kz`R>-$d`w -Du2(S(nu91lmJ|JxMD{ l3aZU-7gRnaVC;-I3Scm07JaIwgm=&lB!KNXI3y`o#BD8f3Pv z3_YcGRJ<~kaF^ZR|JfnE(lX1yJ`vlO*=^zMv3^iaYdkLZI`?$bhKlZU*jM0pW91HA zReMK@l3Epu$ah6|M7C(&RaLX8QugRVywRTtv3(`oJkva*&>68&8#P`o=Jd7gsfn^@U-e*i<-R zh@~?=S0AvJm~??n28nSW`AKr=pP$er;t5eVPJq )~u6Y?!2MJ#|Je z!Vv_9SFs4}@3{b1)M&gH;vieP0dY-{JnJ<%6v~oC5Ar|kssxD{e!{exuyAuLayK=N z6+0)K%0g-p6A0x6KEMf~che>&56=ZU7cgl}&bBPzU>R6%(bM1 -=0VN3$W} zF^n-grwua-R)=lFR!b)O=66YMw{X+BN*$IX(cjmrW7-L6r2`M5vu%a^o;M)Cq@D z7#BYrG0Ox}nL^E5EV7uPz+#He9#hPVxKxKEt<*E%lOLDX%EoFQEVqN0ea6kg+N#LX zO2b_(aiQs^+-C=Mds1dK!Hwix$N4at={5w<$YI^CCxn_$aD6A~nO~98Qr2|3F>T6o zwxMs40>PXmy(yVt#`Aq);Gt1+CvrBJ7O|VFjyu7CXSU(e2-T#})DO*&9sHPn=NNR= zcv!VbqoY}ZeOo8;l*Uc3tv7}^6F=nzhK3_EZiW9qjo) tpwQ#mm2)9uy`OZe zH9>+JaIElXirujz8b1H~+h}G>2UUXfb^yP=*Q>vajxvVcx0U$W^ol=f)I9?JJV*@_ zcC7uV?Q4v;;L1Dnuf(W>woi T z_6M>yRs-gu850%J&Gu{6&3kBP&$=&V{xBNIiLRkv%gg-3qJHv{UW+J%4nO`q&E(H( zWB-)q$&d07(-jW>O`d?w{=Cn@o@@T&0ayJ^o_~|)FVz J4Zl@Jmzfp-sJZGLL2`O zxiU;Y;?2E uADwoe0JGOelP zzK}nbm_`oi^+*JpvGbBrSG~vCUv>mW9Md4D@MdT*t>%PhO1|!rDbcYY{tdJbIu`q! zac{i#&ri}goCu`_EnYPBvS9KE?ji!Rbg38KX`c%r8p PTKoFA7j zAAuQ+DYYvKg)SRuQoy4>x`RGOzV^PXKHqxY)^D3U0#8zU{nV498g(|H7|hf9Q)#^C zBln37uBgB1@Qa&)!cA;bCw2aKTi7xg=LqWUH|nDE4<81RjQcEEH|>gCP2#a;1cz{c zLg%6~h@RvW)9m@VUs!+~6tGpM 4Oq%-1Br zcKfSI< Q>}4aGxkPG8i QDhNK6xZf3MykKuU{2G(gF_&YZK ziPiMqkNAr^aia#(lK`>P6FZnu(TfAKz{Fhg6UfB>rvdX |{_;mmG z*L!8>e_tfkGkKz^@*w{AZ9Y3se0?SM_t*Q~_W$&4`|=~E*uwF dI#x24$4xL~o4l) dz5}M7K<(Z^fn+C6n)-> zX994}kx$%MADC{dF9}BG_7yv%?99&Xw7y9Gp~C+14mrxJ)+ZCQ-@lgwiQI}V0}l1O zZA06K@diWd!#*t+hX)s#XC9)(>8GE(RM-5Jec`i67nL6+yE>PgLO|HdcIeAoUwfCZ zuv=t(NB})7M1GsO)oyv}1H(}U%l2nypIo@WUL^V|zq%OqxS#(H{IDRkx%5nXyhrPA zr`RS%o`yLcZxiaY x74uxP|1cy(&o7t5LtlC;2o#!W z060RD5wD}8Lma7XWo5Mlip(VJDN{hf$zMKSDslziIiKB4tNZu06cqz^))RL{FU-*^ zMV-^8Q5sB!ky4RU0FCa8m$S}kWXR#+U>_1vdRx3yO*k8zyNz{>#`AoXB YP HacS{;^6nHsWpH)8hiwH#c;^ZF9LqmF>rJ2i!**2!yTi)M>=I zhcX|COcM=r{7FXi&rau$@A r4EbsD7Eo z{wAt_r{_OP !d{%5lP z7X$q4ug`r)l*&Lmd6@#sP7a-$&;(Dy^z?Gg5do^41=64bkf;R*`cD94LG2IJ_81!L zlA&iyCRv1qh264j<8^^KW)W*#M}*$ 4HUQHUSjTfZt_ckp`?E+PB@!4F{a>G}V#wu6_T>Lkz z1S_%d<3=ueU|)e=V8nkSy& uWPV 3m zwId_7( @C}9DZM89g7*Fr+QcZxYRF2XzhRNUdgiw2^B0<5P6!qd>d_IBKG&|?+w|;5 zqM#>`-% ~caN=?no#KH@ttdD7nf|1a)hR02n zl>_zX7}jfT#Ma(h$p$H*1l?n`A}e9S8FBupH4(*TWzONIJXQ~$;S(9cV|Cwf9D?_@ zOCE!j%%0|@q6Y>-T`aH^_Qmy81$2NkBO*SDxdFy>*Dr2_W?JP7D=RCjaKd#m42Uku z9&A_-yR~A!_jnr%_lT;p?xq^n*=NL1L0wcFF%OS^&O~9lyk%B0yMtV8P@0`#+Cl@P z%;&_x L{pn@&zRJ!I_aWiT Xbc$eOXf@Jeg3Zdzvoo17j`wXfppw0=)hsEn=zE)4gVP QtyAtM_95r7abLhb(d_}Rmri6sXU;+xBc0_$(#RViLtT$kimL3 z@M@H`ST4^+751mWADBcu%c@U^e8qiZSax;qjb85?#>qDH9Fun4N%KIsxJ|AZC^hu0 zlx^!ub}}%CWuunLpw5jA*VFIMY(01?SerF1uI1cw3c4(&%}R?L6CUT$2}8cSt#|8w zO}$#%Q(@G_?5 IzFn5@X_%`UH&%Uaj#pz{NVYMKRg~#PtgE$keD;g3 zsY~Qn(*=gFaINm1&YXIGB|<9_{nb|#K4-m@X(J!~yeYP8^a{O*sJzHp`tm8@sVUvo zXZcTO^fSf#ulLwwfMG6b`3~rM8%=DS7uGU|ryFx#9`eLbf o z%^;z^@AJ3gGT&;rWWc^|efr#@MTV}SHXSO^WDh)N;KPoS%r=;2g?^6>PBwYfi0R8_ z7Ih|(h0oY#PG%i*U*asQAMBK_M%lAVSHLTEqB5VoqA+gdANI-DAPa$J&M=Cj->=j$ zU~~tPo1fS;CfG=8T`j%Y7F(jbaIX`LMHs169r}n6%2)-hfjY}}2ll(=OJK{rQ?<>} zLN>lAkJ*xX)2NBoc=V8=e9CKmDJdk`h}-6}rRl=FR&t;+&+Az9Av;HCXbtNiQq?D3 zv^?r#`mx1Gl-ajy8Ax)Ne~bD~!fL_zVfe(&GZoBMmX@04bFx#Vw_9E)c7NIY^1$t7 zgo7cJH!|~E3R-|6q6p3kO*crmYP#e?__}Gcky>O#M}z&)>lCpi6Z6HE$yB7P#0D9; zRX*C-g egwrK!7 z{qC7C`n-8%rk44c?K+n-dX zS_3McW9ch0BcUT*Id*_BkZV#8oYGU>y2Ap3+$9UCE0eOv?7UDn7HQ#)A1`u7O%C7b zt{!EF *+Mih yeFXF@58%{@MGuwsp zIz6E5EaBl(;M1)C^io|r4ie1tO4NBR-H(%J>FaX{LaF)K;Oop}qdBeh6LK8)&M>2j zT>^Nd%XGQ0-%^7yu_l{0eFhy{c&*ORVM+-UE{~uNX3V16$;Gdl!$0bzeBo^Dn(ux5 zE}R<@UHJ*gOy*E~N8}7)ZTu9UTdvbquF0n0LR7-At=epuFk#F2hJOz`D%G;G`TKeC z1XR1%RKzG}n6ht5lZzb#D8Cjy7TX%JpDZoFza+#2x7&)CP9#PXh3P~MZ0k2!LPHhM zD-WzU57wTIt}b$ SZ(1db#d3MwM)ARFn>e=PyH^g6esp&H$5z%Lr67Wh+Uyq+;h^}VSFz7;o9=A9 zah4K0l`w6mHoJPH>k6&q-5f$71E2EHo5Fx3)GIIL6Zbo#CDEpV5jvb<+rw$7_0HEf zGparg&UHS}1;d)e5V2+ZsC^*f2vQVq6DoA8K{YkQ T-B*(mX2 ztNc?= tJ9z7 bt zn+8%RV1vaF59wa)6}@ZCYJqMEkv(D+`AdVIGuwlaugnkOwXUd^AWTA`)Q_O?0z+9I zK5j$b>$01=Tcuwd`ua_YBbKDzdX<@CAdCV=W^0#ubbn&sc!OLCj9x+9z;h;gesQk% z@bCbpk!#RRXt!gER+p#T_>m`ybG^A*E_N~cIac3Dk;vmPc350jwXoCuf)hB+H*O)q z*WzHpeN3Hs@dQ*uxXn Ejli@IGesap#u`7ye@)p#;dtg;qD!$dpn;~Az!i>kD|Dx 5I1avOF0vg52x=VSPr%f&LAyK3U1|Z_d2r z=I#$NN`2zF^{jE3A3OXRyRN$1sBWI3Wp`RU6Vc2%yNCzuF6F#bSevxPRE<)b<#+k_ zXu~goOCm@jr}edD#<&xZ8Tr6Pkx`NN1SKdWbTBW`DM2bZj8UHBjPlU|SKaShj`8>T zJK`=)U&&N~4tQkqv<3CP>pT$BX$<{`3hM4WSC5_R!OBk{*HUsjBQLZlg{^~zGg~7} zvf6WZ=Y+0gE^@{!bx#Ys&%~=dy>rFrFuKDVA?M-4WQn$zk0+^<=>BY&Ll|KuxS!W6 zBp*z4ww&7KOXvgBL6}&@RMMN0HbA!uwV8{nH~xk0{>oqE#6~t?x?)8|MGUY>t5!Of zs; a|ob3@Kwr fYif!1nOdA^vA&vlhXyWZ(76Ij}JF$Aj|0BU$ FM2Mry_A{0ML#|pduh2zL1E}xDQ;v*?|P2a#&R6vo*rwz z#^j_4Rr$wZz$c-J$Ky*U6Fjhl7YJSGojXav%;L1J24(uM6rwAoQsP7U%wP)J#~KZ^ z-=yazard((hi|{XJ_GtI8SHLa7u;L6U4HS{U1` RyXBa*lTDbF?G-linjRg@DRyNWVI#`>OO$MJx e`j&o5edN;!tt}coG7qHUz~fvyy?p0c#~B<7PJQzI z)Ao(&NNYp&rik{~Y(J>x=WEf0PY7>;TdCmfz|R_5{Q_gKy(UdZ 2y zmDl#(0nL9}Blxpv^Y !B7~nz!0@%$@kl$n9<0?!Vh`lSi#mjA z{1bzAgNcX}Zo0bD*C=Ur=2ha|&TF3R9)~MqLY1UHr3)Pcz{lOIKmC}3BGkz(IbyqC zj*l0vpj*suSe{ueU6^Sm-#_lb@k0aGUgtx=2t!@Z(Q}ua`+Lopw+tF?&!aVIj?6*F z%}3jofug;7=UW(aV}8(ap)QzXQ6$dMZ6$nLv8}mhX9Ykxm7P50*D)CbUM4q8q>jUs z{Y`Frwt0F|Jc3FcG8NyiZ>Ss$j2I`=HI_Vu%}1T@ixrZvYov|oTQM2m*@Ari>R6Er zkmM{a`>;jJavZ$Hgb^QBbaPyqKH62dD