From a16d808d2d15277b76c16567ae1dc8d441de1292 Mon Sep 17 00:00:00 2001 From: YuanHuakk <1751826683@qq.com> Date: Fri, 22 Dec 2023 23:27:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=8B=A5=E5=B9=B2=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/images/home-tab-normal-bg.png | Bin 0 -> 127503 bytes assets/images/login/icon-no-shop-head.png | Bin 0 -> 33036 bytes lib/api/index.dart | 3 + lib/api/login.dart | 7 ++ lib/global.dart | 30 ++++++ lib/main.dart | 52 +++++----- lib/pages/layout/home/home_binding.dart | 10 ++ lib/pages/layout/home/home_logic.dart | 19 ++++ lib/pages/layout/home/home_state.dart | 5 + lib/pages/layout/home/home_view.dart | 92 +++++++++++++++++ lib/pages/layout/home/index.dart | 6 ++ lib/pages/layout/index.dart | 4 + lib/pages/layout/user/index.dart | 6 ++ lib/pages/layout/user/user_binding.dart | 10 ++ lib/pages/layout/user/user_logic.dart | 19 ++++ lib/pages/layout/user/user_state.dart | 5 + lib/pages/layout/user/user_view.dart | 30 ++++++ lib/pages/login/logic.dart | 62 +++++++++-- lib/pages/login/state.dart | 19 +++- lib/pages/login/view.dart | 119 ++++++++++++++++++++-- lib/pages/splash/splash_logic.dart | 3 +- lib/pages/tab/index.dart | 6 ++ lib/pages/tab/tab_binding.dart | 14 +++ lib/pages/tab/tab_logic.dart | 48 +++++++++ lib/pages/tab/tab_state.dart | 10 ++ lib/pages/tab/tab_view.dart | 89 ++++++++++++++++ lib/router/app_pages.dart | 11 +- lib/utils/request.dart | 85 ++++++++++++++++ lib/utils/tool.dart | 40 +++++++- lib/utils/utils.dart | 3 +- pubspec.lock | 40 ++++++++ pubspec.yaml | 5 +- 32 files changed, 801 insertions(+), 51 deletions(-) create mode 100644 assets/images/home-tab-normal-bg.png create mode 100644 assets/images/login/icon-no-shop-head.png create mode 100644 lib/api/index.dart create mode 100644 lib/api/login.dart create mode 100644 lib/pages/layout/home/home_binding.dart create mode 100644 lib/pages/layout/home/home_logic.dart create mode 100644 lib/pages/layout/home/home_state.dart create mode 100644 lib/pages/layout/home/home_view.dart create mode 100644 lib/pages/layout/home/index.dart create mode 100644 lib/pages/layout/index.dart create mode 100644 lib/pages/layout/user/index.dart create mode 100644 lib/pages/layout/user/user_binding.dart create mode 100644 lib/pages/layout/user/user_logic.dart create mode 100644 lib/pages/layout/user/user_state.dart create mode 100644 lib/pages/layout/user/user_view.dart create mode 100644 lib/pages/tab/index.dart create mode 100644 lib/pages/tab/tab_binding.dart create mode 100644 lib/pages/tab/tab_logic.dart create mode 100644 lib/pages/tab/tab_state.dart create mode 100644 lib/pages/tab/tab_view.dart create mode 100644 lib/utils/request.dart diff --git a/assets/images/home-tab-normal-bg.png b/assets/images/home-tab-normal-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..bb43aa834b499b89d42bf2988e6b5d1b418ab9cd GIT binary patch literal 127503 zcmZ6ybzGBS8#as$q9QF)A_CF^0@8x?20!a zb0xv2-fPmSGM;fRlv=bD53gH)zArMfJD6(KYQ+R& z$lchx2;xV?HuIL@|G2E-RM#$yGrtB#Ko>ouxOweEkMl2UgUT)@xb=Q`>ji$ewOeq? zou7(L^7Pe9GMbl}J_$cP#v4q?j1Y}?zm#AsR>s8 zkKlAmthQyUM zjwh{+-0^BtEg)XT^%wBm+S`)`wfBG+g+`J%wT(iPhU>xqzyWFeu}e8Ap*EJE^su?#%*wuT}5-)?vRYo zYH$DDfA`GUZv!yGP> z$TpmX3dRqVXQ78vI#z2+W@loImQz{_DVRpir=t5g;Y!)bwA4bobjZ+jKS`XOsrCYY zX|VJNhP0^c!gfcx4|rVVSx|8pEDtq_AU!-ew1nE84X2+<7;UJz5?Mb?M2boAD0VMejr~yg^v`Wo7_0ej=TvUd<73s5PQXo`n_LZR(e*45C zAb(~+Bay!MuzO$Kf$JxuJArdbKA9}diz|-6uR?59iIf&G|GK=o#mWoa&M$JPtskyGug=iUn$xwpe$ z?egTF%L1iYRgT?bw=+NU(R8+*<}9@m2XLIXmTW1 zDKLOpxNr9t_SWQjfE-jb!C==el0!oy>TKFYRm<=x!v4x+O6iFN?$u9yIYy;WSdB`U zc6vh~=!EcZ?Oyr;JtK*ye@la(BG3`n$FOFZ#2Bix-e-s(7deA=oOReCl;QW}Nj;E# zS~1PVvhsxk=$D1Qb*u9%U7V z=%+{8X}Ghq!^t)bY-Fi|ONXzh;SA0>dE4%N2p>0_+^Rp~6Vpq%328oJzT;I?6WSI={_+&(%z z52wz2bY%wEC)Ak4BQe~N(9Zsp2b**1zKw!@rfvmWU>6HlfN)zg&%0s&Y#(qW|tPoWc01(FS}msOq0w0njRYU1vKp6S;XA;X(<>MmcUN{ zCE+OoviVfsm+8Q2guvMOU;uC@Ki=Cn+!sT7Jk98Q78x$?35rkf6sV~`Hd~qI{Z^b< zy4@AO7OFsj^JM7w(KvNq10)TSV6mos)sjH{#~_LjUMU{kk0AK+TgZ`51FFU6U7$jL%Ucy2?(?XsFnE2OCZ@`YW1;OY;Vt> zhP9J#r4zFtvR@f4Q0-+C0=C$z34U@ps6p}@iJM@Gf^bTLZ%JKU`cGJwoZ#<>uxoU3 zk_HF>oyGgkfkT%fGogLZ`$d|gF~qs|`o=ZYzJd#WHy@sLfUezXjsB+RPu^~ zRHX%Cb7?+gTUN?)se1apezS4lw?1$vkx8uP5@hrMKJb0uMF1?{? z5w{>n5A*BCfGgfm>qyN=Pb2JXGe2ar^62aRnwPJ2;F8NvSP=FH9j`~avg^1gIXS z1i?}t)sLt~tBB)U0)B~emDE$-S>G9Lfj&hnE=+LriMjPk2*kc)9_gPzRA4DBCpgvF z>NjqvghG>9boiUsC%vJ$>^S%0Q_W#JPNov+w1lz4dUnjGYG%o#PLb=7-Way z?6K>veGRo(7R>mM&E?iHrg%2Oni-`_v)l1H<_zy5u5io(ECz~a>`Jq+Zj8uElbj$$ z>qV+>5WG<=#Orjo$NOniRR~1?qQJ50IzWyxN-w0XE;{<;C{F5#?)A2lK4sBeFAALKbCi&9$PQ&SL#58K> znLsj!gKY5nHjTkX<7?}HB2e$rRs;CF6$gh{C31p&%Gd30MjCX)Dr5!qZrBAvf93b_ zIKo8x5l(2%qSZraDY9bRE;3eowx- z4}75ZdTU7Q2UX~)9Byoyoa3m0lBP*@br9+N^C&4}{V*qaBWtCzAVzN0SSn& z;BTzH5ULY_jWPK*G}?%Rs7}3)wrWb6i#FAShso$iGBalzL2WCPnLZU4G4EfY-5!Ye zvXe8qd}~|nZ!+;{3wE*7%erh_Kb9v@8q(07g0K$4rl8vd762R$R399ke1=<{LPUk7 z`VZ$q&2TVn>DjbPea4KwEjq%7*Tw?r^A@JR)f0a>9 zoT|BiKebY?9-Z9@TptajHCNu%22=Thk!^Ys zHGIes%=igB&j?sB`+0oIWToEA9xotA=mth5h z$(`>Li;>&;i;;V{Jm(?A!N>#e*HEJ~3f$OA&LbgnwSbC-%%I2dSP9 z-?=k&J)B;k$D9na{hFYGLzs_TB{Z!?V`pV#JBZu#Co<=o_XCF%2G<|_- zJXfMY=$9`U1W;+p%)Ej@KY99`7IAw00N>P1_VE*gHN2^kDp~n6(YILy`}7d?yf295 ze?b|Gp}=Xs7O9g+AK+u9zVobW?_f4!>LR_<)zM7B`%X6daRcOxU24}Zw3(EPH? zKR=NL^;LN70C8dZn_F4LVpPbCLi2&v^qkzD!*qg|6uY4~!V+peWPf8bGBoBB%mw_F z>~!sFdON85CU~OFh_0!su|qpJZu0`|!stph&37Kn^qNdZlaa0DVU%J(JPQx9jay`S zlCG4g(&j+0Jh&RSbwXa@*F+)rV1&Gci-1%FQO;|_$I}^sgy2~xoI+3`1ne4L3q3x`Q*&TMVDIsyf(LLn|jI)kCw zYH-7En=pT6X zgXLHTjU82RNC1U@i{W$5yyXO8Cx54*MNB7O_xO4wICJDtTOgFDrR!59k0>5s+n#0L zAa6Z4H6?H^PwrtZqI#!U0!+LA^V}1L@+2>j;begi>bFo5wvw>_^-B8v3sFOF{$DA? z;<5-i!`t;)L1)kI{hK?}*Xv^Iq5B|rxo#fl}7tU(%ek}Btp z4MwVWzG9gQuNMK0N&gn>wvC@!k1d56b#UPRm{Qdw1w`v^9n7eS@i=F$+PJrDN%&(2Knh`kf-zEe9A)$9?Zz$M!yqNzBESiuIWQ@@KB)hfjVx zQ1_B}5186qHrL0pfV}NQE?n*}m*)_!AX6Glj+X3jVXAO8nOKjVyU>YtGH}9sjVvAN z68qm*$_B;v{yf24++z4IuqAJ=T?wzNt!0M)Ke&4a;EN<~!is7>G-*{eZ{Pz`NL1dElSS!%jt6=C#~Brhw2w|EXOd9Wa>nt z6~njXlq$$r!WifW2nj$^=2uP)?nTz$QXKJeQdikn$(gvn1GJF%yVTS?Az>U$!nmzOI)7kCh=~s%@-D1l-jw_#MYFwI@pG9l1;Zv)Rv^Kr3@3~wT z1(k!M=0H7niZhrUS5Kdv3bMh%Hkmj&s*~&-WWL+>YfE>1=v?~MxKTH*g~?k`t)-=@ z5v&}nmxqe#49~A`k8sonE2Foh`EyQ z@lv&Mi4Wx(zfwMBL0J8`pQ|^8+0gkb_CzWA1BXv#Y)Jw5%1G2(=}YR~>W!O$-aRH+ zx2xj2*HGj$D9&g2C<*OxV*$=w$f~$^)g`6?yL+@*>5M5vmpNq8BnLB?X*Hg0h5T?1 zn)pSG0nZ2g z<)#gVyqtc`_x{qQnGwM>rZRI4b1#yQY?dp;(&~MW~Yrv z?Y`>*Wm}@nK{1-JLcf!Hl(5=Y5OrkNS=#JTZ1TEhrXOF&ym@j5fdy!~HKPrD7|VN!Ll2-*5;w zuW;N^oRJ~u!uF5j8|kge`m5m1F_%EGU+XQ^W^~iml{1%v-(#J@@C&{XZG7LBe?!|7 zC(H(ipYeUWEPByDd+1<7gxUXFS;Kr~7J`Xqvk5mM9N_1T)+&MqGk>)rQ2m&t=Jgko z1cCth=;pyu6Sj8;@hnFq;k^4V_g4Z|H^p*799pHOZNeRhn#GAo;slkV;~IQIM}x@7 zR~q*Rsv_)!Lw`8(ilV!g)>ZbB!(UE0cLtqe&ZoC@2D!mz(nY$a7_audCK|MR#~*-o z6_Z2fo^9z%hdeI1ir$l95N(7axKA5E)~MHxGAj=6;6&ZR;FcLY1cr}8N$?sg1vEHJ zL~QDvsX~hvEy)T+RYyQ$dI2BjP6?YOJGs2Czc#2CG|ZneLzVgpr72ephyJ-8;=z@w z3b(3~?ps7Q^|rVwnL{VqKU~`-;QGd2TcQ8D>5!)gjw1I5XeHtVXHCn5=9Z`h=T*-S z$jqsEG@LV})StjQnD>q5zdV%FxL#uPUo&PR-xGxUo|}Zo-$Nsl(5-tPsqXAc34HCW z#1*Z-ZuDJs9UloqDg^*tOF0e7nx2Iv+eNVHLkdkcq@5O z2n{m|O4~yysRDmvqxw#VIKEN`OE{*D^<~U&(SgTz6Em4S9Dknq7cc6M>50+UC8MTo z-#rc6>DiJD;qX@oB2h9`{-2B{fAujWGJ$$x`g_ne$&6YDlcU*RZ?ELSn|nFt1>pmGjd3x`Pjq)|o# z1b+6w=~%{bw8#1&x4~71l`+N6E`F!}s95E>cZJ_!xwPY&SCYhzwI?E3QJUZziS_*E z|I69=H46Soyr;%D6IM=`2~=SAm-OpH4~hqN=(8_qB<&LF?uoZ1fz?p#2>4|%oFt^G z2~#3onFWK-%mtyr9*vgH!Ap8DM;zpR2Sxp(+{D=n3eM8pY;^-9uiVq@O|l*Vl%es% zAC((I0@HsG+Jqd)u0OwloJ^gJyZDm?I-a0o;t^DH_LlQ2`ss-JsD;Bn+2;5K&+9Cp zyJ*hb#~PIceEO`s5$z(lWDw=i)p|Wt%?pID7PWTZOz788^9y|3b}rsXyn$0ss6{` zS&+(nkT`0SzQ^vh^yy<&q4wdav6U_Bnl01#&9NJUj&4H%q4`Y&02Q`UYgD*$= zp1l)|k;&dP5O0Z7?_?vaK>Lwq&O?-lBPt)po!2}~KvGzOL47V>`#e5_^!Hcc*gLmA zx+SMQL`k;Y!mLvrKlyB1mf}#*yZPBmy(0=*_~#>Sc>z+w!BMKl;g3v-6bTFB?|aGR zu_+KiX{PSiu@`x%6SDw+_MZ3+?J6@Bus6>SpyPK2<);qv1Cd}(l$nV-{WS6o$avQU z6be@dJpaBNY!FDGc#CB(wf|Z4{}&YhU4}|l;L?k4PdOdY3?3 zudyor$$2fnvJ0(kdhq2zS+Ik1XYu6P{?u~;qO$^{!moif)95h1B*21r5rwt$Zc*BW zZh7c}l&N53uxKPwf9M7WLxR4)kHCFHch$97JrDq_Zb?%dyM7ZAtRM#!cU+y*Jj;6O zi>X$S{4c5T{D1W5mFV`k`HGgjj$Rt`nsB%Rur*-T%mP0Q(jdDY#n}L3M_5-YF++s}cP#_Zf{`$0aqaf$q@MHrpvel@h>A zV)u;BEb+WJPqf8&ty<_ zV=JxEHwnX(bcZBOPIRVt(O$Jwj@5Ix&eLIb@6y=u4rDmWlE0mXg~NK+Px5y&d(BF< z`(g_`nvt9bEA$-fgSZC2u`5V%vJNC z_RPiK&L=a3Lat7$?L(CMGmA}kfz9Ig_2Pi}L$;#T>4R*eYN^#hLgBJA5{a55G-a4X zw||KcGn!q|7|Q4hU<=DHwa$u1k)^P!GlhEo`It&zF%72oAKG&{#u)4O32N*V#VX`_ z?LOZ4>>km&fKp#V_IKN_I_TFkfxnDJ0@}nFKe*QENf->uMBA>a@7P^7zAZ_SOb-xh zw;_Kl7c-o()Eh2AK}?i>yOvB@%w74c>6NZiC7ZX&^f&X&esibv=czDZCeVZz@)|_s zXJ68evOA5N2+opRTl=Qurkx zEJ5NuJzJ2b;xQuR;nhC!zHF1oK}#$ffKTVUx~?|cbFqMamPM@F`P(w*p`5;;QDXI> zd4*F~^Pk`k#`dvfu0xwxmu&j=-e-iOUzYdynX#See}O2*FLVj$ql$WOb0LMwooM__ zXXk3NBm#KvvzR5lr6YVT6>G-$&ADKX0mX}c;7CbHPbiH)_?_!V)-cQdA2bB<>iL(Y zr@U`ieS8@acmjUU>vXHyA%Ki@tIrOW$Xok#bRD++MH?Jit6s!r^f3~1*i2Si0%tf#z5sx=R#Ms1CP}1Eaz7lM+kc^(Q; zCx15>QxoZHGJgI?`ulD55(*uVxMOD8fgzT`Tas@oGT7up_-E%RMlhaWkkyGGY?E=g z?qKL?Y^VsZ(e!_J>RCVo1AK8BO6r~Pa<-OGx9sN7`gq&2Mz+g23wt@`u+06r;?AV^iG)q|}=PBA{aR&n6WASVe9 zs`}48@QO7^9X0Ib!syGz`6hog#uzXrnr6+FBss2<3A>6Of25{Vf+>qSB~I-@3>xNX za^62u_$3tw-y+)sHV3($FM7V$5`3GBbB_Gt`4vsdcx>D;C4>yEu8!n){jXnVBJ)Bx z*FMV_>K3uqH_dJ#qxR;1=wVX=zAlrY8&9HxUDeo)quVDN_gZ5p&z^oo+VluT!4g}G z$*k$g^lLVH>9i6O#1DBnUo%PiHmLPXYZ=_Q=Q=cZ#yG;yU-vhNe5gF*XJGzOiLqdK zWp3z+G``?0D*J-#Ob%!Ne*g9Lm#EnkDnud+GaKy{W9v0EJo`dQHz&yKKH}ev0a2L#JXDvCFjjBTt4vo+PER z^=AwAkE1V37p}7wj-&-@gD+w+svg_(D}!tn2$~t%m%(M%%O3OJ?+d0^7$x-gSX4ziIHC&9<@j~zC4a?A#@0pGRD`9S`8Ya6KTFGG0d>uD zW@R~hXlT9#l4>4{S@Y`29C-3s{-<>8(k;ry0vt5U)vPI;G=O-OsJ%zSM`)SH)T&v-D)rZqbQA6C+`+DjJ3Jv&Q$+Wv-~_28+kuns5sve%0%(`MGvubbZsVV(B&U0qu^h(+Z{4Vsx#v z6m216r9&Zj1)=dWT?1wwpc zunI!hg5~+viMm2^C-Lu_u7PdvS>pv5|IxicVL4$1-OwNlt&Z4_{Su*hvHwr1NL1H8U6LF zU^(Zdp0e(}B2AY^Js)y=Rk9s(Ztl%K|JiZt??kSu`G8!}k77mDn86&CFAoX&&LqdnJ7Lr~0a4kWX>OPo&*rq*XqEWKBEOjv@p&@NSgdslun_2eCj z-8MWjqF{d9Whco;Lug%wuaXBQ6iSSJQ$k(Vdu`vjLo~S&V=~x5RV|K`;C;HcDHnYV zmUguj4Zb1hc-=_0mPxO-&CByBq}qvp+2R_joERYLAU@K;3!$4I}@frOejgiaU)kOj;$KnP43 zdu(hirZ`hEg9Aidr^+=^o;B7j=Fgq|cJt!xtEK6=a$UliLA`zR**G+R)i%9d6GhpG z0U&Sl&1ncLDCunBjO(fMViIWGbrhX(<2E}Pm3Q(E+{{;68sy3Jow!i9^`$>3#EW+HtP3g~ z+7MQbkTzu?oB~FJ&;nLY3>7(4qnRVdUA6rf?zG^1lDC*eUqEoX2VmB%tg}zgNm``ZH`$ZEt?w; zE;=5Yb(p&y4Zy2t}mPf zvUTAuy0z&y zrv%vLOb!`swaS$F8eWL-Y;!?N?Rk2uAG+*80=)Ob?5%(9mL#2fZeb2RZRc{On5Ho+ z>yT^|bCCeBda49U~zScd?=8ZvjgMS@(rW_FMz9AAZy0TCl@T)_v_QYOX1f5HvNxN;QQd zL%>J+5fAGmgiwSWB|#IhjVP*`stXol?_qiqOjbPqo-Ugh0vLB|IB!1~S-VUGyL9H$Q4aVm9Qt!nxM0hv+R2lxlxOYA1A9ChDP@z3C_46Yy-Xn4 z+4ayxO-nyW`tH!-r5>Su(!g8M!Q@JJ2lD1sel4na!7w-u;V7rkeM)iyYEhAw&Yn#N z)Tx5!Pa3QRfTFZXNj1sojlsAY^J}o1Aph-c|8Sl=eI@H3-)@kMLo^{~&sh@<>hvyP zFSYJ|NW5%s{41^^1DSrXEt%e_nelA@=Ue+U9vkf_DeCH?IiOJP+|d6Uf4H=#P0`YrT4kuz^Bw zSl`&@tX~@HK}LBM&pi9yHAc&f^J?#H^p&{Jb5WNgS&Z~Sfy!&w!6+Nn9(>1nyaT(s zZSn{2FCq?gjJ~dzSDbhsoI!xZ3!*+>l-lERuvszGL$E$MxL{}4$KUbsV$}s(n(2`b zdl8!?vu1ok*u=SZ%!hOtC$)GHsnJC+>T&&-?PRnYtIQbd4fOgp{^lx9$BYZ!P$6m@ zlIQR)=3Eki^f%TqxD&pCCQ$tCFTi z5SKai_cs9mt&Atu{3{2Kdjiky`g87qC#HV6XU&;S>$1Nu3-e|OhQF&>vpsO5W zZExlGze%61freBLE7oxAkAQKj%^FXVvuwMNX2f~@0aTB&7`qqGPa^u6CUVt=W9d;szd-99fnj~JHeCx((68!fBVG%V*c{DH>>V!dz2LB$ z3%awdmc7lP@a(9H_Sw7~RY*HYj$@JZ0vjUT?|kM%&ds)Ujb_<;H_NiSZ{F|V%h6U@($2>=-PXmR7c%sN(GQlZYtr&C;J51Z1 z*qNZDa9>hd;kuFgTSq%pFeBZNAFxUo9*xy^GMEf35j2-*b7{{be>3_uS_C^a#UjSv zbLNNZ)60&&Bzd#*?$VLq5lkPxle3VBA13XuPR_>@YP+p5*8sPwI@Zko>1{$@T6ITE z`dIqK139kbO4Go1zO99D3|2Z2%fDDN+7W1aEq3}}?)KnLx_t@KsjfXpa(i|4{>gj& zn6*a-GI^chQX3B@-ZS_bobkGUGxB5(oc6838artIn7ViZj#ih3yR83eU>DF zOS1i2u0x*EN%4}5YZXf6?WmBYKkwcgc3EphmOal9uPp-sn^K025YSqkbe8ljp%)+ zLr$SIc)mq(tXG>K@1X9-`7MY;z&-!usEhEGH93~bf;yJCd-z^K@`3BUNcqaThof7qc*8dv#Fx8H!K|*^ z;!&qPMzlU)(t3^1j82d1Hn>pvtqa7Dm7FZr%a`$aKu45XKi-v@6##x19R1 zgh^_ehAY={bnJh(uQ)ZEB(t8L1A$gH`KCA*pZD2(7fQJ^XzI0iwoqVtYA+G9jhD}^ zY~71+#_s;oR@8&&Ql{MvhF>?S#0fg{e(BzCT9uzu=TA1bFR7jB84JUHzZeXc%!5y~wQP=+qmb^p}Z?U68DE z`O~R*WV#psa@S07Rwq(wc%b=B@Qs~X9XaWE@P0ERc2d!QD6Y4mXQM^lTqWNqOId2| z$M|Ig?A512IC|0}8hokTh`OT}*pe=pX0jhmt2xp6_w2z^qqzfqURt*vk|AS!|BpcE z3{^(5AWdi4KC)s`TgJ+Exng|}MpyHh;ckKYb%F@%aPOk_y3T=MZD!?XvrsW_ZfWv? zbaVH$pM`Y(@#C#9JH_4pQXpPKjj=jNIlOk|(+}&?94?wnxHUXHdQEn9`t6_b@Q!ij ze$*80PTC8-@*#iTARI;A*W*SR?%o-605e7ge;V8(%Y7)2mIE~9K@4%KMxS((KCVm? zE#rY}t?#*s5{Cbj~R!cH{OD04`op83|nuF&`OBzX1i6f6a^X^C#C zx0a4zx1@3smgcC!(<(RpwvYM*tiHTPNVT z0txfpk*2NnRS6P`c2kgz>t4cc0tVs-v00Umb~S`)%EOsdWoX{twBiY`x)A?vJuzQE z_H+T6!>#*czE&+!qjgPmqpqC5jcG%qQr%twn5YHCA zE_zNknbz=Qa6W!4f6d?@4&?MLB)BuSBuJS?NW#Hs{4>ZwNyE!La+$|RKtb}| zVw8K^w?E&F&VPQc+#L0Lpjk#_I~e+5&UO6ojm#U0R~KI&_}{Jg9X%+N+CWOJKEY0j zn*CjrepAmiCfHXJp7cv^gKB4aMfRki(M4v#iYHkeq5(m4xHV`dpXE6Rw;QDr<{2#$ zBOju2U*z0iQF_smk3slR|2^qH{Flv?bv5F8c_yYC@e1 zW$dUGB~ts$Y@2_Jc~HY00)=ht>BkKCjsU>!4ZipEULwgmRZXwNb;u7^CRU^CjOiny>$2?ILSIy zF(56AXJ)_wmtJ2)Yvs71R3P~txB)pL?wsK|0f4ZqI4^ry-y)r znHN>Ab)nNS_Pda6dg!Lp&iKg^aA(jU)X}LKUi3&Wqcy^_8@B^1e#~Es?K~qbb?)sw zG#?Ll+oAN}8}qO|-+w_Ck-7{)uDVF6Ms>ECUXzc7iX823XwOhOW4+>G#)AzVt8a8` z+PZG+eObc(>%;8srZ>=}P ztf|@m*G8#xR#ouiwBuzl^^M?6D0k*bQ-(>|1Wz~P3tFP;JtkhQ!n!6i+GH1BOEb5T zql;S$WUCh|wV^*qo||D0YS0B$<7wLkb?jV*-93CyzF69yZ7es33wsXljVxeg$>*$H zYMn7Zm%H4IC(}1ud@c?BBNI4He-Ijmv_CWa!Wcd#hLk0=S&KAQG0Dpuers>23e@A- zRbT(tAr)g7KUSO!VaY-tZ3~p-(}=M-;iAncjZ75pnpSEK1!&l32a>k7J@k0~>KWN} z=9?IvW}2sAG0%%{Veps8)>Ctj4AcBsa~tigx+xPV?aVNIy-^Q$n0~AFvWZac$D2#X z(}lKV#fg4TRkkM`yA;ElV0ssQ5L-U}1u8`TrA=+E zv2#+9E&>QREM$-|DY`KmRYld>HZ#mTGm{Z=o#O+{UMyZck-MbIY6ib_ROUx{^zoU} zljEk1ftTKne|Gq<5v9=>Oqz?+*|=&bad)v?P){2KWv3bshZi>Tfe4uf=yJl76Ym%v z&cIeAR>q2WJOFOxWo2}_tkFWJ$AwH|H01w;50g3z7nV7j5XI^1Es7^PoZP?EPvn%l zdN1Ru(#YLGgicDBqa&@ouQ-{B@p|LPb^J)GPKhX-?YK;LSKvnH3g5lE&CsQ$MiLr% zi$!hofbotRpZEYpHK{Ii5z}VI4$gE#Iqtm6|v+U?o^{_$IktC8CwNOH!~ja2hluDP$Y5>&$wYPUnk`Z4B3zLD_q72 zft8xx_ABfW^@xqf`BYwdDefT{h{e*2?LwL%AJxWG1JNs7YG|OsUIV`2^3k+R+;b4( znQUNZaQ6(mkdWF)OG<%x(VP8hl-hl)3>PvC=BuG8WF0gjg7M+cgVi7D;yIq3_y`m1e{Qex`FuJlu2TaU@Yg7$^k^4VebA%L*xzV20_#=z=G-U6Bp4Aj0W18jv z<`wf~>spq1&Y&37bEQ4cZ-)EoU+Uj0UB43@{H@Zx>hd&hskv>=9cXk}_{Q&Hs(7Z| z*t1ki`MWFZ`O+^{oF+auD54>R#2TR~pM!8Lf~{KP*w zq@RJz-y{~nkNaqnmgUwCUA4lEQQB^FH07oSa$xsT`QUt!kAHoZ`a=Cj^NEnXttz&t zwAMerx-68>+@M8b zagMkdvD?m$uu5tJCCDe*o;+=NXDR*rp}+{=FRnv8sZ9>x3-GZ~;N_5+F!2aN;)K@LAq1AySqbbfu*|zM7lww zyFp-=T)Lzip8ewQ`M=`TvY)-Lxn|DHoO5mrb@peDK=h_&N55%sII#P8QGL=;&u^%Q zs?D?!Cj->UEIKso3sTXU_VyLJ`WV|_jN^*q3|JS9z-9G*8#56)VZU?Af5ZOO~)rC&svv;v{-pY| zbMR;bC-Ibxcv6#==%)5i>sq*Suju|36Dhc0Ivv+j+AjKk(kKbZK@k!zbTUgBGjB{F z&%BBo?#j$zVuY`o=S?y)5rd`sz{>6yXt>&D8%OYbua-#(#~+9j0`lYh7l9&45ADx# z$pLk5TiiB79W?l|oL<80*w`XN=Hrqr9YU*f3ovV6v8xMOx zFGH?XGB_V6m!F+{jejWpY^r-6lwbF7LkBATJ#hey-?@GgjlOBWHhAu^9O5=4x^sxQ zah+k=2FYP7dZ3A^^`Vf6H1j^pxQXZ=uAMew3QSX2x4z}YS##;RlL|k1S#bO@g+19P z5qk`+!TKbIzV>}wsJuoCtOH(zy7Mt4KgKIJTuc0c+l+17t(Sz-v06!|_4-KQaET*ps+F zsYvB8`KZ#2paU7dK;14kXd9rh94>3&h4EHi{!lIR?g=yz)EYqT+q8N)PRY!tUDt7S zH?lCFSG4uD;xcU6Pj^LeK00sLKCjT8i_&#N9-H`raT~-4lbCZN{D_(_Qjga)GW))F z@}@cYkZvKqWh-tfjy~UpFLJK~n@xK>^ip9SeX)f?0Z;`9;1OU~6izdXM%8mCet(bm zpNJXScrmW{4&sPUjJe2nhUE zTeEMJ4V&Z6$(aOP?z**={&5`i_aZ)>XsA1DSNU@$#avC;eFHiu@2#aJKaW?Cy4LmU zAZSA7XW9Kv#sVE(szaiH#?VndrA-OT(Rw-K&t=)6gDmRE#59MM_sWxuHw{d2Dsd$B zl=%utlN(^D#YXF=T0H)oef&~Jzc)}Oo7{8qUc#IhOgiC!Yta}`GfOKCqOZ#-n(SyA zAY34uKk%dJHqw(Y5%4?U?0N;XN&aU9j5_RYjQE+^py-^(PlJh^S(U6|c|nQc~Ebn}p;dFW>rpTa+Hsw8P~&d(TfB_gK|iAD9+y?Fud z_n#DYvl*R1jjI#68DGWGM1uu=wz1`c51jsQ#bwv;wrfhCYnWIk{jBs)iU(*dl0-Ht zds_aC5Okb>JY}P?lR&})Q)9YNKSuZ^Jv&C1<-AYk;nI4C*>OioX8{^DiJo=M-l{Ql zXD97Yz9UQ`H1pg&(gifs8*P4uHeJR9S59k9ubVZ-ea=J@mK zX>vy#5grQ;Xpm!be3*gB2wka%guXfyg(WK3PilOAIZiljs(8A8vZzbc(HINJq!Yhh zpZKP7ZTU~m(kjI*QHZ}$na;*Yv>5CMPh))m-FI20&jSe^*I)Z`3&lwf+873^NLX}f8pre@7$T$#da!GrUc9yqM zDc;!S(K*JqA}93DwY2#Mx@Y`czHgYYr11!u7mq)m}gU^q>=Nc{&Cj7JNBmOGLlQeJzRb^Kvx_B7&_hcQ=-< z$9N4HzOBCAxRg3LIddIXrZkdb8VokCyzsOfTC#=Wf7dnKNo6YfzizOn>L9#8b&Qv@ zzxGQIUVo|5s!rIz&E_z#?V-A^OV&|>bIt!`%tKh~c76`!^HdO4znoVba)(5VKq-%s zTP{74*ULY`7YCJy49exohdwEDBFmLu+=R_USa5`;5$n_8tUlyj+9VlFE-Y(Q3c=s26&KOud7uAe)<8zwJ?|=3{Ei2kX&p>9#ijs%FNOH*LvVb%=5L{D;p&;p)3kn;=U*cCRc@VQEw#DnJgBHJz@^Xr?^E=q~h#x*j2VkhAo>x8Q$@ z|8i}U7x^`+9Ui-{c&}!=_0I`j&C?kyQT&60hyO~oz+0WMdy&ttn&3O9ne!kL)U}9q z3=@+3;s#kHd1Om4%)0_~aTd%G)-WiSiJI9dnD1g6dSZHn(!WOYicVzwZkwVWxPhsB zc{L>qntJ=qYb@h2J?`I)m)E;IPQK1bClNTgT?z0LXQxA-$k5yTE-S3byGI)5$rnAs z_ugVwGRi|xBNu;4`J-vunwkAO>)n~yY^AMiv?9(KJo-H3B>>&Y5lE0>*Rmt**oB#> z4NV;VRFwC>YCS6MEi$;i-_ZGSLx^R#zQGJVdbesK8uuxLiLQ)uYd4D*F)W4CVMee{ zbO} zV!*6)HJxTUZMh%+Q}V42!Zux9NJUfm98YI^0Cct18bvRRo#?_Gy&b1=D!$G?a^*aS z_wDLY&A&f@V@f1cH`$I3*ri7y;@`V=Ad0b;=97kISLrkQx4^mJ&jMwRE`fKEPz zUaN2-yviufcg3ISKA@wR>@2D$yVGU~ljy{pfAxwq-mtq^si;+gQm`y#K62*Gnwz$% zlaP4Rr{~?kqju?j)}NEc!?XbiD;W3Xpq;mqQJ8=!YbeJ}_dpa?LF#^(l}yWsB+Kn+ zT=Yu%Dzx*b?Va~R-MoJzb3a{8N8e&DN=w1#;$+5elI=ereM9>>{aY1chrh_M{ zN2bKD>iBx7nuBF?Wp%dk0X!mlV6crNZm8@oL?3Nc$aBzuv_B~J7vV<>)BMqS^|?-u zT@ynO8Fl9hHViB=FZ_Deuy`ZEq+DS2po3G9FW-b-4TfIJ&xp%*5yXFAjU$G3*()fg4u@{L!V0hC0@9Z#LDDNBVS_Q*k z$tJ>Zl`DCBD+g=~^xcr4ghqgl=@aRsj;-tCkMlf6sAn6YHwZ72?hWM$Oy+0U29fyf zDf4An`1$(_%bK6X`0cA(yZwi;nM5m098>V~dmX9zFvGtA$e?#$qUcFFtVQw)pZ7&K zq9!0lD0ERKknJ73PH7gpXJ;4R?#8>27(44dZh4sXAnO?tLENcQ=im(ZFL*GfD8CSQ zR)0+i3!;LRG@Hs+Y7uH0FM7|;dGP*sf@1MOi|n;;_di7Xvh$Vfp+nH3wsX)`oXZIj z0NALuKf8}5Rl*79D#V2T7tL|Qs)-1SNpJgzx!?N(&%66wTJ(fcBZU9@UrEuLQ2o-e zJImBsTD{bzN&am}xm&4t743nLF1m(dpw>ZzDmw4<%vZWO=GaYs93c?&nH19sod@FESShJEqN-PBJ%5aJg0}k9_o`w5A3S<)$;-(7~?n!>KvqCk(d&Egp1S2X*fr z%?G}w=EP6v$*Qa8Q?Js-3dV^m6y?52Mhn%M-bWf2%mL)ry3syuX^LRsNhRiEpVccM z+&NP8W{Lj`(1?jCHcP_!eCv@)YBm#@Xm|fY#C4}p+s&W2J39-tL%L*y|<7I47J^7u_UtmYc6{(ljXN>p4N-lehRl42&en9?Tnlgh&GC>{^9Orz#9!kLz z^08NrOSJ_-PEJ>i3&q~<@^wk9uIj;f+0iNmrpA|xB`e9+4`|bVE3q+b{3f?Q_~#dy zX^7zqn!7T6CVk;aX-*lSeH1fUxw_rzglUH@M!ZIf{GVp4?wtf>-122PMltYOZmm}|I6xyJ#Zq$>SYKRxnDCx>T}DS3XtzWLD0W5QP+Zm3mS zSYi?9gjSJZdFqt8qBW)q^ZZDi^<(Xdyd|5SW39)=9&cLf!ghZqI7gW}*?r|P{lfHo zGZDs#avx=89{g?<#;RIsFJf9p4si-yo-eHjj>Pl{mGap))mPtm*kvL7iP z@B6;4U3}543JKT?S;-sG;r*Zrr}jEcvrzq)pEeRk2jqNmKfyGfM^;uSCK2z676@6XAln zmn>yL!Woc^5oH3lT6@IIHf<&~=Lw?yFaPd6ITfoF$RMkMdKiF>;}h`l=|ZFC4bDxu zo6LZ|Q*dimBMh38d=f6knt_ntZJl{@R8+Z7d?sdi2^I0G?IF%H;eB3PZ$H8?-_&|V zRvVqA9MP4=go^FIv^e&`K-G*6;A!|SQ*Gqq5CA7ACDo-fn^@X7BWHVY7ab>W?=d5Dw@{v0->{529njbfS%dT8hD8s?YkIW9R5UL{} zjP}$Y2-@gb;#||)9%=Ns_he4_H*KoKx^jqZ6{Nm=qP%F?<*C#|CpZaVW8>z3&)*D) zf>3%%y^n0Xt`tlTpD9M?!uh2!H@5*tC_I}R_S$rFM&dgAwg)Pz!xjr0WH$O?bn>ei zhFrf9lrNhe@N=}>g*%)>Y?80K^WSqE+(i!{HTVg{y;6d;3Z-R?#!nKhgCwzBZl00y zICsS@G=a)_c_dmo3}?d@gf(hT{qN|BTX>P8m|=Kxh~o!Z58E}QWB-9&mM~3M1bQi< zv-d2m7XKfTX2j9lMnz|WnKL-GV8TR177$POPe z?lTzD2BTFzQ=jO6ukDj7K3SP~ZhFA`ow4N_Q{wLIY3mxRc#!djucf_&TCfotq$pWu zA)C*CZ>}V208x#72ehGp?5YQzivJ1s)zNw(T>kW3ppt4e%;T7bdS4YKw7dtFyOnLG zeYO99+rV56G+-$9Y>`)@LMrt?`-#eEXfZSfJf)xoiRscl0a|@cK1-p0F3`sghs()X zS>l+sxZTqk!Ra=~KiJX9w;()+dNe|(ZZf6%6vcdAVhb!f1ZvvO_^xDiWFqr<3Xf?l zi0*{gZd62j-cDHj%7b@8;rqs&_!q@I%P@&ZFzUfdTKIqu)m9XzrAW+bs7K{YSzjW^ zC`eCfeT}ZiKR6KbXvd!+L&`rwUB_&c+TOiBR!mBw`7u^x!1Fq|ktVXI-=~P)702rk z7!ul!Wf^Uj7_uwD&i;t#!9{Xg$JG>qvaMZ|}7? z9RAX0t!@9oSVA3mOsz2NEevok`v%uDA`DkUs^hyhk054?$9-`%=?&~tJ=f7t8J3Mf zY6Q>>7P+dGdy5{pE-X(Ucc}`*v=yoPjq<1_eJs{RQKVyIo0(th^!$C4lc`F@v{?~J zGahCgapZGF^Il0r;$M5_6Tt&S=jc;@{?4$HB%GuVN+$?P&EiRP)ibtve(Q z=PQ)TFC6A$9dvoS;F#oAzGAr^Q6$pQ-%S*Ez`_;teuEM>i18F z2tRcv0p{1o>&K&7RT%Our91A0iXyi45Ttg3n44~}KqeataTpTE2IYVu=@15HS>-|) z06PDGyVdWzqTO386AV*`bMJcalDqB&;pETmuhuRsQ?z^)R%H&E*2x(7h5r+vuoS9M z`2T{tug~BZke7cfW*As0?cL^Ge<&I3#(h%_tNvva+~a+pJ+={)@pp!-#^w8Tu} zMMFt)-(Q&Mb3-S-SK(tMi%3BIDanX z#$0^qJ=8;;=_c2k!LY!Rbk)+j*C9XPX1NRov<-|KMBs@0p5B(2`p`COsX^d8|65vx zK!_tL&1S?fi~-EZ1dKv@Uwq+kUSL}`v1-|aN3kfl-CF< zb)oRSF-GByuKTjmv^RF45OFEzW-h=&P0g6BdaZNrhR{ihrySsEpAh+um3B31&Mk_@ zTJ-^K0&Ez1c`U+T_HwcQ@4s!JafBo_^VSD2+Na2!J7NBcA$TDm&hf+RY?pmr&!PDo zkF;}gVw2nLq~i6};UsAHQa{mir>GjF6^K($lsKb!aC`A>FlqI1UU9W7K?O?%4=X)Z ztYF5g1{KRJucRxtpj1Sskpw1L1VMaW%G%wgT;hXhw=8R7sGDdaHER9clmp{kx-U8T zjCF>3z!b8K{~&3jhoYgdjO)Kk;`HGS+WAMHaDXp%rpvRA>+vizKX;_E)AZJ9Tp(Re zGeEvyPPJ3JXmGHFHUM7sTR%CLBEPGv=`O~wk@SDKa7ea7man(VTK~PZ%um49Rtf7D zv}ZK=Y@(sozo{gPR1SvEvktj|e8uPdYSWpkDzT(mi{CllPfK>jI#r0i`*Qz&hot&4 za#ct{_%e6{ax{5yvLcKk!DZ9b0>9q60r-|O>BO7wT>n{u(xs=omgT zy_g(cn6DN>DfP=WGS=Ovn3Vg`N@ZGB`C1b|4L-2fx1gm=?#Sare(NX=BuS6}PtglGDm zFFV0fTI7P3grqViuDu+*rOK9qty>h%9lcMly*lpCc{^Hy-e`2jIxh=$02|mFe z)2v@bhkmY8GZDoHrHRX&8LFzn7z!=jHGQwh*=)R)A51mBEuO0#ybPNLA3tBj`P@!? zpAKTFieKg$uC;D9(R~98GMTY0?{I8R>Ynxe2W1l3>1^ZL`c2}oPj*&md#RK+{w5MQ zAJ%u}h8GL*SEA6B6{b?1xR2mo)+QYOk{o^mv%a5RD#PSj%R!v)@7d`1Y8E!ckNnV8 zBHdhgDGe}IXP^CG3@O^bxsomn(juL9JyE4l;>%il;c6?D73@6TDZ76sl_py;Yhjj0 z2lJgN)BYC#(CbSf#iFVVYMtg@x#hN4FTd(a{FJxG;}&z77)!e^!pMfea*{Oe z*E>vWds+dqLi<;gbEnV%Ac;I1>x#)%mW3%tv@IdMnjrmB+a$;PBdKq267Ol!Rn-}VwM+4<|G}O;_!k(;n2wzCevMxjxi&)2UTUonYR0GT2s?Qq z%$px{kX+NBV zPj4VPVqWF?DbFE&Vr_=m9P@>6G& ze&At=f#%8SXHjsyj(5tS3mt%#%KOgr7T`UUTA8NQ;OrThwY{yG<_$Ex+(_z? zVBDHPl`rJah6iqIQV&uIsl^gk|2;a-6Jlx7G2etXE_Ta0atZcb;SMh~cLXW{15$2+$q(@%G@m)k+y$UrkQn=YPqXY)W%?)M=QC^gfV6 z`pC_sUlf%<@vP6$(JAl4^}vz6Ut^Q4;d_6_kF2jq4qb60FQ`XZHj8Q!TdR&X=@S0Q zuugDHub5kIM^pRU?=8+LdFCadD&Cyh=xFvMj`5(t;}?_@0Ve5@Bn#IdYY=by&kCkhVp$Ll7YOr zKTKyE_B$eMZb1HfAeWYml5$q)Bgq)pU~F6pJYzYXy={&C$yxao=J3Pnc%bABdzy-{ z2!k!q8YE3vLDRa2Cu~lWnqHQ&pB{7E?rGp@rF4ci;BV);f>j+nLkn<#pm8+tpGlx! zjX&z^@ws3|2oI$z%ZfiQK`Lo`e)ubH=zEYQH6FafK#5pdYb!z=)Ai)lAu~ETOzd2- zG$df4#yq_K|Fdb9mai%79H|AVBR+;zo@N`ZS}n7e?oS;pk+xaGIh1t)MANrMeu$T^il7QYGnTC zBYVlp#h!3V-A@SM5q%t>VkmHEKly6pnaIltGy_=3Cff@Xi_TORN2JzzDWc5$J$34{ zdye7hoQ*ve-np}yABubAdh7erISF8JFY*;wOSYqJ@j->j<%WgJ55IcGA!p$~?4tPe z&!gzHU$&O4C#-nE?xO2 zqfIsXtbqn-;AZQ9Y75nXX%8v-^7_L8hAWI_14;W@+zP4XrbfeVZpi^x6=%<+qajEx zRRW;pZ2a*r@= zF!i@s$Hmjtxg}#8cjVO7yy(AG3B;b;#NLb(5~?+i%Ygh#pZtCWv>@pJ{*=REIVfQK zK=o)1V~}|_>lX+!KqT;x!8-EBWFvHfZ1BF8>rt~2L)n^m#5&^9dIo`2ZH9^A_{TAQ z>!0G4KIYodjv$qk(Z`wso;Q8qv1HCW%!`k&$@7ib=beo4S*R)XB!|!dvj#6k#^=&6 zp7c%xyoZ6*;**b-fAj<`QLy5CiZ5$y)!8~dzI8LE+-rS3ak`qos$E3My1Fl+<+nz^ z7oC7VBR2uQMg};e^xL=3yqSd?cbGWrpZkadn6tvp1^OK5i1s+Gwu_m;A+izg(TBl$ z>%%LwL^~1zsOWR==Ll+f8#uABQjw?&6|ZGT&vzk&>6mXb zKXCO;9xpQ~`vtV!cS7~wnm;P#XZ%?=jfv~{P3B11tiQ=W&nChNl-rzkAQT6AWkP6D zOK0CiG+4I}y0g6Y=@865!c8>TryQ@LYBP(4jH7byx1YvzZO4-(k~6&l%|$6v=pj)s zNYEi(l$eG9LrRP2Z`c<^$dN3)|1Uw_;yyWt)m@E4cmvY!%Ks83^``2_>Ws{66=WEe zhYyg`H3OYGcK=7D(_D9KU`Pk<<9Tu>W1fXWE_GSI>yR_1yXPdor3MW5a@3G=%xNO) z*{0jCv*+P&5f$yN@495|vo=+U@lSo+OwI=KZbDyY8shO$Y4nEH)ALO`C%EMp1AT<- zj)6nqmdArw7RvbyqJ2|^y4EEQ=4>fB!buZ6fl4;M4en7G4?T>jfWE(xYzDa{4U0!R zfX2j~)tc6EuvBNeUYx-%Jc*hv(Lcq10|`5J+9s3tumls<%tf?rR5EV9GM?X!dD(!; z6)&(A|FVu192HKQ%)&SY!&#{cl;rb&p?Cz^BnfN^P3;2xgR~#!GE`Yd_^4CYH0h`4 zQlsGvkI$M?IpuHi7T@iZvFI|3$nRg1&CnZ3YT?|ZXc0f{NVg60#nd0_Ifv&5$rl%i|f0xo`K5e?L*P23IbQE zHRb}rtBJ4CN|1DudtsSB+6ZT9yjDYFW;EO-E87jpA(1G+;mfT129tiY9cy-0jzy4^ zN8vo08{_unUR+=tz(6z{645Fz#wvz>m)|yLm>-Lrf~TnR(n0ZBaXR941Mr;R@8$iy zGb?IO`kC@lM02cyo$O~OGoa*x_W5oK@Uys(>C65{NjF2)nC_C?{jX6g#8kb2miG4I zsI(IcMqYjdCqdcEfY$_*TWB+AbW8m1O=&KCbL=u$Ir>O}0e72W?SZRURJdeA7RXO6 zwq?OMJoDFa!>Ud?@HT?y;p1KD3?&}c+c^Wt25ZUnRXDayCIF%`(Tfvog)~QGAIV3W2|m;S_IY2Qpu_u z%&cpcTP-lkrbTIfK0C1qnH}F1oafQ7jI%^)Ly6cn7ThcR zP~pJ+W94US;f568t3LkHW5m|oTD?ojcQ|vypD;BL(9e3g+E0_YplAq}*2&@!m+*z0J+bABQ+ysYiteN>$^lYeS3$hQBeo8lXQJyCPVg7+}a zypo3`UPHU97NQ*!MyE5GXzzZXE&su5R&Q5Qmhpks%s|cF8t>dI$GNsuP%7m6Uyim3 z(2ePch`h;dbQ=mFL3M!#dHrsUpFv8ZLOHh-x~o*U;|)LY(XB~mAEm!(*NyziZ~k1) zF%uV3kcpEw84BGFdfFPW3|d*2$j6$UV7Bb~*&>BsC!hKK_{j*aS16zXfz{6FH%|=4 ze4L$SRgm~j5MN5}NCzQb zqGXDgsE1G3GB$FC@8j&G*;(8(=^XXoX_sUzwr5JSH0Yhg3_vCe;nA@9vfLvdyI6~% z<}ZiXKIQT;T=j*MuYFA2w{-?e@ZpEV4q{?AL09_ZCp(y+ccLtER&q6O&Xdf1JD!zc zRG($zKY@&t?}Lha)UI%`F;su>R$|mFzSFMQjqVNXaLJ)JOK#sz5Y3Za&%L+J5nse5 z1174mZnvSg!XjX6gio%Wpm8wOJ1GANm6yr4g1sV16%5EH<$5$!eMwl1Unc_uu{Fp;%y$&5^^8Q4eOTFe`*VN|@5 znlTUXmU8P+-t&*~fc6&=SB#FZB%)kPt`5#&w?ruIvY6yJMn>+?&AmlJ0k$Qk#iQLl z$m*bS$0?jpati%pB2%^P$3N{xbgvg*bIRM};qOw!WPk2u&L7Q$D!U1C(F2-cMgWUw zjuKi(&xTDrF2QK~3rw7M-5;X!`O?BMU{#5Yuw?~%pFKIsu7~Md=rhApGwBw!mE=9< z2As^U+S;~h+mcgsG;O_cTw6r1yxia8ObuD~nSLG-y3_K}d>~91DY)<7S-$#R+ zAe-7xAc8m}-d|J1plur`#~&63f3bK%=^HIWyU-P{9Y)BsBMJRYslV^g%bLY#yf1V^ zdA;LdLei_&N_oOHLgzqN-B0}MORF8g~7R+#%>0cMaAE?}XxP@I$z zku|8;l-fxA%ggmA9bg2yImG7A=L;aNxUQz#mzp~EG(O$roCye z?EIkV0tlC^i>c_$%!2un%0hDmP+c@ogzi1csinM~f(cm$3ow(}ej8p=xF+1wznKm`GCqC#;1$8+Hs8=RUKI(t$fu(G|F zxYQp1Ft-~e|8JA>62d-uX%zwgf;T58TEv!Ot5Ln7;j*AiWS)zD0PEPPq~Y+i;Y#DP zcZ1JD2INcT(Vpis^30l}0L@@s?7p(avdL{>tRKThO@*==)~Wk@%O0VhgOyvj_u0HN zyvm20PNyLeB-|A#x_tWJ2Q@(qSXk&^%B>u6M&Dj@2D`8>t?SxjiZQ@R{es{Dp^oS7 zRzFXuV+8DQf&`3OOH}zsCexF@N3FD<>eVkADoUl9&IS7kVI)4yj>)?gbuHvxY@Z%a z&;2-#Z1m`^Bjy2$=f{mpYPThVRpe1#fhL41iFFN(hhSK@;FI_XqJx(GCnYltJUnOTa(sX)ckigBOA%yt-%ZA9B}H#ojW4nZ zajNwWZ6rzK_{jB`o?U4xvdb};#A~Cew@OHBmerwIkACCT}?kZLgL@O%|?Gij2_8%cK!UuBg ztSyT>ih!xw!k2HF0nXPTqjz<^B0==l2?ml$3yCPfy2Q!UaFfbM&Ll~21`rJojfz1DtL zi;*6nzg6#O%s$m5AxI|*%A-IOvLv^4c`;&SCxdwZ=N%5&cKeMTbmS5z@+P)SSYLS+ z9SOq2%g+W3r<1)CxQIzsKF*RI*~C4fdS^+AIEm@0JtFUb@@wudTWS%E6BeFEdPy#H zBR3R@OBLQ06d;4#FrQ3UpsUngwbX_Q`x)G6yR5JVLWBlc{vWCc9ktG>b8|>NNtK z92Dm~`mR-Akebb8P$Mg%+bg&Eocq5f6cx$8*f_=2&92hOkXQ#~c6Zq8g?lWQ1Y@Rg zjVmrwNMk1#$5vSx7-_-g+voKR*R$h5x&rn!J6<)We&if75-Y4SuJk}i8SMwYHtk+U zk(S|4Ay&!ZACigp$86QU;ZMrODS(!7FFK8`*GQIWt|oTg&Lz!%(kXVvvL=pHv(v^@h{B|6c#~0ZHIe+nh`jbkiSpgl616j{?Hb)Kwoo*myDIQS| zVX5emmD_*R>;voC^@h6Vl>C7nMIIS@3EaiRO#Z-w?wIbk<`@*tDu6T-E{&FC;|*O(i`+G?uAaQEDz?*bCrGpS)R?Eb3q`}9 zhSX>agp0$%h&x196rhU&q5+Gf%=ZIq~8gc2E*kXEI6jdDKiWCId`n=*66R2}k zJ-5+<`Qk`fy5wJ^sd^mywHp4x{A`GLBy_cCE`hA_+1FLDx=IkuhHb}6k1I+{_YFwV zOcnwqyz&3`^y@w<9mM%n@J>=vV|k%J$@D(D$6#y&PHGINWEG~f#JOAD-j*6=H;^8J`~%vF`X`KP(du@$mWGnwXYrg_ULp{7G} z&fJ-Wg^Ss7v?|qv_%^RNRRuQV7p9sVsvChvj>!)6Z+?$H2gthH!AuPuSAu-t+IEc^j})UD4o3E9jTVnfN-nP`Kapfzf5=pdppWLOn+uOd-eJr+Wndv$_wLt zwFL+-abR8s_51d=H_OWuD-kW4{2UzROy%TU-KC+<;UwIbNDFyuAA2}ob3DJCU9=#X z&tcPYsTA#^&Q2f2T#Ut|GW;x0PtU3!ykH;+HV{A2oyP4Ew@6hu`z+1yZ<9Mhf52WFROA&obS4vn5fEnm}6?jA0LZBHTt>GT1^5r zs_-hicwRTXsPh`=wP2X+tP8KTugYSsh?_VLYT6m@Fr+rX9|UYR-H` zL8)8)T8Pa5pfuc`Z((%eoC_<( zd}x^=rgSF5;N*6RX7c+!|C!0fc*UEptU(lN2CDJvP5Kjb0vxZ{>zG5lZi040aFtX{ z0!+HZ)lNKIJb|zUgzY|c~I6ueu#YR z8Y&xstx2J%16;6x{!|;PBrfBE#2&w(M|$S6-8Au> znPSrR+hBCY$Fx$L^C}6F5J{NVfytERK25aC#GjAD^K{a^TsRV00WkSj_?^chi%WV_ z3G7$LaSM{FpmvXYyumBad|9SFYCX9XIbU~PM+1-(N4H_8drPcmYqV~@x4NUyN*+{O zQ|6Opc1lnvXBVn1rzH3XpO}_z8Q(b+W$dg-2lmY`vzFNDfG-3B=H*VCySd>53^p6x zITgypR1gJ)v`?y!W%unQ+cE+3T@R~6_-@QFQkLPOOYQES&IGP4dM^G`kEefEPC$F5 zm?L~njylZ1qYYm!!7g&lj2XxJb{`bD(swYucw#i@vH>&;2sqTkFP3-g#txkX{z^jG z{6AjKD$Lh1&rOoZ!NSsXQxvYv3+x1r?3)n_&el)MhF}9?L|R|yyI>4zVp;QaOBaMP zp>Grna3CjM3Q?ZJ-B%Jn)#Se-ZoAMYeOoJts8dag^j=b-jn*0S^kvKhZkl!%T+q}b z;CQ5!{c;2^NsAlX{I&4HVrjC1ODu+#{+j1YT;vK`!F!aa|w|kL>N0MEoKaU89Ba57t zNgIT`{$cWlB?q7Fgk_EwN#LvIoA>NF3A#aLZ<@oC^#j%wi{nny{D}0f^5O=fs{Ezq zt`C^5q9YItaz_38%(n+W$E0ok6r`Ws1zf#N-Cgl0eL4Ylq@LH96{`7+j}{1YEqJtK zc8>Y>bsHuWhzJ$ENg)ATjKKxT!CTLwC2s0j^irYK&Gud)x((C3e0UoBqbPJYvi4)Y_HUPYjC zEOd4Ja=Oi!JT12cc7Igxv5bC4`_4L#ZBtXRm7Gt6W_W~b!3Wj8#@?4lth)coCT(H) zJ^$Me(TRJEPnls`HP{iBg`G9PYgWH6zXb1C|D;@-^avkw>53HD{hmtyG%&ll0^TlZ zY$t2)FAGeR=tI=4yR5K>n|%D}9&BAaeS55Pdh<3Rmc=q{<6+FJRc)F3Vz}+LV{(ka zThLB5?{~9_#qH-nDfs*V+i%L9>E&tyoM-#m`piT5WY}0-@`A(kPJ~ll%MrjHMq_<_ zV`))f)|Rc#<00KyywOd3tWK&aTV`WMTAMQ&C#AKIdJJ2#>KxZ#;}?F!hzHgK{BE-N z$~7D2c785WleE(G<*gh9Z+EVxtGne@Kg0n?9tdikh!&t14O$+he%P-V9{WfgT39TU z!qMK*W~Ren+8SsShet>G;3G?(zqB2iM*T=9nZ9Q)tsU@ju(mK{=)@A1BR{fPqqZ%zP?brpnJ7(`2 zJvZcqm<=`@_f1sGQ1N6ONOD;tWls|O$;-PDI_|08*V@&$?tv{TVOE$aX-b1l*Gse7 z-fw1k$i~Q@41`i^)+?93zkIuVuHRl`zsTVIbTdo1D@O^u!Jyj~IlWnJ;Qm1Ij3?=T zRE^FJ4iwhvs5&hOR4rOvvW02Guzpxjn7b&njkErp>xn5MbS4txLlXERXc|pk;lnI& zOKmX@_!z{9WKXobuBh$ zLa#W1NNF%bMWitAb0~-tl^^_x+y5C^OI^zASkiI8x+a&xR@V(qc7sUWn0#zQ=w2F; zZaL)a$M~1VLQbw8G1#bQ?!6_>*< zpi%=flKugA=g8Km*!I@m_LA8+#N#adc6LIe-MyF1dcmirdd7{m%>?7gYYkeXqRN6! zA5`Uy-{Vf5%ky(kJ%&g5uyv_xNKnHOZ^xqGS#)P;ssg;!y*g5*qO-)WGufNcj>~-z z2ZzYu=vG#=F9T=s8l~gL_7)xbS|T(!X_oW8I|Rw4B{+6HCue_vWSbQXl49;39SWJN zj&Qgp72UMOwqC82JG|%BZpTgw`{Vz8M9{P4AV&0rh`oGrLdo~aDJUmE+vNwzJdzdN z0}I_tiMNTTO5E3nFxlb@>ke~Am(Tmfw;?Y zzPzijzQ=mSk?IsTII0?5MY^VSo}ZpVCUv<#s|cJ)vR)uHhzpyOh>HubgqJn}olT1i zjaV(ZYpkjw3+Mcvlm36*{An1GRm(sBCDT=lZ|7Zx!F&h%q}q<0>2mv^?oQmDlZ&i? zbMW6RII+kzObk`J9KJPD72eyX?kDXo&h?O{HbEv8@zk^7*-D$B?$CTk=kitNx#Ekq zrB|Bx3(Fs|rv*lF%{wQZCiSDhr|xIl>ZTh|@2%Q}ps?;_miP_qAK{nz)nRkZqfa zp`3)byT3YE*6OZ>*^97X>3|tFArA zlUiRKi=%bN2tC$@4h8_9j5w}ZooZ@Vi`d(l2`>HH-+d+N@?4ni$<|O!%ChEc_ac=m zFF2@Pbv2n{KAL~x@OPmfJZ5nA)nRAzBrVoRm$zr$xZ0>jCli~y(+ynsEoM0_k3KAg zPFCN=%9;BOG@b8e$dY0>=+j+2u_BUB^jXp~riyl#?y&At; z-jC{96!3|UqV2akrc|u|B=JLx&akBT&va#UD6Fo*U+5;(n`b7-6`E5(m8Z@4UKdU@A&-w@A(AhI@dmXuf6USBPOlA zFm8IN{?=C2P2rVIXY(A@ZIIvEMG_iU{L(NSf_@9IaEH%0;TZJCoFBW8@yd~O+)Z)b z+>lGiybU@^g!ibjS|1*uS&TzjDa>S2`Bw1%L>9wH689-;G{|Dh+=Idt?zn_$eP2_H zOK7U?<%iZSIQr7{^?c1O1tL0$Tp~UgO$*k9H{TNcTBxmVS!@n7jH&E3UemNd`dQ*a z!!vv%zqPKPhViG$JB>OKvjEH=v5oF?)GEqmA@q=pqCaV}E91moO0TdHY$uvN#L_nW zbN@@sC0{YfhfINDE4)f!#zH$6-F5Bj$neHMhlrIMaR^g*K{VamDv1p^>>=@45!_#s z)ahmAubTrXrq0zCOq9y-q-dw*phk^|1lNYl$`?DXHXFL@5vN8qS>6+0H>bS5iLm7A zPnam8?u9Qn16+8FY8DsP$7>c!e#S2#Knh3Vs%;bPKWO#S$j5EZO~JIj$`EYCZ1U38`Adv?cm(4Ec#*L+8GEXWL7AM>h8AG<~#ITT}s<)-ob) zL)SZ(Ysa|z?J8QB>Qi-VyqMCKU+WuK(2+s&7Q9ue)TQN_epRZDv{u6{)yXhQq~j_< zXlzP(O6Rk)Fm5Ja_3dsa_JYEGqV0^HHlVKo$L6T?-A#AoNSxVccaO)p4GR_hLlgeo zQ@Lb4jas+Jtz4Fx@Vn@Ry<<Ew^;io5GWLRx*dxoYc%)x=DcEp!Y<#)SFK zCt}sb4wJz3pyZY(^#BsHue}@k!X)gvMk{;G-z&H6TAODw#FeFCAI?fYmVLIOwgF8S z{odUib{CT|bH4P)DG~j$<4g=~^SeL)Avf3Ilol_gZX;Q;N@z5;VK#|M2eHnOJ#eF^ zJOlKPEyVMyf!ryw8^?DAfYbw(78;;)MV4!j!>UD+FTokkRb{`ChD-oPGne2%$8Cjx z(U!AUo&T@1$xB+gd!JNN)V6z9lk?Ri@6SUYe0S#{)`UF?-YG7xG0Q$PFt=&LYKO@L zb2`SwK_&xuAE(6}q>q_mUHm(j=-2x&7n|}$>v+jM$Sxl?9CbiHHu)Y|J#=|m(+}>F z@z`IY#Ry;8(lSj}Nl&+ZJwjpZjOQ?;j0M!3_sODSFbu3PX_?9f?Dc}o7CbnJ)kB;>3iT=;` zD6PW+3mr|LHX_O!sC5XD%Dxd?VW}TSULmy%-Ty{(tKH7)Xw-dkyA>mR1}|;}HJu}N zWwe#`3eD%RMb^b1z=~F)UO$WSwp^z{NSo1RH>-g_=1V%{M@LrwskYs`8e4SZj;NI9 zklf`QA3pY%j#KN|R+HRi(amsO|D?`m0>;fAIn7K3OVKrzARKnS3KXo=3PhV$$NbUt zd~_ManC8=-q7b}t8tro;$=ad2bRmc(q-gaE9DW-3*Zcg2a^k?+vs}~XXEi@tgpKy1 z+ctyRsgZ(2dhN)*U&?;^$8L$Tb#1RncxV^i*TdA(gB%kXBpTd@K*S5_N`b!$7}9BN zOdQ$uN60=j5#Emh7(;r>ojCiQ&nkFrDevXgN!N_G&a;V4{DGxj_xex6b%Pfl?729c zNF4%&bO5Tcw;}CCd2i0%t5#CmcgH=tZ(TcfzB~yIZ6z|!Kvb{$*_&PfS7vH8q}(?l zBhWUy8#b`wr%x(MdOUnD*{h0A(!k?Mf@7T1jqlYe{U;7vis$kBeWlBhg1*oM|4*$) zS(sng|DN`IpS+fqfo=S?yrrjcg6uR2bgjDdtL4q~xM}RI9l0oS)12GV+we*0^tGv` z7~{L@^so%?Qz7oTw6B}A9frkk3_oe=Y9{n*S(q3%=rYQzv}IA)FZ)beuK0&nk@Ps@ z#okr6yDAWaFd5=cNLHS-lbf_$NLc$cA*f3jnLoCe+*SM{4$^wZ>^u?O;UfKmXjJ0B zLr&&q?BUrtNrg#eI_RI_)Q7C_uh%fU0@RVYfY5s~8C{ueu0Z)cUcZy8q)V`dEwI+J z%Vd>c;g5k+S1@07-*gctpb*Q8Wl4)8tsb93`C5Rk`1rhN=tE1xzRdsh1+|olisD$Q z?Lp|yP*lD@)<$OOXW`4R4!OLe=AXdDH08|oOQawmj1p_87CPQHgK&@dv7XMd1IN;FP4sZ zV2fGm@#lAi1WMF}DlWU9|H)xYK;)DAd#utdZIrAo5-Og96uM+-&I`;_6=rf8Tb^D< zhA(YPV!-CE(Ix;)Sf$jKSSssZn9em%PQ)K-u$XffB{cj5j#h9UNR6Uys)apOM=!Xg zQjex@+6wJ1mB}s5xKyik9-^rm7!PHnY(eUD=Ng3D;J;^W-&%(mT`M^beOSHzv-9n-l~vpy z=2qQ}?tnLm#{|rF^WnsY4`PQ_DlKp{ee+Q*xw*gC2NicUE;N6u1mAZ3fdUC|p^ZM< zUfDf}z7sd|G|ya$hkM;N#$*hyk{MOJSy&zyy^ENJcd_}*Or7gsb*pPqYbv^ubn24__V@)r(>$!Y;BvjM#gCcdh_3R3}$)gvHJrwQfEP!b3DEreQrq1&Oog z;Y-gK?d}fK37D5M-}P6Rqs&NF`}9JOSXGVgL>}-;lS&~ANx$YGkmg1Elk@B=q`wp}GpK?p+4ib_ zMUFWE@dq8cUi>+Qhq^bH!$qN<(c%(~vRD#-O=qgS6D>!tTej)Xv9!Hfc)_=hwe<80 zCi8)f!D!OcHh5Vuzt{J2CS;cn!chOyheFe!2Qmudh&Bv&ZVhve`p&}@zIR5iHHnD~ zReQ)fTRF>}IOid-vq4_kAlH6?)jK<9?KF559jOUJaT4E?rnZY+lDE1nd0bo(u_n0X z_4R&OF0aTA6T?XUm6(d=3hE7RYU&`K&oaKqmEVh*#E>vTC5DgqTS_M``R)A{PMcdi z(>5vtnqA#iN7c#)U9N)NzoU9o<|ZqQpgT7z*tsf*Qf4R3j5!th_No9sb8XPfORKZQ z)TFrCe`BKvm_1mwzI;0dch9#r+s=?6b<_M%5d*()V+9MX5CC7qy!xE{UfsGH7xB(D zzV3fAUekVBP(n|ANia%!)42PjXno%^)@@B4-+hnPKl)BGL^TeNcqS++B2h*d-zr-6 zif0z(qU1N3FG>B&cQyNjT3*nYSdTy_v zS)<3j75Fcc%+;peK;f#njBMI4Djsm?sc_Cwfa&<;aZNuh_^y?Noh>lv(hu-vWXRP) zVxTsSTwj^kF--1f7*p7F`$vP{^MGkMi9zp)HMYv$RWqWM$N+YHV7-=Y&-XSr_n@}N zB0j?vp1mV$E%M%Z1w$FxhpP#&R5-9tV}TUCvFYKn$(}vpc{0XTo9d{{Aav?B#9IoU zS;V$Tl*l|gM&)bF2`d&OG-7YfX#DKug&kUS2o(4&r7CCtO|h1KL}avKX!L(nwhf>uz{;BmX8rKff-#b%^#Ou>{bM4~! zMwC_yJYGzk9|tb*gKDg*)1sw>D@6^Uwo&Wo#9#4&mN8)+-rVSm5}zaT-S#R-#t3Rm zfJ#s^I;55N>6%6iPCfFs;qdDm*>4q}a(k7!8C0J&Cu9K*`xb4{`+&dil$4)$1t==) zE0&!JC$7_5x_=;mUVrS4fywP|^sn}s_u!D2qf$(UCwOMr+Y*@{dxdK}%(|Nl_q}zo z!e1fr6jqjROs->E-P(LG1yprofXT%$-FQK#*s}$ZACOhGjE(kqJD73qd*zf84BZN`OyK0=N|r!fmC}Cy zur~=f-Byf3)>kL!Ui*X<#l=sU-DeZwk3(Oa1-4hQjs{gXXJNz* zXHNzok4<84jX<683<3OTI6$!xeBu~ZV!OaCCt5nNU_^=4&;m%|BN6VcSWi$t6sd>^i>w^*0h!jawcdpH({J>Z{yQeb2l*bp1fVO` zYv(fB=)X1DU@?@_>wesNvD_XnL)-$JJ? zyR2}a-{AV8MHKiO z82@!OAl0t(SLtx*h!LbjN|6?D{oxWNT8xmsPA9ighzJ$HN|PMo*`jCJ+)Ka zoDZG-Ux$a6C47piYnAnK*q@Sk=Qg#joE?n-zov!EO*Dv6Q5R}nwS0T1Xsa>DZ@z%{ zEvmRh)1hUWI(OXqNm1vm9tPPXwO3$u1~l~xs1Axl%)((tBRx?#g&v|ZV(sLAn-Ns5 z6_6ed*7l4jwIavo6fcrEIocV~9A9tvBOr!zA~HnM+Y=brIPwX))J);!UmUmzFJ( z_rxBe@sn8oz3%~qPqn$ZJ&A8lgUKHj&}IQ8ElK? z*FiUehbE=lxR!=Hp3mHB7ri;I7w&Q5^v^LYO9Hy{1_6sJVC}oUo$L5>bBTm-AJY;8 zKb^Bv-R2(c4X;paRn@g40oM$)c4L2qbVd|b*6eWT!IJpBMcPK6Ghq@AR+yMkW?p|b6GH_0{4_!O1T`#ZTnResO zHUpaFukyxt7>js6tG#Gk-Ce--)*7V;huz=l3F)|QL};H_i{Xz8pQEdn1sDh1Bp2v! z$c3<=s_Md$MiPG4nIF?`Bct@=Jc;?#4c{rG$qZa#<3^37yJ5lI`x-|JO_F0dFk6x1Mg36u^Dcg3`FD8UO^Vtga5g? z_mrkuxz|=_&GGHe%+)v+A7Aqco43jhv*E@>>-lx#A|=sjbxWnE%jYRWo%GX2B>ak{bA5M~ce&@& z>Z;eteVmj1vo0-f!+uQ93T|z3o}gcer5N3Zls26nw(dOK!D4{0&%TA-avySmI6P6! z@1}wIFX3Ydz_BKPVb34q_tX`k6DC!v+os$PkK9R4bPtOPHk9e!>>h&gX$s|H8p)}U zS$AWBQp2-reV;3i#H-S`pvg;)n^{E#nnGji)9LM1DAB6)nca4 zJ?qmZP`b~rcONPZxbuDOGO7-*tO|(k!e&f|<=zC_oUA{dos=2w%Znr)D zuRE?j1gcr~7i9V_j@*;56Au54!CWZpkES>V9}KUxpRDM+q^hV^lJQGF8NY%35HZ3Y z1JoFXkGk^lIB>zp8^p1K&M>s-iG-4kvGZubgjif?m9}~E>|y)kK4Sb!Q9fiMGoZdyW+Ra z*~O;yxmZA5qKyTPSTJDZp?9+k2n%Ssx{gK-na399hf(~PXS${%)a_9ymHJSOKC>|0 z+-mf9b;m9{x?EkX;h|GjW>W?hy{FkL%tMm6|p?0l|G@k;&Q$ zGSZX<%7|+zyavoNt_OCBn&e#WBWd2)AZ$W)}+QP zeBmqmw>^`DJ=+lsrFBd<1jiP&IWmu2zv|dx)g=!Bc&pcp5YIA3pQ8LLA+WBgP@Rb7 zO-GRi%T*j1b*#K2i@M6EQu!q9JZ5TkYB4cm>Xk=M`(Za%M<7G#|AI`1?aCtgKOXbS zE5eLRKhKx;{>f-K+ZA`$(OCYgsi8XFTEEsZBh)`sS)C`<82rc8dt0(i-*ZJt!QSdo z9j2PtXkt9i@u6!ARQm?0g9>e``#e^A4Q=-U#j)v=b&k77xD!xEa~nvVI=(mP$6F)tw+qKHrnwGih2EFFsB+6YHG- z?vEg)Aw+g{#H&9<90s2)drHo!>jnDC%3LVO?Ovd>P0jNWY;r=V27#9 z(#O6WT`0F;Z?xpKI<+bC5tw+#v@d%68bWaQEsfhp6e~xEKGEC1MnM+;S5w23=K{99 z5{Z&~0Y;;O-po|Tj2s!C-n8g!i+{o>%hM+|KNWT8fDnqW<+dFi&CVTn;M^!A72#)S zM|3(T>>06x)A|pQZ7~hWzLogrF%f(#WCQ96B9DRQeTvEEdW{Y@Y`>o>__`AU7cN&< zZllNM*{k0my}2waXz#_u;T5hj4Tl*zY-KP89^Dl!CpWpzjV$Q(o?_N}|960?QTd?U zo%_afqIzFxDKLwNMauhXRC~K7h~ME)SFyCV9pCF1s@(Ac&dtrf4Q61GbiUpB=t9!{mtRC8KbJA*b>36#sV^lM-KVxFhlhG^y2^nPxk8X=;JmK8N`ht zETFB3#MI*q;yWNEc&1F44tP)WWT<0#)0OABetWC$6KFYMpTgl#95Noz3%SP)1;}(t zFztp736__|v@x7XqVC750(SV(k5V;63oHT_y;19t+#yONIN)UU0hr(J2BCjFp0s)R z&c|Ku3#<)Y2D)!f`GHmt($xvrV8n@}lOlx}vBCi}Uq`9z-7EsMx;*#<8?}ctjwDR= zqv#g_PDB&%$AvbhsE)K9|Ma=TPO&jQ49!^l-n}9lX@!|3@bKeCRE(Iw{lMTaCw~ z65sA>JRYH~6)PU*Wvg)1#~EfWrjoJRcsHWqJ37gQtW5IGeRDYI2$@uD@~6jTH@ZOZ z%)B#TA2c6W3-P=BcTH>9G*Fy}pO#|$1tQIN~NB%!OI&dG9B9;4ne6`s_9;W zbt$gdVKKII5&epLUtFauhO4VSv`-|hbU<4;Lz*XEffh7Ec*vPrXH>L)zfe*V<)+tLQDoHXp)BYE}nx!{p z{~t&y=m18fIegOlVCyDVJ}zt0`Q=ZRN-BqJFb!SjJQO;yh_Q+@ENENKoo=OS1Ae#! zAAZDkDd-6%7bUk+ zad3)>Q0?i>Ih5ND%9!-TMs?M-!v^^2K74pOgH6o1z3#IqI0OV}yz3Ip^2*f0#`0(! z!QqHfH#Q^ZX>Eony0?ZUnFs_N3M(YW{!yV!jZ=dEy$aZ41a9my9symW2976S<>so_ z-8GUPBL7%NW%GC*)9Z10ViPC!t_7Hu*ew{wsjs{JXfJsT{zG=~0GK8TG&F*2fe?VE zkAOGV`zkC$^Sc8V8p`=K%!B|gY$kpAz zM@>j|_kD&pk?|=+rwNu4)hp&Fy>TfTySe3N>L^%(VogCgUM3B@j$)u4qX zrhdvn{O11otr3QFk(R!=6@%~v(tCk$prD1z?HnQgf{t1z^+Zp$ZeD?~b-vO+OpLTH z`(Jl})4_x20{9P0@chDH+{$~=O+uRHqUmZOIZAf8;KFR48ii;yHXYX$;FOH;buw3p zSf3P83+Xy1*sG$SA*-^!cJm_6%8Onm?`Cz8B;Xd2rSK!pvpy%&=~f_Me`e>NutyjA zCi~Grfzu}WiMOH~*;SmgGo#PLsb6He%bUfh zsOIBPoMg+Y$EXAr+hc~egx}hMR(u&(knZWxX;Rdx!N1sbFC41aeAb9ctmzLvk8e3qN)5P zVaLqq_H^?^H!{5^9XPeWS5BPgAu-Uwt;}As9_Ry9VMSwBP(=-nmQ80Fje$ zI;q|NY$K$e#qudoDm!T#XTOuiEy#M#8n@9P%QO&V`+6Q{Ha>{#8a79mqJQ1392?c2 zmL$3lgBdT22Z$NNe|xzU3t|T@tm@PP%yqj+G|HTH8w0oq;C3~9dvR&l8WAQE?`OPA zM!<1Gio{{H3zPW_R=L^SraV$7BDLltk5yMZa&g5~Y7gq2z}4Bu(Z>dm8eK+6xS?-| zv3mqnMvvAVGVQTbE+E_Ee{C}HAR7JsTeK?cMP2fRSKg{;1POUNW10S0lGSzTt*ux_Uwy`2JTF5Ll7!0ySF*OV;XNxf(RB z)0uYcu_Kq}eNs->BY-)6LG;HyKqWL%Xnu7d4Baow21H z5hf~-$LISCv9k+`$7}n=g*E9SkI4QNXy(k5#%&1dXcnOwhxyk zY8KXXs1p+CAi7~}Ewc2inGd?mC@8S5l=;102%1mYfKrh8MbsN*9j!hm6BqN4-Q2O< zpq0%SlUiq7aTzVmr7)`dd0Oqi?4$x3nhFSkNott*wu|7?S{FXc`O#t_s>4 zH&_2-ZvmI|W$U2G*LY`HIgM5!ek1hMWGoEA2mvkH*OS=Z-l1uXb~LuJTTyV;cW#Aw zonetR*fOTiWj3Qv*7r<%jMye8XCyDRiF{v}tFV9bpvVDGS+^1Mu*oLlP~pf7^=?0D za~RT%Ot~Hxkn&CCS2y(#KDz;+EoV=rZ%elo=gd#LIXHUdG4w6@lZ%xLk|}=DKzWvX zf+Q=V%(^P>yv(ex<-Nll3WE?UokvP{Oq-M z_Vg{7kBw88Shx1#v5zoeq(UY|6fSRs!;8`u1m>*@gpT*SPPzBnY@JSkX0l{Q!rh5; zmc5sZC`#w8jc4=DZAOr1&;?ZJ(6wbJcFugo5m`}Y(XFkHYeUSe9QNHQAzd@h1MeA`*4yc;h2&ovl!x{3w^!quSJDg!=($e! zR=FKA*a=xJs4%paoHzhl!gKwo66TLX`_XSt;H&%Gv5Tgz#=x%V-J!p`pM&96m}ow( zW(iJT|6s-yJvpsycZ#?!{``6xIT_)$hL(F+Pd+%#)9x>e(pG41ezZcs?|+lP^q)Dw zU-Wpj3UfF{5Aef_RVMghsoBm=^XqL_5~J|;c1mC_O|_S-K1{zd?Xw+E#pja{Wh3^7 z+Be5H$gBxj2*v%N^tRZ@Uv{LPB(lQKr=W(jHcRd1Ow5V(bs3}3G;SlCSM69Pg_NtA zklrd55W{!U2oaMS=%TGi(QHu4ArC4BYqVr%uxYO$C8fCESDw=~gEYPB8nC?pAm7Tf zm!=lc^?YTuB8gC{Hw_9}bQPlzr8P4Z`(HMnc)FJU){Wtk6oQLSIooEfhkoRD*_jZW zkWA{RWoRK?xJ%o5t#4QFLDF4G70R@&fjV^n7V00EqB88Mw`?_Rf?cV3GON}Iis_~z z&;0vBq!70AX_&^|7U^}rlXAQyRfL0rzun(>2V!xx^9FtyE$k5`$EY49%=K#xe61;{ z_*_S@2o-EWvFdeC(A(o`&ElXm)z3(JH5QMF^ztI&b4wdK%>;F@D(l)x=_)qF!UuU6DZh0H!1Pv8#8k2yxlEcmV-vPEp zNy%CaM-I}0UDcJv2#qkm=l|YsLO{?z;o|l_?$yMQD~wTkJHws5&|a~saootuU7Dx= zYu^KV`!!}=0b%cg3#(&7z#e&um9!Sm3BC-sh$|p|l>1&*iD!iq{Z!{)0(QNKRG|FZ z9_1F7x;skS02P5Xg)+Aib1YJ2C)s!+{>N6)(!-@Rb;&i?Shgz;85B1C4w>b?(7$ud z>%o?QH01~B{&yH@edyJF=ui*_4uakWY-b&IMis~lirr!ldj2)|9JgMp8(DAxmXPAZ=VXEjE?u<`!@KYnihLpOza7jsq;^y8KZeT1 zD{fR19?^#Li+M+Oe134K3Lw};Hm`8hTiAcHXZk{gVMs%jn~0R#Uf}qN4XGC%M26m< zpSsS1ppZlvdboZ5&7fzU=A#$7!8i6{6YTv?+@${gb(#8}1x!TTs(d#F5S@CfI3D#w zmxXTeUGx}!5R`8a69dMi8LI@sXin@LeCirvo93P`MNz9jVgJ4@%QiWmEtgbyqP~xt z%m0Ko5)~fTl-_w0MMB6wLKjybuX9Eh)T5nO~P zZ^|i-j&&jOvxv)5716`Q5Z3xt2Xz9AExOd*g;kNGY$Kt3tU4J2^X@aQxHFHD0rVmv z20VeX1i-->*EVVdzZTVRbrvg4_kB+{_tTO_OE{HGd&R6M`w+Xsc9-M?MLES$)$jg7 zI(4f#zN9Lk^m?7q_UvU_2ENV7*3H6Scv9sXknKXf?k&*Yq(s$EBBEU35X>+!yr&UHrt)cR6^MHj$@uUU+&bq#1j&Qyp zN6DUka*7HZ|62H8R}9WDXg;{xFQ?$BzAlu-+o+8}5foi|>XAMJgQAD&=0MxE&Yz zP!tU(nv{Lr|8W?g`@j+lPw7r>#Yzshbo+Y+Ux8iQ znsp-%B0_nU6m8n0#cWz>HQ$Q=6w@DPe3b6Xv`gh3{DYJ&)P2tDH9&7$HcBS07E}=# zSzNjqhI5&**Z3krv^j zxj)C(>opa_c~(RgB_>jXP)eVKijJ7*%u3|(we{_9^g@DeXt(l8-5c8qeRRHttO@D^ z4eV;`#znznP!I=#9>*_G_WYsC!2YAt)QdLaYzy#+$-T7+ST9=KTX`gtu~K*#Mt4IH zH*J2VjzKQypPIYsGF6J{7a{Egb$;)sE4UpWHG=Vs4BYQc;C~S~p4(_^6;P8mkW^=2 z&Jb^s`+c^Ln2kU`x=^ZcDLXL!(*50)jip2ald?-{xO zVq*WndmCYkEu%()3Wr~nnD>R8pCvVV9=2>XQ?Y1vVb@1_iVx4+MQpw;Xfl`bc365? zcSvZjuQuaTMnp^%86MASw_*4aePE}jrrt5m6S=tq!NKTyxkW-+x9{!V9!-NFkc*Rj zX0~?^!Q4}w2cCy2g`((hsua!?YH;7y;#)P;Z2tHcq%E?_1SEf7Sg061frMV@Od^W! zF#B4rbsEo}w)xFK<=+^!I6HB&Bc!o&0V^oKOZ4%IrmDhQtt>ka}mA% z=TF#eRahmNT8Xoi+u<<2N~HT0v}XQHD}09@%SkiMY71u;q#67{df>9qW_@7%y^ZwD z%8gtRz87JdXBeKS5;X}Me9Z7J)?Vv2B=_y{8MN867(+s0lhlkX$^Y}Gw?};m$YQvz zCTE=Wxt8RNEF`Jw{lM_}ZO4B`uDB@ZK3r4H%f?B%ug z;*pUg>P0*>%OCaDt4h+8BkPjkFebY}aWb(bztqrcuQ z{bo-%n2L2pfcNp1{U>N>tG$a_CQk(wZ947uO2SMYP|)aI!-lCo45t&7<2kjJP3=Q% z&uS2)+i0c4gE4T+PEdLwuzlfPy}~J1Tv|z=dqiHG;`+5?Vi3)zT$w7~!GPhC+(^wy zL3LRD5%KLegnZt*Gj1ngbzyau3pg}uSm!}hBJ+XGXibyeudK1UQMVNqof3=BotTJl zId4%i|3Y|`-3bXK(JaYMlKX&I#oF-Pn~0>NaC%E$(%w|%res2!eWI{Qxg$kCW%ff? z^uEo@HMt=$0`le3*0Px0#_=|uI<5HG?)k%*oW*dGTOq+PNy?xG9CbwLlJPRO!mh7~ zm7Se6;Ue6v&#mnTUKuFTVSX+4D3EX+qXJFemeqK})~gutR*ngTy$_HUn1;N}6_TWz zkmci|j)p5&&>-abHoYv9RsUYs^js+c32p4>j8ci?SLXw2feS&kt&QgkFAxJLGga&o zDXEee?lg5Y;vN_a5+p|na$im*{r25KW}1S@dipHs8t!L-Q@8)R(c6(S{d6ZkMGk6*vF zB7P%vX%fEvO1JpXpp}8nmYN}OAjj;=Rnn1ZYqZ9I{P(sxf!o``y&L2WKj=q1CZsd& zRKG%g0aME?In3}^4-yf&WhOcvetZr***67za-f3B0;%w$#U1*vd{}&HX9NzgRP5!5 zrGc!KFjV)Iuqx4a>(Y{ zo$i2HcPnbbEjADysBD3wLQG`O$2ldNk(DuS0$E(z@JTLb{fRIaXOr zEO9n}jwxkvO%2Tl>rS2$`<+E;FIT^SEhkdI@Ay6YC`UuFqCd<=Ca$DIKJO$9Ziy$s zM3benOmq)WWsKsGi{p$&QLWJ`pIi#kt7k#c7MWHFdZ zD-5t%dZGu)bU~>nMZ5fd`!0r?i-z}1{l3qEl3%S>+H8mGl+|lApI|z9MK?qQW_3#h zmdTmFWNR<|I!xpL{9`Qr-9;b3Y3%svBIt8<$9JU(!;z=WtezBV-cN(G)D54(K|Jh^ zm1)I6!#Jk1GhW4WjatoWmN~`LZyIN@%N?Op(N{`dWbj2sqxh4i%WBd|7+<@mRv4h9 z?Z;3oJ4$SPt2Xx%ElQF}@Pl97b!~q`dG;_28Xqv*vhr}@X4l4hHpTbRszFY361maC znmyCZr?y^z*vhcur%1iko1Vh9lX+K=YIj14Z)en8@@iBv377PM0!-+@OMAz&-jSv5 z{HLZk81;F)q+xFIN>f1^j#1O0w(HtR<@v{x8zrO<4P-+u&2k;@Ihb~LBi|p1^=uCQ0rU3ou+>=b$ZL~RKs#%wN4CnWL{sPFkcrHI(pMQuX zd+qiyJ)lD<%9-}k8EIeZ^6?6wFXOqhwSp7m zSB1p#ABPxoW7{+*H13D?kQKXzq$%W2q%aA5S8wYCa}`n9mwbDmbF$>eef+3!H+F+h zaw^JgHZm|7c)Urpumc_<7G$e;IRoPaI2R#ic$eoD;wfjhh8_^~*O^A@*bksl7g8|Q zlku?wGH2lspQbh({qfiu+Z4QERIR$Z-pZZFx%J*IRbioDo~2X~3)iBkR4E`-7}R;! zfQ*W)_g$8YOWW=p>+g51Fr>LS_$N#2Eu{4}I7YcjGx>A(F6$9u z-o+z4A78J-CvdLn?7+@j4|p3f2EEPf^l^2BOYz6U#5C*=+GJ)>2U z+h5%XD=_kxxl8NW%!urWwK`sm3&$Py;+U^nv^LmygDfiv??SH^8sRizOD1C!Sclxt zJA)8|E2}EfUj5&9xw0X}<=9ybJ|?v9hH|E1p_Y}Wr}g4h95EDd|M@XkrPlJqH0NrI zFYtP%ELL5hGW>uX^F!RSxu$K+RP*vW0g?NnbZ!x-cTdgYRJZ-ADrVn@UAH0Kwy_;^ z`D>K*d%dcBiL`~}9&PY%H6lDOiNp$L8-`*QQ_HDEth~|Yik~8^yid<-Wun3Z=!z(v zO|M#6nwBaKdp*pca$JxuU@JWEsL}x!`q$KG_{B`3pM%Hrzl#Nz&c=P<6T($|U1~x< zrWy>jXA&c+E>6yw;`g!Nl)uAKQhcavOF38@8J#ZR-G9?2ajl;b6UkO*6W>MC~3>fG5h&D&0w`1Ou(8V)7Qr(EVZKCIkk;(dXVI*t&_V3K1@@q0(lY#Rpxp(yo8F%9+*~)`58RR}V zW})gyB1$xZo&ER&O9{VkaK_Cp35Bj@^2Om8Wt<;1V9E>ZJ8k0y46^!WJ=AT46pr*= z21&uKr(eZhq==lbZsA=jV=pw2V?F%=dW)aOziPt z1HCvIM-sKqGo4u)dFL@!298WV05i5q)N;7PjWiu{OLF`}wvY^7JxWJn<05#yK7R#@*#NQ{00*N{dJ#BE`dgIb~ICMT0>kpS!LOj&a{Vr08e~8 z_Jw{la(n!ngp-V`d($WOK^r=IE2egXA5u#AsO4QUKq6Kl&J+?}SV~(JQy)6~cPU{JAH%o=On zw;d`w`;0*MMwE{-4k~GBwm%3_N`EKE9+Ua(Kfg7_I7XTXKeInV)^d^)2t!yj33GM+lkaWv+$O=p#4!Qy4Xs`~owbDwH& zuM10qcd)SedN8&UAyF^im?hy#ztGYRV5!-)6=L8&n`L+2TnZV-?)qb8jxoL}^Kw;Z z^dq;Gy;C?~?p{6X#M#vu{VCLKVm(bnvL)1H=}xa`}4=2 zvZ{UVb>@a0F&aZ_Lkcg;(Ucdio5_RIOgckErIo)d0VsFl2Ji>z?RHkDOio-QA%E(R zfn6}>>G>Q!4C29*IFg-4Gx~}Oo-g{68eNf5?}F>%W}CdnH?lR3RethV;u6!5cWGpm z1f4QczcdMzyp0F)xGEBZZPU#x3yOP@${&5lY|{mZV_}iwAq#@)`mq@)oU0_-HS3lD z}KUh-d@2VR)Ve{?U^p&cnnhzAo|kbkNKxOO$D7 zmfyVA6Vp1mOlfl@lc3~cSOn;Cb*D?MDMY8UcT|bF>sY}sVoqN{0-*(C53)DXBLw_mAg+&}h_(Int3p#Q)lgIrWOP3ZzA5OKs zWMlt@L)%a5A9w~A`sl13hM&19I;*Qx(sz-?Qd>ISq>nCV)rYk+jNp*pSo1S3LpyKF z2w3b!HZgi-kJm(%e9Wt_3X>l)u4bqat_a|hzrRBq`7?7E?1v_P0Wox*De21F=@4Nd zwYKjJ5{ZkVbKfbyzH>*!31wDh;GF%DNBrfZbW;474$<}VYELLfQ_*pLayJX^=I*Bk ztVD*Wyh(h`{XB|NnhMSBNxox1@5lmT(18PxnGv!o=&c?%XfQ%weioK|)zzmDpA5z-XF(lG zUZ_W|*IW4#D}R;eRA*n4PrYdKF}nJr5(Z0dXiAun67X~S0U%7V!qcnl;|`6>yl)nl zaUXM~>z5qIaqh$nF+x?l<%kRm2%{ngDLelv{=z97VG47c*Rc79fk&jACkFwf2r}v=|9%}iu3oni(W}a+b;j{^x>g}v{{Y@59kTC(6cGP(@8XH zIE6s_`3a{V8C|~$@_LBLWqUS~)m>h49LKo_GpJ(FEzKh-E}lj`<8lgy)9Dx@lhaW} z_ddwGD|IVEsLLszNM#0GzGDFZEo~7+M#8Y62v%KvQAeks!Uz&}MHbQ<67@(}+O9(0 z*FDR3QO9LjM$Vg*>PIO?%NisJkboc(PN9}6_aXwlzWISEj87trS#(3BXf@&0|e~U7toM~6zQQ^TQU`lfp z!bt=Y#4M6L$w|b*i6Tr{r!3{LYQD9jqPnhcaxyPyk@0NS-}n(+zvMWMb0;CdEL=1S zu5RI*fG|^ZS}F0J!Q)V6KYX{Cv>X}&p-F_-^dRpplk-&SeS}hI0DxM7L|FF)4c(f% zT9uXyOtN=q>aKWen}=8OiEXY~dON0OrYLqCZaWwi6+%;pkrsl8;3PtVr(kA3Cz{cx zjJMZ&4Dz5H5b6K2*GwNR?-<8G5UWfKS>aaU&Gp!YT>oM1!-=xvM%IohguddF!Fj)~j zt_*ZH3JsVwOY@QQ9xYjMvCugFm~J5r@8b-x+TG2%NExM0tcCQIVA|CMK}|B!DNq7` zP5@KYlIj0h-_>0Mw+t`7nEt(w!plF{9_HjF<4)D+j^j8tc=aNK1O-&yn7&LvHDipu z{mJf~VLp04*tv)0A`{@@>27d<{v{KWytR8hrDkdK=arr1UnpeE?k9`=@pLh!pPmjL(0U`mOS0XzEM1rK>9zf0UnJK}>JnD2B+= zkEkzAw>C3U%6zrbNY*6vOID<$su*2$WnEdm<%lJIO09Eh9n@93!I|=eTr8`-(3qc@ zq#4<{U?nLii$YZxj@;h5iq+)SMN!iJ`d9etFOdK;_dAV1QW4K(f0{ZQe&2fdTDGkx z^s9OXbbCCE8ufIwle2$qY}c_~6gVV(dJK%S(>qICs+LUs79P2x3NP zUW%AYO^4<6+LER`(>P9<*H3ar7c_pPDw1uE1*s{BS8;yvqtu4qs*>!BKMLsl-Ua8( z%PI9srK3+P4kYLQs4sl&Df5*%KEi81DZXx~nkkm_KxH@rnbAYe`O58sO|k{_{!Eyu z;*$tzWT03G08|40*Z(^Gl))>fs>l6S;SE%eDn*a_qsvQ<;~a<`ZDE>1ZJd9J){IX( zD!KN7WW^;V=ba2H(8*eS(lYB9Xt%uf_Q6-1l`2co_tyA1Ug8UoMzrZ`*53ar2}>k* z7VhLdB%dW2%cl?ng~<}{bV?D!Nr6zp38!i?-ifNIhQHA+dIyheGHUj1dCBGzB(07A zvrNA~bl@;IJOeP6dm-f}$>x=IaMms^chF3o9kGY@GuqI;b&F!uvPqEda=&~!$X$>A zCjD?@RDuFTkQ6AvE=sSU%lpoLlhD#KGw;o(6^s%jQk;l@Y@|MZlyW>=FqAgOXJ)^J zD|Iz~)}cO%2)S<(?3(v|`S{<8Egp+K)UMUF8fr_=b6?ezZMKMRmo9CEk4iahjsoRz z{x~|13#~4o-80I}Lugq)lN#7yL2bo_rTa`khzQZVawzT%PI zL$`e|n?;yJ-R$3H9BNAY=TEtea=jH|QmjLH`{^@YvGEgZ~sVC>hq8(Oi&Z70^u}{-Xp#W%tddSgYM4kFj z5heyAncis-nwkWjPT_RI&ksPH`lNlG#Q}zDtGbI#=c!5M?PuF@vNbOh<{^t7cDm~%+Z)~zhp7&_;4+ec>rAA^7V#p?sSmzJa6 z$Q;Lc7;8@Lx5qc_{F0EChXyJ4C|T^mPp0ZwV|p_hEGGW|N=UP8F6VvESNa`|eUR4h z3A>y7VC$)CxwpW4jJw2iS(%Q+Ng$J?Pe}R@%HS)N2$y!(~DC(v%+L zwr}SX?lBz}7DdizMxAv1lH)ke+sG?UvphwLMo55>{FJHD*&F&vlCaufMz|ZnksLUZK;3wV(H{ zd1x;|mhUa+-s?b}+lKK_m@IS_fvl@e^z z=AM@fKY@S!b^6y|IGys-rP|8+)xPGEvZ?z!MHj4^@ImIU?Ritj8}g3<$CH=Pi%gE= zIQvIInHr@iA)`>{1eFj|9d>bpzBvJ?^XVK$*Hn6q_j(UA1%j!jumLHO%C#=j&X4xZ zRCRl$eg^4O0WFN}!hQ9c<8!2|d`ix43MB*tm;gjb3Z?)vh{6mM(-h}tczS2w5U^Ta zn#%Fhrn`-lR}OFEJBTGufaJwAIfbv+HI?a?r`g1IP@d|`JSX?$ZT9nqTH+!< zmaWV4I_4ht_3dX#CEnkU+Vjug11XKYNqIE*ZlgqOZ=Yvt^;EVLd6v;kjeuGZ=_b}i zme(^cI9#ojb?s| zS5E8dy06;w{PN6kwN)8>idGks!^zdQ#NruSd39!e`6x8ie#u_y412E@GgHWLPFDtn z!PH<(p$XD&i^acW{~W>as;{=stL-7kILFccxjBrPS|H7GWX_ziYSh*1i?A~<3(RJE zC>-Oanw&6A+>~=VDFDdWJAHXAx3o;xSswo3x`t}DoT=(!jAu|U7JtGifHEkLG(Wzg z@3Axh5h=Vz*?-65#$XhnW&CI&>R3CTSx+s%rxu4wVhrN4e8D?gh zQf;GLOs>k8EsIi&j_(UpZc;;d@grlVF@hG)h~a$s`H^rsodTh$df6pj@Aagz(7w@m zBdg^lF5VX0hO~w8q}d*4$(Gud()oBX=k zsbb}#>bj~gKWtH-trk{VcCf69`Q2YOTk3F5?*X5-3Fgo44)?pm%IeRmgY$|mW&SZ{)VSJtB{x-V? z?hlfsM_q2?=d+&Azdt{x5JHM6C^^{@DHMZoaN*OhXjf}_=JkG%N%@x+?!I;R8uk>(KvI=`2poq@Gk?+`K@Bj*nA3q4acT2LW>`Mu?099ojE&3x8THffX4bnT zu?l_N{i0U^W^*!-LTU~(-qm>C=9yQb*H1KE=xtz$SC-`Qaen$1Mn~8gC5n|!IbzAW z8Ws^rN)RDpI&?9LX;6`zdCv-6+;#n!Ov+%_`}+g_na`$FH7@?q%y_jrQ`fXou2Si; z4&%Qx+t&N!&5q+ZpN0{HFp#EZVl3?Z4Zs1N&mCu;LRmUY>QR$#lA4*>;HW*Edw3Do z`2;EfseKjzGiZeNF^9}RjWJ5VkDMe>3aM$&GW-{EYR3Dr{+}9ue~#lg6Y_$u_OEyf zX_*)mB+H1&rX+n#-jLejv5b@XoEI!h-W?C9*PUj?Dg0GNwI`%XsXLlp?F49m+2Gw# z#=#prWJY~~!s(X!(PNxGi&h&hUj)Ox2A5psX~EZ9CacXZZ;NLy+iLN7Y6YF*1E$!3 zlzeXYrHt>;#|E_FG*c?>) zmmJ6WKs+wc8q7?SW+~6yS;5rL;QLz(z9*KN^D3V9eg`wK(x_$#uP##PVfvxtx)!VrWqmqS4NA08zD$)3x$6#oDJ z-$I^V@MEp^}O>)%aLfoAULW+Q^aVOi(bl5f@OR#EA@`lq zUFJfRjmL+LtN-cm_tEj~R&j>wmowKm6;0`2vkzMH?5#phc8jaFeY>95PQSA{q*O>V zL(a8Wegy!gFtZ4n=4emNel69#tO`4Rvwr4;gz*jLO<=WA&+gv%jTsde#W~{lV!ywa^F_@_hAuJJ>UgBB`?jiWxw@-R_K#a>(H6#0H)WDTwkwqY zFcAP^CI$+%8)Hd`rLt*iASWSG5?`Rp494t%T0fn3Gp`|{SOBN{{sajjkMLzlDJg)y zjT(ti=9@%gQ&JY2vraWjZ5sKG7T)XH{^@x9ulnz5)7+)2nx57ArTxX{bsWd}BxWWI zB_yr?3X2pqgT<6Ia??P6j@7vhqRPKvh-+SX#3r@#zoNuPw zOI{KOY&mJvRWl*;2%PNTl>jb!p-{+V!p_1t&j;!UVI$t!vvf;qU(l|UTF;_bTFg7S zOMn@vFv%;zKFQ6fK1PPAL-m&GUj4v2yo09yQYooU@+Q5P)~mb2%&2H@`2c$T#e%Dq zlDsgbQbG|au=xbTkEcb-hjU}40T7J}nAwFqp;JJanTm-piCK8nnta-3zG{j&y#JDi z$a9?Mv&b0Fc{SSUm+H)qN+W^@H0^(7*-2^8GCD9f$am{FPhnVi5wJ?j1OTuUykW?4 zo6hJA_MBJn-IC@^MDHX|+T`GUb7t+2WK3c71b{}6(Yh@#O0bw+Sw%p}{UT~NHGJlz z{pR`WwA#G9X(PC8Pnx6v>)_Cc-yt~dZT+#g@;C=!re9y{PSS{Wy0`hX*&jAGU*mY= za{6%*{p2ad?jsF3dTp9qP0SE47GWt`k&=>Z>OoGtr;fZKxO9BG*KO)s#!puBY3ao= zt$|nj#Ik6mDPEbGflv-!fjKf{Iz#8ZCZ+UWD&0RM>1GE@neMdxN?on?{D?2pBKmRO z>LVXVttTlJ^@={nUG@vDDw;O*jow>qHhU46(T$5S>bWWO5$$KrH-Ph#unNy}-K^IP@<9mhEi%?-8Z zj;J=)4_LqH4l^?*UDPm==VH0wbWqmEo1H(OSN^(&Zan3VY8LDWV$0`s)>bO?`Oov?1(-8cAwbiKj|2xEtxnaU92a1T(W}X^ywb{)*XV1HS)$ zgIRNrPmH;+oUKKs4lDeVMsQ-b1fBQIn>iD}?KtD#P22xwkeUosKtX~8!ivkk{&|X* z+}v<@QzpQL5}-C@F@yB$_Nc1HVA)O&DS0kbXkGu1g9=M8i!)&c15NYwNr{$Yy_**L zB{588r}S;gRbs{N!gRvOqt#PIuB+yh84vd0IFHfV6&v@zO50opF)fZiH!j=}DJQlr ziPG@x7JE`Qu}8OJu+|6wmPUUNKqxkftChrIX3u$A))1WCuf0VX33fW)9WhQ_JD<<+ z;^*emX;z}`mRwUQC>1CP{linF_Zaf4p)oHIV+3-fGBXo{s#tfXDLZY{P$^~7w0(7e z!KbBvcT@mcl+&ynac`G@al7qArj6q_R`HpuZwlMXG96SSvPYZ_UIuhyU2U-pq`D=O z7wFJ0EZ;ZjC39+I6;xwmE>0K@X^QQg0_;(etLfmkW9h9;eSNDeOgAb@NSHx#-wW0C ziz+m|M59tj39x8(i4;gcFriqrt#GBmFVZDmZ*NcYS?cq%vDoCBYiNx-w&sP&DN0z* z_7(t;P(l^)Vt+1Y)xv*Cxg+a4$8j9z5mZz7r0N&|!(fSY{0I=+azwf4gIMZ%(JzRz z@sy=(PVCm17*S&e8t-`Sbf5&rt_^JQjhudtK9h zEc9L)1;cTiinOeLcPWlTKbIP-QMBGG-SEEX_8p_;{q^FUA&(P4H4CH}podp6eLSsI zLQAYG&%YYMYT@m3JjVGSZ?amr(IUqc(r3ISwTl&&6iPXm7?M*$E^f7OT(AUtm-uWl z@$5>(tq0{^cG~<+FE7oMu=spto2laSvRn63M%G!$5Irx)T>!g;v+eSyJF@!oo_c7^ zBbEN#n5}0CQ;o3rdkG>ToG2PZ`Xpx87@zRA8RF@i8iV*Hol4P=290O{aK7Nb|KQJ` z-#_Q`@9*UtZO|{3^SbMr9LI4UXFpp`J*G?n$0>G+7m}9LqVn-Wf~2pk))kSQVf(FwW2E9G}F}Q z_6+Un=@L`q48(|w;`f68`3L{}qkqnJKI0s5S~8vMf<3Bt(UR-jugTd3Er*HSt)uS` z=vMZ%${pZ~`(Pl^?9k-I`YSy3d#C9jwiBvW~VdQ&ECx{p`lWheMe0Y9*JoA%q!1pEAd2=^!Bp zs-_yv%#`fRmH-Ko;uoaL%{=LCCzGjn4X+16n7-v!o|)tyKGE-OuIiaB&ke=Iw4(N~ z|K7#A$z|*wq<%1AABH~pFQq*r0RasVJmJ-)wHrlm};Wz_*<4tl9&{^wA zw$OtZA=EAXIlCB8`J)dJx z(I_&>sS9KuKe;FH$1$+Z-O&`k5xO+oAG{r3XREqYA{x#Y{GRdmxs#X9`2B-(#5p2r zNU02O$V+d+vk^Ovb2t>_ehilG#%`Dhaet))ZP>*ffj+n$5di}f zFyNxu^zQc${yF2HKlpRT@7Xlsq6SF!KUDHkZ)0j*7Pl@+UPLFa$9%t*)!_K}+B9ai zAcSEZZ))B?e%M=jw2HrCfOMY8A{*tM1)yBOlB_Gwnlf8?B=_i$O$>EI6#ynmMIMo) zwm~00w{7}cxkqk~ri=UpWb9;?ql$}}nHKL^I2dmvV(85@hD)G}5H&4>Oorfcl%DZ( zSh*l=J#W)(aHVh9cJaiklC-iOjl3Wl(siPqVV z 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 literal 0 HcmV?d00001 diff --git a/assets/images/login/icon-no-shop-head.png b/assets/images/login/icon-no-shop-head.png new file mode 100644 index 0000000000000000000000000000000000000000..5aca9066d6eb1291c10334abc2837ea0d5ccc0b2 GIT binary patch literal 33036 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 const bool.fromEnvironment("dart.vm.product"); + static String tokenKey = "token"; + + static String firstOpenKey = "device_first_open"; + // 全局路由观察者 static RouteObserver routeObserver = RouteObserver(); + /// 是否第一次打开 + static bool? isFirstOpen; + + /// 是否离线登录 + static bool isOfflineLogin = true; + static Future init() async { // 运行初始 WidgetsFlutterBinding.ensureInitialized(); @@ -19,6 +29,15 @@ class Global { // 本地存储初始化 await StorageUtil().init(); + // 网络请求初始化 + Request.init(); + + // 读取设备第一次打开 + isFirstOpen = StorageUtil().getBool(firstOpenKey); + var token = StorageUtil().getString(tokenKey); + if (!ToolFn.isBlank(token)) { + isOfflineLogin = false; + } // android 状态栏为透明的沉浸 if (Platform.isAndroid) { SystemUiOverlayStyle systemUiOverlayStyle = const SystemUiOverlayStyle( @@ -27,4 +46,15 @@ class Global { SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle); } } + + // 保存用户已打开APP + static saveAlreadyOpen() { + StorageUtil().putBool(firstOpenKey, false); + } + + // 保存token + static saveUserToken(String token) async { + StorageUtil().putJSON(tokenKey, token); + isOfflineLogin = ToolFn.isBlank(token); + } } diff --git a/lib/main.dart b/lib/main.dart index ecf0bcf..d3e054a 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -11,9 +11,7 @@ import 'utils/utils.dart'; import 'initial_binding.dart'; Future main() async { - debugPrint('应用初始化中...'); await Global.init(); - debugPrint('应用初始化完成...'); // 强制竖屏 StatusBarKit.setPortrait().then((_) { runApp(const StatusbarzCapturer( @@ -34,31 +32,31 @@ class MainApp extends StatelessWidget { final botToastBuilder = BotToastInit(); return GetMaterialApp( - debugShowCheckedModeBanner: false, - // 日志 - enableLog: true, - logWriterCallback: Logger.write, - defaultTransition: Transition.cupertino, - // 路由 - getPages: AppPages.routes, - navigatorObservers: [ - Global.routeObserver, - Statusbarz.instance.observer, - BotToastNavigatorObserver() - ], - // 启动页面 - initialRoute: AppPages.initial, - initialBinding: InitialBinding(), - builder: (context, widget) { - widget = MediaQuery( - data: MediaQuery.of(context) - .copyWith(textScaler: const TextScaler.linear(1.0)), - child: FlutterEasyLoading(child: widget), - ); - widget = botToastBuilder(context, widget); - return widget; - }, - ); + debugShowCheckedModeBanner: false, + // 日志 + enableLog: true, + logWriterCallback: Logger.write, + defaultTransition: Transition.cupertino, + // 路由 + getPages: AppPages.routes, + navigatorObservers: [ + Global.routeObserver, + Statusbarz.instance.observer, + BotToastNavigatorObserver() + ], + // 启动页面 + initialRoute: AppPages.initial, + initialBinding: InitialBinding(), + builder: (context, widget) { + widget = MediaQuery( + data: MediaQuery.of(context) + .copyWith(textScaler: const TextScaler.linear(1.0)), + child: FlutterEasyLoading(child: widget), + ); + widget = botToastBuilder(context, widget); + return widget; + }, + locale: Get.deviceLocale); }, ); } diff --git a/lib/pages/layout/home/home_binding.dart b/lib/pages/layout/home/home_binding.dart new file mode 100644 index 0000000..f5529e7 --- /dev/null +++ b/lib/pages/layout/home/home_binding.dart @@ -0,0 +1,10 @@ +import 'package:get/get.dart'; + +import 'home_logic.dart'; + +class HomeBinding extends Bindings { + @override + void dependencies() { + Get.lazyPut(() => HomeLogic()); + } +} diff --git a/lib/pages/layout/home/home_logic.dart b/lib/pages/layout/home/home_logic.dart new file mode 100644 index 0000000..10c1b7f --- /dev/null +++ b/lib/pages/layout/home/home_logic.dart @@ -0,0 +1,19 @@ +import 'package:get/get.dart'; + +import 'home_state.dart'; + +class HomeLogic extends GetxController { + final HomeState state = HomeState(); + + @override + void onReady() { + // TODO: implement onReady + super.onReady(); + } + + @override + void onClose() { + // TODO: implement onClose + super.onClose(); + } +} diff --git a/lib/pages/layout/home/home_state.dart b/lib/pages/layout/home/home_state.dart new file mode 100644 index 0000000..6953451 --- /dev/null +++ b/lib/pages/layout/home/home_state.dart @@ -0,0 +1,5 @@ +class HomeState { + HomeState() { + ///Initialize variables + } +} diff --git a/lib/pages/layout/home/home_view.dart b/lib/pages/layout/home/home_view.dart new file mode 100644 index 0000000..2d81292 --- /dev/null +++ b/lib/pages/layout/home/home_view.dart @@ -0,0 +1,92 @@ +import 'package:flutter/material.dart'; +import 'package:get/get.dart'; +import 'package:tdesign_flutter/tdesign_flutter.dart'; + +import '../../../utils/utils.dart'; +import 'home_logic.dart'; + +class HomePage extends StatelessWidget { + const HomePage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final logic = Get.find(); + final state = Get.find().state; + + double statusBarHeight = MediaQuery.of(context).padding.top; + + return PopScope( + canPop: false, + onPopInvoked: (_) { + ToolFn().isExit(); + }, + child: Scaffold( + body: Stack( + fit: StackFit.expand, + children: [ + Image.asset( + 'assets/images/home-tab-normal-bg.png', + fit: BoxFit.fitWidth, + ), + Padding( + padding: + EdgeInsets.only(top: statusBarHeight, left: 10, right: 10), + child: Column( + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + ClipRRect( + borderRadius: BorderRadius.circular(50), + child: Image.network( + "https://pic.ziyuan.wang/user/guest/2023/12/微信图片_20231109211458_c1a41ab0fd7dd.jpg", + width: 50.0, + )), + const SizedBox( + width: 5, + ), + const Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "商家: GAGA酒吧", + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.w500), + ), + Text( + "Huakk,欢迎回来!!!", + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.w400), + ) + ], + ) + ], + ), + const Row( + children: [ + Icon( + TDIcons.search, + size: 35, + ), + Icon( + TDIcons.scan, + size: 35, + ), + Icon( + TDIcons.sound, + size: 35, + ), + ], + ) + ], + ) + ], + )) + ], + ))); + } +} diff --git a/lib/pages/layout/home/index.dart b/lib/pages/layout/home/index.dart new file mode 100644 index 0000000..eb5b612 --- /dev/null +++ b/lib/pages/layout/home/index.dart @@ -0,0 +1,6 @@ +library home; + +export './home_binding.dart'; +export './home_logic.dart'; +export './home_state.dart'; +export './home_view.dart'; \ No newline at end of file diff --git a/lib/pages/layout/index.dart b/lib/pages/layout/index.dart new file mode 100644 index 0000000..2d5df90 --- /dev/null +++ b/lib/pages/layout/index.dart @@ -0,0 +1,4 @@ +library tabbar; + +export './home/index.dart'; +export './user/index.dart'; diff --git a/lib/pages/layout/user/index.dart b/lib/pages/layout/user/index.dart new file mode 100644 index 0000000..399fba9 --- /dev/null +++ b/lib/pages/layout/user/index.dart @@ -0,0 +1,6 @@ +library user; + +export './user_binding.dart'; +export './user_logic.dart'; +export './user_state.dart'; +export './user_view.dart'; diff --git a/lib/pages/layout/user/user_binding.dart b/lib/pages/layout/user/user_binding.dart new file mode 100644 index 0000000..fa61dc1 --- /dev/null +++ b/lib/pages/layout/user/user_binding.dart @@ -0,0 +1,10 @@ +import 'package:get/get.dart'; + +import 'user_logic.dart'; + +class UserBinding extends Bindings { + @override + void dependencies() { + Get.lazyPut(() => UserLogic()); + } +} diff --git a/lib/pages/layout/user/user_logic.dart b/lib/pages/layout/user/user_logic.dart new file mode 100644 index 0000000..d10d7cc --- /dev/null +++ b/lib/pages/layout/user/user_logic.dart @@ -0,0 +1,19 @@ +import 'package:get/get.dart'; + +import 'user_state.dart'; + +class UserLogic extends GetxController { + final UserState state = UserState(); + + @override + void onReady() { + // TODO: implement onReady + super.onReady(); + } + + @override + void onClose() { + // TODO: implement onClose + super.onClose(); + } +} diff --git a/lib/pages/layout/user/user_state.dart b/lib/pages/layout/user/user_state.dart new file mode 100644 index 0000000..8f24f71 --- /dev/null +++ b/lib/pages/layout/user/user_state.dart @@ -0,0 +1,5 @@ +class UserState { + UserState() { + ///Initialize variables + } +} diff --git a/lib/pages/layout/user/user_view.dart b/lib/pages/layout/user/user_view.dart new file mode 100644 index 0000000..4958e61 --- /dev/null +++ b/lib/pages/layout/user/user_view.dart @@ -0,0 +1,30 @@ +import 'package:flutter/material.dart'; +import 'package:get/get.dart'; + +import '../../../utils/utils.dart'; +import 'user_logic.dart'; + +class UserPage extends StatelessWidget { + const UserPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final logic = Get.find(); + final state = Get.find().state; + + return PopScope( + canPop: false, + onPopInvoked: (_) { + ToolFn().isExit(); + }, + child: Scaffold( + appBar: AppBar( + title: const Text("商家中心"), + ), + body: const Center( + child: Text("商家中心!!!"), + ), + ), + ); + } +} diff --git a/lib/pages/login/logic.dart b/lib/pages/login/logic.dart index cfd5793..71a620f 100644 --- a/lib/pages/login/logic.dart +++ b/lib/pages/login/logic.dart @@ -1,20 +1,64 @@ import 'dart:io'; import 'package:bot_toast/bot_toast.dart'; +import 'package:flutter/cupertino.dart'; import 'package:get/get.dart'; +import 'package:tdesign_flutter/tdesign_flutter.dart'; import 'state.dart'; +import '../../utils/utils.dart'; +import '../../api/index.dart'; class LoginLogic extends GetxController { final LoginState state = LoginState(); - void isExit(context) { - if (state.lastPressedAt == null || - DateTime.now().difference(state.lastPressedAt!) > - const Duration(seconds: 1)) { - //两次点击间隔超过1秒则重新计时 - state.lastPressedAt = DateTime.now(); - BotToast.showText(text:"再按一次退出程序"); - return; + void setPhone(String value) => state.phone = value; + + void setSmsCode(String value) => state.code = value; + + // 验证码倒计时 + void startCountdownTimer() { + if (state.countTime > 0) { + state.countTime--; + update(); + Future.delayed(const Duration(seconds: 1), startCountdownTimer); + } else { + state.countTime = 0; + update(); } - exit(0); + } + + // 获取验证码 + Future getCode(context) async { + if (ToolFn.isBlank(state.phone) || ToolFn.checkMobile(state.phone)) { + return ToolFn.tips("请输入正确的手机号"); + } + if (state.countTime == 0) { + final res = + await Request.post>(LoginApi.getCode, data: { + "phone": state.phone, + }); + TDToast.showText(res["msg"].toString(), context: context); + state.countTime = 60; + startCountdownTimer(); + } + } + + // 登录 + Future loginFn(context) async { + if (ToolFn.isBlank(state.phone) || ToolFn.checkMobile(state.phone)) { + return ToolFn.tips("请输入正确的手机号"); + } + if (ToolFn.isBlank(state.code)) { + return ToolFn.tips("请输入正确的验证码"); + } + FocusScope.of(context).unfocus(); + final res = + await Request.post>(LoginApi.phoneLogin, data: { + "Phone": state.phone, + "Code": state.code, + }); + // 保存token + StorageUtil().putString("token", res["data"]["token"]); + // 保存用户信息 + StorageUtil().putJSON("userInfo", res["data"]["data"]); } } diff --git a/lib/pages/login/state.dart b/lib/pages/login/state.dart index 8c67d4e..df2f7c0 100644 --- a/lib/pages/login/state.dart +++ b/lib/pages/login/state.dart @@ -1,7 +1,22 @@ class LoginState { - DateTime? lastPressedAt; //上次点击时间 + // 表单 + late String phone; + + late String code; + + // 验证码倒计时 + late int countTime; + + // 登录按钮状态 + late bool loginBtnStatus; LoginState() { - ///Initialize variables + phone = ''; + + code = ''; + + countTime = 0; + + loginBtnStatus = true; } } diff --git a/lib/pages/login/view.dart b/lib/pages/login/view.dart index 2efd7da..a3b0a30 100644 --- a/lib/pages/login/view.dart +++ b/lib/pages/login/view.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:get/get.dart'; +import 'package:tdesign_flutter/tdesign_flutter.dart'; +import '../../utils/utils.dart'; import 'logic.dart'; class LoginPage extends StatelessWidget { @@ -9,18 +11,123 @@ class LoginPage extends StatelessWidget { final logic = Get.find(); final state = Get.find().state; - DateTime? _lastPressedAt; - @override Widget build(BuildContext context) { return PopScope( canPop: false, onPopInvoked: (_) { - logic.isExit(context); + ToolFn().isExit(); }, - child: const Scaffold( - body: Center( - child: Text("login"), + child: Scaffold( + backgroundColor: Colors.white, + body: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Image.asset( + "assets/images/login/icon-no-shop-head.png", + width: double.maxFinite, + ), + Padding( + padding: const EdgeInsets.only(left: 10, right: 10, top: 50), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Padding( + padding: EdgeInsets.only(left: 15), + child: Text("手机登录", + style: TextStyle( + fontSize: 30, + color: Colors.black, + fontWeight: FontWeight.w400))), + const SizedBox(height: 16.0), + Form( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + TDInput( + maxNum: 11, + leftLabel: '+86', + hintText: '请输入手机号码', + onChanged: (text) { + logic.setPhone(text); + }, + onClearTap: () { + state.phone = ""; + }, + ), + TDInput( + maxNum: 6, + hintText: '请输入验证码', + rightBtn: SizedBox( + width: 100, + child: Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Padding( + padding: const EdgeInsets.only(right: 16), + child: Container( + width: 0.5, + height: 24, + color: TDTheme.of(context).grayColor3, + ), + ), + GetBuilder( + builder: (_) { + return state.countTime != 0 + ? TDText( + '重发(${state.countTime}秒)', + textColor: TDTheme.of(context) + .fontGyColor4, + ) + : TDText("发送验证码", + textColor: TDTheme.of(context) + .brandNormalColor); + }, + ), + ], + ), + ), + needClear: false, + onBtnTap: () { + logic.getCode(context); + }, + onChanged: (text) { + logic.setSmsCode(text); + }, + onClearTap: () { + state.phone = ""; + }, + ), + Padding( + padding: const EdgeInsets.all(15), + child: TDText( + "未注册的手机号登录成功后将自动注册", + textColor: TDTheme.of(context).grayColor6, + textAlign: TextAlign.start, + style: const TextStyle(fontSize: 13), + )), + GetBuilder( + builder: (_) { + return TDButton( + isBlock: true, + size: TDButtonSize.large, + theme: TDButtonTheme.primary, + width: double.maxFinite, + text: "立即登录", + disabled: false, + onTap: () { + logic.loginFn(context); + }, + ); + }, + ), + ], + ), + ) + ]), + ) + ], ), )); } diff --git a/lib/pages/splash/splash_logic.dart b/lib/pages/splash/splash_logic.dart index b6c247b..db0c0b6 100644 --- a/lib/pages/splash/splash_logic.dart +++ b/lib/pages/splash/splash_logic.dart @@ -54,10 +54,9 @@ class SplashLogic extends GetxController with GetTickerProviderStateMixin { await Future.delayed(const Duration(seconds: 3), () { final token = StorageUtil().getString("token"); if (!ToolFn.isBlank(token)) { - Get.offAllNamed('/home'); + Get.offAllNamed('/tab'); } else { Get.offAllNamed('/login'); - // Get.toNamed('/login'); } }); } diff --git a/lib/pages/tab/index.dart b/lib/pages/tab/index.dart new file mode 100644 index 0000000..2b0c598 --- /dev/null +++ b/lib/pages/tab/index.dart @@ -0,0 +1,6 @@ +library tab; + +export './tab_logic.dart'; +export './tab_state.dart'; +export './tab_view.dart'; +export './tab_binding.dart'; diff --git a/lib/pages/tab/tab_binding.dart b/lib/pages/tab/tab_binding.dart new file mode 100644 index 0000000..67f81ff --- /dev/null +++ b/lib/pages/tab/tab_binding.dart @@ -0,0 +1,14 @@ +import 'package:flutter_jdt_store/pages/layout/home/index.dart'; +import 'package:flutter_jdt_store/pages/layout/user/index.dart'; +import 'package:get/get.dart'; + +import 'tab_logic.dart'; + +class TabBinding extends Bindings { + @override + void dependencies() { + Get.lazyPut(() => TabLogic()); + Get.lazyPut(() => HomeLogic()); + Get.lazyPut(() => UserLogic()); + } +} diff --git a/lib/pages/tab/tab_logic.dart b/lib/pages/tab/tab_logic.dart new file mode 100644 index 0000000..f35b743 --- /dev/null +++ b/lib/pages/tab/tab_logic.dart @@ -0,0 +1,48 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:get/get.dart'; + +import '../../global.dart'; +import 'tab_state.dart'; + +class TabLogic extends GetxController { + final TabState state = TabState(); + + @override + void onInit() { + super.onInit(); + state.pageController = PageController(initialPage: state.currentPage); + } + + @override + void onReady() { + // TODO: implement onReady + super.onReady(); + } + + @override + void onClose() { + // TODO: implement onClose + super.onClose(); + } + + @override + void dispose() { + state.pageController!.dispose(); + super.dispose(); + } + + handlePageChanged(int page) { + state.currentPage = page; + update(); + } + + handleNavBarTap(int index) { + if (index == state.currentPage) return; + if (Global.isOfflineLogin && index != 0) { + Get.toNamed('/tab'); + return; + } + state.pageController!.jumpToPage(index); + } +} diff --git a/lib/pages/tab/tab_state.dart b/lib/pages/tab/tab_state.dart new file mode 100644 index 0000000..51a844c --- /dev/null +++ b/lib/pages/tab/tab_state.dart @@ -0,0 +1,10 @@ +import 'package:flutter/cupertino.dart'; + +class TabState { + late int currentPage; + PageController? pageController; + TabState() { + ///Initialize variables + currentPage = 0; + } +} diff --git a/lib/pages/tab/tab_view.dart b/lib/pages/tab/tab_view.dart new file mode 100644 index 0000000..974d471 --- /dev/null +++ b/lib/pages/tab/tab_view.dart @@ -0,0 +1,89 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:tdesign_flutter/tdesign_flutter.dart'; +import '../../utils/utils.dart'; +import '../layout/home/index.dart'; +import '../layout/user/index.dart'; +import 'tab_logic.dart'; + +class TabPage extends StatelessWidget { + const TabPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final logic = Get.find(); + final state = Get.find().state; + + /// 内容页 + Widget buildPageView() { + return GetBuilder(builder: (_) { + return PageView( + physics: const NeverScrollableScrollPhysics(), + controller: state.pageController, + onPageChanged: logic.handlePageChanged, + children: const [ + HomePage(), + UserPage(), + ], + ); + }); + } + + List createBottomItems() { + return [ + const BottomNavigationBarItem( + icon: Icon( + TDIcons.dashboard, + color: Colors.grey, + ), + activeIcon: Icon( + TDIcons.dashboard, + color: Color.fromRGBO(0, 82, 217, 1), + ), + label: "工作台", + ), + const BottomNavigationBarItem( + icon: Icon( + TDIcons.desktop, + color: Colors.grey, + ), + activeIcon: Icon( + TDIcons.desktop, + color: Color.fromRGBO(0, 82, 217, 1), + ), + label: "商家中心", + ), + ]; + } + + /// 底部导航 + Widget buildBottomNavigationBar() { + List bottomItems = createBottomItems(); + return GetBuilder(builder: (_) { + return BottomNavigationBar( + items: bottomItems, + currentIndex: state.currentPage, + backgroundColor: Colors.white, + unselectedItemColor: Colors.grey, + selectedItemColor: const Color.fromRGBO(0, 82, 217, 1), + type: BottomNavigationBarType.fixed, + onTap: logic.handleNavBarTap, + selectedFontSize: 10.sp, + unselectedFontSize: 10.sp, + iconSize: 32.w, + ); + }); + } + + return PopScope( + canPop: false, + onPopInvoked: (_) { + ToolFn().isExit(); + }, + child: Scaffold( + body: buildPageView(), + bottomNavigationBar: buildBottomNavigationBar(), + )); + } +} diff --git a/lib/router/app_pages.dart b/lib/router/app_pages.dart index 1cff134..e2fd6d2 100644 --- a/lib/router/app_pages.dart +++ b/lib/router/app_pages.dart @@ -1,11 +1,15 @@ import 'package:get/get.dart'; import '../pages/splash/index.dart'; import '../pages/login/index.dart'; +import '../pages/layout/index.dart'; +import '../pages/tab/index.dart'; class AppPages { static const String initial = '/'; static const String login = '/login'; static const String home = '/home'; + static const String user = '/user'; + static const String tab = '/tab'; static final List routes = [ GetPage( @@ -14,6 +18,11 @@ class AppPages { binding: SplashBinding()), GetPage( name: AppPages.login, page: () => LoginPage(), binding: LoginBinding()), - // GetPage(name: AppPages.home, page: () => HomePage()), + // GetPage( + // name: AppPages.home, page: () => HomePage(), binding: HomeBinding()), + // GetPage( + // name: AppPages.user, page: () => UserPage(), binding: UserBinding()), + GetPage( + name: AppPages.tab, page: () => const TabPage(), binding: TabBinding()), ]; } diff --git a/lib/utils/request.dart b/lib/utils/request.dart new file mode 100644 index 0000000..2bfedfe --- /dev/null +++ b/lib/utils/request.dart @@ -0,0 +1,85 @@ +import 'package:dio/dio.dart'; +import 'package:flutter_jdt_store/utils/utils.dart'; + +class Request { + // 构造函数 + Request() { + init(); + } + + static final Dio _dio = Dio(); + + static void init() { + // 基本配置 + _dio.options.baseUrl = + "https://www.wanzhuanyongcheng.cn/app"; // 替换为你的 API 地址 + _dio.options.connectTimeout = const Duration(seconds: 15); // 连接超时时间,单位是毫秒 + _dio.options.receiveTimeout = const Duration(seconds: 15); // 接收超时时间,单位是毫秒 + + _dio.options.headers["Content-Type"] = "application/json; charset=utf-8"; + + _dio.options.headers["token"] = StorageUtil().getString("token"); + + // 添加请求拦截器 + _dio.interceptors.add(InterceptorsWrapper( + onRequest: (options, handler) { + // 在请求被发送之前做一些事情 + return handler.next(options); // 必须返回 options + }, + )); + + // 添加响应拦截器 + _dio.interceptors.add(InterceptorsWrapper( + onResponse: (response, handler) { + // 在响应被处理之前做一些事情 + final Map data = response.data; + // 状态码不等于200时抛出异常 + if (data["code"] != 200) { + ToolFn.tips(data["msg"].toString()); + throw DioException( + requestOptions: response.requestOptions, + response: response, + error: data["msg"], + ); + } + return handler.next(response); // 必须返回 response + }, + onError: (DioException e, handler) { + // 在响应错误被处理之前做一些事情 + return handler.next(e); // 必须返回 error + }, + )); + } + + static Future get(String path, {Map? params}) async { + try { + final Response response = + await _dio.get(path, queryParameters: params); + return response.data!; + } catch (error) { + throw _handleError(error); + } + } + + static Future post(String path, {Map? data}) async { + try { + final Response response = await _dio.post(path, data: data); + return response.data!; + } catch (error) { + throw _handleError(error); + } + } + + // 处理错误 + static Exception _handleError(error) { + if (error is DioException) { + String message = "网络请求失败"; + if (error.response != null && error.response!.data != null) { + message = error.response!.data.toString(); + } + return Exception(message); + } else { + return Exception("未知错误"); + } + } +} diff --git a/lib/utils/tool.dart b/lib/utils/tool.dart index a07b8b3..35c8947 100644 --- a/lib/utils/tool.dart +++ b/lib/utils/tool.dart @@ -1,9 +1,45 @@ +import 'dart:io'; + +import 'package:bot_toast/bot_toast.dart'; +import 'package:flutter/material.dart'; + class ToolFn { + DateTime? lastPressedAt; //上次点击时间 + // 字符串是否为空 - static bool isBlank(String? str) { - if (str == null || str.isEmpty) { + static bool isBlank(String str) { + if (str.isEmpty) { return true; } return false; } + + ///手机号验证(只验证前三位号段) + static bool checkMobile(String str) { + if (isBlank(str)) { + return true; + } + return !RegExp(r"^1(3\d|4[5-9]|5[0-35-9]|6[567]|7[0-8]|8\d|9[0-35-9])\d{8}") + .hasMatch(str); + } + + static void tips(String msg) { + BotToast.showText( + text: msg, + contentColor: Colors.black, + textStyle: const TextStyle(fontSize: 17, color: Colors.white)); + } + + // 监听返回键 + void isExit() { + if (lastPressedAt == null || + DateTime.now().difference(lastPressedAt!) > + const Duration(seconds: 1)) { + //两次点击间隔超过1秒则重新计时 + lastPressedAt = DateTime.now(); + ToolFn.tips("再按一次退出程序"); + return; + } + exit(0); + } } diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index 59d82e5..a823bcf 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -3,4 +3,5 @@ library utils; export 'logger.dart'; export 'status_bar.dart'; export 'storage.dart'; -export 'tool.dart'; \ No newline at end of file +export 'tool.dart'; +export 'request.dart'; \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index 176c045..f92b8ce 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -9,6 +9,14 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "3.4.9" + args: + dependency: transitive + description: + name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.4.2" async: dependency: transitive description: @@ -174,6 +182,14 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "5.2.0" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: d39e7f95621fc84376bc0f7d504f05c3a41488c562f4a8ad410569127507402c + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.0.9" flutter_swiper_null_safety: dependency: transitive description: @@ -493,6 +509,30 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "1.3.2" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: "0f0c746dd2d6254a0057218ff980fc7f5670fd0fcf5e4db38a490d31eed4ad43" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.9+1" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "0edf6d630d1bfd5589114138ed8fada3234deacc37966bec033d3047c29248b7" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.9+1" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: d24333727332d9bd20990f1483af4e09abdb9b1fc7c3db940b56ab5c42790c26 + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.9+1" vector_math: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 21c57b6..43a5237 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -15,6 +15,7 @@ dependencies: sdk: flutter flutter_easyloading: ^3.0.5 flutter_screenutil: ^5.9.0 + flutter_svg: ^2.0.9 get: ^4.6.6 package_info_plus: ^5.0.1 shared_preferences: ^2.2.2 @@ -29,4 +30,6 @@ dev_dependencies: flutter: uses-material-design: true assets: - - assets/images/logo.png \ No newline at end of file + - assets/images/logo.png + - assets/images/login/icon-no-shop-head.png + - assets/images/home-tab-normal-bg.png \ No newline at end of file