From 15f7a83dc1f7acc8f41f28d338e66479029968e9 Mon Sep 17 00:00:00 2001 From: Zopt <100939012+Zopt@users.noreply.github.com> Date: Tue, 16 Sep 2025 15:35:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 149 ++++++++++--- app/[lang]/contact/page.tsx | 409 ++++++++++++++++++++++++++++++++++ app/[lang]/layout.tsx | 66 ++++++ app/[lang]/page.tsx | 13 ++ app/[lang]/products/page.tsx | 109 +++++++++ app/[lang]/solutions/page.tsx | 135 +++++++++++ app/favicon.ico | Bin 0 -> 179344 bytes app/globals.css | 88 ++++++++ app/layout.tsx | 91 ++++++++ app/robots.ts | 14 ++ app/sitemap.ts | 18 ++ 11 files changed, 1067 insertions(+), 25 deletions(-) create mode 100644 app/[lang]/contact/page.tsx create mode 100644 app/[lang]/layout.tsx create mode 100644 app/[lang]/page.tsx create mode 100644 app/[lang]/products/page.tsx create mode 100644 app/[lang]/solutions/page.tsx create mode 100644 app/favicon.ico create mode 100644 app/globals.css create mode 100644 app/layout.tsx create mode 100644 app/robots.ts create mode 100644 app/sitemap.ts diff --git a/README.md b/README.md index 839f8b3..a0279c0 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,124 @@ -# Onlook Starter Template - -
-
-
+
+
+ {pageContent.subheading} +
++ {pageContent.contactInfo.address} +
+{pageContent.contactInfo.phone}
+{pageContent.contactInfo.email}
+{pageContent.contactInfo.hours}
++ {currentLang === 'en' + ? 'Map will be displayed here' + : currentLang === 'zh-CN' + ? '地图将显示在这里' + : currentLang === 'zh-TW' + ? '地圖將顯示在這裡' + : currentLang === 'ko' + ? '지도가 여기에 표시됩니다' + : '地図がここに表示されます'} +
++ {pageContent.subheading} +
+{category.description}
+{product.description}
++ {currentLang === 'en' + ? 'Contact our AWS experts to discuss your specific cloud computing needs and requirements.' + : currentLang === 'zh-CN' + ? '联系我们的AWS专家,讨论您的特定云计算需求和要求。' + : currentLang === 'zh-TW' + ? '聯繫我們的AWS專家,討論您的特定雲計算需求和要求。' + : currentLang === 'ko' + ? 'AWS 전문가에게 문의하여 특정 클라우드 컴퓨팅 요구 사항에 대해 논의하세요.' + : '特定のクラウドコンピューティングのニーズと要件について、AWS専門家にお問い合わせください。'} +
+ ++ {pageContent.subheading} +
+{industry.description}
+{benefit}
++ {currentLang === 'en' + ? 'Our AWS experts can help you design and implement a cloud solution tailored to your specific industry requirements.' + : currentLang === 'zh-CN' + ? '我们的AWS专家可以帮助您设计和实施针对特定行业需求的云解决方案。' + : currentLang === 'zh-TW' + ? '我們的AWS專家可以幫助您設計和實施針對特定行業需求的雲解決方案。' + : currentLang === 'ko' + ? '당사의 AWS 전문가가 귀하의 특정 산업 요구 사항에 맞게 설계된 클라우드 솔루션을 설계하고 구현하는 데 도움을 드릴 수 있습니다.' + : '当社のAWS専門家は、特定の業界要件に合わせたクラウドソリューションの設計と実装をお手伝いします。'} +
+ +pEh5Wj=+HBKJlINeRf2NKM*ir|#-T~U8AJPtG(6M9` z?wWJqKJvP2>(?E8?B<-A(_@W-zqiynh&)cnZe@UX@h|MbgR;yQa-VwFop-`|;l~^` z=lvQBmyi6?f#|`rbP!^Xys877_StJM|J*?pFb8?d=+Ry$>#XhW$paaLgX+?80sB1f z%q4)$g+qpjw2yhlv9FtRgnuuC;~}Pl82^PjTp7wT=YQ*%F-7!sFlF*&?>E2^JdxSf zBfg0X*yriOJG6;eQx(q3-g@g8KbPp|bRBKm4!}h=qnLArI`aC3|E@dj=+<+-EtVU^ zJdfFPkDi`?bY<(Y{15XmSK~PHcSQ&9N2(=){u5{b;Cb=SZqT6Ikp(V2W5C( z$C_Bys%HJjqj?rvkNCH^Ko`v6pLG+LUv{ZqKNHfY&brf1^Za`qIG(I-tqhib?;G+M zW!aAEtFPzOdU+jhRtNA+C}8h+fER4O!&X}*V{RE;v|dXz6=Os2U~LF`;1c6s^?)UH zY_Zv<32Tfqe-WI(0IZ-#AT56Y{>;Nqnm93&EElO89^eI@=rf>~#lPyI4DYiC1g}$vJ-XR@&pq54s^?3Q^w+5y9xUCm_;(ngvo3DU*?<1?pOSU)jKlIT z8-j0w$HdV*{IEllH{W=pBt2!IZg}wgyYkQ}hktZj&;NF1@y{GBZIVD)^_$d3Kpxub zrI%cixqeH0E3TG**?+nA1OM seNtW7uBDB0YN-FSA# zT7uY5{?pq({>Sm3 c6H WZYeMB`>`2LNa5 b%Gu<(v{u=qtIs0s1j%S#<_Y!Sl>Y`3zk3EBZX#278Gy0JY$q!)% z!`-_^`eB<{Z9@5~jd`z$I^iE4upNuN#y*yR+Xjks;A{^%JX3$xJ#TO7A9YZdu;(5y zhCTd>|Imh{1Mf?XFWP7Cy^`01^$)d_2invD?*xrQguQLMmUr cH9&^zg&XcQl0z z(1f=74cSdO*h?1iZ|?^vkNrVUGJsJnZ3$Y?EX8|h_u^YI{7VLOB|8dbKn`q_Hf{Y< zrM5&_Xvp57E8MNWv~~l3;x`soA_G1GKS%#Se^ZW6A`f{f!}=BZnHcY(zbwVO 6^ZawMC3I=yw?NF?MA9OCZfTu91g6oig-I(14c4+~}HiS1s@5$RNLjuIb~v z9F7k#Wb8w~%GjHG4+3e g%Hb)`JI~ tn5j;9AAcwL^YN9aqS&{0zML^)uq#Ef1Ri`w0 Rc$S z({d*w?~~=6?i5yW>C;?z%!S!5@c!F(E=1S3x%0Byc`=4(ct-|gK_+BFM#<~r)$7+w zZST%M<3hCGcjxCt87t)p*^qJjHC8FY0NLMhp;CH3*Zjze%;+C`0F$4qEY mv(#86yk3PK)yK_K@`rL&b6h4C>fh%X`Lkq=jlZ+< zmw~}NHMWV#5|cUYTQv49XtY#b}p0SEB9)HfQODGM2h`4D(xBmGWWpTRPRIExoj~ zrEO&?C3kq;mbEm~>P XTdDXGX5{n*jh=ILEUX{0X zFyDB!d!Lv6_?UA912D1kcASGJTV6b XaW*P>nBdj~d2YEtXqzmW^^H{9 G%jRO%7qJ#xKkVR&p_lvh=l 8wd(t+fJ zC;SlWQ&@A&d&X<8<(~Hh&u>CofUfYhypRrcFTCxu7ux(|k3K5#ef)*ngOEMkkYCSa zgcmeyJG2;N>0k0o@6v&P*5h=|o_GKH*DJn$)+b|!tfLnX@F9B;1|c672c@Z3_9o0l zQ_uEddrkc7U;j#WaQhfguf+fwp$!NFE5CHXHOUSip$?$UT14K{4}X*0ns4@u)w8`U zKCB&B**PC#4jpJxFEMNKV$Y+&MbAMgW1riG*h^kvpkpgPd`Jh-f+m4=T_1e#eki^_ zo;7P`a^w+*7uGw5d{|vr3@qk_dYzr2d&!P$V8Fhctal54>?N?*9(xq |-`y<+pZdZBROZCePeoH~u#bhj0CR9HabtIFEso1(}dPv;ix-bT6NW z?vb7STeR+OFV_c#d&P*4*I$3l;{&ghg?D_m>Q!CHiVYyYY(cgUPDOm=bq~FhPCTLP zy*=os_i}5(k>BgW@qsO-*+7x*U0%wdd+Z*)BR~6czWCw`61PFj9wP9F`~@4x*K2W? z{F0qGD!;KocwpUYxj*DDTJsgL0c2JX=GcjB&g fvj2Ozzt2AVv|fH=i`cdNk@Nviq^Xl@ K@xCuwN73BVdeM$qyd;x_!;Ww{S PEp9Cm*1^}Lv}B} z)2YTJ@Pf<=?2G1g?=Yuc_N96vvL{?vN9>q=@8DH@Ti=UpvG!k%{Or|Li7t?zb%3;C z{FvGz@*yi2*g!vpu2^fTv2{$oQs?0Dq!Ul{@)zvR(WWls#|A?CZ#wz+^|B*B`j9^s z2H@a> }qX57!VU^^Wek#2FD(AO!Qqc z*5tG2eAds}e@y@7*gx$Oy%hOB_ijd|{%^lty$a(OYXiuNFHn%|*a-RHoBgY=7&_GV zIp~zV|9Kyld%dh*z5nY|X#dv#rM3TX{8NzM@d!`w!~0D1E#>}b|Gamval5qv^c)7& zgZvur@!kygJG{riyFKjZS4w{0|2baicc6*<=n|RI{C}4G*evq%t_%B>m;1v`_usF# zAGb1gWem@|OVENZ0<;M_#`YPz=zSZ;J_O#iVVy7c_@(4$`~$DlqxM#<{2Gfui+6Tn z?+c~j!TyeXM+jL6{v9-j0d^o8hpzBot@~}a-Rj?mVm^gEU6CERd7q0=j{NY5{WM1Y za10 xgPDD~sLvx8he#`|9c^vW1s_i)$(I4JboZMWp9C!Z`L`{*N&`27-)pZBT= zJ8X~s>*t+{GUpHAO}-zS^8JnTt?K(?_kX$v)cA)yv=i$C)CQREEcK2FvLEcev%q_7 z1m>uPf$SO_ghi*09sGWTti$KKPftDdlwXt2`=7igZ{_FM&VPm&=>Avw!msN7S8d<= ze|!I*<^zh_fYaMeH{BRkTR7%@0%VuX5_=4=182+rUAp}HbZQs0ZQi}yvP~Nw({}lm z3IUyC_j<36d)wGMbz*?|4{Q7I9=82* G+x5-PHP90o%M+aKW`5b@TvF?4&^mo?biFeS&XV~va|90$` zrvI!qfZc*~`1|1f_x(GZd`F}Z+ mIru(w=BPBb&tKr z nG7{7M_=pV (@>|)fvHO?}REhy@5TDqT{Q~=@Q-|7nO!k=Fm!o@O zfZPhQ8`=QD`T}bQ@`?B$`bPTV*choAeNzTn(1bR15Yl81{e2~}r(q!Zg#mS7XC4FQ zZt^}+d@&B$d(S;R&)hGRbI%lFLmA34-e$}RO=PAH@D6Pry=TdeP9_hj6ca&ON31amaZQ{l%5q&dem@{pH%P0B(;bLi5!pFeWAgFkwZ?DBW; zYV}^J?82v741E8X*Hr-vr$6p(c5!nvJWF6c5g7@j`34-<$irNLbj|#+)wz}3%H0Ur zGuHr@g8_ULwTHYdgg79F@IbyW=(=LA%hs*jX*#b$?|MfpwQX4WNymJm`o|a!@J(Aq z4&f2XZI6|YGG1m^o-s#g>$LSy=i*H~%Z@W*y&sn Qdu)V`;hTOWQcLQ~t8B2b}<={|+h4WX)Q@}*npkIQn8^1<* zFb(x> t~QR* EcIGXldaJ>(!_agOvT;>=li?1|U$~~V&yTmn(ZPdrf*CAs;=G^?>|1<*Z z6Vcg)Aubg5iRjjFpNJMK|7bJLein40jSCmM@RSShy6~k7^VIv4jvx8EYGbt_WJ5+| zMP_6N1K*AUY<}y`pW(v)(tZjdzQ_&+zj2}9Yx2j}ySQq9>dJ<7{ala104%T KH7*1Z-$?|I2ME&CbC@zBnz<|N43LQ$IT#${8m*{Wn%F_2G@BGuO(OgG($= zl~`$fGuPy+lFtTnbukReIagu*8vD)D_>_{{-jga_s!W+U&GX~pn4H3(k~l`E42-H8 z^Tg^3&y`VkNt+F6avZ}XZH_C<8>3eXKA{n#UCFs>_z3A+dDAdSJ8#Q|bgSX57MO&5 z=(rqylvlCjOOwCc^P(fVip$~2=21Bti*_}!rK7a1FH9>BvFeLqz%|a>`EflH(Ydgk z=-E2L`m>I0Ii*EY{DgI;9ourGMNe@WAG)scY4lk)$~qjbgNvS}#GWyPG(vvTcnQyo zH)8Qe9MadZ^hB(4VQlGG`lQRL-_lck&^-LmLzBlJd(6L+D{S=qNypZnEFJM=`3ZRm zk8NI+C$@A+i$|*`rFAWamuT90LX31xd2QXIO As-<&9NWC5_>+EOafnsOQ^=R)O+1A4TWnM(ZR_Qi|LK?MeD2=u z;X6mHOVP7j`<$9GjloEK5tqZ8?3h^3knK6iAfBu}iN38fOq0jrN_l8OS9P+6fo~A$ z$9kTD=bh`nCE%auyJz}(#!Z B&Ush+ zPWQb}-aA51;>oVX5Kk5-(Wfq3x6+me@`9^)@NLJ*OkLo^I}YJmx!LZU8hnd`JcTte z`Lz<_C)AbdCJr&uHDM|Ki};d_ Qk}xV;-hoK 9{o-l`zDRK 68}A&Wmr}o3vt}hnA9 O{FuH!fHNvxemHgre-6Vsh|ByPZi zu^rkJn6O?Kx`eaNJR@_Tj0=Zc;Bf_8bY=NSYh&1tZCe%}ut5g-9oaPRM}+Ux7QjeJ zpuZi>K580^WZ97Lfd_BHvK`k(c;B1#+pJyZJx{QC-@PZ8^@C^L_XHpGEL#rs6xxr) zNBV=eG}~b>#g9M!@!N@6Jn0(WW97TqV4S8q>a_K%eTO>owv+ccy#LDBu$=d2=v(1k zYvMgV*mAy&+4?O;<>DjU`F5)9(}h7+{O-H6-8;)W723c2qj-~j!=r-mv9^QW^_^4R zfxZ2<+cMjf 7@^3YeY*9tziF+cWbVE>w;cJAn_{xthZ#m9_$ph+Li_Zutyd3@ZM5^Rce z=jdCE;8Q{Pu$RMi*Itvk|3bO^{O3P!`Mo@lh2Z^QWAL%|(@1<6bK@Hc;!SM~EW#k% z*z1wGfm-}LK2FEAzz03TqitW?HKKhnzW4aJwgP|nTd%*o4G9lFx8v%y_Y%C{#(T@m zpN2pBZT3tmXUtJ(Ulsc2So;d`p =s$e?ceFc$V(Z` zm%=MF;c?{6)r}8( _)p=nE^0jjj_@j=goTBlaGmAJYCg>{VXQkFhOS z3m VcK`Z Mi z3whEKh4~F91Nh_f(tHoT7@u5f{?Pj%*FM$8q~i;R3`t|7a2{-Kcl*xaPyL={t{oKi zEX&)G+8a0tE1ox8ebrUT6K;NX^5c&ulP41 -|oM&m|XMT&OoK;pfNl zcB;0OhL7envhc}jWB8J+`Bh=V{RlpUfJ}B@H|=XCd$RkQVHdO=V)ioTITG*p6F9E` zU2HS_wnK;!yfVI!uhX~--;AH7t!VB^wo}S}gby|Z&bFUN*CTJfIb_2hvu6WiIrb+5 z6Jb-pC*RIIKKZ@hz^FlR*T_Sgq)(Pl7T#dQzVp{zcWuHmldK>87CeKGw;j{Azz12& z#U~sG#riSo>FJ(L%%0tFj{Z}(mg26v?sRi4H+c*h4-jr9I6mvcP5wI1Kt|k@65KUt z)Q5T+^|WsG^w{rw`t#41oF9Wncx7K~__nqa>({gF$Bq+qFAqMlA!y^<@I&;`LodIq ztZ{3WZkzHNefs5>UFQ9M!FJquh4!GfRmyf^J}AqEgc0@82Ty(KsiqXMQMBO=9^n =Q03&BZAx4Z}&L2GZC$%H& zhHvP=i^T??ps}FZmHe`7L2XC2k`^nUFajHkkL}N>*S0mr7}zy!e{TP%lXf23jj+jT zSLN7_@CxyX*$^1{cE-3dzzBbY&!+DvXU?jzI8q07QK#K!9KBg=!m$oI4{Zn8g+o@{ zSd6$wreD3>jgMku$i`x#^3bLZ_7$c*#o82lRDY#5)fjBREeoGgZB27U@X8pHu`6Te ztot>|TW$<3?r&IM#67>Tq3)R7l=8=tH_K+iYbrx5I|LgAbU~ly{gKm=)=a`5d}^Ex z@AxI|X}O1Ho`JcTO4=TIDZ_d~<_ v3`InYx4x{f5TJF}rE3?O2>D!YF?q3x6@6 zge>?b=8yPZ9P^Oei!mq6ygAPnc(z6$%{i`Nd*o$aj >&t}P13IJLw^ zI8};K=(lA{l1cL6qi7r4oAX?Rxe%T|5=e87Yvj?KA7u;Wjm?C97@MvkHYML7EC(ao z-oPk^lf}y7 #>1?L-F%b&CDs9-bPYq~&NQhTZ~HoSwH*{@lANXPsUwreqhSBsNv zck)rf3%Sz*c?gs#U?Lv_E~bAHF0p SSm8H) z$onYTg?yFdx3RAK_G2&s_n5s{T+)1vcrQohJT|-oUlJeX5q-tNh!~y}EKcav_jCC+ zP-Iuaj5v=$A$I3zJIZe{k<hs9we5OMKc`vXl{PZ=kaAfu^lXY4MYWlWa;@S-d2- z-rKVFp=;z1F$wJjY{ZB7vT+%Bgg9v5r0{%M$F^?L;!Ux1Y2(nYz^j~~axqMr02j%x zJ*BGN-zLOJ$HIu%;uEH=++jM*8y?#_RBsqpVKc%;``grHf25Ev9a|YnVHL_BI}Yio zo-l3%F5qMLM`8~t_L8c}{#qfQ_BfQS+G9)8rW=Wg>;`PWBDMz^drDQ^) 79?F9w6c{(ian zzxfEvN1(|NU?0+6E=+Qvun(!*lyv*G>w`O8_{mqb_;C;4=B}-7;6gta#=0=W1={oH zE_~xcP5hRlqrT @FxUA0 zmuh3Fa#b=<(uBT2_g1NVHeua!y-qMko=UI}^VS#--Pg`_ENU!AN&Z6|8*^Mk-rse! zxL+>G|Ial~V{k6FY$LD%d**X~k@%O3ANlNa1e>meMin?}F6|eEe<{o?zLlm+(XLPj zjDeWDs|o(4c;kAl>dK;%#YYz2Ja^5yZm(t4k;PkZZLVT3o&z3gsuR@_#umFU9edtw z&xQGQ9M)lve+n6G{neyv!E>x$;bmisZ>4EVhjgq?&ecL5OCznGrZ{iwEjJzGBgCpw zth4fmv}5&`%X?P77~Sw($V<7$Asu_1#Z&B>ElWD&Aq&fJjgmdiDi_uf@(|;*l5-(F z9f$SmIEz=VDPJrW?O0q6&tW-RM~p8p*7>xxbXE^Gzsf1Lb%lJC!+R`GNJq!EE}IrF zrDDpE$Cg!Eb;RNrk2)9T7riuIgzHAFTl@Fo$d{%A&MUv-7+uvF^1`wBEH{qP;GF7E z9OI*!bE2m>t^PFrZGO=pj`1Q4xxQPEU6b+S#wC09?CIChYCUZjTivKUaY$cvTYgBV z@tt-)EHAo>!+Pzp ;@DB5J*Iw)2{{i=M*Wib8hzIecIOI9)Sosx;UMLedg>p$YYcF9srVr`S z#;R9*gt6sc*Hk9tReXv+*){QvHw-Vl;>aE~cib`7?=8c+f4y5`--WR9Ku@$w@oxD| zOG^&LrR1S*;VHhXY_YWR5vy!W2INuw;wOxe!=6)qi-l;1*n=tOPOm$y!F!eW+;g|r z0eSp;DSA&Qct=Mvs1DUDJ}hsf({R^$n_o1DMVDB05lbfc5Z1DltXO%a3+RZht&6ny zu)L+EmDkd+e5ziLt9!?X`g`} f_adSV*mtEkro3ob9oTxsi{(`~$6}k0 zw8~qW!U(*CJ$w|fhBp`1b??UUzM$k(J65dxl(jmL9&DYY#Y@PeJysrDHpE`_dOn;@ zbIhKC^ugf|Uv&MjVg5a2z0YR#K-nxEh#$*i40oNg`BXNP#mWP21?(N>k_jH`PCGTZ z>BbxVcU0h$a|&7QS$d@&TetYJJceoV*fOLozv9*M2~X^yHD$`=5PpA5pL}Nj{^{>h z20AE*Z{Z!rl1H*yd7vAU1#GQ69Pho?o`v`N*>8_AHgf76Na=ytmu*CQ4tcitTYj;X zkXP};JFKHdj*Q~ZN%j@!<-Vsxe!bJ`dC&6?UA5z|{R&I*sW`-*V_j33G+B!52)lQD z2vhb~ q8< O!f#$74Er!#aQ^vz zY>f=aU8yZeCh-@>x=w6u-`b1#6%X`Lqz^i gvc # WDF+NoI+jand7UwklC6{E8EvX$_S-?y 5 zM%hyqxd~}HP pFP`-aZ5rE@Pc79CNEb1F zt?#k+BHOpvvlkG7y}{Vix6}_Acj?y6^9&tiFYujj12G>Yd$Cvxe`1}F$rIYXe5mXQ zJ}$oK!cwd^xXw4M*q3K>x8EvqWXY1&2BZhY7W=Tzg+4sfR=wRj+}UG@{eaQIpn>N# zxDRf?v^#O}MHhJ*&}q;HN{oesGjWJN*jxM?$l_>gtRq>#zQb1Sljq%@snz`0gO>f0 zxd$r9;@W|4&l$1^ZyUp} -;JRSz%yeK z^d4&iU>o9Zk4xci$2*dR_^?9{$s9YBl85V~Mve3~2)(TK489g~o3_}8eqZ+DZQtQ8 z?7^S=uVaorDtRqq>|kYJoOGD`{xtg|HE07FKB!v!OUZKM4L4Z!s!C6Ad!S>7;4eRv z)&|ma&;Wmj1vISR$M(Tqeuw>~`9{wNAAC>|-#6ZPgQo*M^#dBi*}lv2D*LuJZ_`|t zJyA~bSU-v^vVC;Vep$~y|6E19$1*?ozyry~&JK|!)&}4~eSmlquf*at)>jqTKKMId zgAU;RnyarW>pOKJ&-mM|+_M`nP#cgBviOT<@fx;)Ed1>l&d(F%Z3%p+6Rh^$bI;`C zk1G4_UnmR5;Ex{=T`==wp?rG=f9q4F0~=d@84IS_J~q4Eww?Vvf9zf{#$R}jZyhqv z0tOa;%d_RTG5D(=gSNFL>gM~Q)yiOHdhkJqzuPyy0sfIbO*WN^J>vw2f5 z>Y112p^`K*BfH1n`k*|&VAfRlt4`$M8(y{e;s4pUKiq3oV~Vg%qk}LM`5uRZ?hj?7 z@Y}afpX9|CEB{trOh#mfCV@J9n+?WpvK4FpX+FsMf5}$V_d43tL0!~|zqt3_f5cd; z_*^~yZr?>mH?2L(2g$C)BXJS-5#NK)?|1xh$y;x|RWWaA1@8UFKRgD)U;UOJH#i<_ zpH&Kfun+MslF8YV`d;wCPPu1)x{Q1FH2&>*@b~*(mWjXB0qKxe`5x>AI~g=^U`5~m zvAm_Fk)6FuLz}5J{;|Fn{Mmo_<(FShW3Qs~6DH*GcjFRhV@tk0<4;|%b1T9-jMYz( zA6r2O*a*+CzWVB`iufrfGqQsL{Mt4f@=HI}82eXWR%HLK4e%Y6*I$3F99B!_0e`;L zqHiV1pK44854H~ovA2Fw^7Ad3yT^|&eD|&-6BTB7-R B%z?Tiy_UU(b@6p43yXlDv5v?pc zeaVhHbScI^KW?_|^=F4aKFHWph(B0|0o^Dtr;znLu`-m?bA$g*A^v&4XWMF1;ooJu z?VSI4J)OY{u1uIP!TTTP1!x2KRO^Gh4)PeMV(;1r`S4jCw%RJW=)xf-pQ%*9VuP&s z-lp (*9Ka=<0f4>2~rB3|V|3>B@96$I+`G5I!`T0uxKlY|Eh2#RCT8=-3 zKfVJU*fAY=YCPln0jr06I)=U1q4Q(t^@QV(_jBa-`vG5m@rC~mZLfXz@!uRPg?D(J z@h2G6V*H~%SbC!WRU7d5JAK;m53<$r{tNv1MqL5_d>?=hLg!WoU>yc{ligE>{sSI0 z*NIMd*nYd@sw=NZ_--!GvCcfBfBhc(?%Bii>C;1aOCEFY2?k!zc|PI8kH4JFV*l3n zgKe7qmxI5(pO $r0Xc0D_O^X8mIZg{ffIo-?tX5)A?tbc zO+x14s=+@t|KRa=wyOTOruaL%Lr(DUI(OLc-J)8|zfGLz?BA^&68_!?IsB-{>OgG) zK5XDT!RrcJ%(nsPK$E#W|4m4TzrG8p?`2klfBpR1DL-Q2>VqHJrTQlM{&McWvh1IB zWcxSS7|-AK*=w(w+}C^iclcwY(t&RSfeye|?ZINM^OQNj&9R+)(n `#{Z+rGXy{`US!VV{Npnjl82l=*u zykP);Z2a7F&i2o;SUdaar=R+Ju)iIAP(A+n?^D+Te`H2>@c}0I9@)Pg`&489^cCuZ zp=HNF=oxwO4YY68*;e}ld!GMckJzXGp0mSIZ2c4$@4-@zVx z1q1p;Lg8D{#t*42SY241?BKo~bkE&)XPN-tD?`7vz@O*u$c*fb@jb#nZT*kzU-Ljw zALMMWqg#tHeR^f jH{`MSgK=z;JgVYA(gJ=hrTzpZv z>?am`u+TVAI-m`x9Y_c2m+?zBa9-uS{+u4SK%Xu!o)XroN5^1Kpe)a2vew>)f+4HF z=gPN#{DB{LI^UpiCpK&SK3IaS#kvywp{M&Wi@$Gwt_^hGdFSM Baopx<`E_aDyB*s%^66R1aZ5_694uUGO6iTk$hJ9jJip0M8qqu98!68vo& z2z`*BZ*h7?-_)%(fG;R@FZS7IpZV{w^2~xYb2c!RAh0HcpzqrAje7;Yd7l-?r*iG{ zbVPS+Qy>14XBS5vad`6Nla xZBuXR~g!l^+C1`FwdvH zn6@aNxPR|n$!zz|+ArmYEc-c`tlvo+^9X<8Cf@^|7GI0I()M}`f3<;dEJPcCAMwY$ z wmG z02st@j%Sng$bDY)}l-mx}ml1QH%>Ddpugz*KgjJVkJ_jD)#q*Y* zPfoLYaGx94OFy9wguiVA>W|e17z>2`f!3`cmvrFUf|GX_HL47ON)O16uVwC<=LbC3;Mr0o&q4xdQxBoZ zGrCJIzBuXb=KQJC` _++g$B0n zb?x*k+*J?tgL?sc?&n Q_x39&Ex8yF$}9B1i3deA+3 zQJ+vk58ht$V?lIbgMap&zvg{7=^#&N=N5C#UlwfM_#658EPqo&y9fJ EqV2l_hQH-m|vOU }@>nUo7U<#|w9CL;-%q zzv3+H!JrEK!M>{Rua(k4s0ZmFOAqvU;NpYPh1v(U>vfV5Tl)_27Ut?(g}Z!>`q*l) zuM&T-=Nov{=&nKglTNIi$aWN`=>ZIUd&sXf1*1ZLou!k!?}}mV@pffBt^E5C)KLlU z@GW^HUo5T?L$IGwW!ZwxV*H3_#lqjl(uLZ*e3NwH^?@FOP-r94OFj Uc7#i!yl zxvIq}C G!HOU^vwZ=ZA z&v7Z jL-7`ertB zcMUMD#kr=$ycYaLXn+McYd#08z)a(Nu=IUxi&cuT2mkrM`3THMU_Jsr1p;fhO6#b& z8GkF0a=&J|?bpuvP=8$ff0dOA{e *qNc})IAT)LwR!(Eu=0(H&T z!OsH&bcN2)9Xdppx)<`gM(6r*EeI>R;|pAP--Y=)|9NA84$pVt&n^_{8U5RH`TMu^ z-MRZ+z|YLr{VxLpbcs&axA*8a?XF=9=>7>8=Ii~Ji2=Gr$G$HJ^pAhQM&|4OmyH2B zUJ)BGf$;%-#C)Is%ho+@8yz#Y^J796V+V{8=a2P%`MQ^HN7v{a-E)t~eS)sdkN-EY zK L_h7wV}g{yzo35^{^EH9o=$_|? zKYRT&wG2(E*Gg#DSWZ2^pRfOnHc*Lv!o0CHojMoht>m~ycECLVYd7ZWKLvwIbYk;L z$E9LhrqXl`^rm$?^YtImf4TZ7rQ>R@ms@uuZGg3{P5#WMTv=?sM#|M_d$zo!rOVZ; z-gzOv(l#zdC#`;+Zv zIajIdY5CLW>%8T~rc23C>N>QPM`=r6Y4MR3r^ywbkCj&)s$cxXV(E|lq4b>r*?`?s z2V2l_XcwZPI989&S>9s2b1syz(&IF`I&XPUTKqLtta`#&JjLQta>vS8`lV!%zKGew z>at5OO-9~)bJDp}$HKP+r1Mx@tsPh%V=|PIyVUg pp1;*VImCnhi7qTsuv z{N8{6{bbO2=Or7uZycj%yPsfa57rJWP1P0S!}1xEBTeQ~=VP>NT}sDz(mC<1*vgcZ zR(>0cW?C$Mh-19#Tug3VQ*3F)>a%=F4(X0-+iue-dBg2xuHRQ*eU*&3=_dc3S#++w zCev&|v_zX&b;kIy{7MEJ$7C*b&X!l&))V7H=fo?ql|gc4#WugvmY(W}#g;$u9E(HQ z!#tKwSdZmJ{2`CpGHJf0J!Q&dso%$ZgX*4p?n$ DrKCMi$^)R-1l(sZPSM?Bwyl^Z&i6uiNvC4 H4y0@~x``H7| zO8qt-Ho(0BWwZ~s-zPn?=di^=^@ 9 7DDba>69USJ+!jq#yAL@1bt_hQ?7x9+C9ieYe832KFEHixvab zp?ZnMOUR>muT=jb9nn{v(tnYBj%Ue1yv1glCQm*2q|_aaxi2_>@L>PVF8d7z(NUjZ z h*Hw{j|PsV&&j_GPjPoC8~FO@`DdPNDe#n5HEkx_f4Gq z1q=fDC9~wV`jO6JGMBOeYcrOPrB9mn5VnN|dIy`l3|!TE#z z_esf9B)|E-i^aj)Lc|V)1-w~)tsF5-B(u$D%iFeJqIY B)}nyIYjew}nU- `r=-4TL;P78}Q8)pc7Qd7-O1Wasj2@I{cE z@Qn^RKJ<{kCtrN=MJRIgc=V`|{yS^>4wB>-ecKn5l38*PTRBOm=|9XT8WxLC|K(tU z9LPYQ|LLcnMrEgsOrAVB+1q{FPx7lB2nX4La8P>y3*nKbfB2R>HkQoxoR!zwI c3N#{~nfP2R|=2F?~Va|G`t5%#ukmDvs%2 z*KDlvS$GJOEIh!5Z)8rL`cx=#gX5WQOmN(>$M|nMrrALO3*!f@{?qVCvjNFTY-J^_ zwy*Y2Juz9)llVpV`VJ-cch5faOanR7PVlWuo*j#p+CXUg@KCM|Se=qCNB?P<2#>UO zul^o>g$Z~J8aOcd_S vx9vggUYLZw zP`W4PKKK>)9oI^JUw{2|a{Fz!`SBtcU<0y)Qdr0*R$>DdGo`KWC9ia!X6Mp9-%4%m z0(NlWkPFHh0}7v4UU? Ju$QqMZy0rRL+WG;VBUTyVpjdcNPbGL >9if79Bvt8#514G+meoF*sNkX7 19^WK>l5MK;$hR+fITK{WsS<~{J!LsZ$i)dRxf(z z+tdWoJ$LJo%$_~FTycFqFx!6HZN03}&XT#**hhBWSp5qN+a5x{Z}EWV{->XweDlpW z70DjU%=g+ax%i@_t@{?W>ZrsgX4ycN{ B%W)0LwZho)UzbS5>pxaJ67Va;o*Y^P#c$C}z({!(I z_J+1zO80Fx-^{NCeDB?ND~18=zz|FsN2(7fvH@fB@&Tc&(y4SzEdASaq?Om|AA0gF zp+5}q@cPexv;OkSE~{APath!ZHBUl)S$J4XLR@0)KTZEx{T#YcpRaaLymk9_$ $sqZp(@@v8-Rqk2sw}b9e_GqOzK}N2 zZp*gG6H}%{Woqn6`hjDQIoj*pwh6vb?&ruNZ36ohF2q(orFFerTaUGU{5`tg-i>?5 z+%h_W*T(#~|7q{A)Y!5}Ui@8#&y!rl(yR2G7Av1EEB%LUpSr_&9{H)g_uRv;du@#D zX=T55&kK${<`_Q?^nH!H&xrYew0nV={!8f|S>@}jt%q$N-S4(*_hjOP302+mhBC8u zm^tzFT${2!Kz*L?_agQ#d89|_l{iiJoaegAC@xq3Y7g*wM*sfFci(*%ic^zg^naYu zzuJWLiCJ@k!X_5mF`xBy(mlANf61zO9*y}9=(B$^ZCYhx{VY(xkar1GA91NZ&-yy) zkXSZQEB#wc;7L4kpMJ~e(OF_O>e|;|JN>(71dK7|Z_tU_M9e2@9AL32rGL%!lxq9* z{hMsGq33DVtXYkcEmjyT!PK^Y Pa*k1f)F1D_Zf7g--5nZnrW zUb0&KTR(@t+sZxPyXNYvGuL@$$x_a>w;YyWD*sBHX793rTI=89qI)6iPx=>c;B(*s z2c$mdFGt=|dA$CQbNY8U(En05^@cvtjsb*AmJM(%CT9cvyEaeV+q<<)Jlm_q{AQNS ztP42sfIcPdJ@j?>w8pf5`9^FhhKuxX+r)aU)=5r2>BJ_*MEdtOm%lfzME_|v&_G7# zQ+?lW?3{WCySq94M<02lqUU;9I?lR=eVu&biS_z7_D#v#Z^wPs&mGwJfaHZ2 zW@NEg(`#S}rm}Z12J>3#U%I#Ve=+@g-|uWqKCz&G$CK`buD#}(n#vy%v-)T3t#OC# z6XDN}1Jm>`y(^CCADju)bz;AMO**y-Wz{j5dRg;r>?hTKY%V0P|BYI=PFTm-ls~Wk zQE-q9F5Xi&o1q@Uskrpzs2>jY#C$2(#FAC3Xl#$)&Y zx>i>E&(J^j!FSwI{(7fsuxy}z+C D~?QmYv zzik&9v%r5=P(F lpomZP@+``u~aBzw|#h{Xc!bZU12(5ZXYwx|i>u zf8DLeuE}k;j!8ak#53G1y_S0o{|~mI{;iD2hd*m<`_~vCb^M>v{(1g6deo?L#i}YF z{{IBG9uWOACJM*JY4-tz_MIOO$R6zZ@SYERX?I5-b)=uuuJoB!t?q-v@n3`f-;8mj zf9X&6^NscYc6>w|0UNMpEUNZTd%W)2roaC?q2G`Cw?07QV*H}oMqwP_c(%Gm|MuAG zp0dz@o n^+a z=fSM`<$dN_=-)s8ahQ7j=P^dUxvhW36@@<2wHJ$*^bh{Kbn9AHA6ZJzY1gHH^v;-= z*!qAp8xUU7br^FUy+?KLY>PUmi!m-^Lc%64v~jv-%~z)mTNiX+Oa1dKeP@TMFebM8 z_r9!={eP+UFCSp_PhTm_;0N3ZJQHu~^&cmk(9i1v{cFu-YvTh#8<1Y%H!Ua+vVgG< z$Q0 8P~{rV4wsqlp_cts9u82xMgkG=n^Wc-(< zf9P2K%LeeD)L&>Xd92V!Q_h>v{!cvNga-N#eSozAbSnKSmL2H0AV*&J=#=-3&^3KO z0og+Rqj%Q%6Qq0M&NcG?U`f5wzhnV>bP&_O#%{XzD>eQvSO2klKyXx>(HQW|GtOwT zIaBu2;C`Gnaoz_TACP7P@|p0N7S!gs&e;9VJMM6Mcuw(SecoTk$E&_gP1|ou{THqO zboM7Xu+^CU)9(E%(SNyPK(+rO{W~83kNdba%dB0l^^f=CnO|aT?R~KNVLJ|R{eb3# z)Mn%hq~p}s@!x0v{oJ_zxgypX _w!bfMZO7U|n1*-m z?T>To3SWEeHCt^_n)gt-_oQC>{h01+seiry;dSqD#WzX+^8LE^qwU-FAM^dRZTb32 z-v6;<0QvwwZ|3wb9{^AA=5fvUmAv~@tDkhwm m3>&}>tSuDm09!DD`4s34 zJn!6uz1T|q*r%wId#BgxU;RG1xB7pw#QuM!>H > z!4BvbWE1%`*miXHZ9LyEcaH{aggHR!Rr` Qlj4`j6TGK0rbD2KjygTgVF1yN~lU zyzcXTjdU;lOXrHEd-&SH?NQMf-v?&wl`8#9_iFoD {#_^1e`$!wwZ@Hy^ z7moMgxNd{mpSKt8!Snaw%+Hq_ye{)&c+pcG)Tv;3BF$b8wAaHAJJj#>^36BZzxNMT zUETg~cHF0XzJl*hx#v%7`}6_w`-)5Xf6CZ?#M%J;O+o)bAE0|dja#r|_BcnkrGCuq z;Wt_DcF*18UAWuFce`|h;MQfbHnU+E=gy5w##b3ATOSPVp#FNk;H^H~ci+9qv}d19 z{_Exk8uJ4qu&TE0r|DlhC$@T5+FmEEF+*qrwht(>ff7D|`}U`we!4Nx{7;m9`st~D zeoOs6aa!B2*7r;2HV*Y~ZNT~f^lxpTqz`cX`?)I@^Uiitt_%3N8wl92uZ7jU#(f39 z@7kH>`^xS2L*H-pZquO+WcdJWfcBr|0}B0s)4k@{n)12e&t3mK*I>*ER@i`a9~<+l z?K2k3y62M)t!}N(ZQABhTIDP80h$l8_XGF<#xvdAd+al2O#iv7s^ W{XV`|Z9h%_(xZ(-o!euZPwAKqP@lB{jRWvY@G1RUAAo$=HqY(Z z6PxdT{ICDO04$iB_V}dv{k;Cw=a-}VSldUZR^PF-^sZR?C$@gT+Cb4bAb&rYY6DJ2 z?z8FdDw!AhrP&Iyg8^8SqkHxFS-M9*(wFq7IHv2^IptR@dZqLq+5q|w*VD_#F&1E7 zWbT{)SAWP32J(vy`uzObKI`|@{^j>=dsG@dNq07m={k1KmLYBRAF}~?(KtXh0MF_N ztPLQewE^b&YPm=B&&8II8QJX|pY-qV^|ZFn;iz^W>OSoAv)Vp-jOjXdF4TW$1F|#4 zb{ru6YaCFp0p|;lD;y6ZKi|4|sD}H5&+9gT?!)AvV*FEZv+TT|aF9a!DR+J8*X zS?8L<2GD;v9`yHx&L`~P+5-OYmpmRoHe^g|_f4hyO4`1)i7Xqic1K$FsD1!nMJV_I z#sYaC5ZVC!fyM*8=lV;$FF+>0Zq@boF`u8Nd+@`j62MkCTl~ZRIi@$O*K*S_I<_v$ zgKR+lN&P_CHjtkmVl2%4P&w=H=5;?W{*VQkcpj;-kGFZ}_rm*pyQW9|ewOaR-RdOt z{pIR9mM^A%&e{5EX#;vr!2AI7A-{xqLS#S|WMb|^GM4J^L)}-~_G5aj (%PMlC~eyRVBKP<&DwQximjuZ9sOA zH6BPE7dqTn+rx81o*kF7en39=r;6bbUU`lO?*)IKpVP0T-Angs`=PJ3_)8}?j_I?S zbC#w}+xkP^tPLPXmLEtP7wUNd7_xqVbrGzMnHTR7;0fN~5nj{Ue7XI7V|9<7s?l{? z8LM}tv-FQWSQ{wi2kab?<_Ksjh4$lYfHg5)cihpfC%n+DDSfHx^>wxM4Xp8l7uGnk z&J7+d&!odP@8@^8w>S6q>hJNB^P28u6VkhltqqW_$`9n97lk$;I}n~4JApClidi4c zTCrNZV^XP2P$zYt>DIUNJ-UM49dF_jy@$F-M*Lk&_wtjpl{B9Zz7}(<3!9eCY8~4; zl(zhY`VakpWNa`VkPYPL2x4P`&<;3ejVAAJ@SfBYZm%8Qm#lP;u5xq_O=$B@BXv q7ll)$!rqCrcUM+k5+;v+iX}(z}f-v4PaSfM*6y|6mjw6R1D1cA&OK`(qt0@5=Iy zE@N-@O<=Ds#^U(ta`s{)4|yp=S!h5Dn)~dvm#?GH*3oyqy^9ZcE7j)pJV!oXZDL+- z_tL#$t9zv@u>r{(^8+y(uyckD>;N4Yzl#od&j)*8FB tu3Yymr bxhrbFFSaQs6Bd5i8TZ2dNE`HjgVS&8NIWCIQCz}Y~-AGono zXa^c2TA$$Cs%$|%8r@YI3=L~XF`cWAFVZ`_r|4dC3yT;|oU>S3jBUDF{kd}J{<~_+ zTOPu+ QFnk zI*;jH{$72Y+WkDDd)hL(|E5~~Q!doIJuYPfvJ2S)xS)S)1DXCHrGH4X2dl?&($ckJ z*_!lTbT60pQ|i0amr3W6tCa37W;ShcRk|^H%a=v>a~exW{KR4_gVNHwV(CB27o^!i z!6!KUX@d$@S4vBdrDEl`vFPgF#P{og&ePgEx)1e^tdd``@Ud|WQ_eM3XZiBz{*zkJ zO5>CBRvx7#vyH2=1NsHiH&}b{x^gz5{z5t|H&*+W&Y|st>U6Q%xgFctHXqY_O!wd* zY!qi Vl0~u+Tix4qmL1r>!D27JTZpBrd@LQ76BqO>8b;r0 aovxBrTg6$vBO~DQV-8ImybgVecpFftq ziKTC1t8=S&__X|6UE8$PJLxo?+w(Ql7rLKNLwZI1lI1x}hjMdlaj|KOqx`92i@(*2 z)mNBKwGF51Ft3g+ZChuS&f(k2Vbd}BLyYWk6X^)uU(rOgy)9T7V(AzT7AKpwcA&KE zKyj!WwNb0TFfAPu+iRjF8ah^8ip5KozL6s)YYda{TodXC-5=~iqwfK-cnswUk7Kx4 zy@zRww@phQilwi{#-e9qTW=}7&!f6W=jeU|7iMMYuU6MWz1!oM4d`5`|JZS;500(A z8k3IEj`0vXCm9r5nbXp>!n*_=bdK&9cVT#myhZ(bWAdiS96K+}6vyxl&&70Ai*wW? zI$@pmSiFXDOupE;#$a1vS#*x>b1rmr;e8isrsphLF}c&ug*aNQD@{v(iYc!&ai#Ra z{2{M8PLnM>pM_bCuc2#nj_wJIxNw0BRX+=IWvjBC5QDU1VVM?(x@hX-G(I?=CPVCe zwYW8+96CPV1#~X`6R+sP{Vr6c$HtV4;gWVP3-@w#PWf{3ktZ#077uBBr=4#MZdH~= z$A5OAp!*g-rq_4ppQw^ yf?`e^EFS$u`peo9>Pb)#E!9MiqdaUC0(>wST% zvw;nT7&i7e%N`m_J1mbpoQugdm(QU~bh>^^qx)4_td!&D&W8d2Kp!#J#)Ph}RGdOw z8+#nHfyUAd%V)_mm#?8i#>ZP^4#c&u_^kmn=G;&&T+HF(UT~vs`G>IU+|tRsUJn zLfq%}aTaes;Wc!H&d?n?499w2=k?nE@qY{F4_w|baF5750dqyn7fx{DB^TatfoI3m z#X17klKdon#@yDqt W2+T)dJ_7Rs0(HeqH0ZxyE55$Sxm|bMX351@Slpdna@)=w zcFyIRxn#54q6@oducJox<>>IEcI@8l+2O}unagec`L-R}cklPgho_u$^6y``X3p_% zpK#GqTW$5*!(P9(dDkNzd}E=rj=g8&hkD%quR~wB?Vsa6I_&;a_B`q3Ij_EYVzWKh z{pTwm?r_JgkKNtl&|AKE@s 5^-; zWV<$XqjIY?8=4!o@T7xszso(@?2-l6Xf~uvvVE@e#^<%nJ-yS40~fmT_cL4VFnx(H zP91aV)y-QqTjHh*mduU%eBwi&Pi&T3J@>~&j##GM>UF=$9h&>H*+I?5F1x}jy@##- z)RI?B?7P5UpT2*K )bO7Ps{cCW8H;g zm)m0Dh0dBZsN3r;f3v_o>n%ELkx3`zu59)|vtECy+hOF4J&&9^<&$1pZT-~dA9tSB z?whA?IsEG0e;S%=eaWOp7s~yx{G?TLEBt1I`&;kVY^kjmSa9r_5B*>6&u0%9+-kj{ zufKKKh&DS9UToqCUo1KJ-ZyUAdQ!VjPtLux;8$zZy)tst&TC9-y~BGqwY}nsEzj6} z(SDtlt-CaLYTe==Zut4ov3=jZacs|(KL4`kT@w}?x 3#=@%| z_vM9eFS5qMeb*k)cEF%Bay@ci{ibf~-|u$SK?ncsjUHY8yLg{nPu+Tv)>9WbV#T`m zbA!%1amHEww^}xL;}6e$v)AnX&u#zc8o7@bJfdygtF6YLlIyznE(2HD=Dwl78@1E@ z6DG9%@b#B+Pj{I# T9Q|{EoRyyF| zj~3ozk3G&gYt#zuj@{v}&|N&h5TEEjMAIUWd%M;s2Jta>S9zSw|lJ?csa$?6LW& z-#&Ez+aLVlf{oUk{reY={>uX0n|-xZ-O7_rUUJ&b(^`*St=%%YFP7Y(*Zx1Onmg?D z-#xSWsHNT>_~?nJZ#%W)(o2nAuKl<}fB)vd7ys|PYgb=yyJmYGGU~r?Z`N-6=cYEh zJU8<2sr|lvy7{p0mtFhV;cLJ5n~tZC-Dmj4UmVb;=j1>A_M+T6&BwLP{UJB>h4JGz zdH&LMn}6E8-6^Lmm|L>dvF#oipZn 9md_*`}~%519KmoaqeHI z)xG!L9h)3=;|90a4c_nFCH8vy>R iLU+0$l^;$EI?>nQ-um5lKzUL49`h~%N|Htz!`gDKj z$>&e`{j?K5{GqP-kY_&JxY_ob%}y3v>zOUr{>``*mfK+BH=msKyF-_Mdqn#M>-Jf0 z)myG#e&lU`K4X<_Hk*FSM>{XS;aW$w9kay5-si6L=P^?TuJYR*|M>X2*S2oc=l$j{ zOzwTov+Y;hV%7@79{cRvZ@yW0(h7$xw)Xv}wV(0e5(~7S`gw~(JAKmPiAAs8YMIV= z&S`VSnK$n=sQ>R;oV;*dx4m~+@J}c9eYedzb>qh#xO?wSCjRl6q4$4w_2`qvHs7l2 zVq2c|->HjV|LbP2-7vP_pXx3 )PW&@V&{y^RG>mIYrT@QZH=HSUK z&l$A+jK8nDX7fI6zPaMkONS4Ca9kS`Vr!4x$wQK%s*#my{@=ec=X*>3nPggl+$KUSN|C03 `&6V4ia_8;HczRNEAfB(v~ zFRy4d=JHqD-g4f|Sv}9*t hl%daQoX!k@qK_e~aiF4t?T-@f?btNRcC zXz x&~pV)1K(?>ja&ggH(Ot^UJ z6)pDfbNh0O4QspD`#1b)^~ZY5JnOAdU#{7z`{K>J9eU>E)-9c_?Q_b)`yBm$-(A+N z=ejK}$ql`-d8 LRUt419A*Uw%$VTZR)-QwBJw|#oG zQM1N<+3%&!AAT}>g&ULhXSQ9a|F+xie)puYopwKN{Ge7{Km6+G%P(JRn>DZ7bn;23 zov_*hf9>D?met?*!%Ej&eB?TxwqD}W^PgPc#U)m2x!%+*-@E>zuRDJH=EfgP{{62W zZnJai^>>+l?U!@@_3R<*oOtc!i_QMen`^gj-*wp3TNc=G+uc`uZ|&ul`PMiBc^=T>a3?1dF7BDH|u-p>fayt{LYu2 z*6ysO)|mG1GoIUai5m``*nPx+Z+3mI;|u*h-SoX{{&d;_-`v*il^2H2xoh7WCO&Z3 z^%w1X!M``Y=*e~8_`_0Ptk`exK2yGG-KSfx6*_kO?WA)?o^<^J-C9k&{EEF#zU }iD-YuWqY1qT9hb(sC?>Bw&;x&eCnA>OHSBBlN&;v*R zaOe*Y?EC!w%bdGfzut?#c+_5X8!g>;+<-v`UpVTj_4b^4%<>z&y72uwwH$xl%_Gk4 zJ^j~9uiSNyr50Fe(Z?@8c$Z60S-0;BT~E6HkiAab>f+%qebxV=gWGO0`QXJCy!PX| zM`sMbYs+<)dE$oGw;elTSj)xUdGWQ53tald`VVZ>eUoqcyl~RQ=LW9SCAY`7Eq2^u z{poLCwfNV^JbCl7e?M-{ek+XZ^WPS~Z~jEf<`b6sW6Q;#e*fA1`mFbd6{lSH^k>^` z_TIgR_TJTX>(4*>s~4Z_@Zw=@4;%5s&_$j(>7D7FZ#uYDml^%GJZHyT^Dh>7YUGp$ z4j8}w9=SbVc t&IYUQFzJ;mx(_~hrB#}Dp0L!GKP Sg_V&FG-D|H$n=iHO z0xz%f(f3zRd||+^&t3J*gI4*~*F)P5e*J*vodzuYb>9VgE;Vi3|8-lr-F?STJ7?Ot zL%VGC{hq^@X}{jY?>AZE@ykD3_aFaydgAI|&ph>@OD_2C^Ipd<`s@k6o-^?MKHHtN zZ->68PI!6Pe_p-rxGj6G{MwDzytHWDvLnuKcl5OLo@_ql{d-%yefhne_HXywN1pF{ z!txi_ZPDSP(K{Wu+Vs|YuY2jYtKKkp-J=Izz0TE#-|)`f*KgLo<0=cb=-uht??2pX z(zb_B`0T=8P3+Qh_S@~+-;$jAr#)tVaNsLP?z7}!CwzN&kC}B-+U)-QJAc#on Ct|614f;?K4o(E77>-B)?N&Bgoe*?O5Pb6pRZv(4)tzO&xMjZbfJ ?N07HhlEx#rL0le*3*&?a<}g){7mx^!u%Pf7fru`J*12J^HzWo3&bC)theW zyxMQ4ebM}wz0bJq{dbrBLvGAQOFnXD?;D3~cT=lYt?DLBSbFw{A3pZnM>otq`Szth zJo{I#Pda_Ue@;AY%U}KZkjbwyzq^+{ zbKQqpjd{7vg`J1pdFOAJUj4=E@3`YPclCXy!<&OTb-7}T<@bMlQ2UM@7rN+)Bi{Pj zVRGV$C;oTlN!J|o_rE`K?TFPrm^uCrJ3PI^CP%!s()lZHdH(g?|G$H)j*H@H<9Bp- zcS$4N-6*M2iX2@6(hWx=NQ-oXbV`H39SuLayQRAu-u3+tJ}i4Xvop{0tvQSqRWcDH z!E g2N4_;dTot`i{N27caB`>5QLCA@-gzE6uCfw Lm#ITWuQpirm#RU`i;smr9g#ZhR)6{Gxv?*(ZM{5l7P&*tXW)Mcl z_RaCp?61WiXZu!`55T8yK3 &KPb@zdp~KB||L{0AY?agg)C|z+t-?FQ+(Lk>?#2)^CzNnVFHV~6x1RsHX!Qkm z@o2q&AJp5c qi;s>V{2f zzEFO?j*ng2h~(~Vax&A2_tnqYJT)o*SW8l-TiF?tDekn }*tI)Aez(Pbw^u``JKSN2i48rn+nV z_^X{h3=DfZn)KWp79L++Jt084p8q`aahC|eBn6RO4Fq$u)?xr@mptX!msH<*oq5D- z(GGhUlcD?=VA7C&a&YV+)>}I zCEhe=MqjIKoioFh#ljiJDgxZLrIHl9HoG{Qb~mtf8`J*Tr#VhnULLWsb%U_!aze4V zL{yZ@M>e;t40BZS1tH7#oJ~Mj7_ooM==FOz4*h?a;8bUgTS0V;w;<5E4d{zK)FD?g zEq@efDpONy=Y!l`I(m?Zk`G0 ua9hdHZ>&zb;`12_4JB3xI0V!i{ybBxyTe! zRmAjrRc$HYMSxgQwn^>#1i0K@f-qmh-DdqLc1AJ{T;GWIAawDZ-XBzL?%+y=z#c6a z- TYifFWJ*_A5 z?04)FBRj`8y>pG+ygv_Q(3^+V&3I*+o `@@`wR4bCQM>Es7{6*wB( z6-&LJ;Bh@~|D?bWcz40w>F;~ZFY v zOnwr GIIOk7FE^J?1dwgcBcBvag@Ff@ReE$#~a79XKBAA!M5ad0fIxU!^8r{Vov zr0*lIbiiSf?j5CWc s z$k6r~YyVh<;dd+wl|I9fXSN6m%ph|DsEYqbnuo{K?9Y1T_O>%s#l>*9>~<2P`*Tv> zuXY)o2E}BO-U6>%cIB8{sU2Rf?6I)0WF}o> LB6@_O8nzUM+ zehCR~Az05NN^dM>?8`&8QOC623%}COL@#F7C`YYNpT0M{jCS0fZT|Lqz@d_cF6A?? zL1UeFdY<0=605<> )2L~E(s zocf^IGnC5z+hs??)!p5D2FV$37U^)uLJgTBXbGQH3%sU?@qO{O&N+bd;?Fb`(JI3U zrTw|yfXCzbbK+$TK0~2KW)S~~2=yO#Sn&0=dmeKf_+hy}DGvi|WdM0XuDcEjss=eO zj6lRHzg!m$FVqa3m_J4hOFOJcEY-NOX^2|r8i&N< hpevEAM*J3y=$#iikqhsw2SAr@v|?dVG9!Qny^FGcsrHV-2}I@ zTyR$WZVV5X|BTWj@%bwbgWvyTLmi)Q*9ws_Mt~o9IeY@aRWI>Po+Dqb9e$hd4W|g$ z *Psu`k2{1X!-J#_LoJc*F; z1y-B!N5X8|h=*1+X(cMc&8_2|xYDm;DnX2$3>O@L@S~-H4A7ben*_nBzQi=G7~qc| z3{yeIK=tB>VOhP>^*U!-^6bJE z*^HVrAwxOTkV-oFPVI%Tl_t%M^9hX=AH*)sw$0_1IlwV$+eNbj+v}wq(=w_mf8qU( zh>d;K^zZk%xi}I8yA!EV+O<~ZeWV*g3O(>E1o+Jl1ss$9?qt=|fjOU4t<~Ez!c*y& zr&W=oy2+me0!n9Vb(0!h{x3KFCXcsHdsQ?BaRX%Pv;C8F=Cuf3YQy()#YRMi-s#B- zwBl-n#lZd`t$INKHbiIfH$q0!A=oa%=a*3KoV+}SC#N5e2ZtX2*(aTQe$Zw;&3TLF zh#U~EJYKbvt;po8MDhpcuJuYhUS;jWEN8DpvY!Gv*o;W}HSCe^v&*n46G6n`xltC% ze;Sk|s(9y=B$xXsjq*E!Ys95p&=GT5d`)|)3tJv6LfZQ^RHvi*7v~9RG)ov|gaX1W z klf+I(V>vO@lgX^x~zh zt&PNcNTwL|j+nUV`F_-FBxBx7Lsr)_&38nVh< A||MD7A@O5Rr29q`BGL_=NkV#oMo+I@&&D4wp3GIRtfy*`Z+2Bj87T)$Wx9j zQPphe)Ecda^_qk;CDxY22-~nxO<}^8qy4LlZw*5|H$rN;G=VQVD7C4OG-AKu!9p%< z#-WRc*Z*1ZUxmFV{}Ppemi_owN59%w>OC8y&&ZM9MkvZWx?Jgcy?rT2i>)AIYilF# zaSrw{cMp_jW{r&SQNLs9jb$G*w0r {xXw#rZE2Al-D?)s_Tsl8c9wyXU zVFNp^_mXp47z^=Yd$>#bu}hlum3~wLD(%CZwCPGKX7K^??GQ)SN#|D Hhcsh9! zQv&YQqzx8}xdTwLA@pNwwh`8<2vEa5YxGkPzY*6=HgBLM-n63Q0%_l)Dnzj6vy+Df zhJ~SgcH2rk(`e`Qm7jI{>^7}qZEcMQ5mUp!{I5D1O}dzX>di#77d2sMqAuG3qVZ}h z@i}6EIbQ@v<*f)%8S_G90$ypWm_^`YVW>N5W{M%}eLh3?J@Hu`wM1XYwMm1WTofE6 zESS_E-LwbDgQ_9U+yH3POCY%?#J;nj^8Z(ErF{1a+QT;#e0;=dye?;V_YXrXeMAMn zdt1q!=BBi&7CK6<`@EH_eL9hF9hcp#FK8Z2iP;v!CMG6M5pZJA5WONAN)yEt6r2u> zQb(a}cg24`{U*IOEZhhX9P3Zd9*F#YqdZIzC4yWpgFU6G>9dfezYTnEzLqt-<%_}O zPSvcN2i_Vh2S*pNo-dW4py2zEO_R )aNe4CA3g*F(}d)HI2Vzd+tCVb zA YK7DKDV;iy?Zb;id@lOu;@T84tm(G$cyu|4Q< zdqj+))n`?velyL2_aeTxJVLNDu@&D7^{JUD(}lW{_*7FjH#bk0L6W-qqfwuiTbwWL z)kNxe1b#+}_~9VD%(e fybx(X1!QZl;R`?4PSdA z2w5cV6!c;CdNS>QUkuJ`9Ao2OmK0a9$1f-ZTwSSpduJi?0GqWOl@cV7mIZzyh(MaD z^h?~wG>%mcWG*0!M+bT1)ISWuTHO%BOxA|@N4u@0FUX_F@DEWX_~ncNu(f+|@Zq_7 zDT?zeU-3_Hxo6`MR&I S}C-L1QkkZC$p9-U;iYPfe@CDIMA)o*wQ#fkqu( zr4fv()?HlSguMn?2RmbcQs<>p)z(&ls_r;4Z{@=rf@L|B68PJ!&-7r%UQSM?n|Jed zpOr63*W%H;PvXZ=aS3NHKji$Zn;W^1*Vh+_h={ibMjq=^A2cG&DQ{|O_ trN=m3_7)=6yx6smsh i(EA-r3Hp3d}Rt_o`0!3FSIdzygdVY0C!G9gRba1MHxZ_f$CJ OnV7 zb6Ni4As3)dWW&;h&`_JS6ps#MYwP0Jx<*XyW+a}#t(#|%p`qcJ+p@fGb|L;>OMjBh z2V#W!`ucysrXtgI2~z7ed|Wi}kSSFMd!!@c32b x-{tu_PgD>3;fdOTzu{ZOP!u7v|#QHmek1 z`EF9Kc4tGN^99ob7-02D$IJeAfHa`Q00Nf36oA~ UvTr#4Lng-`7u@vQ9&m?B`N zLCAMUd{xoNh!y|`H8LBAh{3_T;^RB}wR-eCJR;#SUEdOKJ`e%-Afce3sCL;I5olAW z2l2-3d)j V{UV@^v6LiPs zD9Uoq!sFEJpx??=ha7-$oEkCYKfOUeeljV+D@tf*HGM+c!b+MI;^mI9`L=plj6g2nmS6aD#u z!>I5Jf@qj 1JNqQVF1+5<2u6L@QCRX{P z3kpi8!-FLEzV$xt@mEv1F%^z}4leR18Lsg6f4<26Z9eecZn Ja_Pkwf* zbyc>)Nh`Fp^lgUEadQLzN`hOE){B>0Dgqqytmly0-#&^;lwc>z >3LkxGqPTbMC(7?)rxrQSy&X3-hko(DOiN^Wy@j&967p6?nqWR-j zr1PxW86L;YWNfLSY5BpeN=H{MZJ!J6)@V_$C>0&E_^}WPSv0!YYAwBv4d(Rg98DIe z`mGV}gj&!h7hksbYsige@ORyLKFJxcw)^Qf9BMq?|L)@v5MUC#MnuKkSX{k(Eo8s& zw?EeLf$h5v-B6m~V7z=hqJxRnG1VWO67_f03vWmkb@hPS0^rJci)XK%JVi_}$YZsZ z%Fr;g;p}hhu$P+dOGkxf9%USD(yKtC;28mGpd&lpEZ?kYJ 1Ek*M9C7Q7)g>>(u|HPb*ps`-mZ+dx;xY{^ yCg*T%LAWOS_^O-JK@`9s9Pm1$dg>U6Ckz2m3Bn?k99g;r6hstSq~{ zr1W_gwa!6gWAyLExd&n+Vi#%>4~H(5wj)lz&k Ei?ZzQ3)Dfm 1A1X0p`6lEcA||C^l_b_Je$r|1$rxY`ihKNzeY>rPY?Hd zGc*wb+_3(XNOC}Owayq 4;b!N%H(CAx2 z_l7|if|?&cGHzV4zdL1qo%lPuldEOr4?jl)0OJQ%ZPLpX(EBHx^x|LY4E azqdMFxdP- yr)ITr8`ZiWKsQ?_#iRFCLM`Y@|;{<)#9U3h&t4g0Y{x!#A zac*wuUYcyb8Kh(!Ap?Q8WZR^XiMw<55`BEkMuyg4Y9?BiJxkOZH5l1lz~`-+f6+`L zVKIg}ZT6Y~tU*gxSJySjcqoMz_@{E$Y%g&p X9OltZuypI^9I@aLA-q8%ptgQ?h`B(5|9wLkuST-_+LDGo z;hf#fD6(DT7Y}3PS!Um{Z8N9Hj$g(VcGo9A5ufW4{npzrttTfhG>l47Adv6l=1T}5 z?>>6=U;qeLx1)H7lPTd1U_r2{%6n~FaR0=RBjag)W9bC0z_GQ5sa4h%9;AryKKiY7 zfi#~;Kjcntjrf@O>WcpodS61+8$%uJf4i%E7NO}&MaZn?I4%8fSnJq#)VQAe%|Fm8 z+YbluOps~8rRn<0hxvY%q=Ek}2mB%o%v&lD&|4iJSLjUi{#0I_70L#`J+EyO56Zz` zWbUHwD&pla5@)gn1MRrH91C-Mw693Y4f~%5U@5-Y8{PG )rtN z2@)`pU+>uv?0eJ&NVL;XkSjHJAT0o5oQffr!hvJ;n+Tpgeg$mkMdx;L(Px*W>6F^0 zr ~}ZV)@fm>{8np#jOjG+idN3cs~Io)?c2AGcNVlA<*EE LGq7=g-|m+=?G;4we3@b`4l1;1a$J#^(#)pmKkkA4TkBg}ml5nyV_8@~(LnKz z^!9{W ;EIubgwW`t8S0qRA-+P8G0)*7{(!W#wS|22M2tH6z}@(HZu&dZh3b{W zQO>X7+gGn%r3jxOe7@P!+zi4Tp=BOb#TigQ*kbI-NDmEA5dd+Mz0*Z8q=j&6Lup`7 z60j`m2R=Wrb!Udug;nd>WRYf{U}RPAR Xi+$`Y~vaD>$3v@x}++HS)Uj?OH zEOowT;eAWL$#+Ad;l9S%d@i0J`&omN*(aEeNfqVg-37_7J7K>2AG*v73Z-{j!hZZ9 zSR`*TtHOH(zXro2cTkWaiv#90YqjuJ`LA8LGor8B@I7aMr4ML2!mGZFuMO+0$)qVo zcUz9x3=M@ojFoO01+aR3f!cq_jVWwQ5hJIoAu+n{NJv7uxJK%ywu(Lf4^VHZC}$jG ztgKi}^?{s|3R#VN9|qxDB$<>!QcaR@{wB|v92L }YaTegm20`uR6)hJ6zF@%=Zhy(TBXJpur>z&USbPv=hl^Fn&R5#3#w6=%p?Mz zi7dbq%=&PaTFue3{MSQGIEodG$->5F6L!U!2BrzYkshIfpj66)B-9 cqn8-YuD$K;x(Kv2j z U;N1RKXvg~QEI3pW#c|G|vA}KzqFw9f>?w1z7Z_#v(7yS_#czRuVE$bcI9b z1L3EZS!`LG8`I@v-Iu!^BlwS3jcZ4+XF;a_6k~zwF0Ze6^>j&o#4 ?y0sVZxcwgnTEaHkcn*Uv(_hK0F1?ynBI=ykhy55xo8+aZ55>c7~#r~1(= z=6oACJ#YMPtLWzX8Zfnm>)OMx@fX7H-)T#JkhaC)+X2WD0M~H8-YrzzKAq^{{85P^ zY-?)+tY(h1&t#d~720fMt@F8eu!jfDHS3%4F?1p(zB8jUJiLl%-&3J|qG6Q3%Pf99 zI=wdEcUxlq;iCh8STriltyf3Ix?V)SaxBU8ErL4Ic@0Ihw&tY3CCk5$D B1b>eg4w&B=k@|7q|4cG0Dm}ss!Z`@Eo&;(ixwRqUfOoPlq3_;y#s ebC#uruqcz51|e&g8Jw|_7G9>`XbqcLHz z?uYzXyutaGpU7fZ^^|+7iP3+;Fl`hV4sw{;81-((4XgZgh4r=V%3VNEkb_cQA1Fj} z{{GB{hL_|D2c&4Pa06aFEzj;D@nRvK972nBYX{5;zGhtKx+KNDK{~JHk6Y{i>~{M} z2D)EeXrm8 U}&`ez+|}WhwLG*aXj%BECT;anXnnlXA8I z*mYK+q{zZDH5zXiN2{g#e<>)CI*?W7keA`?+4bU|(<=jqF52hQzM#u2@$u#5= 1@AucK+CNmwv*+ZJC5!; z5F}GUt`G1-Plx}shZ;$qTX#6{Oe`#f0lW?4BxY#QC{Rz67=a%=$6jh@km^nGZ}u}C zVAR@;j3CKJ<$T22dQfV%8@JVq0wY?TSgIfrAXatx-8_*=Kd#4)EgLpbMjiS-*ymzv zwT8R|Df~?js+mzw074_xZi7h-H;5@h4{_3#6!!XZNjp}KN+1Oir1*vH`Qi =_0Ij8hnEtSBVvY%5i@P6p`*azb z#JRMNm_a_K+LrUN&!GJsK@_M6n?d0kXA2%e<$?H~z4CoJXe3!eVa&|ToNIO|8aBTk zX*H4m552fO*xg5eXtCsg;`&57!0?Yps0wpWKC|aHuiDa5a=CK<$1&QfEHwo< VqyS^z53*Se$C?1q;omdj$S7w5Y-R}8ce$r{wTWg$b%Y9Yfp z3AO8-n^KC}gSeCYFJ29^p^);2(}~O@{Gh@@%Oz+ZU-{?eQaZH`^>ksv8?bAdKG7H6 z-D1e1i(E50-72pG`(EL2I_3f!lRV=5yipzYf& Gssb_r_ Xg)OS&g+jbY?AHwA{f*ofG3H6VYGnoX+?Kiy7YO^H+PFDSJTUugRDT}b&k5)n@ z)z!xYBpsFnWR)?_Y95VcgZB`%5>e?0QJE86uHQ|T<9?_#Xnak?P|^t~#Wf{Ehh(BK zt~5F{KCG0NdB?kt5mVegtehTc6&-W_xY*e1dqvs3H5MMG4oH+y NY%o Dd{F7UkHTQzayNgnU5{bnKYBHPBw(2k71KC*8mm0&gM{9r6SBYQ y3R?T+Pk{bMYUEvF3?nm7 zV}8EvBL%EYVUtbUDtsO5^OPRTI95xqnLjco$xCGCp#iscr8X43G31fveB>h30Kb7e zPwtl^PN-Vzh0H+czqE4{X*2t9TqNr---svRTX*ge*C)F*R2+y2eO(IK-nJad5dCna z<(muC#8`=YRvO<^6Dq)=7gr5m*k#E2TW##oIzKv}jeOu$WJ`Bp_r_xRh~7^V?;vg^ z67U(w`6=Xc-?+H&Ki4=hx@I1eI??P*25DFk z-x6R=W;XXjUvCItaba1%;Q!r;QlL_~!!;<+DzuraEkdtqtzjk#8aF0m{%0O-6sCXe z1%&X)IwpSU Qk+*RB9B`Q=0!Y+P99jss81^R`AI4PR> ;~- zG<0sliXoTFS0DvBxmKKs!TAVztLLHB=V$2Sb|Va12lJo6xa4|40F*BRdHIr70V8q0 zxuGrH1jRjzZ&7#KJE8d{Ymh0(Lfc*~TZE;q|Gz;sA)d~iZQc$$_(wiNuNM%r5aX2D z$ n5xlCxg-#P@`T## z$c5I=X(bK{_5cj987mzzQdubzj;ya5?+=KiCi688|Kv=skH!)odL)$^<{94>$q^Em z7E&9G{Z?o3q0~kCXA)1%%-rt_V`dr}dTtD`T(mz95+c}9#M_WG7%6{3q;nf9yB`oD zJcr^({4KAtq4=ln?qvDB#xtcB@x=3hZl>!yy=Xcf&i$6K%I@dP_SYDCom7yHwyZe# zaK_=emyEW2C pGcKM76-V6}I6FqfLsUQM92*YUuviyF ^v~8CW zg}sp}pu4LJ;fQeoYJSThEva6t>!ZbQ0JdZQ(<`&$)i-OZxOj!J;Ik%*wYycgVi|sj zUmHEt=4#lNC8_RtIUCD1&(+I=^-nr#Ix9@C_PRLe?xw*P*ZO(aCaM-3Op6^%jqa4_ zKD{+u>W*qG? >FKrjH1{bgSVI$bcLLXx^lS7#)n&IbB$yDaV#BXg zj;er1Pxt*wIkUJJ`QU&4Vd?jw1_0@JkNjquT7fvXN f{5b1 zO$j|i!{|2&EKYs<$mzncn8dQI+zI8McSk2YC0sz~oJLyvgc)ZevRf`QLjjs_P@S$t zvz8q^C~GS(wAnp8>>j1@1Ob*JAdnWg(%t}Qz{md-QR3wh6UZG7Eg}D2-S`4C+D`Vu zX|-Ad$UXG08v=7i^K+fmf!*N02%0)tH+T*}W~k6-7a(-h5+ZF8(rt$SLHAPPB+bri zS@jjSg$0U2Hu(H)^M7-%$^ebNdY#*IUl^9iKmuxQw!r+_bf#4P`AW^bgm<*JXt9#n zb7(Z((0u*Is~AaB<$OPG_fSI5$S5`*ECR}YUOuTd=`so*fmp4U!+!k^pJZSyGRetC z)f@L3uR=H2xq#viTE%<|3p WN-PrD;p zbBZxhi5dCZ>t@G>%lunT6O2*bUwx9tr59_9;s96~XJtlG8_tj8y= oG0QnKl!kHfK#dJu^Fq$N*qn4TECSU=?fdGv%> z7Jbi#_AlWN!q%>vwg`YED3iZIv<8Gxn@-w^trz|2M$h{8RVz)ho49Xiw=ut#hv# z6ykVM6)bVpC#x-wK1tl~=1;W)4tAe?<7yy49{SF*X!c1oIqO&7rHv^!AZmxuyz`Fy zc*;JtE0?*dyM41ep3m#`pLxON-IZCa$x&IA+^pa>zsse7183?WJM|yFEroR-t^mST zY*_^~8FpnesWiIk +M)={*#EBN7C&B 9=%wiGrH1e5=d=k$<& zbR%o)Ca |FYfGg@nj&9B)r}>_F5nIMjU-w zGdm`pQTd*R0|c}j+#609DS&{1vOm$8qIk}#?H4bG?? kL~K0tDoqE?^u6$PcIrTsn}5kDId_lZ+s zV!h0_VLXQZ*nb!XpE9l~t{%bLv6#G9RQ)C}-_*RkK{7KmyBe@1C*Rid%9ca21#p(j z^7_ie`x6{^LxT|Kp9>AU`I^L(z2x@V{FCMj3E8#Biua6Kyf*XrUx?tbsWPRbX $1k9%!f4Dl4{DEfz!5Q(&8kw0Xdo^8=4J;tDe!+W1p0(x+RNfFvs3ai;!>I~ zR=OGpZ_nFRMhjnv*2o(R3I3kEba2Q?fqCQo!b$+mxJmNL%G(AV+yN;jbV6q1r6#BM zPxUD;?&Tl<%v`HWPw<;fek>Se`GSTCO8b6<%;$yhON`Sko0%%8Ay#qJXHS(3he4Vb z$}N}a9$mO4Iyg0}scccugjii)f!(<3E 3IBleoIVu)o%4Yd{(+PF|T;{D8>96F^!6 ztq{Uch01us;9Z2yvJ?2;QBuW8!H6Rs7DPRGV&eT!3R?sEu7QI+P%D!xsG-e1lMhS_ zKpd!w-+wGuS{z{-q#$15+z~-75es{pZs?{aRoYZddh2$$u$YtT?M`p-@neL| ^X^Dcq zANMcyIfG*QJi`!q65p=x0bV-*HE YmG;YWjX+AKM%u4_EUN9BY}TzRejQ+R?M89VG89K3$s zBmeK(Mo;_r61QVr^O?S_*UE)Mj_5aGG{|(=+B5l8=PTC@T^c0s4V4v_c{(mu<9-A& zN72T%w1|P=Nn8eJU9?YV025GTPyEqvqxev`pZ5K{G}l)Xo`d(-FAs`#Cer =;=qmlyR;v!%MBDgi+35ql-)i)o8mc-^ zRj%Rk{GCT;-&&0SOD0y1jPysoJ~D$5rcBVJI432(F@8dQB;KABBq2e+j7U?cSYv>> zUL7IwI&V~Q+HRCjx%2HkJ$)Qk$6>JUeAZLOzMX7Uq*Ut)cd7e#{JdPVc<)wQS;?y6 zOg{ml3UsZ0tlSodP>Gr1-gj!Y$Cz7CCZY-usGq-XQgp*LC61|<)C#`>LN77JO82&p zHB=_|mQY*V{)z6CIxqu`p(oknP@?FEQ@#f2Yk}L3YJabwvPs-O8-nF_DP(vF*f5Cr zGc|hMaNaGRL*C&Tp~mn&;z@6A$jF9(gRuyS*;UM9oCgFdV%cGvGWmhjp#soUXc=c! zX(bv1A*i&=rw1viDsRkkq&n0k7lvpemCbXkGxaWjtcx&|8R_Y=OsnsQtSoQ>d`u`5 zgrTQ%nRiWs*g7%et$~` z1-IqL@iSqXT*rbe3E+4EKZ<<_Hvb0fSFEU{8SATd>iCz6Bhd3{J2D555|vzXi6NP| zm(=Y<@+M2~d+4DWD=Y+)@qR~p$6szrCKjMQ)fSH5)edL>zJ#`t_CxLyJRh$l3YSg^ ziw%i7)C3(oy-NR66vxyKpMlsG#QPm5wC3e64?G9Qm~J1^9lnnI%a2xN$IDIA6pI-j zGk{F$oywb!d~$T<&%~$gafoj~e(!D=l%m$rW>5r>gQTcsH2-}dqY~5ZIG8HBg_Ji8 z*P6a={X46CGKQl7dJYG0S29QrdZ3(P$DWlh!wx1{rdYsru@CS+Q7U7(h;y`V+@{^E zu0-pHuY($x0{lQI_*H08_&f?JtY7%)%N fM-iNW=h8#AknB)+`1fgg!ol5gbW8$>)}u@aZRG#13dd((39xyE z0EUa{YXp+ JH110WL^Yq9Tc*a4=Ry9OLa zM&_dk;6($$P{zpJM*rQ5wFM-Rbw?5Kb&=4OF(C2X&1>M&K+{*85Y!>0%cSk{J!!PH zZy+3{ W~ua2#J8tcvziNwO3ev!fFg+& `xGmyA(qJ&zdf-!Y}D&ksXSL5ZOfmE#;*_AhBSQL6kE zaR)j^I&CjjCTCQ_B88w-6H&|*@cY%SOHmNClEhN&$+=yTak%MsNr6T?Fo;J`c-Z&x zfsr7hf_+KH+A-FuK5jeAcUANggJi_s6}O1l6Xc*G>PI6%z*;EA6anYOY ?o4JV!M4Xg_fyC;1*K`?i!VTr!iIlMz=vsAF#E8tA~zo z^wT|C(K+5Y5Dxv&wGQs*X(!$!O}{!itw;Cq^OF}-hlgT-2#r%wuRw(eDOkWaQhWmC zo7~|l!6(SxPP`E8`KKx+Kp%j4>*fJ-;NaRG`LRDa@H{zyW=LCnjQxsgF=v$89!&gd u^O0vpmXG=$;vCYr)DXG2R)jC^UrcQ3iuJ7ugMlvt0liVwP^gqM4*DNMJ2}Jv literal 0 HcmV?d00001 diff --git a/app/globals.css b/app/globals.css new file mode 100644 index 0000000..b37ec16 --- /dev/null +++ b/app/globals.css @@ -0,0 +1,88 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +:root { + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; +} + +@media (prefers-color-scheme: dark) { + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; + } +} + +@layer utilities { + .text-balance { + text-wrap: balance; + } +} + +@layer base { + :root { + --background: 0 0% 100%; + --foreground: 0 0% 3.9%; + --card: 0 0% 100%; + --card-foreground: 0 0% 3.9%; + --popover: 0 0% 100%; + --popover-foreground: 0 0% 3.9%; + --primary: 0 0% 9%; + --primary-foreground: 0 0% 98%; + --secondary: 0 0% 96.1%; + --secondary-foreground: 0 0% 9%; + --muted: 0 0% 96.1%; + --muted-foreground: 0 0% 45.1%; + --accent: 0 0% 96.1%; + --accent-foreground: 0 0% 9%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 0 0% 98%; + --border: 0 0% 89.8%; + --input: 0 0% 89.8%; + --ring: 0 0% 3.9%; + --chart-1: 12 76% 61%; + --chart-2: 173 58% 39%; + --chart-3: 197 37% 24%; + --chart-4: 43 74% 66%; + --chart-5: 27 87% 67%; + --radius: 0.5rem; + } + .dark { + --background: 0 0% 3.9%; + --foreground: 0 0% 98%; + --card: 0 0% 3.9%; + --card-foreground: 0 0% 98%; + --popover: 0 0% 3.9%; + --popover-foreground: 0 0% 98%; + --primary: 0 0% 98%; + --primary-foreground: 0 0% 9%; + --secondary: 0 0% 14.9%; + --secondary-foreground: 0 0% 98%; + --muted: 0 0% 14.9%; + --muted-foreground: 0 0% 63.9%; + --accent: 0 0% 14.9%; + --accent-foreground: 0 0% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 0 0% 98%; + --border: 0 0% 14.9%; + --input: 0 0% 14.9%; + --ring: 0 0% 83.1%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + } +} + +@layer base { + * { + @apply border-border; + } + body { + @apply bg-background text-foreground; + } +} diff --git a/app/layout.tsx b/app/layout.tsx new file mode 100644 index 0000000..6aa657b --- /dev/null +++ b/app/layout.tsx @@ -0,0 +1,91 @@ +import type { Metadata } from 'next'; +import './globals.css'; + +export async function generateMetadata({ + params, +}: { + params: { lang: string }; +}): Promise
{ + const domain = 'https://your-domain.com'; + // Map of language-specific metadata + const metadataByLang: Record = { + en: { + title: 'AWS Cloud Services Partner - Professional Cloud Computing Solutions', + description: + 'Providing comprehensive AWS cloud services including EC2, RDS, S3, AI/ML and more', + keywords: 'AWS, cloud computing, EC2, RDS, S3, cloud services, AI, machine learning', + }, + 'zh-CN': { + title: 'AWS云服务合作伙伴 - 专业云计算解决方案', + description: '提供AWS云服务器、数据库、存储、AI/ML等全方位云计算服务', + keywords: 'AWS,云服务器,云计算,数据库,存储,AI,机器学习', + }, + 'zh-TW': { + title: 'AWS雲端服務合作夥伴 - 專業雲端運算解決方案', + description: '提供AWS雲端伺服器、資料庫、儲存、AI/ML等全方位雲端運算服務', + keywords: 'AWS,雲端伺服器,雲端運算,資料庫,儲存,AI,機器學習', + }, + ko: { + title: 'AWS 클라우드 서비스 파트너 - 전문 클라우드 컴퓨팅 솔루션', + description: 'EC2, RDS, S3, AI/ML 등 포괄적인 AWS 클라우드 서비스 제공', + keywords: 'AWS,클라우드 컴퓨팅,EC2,RDS,S3,클라우드 서비스,AI,머신러닝', + }, + ja: { + title: 'AWSクラウドサービスパートナー - プロフェッショナルクラウドコンピューティングソリューション', + description: 'EC2、RDS、S3、AI/MLなど包括的なAWSクラウドサービスを提供', + keywords: 'AWS,クラウドコンピューティング,EC2,RDS,S3,クラウドサービス,AI,機械学習', + }, + }; + + // Get metadata for the current language or fall back to English + const metadata = metadataByLang[params.lang] || metadataByLang.en; + + return { + metadataBase: new URL(domain), + ...metadata, + alternates: { + languages: { + en: '/en', + 'zh-CN': '/zh-CN', + 'zh-TW': '/zh-TW', + ko: '/ko', + ja: '/ja', + 'x-default': '/en', + }, + }, + openGraph: { + title: metadata.title || undefined, + description: metadata.description || undefined, + url: `${domain}/${params.lang}`, + siteName: 'AWS Cloud Services Partner', + images: [ + { + url: '/og-image.png', // Must be an absolute URL + width: 1200, + height: 630, + }, + ], + locale: params.lang, + type: 'website', + }, + twitter: { + card: 'summary_large_image', + title: metadata.title || undefined, + description: metadata.description || undefined, + images: ['/og-image.png'], // Must be an absolute URL + }, + }; +} + +export default function RootLayout({ + children, + params, +}: Readonly<{ children: React.ReactNode; params: { lang: string } }>) { + return ( + + + {children} + + + ); +} diff --git a/app/robots.ts b/app/robots.ts new file mode 100644 index 0000000..d5fe348 --- /dev/null +++ b/app/robots.ts @@ -0,0 +1,14 @@ +import { MetadataRoute } from 'next'; + +const domain = 'https://your-domain.com'; + +export default function robots(): MetadataRoute.Robots { + return { + rules: { + userAgent: '*', + allow: '/', + disallow: '/api/', + }, + sitemap: `${domain}/sitemap.xml`, + }; +} \ No newline at end of file diff --git a/app/sitemap.ts b/app/sitemap.ts new file mode 100644 index 0000000..607e2a0 --- /dev/null +++ b/app/sitemap.ts @@ -0,0 +1,18 @@ +import { MetadataRoute } from 'next'; + +const defaultLang = 'en'; +const domain = 'https://your-domain.com'; +const supportedLangs = ['en', 'zh-CN', 'zh-TW', 'ko', 'ja']; + +export default function sitemap(): MetadataRoute.Sitemap { + const routes = ['', '/products', '/solutions', '/contact']; + + const sitemapEntries = supportedLangs.flatMap((lang) => { + return routes.map((route) => ({ + url: `${domain}/${lang}${route}`, + lastModified: new Date(), + })); + }); + + return sitemapEntries; +} \ No newline at end of file