From 190db7446d6138bd6c1b6854b60599493573fb41 Mon Sep 17 00:00:00 2001 From: Glore Zeng Date: Mon, 2 Nov 2026 18:21:30 +0800 Subject: [PATCH] Add profile sharing pages and verified invitation contact flow --- src/app.wpy | 17 +++- src/images/ambassador-contact.jpg | Bin 0 -> 104282 bytes src/images/fulian-logo.png | Bin 0 -> 38135 bytes src/pages/tabBar/user.wpy | 30 +++---- src/pages/users/more.wpy | 37 ++++++++ src/pages/users/myShare.wpy | 139 ++++++++++++++++++++++++++++++ src/pages/users/shareCard.wpy | 74 ++++++++++++++++ src/styles/sharing.less | 29 +++++++ src/utils/invitation.js | 10 +++ src/utils/sharing.js | 116 +++++++++++++++++++++++++ tools/sharing/check-contact.cjs | 27 ++++++ tools/sharing/check.cjs | 22 +++++ tools/sharing/regression.cjs | 36 ++++++++ 13 files changed, 515 insertions(+), 22 deletions(-) create mode 100644 src/images/ambassador-contact.jpg create mode 100644 src/images/fulian-logo.png create mode 100644 src/pages/users/more.wpy create mode 100644 src/pages/users/myShare.wpy create mode 100644 src/pages/users/shareCard.wpy create mode 100644 src/styles/sharing.less create mode 100644 src/utils/invitation.js create mode 100644 src/utils/sharing.js create mode 100644 tools/sharing/check-contact.cjs create mode 100644 tools/sharing/check.cjs create mode 100644 tools/sharing/regression.cjs diff --git a/src/app.wpy b/src/app.wpy index bf0fdde..c6a7eda 100644 --- a/src/app.wpy +++ b/src/app.wpy @@ -20,6 +20,7 @@ import promisify from '@wepy/use-promisify' import {wx_login} from './utils/util' import {IM} from './utils/im' import {initEid} from './mp_ecard_sdk/main' +import {invitationFromOptions} from './utils/invitation' // import {service} from './config' wepy.use(promisify) @@ -50,10 +51,11 @@ wepy.app({ onLaunch(e) { let vm = this + const invitationID = invitationFromOptions(e) + if (invitationID) wx.setStorageSync('from_user_id', invitationID) console.log(e, 'uuu=') vm.appLogin() console.log(e, 'e=') - console.log(decodeURIComponent(e.query.scene), 'e=') // if (e.path === 'pages/home/informationV2') { // wx.redirectTo({ url: `/pages/home/information?${decodeURIComponent(e.query.scene)}` }) // } @@ -95,15 +97,19 @@ wepy.app({ if (options.path === 'pages/tabBar/home1') { wx.switchTab({url: `/pages/tabBar/home?${decodeURIComponent(options.query.scene)}`}) } - if (options.query.scene) { - let sceneList = decodeURIComponent(options.query.scene).split(/[= &]/) + if (options.query && options.query.scene) { + let sceneList = [] + try { sceneList = decodeURIComponent(options.query.scene).split(/[= &]/) } catch (_) {} sceneList.forEach((item, index) => { if (item == 'userId') { wx.setStorageSync('agent_user_id', sceneList[index + 1]) } }) } - if (options.query && options.query.from_user_id) { + const invitationScene = invitationFromOptions(options) + if (invitationScene) { + wx.setStorageSync('from_user_id', invitationScene) + } else if (options.query && options.query.from_user_id) { wx.setStorageSync('from_user_id', options.query.from_user_id) } else { if (options.path && options.path === 'pages/sub_mall/confirmOrder') { @@ -235,6 +241,9 @@ subPackages: [ 'orderDetails', 'exclusiveService', 'myDynamic', +'more', +'myShare', +'shareCard', 'logoutDefault', 'ImageCropper', 'myDynamicDetail', diff --git a/src/images/ambassador-contact.jpg b/src/images/ambassador-contact.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e59ceeaa4163d9bf9158767cf4f69f459147ec03 GIT binary patch literal 104282 zcmeEucTiN{w&p={4uT+A0Y#7ul9NbQlH}APS#kymjUYiXsGxu}l941i=bUqpoFs>C zVw1Y(_`CPbn|J@2c~f_)ZcW{$HdPeo?6cS2`>gL<-&(uTGw5Z2OhrLi0l>fj01WU4 zK+gek03J3DE)F&xE)Fg}9v(i?Z6YE z7C8ncIR?4|U;@X9jq%q9`1=Rr7A6)rU_5*RLhyo0GT;^lCgv?HOl)i{EbwZ7@c#f7 zIX1;TK3SaGnr687T`2kA#ec_Rd0N^^r8Np?6?p9$gimmXn&vJo+k=Pfk2nN{o(PMG zipf2bS5Q<^R(YwdqpPQHU}$b(X=QC=`^L@P!_&*#=WX!&kkGL34-p9;KYdP2`tmh7 zBQq;ICpRzuM_GAAWmR=eZCzV?M`u@ePjBDY_{8MY^vti>mDRQN-y54-+dGJ(N*H|7qBN+BFLhVPb%bhe-}d z1Lv3Q8G!`unS zcAg-Rwx_5x8|##HJZNk+i8A6gdj(i~-VWBL0|9J45@D4TZYVW{2u=v14FaR3!7 zzgKgX9{a}F7gb??y^)32qp5Jt{0i^Fy_K+kjXjiOs!is|a5 zkxabLuXs{p%sC0NMs zYeunT*CHd81^7AR*~v%xzhm&j*|m9FS?;dkB8vO2x`jPWSw)oyLKk@IEq_%+nrFZoU1G$HXsc2|pX3tvo)h$N}GPGRNY z?VTp9@k)FNE5T~9sI#&c9s>DEkH}?@@>iUHJp`;51Er!fntZF95V>JZ_r2XzrXL^oc&87Pc<;)eX24MC2e({nQoTObsrL^tV3VKJ)-;cSwy_f zLNCqF5*hm)IWALPHg;!E6?-@p!Czs8Ep-{|5I!s)zh4bRs|0ho1|CVHlkeaDr11|&f z*@4{GfsbU;U%#&937>_Wg;agxPo*>Z`HO`Gi_EU1Q+GlO|8bVl$M-C!`>}7I*N7`^ zIusrj={)xm*HsIN*+XHy3ZU#7UH2^z{r%O_qQ*ck!H4O?4c|+{1zGpF55IZ&p;*C1 zw%fej52kb}6bb1?51^Nmy$nO!mHqko!HeY{H(qM+n=iE!8%L8dGouQI3MZP26&EF( z2+v5DRcQDj)^WoVF?YW8K;^r8nG=`OMz)SVh**KrMl?Vupro8AYJd1yKfWPjO;Txh zs;-DfvvRU9;i%0r8Fx!>x`w5cVV7D19vZ?Oml!0?rjI(%W|CT4de~^@$NRHk)U+v*4 zPlqoLrtvR%A2Z3(dOb@%UOLY>(c!6v?rsQW1K-*UZZ2`{vC43>2p17M+YH@#s-)B) zzEH`6T;$bCkI>7kB~!a6Z?(ys!aVwVyvkoKJG}g*Zn%gB-k+~D-(U$2Ut>9;?gxqt zlCA~3%e1}o)}bmsPvVJlA>Nqk-Pe?_tZ6pkg-ndsPvJ>1FJjM{z81Bg@d)%^NsJVG z?GJfj-i$`Qu4>}AmK#ei{|WYb=dxwM0$Slvs&L`_1Pv5E72C}As8f$^VnPE}hC*lG zb8qrG(mWm1mu7|CjXlzd*wKIuF$0UX2?ZK>6DW1*S)x8#NeI2|?KpeV*6Wlv7s@BC zQ7p#PGX42lWAd7Gb&0gqEZc6@^8Kjshgms0=DzpNiuh@Tq${SuxyZLVNH^**-R(Os zbLnK=XjpH(v~d*U7rzQ$!iKh7^X3L<^cJ%I{(t48W}Q<{kt z#5{_7YK1s=&NlK)oi)rneA1b^*z>Tb`(^{!TUjpz$G0LJQuDV~6X-?dUtna%_IZ>VG60=t5Q%^|vJq~jZtug4!W$Mgv}2l09MW>&>`db%8#oJ~9{F7TWjZiVNx>~I zJe5@+#WGlpXAQ~aabEt!el*J zKV?1NH74DcLj#Nf;9f8Ohz8hqE8!*WJVf4ZdSQB_Q_I6NucF2eO=VwpN$y76cDaaISuc|P@@FQINgO~cRX=J3 z4G5-D=v=^h0;HNu43NiYfQ_yV4IFf%fy_M2&&aQtNtMX>+NG!h~LXG)M5X8qJulhBNL^bx@Ta3fBoCh;$R(@h`HuQ3&=;{9T@ zok4LAPS2LvkFta!aHIUBomL5>rB)YL7xtHIK0WyDwugKF>v!bNVC9uRwYu_yh^GTb zKWF9EM09pzi#*Px$VU$(RAxJ-t`4Scft&dlVe_e+sRrR}*+Ru1@|HwiVa~^&UZtK6 ziAWn3YkwXQt-3Ja7vrNxQKfKYITWitMsUgtK7DY`oFH&9QGd4YB&X}dQj@%p)+Ll+ zOk69%1Ut%FSQWV{lQ;6L`Zh^B`{=&neO`rSypx_C4kK~xSk1axg74V`wTJIC6&d<0 z13JsR)~gm@*vdO`7?q@^_$wN=C7;JcjJ+_xS9mnTkk{!!Z{c9l=)z@Esl^sTsrmdP zVP_NNSc8!@aZV*=LOW5~oA+_w7lOoMi+rp*nDDNJ;kv07b!EwR7uq*zBPLDTq_2H0 z^d!;1yvf?&Tzv6=0?5l^1WkzKI6%N+e`x>hAF(C?6#wBj|+X1rzQNRX8p_FRpLt^wp*I3 zTPkBP!?97dDaF_|Tk-ZdGOf>dnDkAY0%E>vuL!d&lzA;5x7uUf6|Z>iEFG|=rNIQ$ zxpA+t^fHZX&S=rVyS<79!v#k!>#}e$rgI!TNm+*QbP~h%73%gIg(1#HF{vjTff9%9?;+Q&h>$V*tUGSsCCi$O zy>Cc=8^8$tgxyw4LTEQWT6&xrSWUzovhG{nl58!VFn`Fe@^<+cTaKFE3QVgXFFJb@$sbJL;oMP<=(z>DQcA= z2ohr5GCOYR0dH z87sZ#u+%hD=gd8ofZHGAhZI#V%Z{ETOzBS-WU^nzLj?R-5S=CM{ez}lj%_<~Zoj*9 z*-Q`(maSM6(v4ueDmK1~1|lz;uY<28&&U?=%O73#&E!E=hC7-m*O4iZD?#=1@4i7x z35rJnmGx+V7<&bFiM_LQ-T}Ebk@vci*$R+Lk$k9W8z`=85>dOKK$99kiLvM>0YCPJ zw83q0wP+Js4y#_J@Z$FxTbzg<8biB>3G4zMRgb=WS}JU{sBCB~Ry^|5{E&PaH`_d5 zu*z#%*l?rX-GbcsXY|_;ug3;G3?gf=w^a<5uXf^RdM%*TTpyj{!j8e}wKkUjOLeomL7dY(lPDncr`6VEWt_YiYy~So z$IB#k&|628YeZMct(r&_llgM0F)Px$R7K6Na@Idu+cfGcmm@2!Wmzs?n3L{CQ6YOK z08nbN00UB=`Hx@N%aRTE8M4_^U{D@Kyp182rh$B?q`Ybvr|L_(qfvJUcyvnjNfwu? zYRNsi(dU|z`%Ic!O^oqVOP=qvow4S&Ns-}SND-G2!H!AYk#=Xa;RPk1ohPSf9G^|A zl}Xm=RhI6z$_CFVge<{+3@drYCBTcV9>IQHf8L3B$PJ1iA2qKd-Qps7b5A4@OHyIi^weQESXd<;g zX<&NB%3f$jcu)eLlb|b&gqmLl^K9xo=5q^%-^6qy?pNBR6Y(JBB)C91WhfdA1oA-< zg6nW-D0%h6(323U0!uRKOJavn8FD#FT|}YF{jLaJDg}T^B~t5W#pL6x@(HfB+Nw`x ztMOi(q}hfUfp>|NiB##8$jQuf6adOg_H?3VGH<8~0{e%N-4mBZnb-{uB_)iX3f^ZA zihdcin%QE1%d(?tATQL+IMKlbNLzH0*)eXtQAMSrPi?ij+s3T{;S&x!lSfl(MYzOz^DPFYW(Q82U*MtflXCGsTV6p-E`yMt~ zm>c3L6<=Rou9jN$jLr@oofWA1lcbP-5`Fmbz>b61a7=NIYJlR2%TJMqQeW~857z8* zo>|VP-xBB<7ECF9^XS0cWxyoU2RCudU2dB3G!u88s(r@PnAq``p`J}7Sv%HR6j9pz zv>oncX{=$M_}2+#eyt@w(*@g5wNuu4_HM%xzP5MB$*)+fHIJd;Yw#bl8N_*tZ|Z5y zv`GSW{N*KjlB|u#G3if=$7;H1Sbe9hbw8NNQ@&(n&*R}XtB4$^`Plz_P2?f0Eguay z*}{&`qz^;U00A(bQ5$V!6uJN8Sbw4X2W;^fKL%5H5oG^H02L5+bF{P~L#wUpbas$} z2BhUsNGEu~$6-qRCfhqgL;T&87(!HvS6baDC@ASQg;;LW)~QNPoa?!CGhQpw{iI>6 zz!=rkZmtwW0~c4ps4Gh78-3{TJk$A1I$?ztW_B<7qa0PEVvCfgBA!Sysjn;E0M>S8D614b@`u))X0iOP+^z==?DU7I zR=W&ZM7NBr%N2vybWxW~Q_ zXUScj)+9I8%sHWMo@!gEnl)*|1-|$F8Jm)J+7{>dBr4Z)K6%_;3_so(l<|^2pNOeH zt6KWvo=+hdMFHsM+>05CuR1eXY%8;>jXx?};;A%hs*?_HVwyhpnVf@^! zD1Oob4#=LQFv?$X1KL$CxL~?Nh{y7RV^v-o({&SfDciVeiaX~Ui$BLIn>lzlWGqmq zrKKf1BLWznsARWi4S$|sA77P(8FD$ESzclH-Jjx7{B$S-Y4cRkAdy>_mJU&F=?_}} z*fV1{m`H=Pk2V?r7;G^4UF%Fr$15%*=JH`uyK%TDsLFg7YxmjLtqg0CA;3kWF!{_R zq4*8OkY2)F&)$2zeS8vU^xBV#T70X$7d#&$Wm>pS4XNh6&i?th6bj8 zqO`Z5>pIe>J4=`NIlbK>()%+|4tMDz4%p?X(+$=L)*?L`h+``Ob%ia3iUQ$w*b!Fc zCDRSw)aQR03iXH1Ij^P?3&J~n^Y2GZB#KlDi{>O!rd*^G@KtutZs;%GqjAKLyKXHY z7Miyk;BCGtmc5bJQ$Pc%9~moc=imQ9r(BQ13e^h3&v9_!Gy$YXVgIlcp^KobMZ7=_ z)9SFHQU3?WO6?%^dK!NEfTudfHRa&ZOpyLed|e=u(_Mz{aQcC_a+VUP3H0X$~^PU?D=q` zHmy5_UA3+(we_z+$e9{7?yixc?l(plzK-~BM^m{882rbbr6b{a@Fl^xP7Gwql;97x z^}@P;K>GQe>@mjm(<=HO5A;JYYelHO6>P)oehHGUFDRaycn_E6JK9qmjfptU)N0{d ztZ|J6@|9E)diyCP(Ou6>Jq|b|9+r4n8LguF?Oyv_1Ec+q_|Tp9VyMcmim|=Ii=bba zXu$gjDq!IKQD^#{_b-RSSOiHC3aSD$=PRynQFPw)JVAZQ1BpXC=!K>Wpj!`$cj6ic z-^05Dhu#xS8r-vUBJL$>_UD?Rf4eUTpaBwS55?RT^n}GwCuODi;+By=DeAqQ%D+?^ zNOZwk#ZAE2Fb6(gMv{IR(dpmc&dKQ;rRO8hNwNt$$SI%xt|=cj;PZ)oL3pZI#kq1z zP}`MyUm}*J{Nj+?(qp}<^OEGVBQ)`r(O9EGgz4}=zQdC=&9p0MT<)&$vhj%pnM?h+ioJ>9_?*UKUiWst&JD#|*7yQHnx zBAO|Paehh#C$Sj>{BPv_Fp~vjn4p>vU?U2=VB$Y7Ab!i!t{!nY9DJ}Gbg<#Cs7Rw% z8GlYQ{q9TeRhD_k5NVa043qJw#_W8jj~#JmLnP}<<^*BWs4NR|q;}ii(2p|?nZ3q? zlm)e{LarABUGhPAy=@m!_}H-~>6qgm$73?Pq*t>1z`UJ|2@e{$4@GEWoK#Y6c)_SL z!&W31`CmvzofEIK)k?FcJkI)m zi0-KChqgs@&~l0T1f}CR1~n4W?~($8?qJOQNBPlb6h%-5P{4~&wSrt?h6;Ee)CdK5 zb?!>yY}}Rl7VRx_ljZkRdV??<<@z5(Nux&=-N}b{p@Giow|?=xIklnQ_sy!5rJmbA zjLUs{y6!ejf027F7#r@pRR=+Vtba8RbNdbF2jq*j%(Y?S#_Oq|sg1>#SbbsaMi}pm z6I_DC{(D6tB^Zd(RQ`C1U?p z;GMtVIrMCmPTZil*n(UR%YmidT?dmD*4FeKnS?MhKt!*fop}jt&k8?cD3cn$ezs?}Xo47ZZ5P0U5R6oiOl#ZHJQIr^P6RPvvGykOPi&iuc zkaW$C8ZHAh0ukxMF*FbY_)*LIZ{NTyK}zln{Yxn*%11&~CLddsHI46YRHvGaX3|J( z9uG60rIUuR7d6w{@@@riPgd0HT7{17C}~uiq$Bh{VVtSAx(>tJWxZZ^%*EkLEQ{;C z5!1U3e~D5yeTN2&>Ck}OoBg~$6N%X`ZR@KVSrU3x^gTfnd)>9SRC(r|@g0#Zenp|9 zZ2z+@29+A3tXDz&czMu2Q!qw)b;gdl*{G`0j0QqqkFQ-ZbbqB9t&8_7{}k!>UX*E} z6;~=uXyx=QsRKqOw+tf~EKq&p`12Y0Q(nq)Ym8XS)doEjEd}I~(tYU)2}LFYCriH$ zrhFkGmv85vA_RILN6?$QCbH@KlAFexI>RU(y4&K{_;N%nZ>E1?M&S!PbR8aSrml(X zn|gsh<6%B@q}mS5MuOUO#|ZAIPe#LH`)X0qaNBO|-6j}^|ECLedm4tZ-`c>^0$Z3! z&)wzeG-$iZ8^{T_AsSd#1(j@!9SGgt0gn{*uCu{huM3~joP}LYTv;Yx_fISo6=IY| zgau1)npV2g$mlSXI*l(y{WI|gz88)$B$j;uRdbzc39E%$Yqu1*Zp6eqP`vG>^Aj`x z_AC6(J^HEoukMafwom(PlfB8<zRsJ(}H7`*Lw zcz>ll3^jLR6)*eI^5{Z6hsKjJ?R4UsSWjw-(%(0UkMv%xwF_>LlXV((jCjfzLVz19 zf?SVf!h-yiYES3ms-!L{5z_Ts+ncb}oKWR;ED$G7G6^bBA18dhU8m8&Eu(98%&j`k zp@!QC6;d*9I&B2i@5tGz1p0Zo+qk%dH4YCM6ieP7=iFqSlCHq_o7Y^Iu3rHDRPxSH z{D6BU9mM}HNQ{9oS8?={~Xihid({~S#iCkYICV|VYf zd2IBaK}p)o<~^xv?^T@*;Ti&$ccP}hTt7q>O1NLXr+({FR#UDne(uyrEA+3O`dR zu_;Hvf+8;aVwT`xg&32a7BW0hAo!TbJ!Fch2E#@2gnwb$aL3QvA#G>>HG%z6K*9w(2<%pq1h6(lC zmDdNDQ51#0Ki%LlPtSc`PUAx!)H!_+A|!+m&lzW@4mxelD~Gw}Vl6*v=@Hoo6p8)S zH?->X;Y^RW<&d~St77PfN*9qmj=FsUwi}eP$ni1ip53koQCvmRao_i8y7;Wug_5$k z!KS}K?7%YRMDUI}3hKLGaI=_GChpfzq?Z!mF}!O%y`0jEkrK`Myqa?JWV-#QN%s39 z`*Gu@yWjAM12Hb#Qr!;sW$1DD&aGWs5UQ%lG#1`P?}r5=vI^grd0@xdCjjRqMV;Q$ zZOu{f$lOlyEiYQ4C#3Gt>-~-wcXb}i-NL28g_+JzLg@W`Kgu8^4?gB>MLH+))6g1h za2QOi)BuS1Zi!RSi8*I9IIUE7-<8l=P4TDJ7+tFnHhZtt`N)qKyB5p6MPj;41D6_+ zKL8~>-O!S~5}{|((}d9J&7c9$iLEEvEuFSPPlQTh*fH3PO0aBscbmAzD(aIgLyvYu zEI6laC8lS^Oy6bOCXyNGZ=a3K$?(P(ngbr!z3XWw81QVW^OC>3@n6F1-(2-RsPvDG z;I?Y(EjIt<#+^VYej#o4@(@KN@fa23&{g3>NE0oqFgC>Eo<|2YJhUYhu4CAcu)#FUycOmDYgN5qw2LDeHPkRDO4Q!#vjGYhIBlxSc? z-T-`KkejQdF%q&rysNc*JnVX2hpsA_h2H&2A*jpziW}Ea{iX5dHEZ&rgOes2XvvrE z3Y6N;Xu1QIDt-ht@btw@&=qSzqnY3dcFiYr6HqvZIwGC4&ZZ=!d4+Wvx+M(OX)SBR z)?OMQt2=bP@LimWcQ`rd^RMJ!BdN5&RZK)TJRqODa>eAK_P3|~zP6MH1tWJf)Q^iI z0A$JP@bxDcIduBEd8pQKr|B^o=v78g-$47XcR#0-mPrvndpSp>cY~o@4knc@(%91L zpSPG!Tboaw{3+t){De$dQL+G2X*eK(qEh+|3lsmlJb(fOic@ zBWeEJbs%laXUphW9^jdRE^wzPV<0mFDSn z!#DI+FU+c`8uG!=&hHW9V_J)#d7k*Qd)16qp7z5pz8=PWtJh0}wjGZ{w_w}S=im|} z>VWdh?dh;H$fS;g)dQpE3ihKRLq67LHD?&=Qe6!SO;taUDcOVY9H%?PLTl9(OjZfK zPnVUC^5i9-ScZvg&sF+(UGuyUMtwK~tMU9xz;`g6P>SYf1N2v92S?SoW8(2}6bF4B zXM1gT9v$7o+&+KK4!l<8Q>wG1b|$J{$nmzgohP2q*ZN=PB%A5XErGZ!XFV+QcScO` z=q+p1t2!^#t!|Jdfg)(x-fg*My4*zSXD|&P7Aq`V2)9tr>0K?U^y%UWXE}xjRZ1`! zoZgnfuA{k!tt>-d-DzV{gLErt$8unewtg_F!&?POdX5;m)TbJl$A7|4Ci^0OYc42!FY zq=bZFcTfF&fM6w9a?iNh|H9<)Y@b=etOU(On(R|x4JJDjP&pQ~de*?MHjq ziVUON6}!>%WQAI1c+by%!F#NnA+A)_fbSZMwBfl}iM1_uDj{|jpDe|RQXEHYI@K#s zSk{@W#B(p=-qomEST}rn+*@I>uk+YhJe2@$7dxwE#(5z{s}SijW4ag0nI;gDPMW?| zjJv|qQPadcYx?okl&~(F!~})Y)1q%#PjICltx+v$U`ra%zTn?y(Her+{fNnm^DcRB zr5K?QAY12*I=$@5iFRQB!=H}tAfLX7JYgw`O zhY9w6B?7i{4OKG3&(|uw=SNf>B;t$}Mpfyk+&wt@WLvSoo=h5x(!ScS4$ac(E0`qE zv=zJbwlGc}9~2;lm6Nn;yd_A@Jnp(`*@bGd21^JKhv6cm4S~or?W!-x0^M3N(RcO@ zYO#rr6VjFWP;J>EF?Qgemn^5aaL^?pW$1nUm?^1j6JC%7GI42%S&CBf(=$ z*~k|ND;~x-)Q0Y}wm<7bS;VkEDaF!oAS>yZbe3}rNzxoPJdjkr(4&Xt)_mS zp$x3C+KX)Ocy|I8sQ#*>>X^faO5eW6s(W}59u-hWm`_|_PdPSQzJpjI^5PT?O_;_DR|qTbDrP(QBeJ@52a)_E*AM=Zhn zv#h$3^t|EAXMxj}0(U^K147Q6xYTWUq)yj?24-(pP1A_0Cgd_M2cMKw+ew`(jPqCv zENoYK-6jua{mCi3ArJV~UWv^O3U?CXzYbYoj5OPcPlWXZC;L2EDzUIJf#R zTx<0~bc)8e7H93x){nD%$z*XG{gcdce%by;by_<)G}D1&5H`NcDWI77-OZofdhR7qerS$k*YW1<~T`z7_3 zx>*A5#FTJnr0sqHtM@y{*WLz)S@D=rmUqjFPMFte&tgNE?o=$1d4ChszZP)H9Q2O< z-D_773dYCw9LulhJvJJx&Q-@t=9PWT>^$yA;UrVJ;u>4Tq>kYBF=6cghOH(>y^cY%}BReUa=+tFh|{&(E(@EVWJEfQQX&U6`t z5Wpzx!2D6%)Zc*>EQwD(yuqntx+Z}B0oJXO5b3{wRp<|}zC;6mhhAC`dO?T>;dwWs zNd)P&7E87rz&&m%X?UccTN88ld$N^#{M|t2(BTr?ypqzbTg70x26KPOC0LkuiC+@5 zd-&odN;U~{+KC2EZbPs~Fd$I97NPUge_9gL4^y5}19!2``a0MFx*GxAx?ecyAb^ss zYCi3hJ|Wk&!CXMZvpqi~ffDA3$!mt7J(d=NmGGB?k z{#Zf`oq4i^2IPy}CkL*1!SZR3m69tQklbxm7AFUSb$aDsQQpH2$SE4&IWE?%D~Xgo z((;o>1CS#$Aokk^b1yascBFDbdbzxGNvG#9TLb$qf6Fk+Uukr*!brKEyVMsNMmheL zy{Fe7XK_gsCwd_7R}ZoEQ$v`91vhYUfB&Hm7Sgef5xQ40JAD3fyYd4TM#yV#X%&Pz z(j)*(x@A~rfz<$DT?uj!P+z4}jlbgEy7&EyeS^Rgjq5y%6e53&`5H+Q#Uk%$e;@FS z!YEhMoz~URQr`m3iKEwL?wEcs{x5UPf$0Sn%TXj4JygFT@VW+3H1KQ~Br;8FAaxML z;Lf%M2@O$wE;Lj1XwfHkUE*HibJ4SPxAAz>M-T@jkMa1m`SPynm8yKq&<+cokr;77 zRKWu=GCY-K_Hzj|(0FpbZOR1k zP0=UL{Y8t{H1x9nsERnnCA$8tIsNN$=n4gV>4xx94~6ju+Lx2%v-<-EXluxx%bDUQ zu?N_6lv;-Uob@@A`n+0sb{=(FB;AT4t)Fl#(%CCq#p4|M-> zQ(iva9e3t}aaB$Cw5tXnQ!OR|fFm4YpNpFurt0@#WQ@af^CM6yD5Hh}b2aU2fuCdp z!o8}zmG~Xse2bK)0nR)}8YX6=&svE{r_ahw4xNOz26VX{4OD927WnB!{|5O-H-$iL z*++s*Rs`e@d2kS~-5w~Dm92O1078a37Iw3zK-e8&}~05S7%(R*MG^f zybVs2)r=(5uR?_rlm)Ne%gd~E9JEcI??Xe*l~~xUv%b&!z_%{(@dunsow`3uE5?_}^o`^k z@I=YmY20}K zDEKbY{jx?n`33 z*+*QP2lC9;IZC*(=BA=p-ZO?a!9dzVt%xw0-1wTa zMYiQdo;xd1;F=>!My1v9qnL&Q2XA|^ri9$j4nC1Q`75@i$}l;MgZtnv)o;w`4w{*m zREtfT?Xf_9Y0Dl9Cq~of;TwYE^8(o7vfN*=&LrsliTx!P8*-PYI~Z{TXM0aaeyg z;2X{518qBux`Ps*dN7tX22-omA1GaQ5;BmzDDx~PWvLc=w+fjhSyGXcQ&g|tQ_&vn)9+EUZ1ZcmehD&fI~40!olz7)C}l z3hZbDdYw$SzbBA}r?K2-=^D&87SS_iC}QDC5d#&d;(+Zk$M*CvJv)*UzScm1UJoY z>YX4)ryr;eBp8%Hr?J8Kd8$dIq!c9#?R`Amy!)pX+YUmnf&22m5COeT=pUZo{U1C5 zaFf2>y#CEQ3DsK7bjek)8gXU5>IGsM1&C#!)0MCEQ(*n^yJw^~ zG@J)Nka}&fBY|zE(<@w56xF#7pff4GeisZzjUi}2RtRq5zx@N+!@rBFX+{OvE!P2@ zhdW4|Ce%OeBoS%g9|XRd29NK>Ih5SEsNZ1eBp2mCd!9_AYI0FQ9D{)0qt)gMS|RA= zO$r)NpzSaEM^Fd2KwSd+k2YcN_m7xe3kzjBQfm-G1FzHE=tjcc388ibOU4 zMtSs2>maOAD(d0QyC}$}aS`Aj{|_p6!3QKrgIG&sK*@s`4ScWkoWNLzRMNW&x7X{+ zTj`&&e+|D&AW@6+hyNj{j&A(FBg8vt_1-sdah+9L3E^3}I3`A=7Y@ma8!-p+W+ljO zkE9YHAV_0Iu)7SCER+TqS|q|zDcg_>%(>?8CTx7^s$BrQ~%xF zed|@GunZ)G`a@Qku%XAQ5BW@kIfdwa&I4QyN~%}tESOPn(ofK~CAjqs#m&Q`Ff;(B z@A3nN^I4$;74i2eACHS*dEn?W-|*UvauT*AAHY^2g!(&m&mRyPynNH9=k!T?|4}y$ zmU#@PXCQ%L3!?kOzTdr-`l2_N!U^KeK(tsrUt6)SMOtG4$U0WCi@*)4mxKl|!6%W+ zFm&%@-yVeL>g%_<5^>AyWmvGHZZ*l5lq@5YG9Z3}wFvvEF*=dBPRUH}wT)Ds&*NAW zEsop4J@gSrPDo=ZB5*Pwe;5t8goq!2S4h#ObUF2hTb(RUjmOmM5_#Ujyr-D9z1yuP zLaUQ!vF))G+fqF6PkPBO!po|jI+zZ>A|wYaaR6**1zs`6z;zvv89nuTwA4=fX!u4B zWTk)TM+3Qoc)(y9#~fC!|F3w@@8X~E_!aYLL?wTMQp4_Hq@Aj-(KGN%eIn@GO(H36 zs3_lJ(_`%GZ?;NNc3($|aYJ|8cu)@lCDzXLBA&r@GY$$19;B=A(GX$TkP!O{nZFS> zw0_?p?&f=DQT20t)%LmW=(|cqR*onF#39l)(&>^a8&thU!Bm3=Zlk8La4_oOb^r_9 z;XHi3IwJ6+L20o$%rQqc?0WOre(E?PP`1-&IMqp3nza z1xhYPEc;;~@A7vBow&lzo_^(CHQ%s*QP}!9kgkjp5w-5VrB3W}r9At=LSI5i zpo`|cRXu^eCm6O${Q_g{^EZae0Swn#<9^@?RK2b#JKVAHf!gTUFI2o8;0U~R*Y2*? z_?FD7^*XYtLWzf2Reo#E?me;`)~YALKk2<3!L77o3Ha!pPVt-qz`e?8B4G{!2?pfV zH5W3;8gYwrlsGDp`iZ4#$6*7N{c>o_iNxzV{A;F_l&_1cyX|$)k5yD95)7UV?9V6Y zff?+OfWEk1G=R@t`ef>;Gb3luC1E)RN^mI?m7JNoJ?j|x2C<#^WQxq9UeSS|D{HM7 zpkLODh6If1@-C_}1bh*Qf3+(v_ZmsmZv>XJp|8~1TCkJ>UP*<0R zLw22fW_oIg5XJG!8)a8-`7=qqt_mXDZ!6L1eT1{zsz9QKCp9xHa$MxK_AvOtbRU(V1v)&=GwQRsTpbw$s=ajEPK4AXBk|((0_G1go1J6`{VxI@O z^l^}RMGis71pYGKR;=4`^8Si&w^f|rRo}=3VFmcL7#5=YESLx{<$=c2#J-TbSnqRX`9xzD zZrk^f;IrxYV25cgMI0XbajxtuY#)@IaPjYKJa=D2lZ+MVDQ0bR zw}c##+u4lQy=u4X(?DohsEn0E-B7C(tfco_`t1`DtXFR1V}T;Wzq&-3R{b+M1UQTa z3<6hVpYlWL2`>8@f>&@mVu^NV*Jss|RwALK3(r$VjP5(6aw}u~D8{3Y+H6)sHOde| zZu=>JSV4xY3VpqcKT%A>Nko5_CisLoNU~r*xpz`R^!rY=w9UkciP)K+!?7cmmO^)q z{%sj1u7F`g1&r#%Q|C3y?Q*hO0*R!%Qo*dG`GrmqHV8jO1Vvv=l+%X2NNekB*-J84 z$$~uwPT4U*AI29Cl}ms6;4l;wjq$g*W98i~VMfLyjM{Xi9@qVBfIH+gx>%xOxhDG* zNS4(!92MAP595cN`Feq4(!kL_k9-Gdi`aBm~(QOZ`0AgWV?iCaVDYEw6I0mQU&QxMY# zK};+1bCF?CZ*#hM#0UnKCCKJ){`nB9>jxk;iCpf_04tsdt&`Ts>h*aAwL3zliGF8^s|lTsLeGS-JC|BFcQ zrs^yB&^gHED(n)kKoA4I6zyPDjtD5n9;5lK+UxabKZ!LUwAAjv0n#>mr&4UNVC#(f zh`q%(oN9(NpGpx$wFxE*bU=>|CzoyulzN!a1m>1Pe8Bjh${l)*r4G;h-(Qkncul_I zOPF_H?^%gr#kfGVR#3;>x39fNN?b-Ap`A>1CV@4c7YQ+hx5EXrOHj=?m%wL+vPJBpL`$ z$K8cDU-O@b9n)Dr5+&Sm4B!D_EU>qTh|4QO#9`=bDHEX8B^(WmLe3}?@bVTtm;e_+(qItOa+!!z$;LU&{6)MpzLuE25eEe=60zv`*lp7aj>hQh#*i%CDh+ujCyEfI44EI9BN$_a zAV0VCPBEx}pGA5Uyiwb>wMm)JNHiY;Feeglk5?PsqsEe*>5-1RVE$bX4SYx^RY2Bd zT?-=cFr~NDA=G*^i+7P9GrhxF^_ti$5@u&RMCwDjj_+cM(9qZi@tu}1g4;45evbO^ zE%pXM`iHXJk)mJ`ZY8A;(RJu&r(uA)a(0wPT(PY1L*NFQB9`1Hg4mQKqT%jyK` z0)x_Ff?rwVBgHFIEx&wBQ0_J!!Hq`s_ASjy-Scne`3wx(|K8nl83PZ*aH_yhqw;g~ z=WNf~`NdlCQ6sB669?g6K!$M;3VvI~M`+Db zUlTEhW<=Tb0(dCCq$Gg$T60{&=d2@i%80H&{+RI*3EUh7f5kWbKZtwtc&Oj^e{>i- znJC$pLXxCNc0*-Pqf}%Yk!;D9eHd#ZObCSxNs^d^?8YuBWE4pujlo=t~*@y!1ad@7KDnh`GK`OP5RP)Kf{(W zgX7xo=ht7{&I;W82{AoLy@{Wa9T-CQD96pjy*>urQk?lBBmSjwxM8wj=}52{(Y~#o zpTuAPx#yB{ne@~tzlxaS=L(zFzlX|m(lL+l&kINGgrnp>jCJ@0Pp!&N&zV*mIF#!? z)O?rt6XMUi@+Fcoe-k|=U>_bt?|>2gMo2~$#F8C6w7D;c#U1q?H5;|ijLLIL>^Kqs ze%M@3oXMvm%AUisf71K*dM)o%yzYik-PPtjhk=%SxpQAX{Alk_Qptv4;SSsOB&I*a z5#5Y4vI$HNFhYd>JFjyW1TH`Qay~w9*ql}WyzG?u4p*PD5Fy1CTc(?QztC#<-U31C zbK}W4#N4yy7asbz-i0kFvpuLrAMg!q{e?8cpI5slYzLHmTRB}) ztzSFKIjxhZy;}vb=NEnB3Br8rq!SeZFl@N2Pe9I#R>{#4T>)L>%Y#2sP(DB;01(mw zBrrc_l*2;+szI6)5>cWgkjgHv^O`aGrLM#o7N8!~*AahF*(!b`Kag2KMo$P_!twiuYw(xtZtWMOWYMol++z#B=LKmTX62v3 zSUF}N0V_1f(m~z zM10=Js&B%bpqP?)8>{nUd5wG3rQNf~t=l?V{?m2uLzS`d6B|Z~ z>wA;H4;kLJ{@=L~$Wq8Lbca51{Q%ucU0yY$;HH$QFEN~e$EPB@>ie@fV9zd> zPWTJjl$FPIsFRQB32=UDWudP>WqbALC|AGPL`qojB$j<*Ok-d@x~wKcI_jEcHOZrVLCw z=70T*P)#kO&L=|sg7MaYZaucLoUbaz4;_FkvY7vMzxM z&Hy>5h6pWD7t@gSO%>d8^nc%1JD3D*O(TD?82693na-+9(0%i{xu=JYbbbv0S5Z(- z6PS!Qx&E?qU=`#6YzGzGaif#gWGhvd#59UJ}irp zrWhXls8L#Dj3qUD#6eJ@da?O(N6h|=C^ZOh2w1YhVH^Hxo z?bgKg80uNUW?vZx`(x_d_jd1Jd$6Gm{iDLHvA1~_J!MIep+&{Z{e{pC9@4!4nkCwU z*}@Hgr?9IlEw>M_0FgKApYU;EHRDpfES<0m$9<%r1-SF>!+OmPQ%|g~W31YNz}tlR z9m;@#s!kHSne?PH5p3S{dI?2xbaS_ebCyQm`>HK^sKAs1`7!Din&3BT0N(zzuAO>;fre<`X0~NFK*G-`}c=PP|u~A zR3_FQA&2)~R0z&GIVW_ma;z<|hf(e~nszn)FXSMi zQBT6&8F6uULSoE*n1+hVG;TGj@brxNvp4xw$Xkt3ylCiuoFv)+NUw@w1O5yul3s@=Y3CVh5h;ELkV^N!sV1j+*O=DURCtM2&|W37TI z_hyC*#e^H|I5ppfY9z!?(g4%+t2W5T+wneQYhFL=T!881`t?wA9tjV9hM?HB1v=Ns z)dxHS>k%AWo>HL5Ze4&V%7fCUJV0GVJysV}G-!#`7;XqPYz_~xgFUWWfWAC3_Ey69K!SMW6Ih>Hz%*PeTojF{fOLguOj zYpw|SV8Mp3rxq@etXJIf*<-MyX`Qp>X({ zv~U%%Os+UA!Vt2#{(GKg_%($#yGuUkB&d*1qNgV*$+RXv4fJxZSv^&P)E!oiq z_%$!*Oc?W@r5VCh%u=m8Gi^C0iJnW0e!~?&EmJh1u~w90K5q3H(kUTU0)1}`LA4X< z3@D{o#up$sFq$0PDF!^D1de5y$`V4n-Xq#iMgVujK zlnCP5NUNW3VEa?1l3=%Ij#V4S);SAPRg@R84W3#ecZf3JnWKPJl7R0rF0UApa8V&D zM5dhSsFEJ_%hl&|JOw3g?XswM{gJN{4?6?~ssHc5!1G_x1Z06GVBL6sW|eJeP5b!K z@s?iwvEz;fxUXChXU=LfJm4CyXDE*CY_FI3T%Iu4*J2T8(sudnxz$LKh;+#Q<5&ug zb^-yslH&lJC z2XOY(0}618!N6zH9}y*fK^^)tP2ljtm_jxC-`2|j`;~m?6}J(N;Kn#s z)9AzCcl6r@()X~G=p3dh1!8VPFZcRXr^yd54=Y%w4+Q0^6Pye@Sy}^jOLhc3;SS8@ z&Hv@vgt@KX>^GcPfMNv-$FYh7@?Qw`j_Ch#4MDm6e?8Pd&15&5OUU`b>Ap*^A^=Nu zDM^Wyjq_9c=L3Yx-e;;L@icta@+)8jfF2~aI9cb{lb_r_ESxW2xOe5^#WXww&0mJOd^dJn|h))aNyU+wb*Y(`tHBM63`cOk3rRKZ38qU&Q{wV7u-5+$> z1T|R!h*L_?r*SDV>&AvneRsa3x0_TLJ$HWjE>ZcLZIBsQv24i==zqQ-c+^%CCcPC9 z)k}P7r`2?WM@ZkQCBQ!|RV#(oo*|fC`&#W2e$M&0H0A7vZTNwgYZrbhmnsM32XB!7 zkU-C~Iitx>0oF1o1RmTSw65v}Ngx17ik-&c#HyNdO!w!SyHCv@-ncz8rz@<`ZKs#> zshe`Uo&ns;i?9haNu2g%Kujk2c!N@Qe)N`=&$5q^Uf;Q`cvZn8m&as_vITElvVy?7 z6@5dM(Fw>6L!b3S_D)e|=HouDr8+g^os(bM@b8=Xt^Aui?}@jmHNKPcDp27~Bv6|) zxe~pBmzd~4Q&u6q$S*i*Okn;&Bm%U-BBRWNiKQ0Axr!+rBe9rT4!dj44fm zNpO2-&TbdCmqWb%LU_=#859hyar4m4O0Oe>tD|pyf=cs=#f8hnqa()|AJ+?&3sYoi zm+0p4Uw}NR_9`%gwlsvzs`=N;0#XrA_;oUmE>=6dt!t^#Zh$zv+Lo9M%H%N1=-k(# zSf~h_-57XB_l!e4j$R`m5VD07L4S*%h5^jrf z^Hv*0HeU%nR=Fy1^h$E0#u5MR_4p9Zx|LpZ6OZ5ddHXu?J9j&lcz^JT4DoGc9})d6 zMblI_qW!7ZOs$W=sZwrEW0-6xk9VoEPERsi=^s`Huv>rX*e5 z%jp~4T$Gt9p0=tWiSgr={SM9sL9a~C{s{Wa*f_h-v7OC<`;DaOflUXH3@tvk{tfOT zMQ++1x>SUAm^?UZd}@;JQjZ~4{lf(%Xw?_GNA~KD`HGAEkaD0J{R=ti+P$~_4=Opk zyV*LfOfgo9k;?+BaC6Cw>AI00z1zK49Nct1>y65@o81U1wRZF7>uxo>o93$0$c!9H#9Zp59 zc?Pp|S)P^x-OUqhu6`THrE1~wpQDwVl4=o`nV3BETp+vne;SIGfM}TjRAO631Oi_% zx;f;?VX>(s_G+(fX{rOu+Us*>#quqaj(s?hly*w~O#V|8yl8aM&Gmy#r^}qQ&A8%F zF(<#*4^C~qMJR@5C50_Yr{;a5&7(Vn_4ib7F##GN>wyxvDswPiIaM%OA>D$^iI zba&N5S?77`reSpc$QFT^e#Ll!;km_^GKRkyLl-l-u-CIjO_+Zm>EW}V7U1ihAf0Se z-%{+|Ok*MvqUDav#k{lpJt`mYP^Ux9i&ZE&;Z0#~HpfAbVFlrm>(BGs+Tm-bV<;W` zLR@QrRGVHG@HaChhE$zTD{TIvvzwb3U|?D*y#~M8vx)Q=IO49`=hKP!vP8aMbH#h( zM_5Ulyauc?8y4v-vywy1IP{3aG+_PyafttQ3H)K1*>5DVp!Oesh@1P5JN)m zZqF(b^i?P`m@XS;e*Ct__vC9yEsco{4&pgHl91zOQY7d!Q~ac*Yk&_{W&BTU>yhfG ziJ?nF5*(arJH=Nf$k9Yp(p!!9IJQ!V^(2Okb;RY@ta8qFIcdg}{qweHOJH)D2AL zutLuoLbjJ=l1WOKGEq*7-AD_snVe$$r0FABg7?qL2e#a5US7JI`@>vs7j zWAIq9^9g~uH|Md17VUnn7n)neCU=;+{tA;{?MO|xj;kJb~ACXR+Pq#35RbX1k8&m zkaS6az^?!)WHx+4M2Xn_O#PVWH1A7cVXofQ^T#ArAIJA)CMPy@d0osTfWV^3l&D9G zTs7SWgKW|L4*8DUIK6}=gT9EeGQXFjh@vqlk$Pw_qB$`hu3IwtFg_W^D)gp-+d$>p z?EI;!Zi*A0#kXV-aqt=Q7m@%LS+Bq!lpKj!izN4S&1YFL#?^c0YI^y< zw~bp3?yx}L2R?=*e(SoRPu1qhkZTg9>lFVsE*z)vqbi3e71T6QFo5YvHXYVamGdW6C^nn)zCt*joCxU(E}RecZpAW5 z5acAV&AdBaug%NI%U@Ik)xTg={H3zOL#0E$Pi!bJO^`X^dlzNey6@sXX>z#ML;JaD zBaH&yi^H#0GCI zAc1<(3%d22#cFpb_b11Yx3DJtm-r;B-c;x>tz~2o*cu+}Y^!HELBVW1MC?lI(P|&k zTy4;Rx7-!j#_Z9shhn>Z@n#z~;(SzIx;4}=wqqWmR`AeH1Gx9#vrlov&c@-c+{-xy zPA0}aDnAm0`#iT#nse;;Fn421)2Jzya(g>q6fMPVEYDAhYomw|v99IIg23&|w|?YU zH#*ue+nOga7ps!8!mE&6C@*4u^mbv4e?ydO#c}%gnY+m$c)wOy8ojmFEu0JM7`~J7LPcyQ;mr|GP&|8+ z_y%PeaH1yLYAG+uV|cDvkh+FBeBt3T;#=S|V%y&dWU(Cj3 zsrnQlL{PVhJK;Vok9>4$vzD%Ha`=`M^7U`YrV0lvg6MSYrVTQO>O;&bEwotdIFaYH zBhNBu`6|(#Bar@12fz9goXP)~%9Q>;ougpsaF>Z)p(ofqfPshOZ4{9AP!IcS8C`ke zG*wGocV9oZY<0(~@aA5=^D?rVPbzt62BY~)5g&eWX%NE{5$tv*#n9NR_tMQw;t!5@ zZp_7i7Ruf_EPzG-TmNcajA%z5y(G#oJPf)Ph-V}}v-@hYcH8ICgClh+-61k*WfYJb z8F~KftwVp#JwEAF{o|(`YwpLi_Xt2{@U95(uf+KS?@F2{A%ZX}B0(Gso6*o@DbG;e zX1Bfe`LnN0?gt04$%y3$D=M6c%ExU!QG7rXSj9+^%OKiv!DxErU^G@F01$ z0yu=d^W(Ly<-zUKNVbJ6>Au_&!a44x@zWf!2DhT~Io@%#3kl54P!uQm-aJ6SP7Ys% z>?mC5t~~FhfdM1oh48Z(DCPgy@C#<~0{hI<13MAG!yUN_ilENoxJTBPZ1{?R5zPT;p+&$|=hvkRQCLPu);4T7mo{JL%sci|D zdL~R`YM=jGW!$Cb@$nAFp|6!0_{cA`Ab`&o@@w39G8n?N4)PX}uD5M6%aRf)808)Y zJP&Z=QU1pkMQJgL(<$V!u9&HAUdqGqVOJy9F_GH_vV-a$qo9Aznlbv%#Cf*b0tfq& z5)3#ffF6ti-e~P%#D@d!;ILE&eOTRFIBcoy=*m<6iL2S2J2FAJ|Lh0hP+>;%RV@}h zLyIO7I%W&U;?(O>{iE#+Pxu+Ataw&zZq+0Td;i=P3v|?0Ou4n4=aDk;rLM6QJuh^( z5CNFX<|`CAnm_1PJ_V;#LwXK!(X%NoqT9oVqV3s_`+?uruab76u9bX5F8YyD{AWee zKQHkGJyDP7A;1C5I!tpNumeM`0R9cTFqNq$5^AD}_=$3Rm0 zJ{Cb7eE!}EKIE(VgljR1UtqNOk4NBIm(j5$Z>tiDG?6+_lcqY-vgQE~1u&Z|1z=1G zXxqegFXDhl*uN;af(bJH_J`pY(E_{j_2TXmMcUY4W|#VPk<6vr-pI=vs% zhfaot)4-VgH@${zovm~Vo#F) z%vZ*T6xm58FU#g7??pdlC=sS51YbGSiLHauaVPi|FV3&^fxmmRD&pxSl6}s-yf>e{ z{@hMIH=g$@34N?Db_f90J3$$*ie%?1s}fH=l{mk)T7E}QB6-NJwrPeOMtorUEw(x{ zHtx25>T-F*nta2|5+fwAj;|QmKvVst?(L|)C(-+GEWDGW~ zkc_^HWcRT8lN59t32;ac5T^{>HjR#elX{{lL{`BdM|Hndti<55kZK7azf+V*>t#mQB#I; zde;Wlp8T#K^Oh}rHMTl!X59RN;d2*E)B>{go#Nh(-cWM|=^E~;f6_H~D5BHYr&Pxe z9ryD(JQ;_Jw__LS`FZO{xj8jdX_aYK6wAp~v}xMSfhXp3HLvCjxSj1sJ^LeV71m=R zyUYJjC8c@jDmX1BaE>Mp*55Uf)IsDLddt;pFysUUJ%werG4RP=yg5Ajtwz99{M$${ zov(5?%3g5}%jJWK6mPAF!7c3Y?!CLF=dJkK$9N{b=&KGRKrJgb^dKV6L}r@dc=R@~ z7S{}rNJ0Wid{C3Ob6To`7?O7W&BsoWqho8br@~TM?u`J*!ojVfrM#eSMgr0&fx)@n z$Ky-W)6lP`t^(C<6QD?V)^BT(AO;DP2cnS<*O#viydrN zMLd%+TCVtPdN7w@*-4rLmbSP9Sn|R8b|CyH_=Gx(Y4y4~{pM`Y!CmG4>*S0ycYd}% z)?P#HI6nSWEfFc8g)}sahJ%XM1GX}n2AC8J0)8AouWRi#`NU2OisAUVa5+wA&>||g zP_{NLBQ_P@ROLs9u@4)Cb{)Yzw`gx#KW9ok|4z_t|Aur zFjQS`Dw_Hdc?7`a8xsJ*vW*|)pl6Gg;cJJyc_dDc;$DP0r72s6;9OJ^2q`>&YuK`B zrKVfZOkSBY5E{0?d4n^pbYtNgg zEHEwdF=^1X+t793j7espwHK#5KNOdbNuGZn<0}!a7yorW=S;Ka@5L_F9_DXZY~Uu{ zz-Qqo@GU!n_r5W@!x+B(hnM!#hV&M7j`%RD;OYnGz_U6&bU$ug>h1VE!%z1rZht0r zF6818`pD|GrM|jrzQG38}4VOa6S!RT7zQ}3R{#>SbVKtw|QX$rcL*TZ6&8zK4Q z`-2U)7iy=-QWCZzo?DmbhJV>0-vM0bTToy*^t7&AiBtTTRZF2ja-S!MheDet#){Lm z|Gzr@{O|YUg3e)vYiPQwfHp;wbIqO;2GRV*>U11;rDtlqJv|IAoa5gN-%K)m;p^BB z3{wPvbT}Hz`9dfAJ~?}|if_l0UcQ&};SE)S!Coxe*(`A9^=%p;Kyau3LVmlp%B-)r%uT!an_PEpGt%io==1&ow=jl-BK*uqGkP7E$Fx2pH`!kZj3QE6Q(HwMqf#a3@TF_#Jj z(U~(`umcZJ#t6j-cv(U-c6&y2qqw-Lo12n+g?J)Nxb5xT-Y(hC+8ojyTX&H6ciF(+ zpF&e)_J=VvC=8U4o4&28b8lB=il2Hy;u+X5$TzO|=ASTgQG-5VzF6-OX!H-K2{1Rp z$NTX_zQZ1RrsVwp2XoXIg1wh0EBJ6-(5}-IRB_AQtWOwkK zmH>TN&w-o&40Q1B?aV=eY^E=l^RRI^@grP&>=m{p*~*=Ii8&lz2MDoArN0mdEnd8n z`>w<=e!mC3FpEnpTpeLwWp1bOY}#&=ACcd_+##3{UHy5bfu;vqUi<(zjw3Sv*Nwj) zqyl*R#u`0j2sjVnz_EvvpsRf-mAvNn3xhGPu1BYidm+3Kw-5zIsu07osRacViLcSs3xR*+4ANkZNO z0}LE4>$>7f>S)R$Dp7m0CH7w{O1-7)ztp=Kr{Hu2fGWMKoe?!p8?_h*AL?+%k8Qq5>U6e~1QFgGb; zJ|lSe_3A9-h4rLw-%dVUGj$D%+v5l{VM43`^_uuv4w$75_|~I4TMM`g6h$8**%6PR zA1SXJgkDc$jB8b%Jt48$Z6#9K?XpGs4=r_~?*FEx*zZ!bC*L4$Wzm-P>4T!jX}33Y z-|eW~3FTjISO!pGUmo273{nL@KHZFN8Z25tpZ}0jiowBCqS530#Q2s90nT*U`IIY{ z;>GocwisjDf~IQ=+bSlQ(pq_!KMq-Sqa;uHm7YH(M>QXA@L3KcfP!0Em*~dr74&i> z2#x7*pDJ;uDDVJcm$l0ubwL;MaN0}w%(ADScIK|bE1HcKSgL zYu%|zkz< zN#$>Y9l;LczN^$K3JPvml7cS-F+j zoO=KV0*obT*&@3A8@^>>_A85U~$qt`FjZwDw9>95IIN^SrP^GRE!Elh^FGJ8WXRS{Iv92LvwHkpblriF-I}I} zjZ4n(?R^;Ssmw3D3v5>!grt$ky<-HU$(r>D+37dx&KAM_yzfoKf_mppN)hM1xiYt; za$0?m{6Ln_jJB&+`Wlqc6WJzP!FpHyFNFUtv$KZ6dcqdnCQ};7Sj!;yR`5T}#>+P+ zB5^b}4A;=Xb3|1|6*q0psCVutpa?2?#c^I2IAOxB11L|@v1S@;`nd4J0FE8Vm#g&d z9{6!_bq=CNK>JlK;b5LQ3%_67#TAtqd2+Uxj(B!MC-RE|-Tr5K!3dnW zM7N1pwFY*{HxbOH=>E;Z*1}aZKLyrIQ`mr4to-P9$DY4tmq53q#HqiIv1llzh)=p& zzM8X^zjyr+-?<9TrJu16@ zdgLM7i&oqCHsCFOs$NqxFb!fHC$D|1S~C!W0l|igOa{p@ehbF(+j4B#Z&}Dp@949} z#CLpMTKp10TeE=#6Jju-l6rsRyrzA{sPhH7|{}PTy+MOBUyq#K|H^! zgVZz|g7ds5YP3Hs$|rqF?0B#tGhBNu%}&=VN<}Q8a)z(lW#g6Eq~`YSHfQeoE`{o! z4SPhn5AfeiGn#zl5K`Gy+sM2gR5zQ#v-m&m-CJ54pSb=+e^ouKQomC03S*a+5UGKu z3$#BY@*Xf0!-?DoVm2q543cw+2z>w!07!g0T)o{t}$PveI{R!s8 z7vG!TYg6OB@Wi+3U?*zrW2x+i&4?5LcSOy=M!=Vs0g6hmeOUjE5^;aBPN`whe)`$T zieF+6^zF5-iospIu;Xa;~=z%AmF%nD<_6Uh_X0F$or_8mGAs+$O^e+#_Hz$IBGWOYG^h(ldeBY2Ka!enM6s z0**|Xp9{|qBJ)FjN?Qt$bMK$fGN94h&3A~hwu~IqfkDaKpE?<7{ zyr1Q>Kew!35wC?+Eyg)k7^h_+x2y>-O#2{RAY4-qFKsA`i3CzkpUWlzVu93EB&bgf_X@SaofF;Qro##(@wCFOjXiJ*2t2xPI8^c=89ocn4d0t# zrbTXVUD?8^Q8dTtjRfb2C)uFV)e0xLL+M7|jIJ&xj5#|}#wLw|VotiKJDm9r3;smcUgtme z84rb*Kc)^=ZK}_Wk?$*|Wo}lu6X)M6gW7Bbyo39$kRp1YS@eJ}WyY}p^ejtjEF}`z zHz(oSGw#@V_sy@qZ8YEczPRmG({U;fQE_#aAot$jn4y6*$J#U2` z?fZc7_-qN>-caGh9eVqIY9@eZFRn-}`T+qbf;=(^J3hVN63k6bQhjO`%IM)D#)H zy(uMHs4IpFLb@oFfHe{jVzQw57% z2m&c2l}!tc$)X|aKObCv6?C`Dp>qz`ld zC2RGf5xG>!RNWWZ8oq1lj#bME8m^!D*R|Mncv}3QPZJ{5H42U1yQn^A|KK@y&ZI01 zmU9-S*-tk@XvOmaZ8}I&;~&s`wwa^q&-k0R3S{?{y}4H2C;cG7JY9pb#5C2ho={mV zIPC=bTijD2DZNrOVIJ0OpR@Pd4^p0pbHsxl1{f;PSS00xLSGOnWh=sGqNyp?Xj*kX z5ISy8Je47)(YU`MqORxP9U9lF+4Rixu0RWxU{Q|8L3jqnmC&5Gc{vq&yo2Q`2r-kLWrBEx{$CoshdSf$jTW0W>?Mx(92X zIH4{&Eo&jHVBFt5Jf|Gv5H-Vzu4aeG2df>pzM_291VmfYRZ;3`hqSvJfDZYxn*n~y zd64PYr#>@soNjZyd16wu3mcHcW}obnL&aXE>EX~rJ$Z`zQld))D^GX65F-HWy#Rg*$K zhmi7{%`vd}a}9t&|EIkD+5w2xX5Z-m1GIqOl9u`X1RW8=-m54Rv~R6ymNnLr7?ba4 z(wsAVgHv^LyjpjOqHBE5%<@s(-Ojy2E>E$_hwVxu$5%qN`Kev&} zHgsJ(j%Q2we+HKQ=g3#o{Qf=kH&<;iQvvubNgM~RSW{t`!ad#AN)7NBjQet-!rw38 z$Hh$ukAX~|x~-6Rx2Ai(GZuOy$K}{P{EOYf4J+0Yr&Sha+aMyf32Hrz$YB|pRu&Vm zJKpGpi)L|z;j9ZpspwkA{9#KM--(*?xv|w}x;o;5+E79Lc41|nAKFCr#+wMCC`C|& zc`?B#th{7sO1r%$7P5&MW~N=-1+jpdd7o~qLeo-vYWV0u@sZdUzk+oZ51KEY?gXebcYfJ>^a*h z;D>B+{J64O#3YuJg4ZtVTX#$Rlzr!NlH~vyeZiFtg|c`y zG_+~J*=C~;he_VU1$sCy#?31heu0dZ}3x)Ly+sQn=xuHUAg|Y!iuGEfDy7fwv$O zFWeCpy50s_h2}+;r*{a}lbq1YWYO7yjn~UaC;yMjO*Uf0j-tDgsmSed^Z^GU zk29si-)pleONe-+ZVltdpeb4r?O!>TxtF?Tm6gli&9{0FPOQ}w1=bHhCL*Uh?R2OH zXKHDgtSf@BRp}#pYEBK%ig&NUUx|MZuT;z(4po-Jpf?N@C*HyLG*v0&dg5SNhKB2P z?2Z1S-s!vT{y#$N18h$_|aOp=}N3S!S1c{FFcH|N4XgP8&lWp+IDm>@zF0M>+>M9`ul4Ra;%~W#r^hcS71CG%<0p{K zS^6*IXAaiTzl`6PN^B&#p8G4Y8W(>0*zZf99;B4cUBa%;(zEb2h_63I^t>bluM}(A9=6r*z8Nml{CEo=7QSZdQ>5cD|L2+E zx7sb!Kbe@T$$-5_JK}bEXkzFg74#PCa$EG6;x?hF5KgBvwLCMq`?jX^MPiU-OSF>iz*VF_B{$)eRBmqUeQVa?N9u4=SDrC6^26@d zsQ#~lZk^>HJ?!niD1}Ko@QSU(`2uyO`X&UW=?Odt$fJ#JUR1BI~1r%Gig97sIr7VRGcZw zEC$Y^ju1DsiQ1LHoU9B4Wo~1&_268Jb~}5P=jisrMZKGp)=ALR#?>g^)56?5H^9W; z)NG)9fhk1*vVNx6y~##}xE?3qL!`Y;L%4@8+)QlHAb)1Sc(y(X4`rh$-2)|%b@K;) z$-prw?xX}{l@Q^L!^MT(DB{?NVzax`Y91?}J%K$UA)wt5bQb|(kKv)0lt!nU4cuv^ zh)<|XgA!fRm za!X!qvlZfZ+^))Yr?pal0;jjy)reKjh~b9pAMUTWWjNI-wYp(CvU| z$gmB>oc{z+h}$8u07={cZRJBckVcfNQ%X@(@xpjh2B{>zHm{m*%zz<)Zc|?0MGN$Npu_JhZc_9_$Tjb_J8MH zpA*xX zK}7;Z^}}No{9(4^`fIB=n?fu<&U-9YX% zbOZP;-J;-T8!qBLf{t3$F=;L9D=q|3_>>c$J^I3pi}6#D(FIwnt>buC6oS+6V^ zO4t;Z)%vO%&c)SDy|d2Vd{~!F?M3zr*rVcapURFnFHm*O$Ej&n0tWpn1z*V`NvfR}y? z_RY|FxdTDjAk7pKx?wLXhcUjmtUkEe4RM)O{MK05LldSzpXJsERL9R0A9b=kWp1_T zJUJz5b%#G))8F=E`(y8LJ*&y>Y}iZHCx;jg&FPF}5VR?^4899ma)@nA*K@N7*D#-p zy|{7%c6AYX?Vpy9hixDK_y5@X=eG&KB4?f=jxJsN{b}Xyg{x{8g)+~E1Gl3ZI4Fy0 zU8hG{H#@scv;5esjE8E=(<7kgzCreqwL~lr@t-4r0RQ4Yc3g3Y{9+apzT|USyIIlw zuUEeIT|uNbU|xIh#Mne;dU$^8)^yFI_)SK*T>f5vx?jrv4822-yoPAvIV+vfYQpp1Eu+bQ$xC=B4RZWV;hr`}^gYI0)V zxNt6auzrlx9(f5T;4FS)&_22IE@#rUkq7a0w_oU0h!Fs6;UG<}@9q!6*Qsc#4&=#S z2soc26&QyGU>w}6vp=alf5Y5B6S%6-nzwk_u;jhhm4r|_pbTC@SO8q$eF*JxV&KFR zXxgbzwP6dKgP(h_E6+e?heqvp5fyP2Gt-_3(;nuRA^q?TV}M^j$07F^QZ{}D<4C94 zo2xOAIB`3YhzG3hP8PJ#5>b=o@Z);h(U3H@hbquUXKL5Cr#*GkQ=Un z06Bu!)a|rULOKjn^qKVQjA}*`dfeO~5yge$-;Lz(D+Q zB>L(oR}Udw^!I#YvxGG;Z96nLO-V~guNk(h1Wvd>zG^G4bX-Id-kt98b%7I*tmPms>_7(X^+JhcuMxr3?8tfUK3=`cu z4Z3#i8#U4(J?fIVV~go-g+@onI-R30R^?yl4k|;P7(y>5AiP|Y(#R;{lO(lId!O!i zoILTQ2|DD!+TNeMt|fxr*F=9S0pD<+S&kN_;ZGnEhC|pW!PykG>ouQyCj;#3rl;2U z)C?=dq$fEb2)?yo*W}6rEK2a)hJMo0i^3|~7}fi98cZgcFfT+M!~O3tp(E-h z%;~g4)xL`;nFIZgXy3{&lqTqpZb%wMk-`DlIK2d1t@o_%lZRw8rnnne1 zdOP8+lPycoBxNoL%*IOvU%N-d_6|6|3AnQgLEE(+UsM3(DDq7J8{yQjRaaK3PU=b3 zcQQ~YG$!1m0-uM`A|{+rJ$0S2A3R1*%y%&{3%ul;5!qYxf80)9`5WG0jHc>)v5kj2 z$K-gFPF@$fQX_z-XqsiOe=K&th-swb2^JBDjwaN%dzIEy6$;VCEG+>P&lZWTX2*Wi zJ!h^tX@e31;#94iLZ^&(*<}$DW2WcayOJKp2n9ur{ za?N<<5wrL9dTJAqdbSi6KGY5+z7SZFd~KZ=JtO0$ z$`)bsFguYD^7EmS^gQ$>g^V;+z$5UTy`9U<_0@zrnjLN62R@(Q8tNYWbdB?CEzOML@bXL?UL zJ*#UphK;{68J)vZ{66FCyT3y&TVAOVP7xY2FhsH1U& z_;NFx&~8q5g&S!RLDcAa`$pLe-;m3s^Y-V2!q^}x zj}c#Iv^$v8R`40b7+RRj{{s@Z=S@OEGxuCq zmf@c7`w2<9ny>y|lu;3{q?z~T(@rT}?u=pY9RsZPfsJ{wtFQA@RB-I=s_(;MuA%sW zHyV}#{C^NAHZX-eZw5$rfLSan;-=oN+hnEUZHwtx2$+uUtml97Zt+qHaY5(UxTAF@ zJr z7zu)}Hn4bTREEsnc`owMdCXNqkej|;X3*B9mggq^_aB~)+3Mk$G1D=fQl&r{nRcAM zw9o=QzVQ*vHlyowipu=htaJ&A78p8wboi$>iUU~n?I-(x&I9}Vq-30+kf9S!X-$c(F=Lv%U5`QHlV?DTO)FUj@u zWd0hkeOc^CY3oTX9f>49KI0SG;u2R7 z@z<9EWUblc9RJG$tvFX<|Kg1$02V4;``@mQ55b3Qmh&jW26*xQb=!r5sn~V8#riY+ z_4<=d1XffU`f}j^<)FU*e$XKNPa0~Vj&m=|a{TIU!>qW2aVPrQ)`{bU&EuVnX$7~; z2o?|GZPIxv_Gyz@e@Umf=(zvkkXxu{i21m{g!{_oIzlgSb_2qD6K-6&Y+=a)HR*x4 z3Zdm&RZcmucfk|!cJ7R>s6aw^ss6f0>ZXzbg;wyc$C$SqE~o7gj(?9+9Vdo;A%b%2 z_vXp1xrsgp_ZMZqSmgb7Kyh%=*zQ-EPCDOZj26T z6~~?Jt_qrk&4}Hklb|;EQM1IFjI!xp$FX`~lZd8?sNr6yo-4M|ZJ{pLd+Pa2;0DEu z9bim02ydTb?z=Fkb-%@GZ?x1JJFOUD)LXOOq)ac(v+lwV}C!PtQ=>|fD{|%ss6C>&|#0$tas%HV(Kxq zX$xGZaNoSVbo`b?lrxttL)4H15i#9PS`pPW zCcbr&CioWn*pbK^pT%d^^U>p54R}kl{=zwh;x8~?=X+ja85p?zCY3&nvspeZT$Lnv z9uPAH5Rh>oX!7lSiSp79^?)GHsSvy?P$LE4S(=R+PBIg4_2J^yPbJh<^q| zEhgOJ0_G)?IoAT#@umEwye!#AL(Me17W|raso~#Jw2cfjkt5lpzrdL+hI&erE@>Cg>`wYes1XJk;f@ zaEAg%o4Ii0zH%KSa$Ewr{)My6X1kuwN2I?-=d1RH@Pm8#x=!!6X9-TfzQ8H5UI{5a_op2H)Ds7C=jxlOI^*54xz#FSnjzHekbH_a1R{njwxvh=8^gesFWA~is&jU z`(*rq|K;#2f6?PS7o5fVQshOb7wi%V1s2{1n!d$Ld-zs$q62LyKN3{sS)v~pzY(Nut2@o#ptA)uALA9H!SNNPHMaX3Ce{p->i&> zO7ifCnBfa@-Z8_`NCBOC)b9(hTs)Nml@5{vH~(8kc`E0ZTOMpW#!*jMzv64(jFe%L zRg`8{K34@Gs&ELl=_Ydh7Q9>Ygyxe3ceY3S(-_5(*o(N=>*!=bJAq)PU;JKyqD7$M z4YmhQHvW%+XLDpsnW%?3WaS$hq};5aqdtG>4tu&qNL#&UJE**nCDw zr7Y}`VE8G&&9Yi<1}_xOsy4lpvM^s4bM7ZIxjl!`!4iY5H%%GrawRxpuQXj|otbR{M$r&p9! zWXOBc@DA^UB^UYvUKo1%@mLFnHne6Pd+~Q`3!+!xLOE9qs3dRhxUWUpQ`1duos`{O zP(T3WruvwUDSCot=t^YHv+?Qo@BP_9tm+-5_XKQNh2C1|v3Dij8(gK5UTveBT=t=g z(qXbju;KBi#0xAKdwySc^u0iY zvJ48^tXQMz>73`0Q1bCS_`sq}afl%)x`m33GI>b~lTN{RnHB-I6Ux8*vp#Tc&5IN< zV_wbIL#$@++JL>ie&jaM z`~ACWlChO5{So2UyZ*v?OA+C)eNA9MwVigxZL|4_rmc>CjMuL{)5Z-RFRtYI>N)8R zu}IDy>;n(>g%x0=f3F5j_q`)cmpUjKH z`Vc=njIHfrx6&t?mJscF|AepQ(JtrR9j_sHv0D+qUp>CHp1=cF4SfxPNixK?4YP;Y z6F&?R3wv0sM*fHZh3*&=30n6kftq`Bu z`G`}-65ewnP;q2X*DV)4K&>^{Uth19Da^EYC2cQ_d>-|pd`RZmHW9gKh1kHm!Hk<1c9ZKoV!NXL@J;ES7c!!TJ=ajy zA{!Ifw7BXvbz6~RdaWPMi4JMZwI7La|&<21y3QTYVh@k`o{qRPyjq z!Atu78SC<&I?}Yf3F2?{Q-kgof5p6;KmD%#4gEN7cbiJO(ok_7$k$XtflEZ*xMi8L zXP%*q#hYxaI18dmNdje)c3=`c_(&7|__KC0gh$I?%xE+&rb4g;@>x?Eu2DS5m3p9F z72G?@kJ~NqPP4ON`Fxb-f(wZc5V3*p$oc12#;^`)r4|?O&nzzAf;JB@69nLsv*IYf zl%)cQ)#T@BHe=aDx^H%`{M+PBA{8#KjOvm~c+beKVJ9uf1!<=E2EgN_r?_+iJ-l44 zyHLWy4)suTB6n6)R)#z<-)AM8`mn|pvk8nvVzYsl-#re%T?^jdooyS{%j;Y!FMp@h z$rVQRN?uKILx1mr%bo!F&ueoAeHV=6h+N=9`qh(mWyxEk^mPOHUuIVM9DK;Pk1`GS zb|aiIP;I%=^<>NOK3^xnBPYdwVH%lTx&Xz z$j#yxjG30GuwA;o8q@zeN2E<;W3(m)OO@TUcg9f+yhkyXxRsaju;mneP%z4=TnUIq zoaV0kz%o4Sn~slD87qa|)M8+h!ode$P(EQu-)j0ea!v8*-JiTB=)#kk+(C6UxV#GOurbbYH$ zlDSOrk#WBfqdlB|xG#NIkiZvuYE+QoV44VnrG%Jb-v=4f}1D z1iBG(k6@3a`ZPO6Kia!B=dCb&38Mu}W(v2-@J?r#U!PYB1cXiU<)aL7@u z+n$E$T65>MgNz>nmVw01tzNO!1CmtGg$0&>taxZ zP1h+K6UUBAXyC%-mhbKe*lI?wk~yTCE`=j6H6%1qywYPw=e631+40(?1hY`?{5m61 zb2_@^g9yW9u*>kB!;qbN1F)TX?EC1tx*`D-w6T`5adLm_hQZA2%(MKTp5vr+uVw5% zlci*ad#sIRBl0|&o2$6zCWLIQyLy*7>>pai>Jffz6vU}U(D;CREII{{TQ8#PDh6tF z(zoI%2qN-y5HCK~W(1nK;fnO)JIp@9K)-qv<|h{b@q`kr z^8nnH#Kl&ZWBrGLbrCz3r?7tSA#%N>$PEQ=6dGjUC;Kz>^6Bq~G ze5#lhtQ8u9#T)j~hP=<#>(6G1dSRR#-YGfAhkylyT z=xZ%-u@JGm>L`IawvNdMR*E(#osC$0H(F#XpGH-YDo_$;^s^?}B3nhb91U+^CK$d@ zy38)Zd~gw;D$#NgU^yuB|5{eg>QBh%xRnS&r3G`BFA4{r0@H&}^&ms9{`?83TXjca zGeJO#dCv>pJQo6^NJndapN(0J9p$y9n7mU)nLTUx)W}n0E26gw0li=vkT5G`GF;r< z?b?(j<$If}^VmOqA)v7VH(cas6XyWY+y|J}0L?byw7;Y+Jw|O|;4wgdt`c&{?KPw! zJT_Kfb+?;Q%~o@kTq7CslEV5Z6axAF?N{mCt@SFL53U7jgAF}tT>8%`-T0C%wxsDx z_uF@1U{}7&dxrW5h#X#L49e*8U{|H#-$SK4Vyml&%G>I>=1US}W8!Gag_jXawa>3V z*}0pW zaqPL2hgZ95;HIq{c8A4bm1Z*U4igTG1>Ip`#3HO|hN0c-UFptIYtQ%To2Q0v*qG3P z3Tou?c;&2Pslzz?G_VCk}0msnnC-UbwN5`TJI$6q)^7 zonip}p1!U)YrUVltpI6jLi)JzUQ0K9%ov?9fk*z7Jv~Nu*ClYQCGpvTLgOuwJri?t zNeE=$68G!3sFxZyr`3S}5vVBgZumU@8cs3!61F$uLFMa>4r!dE2tD-ntdYsPA8|}0 zr92(>m0;UWjn?0}#3UJgM782pPkcehJV(!4GeUtq?zBLGCBbolD;Wyb-jzf}rnWy0WL2m4zpsjgnH=rLNNM+=2;ZTi{$X z5ifUX6CdThV4nqak*|56eQj6=F@ZmT`HmHMUa1Gb{s}9_-D`$-l^&0U)d*x^)|&RM z%GLSGE2ab~nurPZp)=*-pRQzG<*&FpI)36ICfAPHu|MCmY zgae>Yc>pD=iUw}jp-br!VDZVir4jki``9eezRA)$zg}^$ z+l4;=>9^~v*l+<{JT|0mUOlv4kpMuq&7?{}m{Qq}`|jx-PMF`H`y0{z}-!&Yg0s+h$d zx4C9R=GswSsze5nKkwjq%>I6C0fsiHgQd@g575tag;vAgByLC9-&I~U^Jgb}9A2>{ z%>->hzN_N>RIvQHrHsB@qxJ)V_L&Hl?<~B1Yz0Z>;jD%#ER~AQZ!oHOyT%&pDoLl} z3cEB3ib6QUlP+9P&!jj}$tRJZ@28X$qPJx7`V|l#b{0s;9D?p3>=gXZCi{P1lMvdx z?8!Hz7QOFD%wGQonAxKZ?2kPMORpQQZg%Tb{0emECnCG6!YdI;`;*NAcIj7w(}2CI zOBk;F+pauglP&}>^4T7g@HF)Z)kN&3Ld|EMfNKv#?QleU30DlGK)bHRle;)az5%zj z_+c|?7Te|jLVbqq4bDd6UH`{9`Lzr!VmxL0_oMQ(=Srk$sK-d}sCrQbwaVvWiki=q z$0l42>|g$>AYtgLs03oJuZ=AI1g$=Bw8q*Z?ES}EjycZ-b}AO@>IZ$~zirvGc}W$R z`Jw#{Y_k$VAnwxQ0qw%!m7i?sR@5q4J*!iRWSy30T_sb|_q7>u^+hTS z;8|!7ZH;~dR&_Kxk-4<{O z6lMP_>Gvw__y5-)LC$7kVOnO>z2Uurd=s}xwu%H3HOC>gfMk+v+r>We8U1^;W%b|t z1m8ZCXIg&KtMVGxS(+Jot|N}Lwj{3D**6z=Zgb}qTCi??DbrX~ASK{IA&a&xh@CAi zZ2#J6y~7R3HMdutmPS;e+&-^q&QnSn$kt1;% z`CI=^Bl5O5y91XrJ17`b3G*)=yTvy!GsnqW(Uq(dn~SoYn&cLS=31V))w|4h-URtO0$r4TZQ^x-8x^dhqx{2(LUd z$PhPr9$bDABk2onB z{pd?k@gdxTdNiJQ%LsWc4L)>3-$cK>%5#25x1w;@GdtGg1CF^n%R}Iz?nTlGzRA8O zP&NJYt7Pokf$YnI7-zofJNK#Xy(A_u#q;Gu+<{MloGX_;I*%uSlfNPRZuzck<)^k0 zT(V!d{Q>@7^P#9BjJgzn_P?clM=nFLlG03j+YP&O55Vv9 zQy00uVbh*Bjz8Gbf4Jgx>TcxQ-Xox$k2Cb94=O`oaiA`W5S_ZhecCI~_J zaQ$!m7PSkpxZ7_!uOBA0XK5;=Q@~rzG4XOGXzCEpOzVfble+>8IK#{>-a&zqt=1%b z(#*2+DgmQXRA@o5p4ptUk9v={JpSCdRwiP88m_QS=tFF-pp&jGq zCxg2}+*%8^JGNua)kqfcm~nVKTOALkNF=ds)BZX}-hFp9Y^SOkHz?PB%0_fz6UyQls{Q?uCHg?9_QM_D2%!NF z3t(?hBYgYm%fZ(I@DT=ZOVhG!bPazLx)eO`#mIkJopg->!Zs_B z93cwIbur&&J!|^eBrAt{uLp%ujHaeOnL&eK^IwEQ6%IV+5d7km^zWKh!aZ(1f`0c+ z`o865m~V>h8s6T!$hSWi+~S!&>>YGWrr%GyjqMxN9j*7wo!lB6FIdhpe>+9&udv`a`>dM*^4IbI#I1Q{_CPAD0I2W9Wm{`^xG)0S9LPGF&hf0%}09J?; zK-jF$XcpQVKSJ>_{x+1>zc%4F?`RXoEa#gAkg5D}XJjPz_f9rR!33a^n#NMO>gp=c z-?KglZTWuPu}ggXdRx()Ayd61IoTva-vJ`Ab?j@7_(;#6@hgNfxUp?vxw7#>`XXd&Hk3RM47r_0Cpw`-9WzH>vTJ9>I;Bh;c=rhO^&uJw84g;=!YjD>AYW zRh>0xZIT<8B&Q7u=fG8=LWi_=GOK(rWI13;qY3{3Ru>oO^Roj`AEao>MZ6e!W1m8> zs%P{0bI#EnWlv~J(K}|^;fq&N-(8nTZArWb))ehsRO3t{4cx^dvzZ=w5~eobc4CP- z;ESn&R0&UCG|V3{(5IlglR#E8n~%J-G-c_QnbL&Y&2%E!d0A?c5-Ws+Impl z{*4K~;;DPtn6Y$UxyYGTLtM4(kKV(*ASygJ1RQ1#pACK)!PUY};G zxev8|5kI>&)ivE5+ifp#4X2HB)K$`6X;7km$M$(wLw8D=Rf@?>c*V3F$nnB*uGCNZ z!C^NR!m6qCh&t3f@P4o1qKY!!)F`KK3KQEJ6>OBlDN>4M+!@2i=|nWy5)bym5acBk zl$(zevkDgVe6Ot;1-Ujp`Ta22A6INXEO|b)1m}P!f-B0pEcz*{{M|qA3|^9?G~>~q zx7B%}#v1F1Iu}X#fZAduHMb0mE=|h#@?&i2CP_LJHev#jaffnFQj|1@O1?xZt6@jm zgvB*?&9$4M(%NB(kV;uo9ZYufNx7n}S)oZ~hIsg}+$|ggt4c zFF+ECdS;WU$&Ft;lCrt z;N!E3pc7`7^A}DJI!Ob&d!1zZUZ6MD&QuyMuPMKrxQ||Ww`_YixV&6L=N{dP#%T!N z;kqSGeaZH|U@Gl()<|2X_uOrJ@o7c19^d%X=oHCB@m#5n>RWl=mCZ^7sodP;&F(WM zVf|9m%Hh~Z$GA-Htj}G(J(}xESB2(_o_@p=HDPP6zmLP?;5Y{mAm*`!5A+D~4SQA^ z_mU3@UzVd)O=Grn1AqTX^m~`}l<|a5S64cZL}LFP1jk=k*oPz#N@*$36(v)!G1#$9 zrOA_FZtMYpcnX64s`T?OE<=V725;YtadptnN3Fb$+T=$HAf#dtMm|~?XIu2Ot^www zZM!!KVQOy=Xl#}oIHQtx7}r7%Dv;(ewJ&Blt~1L$(Rm$p#N&X(m1b_97ml{avlMu~ z!xn8dy4$-PXKbt=t)i|slP5MS4yCY+E9(<hdM)MY~YWBaK(8iM-6zZA(ZXmR+SNZI*sGi z49F9?qt2TB)+G~eCSP~zFTp4`-m!-eEbbeu>j8unJtWkUZ(Pak*r|~>g{)Ed-J6?T z%cif-#$qETz9G)&0gMHqxGK>oR4{z3-KcgMPn}F8%O{X<#pF+SOiML6`uJUzwue%) z)})iZr<>NzcL#Qi)@)L)QATzTPqNz#b}9w$iS)`Zp@(fmXf>c(H*`6&b6_PXFhCWHMmrGwPlozxoMjLG52iD=!kwU-#Hj7HQC z1PSnp5-f{XJpRD@IgDoEt-l2WfBKT7_({=2U`@jM6*-_d2-};!Iw63pCxYc;7XExq z8J9=iWig2iGPS_%H;p;EUu#q9gdnS7H<{lfY0S173qEBtaX68%jr~HAAkBv3|A^l& ztEzF(U&`e22Xfg5fK=PmX=h@(=*?s3WHwg52Zn6~ld6pGMa=2fY9o%#(8gANcPmhr z%SpCJ()47hcw19gyc%C=rmgmeN>-U=siN~vApK(?M3ZG1gt2Xg9`FXG-QKCOdR^t0 zwLwsQ?P8-}KL;zwT$eYMvy`0$C{0vpi`>#yV&q?QMee=X`Ch@|da7D}m`?F}!Fad@I%@8hU; z6v`SuVb_(jGP}Y}l&i7q=#0lNb1b``FxBIH5&LdF#nK8MS03*!L#>EMQW3^1r^uS@ z-0J3aKhLUQL#rw^g*VB@oi^@qn~3E5ZTTmXvJTK&e%B{F##;C`0ZS!%{7<9WJki@g zSwn(ZxzTpIWpB9m!VJjtIpfZX$(B2`{0ZR z*V@;ceiq%xf7`_|){GVJ=JZX(-3wEc3<~~{nZXq{Q66eh!j6&iv&8;DKDq82G+FcU z_-k=6@|vEZ$mLGyCZ5!vf~YeR$f;kDEP=md$gvh^5>5ca;HL>-AOa(j$t#x1|9lO? zxxnP6V?Mg~Jx(iHuENdDSdravIq|%zhF9-0CB1&6u(0GGkQ=2bC4)5DY^4V}0-gBf zVFx=yV+9b$x!;W8QmoHIw{Pa(n@&eLbcTf=tziYDR?u$027ik)OzihMAxD{y4vU)l zg3ul`+DRHoT4L{-pBaU5F{^!xiR+kl?l;NeOhxl`<@<(Q3_ocV&T?}$Z!dKz!B2EItxxI=!@8b29? zX&Y0FKAK$FDU8(#6215S-tc_#yh(&E%Sm!RLDD$EC!>;>sBrOEYO3Bbykrcxu z9hf|U9yCJ>w_pS->8UD>C<{RYa|4dQIK1@YK1L@4m_O3DFteAB?sDHaeKm#uite?> zZ=)%RTad-1C42v$n2?tEs@k}!QBKc02@Br#!nY_7ZcMck7V@=&nPJ+zLJEo(HbcngHNq(tO=y^aB5zBNPd96&Ub(dP@{e$TZ*O?{g*b+lBIrVypwzX1NoHrH z=F8w*7tZ@O#cAh82}f0ry?F_#`)KaoVv7RFfEp9F0Y&@OPiwh&j~b+sFD-G~>xeqg z7wY{!X7>lK$+hCSp;(kpW5T5p7^SrfVx^^9~^;Tz>HM z5snPv%iqN;!-7i$O^ZGG7lX)@C-_|1g!m1t>oP3o^ygYNdW}fPJPL4H-jv$xcos!> z$?!jktJ5-7k7e7F!0qMh8w4@iBpg3z&dSoVK4S;!%YGjS{O(J*Dib@`a?(jhzywf$ zRk+27fzM2dqb$%vKdzT^!-g9vUsrKM$GS{d;D$mt!&^5NZ(KuPwEXOIU~R#>{k?`fW&Pis{LD3%Bd_l5W0WaRgVfdZe(u2pw*@%JX$Br_Y^` zcCXs9T=E>3t(?XE@AoMmcBHR(O#h8L8V;<+F&Xx1vsunq$ibh;sL?tR?HOjDt1Gj5 z9Jf(B87qs@!6mMl#;{SS2b_{@l-N&JQdZ56pC785^0S_M>8tDB{{P8un{; zev_&=!+dDkDalVHDplH|>(?__FfF&&Vs-DQgQ>z!XfY@;xg0EUX9ZU+h6)lsm|I3h zd&LB3{SYzMHVS9!9UtcCOV1^I4mmwJ{*`K$)Z9<#NXoX`S+T=K0#VqAB)-^cj0%19 zTH&=55m5K?`UtALzoGpLaT&bY@hjt(z1pX+Kz=ZWT&>xqnE0{O^Hli5H$FRtW8E85 z-b>u0{*vX5`<;#p+{{)pD{)F31~a`n<87JIDo)C8!eix{NNpJu%S&#(-`TmVK=u8# zlqQax%7ThAT*aLze)P{DhihG#X&~lV{kS+4bQz?sak8O`>=t2^#qV$Ku(`9cGbacg z)Xg~}Ui%<0Nc*J%o?)fjPhxuP7U33<_K=3x&8+>e*G|V`*|#rmxQdfcD83a}b>4yVXjOUQ__AZJU}6QRcB3^0}oU$6{P= zCzOybI1Z6xI~z_%yU=PU>YC&hz$gpTFi!-)%n{^fUvS4MVwo_0I?EPO+uykUD6+5Y z+JLzW;mcCgT*#Zl;bh;$HoW(W4{%w?OjBb`&f%b^N`F^$iA4a9JkHD9`*FP2#^o7) zwezIsvS_s}tW-kI!u*jWryr?~?OPG}dYHN9Cr#dSKLsgC->Nleb#yc{FV@&& zZ{r~k#jWa3){!89i#=@5ZtmC$)#;u4rN^yU)PmjVL7H{UjNC|r1R2G1H0wI&R*L(A zX6kp;XnWI*xgMgQMqI*NUw^aAM0Z~f)m9LOi;AoPE3Ab?doT$FtilE$=v~aYMsd^7 z06GyO)AMKTPtBuB9zT~`%B3n2Ig=Gk1Opp}tU)^n1M7N{{6gRrhj}c18ug|xiKM zF$c~T&*P#(ySm#GDyT9j0ry3Yk(85xE#b)omm*>}x;<=-X{!&mkXQr)>Hm3^9J_X~ zg}9`XeE_QV#h&y{AE3)G=j>t^FwEcTDqy5LtQf6Xa@*&!h@&1iX&keeYH?(B>cqxu zO*57b%X`LDGIxG>mC)f9<>>-5yVU=f8{XYWa?!pL)=jPIMXtiUTBFW7TUS2hM>XD# zDzqoM{#;RO@1)1=$0M_@pJs^N6?oXb_<^A}K%58M0WDeriXlLP6K=!I6~D(X41eS* zVhP7;NVkjA{9QOlsM(B)!ylmf8lyaDnjd7gx}3Zi6x{FVE};=2B<&@*O`e@)lLu&+ z|7$K6LH%1>9{U>g@4Dj(CY6bsf}etHCzZ&Z5w_O4-@~I!Pjq9awaU;DiHgY_j9#fn zXc&ky6@FJEYn4Bx*X+ohN3Fd|ryk3CK-VDz`&eUE=uvgPL%*`sSCYm!=4wopKG@r#KCXV+`%P75}ln)X&SL!i5Tq86Mv)(~`=#2hJ1acF+ux!_8CidG>H4RKy3<(&3ex zR*7Go$FUjcudXZ2c^e$@ORx)6}2w#)&= zb>Z)0oA+5$W8Dtp7r8Ok)T#<5sr$3+OqwgI$h(%;dO++Ift8(vW07RbC(aZ(m+9r0 zcai=A+n{nQsNE^;G_sda+u2&Fc;oA6NV5bDh?|V~P)d4^ysfAGeYwZMxI)@Mr+2A$ zp-r(JB!Y%qrkKU?hHCN2vSvEV@^}1bA-r~9L@I*?nnTs&^Rgli`CjU-)rzOKwR#(A zG26oq4T^LKM4aRV`3^}`Ai=r#s-Uc%I#=iyzbsP~z9tt*^c-Iw9r) z2siP4T@8g%+4C#q!4m4sW!O6*>d^z*^58v4{^Y+cp7y2;Xoo#NehxI!=@qr5We)K) zk6KzR$QL{=EU$Sztf3h#C)1i;qoewob5j@Q=q3wKY;qiBBI3Vi@67>8+E@)q!X zDJUK0|9N!?^7(H7HfsnAyNy=+4N0i(Zmf!29Vq0Jb}rY)l}5RDONVKY_Kx;&^pk7; zk&>cpW5X!Kq`s&E&)3)x5k*|+U`_dAd}F{8>?V`-5S*I7n?AFXP0Bbr9iKCh?@EH> zjbdu)$4otqo|XI1dco>c4C*)77dH6R$b#YR%QS=n`g-_xWD$3ZRty(bLu-X@;-!Wi zmjge6&D5@4!OoMUgvAhdQgB(90@9SPG`|kNS&Qio-X&%PB7^6|7e9I+R0q5}ih?2S zS~q@IeiB?Zd(v)sUlE7J1#jN;oaD^9rhRb?5PoO0rZmcj>zbX(?#?u~uX3i}3w|Vn zM-2l;(}uI21s37nR)%!nUU#y+(Tog#d$a$1Z1(5?n{+PBKihH^@m@<$b-t5PYsDbG zf=t`r7iF{lw^056YoO=#YeCZKxV8T=z$M^l<=0WW_b2>^q+;u{cn5KOoo~iokoiPN z@s*-TX5&Si#s{bEACkQfg{sS)sLaEP*KtXJl54Ve)ikKNtdsNoJ>gptMnChrSKfiW z-m!gn%%7G2h72p?*l0cdl`(UZr;)KyeR$Vu(Y~*-`ZFL6;I_OtaE3=F{(1q7tZYo?dKAka?;r?Rq%ehz7=U| zDZx#e-#+Xp-UN5fk9jW9J{>BFO>8XXxp;|ap4g+b2rQNSq6&c(J#(6$?drgQae1`s z^e+xg^?F>f?wG_p9k_qu zLmVrZ8r;Og`G&$vuZYZN0GblqJ6{BTz!Zj<2hNgnO*)S zoRRG0Q8ZTJNl~Fj!avvxOy5iP_8EiFutmQll!6S*`8+=C;|g{J$Q zQ6qT!HGvG3#$f`K#SpdIUSu(?Ua?L{vYNZ8q^L~#=LWt7-E=GQ-+uq3o7#TFm+E~E z*OA7*+7NtN|0j!TWE=KBm{$KcbHQt_DI)B|kE$#}am+aGACTu^i|kr|%C^=8nt8mg z$%!*M8Uo^jZ~HQR>Chb8%}Lv7YHO!{2YpqB~4w96r@pM3WB$0UrtP zr05)@=I9DZ+YUONm#&-ZeaMV^>iuYr)lP(5dTpEx-d|5t zcVij@HB8eQb`>f7{^*NwI6lkkNJZo3aTB1nE}xg|`3L0v-X53hIjvD;LiWw+WwAK% z_ad~L9_i%pW4p>!*atUMt9ZVEUe~=aW=1?VQ}@QzO6dD|N&}BQMD(g$oNRr9uqfL* z_#OFv2&BjZBaZ@JV2kpj_NCt5op;}7@=dN;ay@GOz?=fX#zrgxXG5CF@(=b$OaeOP zp|ktuX=Y7)uI8dfk$hn>7*)cX=VJOQ6s-(I8L@-n@3VAnzQhe+ctkjchl_y=qvck; zBi^Up5vG*LPkf6GcIzZ5)P%1?An?iyP7JRj5cgB^l>e}f(yy)JZ)B>9BsP1fw95pM zz?rM374;Lw5PKGQWT=j~)Edsx+Gp7WE4?%B+HLuXFGtk5RB!Kuvo`m8_@EiBrxZ$; z!djsit*Is*No3%ERXsG-RTj}W>I%+v$#IKc%XQB;}92_krnJ@x1$) z^ER*JZTVXr?|n&eq;HM2!D#KwD=_her~5TooN=Gr%XWT$UQ zn08H)@P0NX3MF;WD#ckjTGFFM>RL0oFYl25yaM7Nz2Of8E#W?QDpRKxU%s{dZmBer zY5y~-lDPRnyQ;kPxl|2r1N54`3zTZY`Yfx!UhuK~8k^f@W1`H744Xq;?YZ|@l`0P6 zp5FisWe-|iEmSenB~V1`o_WWo7ta-5jRQiX6y$FPv1~s|rjeuf2cfNb1loH*DWxG{yHxD@cuVfi)ugSuZyj~}Y?BOgDW6%1Od&2th08y#lDlY-C zc=yS^xIEKm*&C@e_kIUV)}@E9J|MrPFnz`uXw!-1xqw!p>)#uV3hq2-(0Or}E~7#X zzH2 zl_a8+v(z?1jX7T#nKRxUqVA*`%ovHfd=S+mYVw=}w~- zAxjWK&Bp=*cU;QLqr`ZFf<|>(uT>wg*6}07P}-)^#9G=08Bs)LW+D#()W5Yw5e8^k7U)AUpEBWM z-5KrQIR^pbU6?-Umol2|cBQKhe!YoXD)iGfV!CbGgq9a=uPfIeIi2lqA_^edm+7UP z6FzkFF44Piy(w0q2JV(#*0;g->T&kHHP6{SGAS5-@uzfkImqnv_-dk+7Oa5Q@|*UC zd(-5SY(&S~X|nvNSWWTJu;5dgNWQTM7158!j%ZSaRJ-3K1X_mxf0YBVB%5vnCzy+`>|Pw zQ_A%yqB~Y?Y8sO{?ypTB-?$;&{wmx_Vg_aby%CMOMXy`rRA&T>n}nRGgv3+MU}$8j zs$;WKZHTVGqA%%eG1FtR|A)D^j*9Z@`-KN7ky1(;1Qew^BnCxF6cD6i6qFk2?ovcj zKtO4wB}Sxc=n?_Rk&Z!-o*@Sq=6AN<&vU=0);a5(_xNbJgD0-rx9y={(mM z?}(HjwZK&eo62wnFK-CbrH^;yP7TioHlVj5-Z#5t-A@yS;{N{S#W45hQ&zMX|C{J1 zptlhZKpg^RGIU=PIoTy$ar0xB*m~h|x8i<|^<(32^+$**mfj;4qR(`?oRG}%8 z?=#+8Eq5TYLHXkAeVfCo%YYkg#RF+DnQP-JAn|)j!>1aW`48EuvSqo|8a&;AIamgZ+?PCWpuzI9fYd1B=~_hGY+-DWI4W$7;RD`>+R*DYPc zz>d;(hj)=9Rlk7zd(Z9dVb1!s>E>YqOD8xU^JvK5;~j)dA$L}Hmzv=oQpp!Z@*|a2 zvZ5{k!Zy_bLa#!5={3N`FI~js-&UOq`fRY zua}Vfo#}j6UCwc$0m9&Mni&3mxG6~K5dFf0+dWjQ?qc7e>3L+;wvy3L?TnZ$=S~}Cj_X?5yaF-lwb)Mqp^uf^V z1h_=AKG4(Udo-ICZ)gz4bMoTn)7j^D@B(Q)<^wUUZ~Pag3zMEQj;V3(XGPtMA73m`mU~dWwXHAR5 zTRN0Grk9shPVIPVTXuhl;wFA8CiXBOFkrBCI9|5j9-&<>>e~sZrJNk>>P8Vh;m6^x4^=J{j@a%_x-DZp}?W_%z zjDLoEi(F~nZ;6U{Zq`?9*(J@dGSRYE zRvPImgbVIEp0qwZ&#bWtxHx`Tdc~ohB@TI%?Bd!0#6om+>Xii7|KH`u|8-t{GH_Hf zF4EJQ@36Xj$6ojWK|NUi*OU)eAXR|(2E4m$S47Bpsj>RQQhiuNFAqE8pYnULvUH$O zD|TZ06(J?ag>ZJbGtyFj;^%jIz9Wqr-KyWs(g)&;q=7tTu&&Uu!X`uP)` zZ0R+zw>p|c+VandxrUl)<{g~Yv=&p)sWLS2Wp}_H8m@qvXk|sR&in3hC|gSGQ3jL> zZ_q6!vgO$*7V}+x?A`4b*SfX7>>)vMXnCDSNcO8@g`r13B$wpuSrABj$d?4)xF|~I z&(1a^IczN@X(*XSU(j8Jn_noguf0_ONJ@b^!yNe(7plCTd}g5E?Y7D#Y0G1%)+2ut zJdQ$n&vT7BU8_$L3@BOI&r@$pw%2bsgk+*ooGJU!$Q~-n3%6NM*U++|B8owI(}0r4 zSpMr>0h-L%{+BVOS;e0$9EcPf?DXj@M8=v}X4?CD z{B7o&dkHK9-8l#JBdxnDt$629>0lmsV^;4LSaBPQTGO>$3Qa03>INmkt`Q{|d_$nv zQLmf<`T{kPErNS|TGUCc(2>d-dX?3@?8~5B$NdGdYhNgc*W`NKdd>DladuE3n526T zNJ)Sl0ccnqAtGdt%@R5v0^Y8lhzRFZqr@4$SBWX^0T{?(#n6{#%B5d_q&2s%*vWF) z#FpMymle0}LXYvGr|ayA2U;Bz21=o?Nla(8E;cm9Q+Q{(#Fi!%{d_CAIf^u#CDa_j zxxHPEFw}#+dQHMltlGmv*ARiwn!^P>-})S zKD-x(O%1g(f2`Kv#JXzGfY$76({-okE>Z3UyTaZfc&^Q3#I)EJ( z=?>JRNDg3UXQDvPGnbb0Q_JiB9Ji3&Eii5gI6F}$Kuy;LG_e18*4PcfpCL<`&E|la zrF4}*_%?bl@tWL%G!&cJLB+&b=NX8dZ31t%1NA^b%{ZMOHe#>8M#~~W&z}n`-4_T% zHfp#y;mKA*`0RP#-_~s>@DrvcYuHRVZ>G!H)Cjf5T%fT2 zCLZ>K2KjT1ya#MIEkKz&J}=+V%(tdFtAf$lbYdcN=gHj?W|Bh0F*=2{?mmUfz6`l2?* z&H$4ZJ!U>B&8DS1%vL6Dmg=;%@pwll4?^5?JLiE%0vZuIJ&9Ou(Re&^sBne!VAtd8 z@5V;SN}*PPw<`P*>!|Tix16f(^9e+^u*~$lkESS-$yzKY-y`}jBmrV%l?0Im%Y{G< zl-0(n>4U58cR2TtADO&*v_+0PM!;}}7;{5RQA{pMI_vIW_a|ry$46VC?*%&AH`_Wn zKMe2Zp#iDKY^ZLzMfLGWjUbUr5U-9tIKKk>my^fgl0Ps3-u;k8Wyr$ZG+u8sH{3_F zA~x}RC}!hI200cop&N@r8RuL%tN~%stCj)P%Qjv1w{LR127LP#gC&>thvppw(b~zw zxVuAY)l}B;<4sJ~1;I|=#Kd%4)UdRRwp9q<+B2h(L&0mL`zPP))Fyxi;a&-eKPN3H zMXa_Gi;6e}^E+Ib8Nyy4cweCBn<$f99gpT_J-gJ*zl3O~hId+tR!@2b>2xnu32kze zc-vWD3iY`O zLcaw?0q2DI^G~AAJIeg9>0#GB^Qrt>B+u}bk#AVODE&+(sCfrpz|of5&x?%JJcK>2 zJX3mC>Q?)ssp{+HyZAl`$)S?l*tk936es=}SJj=onSSG=9ZTaqdNof|@2|y=sy}Cj zGXT{YK*;T+zPqc7C4?Ut)2WQX+DTr~$f}PDe9h6jQ&DvE7TK7ytk#`B);D?dw(DA4 z!T{$A)lbefK&l|JG!91+ZJOyuOKoc#k8e@eyz6&YD^*aC5PQ-p5lY0HylxI?=N`J=KE<80y?1ZdKjPhA2ud%^gl=p@W#lFB(rfknEY)>`k1h%QZGlN)4=njb<`QUBmk3IzpszF7wT25Y+&hhu;oez^Njzd~yfi zXo^0szj3Jd>zP||kO5Xj;Mm8CUTXzG{Qv80=)cd7{uh5=4A4LNBb)|sVIIpr3d!jr{Rt{^dPBC>SlnX9a#mGJhf|*J?xim)S8%AY1vUb!qm@Fk zPQ%E~_NVmkicTEu0%dIE3ZaUzp51=sty|dTqHO8<*3nN^?{=D zNH%A-c?44M5A660QwG>r- z#`Zq9A$-X$W^ky7o3WiYv6DWNGX<1QF+&82e;_$6Tm+!L@Mqs9o<-7Z$oeBXotTdG zvb8hP-lP<~{gng%8m{XRD!&o1Z~5wpFKy@GlI}$yFKI!US`7jovLD|~D%%eF%TNDG zSpL1nWAv}X`5a8IetL&bq=xS&+t|e|JEF*-UdBD$>7sui*#JGTU<=^JSxXMhPZ!Sy zS*JbgQk@WN_1Ap_$sp)lxt;)jR*VbKHD?JKo=*h2XDfeY%>iPwsy5H3Bv3ADVYc7h zX~&9rATuTI?zY7#6*ha;6Y-z|x}*`YhS7cbbhKh8X>}>zVMV;+ifLtv#hyy9LG0|60; zA{Gf%OQMX_aMR}M^Y1Sb)n1q$r;^Zhzk5Qoo_S_m`&V84Z?5(yU;CT0^@ngBnx7@S zX-vsP=~v4Ho2h&_u`!?%Z#zx$fSDP;!W-el%YActuHIfv2(YEYh~Rci-{uLtTnu%; zXmONF%a40l>c|AU;wf5XrOTYXck?U^@kYaTOXp^70(sfgmAxU;)(g{eG0#K$m9 zFHHhZ=`D_S@>A3_8PW%%(H0c)5UZ0_ym@u<%8aRnhWkCL(LXD0y#RzHz5!1iM6W`j z?qHuwG6-@QBA7H`ys>-_*Qz^~wD+t^n=wo?o2n~7CauUD%mZkYf zLETSo2DsUM!U6P?l8LWudvV%cM`Kn=L*pJnSGwcg9l7l^e&PgYQr|MOp#m440j50f zuh*z5ZajG$k4`_;1&#Va)oxA>%z0sg7qNx?m-8I@UnJiQiC)Am61LoSQSpI2(5d4d zoehLYda(|r-5uFB_T6QfRinS)eKe39))N45QOSnm zi4&8AP4~=*HJLkLPZq~&EIH>bi(bS9JRI458jwYEJ(Qwd?SnT@YTwY<9&v)lpkFv) zcwWl3-AU}(;h8ERTEzb#*T!aaHFn|!F&;4|NtXH~N!YPVwoh5bhQ#srGHIX!*ejnm zu0>F8zSTIFcEKVFgZV%e0@X~NYu{+NMeXrPy|U!PeIc}Ui9E}+?~ptK`tT@2&LxvAge-B^SY>D}LrjIku$60rrUTqnj zdPd8WqGe9S?8AHhw7q?OM*0`nbB42}5640a_y8U#O>;*mHPGw&d>JNh?`A=1uyfKhz93dSNnJ&Fkr(g%J{-A`<$S%?NR%g*`uo-j?GtmB-N{C?zx$gU zZ31iDd70^e-1bt9sEB%1++vRqBw#!Pu|>z#3;!BV|J|+q&kK$VG*5%nf9;sf|Jp|T z$UkL$HQlfqOE6qF?7{P5;)Wv>IcQRX6g@1e%N4V&yz^v~fuN&J1*!LAqMkt8aTiaQ z$i~5=G}j}PX5y!BIex15qkbO9*$h7#_keM880hh5Z04MuE}&s{cy-K5wh+du;8VNA z%z$S!ojMCq%0!!TSB2zEdEhaqn4h3^Edc`ag699tJyT@Gh~2o z>}#RQDD;zt4Hcn~wEKsSOUl&1#Hb#`KUW&s)fSF@uP~K#S>$Pg|yloj3eRwqVxQ;!X2_ts4%m zKT0xx2U+K<_}$KVDRvq8!e#2LC%TJl>>_yILcnBNAPh_o1{iSMKmM{pj;PENp>x7f)FLqqg$3+Bj0PVdwk$shB&kmxW(`z1v^!Z{Le* znBGeJ`O=)u#zd{I3tXu9CplHIrsBEavUwK#aeaNNUkzJbs-1)aONLNylCE;i5uwKB zyr96!ByF#IoR$V}=lqLT4i8^_1NvMG%w=Hd)L2fV_*yeQYM?a;B`8?14p;axm@4P~OiZnU*&ysxcKdr=E zE$;)jG;yoo;cUU^jmOpXV}+sOSNirDgc=r8+Iz=tgvzu&AB5}Yz$T>DcWu+hwp#7? zvg#m9KSigyaB1yx4b%Es2fNo>ST!OM@p@43qVjBG+#HA0 zU{+g~g<+2-MG(%1f*i(|1MP{e^&9KFsj&gW=`uSve z`KXPs>uU(_Iz$Uf{R*1ma;buYluNw$$!EEiA~N zH5qgYal1Zx@|Af?yV5%U$pL@FtRA@%sOdE3htNx%LANOeYnH!Nb?um12U!;zgA1+~bOqOKvEXEu1b_TkE0 z8qr1Xh7wh*sAiZ;g<@%ueWB_#fz9g7%Rz0>S3w>yXrLHQcv+aZrL1PQKx z!-~dnQPi|v_03j-snu5t{16gl_^wx??+0}EJpigB8emW+$^y;v2c3#%^K%^Ipp$eL zZ7;P&j9=D7)NHQiP~yq34-rv7HspT5MJG^Vf9AU)A;YlKW|_wa{07$@|Bq6D|6Pjk z=l>^XM;Tbos-n$wql}^rS(((rnIS>qcS65DxNEj6(qswtZsB3e+SUi5oOc z6&#Uw`ug}u0$9Ofo4`fwgSTThi` zH^(?r?H2{eUdF4Sm~5RN?r!TUT>7RBNkbHDySK@p`jSQhY`)DI_8*4=YbZ1QsUDC2 zE%z=%tB<3kEpLpe){O2}2z_ewn|HbXP4eB|(Vm#wJ|_-e+P;jni^@xU_AtPJDqjo= zPY#E&p6a4eopZ*$Ot&qjCA*wou&O-qsQYd_lf;(G`vi^j#}2>k#PIgg^5jiT_ms6= zg}+nKD1juaa6Rz7eH5h8VJ5we-fd{840kYxID5xw$#JgMlG^zOJS6n|keUS2$tGuwr(db!zMTJx0>><3dFfn&s&%vk4?E38P8ne#ilibU)G%EdDeu(VWrCV5t zB0N0}Sh4>D={6qAVaHPx<7U*p5_-flGAK;DBxDw(#2`xvkXXCyW`eSiGKue2Vg}pO zoKt^Y5ZMvFrHeL;bbl*tx5zbGO?RVkr0xCtfcrRaEanCDqJjo%@C0qu?RRa)q zG(dZhrMQvB&0SVsMThAZi3Jla9dkU;3l@SRvqxuB!?jAA9U)7qzyv-}I0SPG+7qgD zwm4KCRF0P&Ii%M2u5V0yrk;r0CrO;}*l^9`Z#A&|Qegucg{zpf@Pk3R4bSWVLl55E zjvYHYZvRjaqr_q@|AqW;g>uv=Z1XPFe)KA|=!eVuqW5j&o|G-h&^jv#{(|A||8dg1 zGY59{3m~s%J>6XHjdTX9Ys?%^$G!Mp-?X?s9Gj*@IPurIO(Ok4Yy1kj^#of3?h3?{ z;5rdUL6f3~h}V^apDne#gs#%5eARTHf#?${ogONp@&KbTqC+;A8e_p~n)E(vnK9?USj;ByDiw!BziRn6n2IA^2PLH4fsu`3n z_)B1rY0yiE=$bmPy24MqZWT0*rK{DZt2UrX8P3uD?KZIo2s%JT&gH#7Fh6{Jrc2>}Z0VohicD%;U`&RyW5c%M_K@LNv z^32A)LM}N{l*~W$J2Ed%RQzt5az9*Mmp}b*XkraY97tc{%io!%2Nz~;Y|a@HSNFNt z#-=j&BU`fDUu<24*-E~peoT?AeBoznng`rQYDAf6`rFHh;d(?o9~Ksst?rHTlKAdJ zf7Bok%?ip}b`shQ<{Yp7c=P3gIiTDz&ei#+3_)2>;$dORavEOd+NO+Jo#h>nPE;n> zP^bcJSg;W428KV5uVMT~L-PHavxj*@^G^X=J9*$);yZHkcw}L-tuB*qyeX#!szzd` z`~7)^jusyN8}_o5O8OyjJAt=yvVy0s0rgadU>3aJZyEpb4LM1Uq#Vauvq=i^O5D7YlceGPH8%>IUPI<%T50VL}%8i`Z&o2@Mw~ zxZ?dTzE8g%YbvnQC*}Zs_19bd%N#a(6NgT~eDG02W336(bJG%h*X2HLm1eBaG~I~*@;UR^g^?R zS7~0MhLfM;o}`BO2OFXMwG@8t{b=( z%+9Xq^hI~ibLVtVH`Uezzi&>JzE}Uu(9oKJl!T}aVS!`8Ai6jiu!^TW&D?crb@se( z_~;~4xswyyh+Q@3$06++pd4a8`w@ZKL)wQJ0^F@2d8A-W+h8V<0B+u@_w=SI^ zmTB9ej4)j5<8i5XwM{iG^+~@hzE`G*bVt9{wRX!s4+uIDKhr2;>Sb`*0r5 ziBnsK(&8pjW|NcilY$IyKjnw3r+i=$-^+%~W#$wr-3-*kiG$JaF-y(+)a&Bo5F}_p z?vN^Tw=3zT_*OuC-X4S*O5ALK(8BUR_?ltVRA1L5%3e7rsd?$8aE~szfIOnq4W<;x zi-RsZ5%)5g_0+yKo0%eiOOp6ZqEi2(uVT>F+BEVN2!!7OkZPWl?wi{+Wvne*VrGpR zbgGi-pJj+g+=jGPkqAUKQZSGUtK5VR*fs|N>c;dz*$0PvK#GK+q)K z@+|+^O17?a69%=|8|{f;S)Wd=;b_S!kNvdxCFPmOV@&R?-3|ZX6p!WO4lcS)f^_4g zr&?WOIF47MI$Y*W3ZvVw#rBZK*alI1pb*w2${H8;>0bKariOsi zZadytn+C{!&TCE)EOl#qwOHfeR*ah;6`h9A*6+R@#xQ-i9|R8g*6owLwj7dX!>7x0 zB4@_t0Se{{?;3nejqZAjJ;^0rU>$$ ztggj9-#;NLW;hO@l@wK%Tj_ht?0M#wWy7p}vsGeWX|?w+u0bPj68GU*mUpk1;}G}l z4@>vVHl%p8BfSK^6On3hW8hn-ClMVX#CRC(8>#g}=JImkr}bLT(uPbgUh;WzQ=Sja zcyRvjxcq;L1pQAj&i{i?U)pUjvpuvYtIK8Yk5{~KnxCDOtMg!!+~G}SPYfF?@MFx0 z4>WY}V*DP=Gr_6({`MP@tntKQ0iBCSJS{Wmh0Zvi?&H(oyj&q4Q7ZL$Z6B|=&{-2X zAr;7sSfzbfZ{-}x>%2M+lvXRo=da8yc=7C3ueaY@1XROCWEXZ}mZX3sdxWaBZ6oh0i6O8+SiO+fn?(-@6vQMY5jR`JfX`5d&m92D;j_=LetZbjY z&-asn_vzvx$A0@>B1W=ziVG|7nw*dg>P$dS_ebzeT&GpS;=-##%AmWNB8TE!(}k~B ze9otwFSY~mB7A8#bV&lMaZZ)qN+1WlqHg0KAy<@HH%@apwkhw9U5{Kn)3~x@v1RJo zWbU9y)3C;FoD|X#hdo)(2T+YLw?DMf-<(R=LZmVYF2ul6-2`!XE0rxK3aRn@g3imJ zQE#fmctXve{?dC~9wAZ*X!;QsfNLxL&BYohHh~DHv!7@ClFb&Us^#@Ac1tUsU80mu zJPuEf;sA{ZK+#d?T{s|50N>*I*Bu2~qFpYFwsFuJ$2>|^Qq`+x8k@brI7OcEBmU)y z4W9>Uve|$@&&3e(qrViW9>2)J8wOD^*og3Q_Khz~4~j2dv}-BM=5oLBUYbo8w@m4>7vBnEb0Udyd|8Y-OBu>cYItot!zF zVib#sLqzEQ)+Ke{e;|agDy;Y8a;~=N$-JWeUzX-( z)rlaE>_k!r1_wT04%Z3PDorRj`14@m&_SHA%Qyr5QQ==E1ljJz(@ehP+Gy#}rhT+^WD5FsV%Vr}JLP{pBu`Tf~pueU}%U*U3^4)^>=Pddp z+_~l%WkR#OBN8H$OKW(ZuBcWD_vb7nLj*`~Obu`)?Th;mbuy7A@I7-|x9Xj4?pzcN z^MaB7My;9cp&O7X%xy1a-xXhEd7{a;CdWZ0KTJIKn+Wm;#75@wM&#ERUa7>&{Oygp zn$*X9&zv9gg$UrL(V$#Z|6w()%fI%-q{*qti-n&bav5^Oc;wyi#OopJQJW@@tezGP z{+S4<-|fbt24q3}?!~ajXXZ)&snRgfIghAKQH(TfZT1r6fOaam%YUfibRxUFc-E@Z zxw8Li_OB^zCh}E9bXa#lsvLqBM~pc$!#tUA_BxEGKq%IuU$M&*x%)8bYhXQ(5SAP_ zFR;~$&uH^tzP);lV#HdmB`6vO_(_jvUmKs)%51t=k;Op&^CmYDh~nT;_@8_Ua`Ocq z>xr;iR)LqWEiJPn=BBD%m*h=W&7;OO6=W!%+0BP4a7~qV-<~fm-|%-XEt#`wOGWxq zexQmiW6_|R;(l^4B-mfW#epl;LuT)wyKX1-3o`Ktrp1weG5m9$8N!7?8C3K2k`1$* zC^`k(blNJ73ypnU&Lj;2uH?+bC2K`2`&rtHc5&OgMbSgwD1S2c#V?8Q-r+ftvq?OF zmV=%|6)d`DPPgkc@J~Ek*y1e%D)%^~r{is9+ha6jEl=&};54L*$+b zoty|K-(z)wT!FW@X<9Z%2o!iBELSAnN;)f;xoo-iO(HLyP@JF`Z(M#Txj{~wSFZvZ z5snmX#Cn%_M>^-p9dD{oU?_W(uQlRcITg-39;c<&CHAjs zcuC$Tx@Sk~Lm!biQy!!+-AumN+7UwU>(ldg(+n>*Wj?LmuBZ96`um14v4b2jUsBK) zg@oW-(!a&DWMvT`XOx5aA{}7j)wF3M%x}*VKkfbIZbZ-B#GH~jCgS{0xz zHS|Zy7h7tPZ->~1G{4bLT(rLJAAb=aN_Mr~g~c}s7By{H&{GrS<>I}~P&qp^T4I@h zVD0Ko&Xa{j^eFSZUY04fgO|gm&CR}QFc_hz>B6cx?!AYhr$cuEYqg}{HvifshZ#MH=+E%mEX`~a*1_SR-cZofi(=e-x?3wI& zC&zsNZ`xyxIj4-M_;OMd|1e{d2K5`<=LJ#3a zOfRdDQ^f{-uSWoNbESoaRPpZ}#>h!NJMxHeO`Bu;@zk!?im=xp@s7@0z?k8+>Ew_00_INisXMLVCHP>)VcB)PJbbabQ z-Tmy~-#z}uBNIzG9Kly{G2O~HB20epL~kn(ebKs-X!A@!i(E*BduMx$fe3v{4%Uq4 z<a{fvbXjojAC- z)HL&=cC_P}$&`1M*o(?`a&IMdg|$#x`mw-(nO z0RI=KJhwgAnPDg1H{6hxO0M8~+jGaGM=@z&nLkzt!PB5i=a|&2!_J3t*NltElt|@H z(1XuF?YUmx2Cie$98d!cp2GLZ%XU6a>%4^bU!ItRYRL7%5H4bsI4*RuJ}Ca>IelpuqUARD`D>7x`dw){8~^z7pa#xg6lYO&;|0hJGjZQa^`i(f>4 z3SjZUquKnEQq-cFbt5$tWy&)`f^lf_?WZEqi< zK6uI1RwsQRx=plb3GcaW`$6>e2!H*Tq=%DR?UZk1Vk7xzWDb-(wj-7YFuKb`t~8Mh zoaIOLVo>ZU&+9`U;%5*_GWvGVkp_g=}c*FU$3`0Z;3D64l9167eJ?`G< zb&2-M!P9_(S2V&0mxmcPn;>xFJnoN73l0p@@V!Cz=_;%kUe~@%CZ0(rcf5Eafv3lX zS`gJt?Q3ANi;%4@rlPsra%R9QdMBmGNeM`Yjyl zz5vCD&=N#KmH4~o6|qzykb{S|Y-qBg;#o?E9cwn2{l1?8UMR3KNeLT2FAk(RcR^(S z+i?;^vdS=mK+9S;7v*6oBD_&IQkXA1NcX`zi?3wUUvuW4Gscr?d>CJ3_a5})$KQfR zaUDPaq^kap%*jD{NN+GVv}z}%{QACH$^7t0gp~T)*8vAA+qabv zSq=w5FKCi4m(JG=N3xDDkO0YM${8(^#)6oPDrPxT=IU4*D&OH<5L2dXXD0B1%IqyH zCE?XS5PU`in6kOF_s12zmVr`&P)#+G*PuRQ>!Bz4t_-=?EUjHfLIxtZ83pdCBk1oF z^g`fi)9~>58rn#+?>WR}c%h`b0NbHFX*0K1#bhfUxt^23vYxm;=*NY>rTZT@)%W+N z#<9au(50-9T7VW|-U!$IdS1%aJhQqr6w*?MYdi*I`W!qzQWQkVMP?vM{*%xgcjFw& zX~UqH=$$&k0G+-kiqp>lqeKK8Bwhaq?d*mSd7bNaDMO;y zOd8;&QTzdJfy{rGisRe(#uQFG-Hi zCQ0sK*lb7RK4b+cyy=7F!ugar`da`*JMSI#mv+wUj1-(Wn*{$8RRaA2;I#i3D+kF# zU@M4`ov^ZHOZNsG#Uzqxp|EskOf~j|JRJ_ z2%+*S)s48_8i}x?4AM1tH!F}jTgf%I#1iSJ414rea)EIrY) z=rV`?>d9K`=s-bB*Mb7t`iqc`&t;RtBLt%hC$4Qx`R1f6sNEM0{K@f`zhq7LMJMSniT(f|tLM}L%Xu?PCM3!}ci;v?5C_Wp9n z^29Z$EtmE#juGwTf7Zz0K-?adR~C{sxkS-ONjWN~#ngn+f{WAJdWD5^$V^m6Ct4f>4>J&g6QDopw| zx@1}SuLnQs_M=|tf-+moX}c0`OeC&YcUw0lUeS{8DED$f2%=!U{$YUYPM}mC#1HG4YCOrw}VGp9l+Ul9(B^`TvUwzupaO6 z%RiyZg?V9q*qgvRzL;bzWE1`i9Tx=7&$zV!0mz$(j>hbw65sHPTln9~gAB^neS`ZK zU^g`(PCd856(I94&|aD2v37@of~}h?eAwB0G2B}!c2v+Sz?X1qZh1Sv6f2TfuyI;2 zc>bkIR{N;rK}CE;%wDBDoIj`Yl^y$rv;~>I zB|+HSc5|GA8i5DhSXa&!MVQYr<$6Mt7n`fy3k@fCta>Or z1n(QZi@glEs`9;Nr!vi4i@KdqI-E_nq~knyjW+Y>)W^pXc~z<0D^AvA;`1$wo}h;N zmcR{a2i-1c%cs^@vOFgS*`&5abBkup;#fo1&niRY{0#^M{MQ0Io)!C!AUYv((4yp0 zE>iKVKHe}}YUyXKOcilrrXDFG6y!J8ce@0GBp*$R0t6#Z^7r^1+ceTg?-_-3#u8_W zH)nuh?QkopGLvu79c=UMp%(k}pq6}>P+KilBQL?Qnt1Wdq!3z{T)+iLMhf80y6t)! zyIX2oLY|Wr49s*h=I>q-;JqxTFQKci3oC@2_8{$W$(WFytMk(1y9WUzj5j-JURVBs~tHhMh}AAWW~ns(I@}GRR(d z_i^r{%6R1?_aFg8H`hyL(Q!qW5=S%Xa7U)J(GL@ozUZ5}hEKL=G>ZG6xsXAeBsvF( z4bW>>HlsulV^dSE+tte5k8HSSHZL#RINtb4+bE8a(xe&P@9uK| z-_N+;+5>yVDS%S+@+-6Vh8LT|NP@3xeph>>S3=V%Ka&{^_OGkp)>V6_rDR#R&sVPc zJenS09N!g?P#{&Lb5(c0_&eyUpbNS;UQyc)dudmD?67Ho&73bvjU#`M$w$3Rn~~S8 zfA>eQyfQnU3mcac=b3SCu4Ab@`fW)h+bCOhsE6F%(AwQC;STEO2Hp{8x||izb9{T~ zwSC&;abj=Bx5VlP#h>rY{<)fjqH*FFoClV;+X0=$dh77~?v7wapVLb8>e4TD4cGF$ zN?tid&QFcd1f(?fdO||MnCH3GPS4~h!_U-YDTSDue3kl?><7bl#*lDd^2LQ%r)HZ1 ztBqQUrw(==90T9>drmI4*M`RG=!pLo3_!bdEHL=K?n#2*CjA6!_o5Tz{=jShfq{x+ zOEUA>72H{mDa-K861m;>Z5YgWz={GVjh1UR zF0^n=cmHWNW1*p#EZwF5M3Ag!!d*+QJ4pL)0zxLZHaxA}bDNN`9K#{1IU(YC_SC+P z`pDGmhL4@AkHlNej#!$M0}fxG-r-2(HLP*ei^BxknO@)07sB~3HH*I)X4O59BH{Rn zP6RfJ+mg$&vDIh4oyWTT-wo1}U759Lu57L1rMrlzE?sGnT?~n@*jeCSpfd1eFeyA*paXt2;NJjj)1;{^5DLQn5mEB!9vad*aO)Evm`4_ZR#| zOwdIFaG*0g`{GNRL0+tSx!Y(_QF7d2V7*$enNe5AEmCn7dhdNaa=i+vvxZG%EyxEwD_7ig$`xL=(|;H`>`8`EdCbuOd2n z{4XStR_Odwpmr(nqD{3^YYLDT*=a7hp78n-LoLHmKL>oR6=#wy0ix|3LlAA({eg5y zqIX|PyIl3P8s(tj%U&K`8xl*qWWgx7m)xW7(a*TpiYZbI0xp&-t+*?+|3I#)a2BCk zx!~&x?-S-GoLDZ>NolQjmhwfPpOwKTJE2}i3t>ID_ue&pgu;`Fv4 zvv&40b`c%D`TH-+1RX5C=`+uP^ZV>*W^iKc7B#}fB8XH27#B8>dDsz{WaFT}?I&6> zw_1CUpK+B-n+ps$di~MrxmL%NM`$BCsz(z?Yn2MF3dVz6m_mFA7_ludVjy1uBUZA6 z;KYRyE;u%B)mb~~bhv!&_TYIQof_rr+#ULMG3QR^ehxGAilVJQ?%zXpOiPQGLOBu0 z9fMgKE~}Po&{L+o$?r>`W+MTPx5_YQGJjNJNJkd-AILdnRmcLa6(q68h^e!#^rAP- zw0zTZBaNUd9`O7F@+|irAa6s(Sq^%G;iIKP1QK7}$C%d1zWj?O--R5q_=UR!0cQrM40Gw)F-^WlcHEQjCJs93DLYIsfzniH3f za$W&c@0{S$@tcD=!)sN|lZ*B|Z*tsXR=h~RtvpE`W?63jq#I$SsAWm^a*yyr zCR>IH|7!KEz0)ko{ctf!T|=RMt;T;4Vh2BVcQ|GG=m#OwhCA3k?2P;NGWN_3#$^$x zg?)#j(+Sir5xn31Er07Xh0=uxAQI1b#MEMY8vnZ3q^q5CV_MTNLB&*){1B162I8cj zYrZH|iC5MiN0)`mBVuE}$SE)Ck(Uq#gGDC~0pmYI*qLCyQgcO%{`*XpHWP{6Sl9u= z3Bi7z9Y|h*({rrzKQFF=SF*cxSV-afjhk!<5(ACEci-Doog_6_A+8sS z6%Q?^iTXX98+NkT1Ly@*MWS?le2lWmyTNV8wOS6t?XSka$L_Uhc2;bS;AWoM;{&l*8#7ryDJIN6_luo?l|y z0p+2s{5JildQpA;)xGlck*WB)jFt&ahN2HLw7DTV)Tt`EYTb|^Qrscb6C7s8N+6$mGqu)_4TuX|6^kG%8ZR7|uip@zGm-;F!ryBc+?lBupT2GX@cc^-m(4kWsQKXg z6!&H~Tba&I1zsN#b;T6cteLkva4G7H~2Pip2QYz#WX_ z@t7Cwr!Ub6^WD8;Mbae{wvFqfcGmSxhU%N(PuflVgtTV1lFF!rGXscsNp%EtTQxdC zhVP#CP{a`^!?56ApG9|ZIMQn?`}CcqNFwCmgk$E3dnu0I#g@|(R(H#{+I&THY94H< z3x_E|SK45tIsE3CG4hRuA?bCi#pc0Qt)#r7NR^2klM7MGZz~pb2@P{T^>TwTy~=sI7*DZ%HS6xUBJLfFJ<$8vOVE6Z^&EG*QG z%$sbrcwT@tY|lpQrSoctzQDsWOTa{R;> z1^JF!K-o?E3%eIV?1(B$;A+bQ4nsW=WwPHcicP-rdF=53Rd-57Wcd>TiUOt_fp>6f z93P6`{fM3L6B|9xs%dh)YLydJwVn={RpucIwh>5$dXj7VSi^6gysix2dxTtynslz{ zzauMRv6!udXTeOQu|WL~-2u5gN{A9x-HWLYx;_=2K%7iQfUN+Y<4^Z<91$HQt$+5R zqnT>HYL@e!W|fUg8{bq0HkEglYBnh7%MKMnzvDOLxs@PME$ZiP(5W6*1GD1N)~{Ep zU)no&xKmR5$b<1Nmxok^NqzeDk;{m%gQaiQ)5fhmLawV^y7SP!{_vil*Rb;|GgP&n zenIpc+}b~Kl0FZ0i`p6ZCl=|iz%2jLgnvpR|IR@D5#fy=+hDCepp`*Z&33Y-PEZM+oMd#6lOq4 zg)axiLmWVpDFtY5;jh&zK$thKc;@u&1;oC=luJ=;Yvox+!)|QhRhJrMw$WtKO&(-_ z9}slUjDu{UFTxwBfG>+lKNt;o1JAA6inZ>1$EU-ESCjP<%r6cEHw$e_N7jzmB=`m0 zzXFjV7_IljCM${h)`+(x+FMdSY1mpqmrJ9gfR<)G^Ck8P5V5F2>j-@z(#68}epDC; zmPN%^UiRZ6W*P8M^V;Wmzo2L&dlLC`=3FWCgL1kAs*-I(bhK`r>b-TqFE6w0N*0~r z0W|yHO|Bl8;(a4AP&NcNoI!xy{MDjv>&@9t4g~{$`^??#Xp$cO-EWBG0`};S&IRI6 z0K5Pb$$kh&>D4g)uD*LOBTH7f=gpCvO#@mU%>_H_9hXYbSo9Vgo zv*Xci)sej*yxN-F&%Qf9_S+FXAUPmkQR7GUR{_i!Bn;eL2h=E)bqf$VjRwt)!KH-KLw!}Wh zS?~6%i5BJPWDSzGSU;x0q=Xx4EIo6L)uUSE>W8`I2 z?%s1hD=s`m+1>nw_e5anPe~~hyc0QRgxEfg=tdu|{ApMSn43xPK17F4pBojwsyT9; zvM4Hbt4eI^1l>VW&DM!p2e3lJ5&by$+LVv1Lz#m4*Y?z?caPZjIM;Xi?spQJH@nC& z*%DloN=PesM?y1<4_xnxzo!`tfKcbJB2;u#@6I%5v8-0?pV->hX63x_iq(96lG1uR z{J`Bx5i};&I{k)hORhqny#iD+eLX*X9NE0dvcmmB*FK;ynw@k0>C3LCRK!Hd;9Ao} z=(9|vdkG}%tLDoqfA8XQz|xA32I{|aGK5!XtrtDfM4A4EJZK7M<=mflpV>iMpoIZw z<0&HD(;l9&DnArW8xlaVHhz6ZFX`Uc3#Kz48l19^cFh~CRVr9zzM?#un%o;R>nCKE$?0IJb(Gbqo@aPxnTy@LTeo;1OWwrm z3Qfn;^k0&&XTi!bTKXjI5~yRl@euVS-!RB>D9J(S)oE^`(i#WMB}FI1qDg4%D&R{- z&&9=M@6T@!@#}gLwcAT4zey0;wm2TQ*#v!(`a#jpbZd7rEQ={nBZuVKN`$ko*<3|K z%EJ_(qNg98TAX-GU%5X^9ISnhpM#=6>k)9$f>s8_-Ir8kd&+CeyQA`vawHf+!dqfR zYc&{4{jt9xk0R_N7P;JXo`wY^yl}VD^(E@JS8#ZISH9uLl@#k7zxQc=$3T(EX?HUu z_yl%`P9M`wHL+c|s6MgHCSZSpzduvG00^-N3DeMPXGFSW`g$`PbJ z6Ayg){IJX&C5!ri<=JQYyeXdNE`%l34ArZ^Cq-Ht?2!~}$6UkSDmN@j4_SMdD|Dus zd<4ST8#{rk=Xx2W>_384Ee8szKjr`@{ur9p8m)4|?UUEh? zvVpXI_^k)>167bYOf*o7bPrEMb}q7d;3ysd_w&8*-Kcq03;X!TxkLb>fpLF`^zkY3 zO`=u~@kF2Q2*wdZXTFg1@G6h{^)IDi`Cq#5{Rz!qk1vsRh_s;Yh+*^QU~@o-Euu3g)r%GQ=bUHENz5SZO*-`Wt7 zd99jQkM_%V)c1q?x$U!jqbs?#BoB7N$3!xqN(ckBihD>RW6Pak3_NyCZ=G0ucVcgj zE0q7aNWusBO8T#g*%`3Rij~^X?j6{z03LIdEv2sRZM$0$2D#g*eRD9Nm>KxDt3*!& z@38>l%^l)VZ%W>(r{i9#VLOX+Z}URZgH)B?yDHaIs}63}dy?h|6K#rp2`;YAAG2PH6%m%g<6U${Ee zhGLdgl>*g?vT67#FAyNon@2~5u88#x3D})XRXL)58Z7f1Olz9c2X+jpDV{;ObuTe_ z!={qmN+q&6k>{+Fb=wt#U-pwdNba~G`wrICaoM-ny$T5}HLvbhT_2533;Ej`P+y+a zk3JTMajr;Au9<>_$eWk7MQKBeu}Po5b{=YWFj#L$P-{-$5{@k^Kui0HuFqDZ{4T!6 zI(@ok)1Q)gO&(ncN*!4Z4heju1Wlq{Nm`DRl;h}%Q)!CJgqhZpN83=1iqKtjHoOrD zgd_DrM5dT^j3s01jQVIHWswV|poql01TWvDjS2(AZ|OPkL+u?h|B`;kXL04`Cw`vi zGrTc(PYV(cQ19!`>_rimqP(E24^|Yfz7u<S!arbpf|oG@WOw`A zZEro72gfxR3mg~iXgH}AvdlaM$yRs^csq#uY$n8q|qKV4%L5mB;@6b$33 z$Oqr!@6za)W0^0*0@aGUJzcF$adHfGyuS1*OiL>;8*ImcZ_^B~l~v2raiP>gK`O@& z-lxNBcv;<4LRDYx0WscxzEzt4qkjj+5_3ARRuV+s(Q>TtA$R)|J%@hsSC*z1v*gz8 z@E`uR*bJi-6!ns>Iu#q{Jwm%xafd-QA;)UEIo~mvQ}1e!)L@y~oEZXp91(vH*fRA% zJjzS~^+}6u&)N}n$|5m3fcOr_>mRVo=##0XDY^zMP01oKZe;(LPsmw?oMSdLAl@E~ zs1bMpyw~)G5sCvH0k_s(0NlhE6G$fYe|S!t`+(>4ROc;b8$mW>i1|l!-1*0p>5+$x zs-mAU$*bEf)p6Hu$|)yMLUM-tspZV4>43y;j=@Rno_3mT!PYk(kK}ysN0Y%hAB&i! z^wgog4&0dfikye5KK9ovTfd^uB_(yrZ!l3$mx;uZF8qcFm8t`)FKRH<#%cW$1Zevx z`;HY5`9_5NFz$VAyO>4uXBDhTmF=7oqSUv^l}n?4dCMC7%mHV~-|>-mf~bi27PGYI zTIvfW2^`~B#Wq-%zELxr|7d;vAnT3%=EPgdZRCGB6WL7g;b1{P`?B}7x_{#w$xr(k zua+u#t+(EqPma0acIL}@7@?vz0Bq?($I&5BWk;h;hgG47h-1jO1C3Kc!9c8*&FR^Jf7N$G?EHIjfM(lwZ$4iaZ38&#%K6Q&!7TW&LxOHG5wmiSoTF zBA61v+4}I02+z4)R94}QdCSOTlLUoJT+xt2{Kt~%5Cx{#^rNLnRp@GZ$tyz_-07s! zxMx>aYwB}+v=BXk10az^b~NlrOd@A0|G;8PD6s*W(eFi`p0B$$Q}ra+Sm^yo=>DyKY_ISpWpl}kP>D{jia{XbvdDbo0lGi z0s4!IT0ijl+5YqS3D}lRW^KY5lm3gC2i_{zT`@OYHp9+J-xTqoziCf7X^V2lBMHUI z&VTNx{NIpZ21pPeL9op~E0)Z4VH$I##}n=~I&H0<*Lc%fhu40w1LB3&M9YvU<}&Uz zAJZiBIsKT>_w~Vwu&7B2+%(|yQM)X^(=k|gCFEMIU*V*KDkE^O70YrcEBCXRmaGZE zpRWg)C87a8eJq%Dd;}s?D|Wbn*{d+av#GlN_2aXXQ|8LU}wReB6N-+K_DlSy~aX3x=zk5a2$=j$%`N zuab0IB4{~;e0oJj{<%-(TCszURy-pzr`fE`m2_QL%;hgIf2M}s`lSeqJyuFKO*v+z zNi02sc^r3Xj}lDUXlP@XT&?FFkv=qvRT;_c*Rq&BWqUA%?Vcn;KJ zWwJ4LA=)zb^x!2zeajUDy2P8)4A+c1c}_Y>l745N1;%Sh7AJyPIEhfknOlz^*WjY6 z{{LU#MfUH3s*C}DEe6mj>tAk%|vA-k6cF36y_NI4_3znO3KE9KL zYP8cO_XL4*gx8S>K1hGgH~uMlL#$yAT3@;K#`VofO}zVR@g!(Sg^jJ@sH4bwIEEW~ zSXZi_dQL8eV`mkwd0Cu*a0=8MfYXEp#h=owFlCK*h**OW?+itA9#02nLzh!npR4hS z^&#T0d+mN5wf!e>|MGzU3!VPLCreTq(X?$ZSbn6)Ys$E&_-P6MX65`Qop zzgxUW8ne~pIeon;vR~ns`${-W*YtZ9l`22tLko^Q>*K1KW=}+MqMwys#3i0f_b=@# zxOU6z%t%8p+xl&r(Z`~LwSFI0{7pWLnxsDc@?M)eW6VHTD9kejrf2#c%2f~EXCKF& z_i<%hWn?#RLiEcwmx#t+>gVw9I>D)5P{5`2s0$;6WP2VOElsr~eTUO-~b^(!CJjen+pw z8+X7$nxzzPgt9B!sm1NQF<*a(b}rd?U!Hu~#=_Z`E>WFYPyt=AHoy5ii=oyMs1r*P zRC;4Q?OoyCY{R7%0ymAd>9qn<;wX+3&_#bBOT8)>gC!e^KfP1TWFX59;QFBkf}_>HBmVq|bo^E4>*MBjvDdER;&SI%CeUXoxG+KELTYLKrJIU;NI z?eZKrW*$Eq7yFKi%A0yU<)%m3NH;NBi){g+q1Mi~c&yQjuF%f$#p@D-T=x(UUDw-8 z1k0zhh|HTjI5)3>m7ILg0E2c%r>i zYf-XP+37-K=Qi>oyg`icwN(=K4#^a+cSsUD73%xc&bi*Z)lM*BxYP%V&X(CT{vTna z|BAH&DgUU2r>wY#*1dXY+k2ZSsLBk^-Lwj^nE?|p3XHw_eo>o&l86w9xteAm)d8+x zhS|$0McnnJj~}$WGcTJdI{3oFiIrnDtg|Tof%9D5OCy=(9A6EK1#c)jaz2j~d)%;a?A_f@ zJ*IZDVLsIXy4wh7HfPH`cjSM2{VtnHjWmZly3x!}%P}sYv$5e~G-7AX(?#_#7J?97 z=uq~AftK#(MN&BUlxG0=kcN^q0~*$;=X&&8Gf(Px!EHQMipMR=ME0jnC}!kT{R-{K zmS3!Q1Hm&0FMhy=Ngz|E0A_EE2^0pah^C=sJ@y7VqpNegIyQ&7MRBkBUr)RZz#3a1 zoB3GxTR?3%L;QZ6wl8bv;5mhfdM!8A%12p&*hl{nwDYF5xiU{7OdI_(i}R`E3_gk4 z{i3xTk+Z3nvuE2jC0}&~y4q_E$CRM^uhn#5hD%y$lbNhA;Lt^oWply`WgQ;Yq&*)_fw*0z2b)YPD*?gqG^ zSvcw=dU1el`$55!ZRMDUaIrqC^cek4&-U@~=Hj7+>>yupne-h@>HdSLUW#3=4tZh% z$@H(L0QLZ&V7WhJ=05B+`R-^*J>BZDP@Rs8%pJ)aE+wWX?j6=DU25#yR-okSc>1S! zyhH?!P0Zj!fu&nb^AS>wRs#B=iqo+wX=A%$w>&+m%JOa2`Ar$Jsyn*nsfX?PYHi6X z#57krxEhH{7`VICkf?E5n2%(k(cQJ*kSlnD!NAssoYuFlM;diqQ;X%bkw*)FlhH?{ ztcc=8PLzSm?Ekz4O$pzdp(1PKPCa}RaCEy+?Q4u6#iBJ(}=cvIBH5trQZ z5zQB;w8l=F5GC8|AXG2D9Ay56ybQ93aj$_;^T@u?vN2HUW8XsOkJRa@h4^;Fl}78h zVAV=x1L{v?N>UO|?FmwgA4gKSS7yK8PKb)Q|fyh74E zSE4ySB+gXmE2!4&q6-S=U7=)U;$sB%VKT$1<1L=pZ}up-1OH81A5m3n#o1X@dx(;L z7#QAtuLLp80JW^=j=)U1c56iqe7$U~)i3qd8ay4=4$hkPs8Q6?;q;jJC!Eq#6MP@R z?RYb7(+tbZV}VQNNjubCeQU+NzQJZtDM`TDxAk#6L|~0S4|=nG#(c>rPL`jG-!4l^ zeyICxXIU{ID_>-RDW-u*+2mMtWJ9b>Z{o+*4XZ`2;>V5#ImzlmjGSKQenUiADf-F0 zq(WSeO^1)--O}KSy^44J&!d^&owi`U&lqgs*&(yzpgOWm-6VbjkvW9Bn1w{a{6CQ7+QXj605dqYiI#b=EI?nFys) zbM{^nS$6uBgYO6p)B`-x=Di`WfWkGs;kfp_FVe3ra~Gb1xOqrzDEc;1=|cix#Fu?> zWp6C+8F7rJ`5I2>o=t3j#W?4C;uE8m=ZZOSbFaUQcypatl&<>RAJl%o2(o?=EGt^& zS)9xVOQ}I!#OG#O`hc)y$FD@1XHDMO^?YTr`71M_``YxAN#7b9`L->g9etF*JA*ix zp7|zs%1O2&F+UY-CgRp56Gq6dyMBC8WH*Ym*{nD#skF9q%le#x*a`F4SF_1n0`VG* zO&+u#&&4g)f7n-n&%-Flio~ax5`(wL8Fq8sEw!b(JzWOcKgDq_M6HE3Zo(}4|3hy5 ze>C9yzccfsATR)XVW_`j))oV3f+*1?N0@E?3B;!+kXXRR6#Hf~MbrA`4dP8*RhlUW!zx3?M^yw1#TpBqA&F~xYLw4pjL^Eb30s`D9?2m7mMm4M*!uXV4SSHP{YZUmm+k>@C#~i)@ zHZ03$k*EPdamH%q@CE{TkH{376RTAgP*v>8x`0bayTmfQZk4<6oU$Cg*g(3j4ARo; z?WG{_u!6@mB*>l6-D;{TLQs8OG~J$LF)0|$u2xfJnV9u-y;sSeZFsLlZthegxF|2u@W3QF7SKPg6NuhSA5A#h!FM*BMtH{M1*F zm$IY89||5`bH0Hfo@Ngt|L&E=ib!0#K8)Ff=sV|{zbU}K7M2j7wzF7r*zjAy4%R;c zjrW3Jq=YCOMxp>g@{Bsvlq^V8*^CWjvir39SPdiLFfS2z>dJ(#%@-9n`JIyXO102& zvEy*UMsv4u1w0^m@V1R>?WdnQeeXJ4My3JlNW9l-YIT-yHLvKw6`A2HvFyj88O^6U z0$qAl3YVBj0KYSeG@A64R0Vd4kuaSS^!9=$Fa+q7*ji6Td@7}^KbK+gl{Me_ZJg9k^(OuuiXCVp6Lif= zx?)6ZcM0Y9^Y-o1PbaUUYr?WA+Iw?G>z>q_?%5N{OW&EpO{?3Ujb288sp=W@9(-^1 zS#wWNf4>%h#W230usT3~9qV)BaF3BqaVtU0IR%$W?($X+!3;Mb6ILtO9Xd_hLFm~aeBUl=}$d8Y!^i5y@hz)8kx200pYMf z5XRkYz!hN3#hGh;6C9bwZC+`8`OMYcd={epu06P}w(Ag|g|e?rhdbXD(V6Ej4 zL5CgHioJs6-n9jH zR95(;(_eLc;NiFPvPy+i=MwxOdz&Fh)<6y1l(ylJ_ph89hwQ_f_fC(>T3n+#Z9u_G za8KHt=-CxVS;<#6qz9;IiOBOsqo%~(yL0}OlS~fIJvJUY?#X1udS%$(AI4ZpE;diC z*MEP%crkvgTf{Bbo|Df%xN8e1epQ zV`7J=9q310K>f`7QWf)vyS+QoSR?|%>}&t0_cK9dG+3TA?QFEDCw5(l$3|dleRNuw z1+5PDpkDx3e74cQyC_4SaZ=1I{s2T8M{yHOWvv5JHHvawoF~+2J^a1U5?ECzsk+0s zx*W;qbnooT=dWGiLSGt`*}PA(Bpf$LQveirLiHjkyv^!D&0wI0v@d+m#*_E`h4{q6 zOMiE>zY;SSs7b77N0$IQ^y^9@k0c(<>LK2q4^OD=((RShN8e@?$pJ#T3uwoBfJ9{O zTwQD)5gn(Wx;Y>vC7Be`$a*bbxPomdQ;0wv3kqF9l!yR>w5Q*1rjGWBy3ll9X=K)7 z+EMNYn1_axfzv-j`V=H=RfXCUbQu!-b(!mWEr{pLrJm}rS@xlZco zd0`v2$%ilAzP0D0*7w{Q35+L7HD+Gc=U?+^$zJ6!w6xOmJX=2crwbqzDj8=_o%Exh z8cu-Y8e(KN`OF-~*N1&a_Y2S6TM%+)xo_Y3BS&E(j0wB;hA4>Vh%EyJ-_=xZm7hNB zsrO{6v%?hVoQ2p$yYA{|&wB04)SpC%x286*JoQ#O;@|5UY_oF|s*ZS1?R7Wgsy66b zs4>xR)2BpaC?kvX7$cCrR8!rPZ8F6*U2&*Z)O}w5R(|cFQz42o&!FsNfWlTgbg(7( z+VVOk&Z90Z8|%FA6Q88^-NV<6RWAiTCc3=FJ8Rz^a25Pq`t?O4vj%SjXqu`{Nm-VM z7W9w=XZu)Mh&*@e>j%)F?V~mM+l67K(@od285(UtoWa~DRm~#L$R+H;3xgOBwx&01 z+|QQxD}OSsw*4qCSgCx>DNQjzzDTOVP1$tFa+_cR_;!m|B$%yHlFuClLN$4b{Xi2{ zLG*0%mqUq{Ww39Eh?t-M2niLEWPKOQ+IWDcjA2{c7aLAYSGVI8P5CdC>_d+xv=9LU1kx+#&_@1Pzvo){<0l?-XVUHl)Qwy zaQx0bXL@?v>X$2T>gTeYh4}lC{r$43#Dj@3tv7GFKo5|u$+tg14+4edvk@8^>xGg0 z4y8TsVP-erzI@*YCnsueeT<`7crLU9@g=Xh;+Mk6n%+eA&HJARHpSP)jRbkdn+Nev zopNRS-8_``vMC#3+{!kdxT7n5Cbh8!WwlkPF&x-T{7;U*o5{L$;O2!+QspHvwMikC zG?VX88(?ClH+Z7$s>%^bhP+aN-yyx!lvU`GWeN$aGsGd>^XNb+T<1>wsYQ`XxQd6C zrZ)hYQJpsv2?H((r8!f8Ypz&!&_WBP>f5tV)ZV~jTW6RNrmeF6YR?yAhE+aSB|nL`^_l$s z&aE-z)a1^$zNPiuZ7lF?d*oT7g zL1R&kY5qkLxfn_6O_KY=NlH(34j)L!i(pviWe=72TR%R+!BtVrnA-CDpoSWh62 z*fB!})NQaoOwqqlE!ObAL0(8u3PJB!_etn)hy@UIjf|Ue{P))e)KtK{LT;Lt5YjN1 zEam6!Rz6T0eqOXt;;EPLLOT=h(pzhi8d+SQA24WlnaC#-$RcA64s}e1*g%@I{&xze z^x*z!tlFI2evkNcDGL^!pQr~VlxKRa4Ljni4J7J6oCP+EL0MNVhJ5A&+|*s@-eh4> zG<0eb)v2>X?czQm|E(k+#EE*3#bxV>45wsXT12o@hxK}W_zD34uc~5jR5?o5Cm8dK3T8oP>re~90UYi z8QFLe>6MWaXBTtT*V^JaTnP;|(>#tPEVg6smj^r?n}5?4%w_yWQ1DBKO=k%(IEQ#NoFQww z&xxOOGV4hfN@M<%dtJYpYx0sXmZua&Lcay@+aH*khNS{NksA6ZRX8GMX*Xb1c~(cc zEf_p~nibe(R-0^1tX1w(;2ShxmjGoah=Uz)U||2SZ>w41s^ay;{BX508J&Tvvl+#< z4kT7EN_7v=-U5;8ctJs~#!Yw+n2}3o)L%=v;I#MEtlQIPpQS^XVd14Z4WGs@ed_d` zYRFRXIrtF59QcM}Txs>iay63Wgf2gB(sJ*W^h6y=Dq?%?5c@#&@C={?{yCe=4Y6j% z8x;g#)=^e@d*8G5y?hho3uBRbUm#`7FHVwnYyPp_5lCww^M5F@1L4N3Gv1c^b54^`v05%hU47$qtxQI+dfw}KTBgx%rwj-%?1W40Nx3?a3KqY29Dxa~OD z;#a`MKTZ>@{pgGKIlRlQ%t|z~>KUT&5#0g$m_iruXMe>w~`JimF$>dTUj7mVd@BAz`qlFM^*1dv6v9!9?wc=EK(RKh!L` z7YHP`H4~j`zQP~ef0;&CJPXvx4WC;#6+C|X&nG!E=iA0$YC#Z=+O>Qf@3y=zI!AQPyRrr7w4 zKH-_yhA|9MRuXp!H}*c}-(*RYyYk{3Jxi}A7HuW*a|94weRCP`+gNWEZKELE6-7MLnidF38u zl10#FhyxX^?OQcv7)+#w;G~w#!f*)WDZ9eX%5;@$R4@ZkR8@BL)w1taE;hM`H?eV0 zP_W8Q-~|hCJ7j?PYd0ZdRRxLAxW@zDD*`o<8*)FICBQ!NzRIFBC{IEkGZ_T^q&NMp z28e(N?=@spYIXc{iZ2}Q$Q!9E9GwG|e){RutfU8gW$qty6qr2uHmMs|EYhBiO3Trs z0*;Z95bg_!o!X`so+C9HkKoIzzeI4G;ej_*1)Q)f4izaazDjrKQ;E`_I`w%!$}4*T zp#G4MkEf3DZs2|3Xf`~$?^BVNbME>V&R!aNT9m&H^=KNduMHG!mxJZ%2fZFTuRA~O z%Kk1QsB+PdQkX5H`(9Jc(o}D=gT7PawoB^HO!^97aqX`5w@}O=?rZ`#vLI z{|#Z4(W{h(Ps9eiPu3J-E{kcg=DW|!TQJ*yYO_T@u3luAY@hEq{{6F+nN_FQ*i8|x z>mARjv<;UL9gC`o=%iy-gj(wzBDHqLj`{L=Or?2rZYF!Q;n^*Z#uGu+SS*;&8bY=s zVQ~74q~0Ko8_7I6Vk~k>T3-P)LJY3ecEF*8s!zhl`E?WdGYT_1i#M0xbF>u{~CJkB@9PVFg?X zQq0R7zT`wc)`KWAQs1)_UZh8{u6&N3at||CJR=dBfv=S**sWQ(u z{Zu>~TeyU1BV#ym9cE)dVFe{(aS2h%mvJINPz{80*hKWgOZ-E+R3VD6YZ4X2o`8tJ znL`}}%)Ej4@Tu=KEE+qi$I(sLoG<#! z$*Qu7khkNaejC0v%+eO5Ka6e5gc7u)(cayc1p2*C`o8u{ox&SXe7o=p0s-i=tg-Fy zc+G#)DF4&Hp%5U+quBrO`Zwg0TRbOKNpy z_m><%J+Cb*TE!_5&-I8tACetSJ+;MJdd?EB_a+NUoC}jw+ER>JLeBAE)t2cBkh1_e zL_q8Y%(4jaYYjV8!wm!$5QP&+TDvm`Cstvk(;$kgb9tHMlLh^kjwrmv$tRJ7f}dnT zoXEtpit>I8$IITcL9aVjwWuIL0fd%gU2NoU$WI>E-;npC)lMA*pVwDo=bVN0D((E9 z7M~9t^Jo1;aculW9m*C6%2>%SapDKRA!)y`;+EQNS-&n@odC{JVY6m=~jux>0_EMc!xLu!fiUe&I`M9!2?D1CVn$WUcu(|MHL$HA^&V962?U{#yj zI17-QGe`cbWQ{p7ui#!YEihtJp{}&@&|-AeiNQR@U!y92c~*eANdQK*s3T?$$9<0}k-KXp z!?l-7vc}r`?s7j}+@tB4n7Fd2!N31>eQh9A5RC!8JA(fE;DSNPr$7?}Q*IhAG6w(^ z15(3JH>5-4mh6eZy2Cx!4h!FjtoGW{f1fMl-*Z*c6ew20G*(cy`E%@e^2y7a~S|C;!lyI5v)S3$WIPTa}42xNqKc&CvDqv?o zTBYu#vDjM$vv`ny_kZwb|9i%xE2^wmFy&Q-PkyDec)b<3A>zZCl*6huHi4BlIp?kV zHiiiM=QebLk!bz^>p^a&Hl;Omcy(H=i|C^uZGBG{LtU26`F2YDM`-QIxb5(;f2}g{ zRyE`A<#_2m%}GeD0~2i4idS-Ozjk$XQ5~WB!kL6;py?gz)rtSCn0ZZs4fnjIdNYW_ z5PzIu`xniX&UVCKCA-dD9F{qKK4z6JvLdCc^Wn8mO`rYUezfb~+NAQc|B26W;ua6d zw>0X7n^f2P;U1d8IlsGqRPv8|DYNPYF&g+s9eIv()({g!y`VS!zoyNh1LVe>pJefn zbL}VI+EdD-UtMi*5a;~nE~uXFWhliOWi3|b!v*Gl`x-|t4VBo$*-Zv5g zuFqaG%Jp15tp;o9^M;PowSArL+LL%-Zl0=YafijD@CSS6xBbTAzOl5H@w(KSLMM*u zz`gPh*q^wEFFsgQzlFHzQzk3AuUXysh`7;e!jWQTv0SkxEo#_2QA(en1qoAWYRYB` zBJmNm9}-J20eNc%<{UATlezr`w;^45I^TMI?Uil#4&Bll)+uo1!yBqiRPlA6Jp|)% zS38wXjB%-wptpvPUXhgw#}I{v!)ULyH|B=6qsO)bFTO|W{D3gh%-wY#YB01iF9IOn zEV$6y(epiw#^z<{7@g$q>gkirK^oai-Xthd-;9_Lb+s(RMa1X)m*{JK8yD{z4V;5{ua?ffYj0#WVGNt;B`^Mh19JJ-fpmB ze|6C7;nL5@I1S-F(_C>k;~-``fd#BDYj(6-*B&3VD7v|S&fbWoQy}DA9RHuu3$y69 zAm6rQ;Ws*?bLH07j`-xWm+lup!X!Nyk+gfC)f9iB!C2wFQaJuKdShpz5dNTOS~l6C zi{ZPe1J_#r4myttA{ID-*GC0k`b@l=XY--OjtZ04n!1YS@=@X}c1Rg)eFD23LHN zUcfxFL_&v3LXBxR5+J@v?~lRf$7lNTrkViY`|$8$R6B>)(@&~TZIk^O19sSU&#nAl ziV%OJCj!>47JINCQEPp0HJYKw(V1K7n2P8*{8$n3e!q>|`9mJVi@gdtnv>DInmmgF8q~t?6jpk? zX1MD`*D{%jH_fzS89rT6FI7$v@K`7fIi&^Zz+2szRijxOBK2t*4~m=G%^Q{K(w&dc zrivD_31RTbDocCr9gF7IMmm0&vM}p$i2AC@;$EdY$tZ=&DTeTKkchY%H1o>d!3!U$ z35&Z)%8o2rEqqlBDPdCS2e53eO&AABuDSZCBUbtqeqd9>{Nt;%(3k4;G(w*nA&k3w zA$&a$F+?8-Wijb}VY}UT1aCzCkeY~neepHjl4#di`ZyaG-6e(fnX$qpwQ-x4^q&3L zA{iwW#l^+`F;RY7iL{o&s&f&&@{h1+m&g!FplBXvYWrf2qcs0YpJk*D2}lWrx&4n@^Zu=opl*}~GV-96 z56Dhg>~WRw7Mrc<5#Ow?-l+*K_so%P z&*1)gNzq$Pc_IFkl5WhxYu9d8JX!t)~>i;UKgRDD@lmEITi=GXZZTrIJIvuXc zWg$T6jw0RTj&79B>oL>MVwJYXY&$)x(y1v|=u5S_sE18kIL2l3ANk4TO+~bNHZKU> zyoV4NfbzU<|Qoq4$RF znWL-S>)`7eS{_}Eabc&=hp2?lQMZf1+pMl8+#D@-rkxTjGctd7J>u+_PNAi9HsvCd z@CDbg39VsUQj)XZ-sR&S`?JN$MR`Ul17AyYH*{wi{WC+bBfx|9-_1Uufkq@O8sXV) zntnCG(f0G0vzFsXMn+6z-$`rFIMaG;Cvbg}j@J^8uEw;C>CaC|>e4;CVCi#Zo@L{7 zHY0X!vqPL2u6k`~r`T$+OAo$slPi>4R!cZ?{%z=FFlL7@(3gO`IlOT!=+NVAqf}hi zJb8OUhowD#Q7CifJ3#^c1!!mKNmaxYGeSe`QvZ&gxu%}x4WYEt7M+%C?GQl-CF&R2 z6aAvW!IHx;0cW=h=D!AIZpf$8TxSPU<3G7+`JH6eSZcU_i82Q`^SQD(sa_c>TQ?hQ zhQlYK))SKBc?x`JIazh^DiS?U10RvviV^qPT;DsSj)pqpO_R+du3CJJmiZJHpG|n#hI=nY{1mim#&ZP>5fzvsFKWSeaXiV6@ zF(OWOecu6p+nmjt{MSFEydR(7;-~Nw zt$MJ8berdcehAS(N86THHaT?m(gsi=c zyss9P`ic|HLTcwFOq{<{oD4ZjPy!FhV{Y+wwQc-+&=DPtBrW)xu1h@fMG}bogHwy_ zY2TD5PWfmFCh0+~AJ`8S2ZG$!B~XnhPQFmjGPGM>aj0Zj=#rp7+ttR%^x=Nex+NQs zp`I)|?2(#7#X5gf-`kFO`Q76x=c$)t9!hpP@+GtXiNVxzM2^;_W>w~4ncVQcuz*4R2GLPG*m}s)d&Mt*M38?_&7k4wgBd4zx+AF_tXUgjW}p!H&EUR<*hNWUDsuM zbxccxP5@exIwo9MMFWj%EzCO~J^mB=b4!D(S^2d(r+s2Wt&ujEun@BiB{`ruk$sV| zpq&LsQ1CA?bC%R5X?sqiv$6Ua`L$Jt_gNx-#R$ zmhnim&=cdYp-U3sVIaJw{~7=lLNo{ag{RWiG_#y`^3eUQx!g_?z(`UYN78+R=VL5h+yA zoamvC{=EIL!2!)K9rt*s%quSIrP<{Nq09QOq<)#8n;6a*Rg#SHH`rbPBxf2q6z8`g zn51K|J0F_)8vg~&l&&D~691BmkH*A=^NO~Cwhb8lN4`qRcgH2ru2rWN+i_bgCvhzt z%3it4-LFvT2_WAmsZo22<^OdoA*zn*kSq?+9wTi9A6}X4B4zP#$nfYW^ z#l6zB_V3r2@Tdp=)4;bmPf>++KrEw|TrcSZ{NwGfdN zy;gC!Xn>1Aqww;TzMsX9 ze7x7q4Gxu#;>?1w`Z~H7IZVcxJVR4f+WljQJ$m}pgS#|8F{iDj7pX4`-Mw}nTyj&8 zky+|@C>HO%E*djyQ@$4TLBZMhrB5WSaj4Le=xM>}${?G)7~<*S4b$60(m#HVUKe!P*VTPLBl(RtoJt>dT&Z$;-hg@_i>h99)k+@gQdaELKB|yR=}uqX^iuug2~H{g z;74I9YY9Z^bp{+K=1pf=o!lMN|IyxcMm5!S>Cn51O0QA`X^J37k08CHln{ynQl)n( ziTVQ4f`EWh15yP72qE+)y$hi?=>`O(gif6Me)G-y&iwgit(o~X%dC}kvvTi`bI;jl z?S1xso@WorKzNuacWzR!*r3Sut^OQg9(=Jn$#cV9c*CNZ08+IBS z;sBH1cZLJPll(q)Pi#T#oEdFT%Wb9b8HSMl0hu3g7rr@rzw(LGxFaRE=f|W z=_7kcc8e6{r!1y}^~Q2*!j=)M$!3soCWO3bQ}u{f<1;hPBlDZeoebLmq6%9^kJNeGQOXUVn3s z>l*G*wmPfeULF=l5|S#dNn{(wT^ZlX%L{164#du9FJ~~aF|!7m?A_8Tdj`aW zXCSJ3hjSo6TAYO->YPbCu~ikzI5M_!Co(Vjy96=wTjH>%hzP!k3e$dTG+7wdO1i2! zfr+tlD%Y?tE-3>NeYtQ}Nfw03CJfKt2r(Z~c%(aOR~e|>E4u8H=(H@P9UngtKcpu+ z;j~+@1UNTKn^C~vN}r`_ko6~63g6ul>18lBV_((eOFbF=k{YsBgqnnyfsdFZ^s;$l z?9$n@T8I)}5cQN9UVM@~%i9glDtyoNBf%_}MoRG!PY*A{5Q>=~p`C8y2+1-#vsi9cB3Gmy$oXF)?h08{e~-(_6Z~9P0%zPBIIS?5Ss+{{YER z3+DX3{+@&1Ht_$(20kTA4_n_znCdH((-cxyiUmP)fUe;G_4{gjk4>YYXTfHj1xfWi zUzoz6*Nd{dP<5-eK?*>6g);fga=s(7k18fxxi+g!t6#fx_Jz3v^6x#7ay|ww#VpQU zKP$h!fCj1^Ljlb@72s=zhJ3p+Z5lBlBqTmN*UWx+t^@0~5%wK|L3`QYpBTQ4GZM^Gj-ictw@1H8IACUF??a5r#K2np#M*7kW z4wn?#S!uoQMp6~#d`z}`gY-8R^FXHC!})SPh!kIczSCC7mm1Z(Aw0<#z+B}zyaePr z|IFj)_|NQ%Pk$_u974~){(8;apWPk_AGuVYIK}!uFHzBF=B;=NzV_9ibgcdgqhpW4 zowj`7fG?DrGTaf6jM7iz?nTMs|15$1J?Q_v8ry%QeE-#z-1QLSWb5%Xz3CfKFG~Gh zH}hcGcz)-&oyeegLVgxMJAZY4b9e*|Wpf zw#*#b6QaDXPT=gfrxP# zbAM3IFaO6b(>We1P9|z2gu)+nGSsoegoutYP`c}dBO@yC|G~L{Br}=hJ0;##$P3V@yb_~`ehtw_h1Li z=nJKjqH$bnyeivSd^Jga8Kd(Er~`U~f|J)TDh&fZ9(|q!2+TuHuojs4EFU#!{anVC z{Y7>5DlMNwANyI>PgGQS0}suNg$3v5etkRvUH^B<$Y$e(oP4tjz>@O06hd+V8&cSG zuEp6kj)-A2Ml2yZvx$8-fDIf5vaGABs@Dk5wY}RZa{?$IX5u4@ai_uljBg=Z)-nY9 z{kz1wJLc2*83huWA;Huu#F{p;m+s?B2H4bI9rXB$sEVe&N%S0=kR-~!h|Pgj`~tz^ zj>ooSY2?hNw5c)3bpNm*eDXifIax#O=N3Z&+P_6S=NoEgiVgkNnSgU zE1o5im)XMOa^K88k}l2Fq<77bqhU#%_daNhCf3cTDRr8LBE3COsOyx(pv#@1Ihxmu z=dm?ky3jWV^1KnHm8aNdYLNcc=DTFREWLn+aq7HuMDtJ9nIuU3tMsdsU0dS8p4)4izG4<+g6(MEO(K4O5Mxpid~+LzPBye-cuj@&6%h z1m;V6DFEXw;*fnT8y@G+5Hq4!>?vs6qmq?|mmCn#s>{+3cf`x&m{QQAJYE=*xxLXJzWG)J6O77VbRvRd*Cx`4Mtf27!e>$ML% zUwDN$qt_!`-B6rPc4^+}Zz;R>kQA!-`o2F(o9y?>)hkfyfCuLNY-Z)-Tx~w!h18*5 zKYLct=aHZX0kzmOZ^mgQ>I0>zj&~BeA~U(*c43eVfPBc!DTggG0QJqx39h3_VA=F3 zXdxD~D^wLgAKKAz*b0k307r(Nm?%c(KrC@@hvZc=DidoED<++Q<#6{kpDr!*mLCMs zDO)PCaAVB{5gzYxJxD4a4PNvv*^eu#m4tF4HQ0>JsQ#XpPQWn5ypg?)2_KQaGpjR%aDDbxyHp_e<0y4woHIXnXCj zU-~L`M6Fd;)J0qyeFm+EUPxM5g%kw0-0q9Bg-S2>DJ4@NeQwtu4axi#eJqgS>Y8q~CX3DMKn!9hyh~xhW?hQE#W2X z7=Qbm&lA|sNfQ_Q%Et)C)cXVIwhzqQ-5i=-r68+OF|lo4`v%M&Gbcr1aaGk{dCh<2 zDE=?*k*gl0*3ULbd3MGl5~N4Z4@=@MIf+|Ct1vo)kvE9BJ!)H4CM?YqF99$spJqI; zs^59wl44cS!acz=@BMpX?Bp)5INv^2KWIJyyk*zSxl`N{hm^G7sMLej6FPx&J^&7X z=zaziQo}$F3K@-AktMd((S3lV@%yZu7pWVrAj zKE$R$L)M00gNuGOQ~LQ1aOLQ(i#?^zxMMBX=Jn}i!U@+hms6GV$SL_KxI3zUwpc@OjU!G|c^TN8($)G!(mJjVpn;s4gHk_+1}3Usm~0hKzB2i`b;POF zX`0mwXdLN2yTv43sYJ=}l%!lB9ZTQ?)`Owo!YA$*=)pY~0Q5$dw$a>gB31gSD=@#+ z?X6x+OoSMc1g_3LOiswlg>Hz&%4ty3(&b+M?hGK<7`gUGmI-HEi$?R`{f;nn@}Fmg z74I^@ImB^>fEa)i;2oH(|FMTbAA|B#@)vLm_V#mp-#At{mnTh)Ee^BUJvUMn-aR){ z)|6RCh-dZIv4R9k=%g)@*B`rRBI);9L)2u}f0mwt1aqQ5Lg8hFH#4rgePz+EG5B~g zcG?19;vEB$?>Da|rEa?)HD3gr7ZTkrsq{H|fgW@}7UwG#6m8nY=AcBXHb0(7^~vGr=U4(CS5btwboeyQSwM zG)eto)wFGGd9A0zP0g^{)`N2#KZ*V>Pc3u!i616^k)Xb=nVo1`Y>7jK>YP-pkNyIU zofne4C~r_8#1}f7s&6->Jw5}FP&&qQUPnL7eG*9an|m{Bl@`a-kmeVOI=#5 z4xox9cl@;bg+Cz&z2jzEg$Z2iez*Z1@UH7DaDsV05w#ODdZOQ}?zw4sOV#srIA<)N zAy^mp#&vs(|J6KI){FQWIOu3cXJiJF+Q$5R{Jsrn$#f%722U_Xmk6>d41+GuVVsLT zTDCeMp$h#`uj#ORp|->RNJ{)BL=T>0y8jFwZjb)~%P>xGm_Q*hkr3Bq>ixr>F0BNY z`i$r3#;6m&IZjg!^#VZQF>7(0@zFs3EZNnMjE_bGeu3nN$@k!&uG13fm6S4WL;Iq~ zMOaA_pTo+4hx5nonMqD!wD$o?%_n=X)A<7;?T$+hQq}Za^ZMLM4+yX%)~;zE9B%{K z?~WR={KKD2TRyznVz?xX8O40-+jem(LJ8J=bp z6qYno#2u$-EzG~m8aB=kU(gzLBNawJmhkdUP(QgoM5DfnqvzU5cAwxHfs1VFVzla& z4tgSRW_7BE*_X0tJ)8!FKps;w=?N|>9TF$zkC3bRPvD_4grv~U8}1IY4xhNKyA8;1 zzUE7GIr^-ZX%R;LXf)4c)XgoYso6!&q!wb&m%h~{aPBb!QoE5WiucGx`$E*;Y3#r*I(Lo;5PMN1C|L6k1 zq36XmM~3Ln)(icgf&^FN7Qu9*Xv#7X)y{AA>O)zJyrm9i4yI$%Coj+L)y_~V43*)} zi^ZVO`kg9E2vnP)D)$=akHGia6fo;mXsTkVt%xwGS+yPWURqrD5t1%Sa0^n`I9q;l z2P%{nIpduCT|pP*WN22TfDgmc&-Y{K^=3#&XDaGL8PI=+p8upw|93!+|H*xpQ&bxN zt_sIW^5O$h0kxqro~(Q`^@8b>D+#m7d`CA?BL<{gw$<`!0p5gf$f-Z0=LV&tmZIa2 zQJ^7LA(Fx`K5*WLHPlfcg%u0Jq+m<|xT?%~dbHMmVdGs``(&-e5X@}-Gp=Dq zbw1lu{>l1Nfzw2&p<0DnAzY}ig`~XTEBN|t$%ER4S8HlYH8M0nypyO_V9UROjM{+O z>+G}e%HUfWLZd+KaStLzQMS@oD+fV$IUCr2fn=MWzjJCE5pcu`8uYbt;=Q6k9T8yS z4dLjt9u)0EhRYj@`BmFn<7-okHjnSO@|NnWf()be5Ok8$U>z+}w$bpRG6s_&a1};q zL|9+I$T~kXYZ-dofY^rtAXI2oHm#Xe2%H~S0SNB0dch4^r~W`x`1seq0foaMM*si- literal 0 HcmV?d00001 diff --git a/src/images/fulian-logo.png b/src/images/fulian-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4077cf148309c06d6ae375fe6da133b7e1165bea GIT binary patch literal 38135 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 ZG6Z`@0zZDrt{DRU8R(hlzSMS({eL~=nI`}M literal 0 HcmV?d00001 diff --git a/src/pages/tabBar/user.wpy b/src/pages/tabBar/user.wpy index b2c0268..7cc2114 100644 --- a/src/pages/tabBar/user.wpy +++ b/src/pages/tabBar/user.wpy @@ -358,12 +358,6 @@ wepy.page({ type: 'navigateTo', path: '/pages/users/upgradeVIP' }, - { - icon: 'https://image.fulllinkai.com/202305/18/986abe4366a59ebc8c5437a63d4f957f.png', - title: '专属客服', - type: 'navigateTo', - path: '/pages/users/exclusiveService' - }, { icon: 'https://image.fulllinkai.com/202201/13/0c8d92e86946c9a4244a92cacd4bd8d0.png', title: '我的发布', @@ -371,22 +365,22 @@ wepy.page({ path: '/pages/users/myDynamic' }, { - icon: 'https://image.fulllinkai.com/202202/17/0cb2fe566b98d607136bde08e7f27f4d.png', - title: '福恋指南', + icon: 'https://image.fulllinkai.com/202302/06/4092bc34b48ef2b8b95e9d3a5954f803.png', + title: '我的分享', type: 'navigateTo', - path: 'https://love.ufutx.com/h5/#/guide' - }, - { - icon: 'https://image.fulllinkai.com/202202/21/c982ff4f02b9f834e6f4cd6886547f71.png', - title: '意见反馈', - type: 'navigateTo', - path: '/pages/users/report?type=user' + path: '/pages/users/myShare' }, { icon: 'https://image.fulllinkai.com/202302/06/4092bc34b48ef2b8b95e9d3a5954f803.png', title: '分享我的卡片', - type: 'share', - path: '' + type: 'navigateTo', + path: '/pages/users/shareCard' + }, + { + icon: 'https://image.fulllinkai.com/202202/17/0cb2fe566b98d607136bde08e7f27f4d.png', + title: '更多', + type: 'navigateTo', + path: '/pages/users/more' }, { icon: 'https://image.fulllinkai.com/202201/13/0b3e132b03ee70e1325229ef8885ba29.png', @@ -776,7 +770,7 @@ wepy.page({ return } if (text === '分享我的卡片') { - vm.hide = false + wx.navigateTo({url: '/pages/users/shareCard'}) return } if (url && url.includes('page')) { diff --git a/src/pages/users/more.wpy b/src/pages/users/more.wpy new file mode 100644 index 0000000..6a98e48 --- /dev/null +++ b/src/pages/users/more.wpy @@ -0,0 +1,37 @@ + + + +{navigationBarTitleText:'更多',navigationBarBackgroundColor:'#FFF9F5'} diff --git a/src/pages/users/myShare.wpy b/src/pages/users/myShare.wpy new file mode 100644 index 0000000..a27c9e0 --- /dev/null +++ b/src/pages/users/myShare.wpy @@ -0,0 +1,139 @@ + + + +{navigationBarTitleText:'我的分享',navigationBarBackgroundColor:'#FFF9F5'} diff --git a/src/pages/users/shareCard.wpy b/src/pages/users/shareCard.wpy new file mode 100644 index 0000000..56151b9 --- /dev/null +++ b/src/pages/users/shareCard.wpy @@ -0,0 +1,74 @@ + + + +{navigationBarTitleText:'分享我的卡片',navigationBarBackgroundColor:'#FFF9F5'} diff --git a/src/styles/sharing.less b/src/styles/sharing.less new file mode 100644 index 0000000..8114e33 --- /dev/null +++ b/src/styles/sharing.less @@ -0,0 +1,29 @@ +.sharing-page { min-height:100vh; background:#FFF9F5; color:#4E4145; padding:36rpx 32rpx 64rpx; box-sizing:border-box; } +.eyebrow { color:#D92554; font-size:24rpx; margin-bottom:16rpx; } +.sharing-title { color:#A3294D; font-size:40rpx; font-weight:600; margin-bottom:16rpx; } +.sharing-subtitle { font-size:26rpx; color:#97717D; line-height:1.7; margin-bottom:32rpx; } +.sharing-poster { display:block; width:100%; border-radius:20rpx; } +.sharing-preview { border-radius:24rpx; background:#FFF1F4; padding:28rpx; } +.sharing-photo { width:100%; height:400rpx; border-radius:16rpx; margin:24rpx 0; } +.sharing-logo { width:64rpx; height:64rpx; } +.sharing-intro { margin:28rpx 0; font-size:28rpx; line-height:1.8; } +.sharing-actions { display:flex; flex-wrap:wrap; gap:16rpx; margin-top:28rpx; } +.sharing-page button { background:#D92554; color:#FFF9F5; border-radius:16rpx; font-size:28rpx; margin:0; } +.sharing-page button[disabled] { background:#EED3DB; color:#4E4145; } +.sharing-actions button { flex:1; min-width:240rpx; } +.sharing-state { font-size:26rpx; color:#97717D; padding:32rpx 0; line-height:1.8; } +.sharing-state button { margin-top:20rpx; } +.sharing-section { margin-top:36rpx; font-size:32rpx; color:#A3294D; font-weight:600; } +.sharing-stats { display:flex; gap:20rpx; padding:30rpx; background:#FFF1F4; border-radius:24rpx; } +.sharing-stat { flex:1; font-size:26rpx; } +.sharing-number { display:block; font-size:48rpx; color:#A3294D; margin-bottom:12rpx; } +.sharing-row { display:flex; justify-content:space-between; gap:20rpx; padding:28rpx 0; border-bottom:1rpx solid #EED3DB; font-size:28rpx; } +.sharing-row text:first-child { overflow-wrap:anywhere; } +.sharing-status { color:#97717D; flex-shrink:0; } +.application-mask { position:fixed; inset:0; z-index:1000; background:rgba(78,65,69,.6); display:flex; align-items:center; justify-content:center; padding:24rpx; box-sizing:border-box; } +.application-dialog { width:100%; max-width:640rpx; max-height:90vh; overflow-y:auto; background:#FFF9F5; border-radius:28rpx; padding:28rpx; box-sizing:border-box; } +.application-title { color:#A3294D; font-size:34rpx; font-weight:600; text-align:center; } +.application-note { color:#4E4145; font-size:28rpx; line-height:1.7; margin:18rpx 0; } +.application-code { display:block; width:100%; } +.application-hint { font-size:24rpx; color:#97717D; line-height:1.6; margin:20rpx 0; } +.sharing-page .application-close { margin-top:16rpx; color:#A3294D; background:#FFF1F4; } diff --git a/src/utils/invitation.js b/src/utils/invitation.js new file mode 100644 index 0000000..2396d24 --- /dev/null +++ b/src/utils/invitation.js @@ -0,0 +1,10 @@ +export function invitationFromOptions(options) { + const query = (options && options.query) || {} + let sceneID = '' + try { + const match = decodeURIComponent(query.scene || '').match(/(?:^|&)from_user_id=([1-9][0-9]*)(?:&|$)/) + if (match) sceneID = match[1] + } catch (_) {} + const value = String(sceneID || query.from_user_id || '') + return /^[1-9][0-9]*$/.test(value) && Number.isSafeInteger(Number(value)) ? value : '' +} diff --git a/src/utils/sharing.js b/src/utils/sharing.js new file mode 100644 index 0000000..2ac2c3f --- /dev/null +++ b/src/utils/sharing.js @@ -0,0 +1,116 @@ +// Sharing destinations stay separate: inviting someone never advertises the +// inviter as a person seeking a relationship. +export function sharingPath(id, personal) { + const userID = Number(id) + if (!Number.isSafeInteger(userID) || userID <= 0) throw new Error('请先登录后分享') + return personal + ? `/pages/home/information?id=${userID}` + : `/pages/tabBar/welcome?from_user_id=${userID}` +} + +export function storeSharingCode(data, kind) { + const extension = data.mime === 'image/png' ? 'png' : data.mime === 'image/jpeg' ? 'jpg' : '' + if (!extension || !data.image) return Promise.reject(new Error('分享码格式无效')) + const filePath = `${wx.env.USER_DATA_PATH}/fulian-${kind}.${extension}` + return new Promise((resolve,reject) => wx.getFileSystemManager().writeFile({filePath,data:data.image,encoding:'base64',success:()=>resolve(filePath),fail:reject})) +} + +function imageInfo(src) { + return new Promise((resolve, reject) => wx.getImageInfo({src, success: resolve, fail: reject})) +} + +function textLines(ctx, text, x, y, width, lineHeight, maxLines) { + let line = '', row = 0 + const chars = Array.from(String(text || '').replace(/\s+/g, ' ').trim()) + for (let i = 0; i < chars.length; i++) { + if (ctx.measureText(line + chars[i]).width > width) { + if (row === maxLines - 1) { + while (line && ctx.measureText(line + '…').width > width) line = line.slice(0, -1) + ctx.fillText(line + '…', x, y + row * lineHeight) + return + } + // Keep closing punctuation with the preceding character on the next line. + const carry = /[,。!?;:、)】》」』]/.test(chars[i]) ? line.slice(-1) : '' + if (carry) line = line.slice(0, -1) + ctx.fillText(line, x, y + row * lineHeight) + row++ + line = carry + } + line += chars[i] + } + ctx.fillText(line, x, y + row * lineHeight) +} + +export async function renderSharingPoster(page, profile, personal) { + if (!profile.qrcode) throw new Error('分享码暂未准备好,请稍后重试') + const sources = ['/images/fulian-logo.png', profile.qrcode] + if (personal && profile.photo) sources.push(profile.photo) + const images = await Promise.all(sources.map(imageInfo)) + const ctx = wx.createCanvasContext('fulianPoster', page.$wx) + ctx.setFillStyle('#FFF9F5'); ctx.fillRect(0, 0, 750, 1120) + ctx.drawImage(images[0].path, 48, 42, 64, 64) + ctx.setFillStyle('#A3294D'); ctx.setFontSize(30); ctx.fillText('福恋', 126, 84) + ctx.setFontSize(22); ctx.fillText('上福恋认真找对象', 440, 82) + if (personal) { + ctx.setFillStyle('#FFF1F4'); ctx.fillRect(48, 138, 654, 430) + if (images[2]) { + const im = images[2], ratio = Math.max(654 / im.width, 430 / im.height) + const sw = 654 / ratio, sh = 430 / ratio + ctx.drawImage(im.path, (im.width - sw) / 2, (im.height - sh) / 2, sw, sh, 48, 138, 654, 430) + } + ctx.setFillStyle('#A3294D'); ctx.setFontSize(40) + textLines(ctx, profile.nickname || '我的个人卡片', 48, 628, 654, 48, 1) + ctx.setFillStyle('#97717D'); ctx.setFontSize(24) + textLines(ctx, profile.details, 48, 674, 654, 32, 1) + ctx.setFillStyle('#4E4145'); ctx.setFontSize(28) + textLines(ctx, profile.introduction || '很高兴在福恋与你相遇。', 48, 730, 654, 38, 2) + if (profile.idealMate) { + ctx.setFontSize(24) + textLines(ctx, '期待的你:' + profile.idealMate, 48, 824, 654, 32, 1) + } + } else { + ctx.setFillStyle('#FFF1F4'); ctx.fillRect(48, 160, 654, 640) + ctx.setFillStyle('#A3294D'); ctx.setFontSize(52) + ctx.fillText('把福恋分享给', 88, 300); ctx.fillText('认真寻找爱情的人', 88, 380) + ctx.setFillStyle('#4E4145'); ctx.setFontSize(28) + textLines(ctx, '认识新朋友,开启认真交往的第一步。', 88, 470, 560, 46, 2) + ctx.setFontSize(25) + textLines(ctx, `${profile.nickname || '一位朋友'} 邀请你加入福恋`, 88, 690, 560, 38, 2) + } + ctx.setFillStyle('#EED3DB'); ctx.fillRect(48, 860, 654, 1) + ctx.drawImage(images[1].path, 48, 906, 164, 164) + ctx.setFillStyle('#A3294D'); ctx.setFontSize(28) + ctx.fillText(personal ? '扫码认识我' : '扫码加入福恋', 244, 965) + ctx.setFillStyle('#97717D'); ctx.setFontSize(23) + ctx.fillText(personal ? '查看我的完整个人资料' : '上福恋认真找对象', 244, 1010) + await new Promise(resolve => ctx.draw(false, resolve)) + return new Promise((resolve, reject) => wx.canvasToTempFilePath({ + canvasId: 'fulianPoster', width:750, height:1120, destWidth:750, destHeight:1120, + success: result => resolve(result.tempFilePath), fail: reject + }, page.$wx)) +} + +export function saveSharingPoster(filePath) { + return new Promise((resolve, reject) => wx.saveImageToPhotosAlbum({filePath, success:resolve, fail:reject})) +} + +export async function renderSharingCover(page, profile, personal) { + const logo=await imageInfo('/images/fulian-logo.png') + const photo=personal && profile.photo ? await imageInfo(profile.photo) : null + const ctx=wx.createCanvasContext('fulianPoster',page.$wx) + ctx.setFillStyle('#FFF9F5'); ctx.fillRect(0,0,750,600) + ctx.drawImage(logo.path,40,32,64,64) + ctx.setFillStyle('#A3294D'); ctx.setFontSize(28); ctx.fillText('上福恋认真找对象',124,74) + if (photo) { + const ratio=Math.max(290/photo.width,360/photo.height),sw=290/ratio,sh=360/ratio + ctx.drawImage(photo.path,(photo.width-sw)/2,(photo.height-sh)/2,sw,sh,420,150,290,360) + } + ctx.setFillStyle('#A3294D');ctx.setFontSize(42) + textLines(ctx,personal ? profile.nickname || '我的个人卡片' : '邀请你加入福恋',40,210,personal ? 350 : 670,56,2) + ctx.setFillStyle('#4E4145');ctx.setFontSize(28) + textLines(ctx,personal ? profile.introduction || '期待与你认真相识' : '把福恋分享给认真寻找爱情的人',40,350,personal ? 350 : 670,44,3) + ctx.setFillStyle('#97717D');ctx.setFontSize(25) + ctx.fillText(personal ? '点击认识我' : '点击开启认真相识',40,550) + await new Promise(resolve=>ctx.draw(false,resolve)) + return new Promise((resolve,reject)=>wx.canvasToTempFilePath({canvasId:'fulianPoster',width:750,height:600,destWidth:750,destHeight:600,success:res=>resolve(res.tempFilePath),fail:reject},page.$wx)) +} diff --git a/tools/sharing/check-contact.cjs b/tools/sharing/check-contact.cjs new file mode 100644 index 0000000..c7d4999 --- /dev/null +++ b/tools/sharing/check-contact.cjs @@ -0,0 +1,27 @@ +const fs=require('fs'),path=require('path'),vm=require('vm'),assert=require('assert') +const source=fs.readFileSync(path.join(__dirname,'../../src/pages/users/myShare.wpy'),'utf8').match(/