From 65f67b61039bfc67eae841f862a065915b2d0717 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Tue, 5 May 2026 17:55:09 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\347\273\251\346\237\245\350\257\242.png" | Bin 0 -> 70399 bytes ...21\345\256\232\346\214\207\344\273\244.md" | 11 + ...60\346\215\256\347\273\221\345\256\232.md" | 0 ...50\345\215\225\345\244\204\347\220\206.md" | 19 + ...(\345\217\257\346\237\245\350\257\242).md" | 107 +++++ ...42\351\244\220\347\263\273\347\273\237.md" | 368 ++++++++++++++++++ 6 files changed, 505 insertions(+) create mode 100644 "src/\346\210\220\347\273\251\346\237\245\350\257\242.png" create mode 100644 "\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" rename "\345\215\240\351\233\252\350\212\271/220260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" => "\345\215\240\351\233\252\350\212\271/20260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" (100%) create mode 100644 "\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" diff --git "a/src/\346\210\220\347\273\251\346\237\245\350\257\242.png" "b/src/\346\210\220\347\273\251\346\237\245\350\257\242.png" new file mode 100644 index 0000000000000000000000000000000000000000..5456e51e473b7e715a9bb1991f6c57e89d67ef52 GIT binary patch literal 70399 zcmd?Phf`Bs`!!^wW zRAKLoLahp7Fcv?YY3c>v#dyx!k(c#Liq%rszfrhHd4G!5_zRSMs{$1?L_sk`(HX?- zFU@)-C_6IrFx`E`cq5<+?H=3Wx)Mf|_V4w*Pt2=X?>}P_l2*kevj2=591^@p2}25$Uk_>}~d{=X(^f}h?0&oKDTycBDwSO|1%%`hXG4V zv|;e!2BPz5%7``SqGoW75$mZL_WAQ?D7MA+cxP7FX6OOd^RMoLUkR@F#4>fksYpmX z-fC*Pp5eBZOv#Hfq`Y1H{V(2E-~6i~iWh!Fr75HkzuD$K)ZEx$XMx(&y@-A8!J@84gb}@z}Z{w`y>Lj?L--X_vq>AX=&x-X5E`mevaDO+Q!CN zK7@bmD=_fa9ttV(vRC>bARAjaRGy~)(%YRt`B%JmNso!vjN!rh25!dBieo#O+@JoP ze~|pYP5)g@1cQhVx>#8d9henF9x z2^{cP@n9qgyO;Vmgoq*Kh?^cLG`dSdL5}~B`tn~-5qPT*^k1KNNArKPPX&KoGX0Pl zjaJd?t6U%qo8(HZdL8whx)={19p!4=$*o|)(vs!3Tsd9pB#@2UsAmeyqp!bg$>32W zOgs`=%aafLy<|%Ncd0K)a03+Bv&pkLc0F$ugTU-$;&tSxLX8@AJ=V*ttrf$RxnLa1 zG~x&rXyMF8nw+a@mTFi;L;)7hftKB!RFQNSHHd3J84~VneD2TE?pM6GwSnJ3LccHL z*W+X{v-Q?!e(D_Ovs$xUq#0!iHS-IP%|BaVrX5vB1!3jWq_R4CXG6jWLhVUxD_IPl(m!{HxW&hr{bt*n4qI2oK zln_njx%y>j7r`hlkgz*ht|t%bQF}n|k$~VmHF}fGT(7==5Z``iyUpVJ z!Wp{|VBC3E4}7Ue)q6x5S{-g9^P>OqPY6Ut2<>4$+0e?Sh^8RiMRnkgTG^71s`yv8 zH=1JFMEj)X;yb?`u1=a({`z&AZs7W9@$taq-gzn>KKjTkzzWmak|-I_Nu`oJxpcDZ z_DPQUqWn4upv7xhanbacpAtNEg&ocvhS!ZJvUX^B^qiJuokZI~m{J-@iK_}84Sgn@ z_Es({&jF$X9?om0&qmdkZ=D>sC+c12HHALnM!)P0|CtIgbKVR1bGBA&188ylBGzZy zn6r@TT{^Px^dP!b&bPbPe61qK+PD@@Hy;a-LFT8x_ zGNym@B*4n5*F2<>Qj~HUgw47qQ3T$6K55ic119l1ZJ4i^e$j+nQJ+@iFcV{jypNb? zY4Pv6C{7LXtu0%Bi=CqW5?Fun0lPBfO3kw<Pp}ZY!{*{ZZh`+8X}uDJoIF&a64?!CzQks`d$s%ii4ITM zCE%I{J08o}uXCIq;w9v*1`-|D4=l<51_0@Yx^lh+X>p7zr~hfgEvQa+u1!^J&fOL} zYpY&)p3V`6W_BS?n>9S;heZ%5ptsr8%m>OGR@&Qu*gQ-&0)ZYLRqrApF7G4yFbRXg zdWA_xzZrlY<(#uMvhJ1b~t=tlWbwT0uXw!!lU$*wEc zuXahjRw?F4amPlIvTokSHm$1|$=L~ygWs9LLC+x{BShe?zrftMOF4vAWS>aQ-@2aFOWK0G|$fiY6~VuG5&8! z6taAc&{vk_iv?yEYa5FJn=KmhEIuy@*fw3jB`LN3Vt`(jS-{0`0lIUlD`Cl7rX3$U z&wmHI0Jj`*1_B}0)u)wUkhb@N=f>g<-(iCB`GoANf9rr7ib=Di-n~N*ZfRfJRW_Ag zf>|zy?Ac0QU2ep@v}3<`=l0SuJ^AcS@9@RV2f^p$uh=cKT1Z|=Tw<3iROXl1mp+q%e z_@ciHp6j}C(NQs0)f;3MaJW`!3w_I7w~;%0hW%icWN27D*jzekzodgmGNmQUCKRlt z25I`t1=b4S4=lIJEw36CAw@YgZk6X#M}xg;)g~Q$`EjaeO7x@~3#2HH5UQ(H5Xr4n z^jzfdqG@BvD=X#g^6J1Qt8Jn3KGIo88tT$Tbp(lcfukHmjYCsIj(1899MMtUEf5o_ znswHws>ld)w9z{5>vWO~PugW?Q#;3aiNEN~y}xc3OcfynRg&g(TYs{6+vPM~&Q=yM zIxp^M^ZVL55I8M!^3}jO z5p#`y=6-cicxDH@_MFTMl#wCrDPdG@DlP4OIZtN7FZ1L&Zhxl^t%pd#N*rKyQbR%l z-96{<#bpRR-<&(?2Yq3zfot8;)dAYxR=vV0yA^>KQqq`g&gE}3yArccfDUq68h3&R zcu9q;rGw26`bUqV^{@n@C5K`xZ`ZN5AA%w`(vdg@NDk#C>f=#Ke8s8X5w{f8uEr$Z z2gNdNc888%%0msbjy+S`dpI5*m22@=0h8N^gvZ3;# zXgWSCx5ZC^+M>madE3Uz{%1u}y-Tt3bkC&~)EFWIXR6#~=D(Uwq|A+uVWv+{Yji6% zQ%AF;5zaa;*TcfZ@8rtRpU&VDZ59^HrJ61z(J!6D=|ef3gNAAdZ?fe;6Wg7Jss=t-0^rwIpGo=s6^RmBIc{q=x(|ind$PoA*FAX`yr3JBW&3zrka$>^_ray*xqR zIIC^bk+~S`_$(s5rhEImZ@TH~Jkxz}%Bd!zFWVdC>vu_D>_id9kBks{MH+yF;;^s} z7iNFU+V7i+Nescz6czx$RYJzQxeChS?XLyCU$L^<5SHP6$&%$W-Ieof+%>P*6jUrN zV8UA>)$wh;p64AoiTziFmTeQ`NeiKt9tnvk>!?+^=~=>c0At#Jm%5@5A)_`m^zrP|)s2R6;@ioOUJEzt7 z&?Pn~$#>eDB|*HAr7Cj|(>uQ2dezp@pd+)}UoTk+=``U7x^3Xr28&L*VN;Gey#$)3 zGL=;Jve3t1lfl?_bh98l%Sw$V!X?$k$sjb+q zFQjj`Qr)lAa;^2Hfx{cSp>5uACKxqqX=%%xw)e#}|3g-BM@)RGYMTy)>L4Zc&D2%Ha?U0m3-Gw85aeoHd%kihso;<&r5O_vAhw+!|USgx*oCiBg56wds* zzeN_h3*P{_94<6LGQSubCa__x%sqziNCl+Z&X%RHa)L8?}WY| zw&hI)fqLW_i&ZIO+d8*@pKB4$S15&9GshNx##NO!RAbK7bP}aBvmTu44-6RmSf6yY zt-f4KzbC!g(ISY~7WEf+e1VMTiKVROADPph8gKeXW9}+3YbtDeMNvJ7@hV=W*i)JS z-3=+d-N3{Ze9a3zuf?2ExR2`TJD+wZIU2Rm6V~ZcmK@Y zBh2>QQ(~rUb)hUN=ZlU|jY^l22ibIYKMYz#3JSOG{>WU>n*5=K_=Ej^36x5&@jItj zoYuqmuD^lz6`t_QUU>aBU;0r-DeKdCn5CRu60^Hnu>Hw)K}Xekr|}E zBYQ*xI+Rj$EHqL+|1BXw}zLXZKgGTzytzyAz(?FV=BHpaRiR}E%iZUbRr|3XP(VxkD5!Is+ULfU5*N_5Yu+K>)~#>bDe^NpS0H5)K8J$P`5bAnBqetVxkQM29cy-=KJ*S2i-8;@U@0T1U11Wc&CBh<1p2~ zu8l0@x?RJ?X>CN`uf466^P^MddjI#w7`~|Rz=_3u3}CQ{@V!ZQ{liFu5XbyvXD53w zATRH1bCi#Lu?FWIw_hy_z2eO^Oz(IqD&28>B=b=Jubcc?2PMra>J9rEtY5)H2S>M? zyT{c8-&PKx>}3Krhjai5=j**{N51|J^K1ZH>WS8jAw^h6i`e?{%WCOP{_+WkE>lp$ z?b=!@kA43?IWW{gHtOK(Li$Bt%8`59F8s8AR_=1gdsa{F_$q9KL?N!pyK=|1d+6G6 z>fA`#zi`)AM^Jiz2;U1n7r)@|l}A7KS3F-qZ?qcnPfr_Pl}8v$q&IC9#^j!N>5vMk z&T1YFIHp!d$53Vy;AwI4f|Fsp(*CX3hQVoc{6+D=o{wtqm-NSG4B}Pgd%xH0JextU zCsrm*oCQ{{>#R7P;WG%>vjwEgs(U!PHNxg~yh5J$rsx*`TiJmRp0*lSU=oGar?)fk zUV`5*jzm{dSs5p2o6#=p0=J3E3eF+M)J;W9Kl%Ojwt`+GY>teh%~!*8g0&1v;c~9TIyp-k3g_@NedN}k(pQCAJU~~FHUQ0_PAYm^=I`;ks>?u?`2*Rat5Zt+w|#t0y5LoM zFu7PezA7RjjBMzy;lK70)8S?(I!Ld5H(qUf)7}*bJebzt%LoCT{9;HlUOGCb1!~ z14?m~4F;BYoCTJs-vzin@3;#{-}6oyxS{arT4nO=+xi#&gJv?c3F0HhMr=SJY%4lN z!CsO_bPMeONO0sOq9?_RDrNtIp_`ofLo6+45a_WnJwtg;Av4D`2xN$kW8K~-SwHWn zb6XRa+s(WOqXN{h2IZ~0Z9MH!3)(rCX%Jd4pAASzAeQ)^>5`2daQ@wQe+#Ll!Q6;U z8Yj2Bnnaej?5~l?JLpU@0IC;Yzq1rrZaw)4 zu!UYlppPLM4FvvsrX}@yqy_E?RMKYBOd;E~0SS{AyQKt^r4CuK77$1pQ*%^Kd94Iz@9u3p zCutt_SsxpiEH&H1H9#AFH;wdJLRu{!M@J;M`y*mdr{VtL7s zS&JlArXiw_G@j=aN#MT!5d@oNWHgk2@?*bCYgCyC2Lg)|B+cr=CrpP}w0&cYxfIjon;cJ8RK;SlU zb-FzvacP|?;fE~Zc;!o4O*&#NS(wxA`mYP@%7 z+rIDQzHCEOU-KKe?>B0;hJU7NcvD3{RXTkJ?=6B(JJngwn%Dtkqdmm4LybM^k$!;p zYDL?pj{Y@SZ4){`y5w5tEfiWrwcc_+vJ&mt)55NYwvTyV+n%+-nV?jdw zcE2>5MZN9Hmw(0IZY*VpV=9T57d>R6DgV2eU=}99rTI67x{F-EZO#SncTSQm=rx!l z5Lm@;BoERKNV{L$P`td?Vq*&~j|l10PgqavB;r^|eVpqGM>C`uC5vm{azc9o{(EMZ z-ZhbMS>Mi8eXeB(b8w4XNpa14QVK zzSO(&ny{Xj;a#m9A?dNs<}N4yO8}pl%3mK9lSva8~_81!61#nhi@-r3(66b{&sapZfMvZbfZ?2&EvFmJhQ}GbPIhx3%y^^{PvSC zsxKpp3-v_*;uEOGKe-70O)t)_s9p3ylfE=w+dClON9#fxY0BuosQiup(h#4}y|Py| z5&uE)Y4=;P4$hu^`bW*Kt9>L2Egj4s7OKy-G=e0bp*`;VT%B%MgD&^}CgtxWkJXsm zEaiF@`eOwDDv*eE?|Nvm-Tlv)MB&c=Q^_8I+K`Zth`v;_K#6(o{5ROn%yY;;f2A%M z+Kd+pIz2 zRSARglEi=>vi^y$ynZ#q^*?V^%#t2UKSPP+n)QQA&GkIF@GvN?z;bht*o+v-$;t^y zkQ41*ukN+~aZ{{c;4Y9IFs`*Cn-!CE#ZOw7ll+NaA-$;4`Oa!|^MBq}BB7y%|373q z|4+o6@`h8HU}{b+CEkIAEppJlsfhxwOd>b3=2U~k9MhFJzLA~swJwzf1pkyUau`Zc z>4MWe(6np6c4tzJ?e~@k)v({6_18&d`o{x9Gtf!PiIozBhS++hMC`BO9((a!^3_hvtb#p`*4ER58R8+n;*lpmqvdM- z=*d^$Oy)DU4nO-p0aa=1O;ZlumZ}Ut6lRTO42t%l?Ty6av@ZPz`mlb5wbipMRXp-t(KHa!7C10hQMm z3O>#q4(!KXP0uuef29np%7lDtwP{V|tV508{H^br`&`umNn6Nc-yk`e~~zQs0hy_&~sSH_`I zOb08vR;8k9tT#7K`EHL1@<4ke9vS%PqX>f^^abmPCE!-@q5ihd5q#fh5L1;hW^Mn& zOC8N!B<5;(Y}XN3 zlTs2}=g7b-igXPQyBiO5c8(hz4F$vO12xPB;u(b%nCa+_>>SpAe6ZVV(q>052l(kQ z9K@|Xc>R%Q=ubXiGhYH~Vv#Snjrz9VTEg1}7khALBxC-8iJNb9M7gB6VXmJ~srzFL z3>R_?ZJaMrkr1JfLSko5(JH*^(5o#%QzHqKILfz2c7 ziwBGlWs9bVJp8+R)d%y*jkeC~BZ!n#Rvvy?uc}#FK<7=Kj!T!YOZ|{5Fz--*<_3I) zN6na_wBXXVXx0dc%&I|uf%^S=U(VkzJ9+iNUW5JARA9QQ&!uhGpHuWa+Y~NJ6aUP; zaQl^Q__rgOX$u72om=!S)h1yaf9jmNROGoVuxYKy!n*~ZB| z-9}ydWnh@$>J|0Z_pyzJ2;O9w*JynGqyxZp4wF*At`gna$?8=mqRF~gGwRSkahm|p zD(~F{4>APGDpIT4gP}#<~$Z@})P<80ffnot3?F9Q-?zuQBFYrgc{g-B8N4N!M zC3}sNtSA<-WD3kiS1va4g~r48g5n$RN=(LG{N~1wOzZOVonoOYHHPqn4;|v+RE&@T zS3Zb=g++MKRuQJn!835f_Wu3Ur|eaDgH`I&K=Re>!_(j;SvqqPJ8)FA1rp1wrX;m( z76UA4$EaJW|KK95+v^QU)ghsd^6OSZ=o1`s&xMI|E@aRo*|BIHHT*;$Pd4w7FP>sO zvJ+SXGl@J6dT`Njt(7hxF_UXK1`R|#gy-_6CEQWjYwRH0X{CLB8`VgUR*l4` z7HW&p^IF|Ki}=%~^Z>hyNWGW6uWX~*8-AVn9uv3t6PwoCG>Yp1KCgB=lP&h_W6mpR z^WzE0=kG_gatbwQ9B18}C(deXcj)f z13HCp*L8^0 z`(XgcNxb|6l0@)9U@nT)uQSGlxM1 z9VO)0MJDB(j&Ej@{F*5ZAR%Mt7c*IdEb~W|x(9#=p{2ac#LwSK&%3o1L)&k4{YsI& zL=C<4Y}hFoW9upO4#a(t2y)iGnj4{R+KFfFT!eB6?RJqfnB=P0Ilg@C)JUFV1bahJ zPaoL^J4^3b6xiU7R&32`0oqBWmd__o2pHXxrM zlpcMX$d8%*$5fGQX+6yd!=cN`AJ5lWneJH7lKexHp}>p zxp^0T~vqCl!2jxN5Zw#2w z$i6x!6-fExd;^^?_)1fFO`RLq4|+Lx+ue=sro+py2X4nDv?Kc-EKM#^N^$kcJj=Dc zY9F3~uX&JbS(F@~s{zlYv+j}zEZ=yp;(?80AUZh*s34%W!nI_4UW{q7eI`xj@}%kF zv8=DXjdeKSU278kVa)wc)$>1+hCVqL{PxTY>h9n8Ttgcu&R!zHWjZ}$YPSB;?bkIx zq*#Sev07u6W4SD?1vm1u16@tFeUNW|v9@E0`-gOUdB;`+@7EiQD>6puoA>Zd5$t6@ z4gbiTdo<1#$Crii!U9wFl072 zWIlPy+Zm-t7=V^==&@aWPM9C>aPnT3>a4^@& zWIA%lo{4A8x#Sa{<0(pA+BrMrQ}KxKHHrHXLW=Qs)qZxs9zx@ml8?bMhiBhNY)gQ= z#3~EEN_hYIIcY&wQNFvh+I*7#r@<>+;+p=ApsH=0e5f;TAC~bm*Gkowq^^B-NE$=u zBUqzkf%m7`yqEr61Fj;zLj`aZ?ffQf9U11zC6%7d0yVCgY6<|puK z9YsRUrVb_coDC|`uqg0PWA%hb(?i<_mc_PBw&v99I+z%$_9wSK!AB2c6}OK>QL|yT zii({&CcMl3Wdekpo{kifS{y+DuOS}k*%_pOR`ypX}|UHTp(l|xcP#;E?7G`0rYH^Pb% z9jMU?KgXdHux|s05DwSU`%GAHpjjlZnl06-aU*0(Kp|RSWkkp%8o|Sz2u=Y?cG}dR~O!+90cEgKN%0$?GYSpVxP_#z= z-2N?9r5~dGp<%YVLwnxZB`4?h_BI%(mD6HRB0FSD!{uVp8rvW)b~Z1YTouRbfnNkm zyN>N!IQ>bDjL@(11myTKf%3gYb)}U=+aE8VSI$yD*-jiVlH|=3Dx^uJ<(X{JV6V_v zM0(MJMA;tuuKNH0HR<>aXBp~Sd`|K!YCr0Gc;y#x{u7MiyLs-bYP}oJee4as@c3&-IFhIBR+3zi+2^nHna*wa525|`DzO$2 zKAg-~32@G?^yQ(m>zNq$Wt0#a=Y29yju7bdQ^(uc&t%j_nUG1=&@oz$$Ir@xyn5qh z6I^R0`KQ`uk{^KCQ#UT?V) zHszznQ8^XuEdj0@IRV{G#d$R+J+T%5z-fg@pmD9OT)N(bo%-lmXCz-mri9?SG0<8TEov7lPSMUnb*G}gUHtv1b^=K#IQ&9CBGVkaPYU{7FGC<(o?d_x|+#e$?0=@A-Yt++=+-rLiwQ zv0DB$12ugmSGDEchWuxHah*GQT;l~R6JXw6Mqt}$TS&S&3n1*oDPf|M;CQtfnUxP98}SZ=x5N-r1MO)A}J8bvWAw@3afQAsVEO zcc8*Rdu;QWW=oKk@k;MG_L1l5p=ZiRVOslf#=+@fjf>>r4T-LG2X{nf-h*cwFAm*G zapM66s+z-te8QR9w>|gyeZ`_e*2rS!U)tIZIe%#K@=DUEwQFd+c{jslWA=9mBx1y5 z7t8E25-|FumiJwyj_n!?*r>M156Bz2xR|%?(BDQmrIk(B*m zbsqq=UI(+UxQpffHdvjIh<@?_wEATj$vCb!zc_rG%3_7G0P+1{^w)pX(Qz{o6%LEx zPHh%lUPtTFlIr)T-JVPAv{B{Wcvx^pv-o;T1-qr{b|hW;!_0kS)8jjz*g=MI);%vW z7N_nc?8QV0zp_b&TX9x5-t^0t^$=8{e8?uy=fOblVs$dVi}9Lw0}9*tSx%n&W}|vP znUD?;d*HkSHJt0A(a_E*Xt7<5?$AwB@^J^I54}6 zoMe9@iLe;iJd0wy6r&l8N3?@r}O6~WK4Oep4# zUH$-X1#F<^Kh67em5ROX1;+Rsk6DLVb;d36rk?3(zs}UsRF9Kz09bRyj;C}!0*;&9 z#SjZHPwgwi%Ewwf8%VtSC74zRDW%8fXxp!1EcQpVGEIU?Spe!jS(CN-t^`ALN1nE# zxpStwOrmn2U%Jy`FF4Bn(0ZDG>EHem;yg<_jndl^*A-Pi=B=0#?A>t*bf?H~^p&U| z)x1*k(Q$fJz_y~VzCLF>2y?Q`g??8Pd%|;+r9bBd@@X>=6bkrtklj!KugyDm`M#gy z!oKnV{I$2z03X-ywn%ZM;vFuyArVk!ixeoS;#Tt)EwkKhO&Oz1$4KMo)~pncR|y}l zA9}&Y(Zg#cS)7A9D5A!w6&P+^ ztk$A?n8K7_yIL+?&poFnw8S*I_`e6Qcdamr4nN}Hkbm0;iK7`A>(`w`U~Jcl>Z+7eP1?ZqOLkV(4| z?w+%}8*qff{iu^j4lOKS zgFrlVkmq~vl3eW-=Gv2X)HbwIsQ0Qr+1Mx#>>OM)Ny=847+P=^Js;gmw;P(V;G5U9 zH(`W)hP_lN^&od2kQo8!edQ38JRO zC7ZHtF`$fmhj<3N+84gd(=v}c55Hi9+$kEfYv`EnkvUYVe%<3JCBtbFd&-hS#0Vk} z{ad#D@zI_d_l@3FP7X)*`K#o6r*!YC3{l;4@b3Nmt@6prt`;}_7t1&|%W&w;yP)&x zX4A#8P1T5=Z(P-|(S7qZ8_NP(UD(I$oV#;B$Hv9}_Eu&`c{Ce~} zmc#yz-a_OSck{5ceBTIHDx`l47WbWRW7V8-P-7Hz4#c+F&s$xI04LJ-E zzvnwra*$0R?~O5-bF;(`*Aiu9e3E8M^R#~Owxbczp&vkNfe-XN2M>DRXgRtDF!nobSAXvm}OaY4tyTUUg zcsJgZJ{u!dtLGBM&{?)($t5@DE-|a|Kze-iOr3Q#a2R!J?g*Fm10Kq>e-?aK()Rsr zxvFqsWBfhpQFbS8@fImYk7yIpJ4fpB>EbN)tRgxt&jeaWbk1}2r#2Mla~Ygqp<{}@ z9?z=3Ga zi$gd4BhI@ZJu%O^qJjw)N(7SMupV810YV9e*1>eAyCnQDZXe zj(zvNVGm2E=gyQA$$aNYH{T)RH8;GQ-tIAQ&4_-z3%hx<5l`9gt|cuDZ>}hAR8N4- zq+N-fXb*D;jW-=zAUpf%7;A*b{76y5AnAca+)s$(WkEDbJSMEEJ$j({`;mI>xUGZR8D> zEItk;s2_o%YA%0irnZYox(77uULRG8y!K`2u}i!8OMfRZ3}#+u+UqCH`zdAsprpvZ z`srpO$}lQUenBA}gv0q#LYrH@U?wCmfymq$n3agrwa|zG3@2GU=p1G{f zY=`JjG}UkX6lw;AiiiPHb}HSqj#C{;Y1|Wf@tUJ`1{~XeP4Vzlou#S1&^5KmEp{*~ zPlfNO{Ym3Hqu+v3BLz=8o>p+>s_*#9mlqx|)zIX9e@4W8Z)&QkaMpFx$S@`b=65CY zPiCwh8%BC>CQcWgtnUv)Qj>D=#_LnOZz8j|59f!DXOuf@tPXQZ=c7N!8g^cG&BZQc z$>7eiZpi)oR$OYQ7Ou#p*C?Ofy6P-%^7N+nre&(12A%Pm_23I}ox?AQDGJdM6Uf@o zXZJB8(aNw!BevR$gSgv=uwy~-E`fiK)yqah4%_R7MsZNQ7mEs|a0aop+=Bsa5nxtq zlJyYYF~>2e`o>J2;P|e-TsU>EM-efBW``A8l4=meagWwn;fQLwuN&>_44O!ugXL}` zKmKDI;Cq%20%t#HoX$bcboGszHdY5@Wd)i$1(On+hw*OP zTMkVfgH>!jCqbhNy84n`h_?KqRQD6Qp>byvMn zG0JqhcrKTH_iH_)ixwn(5H4<640XrgE1kC*T-?$Y9R-%_Cy=+>LPD;Tz&$yo7k-Pq zBAke#O$lZOmt%ODv;1kImksoKSjs@slSJEc{j5ah*?rMO@ECoG9+V>+ES-=dA{2G_ zdMoUYeuzvR4F`wpZilLUACzGHy4O}`{9aT=Y|S99KU{h-&l(Jh@flYwkqEHKKTosh zk5YM9N5w9D zzFa3v6Er6pGDu56>sK;PfqyQ}l5ScE?}|cGG#T#cf;`1%L)2Nntql`7hcOW3jkrst zOZ?Jef9xodyF&hQ=b+HgaIF2Uh;!ns8-_`y0;27Qc#NxYZ>KjkiEF$m;_cJ;a8lZ^ z@_c8VMfrWq6F%r^>&&mq8hJ#6bm5}0vwAM$dwX|7eK+6lwyhHfx`7AFLjxnyo<^!Y z`wd1gu3VeA)Ft=+r1nPmIN1KJCt3wg^)Vr`gi5$*NV6J>AG*b|T3l~`=lH>tU% zwUy`8ZvORTIAr$2US)HXK(4JsY-h26KTut`V zio=VT*%IE&{4rY*dS2~FF0tz8WkX>5!lL(@u>BRFrTBR*FClXNn6z)Fel>VSo`~77 zo?C7P_*}QnpA-O|db}4<-F0rbU9$Ev(%W{b5Q7l(*ng_H?(f4^LcbdzD65>h#lToN zrYI11L$1GC!{AYJzjNi1eZMdC%uqbsgfwbGtAnq|-P@v#({!WsTQUxf1A>aoFF3Bd zrIUO6AcX446d=x&8@5+)2M_z?SbMofi_JW|S|on8l^c`6UoZP2Fkh@M_>o$*`zANt zc=754{8hQCHYApzb2`oY+mjWehjw9It4Tu9t1r^C3AZ)gn9F7{xHku!9n45Sy&`R| zkk!E6wSgz5U$|Qa0}AA3eY)8Ts2)ROmV5nFiZrdW53E*kp%FS{ z;OxThTK}j=;PWo!vj=Ur6s{w&zkZRT%;N1)u4_OcUS$oL;2-7$9hW@sg7Hcv7pXH* zQwOwsUdeUB8=D1mKNYA#I(MO}M5ZnU5}75`ni5x1O=L19R(dxR$u(vf zo;}Bj2x}dTh)ANUXWD=BKTAsh|IxcK-s&9~V>Sy`(N#UrydFAQu||Em-}=uYY(5Or z5J&Fotaz1jzYKu?wL!?^&;0R+C0gL_&TTd4%ccf$i#7^Qkx}FjZF!6Yy_0;jC{PP7 z-d2m^1dd8^kGIE;r7ZN%1};F69x@|C+Od z-r13X_cEV_Wb15rd3h!m;Ir0lBiqh5H$d*36n6n$lrcAW6%z}lni>R-BoxbGd`VC2 zKu;Ps1*DAyo^Kz-Vpg;Ygr^#FW%c>%<@L-N!#>7|>}sc9vQGSB=YLQd&7yuTwKhv; zZrLOMNHr{fcL zs*~H{h8nzg+FLOaoH%vHh$HT-pBvuU8i{(DC~GxIi;MIG&}OnNDAJVs+PYj^ZVTdv zG*G;=-Oe|;om!B}qz{FRj}IpCXAfnwf#K2?>tU$7B!3uR;KJHONHC9=MFHDhwb%vnl$9{ApB+ZHCe6tKk8+kfcn_*Sktbawqc zK#8l|Yqc{s&8<7>%(#Itn6c>68DRpK58nMKN`wYV!345(|Wpd~gR{YmTODtNNtWhfdH~zKZA!rlf7wTfA#h zhf>KE6MVcdF7<>306T=aex2J3`iG+R>8AI(+Z;kKWrvez9@2Qz@J*XQb^CKRzx<6V z8*@`k5c@jEQ!5s9v*hvih3DbnbfiO=pry0n^3MmCR}&CFmj5 zLptbWiwywKqLrO%HMH}avwC|~LFZ}+3jg$ycXphOksCqFv!h1S?fTB@tfKqOOQ|2B z7TU|h8<=N>OMwk+yy%h@iH@q6G+fD=-)`*QRu+yeO3xn~R#7)fzAMG?$Ml6Ak+Arf zLYm$}5BCO+YXPPB-__|G8n*`P#Aid&Rk4vT`O;N1W>q!TRzWF##f(yh=3eX!NR7&@ zMoWpUa(5{@-Ki&V!ztbMpR;4j;0}{4(NhTwuYToHU~AI6h)awY0jEKrVPKG$cN`^; zmAT1A1W3L78XKSUTB|7!WW=;D*VgLY5#z^^sp)D{%qaUC|5ghcDa&-cz0(!;VY%_n z4R>tG5BDx#`D}dd6%(fImdmrhm(o-;>Tly-zq=L1UY38_L)mbU|KY#A0Pcpt_aoH9 zmpgNiFGTmCjzNAdn}ipadA}=v?kgzwepX7=!k$LS%%cX?*o3MBg038$QJ;RKPB0!0 z#l}4y(d3e}A!VPEE^zUE3!#5OGzf2;hdX;j(%^*3{zhHo(lY$;wgMzT z)&e#UTYpH>afbYCjADv?s)D2@se!h)+51*AgzI!5IwRVG>z4}~t=sTjLtLg(lF}KFs9jTP( zrPH}VeY16~Hbd+T*8z|-^^DYH6XKWX-o*jEeEq}aTq7R)%KxEZ3p>-5d)@E|Q9pk! z9crt6u@NpGSUKGBJVg8X;9)CO}6m+cVEBNb%*L2rF9T1n=yV-+X z`pca5%K?UvO^Yx4c`ogFdfI1&l>O!(225Z!PiWJan5XhX>^~f@NA|oZU+EecCJRgi zMMk`F8vQ_#jX>W*6M>*SHNT?KQJ*Ti*jKb264jM~*pDY6D7c1Gk6U&`X-Wno;ZOmS z6LPHfx@bIda;&Vpa!UXG58e9GuJ~XFO&f*Jyz+-utqFV=;*=fR03xcmVVC1i)7;Q!H{MB!{+wLl2XS^4=g(!?(5GMnQkEs@-1r!`Wh8-@Mq`>LdDlwjP_dDt}< zDo?9HJzyY6On_Op-MJc*6`dSn7EBEq1^pt#UttbD{_I{zdg|~ZD<$wd!JE8ml`7yM zBS}WROh8x_^aPaax^8@Uso6p=U*D4trbY32j@CpM?Y%r-p3|YVcD&#lkjW@qm}_}l zV4|PYl=aG7PA>5q{L%4C7^XkUT`Kn4ZPH^+ABBD~@GtiAh&K^pUOF~CVIr13)SbG? z$3K#QD#{-gv<@u1mg1D7!62N(ZE?J-m=!L@Ml%rAJ~jc)_Z8qgZ`rB8d8S?vENU1V zVMj-w!o!ar;wcebXXfiqTiBnrannjy%am~sG>4ajSfu`q4so2ikHYN87pS-ocZ3~9 z568IM)YIGBKai2iO#&r5D^BN9$xqwd+^Fi~RpS@HU&c;PtlQ)1MAWeJUFGR$S<$_mS_rf^CEuY+wPS z_wJpS=_Cn)<|821vL~Y8R9B(9w|~v?{t)-rbrZ8q?Z z`5~97(w0Za+bs&g1WC#b#s^9oSu}acQF~T=yc29RC7G{cNiahz%dOssED2g z!=HexH2Y(jo|2yW!UQl@2x{$#hn7FbT=)uStJ3OiM_M50v}-mIr?*nEkF*@;+d1^( zOIgSTS04`5U`IDRUkpdgzSV8i2Z7kPEh!|OzjrNvs_9QudkO@aYmyh>@V$)mPk$YY z?EQS1mZkMBa&-9jZ9>6cE^|1IZm(=$RdB!PhiT*J|H0jRhBdXV{oX1|T^3*=QUrlz z5LCJ#y(xquMSAGHhbA3DQ)vMNq&ERWZvg{@9uVohhE9+YdT*igPTYH+v!8RW=adic zhv&>MaAl^luqQcfIPr3J^Z2UodDNDcS#y7e!F0)r zwFbEB9%#jEXLNW7G#!JD8=ddy@2`)rcfWJ2FpR;{d`3B&n1Tc;YO6m3rYf!POPYSc z4#zD?|HUJceg4~);@YR#|4txgdKbPQAkN{GK8Ac0GcNofUJ+`5fc#^{iTpz1wGUAr z|6jCI`4mmHR~Yy5E<4;{JT`+!?S(`L{h(9D3B78p=Ue_8f02 z%{rnbgGo?tevFp&iFHA)|NVCa>Hk1M2hCmYPK zWMaO-k2n{uw*isVm)nCRu?wG~8MSDPC2o+zj3jPQo}AA=J&%jIko8O3KmO)t)#thN zb-%7paBEMfgm6lH?bhr6cB!xb^)F`~qiX^Ga^9i7hWM9>&VS{%ej}kUq~u@CeD?EQ zOoth_D^90@_X;aFy7?ynJ1c93Mlz-rx3-Fp*Id?iMjtn~sOjtH)_^W2ztH_Q@!$mk zW-+hzUp83BJd+}GU3QpVFOaKO&zO-0%}7T#*!341pUS%=kF-BZ8(ZZBzWKw66wt6A zPIhbfy|Ij--Kt7LF7cWLV8e6mT1tfSB8f`3_-7Zva+i?aX2=%tXKO4vFHuRR*S&nb zf;U-#SuNAfUB2yD1&@!GVtz0isbj0i3>-NO*>Pwub4jpvg;ldF7Orfa3gfVRX3%o9 z%h$*(LtBM>s+IQRi1={{)+tG{Bo3C!Q(@cRAGBnuc4}GQc%RTVzMl*wqTR)p2JR#bP5vhf6?A_wrY^35b4ez$9b1w zKx{e!GM%C2!;^pXluQh}Ii+84SFtwr>KLBY1@llJ_(d5+Iv=(Ri|Wr#j^iUudN!c8 zK0$TID%}A#7~Z+P0-LHsiZafunUd0Roae~xI~)MpZeJW?ppcv+4;4N zqBSk+jSIsk@yT+xHfjP7|JZ`C?#nE0qQx$KYdtScdY)kZZWJluZo2Jq=}Xynpn#UB zzCF;dU1DP_c*!a6a3>7gbMV9+YkJ{qbo8cpTh86H?qO^)0}4jtw5*hL;XAPdU z97xdzgO)^ehO$Lmwrj3Ew54E+t|Vv9k`DXMuIpo?f^l{Vy|Ac5VcROgr^eZ)rMp{! zxF<`(V*49fN53>ZLTP2D;eL)iR7#`7X&_T0Vjh=Pz`igsfj!6&gG$-I`eoHG8UO-C zlwse^PMAKdCNo6K2OU_wvfO5s_8AUUl!RFL$Onq863@(GDMvEmbz(7tb0Tr-Qq8NI z)o%PTUHH=cF{XyhH{jh&UzyR3mXhAsuCxljh%mSo#)n@urh00@Uu!v068toM*{OV) zw4M(cKw3_!2#1eF2F*n}RqFwb_CX)~RCvL9&9BNgJ1syo4N(M#PrJWJ>%cojZj#Vf z0*h(yqiauxYWy<1GfwBj7zvPV16V||z`%&B3*lpZz6j@DMRj#9E~Zzu=hmNP2+eVf&k4tO(zN6tB~ zf1@m{bn9 z;639$!knN*@l(mG6V}@tm|mt5v+;+^9;T3-=KqlonM_L-m|d<*q9PlorB<*2PMTS8 zY%fg%yzsVa8W-2U5v`$HOEW3ucs5jNTMy@E2SErO%Il4090@7je=&%xjbwy(#*v&> zJ7P+CTc5{vvGZN#jU=_#%*?p6Q`V9Zr|w(bVLVPr#j$F@KnM<`uChz*#5ihWc)R2E zxBYqNxYD2Pol~6Y^qBnQCO*9PV1>& zwvkj5dLW-5r9^ck2rH54NY zB;=EIJs}o>2Y;H=gv~-*XkugD_dwQ)L(`o?vEi?da+eYW|PS_GuYS;V; zPrpvVllmw;H;qZswR2`^>S<9$T(V&!+M#u zgVYLz>EXNj)oW=^g}fEdZ*ua_4UuHxJ-l})5Q}cEn7m*eM1USBo(O@Oq2hcYLi3zX z%8~Q}qFowKE%k)#xjqG3{cP?%*5ShZBkNk%0q2O2a*WHahiO{|T&W%E;$iCAI`zix5oIt1{xSC?J3IHGGTB_gg`}x^b4e zY{?LQJ-vnMT+;G#=|$V0@psKFOAZgMkcJ)GaVzKYu zuKnDzp_52583?oNxkQb;mBoqTYj^DhCf zit=TAs5YsK02n-&FH_ba&+JD@7KQoP3rPhX4k5m2gF_`}K6h_fs@GA_QIL`KCG~b9 z+}7J*<)h7+;^D>B>W=%ls)#gGp+KR&*t=2=$ZE#nCaZ-cIQ-bGl5o&+uP3;M$bu|t zy>eh*r!pW_;yB$+&aHeU)zBtmaj!4oOdJ33?=i8&!`oPacWpu9Mci82Ho=-+evX#5 z`6eya^f3gG4o?JP@& zxVVDIiI5ubbMhZTHsxbruo+a&9iAPe8V{LYKVM9W9=zBomT$6(cgJb?18eq5^F|jqbJ{4#qRuzt4{*Oag%gR!9u>LS$zkS()v>Onv!q@_ zAd^Fx2B$80S2}uUR14p?Br|lJ*or&)`{H?%w93Pc?7$}cprLUBK^DkV50{$jp1AOr z=!YX!y|rN^<=Ql(7si?V=&{P$rFj-!VqsDs=v(WC^)FG9b&%>0Ju1Q+{hbeoABk)w z`0=uL)jJ(L?mu~yJ>)zTXBKxG1TwL=@lvb&g6Tm9Dz?S)#wRP67x9(VD*ENL@J~*Z zOOVD=^tdXgMvqJc(7VS8yUMRHEuED^UJrXsJDlea_<~SJ#6MlQedWQ;H6_`ruTa;% ziw)-ki(F06lLbXlmlcHs1U&JaQ8F%-)JT?gKmnE?Z*S?Qi>?Vk@?&hjj&BaA-lor8 z%-I=lcH^yp3!TKo3(swD8Uj@uQ8&ODD>>4`9eLcO%n5{hS`M{0&fC~Q8NM^K)kSQ7 zs=Z^KEqMSk5u9F2_xa#CWDq(bS~AhqU8kFp@~%T9^*l8i#s&g;tz$R8j7%R6COfC< zKv^^{a(&#f64@fLZTaY)uL9j8Cys>C>`QPUOBXkxN&J7XfQoA$mW8yUWT#O4P zAu42Kdt{tjsOz@hmrUPoNM97Ii8Jcb-T5jP3V$4WpKfGJ`~Lhm++xuGB|Agk#5z}r zBjLLvjw5wte5Qbe$fykPpLm+;1G&I1q6<+>p`8sPsg(dI(*qoPqbwlqi~O>I0p1gEm?dRgSL%7B6x+pepeH7mc0K$190t6by?MJJ zWKCs*F*d~MjKeU(tL8Cw6MBfr9t%GyeXNYkR~IwnD6fP*k*WSta7h7qo{m+0lj3@t zh9au^rEHVx66xbW*v(|u(B30<}s7(m|%U@N@M}Fyp zFINWpx{vPG`-FItCDr2KHYsp30incsmKEVWob(sjjV7uiU0< zNlHMJE%jmJ1ABDr71I9}JFnby*g^3C$I9NL}SXUvRmS1AW*!~mP%@_=E0KD zuXs3o2^R3$LR9ubo8uxzBVD?hI*gI6L6#w&h- zPPD${li0DxAwVj#uVWh1Gk)PHaI9yRkh|1sW?a{Xq7UyIH|E#(+F0E%SW3qU?e>9n zQnZ|Odc+mN+dg$CVKJ{{is)*UZMSB(B(DMi=~vT~*4YOA?ojyHDaXw`*2$FdOO3o&Qhj&4CaYDX*hAqD zHSlhJZT6O9;EDbp z{dF;hc|@FXE(QUJwQn-#f*#;Cag?9HuCaNi`Af%QXD|hs=5j9mE#amIv0XCdB4S-D z%dgjfJTM+z`RwIfStvYjUNb@QTdpU>(H_4p|WK!QnJ3 z_08Xj9>CE!-*Li+NA-%lkm)P;Q4$V+j(R+%TThaQs03S`y!>(kxakp_Q_5$_I zWBU?5{l3mIxu&3ZRE3*{o_)yL#6j{JHr!V1vM~^VLsh^hnE4tJE7g7e(b(*FK{ge>U+s{&4&bKR-%8yvMjg3;iRb@3LciIyW%?^huF z8ija9I&5Obn{W~LD7JcV?{E9bDq@mfDBzu{r__yezC_%bDQlm)HcPTJiH|d^jI}q5 zEXCUEjE4-m{E8p#s{D~Gmt@FEA*ZCy9_ypdV&;kIWMMV2hDn0KX=VkukaUZ3aXmG1 z#&AUFt-{OJvDcp7sQAj!#2azTdiHMV$2@0j;#6O*viI_Qc9f49r*MLx#gpOLa_B~3(GeX-_L=mJZyJ2;SEJ%pDe1nRnh}El# zU{@Pv(K}vZ)GAV7Jw%Gn8h0l>U$AE+XY5zD?(T=aeRwCeKuw-%v-Zk1Hqh}*xz229 zgSLU^-UN1xCY}J>j3B*=3Nh)CMLWs%Gio%MKb#BHE=#|!$r?4l;Ue#{lP)dW{*Jw4 zB#L*CegI^qzwThlQ*VWB)oS&#fub=YuMF^#<(gjco?C8e1hm=T2{s%lO#>NHPcZ( zre*4}W0wmd<{pQVOKaO@Cs7ZMTiQ%ge)b2()q_|X&X&h?SlAa{k2)DCa8{lfMBv4& z3%8>h7);{Yz4pw;VY1|=a9ix1X%lVyM>srD)Xr-J0#!oDVSR4RZaqBj>29Yhp-+2R=Zurzb}6alQ8~4elJ6$s;ZbW3I9#D9J<4cc z=jFXme%+4$P|1baIhmJNHCeEezjQcOJSL&MExdZ2cDO9VY3H>JnD)(qhsg1rm%*vf zjh-y3%+yWXjx`w>VN}Cpjw@p+WXzO|Yz^>}Ld;x+R=p>IRD`N>g~+p#e0&;Rj|3kf z;tdcI!=Nm#oe=D*T6UbuCxx%_d5PYq4}e}wZk$U~keyoQ z=Nq0;lBviDk+9KxtH>ruv$-+yc~}wq7uUc=5%fQnqke^$^r|1>!h?cmmIt_oN;CL7< z_ueb@&=2%s3BG&&?#}hsNBSm`-$FC?HW=|!xb87+leq&%A9fKAkO}G05@BTGs$aYl z(-f+zKu0|2|Ft3j#ES&bOUzxyj4ZUmLu<#n>I%C?fvW*UiK8-JJ(2pzJ#N+^C#EAE z2!EzV4j1o=sVM$|ma&rm?mob{-}qrf)8}lhvGb!!XZSPc?JD<;?7BAjz@MXo6f@67 zk6iQng}TWxxja=$;H;yqZCR;@R(u6(V%QEF=&~AlYH*M`8S0NrD!q8g0hBxkSyV8_ zZfTKp)yS3Z;5gz$#LMREXC2J+TDj|eMfj^K$;j3dJ$#>M6KxNUc#|xNzG2xODlA^i zZ6Afo4~Z0J1Pr2=pqJ5VvgY!sH&Zt1p!v>2az{S7d_Cps_rlr9+M0Wny?Cr~)HfFn zM^c{6{%9x#flg0rQmEL*fwtiby(;Zsn*YEnfo8pcsNS`*2(4&zm|kpP3|=sPl@Xrh zGB&S0pJVj+YG!`6hcNm9tX%S*!1>h99r7U~(gZSY&abEcv4pYKh_U?I%M;S_B$6s* z(;a=QxaG3xgVz9~i+}FYCrR+ac*~Etz|4(qzO>}qazyAN)bItp-GjLGh8tl)bn3-_ zaEOtUIqEHIM|x%;KlYsi6E}Ff`=?lAnTmc{!==E-8_P+MpSR_56}CsdxpfNkN=qUE zuN{6|@#Naebm^DEusI~NgH{qH>LgixK9>DbZ2c1C- ziSBNg?DBkk4pshg;3h6bdxN&67xEC6|I~qXZ?h6Fz8I!Hx43LuY0xE%J5F+3l$1o7 zhD0!E9JEE`-2OPra4O{XcJokqThBu;Y!yen3)vrT7k{k(K5sBv(722sL-n{IljGe{ z4KEU0XQz`EyEZuX%L_llF97qsD>bvJ7)De5m`*@z2aF0;d>EHr8+pX2W9YgzFpFZi z;WllNIZk%gVB3X%H;FMeN!wU;@GkKmgaV>{;{XJXOvtPYnv_Vlw;qs8c(gP$R3L2k6CPa*|NGOuBCu` z%q~VNFNW;ibGltpBJ=8xwUR`UrInhP1mWJ+J&vuF*T3je>SSB&rKLBmgGc77>9Hxz z`8mK~MBIk>wp3W0#WJrcgsU+DTvYez_bck2+>5N=bSz?*HYWbu8gm#yra^c7?S&89 ztM{#=74l95#&b&!=3P)&a{btyc$&H#4)0@pLQhYRE`~}Mv}yR3IFT;N>e+bXKkDgf z^9ZIigQDBFdBPUMJ>tUXk&qv&m>Q3RKw8?hp;TA!KTGN~Te@E#6^xVD73x~K{rR0q zkVBD!L+gOlWJhl_J(yo7iXu)ne3z zAqypj#ms)c%F@Q%pOGtB_wD%4AuS^u&*yoq=f!NU5)MkzNDAIlMsi_6VY3ffBA5Zcq3Nh{qzL?z)(Tw{pH@%bvAvsYS-8wIAG34Xesu=U(0XR9YRO@i;Ec#lv(d4&6>)KE{{dF?I)+&z*WvD4>UXtT>M@_ZfoSw zLtB_L`~^Q8SdNd9Un0M}4STY@c70f06%#E^M%hrs#sU`qKl_)O~@X z3GOo2gs#(;_p1cGv;8?Nm3_D9`-U&o150+P>?^yzWL;-31*;lhcU2U#*-me@=5V7p z>x#!EkhprUK$w_)(HR+k8G;`nG(>6z3Fw#4PBUIL(@x3WG!Hp&Vasv{IMK|VFEd}eLDD?G#9(~F(JN1j94pGsUnY>toHSA{4; z#o0gWzgIJN`-+Unwihs&%mX8@DTmJ%lUA=eOMabHD&dZtt$c&&ctf?Qs@QUlUql?d zH$1bB+plBd7UB(@nl8N9O@tMHDJ`IzHVG=EDAb_da%PA9$yIx%xwTlpWGc2?7B*hf zB}7n*aGemBw_7cCNUbTM$h(fd5tl~+{M>6MK(+Y-sJkCNYAdzQ0bwy@M%I3Jm1U3G zjqc96;hAvTc;k;W&&x`WOm~TkvZj2!C;URcrq$Nqs}_YzF0a&{n>|3(M1Po1H?nVzlJUV z-O`G3%e`|!6LMNi)2S1w7tU|J7g2BTUTv#LS(wcY!%mRf=^w__`SY(AzK6~jf=B7n zGVd=y&4^heO|Rah8$_}Q{JGlhe^CBS3;_QU0rCCs*8rEUD>?P|#&u2NUw%dZrQZ7E z6%S7t_VhdIVkgqi_5hd*e{UM+=UaX=tNL6)C#2@}d%eQCnBSiL06?G-NiRBawI>LP z`$$YkXgI@*UmlZE+}JyxXSnp@)itfJ~ z?*E!4$P?y_TPQiEKpwx(yPSE8$3w-uLF=!Q08M-ed7%5-1RCe>S1`h|ka))0*RV6YAihM*I)cZcNc z$MZ$SF@9UGkat5gf=%SQ=T}aP$_-bYSlN&b*G}qN1{bOISn#enfvvU&h5@09%(6{` zd5qg{As;I9ysVdE@3-PU{kz7<%{yVs&af{-zqld|$FeRmNY^~p8C0}1k-E94*&sc+ z86UBiDNov=`BgSR9E#!v&MIaF%{*C4cRrJg%^vCmo9QU}&CKj<+KM`?2r#^D7)w;; z9E<{Lm}P;Gs$dYezPdfZeGK?m$NoEkTJMi0hi+9}^R}=apeUfA*n6lp+uR(zWdE|n zC$pOTVmjhtYv}8?@R#F$<%KUm>E93&wWI+#aq!y)N{{DdR()wq|J3$@1xeEX6!$-; zRrdgsbg%kJO9}gZQLMI>!QD(2VAfFU)ks4WTG3t=9%{{s@?1Z%=U#9Qt~vJd@qJAz z-riW>wF^&>n{(2vZOY-bO?DHWR3c`w&KwTIj@;$=)73;r5tu}J=wTZnTT@PbY^6am z1-o%s<&Dg`T{5%HM`i!> zMLiSjF)@q@+&uTlyWC&tNTVQqt!e0s8!6Z2Mlo)#L%9qh`pL8;{^Hw}tPcc%&F;A8 z2WqVGnnF`Hf0{$Ib=+5TAPe+hNlOezS3z&T&cv;lgn|lr&7(V$hSS5L1qS#G8RUtK zgM$*bqW=N=b20*zDYgqs1Pv@seg8&F0#NFwtiG)d1;giUy$j^-mBq`j*o86HvuG$5 z$z)cW)09u@|5MFRRc$++R;1GeTxj&u(rny$s`WThLJjX#bpu&Ts{PU_YsWnzRYWAL zsS-QvlT9}35c>Ykexev|)32mz5K`mtnz#@Ia@vE#X<5ZZrx;Qb zgeeJGly^qgK!*6yMEL`;ez8|iKqlfeq2ir*r=;4^8*V_|^Gh!Ba`q$+_TbPX2uSK-@2fH;cKS8;cE`@3cgDv9?1JGnwC&yH2Y}HJ6rH9s!y-e^SlB z5(*Aa7Qu_`#?)Ay@AT;=*BP7ZWHqh|3VRS#{#n8G8+mtRMi939Y*0DBe&>*ZPxxIc zx1kpcRe`uGL5z}2-stHOo_1{$jQA3KDdhqsjx>Jojm~XKjq&^)F-_~Jcg&`%WrM7uquGJg zp>lcZt3CDVE%$14m8{3B|HLn@vWJ=u?Q}n?=i9 zL$b}xX%tpZ^wxh6EcZH#i3%NPyY(~AUiv@lWkc8l_rR2^Qnk+m-B{Z=+8t}EYh61Y zQl^Y*&^Jk#rUrIB)%N>V=S0m^=cbYbA66CCeP~NW)!%FgdT8JSrw}cYfL33_x~y%h zZ)Zod^m;BMqbIT&vVX`S?}s@Yt^B-u0A=x=u-D(8GJ6dK_IzZB?wYtOZQXr7HOaGI zGc@<{1OgFGr^`B0G{xw;(iR6c3b~B{aAje+0aFysr454O83-2=xOw3|+h}~P`6DKJ16c2Y2;cx++{nj5S z`sMdmI(MzPj|Rfq)yO5;h5n@5gC9$1xx z$oSFdJLk_WD`iWFwz=GOO?yERiqqLk93st(vIKz^W2SMVRGhCER!I`2z@;?Uy`GcqViAELg4Me*Bg4Ra28vE*DK-e9!DoX#nK{GC!*Xp zu)@1rUgbYp$4pNWX_b4>pYBQMe_wahD!8w@;FK`vTGr>h=c_-@sIilK5!MF=ucu4F z4k6)l(e{rhPs1>be=@ULHcMk0XMqconuyvUCK4Dx=@-c$u?jN58e>7=@I` zRQ6vlk&m{HYEI4aUdC#hwv-acC;sC44`9HDwH^we9M?*H@N7T{P&H0h+A@FL0j@BV z-UXQujv|Wl<9l~6OQ*ghkQ-ZiK5)MF7nwCzN`m2?$w<|^qJnxFIQNZRdh58I;OKL~ zD9o?KFx6MQNm8Mp)vgTLmPStgdp#m?G%7u46H2N8A&q}R0!!yL6*2{L%ZlvRRyU75 z@LQ8AO8|zH^iQRpCz*RB_263{J1Cl=CO)sbokdI*=oMmpr+7ofuF??QG@^+fw$!wg zTINELzkph-?qo_$AYg}$bbXZr)ae2;n39vH?M_M}W^8SS?usgpB&vVQLh~Wo^zrYe zRbd^1;z-v=&=&z6cSx^|vEW;Cr&}@YUvlnsA&m)EoFNRkl-(1kzFgPmZ@opchNNKv z@qnSD7wMO;maln7ufmUabmwoo=o~!=ePP-oN3wDBwd}wXmSpN``HU=$6#()l3()1+ zx7PG?eIGpjPWhi>0vn>|IhcoNue2`BW7$1>J9{CfJ(ojwxm92qTSsX=di$nJ`XLz; zZvq8GEq_;hqqdN;bc>8E3P1&zzQxr}!m$u@HHeM%o0E>anK{QOuZbCSi#Af`*0pQ2 ztO?jnDatTyKr&d|JFe5w>v_C9Cg+flMpN3LVN(>+vkA=gE{EfFGkhMf@<)F%99E=K z>kF)5gic%m5%#L;I_l|%dIT+|(EDpuTje+*cMpj5@E*^rEOF5j^!d!K(SWGFcfoR9 zd0iGbX%HUfp$7(gGn~k-wB6$JYIwJg2Ie)tRa+OAaIt~8Bq_X;<)tZEm^jSXU~A=; z*NY+#&M5Ev(~rPLf~U` zc!`1wO)Z2sME<7T2%VKWc(L_wG8{wG-A zhCJ%w(0P3&jbgYWUrNu&@KJL9z{uc%j}B7+s%N9r#_ro3vg#txM<>KU38?O8i0FTB z_7x%%wIz!>BgiDXxd&{;wW>h;NN)MEgjPw6-oW0V9UB=@W_<-TQ=5xQ4{L`Xp<>J4 z#W#(TY@CXw7BD-q%iD>9s$45iq!XPPFtGuWketzE+by?!HDkA@5=p|5LW8G$0Nltl z<`pZ;%oo%m`rgm!=sSS0yzgGi?Dxq%#l^~di(L6XmPh9qmAC?2a}USG5KFH zC)ToEREL)tJm>@NG9qKz9q9w+XX#16_V&PElY7^H92D}}|T1h(wASH9I~cH|qLEZ{ldy`M3n(|8k6k7>_oi|GtI zIQ~AhrB(CCsAnePKK!R@mN9U)w40>zsxtn5bb!t)(lmPZb^F@LLUwd7fc2)(WqFul z4cvocB{nPb^-O+D+P+ZKJg;eSeDx|mJi%Ut)a%rtxXR%M-wZCT8Q#YN%7`!&oU?^q z-3_hGxdaoC!;W5GR7Zo+8!G1qSTu&`u@n!vvzQDc{cK5 z;Ul}UF7nqWWla%DLH6&|VFq_S4imEz6%AIPC_%3+q@}&xTpJl0?XXVJTmRH|kb{My zYe{YeGbpx1XoJDSvIM3e-ibHuos(|?wz&R^xHw0t1Z6c!s{jd1LkDng%gL?1To4!| z7ab!{qTUd5dAbW87M|`Uge3*0l3bNjo#-T&KAnsA5WAaPl!@>6C~u2~O@&%j=KMw) z%EF!lc{V0a?c(ui@$NdDH?DMpg(7;DGq_81W&@kEru`^onkAYli32j-u$!jq&Mt_b z2ePC0SuQ^#TW@p|G)HxMn@zg1MBg#>x=W?SUd#&!ioE}3-EpwNzE)|W`zauTxW zS1d%8-#R^2$HmungFGR+8>>Lqq?1&1sR4LH5ang~69&7Rwtu;15r)d)W8z_KG{^0A zZTx3eonAkE7i2W(58d>(-x+9);TMSAw}aKUZ@(z;L_fC(!>ZOh$H|1a3CwVmoYiEj zhcTF!fok}X>tJi4_g!m?=veLs1D4pdJe}vKdFt(@Ir*+^iVpAvsWh`v(8+Xpnnih@ zz1q-&TvW1v3eDGcCpJEpMDqGxZC#)G5vEZOv4=2jf;iq{!p-h|i|Oa5LW*>(>3!x4 zL_>0r!%K;hy$vR>@#B$PRyj-R9d|2X)X~IT~oqDRITSM`CU-w3Z_P>Zp`YwV0Y|JA*stz#rv_y zKLl__`CgHFP}$Joi%y<%-cs^xpFA-_IzY8QSBxE|p*f9UyWM`2?YrSpw&e`qlXR;h z>9`4f34Lb)oPjTs5q+V4ZNpL-YdXaZ-LA7BEHpJtE5z)-gA!-F4}6&c9xPwDKYV;g z+vGhU|DQb$DYl*i+uma>py-FnNq26cyUJF(D~HAd%O^ zGkU+Ya%1#Us%d9{J*sH;HQ+9kRv~J`iq7rHq=0=hbG@hd+*Ai~ZfCPT-2WfgiW~Ty zy29GJytA&M9gN%0+jH(LFk_=76$e*X!$2#`F3Hq8>BuChr>C4sOGpY5qw;1EE*_ph z1*>#}Ct;i?ld5V>U!tq0$HWJcx~)fs;hMTV|6(rqTA`&5*T|ww^3`VNR49!f_mQK3 z#SJ5pY2y{jhmBe)X0!5msUm~)3R^bh43~e@3O1Ai7$$G;{|rNms%|)1C($1ps&$D9 zC$G5HIsesJ*RVSvha3n?_+!{ zXK~5xbILLTwA+D<%yogNucgg~R{2sYGW|;Up0C(|k%#?S%ra}J#$Of5d`yOb;Ep=4!{TVdb!ex0YuAY(}aNM|k=6vo% zV>k*@QB%Wi-NIWKqmJ5cZPHf+*dw**sRCeM`r_!5ZTF;S3Ra>D8iyRUz~D_O6IeDl zwmd!r#2&#vT0X?}mqe1Qoz9(xt>M_`bkIR6=nVi7s zH9ji{`F8lH-JL@YSb!LH|4BilpJ-w+wP?+h2lwqruTg_euR8VT-pCByO&8eqnkwSQ zL|f40(4(nmAk{N>kF1Poaaycv`f8Ewyi{ZFcR46>_bjHzbRH!-&Ry%6FMxFeZ_4{D@@Pq2k+$CC^)uH|S$oBmsDR;HW zV@LGKuT8ESygQDT06w^*w?SZ|$n1`Xedg8d-uyskuX88;E~|!NYF#cD%ceS3iZ7W3v+!5=NfG+0rQM5eqXTT_U;ic>i9Ldfmp(NEIB zKM7!P^QwK4`$O2?$gh8~05-5J?o%aAP9_j(W_A)gsh3FMDJ2(Rh3SU{9`bxvT3zi~ zNHAfoOCDV*;f?h~V^7Oc*Qaz)kQjujWHUoaMJL0~>ldFaNSSjeIemC3gdqlJEoZ%- z)!dbYALq`ig|Vz|?HJ`JRJL5ox8(M?T08`bRQil@%K4&GkCXM%Rm*0kDO4%h+Vxl{ zob(E&hCz;g2bg4yqwH6F6?iT0M)$PPgj>nnr}KVn9C636!wvkLXmi1E*8zg-IMtze zMaz*Y@x(H4@?3*Y7l^abQ_JPYV-t zP_U95lQ#JSs~w8BZHb3@PudD_pw+kfBcbD`rYm3rZ3KSemYURW9p-+Yo zwB@G`%Aey;c`g_-(dW!DJzNQrHl`G8`Rq}#hgiWz6bpY{gE~8<_yeE@h!0cPz7X<8 zvzzVfpgNW>)pEQ@0yJ*$&8BS}(>3TxpRTBJOEM-(SEaqF) zk3xlDL(!YAW6_3S35Lp77+EP!7Xq#uI`iDEBBNiP$x}CpP+xl1<{c$B^%x!JXXDwn zHZGj-9xC?gp>X{2k&1@jx)tm%>I+nfX~Kd%>CL{tHVrb=k;8pYs@|AlJ!|JQ)}D+7 zA-ZyL8akg?`RM`SSyIw{x`lue=a!IxO-UIL{zVu2?Vz>?AEh#LbV#J)qB5Gq3qq66 z%8@Izuh&PuIrKTjw7sMH2lmlf4u>BsZ;z2)ueE(jnmTThYnN1pYHD#vZ9=>h08geCBWo6? z1tF7s-^XSgP-ltidm%VN3XGj&OQnSHI!rNie8*~kCS)+xKo7AqE9K5_`>bU_P-!%^ zZpx7_&D~S!_KmHv1t}Ic9&RTk8+$F0(M(YbzHCj#s?LB0`Pwp7Mo6v1qsxgY_3u)a zodgl5)gtpFbyPI46*02@nYpE$y+t$eA}3y6a}5r2m18c$p>o0tpS}mc@+bnkw^7;j zF6(Wk)hu+9n&-0F$LyGyu9QZ#6xY%(S!><7`gq0^WTTM92X&8AvMt{s&d@6 zkogs?@FXErAILv-mLg1!LmYO6)6sGazi1fp-HuHgD7ZtuG+=dn#Y$@;0)fk7N)->? z%n-A4WpiyJo0MjP-uwXl?Cz6TLpz4v9;qJ{*Al!K9!z%>U(nrtvKItOrpwZ3hET-;%nM-hN!+IY6>3?!qG03kR{>>4PoS0?4}zn^)M zpbe~8;}#MYLblLi$amA}-r?_74_tTX33>4E0E$+N2XsvCH-KVIK2=+1DY+w~7AV02 zn=nPXmFo%9apDk$ojXq@}<@Mc-jo8<72NCPKmC4Xx!L%E3(^8uZjIJ)Twpx znEHr`i%Xxa^Cu~EBcy^ub8MBa&RA1wUH*0{O?QO9D3Q&CqV1off!)JP7F}{nTJQH? z@c7WyTs_t71N{{#LY;>8JXf8i=|+RWhVC8_+z#j{-Xf8RE3(A)kx=5*GJIhBuZorY zZ)usK?(S~LR#WTA)${SNwf{KVYw8DthD)D9_eSbf@z~>D;jMooQbb|xub3%mcc5<}k0 zVfZZ(L$|prkYd1dh2X?EAL~_H^ZM{i;T?NZw`+BUdZUah$vrZ8!W4p%H4pAU=K_}I zcz#D?$83948d)otX@GWaZ@=AzU(zs)8Q`fDY|HLwafMn~EK)U8aP6yG8hgI@TmZOV zyc5)f1&vJoEIQ^3-7u}mn<8=d{F;4BH>PK0g{CIKupX__ZKGJCI+-)DxW6w=U;ORw z&xosaX_w!oqWO6z9s{sqZi3Jc&bVfLv71c3+^Y?@igX$|RmS^S-l}~D!|1}3-M04| z!55xcJ{98acnT36MDH@M)LJL-c*gOmsXD9|ioyVI@{CS{)Z0Jv*-JFGw#wYi9+@Y_ zaUhwu^rfrR$V~qqzzKbrFTU(V+6l&#(^~&t^TjM3q`<*?70B4^UwUzAW1>gZp)8Ne z*C;2*>vWO*3;-^1a(23LFM29j687ekr-6A8>GH)nTiV*A=?B#VA2Lst+ak(#@-^ih z9xxp^`8*Hij_eWEE^I?^C+KC`Mj)iuttp^ z4I=zaBedqK4e<^tMg(ei*$pcL7z$f9^q!oV;mp_r_L3bjcXUu^^v!U4nc+~NDxQz3 z_rY@9+pKp?CDJ?i^!MCFMubgsw*qE3G#{*l%_Y4e+Y!)4SAqTN*>mUYeOh*DH3qcF z(3d#v+|YRp$z+rRKwA_Fzkl(sTK4xPQQ$G+iiGnOOaK5H_D)Z@woL z3oQGpQ3^64Wp=)Dy*T=%U8w;E$FkBLI?or51zz^y&VvLTH+-&L-mLg?le1fbQ{i>v z!+RFm2yFXJZa+eQlt`?9-y)`*^oN!X}?R?J}&m-j$~}Bij~Nc6plJXnf%KY)(I6+|By`WACk^;^?}5-xz@qBn<%q z1V|e9;K8kNcZc9^je8OTG!oo3xVw8uaBJKpI5h4Kr^xfZ@AvI<#vW(i?3;6TT`)$| zbW^oz)ml@2^FQtVVBHs~^V~Q=b0N}t@&=o&dQeYX%MX~pWXU?U*W098f$I5T3w{!m z`4C9SqfLBa1`YI}d?C3_Nds{;)W<7M5*x{mpwe>+k)3CgLb^9D0etROiMu{s5IdE%jQp^}=xBnL@bMt@7Q>hsgsyG5W-;bNPs|b~EmH`?I86=W5&$Detzjv7QLuyWE*=xrq}|EAsKAET7V3 zD*0)Vs6c5J`^5#h=8@Hs$i3k;TM%x z^G8xqy-2o6cf!|7g2N2wKtmJb_4OF5j*phyMg_Al`J9$2sS>kqBQGYqD;h2DqCeI~ z6j$OjGdoeZH7kqP6YW!XG@Y@{8lYFM87QmGP^g(n=!MfTi(bpAn0`!ap*kOT`exZ+ zz^j5#Gdkt(R-tU_Er0sO@j8^q{90Rqjsf|3H1>`0Y0CRn)`9YIHLvpcSX&g)Yb%vq z*0j`U({B53y4HL4wxshLLH$)@J&E|KvTAyV#>Q=j@&mh{NM*fbZ4?s2rn9dx+>M>z zePfw>( z)gsT^&vVXN%=V4vG8@`9S;O$dUw0qV_J}iG`&Vlk3=zQGXX0eW6RM$&E{~Oo3#Yj^ zoWuy;{Hp69LOa2q25`k(sx;5Gbt{XCdV!7_iQ}a z<#bv_rb_>*tQW&kL~~2B1@Grcf+smS6*l)8HmH4GCwj<2jCgo$7FC*uU9IM<$-uog zZzNT049+y(e4n-`V&6KTIu=sjUup|I^)wk$wmBGyYPfFIM!O5sNEmM;8u(^`99t^W zZ=yGL`@8?P!Oz%7K7>Yu^+*eKERu`nTHjDRm_{<|YjJEv~zde=>ih}*L!(zf#uU~%@#-0se0IH4E(*Y*g~V)Ni{ z-;`}?I7cP7kB5O`VwjUFS4x64dFXWiBZo(uXqs&O#lW)2a(W^j^HD(=os%%TK&L|} zpnVa|6b1`PJsyk=BAA*c4)_HR1dxbxcKfeV8e7$xs)__JMceC~g6By^XkON9ulYNr zUQL$UZzPLDyuM72(yc*VZ^p}C_3nr-dx{sxpXIAjJ)ZF8MU;U+#-=457E*D)et(pM ztp35EWh@>_^n1lYCqt4TSv*LbvP6Ofim2{xN zB}5rXiOiFRI34Y1xdVlgK%;=SBOfxS&RJ;UZZaXsux=}o3C(o^XD$T{{R$JMHUHBT zfEd4@kHZ2Zm&rOTfU5N?{gqfvj(DLQ-V6H|L&W~$KX5Wl9 ziLpeuk$^zFvh3q5C8GXuUEeDyzK0oTxCtX9NC%pq+%pb3#lc{lI0rjglWlFXv2LB% zpi>PC4?$dA6Jtq^#JN5z_9XhZ$;p>v+T9kefg5v=hC;ahnGX*3X%dz%ay$dN*7a1a zuxydPYJit-OnYBu7-?%7U!Y8e5j*cvT?!y12JDfOBqloCvSaj#FQ4-#;HmZ21|BaW zS3(@y`4?&x0$ym*C0)o^jGvzGmCjY9D&3p?I`tKYtTPJV-CA%9Pzq928aClphOMxq zp(ospa32D;@|l;x8CApbPm>QbtznnQFc@y@=59^M0Dpu580oIUa+wLVf~G@9$UAQw z`#Y$$W4TmiQ9eWmQ^K~5UuoGzgM2TaOCK8qN;vOh8X13&MxWhl5(6oyY&dhzHOg2*){w-8M>HV?Q#sq;eR^r2Ses&UaKb%S5K1+gk3U%Rwd+$6m zOyS}O9GtX)wY(2&kL904Lf^m>#G&JX3mD9`2OX0(om|e>laNVnihiHbeAg}Vz0Gn+ z0(d?jx#$4@>>!SK^h^37?cok;xmZ&~?q$1M|EK3k{^c@!>Z!bguRy#B-1=MWJNN|G zc4g;`lq7Bd#+m6Q$GO?so0#3;f3Xjf0Ch+orMclJK<^{wvXi zUE&*eg|%lc<%3BH?Qu}mBm11aJ@3f`Aka-0Io|r_JYzORH*l$x!5Dai;ij@Np|9yv z-0v#3M;yQgJgu^t!+DRtF>^;!NeVuMiEr{V=#fmYu8Cr>{oUFO_t#WoKRgHo zH)f&JWIuA^X!O?(2rzbwQvp$KI^4J_%J(xHGM1$WnGLw|n^T=Wrc-av!q;hJC0ZRx z`EYwDwRWg?JG60AP}%xJ-!Tk&al~beRE+tJl{(l*n6+{oBow>P|h{QM$ri#lrUH7ARHL2{Fn$ne=)4tB-Mt9;O)q^V)_nDx&CW=m( zlwapEKXN@S4JmKCm_rnQE-bo9S=`SjBp4EV{CM%v1Z;%%u%wGrCehQ%?t_Yl09e`c^O-t)!B^kbjOefup$^v}%H8dyA*V_1Uad=CZ4K*-1R(7`<66Ay z=K}H`$shZOs$YTTgXnFB?Z2iruPbSQ!8Mq)B9B4o{?ieu{pbnEUgs74htq3n9ZliM zyzp|x56cpEo2C09i%R_GH{b1o?7!W0QZz^no^v=%Qjx1~Q}fgFie^+@6ZE zy8x}Ayu2JM+JN~PYt)1}=!TfYQmkR$Brs}ox;(pI37=jMHpcIg>$~J|TUsho(@2SI zWgauc4_jhtA`U!G#rzEhfjB&5ykxG|<-909BBVf|6%3sYPmOngGyL=oeys6yv+A`( z?)lZPqe5+iAVb)ugq_*P?v)-+E7m(^psLxwo8V7W)IQ6Yan;*Xf5pq2QJ4omD8kjJ z>DPkUJNxM^CwR@=k2>%<mKoTrk(3$H9A8$*iC)VyNCKJ2UF!Y!#| z%xmi{l<19D8{NECJY2wZEwiN=7kEi`|FXwz8b-gM+5Db0E zrvWc-!>IX{TP<61R#gVj>*bq905ZGWpG0FfE{P+RuKZvgPW zYRc=x`^{Kc_Sp%0x;5t)8Bs2^4I~jhaS7!~Ixc+~2|B&lW}Wy0kmT_dXhfomO2HtRFPre)$Ow7vOP%};3n=^w z!Iy;ZHi`3F804j~naR1%3ucMw^^$L{jsh8d-oP>amp`q$x zuvYAC@C7u6!BAQF$9f2vCN&GMqe~Ae&ol)dHX6J6`S?-{LUM=t94XtF-z)T$!|WaBN;Ivv zmbG)U5vnwPOzT&M<>E2unU**4?# z33jN6wNFv{KInY(n;EUwX?mM2jkU%TUef{lup@N&(|auuWoB_%x5qELoX~*vHhL{O zjuf16*;sDP_u35TF7Lnu1_y6oSKDywgskMkPA+&I+(a#<3&-HT)P(%up6{HVS7@r` zeyTi?iplM2n!xI5YU)s|dFv{bAMJDGgvCpd(LfuNO~;I_k7psljV+! zM>aLcR!p)!didWgfZ^uR5H%_kFPF_kl%sKQ3I?;0gEvo|7=8`aFK=o*lO2j3vy9hL z3;DIKksOu7{q{63lz{E*(ooGB0%7HM5!PrjFV!fRe4T2^pgg!2fnf2x+7cyZuzFE> z`3MBUVa6|hg=HBl_o0-h=faEO0SB5ue_u+saF!!hBG<$}l zTOyG72r=2m!uOt>i+Rez7;@7$;<; z=$y6c6DTjsayyA2kYH>jO-wvQ(NiV5_0ccF7J+ZXHpASdet&xZBc=1EzSlsO{2|~l z04k|ng&##nFBYvg&z^~VO3I)3XBjx+iJ*D~(!emorQI3E9;s=Mgr+tY9g(hH2aai` z4SiP$bn3Q<8FT}DG0WY802E(M z)s#LFp#wV|el)Kw=7^EOXyprSA9F7;-WSR8rU=zf0(`PEu^q+7d_IgN74@&jcPkxa z`Y9+FZDovp{p8K7>D%J&dlhl<8!}47qSx7pd2;1V3Eo~EkZ?mfPRo$>7f*IcK&JHW zVpX$Va_T=f4*`7f!{j24B|gAJ0^xf|qewW?of521;AEC*goIQ*GGxg0GE~bsW@s9u zW=z=a8i1Tq7|Uj7McL|X4-@V{)-y3Kp9PH5lt8M;;4Zc*U;oTEP7F#)8m7y;RtqAd zCi%DWOkJx0+_=5yrN(!R1PFb~)fHSL*d=*nAvWK5%kN~v_3Z@pt6nQ51FM|_*OWEV z%e1wUnVod+{t^trZi^@`oKA}BhV#<)m0F+Al7z4T#`1%Da4_Cd;WJx|DJgY7O&%IH%-lL>lx*Sn zG*Q$f734JiMCwJWNoQlbAGEZHL z00L)yxaw%*frePJyjDf-f_pUw100Jdr>EBE3RcA&TR(wyz-hXvd@V8J)8$&)+g_PY zEY}7ivATIKCN-;&5h3tk-ULHwh7G4j0<Y=>$h_1wUl{rjRyG>H;GF9pR~ae-2+RK_f>tjU(~L|7pOfHyq$I2HsBk_ z9R^q2ml1&gK(RAL}Yso z^AOyTLEoCN4)aVv!?F)Ctlq95EwP>ki+DoCkUdB11X{`1);RcU7M_$6-rFPK@>Wrr z3#Ot!_T^1B0><^6lfFZk_jQ#^2^DT|2Qu*`9mcbf7`Dr~CT8;Gi0KOKCb~rl*iuP> z5xLtg9+-=G#AR1d%VRa@28eB1b#>FD{tZ3weXMRr+Sx^xh*HsV9suE@Tx z?~EdcEp@fbg^hK@>T+Ix6J>GXdewj*c!PC7OnZ6+KAuK8rEtvG5NRhq6^nZ&C@z-! zRx(;7Q{9?gg?dP$=vIi89_5!JtDT~RvXTcaa9L_wenBKdv_5hZoH}P$PxMsOH!>s# zQqLMqNf=)Kf*w(p%6J!36!gJWwGX=H?ks_`7GF(VbjvD|3qgQ{zO&c!=ZVtO>h&KF z|I8bw;!SXkI@!1W!F)xL*0RMQ^QApCSqI%j*^fE6!+?+4nNP`$SBV>E7*fyGN0!wS>UrWk=pZl~~Ep zNsblND07?>M^haOxWX>sFT*2$?5a)SYo{gW&7+4^?@+cbs};e0@hpFP&Bs%`9^IV*M$5HiNz=9RI@jJw0G1>0XfknUhP*pAjcq4XXG^ zp#dM1lo7c%uWeknWmcU~o|{q%lQ%&IY+&oPI1@EnWSaiH%NnnX`Wzr;KA_|dnot{k zOj-M;%o3B)C~ShK--q;@tOfa}T^hOFUVgeIH65pK{i$`%OjC*la~X>{Ty@YiG2XF) zXD$dOYA-gQSN@G96MX%-refP((U;1QAs=je%c`zh!7byhkmxj*`d?jKttYWaMA5Pn zg$mENR}}}?&VgapIAhJ|Q`CXwefvAe_pHkdv>|kvU(B3#bdiD4WL;9>g1VpTM_OPO zX}Y4v3nDMq%t_|ZSOuyESc)`kd*VvF<`6ZVa zaJ>BMnP+3m;Y7>FzkZAVVKto|=tajO?ZcRARvKQrIoh%BH$qDC<6QlI7a`a6WWi8X zb*r^)r)CC@oFR8C)Nh!t$&nH4wD9`KlhrP7v+REWAMt~BV_;HBaSxdJeGhAlCi`@vZw|D!Y zE}k4*ksM0bD#@V^1m`$SE^jJE;-c=yISjV;yj{A_4N;|@?0zh*%-3pT8Z^3)+7BdA zLINWy>TDTa-fKCGmQ?>jZjFk44&`Qjf;&V!q4ayM!QeH!1m1RC>fp6fxL_lW7* zxAs>)lIurXKNY@X_e@dX0pqQ)A2A-3x(0J$kHNO#QV<#D?{sF0z>BQh=(9Mw=G>R- znIi#h*i^r6B&zh(b^W+~pBMctq{#2On?I=+=koLIEY_rJX4jd z60{(XIg;_jQ^icR^@64{yYYN9Sz9~V>=dE2`ivKsBCXXlcb}@bN*VIjB7oUN$9Iy{ zQ;3WE2PD~TW!>b}ioPXP$B%w54KAhS9?Utu~!ve zfqw33#)(hpI@d17&{uQ1%f4?bw9l(tF_G8(6 zz<=KRVGbOPn1Un?HP?^W=NIqJY9E-N?pN}Av$m}wC66Ad)bR@dPeGoa_T%bs+8?-3 zq%k32ZYq{c?PU(3_y4;o4e*Uz|AizydbIgpYCVr0{doEx6(4{P!uXH6&;R+*zhsX7 zGY|re>L8`o!{x-r`SXOccxey7>aIPZhJS7TS6rcv_n%oz@OQ8Uv|O1-7w1Rerwukm zIQ?`e(|FT6!9ddwXQlKqPBG-a_qojb@90+N17QYxavNHKB7BK&@2ds;l)vnn zvR_R7{q{%fz?~*CF}80K+hRYow`vS~ev%#T#mZq40SzmRm{aP`S#KfUS~NsF1QTsW zQ|}^5H!dfgqIiOl`1d#@>Q9P^N82I-)07N$-%J7GwTO+t2;UK8{05m@QayOKu8nL# zTz-A2*p*Zu0gn(^lltJCLR9);I6l7WFG~3lUXS;7#oc3p`3>50VY&UGgikvf4u(E> z@EC>*e_8xZ;+5poidPCt{)`7^r)yJPG4tzuC_pY_-=nsOcD{Ap*QfPw1pg;>&5n#^ z!&dY5N+68trcLwqxaz!pCxJWJ*rHy2J5*`r4bXvAVH(w41-PWa6LwcWRop{=o2dMI z-@tmYX|8PLb?ClkE!t}pZds-J49%yzp@`*tRbds1DaC=cpt$_YK0{&LOI`g<_5_U3 z3m_3;sbc;TZqUXe+$@>-BaZOpf))$Ns#R2rgq|%woc2?Urb<<@=kWlCmzUS9*K2N( zWh)K-q~T3xlEE6m5;Ons8}dKACdLiD`)>!?9OSOJa)%3poxUMezpigbN)koArYpUb zs7HeHjT@QB@zj>*L+!&f*oOJwUsW>zGuYC515{b=dEfF`GyF$?(#cL4V!z97a`ZH+ z#QhJoM{uoVyLKSFJs7t;5fG^2dThXQ)LW)ulp9C z8ml1R{5FcQg%!}AHH!9IK>AO&#u)PpRIjMu)LJv0nf?PuuF_N+H%S(iEyGh?Wha{w z`BCvk!`)@`0h-a!$@==`@2@zEy~bTMnwSP?YE`+v;-|{APKPkojsqxzvSrcfuw)c! z{S%sWH4{oV)}^b*m1%;Nkzc~R+8Vz*@hBUWoSdfy21EXB_!>nTnLHV0|J5J=Iy4@*5AN*^Za7loG~1$K6mEwwaHYd=g3%mE%!FmoCjAPVPU!sTHhg%<=exB--!9m3LkMs!eUB5cD%qR*<82< zt4PbCUPwiFH?-(L=qeyV365oR9uT|d^cKnL$2wF*f7p~Mx*83pe&5QFU6ao(ECRHI-e<80JScT`_%@pHPCX+q`9YQAa;EI_vO5ltT9-Z@n} zp{L_*BaAOX3`A(1XsyZ6gsnyC^@g1kDaCjJhFY>kDZj>Xd`XP5ZRA}uG(*4`Z}=oS zx%=Okjq!KZOW$p0rf$DA%V_-XsyE*Cc}jN)JMVWXV~-TPC`H0|&N9)HnW-{cuYIu? z#{K{fu!JH`uP2UEA20L#@JvcIzddidwAZj+iCM~jK%2c+qBVo6C%t0{tEb~-5i7je z@so8XaitO~lyCMdWH$Od-Jt^Y``=XDO=xcSlOt+2`7#Sw9Q=YrXNmeAo7dh(p<{9m zrvYx$7BwyCw+uOSJkFEvHbvVlM|gDHup0V4n|PB@FB#M(_xEHRLyVa$c z3Q2Wc^B<4TmozG44KHpG99JyxRF}yuekk6BzC~r% z%hTG}prr2|j!g_r@o3}7*V)5_)));^D6_`~Fsqre+d-SG%fSlFWKObrrLS z(;kMM!YP4{GNCc3ZSG5fg&4J05T=f0;nth>J@q{H*y$H*3SH|#H0ZV5(FDkGch4n6Z$zyuvw&544K)!PB(#Cib*Ae%yvu>XWWdDVcHRp$lv$6@x zr(~Dqh1&sdY4+=kJ-udfflp$;EBJqOK-rnEL4_^WpV}GNsP`!?Q1j6ko2y#Yyn_=*^;l)2c&v{z{cQ^3%ff#>a3T*&_V;gc|oDJtkYm5L;W)Z zLow;eznB;j%Gr)-{)eFVuIo_#kpoJGqYL&EchQRWhUkl%|Z;h)lzZg zIpnCjS=r8Fc+4WX)G#PZTYEHry$^BRb{om`_;#C^4ggAi=l$7x#x4H4I4m|%xf|yP zknTK-yS0~Ysr+VY!R_|g>f>47Z&3gWsK+hbjZkrY1Gutp=k(XIaWpGeZ~-1BJW{fl z;V$ZbS$#|+b!Znu_W)u4%_uZK^6krf89{P{i)$*+Tp{d1aq--IA|9J z@c;Cm*-ib}0mQeDQCt#AQItv!+V%|~?a8N{QaE$XCY%=MLJqGZ{|j+ZdQQH}Vj1E< z>KvxA;83j%QFk-V1I683K}yiX;EAsF}R{H+PP703epuxc(Dq zF`>QDW)cou6b7Sf$*;;+4+83{fOGqyP0|0S8^OWko^nvf6dQ zpzsKGrjQ6&-aC`Z=^}M`t$f^*f@xKYXQ+Omz_FuLES3I(gTq zORbDjsZKws77`aJhbwLG@;)NWN|+FnlA&2emG=X}huFVKq}IOio&;mtqfgO@UY|4F zKLQOe<2BF6mR|y7Le)<_XBi#}gXHvJTT5y$2w;G*6$KbAiaja>zowP>iO%ODoGnFk52vFor}Q`EAw#(?9HA#*JXD0+Fs)l zriFirn%iW+#>&6Y6`hnsfnCQwt#pUONngP5SOwG(oDB6*^Ivpv&-?EY14uk#%e!yL z8bNZ+Ne<4*_b9IA4iU22`4qN9Pp`nAR*Q!%;^M_eMX_xh5uV)S(jG^ z(`@7;xpi6f26PYqPQJH00Gbm*TJ^d@%}Bg(yGl8AKu%k`D8DA?(BZb%(YtEKD>Feu zkA*SXOG`4wmSXs7V!U^aprpoBPnkI8Y240Q<`cl3`M z5Bf7Ke$F@M7BfO7cha`-C8=Oqhz|R`fyol9=#QsApM!q4_?Q3?NZ7uS4B0U!Bk$BJ zTN&*J9Z&|1k&;8&$+>#xikUA$gLXGG7g{2&gP-Q1Y=6~3c?=j#@pq=7Vj+#_b58hZ z&wuN=OC$StmbO>Ywi6$Urmkae6w*TL*)Y(gJt+T?*~+pBfYoQp>$b% z)L-a!=W9Dn1-P*cH+V*he|uYxOsG`e?h4xQ0}YJENOXGF7J)#o!J!I+*QjOGOe@^P z-`^LewWVUY8|q^191H7)y0a(rNN~h@+PEzh2)nn_FOU%4komuIxdz>flM^3o1{XV+ zdHr+-cuE}{gS2{Jo@+ei_^^m?#l+;jM-*iks#ktRvKn;h$%SjzLg_LD^STP%@-ew6 z$h8ddT2IxpxHS5oVj?hU>GN1`oD{0L<9ctL!0s!rXM*2C$vXMU>wrEk=X7bv$!MSs zue5>OJ(=XG(c8g*&Dkg0$B95!4%k%71SR=rXYz%!$zcm=+|&LJr}KW$*8=@2qp(p(mqcC0u!1$ zE@IcF7XfHm=B}czp1qF>SwKUQbub~tN$v0jCfeJBbjBL*^wY<)FM&NpxsGG+N`nl% zt&HM=J7oa44ZsbLVEai)xoDc#XU2&@&px`$1)Y0?!H0LQ`%8#aJRk)7Ej*sMn%P)~ zGi0ALmt-}z6dJ-Tb%OAO7fF=RmYQ*RM2CHdQ|+|+Z+wS_WqoRA{HnRI8Y%!^zP&_1 z(@G6j200^O&!41Mx1OD#Ch z(MtX0>M(TX6ZjG6tcP4Y>q%BN%JTvmYWD>&3A#N~S~x|WYc->RDBwD;;v37mP9B4V zhDxBE1@Cu-1*X`UhoM@w+c=BE(wI9Ys3tB#Un6$jvO3Mty_AuzwU<2SqdzS5S>csI zl5^iV<}Okj>Ji06i1B`{l2mcn#NUk=HND@ts$w&0kItj{OPG6withUAe3r*gD#T+aEd{% zKUXOA9A7hqd}idjq~e%C)CLoPI3^1Ec%rsj`Wdog=M-sH7&sLW2__l+k;$;>>~bmL z_*5WUx+$UQ@VF({d@CR-?wU;Vrk9NpD`NUOrEtUe6elf8%1ise+Jc6O;0Pt`ZZ4dJ zjH%tb*_nmqC+T%*NcKZ6UM>VtIk%B8+`4qNmMms)w2Z`%2GRK+XvMoT| zo%^DBv*h@~q50ztS51Vr+;p6As zJW*kS8rO{Mx4w>TreE)s9Ga7!GfIeX576Q@A>(;!Z847o0T}Ja%=2t>CMorE#=i34 zs4p+sZD=C2lB=4VdAm?jx(wW0c2j;3!OEHX#MQ~b6|&?)U79u`6(;$fT^Z;Nm2SHj zs#`HJpm5rmu(fD4R2BH5PRftjCcS)QOTUI_r1ox$Hi4|&QH$-&YziDGQl1dd_?TT0 zsu0SlSta_$$^I+~0#W`miq3G>j1@Kyn6ieXa~4^hJgyK_XNn8cf*$4@VW8(Q)c1NK z&SLQ$%q zC{y`Cy){u-{`SA|ih`~+lv@Q`^EY(Qsz&4a)inC^$?#%5&bfY_#@;BbQ{V?Cf08RJY=O4D;_ zXE2=xp^g1~CoL)wr|X?$?Z-ugCNvDlS-N?v$_y8;7%rSgIa1X%?e_IN#E|wq)V$;m zxb;{$D~^q=ZUjpAU4WaqkQ}Y{;hq{{1Z#JTbF*7^>EBqy)$Q_3>jdx?Vt9|c)ZKv; z4=AF%OS$ngTU7!MpKG1VG6)1>Az1TKbc-MPhIg1Z7Tjebl17jM^mOU+z2E_X@UPv= zKSBw6QK2GDJjw%5=lo@NT3ofHH%#7gy{~bvK}JE=W6*z344_ZYBlgH~3SRbLnL8~* zl%JA+eZUZ3Uk^f8F{bs1#G#NbwefF!h}g~oMsNO<0_rKn$*+JVCJLv%zEYZ&>k0fi zX#wnH5;8uFlu#1uKZN78@HI|geqFeH(8flh5pl9M)i&Gt^3~XdBkpH+#g0vNtI0$* z?*65_3@Hm7)?oD|``cmxnfEMlFP-ZdsF+T-;uOuhnaW_z(F@x!O;X7K~SXVGp%CloKg;;9VTCEEw*9ZHmg1o5>&jYKW`)nJ)!i-N|1{Xd)F$|&Lx!at+tdIrPpp$YHJG!DB<37P8s4S`S`ODo|uay-?xK{X*)th zNprUs-74_&)f$naRI1siLoc~OAoOP=m<1+V#pIoQ_$RlU+iYRa?h6%})Ng{KCK(Lp zsOGskP)XhrztH6zb`U83Ol7pr_cq#a?J1iI^VFs4#h-)jIUiI1JFd;fI0eo&{x)Z8K#eU&kJlH_A! z(R9D7eKZ+($hgh|flU0Qx3vxi6wgfdiv_xur4)KinK~Hzk@$A^-4f7r-k#6*iZ4<@ zTPTJt`MkpzY3*W2j*Xd}Ef=zydf%2gT&s}^b{euo3{Q2JW?XEG!-daxO79}($>x#{ zJ#n?8Ga5KdceXVtiGHZiBHf)`yx4f#Dg*%t2br5?_QJC@R!yG!q^;H+s3)k8FNynb z@2v;V2cP-i?0}P1<9-)ch>bZK>(KF@8(85TxI%NX_72}FeJArW$bgT$lq1FMgPuZv zT2*g{r`y}gJ_M)Xx-I;eF{)g7H<{j~OQbc09Ng(ymv+ge%T5#faCC65@okP2w6!(RW)@!%6rU+<6;SF^Gv7OWEJ0(akrioD;oWkc zHnrh0B>5)7#B($meeK@uGX`PIU@`S-Tg=|Dh)6IT2myad$^N@ZjTLb832I%eC)r+I zUDaGuIY-WLT5@4RMSf=titdrJxluoG5^A>7nWI|;PNWMc=~0?5)UU@8^R)jVC0uO` zmDX@?$9aXxuX$b;1WLwf>BQ!*A-*N@qx{w>tz{MaJ~M6c37xBzzk9MsGKU5?*k$$m zms~_(44c*%v@Z$31142_V{~xOo8-%VBWF`wXmkhpzemGY%<<77m+p8cgIUMg!%b>i z-CHBkkK55E=c>k6*RsEaq#`HzeB%}XxSdV2r`gKWy!w|O+cS-{aUPe&IS5tx?@s-E zI467~^UG+mNNNfEe}#nD6B<*bSsyY2$AxN_X-Ne>-?>ZL;^7}Cwrut#0KU#d z6eiagrv4^B%am?zYYRzG{p0sN*)rJy`s;@j6(1q9lgqg`)pZ-P>~s@Z`@aBO3}m=1OY7dAlO*-+GdI!KCsogCY2Oz2cyijbm36 zShTs#L*i!B?|z`n{E{4yAMX6iLu69ln^#gG_h(3Ah35*AS!dQgA( zky*s~vkA)(a~|^}98Tfa^nu^pwtgczVr|fW_Z|FHh>s~Vcsma?!dBni zcsiV|&6kFjvc`&6P4bsCV5}(gLCRq0bmvQKn!0#o^pI!#oRdxoRGA6PZl2GFB)>Dj zh*xIEfTIY7cXykiO|#tdz7N5Lg^c@pJa0<>Qq7l8Ew{)T3|YVWQpAwCmgfR3=I|{x zZH^!GGBzU6aqRei0tZ#-6YeAF_)@IQR=1b*E=*Q^eaQO&e83b@nCiqv-1Y3?ET-7s zeEQp{qKc)syE*|2RO<8-iFWUpLHKPGzmZw5`5?VZIt#+4=IFy49OZW{N_4+ zo@RaipilxZ1%3}5bOgkxUn>j8OuOzdDZKBC_ZVjRM?c1y0;n6;c*vydP->U&@`(?H z{S$QyO#XjC2~Ho*cj@0W!E&!=S`|3QJM|4Gl~;KB>=^&isWxJ5Jl9T{ygeU2h*y zDNT=OId3mX_*71XokmNr6m@!RE@6S9bSP*0`AK4!4l!XxeAY;@=>xrx;ELGg#f8}PW?dlw&>ZczKHZZYN&m4Vcac%UBD658WY%=09mGDp)y=^^j~;%7@%IK zxv_{pzvnxLo03eMNJ-}N!WF3eE?I}lUU7BhZE#J1aK{u^vGA-2sCO!x&M4P#d9IbC z5_k{iI&*qEcumG3fXMf+erZsbWW`Pc(aab()p$OjQad2WvIM?q@+|KphR`X2R+B7k&*>X8 zTTM+$O%Kkm-|~N&=6hM4{A$!WhUi2Ct?;mBjB9KhZAx58A+nZu5FK1w>D`m{(a~{C zxM~7i)WMd0m(V7CZ~&*npuD=b()lk`K&rO$=2z2fM)O(FTGJKz95m!f{gYk*E8ykQ-mHd}%KDin*sddUQkt zGVPXYyrX-1%mUPcUBCene`2pSK^ynmT0q3lJU^h;lCbimP_Cus7ji%VK+%H|A(yf}YLFxi+iJK8Sz zId$h)RkUu+OxgG;>F&H(f4RItuOwu-lyuJ6`;5mE1m4b0@2?&gg1`-gdt5~ z0hr6L47dT;A*mdIVay%%=*V{FH1Agem6@JHHpKU~#szpw*f|S_9vWcgmJPHyX@-X@ zebw;iQzHz<%pVdDZy#E;*f3ku9adb^Xxb)-o&kjnTu04O9bmFR$QDSpZ$Hef?oUHAvx9zPm6}s)y|(h6yx5uiu7j1aS+0Zbb#eM*YkMDgbmLe$8sqh4d2Z&ZaH9G%Z-9YIR~$bYj{?Cd4-XLEo1kJ5)%_2Vs9IqG!)Ku9Vjd_4+f zvZ#XJDb$mvrS3#6w1M2K7fLIex!BdRa*H5n95H!Y-(uu^DAl59JZ?Ae1|^p;DsyXo zucv{se;J-JT93KRuoETGY8LTq2ubozY3N`Qt03C+=g*gH038eDB1pg8yF*hTzBQ5s zou19P&s&(0e0W?e03C}#$=bldw<5Y?lp8^(8W<;R;rRx8Trq@81u`Y0Mv|p#!d)?_ z+y5{L=->Yvli=D08Z6~k;iIEeBy`lc(wMOFrDpo-p5Cu$2>)-o9xVM$uY1Sb`pssm zJ8sjxsVeE{7{*Z+>0GlyoOq%q#TC+7Q&SXzO=IrM(fvi78)~|7&^7NppP(2c)bn3i zttVO+*@Q=s;1>*)XnPs!|bYlkn%9T zcnt#W?vE$NqI_a8BBlf??ng@5L8#n32JgX=5co1tanAu(DO@k87x@~u0QzlKI_QonCy>Xiu<&=u`94K3J zb)Rb~bk97Ts+$#uL|-yR7tBSwftx>VdAT$PJlYKdP+xa|Hu_!SP`*=~knjYA&uf}8 zP^`mXQpt$8)2GIq|5d?X))pJ7NNqe{s!Gq>FToVnZWzKeN!{6`XBg^Ofq@})-;FXI zL^e0xz54!CxgQjuT-|$@+F!8um|Mp(WyFyapmDM0I`l_aviAm4nvG5 z{4(n#%vbeP<45DiYXB8;*wG%o1sX*@bRz#4` zVf73)Mz+moa1jv>q+ZC(z#?_n!axSXtTP{Y#4$j!=XN&2Xd5O6KL_>YK zi<+v0ES=|;{j=>w^T!a&{P=h8fw(6!@_7LTGv-Vdn7OT#Wt>G9VP;Wk$NiCt z+`aq%YVW(ln(F#3eN{j~Ktw>Pud#rk2}o~>p-69`H&J?%4hbPDB27S4dXwG>9q9tn zJ4g$JP^5(30||jSc)#z?H}#pB|L#0@{{_i;lAL|^*=O&y)^9CT`ISYT;V;Vl)=+Gk zxqqkOOi^^OQZF!IIvs~isBV6Hx9G>EIYx`#!CY>MxKLt9Bc7>6R=Q=QOWCamFhfz3 zG9S|*PKrsi&+in;9DItY9alb~r@ozRU$k53fn9PWt-2I=9I9mb9I#m^USD=mLMZYa z-i5{@_5>&aIv%LzVWAfsUZDCQaD$HFC*X9!K-E_$e04Asvl*fTJbh#%U!P%T8Um|a zi>O%7F7tJMqJFtTe)~qQGG)|ri=NEu@feDp-%nm?2fJzKs?ub-U99t>%$t^T$f?_K zh5d*!vfW@bstaVSnPsi{^f#GTDdAJNsnRDJF{QVcxj+55!VJ84)pFZ6E{cD+lj%4n z>P&Wb5M~WnbBG!_G#bVh;27+>k3Ck((5lOJ0CawS*^f z#|8J(l#Wi^7B%*$imhY~&Nu2H91SMrke-an9R>hy@1mtO;EKmfmU*IbZIYAw)Ln3H zXY$dGEGqxh&Uv!4K+t+N?CwT1-9u zehIzH?@d6@B$(9f`}*(hY3f1HL^$nMck_#>n7`yIpN&){?V)n)W5}n#q|<6C!Q&+8@R-28HB zCYFUaTn)%m?o$irH(*XQu0tvNiZZJ>ZQ+ug5XKj|d86zr8C+0jc?Mq`+FS|Gs#lgQ&vQ$|P zFa6dN=DuDp$h-B!Y%Ute%1YEFkYcITSJu$K$Z(DNAJwZH86H_T-J(j>hTJ2z;<7I# zr(yTIJocLQkC1$!VgcsF+xnWEr@b~??TRxSwx=pRKiB}9;N_7F&au=lJP}A?Z6J|} zh=3~O%^vF+FNhPB9F|!$zN1`**?pu0QaUN?tQ+G7vKO%Xo~*Wx$B!O@+<3%DMLB4z zrc+ijt-qdS3a*W}R(M^CZxVUE7~30arBT*ZT5Xib+TdF3=}6xu?Bn3P{}mV*F6$K; zLvG(Ph~ZT+v|rMFTFYMygg&21HeIgN>;L^DM~ESyZ*RxjND?_5;E9XEr21C+4dll> zNGi_LeQ`H1|B%Nt*2Ec8koii#H$8cX|A_O;r88+m|7PSkhAi9go z&%7P){uRe@w%q^3pnhn6^Lr``P~gzQ>WccD3dRShjb%&YG! z+PDYWP@Ojo_q>odDm@_STR1Ux)*4FnR=K=MSxYfFH(UHB<6 z{PKR~Q=z-gKwwER``s$2h|DQwVgdrY)N}U){!NkPG=qAgEAqfU#zg;V#+{8Y?vq=^ zWH)7Mh6VyK^H=pv+a3;~NY_)ZG3gnv+bv3w{}4Qud>J5nPhQz6z|!rc&d2Ph>%$4} z3N&H-QT0j2@BN~Ea)p4toM&f)?B$chpp{&zxWO-~ZVysKSm_laE*ihrwI-pLDYL0o zGm@BD_F47z8Sda8MhG?IRCQHYx{@2;I;{D3|5d0jbK2k2H&eP_Uw)?NoTjPN_O7uB z*GgsS(lmX-aTiziT}SG!DAAM}1d4ZPV54B>{c{nP^y@k{LrC+wOUuO%=nSnG>Kpo3 znUxuIh4EYxJ}qge>u3uo4Lm?7e#LO(oyH+Tte?yrHH?0?xhll@HBo~miLEOvc$BG8 zmQ9KW^!b?MZ1~3VlX%&YuEHxi<7s-hEs6EwMgzSae_4GWJx!NLa^)VNOnb%FZNEK^ zDvO4dLkkM+yO&NsH|txC0k=`?3>p`yDH6uSnRyTg9$4V!TeS4qUNM4Snm}yQL7}5H z5S|_`E5H9m zw%3;5p)cV!b-L?$Rw$CFEgtdg<^Z0K^zQ7wRM(YxnANQ$Z(_`V_k^3Lo#6idXfZdf zJY?GZgA{T7EeBx(1nO$^?uZY$(0;069@t6(>x{o>-4(4x^ZndQKPt8XEwAg9q9X_a zuAXy|xY?_T!JPq7{ra_*Cl}(Ap{0|KRk2AaLXAJFb=)=FN1i#$LpB4)Mn=HMjDn5U zir~( zdp{FaoWen0V?z~~l%H>3T%xJ;0e)KCIXpcV5u>jxxuvr&@mfU3si?O15~8B84D~B8 zH(PrQ0ZaQGkRK>m4!dJz9&I`%ZwJ!?5;3y!`F?ntH(4hpj7c-1nlYYcM4phFFMHQ? z1X7s<^ibnfdtnH6n)dke`f z0vl{?tk>+K-pwvUSS+7lQ9_X!~^8atoZiiPN@gX^B!F9HDQa- z+XbOBq^%~ewEyHS68bb!^O(%ouBf&SXOHtibZ&%_ZP|mNgn@l<;AUuNK6fOlXWlXb zxBqNGT99`CWo{!V^RKDDoNV}xU|IRMfq+{~^cPW9nttBYmTl=eAV6cx)9oHVX#T1O zpZYWF13!^11e*BCj7pF|W_(92P(=f|sXQcF&@zsyX0%Z?^#6e+o0={xwt8 z#awY9TvVB=+RME4N!>nK0kf$ux?Pq5Vm_udjkfw5J6lBW2#KK!&Jx{hVR}FLkTjlK~bYoIFgNw>unOfvI08 z;5`-+&BT0?*x=tlQ#8ACxx;I@%67XfZzpyXI3=nJzH}j#Mw4IHXQAJFRn{{qDg^X5 z!B4{Pa|(1x-+18|T0KLfuJ`;+|AT$6ZHFRb&&&z-Dr-dA_^YKkg39ehu3*YrccN?b zr6Uw8ohSG>2lz??6ZW4@9{U}L-&V1!H1S6)Q16b*p-U9D5@!}2)V@amS#bB*YV5w! zBUr<1yOM?2$E{Ur_V?E?O1)efUmI=@Y z4>upDDe3F#Zt;9r5VJ{dP5vR@(|c?;&Pjh0$WaZtw#kspK?9S|Y#yp`LF|o6ha9lm z;fSV?qyYK=0_74`5fQ57U)D1tvMsqcGa4xS65-MTRK7?{+vpkZa!MyM(v^w`3klxr zdAvEY`P{u`RrYFD)zi`=4^En^lHh_>wc;k`qM5iz&jvRm4g;C535^vsJG?$-K%PQX zjWl{Y&!P0YmVV<=-*aI1>Vp;)7MHFv*Bc#x?~z+$1$)nLEIDwwI`AlEl3NUe@OO2{ zunszVndV5;%$Eix@okhEI&LR|pIum5*f9s9My-?F6<8WptxrqaOag<{`>W6ceF zS8Mq^c#&74PSYhlstIJsyN|X3c!_lnFbB<{=)w&nmzs9>V>G-B(T{~h{1qWTz4(}s z11n~(sr)_&43IP9OpUl*psmj<+8(>MGkMS7+LmvWFCGdf-P6zM5hQF?K7?LnN5TDT2-oGdn2$@QK`Q5l;QJ0Y73 z(3sZXr@u#_wp`nWK%S zN4_!|>XNjLxClyXONHIH1iFp2ac;OFP)jZ3Uud2RA>DWz!oEYdd8jPqgR8Uw28ahz7tGwvXT>;TwTR1)`V`YcA- zI-xkT(mTSLOm5epjnMd96hVs@Y=XBFzq9D*(Pq;xe=zq$54+1P>W#@U-+nf-Xg=E_ zx2bnFOvYjC^or}T^$8-5I1Q}JZ6Brc77fnsHsKycR4BeU%gSx8thf_c(^;du1w}bA<}t0xdw$C z2UNa@z%geQo?f!ZRoCCAg3ujz&B0g_U6jrXoil^=wp^c>VGZX1?(2yKQZ?>axJvZf zyFSRpb`uZRmL<=Vmbg)~kDABL)(N_YHtdE zU*C%4Gd)zv@u5GTOc`#S>BQb7Iuvzl?D&a{;f-`s=l7F#d?KnvR0M?RX^`|Ps~U1i z&GA|T*?Ptbn4SkHHU2fzyay?^XHg;Mi6*dgYnMHCUSWB>?>kvS1}f6(zRv&Jt!nZ|$=^GWb#C=Zftk!q9L4eqA&r0yPXuR>MwWY~Uvy8)KH%1S6l{AJ~fy z!=iSDH7c9TLoah05jK@}Nij=ULdOS~v3c)(f94egQt&Ql{+bz;u6mlL&O`XD(WCVh z73H#lA=V}-M!&jB+;h;0oeQ?|<6#IW7EDQskHD((!(j#l!PI+};}4i(6Z9f{rh{T6 zl8iJWApPwU$nIqz?6r1-gOu0g-jpk<2%Dkqv(;f$|H#wi7Og*B)a@gc8s2~%+fSR9 zaz(qhj1baqa;OJ&C|aKB*UkoID{2&q2;R(wCLQxW1kJm_uzTd3#)Qq@k0cW-EU9s5 zKy*iMuWg^d0Wj&o0l_g-@k2Ncl2>a(pzJn|w$3rywB{;vLOJS@@2 zd%c9Sv~gVG8CnyS(Tv-Yc2G6Pzcxy|K7`9OkG6ZYrCOZ3^hJC_RXGPl ztatkR@P|foXH;YSvENB@O!gKcV2dE#VVrO;mLM#0Xo&sJXdTK=Xow88A9vybGqa{p zZ8l5poSdk3?zwfY?kA0IN^lY{vwX00&- zARzMl>k{^PyPGk>Rn&~^Md-)UH-k@0U#7zA)+ckhdLsyW#_rQ*W>!2rkb$CQ(`z$5 z9>59PicI^M830YQqoI9cb|E7#lupT7msU$lDLln=L!rZ;FI_LGuTq)C;C6LtQ1F+nho-|x#nd%1E?IC77hL;mh#TQcCb1zMDeBhLa)SIFgY}lVaiM&WVagu2n7l@kX>}L`I70R)p zyoVdKK@UIiN9_cF)_sY)&}Hn2Uc z+bUr@xcnjAJy1LV9ANhq{{hWBP$hczwx|73{Z!h<$Tu-Gsnr!qik(UNu~{y0BAZQV z57PF+Yt=3!63raKig_wR0F37?gO_A%?MA0l#tp5%zA=}RWbR!=Z@jRg$d%(`;4n)O zoVenkQNJ${_N5|pLj6FoK$;gd%>~Vfrq>hc% zv9D~Tt0rz(R&G@DlDOsLNdZ42*a@3?#M~#;!IZinux3c^ll$qG&y>tBU9d3gpWRSu zMEp2x%<&6@x>n$?RpGDMpGlhc%693SJ}xWUw#0L_(Vq%)EhuA&ru{}`>0$hK?&jBW zP6c94J?|yq$@N%5gOjbLMZ^vxcgD`Tf`JFh+Ny8QmP}!xS6QUjF|FzC@3E#k9pr7k z0<33WZ*Krhdr7#G)x`@I){cMDR3Yu5N z=x!D6h?Rr`34?ANM$rd+z3{$2yb;0J`cB*QVCKXvj=%{8QPI zPXLrEHB&(rGzY2OQf|LHojLw-_L`&X>+8-O@5CRkAO7W7cXl#xc7i=4nP0rvgV^oj zgpgf$b|UlbhSpnU2pO1;As3?i=N}{8^+T;Va`*o~JMsU0Y^+~x>*zYdoG{i82517+ zPNfF5&W@Or^C4A2lL}e>HcYoiaTJ~Inw91qR=!Xv91iXz33k|-BJfuB=SJRT8f3m$C*xiN8`itx} zk4E(L{=4(91+evL#7pn8HjE5kobn&=GR?CV7g|*C#BDvJf9z6UxX}cg?Z%0%AZa;Y zp8coX*(iGY9N>syN=Pu@U_H7MpK89AytHTZUUc=Z8T9dx!EV>#SJ-D(Vs5!->7YcU zCS)lLmv||;4{#~76u;43X!?=7k+F?t30zWtGg5MAr&BF`M>bh!pL z8na!o=y21tO5Nbf7(u%9^bdQ+MQypP9BR^2=*UXRV9NA#Z3HAx0_UyUBNQygC+`kb zXViL;E0b>7G00uszv$vIX{v9%1Vp|g_bz{Ei3;i5Uevz7Ph{At6L_H3nt!ADY?TT# zVGtS8%T&b6H1A7ST657{BTE;6SV7NZ6a#`^aUvo%6Bh>thV?N{XVP~;mV5ge_m*@$ zH@)upjNJi!4)>Ha3g1|f z&p_cZJShDk6l#<6VPH}o!v4|YJNf4i=2{|S#KY(vtjPY4N9P+z;&^>9SI5PS>SbL| zK7pYvJ;*(dra?EtGFab9X3WZ^ZWq`r8ziTwG;c%h?RqvX=K{qvvhItz987-FWfayu zV0_IikdiFUY*OTef4n-rdJ))J8ddSG8^RD8-yIi7-=0CnzC;u@+8q7v_kVsNU&(KB z6fe(HlZH;KqAab_o}iXwWH@FqbutRmawTgVPehVB80fmr(3stJF<`t=XuY)x720Z= zUT0Go2n+7>l(|(Sos+*hy|J==KUNI_88-JoW0M8Alyxms3O$)DVQ`6RgzU<%fpP$D zpS%@d^H7}jSL$ais-4#`XkFFrbT(@H%R_H7~8;8B_6rdy^MvC?=- zRo?1sd>qxPnS3H6#q8;zN(#9=NAO!PCNzZFM~UN`5tZhb!wO| zzP*9cYz&DNViBIBy4Jl-$_oml;jD49__ikA_WXvks-ZgnVyNR-%27A9invZd@9gxa z7&*EvpBH;slnbys8Bb%w%z^UhnaU#7hl(XeV4*DiZ9Q{&#hSntPiY3nCKH)nznv>R z^xwh`R}UJsJoktt`?qEdO4hG7x0IV?{@Uf%SV1X1eEKj{OUB_?c1pt8v-g{Gx+R+k z5Yv*UN^e|v`QJ{vI+qzSL&v}((UjNY)zIeNplP;Z_v>h``YIg*L_UiU96C+Xt-SL) zgtnqMett647@U4F`j&-R(|6ZFoJhx{B`eKcV&IfJ`S z_xyo1(-~u=Ln*8i>-pwQWT zzjQm3)HsnngO%l@IerTA8{fzXU+%@9_esa5bG=KxE{Q->4MSPV{^qs=3a+bgMef!$CF?1tCbl!FHRi2NDaq3QPhm*m| zcg3|+MxwBDiSJ#(YD+^pI-JCd?^iynoPoCj-AB2+o~bS4UzoV;)Z+x4 zcal~BrG?|Vo;6h@gCuYhjD#Xr@o)Q-7s_Pm872gQu?_ViVA0X*2lZ7wLGK#cy;|08 z&~-)lu@$VFXw|c6ga!Lx!lK0a9S)mcbBsSwdj24m@vQ3)pj}zCalcjWP$V`+Bw5|1 z>{md=*wC+4dm%IDt*k1MqQQ;*2L*#3+G|cYFY$11+ffcTzO6CvWc+Q?JK4FJX=26< zR|k0x6k$r-_s)@=xdqH)kHs#QPVeXN?ao{f$*!Vwr6|x^e~0eha!mgY}x>CSDLpmzHk=bLJqf zF~KYb z=|SMbVoL&Y+Ef&<@NjQV3FxW1&M+YXT%BJ5+A^<@XZ?Oa(VCC~?S<}ee z^XN8RRoLjBZ{b;PaAz-(H#}mq3vN`wFrr^az8T8ZxSi9}PVso+pkm&o^eFWMf82j3 zV`x1pO$jD_O1ay2W=M%oP_`=1k_*abbo)xV7%tl)VI^dwKiK+#K0LH@m^HJ9d^?u& z$=(?|&I^c-{${$(%f=*EN@21MSJ` z(l+%ISyk2yRodmnQr+?T?R9VJfH%sbw;13Ci`sN>xT78Wz$ z^jz113LxTjj!o1d5LQLjwz|8?6ba~=+hN!dz75MmGrx6Gf9%;X0QfUWRt3#7*9(in zl!1#X>V+P%6(1ZTDH!(zJ=dzAo80aWv`YeX3j{~E*^&5AKV_Lyb%$jQSRtP$h$w`L z*)kj*em?@}VjMFyM^m!aKKB$!rhYX|ke5t_19NAPF1LXR&x+rgTLkH!IQ0qW=GZ(ymUj@5j8;Bn{R<+tUA z*ZF^l@eH)QLGK9wl$x{g0zwu*M{=nsnW>go9HC*B_z`=TME%X=UuL^$Lh3gwp*7?s zDbC=~hI?aHr3PlUj`q$tAIY0Yo-!<3TpV}rWmfK>pc@Pma=H~{&d6On-pRP15yYi^x z1}!|3uDo|yW=zQs3HjE9a6RY(d_M#aF$OE7;t`jl4*jb!0dI8=82qn|U!+W(ZXAd# zTKuQZAtC9H&fy`0*!OlgptG+%xc4O~Bqw$K@Wr=cVCcBxQaiqcik{?tI;!eGOaMkL ztQ(EZ1`iJ6$2=t`@uy;JE+wP8JKko_hY?xJ$)svGDkG+n|395MN%KgvJgw@&dRxq zr8$ZeOEA|i9Hrc(r>k4$(70_vxNzYH-E+uO-GHb`letJhZy@M5x#i$JamYRPk4Ko#`=LYaVPdDc>5s$?~m_d&Z>aYtT=&fJ$%tYD$RBGT*b zuFB*7GTI4kT)}1pN)Xg5kGo-R7J(Y0qTyLqsWP0O@Q#AE53M<_Dx0^B1?OOX6q)+jkqMq zkQ7`TE7KA}W?6DHnp|t~3jKt1Kp`--hqDz+(dJmB97pgtN4TAd7NPhL^W9@3FW2S# z^HF1z(Ng91<>?*7m%bSjCnhNraQFPop8%wM|D(pBTGGSCPB#6baj>p+GOR7ldq{k0 zO`x8`>9u$AxHe1Iy_dbEfx8QcEl&BLr_BblgQ2`*0W(9BCcg^-tyB(bZzOc_iJ8a2 zNnEG2G1qThDAYYLP)=}q&s#pmI>f7@UK{P3njUoMn2mli0VocHS*^_T&Oy&Y;=WuL z1(eFl`arI`5nNXoHoTu696YT8Wy8Q_vki3?ce9)jT5jM+9weZT2wOiXI9+n3{#Ub z6=F-bt2&vyjfjA((IwSL2d$&Oq3keke7aKMpaF!IGD8tFv@D(4?s3y!u&POTHjQmt!MFHH5# z`B-fvTPRmTgC+IDEk%EM_-_O$^QPE84-d+Ub(hF5^7^>Uq*dC%wo8GQhy0GUbu1PA z$6`WVSnR;B4>i(NdFbS5;6Q7E`Ja&f#o7`ak)}XI=a=Notk;#*l@49~xC+;Sc~wFc zutmf;QHbiVS|l2Cd(u#?jF~?KzDW^1#9w1{H~Pwgx2^N-&^O+-QBSQJwL{vC%Ur3_ z|CdLAJ_Z)XX?QC8VEM* zqufNMP7&Eu>iG}ee$h&qKKb|Vnz1_=$(u>-u-}L?mH9B{In50M;X2hal2#TBAn-!( z_64-#!`Kx629^+M5w3IMo{w|OHMV&vyrdFd!R@wdJ#DdPsfRD=XmAt}AYMiJH%GEW z--t3qlxZ!~@f|fhZR#$ZO04(4u_iq{jIRq8qu?YzVCZd%B;1TTc@^8>H0zxWM^Pc$ z2{REP!3J0J* zZ^{$AY$3ybCJ#shoSgWJ78v$Q*#R9c4#!;=C^I+So>VL>-R?D+O%5?Rt7lJMLriGYUGtUyQfNWm zMn=3;SWmpM%%Rt~ff?i{Y4HublGRFqW8QP3zYoGz@Gsr6Rr?KF_`Vog<1-21;w1R_>L24)nkhRIniYG@ptCd9pLt8srU>YI<5`1zBmsH$fq*PNCQuEC?<=xMk<$WbnYyG>ZLD2^Ue zJiiRQyprO>%MfuWR48O+{IBu(579W0gSFwmFBV`BGPhEKA^z9M)%gy0ZxGuaE*O}y z|K=oQl;`JXr$3v~j>)QznAXi}gXBy|#b%r%Um49pS#k_le+B|ACohk|+~Ubuk_dLY ztVtuQCx52R$nf_k5MZEMQ-#XsO>?U6?^is?21$iq%GTHhFdYIU-lv)siIDcaRL zVEb*w$C~z!Zk_#%?pl%k+&`d}`pGDg5KMV+xT_2nJh9G8K)M`b=@%oL?Q^d?@L7Q& zZ3+V}n=qW6LqO{p!crZ&>>NoR5p5*p=~^JCdz~R#m4gANg&($@(_4OyJR6Vd`~%Cm z9CNv}>Zt1Kz98gI7y`>&Q|DUj>!;)Z8D3(4`rxJ0Axzit$^Ss>>R8p(+1MYcR$det zh&?AD%k7^!Z-wZie%XVg6LH?RX^N#LUMAV|-uKqC`J|Lj2;|yy(Z^ZGCN`Q_#RyC> zJCs;N9V0oGl;dIWv-MTD^S$U}fWS2XLKy)5*2K5f^3$Kb;hK)*k&&gR>zK5tkn(o9 z2&g5fVF{s0=CHU-R@Bjui1uJCdD-DK`t+_J%`Zh=$Ut#Mj39Gp=^UjieU|F`+}yd7 z`~|ZG#(|w7iB4z!^HCTD3l5dD-(R;El{j>dvY#YRZ_$*7w9!}=_rh|%liN_PZVWxC zYt6=dHE@bJ{9!AYqkiPr+a0-)#!3a@V9+kLn9Ur~gT2aG_lEJ2W#Fmo3p=!`oFM^y zqG^o7L$khk?aWQ!t;h$bni)(z-sZ>F#m&ZnzaUM^E0)i5mfh|hcsPGIokVMQmp0=} zz;2TZCOjU$Mr5PFnL(IQY(C?;NLwMCmN>;0>Xi)s2RSRzq@3~86(M1&NuLoLg9s0r ze!E3qqezE6<&~C`N?qCmLK4v4fDVaZU9z>!SpP~OkriH@QBzvF7(S?~2l?qLBZz-2 z46`>Kxno2NQydAb(Khej*FYpkw72U^5E@m=?hU#x4>;}`|P&n zF8xA6Pi*xQ0C->|hI|)ZAoWaM`rmi!ReKI_q0d?XUR=k9mZ1*Kz{s-dk0N=gFTU}m z11xb@x6k6hxgnjOu!zp=RI?45P3=dprbqaOYNM*Rxjz^uHcVEl?pB8bWY!yd)f3`& zM_FV0T7rfJqCt>}(~hAuc{Nfm@t{l@)q9`Jb5+GWugK7fIcPaLB*PLxDMacoOQa|m z!7qL_DiT`S@UJs)B08y@Dc7hInMas^Mb<`A{(5uHqh5^uL#m3rKQA!;6|jzKj=}|56_uR$G>3n0FgxN z=%OGvwmBjyJ%=iYSTXEE*JG{eOSg<2Ix^mF4^>w+10YAeE8y2oVB zceLbG>YOw!ark$uf&W;H>Hh`U_y0_;{z3ws_@_N#`>#F#51#z<)i+l^b^pU?z~bUL xP57t90TA-P{dM6#5B<*`_|G2rkJLu~*6 literal 0 HcmV?d00001 diff --git "a/\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" "b/\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" new file mode 100644 index 0000000..cb7d0c3 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" @@ -0,0 +1,11 @@ +# 笔记 + +## class属性绑定 + +- 使用v-bind指令为class属性绑定数据时,可以将class属性值绑定为字符串、对象或数组 + +## style属性绑定 + +- 将style属性值绑定为对象<标签名 v-bind:style="{属性名:'属性值',}">..... + +- 将style属性值绑定为数组<标签名 v-bind:style="{样式名,}">..... \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/220260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" "b/\345\215\240\351\233\252\350\212\271/20260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" similarity index 100% rename from "\345\215\240\351\233\252\350\212\271/220260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" rename to "\345\215\240\351\233\252\350\212\271/20260422-\345\223\215\345\272\224\345\274\217\346\225\260\346\215\256\347\273\221\345\256\232.md" diff --git "a/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" "b/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" new file mode 100644 index 0000000..f189cbd --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" @@ -0,0 +1,19 @@ +# 笔记 + +## 事件处理指令 + + 事件处理器:方法事件处理器,内联事件处理器 + +## 事件监听与处理 + + <标签名 v-on:事件名="事件处理器">.... + <标签名 @事件名="事件处理器">....(简写) + +## DOM中常见的事件 + + click:单击事件,单击元素时触发 + dblclick:双击事件,双击元素时触发 + mousedown:按下鼠标任意按键时触发 + mouseup:释放鼠标任意按键时触发 + mousemove:鼠标在元素内移动时触发 + mouseout:鼠标移出元素时触发 \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" "b/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" new file mode 100644 index 0000000..b63f82e --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" @@ -0,0 +1,107 @@ +# 作业 + +## 代码 + + ```bash + + + + + + ``` + +## 效果图 + +![alt text](成绩查询.png) \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" "b/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" new file mode 100644 index 0000000..a76290a --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" @@ -0,0 +1,368 @@ +# 作业 + +```bash + + + + + +``` \ No newline at end of file -- Gitee From 2d57dd6060618a822dfaa36e648e846f4f9c872d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Wed, 6 May 2026 11:02:26 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...46\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" => "\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" (100%) diff --git "a/\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" "b/\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" similarity index 100% rename from "\345\215\240\351\233\252\350\212\271/0260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" rename to "\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" -- Gitee From 50496aeedfe140570a40631b6a8f5a81c229cd71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Mon, 11 May 2026 18:20:55 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...21\345\256\232\346\214\207\344\273\244.md" | 11 - ...50\345\215\225\345\244\204\347\220\206.md" | 19 - ...(\345\217\257\346\237\245\350\257\242).md" | 107 ----- ...42\351\244\220\347\263\273\347\273\237.md" | 368 ------------------ .../20260506-\347\273\203\344\271\240.md" | 327 ++++++++++++++++ .../20260507-\347\273\204\344\273\266.md" | 15 + ...22\345\222\214\346\217\222\346\247\275.md" | 88 +++++ 7 files changed, 430 insertions(+), 505 deletions(-) delete mode 100644 "\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" delete mode 100644 "\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" delete mode 100644 "\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" delete mode 100644 "\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260506-\347\273\203\344\271\240.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260507-\347\273\204\344\273\266.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260508-\347\273\204\344\273\266\344\274\240\351\200\222\345\222\214\346\217\222\346\247\275.md" diff --git "a/\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" "b/\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" deleted file mode 100644 index cb7d0c3..0000000 --- "a/\345\215\240\351\233\252\350\212\271/20260427-\345\261\236\346\200\247\347\273\221\345\256\232\346\214\207\344\273\244.md" +++ /dev/null @@ -1,11 +0,0 @@ -# 笔记 - -## class属性绑定 - -- 使用v-bind指令为class属性绑定数据时,可以将class属性值绑定为字符串、对象或数组 - -## style属性绑定 - -- 将style属性值绑定为对象<标签名 v-bind:style="{属性名:'属性值',}">..... - -- 将style属性值绑定为数组<标签名 v-bind:style="{样式名,}">..... \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" "b/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" deleted file mode 100644 index f189cbd..0000000 --- "a/\345\215\240\351\233\252\350\212\271/20260429-\344\272\213\344\273\266\347\273\221\345\256\232\344\270\216\350\241\250\345\215\225\345\244\204\347\220\206.md" +++ /dev/null @@ -1,19 +0,0 @@ -# 笔记 - -## 事件处理指令 - - 事件处理器:方法事件处理器,内联事件处理器 - -## 事件监听与处理 - - <标签名 v-on:事件名="事件处理器">.... - <标签名 @事件名="事件处理器">....(简写) - -## DOM中常见的事件 - - click:单击事件,单击元素时触发 - dblclick:双击事件,双击元素时触发 - mousedown:按下鼠标任意按键时触发 - mouseup:释放鼠标任意按键时触发 - mousemove:鼠标在元素内移动时触发 - mouseout:鼠标移出元素时触发 \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" "b/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" deleted file mode 100644 index b63f82e..0000000 --- "a/\345\215\240\351\233\252\350\212\271/20260430-Vue\345\255\246\347\224\237\350\241\250\346\240\274(\345\217\257\346\237\245\350\257\242).md" +++ /dev/null @@ -1,107 +0,0 @@ -# 作业 - -## 代码 - - ```bash - - - - - - ``` - -## 效果图 - -![alt text](成绩查询.png) \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" "b/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" deleted file mode 100644 index a76290a..0000000 --- "a/\345\215\240\351\233\252\350\212\271/20260430-\350\256\242\351\244\220\347\263\273\347\273\237.md" +++ /dev/null @@ -1,368 +0,0 @@ -# 作业 - -```bash - - - - - -``` \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260506-\347\273\203\344\271\240.md" "b/\345\215\240\351\233\252\350\212\271/20260506-\347\273\203\344\271\240.md" new file mode 100644 index 0000000..6de1b49 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260506-\347\273\203\344\271\240.md" @@ -0,0 +1,327 @@ +# 练习 + +```bash + + + +``` \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260507-\347\273\204\344\273\266.md" "b/\345\215\240\351\233\252\350\212\271/20260507-\347\273\204\344\273\266.md" new file mode 100644 index 0000000..c637011 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260507-\347\273\204\344\273\266.md" @@ -0,0 +1,15 @@ +# 笔记 + +- 组件的定义 + - 单文件组件,一个vue文件就是一个组件 + - 其中必须包含tempate标签 +- 组件的注册 + - 局部注册 + - 在某个指定的组件中注册,叫局部注册,局部注册的组件只能用在当前组件,而不无法用在其他组件中 + - 在组件式写法中,引入组件即可,注册可省略 + - 全局注册 + - 在main.js中注册,然后在全局的组件中都可以直接使用,即全局注册 + - 只要注册一次即可 +- 组件的使用 + - 帕斯卡使用方式`` + - 短线使用方式`` \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260508-\347\273\204\344\273\266\344\274\240\351\200\222\345\222\214\346\217\222\346\247\275.md" "b/\345\215\240\351\233\252\350\212\271/20260508-\347\273\204\344\273\266\344\274\240\351\200\222\345\222\214\346\217\222\346\247\275.md" new file mode 100644 index 0000000..05ddcab --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260508-\347\273\204\344\273\266\344\274\240\351\200\222\345\222\214\346\217\222\346\247\275.md" @@ -0,0 +1,88 @@ +# 笔记 + +父子数据传递 +父向子传递数据 -子组件中定义数据 -数组形式 +-const props=defineProps(['dd1','dd2']) -对象形式 +-const props=defineprops({dd1:数据类型,dd2:数据类型} -父组件中使用数据 -`<子组件名称 dd1="传入的数据或变量名称" dd2="传入的数据或变量名称">` + +插槽(Slot) +是子组件留给父组件的占位符。 +默认插槽:只有一个坑,父组件直接往里塞内容。 +具名插槽:有多个带名字的坑(如 ),父组件通过 #名字 精准投放内容。 +作用域插槽:子组件在坑里绑定了数据,父组件在填内容时可以直接使用这些数据(常用于列表自定义渲染) + +## 项目 + +二、条件渲染 4. v-else-if 多条件 + +``` + + + +``` + +5. 条件组合渲染 + +``` + + + +``` + +6. 权限管理系统界面 + +``` + + + +``` \ No newline at end of file -- Gitee From abdba5303bbe8fac73916645faae6a4d0317e78e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Sun, 17 May 2026 14:25:37 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...75\345\222\214\347\273\204\344\273\266.md" | 11 +++++ ...50\346\200\201\347\273\204\344\273\266.md" | 22 +++++++++ .../20260514-\350\267\257\347\224\261.md" | 25 ++++++++++ ...50\346\200\201\350\267\257\347\224\261.md" | 47 +++++++++++++++++++ 4 files changed, 105 insertions(+) create mode 100644 "\345\215\240\351\233\252\350\212\271/20260511-\346\217\222\346\247\275\345\222\214\347\273\204\344\273\266.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260513-\345\212\250\346\200\201\347\273\204\344\273\266.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260514-\350\267\257\347\224\261.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260515-\345\212\250\346\200\201\350\267\257\347\224\261.md" diff --git "a/\345\215\240\351\233\252\350\212\271/20260511-\346\217\222\346\247\275\345\222\214\347\273\204\344\273\266.md" "b/\345\215\240\351\233\252\350\212\271/20260511-\346\217\222\346\247\275\345\222\214\347\273\204\344\273\266.md" new file mode 100644 index 0000000..323ad03 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260511-\346\217\222\346\247\275\345\222\214\347\273\204\344\273\266.md" @@ -0,0 +1,11 @@ +# 笔记 +- 插槽的定义 + - 在父组件中将一些内容插入自定义组件开始和结束标签之间(即插槽内容),子组件将这个部分的内容放在指定的位置(插槽),这样一种做法叫插槽 +- 插槽的分类 + - 默认插槽 + - 在定义默认插槽时,其名称为default + - 具名插槽 + - 组件有多个插槽位置时,用具名插槽区分 + - 作用域插槽 + - 有时子组件需要将自己的数据传回给父组件的插槽内容使用 +- 使用slotdemo这个子组件时,并且将子组件开始和结束标签之间的内容(插槽内容),插入进名为(在子组件命名的名称)的插槽的那个位置 \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260513-\345\212\250\346\200\201\347\273\204\344\273\266.md" "b/\345\215\240\351\233\252\350\212\271/20260513-\345\212\250\346\200\201\347\273\204\344\273\266.md" new file mode 100644 index 0000000..c19366c --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260513-\345\212\250\346\200\201\347\273\204\344\273\266.md" @@ -0,0 +1,22 @@ +# 笔记 +## 动态组件 +- 动态组件最关键的代码`` +- 计算属性:`const currentComponent = computed(() => componentMap[currentTab.value])` +## 生命周期 +- 组件挂在前:`Vue.onBeforeMount(()=>{})` +- 组件挂在后:`Vue.onMounted(()=>{})` +## 路由 +- 一个对象对应一个路由(即每一条路由,就是一个配置对象) +- 普通路由:无子页面,单独一个路径对应一个页面 +- 嵌套路由:页面里包含子页面,父路由对象里用 children 包裹子路由对象 +- `routes:[ +{ + path:'/' + component:Home, +}, +{ + path:'/aboutme' + component:() => import(@/components/AboutMe.Vue), +} +]` +- 组件点位符会将路由匹配到的组件显示在`` \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260514-\350\267\257\347\224\261.md" "b/\345\215\240\351\233\252\350\212\271/20260514-\350\267\257\347\224\261.md" new file mode 100644 index 0000000..158c453 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260514-\350\267\257\347\224\261.md" @@ -0,0 +1,25 @@ +# 笔记 +- 安装路由的依赖:`yarn add vue-router` +## Vue Router 基础配置(三步) +### 第一步:创建路由配置文件 +**新建 `src/router/index.js`** +```// 4. 创建路由实例 +const router = createRouter({ + history: createWebHistory(), // HTML5 history模式(无#) + routes // 路由表 +}) +``` +### 第二步:入口文件挂载路由 +**修改 `src/main.js`** +``` +app.use(router) // 注册路由插件(核心步骤) +``` +### 第三步:页面中配置导航 + 路由出口 +**修改 `src/App.vue`** +``` + + +``` + +- | `` | 页面导航,阻止默认刷新 | 升级版``标签 | +- | `` | 路由占位符,渲染匹配组件 | 页面内容展示区域 | diff --git "a/\345\215\240\351\233\252\350\212\271/20260515-\345\212\250\346\200\201\350\267\257\347\224\261.md" "b/\345\215\240\351\233\252\350\212\271/20260515-\345\212\250\346\200\201\350\267\257\347\224\261.md" new file mode 100644 index 0000000..c25ef4e --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260515-\345\212\250\346\200\201\350\267\257\347\224\261.md" @@ -0,0 +1,47 @@ +# 笔记 + +## 动态路由它允许我们在路由路径中定义一个“占位符”,来匹配结构相同但参数不同的URL + +## 对于动态路由 + + ```bash + // src/router/index.js + const routes = [ + { + path: '/product/:id', // :id 就是动态参数,可以匹配 /product/1, /product/abc 等 + name: 'ProductDetail', // 推荐给路由命名,方便后续跳转 + component: () => import('@/views/ProductDetail.vue'), // 懒加载组件 + }, + // ... 其他路由 + ] + ``` + +## 用useRoute()获取URL中的参数来加载对应的数据 + +## 跳转到动态路由页面的两种方式 + +### 声明式导航 () + + - 在模板中使用 组件,通过 :to 属性绑定目标路径。 + +### 编程式导航 (useRouter()) + + - 在组件的脚本逻辑中,通过 useRouter() 钩子获取路由实例,调用 push 方法进行跳转。 + +## 我们还可以使用 ?key=value 格式的查询参数。它通常用于传递非必需的、过滤或排序相关的信息。 + +### 传递:在跳转时添加 query 属性。 + + ```bash + router.push({ + path: '/products', + query: { category: 'earphone', sort: 'price', page: 1 } + }) + ``` + +### 获取:通过 route.query 对象获取。 + + ```bash + const category = route.query.category // 'earphone' + const sort = route.query.sort // 'price' + ``` \ No newline at end of file -- Gitee From 23a935852dcc072b65c68a41af7994e0a8df6b05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Sun, 24 May 2026 16:02:27 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...14\345\245\227\350\267\257\347\224\261.md" | 11 ++++++ ...74\350\210\252\345\256\210\346\212\244.md" | 26 +++++++++++++ ...41\347\220\206\347\254\224\350\256\260.md" | 39 +++++++++++++++++++ ...05\346\213\246\346\210\252\345\231\250.md" | 32 +++++++++++++++ 4 files changed, 108 insertions(+) create mode 100644 "\345\215\240\351\233\252\350\212\271/20260518-\345\265\214\345\245\227\350\267\257\347\224\261.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260520-\345\257\274\350\210\252\345\256\210\346\212\244.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260521-\347\212\266\346\200\201\347\256\241\347\220\206\347\254\224\350\256\260.md" create mode 100644 "\345\215\240\351\233\252\350\212\271/20260522-\347\275\221\347\273\234\350\257\267\346\261\202Axios\344\270\216\350\257\267\346\261\202\345\260\201\350\243\205\346\213\246\346\210\252\345\231\250.md" diff --git "a/\345\215\240\351\233\252\350\212\271/20260518-\345\265\214\345\245\227\350\267\257\347\224\261.md" "b/\345\215\240\351\233\252\350\212\271/20260518-\345\265\214\345\245\227\350\267\257\347\224\261.md" new file mode 100644 index 0000000..75245cb --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260518-\345\265\214\345\245\227\350\267\257\347\224\261.md" @@ -0,0 +1,11 @@ +# 笔记 +- 用 children 配置子路由 +- 子路由 path 不加 /,自动拼接父路由 +- **父组件必须放 `` 作为子路由出口** +- 父路由组件(布局外壳) + - 必须包含:固定布局 + `` +- 子路由组件 + - 普通页面组件,会渲染到父组件的 `` 中。 +- redirect 实现默认页面 / 跳转 +- /:pathMatch(.*)* 做 404 兜底 +- 必须加``作为出口; \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260520-\345\257\274\350\210\252\345\256\210\346\212\244.md" "b/\345\215\240\351\233\252\350\212\271/20260520-\345\257\274\350\210\252\345\256\210\346\212\244.md" new file mode 100644 index 0000000..ab9407e --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260520-\345\257\274\350\210\252\345\256\210\346\212\244.md" @@ -0,0 +1,26 @@ +# 笔记 +- 全局前置守卫 +```// router/index.js +router.beforeEach((to, from) => { + // to:目标路由 + // from:来源路由 + return ture +}) +``` +- 五种用法 + - return true // 正常放行 + - return '/login' // 跳指定路径 + - return { name: 'Login' } // 跳命名路由 + - return false // 取消跳转,留在当前页 + - return { path: '/login', query: { redirect: to.fullPath } } +- 路由跳转触发顺序: + - beforeEach 全局前置 + - beforeEnter 路由独享 + - onBeforeRouteEnter 组件内进入 + - beforeResolve 全局解析 + - 路由正式跳转 + - afterEach 全局后置 +- 权限判断写beforeEach,页面标记用meta +- 未登录存redirect,登录成功原路返回 +- 跳转后操作统一写afterEach +- 懒加载()=>import优化首页加载速度 \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260521-\347\212\266\346\200\201\347\256\241\347\220\206\347\254\224\350\256\260.md" "b/\345\215\240\351\233\252\350\212\271/20260521-\347\212\266\346\200\201\347\256\241\347\220\206\347\254\224\350\256\260.md" new file mode 100644 index 0000000..ca37ba7 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260521-\347\212\266\346\200\201\347\256\241\347\220\206\347\254\224\350\256\260.md" @@ -0,0 +1,39 @@ +# 笔记 +- 跨组件共享数据 + - 父组件=>(Props)=>子组件 + - 子组件=>(Emit)=>父组件 +- 安装:`yarn add pinia` +- 全局注册(main.js) +``` +import { createPinia } from 'pinia' +app.use(createPinia()) +``` +- Pinia 的 Store 包含三大核心部分: + - state:ref/reactive,存储响应式共享数据 + - getters:computed,派生数据(计算属性,带缓存) + - actions:普通函数,修改 state 的方法,支持异步 +- 创建与使用 Store + - 目录:src/stores/xxx.js(按功能命名) + - 导出函数:useXxxStore(命名约定) +- 语法: +``` +export const useCartStore = defineStore('唯一标识', () => { + // 1. state:响应式数据,状态数据 + const items = ref([]) + // 2. getters:计算属性 + const totalCount = computed(()=>{}) + // 3. actions:修改数据的方法 + function addItem(){} + + return { items, totalCount, addItem } +}) +``` +- 组件中使用:在xxx.vue里面导入并获取 Store 实例 +``` +import { useCartStore } from '@/stores/cart' +const cartStore = useCartStore() +``` +1. 读取数据:直接使用属性 +2. 修改数据:调用 action 方法 +- Props/Emit 只适合父子通信,跨组件用Pinia +- 三大核心:state(数据)、getters(计算)、actions(方法) \ No newline at end of file diff --git "a/\345\215\240\351\233\252\350\212\271/20260522-\347\275\221\347\273\234\350\257\267\346\261\202Axios\344\270\216\350\257\267\346\261\202\345\260\201\350\243\205\346\213\246\346\210\252\345\231\250.md" "b/\345\215\240\351\233\252\350\212\271/20260522-\347\275\221\347\273\234\350\257\267\346\261\202Axios\344\270\216\350\257\267\346\261\202\345\260\201\350\243\205\346\213\246\346\210\252\345\231\250.md" new file mode 100644 index 0000000..f77fa79 --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260522-\347\275\221\347\273\234\350\257\267\346\261\202Axios\344\270\216\350\257\267\346\261\202\345\260\201\350\243\205\346\213\246\346\210\252\345\231\250.md" @@ -0,0 +1,32 @@ +# 笔记 +## axios的安装 +- `yarn add axios` +## axios的包装为request请求工具 +- 创建实例,统一配置地址 +- 引入axios +- `export const request-axios.create({baseUrl:'http://localhost:3000/api',timeout:1000})` +- 配置请求拦截器和响应拦截器 +``` +// 请求拦截 +request.interceptors.request.use(config => { + const token = localStorage.getItem('token') + token && (config.headers.Authorization = `Bearer ${token}`) + return config +}) +// 响应拦截 +request.interceptors.response.use( + res => res.data, + err => { + if(err.response?.status === 401) localStorage.removeItem('token') + return Promise.reject(err) + } +) +``` +## request请求工具的使用 +- 引入工具库 +- 搭配async/await处理请求状态 +- `await request.get('/products')` +## 要点区分 +- GET 传参:使用params配置项携带参数 +- POST 传参:直接传入请求体对象 +- 封装后直接拿到后端原始数据,无需额外取.data \ No newline at end of file -- Gitee From b1eccba85677c5360d48909ad1c4e4d39becdb03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A0=E9=9B=AA=E8=8A=B9?= <1508658027@qq.com> Date: Sun, 31 May 2026 21:51:42 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20260525-Mock\346\225\260\346\215\256" | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 "\345\215\240\351\233\252\350\212\271/20260525-Mock\346\225\260\346\215\256" diff --git "a/\345\215\240\351\233\252\350\212\271/20260525-Mock\346\225\260\346\215\256" "b/\345\215\240\351\233\252\350\212\271/20260525-Mock\346\225\260\346\215\256" new file mode 100644 index 0000000..0076abe --- /dev/null +++ "b/\345\215\240\351\233\252\350\212\271/20260525-Mock\346\225\260\346\215\256" @@ -0,0 +1,32 @@ +# 笔记 + +- 安装依赖:`yarn add vite-plugin-mock mockjs -D` +- MockJS 常用随机占位符 + - @cname 中文姓名 + - @integer(min,max) 区间整数 + - @float 小数 + - @phone/@email 手机号、邮箱 + - @date/@datetime 日期时间 + - @image 占位图片 + - @ctitle 中文标题 +- 核心模板语法 + - `'list|10'`:[] 生成 10 条数组数据 + - `'id|+1'`:1 数据自增 ID + - `'key|1'`:[数组] 随机选取数组一项 + - num|区间:0 生成区间随机数 +- 接口基础配置 + - url:请求地址 + - method:请求方式 get/post/put/delete + - response:接口返回逻辑 +- 数据常用操作 +1. 查询:find、filter 筛选 +2. 新增:push 追加数组 +3. 修改:下标替换更新数据 +4. 删除:splice 移除数组元素 +- 统一返回格式 +``` +{ + code:状态码, + message:提示信息, + data:业务数据 +} \ No newline at end of file -- Gitee