From f780b6bf8df985a6b891b6ad8e0f1d8b627f9ed4 Mon Sep 17 00:00:00 2001 From: xujiang Date: Sun, 20 Sep 2020 22:57:01 +0800 Subject: [PATCH] =?UTF-8?q?:new:=20=E6=96=B0=E5=A2=9E=E6=8A=98=E7=BA=BF?= =?UTF-8?q?=E5=9B=BE,=E9=9D=A2=E7=A7=AF=E5=9B=BE,=E9=A5=BC=E5=9B=BE?= =?UTF-8?q?=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/area.png | Bin 0 -> 33291 bytes src/assets/chart copy.png | Bin 0 -> 19551 bytes src/assets/line.png | Bin 0 -> 29530 bytes src/assets/pie.png | Bin 0 -> 54463 bytes .../VisualComponents/Area/index.less | 13 +++ .../BasicShop/VisualComponents/Area/index.tsx | 76 +++++++++++++ .../BasicShop/VisualComponents/Area/schema.ts | 82 ++++++++++++++ .../VisualComponents/Area/template.ts | 5 + .../VisualComponents/Line/index.less | 13 +++ .../BasicShop/VisualComponents/Line/index.tsx | 73 +++++++++++++ .../BasicShop/VisualComponents/Line/schema.ts | 82 ++++++++++++++ .../VisualComponents/Line/template.ts | 5 + .../BasicShop/VisualComponents/Pie/index.less | 13 +++ .../BasicShop/VisualComponents/Pie/index.tsx | 100 ++++++++++++++++++ .../BasicShop/VisualComponents/Pie/schema.ts | 82 ++++++++++++++ .../VisualComponents/Pie/template.ts | 5 + .../BasicShop/VisualComponents/schema.ts | 7 ++ .../BasicShop/VisualComponents/template.ts | 5 +- .../PanelComponents/Table/index.tsx | 10 +- 19 files changed, 565 insertions(+), 6 deletions(-) create mode 100644 src/assets/area.png create mode 100644 src/assets/chart copy.png create mode 100644 src/assets/line.png create mode 100644 src/assets/pie.png create mode 100644 src/components/BasicShop/VisualComponents/Area/index.less create mode 100644 src/components/BasicShop/VisualComponents/Area/index.tsx create mode 100644 src/components/BasicShop/VisualComponents/Area/schema.ts create mode 100644 src/components/BasicShop/VisualComponents/Area/template.ts create mode 100644 src/components/BasicShop/VisualComponents/Line/index.less create mode 100644 src/components/BasicShop/VisualComponents/Line/index.tsx create mode 100644 src/components/BasicShop/VisualComponents/Line/schema.ts create mode 100644 src/components/BasicShop/VisualComponents/Line/template.ts create mode 100644 src/components/BasicShop/VisualComponents/Pie/index.less create mode 100644 src/components/BasicShop/VisualComponents/Pie/index.tsx create mode 100644 src/components/BasicShop/VisualComponents/Pie/schema.ts create mode 100644 src/components/BasicShop/VisualComponents/Pie/template.ts diff --git a/src/assets/area.png b/src/assets/area.png new file mode 100644 index 0000000000000000000000000000000000000000..b427d589e4aec7008e71fec38bc77cda67b73d87 GIT binary patch literal 33291 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 MOjfk;nV$Fm2YAsH@&Et; literal 0 HcmV?d00001 diff --git a/src/assets/chart copy.png b/src/assets/chart copy.png new file mode 100644 index 0000000000000000000000000000000000000000..59f1858409fda1673ed7242ff193e961ccc4399a GIT binary patch literal 19551 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 Ti4^d7KZ*Qvm1l)dj064~&=M%0 literal 0 HcmV?d00001 diff --git a/src/assets/line.png b/src/assets/line.png new file mode 100644 index 0000000000000000000000000000000000000000..fada70591e3fc2484b687b34bb3169235d3db159 GIT binary patch literal 29530 zcmeFY^;cEj7cNYfQUW3%EuGTMp(F%Bx>4zF={O=SA>E(|NOz}5cOJUCI}Z77K8pIi zf5CglxIb{l0M^-St~sAs&zd_>;guvh8X+1C3=F!ol(-@c4BR3N4D2=v67ZK;*p49> zn1}SHVqyx?Vq#v!L#`I zEL`E86bi+Aab+8(@9ISqxfEyxh~ce%^^8IF!nh)@A+0JF-|M8|);G^)FK3|*)n|>y zeMv{D_QtD;upq$%%E!iE2w@C@?WmrU!}bJ9cghYadBftQp_TnW!BC?=4GYCUR`8p> zjdH4lq43gk3ctLlzHJPm4r5t?^A;CN>WZ{0B^N?~+3mu6X$MPo4628I(th3|-toxf zC7DP7(=v}v;LHk-O5jgCF5Bmf0ZK3mU+j1y9AHM4>*8Fd9o8i+30guaQWOwu*;|CP zVf~R0i~}T%jOG2+XOP|{j_h51yZvdrStO4^k(y<-ZnMsY!Ngu=gj#gc8vZYy)Ld)<*^2iau*G!x9cRYV$*%tfR#$qVTtPR`P_`_`LslI5leM z>&Z8dCx*V%vC4zPiFpHl+9TS2=_(#qW|sURhq?H$!QtIGmOP0tt5iI`Y6pHR=3#qR zOEv6spHr2^ymb+`y!cc+im^nIY5Lw^V#2A!2Q-OndQSuF)0d*AZFU~^otsc0Ph)(9 ze~f}4OXkCbCyPt~8lM~qSMEvVlNrcqmG?*(?Y*H!zc0^iN zC>iEv<3sakdF1fS^eCpufHyspw82cpm+uK`D&NGi9Eahrk{hk z5g^h6dPn;_&Lo&fUKg+q9I>HwIX zaQ*!^@3ZHO{k232nVn&F(XYkkc;LBVFwWJVbdsL=7VD&)x)qcxd}5OOiq)k7ut>tNH1JJoPc<6&;B&Yi6C9Vmo2GReQgW2U%=tDuW(l-o|45 zqqj9=u^X69=0cH7i=l*_4t5T92%v^DhRPW3hpj20tjwOncnye6iQKHL16OkR7-P#{ zBw!S38aDF6eyrp@Xo4yh$VOz1EF2=kDtPm0(_J(@+124S=#BaFAkukiH1|GipP&)sp3eD=nrA>juhuAdy zI{0gp58+sZqLRnhI4zHgC6ln6T98pin?FB!hAJ&GgpExhW<>emv*Ndh69E>IIiKgk zDLbT>;fDOCB}gb|I_5fPaK*B}bD4eA{F46KX@nGAY-xbbgfGG8ahk-sor9oe;I72h zVB|X0G4*6m`9s))*u34fD2xX? zYe{w*wr@;9fMjiv_gveZpaFX>WNazxVC!7J4*ymr4f`SLDS|v)BJ1byS8*b=)KNI^ zA7SA1HI)xbJ4-%$L?CYdl}Ou7y5->_<09Ll(L3S;gyImukd&XLE}pqXaMJ~~kgr4p zNfSxANw-UnNhN>7q|c$Jrhi5MgT9lVB3d-sE?SVjUAZ7zKxu=(_W|%Wwfa-W%nxO zD&(rwW}eC<=UHX%77D40OWSMF zYnb51!D1pbMq#R9ifDRJ7F71$Bzb5vP2a(uFSsv*<(t}I{{Vk^;3QGImx!JfGf@VSuDw52Hb!E@|{yyv`Dhaa+k z9vd4yA7hticauYx6O%K{oRZU$yX?*DUF=2c-RvPrQ0kfK9qt*6tBgC-j8hj^@2U7+ zTxBd>;ZTXIUQjAv44v(oq#raZR`D6NHy1Roa0EMsoWK($gcQn!%4PJTYkkeHwanZx zn#z6uJvlhJsi1i`NYHH0jHPVOVvZ|>&t_=FH(uFM+aMJ(_Bu|2eS*gD#)vZ%Q=xnr~tvslr&Q&C&tR(8pDc0_^@1{3B&(n~@r zs3T}Ei0OQ@vN9jNQQp1<<=L{mvQ=5)tLv@fot>(m@`w|n6Pj|L^pNx5ZHR7=zv{Vm z_T;}#flgf*pYNS`;mtoGL*;q8pR&@K@RJWa0MQR22B8AU6tNZA@}VoP#p5IrZJcSM z#Yb!m%i^@;9E=Vs>y{PRiQNT8XQ56+!p2t{tY+#K<84JW3-1>q_A^m9-nqAI1|WZq z`TVuRj~1&nRFn9Gb&`*d=Hd*s1$7XIp4y@HQ(!!?J#!2RKht~p?b<5uDm>e>CCf#_ z118i>)JU8hoLL$q>KLjD`KN-meJwAgk))fywHYYdi5~VXH%N;_LSAhqZL?K7ALi3R zln%4B4H-~wKF*30fA1R%Fb6*v=rRVj?-X4+5uGfC-M0`foA6Dr%)_b-Z zdytypk`qo|g7YkdT20rBz?6Ie_IT>OYP#KLH<{D%fkYbw# zvPooR5y|(b&Qe$4;|EXK3)n+ek7b&l@n-}$1eHBkBO)nb>9#NkHV8X%Kcqht>XC}G zWz}QXi}G^GoaxD6PsKyPzv6q4+L}DdHsx^oVIpkpynjLnKR%JK(l7;D_tho&NNjaa z7o-thJs&38-dxgL`2Yu>3y%P=mt|8Ox8!@KdcL}%yIb+tV*bm0s%EPEm&vhK>KEl7 z)$EE#ip%PbkJxrgf*U_U4X;_?yN6>c3v6_X4XJE1Ojhz$8gk#qn#SNoIp&3`>oodR zXBzZQl@CL7X-Tyj9ElB+Ep#p~_D@2H7`gJM_g&K8EcFI?2i3^=CB|5}HpW*%Cm%O5 zm1~7m#8_RI$yM$2ordq6M5{)x@CWc8zIRZeQck`cy&l_4M&f_z7=?epZs7XO4tcj& zBE~Rg>y-3p&8%R<@Y%!&O|P?r=z?zi%(Y62aCZ=i0zlJ z0_2aAWQ8XN+45IzvIDcMl2UAHPGra9kBoi#Q~1`rcF$e*j(YJ0Se{m|dloN5Y-L<@ zGsj}yE*!QmsE$D{7_8I?3thD>&4|X{Zzt@PM~=Z4rq=&xu-!0P?yb-|sN9`Saj(6` z*y}s0)o{|A>#iO1^16X<_KEN(#Ox*|5X!lV-D%vM)R_ts!fJQ5%4f(6 zJ3V$Btm#UP7s&P8J+7_<^D4d`I_BKo@&Rvy zVV_GjzkZ6yIzCXw0dq5p2*ZR5bD`qw8TYL&kq+VYEDavY6-{1UBV7xgx8`{S=}!$B zm~qU+QTO#JOc*G(Kp$pWU*Atlg>R;PuVnO;o%PAxpFDBaM}Wyj^=63xgKv7_;q`LJ zCTd}lI$qDBu23}kSRH*%Pjsz=&Lcy)>Au>E6ZCM`0nG!djg*Ex49sJyyB}C-#b^64 zFd!IdaS>%_*qs@dB;1qa^INC>4~^uw##R%r zmoBFSPKk~}685N{7vu&?PRD&0|1pn9@^ld!K?Jc{zPf+G$jEi|%tcK}&Qab`zF+oC z*>P;^$hk+>NyU-4Uta#KR`|NW$u~z1hY${h%p2zS2S*M_B;6_`g#6E6$h^I&KxBP5 zu&@YNAedhtmf*|9_f4+znaP;*4-@w8qcvv`F%z=q#|2!OFQ2_bRBM`9mLEfNg zcn7Y)`@I1vz&!o`Y=a1UzK|M_N~S2;Y#;P2={EjjMHo!r+LgnLJnFk(;puYOYBy<#y!?TS`3qq zszUw();kq}EhXWr?KO_Pz+1!xzC(|bQMGPjr)lg5nPE?PDGD1d%zEC873dU`X-odF zuHE5^f3EMxIh6mPH<6p=@qqPI1=Hh?=AgpvSIK;wk4O5G`PJy@>ECUwBK_kyo_HP3 zW?iAg{L9-DrI3TZ6hWXBy)k0m%Yi;{pPDN$qXAkh1%T~>?JkMsF z+J{tYoc5S81&_m%_?=#bk_t0hPE|y!|PSC|Y^SSi;V_op0=>xXH;)*@|XWMn|> zu0;QOS5qMz0V(!ewSAUj9wFn|?hOBKRhDc#1tKD%YEzxZ<$Hz>NRo}^n4XshBg)ui z0+HuZ2)Cwi!eu_?j@#+>paz@mV#_#f)$HD6d2X~)LFHJ!R+g8^zc$e%TcTW~kx!9z zX;M*9fn2d0_o;&&4GlBO%tpHi4?Hh-Dp!vBg)2W;5R;GLuqJX_TQPZE9Gh+}%hnI) zYjK+=9H}*WUW?10fBPq7g+G8Jz-+lZ-7#0;7zAC8WGfAo7)t|;(GK@ryD|q8y8DEesWz!M!zb{jiby&Xaq)Ejk z?u1mhomsiuK-ZK=s#bmVoMs&DpewOjbc{9o!7L3Xh{u|S5J$9IlR@SpGQ8on3ss)F=Sm*7q9v2 zK~F(4p^mWgH2bx__pw}EbDzQjwshrFg>U+NudAVELUsITY z&Ixn7M0#t2*f)1Md$xGk=}7E#y`{G@EH51WMa;hooqL)LQ|LTRh0u1jC;lttYM)W; zi>GV`0n_eBy?q+fFa80a697Iw2o9UqX=!R8(zK?$wmf8{(3*1{lBVfnCr3K?*_`-h zY%1Zb-f3@^=PB{^Y@JIfXTIrhrYc{MNA+d7`B)oM?p9gW#>%egzxLE2TLM=hbrWiv zlk992Hj?n$D#AMumqRk~&j#ykndD56`}&10^Ts(_9phtlUFqJxO?#dGV&mE1pp_*N zmqj?IIYhnkBv#jB_>~udfU}JSANRky$pxt@D(Skc;N^b&;xV9Ur64~&k_nxYohm9e1Q2sE7+{%{TZB3cgjOJcjLdqxTw0*zyVykys7%7Y1)grz=jmIW@ zS6A2aMpo)$CZ%-?O>_6QPXtNdH^djX{=^nzf}_1yf4Twy2HZow*z}xc}Oe1#xzQFg0|sB65Rq>9oor3p*f-q1EoM3%F1gEh+3wOl&X?V`0G^ z_^ltP{{b5~3D-pJQI2Edutp{%`kT5pNB|L|^sg-smD2RuC*cnqVoU=tz|LaF&WwL{ z2E9UaKRcu_9pr!(YzgR4Cx(Co5^M5^{s`Zs28XSbZ__(VZ#pON?DoCoX9rU)djsvP zjsI5jEl!LW&is|L;n8{67=uA?13k32=iSC6+cTBbq~2JFN>`iDU?lfTxvs7gv1Y~a znJ3e16;|u@KPo7Rj5-zl#X)d2A~*JsZA@VkCd+hreBjDl*XwB25rJZN_}G z4gXj7vnVE54IAEcgu5nl@ygHCFlZfQ4^FAURh2gu#D6S6_7m=`QGA_v-o2H7w6jY*ZLEy;xcUD9u* zulR;RDemECkU;#yVeCKg&7E$)$3Ob8IRRMa+S=ollEg1k)%+;n@^GW|)nCD?Q0pp~ zDZ=WBNI!yinx8lu_fV+X8hh7~v78v_JFRNej_aeMi~-6e{|vP|~v=O~U&L0q_l z=`HrtC-|uLR$EIzJ zYxQN-t?GCxeQX3t;B1Wx?fyQdi5sqwd-QdgOi-yDu_EnUT)37YTJq&yogCTj$oxNP zhy~%MhL6IF?W8$bjz#NM%pQ8-Zi=u79g2L4d=K$(8o1zIJa$q|LOpUr5Dm`9L^fZ< zY7Mg1a$}Sh9gVnvzn1iEqH)VHi=wlb6E*ks&k&O)kyt>A1x*JVKbiUq-S6Z@m+EDz z&JymLRVoa10Cd*0x*I9GDoGZd@9_wRK}q6_r`61~nLB9FT#)!$y#O6QJon(omlVkoC0rV!MLGhJ`G2s(5!6(Ouhvo0djO^Vg&pW?0AdvX z$1($*`He=kuDY-#ADjAjtHSbqdt};gQCmuHj^DxGqXGub3a&6Oq+@BXeGH9supZ?3 zrVAJ83w8kVmss8x_mVXk!;xAPMqJK)D#V+u4~d~;jEJBXnwntT0dO7jMuX{Ix!&Hj zO>OX;=DytQKJ&s{YQ5VNT#aVFwGYIz9tC6#y(Rgx5cC2OBQ>X@3ztNgNH250T@61l zGXo(Tam&PKr1UAn{knN}uo;eR z&EBATPORT-x77OML38;7fL(B4 zPJ_76KXwnt2CoSRb(H2VcH`=rG2h|H&L|wPLbzM1zT|yoC}G@(v;_#%F*eA)y$wY? zq*Tf*BI7|+)Q(2|Ulp`MJsw)v3rGJeUEH{!|@h21-zFC(mR62 zZHQ*N3x}|{%Pjl1I+Id*1BKAL41D{>qg4qZhZghlmVOJgr>{%~R=z^F`db-}NWZzh zp|9?bqI0OArpA%z#yz!onQxQza?uj*KpcDb@5*mfHuK_Ts^{5B5+Cv=Y_ZxA|cy+T+F-N=J8o+&44yw2!V1UbzeVB2z{VuZiTJ~Vl(eh?(x2`a?% zY>z9Nc787645uSfMw}ns9|4ODyyKs4h=zj+ zrO8xvHl=Cq6pwY-ql_)U?f#Q9U~%sXf-=#r1tmZ*P8#=ViH{NJE;4CjSb`*fs+#5M zrhYlBh6B)_Y(}RvK2Xr_91_2|X{OQOUahR!MsvvT#PKMwW8jNe#>-e{h=E7XD^)@?8PF_UJ?DwBEmHL@dQU*AKK7-j< zL9*lJgmG#J;=)pUSge+HJ?CRtbDM&roeF>Yuu@rGT0o+R#bm-ZDz1LU9I@~ z^;?!cy?e{UfL&2~Zg~_bQAi>AAWt4&vO1C^Y0`*;Jv;~8%NQ-I>|zmO^4nf(Pkp&m z9^0?SyE9rCq(Y1UFH)Q-m&hg87D{YBL&9T|#;9GT0326vqTa1CNx(%>Mn=Y9G)D#E zPE4N4Zv2W7W^bZ2OW<@||0^8}VP0%ZjAr-2gZr!xO0$CNt`J`q#&5^8cyF0+h!*_q zoAeB%btoH=O^71J!rtp*ICXivSbqp$OR6t6bMsq6Nd(O@icIzkOzHc$Tn-Hw1|TrH zN4+P7#AW7W)?pvE^lRSl&?oabmXI`9&G4<6{bSzn%%;hD6+1oA{QY4CnAqXlp_ zk7#U3{~Uu%4k+aS==Zl^`gPx4+(m-=*P?A4XB=LSyPeHsC_+LF8jpuwLJZ^tZC3-G zcBeHOZm;)fgjxu%D@ccPR2T+ROO5+AyG@&{)?&w;)8f<8w>kbA>ll%~XFN-n)BddZ zoRH+d0yzPP!*l|>!OV#;-kF4fw;x7mVNt4aYE2nuM>kFfIQKl z+_2gjsyoWb$swfNw(72t8|HZ8Q8yD56!Z+YW?$vu(ZK@r$1QRp=4;qr)XQ_PMW57q zRp!*~>ivs?+m*^NjP4M8NuT|+7U2ZunK-6ga8;-ui&jMsA4xCl*u{MI-JTdK)^8uz=g`xJx3#>;X4Du)qvx~Jor`(0Oj8gHJ&-4G zUraR@5O((D(Q`Y$oxlAFb)P>0=%%%!A1sBK{qE{?EO~)pxkyeS9r6W1EMbqz)(T4t zOI-Mu@Q-bGx38c_h9{e&s-b62jh8xOFd9nIB%bFB>U;sJ%7ZzyfpR{3$fWKAXxqT# z6WvdL%rLE%*%$~*BXl)!Y1J0_FI;rzPx>hiAJ{`(jkkt{o;4=vG7`%$f1BZ1v*#~` zJNSu5pj{cNTd3DKtGP7)!$$|`mRGa0Qc6D9T)Qe2e%*NdaZBbnQXQZO^G{6i9vcsn z&7?pwUgEDY{*%a_q2!IfR-r_(o?(0@{2Wgar5UHF#F^V1Topr9R%ka-X{|RVHeO|$ z?ilDMr&GOEP@5M-?@Ez*)E@8mHGO81%VM0&9FiB9Zx2vYkO~Ju!sCBfv}weOr$I4v zvPpm!z2rA!;*gzwdKLn5Z&pQ;KHZzM9)%s7=h0ZKg*+b1q+ALUy7;~YIiXL`TvV{n zei25(d)N;!yZo7dQ-+4&6Eyh`^uTQ6vBmZ&xd8`4=1ucwL zH7V%DIZ)rq+1Odq+_{JoyKt*-CNjP!J;7Ey zENHj=86XPXjh3i(mEvuj<0T4Ms}n%}Lnv`XH0{mhM+wI(`u4q-xD|y?aD1@IlGdN= z(=?OOCq^if-` z2Oj)wvcpBdf`+4C@f5q3hMQNi^cW+sXHak1q-N4o2650AmwwzA=iZG7eF?I-=*?%u zVTE`%$bvH;&|yrw%63dL-0 zKc+9D|AwH|)+i}YwmaAGw*Sw8%Mf%mh&~I~;d>bwrJfD~eH5;gboW58FG@?jf^p*g zF+hF@LgTtrXN?4U40S5Q;a4qDblX7Xl0v?km*)o(V93kEy?4ouhNe{?6;_asYvnPa`I6(L_Xi79uX-1u@N4}kN;jF(M9y<`4$7Oe!f2x=Vihxs zX1|jNg#Yio;)vS(;7W9fi3d;%F^p2H4}j(D;*;QSY8niKR#*O<0+R*kMaHY6>6Dxufp#2~Op4?w8`zn| zfx`bD&`_o#Bd1DinE)wYGDv{b^|StOY64t`b3QtSSK@9CXv6D?GOd%|t9&3C zSil{)Z%Bv2|F-Ahi}`F!`W5Tc7UYH4W5)2*xH=on8x*X7HF-U|XZLa;!#xlR>4>Dp za;li!5ruTd130oRS-t}5{G>fmjQa-TP-1?@Qsr=73oz8ngpbR2o`XRpz5pHSKefdQ zn0j>e$D#tb1CeYe%RMcbB0&8sS|J|mUL{|+D#l{>@P5-_IAr-3=Dw){_(1!KtQ53d zBJ|Omccz-|eM*WP_$T8ZuuZ|aeo0A9{A^Qi6IMFI$;_xn_#$33OS)l(8mqsOWaYle zC(A;eyeCeC9y>d0WYkrYH^?ruH25A~vjA;F z`%Fx+4kcFq6Do#3_hv)*&hJ$+1a4mg3KmJu#!G2m-d?qL2@Q1ZTQ*T8aK7?yEq89^=#5GEa-91?!T7*+cMzthuR`Vxal zRMGjZjlcu9X8LPpkXg{2Tfp`2JOEAtPMjx0qPs})aZ5y?T!4afH&klv(TDw{jS8M2rmrok>l)b;!iL(FCA0HSHWe<}%JY4oP;$^h*VVdYDBQiSrQgiV(!1EF--v(P zmgT@RT>25NJyEGpK%`B(XU%qkrc}m)zOpDt=M2Xg3=&Y7>HYDWKmmCm&a#0kk>>ZT z@?E%AuST)spEEMX>M7Iek*H94u~V*C?UW3`RlhY+Kc;6UM{1i1fa46|TLf=fVLbl5 z`zA%voOYa~WCJJ6oGUF<%IPz~^3Ccq`{Yr;^>G+*k(o*2e-zSblqGM|qcq%4)Pn23p70@$9(XC2a(^Sy2 zAL^JQwFh^KNPSyqz$U|5GrbR$C{JL~aTur-P)q3f0JLUwfCAkGth^p}RNLY3rU zg;GaxLj8ZYz#vZ)ch5Y{S#{FS+_Gq0R`&cF=DK<5bBK`jvsOV`f!LnFjg1Fb0a@0q z5%)1e5{_>(pK|_z99991Jhiz8|N6R<145mBZo&plCrP^lf*B6kzeIjGHxO|pX4zck z2))fooO8H-L{XMWHYqW+3m|L)wT7-9FUh^*@lqDGDzgm2xPO82I6duV5S5JORJ>HYLkoFWJvRnF&(qf;UI{xx^pp>EjN~Pnj z*gXqr;OTilBQBb-hIJd!n|Kh$NQZ|x1ofY0*?-`D zYIf(zb)Rc{5!e+KD_|@*1o?gweN^!tXpD8j=RFB(nA@V5m;HJ}NA4#$>}azeX|sxJ z0(M4}yt7OM7o4B`)|7!7h=sclf7WHEG+>+QWs0Yw#a9CUYjJp6Lbz%Q5LpU?V5{dZ zzrn%+NAss=AnUPj&}3_}MA|(PgqA4O#4F%8?G{p3l?n=EiG-i`i> zjuW=3^P0q}3u_3g0~v@o?&}hvzs9M+PjQ^BwW1k0R*=h)oO3eqr{me05axZ*GSaKD zFww#8j{pzLnq5}^fm*rdj;Pu_Z_%p&q)WO{(L zj>?UBnSWW=ouX(EVFuu+;P;i*BC=A;EJ^B*>j29s7!S$24|#0Acno}@G@v`@7o~zy z(lpdNIOLPy7mA$Yonv{TYE~j_Bk{3Gk zEp=NU!u?pw>F~j7$q}Kq-fY;QwLE`Fh#R2LT>?R(UnLKj7lP1?7FA*5yjE`NdNgZf z`75UM4H_j`tl37&^tsNYIFg5ehTa^rOa8h_1+^hM)Lr%-rO)NQ&j@JfwWF+&WDzWc zb(W6&w1>tZPDTUBZ(lMs{+pAl!x?w0(|o+SUJ0GBwxTijrCwU5S30|-kM#VCzwm_| zNU(s1)ghn#j#*@Z-l49IRxg@3QRGK!DtYy;TRwSi8Lk5p1M|#)Rn<6g+=0<`OKx|tV&s11c|!mZ*@vcJdqds8(vqRQV>xxn?pPh|lh6zDyt(cAQO zjwm;hpitttZb6t!cLf3i5T;P70NB@Nv!eeOi^1M#b=GE{=DU>;82QnQGE51{Mmen6 zay$T~d2#+AHb60d7)mlSIGTRxyyN*8u{#iK*^^&C6Tc!3H%9S~X95;lbe8D;h5&OB zG>za|SIuxpo_@tb;xO5AR9U`(1Gb9bngkMk9J#F6BLdJ!f0#`&7DV0iGDWWV&jU-w z5;DCKstp7E%C#n9P0_K*mKbJ%()@$ddyUref)_fI(&k=?q&VJ{)<5>08iYuBnD-Dw zM>Ab2T`E4^<<$9%rmV}{<*}Cx21m2!l^>c#KU>S8b@%=xC_E_fVyoVvTpc>ngo?xO z&$KUI^4s!9UTk&7B7XG(^dBw=oMU^U#0WS?(;1xJbvN&XCz*@FX)u8VTLI0FxIKQh zRt&RF5%h+Wp`&cSS-z;aNS0n-rvf1M@;!Pb1_R!Hz&i5TL%-rK(VQ#JcVaRqA}!Pm zH|l88E$z}qm6VPiZcYYpp!$Eyrc)amsdM9CLW{q=Q2RQZT-jU3TAY-1U66syd9GW^ z?|9Lv5P6gj{01|oZ37HVa-;x2TGA+`x)Vhn*jp47A=}>LD=Z+Lq1R?^YToAq=zyYTeTxz5-#H>V!}d72(Kiq zx41q)Vl2ZtUf4&h5ZK#gtRCr&vM^Ts6p8datPD$!O%ZlrbG+4zP2q;EQWXI}?ad9h zN|kRrx!Rj(2#l+-y=y^79K1ihS#bvt!aNZTXxjbktMM{jiYLRLm=V${UD3+!1;671Mqv*+HMa%3&^5 zbcvDV6$&uRPI=f*o$B>&PjtdC#%0p|jSQrwq5{Ys5?kH?JJO^Deu3Ho%)!yz&EP1j zs&*~>^j`{9&$_-CYmAAck#Ca&&QQy!Tc-|85K#gnfMLDEZ#-AJqKhwG^?^w{)i*-F zcw&WVf!+Vgww4DbZ)OISo7U%wL0r4i9)mHDpF`xKzpq<+wT}Yb*$L}9scUo1oJ!Yw!~&ZG*Fy^ z&1qK~I_7n)Mn}(9X!akw3Ff(@Bo3z~Gj+>&_4jD>Xk)tNWSSYw7vU?akmL9xEEWu6PZo_n!us?bc$Orw{V=}b*|bk|qPbwUID1WnCc)%=pxN|V86Lb@^2 zN!QbDx-h}hxbmc56NnC;|J48i$_cW5YicS9WC9fJeabI!A`i~O^mA59bbal9uG7a? z4hcTln`C|_oPoZ2A$(=}EQQ zWyauHwH&f}=tml%O75ND%)Ezea}Lv-%od0Xf|Ec`5 zpv08X@Q0m5Z{ zKk|@UZzVxF=T0MKR&GXe=gO@lPQaZT-NI>H%8za#2woo#tGafUnGSygMjHzVfeAEK zn0ki|MFQ40-es0k5E*?JU~(~k#nJPQ1?-7u2ikbPVy#LmPRMAXp0K$frxEL2v4WD; zl$H7Z_{a#sJ-hnDSFI_-7wTgP!O(|0+GOm0e)*|0?YX_toVkW+1g}rJQG={5Q+Rp{ z%7*B>e>4!cm@AOh=9}^)r08D@rpDL{=}1aKIYZhtXLp`M${uXV2r$<-{!p&inAQAd z?H|4^7{T|%T7T2q9IK$b8K(p^quL9=eIE>hz#UZ1d1{3|<$Z_PtKS}qCkP$NH|6WH z_BPs{VJf6EyqaDMz$I3OnVzy;>qIi}Ynz z##;u*9|U=(`;Zys7lWjlau$r=0MP!>7w zBfXDZvpPUO*^!)1F_f;-5)~w99351yH^<>TJf`X~GdgByS$D&^yXB?QN`RVpMp}=h z7);&PSZ*bJq5Iwk3VGLBK<~mW%{n{rt;mG_GuMu!+}5{S!phqK%tK0{fg>!UQbPf( zF|Qlr6qhzWKLU26fXo<^Vb{67Mpvy^kMjk8eU=O0vaIs3_H1X0CipQ^$t)H?8uR9w z1+9MCBKjB_F|}2q8n@r=sU#hjbUFiE$H=(2t zyUj?N`a1-s)QvT&#GhOksRheTd)0@+_gmizHQx4@w;t9)@YtLr+-n96GZ2AyRTcA* z_Af{>#>NL?#vALr4sKd+opx^Lcu51cq^fR8&71P@mo#eM=byaDNMD}BAm)3P>T#;U z2pYq-vP}5!m3MIxn4G2rCNMuCZV<+8wYqM9wnv|jIxt6#*N$CzU zIHh_!VRO@!kkCIjvFv9)Y|VDuj`3`>##49h{I+A|HcVF7E8i>U#W^0^k9@a2DM9X= zE`~yN{ITqv1=p3HZk9&voAY*IP4I<0aBoKldkoBpzDxGb7J~lZJ?9JBe)6vPKr!FQ_PFz4ijnt!%YI|b_ zVu@j;_j|LJAtn6qw!kFzXD3V7YPY*LN5Tu?j)X%yj#kBcW~2-3Tma&}x;yDpwhGs; zIq#dt9nNI4xoRx&f^P3a(jg;J?WA7QGQ!mhenfdt*LNA2MJ8A`z!g+ivePVGZvtnj zqJqQ6DIwcZx3gWyA>U*^_}mYj$N=~c8!#(veo^Oglo!e4sN;i-Sx{_AeV5^@nfGtF z>?iDSyuA!wjoX`F^Wk==wfh^so4ZKpIjZrHkRdlN#ZbmG(o^lI6kG;^%Tg?K#ehuR>OG?AvGR$hy}33Lt}e4+tgtS zw)9Vr&G52Jb|Z0qsWiLW_uSVmxRdDDKFcwn^hUcW6=e(R`f+(6*@Vkm<3T()#qMJpVNfUCl6`3leZ5n6L*5*t7*W2B#NCO}7m* zg206{*RxxbS1omBZ_1v&{aM*T_+PVBhih^?g3E##V|hn7d*Yr?D}!8i(`BGjG`lYI znjiN2ir;Rvhh6py{ip8{fH|-8v=TrARAy2H@(rv_9Tu>O^s`$ob0aw~7emVrK6EgX zCUN%pp#gh$GIrpVp;SkdS^&jAu$=Ylb;D^Wh)!#>zGzRUH_3<%HvX!3u5f{#xZiW- zJCNnF;7Ioh*zlJFJNUJxhZSlnAa)<$#&bmp*rdKEuk{7o!9W&hS@omxPyi{Um~G}i zu7V{EX4|75*%BbIaKO)1CTPyPz9y-c`;S%Z@B&(nt3CZtfPocwJRq=-FDJO~(LQt3 zlogdAV1wg*W+FyX)vnXJ3bf1M7Xbfdt!%~R2LmVaNWFyaoldyq@ayTxfdWLfDP=JN zCv35KE1~}!?@$L2W6mvZ31~`Q;GbLQMLUY5aC29!ft_ekJBg_=wF^H<|0e=U0nk?1 zT&7S;!hjz>c*;qIk}8~v?3vl@vBIrmaoEK2;N=m;8T8j=4oc|V;)?`I2^cUVTAhgu zb^~CyX~z*k%&S9BUsc}b8{$s*{&(C(W`L0aq8sRyb85$dE06uerdlmd^bAGS9lL&b zmL26c1pykgYH^?>;50z(@2vzdpV>bw@4hAn?nTbchq)?u1niuj=qt?gFkYATA`13QT> z$M;q^5smH{(p`pe1QuY&RRmc%F&BFuAfm3tkXKJEgXf%|ldgZbmR(rC^R+hY`P!>C zTO$T^-0`?&8Na^KU13$G%U8-T@o{7=d9|tV%bCJOkvNjY!S(r6D0(CRg_@daLG+c! zINtqSD=06|8S%&0P?7I09ylt1Q|Skn*7Knzafm1dR-1HT*uRZ-m^@8ap~hl~nqw}E z;+)F;=G6{&gcAWvjP|X}Uh1NZCH!&gMqZ%dp#%tiKUOF|YR7*jRV)(Ogv9wv)cZvx zt%hUX_Pa^5nxLUh&EXfd!LFRKzl((kybjZJtfbF{C`$pI5Y4dMqtJxDp4B!PJ*2 zapX%#4nGL!XCZ^GLk>#u51Yc`G4-u1S38QPh1y1vxqtBd@?Y3O#P11dO=wIE4reZo{%KulxFpirxfK|fh*6dGMRwcx zMN=>B`M%Xb|7RqN2>)Lc@xU7(XCUE}d~iUlNO+@e->Ao(O+(YOZkPkfP?5?6B8lm$ zq-16CPD{0!hV=)t`jS<$-V-jGH$@Mu_65> z!^rC*F3Fyl*INI@i0K600H)nhFE@R+oXg9~%_{Hv&}$V9xBC`SNZ8NO2~;Y?j~P24hA(IXzuo*4fKbln0tE;eQM+W zwtq}()DY!v|{-?92>o?Y#QowNYa+Jsar2<2A`%?NJ3&% zjGPg!jy#X0)G!Y6PT6DhF301#tm-G9Q-z{9me1Kv#<_d^`G{flYR9f4XU1m{zv8bD z3^O>T$j6tw75q=D)pS6-PrP2ut=FyL)jV0gw%mn{us4=WB$JkGo5aQmnBrYa zlq0D_+H~t8e4G@^QH_;!#s#hpP1@3vt47frwpQbS8N+d(NvJV_DInea{qo~-1P~vX zPh!GORqP$g6veGEy9}g_C=w<3vodwj)J*1EAFGb_JB{=z?@*9WC*y zebsasWp61U5$)v7Ub)g7O3;|e)2T$g6Y)`?Krob_7cjMcuAkq zFIdRr-@sMtN!)|_g_>v2@L_7l9}}C1l&}Q^cT$~ z_jCfmxjdIOYLM_~Q=}*-)>z~lxA;cFICJlU>b1A2#@6fhvfbF81_dRXkQec0e3fx9 z?(U>Q)78*l2qCMyD{XQc2`#O=ds=NcPL_M+R7zSA0<$&01O^tcL#s8<+!T!AzWsmg zeP>it-P$cuRYX7pUO@y!L8U3pLk9&FX-btEMS3Vw1tbAP1ym5}y%VGaq=t?t(u;&% z!z(p}4gm=z--^5n=Zt&D{dLFqew;sXjEy^c?`N-PJ#(#R&KYf8Y)5zTiFPp*c%G7P zl-N6=Mgqd4t~STtCY~M|rksjJrylVXa;{8Qu7Ea;IVHuQBRv%oUri6Qp!!C=lD{)9 zW4XQdl)u=`#Oxy_`BNbOFJ4nf*y)J8ihCiobg^9iO}Dw(COIG3jOi8ii22dJIexbw z=W5N5k-8(p;Q0(=!sNt|mjJWwk#WFXiuHyH$|{Qc=TT&2JS`+IfJ8_#uW60h?YdFH z)pX8P3*%GbyiZu}K?Os?t9e)u%OlxZfiD+mX4+@Hhj+LKL!q}^)+ueoQsK4l`a)#EA+_MV|PPVM5g$Q$xueECw zhCM7P3^rkQ=E4+;rb~JJ(slW~2RH^cA~857CbP2I9>fT^`mS?v?SG4oh&(L<@FDU9te4C{Tbm0otR`+u;tp~4N-zu|PV&05_uBvB|TPL&Madg+yiAyc(%qBJ#F zmB@1uL5$bR-eW}cDtdatF7a#{b~9^=snL8NH{?tD{z4#`_mw@GmeIPS90a!804;H4 zJyL~sYIx%9WL5<8>f~yVMwtadvy~5HbJak^Nbc;(iCd6QNiJt)NZ|awuT`OiJiRO@ zz2TjIK}5Z@m3z;#Sdi;zKHb}W-5ZH~m&j|pUD3SVm(9Br_h5Nw z$eibuyikQmflwB2iT-uDtH~t|Lf2WlyErR#26$g3)-pWES;IHs>pNTwV&7&IU5(uD zDE{u|rAi?oSRn(*B^9-H2V`S>HkRsvC|+@`cKH5#31;Rs^y$mO`l`1oPDgXXKEDb_ z9GOm4ShBra9XicpwPb($D_&nkK5^(x`LB6=i*$caU^%X75HYdZsF^Nd7( zu?P+IC|>%f>rbiU9<*e!`Ox!)lV3g+|5l8LNw= zVZzk**B1Z4c#b2l5ngCL1GYtEkk0g*D8@mpNJ)G;6gNAIN_5Z4m_8)SFXsiN{c%zP zl0ge!Z}ha062tclp)S)kTIC5Gc!JODx3L~iC^&rAMzAn`epag!}#Zo=$IQX zXlhjPONDu^R~BonzloA0Ag6vD`hLKG;TpTU>prenqAb%@=%-U??=aW3gitcIf%_wK zOg3(a#T-&>Z-LuMoRaMYq=UJ@X?T<#Vr&5PUgwj`XFI|*U)N}JTlLcp_YbZ%{U4 z>AR1Oe%;Fp5>MoPjht6YdZN{`-D+)rw7j$qZQPM1oa#8T977=`LP%(NUGPnjRjTJ1>#?c>{bYKe6{d;8FTpPLkN zS)R*Yajy`ec@A_pdxHlmpp_vbQdjsVo-?f)$|5~B0ce4Wk63D zm$c=-{%Fm(n8Q@qgLqOI-Vm_@yG>^4VaC{IE2 z$geBze{c!-%4Z^Shm$0G6{()Z#Ewe^>nJaYQ>7|wH3@dTT|9A})C~qOcmJbDkL$Z{ zSz>&QdiRtlL;nZB?>P8t48zg&PxeV}SPnQwG^$n6|I^8TM#itVoz5CKo%QW=aEYF{ zwc)AIy#~!r07!5C_iUj=cgG}YxcbvW<2{IrVRrSEI;Qiac5}n6 znf%fQCS?OOt6rN^KX~KrD{pRJ6QsDppmvO~=>3*Ho*3)bKzp9Jw zau9J(Soj}uao>IyazzW#Gw=avh-!Jm%$J^%WkMRtAL;B(5MBC zmnO=#-k7lhU`Ek&i(cm9)YO!iuCb93|K`~9{9>!F)CTE4k-wuTPx0 za0BDzJmSQboNrVvY#$4=?90^`w))PsE$DqH_{&K7xfHDD;zm)YEIaL&MqsT#a^~Qd z?;AIo;e~qdttBD3jAs0Arj&gHx*-9lGV&Uxrk?>nyVC9`6&Z_Ck+fEhG}0u^k9*%%tmhBg#$b*j za@Tgw{s)Woi1!5)JAq8R4KJP==Ry1P&{x4E7iyRKPt4 z4H^tvdz-b833sspI8deJVvz*<>C{4lmzO)-=q}#`(eJm5%Jr-AULl+-3d5y# z3z;ryJJrj_Lo?b100kkEU;mWh_Byuv39puo{92nx=fgFNwrEBvk8b#56mf{YkIa}a z>!Lbp1_!Bp@y6M}*d8Y<(JE+jf62D3(SN4#Rbl#$_cGx#Zi4E_7^ge1Y&q{e#woaC zX}PJ}NA4)IwF<0X-UYqDH4OsqpA69PEZ|0eSSCrG>Piwv%H0+W_(J*~INAB1{t3(E6vo_T5(crdAOck7iv}|B_+o=Q(0MQIYG)K(ly7ud?)cA`tJa_ z608`)xhwdY zNJHdoPU5KNG$DGY&&9oNQ`ybUZ;TaVfX`)R<^q$X@}-(>d*w(65g_;ef1Ve!MaiSqe zmjPKm0{nTRfK|$nWI6g+N?j>6rrHxGKNFRY zKY%;ueiT_Bl+f|x3;{H#B?+fLhmO#L^JMBRyAO(R9q5bD+hd$34-TCJ=RFVTL>x>b zBzSagq-Lh+;E*)v>})b5sU18hr5;#`mBBhc92{~7IA`&^Y}~I!@Gk&ysAKXQ1}@(R zi{o2f;s;h;4FAbH2XRjUt~CBXZP|XGCC^m`9=LAddGOgkhd$pT8QHBI#=8Fv)PDm7 za^$}w3Xp;hnw7sZ=D(>&e)NCC9QCE#eHO5|BAEGf@9OKvy!`qYi_Unf8huS+sMtE} zt^ZfqgE^J*K9{zgfgs1`3o2SOK&8y9l>SF+kCW!v?{fTtZR5PY@%PjQOYIE#k2(Mi z{fOJJov`bi_7#5qV%3>_s0&{;ha7_EPnnytdcsMVm8L6Ii8kin6z!)16&3yPXtZX( zpZSG9We4;#7@J}k9ov%!i!9$yi31ZspvY(XElQsTXtIOwpZ;hfzCXct=Z1+e7m>JY zs@r&+-V?TeTPWnncToNif25$`YXx^NbX%Y8GAlad9^&KUKby&lZ+t{A_H39G|`yN}f{1M9m+6J6lLc}FEs?Y&bQ|%fKKzops0mpgN z|H1RllHBnX$!Tw@{P9<6{UQssHaC(gnORKC+iQ8et^oTVz~+2d%Y%jf1eFmXWaR3& zA3aa?yXwAEwQC(xOq>m{gYr-5#T%mKTQ(OF5z!26{sasV-vN6sQt*NN!Yi~~+XsdnKJqY9z}pFDx!xc6 zd&z$$ZN|XonKzF8o_gfDmPk9PHE$*45AIJ6Adl?=y#d}ohkUD80fS^)aGLA@dhC!; zMWe~%q=TWmYQh!2d1t_ff?r4|3OMO`B2zrprtzLe_s_kwTU-}~DM6-!`fW5S% zpMUqMwZm6B^{8GV=K_UL9LjKWwFx>{3fD=oYYI8<^p);Ly#S!^lJxdQVA-H)V8C`` zX#s_a1jN#BY7^>J^5V8AyJ6k@WCgivi~)_C@7GKa+cuwlj`YzW2vy72w-%0$1G!=0MPTb_pnKOSq*EuAMTv{0EqCCtWjgt&s*aqoPSi| zy_L3cwR^bQ-2QK1(o_MFoH%ER>5^BXiLe4rAYFRRrOBL4E+Gm;2bb`NL^wVNLZ^5w zk0++MccvO{#UbHj7BnExRePR$H4tah1S4NDSYKDVCxr(?Gb}s%D(;*5olC{Aos~wX z$tFfzdnT~i6b38Z@T3}>LG5u1%NE_*?A;Aitw1bPx8LEysoJiiM!e}BpJV276#S?I z_r4eMhGf;CW#)kys}Wfy5lT=Cg{wTgf1iQ9y*D4dklziOe#Bd_(ewrJgA4Qiov?MhP=>yc7!gN z9&k$uYBr{ZHC`UJnn06)l$RDiAH+^`^6aOvO3(FK##Ua9iO2k*ipeRk49Axn&e?Sr z5;8fh@Nu=ECYPO@$NHBjhw)75B#HNkD@RSWnSr2J+#`Cp)GO4!>D90!Xe4jB0CUzi zMxNLVVfcb??nk3=Q?oBIbWCpTu*zB@q!MUBtl3gwnSegQkNCxX-NBiUN(v^aLym??~tL}U{F^-$W0+NXg`1yv*2A<>t zh?zh(Wl>CPVKVXbQs4{r=lQ&1hFSI#i|3-Z(m{FbBDn)gy7!9ZA=(7b0AAaRifxeNN2YVE67_3 z6e3>%>@MUzDEV4`0)^vA#-#3Tb$XX(n_raG|_$S{rN_Do~;;KllIGoj5w#(&?c7nf4g}Kk;`X?WVaD^5@2b5@_jrh%oqa6MX4R6bX~YwR zG{`ZVg{Mfy#9XZYg1s0YKF|$N@o%^*8fm;n?>6~IUK#fKw7h-YEG=I&0~ZU;3#6jK z{xwTv6)2GxC$x;EQor!*`pb?jV7ML5U8FK+9doPJYZSVa#!0jp6tyE%$a?*JimR7a z^LBx52(zURLQuSdnM*PRIrAIFwSDvbv=K%gQxO|xxcnMmEeeKc%p%{6E-G%Vy%mvB=BC>aEc?6Qu`Xf0kf0hg z<0ZP0Vt5Jlph3s|*5VSwH?WZa&1)`L(nUHomL6h ziuibxbvF<6t3B(hzx_g=CtZw-ZLcZRG6W(5D_Gp)CBK^6V~&j+t2vO}mX;MFfM%S2CMdeXy$Bnu?XGG7*1 zsj{`#4ZoUIQSSqd1u3=aSaG{pbEL}L^EZh;Su=kD7Q8vwPVSRDLzZoAg1G`>&Oz4)M?d;* z_vmK6<8`o3(Es$vS4UP~Be%UVOteH!*v=3myD{eo4B94vqmy-efpgJ%kP?OC?wb+# z*KVqHC2isd_X%Zktne8_*3(Jqsrg<**99vhKxjoTRR2hdg!Xb>Um<@OE0~h?tOMcu zQwY973w&^Rk6JOGhH*N2&V79Lql6)z`}MJ$yPkTxC7N$eo+|;-#X7a!)!<@>WvqMw z?&1y$KEbbfTh04+;MD`&i89Y~d#+XAw2>{b9hgp~_jM0783ralVvT#0*+Q|gG+ULJ zUBN|0LTaX5$GEipk;NW{rgS9SIB$>6j&MFFFHN0p)Iv~NHVhU)+Zfln9gVC(KUzV= z+24zM-Q(Y*9ecC**^&uP=BprC@)Dbh4eQzymoOL#J}S)4}m|baXS83 zswE%JO2afbA(3IK?=O$1T3HeT-K8WzqoawOj+_%W2S(69A{bC1bGb9B!v%u%N2q!^ zo9VGMIqykw05sDwR)&b5)tjx@bBPno*=-wtSs5K{Z(~wMt<4r7WfxXmYlUaB!$#XY zID)U8O?{i&cySLst`SE)iOm&SSy8A+0&j@PTyAIi*4q_OiJg#j$#9j_8S~llzl5sS zLv@rcady--y+*E;XK@;=kJM;$O26ljn)V8?Bt63{Ue$oZymyYwO}I9(BtF;L=P~ig zEEU`e)MmRJhx_K{=5(I7y1aW_WMz2evUlRcur)0`{s>^^ZE`z^Eh1?aFP*Kr8L{}9 z+M4Yp^o*FnG^Om`&nHlGgW&sd@J~A^@9i77(qSQ(ch}~5n1&PeLPhSFH;}kYoI`LU zht>(Ku}|#vO1rFwGGjOMap)wHDU|_=dd3rPRr`)%u7;3eUYNh`F1t0!#5ZH;fZJlm zn%u``=j4U<=I9wNxe_)*RRp_qCS6*KkxaLeW(eNN=9139owITs4P3sES)Lo-lI?k$ z)%yt`^to)&oO9>uz-$GDY=j|FXUp%|3k)8utj=X& z{}e|p=$h4LDklgbT2$n_z}99uQDwy=lLDxbQ1OI~^2ijUVyh2$=ap})jnqW6N#J{y zwqoRPN{LPHJ(44t)Ru(f85k1n`x>|f@^sj&Z&Usdob=QT?Q83$olWm1{U$;0vHk}- zu*W^D4`HXi+Z=yn*j=BmB|NH!`Ppz|$Md5^Erc{J_$~lTI~_)IU?Awa+C^q`$1!Wy zButIsYWuOib;j+Tv{)76=v40BSR4|Pf}?r3+toOX`E0YdM-N~2qoud{EHD$8M)y!{ zOj;DwMBFyOopw5P{@GplUwvbriS*FefuBPYf!Dy#-jFFPsVnB)eDvaf0K$20lK=n! literal 0 HcmV?d00001 diff --git a/src/assets/pie.png b/src/assets/pie.png new file mode 100644 index 0000000000000000000000000000000000000000..f6b1c1081d647cb724856265f3038e1c34cbdab5 GIT binary patch literal 54463 zcmeF2Wm8;B+o*AOg1Zx3f(3UE?(XjH4inrVxVyW%1P>70Ex0>_oXOtLdCvP2&WE>Z zP1VfQtX|!B-+uLcSNtZ4jDU{-1_p*KEhVN51_sds1_u5M4hHm%WP;TI7#I?rm8htq zw5TYlqO*g!m8}^VnAGQDdQE5rQpcj z#Z(;`%QWlAE6EXRpyP+byBQ+81wRQZEe@;MmUT%(9GyIF0ym#~+8=u@rn7EyT`c}& zf(!9yP+(i+2?WQ?Lul%UL(!mnh>JymRSe(!NcLz2BM&g} zhzGv3fAmID$1xv31d54fjVC!bk_kY8U5sPNI)jtm33We5>#`1s{lu`8B^3rR?sMyX z-#Fk_`#y-p>BPzaPytiScjiuX1^d09gnfHBVeefe7SF=%m8r+`A^hfD9G1dz#7q?_KId=;Fy?xo_D<@_{A$XOwTflo1` zrQbSvY~(B#_S8ko!G>VW2ylS&Lh#|a!1yV$2YW8)Sj?cw-UkL&e8U}Nghn7@OFbTm zMDiP01Rt`3Hn>{oG@$FA<;*aiBo~Kw7x(A3Sh!v^okD3SaV_~L+uj?jpFR53il{&) z0+iEtnVh2qJ|hvzA!{_jc=M5PnNd+*l`}p>pf*n!`n&d+xA$f#4ifpnn;fSt#iTp7BTZ&^g>2-h-s zf?XiLiEeR2a)F^dY2uENJciZlPRl!BWy?tvrf9YCk#?;zyd6n@exNP<6cf1H-6;H0>DG!$u&9aW@u! z%+=Y|8A_<n88V&AiJ zja*{s@0}Z1aK*r{x}RVAa4+;YStw|>5xN3N;2`#dKLH@64e6>H!KPK<)4|O{p!0B( zgHsF{m*HB1i43`xVNn8Mej$AeZrsLbL$D79I@Y)br{&>vLB7ES$D`qkNZz4i4q?0a*gejgcll zx%92GVq=F20A+m$SNNEBoAL&u)C8_KpRJsZ}YPxT9 z{d8k=~MYE1y!SRIJqKEP0U0uCgz`s1;D_7V6f0 z%X`7PCq`}vPl1sQDP+|s6xjoe*u@CQcl^PfqMfpxGRyG!!fYw9L~f;J1#NZR6xrl% znLT%sXX5JeHEOz;xkzJn<`-}C_tnK!+jFFI<#WH)>ecSA+FwoFFkElk=v-q@n%G&w zu|lSP8dn(-8m=4r&T-7$FCCmREmSXbmjLx0LUVG74Qj<|zg?DW()gA5$NQJO)4jpG zMZmNLW%omc;KAr1P2=80|03Su2<9y?9STB!L{bvv9mE~f3g<;)CV0TZBM8I&9>a;7 z&33|Sjtj)Iz^!E!FkiP5;ksr;&!}SMvA+o}AH1_LXI)}fVE2(nmKT*bD_N7*kq1sy zP3=x0Or1;;XQ)hWOwCU&rMIR(YNu<8X->A3)wfwlx45=`(yVFZvv}SdU!|M1u2&0L zaIxXHX>kj3i@Ap+$cU+xkCiW;Le?p$?zAg8H(#rCFUyX~?yDKNh~&4vv}SJFvfbiL zWSKK5vNS#TxrU+&8xX-4fgdqih+8-yi4|*&dvDz|e6&AXDUnO?wlF))I#EA<{f=AB zx;OeM)(Zc&H7Of&seIr#oPCOC*(=AT@bbdz&>Tb)}c}r)DPZN;s@s=1W4lK@#c#4>WUyt8~AJy~y;9xuDxOw#Snfuh~)k$sd zYu8j4&*ob9nqRuWXMr`}RX=$@o}QE*h1bb9Pk-LGoaeO{i>J%`0IY3XQh08{tDJ+e zjKQzy0O)Y2RHzmhE9hZZJ0$NY7^bFtbYAU^YREk1V4*O zN9{Ts{rv}#3sWjFFQdD{S!Y{d8o;DDY9HYc-IC-dC%C?#mh7%C4% zzJJ7==y?3f&wk67ck5z%5Is`O#I=SmO+EfeyUs24DorWoS9ttpkiE%xg_Vrx9m=pH zv2z;zE4mu*lD&}4!wkig%6!4B(zMi+1l{U8n|Ns{fx=AgCUpxAPSlzUpUdK(JDCAW z-eQ1jWD~0f0dWKKgso|mY22;v4c(2vq*S^Sivhbqa)4LK#$+*jE*2Ed>sQ3w;p_#r zHP?sWmAJ#FnH2$?ADLfU&2pZ*3cRv!MgLst3u(o-Z^wy@4m1q3B4XljV&P#;F`sCD zYA7qwtkzWa^{HRlt(Lu_8lb9{%}%q|d}$8VaIXJd-_&(?%XZNa)f@e6_Qni3F`wF6 z&m5P<@Ru!wM*BjnmVmh_fJin+&@_-Y(g{>Wga!{H^n{ssSg1Z@_CGOjGg2NiIvrj z_19Nm*_H=KCZ`7B0#C;-?t$iPeb65CDDWFV;Vw%~aAlUQ`ry6%d#Qa^j$_BY-13iG zi;$U|uZIB_PhOX|Q#gFggzZQE^*f2D#V->~X{aANH={f1ON%e`_8R!L-nw?y1WWE` z8JEpTOOUm>-TggI$L9M}Ejrh&7wb8`oo^_Y)3=>k9tK+zol5}$?~nr_i4pjy6C`*7 z6|ZUMy(g=BYjFZ7zP``WXGuV!_1H9pVg*4DY`58t@!TJLmHroZUG2PWz>_Fx=C1~k z1`m&)KFXgDOEfrZQQi(7mku_+cW2j9)xy5(KS+E`)wG&ywcLq6@_VPf)qMDk!M>q( z3U&nWJ$}BPZ+yqgmCjuXsDGQg<2XAF2|5b`XO$dKB7|mH{?+sa?0pj&j1eB}Ma|Pc zy{IemGnCRM4Hn!hO;uO#=OL^>?WaVNK`k1vWz@_C-=j5DuxE6>Y1F*w=|MZiBCF|d zG6t%iCS<<2xSl3ZVCC?E%!xrk?^BSF1{I_$onTo%l{VoI$a_QVZxaeLy}O>bVV}7^ z7dVOGO>%XCiU)W{DJ>T;Fl?&7FK}sP$}2E1Auwq%VO3A?vu@b*PowP@AN4$SUSojh zpNa9I7^L}t2Gavmou%W|2FA69xQ~bS51TEQa}yxpgtWSd`m}lz#<-LS1l1>W@dA>1CFbQB?CW>$;w2Q1Tgsc|6W2Fm_KE1 z-|KxSg&_Xll?Si*bR$d(j`82?Cmh759z52`Gs^#QGgugN?*I4=X;3t&&`u`$;N-W& z|2_ch?@)OE9S8L0e~0=jjsKO^KbrHu%JBcSGQ=mLcbn2k8^Xc4Hn$hM#Zdt>_2yR3 zl4IZOopkiK{yaoZoOOz=GsU&(!q$}UIlLJKH}Q7eOdNdsJV`(u)=n;NJ=pU;b^nHa zu=5&pdZJxFu3|fp#9<5fb(~Hr5bEzmDh_fHB}aYrD^8@_YG&bRu{CdYi7NVZF*-h` zKpZ`pWo>H}2#+|~2m1Q8o*5#y5b7zWyRA-p8vG!}4pntNxe--BG&2cxM46qjc&c2V zgIB8JC&|%dkAFQ~5h^&s)*YVggJ~U9@=^1{1*XNIef`P8;xc9Gs>iuChKFpFod1#e z=j!PMEY!=C9QzqVo2ZGm>TG?h^G_>^7DKnf!uoogawBx;NJ>boeE9=3fYH=&MWB-v z86wrc4lrm4J?~1M&}T7A2twT@iu;scSgTbwN>?M~MJ=?;c>Y~ z_;gy4#zT`g^x9!_H$i$a-<#xTGSJxc*Xy%d&iic)<+Mel7xIyk|GMPzZ-E0`3zG5Y zs8K>Q57~3~!xBzaYn0Q-nZxrNM2mh8a>S)nTF+j}+CLbl?jPvOyDybSPDik7HwBdS zp3|PHhR_CGMv#-9O~^tUseZAo$5}{OLmHh*|FZ#esbFCat0;CbZgN`2W||JCMFvMT zTjbMIIw@4Ge!qm)iLwQDbc)TBrS}KCej(%TLbzW(BD7$gZZGa6qK~T?j~p4XIYiHp z^HoO*8-;sHX%hVtBl<`|`-*}=>YxAtA#*2k^gx@i*65Up-Eq;)$m)=8Gb1ooUGdAm zhn1NR8o^fG9%FfP<>=O-h5?V7eU!Gc&N(LC!?4jq6uKs!(AtC-<09#wphB4rnr<*` z;DV%N-^S+W>|9^6ja-M{B1_FS9hj%mfz?O4<4QHjuWA=lWVPc1a3wX{e7{ zp{N=)=uy-bV`OHqYPFJh2Y71a!4WZ9|H@%kB=93-6q+6}1{R#cy;I;_gfO=nQ$a(6 zuL54Hq;c_ZSw|aL1GYp60tiy^cWhhY=g~Ft2>HoGOzO|*eC4$Pj@#XQ)c?_kd{8Ll z{gkXF`5Ov@(fu6R!?tEN!mR0OwH|6CV(s37gSeYkS4y$xK#r+Z#((3izl@4^Pk8ptKnF^OA8G%ZIUi`O z9Vg=&T#P_ZTZ8+2*BWh#Smwpiy8S1d1NB{9M1z;-kx%Y%qOPuRVgOC`qttnGi?Q~` z1~cn}{-0>9)$w8f8nh`T$e^PMAIQ#{?3}*mWPCkVT->O66vXyWnMdO!cUL>s?4hVo zm13802M{f6Qn|VM92k(aAFL>>H<+rYW)(tRC73k&SnQ(zN8Vz>Ap1hF?4p8zuy*?X zus|Yx=tCm=7?B(4={vC_p(vtk=Ehl}+0$6^c}JEE`!XmZuZ?70cEbXrbr zi`Be#Of7P7F_$$jQ)2F!yyV)28Px324(Y)sEzwxRCwKpGtTFJ8f28nHFBILUPOY&< zV?RC})&v|`)7N%5(pHi*bY$t+xau8HI8!pmCBTLw`3i|6`*b_c@Y+AW41R0(YNp}< z`c6>8n(mSPM^Ja8@$6SPX!-~T}lQ?!R44#9&=*#*4A%_^Cpsv z&D(JYnG`-A<>|U|@D#rmk5g!t+75mwEQq!J06-;BM8xd?eFtDdvHq@BC=qk}15H{$ zNP3B{Ryznx`c1p@GAUMp>4M7JX>1k9{3<1$q3y>H=q^^aqS_+h08lGTUzQgZ$-Kg#=^7wEUMTm3jD?YGqbxcOPM&$# zOrW+dlbo`assCDr6cqS-Ts+)Kxhl=BL^;&#sdDOijhn{z!iSvrf+g3f=1a3~9sgnI zKdP&*9S==MJuD5P&Zx(01bjE5X5c;dda|p8J%`KZKc%2h;12|IRS}Zw>H0FK6Ga zV@)vef>AIvr#b-JW38o3=XBjEQ@_00_gI>)#o>j|I(BM}1CvRI@V+pij$rBH>L>Gu z*;qi0qs+O#0o)hV4H67a;;Qt&ejz+V=%p+npE|ANUMr?m=CS01@nTUv!r)gf|6m+9xeijDkCWqu|FXP4)5KCKa|M0Zk%A-50LaXk`kksShfo}{6(j7=l@X1{Ihajfw<4`QaiS`}0I{El>#`*#Y*k{}oL zHu9y4czAxCU>VE<$cY7GSE&so*NObbM|R~bL##uc>Y(N>(~=v5BERj`{Ce%CzKjZOxpOD$eKj}S z$Z%(Nx8n|JI?ii8sry$3V_$HU+=Kq^m@m|mf;S95yr|Uy@{o12FFCPAh-q4iOuv#O zl>WDNlhW@86J}8=_Gjc)S0*HF2cpm`|6%pMve~VyK7{^gFD`L&(51SztuzyP9V9UuW^q$B-~SvzNf?e=9f9(95>JO#d8~IOXQ3VtrO%Wh>jM;r~$}Yp-u7jV;P0 z84~~akB3kO?WugE5x|dvFE-n{edpAKIL)Juu{nceNnEukXkqE}LCXG}<#Y8uRBOKg zPPy|(lFj4?w8)$>Ceo$l=S?95s`7!b{;8F=#@j_@J2fg}}+? z(QmH%pm%uBQg$^*i?L^6XS}wH)M^d)+u(Y&z({dQ^cfmTt?T%F#qR6-k}OlZRZ7aY z4Pyf-!=La?%~Y2kYN9A1SSav8S!Cs5DMPt|OBkcm9~hNhZm*~KrpVLTs34~|%=UWZ zHK(jac9H5A!obSfsxvii;I(e~xw@oM)L4S_x>?{YL8s;7dK?w!;Aa!vDmsQBxvg*& zob6VR-bL?+|7RwqR08`p;f976fvwt}mx?O=ZtXvlKPb|4ou!A=dS7oQZZ>@`$9|Wq z9Gq0vrWy@~OZ)hAu6rG3E32wfZoNOW0)L+>O$@`@$PT64hDTHVdX%2l{8YZ?r0__6 zFas=1M(fTyyZ0V$zEnf*dX4KbhK0i)K z+ntwY^zjnkpG+!*$|uKg3COFVqEaZ%e3P7(20UHv_G#@yKmsRB=d@iW?R}nd*spHg zMCcka!GOyI`xr$bP;)j94Rl>(RAF`QOl%Ay(>_>siZIn+NSRBDP4asbpw6lJZ7tYw za5Z{UTqz1Lnogg$)6;Li#!9nQU)&;L-o1@yh0LWUva_~MJj@NykB%2_?da@uyCfAc zdPe@#yRxzZkr3HrHBaqzlpis4{!r}>aDj$~UPU0B{JK{B-Yw~0)YZkub34g?FYqqZ z-ajYH+)a7e`_a?W66d(bL7HF*!AL+-*ruGRlKi z((C&Aicl<8$mwX=1$oO7c-f+X6IX17jz z`DZDFY)bspP|kxNaU065TlBpG{2DTG>*32~H=z9u-Ry}{pC-(Y$ zn9F>7ICJT?N!XWNl%Fq5LhN%^|EU{hlGOjRFDy8-QELZpir{5HRP*CtC~MSO_>Ys!FpUuy`U-=bA zQk7qC5~TbgQc_a1%kb(EX4@@hh_zbnv+eoB2%%^&syfiBerRo!@uY}NY#PDRx46b;8!b=`%&;XMKaQW#ER07Xwx8#7IB#Ep-*z!*iIa^ z#kJ+D5~Z(_Y8A&5&eC(gs8d`zin9QFXoMGz>;5(SD}is?#Q1pA{nB~_4kCp&&9|&F z#<98vQNBH{^kUq_eUB|a4IFU6BWOhI^xY@kzacy%Fb$x?uV+9z3*>V0_)SyrlD>HC z)d(}0YX0-7~i4_a4S_?ud#y4C5SS(;u+qsUK@Cy^#b z{jOzypIkqBUF3L zMvIvTjhHkzxB$v^mtic8r&=cqM^Nm59d(epbZ_p;6T8f|zHbb1SP)$e=EHM#-QI5uW$9&mUZu$`)>ijSe+K zj;WcM$6S&#l-0YdK~z-DX!JTuf>8QbdwCI^9c*LjqkQH%7>b3(#gnb$`BI=B@6`bK zH4r+L$I zHG)Ow{1XS3ChkY7K<%^<&_LGZpb2l5-z44E{8dW6-O(&?JCrs|7P2b#sy)ojc{mbl zl>?#x*}s%Ju6^nCTgDe@M9wxw(jEV&#@%^=@t|~{lk(CbfV2yVztV$(|4ouW(grEo z$Ma0U$&rxY%WPbeY|vYe<>O8!B6y^Kj?YDVhhC6bKLR2m7luBPL^LjXx_Bo=UI5yh zp>-&;7?VD(;WH=vF5bXOn}7N(9J)p5&3Bp{T1;v=mb51VNQl`F2cnR1Eiq51tos1W z!r((zZ%V}{z zfyn4{m}mF_#=uScVb1&j+Ai7!n8cGYIo?h0+rygnCsACOlGIde#tbDCa>*g`e7ju# zmvW|)f+(gr)=*fw$9Pec>rU3?+gKvr#Q;m3c1td0H@D`GuP-Fr!YI2>%}e_8UWRHB zmtRzD;javKmT#iHtYSL|hF81E{~S=O1l26ckDut!Ye8ccUxk_!`M5oOfYEf2d`-Pn za#8_ z?#E#0G=!dL(t8@V#W zl&zh-n@v_uKbxZ2d6Doc{UKSAywJ*&66z4c429Pb(^XsC)a!H2L!?vZ3OsMM$z7=RJ)rNV zHh`WWIOd@^IZGg#G{#2zF_FrMs6`oC)GlaR!oq}Wpbd8##oW`j#k<{!I2##CiwH^O z1Kg&6+le5t-uZaii?iuHD$VuR#tG^umCvN+=CntJyM=Lz@f-!bA+ko}goYvFJluE@ zmmzm;rU~tDiM^!uvx7RPWpBNB6y8BItH2=bP?J{e@iyff)Jy`{g6q$7?Zpx}e8#?a zNet1@WCDz)B(J?~Xo5PS};E?^Eo(CAxAj zA=}wJF6O-j*h}aLc6IPc7tzes=oxP*@LWim#tGYngwh#&UJZhg(CcEPmODBzcg?ka z@|+HvXCBXep~7%Gf^WwPt0G9$=|?aIf1TW{!+mU#{~vxSQg8N!ezrCo6NuRJk6uki zlF_!``^?kU-kLX~A7XSV3$53;%!$4I6=C-Gw{1i8%hhNWSSNpFF$;IZ=S)qWFE`Fe*B}^X^_%2yCl zGTJ?@sk-e}uGzywm+BxM+tdipR zHss$mkEy`7gH!LA8Hk1L7kU(Sj|IQ`07|UpX9*1Jhle=!dJzpa44nYi5Qh3FleOK< zw6K}dKOsFZ)+77}Ul1#A!jTDFvG+L&UaK0X=j!8~P_cgj7WM_^Q{|qEujC67E>^rl z+8%(!50uu6@tnh}w@nzmTk(0nHRHD?I53rIbsf)B>+s1pK;&FFzO9~r)&JVZ`BJv_2~|A5&JZ^=&0mK&kkVBoqC04dSPMV z9vEzNvEyI>%A)*!Q0~h;{y81qXrUr=qfsfIexads7&=hq^9bLMC7@UL6J_IIw$!Qe ztM=ca7Z4Tx<(vNvnF+< zH&e?;u}KOWrJO(`GdcP)yJpyy@2!0AHeweFJyQWqXr^LL{g;T2QNV;EsMJAKfUM&arMr&X{Y*$Esj& z9Z?4$nF>p#`Zo|=Q(dt){~FF-LP{!6X?h(=b3I9Uf5UVsT01!BN@d2b15k%M(Bf-4 zFKLqRD6ASZMEx@S$PqTx_dYIu)3zYHs=I>RT_yHD%Gb8cOqmE?Kt8qjvZ$|uy?d|k zxf3Ql5m+|7&knbL8Snvo7pHY(UPnRmz!f28hC#$;U=g>jNBPj9Y?`{5+n#YXgdKSA zhb8$fc|{RUQY-Bq^#!}1`{pObJ(cEA%yyU#oQf+b|0~?XZtSG>1{Szpv}rig&!i>p z{h1JGUN7VwXuav78hMOvZd5Yu-vOClGFipThcoupNaI}*`BgP+_RUc1O>qV7yFje; zf)l5?5QHGFxF5P=lnT;t;&7#Ub>icuk3uVa0hU1B8x@=ZfJ08Rk$K1FqW^iN(IRs& zzV}Ki>`GiU#Bm@jjDdC%F+a4?Pedng*zNuG`TYnnoe-7`!N5SQC~&I|{WKkJIhWh- zZdTF_3h~Q*MP<#&K`ml`3>-$C)Zh|MPq!szDCdc2r;@<`T~-okSs^BO6)dndi(HhY z#^uTSuBm6hh|6kj&x@g4x5eMb5@G}sX*DR{Nd`@=`>`Is?iXKTOK~Fij(uT}o=r_c zox--gmIF|OwL(++u8x{k24M(Xu2uIy9*`Wp2-%}RZjj8J*6j{lE>`J2g6dOvPM=^F zano=`tEmi*2DejnKRhL(GpFb&ewr-DVE58K2%LboQ-kKq%NDz}J2TB}Am%~|(mM=I zUx0Rq%XgqwJM0sm@ai0ooCvuoD`Y6m3R2H5>Dd9pSJ+H^!0(Q}8UmUoE}yz)|i2hWOXwYq;86blz|g13eDq#*6NDGn1<%Oan!6KF~_kchgzzby4$wEh4%2O(d;X&OSni*PPS1$UE*6>`7b z&2w-)U4%Qg_VG)S_%-!47qqu)btW3>2Dc|JPaMAY{jG4!Kg|=W&qErYUq62vZrc9B zFj>EMsr=>8v%KpH$;$6lONkveu_aA^f@;v&MU`R8)@togXO8V`MEN;9hAxS1@%(z+ zO@U{BF^blo-D(|kR)e7^P~q^YDpqawB@^KOlPuyX(-Nl}AjRUa$@kH0=^h;=%CJFQ zU?oZUs9Nqtn?UIpP9WL_-_u?{SdHvYgW+pk641 zNVeXOhORP7eF|M2-e+)A)A7W4PV5(ms(bzn6kXIU%$2O+$V)XE?gS)uG}^AmWAxpO z^acz*es+_hH#fr*2g6)}!RUs86IhDFWfjpOza~JOjcSmLB`i<7I(InWnumE$6l(hG zVW@EW{q!rPJ9=KFp*&bB$+j=bFhOlCKTY2oW0$YT{?!{(9rCkc?s>ypprek*_;=&l zaqBNNDX!IR3Y=N*0~rIN%GX#zcXZQ<`RsWH@X7tJ_ht3)4^WncyQo))q(^Fb1 zI)`kb%q3N=Nf)5H`xv$Hsv7?ra(D#9{wS$HO;SzNi8=ryOD_D72|-D>#u%EaWdl+y2{DpT;$V}40DSIDIeZbiEkUeo=<%Lw0|i<8%2?i zC859czBH`lqk+rwgGw1n6a!i!(rgE>0Jh|mJS#(jI5dXixt~OCMcaN>pDetfd-D@D zYpSZ!6SXf3TM;<@qSyWyGxrLkXn5uZh|mDQL94g%3QzlB=Y*}{^I-o)#}`OPAyGMlGd01RX4kgRW`!=QvVmb<{yqz?+&ZsK5-=(xIqJs0rz+3)AK~kZe44zEJB!9h06H&NOU0d z<8*YZ9Zp4LXZRUg!cYsooC+~)UC&36(}fLik?T$p27{@)>$GQI`-yJvSpDs>|N3iG zerR1iABKd;6Uhe5g6tAetgAr6=2qIuTAlG3ZE~%_2uU3|xl5PU*3%mqiu-F&k5+D! zED2GkM3?xXLeb(s7^NR{Bmw4-?P|qnWqi&js%@uU3A)E9zMlPdf$jNag2#H5i0G?u3E03aO~Rku1HKd`On+PB3^CHP@rXRG5}_r*i9Q~*Gk%B)9(aH;rpADi*v|3LYpD57HXU5Q!vn%!lOV`MaQswB^_}QG0LLSZ+1#e6l|2A7 zwG;b!XmtY@BU{AShA)+~kGjd~2jO}Uj6Ft$#v?57cV%c6t+NMYa@vy;AkHHF*FXsE zmNpNEto>;QI@9^}q1MmW)L!?i#}~*XBe6+HYOM#DmLkbhnZq2GJ%6x5K%BbM1sE_{ z5rVUtgHYU0C{UJ+9^EjiRH;jN5x0$EPJ{rVzPHhlQBjHMa1Y8yPFkWf)zRFSKKl+z z3`e75csj@EY%Y(ZS)d!6xP#X6*7N-7+djt}o#vpBQK7QkuBJ4BAI(mzK;r@VSKVlE)*)wYh72SmvZM4t&A zWd6Dy4;|lnniEZnki)fnNPvqy<+f>_~5bCGspN73mcoh=rmnEdT9_*FlQLzCyrD(z@qfOt8zt@6}a0hwl5-x8$ymccAm_6xSn0Q*HM{ z#=7gge1p5)B@YKEudaQ4y9`Ks1Nw!B=|e;Fc!Cb%FWArsd?cF8u}Yj(i)FRN#l;G#85#I~D1MXU1#h*ed0zyDcLX*N4$!t9N^ZNt{ zW;lcB)c8mY!2zi0o{CN(VHw3F_9gTXU6L?=BBCtJP+}ECn|i|exVPr#3upFTu6728 z51hw_zGD`5b?N4|eq4{y96AeXqc|y1K>CxP4!dTalYA?v7^JY!(^(0_tA5TTMn$w0ix!Yf9VN zG*NiZSjsCZ5K{Dd3ID>xx%G7hkkFhr+?I;pCP1pXy|?Z59ce;|2_+6nf5#~j&G9#r z3aj5td_z)P+9FL_l+Ifi@%a9_FKO!K-4#wf?)XDJ6NaazyeqGlb&Dw~1tJEw6j-Vb zg#-wypy(_5fXdAHYMoYV@YJLv3M?$F8xUZ!+2J-CfNBRp3Q+_$xZ}S?#`|?#fRw0c zNEe8FzBe#;9FYh4Kr)OzfXX)#_?EsqP_gu^kR9;;%ogzO`@!mNc;NTA;c?&ogWbX! z-LiHj2alXkr|yf-gKazLw;_6wN9!3JHv3^X`bRD^6>61Gi|4g|=Qi5ER@t`?_G&sW z5UiyGK$>rMJXh?z?lijMFbgb$y(qE4qS)_E9ca zTDS=YHDorwo~O0t;zM;2r?suB%YIvtW&@qun0v`%UL90y-i(6BJR#W%HrDy+n%=WCZT_VFiBV}mxv%>)?>$0oTi&PD z?*gPGFGx%yY{+DBIGB!HR)^Es{pn!7lkj z=%0Z4IUQ^P$2LG{pZ{q)q=lUv5r^sb=twUPtV7pzc%O{dpC1+oRW;Nb{=oCq(kFtg zr|?f$SU={w{n3lT7fp(s_C~DIB0*g`B~TyHbK?O-hyUKP59%JrgJ9A)sJmauIMj{6 z;|O*wm=2{8eK3&*jN-okti_s9Pe;@$_^j)SnASz!qdSBGebz;6=8Jir!tEc}2g!&jJ%p?y5Tzkj3 zrebtIMs-eb(f2M<5f^;|ugyq4x_A<6ZGTE07Tt7j6-;Gjv=&9l#R?bi%U{R8)L=rD zD;M3~C^3J2JG40%=hAp-<>j(ZgrTA-HL*DEvepyL#&dnGZ*b6a6+D_G_r(Zcmdl%=+#NOVgu_nrR*wO9_;+f z%WmgO6_(zHz zYri%BoaNT4YT(u5$`qg%R;t1TCz@Qv52W-EOG#EYo46nnRsCE^76b?1)i_I0E9W$Z zH~(xP9C{Sa2NX>1)0;g4t~=Dey1AjOp_iqnn=igNB4z3iBcj^?$@d)1wcUOx0ART-r(uO!DO=Z zGqB|Q0qBe#?ZTHOHMuDPCUOu+a-Pybrx2b4TuXAgAwR{p9?n+wdZBg6vSJXU+UvaU ztyx9zu$=~1brl}B-g6gSFa3l*7_fRKPw~GxeNyB{HIeJvXx8D=BcQCbO#PJIrTA4} zAAJvB1jpiB`J=5O?2An0lLo^VDt&1f2-Iq)i7^#tN)JZ^_oRG!tF>_07F%RG?{lJ_ z=Luxxgf!;H2_FTS#=~O=lAgRea*^!;WUw&+g{EMAoWh+%k%*iKA9=rXlu0LGh#znj z2&Dm|iObycWX$+ydoL2r959Ah54-aUN*Jb?e{B!i3{DtRA!$OJ>eCJt*pAy8?NrTN;7=c+ub<+h`DRGf39k zF|U~w&jv^|60U2Y38%-Vs?w)*}-PlD^@0qiv9s2y**Rsg<#B}kS2OA-&T4pFPG zHfGCKVl&cnAEHijx& z6zw~7*MuWmjXyI+c&`}I#@7TBSTJd%f$KS~?bVMU2uXS9+yea}itQwrR@CpxB5Wea z$xMj)7Jf4zWVJrZ8t9cA;;0+6i#`gMAMTDD^@X~JOpqZ9Ej52!?7593_0kd(>ZI2H zzA|soDjD8Dze|dgOb$<Z(0XPx`O$>mV#5yNIjNdaa

avAcfL?Xx(7X!8ig;4d(GX^l&A|!T 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 z z(A*H1$z6L|D8N(+b_t!)FsvPWHJo70N5w#rCXDFfwf)geFa}Wl9e}HiijXwGFx914 zrY!U!^Hzf()?6L{AU&tPPn%|=r3)|v9jdu=U@agE>JsjdIOnDeWQ*IxeNXN?{GHpXK=`K($j6ngDD<w^3L+#<|>O<{wP342KI9XzP%+4-@nr zt8#&{ zy%YuuEV318EzpZ|k3E_KQ|dmA#0^IV&zwWKThFVKQME(L8kAS_vnjeZyw$PS#u@P} z5RGvXy&ObFxQ6ufDS_uhiC&y~d?D=hxubzDu2t_NGXXSfg($x18465>{Uw$C(rfQD zca`>GQ`Q&-!Wd%70Cfh1L+ZbvFUkO;FiX-GeRX0|`YJ_N0So{MetEyW((~$scQuWG zIinN*m!3pJ=HC}ZdGO0{$kdk+FomUl+Wuk-1Ukq#{y-fse^pjFb~VFg_i8ADF-+1R zGjAz3p9P7Y<9!e!;I?Cg{3F(UeW%VQY@T=SzZ-Kxp*UF`VN5SSo?6GAc2pXFgX_Y$ zp8@hgcU;(*3GD7a+lD1~77+!G8F8mS3z3K?eh(LO%D|ECY4h^Zv+qLvS;la4lOBsc zJak^@@Pd>tTJ6u*C8ee^z1*m*sYwe(lU7*)REYMK`+NVJg~`BK2!)K0b1_gRdl54*Y^5-6?V>4dVh=Y&~bQLsx5)P{%pmL~iZznUV>u8=Z%{nO?L)&LE3 z(=v%Ph*{6YF+F-Q0YXbw!;MdoylTdGZFDWWCF!P_osZEJpT12&&ALpj4?E9P?Htay zdZ_mw&n6{IHzxseNRs%~W;SFLmBt_M^fo^5oPn!x)%!2@&2j%vGey*IEYMJa$v0X6 zZb|1VOnC}$vZL#Rzk=E@IVpxsYIU0-t2I2tq@-HsD4$Yfx2BY?r+Pr2^QvAuMq6xs zN-})-AK7&B%?C;fA-Uhm4h~-?B=TbPWCy-vCg;Dn_h<7@4$6VqnR$A8()2kTa&U6) z>t3&~JSNql$f(D^5**EMs;E$mk!NUhcMmuO_nr1RnSJ%WN2Zz26mrT^$raUZc3%EZ z3#JUZKjCY-6#{{j<>e!54xTM9Re=ieAi%vhPr_})%J43ByXDYnvDvN<2UBba#o}4F z#2D}^Z~Xsy;Uj&pe#s_Wf@X?xKVjdOn2Ll84Ib$zlm?_rOyX$ttRSfhzQUzKa zfQ~Uu&lz>Mx~_-;nrql!+R1a4NGgAUMMk8-xo%!yC0s;L4Lc-T@MP>Dahh2x^AaH0 zAfCK(ZvU60Yzg$mANLCmanm4I&a0$$a!0+NP!^gX0^uKb~vOeAYk67BlA$V5j$hWl~95Ip+NQ{5!F( z5q_gfYxWYL7ZQwa`HUnnxlJjuTmVN;QWHFALm5!BFd68RYjYdq*!X+Q<4c)(1PJT<53o84xCMo zSTFZ`?I~0-K>2KY&-AU1vAg3_Q_IOlx+#fcA3@j~|7<`?y)}vm{xl{Vv;# z*N^vG67exFjJo~XNV;r;>uOMiP!6d9uf#Nop*wb(9-38a8*LvG@Gf24 zkUDp19Ca7jN7%&l^#e#pyF2I!yAQc96f3X@B_k@HjBJ_qNQHPxu@E9}pH4A14qdLv z*jH1?UmMB*N8|@_@g^vBH(rrc+i-$*=zA{Tj%up`OtqBKTg1{5I3Z+huF>P>6m}Rtu~(d`gM=5^}5vt8>C%; z+a#YvW>HTH6maFI6}mt-{#H@>1Fj^2BUv_yzp{2gX5p=#6}H%B%yW-AT>i@J z4OXUF+Y7(UNQNC56J8^&Z7IVkR^iuQ?Y?v_w;Ieg`R~+j7uUsX#LB3q^2rrFY|$@= z#53QE(b?0MULLL1#*~+rC&2q79WbHz9*JpAlMq>YSz3VqJr>j%eLRIzH?r}<1JU^0 zA8t6_IP)6rAE15d+$=)ckr?XDUngY z75~b}bHOU`SBym~Jy?^@h-vK#Q_3NXX9<*0s+NC9!-8gWeFN(ead|`MJFaIGa53}f z_mK|$k%23$w#-i}l&}6)g?_E6ePH>d&N7`dVO@(vX|KPVtOw2u%`*5cP4?I7$3K6J zRhM8swNbq5#uWx#s{2=Y{0FM35i1=hQu+(Ws`;DUGsn%~yL|U{O)_!rt zqY`&r{zzzetX>eGF1PbS&B?987u;HCVqx0G(hm`@KiUoM2*;K zo!{qK#EHCHjpU~tO{B3}2)BOi#DC?u)cWhF!}njJ{AIL|*(u}R5nUuD{j=d`1AwhV zR=V$&k8o`Do8%qQa>`N69Ar7^y~!}&+~RWZCOvE*PGb7|AD~-xUjA{o{rx?W;Q}-E z!Iyu(EPQZoX7sbu$T6>#CdHC*#~@JESrU&YniInd4o0^6ce@*!RktYQ;S?l1)=E@} zxo_zWFMTZyv<>F9l2H7e?r?mpw)V`LwsxE*M|tAz_4Rx{SxFBdGPt-+a;86z>} zp&d07P7yu%$Sj5T>=y|gM8(_PElD@o-B7ka4L^Ifh}xT~{R>|USFe}H>-AA-gsr0= z^T|=S>XGfy`3IZ5rIZNlY!;%&9bli3Pv#9d0&FB5L8rvGc28k6?=vghaEERHmS$>P zkcT+LskXM3RQ7l4S}5jy`r6)?W9w%QAy9RHa&)fyQgETur(x9?ImTNO?Fo(>bS&^r z%G)RONx14+?yB$EFIZ9ZiK&fw?2>u-0TrhJ)V+Y)@^cm9eZzo1=qx@?a0qN<@(p7G zJJRgT6^?u=`+>EX+^~80Ag*{*)LL-Bwa>HR#lVtVzkcAz4Udh-|58Z21IlaOhe0TW zIoEyi1!9ZIfW&tSCzaj2xs*A$ish}&7< z&U0?M*e8Naa-RqX1hRZa9P<_U^gm+XBCSu+kkUy~_*5H=^s2sRr9(`cbM@4yBssDo zD43P#)?(11LJk}hsk^(_$zSujT~WPaX0gETAj7|hVT9F* zR~viiedrozC&M&*Ie0k&)<1rBH%3w8RqILFa&i`7_E}ufMQG!l7;8YFVZ;-GCo!hq zC7y279_${H)x_}~TXAFPdXI?cg_nqIt-7z*W14~-TCd7{#i6S$ko-dwq+PG>Gb#zc z&VAZl6cg4JpnA?lo$O0t)AIG8;9;Cs3C$Ra!KxaD!eoFw1?BITuuim)2qYT&*6}s! zH_FGDsLCgFe*mY?sd-oLy4UjRZ(6s$?nOkW3q#uDhgq1(@uq~dCk#`|kkOM9Rzcy(qKD+H1zhpsx8<~H z+yr3@0A{q;B8l@csNE=XTd)e~QSX$}@=&5VpqfJb^co&-aT8+|ofY&*Ug=mep6#y< zjxdJF_InrZx3`Nv7-c%h++?4^uG+nv6GUbrM}E}r@Y`K`lk4ko4T^-@H$ND4EtvVX zr;_Q2XPW3m`q|Iu)DE1OT+q5mN8}P-F#x@#!1t%`OgWIXSd`%C!wOfsk43S1@BK=^ zr*!#JITI{L zxvX+IY+w4d9(4mj4u0wJmcLdt63VZad$o!~?6z?&!0`h}kC>aaL0bi*r^$uAsnj6Z zeY}^Yt5K(6c9NR!w;^Y9X{rZ%6z_?2{1ikKhSsi8>>7Yg-UwJrGn!wlJA^2L<1GWn zea;+)`YCZYAWE34IyRB#<%3A#_Wo)R6eCZaIF;HQrUnk{?U9@Cm{aajFv2TrL# zZ%t=w*8lwo>^n6d#kaM+&_B|wfh#Vpag-Xfzjc=Hsq?Q39*jMeDcT)mE6XVirwh|y zRbIWl*t^(r^rw&1ZtbxQt7F>>BUHt6L`#oQTgJ=J_<=&B{u`Y%il^s(iYLhhXPu%3 z4JsrP)u)6hp~*QJBgZVwWsbo2FhHn=bRln2c%K4K&#FMz5bY&dCvm2M9%t9_tAP6k zJ&Nn=`Q6(md4?{ZPX=2Wo2j}cJCmPI_?`KVE8h8AGB&)Tyo5{Sm8VR>S_;IjHS3(? zm4){8D?wuO=vG=OWO-cE$}D5TO`R5UfffHY<4G@a4eG~m9<7es4N_hV#RgnsbMRF? zL})MR?5$;g>oPh_4lXi5U&T*X{*@zB0)8}`Ivd%dD-d?rJr^80#r_;cs+l1vbL4%= zwv_zO{ zcu|%2W~-+QLC3GedrT{hCo1Rq z5|@njFV;*gL0ufKTzbNY_~dW*Zfrj)K8*dME&~PW#A|(C;~A`ei1_?;!lHEOYqwLxifCO9&)mbC--RtQ|uxkyma82GK-`l zsrNn8Uu;#%_?rNtY{lcG84cFM07ia+xA7yaAqMWGw6^}R2>UG)VJ92ZtZUj zmha~i`mC8sp#%D&{E!LBl~#7J#c)@Wp+`5C#4WE~wxA5< z9`4XUlJ)rWMTMfgB>+LP1)IX4v$x(}^ow#(fNu9?MSjOr zNM?RN)e{m#yUC%W@=0AL^WBHVvp)W)LEImfVo^ebiM@G~`wWMiqcRUsIxl`jjCiPt z-xNy{@fbF%$cJQzxR*Aot`i1*g$_MjhvCNXSB;%*-h^s0l=6}|@ZQjEK3)$??6${> z$(Or>R=kTm;gS>y3AiUt@TXXH`#Kf8INeIJoMH!M*fn<<7Hylj2Tq2qZ&tl`nqOC zMSnrRjlak~?FV~)#eD?J=yoXnD8#$ou`WQ6$Xq^i!P^N79`D@Fv{uP97`!$50$G+siMF>C@b@)z8N zmN>l(kak7j2%w{>3LYYeIs@7=y=wVkX!ytE)U5Die=vr%S-6YPg?WXsMTM+iU3@q% zc)6;&dd3i(*%$ZAD@p=Q(SItEb;vr&b&+@Y8ru`+0)-jPp_8%~`NhQmd&oFo6qrVc zk;z}n3r@$>gT3#7Pg9I~{UO3I!*bxgeW4rm_y@OAjF|&y744C-Tt_n4%NJ?^i*Bi^ zDcYBU;O$GjQ>(Kr--bC*o#VG3H6H@|nUbv>>rN>qIDQ58>mO4!Gu2jVzX8&4@Ew_d z(G6r}$!@vLySaj9(1q=twF*X6)29Y8ix0x*2LG54HY(>$a5MRjrO>372jPWU!xae> z^bw=>dDDOpIk$V-!+n86x+Gdpvjw9<=164as3(jQOPGOFa32$5=zLzRZMYyY;T$b1 zJT3UM&NY^ERoOeR^Z@LMbQlW$Pvq~lCF6lU1v4_>3++=_8Ijy*e;-Y zxWOo*!aEp(cmRmJ+Xz#-ZO>e9`+4}KQ)Jlm$X!4R6NXOsXbtoyF#CcfMS#k~3d>)CO{EcP|bi}HpbdmS?IAbo+ zJ)qGrL@ZMcG~;Wcx!=ES9SV#o>En1gJMd;g(rltE^mtBgaz6w9&4l_V{)3&9YVj%4 zEdmdx_|vz6go_h%_wQLpIcAc#8&`SPu}MEDCPssD0M&5io_r=Qj`dfGe`J%#{57`w z3AR{~<%-vSryTlfxMtw3`Hr_)xE?BV`23=y;K47L*M1`+m;b?Bs~Td3>Wj)2KA>AK zsm!J06cfIUjNeLw#H@#ZfRD762VNrH_o0jC%VgIJwMr}mk&)+NGA018B`|rfpj`5M z!!a3`LU(Vxad8XuMt-y0yFWRSqX#a%0m?C~@{hos$sUO`jn|S(*uIz65374cH30nI z{g8|p$h-(sf48pOt&5lcHxt{qltL|1rM*vT=XPmU<~OQi>1wO{?wKqKv?b`gX%Hn` z8VWT;yZ5wK;SdWid-PSXTH+++T5AJzZ&y2(%w9T{bGpD^{V^$48$OE%5oUqJo}yDt zbL6)!2GkIUZu06B_A`odcmJZ$G>@xlUu5*#1VF_7;iEhj3V1K$-J=>kjf~ zJ6Z=OAVbpDQlUY3%IX)OzI~!gXos~pY%@1wqqw}jn%!UIoZq*zJki@==aV0%psu~F z#AIib=#Z^fR{Ocw*J)x!Zo+X`Y4_?fxb=BUP&l^w>>)3+|o48eC zaBD?_6tv6C0bF-U zkyj>NMa51yvrfT)!LHp2mnL?&=IvUjXUDHHVoa$FGaRN|DHz}-U4@=~9`0^{t8NVY z6{Y067B=7den6v1eq*16qNx*yvDYh$X!q``;rK5{tz<#vvm5`ig`f3ej0vYmnmX4) zUV>$B?)yByYTaN5{cKf&lvYs^L%gjojF=*9fQL-@p%b2{nN&%#%9>FKx(oKJVs@gs z{OF`EJ+D&ucby_)0~}<0*YkmgvdLa#|Ffq5DZO0~Jk>}(jDJ&C zU4SifVuFfIf1@lKEHE;?aYk|YW{n-82iPjzfsy}-HOaJcCvYVHxToa&Ba^?WX64I2 zh+jKqFvN+v6MtH+e4q~o!foY;xP^n*FLIp#@1BAQA{(1O#q@j+$RvLBG9Vi%`|TG_ zY8H1m$VfHeGFwb5%YF;{7}^V=)PPphc?M z^kVWl=N_RDFo;g)OqrO|y>)LhG+=6}mmX5ZA^5wH9|PRuETr9?t?aCq!#c^p3kehy z;fuc;K;w~Cw(WDp%;4%?>q=+uz|1UJkeYSc`*cO7zfG$y8qGk3kW~aS)M1*p0p5oT4O8dsTxXH6puY3B#KOEwz*w08)UwQ+(Ny`=! z>LnNxNRTu&uRYswR0)(~G!zO|KMEUcJVbb%TW2Bn!1ZS`WI-}*N~}F*!1ESf$KF!= zZK%2-!dzL8cyu9`x*bOL?uVJ+XYS9W6eplJabgog>42aksL8v5$7bMN^|9L5bZ)ci zD*Ru^aU_D-?)p3l$$LZ@xvyI9oh|;;cP$wbl3*=k%ejt})9r7MDNGj6>sI!uat%ae ztkWkoPa;^xS_^+^rh$y=-M{^|tYPv!+qw`=(bnS{$LfLCyjMcAIQi0Le}dg2q1=Ad zdMVD)R#cOkG)+Q9)V*jw-L<%HibA;k(b{Ee!2^(!i2xHX*4uv^RTjpvcNIxpk(Lva|s$$B+p$)@K$8H(;wCok|5Gar$=CT))|K}WMqyQ|juIE@PSM(>Aa4p1}y%slSeBQfqrt-krv3 zYKms6=GTGNjUup~9CY87ERNKk^U*^g|Cgnj0&M_Vaq;m%=^&^iuh(-p(5D6N)Rh_0 z5AnW?>QAX02=VR*u1Z*bkYYkY79v7ylT`&&LOlfi?1f?VI2~dj);$+{?rwN_m$ICz zux;%O3(a$7E=o$-~-iqr;R4ans0`WPL{Mafk12hwW9HP)#BX=84fI}O+EpZbxzm+C==>B9H~ z9H^RG7|ZUl4)!qNdxzVF$AT84tBv$O<#Zz(U#WRU08?L531ih+)mb@xt5!{-xw#6s zYkPjVGy?vi7>8V8a-AaX zk0DdpJ`tO~cVlDsaeJ%5CC61Hh94=g%h^eN9WJbtF~DLJlL8h#TETE0u5PDCAnbYvV(}VE*D?M`1h-#2SL^RF76Z zvlxiCv8roR506L*kdg5_-2A{f4JN~Kw>V1mJT&a(oKIK}vgK$lKay)cuWg~v7f4-0 zmPUfR3KsqKZRwTHTu%u|OI1}T?+3YSt6ORYT{1qT^{YX&+wXM>ABziS;o|KBHb_ClSNF5V9DEWjbpO^2%HT1<5&OL*J>d87M;rH6`0?!yMFz^6JATh<24l~iJH!(nw)3} z`frW_@pm7{I9phJtar*Li+b}KzgeZMR`|(4BHo#(hWx0|3G5eLIi};USHHow0Sca_ z#3b#&Z)ifvZ;Zuz%(`Bmy=&^}GVL*|JfR-RKSd?>fN}M^xiMyQ=#wSgzb8bbg7;vS zD#kBh151=8OM)A$C7EzB=^<08@=|2x>~f^$>caYH9&3Y{PyPl+jU#0BSb;5M)kP=K zGM%y#sKHUIX=w8{{akV`*+davoTm2zYPAtLpWQOco{uTaln`p5{WK)WDs&Wg7u}3F7?R`wKzI`(z6QiQ}JJJW}Y<0zo`W~qBNk;KU zeu)|rlYzsrAo_g%3!#>}|Kch*@u9iLZ~b#%pfqtw;O#$%hAFGu)U|nU7~9y18!jm( zDpGVZMRXH%fww{OLivtIu1fv=a0sePDB5THdU`|nefo=nODP^jMK2grMl z+-0v!;R^hEy#ZR{>M8r^JgYHC!JVu_&NMn+AXMD{yIb)Tw#A~NE&g9l`)_oAKz=A7qlwT4+ON6$`;I_dFwWSU z1>1AVJVKtS=-b&(_@Y^N-|w=CYD+djLhfKIkcM4%dHg z@cNg8_c7S#xDU0Yv~?< zow;O1I;sK>4Ya)ZUBsWDoQb#nLT{&Nio59E>_%xPZ&8IgJ?;BjEvYP6}P;HfmMJH09A|i&SDBYG7o9*$pzkkW{Uh|MY}$EA32+ql zE582DGv89>_bvfDw-vycXPE--!Vc)w(^pqtyFnb&Fj@pS8ZLi2m7d32 z2f)ZpfCe(c#W(oyp%|HL*91^?4bb{S{f4Q$Z0Q{03Kk-%eHA59+l5sZ#L4E z-@S_vKLO;`?{`N%JkWL3tPgj&n6Ca~TrFr}@co4bW9*FfnwNBe2#GgC6p-&gB%0tS z_sO?&7P!xCU5iWa`a{|b)ePPOlhkw*U&XaFbFPfLXYaaht;uYE%^X=g{=!QXESJvh z!GTZi5v~O>OPKAVvT=fb7`P$D1D0)_{XXp{9+5a>S{ypNbAr3dC-Id!dvg|ln8u)S z&3CH;Z+hpyIiXul35+*8M2673@&0L55iUm(N|2_F)(T`ceTd^A|W!m~)~_^PmE7C|!v4gu2OUS<)3fHWN5}9#*e7_|!l+VT&b+br z_$K}?7|iM3_2qoZe?1hk?m%4{SKEF3x6eSx>CZoct~C+BY)!fc^k_6Nog4x>O@LTp z|NE2STNgRG@bf({{^W8$W0tO~2lVK^%u<$L>lB~HV06fmV9!Vq(Mw2bz3BaErQAi$ zQtAELp=pCoO@%GT)6qH6jjc!1t#plUI7FdW2#J4s`>#Xx;3@CVVVWSL%W^Rdz(|`8 zz#0y8$Q&C$L$Er0i4lpmb!~KA#`%SdkRX1Otz%UM#==UF) z0><1lv+dVrV6JUcCP6{%TJ*4s=ltiZ)u5h7jXEG2xGQ4w)%}a>XOC0+Q1->bZ?CC_ zgD{@;LYVo`zLV-L+0djBN(xrubPUQ4`lMlp>bDsu@vBpK>G+i5P3ITR@9BPJWur4e zB|Wub4BaiL2<@U_p1E;H0j6yF#J+XKl z6e|$u+Wav`n?sG#jC#|GM;7C3(H^<&2lzDhjCXf3@JD8&k6%XYA^B^&QsWw7(%H(= zR}~9K_>fDO{J=gW@s79Yls7D374zKxS%V$Yi2P)tSF8aJAAB=4^-Ad4X&x$NI$dKd zmM+)^tUSI>;I@_;I(F%E^KMosPIl8QD&=E5aIv!ta&n$uk3FtgrbDL3AO@Vevu(mZ zbahhVg&-%QV`VzEiQJ>BEf#@UMj~(YAFrv$yG_haWPcE>Z8rbpdVdk&_ix_WA?5f_ zbNoS|9959q)Z!B3$hbVx44reG%ug6i^ZRTelf_pc=NyvAsG%1cC=#02!?2!9U;>^i z3mb%!aMqU6#*zsINEO!@G$~=uOigKanPDT6Q1r)w1?JYs5l^ByYM|6pwPrg3hizNM zHj{b$_8*+0eWFbDs_~_wcWG1*3RI^tHsV3*N{%B}( zU2#?9UyKLT$p5Z=L`~^A;_2{6%v?_1Se{|A93+VlcHbJfs(T+yvih@1?V>dDZM2EQ zp7x$|Iy2k2_UQTHY(GNRyZL&c7c2{rycW(l%cYA0D6bpzs|&`RE<|-8 zI#qfF;rTnHTkz?Qzz5%Dp-qCCP*#HHoU=+F0T!>l%F0k*vvqO{qvO88c#J5kd-Y(s z4z+x7>hNzTm=j}T?t-Ym*5`<0P8F+7b?^m^_jRt_@Wf;@QFle`hQrpRkx|@3&S=FH zUq^M0x~Xgnr|~A~OIaUp`@hU0wc43WZaUvoGKcSL14ArIGH4S@g_@bz-xr9Vj=mx# zl&RmKwa2MVv=DpRnVXMy4$#c{XxlmY?SxCPWu7kQo(+u#g$69^7(7U3K5G9`LhsI_Z7G&z|q1p_KVv zr;cH9|H8IB0}T^cn9Db_4i;M+f^7cYIZ#muHA?-i0p2=b7|SQ$8OebWo%t6Kcq_Ir zx{nc>o6T-rZyVl+L;4@NRZWE_CdH9Nx2_W0M<;&1419NUbf``-f6v8JZCoauW2FeW zh}^hjV{@BcRl7jHY~h+^2vHzVP^-}DAnKAblQ=n$4>S#0|Ely_qf47$O6k6P=tJ1g zKL8I9h>1^ZEAW zIG7cFhAV&2He3lyv9eFOJND~+6}f2-P5ll8m#L7%!rB&8(1wmJ9svxp(GPW?j!i)l zG02Yara(TP+5qi2_~YWf1TOY4%2B&L88VYP*!VZa#t_4_T~v7E@7BFf&Z=3nWr^i( z%0Q3dwRRD6r|tt^yZp`F%6vhWs@?tJ=&OZ>r+?{zMXxsG81bwT$z$OZ*02I6YGCk+ z)3v&}yHm_u|16LJMl7B_LSThXkk%DSHH?@W9nYo}XI2qS70q>Nci6#Esli$D6R)6n zk1eT1vw=i)Kmj%cM(Pw#F7S@!2h@acd`^J~u~I~6P=8sDw>0D>>aHar9#oIx`i0DX zmfM8LmaVc_RX<*x?Mv}KurGk7?%1zIg^?VOyrbfk^tILtqX8U(eb&9W68GvT*sqEQ zd+Zh!pQmu+wdfAR_EKBU$}ZMUzV2PgYp=m?Uzu;iM-MM)n#8=MT@#nyipWh^DE3_+6o-8bp+moRu~nL#2wMi~kV<6g`Z)dYnhJ{mp)||Ax(E{)e+sE>6E6UYyI2xjnvC3g zySd{~^L^f$vn6ln#TXBDDL4-Ni3Ss|?K%YE$wYQoQpz|?Ql>8+bwF}R5c;Nn_h3MC z@2zt~rpEOj$G&x!)@nEQfA`T9zMDLdRl2d?G!fvjhSA*)9V=gsamC+kUp_g-&m~I= zqrcwJiA`90Z!a`|M$I?6bzIUJ~F36ys0A12a zuyUwR?{1Xg8D0;b8PpN>G@mmpFwopYCSkT$2R4zHIXCOROI4;cr}qQm`OF&(WstM4 zpd;AGvre*Zl6?jRdUF&SLQrn7^L>{GQ{;n%T1+j5&5$%=oze?a)^vSM0*SW!;#zH9 z3-N+(A{x#0tIND)WVSC72Br*0T$L9wn5D)h%7}2CgJ^6^2J)7u*O)SId=^d!@b3x{nh}=67M`bEdj*t z+_OcR84q#!YT@;h7XEAx!Kwvj23J1CYAg-cKwguc#gRdL7JRr{Y&)Tc=p3>G}(#F_9;7*>cjM#tHQ#$*jtV$<~IA)h%gH6jrE zVgvCtdZTP8hpRmqx|b#k)EKRKkxAa4Z<)}V;M>6rrGoHQX3+>rxhI;O7KLbAaNV6O z@~i334_a1dxzTi(!LhbDrF!HU7MtX;dA_@B4eGUGU+9tl; z8w9M6?$d6RtwcFVglOkn)Qm+jk=qq-3X$wn+rvqBPvfEw7B#|!DM~#x7)nmGffdqz zz>x~Q2VMd|E}$)}l`1R&N~j zhg`sVyRm!L5RMm)SIvrNrl1ZtQ6F|ps>k3c?i=hUa?Fs)5I7J2@?pLzV%$Z?p|rvw zk8a?HPv@ofPv)wTJfV#~(^*E>*N@v3>`hJeG3jWQ-e(Ibc9flMo z-cUE%7-FNxgl{kwWd!W%jSgWT>7+J!QAt0jFTDvb=diao`}|V)i68qmD!hMb@$v(R zXqcAyq<5)P{}(*w4#>+;H}pEO=qd7V~b$gKcJ}sy!^86?hR*XtuDoI&KT}Nadqlm85m$WXPi;7bsWyVfQ z>yWf}mOqteYBp^^Rse97cDm>ajA8uk{Q(FfSA*Tj1%*zmP8gc>M--xl&*RhT4fXZ@ zL;K;{Gln5whnPX8$l~AgFgP>uy1S$CCs%f9)0~Pi!Y;8vOFzM0YvJ#`t~Fk)TIqeJ zOM#z)A41kD=&A;RY=i=fbC}m$ap2_#(uHMkfP5I%IfAK!X<&ceALw5`V0#XBUSTx# zq;VEbiKHS8w`e8}iSseGQrfHY{VB>+7q9-hAa6lpt}0a(IE{3;`GJ-Gs!v<_ePK$d zK|K0b%z}0(rT!?CW`17V@8pI?N4WbVKo&0*&+d5of(g1*+t3}U{wesv8lh>nsr%h3 z&|+z(KE3{fW?0#QR5fT#n9eizG9LTgF)inQH|I`X1Y!*T64^c18i6g%V>4Cd1;Ova z#nZ>_TvG{FWiPI1?HWqm96Z~ksSknEN2HB=8yuT}%dZze6fZ~I+alTa`s`HKWgP+^cD~M7bb1T@ATVc_HLfh)R&r!`PtF0 zF&_!vA`W^u;}CWIGJJVyq)aQnj4cy}Sh+n&j%ISrt93rK$}-ptYhmo~UOJ!Z3Gs;+iKtK~(|`O*jr=qu79H!uN)@K`tFYlpyp1p#Rn zpB8KZr_f6{K!aM6y2^gF@@zBuAYwduor+h&h(oga|7iNku&SQ7YdF-QB&54L1?dJ! z1xe`!MY_9NQY59jQ@R@^MWh>~yBpr&_kZ5&;_KPWo_+6`*=yZvtqHIl?;K+>Do@ov zi7?a7Y`O^}bAN}COnFU2$_~72p?M9DQRqjB+e(*k($mt=w=Ts_81^aG$ zv{H3oG9(IVSC?$G=xrQUy7gU0gTa|u{tWH=!LS$AEqo+|$i4iq^N(i3awBoIrdx=b z(Pv|3Z6H-*PC!t1f!RnGm zrc)>VqDc1T!5Q|(E*AG4;?TG0J0%KUE`Q45`+>gi&vQy=Xt}B*6=54B%67827<{lL z>!I>}KT=G7%~0-0)IsV{oiR$epftW;PiOYl_rlQr_!f%IFdT09asSJ6;2wm=aIYhT z_8l;p=)5q$kj5sMHV<&JU8?4xJ^5o6Wkp+)#H!3cZ}8q|G*)zF`s1rXNz5X;bB^#}QV~-Za+4N3JyVYxH{qy{yw-^acUSY~@?)h87(?m-5$5l( z|3x$6bku9{5o6Q_5zkw-dXNYp^JVis~%SD$?d~) zTYj&6bC+{&okGKPOFwIUO;R}m<%mxi!Hetxy#v(X{!`EA;3W%0Xy;YeMRu5_cEM^h~x!_hdVn{UZd2$G4`) zMX3?fri*fZ@-qGGF7aOW$OF=AoO@D#x}Jsy50c8;a^t zlQ%*12n%<%AEfX|n0r+EqM8_R24vO85}jDfD&>xIZYg9K-^2{zJ#a1)e#p!0Mr@Yr zkbh$ghf5tVt}{?RyY*TYN&j>GxO09boPZg_9U}Hc9&@HNNLiAoCwdwTPb%7vI>_ic2x`VT;W90}SksiF&`0K5ODz%lk#AbSDel$k6DG-d#JTZNjy)l} zeDm&TBhfZ7B@Ue`;a5V^s+28;*K zhrm899_Y-H}l7hZK(qmHkcSpI<^D$}H-+Dl?yoA@>+q0Ot$>)Z-f zn09I~WA$3rrW+Zy#(^v{SQGGUYK-CEu(8d0z}B#}!EEeN_LWHYqT0kE^Yp5%$?_wi z)>oQLCt*rkFTIz=hqE#7kZaW++nU~OlbK9x2%62@sX3&E^lmfaPm;cVCb;Hy_39H4;JG!+R^k+)aLbGS2j1L@(Y}$W%;_I+;5f)v{(nB!x9jE zU`v@A_<_eo5Z0d;L?`e&{FBWM$w*A3<6U(6MnlKrg+!6hW*|^;qJCf8Ad_z#Y8ZO# z!VWV1Vga!KGxPDB{uzF`v#303aoV8*Y|g}1Ca}JG_Q&-ChR6=U9(1tNA5L#td|2W- z$JfsCPhR-m0)XV}wh>|gcr$IU#15`R18|!Hk=L$=x=p|r@JogTw!4E z%?MxM9t|iy#Lpzl7Mdq~{%9YfMk;8vu4T8qO7pueE9or*ad`{ay?S<0gMoL3Z>1J< z`i~!ZGK$d)g(^e_kK75i-V$CPX@4gW&X@67JqU>3l#BfpUm@(;84EI`6!ADOa(h|L zhj9`nunmWhgNcAQfgy4&7F{f;_zZ8YT>v1@{^Cd-*GP%+&UWG1>XKgZ><03NO5 z@?7a?sqNx*#;CiXx$`>$z@Z2M8@lGGX?@RksJ|&CL$(!+U=f)kEkG{jpL%PZ58s}< zwkwSgZ0G)7kv;dMr*N8t+#lHbPS{{oIgMoq>&(?z(qkS~5y|9w74nEm{`F+Ot{$&3 zQ-~={V$)+Xgh_OFcmMO_qmrDG(v>DY5(Wt$1sHMGChCa~Kylp4iHDJanOSYG+Ropc zRIes)agMic<&wx0zkbmktUZ5XDO}6c%^ofJc<0r;$QCde7fRjUofU9#acgVFddp$|ltdrYbi9qS-{@faFkr@1t>t83 zJvRFM$&=IW+>_rW54&NmY*o=&)~Yr-L!~30fGFx1JL{TP8`REZx_mc+c-qP*BQ3FD!M>{;Dcj_-rE0FeXSibt-q` zzx7bP4%yCKZ8aaY71jBkZ$8B4e6+N~7#^tC=IzWFRcX7dSWpt*PhMX6m3{inz#8Vh zuABEY_>NbKA6C1)3W>4%rxUUg;Kv0i&&Cpyt&b>s&NSDQKjrj7jp?%DV` z76io1Y3p@_q=w#b0-Y1VbWDmWQ^<GEF^VLob@#atG`B*rHG$pUOx$s7h z<18fW;CFVQ4a9h=HfkMsb;kmQvjj*bT{}hZKk(L6UqoeTsJdNCY-%vB+x93miSFrx zmh@u9=sO!N+A+Ki_)nP?BA~7m0 zmW6UjHQkID>zfsm&z3UKKiF=;3BTBDs?Gx8L|T6emB?e*s5S8MBaLoOH=3D;Z2<^* z`&vrGC%zLU@^$Sa)L#(ZM>cDPs1&14gka5=gx*W_rD~o+L`99^UMQt>-{!u2mQX|b za7A)iXiR+XywLq={oX>i@F9ItWh|Tgef{Vss*cP=DqbOjrzG#jyN`F(3KWGF0cf`C zjiQv*sJc=6D>9iwU9KW=)Df1p*(Oz5xgqkS*UE7!b5(DCXZ{i|64$)_AwE)j1wf}k z;Lts+Q#pp&_#E50C)7)h!cvJTnxyBF5{+^Kq=q^=Pb;FRyvSDf0UMa9KY^~cgQeG= z1Hqc;WG=QbXc8As&dz@Wca3PufTZJ~e!jNo0kGvPgoK11vQ@ew=f5RyFF>b4d9ZVq zNwA8y(tfok(16Kj-nw#2< zLD`rW)WUbFQ|cOVh||9M_-`if;hDoO0w;IkJQ@w+22G%eeHv7E@Ekj2(y)vhCex($ zz3KfyZeUnmQ@@A|-l^C^MyoCFIq4BSCo%)74mjs=jI=}hGBAE zQ1(L@k58;+uYI1|Lx9=&jyb(jMj3Bz7n1> zqA*pceh_Y8X)nl$&bOSdC`6mk^cp#1#NB;isG81*X^go9+}-CSETdDmo;l_geZw>j zUyU#a)iUEztM@(p!}eflXJh7#&SujUSb5OvU-R zL|xY+Ej*kWx)#*QvN1hhVi8WF2AW*VS3lUl+WW2O_^oDBsM)4XcdkH}?J$*!ysYBu zyB5Mo;oA6v>A6^*cHX%eTj^@SwKgT8Bjs~#nbxxDd$Z%42aGtYqdIl&d&0@c8Qo#P#u39*1vQG3)2aYO@U z0I~@$2n%0YNY(@$SwEdo=vTV|KFErycnn$UEPkNh>Z=MQxP^+)$(PDZhWVFj9Ol$sBL}{gZO@s#3N@3bFRo%h zPL-$AkRLcayvO^&kM7uwkz_WMh|B{oF=HJ4aC;&62D4|)QUpVzI&vg@bHHCq^*)wE zG}&<6_U9>CNfW=yHAE4=?$<%!NZ~Cs7=>g$+#3QX54y_w0x!h2*bE5o;G$Qt+MA4W zom41C5lcl?8s5n!%*Ko_^M)ib?@L-{*W97ADyig1#mhoHUF{dU#xGL;wInT_M|8Ds zJ+k(7w2oIcFENR85c#i_M>niv7G`{zO%9%4tooZH7MqjB9;PCtDCU0$tBXQW@_u0; zfC0&lT8xKV%1_K6vtHZI9t}?oYJ+2y$OWjbmlZfu0q8E6!;Od<7LD|psK&?ou8Ypk zQIVg?KS0f_DguLNa5UZD`5VeOAzG;gCJ?1|P`u^jU4QzFz84&X3*2g^ovVs5)|Mw? zpirfCX~Wyo^ZoYOVO3J!=#<8Rs-IMmsdZwe>jOg|se1#o>o}$d^x+5KulHi0Q6GM& z&@J}uC2&PffnbuD2As*K?sCvl3e=#a>B z1HS_f(|IS8x=-uZDJlSOKd^(@lTKpV@7b-);is`T(3#=S4eZIh^(`#Q$u(uq=_jeWL$L=qPS26o)1OWvMm}z1OetNxvn&E>$6H%_3Ru+; zga-z2l@{BwsxmD`Pe37^u`lS)VS=#lasy- zcM2b}FihM&mR$NvKGb98CsY~D^3e0BtuVMsZq&anU|XhDKa%`F52$9euh(Uerf?Bf z|8+t|w7ZPjrvZ@g`Qin2v-pTf+HEf-|m*sjeyFfrPcR)>c zw9!bAX3z|0_rUyXjcJ&_{#n6|%|I$xTh+%2)eoZs<(D%GGQT1uXuAHOSQa@)Vn$%@ zGZ0`<$*c(U{;I>%{5*2t3AGBc4#Z&V_n+yTF-2NM;6+&&3^gdJ6Fcr^g?lhUt6GtO z3FrYiBbC9&!1>v_t@nbceXy#)9%XFqmzS3brXo z{c(B7YoWhvn9;cHFf;G8ycxa9$@8z>gsY9eI9W{TM;Ei_0SA2s5jxUrt!{_M`%SBq zsTwsOA#QaMO|ATzEXBYz2{)~}F9xaV{xK)MMagneOFQaEBc z$dSn5#F#3>ZCMr76vReQR5~g0dma07ew#Kt4NIIbeUrty42*xyMY@Du7sy6Yd8F6M ze#4Gakdr8<(d%)DeFQnJ8$l)rzF#2SiZ4Kctv7V&gaD=}v(Sd0_+=3!OqgkTJtc zX|a!fE|eLv)v|HDJW5I#aEsII!38lg_^Z9r6H z*or?n8fJI@cM=quXuNjPnt54;i2o99FkvmIFt!r(!6#cx~ZdKyo)NlS^ zD&Qv;X8j7BhIAF7Lg8v?d$raJtA&W!g^=}?FFH4mc;^R7oEjR9mfZD*lEgV&hKhC@ z$7*lS5hGDWy@+Z|dlum`;f`B?iG;4tlv|7p@DnQ~zJ}y>eu*Y0vExEkx34`$$U7Wd z^zY_XBTt&K`51k=H=;0>u*gJvvIq{H7JZjt2ZGJQOw#LZgQs`7gD5F~X|*;>o%#*R zKpUF(hrb{zff4P7Ag?^}Lt;=c{pI4I$@ zZg+tD_#6Btp3f;~n}o*jYcJLaexXq4x8jD0Ll=R>TLp6wHg#3x@!AB~gkhM0DAKv< z2`fV`>(1q=pbvr9HPRRy&I_4QD{p4lHEoRQf`9kXF;Ly5kenu& zR~NM`b-T=&$RldxQ^;Zz?^4n9%mb08u`&mnE8?N^ss@Bv0L9C%Jd>A;T}f1y!&gW` zi-g_lt|Ymgy|R?NnI;})R>KODK$%AyapMZ_{>Xmlk6AS*Lukxe?ubraZu4t5X(Rvp zqfZ6gF4qowJLp-dl4^-feZdp|Jk7k%;yb(1pvWu%;j5N&U0ggyl&yFuUaVhbVSTC( z5!TQV#xUunI~%9DjwoHQ9tSl8zIvk@V^0}f-$|5x&qJ>|mpGTu&DNvgJ*J8L&9h6< zN?2AllNAyGj}rDW;!m+E{lT}AjDLc!Wi`?;D)mSus`$h_DzO@aKR!fZF zUEo7i@9ssp!`vW3!o>M8z`HGD+do$ejA@eKQ<+ob+sl1(YEsDOeneI!8d!T3Z1q+$ zrIyN+1~vf*qBmBrev1M~Xtj{YLl{&2m73$%vC!TCf8 zXPi`oROo%0=@-O9qK!-6=EL&8?9m2ofX}Q7Uz{wxbqzn1B_EjNh<7Sb%_(9XkMr&9 ztuW3WQ6e^^FfUl~NOFd-;7CV?Yh8lu{U!1#q`im$`<6nQ{zV8>2Wof^eKjsV9D~=` zttrZNc)+{a1~%uc^Y@1@aN478+%fo=!(0-EUUoXH~gc2A9pI2})? zZ~9F6C+>lt{}sn5NjahIv%G?z!=aOnF}AUaK(iieGktN$>?V~X#!V%K&(dC%LB#}t zC*$D`t`Vc@9=o{ecxuCQwX?12cL;v(5W{46Kt3%QMwJcG@A-qm3)h==LDye4eRoE* zHqyvXFx224(;kTlOtk>xJI(1k*D%Go<7tm(jERu4UUl*U!T2Td#;~XN?^BF>qY-II z+xDi!U44UY1J~X#EH(w!vX=gC%QmQ-(AzTOJ^M4FL@(;ORX{FSvR)HMqX*d`XjK~r z*V_d)+@Mi7rQV1ewXr2n+f#ZWmFTRnSNh78#E>J0;8sS7L%0AkJzu8bpy@4sf2k0{ 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 aga6E_)fLmf9(vxv00f?{elF{r5}E+SsofC( literal 0 HcmV?d00001 diff --git a/src/components/BasicShop/VisualComponents/Area/index.less b/src/components/BasicShop/VisualComponents/Area/index.less new file mode 100644 index 0000000..57dc736 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Area/index.less @@ -0,0 +1,13 @@ +.chartWrap { + position: relative; + width: 100%; + .chartTitle { + text-align: center; + } + img { + width: 100%; + } + canvas { + width: 100%; + } +} diff --git a/src/components/BasicShop/VisualComponents/Area/index.tsx b/src/components/BasicShop/VisualComponents/Area/index.tsx new file mode 100644 index 0000000..e31732c --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Area/index.tsx @@ -0,0 +1,76 @@ +import { Chart } from '@antv/f2'; +import React, { memo, useEffect, useRef } from 'react'; +// import { uuid } from 'utils/tool'; +import AreaImg from '@/assets/area.png'; + +import styles from './index.less'; +import { IChartConfig } from './schema'; + +interface XChartProps extends IChartConfig { + isTpl: boolean; +} + +const XLine = (props: XChartProps) => { + const { isTpl, data, color, size, paddingTop, title } = props; + const chartRef = useRef(null); + useEffect(() => { + if (!isTpl) { + const chart = new Chart({ + el: chartRef.current || undefined, + pixelRatio: window.devicePixelRatio, // 指定分辨率 + }); + + // step 2: 处理数据 + const dataX = data.map(item => ({ ...item, value: Number(item.value), a: '1' })); + + // Step 2: 载入数据源 + chart.source(dataX, { + percent: { + formatter: function formatter(val) { + return val * 100 + '%'; + }, + }, + }); + + chart.tooltip({ + showCrosshairs: true, + }); + + chart.scale({ + name: { + range: [0, 1], + }, + value: { + tickCount: 5, + min: 0, + }, + }); + + chart.axis('name', { + label: function label(text, index, total) { + const textCfg: any = {}; + if (index === 0) { + textCfg.textAlign = 'left'; + } else if (index === total - 1) { + textCfg.textAlign = 'right'; + } + return textCfg; + }, + }); + + chart.area().position('name*value'); + chart.line().position('name*value'); + chart.render(); + } + }, [data, isTpl]); + return ( +

+
+ {title} +
+ {isTpl ? dooring chart : } +
+ ); +}; + +export default memo(XLine); diff --git a/src/components/BasicShop/VisualComponents/Area/schema.ts b/src/components/BasicShop/VisualComponents/Area/schema.ts new file mode 100644 index 0000000..b21ce90 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Area/schema.ts @@ -0,0 +1,82 @@ +import { + IColorConfigType, + INumberConfigType, + ITableConfigType, + ITextConfigType, + TColorDefaultType, + TNumberDefaultType, + TTableDefaultType, + TTextDefaultType, +} from '@/components/PanelComponents/FormEditor/types'; + +export type TChartEditData = Array< + ITextConfigType | INumberConfigType | IColorConfigType | ITableConfigType +>; +export interface IChartConfig { + title: TTextDefaultType; + size: TNumberDefaultType; + color: TColorDefaultType; + paddingTop: TNumberDefaultType; + data: TTableDefaultType; +} + +export interface IChartSchema { + editData: TChartEditData; + config: IChartConfig; +} + +const Chart: IChartSchema = { + editData: [ + { + key: 'title', + name: '标题', + type: 'Text', + }, + { + key: 'size', + name: '标题大小', + type: 'Number', + }, + { + key: 'color', + name: '标题颜色', + type: 'Color', + }, + { + key: 'paddingTop', + name: '上边距', + type: 'Number', + }, + { + key: 'data', + name: '数据源', + type: 'Table', + }, + ], + config: { + title: '面积图', + size: 14, + color: 'rgba(0,0,0,1)', + paddingTop: 10, + data: [ + { + name: 'A', + value: 20, + }, + { + name: 'B', + value: 60, + }, + { + name: 'C', + value: 20, + }, + { + name: 'D', + value: 80, + }, + ], + }, +}; + +export default Chart; diff --git a/src/components/BasicShop/VisualComponents/Area/template.ts b/src/components/BasicShop/VisualComponents/Area/template.ts new file mode 100644 index 0000000..3c0cd4d --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Area/template.ts @@ -0,0 +1,5 @@ +const template = { + type: 'Area', + h: 108, +}; +export default template; diff --git a/src/components/BasicShop/VisualComponents/Line/index.less b/src/components/BasicShop/VisualComponents/Line/index.less new file mode 100644 index 0000000..57dc736 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Line/index.less @@ -0,0 +1,13 @@ +.chartWrap { + position: relative; + width: 100%; + .chartTitle { + text-align: center; + } + img { + width: 100%; + } + canvas { + width: 100%; + } +} diff --git a/src/components/BasicShop/VisualComponents/Line/index.tsx b/src/components/BasicShop/VisualComponents/Line/index.tsx new file mode 100644 index 0000000..e9e4e82 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Line/index.tsx @@ -0,0 +1,73 @@ +import { Chart } from '@antv/f2'; +import React, { memo, useEffect, useRef } from 'react'; +// import { uuid } from 'utils/tool'; +import LineImg from '@/assets/line.png'; + +import styles from './index.less'; +import { IChartConfig } from './schema'; + +interface XChartProps extends IChartConfig { + isTpl: boolean; +} + +const XLine = (props: XChartProps) => { + const { isTpl, data, color, size, paddingTop, title } = props; + const chartRef = useRef(null); + useEffect(() => { + if (!isTpl) { + const chart = new Chart({ + el: chartRef.current || undefined, + pixelRatio: window.devicePixelRatio, // 指定分辨率 + }); + + // step 2: 处理数据 + const dataX = data.map(item => ({ ...item, value: Number(item.value) })); + + // Step 2: 载入数据源 + chart.source(dataX, { + value: { + tickCount: 5, + min: 0, + }, + }); + + chart.tooltip({ + showCrosshairs: true, + showItemMarker: false, + }); + + chart.axis('name', { + label: function label(text, index, total) { + const textCfg: any = {}; + if (index === 0) { + textCfg.textAlign = 'left'; + } else if (index === total - 1) { + textCfg.textAlign = 'right'; + } + return textCfg; + }, + }); + + chart.line().position('name*value'); + chart + .point() + .position('name*value') + .style({ + stroke: '#fff', + lineWidth: 1, + }); + + chart.render(); + } + }, [data, isTpl]); + return ( +
+
+ {title} +
+ {isTpl ? dooring chart : } +
+ ); +}; + +export default memo(XLine); diff --git a/src/components/BasicShop/VisualComponents/Line/schema.ts b/src/components/BasicShop/VisualComponents/Line/schema.ts new file mode 100644 index 0000000..f4f8f6c --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Line/schema.ts @@ -0,0 +1,82 @@ +import { + IColorConfigType, + INumberConfigType, + ITableConfigType, + ITextConfigType, + TColorDefaultType, + TNumberDefaultType, + TTableDefaultType, + TTextDefaultType, +} from '@/components/PanelComponents/FormEditor/types'; + +export type TChartEditData = Array< + ITextConfigType | INumberConfigType | IColorConfigType | ITableConfigType +>; +export interface IChartConfig { + title: TTextDefaultType; + size: TNumberDefaultType; + color: TColorDefaultType; + paddingTop: TNumberDefaultType; + data: TTableDefaultType; +} + +export interface IChartSchema { + editData: TChartEditData; + config: IChartConfig; +} + +const Chart: IChartSchema = { + editData: [ + { + key: 'title', + name: '标题', + type: 'Text', + }, + { + key: 'size', + name: '标题大小', + type: 'Number', + }, + { + key: 'color', + name: '标题颜色', + type: 'Color', + }, + { + key: 'paddingTop', + name: '上边距', + type: 'Number', + }, + { + key: 'data', + name: '数据源', + type: 'Table', + }, + ], + config: { + title: '折线图', + size: 14, + color: 'rgba(0,0,0,1)', + paddingTop: 10, + data: [ + { + name: 'A', + value: 20, + }, + { + name: 'B', + value: 60, + }, + { + name: 'C', + value: 20, + }, + { + name: 'D', + value: 80, + }, + ], + }, +}; + +export default Chart; diff --git a/src/components/BasicShop/VisualComponents/Line/template.ts b/src/components/BasicShop/VisualComponents/Line/template.ts new file mode 100644 index 0000000..cbb7b93 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Line/template.ts @@ -0,0 +1,5 @@ +const template = { + type: 'Line', + h: 104, +}; +export default template; diff --git a/src/components/BasicShop/VisualComponents/Pie/index.less b/src/components/BasicShop/VisualComponents/Pie/index.less new file mode 100644 index 0000000..57dc736 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Pie/index.less @@ -0,0 +1,13 @@ +.chartWrap { + position: relative; + width: 100%; + .chartTitle { + text-align: center; + } + img { + width: 100%; + } + canvas { + width: 100%; + } +} diff --git a/src/components/BasicShop/VisualComponents/Pie/index.tsx b/src/components/BasicShop/VisualComponents/Pie/index.tsx new file mode 100644 index 0000000..3afc5a8 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Pie/index.tsx @@ -0,0 +1,100 @@ +import { Chart } from '@antv/f2'; +import React, { memo, useEffect, useRef } from 'react'; +// import { uuid } from 'utils/tool'; +import PieImg from '@/assets/pie.png'; + +import styles from './index.less'; +import { IChartConfig } from './schema'; + +interface XChartProps extends IChartConfig { + isTpl: boolean; +} + +interface DataMap { + [name: string]: number | string; +} + +const XLine = (props: XChartProps) => { + const { isTpl, data, color, size, paddingTop, title } = props; + const chartRef = useRef(null); + useEffect(() => { + if (!isTpl) { + const chart = new Chart({ + el: chartRef.current || undefined, + pixelRatio: window.devicePixelRatio, // 指定分辨率 + }); + + // step 2: 处理数据 + const dataX = data.map(item => ({ ...item, value: Number(item.value), a: '1' })); + + // Step 2: 载入数据源 + chart.source(dataX, { + percent: { + formatter: function formatter(val) { + return val * 100 + '%'; + }, + }, + }); + + // 获取数据的map类型,用以展示图例说明 + const dataMap: DataMap = dataX.reduce((prev: any, cur) => { + return prev.name + ? { [prev.name]: prev.value, ...{ [cur.name]: cur.value } } + : { ...prev, ...{ [cur.name]: cur.value } }; + }); + + chart.legend({ + position: 'right', + itemFormatter: function itemFormatter(val) { + return val + ' ' + dataMap[val] + '%'; + }, + }); + chart.tooltip(false); + chart.coord('polar', { + transposed: true, + radius: 0.85, + }); + chart.axis(false); + chart + .interval() + .position('a*value') + .color('name', [ + '#1890FF', + '#13C2C2', + '#2FC25B', + '#FACC14', + '#00CC99', + '#CC3366', + '#CC6600', + '#CC66CC', + '#FF3366', + '#0066CC', + ]) + .adjust('stack') + .style({ + lineWidth: 1, + stroke: '#fff', + lineJoin: 'round', + lineCap: 'round', + }) + .animate({ + appear: { + duration: 1200, + easing: 'bounceOut', + }, + }); + + chart.render(); + } + }, [data, isTpl]); + return ( +
+
+ {title} +
+ {isTpl ? dooring chart : } +
+ ); +}; + +export default memo(XLine); diff --git a/src/components/BasicShop/VisualComponents/Pie/schema.ts b/src/components/BasicShop/VisualComponents/Pie/schema.ts new file mode 100644 index 0000000..30305ad --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Pie/schema.ts @@ -0,0 +1,82 @@ +import { + IColorConfigType, + INumberConfigType, + ITableConfigType, + ITextConfigType, + TColorDefaultType, + TNumberDefaultType, + TTableDefaultType, + TTextDefaultType, +} from '@/components/PanelComponents/FormEditor/types'; + +export type TChartEditData = Array< + ITextConfigType | INumberConfigType | IColorConfigType | ITableConfigType +>; +export interface IChartConfig { + title: TTextDefaultType; + size: TNumberDefaultType; + color: TColorDefaultType; + paddingTop: TNumberDefaultType; + data: TTableDefaultType; +} + +export interface IChartSchema { + editData: TChartEditData; + config: IChartConfig; +} + +const Chart: IChartSchema = { + editData: [ + { + key: 'title', + name: '标题', + type: 'Text', + }, + { + key: 'size', + name: '标题大小', + type: 'Number', + }, + { + key: 'color', + name: '标题颜色', + type: 'Color', + }, + { + key: 'paddingTop', + name: '上边距', + type: 'Number', + }, + { + key: 'data', + name: '数据源', + type: 'Table', + }, + ], + config: { + title: '饼图', + size: 14, + color: 'rgba(0,0,0,1)', + paddingTop: 10, + data: [ + { + name: 'A', + value: 20, + }, + { + name: 'B', + value: 60, + }, + { + name: 'C', + value: 20, + }, + { + name: 'D', + value: 80, + }, + ], + }, +}; + +export default Chart; diff --git a/src/components/BasicShop/VisualComponents/Pie/template.ts b/src/components/BasicShop/VisualComponents/Pie/template.ts new file mode 100644 index 0000000..5562765 --- /dev/null +++ b/src/components/BasicShop/VisualComponents/Pie/template.ts @@ -0,0 +1,5 @@ +const template = { + type: 'Pie', + h: 106, +}; +export default template; diff --git a/src/components/BasicShop/VisualComponents/schema.ts b/src/components/BasicShop/VisualComponents/schema.ts index 93370ae..7156a36 100644 --- a/src/components/BasicShop/VisualComponents/schema.ts +++ b/src/components/BasicShop/VisualComponents/schema.ts @@ -1,8 +1,15 @@ import Chart from './Chart/schema'; +import Line from './Line/schema'; +import Pie from './Pie/schema'; +import Area from './Area/schema'; import XProgress from './XProgress/schema'; const visualSchema = { Chart, + Line, + Pie, + Area, XProgress, }; + export default visualSchema; diff --git a/src/components/BasicShop/VisualComponents/template.ts b/src/components/BasicShop/VisualComponents/template.ts index d0068f6..06284e8 100644 --- a/src/components/BasicShop/VisualComponents/template.ts +++ b/src/components/BasicShop/VisualComponents/template.ts @@ -1,7 +1,10 @@ import Chart from './Chart/template'; +import Line from './Line/template'; +import Pie from './Pie/template'; +import Area from './Area/template'; import XProgress from './XProgress/template'; -const visualTemplate = [Chart, XProgress]; +const visualTemplate = [Chart, Line, Pie, Area, XProgress]; const VisualTemplate = visualTemplate.map(v => { return { ...v, category: 'visual' }; diff --git a/src/components/PanelComponents/Table/index.tsx b/src/components/PanelComponents/Table/index.tsx index 8984620..8221a8b 100644 --- a/src/components/PanelComponents/Table/index.tsx +++ b/src/components/PanelComponents/Table/index.tsx @@ -1,6 +1,7 @@ import React, { useContext, useState, useEffect, useRef, memo, RefObject } from 'react'; import { Table, Input, Button, Popconfirm, Form, Modal, Upload } from 'antd'; import { ColumnsType } from 'antd/lib/table'; +import { uuid } from '@/utils/tool'; import XLSX from 'xlsx'; // 下方样式主要为全局样式,暂时不可删 import styles from './index.less'; @@ -146,7 +147,6 @@ class EditableTable extends React.Component { this.state = { dataSource: dataSource, - count: 2, visible: false, }; } @@ -159,16 +159,16 @@ class EditableTable extends React.Component { }; handleAdd = () => { - const { count, dataSource } = this.state; + const { dataSource } = this.state; + const uid = uuid(8, 10); const newData = { - key: count, - name: `dooring ${count}`, + key: uid, + name: `dooring ${dataSource.length + 1}`, value: 32, }; const newDataSource = [...dataSource, newData]; this.setState({ dataSource: newDataSource, - count: count + 1, }); this.props.onChange && this.props.onChange(newDataSource); };