From 5cd6337aa479d798ffe6a04ce629014421988542 Mon Sep 17 00:00:00 2001 From: jiangw <39796328+b6688c@users.noreply.github.com> Date: Fri, 22 Dec 2023 17:37:38 +0800 Subject: [PATCH] =?UTF-8?q?docs:=E4=BF=AE=E6=94=B9readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.en-US.md | 86 ++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 33 +++++++------------ docs/logo.png | Bin 0 -> 37739 bytes 3 files changed, 98 insertions(+), 21 deletions(-) create mode 100644 README.en-US.md create mode 100644 docs/logo.png diff --git a/README.en-US.md b/README.en-US.md new file mode 100644 index 0000000..b5ae276 --- /dev/null +++ b/README.en-US.md @@ -0,0 +1,86 @@ +English | [简体中文](./README.md) + + + +

Simple · Practical · Leading Edge · Innovation

+ +

The latest technologies within the Java and React ecosystems are well-suited for an all-encompassing +solution catering to enterprise-level needs and internet marketing."

+ +## Background + +Turbo is positioned as a rapid development framework built on cutting-edge technologies. Its core aim is to +differentiate itself from commonly used technological frameworks in the market, creating a one-stop solution tailored +for enterprise-level and internet marketing needs, aligning with future trends. + +## Target + +- 🧃 Developer-friendly, clear code, and high readability. +- 🤖 Reducing operational costs, embracing cloud-native approaches comprehensively, supporting CI/CD, and implementing + robust system monitoring solutions. +- 💪 An all-encompassing solution covering App, iOS, Mini Programs, HarmonyOS, and desktop applications within the entire + ecosystem. +- ❤️User-oriented, featuring minimalist design to reduce redundant actions, increase efficiency, and prevent repetitive + user experiences for enhanced usability. + +## Proposed technical architecture (temporary) + + + +## Technological framework (temporary) + +### Back-end + +1. JDK21+ +2. springboot:3.2+ +3. [uno:1.5+](https://github.com/ClearXs/uno) +4. mybatis-plus:3.5.3+ +5. postgresql:14+ +6. mysql:8+ +7. opentelemetry +8. openobserve +9. redis:7+ +10. kafka:3.0+ +11. xxljob + +### Front-end + +1. [React](https://zh-hans.react.dev/) +2. [Typescript](https://www.typescriptlang.org/) +3. [Semui](https://semi.design/) +4. [tailwindcss](https://tailwindcss.com/) +5. [vite](https://vitejs.dev/) +6. [react-router](https://reactrouter.com/en/main) +7. [recoil](https://recoiljs.org/) +8. [axis](https://axios-http.com/) + +### Mobile-end + +1. [React](https://zh-hans.react.dev/) +2. [Taro](https://docs.taro.zone/) +3. [nutui](https://nutui.jd.com/#/) +4. sass +5. [react-router](https://reactrouter.com/en/main) +6. [react-redux](https://react-redux.js.org/) + +### Desktop-end + +## preview + + + + + + + + + + + + + + + + +
preview1preview2preview3
preview4preview5preview6
preview7preview8
+ diff --git a/README.md b/README.md index 3d8e3a6..85c5254 100644 --- a/README.md +++ b/README.md @@ -1,33 +1,26 @@ +[English](README.en-US.md) | 简体中文 - -

Turbo

- +

简约 · 实用 · 前沿 · 创新

基于Java体系,React体系最新技术适合于企业级与互联网营销的一站式解决方案

## 背景 -### 为什么出现Turbo - -Turbo的定位是以最新技术来构建的一套快速开发框架,出发点是区别于市面上通用的技术体系,打造一套适合于未来趋势的企业级已经互联网营销的一站式解决方案。 - - +Turbo的定位是以最新技术来构建的一套快速开发框架,出发点是区别于市面上通用的技术体系,打造一套适合于未来趋势的企业级以及互联网营销的一站式解决方案。 -Turbo融合各种轻量级的组件进行构建出一套: +## 目标 -- 对开发人员友好,代码清晰,可读性强。 -- 减少运维成本,全面拥抱云原生,支持CI/CD以及完善的系统监控方案。 -- 全生态解决方案,App、IOS、小程序、鸿蒙、桌面应用 -- 对用户实用,简约风的设计、减少冗余操作,增加快捷操作,避免出现重复操作等带来用户差体验 +- 🧃 对开发人员友好,代码清晰,可读性强。 +- 🤖 减少运维成本,全面拥抱云原生,支持CI/CD以及完善的系统监控方案。 +- 💪 全生态解决方案,App、IOS、小程序、鸿蒙、桌面应用。 +- ❤️ 对用户实用,简约风的设计、减少冗余操作,增加快捷操作,避免出现重复操作等带来用户差体验。 - - -## 架构 +## 技术架构(暂定) -## 技术体系 +## 技术体系(暂定) ### 后端技术体系 @@ -37,14 +30,12 @@ Turbo融合各种轻量级的组件进行构建出一套: 4. mybatis-plus:3.5.3+ 5. postgresql:14+ 6. mysql:8+ -7. openobserve -8. skywalking +7. opentelemetry +8. openobserve 9. redis:7+ 10. kafka:3.0+ 11. xxljob - - ### 前端技术体系 1. 语言:[React](https://zh-hans.react.dev/) diff --git a/docs/logo.png b/docs/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a3f7f811d3df284c42fe4a061558a47c8695ce1a GIT binary patch literal 37739 zcmeEt^;cAH)bBx%kPs{c1XM%>Bm`*?loIJ~5a}Aa^D89{(%s$CGn91q&;!yv#LO_j z5O;X*y8prb@tw71&6?-z{5*T_XP>k72~|>%CVfEt0000|nXeKm06;Jf0QZ*&aj`4% zkWDH8xL2qorzUxOdy6=~k&QjRzP|OUK;GQmZXaLC#-5C=Vq{~E^ZU>Th-;OElb||O zoaKG{FLUOT+%TDX+|eXN;ua)G&3_e(hL{K%lSJ;aBQOC(HX+aMbnY5!T3y-IHrL@>)Id zzum^r~;^a(V;vckW^neihqtRyT2OQ-E+OML3oq+UG82wlF_y zk%KFjzEw#3B1C-aS!6RR27;;{J?~w-{4;*uvv|3BaFx@8UfRVZcbxtA2U#(E{;L61 zJAU3WbKy~e>|MHqZek2FPObA1aV=-I1&D%vbVM@>JbjVSc4k|M7+k)b+s1@6paN@= z&LxPbW>jH6`tSUOb17nC?Q&)lGrx_Q-@(`wBHYW7jg#k78&H=RW8bpR!KM#V)I-#A;~-OT(QIrKeJLa7 z>gKwY-dYRcM%zBes{G&2|03|e2>ky?;LBF#0*>gg28<8@{&n=WhXsh zr&rzKh+Rnl_*tx(74+IgXrTne0RYuH#|Gb`7Z}v^BsuN@BJL1KjQ%%p_;_h#(QwQ_PVO9qzOI357Bq4|LN}8jqQ_!Vub8O z_Z|2tf3OD-0{%XfCh6fN^xYQ;8IqYHPOr|me*wT;0!ms!&h{}va~XL9Z&BdD$7)Lp z)0FI;#u#7q!WX@XwnGj7;R616Z|S*urssoIZ%{AUm)1bwi%&-z3 z0RGu&u5mnJk&#y?L*{{1@RPL{(k?D@rGNP{MNQ;NDCKd1j;B+ipY0R+`l)cmQeuZUxhqC6Cgh~n(vqkpZLwM!|a#2YQncn-9oPGaxt*>zOOG-i9n^B|DtO2(j>HFxnu%ecO)n7OOx$WB2>zF}Cd~4+v zP5cL>?+iQoNP&N8*AR)988X-M$n&<>F)WZX_{Q!W4lusaFGum!TDm}3O8vp_xq?!! zLy}L}5Ezq(XyB=$wVAWT&1fi01g^Jzwb%WdOcKYt@} zbaVbr9|c!YqkMh{(~Ycw7T|BodJ2(($_#0{6_*$15oWVXu2jSiqc4AdrLm6QJe9!* z=3+435f8RMQ8#Z7i<^qH3B=xZcFil=R;JA6N`^m++o$F&!TwfQEx16e%rSgq4=?Ik zTD+BS0$SY`wHsmT`LTZqwvIpJ1N{RB7qV-5#hEFdm*erTSZk|N;9W5Zg~1vB9QpE-NOOO0hUP0gur8YiYg{eAa}UQ>PoUTTp=Ig7My zTp_;4(AQ@nN(jSCwm+=U0w4M8S{MIrPKWINJ~dJC+)n(!ELaKV!vR=a_KsY?YnPOJ zr?z|$c>R&3h*N+J_~=?y_Sy6wL7&SfpB_Q;GPnZZ&+-sLr3Ci-C<>EuJQaT};kf)Q zyo4A4W)s+5IZ~f&Y8I^$%JZ{z=6}!HBfAe2kIzL8C(VMkLEQv5O#iV1AC2U%-fPhm{f19=Ee+kh}sE6(d=_Pr-;JY zM>Y{A{f>4&AOpY_`*m-J7KkSuGIU-XZH3x5zdu|F1OOF8WUc=PM4r7Vb*othVG_!& z^iDW^uO@%!GY_B6WB8JZch(~c7RCw>tQhKkH*yyIWtu_DX}e&X>(nN@)IIk5fIBGZ zkaOasBP=Fr?AOBI*J|t)%CG_eh_0`tVQ|b`reFIze;Y-Z5SFBdeg|~ujx9!zkI|7_ z^e=fz16d|aO#Ic zas7h@eROtBzcw8+iwgw_Ee4uC)m>JAW)J~iPu8$A%MTc+lCW%{PzPK`3Q#iwu|-FYXzZF)uQpN zbt*Z4uu|{nceYwv!Ni~wRaezO+fDF_Ut2@DjowhAp*A}+hWVkCp*sNi*N|2)-vPhr&pjtu*48Og z%SG4Tr@+smbAc*$%zFO~TghHoxTH>#{ck>cDQtzE>h*9QIr5HIj^%3)DH?FoSM8RQ z1_%@H)5+T%ahW#lsmiJzUWPi`=ZuEl0x#VcT+X%}{R|`bxMhtM4cI3;wmswP3H*`A z@qF`(#P5bSzn-iXygtu-rB4pv^%yArNg=V)uej` z-*v487YVbO?ngbmc#9(jnAD%GQTw45OUGE>b7^{NkIc{>mB8Ns{u8^n5801Z6**N0 zMGB(vL}+YADZS$Wu^Ng-4||WJw6e>(FI($}ujd4PtH9xanA4QVuP3;F)U(vjP3~Ve zV(2j=f+?{W128=AiG9GXsNAyyF9h%GXG22qV?;3 zgK`zvXCS*m9tLYGrnFV^Q81dZj5Xi1g&n8w-QWQFt$)ThSucmXHb@W}a2AU1;=-T2 z05LhuW*>-V@09D2K93ll#;8`C74WY;93SGvvvT?_Gb2mpAyW|r}Ya%qg1;a$ho|M`OV~`UHOwxp=lp`TF_N&b zXX@e|;P3Y*80 z_loc&yGLCmwL&o|>+A)ibijGu)HPhcrLn?n`U%TT|7Jl*<;zwQ;QYraccp%_Tb=pv zlf@N7ywQGvQm^}fvyw}e?yRjrCc$S7-%LX4XL-2(Xek?~-P{bs3)ZoK9CcZWkME@j zfGScq*1kFD3b)pO6Q3+B&4TNdV2l8{V}T@GuNu+zN72KbDwhw+YBF(K1o+wpo- z51-|GFFVEO-wrA+A%IwNy}kMT>EzXWsQJ%#Y@WYf8hsE1@IGa>_vhw+x1ujjbG}or z$qRQ}7tBBdjoY7jgudR_l~SRi1zJAbe&b`G(p1%8>;LH-H~PaFAhZ`g5)54>s(T5` zuYFDn2y-q*x*KSZuAg;Sw=3b{g-_sg_#hG?4*xCpjpzU85h5X0jU`*+#i&rSk7by1 za_;8%5Ks`RNfG$JT+ZTXk8+Tqbb@`GJ0i!jzH~piic^td^ua5@qq!3$*^H~##D%6A zOU_TQ)*DLHy&celt!JkxBi?aLa6BO|KVd}7hdeCL=@ z<>Km9YWh^_#8=sMj0quBD}oHD)LQ)_%rRijIjMfeoTKv)>H`2q)wvxP_nT$CpyoK3 zx6B-+gLmFa36Ifqea){AS1bByiUp3JXEw;)z#+!rs}lnL*s2EWS~?YU{-WMpUP$WI zq3Lxo@6erzVi$-r7uM&2oEA{S;%=-Yr59r|XzFJ{;$Xrckh0GW5Ytxa^eWRXt?=^w zzf^6_2QGJpu^I`Prkh_gqre7j+B2UgfI`lcoOsR*5` z-8&ih&9A*Fe1GJJ6%WDcOw?=f5%I z_JX>PIUq5IhR?8MFP|0^(Hh!go=rg)lsNgK26up%pSx88ZOhA_FI_9@vY5Sj6;RB$ z{?AU*k%wSQRQWMg0+ucGnIeDd^j5kwlXX$k%yx@IxNh+$Q-H9cb12=wQnpRahfHa; zw4zfJ3zC1JRfd7N^jTpDO3m}@IrDn{-eY|Kmy7?Ll^qNk_Ei13Sbaul8q*V=0OXoX zMMQ=|HrZ}Gu91lQ(U0y7cgS#Y57n0yc-DHMqnd!VkX*5*E8P(0HPHwjg0p*fVNvWUOMcffbY=n^y$d#tp1PQJo*J)Ng`}7?vT}#*s^IK;obX0<5-6w^n z4@<-enTFp-`K}49ozI3eJ9OPiuM~D@uZ@Y45O%VAlxd9RYr-}h3v!nfC#H1pcf!3` zHv833OjWnjo3lZ()ekJ#WLjr}6a3o#YNqpW^#eA!Is~%j!7*(Kl9aETO=W|Mq-HoD z0OJ<^8T&i4-A?)W(2-8nqz`1k_&-x2%?SvWQ@O~|ZoBs`Yp8{PtW$e39gW3;N$+=x z-|d5HnX`$+PO#aFw}X#DsJS=Qfl;Q&&J-Z}LSP$Z2> z#c_2Z%U$qsMtwCD$)f$-{@Gw=^=~KZU8;zC%1;DM?eNU~*{$PSO~>xz_vgkY92tso zMT_63&Y1<4@$PEhxWOv>0P%J~!2+7R zp5c!A=F6oWK_+I0L2Oi}>S`8)K1?nrsm6H^ntc)-;XISUcb*VOdEoee=~>*YOyTDH zpl5HR&>5N>V70%p*T0;jN=55G^F~(J^}@gWrv92wui#m~?Rf@`39ca46N>{- zGqKr#WGPKVwfo*_GJQ=10?l{bn>UG*fz9?hlyAWj>J$Vem2!{xb>dt+L~xkuXB6fw zMlT?}NrmIjg<;)bPg>#Bu%B2q+8Ud^l%}C?SoEY-i^lq2_t7YPspk~;L3Woq&5^Bv zaZP?-vcgu@vL!<{wwU`zy^W58sQH4Lm+wW%LvHr}+*~huqc?d{ltqPB6vXauxi*oR zDQe63`TkfvCBy&jM7X@rh6`$Q>beBvq^LLC^Xz3TT_go=bl$k7=q-ie{A@pv3o9$* zQ5qJ*86TJi?Ih@mK(6}?od6FBHS()s(PzJIGr+h3!E3OFpnx`dR>$)cE)#<(f8vr9qigu#f~?_~nr>G*XsTbe?4ANBUkO zuD_u{V#K!Tdojh42oAVTQd~9zH@mR#%6biH?3wHTh}v08C~!>bGcQwX5$}Y7Sxs45>?9g@EjmjvmrV_cry%{@#{N=QLJ&Q@2ZW0&1+4g_M-xJ7{C*;9RPYL{w_tnqX$|};`DrYUUgTVL`dfE)%d;5m^L^@dNq#z5`o!XmDw$6f4{K} zTYhs!zk1g+1gbV8QTAIeptfZ3q#{4m^g=(PGFJNPzBVK^i!SqV{YWb~1V{S*@wp+r zIJBc}O(XiH!P7~B&0oTt;iLSjV1b8aAZLHIEVgfR+PH?d2PUN)-9;kLkEHyztkJhs zKDyD0j1|t$qOjeF*v^wrOnx6)G+punjMcIN5&xc{-BnIECCV1?F5J+_Rz+gGvl+H9SUq;<|huTqDQtlman)11Q;? zi=S$Cws@&E3O+9ssb>Goaaf{n>(maFsU5C3bQs@sk`bSR5SnAl`Aa!7QKR)Q=LLHj z1Yh9vL@N7i-riZ)-Um~vRDt@U@_ZlNQtX4VS^vdk8p>N4V2hPWxBz?F9-}j0ODRyc zZK~bztgl~)$1me1*#6fYp|PqPjppCcI5j@qR@hj#VN?6|#8U;gTg@=>*eMjVxG|!j z_LcS>23o?VOp2Dhvcd2u`Y_CIp>;&#p zXPoc$5nsBZ&;Em?-oovicyn(b-^iRYnn2aNAjE&TPbc*wex4F*ayren3QpRGYwnHv=J8-4>HEO6w@1QSL<ioo$ku5-n4~; z=_lff^SZ_;soo1Zc^gHGvl!J-f|3xkXc!aeqbO{75!10sdh@coQM%7^I#?OTG;`>o z(7qnF5H~O6(3x`B9IOFg z+SjT%h@roWb($IATAOveA63}(?z)m))5dFeb~+wpE#xJbo~w=co51-R-mqvvSg~y^528zz|{j z)3P;^c~b-PUIEJ}GP;HC9j3;5ZgkVbv$m+(Q_Hl3Zq$F&7b=7`ieBzUR6 z+1ng0J2D&@Y#=4A`O@$0ySPQ;dD?5?90g7N(pgcar8`V4zjsDPRXQ_~v?8Ovb!%wD z4b^$jr&D3-e?j%uyo_?eXJtYyG;Ka20(xOt~@D@ShT_o{~n>t{}$z3B|f);p_| ztN3?B;9*RL{`LZmjsT5ItrtR=;rv<4bL#_k&N?M-t)~C5nB4;v*OuwUz8$lr(Kq~Y z=>G?)1L)8@V(yK_Y z>pCTEIV<&e{7vFZHaJ5^(-rQoywBAP5d#izV)?4g&(Sc`y_srUeE@Ut@^mM>~d85+#@#`|;? zI6!NU#cAkuAN)~sPlzed6*sM8Ge}JKV`h20Cn$eGvzU!~1d0qJ;*MlgQFkclh_1_KbB@q_uhh(f<6ISrjd`MV7b<9n27yW!EuYM zW%DP}Py^OUv(GcdAuqhQ#)?5AfY!A%e?yyA637So`vm1S7UldI@fqLLGxhsht4_DJ zoXE4YECuyqkPx7?;YuE5sVeLE(-ed>UZ%DB+HKUL{|x=R{@qwLQ82ILZQXSVeGd2# z_imAN?yQ z)EnX9w!E`iv;2#H+>4H`k27LVmJL^sQ-phE-g)Gi7rmE{hAZ%uxPX15W4O6*T)gV@ zR`u-2Pykyv|75)ZT|Z~U`ixGsX|O^ex)IfUE8_yec{#b>DWLzSEvhk|3DY^1M;ppN zIpUi{I5zRdP%m$f*Yy)xT%C^wc)g^`oQ^mrwfj!OlXXVBOlK?Cos;P4^{%V z_jM;_3FrgR-7jgjc&VU++%_+a8-0G*^@@Qtp?wR({NN-qC*@?OGkQ(fcfjH}$-aw(4Lqf1 zhS&@BeK8duQy27*;0nf7$4UybNx~eg6oOj;r7Ej3`@cat$StiY0rQsKq0jOzgCZkb zixxjO*)AUkgO=kl#}AcY20$^|-#*~kMY*&M>h?c~(GsP{Fy$40u1hY2-cK?g!FJj4 z9(s5m=;91R6H=;;PUUc0%Wp6F{1%n=8AV@c62G^eIO1`xRe`S`dE65Pj;%?-baoWx zBpQFTEQ@bzPcJa z#JGdvm7wG6%9@>zliF*0a!r{s=H~~kxDO1q*h28Fj=O!Xn5URI5J&xaas-+CW1okH z84kwEFm>{cby6V0QA9n^Er>IsA)(6*FR8duNH!qOCJOUA=q$3A$7xzpo zl4vQ#{&~OBbC@A)B_d`}3u-14@q_$xpOMO~iA0PG<&nN85{C&iQ>Qk|ZL!8wf$IThbfkTck$CMu!0e^hF=CyaXzUW*VD$7l3%&NAU4kiW1|-fs zJLrAiO1<%!|JENtV$JF2Mw(V(AY7kROFC}!{s@I=vU~A~ALw@E`cJ9taDaE``0%Ys z+r3NEWgPPNc|oj|ydS*+KJ{$pafAtJZKfYjPy zuRr^23KSIEB!jpupxYZeWV1`!x(I^oNz(5ah}9a4*Xs^pPyw!TCVjz z3>RLBYEw70bj&De=lghlBvYgD&93=x{S!{V9esZZ`2K`~ixZATg{4%2_+msgMtSpz zTNkIGx)j~*>L-`zz1bUpKGYFazmeI~wU@)1vvYvE8fNq&JGKqt&@A%xRX{LZ@J%353N(UO43eSg+rN|`^Wq9wd}+n zJ+A=&1?o&$&R09g8J5mMldU^wQ($~D)z#0wcYcO`ZsDtcCY>AlGLDW5P%@ahHPF6P$`;rA8pH5L zttWQWv;TGy4w*eW>$0MZvH&W}@D09Ir~gr_vl>;+MB^cHYJw43G4yRIu#(3=)1_jd zfLt(MJausWB(Rd2U#OhaXv>SXv^953>SZxa>W?hdB@xq1)R}GYu?$=&Cehp$k@tP? zV7GP6#p|m56d`w(v_|)REp)Eg?38T5`Z#0@)?#O2Ty?-_RI&FAcU&#JdniejZ-|gb zHLO9nC}@RAIKG&bfP_}{sofB=j17-yu2iA#hcU zda=?U!}L(-vBw{J{-t@Fsb#rum-Lx&7E`>1E2E0;$pTq@f}JU$uBqNCi@$$(<+l@` z-I&}1LfRg~=jhe(v)H$vTt-_X5ZaoJb4t9lgDD?073&Eaut=vtnN`E#Fx+oY&VwL>fzKvu z@R{-HlKZ=>MvsTgEwqF|d^X-xR$B@YwQVfR5 z*Ho>q;?rr=3q*PPCV4JDIEF{yl$&#DcG9L6^R4 z+>Tb4%!?3@l~ewFS*!4V<6;AY_J9gUNj<{>hr}_PYAL_Yl#wi!3zry-EHR*W9Bw~g zZbTQQ9c%8{0XHa>V_pvIuR-0k{M`eKet4iEL~}^{JI#&H_8OcMYxky|EUOg630zBz zF1v0JGjyLajH$5`%LP78WM_4o%wIycS&C}A<|VPQooj&*qk;)TJZT26&@Sf+E&(_e z=9%`g4HQ4zq|z-$rP73$>+|EAyOa!A&rY*R18Cy)c7drb)-MIHGfU^5TuLN`jWVn@80mnIho zt4?CaK0KRW?DHyIrY;0MSmjq0X9+iLI4p7#oF=-$|Kta3AWsY)dPi0m*-8`z*Yd>5r z!^MS3oNDMBQunZ3!ob)<`bWaHGSv2dc8XCa+Zk)j{gph5?fLm-_DrHdQt(Ne$5LDT z{F!UUY|d;6@AjbV#^*cYB$d@v87cQ`T8GSQn?s|{j{Y_su4N_j`hblp$j8wqv)}6q z4D`MEia{(u>%n7CidEno69towwe>?*`3#m z2HOt_GIYNtwr$0dHl_&5Htdv?g^i$-X9sP(2J3cfgM;6u$oBV2U#kHu=E6ecTRKl3 zGbkcWg}mM!K5q`EAuSjtp2$j^ch0e#3L&AD9F38a*fo9*Tz+7B;IM|v&{Aoi&S7F2 zlX!6Sfk(SlEDEeK_av&f)0zueiG^1#;&fMGt=t4aepC&d57Cuu}5@)dX#o!x{Ndu*Ue(Q{g$o_lLB-?-y;qq^so)g zV{LmRG0mcR>axzF9R88It5{0AQric+%hH^RFHW##t%hO{1Ca5g==dL}BzC-t)zMv3 z=W(&~`=eB8g|`S;)s}n}Hxk;JexDDYRCX3n+NN8j)^+NcJo()FoMthaNUbw=`!MMc zZoa^kH#e>&aU z_A@N~lL35zw|DYfM{?5q;}p_K14iiUHbNmfW{cc~@(8UUbv`$dQ=f=tzfsg;1?u*u zKVSmSKRHx5gAn~QU7r_G-CfzxJgj6{?D4NHVeX@KspZtHu#GA8d>y~G7`>qqdMsVQ zYLV#W^rI?p?5UqrGPE7X)_K~YrXE6?uon>CD%UV;8UI4*3#6i^{V`=)5nX@zLp(sH zD9HMT%b9ufN0G_S*kA2Ko*`jS!s9m$B0rXAG+@n~rJ?D@6s=^}ne3B8M1Yt=VhMgS zxAYg-#kO?%E)mV*L!#0B(A$*0L+upX=#)m-u0HG3a9DDX&NIF%&N7D@K~+K=_r6m+ zXsqTJ5hXjx^j*Fvb9w`d;wfgw`u9xa-sAjm7w)hU+dO#)Cc2^c00m*&Pr&gC&q z;CystkkiD6CDvqL$0o5cl|qfxuGz$`#IJ0TnMTVEWo{L6(v1@Gt}Dvub`Hx@b0;Mi zT%5oZkJ3a2uLva!-;WXm=SU72EO**Tl&Sc*%M*TW~D zU>_WWQ8WO;P);1#vLhAWMCql|tz>E4nT>Ba3~zK!p+OTb9ijEdF%VWBOzj{D4TUHz&+Flc%WjlbW_H?K91k@nk>^_8Q(0TlC$yWR(SDs)_pW zYLrsKN&pAo*Va9Z8FXa0X<}Zp37KzhZ5vxMUMI;iZ8fH<9kkwP;4|l~NZ-(wotkgq zHzXIbvjkqMa}cBBgW49Y85G^>BWcU)oafVm+ZD9>4%nIxHLVk<$18uxTIs8%JOhsV zDLX~PQ9A2rNF=QsbqVs>HM8}z9I^sOq4VLE3-T)J)UDKSHOV4HU~S+dc-wg=kivC} z!CWY#p_X7s$RgJE+``kmsKh@pjW5Z|peow$wa{*Fp}>)0G3c4Uz0ih%Fy$;wj+^Pm z#j>$6K^~h=LrdIh+HmCz1;q1D9uxe1SJ*oGmjd+?o3u}>9w4Z-jpayso@1`_^`?+3^(q&j`;!Tc){qf`A|K$u~+MKp77P_#$yLLrM+he=5|=Mw4?9KtdAF~^7?Ptz>}jOagfV3adp4=L)yaxZNR;> zBK$<}{nU@@x5*$^Vw=sN3*piu`0z*JxTmZ%-z(OIkA=S|$Q!L2s$N~=cBqQLNOtm2 z&&zp7Z^Ni~cuEnKsDmKqgiRTbR)^DQyg&HKZm~x))?Gy(s^sXL)&TcC5k6ecNV))1 z-|uasGcI6DMpe8jgBrNs>s}>&Hpo2~XN2wuq(AMSq_z0YNbt>G6_^%#PAO2XdqmB0 zL+<5{>#c4`3t{@XMk_dD&$&yE05K&DEg|yAscz5sb^>N)hB<7{48ykncs0s%Hi70JKj;d$X_;CH{p1xW7 z&^_KewZ+}uGow(bPgO?gX6srMicT)=|5#R?%jG zc+3LDwUS%KR$rgAl-xK@i)m5{YHcj7R#+^%G1qws3^MhbSXRvF~9`2n{%b4qG-GgVNqw zrNd05ekkMR`_wGC^LegqQry00MAOXobVZ3v_WBLQA% zzSVPH7{83p*|vojy)EUx6d3Y*@v63HueI#aCeebGou^mEM52De{Bm3{^|y7T`W=&7 zvwdtUbk5THPXU4}v#vRBKCAm^szkA!Q@FlWuBq)kJPqMlHC8+Ssq3AvtpHTJ!L1-C zWDj$|0389cXZ38&J)e6DSP9&cVQk^Wp6a z%y4LA&eGf}zJ?R{KhdM`yNPcZbKXBSd{0{~+>^Fz!Sp+D9X007BX~B2ma+RZz8<%c z=MIUJSfgPJ-)AxBpG)zjE)@AaKYbV2zstde5j#H(b5F$Jv}h;2m%%fb1-xCp~z&zt6v#g5(RUuUIAtP~&3X3`6pV%G)Ft8is6F)+0ZUe!~c*ePlGNQ8kx3tGWKM zQWpW9*QhupXij(+HTwjZeAhVKBN#RF+?oXL-u-u33IdL(hPPr^(n=N?7EDCM_p*lu zs*ZTR)dI)M=N0Vtqh;$~RNQJqa@M=Z&NR}G%<9u4xVG&+2kTBPx9l9?v{m|jXw<}R ztY9@eSHr%dxOC8B`8B6|QQWos`=fu8?#_CfQZ?z;6<&v%oeDhZ1(Whv|8}zDTqfh> z2}s!3ehv0~ngb0s;ZL>8q@S?yJQa;_Tt5KSz|jPJXQc^8dzcC}EQf_rIq``&;l#rD z)ZhPRGIyGW=joU>tDN|sNnXH*_0o*k%6tcRp9o!-PrCjj0&Yz+C_w$QE(Z&`GnT}$ zPMxdl+;%>FHxcNtK23!gVS;ID z7Z^;W)gvxuVYoZ1d*Dont_v$*(G{eN6c#sT07b!LL_nuZ*fmk*Z?iw*CuS}-#JUz?yFV)WTAA&Oxq_TC$QON+O^pwcV*A1c4+?*h2Q1}(Sy zlE#jt95&_cwGnEZf8%h2^sm4ChaDEg5u?xIC)-&ksbKrX6Lc7B)%Z|#E*Dy!R9oAA zG;|4;D4rk9qq}N-xMg%2S7H4*kO{wL>SlUD{@jQz`YSd}Wf$uc$$UG*M#SHVn z7dR&tY6Xd&w>Dgp-REw(x}u{afq%f-tby*DE)2j9%P9%$=Rd4?7ymcdTjSD!U8X=~{QTibfmLO=%AN?vEX&)g3!#7_b zIAd>R>2>6ZJ^8t3RsewnzEgtX1DBSze3{$wnlPk4RlNwvP{iS5vW%K^&o}3!u6xc! zQAGcTsJ9M?;``!;X8{30$^t=31VlmZoQ%btKQ7H)lDd}z&q#Km(4yj!MsioOn zVySoi{+{Q3=C9d1=X~zDcjnHXx%ZsUb!}tC#sMBGARKU!!aEyw{rBK_GC0*; zOWu)BCVWrVe^W^y-7P`@@bF{*lXgqoo9COBG50r=g^>DWl{6V=MwK77Rv@j$^lxM$ zx3!u;A>lf+bACzZ-{D?((-+k|53h-4ovri8D6R<1``rl+o8O0%iZ|EL0`Z8ZET3^A zzvs?}av%% z-8u&1Ke;Td0O8&GHbsT*_I0s;oyldc(wxkUA7)Ax26%}_aFM3Z$}IU*zI461$^68! zc&p<)@JJqp@rlR?r=%c#>8d{xlc7sQE6H!nottl(p9d@pq za9OhbGbLBmxuGOoQnn!Up_7SNQ1#{7`UPH>OHzdF{6p0hQ0Zx_64<#%py=?T{4unM zAKqLvFl=HXf~J9WT742wKyHSUJu0#aAy-^gTK!f z(>SD*IoVUbrtz-kq3x=s@yItL9SGsa##Oh9yFxwG#p-{KUYqTyIX!mFNiKX z&vigXMw|zoUDhwf;;wI0rgYMFy{Qk0)jYj`5X17<8id%!Nl%{K|6&4r90^cd;;Al! z=rTK%*-4E`TeIjVE3Wm0d3TJH)Md_00Q`zLO~QMo6;9Ryqk<=Dmky+3Jpr%_wKBcfbzy5l>)@DJd$~<+-TUlwhaBi5 ztsH#dr?)msdpBcEOiq+_tYe2=n^XK2$5O+hT}00 zx%Ui24NR8K2i~3+>Hg{WCydyX`+@&_CqN#GL<-|I>F@VfqjG4F>s7ro7-6 z28_<9=zm5xin;!4k_*`+2pH@Cp8*{I3|L%vXWXQ-#Ll>ZqE^Bb&~4ft!sj8ePgr(~ zj^01~CvHLvZ{@}EM^=Q*;c;_pPwLyFMm-$PU| z1%X8I_&av<5Ng$L2`M4a7-5Xw{3c7^@L?9KHpGxB`;-UgaPs~RkX!xf@e8X3lW_Hp z{rYd7_F-0K{q9&on2O&vGH)OcC0PdCMX}JK>0{2&^p3m*kvN(b)zOZv zO~X1>nrhoM={@Gg^2_Gs^Tm$3bI)b1nZ`tNOoFPhqq5&_uxQ<`xA*PBcE2{vAI_l#+UA2`R{70o3s!dt=`|`$>1R-Xql03J2irc1&>rLzmkHk2T>>X ztF-pwi)JITo8qVPmB##3XVwQjGtX)60rgD+i^;)lQ5@<18`+jc=J~5D+>NSx-k0wc z^{e@sw(sr68a5h{`bx+a@&~iHAq4So2LyNDwK(A**G&8FdYn!o78Yp+;9QamMf2Gl z%g|-ZD-7>VkDTA5>$WJ9bb6!NhM-hPQPUoaF-?E(+t0@$yJG`<&LYXTo4iO@@_oc8a@Fd@S zkv_BQRi8gXj`8M`b21A0!tG2pxrdELvWBICME9)ex2OIx z==yXYj=0ycik}^C+yl(Cl91DWdhaUmcRWEIj>iL81r)ddSGH-VLuXC0?jy@taj@;H8IhkXhjGJ7UJ% z=$d}gHCylzgTrqj@u?pjY3RpoT1I@o5G0g9s4PK~Ek8QAL<&r9LE?pco4ZYD=%o0@ zj$B^3M)6l{5j1!fpkuq`4BNBo9d0Oro)u~1c$`>RuUUbQ9QZFfNxdh%nB>&#XPA3# zF6u$xSB2k-0)|?I7}$l#FTWu_hj3^>-dgkIE;sU;!~_QC;>p_UZw_F%Rl46>y-uAA zrsS;XF?}rY!t8q>4l?PIda{qUCSpG~@vqBCgV~4YK;f39Lh9Ty)7;JBN^8B9^>wo} zb1oi#u6G)heec#lbr*b;i&o4DAjL&!wpC^etsMO2CttYRR-rYJ29r2}$u-R%=;_oZ zAsVeLua14OL*DGr`G*}GNfzMmfQWZKo3j}!I)2Gw@6jrJjT53)998GHcqKzNiT!-i zLgZespz9Z1YiQmDB~U0KX8M~4>dgic9RziB8weI1*Ov?!Zr$J!0}_7}clYf3pHEO> z>U0B>%d+>N3YsDe#itM?&wU7v`- zqo@7>?Gqw5KR{r;LDN|4ug9&*I7l!al7mXQfOmFpV{_B*<|D>-ADLUMj3dts{GE@) zJL^q@pU0{8FHa7S(b#x^+4};80gmcrDKLo__=wzB?K1V*G_HElJ>c82O@Y#YO`LE_ z2+e*-HhF@1hffCyp2*tCKik*1FZb-z29#gq;tA(Qr>4hUR?!YDODcE+a)*`IsD@J^ z=YNXFA<&Y`@8oDVu&Esu2%MhbWT7z=0px9zWK0_pxy6V?Bwmq7OYQx^*>C55YRYr)N5cq(2MZ`E`NeTye?Oy$Dahf zjR}DkUcsWF&U46Y3yr2dad=z5EjZXZy{y`l;#Hk%TtB2UesPBh;da`Ts^HKjFtZ$o z886)z1Z$Srb>8?psBqLGbwQ|2MRFkGISx{B!0^ob^XM^brFrW07e^u0rsp*sqh$PT z*Na#oYG`qKM>8oWvI)}3FjD*R{;ZDzCn?@KzaQ)fRzQSDmYBG%?Wy<;m}|zg)ekrc zH9E}z{LeZp?c<}DogUl7IVF8$lhOn84}%5eageT4hUY2x)%k0_H=!}JO#+Vsds7*S zFCr639s)KSodUX3nQgVzoHo}-Ea6=1^uhm>7usLXm_7srIw0r6dJ1zwx?a}wsd7<@ z(4oen9fG3(FtdfZsg!#a|APYEjRXHprk?LER)~o$9~j#KHu_mhcOFK$syD~8<~anm zF8YOC?5k_9y(X+Zn)b*CpgXYY>(oZi*3bH6m{HWVUI?MPOaGwgUwC`HA#1BB%Rvc$K3cb){*1>HYrdfV%_R&$Op4 zBZ-h|g0!mEExo<2X8}(wkknmHkmO9HP4YtS^eH#0x!OLT)P{vuV7IoeQJC9< z<2b5CfxJ;L;9snT%7Vdhv9*=e$WkL6P^dE{W=x`S`DAWOg%|E5FnKO_8e;X z-&^{xL7*@%Mq~)4W>pV=ur6W#osB)1qydb{7fPyh8PRNFxfXS~*EsQczE36oE%8p) z3eDskX~TpA(T-i`J%H|onQq;+YwXbgC8|FSdt=c0X$wZmyIC~XzkA$6NefI%qnH4I z{U}W+4@W$jI6wP;!I$IJ%t`pUA&;3l%pAe?JKs?mhzc>G_$QZ6Anb6t-U-dAnsRPu z^Z})Y%58*nE^mU2w;k=%uis08X(<%H0N~c8dG?isGUxAChW*0czQM5X$;~|&K(XOX zP)GFApGeGYwqs+&0&FW#A-wXQ+2{!)e=%2CNwBvgxZ1(iKuQ7&-LGdy3KT+UAi*`1 z8%r4}(swWZkHitFqsUj`+?=mPxF9gvuVs#NzOkQ*7IB;HYe;zyDakVZ_g14FWL!Ps zUX}&AS=3X&+xKroAP}(=R$K z!TJ5y4tx*q$Ntx^QXYarklK2SaQ?l8cX?dS4XjvxU;99T@}*;e7NA6tT-Xykgfy8m z$7Y*fbj1tUpCvW__E%A&TLT&|fcXBcM)X+vf__(xj|TWuU;rC!{}d0YDB;-oRvOFi zPAx;WuDxaI#Lf9H)#&|(0d@6#u8*HNL3E7D*>iB+y?(EcH8onBD3#FV!cFDc1Uw{! zzOf3P{Q}hSN^7ZMnE`4v%!zs`KG33P@OGpjVVD}oN80ScAd1m*R1ssU9&TxU>H)Bf zXU>&`JNyy9{gRauLO62pYc6>boH?ipg1VtJ=5YlKuz+`L_b@l(AS!>p%edP3X*@cx zh)ZSMZ6-gG{M0-!)yxEx0ZB&rz69;L*NtPk^4vJ->6rO0+Ru8sq?a(m;N=6 z@qxl7{}&g29Re^0DYFP152~~?U21=Ds${yOh?&hW4pLD2WCbz^k_iH<{{DMM zw(26CNC?ejzYj#N2$Kc=>TFPmw1O(t-20+0Q1Cj6Gk`_c$kq`&VMx_}Qo(J7<%a-T z#`sCNuok3YA2_;5pc`=bt48Q!#gCZh6Cvu;R9fn!tm(t1IQY@0yEuhpH@zwa*TYwL za)uYQ85tdEPEuE>#$ZRStc_A6GGSlHv+yC0oA{QZKWg>7&d8d>+ zZ}_ZFw=?M!r8cpn58{-m3vFuWp?e*?YltKE1gmwQW>S^=MQxivb==sPicFpQl*KLK z(0(e{D+wTcuXtJ+{F7`ons`eAiGanm3PP10*~EP8%{ zWdHCWT_n)iBVrvL!m(*MGjc$=@-m~H|GU2Q4DEKPn6bPw5 zf9C-^L{|vWSCj^k-F$q|QGB?Xo-Rq=xdK~eeoi_W$bev&+qCK0=(?SzPoMXK6gRDD zG%PTWntqjOzx)OLD6s`Wq&sx(`qbm;&#t9n4_q~TF}KOEZS-Ea%3pbdDD!Wmsc!oq zT`wH)>fo*fCqysCQM5&gNA{umEUf||4h|AA{efZD#J}%`i@Z@w>7Z~dWgw}Ymze(1 z02W|?QbwA#B!BrHO*2N?IEaOQW?Pr^V22a!B}$)Ob5cXd5IH0LTuXOK4L#VC@yOmn5doy+O8bRJ1@ zc$4oH=aN=-aOC9!Y`4-{?Fkib=wP=i}5(S`T&<3zXR?s_VLqRi1__ zJa_<9dFUcxt!c~<@tDC>)>sb$#Mrb+8O3Dq8SFB=_sF?Sw)x9;r_*V$3M~#GW#{(* z*2b?d?g{BX4GEH4Vts;*&H(wxaWE>gJ>>rU;zQlC9Lt1oAcpIutQ%`L+||`81rIq< z)S>Yv7jKL{BQ@jCji;R4*Ux&8GOcGZ;evq_0BOyY`NbB*xiM3|J&FfHydyYm!a^}A zPO=pEiAvPX8=ri!!2RvYA<_&0|7BA3lrFd$)4{`dUF;VRn`Q}jT7Ky}T1(Yb`aVG4 zCvV~8kt)FknwM#70xriJ(693KYu?s+iaLF3ROkp16XLoI?jAy9Fl^UXU196S-3uxF zA&?@w=%lI_@OZHW18Xs@Q${`+Y}0smf1+?8vbhF&Z@tqCEeFuOzA?W<8{48<=hWF} zsO7;&Y>vrppg`wH?BCy-WzI>$>_^YOZXZ3hOEUpnsx`R+K`=d=19cH{Z#jGug=J{k z4h#9@5s4>G^uvaxihfMYuvgZ3u8A934WLti;`Z<8i2y#`5R45JPa|R_%kLo{JHeIH~)IG;*3n3sWF4eU-Y^cdg!(jq&cXsXhdFrwAI28lYmk z**S8Kgv+sX$D;8<@O{t&NcPOOLF2fcUm#2CIUzCL%s!QIcGkWx|7<@4hZ-;@+j$Q&rJzpo}xt?79JW=cRc#)8ODPs6#}f7*PL zgrG@p-&_c=#(9>Ve7a zQ)OG!@8&HW;(qt5^Ch-bD>O^bhk+vc;{|}B-GuL5-+~*F0*AEk9l^8+TaO%dyRS_u zMIjuusWJ^?4G9l$E6^o!{nc)tUE*Z1i6K`?C2@FwImVyl+{|HPKh>6GC)&yXoqERl zkeX780M~=7GVpQ63T6AC0Y%&j%SMvnM)6$#5xz*X(0_{cEL+u^N(Bi^uNNouC@1?O zi+fEW={tMEDv%Hkk%1T4@j*iC%rjM~y+MegdVNNtzxk&>3oO>OfT7_>bBPWiAIDNR zqhtpxRv{R!mNR2ACsVcMdiAJ#9`ux~41U2*M>ZNr657Wb0kSNcdx!GGC6!rEe0-QQ z#pnQ+7YKME&3wvL?OmVSW6f?zmp;n=rN!!A+$G6`LQ4n-6K&+5gXE0-cC8KZuPj}r zTRGOD6hMN(|`*ge4 z-dK@&iWeSd`1AtwD5d>*E2-OgcC`JwQ!am|Gv^Kq25007dw1A8&h`*XluMyF(5(3~ ztI`amEJbBCUsio({NyeAw^p$BRihP&G^%pp*fZykaOffbfaVw7ppSKPTX$Z;9fsnpXe2?$m{wc(KG1A3(ah~ZTPZhb=4srxyHc~k$XKu( zuvDy^^X=xdc;`k}BG*>@xkuFjYAi2xsU2E;GcOyLESgkm;nfr+>(vzKaTgXCN3*Ys zI7sz2TyC!QTP$u`rl}Ux;%*&NhP%x@xP3n*tlQkG=;u;5oVkId2Y~~szA)#Gl&}Q7 zEZ|Qco9cpYAh|H5*>SA7Jn{HLHV%kqXlLO-C4jV~(taa)ht2xqUxZnmUpw7cxHcds zeKOvfzK6UIs4q+uAi?mTr_vkeA=^t)W z7hM2_p$R9r9xapWMGGOJmm*U4g0fF>;}1vj{n>p6cN2jZwaiimYqu|xLGdq$2dF1E zhf{R8?`78aITyj0Z)pte{%;(fFQe}8Z`6fWvy0Gb$Oqc<} z(@Ix?0953YJ?KSt0QxoR&Nft!$-La{@GEBopqD-7I;jVh^uHQ?8Q*XZPxFj|x z(ms(`nRA0sgXeVtmdy`}FVLEODmi$6G=;T0U-ypcaMK6LegVm`T&7^an8~O))PM77 z4hx4~bfr`{kUio66{c_%%}XI!9=!R)T1f+eTcnYmHyT;&Ws0c*KYokP<9J-6T{ws` zz0ZkSg|eR{;x+1-x^sG?5piB76owoq;wVg=SBwZHR3{hz|Pp?St7KLXsP8?4N& zN9GzZFKq%KrA=n(`4sc06MtpH`3g%BTkIBF@j%KDVpS>aD(#0oeP&A#XZ@Adu>5^v zNEM$?YR$9PMIvUu*4Q*65S=i>*NcjWdS*rC5a{r46{LMl?N)6iX~--hx1J~e{P%*m zu7duhv6tdeIR#zOKGp4!d)xQd-VMA=v<=#LKVC1n!x#!WTqA!ra*SOw&}jM(pZG6S z!^4()0{gw~SdD@6J(6Z=qO;d(;?mix4r<377Tn5#!$GiW+6s%E>Y!Fb+TS#&jmM~& z2}r5JomPnLxXi*=_7dLC$!Tir5LPXUtgkxFWet&HE9W?j2m^zbQ+m`_ z@1DDkapw~E`BGhzZyFzDR%5H3v2_USMPcplPy2#U6K}h`A-bGO56+*V54?G^%7q4G zZW3XB43JVnsFjl2Y>CKIiWEsMxP%GJ4ALc~eI#CFq|Ia3 z&H18hLffDEnLv1L*Ez^=SjJhV5#FuiRd1xwGJAAR&ZaWIwfmQ!vQT5+z9zrZdNl|` z3c2K&$R~~bNruYm?m97LAPDFA_59NE6(vKj0LtoCakd0nXE5AWX~Hqyb@?-1uu=_0 zUw;z3u;x^|e-L%?M#zfYJ6u+rGm=9l zA!7dgH=#tNs-c6!8{=|61N3Ewi;5$!f?kopdp0>d)sX|0`_%0K@b!Mj<75=sYP0(V z?6bFcB@FF-;eDGQ&K^c9=-sjuU=eg{-TxBJIyTVJIF*AA4S!(PFn~xF)&fSZmG1(i zJah*51^zf%RNI)Hj7!3AIDOleiZa=ISy0YS(UK%sNQcgmAClXL_;=?`g-L{;=C|8M z{3nWJ5~CgAN}G=$``cN6mJ^(32@OM~#mXL(h6h*K)ufnM%sGL68XN37#f%%TF`&2M zM{Qa&`y8kl*0ngB0)v!>WYA2tPcVg=jo4w?JwYSM2p5=OQW-2eI$-Z1>Q;!JfSjU8 zNI%kft}938maO2#@@8%dtsdcCQ4&AjP1W+v+>v4|cAHXU&TLncpTXjU8LG;li~Oqs z3!V1JwDf zKh8w(jSa*O+%@2{R-2Q}v5VOM!+4t`)GMr3F-7$kxdF98$MtyM8o3>xHI}>UrUeGM z$mg_v>G(j=^|kG8SrTuVmbNfFHoC?NbBu(N>Lw*8E0d?*80zv5wvCV0>YDnVt!W+% z4-X^BGFs<@kPh;zveur4zR641!!;4-sn?|j*^;9Lh}fd}iMo<`B0;V5>V!$l=%x9= zRR6xUK*qo-n(NJ?Aj2lzBXPQ3stg?iVKb8Ss>&D-xk z6bp@26%+q)_j~EdR4jg^Lu2|v!9tUkw5(yBA>fiTKc5z(67j}&m2gf|>-_c6caO_( z0)N$XD#!Up=^rQvEqAAs@5;&N;Ud`zshK}PGp8?(5bG7)_^(m$Me)7Q@>{sU!_-K09<@;#UOHCQps()T# z7ub6{k*zFABz}4{HyEIsqdVob=BUsG#!omHQ4_M)RO1}++ca^*bZ^%uDPF`qwq=~bjTYR1`*+C7OqA#VQ77c(Ye)X1C$GWl(uG@ zZd%lKP})`mp8Wi zD{Ql`M|ALdhtn#Xw96k4nUS?H+&~?cKsqK8$Am`L*#y6BHhXLb3sj>ixdCg*FS zbWBC2Z&Cl*)W{|Xo(jEs*mV{`iSo}Pr7kooHAm{5WcpdvkxIl-zNw^eZp{9ECHO+b zuKsqf+}A7$b`nS(y!vGQl5~U&=d2XZj94h-@w}T3q|}(!O~ydKj*)BLmo_IEZ)`xE zlXuNP+`!9!+GjZ?1To)HN+8WOJIdt$a&zQcK6`t%5E1P5JB95*pR~AFGtqu&2EevH8{=Teg_Bkrn}CXN*=;p(a%THKk>C)xMHBpUvZv>R#dY@Zp%&@U;5HuwI{ z@flWPEjS`=B@zoxzT^@@RJLyoV!OAyD$iu~1$PN5ko+uvvR;oqk9J4*c;Cya%$D7z zLU=a$jr{zz?YVG4^tvPsZI(}}Zzr_eZ)={JuAj4zL?PSMb62%Jl+&U|{TJUea}pRIe(U|bWk^`*9f<`jz%4V|y=x+%zmwIp>D}m)qdkfJ z&W2*lQQ~TW%=490FZ7eu${1=0+AcarWHqaL@;#PIV_~Y`i5DH4aGYtjF4B+O3PPqC zty3vED=}aBPZ_P2=K7IV>KU@XzIETmgq>WV3JuH=jayffv6C62^oJTW23^Wvy%YJ%9ReYe%UYMJG- zChtM+obscm5(izM2jr5TK4(->xZ^T)u7IU{XMWq4;e75$-(L}2?JpO}jH#c-cF9P! zJiCGhu{QvpIz3N2KtFj+dR9%kE{RB*V^_LkV|aY7ZmTyprY1}uq{%6=qN86yS{qdE%VP=n-RRhR^J?+Mk%(Goxcv<_pAd60qjcWt?s^jbvE@!xJL9jo3_Y0`!LYfK%r?%@1 z%$c)8rgKUD5k!2yBl`e`F)>y6$4PGONrp~7bI^+DJnU>%{_cpnckf=S@Kxq*a`gS%>CceqV@JU{9mhwbFXp&m%EKJ%(x~o%EeZk8Za=?O z`8D;=kG!A7o-@jns2mnaWaO?6h! zYp%@&pZisDqYHz%b7b4RXFqCeTF~w)(%v>!_xO~;2LCS15ef%<{uPIBYOYP4u;BeB zfVG$9DBgR~nDN_~4P{2-1VgWryZr{SS@_f>Bz;I+t!o>f!2r$O1HZi-2;=(b(Bk{O zV|3xOYzqnTU|0#|_Fi4+6mDMl+@7X3KZ|TsyX@Nm;i>V3*1OEso)*bfoXqdVP`+ag z_pO^3^r4iC#&%Gv0EclQQ%hpiyG6Fbb~btu_^=9ZbYTy}3&Wfa(hVMNZXtp^gP*FU zxL#QXrX<8&(+;(2=Nw~O=Xr=wq?!x%Flr%XI7EO=NZUS?`&@Mw{Z-+NH{DXXBp;IcpbbC|5mx-=v4V`qdv(?X|am*-RSO8DZD17|kd%Mb5nkCw+4IQb(=wll&CKkQiJ6?s8WU;i#}&pKblmD*GY9p`Wj?C&x~A3%LS zzD@}Ec|6ntC*F6OlTa@cR~h4+48&@X@R^nBy_FC-bd;HD_2Tiz(Mt994HJ|&btH@9 zy|E}uf%P@00xsgK+xC#WR^w&s;-DJM6ukn?!glNNzMz!=cqN(sYqcs0W|6>lK{;-2 z9sbcnpJkdk*z3TJ{ST!u1$VdXVDS0%wkI#mc_+Ui%AF_Fr%5t`SXR{BO-AO-e4

b+|3Of72BaVU(dhiNnrEZhkI5On(AgJ&a!0s&HJluN z{PktpL$lSJ?wzo+W;JnyE&-Q{s7u8Yb#Cq`st-Cwt_d{VTMNZ`ao`4KqaxZsX7*#T z?|WvRv0Hj5=$5g}=fxH^#@>O}_^{@_Wvr@YGI;3kVw%Zdo|3KudlQWC4!icFXvA}IHz!!Mio|l4mecb|EK5l5%7SxvXRy%RlMn=PoLbZS zO`fqfx;wrvrR-5<>MYeP?3iWOSJZDI4c*R3siZU(V%i;Pqi+WWe{)pC9n7efHuTTr zw;zUZd0!Vn9(fQXZ7weyOnn{?lwa^{^GviJyR=j#hL%N?4Rv(w?b-y!6mRj2Qu z{5V|Ng;;)fxP615I6I zMs@o>h*giEboWRS@q)7|H>$5Et8I;7YOi!Lyl|ErXN`R%j#pVKwrWfsFuy~eqYr+h z?>GP4g^E>e8hR3jI%sZWL{UJh{3=b69)1#loNepDytyW}&OW{#v3=Kh-gv#3qSnrR zH8E-Pn7g;AjBYm7);G)hU>%aEAYV&vZwiLaj?;dsg8>uan5SM(5>eFMW-yOtsLbqJ z81x_)6L*<9)LY5>%fZHV+qV0U`DSdnP z7ooI&vAD*5YdYWM5fa`Ye)%V+sT}-%3wjr)Y>y<$PfTVA{k=ua=e*)*#441reNmRJ zN!RsMUxv@vYSW;Or_GkvWp38gjyMfQUmNqF)-8{VIyd87;JS9p=g2N9D%Qzm6NHLj zS8lRkO-WA)vk-47FJeCFZ1lNy#JL^&`4@_QVx*w^!wI0hYLMwim>|dFn)Aq z>-#akhhb}y=J{^+n7QaThxvS0_{W-nAEX;l-Ya=THj2ul*zE@e9A;O+Q%$wHsOV2{ zl9^`jQJwI4zxwjSg>8XcFBR3Is62Y2_8ku^JXF+zZ#)_owX)dH@fhYo6O(EQ>RlIJgbUx>~*BkQlULk?h) zk?TSX{o8X!yT<(ik>31%#D=EsO1JhBF|!{}w>%%s`rPFog)j~==8Qx=jURoi9lVuttG49?lgGK26{U|Ofz12#I zXTnZI-1tZo!`-D%omZiAFg`(xlF+2|-WVL!e9kbdCN{>e+JOkZysTa|4=ujm=~gOm zRU|}CAI{IApa1Q+GW&K;xS#Ctkq`Ubpa?^-y==orXPOWithJ8B^EY3Vh_^SX{@?>;qZYd_%EhFE6g?TEd9aJx-;Bt4%p~P<+;h~mzQ|Yv9hPtY z?Gd&;BkX;zU?1Ix4YoUOJTPEesQ$$#II49pIua`DiLV7O8P?*}HO{T;6hm5)D!K`9 z!q|iWImhUXenWj$0rv9cv@ecZxG((`<)KDR<@R0ewzd@K>6P2R2IL@^9h_{}RMY4> z-{}p#Q!Qa#*y!QIMM6uSXFWVBOgLja?1l5`eHe|88w0*|V#!hYt$0byzSQnPsdjFd zG%FRpy=nKKz!hEm!@K6ExSnoM_OunV-O?oQ{9*^hpRxE-p7`0J@_0b)!G2EcU>(q7tEoOldVI z55bDXqV@T6Q2~J}tBHLzUas+_)VASWO#m?5<>h>|388r8&2V5`tP>tLQfF%#4ooX~ z&7c|XA15UsseV}Ox(E9PDb8Sl4c^R`sU+RjRHb}*JI@Q<^6G$Nf@7Z@5g6RB6=~cQ zi0_y2N&Oa!nKA^7)ZWOebOeEi$zRX;kS8F>#uB@@`d zb9IJCkR3-3b_3n1<#hQZ=5MytAmGQiews^*(hG?S8Ks)yMyqcO#NhPd@{}(N%Nt1B z?oFDe@}q6xk_j9j(|o9TeSW|C4;F?h=@DdDUr#jK4L80jJKn3Anf)n`q(iNELuJ0> zHYFfun5|$NLB%W_nD0`ttI1yR;U-gz9B`QwpML7EA3&5BQ}bh{B#8w>A->2yO`}_b z^)%hzrX$RAUxe`i9mFx^?DzKrWLmc;w9$?CD+{aB!=CB5-hi$1k9y_vU0c(o zH;>P28tpcX-wk2O`6CJgqfTc!oAWAbh3-K104PNCa-~DB{9buWM@Ap2oQUWUpz9U0 zErCAvZO!nColCZxe^7$iU3G;{cB!0cWcN{c!MFkJrIf-mK<#y z(un=+yAo9bz-WD&s$^D?YE^iAmnU4)Y1uw7usnMVg#%Pawe3~Xl+1ow;4Jz(GxJS; zexZ0JI#Y}la7lISl3QLGYSr7d3Fwm2D*mOC^Au=SNej%{P5z77Mv3#~OO`clZIv8y zpjq{^v0}BneqhTCGoingzSyM^)sGm$`@op7t*I2J=+HemW*#rbVwxHzLLjvMcW1q8 z;o`GI(Ru8>EMU5P3YV6>-go00FXlEdau z^TGC$o!X_a(K`UYWSzw}W2MC?Vs_h?%?u*;Ia7=uaH%7jmSLOwc3K>m@MFoHa|8JhqV~CJwlC zMd4JsF6QrXxS*5FT14+F3w>WmRKx`!RP2sA@ncr>b`I-_s3XX2|le?NYA%9&omYnBBN+u|u+BUQN z^4!!(u>^$-K2S8`i$6Y{{mgwmHkn$YItl7bT8WW_uScLOo zqMbt}MeW(q4qfC`bqxfwTxwXrdYw}1JKMN75#HXxyy&!Oho<`^smlf+bmA`zA}Yz_ zb6JH1_3|T5_&ZEYg;hq!kJ+ug;CRIcz)7oQYj?NryMfJ?>(3RVT{pejjdRU8(fgg( z5zV~-X?2b7^pjJ{jIU+z!yNe5)$Oz+lkTDl6~TTN+OP#9(6n46JiA?5uB9z7mBEIV<&$Gtn(YUE>atrFUJ`Cnbq#htiaefqT$|QT)u-{i&`&@lPyUo6?u{DYUqmYXBq#>Scp{LUYrEe1w; zvp}-Cpt;8oz2f{BEtuxmjIk$E=D6 z(92Kt$jjqpukKD^sx>q;o2@#{XfhER;=}_1bi@`ZiVI~c-Hdac zS1%pjSx&$$w!pA?Hacf~A8Sa0m`(7`#IB&UQ293uInB=(vV~V3wA`6{74x5S&@#<# zrOBsM8zs=OC{8-TTQimUqk~BA>w`43+}yGFn>;>}WEmMBq{hSYUz*m(6B@ z9>s*QJ{9dgI4Hmcv5;faGF$GP^SkMC-O~x-w8Z}t2$`dCJxL92`a++PIny_mXPw!? zZ{^(kl*6?U45DigWizfES=f+TYBfmyndzm>DRQ@aJs_bhrpirt`$iZI0(9W$7>~Lq zaYYvSX%A32^sNB;!sJ>`w1z+G5AvWYRq(Ei&v6NP;1c-mSHJN@&<(DAB?xS8#HHQ3 z6h$)4Ss2IRFx+t0d1+vHvkdF*8-eoiZzr!dmAQj}-+x@mM-`l=KB?I4cu}@!1+j)+ zj0s##r=c67V=CTub@zRy`2?Yzo7>ID38|k>VwiabH$UIJQ_y$6BRFd5VhX*OyBewBmS0)<{&i)||;9N62arf|7d$9cCt2GLPl`BQnU9<&Ni7w~jwPWqa@I=c+& ze8&{#Hm`vV$X4#YNbH{dwHq&XnDJ-EWIZJYLS_i}c!mXT^~*P5idacS3`9NN?m8{w zlV{54P)Vi7#C(flTh*4{U0vRPk$jIMFgv!IyZ%k7)wM4i@se}HfJuh!~X zKXLL_ewDM3aU^E1!!1U6@zydVd_lvL&a>7d_@XShdV#86L#RiFCWo;|hq@f9qWN9triSV=HIs)^-AVN{(DOt26G&?y88~9 zoQZwBNA=tRdH-K~*ZtLG(uF7JS^=f36b-lvxQLiVDWQriA~h%?$U+i2iiV;ArNasf z>H>-sFa8y*{WaI{k@HRjnC1kQT3hUAu{XwP@zu1Rt~93`!(o=I;CFD7>!ZZHb**hul9Vai>|sYLgX<_3I)dpIC>k z>YqCKD~KkDmPTj?9iH+T<-hM5{*o};>=%OTVXR|_?ozwS7(XxQZ~2-wJ{$ExT6=Zo zV)w=Rse}{tRg4%ay?oXZUx+ZjWFrEQ#cQa{zT2f6f6#m!OfOtExV;e5sJdpYFfT8o z1aVxHVkt$&4-$9YHf~sW;w!(Ka$?x#mLRB3`Eve zMwM9OY^LwtAC@WG0a|i33}2u~^TL&d;K=FhRr*NAKkccGx)Jsab!Q_X1sLx;99C+5 znBX6UJs?I1TxiujBgPbBlv{RCvHM+WW!0hcC64_8Z};EoM&}vB`8pfy=PIhqp>OBJ zKwd>P!`CeX9~g+>?Gb(*%OE3NdI8v5b)wbh7U|WNO{V7?%nG$8NtgzXRz}!yZmq=h zuN_#gZ;&!0lx}@>h3^1^xqJn8-+ihy#Nv|p@XZDcU1$RyFSQ>+!sA@i;wqaQtNEc{ z5mhA$2S7l}e55Ip8PJ?Q<#_koQ-Li{|8hA1+QaxXM(&V;5GOjeW<{)Cy7NyVzV!kr+%VSELRidSyQ?~Y9`nRk0W0z2C2!V3FELu+s4jq&d;H#%~Vz+6X4 z8{OE$S&aRC6+STJg}!CWg@GE2t6Zw{g93|*5<1EeT2s!eo3CTtcor|4NvMHCAo{hI zwQ$DOi_93`S3GDi%y}pR%tfT+wX=Ado>-cs7rXgRcecvAI!mn^LolF0*B!@;{`oX6 z`BEZODCk=%PALz%3Yqz8fTP~<D# zWc?)y64>r0b>+VKtpHg4o3CoQLGhd(xni!h3o4?M`^)Ulo0CmoVFTJ=Tq23rI zYo!kL%|3XA+Fh-QAN7T-z4cx8!|PE=gvqmzp6H!}y#t(s84eD3GGtEj__R9Zm5bmR z<0)j$T)O-IT(&s=hC54j+s_z-N?Tp{TwfFOD$^YpyL+YKg7rp74W~~)Mx$dp+;ROa ze+BAR$^zH;B&(BBM;Lvd!rP!SoAY-4k0$%1Jip`YJwS9sThMGu{^N933EK>EZ*aEn zw-D4t8nfJe=l0O*PmR0v;NVIpe%o7^BeSfkFwJipjI6SvWRiq>XQM4NW8~xlAxr$e z>hU}B{j%Wmv!Zn(UQd#oP`!=LiA0WO2j|)|N%3v8yH38iwt&~Ph6(K;2{ji|${7FS zJ3Lr$Oayu@%dy-ZF&yoWgXsPE2LBW-+d|GmC|f~5yc{<>>460|i!pEj0LDLa*+~yA z<`IPw;H~=gyUC-|D69bh&re0t-^H^kmX7!D0iRVW)w0DC=>=_^{kws2^uIr1o)ms4 zIGE`oxSR;U={w%FQF(%?tJ5z%B{@(UHYoAL;6y|%)i~%+vjN>Cvv#H43}0y365A5J zv+8mw2eHT_YER#tMPbhXU?RKT7;3I4a4I|arH0YehjXYnx5nPzAulh_%5GQf;A!Sf zU82u8=9>ZFcycRGW0=oTr0mGAA3?t9;oRH-j73BB;U=R>{t`iZz~ij3Aiab-^C@vk z=`H{?^giRIgCv&T1CZi?PCbvPuJ~-qHVU#`-}+IydD$!M_KTS^Qf{uB=|8IVx#Le1 z4CODTXV*{kpYz3Rej)!IntAH9!~LBwU~ai?D#YQ_X5`l!A_81#)FwBaaZ`t~lztlb`UlG%1+~!hO74}O)RHa*G-d%k z+{OESiNJO&LiOz30UqBY3XYAPrG+zYZoCmC>}$N&oMS{NP00!R0-jL^#h>k19$V0#GHJPOGg9 z7~}F2em4rJW~ZN1S$qov(X^r=RrR)I?VB&v5VXn9P<9G1I1{h!)*KSzQK85R%JBEt z)d~ZyuN7#q9cS0WnZ(K=9o7ON_J|q)d*yqYvlAxBLNVXjVz)%87JdBhc66RsbVWO z0Sp)`d8h8&y~6WQL)vb= Dv?^H? literal 0 HcmV?d00001