From 61a68ac84e4bed61daadc345863301cd5e815f12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BD=90=E6=96=8C?= <1134087124@qq.com> Date: Fri, 15 Aug 2025 18:14:14 +0800 Subject: [PATCH] first commit --- README.md | 99 ++++++++++++++ images/bg.png | Bin 0 -> 2431126 bytes images/logo.png | Bin 0 -> 9751 bytes images/sharelogo.png | Bin 0 -> 61985 bytes images/subg1.png | Bin 0 -> 68026 bytes images/subg2.png | Bin 0 -> 113598 bytes index.html | 312 +++++++++++++++++++++++++++++++++++++++++++ manifest.json | 22 +++ 8 files changed, 433 insertions(+) create mode 100644 README.md create mode 100644 images/bg.png create mode 100644 images/logo.png create mode 100644 images/sharelogo.png create mode 100644 images/subg1.png create mode 100644 images/subg2.png create mode 100644 index.html create mode 100644 manifest.json diff --git a/README.md b/README.md new file mode 100644 index 0000000..d377266 --- /dev/null +++ b/README.md @@ -0,0 +1,99 @@ +# H5 邀请函项目 + +这是一个优雅的H5邀请函项目,专为微信分享优化,支持小卡片形式的分享。 + +## 功能特点 + +- 📱 响应式设计,完美适配移动端 +- 🎨 优雅的渐变背景和动画效果 +- 💫 飘落动画和交互反馈 +- 📤 微信分享优化(小卡片显示) +- ✨ 确认参加功能 +- 🎉 庆祝动画效果 +- 📋 一键复制分享链接 + +## 文件结构 + +``` +expo-invite/ +├── index.html # 主页面文件 +├── style.css # 样式文件 +├── script.js # 交互脚本 +├── manifest.json # PWA配置文件 +├── images/ # 图片资源文件夹 +└── README.md # 说明文档 +``` + +## 使用方法 + +1. **直接使用**:将所有文件上传到Web服务器即可使用 +2. **本地预览**:使用本地服务器(如Live Server)预览效果 +3. **微信分享**:在微信中打开链接,点击右上角分享 + +## 自定义配置 + +### 修改邀请函内容 + +编辑 `index.html` 文件中的以下部分: + +```html + +
j*u1#@)z0-U){T$=0Xt~_rV zk~ve%k76!N&Te9j_1vZ_bC}&6FQG@gQRna=xjFno}VUh;8@ro z`OvbkLD{nj+Ot`|U~@ArAU@VPmk;OMR-XB{9|(TSSY8}dP^lnT8=H}tMSkYsuwyeY z{+iG8I==BDF#dg!9TyNYn+yL|$;8Ej%lP6VY7w`Q7`-AWZDb~?f{<^{U8kY=WNDME z0`-ybv<__#L;&%uz7@WgY0HQ_(`2WWUZus5gO_X|y;<$6zr3mRA#l&ZanB*cKHGC) zbHOFoo{O3be&X&6n+yE4oIlWl%);d2jkxuQI-;?GVN*A;>7CfH8D{)9u^F?UCSN1~ z{>__9-`$qw+U`VcK2~c?GWg&6B-)`XkCW7Mg(Ep_(E6BOp %@)V?&{GXd}I zQ|CEWU6zAJvXSmg=2b`49l}9s__zF2K0eXJW_j`^^!NsTyrs#9VFR1usbcdEygQox zn_y0#+%0-Oy*v19nkUN|Tn=5 NCeh<#G6AUdgR5nX4*)!zG6d zvSJZ;UMEk0=|rc<%N0x)tbAd=uz6q%cRS59m|u-_i$c+w6qBM&;H~etq~PEo#$B7} zV;1*TeScHN6LVmz*cfp%F_tINZN;Vwh?`cjw w>^sn}YX@l)WcQVd9>r7IY?Ovc4>~`Ar zSc&}|Gl#zN?JZ6CDeNE8!3N2H&CYG_*zK|lYn2b=oq3_NSzDNIt-E3fg@OM(HiHe= zbaY3J^{E{_r{*>t;qNxfZ7zA%!p;UTv8i;TuQS)!KIg02H_LVeo3;s^!CDr!uli~y zReRYGVqd3y-J40~e*3xG2l!pY{fNU*{fUsEibq}=@R{l%kG^+*1iqh`mnP<==C;s3 zD!))KvPnJNw&Q2h$-F4WLQKT4=OX*HL0c9(I+v9T?d$fT{e};dHVZw;m SNahL92`ow-pj}hwYv^_5# z$ZgN^g~!i>afx%jUFLkkn1YXwI%|^U3Mkv%&!ziJ=`n?GD_-bF7}y^2AMsTLs9k{x z7EnH(CHo8?h5dIG+;;~!VJHKvIWdFnOVjqFW05!s#|9A4qF)3K#%}>Wx8D!&IsP4m z`-XXIjF&NPf^k!qM2sQ-uPWic8g_D5;olsBb~;X8sDI0-=;D!o43x}s3ey`D@2-SC zUnChu{`1H^KlC8euEAaEyGtIJa>JhIk-wUDJ);dG9=CSN?X0%n(#G4cs=c=*@(lqF z`wa+}GZfD dZ>3gl*yt_Oy#KFsm8+W8k1M_kW;?xM(*~_2LkSgtIYry=q;01B1fK#vyktpb zv(^VDuL`Ws>@jPnNy92%+?6)F%J8vVgcTH5SIFx$*_TozuD(_1*<7brFhbsSNh7f> zdFB~buDlkBeT?T+z3xVv_?rRsCbd%Oi<7Sj^%6U!=sGE&sJBAWXy0{X-?|K=6YN z;bo~QJx*#2adE;J&FNHP{!GSoGS)p0h&fQqd;N&{1<-s;oeP~Bw_Ngwaiq1a5h3lk z{JC{g{pL;O5$m#fdiFu?S=KY@P!#9j2a=zo;ayWtx(XQ^oG> zv;@- lqq0uVg+1uT=DA3i8Da*wEyup5|7dHxv;?OQC2XKmJDWby-G*2Y`dW zb9hcRb-sYvpFOVM2DxAZcfqE`aQ67q`mLJtr=P6&(~{Y (Yj)UzC_^&|iZal9Yo6OzG-NG{iVMb>1!p0)jSdiLGV6#Y+F7(+<+bwJ^I!Ku& zk>KJ(OO?TZu7u>Y$%MbQJvktXC)qqDZI8fj-t@tXFb%;QvC`n6tXAGp4FCWT07*na zR6TBaJG0lua8akt{*9zP8^Jw;-~ay4o=xB0mt1U=eaT?IT|9lDizlDS7dCq~c;+wU zFKp^MhXPMN7>%`|){bQVHT*HL!7|MFXU9Y_1JlWE*?%*e6Z>>x 1`@wjEH_ xEY@~|2BKIJM7hNmuy{B9^ZuKvWUK(t>67NA7jt4q8+Kt05(PJ z;F;dZi%PJtv<4lsA|^$!*k}L+@v?nApbJbVC0G%>0}>vM=MB|E9+}F-J%Y#U7!h(o zdhjh7@(}XB&k-IMYdL`v5IjTC8ZmcCV`IQGzd %VS^#A6^(64eY)QHq*_0>;7Rep4>-3V>3UQM_*3PXKrfrQL_xZ zDnnn5zQ3VnJx=?ePizFS(*WbZjv%fQJCnAk1-?z3yC~~&i9;oGtq<+p|04qPN5wX= zyl`mr;juIKI<`$4I&(|sQgR&pec%MnpUAPDjG2YQ=fXy1 ~`y zXxJUt9k!8JvU%>`fC&2+zS}Y3uV}}mBYYr0sM}@^xMTi$s0CX)W6^bHKU4SNlyPl6 z?hDUH)+NdZvE0`97U^t`g^(YA@s3F#6! 4yI$JRnd4k 33mMx~ P zgEOs<{z^dTwJ#GLu>upHq^Lj2kct9Rm1!bnRh1PpT6LE_tT6;8B|2zd;QsAy3-QXL zLXuc=-^268l{fPuy)fny-*sZX;}1iElRiuP!$2P 9f@>snImulDtho6`?FwQX4v?q zgZ-|t*1QImWjXi- {MkjnBlRN7jkjRY7tLNmrqL1#X$|37ZEK$xEXAS N+QU6rntU-U6N$_s3}g$>3@d6f-!D07>BxUF#eSvQ3rO$U8y zp9Vf{Uqn~G;b&t5<*F>Wkxs`C{oaTvF>h-+Q2=5+@?YgMR@ S|Mw_>y<$JTrGD#{^5zX`$K{NTMVlLg^`>N+O5|tDKF}5d0-+op zh1#SwX!6AqfctPwiYa|9fxMfrW|&_Yqz^P@S=JF$>8yN7We;-VvHp@-Y1aiQ^NWVC zy!~HANZaPCbP2C~m#y@nvf>oWdPYhbbc$jHsqr}NdX2+5B!VmhB$U*OU(KrY#t)~g z$N+7d%M3D_|Hq@5&YL)N%}hGee57D92?8KQK(2)-S7iiGJZ|htR_Z_pNdt^3>HsIb z8Dne%Di6^lFCvh(;Tw0O0|^7j5|AZP7z^l858&>9!-hlc!X{wP26pd5F+Vx-Z!=sx z`BWEN(p*$}9Ei`&V o6IH#U|N6ZVcvnwiDQ7d11q(>oRy 9Si(y+JLWSCXSK5r5V4?@GU#RpGa3(Hb7CnJT9G{ zjG}qLW1(x46b-;vZff|0f5fxWl6lA!*5SbgC0KFjPAA8_G~+-c0+Uy1eO9&RZR(t7 z+QnSf{bApBHqo5}Q(-3J&W3bcx;)mN&FUT>m+zR6_xN)G_Rz(HUMl|)mx&L6M_S-H zo)`1kd~djOa48_>>kvg<>ADS!2U@^eRw~L@O@ZGA>=eXjaKNZoWpbYw{}Y>!srurU zn)`x{-sqFtYR+R^O!QA%@nmeEOy#pUnAhn0046RBCa}}y8%plLyQ%r0_oiI`*c9J@ zzM;Uba2yz~&>Rzh qlQRAUBcce9M*0 zmNq88>Z)?sXWmLT+H@&@6aN9|ZqCO?4Z3_{xy>)|8hMj>fawOF%(pKMq{C^j^K94F zwwRCT$7416QZ+W#aUsS<1tyyUE(AKUQ87ZSEWRWmj(q4|m@ADt=@D1N8+0eu49f-S zvq$R46-_J_AG}zOc_Y!;4P1C6brmolB=vjj#55_eE!vTSgH*)CNE)xlOhhQ!OdF16 zA06V$?Zv+$FRjmQSk5@p`Lg2)dlj(ja~|rb&R;eH7xJOihf}v}*v{pU+d?~%IZM8@ zjzIOXf_jF39rL#|X!>qCQHTSe$1?46d(&;Uo( k zgZ7KIyUmHQo`XB~_ww7hI(o9&!k8t$^dTSi8UB-X6Vna79v9iL9pBL4DqDSkeeS1f zciBk0u|2)Mc}-_s3SucLuGaR_{zmKv`dw$*&$O#EzuR}-NG5Ywva#%CBM0iHdazX0 z9=C&7=mz}TtpmT2Ir`Og5a+Gn_VDq1qzDwzR{J8+k=~3)NNrNEjs)d`GU7la`wu_6 zZAtuf=1j+8r=8{*l6tKx!c!mC*`M&-cO^?X$9ZS&Oz-aSU(jxYT%Y|c#tsLBY9NZ7 zXMY8AVK65)WBk`l1LlczFs4P{Bz+{-Kik`FGyNy(sRLS@q*xCKU=pJF+8)ypfdvK? z*7m>`5Tp(EtqWr x5uwu6Z2 zj*f-AUSM6HQ9pK88XffE(EmWf=DtGJ#k`fI2N3(TGYgn6=yTx%;ft(z_FqT1U@9=? z2O-2ClZ$Z30QN-*&(MjXbnF+LONCt)dX-81jiV`xF5)zafAczH&*Pd5`YDy}WK)DE zT`5R-P+J<3ZstoCJomL>Fb2;mQbAGYgd##Bo)Qpqh8$ MfLMDs>>v3A>NnlG4dDq3k7kQQJ9c(Z>M_cY-hudQeV1EFzAMlBNCj6uF z^=bKD%tK-h!U3drQuQ5s-RjRKDI`OHdFgz~Y4IfRMRc((Y{CG|Yf7u0Q4}WcHQI@i zA QmJ^{={Pu5JAa%g}KGJ^GrvKvQ9@_(oP$!$6SNcvDRgJBN;gx$#|hekc%!T z30zP%I71jD1%KoRzC}z@SXXKDtfM2t>ufH?&2f#WG1EeTxgaUvTZw^00&36nk;W5& z@E{doIw_nAuRqKg!5kgT$>MB~%(=l_JLba&3g*~K! L2s n%m-WsG(_O@I(dLC-;8#2`n>!P 5a+4!n|kU-m}18JpM%IPd?Vg z6XQ?hzlw5E7dM~kg3W_}t7KslUkkDqR_YMJA8fK3n=T(FXAYw?leK+j-|e`hvF~Ok z=`GK^89&bWak3xTs5gAsSQy)Ugi6D#X59?z09;iyETFD7jO5@u!vMnwnFt78NR^E6 zKqUrt5QqH78NezZCRY&o1r}zL=S_t-Bb`a0v!Ss+_H2swXAgDGX3Rd@gD(mmaEb6x zdwf?iY>pN-M81$%YJ;< _ljniIuLhWNnyi zRX#+$eAes;Xdo5!#};%YzA$vvrj7U-2eb>)=UVXha=~VrcwOvw@E(8Kx8ATC8#a2W zK6#)8-xuw)fdjSss``UITSza&|0O)u;ur^vm+G%4TG+U{&%GfnU<`HQ!M2N5i1q~W zDj?{`nAkkn=fLQLwJ+Fo1bs8nNABZBKQ}gSQvv G4m$yWcjO5zu{v&H?`%JesoO8yPU!CQ$X2fU~@D9t-xhRj7=P@Ch8qv zy@1mPdo6oQr2{?J+EM8(@1`1UZnWPJ^D)BZW7|_$Y$Iz8dL}pBip_5 _cwWWT|J+<}F7==4=LcHb5Kh;{lg=K}haSgAf{Avf;s^J~0^^!p>m z>mzlSEuBx5#G1!>r~i|K2g>Mj#% 3iB20jalHV&+V)WPhy4Q~IUcd2 z*#;n>>q3P2IvV!b@6i~2AwENQeH&kZe6?9ZMkSK6-fq9R?t;f05+CEYhXa!*kBtb0 z{Xkufwl?B#z%6`oLqQCvQMdcp{mBMvp #F-FiAl#&y50yygoNG#R|emC{@+GCH%GAkQAaS=hVSrM zwfD9f>txJ3rQ?JcNZQ$Hug8bbqu431Gw?|;-hw_zE_d8#bwTA=G3+0z8{_B1Cj^^N z2`~>kzKHqq9r+bgj0wvnd9uyop$#z&-?+|3osQ+nwpM@NQR9%-Ow(r*?FsxAm48!3 zJ57AV3Ua#v(N5uW>y_KE&K07*Brc;(xR3aeeHn@f@!^fyjMmcB0$#nvFSAFd>heM6 zkhn@8T8Tai;T$|uborjN@OKt0lKo;JR mTa|cj8IROEPUtTqofENgrAO$69g$lt!vmt-R2cg7k+b|Wqh#fRqrFoa}BYc2IvkH z?eqa2vnBwQ2Gbv+{|xRs<0Ng`*l 5stnTTh}M{_%LKh$Erg+gCPLHxRn}FKS_+GqKoJBJb27OOg3bZZUgEf zmH9=CMFuuSk0r*a$7*=IGX4bwV_A&x1dN06AIt;6{zc#c&q ^0unWbAfVo9%}U0)O!` z+;M^={I$|XcH;qrT;)3l8kEchu< qIo<+V`6Qjlmm&{@=KBg~E z*k>M3iYchhpexw)3K$v^c`G;#lwYL5-_qdNoC7UC#sKEa;BpqR&Mn*c3&BDLXBw9R zCk9+gQpez$04!gX!7Z9THo4M}iYv6!1zS-P)^CxkK(@8YJVgHF`>*9!9v|zvv>{99 zNT)_Z<1rI?!ED_V9Dxw6X<`E~9i3=Cxv8Vm=X8AYMV;LGGw=&KzQN_qsV{AA>xj+9 z4w#q}d{HwqDFkI35HU##MTD9N4EGLLfJqM=({6Rhk7b~EwaPfpbYa_$F4Ha_fgn8b zM7XR8DFRwN;0WkM&TrA9vqah(4eJ@$hvL2LgA0Os&t}s9fbIpCHRq2%=F;XPoj(S+ zxbcO}zJ6omp?o0TGY}Ta^#6ykH&L+T#?du@FitL7Y|GW%ci#W;=5|+=ZSBev2xOY7Elj~w7~pTeeXUl$Ad6QGLDgy*!yIywcxzOUSV*e6-m!DnGa z&5~hVE5h4!ss-9JP9B_Zzg3ojlE`-S5^2PZwsVo392$2vQ&%R6>zDV;5x=D`z52J5 ze#?`#lg?(r3$H7--UT*YSM0b`e{y*<+1O1M*!8UVCF61j5SPXq2Rsk$ci8T@2z!?c z3*B8`;{3$g`6d^5Hf%rS7g)f?-2*ZnvSH7mZIM|lT!l>=wk=geERcpuRnh4I9B<_% zZdn3Tia$9Y@rmxOKXlL>crrOG99GBf6o^~xD7U6`DL@5pk;11M&%90IfXsrpfZ&6L z&DJgDr=; {}%J@ zcXaQR&HmbV?8VrmU(-A(5r-`&&{!5hzOWA_iK(E~7ItpCV4t>4+vkwgbbd-Pkr(1D zx4){>JV%?>ndWZ*?}WE)41P =rQ)1l#2r9xxrj^VH0Y) zv5DN6*T(h=G4~nBNR_U_MKp?k7csCpCO>5oH>>UNDbg&P>g*_}!S@CQj{oto 8M;;Ynq95QgYEbwg!JnE70K>uE4aM9}lXb^8jy+uEdSo)B~_*jgCVvJKc!Cyn0 z0OEzNvG2@>lY{VNj0ua>akdzLi#|@q)PiTB_asj3`yyT@{+jq}F*k&HA@;SB;0F{- z>;pO#>rZJ@bR61~IMlAfrj7Zj{pfL{on6BiPh8$)dyOc7aTdmrQ0lH+?Eoy|J;dY^ zvZd&weIt6&V~__hU{#R^z(Z2SC&yD&QYEMAz%8lzj#D5BDA0qx$gPMMm@nxHl<-s- z3Zx+~y-3rK8)5wve6@%TA=s|W1IOWHLYm=|8!r+YhvlGKm&~H>BDPoiz;S)eGM+iy zw14oCaklW8@cqE^IsW?(x61|p%78u=iny8h+%oA0{wd u }5$OvF6H0^9JjH&6rrGcIS7WhIZ=>d;8bn(R=q +xO6|62LsZwC&|zs42jkg&$ZdMA|g2Xjs?ZxYtShQ?o$2e@31z HO->;*1AOa(On zXhPc1?3BQR&;)voN !^?_+HL;)CB9;X3R6XkT0tFXrm-&he*c6Yw8XZ8h*a^8 zBo!aBCJj~9vdvi9vdJ_~W_2BT+zn8`tNv#fuoZMN&onm_@U+ksYFo}+$edQJ-!UGE z&)T_kCFY9@ gYe2j9xQ2|B;>72qQP>* z%~$zNKhEVM_O7Y) W~(a4_^eV z5_v4d-#tB?4UR7#|8G9O|Id8+@L&1L1;p1+zj2s;pKnZRPb>;M6VD=|3$F|o{=o*} z!Up&L)vtMY^Y3~1>Hp-O%bWYxf6E=4jl2GBhqu|-#BFStHh*$>dB|X}kIQ`qlTb0h zYp}U1ASlOss+nOvp{vhkW9#%C|Bf9z(ZVq#s6^_QKITL_;Pd>Py+(SI%nD?xP=XgU zL9g&=z{z4inQXl@*cl907Q-hFtWTeRj~6yy{Rf9X{T;%Jj}dFncc)E%&V@;KV9$%ZJ&|Hd zZHiAyz^1KtRRUCzCZb8Ok68gc{dA^t)nAD#U9Ap0ol=+V5(pq|@)C#KHkOvIAip^( zlPqFqv00i-D62QXU$e8Z-Pwp-i7)MQWiftYA?{0@&;MY~`K|4Eg?7b`+WUuki0I zoV)co6zuxNNs5T3DViTK&I+3j?SxIW>xFo|u%KPI3_IW#)}vo?=LVUBq&znm#w~RR zmpO%<^^Z{4Ivb0WFfO5?1Iid4N%#Hm?15tk?RCbQcFSqpL)W@xVXqudmz*^YieF>? z#(~rv`0=$|tY|A|$swSrr$XYOi03_uu^E&It8q|D#1}E&seWT)vDnluW0$#LXJdOC z3%kBBw)KntA=W3GA~%dz@;e6|4>$U7XTjL<<(2fx0&;EN{+1*ETXyr(Eq?*hcjDs; zJmc_5+u4u_SLQ0y-FmcP*)jJ1K>i6g`b# e=%8rya zq<8+PbLaydxjXZ~u06hf *~CS8T&H3Pi$D3H#=4s^ON|{X4hvQemGE0MDYLs z5CBO;K~(I)n4Z{TvFUAFVY5kmE$uP3I373J-ne8Lv|s4Dq30&fc#r+6HVrmmLqaT@ z>kV)XP(}{63bDSJGbV96X+vEa#DR&w7J4ppU+`j>4B8oNdIy{2!KQa$hrwFcIAw)> zo#U)C(SOpHoqkT{{Dp6)e&yi4T$r$#bIeiq4YJ*czfSf1{u6odmggqyDGNQc%fuGi zQ2EmALw6T>)qeT~fBlqFKmCP{;X+{G @E{xw6tltw%n&&dsy#_{tn`P(AR sUR!OPL2c)$j0@ z 4{rKw4kNIZ{>K_GsXOkdPtBGq80r> zmvCbcKP&>qD_uQ7oBPb)Y}t)Sqx^VRlf;*O7sxEfh~o{Iz!IQMKutO(p@sMt7BMQV zaW2vuXMSHDzg~VZR*CD$_;E}L0S_^5tlv_{P@Kyc3rlc3ke9x|X9H^@spXUTN`4mL zEbs$9$BSe(h!LDW;<$9IF_%r|vM@d!oBlSzVvH`vX9MfaJn?zMNiCaPB=u!bUq1bI zUI3XM&=*tupmzD+Ab -jf?STnI{1niie1FuXI-`BMo$9OHqava~zgFW`yKObSH;CnShJpic_V$1 z^J~Hni4XX<1LvYA4e!!C_oUQctRq5{$KH5tT=LMCYs+HaaLh0FaZZVI4D-ukPO0sZ zFt5b $hT<1NP#+c}yChu<97DO33eRO(heu`XG8 z#f4`)_K`x~MF*GTbs!N}tXErdj}f~p-yhn2&LF6O&XdC0C<-C@Kv6cGq40;QCqLx) z94Y#A#vFQpt3FA;FY%W7ECU1%Ye_dJeng8Hh5cI6h-@IXakP10kSsybTdf5iX^Gw9 zd%i8| cCe zg+Y7A=HdR;yZBo+_iz6rk8l1X_gvWAzkZi{HnMkYsxM3)UfA6J4V%H{U^tK)HslSI z1Q@jI=FLK3VUa>l<9v7 i1y?|EX;kk88=7oj=7a(Tu=hjLZ) zp9yYU9x^ eDvs_#-;FkpG>4$peZ#Z=#KsHG~W*UjK@)O$XR6$CGfFr~X`5Zz{TXtNr zu l^%=hY@|WA%{h2VDG_#G>|>UmLk2u zAU`%~06I_@L48c!5D(~M=&S0okYFb8 hI&6j&IcymGxI$`b~kJ)Ahq*nDrp@bCPG>S=L?Po_+Yu=1C}@tKzzEW0E@9C z#Gh`1PsY^(0<1pRUeh@7v3j$@rjYq-b)K;UZ33N_W*zD(=NZ^kHf{>ETzG8f29__{ zKR~%Jz&grqxY5z0`Omz4p>MbTE%4>`+f =B i-z>`z Y}wJ?KL*f28}4u~|bVvUY4Zy#xSP)@oVrGg+%w_a~{0)SyrL zABcEC17aWBZ+n(wq5G6jAw_w?U$iSEZiSqO;iXTj{fiy(aj f bQqst7kCr& ztU}mId(5`ZSSsYUP1Wh~U4|)fUd-2)g}T88%eEN5u`V)|6w)r2N6CvOX!VFgqEKF7 zIe%fFFb0AQWfAOI_S62N?`(hlk?seVHj{(j&Oxm~pXx_JUi%C >cL8 zg}%li8XW3Yr3U^c=8OIo _87S4y%lfN1DK3>!u;HA$$<0X$5ImgA$ zKXRndnKSyb=ys{YT%o-9+dIxPUT$$_a1IK(gnp^}vJV0_pp(4xQ 5`sLeoB~A!km%&cgX{AyU^)NoWCXazXI>5PFY_9{gmPoC(JGB zIpuZ2eBy8OrQ7m1gf_GpabJTnQI%DCQ2mOJKzu-pkiWp;TEsw?H~YauWW-RTn6z`v z5_sT 0m*I^ioH7(hmr4qXFSP@I>D5sPRiY z@< C05wbt zyi!%|D1AugJDy_BU3RPa?CbGAvk=6TiIa3SeS5=A1^KC%f5k1K&7)=(QSRn#X+Llk zIB+IJXcK!*4s(-@*7TsjrhRAAer41C#HQ_u4coVmT-I }AKs&F z5Z*5LgBOwIA~`7sdJ#Gn%!zF#cHOa)Hr A%ei4vcEMDbic-&{uR*`nTjQ>j@VgvkzPA+IG z2Oex*DO44tB`H$J3_Jzi5X(={xS%ONNlf62Pvd^f05=}c<~u&QC5^~)RuN6vK$oN+ z%B1T@>pkNXQj}$kfHWQ4+Kp2#4k?pG*wnl@#)z`aE7uf3kQ>XAKas`Yi;ps4h(x<< zy9c){NNF98xcy;H=n4nVQTgEc5y$2OP%u#1pEN+@_#%{79Xtg-7{~tob>nN(|M+~6 zI<|{L(%4?-!uU4c2Jti4Aen9)I5* ?}5iJ7aIMPK5PhF~=>( zPJ@ ^?UD&u|^7}Kr4hhy~K(X|iF9HKL}494H!CxIJdbF^*WX2Wi_UDCKPDg1(X8ki*4 zxDMJ^ZhMHUneHQj 0fODqeK1kzj8Gr|hTs@N{2Dsf!R0dtq{ Ic&ii*yOOizu9qK3?jw&uW?Bc1IPb*@=FGBF|chP)ai3k z7W6FTV8e;eCqL!g`AKr)Tnb&!ixO=(op)_^P@@2KEX)MWu8A$^vCqtJLH-~$2FK-X z1~FRt8ow{ G540I|CbBn48-UcaN#dU0}%As8{;2QsV&i4e|?husRkaSKZ^r z8$-X ~20v-nX7zyW@Z-R4p}sz@hc_wwoXbPPdbadGU~FZ> zmV<*>0mN;A7kDyK8WX(0(|F~EmwD(1#jho#MZf6d$_pGCZ!~?N`~DSPqv9hkqBCKt zs??CW{G_TnZ9n2!Q}=gO(&fRoa7=wmT7^FHi6h@q#HRQI>3oZH9TZS`sFtduE~FHH zdfi;GikkpUM}DA{N+*p;m(^4d5AtsKEq}yqcx)@F1UT^YbK+gM4RKJ-!(3GvKvjh| z6(gMwZ;`Vvps7MmrPHbdU!;MiJ=8~A3TZk#5_3HAG-laJucER<(q|v7>gtkHNfmOE zPOHGJOIjsPhBWXge~FM6kB@k#N1yCVmq9-$l`7>p=gW9N^MG~?ED&CC>9DuA{1kM9 zvinTDEcYZb0pfuc&PvnyfiWD`-^F?w=7-4{Vev!oFgJuXER26Ibi!N^=7oIzJC{2D zm3%S%d#A^x&Oe}^7d*`4&2LJ5e~V~xrs&I^{kS|@J%@Zvak&)NaG>>K4M}&vP9*j# z{ZxuMHqI-KamM^)t&VdF^FjanI;^kG6N~vIkN=i>{P(Q;zr}gP|Ai}*#|t0otnrw* zb|P=a_^SkGuV8m!F%K`i0Z?!vl`6`$=dAd&JyWRxy^VjvExqBERWgtX?;%neVw>&2 zMN>cGO-rSy8`6HO8VzZoddmxs{tab70c0TtjCRgU<-l)sI`$- X@DpNFeL}Bv^w$hBi(9d ziqA7n#^FbE$v_`;K_ndDFg2ZA+lkb-@$XEMQhwn#u`OzYu6)N6c{)Dfliq!SSd>7D zPw_zwzP>Aw@%V^S46XCjP=Ep#i~gb)lhjFMX9C%uzQ#+ND+ArXYT}{yE0;E3`f}m_ z9v3#Be&YcA2k;?RCYhZ{z`Bdcs2D&V6vpK~8y5^48|Dj#iu>2U=Hd0f$A8!6@$J8- zf8*xyUGCU4-#z|x@G_tWlR+^t)NnIpP;PWUpnG)ckWYWYL!R$<)7wW0!ik?OP%6dO z7Zb#cPHLQt&JjPWopEv0klqz?xF_(3r|ZDdX=`y}RG9o!Y_?sWn4`a8)34c?l&{>7 zU)i*N<1qB}`Jeg9M(rCHV_q;kLDTL#8`CSiyBj|ILsO}-0eA6mx3O7r u zVbR|o!MaJPCOz;6oHw`UukfV}l?hYhq)Iw)zSv?l@RJcX#EV5|5wnvGd>=fGLu|Jb zlUEkL>zDVeg@15?^E($f|7^IjLB2lQ+4wzv^6$bqy$oV8Ri ld*tIqeRc!u8!>eq@y!K~ u7(x>1 z_}Vm kmhVJ&BKCQg*xgiK9Vuu0*9}} zYb4oH iB}wg=PzXj@&1wjm_y7;RwGhi4sd#{6P)HJKBP z)5ZMYCU17Uf8d9D!h6!+fj?fr2lj=ZI6r<#j}yjAUqo ihDSOMq?)C|v zXzOKv(YG&twHGo*$Ho~a%ne06g}&OSg>9Vsr!qLKtJ`Gbt 7WSyIMLlDG zwb2 @ZF?`d{=p)alq$zWt)FOPkR@FN(y~y?KzL z{}$`1G;Pp49CQ|kp4QvOQYm$$t<^SpmBAcZr|-tYyEJ%s;4*)Un^F3%;zoWMGqF zoMDd=h_!{_Dn3CAlLI$%k|icLGI7?Nq*xR>0($J;QZ93_<-#v)oao+{ENsyIG5(05 z>3F~%)0q7FTjmKn>(+$6@Qbmq@Y7-(bzNkn?ZG7;vfC!MgC4C93Zp@yqGKax?ATxX zP5<$0v{~Cj-@d`e0P*g{&cJ8duKE(^SM2y}il3|x)-R#3tuP+nLH`B#`2gx^|Nbo= ze6fHS@4x~)^l@vOTpkWUkHy#vahdjqItl~TM+*N2->i((iBph*COyzQtx6iN1Y9$$ zoVY2_G(Ibbg-B8b4~X%W-0;947YUXl*Wcyl05We7V_~OV7vhAmW1v%uA%gqf=;D^- zY%4tV0?&zCQ@U{Q=lQ8;Os*qC V|+clN|@@-^ZO_kwKEb~Vse*D0#4L|in`Q>iMjr2JE)fU?5Va}cQ{ z5;;;ujyLgB{k`Ggx%sXOXf7biX*zg?r|Gs2{^D(NGaN*l64SrpmUld$ptM7R7{I&` zpnxT~mN9RZ &?^sD&?aO8Y$}op>kxIVB$Wi_8lY-*xfv>4NVq z 2uC&~4U$N*)dwt+yOt z mwaRbW$3K#0;<`kU~j6;HwcnA{s@#$VT3V@F1vh zQtCkX@r8U4L~f9-p}47B zJvZVlk1n9fJR>#}yH4W!05-p!zh=k23%JGcWb-<)-_C}1|Modo7Pg%@y<+z(2ZXD3 zCw9Fg^RHByK7Ib3J?|g6e)(|lTgUo |Gw;vDW>P z4ZPvuU3%;g3m0Hx3?21 0D4XKV{ly7`y6CKZgAvKg0#{ zn|9M)*lN>8KLB<*ZE`WiR$Hgg+fLZnx((pU6FAIm+UpLz)Tz^lRNLg9^e#16P>Th2 z0EOT2f5)lgp3RQ)>gt&Jn#m@p|H`8=MGWr5U;{CD egr~pmWZ;YsObsy+U_v;PuL7cSBut}#s zrR|Ij20j?{y)N*xIjdox*-R1l-8N&)1N6>@ul43~;R-m`q?ih65CMz_JE%l zI|H8${5Kdgb)nDjE&Ogb}%06`bm`VIh=IR~WPI1P^eEPlV zOPjNXF2+Fc;~{UP>XKaU5@N;Q;ws{{&}Cqkp)Kxzi5Ct7o0u pTBeM>3<7GRow zZZtCo-WYM8I(%