From 1625d32ff3f819c47721fd167e5f999373037fa3 Mon Sep 17 00:00:00 2001 From: MarSeventh <1193267292@qq.com> Date: Fri, 23 Jan 2026 22:40:21 +0800 Subject: [PATCH] update v2.5.4 --- functions/api/manage/batch/index/config.js | 66 ++++++++++++++++++ index.html | 2 +- index.html.gz | Bin 510 -> 511 bytes js/925.2ee8e454.js.gz | Bin 92555 -> 0 bytes js/925.2ee8e454.js.map | 1 - js/925.2ee8e454.js.map.gz | Bin 327772 -> 0 bytes js/{925.2ee8e454.js => 925.72de38b9.js} | 10 +-- js/925.72de38b9.js.gz | Bin 0 -> 92667 bytes js/925.72de38b9.js.map | 1 + js/925.72de38b9.js.map.gz | Bin 0 -> 328188 bytes js/app.0ada2a3c.js.map.gz | Bin 16002 -> 0 bytes js/{app.0ada2a3c.js => app.99d3a1f5.js} | 4 +- js/{app.0ada2a3c.js.gz => app.99d3a1f5.js.gz} | Bin 5170 -> 5171 bytes ...pp.0ada2a3c.js.map => app.99d3a1f5.js.map} | 2 +- js/app.99d3a1f5.js.map.gz | Bin 0 -> 16003 bytes 15 files changed, 76 insertions(+), 10 deletions(-) create mode 100644 functions/api/manage/batch/index/config.js delete mode 100644 js/925.2ee8e454.js.gz delete mode 100644 js/925.2ee8e454.js.map delete mode 100644 js/925.2ee8e454.js.map.gz rename js/{925.2ee8e454.js => 925.72de38b9.js} (67%) create mode 100644 js/925.72de38b9.js.gz create mode 100644 js/925.72de38b9.js.map create mode 100644 js/925.72de38b9.js.map.gz delete mode 100644 js/app.0ada2a3c.js.map.gz rename js/{app.0ada2a3c.js => app.99d3a1f5.js} (99%) rename js/{app.0ada2a3c.js.gz => app.99d3a1f5.js.gz} (69%) rename js/{app.0ada2a3c.js.map => app.99d3a1f5.js.map} (99%) create mode 100644 js/app.99d3a1f5.js.map.gz diff --git a/functions/api/manage/batch/index/config.js b/functions/api/manage/batch/index/config.js new file mode 100644 index 0000000..b8c6811 --- /dev/null +++ b/functions/api/manage/batch/index/config.js @@ -0,0 +1,66 @@ +/** + * BatchIndexConfigAPI - 获取索引重建配置 + * + * 返回根据数据库类型确定的分块大小等配置信息 + */ + +import { checkDatabaseConfig } from '../../../../utils/databaseAdapter.js'; + +// CORS 跨域响应头 +const corsHeaders = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type, Authorization', + 'Access-Control-Max-Age': '86400', +}; + +// D1 单字段限制 2MB,KV 限制 25MB +const INDEX_CHUNK_SIZE_D1 = 500; +const INDEX_CHUNK_SIZE_KV = 5000; + +/** + * 创建 JSON 响应 + */ +function jsonResponse(data, status = 200) { + return new Response(JSON.stringify(data), { + status, + headers: { + 'Content-Type': 'application/json', + ...corsHeaders, + }, + }); +} + +/** + * 处理 GET 请求 - 获取索引配置 + */ +export async function onRequestGet(context) { + const { env } = context; + + try { + const config = checkDatabaseConfig(env); + const chunkSize = config.usingD1 ? INDEX_CHUNK_SIZE_D1 : INDEX_CHUNK_SIZE_KV; + + return jsonResponse({ + success: true, + chunkSize, + databaseType: config.usingD1 ? 'd1' : 'kv', + }); + } catch (error) { + return jsonResponse({ success: false, error: error.message }, 500); + } +} + +/** + * 处理 OPTIONS 请求 - CORS 预检 + */ +export async function onRequestOptions() { + return new Response(null, { status: 204, headers: corsHeaders }); +} + +export async function onRequest(context) { + const { request } = context; + if (request.method === 'GET') return onRequestGet(context); + if (request.method === 'OPTIONS') return onRequestOptions(); + return jsonResponse({ success: false, error: 'Method not allowed' }, 405); +} diff --git a/index.html b/index.html index ccd1ff9..8ce5d17 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -
SpuU^T~UO_Yj)8vnQSk1yoI!khQC0XrNXGuO^ zEnoEgI7Ak=X|^|;Oyw0q3Wo5$%59n4DQAtc1w+B#C|WP`FLFAaV(zD_eX~@uT;Daw zTV<|FH?#j}rCP#9EQLvaR%EE8MnVUOUGJ=Bn5I5n&6u)0QqzBLGa$cv9U$Mn7LcFZ z2uLYk3zAIU2udz*gr$(z0W+1?L6gesz?sSG;F-(o0h*L~>ae!acD$Nt;2o`H6cCTs z>l84b$rYea^K6teAu2!}SwJ=UMf1}QnbR>9FwfzpJT+6`k(Xq$p+L+e E~~m?LWy_F$~hA<%bA5kcUF5J@`N>bI?Sv>Pi5G1L>@VP z@?y0+q_KlhV@Q)^K% &cQ+64^Nj;68SBS#GiQA>Pi^zuZ)UU6IGsskwJ-d0 zM&j_L|GZ6Rit!$W=l&<3kzsh|-?3TmLFTzPh-B`q$$lQJrEKN`WF~3SfZ2+hB^kLt zWHK5f8}~3BX0_UC%8DeT?D=_>(^rf%+^GggQ#MFi-X%TOJ62;j?uXaR1lQE?7tX7n z{_x8$e);MLU%dLsFC5Znd26lSDaAgS5-h>6eFVV+fI!!m*`q9?2~% K#aDm&f4uss9#ntBbf2z)?8PRKMM(xbU_%3M0=!y= zEpNRh#J>KUfB)6r{p8iZ{+m}n{l%-F{qnaz`_?siadqN%H
`kUA3y)}&b?xr1uELTYr4mH*sUc0FfNtABjW}5K!%`^e@ z7vG8?eDX~M;Yg4D=yygCq+A0clN(6_%;tAV5BPe|LY4^gjX*U3HPk?}b* zzy9C8`09W7=hst%RDK(Bko$Br%Gn5*jTdI9|FzJ97iI}xhaOP*O#~s6- _CFy~z_-UR+ObDKi zZrc8{^>L2m`r1z`Fhl{$n@mJG$E~&z>_e-{yHt*SL<% $_av1$Ac&Ku9*$LL|R#m`Gie{KZfJHJ06P91XU+aYy#a z!9JV_(As-@p6fUSNE++4^^K-&Zh5M&SO5LL`_0dP@zt+?vSl47E0uE}WKk0&d3?g2 zG0>b`kLwEhm-42o=ry3ft|xV?TN_#b8nA2m+D&`$N|KvFtlNN|*CAq?T%Z+$6Vnvc z`_qK-G;kaO+T_3y6PhHpZZD!~#F8gdFp}e?8H!473}pHmO2v|%@d-2ZOkWn;?aK0g z^%p;V^~*nf^{;;X<*)y$Sm9E6XsZ;x%4SDXw3`5Uwoc5>H!eB5j1oG***0X((eh;D zrT67}ix=0d5{}MZBC?)a%202b#=RSRDBIYG2kUcqutKs_GdYVu?f`n)?ncdJtmyzz z$OJ}yG{3qQiE<|Ms{)6<1;XSk&NRO0tA2a0f-k@Q;g5gwzy9P#OnI%{plu(on?TIP zgbRVtxpw%z@3UT8U-8@f{m`b7U;Xia{_W5HlNxCMTAcm{=J>gdurp8q8^!+*e++_* zAN|j-{^BoQ{pbg;{_02S((u)P`K6L^Xb~9l;s4j){fpoJ;E%rkZ~x<$fBWYu<;!3F z_{(4Y;5R?~n^!;k<=21t&%XTopMUk&Kdu-M$ZYx=8@+&Mfe>J-1csfNpR>V?Cox)C z8B2yLD^fuiEd0 3*eOe@um1EGZ$E$X zSQYxmtdN*R0CszYfIEM^<$;p3Dc-x*7e{4&+qH?aixlnJZde;Vz^;Z@u`n8Z>XP|8 zU6?Pw_;cO364d QtKf8JHzU6vZ zYJ$p1!_( akju%0=0Z9%az;DO7HvVa3& z@oJhD80$M7SR+jndKEZnmNI9lS>(?C{wDHj)KwL70Ls1BLpOl~c&5~WFrtklK`9Hr zCE96Y${PuS9%$E5%U__KjSb%(?F{0T7f1WHnX(HeB+PZOu+y_7*6BAf33t>rZ$oR{ zZ@TbrP_1e!8lzlPjoG>fEf(&enUqp9JU~=@%r0KgfxCGqsC>wME*?(k2$%J`g0 32r16Bq)s#!ncbo%ryrP_) zu$WVrIF2J=J 4~c?gVWKT5qhAWZHk2&V9yI+>L2i!Wxu1T<3gT8gL)}j|1bb- zp7dlUSq%4tB+I7om(FCSD1Z$S&He1ZHbnND v?hWy|_SFtvc5R4zRJ-)Q1~e zqIsTOG-gxHXliV3U$5l&s~`O4@BgLJ)LbWMxxaolcqBKg7p%1aJv_)MyFPqArjwQ3 zUs<+I+Q*0THB^`zJA_itC7nzQjpRDt{Ot)*)i~u^lA;>3Ns1OMAH5DqDTne6B*iMY zwy*RM{=p=rZ2KQaQnU`~;MxtO2l_2Z%0F!C--e{z1b}}ONzwX|!`Ft$ev^Fg4J75s z?~J58yMd$tPpgTFUe@-(4MgSD&;F;IiOPrTMCI-^M8#T-Zz3v{h1*0_K7Speva!S0 zAS#=aNUt{}3QKu9>Z8%}QLBX>2S@F_L;Sn9*HK2y@5_+8hsTE=c|(Tt{C?oH{f@s6 z_NNjImRqd@sL(oWVguk%s_d5ckB-sYxpQ=+yipI;_rZP}duTS%9D47lgANUyqeE<{ zy?@xj?`9kGTL;Igeyi2=PJVB9XZ!cIcDDZD |_4e%LOS<*WEPu%o3OU+}Bi@>UC&!i?v#oa@ zzSw%iBbExNyZd{EG1pttc3Q3boker047xs&VW9{@Dg1<9DslXTgIgl^2=hv-u+Qv< zK9cTR(rx>l&W`j*le9Y>%V+bQ4MjJX{CK^j+=XVn-Bz w(PY!HQ6VU=}))4->gaR^mM;pFLD{?mRVsKx{%`$jya6E($BqG4S$TxkAe9? ztyL1N@Rub#lv*iioMnF>+-+sA*{{`H=!P#A9r)8_;XDu8oldQFxbt1vlf72IPezrL zcE3*sm6W}HpU^-xVAA&ceJHaG4#Cs7Ry*FtUR> fG1+td}=R~ KP?<8SzD?J%zxy$PO zv{kFQY1rC@509{&FeQ8^OaThbll1o9Nm{RaqL=n}!d8PdIDy~wuvmRj_8RG4i6Ci7 zOT#csyDn>RZ&%b^cAIw(f~FTRmChRy(%XS68w`H!m+i%fcWMSKY +lONpfo$W(7bB&-y!gPOp3}@GrRH zOEjznQwaE{-S-0Nsw$p8p;PxA+sl8%s*d{5L(YgwD~nAx6dSJ>8*V6;tQVWG@;q_n zt-XV0eGiaz@1R*08dTOQV?MiNkt-FpaUx*(AY{Te(_s=$Kop{gpDRM(<-4Crw+^XZ z@Q(Rq9H!E6!XT;L_XrK^AWguNFN5Fv_}eTd51sMF00SoUTK(>nxhYs^dx0|+=SA|c zNFJGAWS$2c)?yTJSdBrzdu<@4Vp-1flBpmQDvAVR=m}JU@xk9Z1Sbeb%;g@DejZ|j z(jSG`r1S?NG+MTIg>VDFm=F~w28h@=;UVIO2;Y-vxe6N-f42KxL4kdWl>7TYQr$P^ zd`Y(6n2Y5t_>-zXz(V-cTYBFQpxA~|-uE?mK4anh5|p3$ONV?CI0?F!laE2u Vay>f0w+rx@;q?B&gE|4 z9P(!1K+D1*&%j{HA@2o_oaLX*GA a=N_I%F`*ldFp?ivb9OqoYHIMD$$=wL8OOMw>qbP5F0&D1y5e$?2lkRQO+j<)euo@ ze-9F_Xlj6S3002<4!KmRM+5vAy?8f$8VAnc=;)vc2_M4El^( 7{PNC-aEtLQG^XXkM75Tb9}tl zjv|L#ejKaXm?r@Cfy0iE4-P4OzlCib4F}N?wDmqrXa8s~#=hRiQMZTt!+p%ep%$O- zF|bmLTMoI@3wONVY{q*IiSJCO&k%yG{bThlUS2`d0|Z*kC)o1AG5n9;*mUuo#Ur&S zEq2_58bki^AP4D>Gibwq4jCrTpJ<#N4(YJzkYV<*kRRSj1E<|S8eo~(JAxw~H?frw zeI^FaGgwLZ-yx%MCZulVNNtDF3q;NM5a4B&F{ZTBZaM@ M!{LxM9g^?~Q<$KBV@G@KDBf#3Bzg7#XVZk)n=NOsW i{%nK=hV&SkeGhkI+=7k#0d6wHlfzc$sN;|ck5eG &@< zJOr3cxR6&*g{H@><&a4hMN~Xf34@M9QhH85&CF(s83YhX={e%CLtez7mkgX?JnR5? zfB-4%257)ne0LBy2ZJNl-g8Jnjc5n*@$+NcQu`_a0Tk22W_;j~=@Vx57-Q@RU 4x2z >khfK4JcXNeC4Dms)A eH(yNLO12$FKl`#_?lyxE&4lJFPv3n2kV>nul#Dk;Yf5 z#BiVPA2c0ewgx*IbPnNDj9HQ(es=&af
;q|%?1{n? zhsgUvJ`SAtXfTYA93ry`l^IgNz5PRnAeuK>Gj2LWA0><(wP9Lsza;^eV>Z}xNI~zB z5W$z2WG^-A0i@1scvyx<7YdCiZgI ViSLkoUEO4#uPgb7a;U`#7m?I zn (Rb yJCcLpo!kaR*rP%?E AM)rIbcUSzNp72o9lcXCw{r21ht_QN#NRG{CU|t}A=$ zVpv0EC}a!F7DaYyveor4#q6}mh8r6h1%eEMl+b`Kt()4rtQv;UEpAD$4DK6q>F0O@ zlKx2l9V}OGO8IDTO-b+jMv!_3rH}G<=r@~tt-a<^x7GHK+dDF7`OQv8iE^gd1qfhv z+y1`SfMoKtthV3W?{wuZRtt*auB<~rZx@>(P_taz7i$upr_9BX=Lk0QHS*xXY`zAb zxiijlxMbg9uBh`JSLHLP+Yn%{Khn9WojdZpMhdwDolEW9f#)?S @W^^2m~W&hwy2Mgd5=n}p)tHbkK+)RA7-2$WC5 zy;@BPb)_O1QjrX)NCq@Qio#gdry=MCdVAnE5x6YGVXt%!rdYZp^C`-5i!nd6@ZQN$ zl8xRzcck0&x=0iPl-4X!f4B7kn_EFRwKPI*@l;4KU(SYGAFwidrXeRL2B#t>Cngdm zt_}|$DH*aAyRueud5BW?#p0g&g9G(cXs)w-G=Qj(`1_nDJPx Mf9#reUj*5bozlijy7g=k;_)_<7y$5blqP -(k+`8F}Y0-51W @3) zTRpEddEagp lR_kmu ~GV<0xvXvbc)MbfKA60m=YP{~ESp>CL>Kmrh TLjn+we3OB??!((beIgxNXOuZA92)3mP!X1+0<#BT Dm9v*LY{`d|tqm_%QW?J%U3gvBCNMnssSf*=?Dn7wORi a+iO>?yG#X9?=iUNieh<(?)K*uke_g{>X $ z0-=h12e7->SHi3iOkJ|v)mXBX4Y!yl>R}3=4h13o-uE1@D?(A6agCN&cYG&sxq9zG zzy@)O= %XB;FK)?v3@o)aWjnVZfK zl5lfy;Zfs*A0g6C_)(>t7C@wjb_0MSF84MNzH-6G){LA 1G`BThy Za)jIS7IU>Q0PXe@Kv zLb3A-idn$|q<11i-HzOCu|1$$<{Ga%1z}T5%Ugy?mgVjxG>7sPxyymX-40vbRv>PN z?QR?Xbh@3ORhV3)JJwKMR)*38380$VXSp=eN1-LhtrKyZqsUm^5@8rNQ37K2ll~=l zg@wUj_19c*FzQp;V726nESIjaVrwwZpJr3HA{M!@QKNVb!(t3A5k|>Nm5k}OyZ&Iv z7Cex#SU83sb@Vre0ev#WPiw#3vxcyZ YI=11-N4_0=1b(sx-8tgWV zm)F^;eHVCM;8G#NH{yFVqp}VRff9Pz6Mf)K)Bq_`Vi3obhE@0phENP7cBSYJKMD1$ zp}$)pH9M}_9#(-nD+O9d&E3ehLVC)Lq0D3Z#DU4Mutj*-Jh>QyLB9=^9p>! -7!v`Nb*)^)DN6qKJ_BR}JZ3k<>zAzQgNcM<_(rhG$gLwCxJQi)Em<8-8ae z0_!GP4`c3;Ir_*46kPf6{t=|MV3b!5;Ig}7hni8fy}FgA#@DuCeZSHakc#?@d$(fV zh^$FJ;uWi|nAc-0WC;>^$x|5?3TqJxe;F9rJ>szca`;OdDVW4P;%)}N#_%g`PzY^_ zzp?^0X&8odv4B6>Vj*fZs($6CNv$@%9hF1)U?TxU93z%}pR}j{#Kt6Spt09JJUAlo z@1a%jSuww`#To}C_MKWNPPo?)wVJ$bp*P`P-7 (WpJX()`4KFI<~#vCw3t-xI#7K;*|V$Yn2t_V+yCBl8n z3WZgAn=4RrU?D`k1)1=<3 z)iS$i1#NC!fH>|7U}Kgr$+iHBOOKeZVg%MO->NVxAR>Owq;;Aq))e_d zgPDPno`L6<%M45W5f9hipxP)6Qje8vd`8XnmO=5B$!9Yr 01e!C+vK|y5?XGMq9fJ(NyUDh7rkL?x~+g&caOLEnrFd^xP;IU zv0wUUz^}4c7oGFxpe+b8a;|>l Fchg_~0`4T{;y3 zdd)>)=F>|q$b7=nASM%f8O+Fpr*A6k3`US-KBmhsgAi};3zpvnE=ss4F&ZKBWpRIZ zxtoxP#GapIgm*=7m%EHa1ZzL#mn?aZ $iyL&kfAB@4%hOHo$-ZBk8;AjsZ8ZB?hhwjwVGW4Pxj#EQm2A*^NnAcl` zcbhkic;*!)arWbqNSKk!M(Z0!E9>@XnYW}N@*^n`UL#$i*ph~#k?L#x9C0^D2}ZvM zYlc!jQ_`vVr9u)$uG9}s&QRO*3@pq 3cI8 cLJKK@v z2< +YHw56YNxUho&r|b+;9?8f$1-_HGJGp|no& zw%>uduXNDHW%3XZ?bY^7Zh>e#S9o?Bwz@KCxaB>w)sWV_0KaruyNFpQYnY~3xjrSh zstpIL>1N%)(7-?wqQ2|Bpy$nmD~aDc>=1vigyecTzE)0wQI)jWJipaygD;uC-ziS{ z6(BPKphMab_?^1n+2KL~Q#nWJ_V3c@rQLGNKWw%-M@6eUa>sR99YEG#y4I7Kyt!Jj z8BEnW^Xjc-IVDqF%RW{rn`Ka)x9Tp4KKxF* j4db~*I!A9f%EK6O^xZ=1a1 zy~9pmQV+`Hqy4?Zjt!$?)MiQb*v*7sH4!D(=A`ya-S1e;T`G)WRIRo_P-rU|j4;q$ z)sb)Aqv<&nPpOnFPnBkTu~^CdZcby)Ql Pa_ke#A;Z)ZhWnZM zjiEF2Z8>$A3Q+4&{OauwW>ISVtQApc3*rjr@ylz6GG9zoE z<$%yOnw!GvxxQdtlnmy@GVC{-%Oz1yY;G5O?O>k!P)SEe3( z2wuZla~TV`xwxg&S>5uX<%g+Ee5IgzfU!uhZ4wKd2f7y%ONKcTtFFKT1pzvc30jNd zaHb+u&wktF<*qi2ahy6nZ8>2%oVbOO7 dL9T5TH @%>kiIwhh)WUVa3SB6zTA9)N|Y6)fuZElOQBcJBe=AJB;JxF*@)&`jwi3RI-oyB zg(QH4rtxAScW>4gnz#fl(k6SP121T|I$*F7C9{|bS9kz&|7gc7N_Q%JjV{`j3* beK=lrR ztSa<#-_Xtd j^`95&3N1D{LizQWEu~BjZOt`R{UHm2^dx_ zX!CJv#Z~6FsGuI1x@IIL&tkSul>w`=T-(w|nVB}yQ7?l#pjNMD&>;XGtWwR=8Ga1q ztT}$!+#RrUY7%c!F*bz(hIiLeWAl5tVFD`*mzvb3f@Xo{t6b&E;+kG76ImPjhB^iB zaVa+1`(15Jwv16k;e4>Y<`4oDxwNiYu}0&o)@Y?IR8RE5x=C3q!JkcI*krJFzQVAq zTf#Ch>(hgVaS@yk%%^3y`{Ug$dQB)DDDx%hM0dTj+mX zkw|6!{=vb4PSHYq0iKvDft~Y+p _YsFJgqj4B96>v(OBtG^aqyht5)Dq%WyuV6P{cJ&UfBo$vKleqFayI zjD3e}l_~IXC+9Tz4%reE-?`2CP=}9iwRMnWCj| f$ANdf-ym@6d-Io z9Tjz^$!x^a5*czPrdcZZIV*}F9jf5FB4I@xJf?VB)&S<>4&D&&Yh-(pzR0F!zM*m2 z^TMbYJ#fLQ7`(uK*1VqweqGk>;>=`u%d)*{)hk^Qppx@=E&o#It8-}0s-^6K(BgxG zeT#GE)Y(Q&JZHj9$-I~K19c$^QZNU;$hp*7`6cPGelWLn^GyO%t9s;si!%!;P(nRm zv>{&cP6YRCa8A??2TLLpjC2d3#7nDIssamYDe)yv2voYjzh0;d;!EMqZ$3@&x!RS3 zMUfD7=HS){?9 OVS$)5(zR8ee1-zXWcQu m{y|h>;x>&d> zC6xYzQ8CNe3w8;9%04o^L>mXE;1&zEFRln_<>LKZl;|izd~;5#i`9vs|DbOwe2i#5 zpd;XAA=>*|!eY_upC}r=t-LOahBh|QpCt7<80^L&? )tGkdt zfr%1bT#NzI*s8#CTtQHmt-ElFkJ>^kk(L0eh1#tfjr j%0V{z? zXuR gU5tv|xBTFt%3Yq&`FW!Bmf+VZs3#IPV z63RmXC77?2u$*d&9fMLw^j8Hq;H3wB5huv(=kx+Qaz~^wQefR}!%qd--8RvwWK;kf zao$E+V7*->bsBn$#qf66^t`#a;1USEkAj4!RE}MbjJ)D?hqNnwmLz;Cbo9dAHW?y6 z8gsP7$s _TZhF?Fb@4r>tJU{l5p4 #^E%#?$nR{^NEGpqm%zGs#1vR;Wt3Ra%I@(7|z3IfMYQDC_N6ex7T zp IBV0>ld*>njM;y+10@Jj^8W)cLY5O`8u4!)meqZ>)_sQE+fAbw zC@3qbL!e5%)<7dFRBdQCxZMgiAoEiCL!KmfSX;{2( #SYr2`yGP* zt5E3@ h=nzq2gFPgS5iT=J)-&aI*Ic5YLi<$2$^?gOw2lK>eA`7O5XJF26 z@i>(%3}9SIfH<`uLMg+!dBBWnj>t+ST9kq@S^%+;=L-t~3-f_>MOir(DZWB0#}vCu z1p{CeB~3zD&9{9(R w{Gxv_$*-u48LIM$#(jpU3bXf?~z z(cSFw5ukS-vigR+XRrlG67o$I?+8#9ka5U2RfUIxAv+3JhTC Khq+t%d+86FdUwUg;Gv)?TklE^ejD*x}A=FI+XVSQf<2F#?9dy;5Zx zIBw1*xFsNQ3^NpU?dIyHekq`>+@-CU9`?%5F9S}l0zoc !-1Drq4Rb=t`ExdA0hzS&M)D@H0G5hugdmg{LzLG4gcr)A?C zGFMWnUqgs=x7vZ3>obGZW!omTQiNDPo20QmWDAN$$@5si6AMbTzHq-6*WGULJ^y=g z-RpYp^m4%_3y2!{#x8l^F3BZLc(efDQx2c$nB`n9W~pFu;bwybB4oQ;jc%{mIPR-| z@tFp%5_<5B6%ycrWeCKxhl}cCp>DE#u`sfK@JE9)L!WsqzrDjw%)K_OV;pu4A<^c@ zYE3Vlpj1FX$}K05yCFn@S6q^DN7*SNub^3ZT`m^Qa+q(e40FCDBK#ak2KXR#?GOvh z3*eanC7Kmo9-h8|VJ`Ya_8^2uA6_r1h!QF|;W_6(fZQ;&m~_EX_f2 _tO;CKOtV;9~VH u3SKvio$ZJHv0)d%z8`~*vc=*;$skoQx$q4m=OsEaz{$FH zkE4l35h;|DR?{ $ftB54JgC5R}Qn4E9nUZnwO$Hm}w0LQE4?pvP~S^RvHNGArb4uzYYz z3O}OJn1SK|i&_HL?^Xq_= ~>IaS*l0(i4P=aFWOhnm~i9nLGJj>*B^+idk z-Vx+%#N-Q_j~F;98C_ez!_!ZM+v5b@zU>o+k#tIQWEWdc^X&4<&4_l)EPPq*d#M($ zV>l%9+dl)^TR3p`ni!A(G;1Sm#As?$^~?)^ZwL-W@QMkCx9&zvT5)CGWJ(QXRQ HCU(t}p}VOiJ0F*HNg#rW-R}VWKTGpCXgIq_-%;_FDuuMZ zZ&jgi1}qpIF=PkLN0_?h0fROb7+IBDj<5*U?PkT!Ri^8T(YcKyEdt@0F0TMZbkvl9 zkuxzH;QFE;ngm4AZnWeqE+8lZhzbZI5m6{4@W3oPEfFeJ>3*Tjg&Q80*??8)x5X-H z<4{#LLe*#hi!wd18*#|4%Y1vfK1~u>$F4yLwe;NUuIPhTJh_+JAU*hIlted_Z;OW- z3GIQej f^hM?%*r9Q1vn1FAwjr!SQN}LR)fGCVLX>b zT0EoHmCBPpU?eS4k*}=P92(OpSb%6lE>~+a^+B<+V4&)Tdval-RFt&z fxC%k5slIe*j*tew)(o*CT7_bg%Bl$NG%FMt0W 8L+kQLNw6eI%~m~)qt z%2z3&08c=$znNBAPK#R8$_(Mlmm%sQbG4Z~55zJTNUZcLtj}09%Y}N}OtMHKUs<;z z3gn*uX~t96X`DJ<9saEY*X`3dHo=pU5TfNn B^Cib98M$ zidh6AiHc3V-87K~)+2FtQ;s3*G)XV_Yn<9b$8r`_hkr9St_X+h>G=E-ae#S+EA|*7 zFcs_>;SdV*+Qq2VsA9e0PvPlJmnL@Rc1uO+-dJ1IYTT}dHhJr=X|oL+1oJI+l57|> z3QysEPzn4aJ_@1v2aWZ@VEqU-ZALhuiv`p>sRoZtYBks0$SBjrf~r?M-J%sr66o60 zg_v8P2)D8k3G(G|Ndh`QP0h1>_IrGll~gfqxW~iF3U9dUPty&&T)|ws-U)^lLvJ1+ zx$|Xt)3hn&-6Du39#kn@sIBMy(v|Dp$r`F*M2AW0iqxe FyD3adIF)w67}n3 zti7|wUbh*HNu)m`_>46A#i7_4lUXQs%uAs2Y0l1hHWR`8GNArtBi?Z{|FV(#mmawa zsDGtWt{N#Q%t#6cq$*mUtrk@&x~PT0_cm;PJ5UTM%%Z|`DB3LT=_4@3yDb{6lX^Y! zl5lLwMBqXX(bH-*_l&!&7xhV#oTXlu_o9Btdr`gB51WAtL0O~zE*79VU47+cFvzqL zWR8-yNAla@F&f(K?UpY5xks@1bSK-vHgrE!e^+Sb13hi9k}jwIGIjCA-3kaa0M@2I z4x1-q^dT7Q5V<+Y!^D&v0}!_JRVtH)Iow5}Fb5mk49&qH9$k<3z1=;M_r4!ZTkss_ z_xoYmphbd!gs4GxVA~*cp<>eG{YF|;Y@3R8S|q57bzRX~`RD5XV*!8z0944YGCsB0 z*Gkjh1f%52R^NmjV5FI0Am$9Hx`Il99vPws!pw@nGw!i|BZ2cI1=%!6++^1s!vqrq z4!EpR$jZCp?iF{_Ue;*!z3nhmAAQ(OI<=19yX`=I!k_*UQ5{1>;_B0i^y}U9y5N4R zud7>Tj_F!JZWLjHnS+we+!S{^3n`(9GaNQit%lWj9iHCx;5J~was!g2s4WlQP4zEQ zC?|6zdd1|cqQF(5wp2oIPwDwm)V-Th?aj@!i)PyE&De&P=`|*l$RieUpFo|c)UMVM z^^#9L5BxpSOlB!lf%zi{BJ;3#YlCO$yIIV<=jxcp$m-hTQgmgn3}e{G_iPZ>G=yh( z3s}?J*-5=ly*!jX+9yeP0jxq!WUp9NT5pl8;fgLk;&UrQ;{g>xz$3W=d*T~X>|d(1 zD?9B9)7nrDXs|BRzB1oegopVO!n;rJqOrtNFenwZ+8u>dmR0J;fNk3=0o$%&jN>et zfmNtwZ&P7UloR^nEN0gGVTEz&^D&LHi)UG;qdizAs>*=ZhgUf(tjqnh5_$3DI_D?Z zbw#Nik)RzR7)MVQk@eth0F)pL^(KHdSlIktAVNum<^&$4%KIq0NLl`-p0%$nOh4f4 zLKzxQrZdT6RAB=GRUOD4rWN7mBNTorc?XInROGE9q}~T skM=`55O0swp+2qizPDI3&2>>| z-Iq|hFQIi`!sxyP>b`{0eHjowOUr0fu7t3K?6e6h0E*CU?u!B&?8iRRRa*-5$6^Aa z@z-jFA2m3?2a?Q{ckV|Zp2uGw2Xq;V^3;GJfqdvbOEKWR^d(+6JTD7Vu#Zq1-kc8% zR>zo~+)Kba9<4OIlPnZqqs3DBQ9~+vmKRAMHzZQ9B-}PIn_mVQxe9VJ$S#A#IuY-t zg;SxEQg9?vL6fWQh4Tnaumeu6v7m>bXYd;QBjhG%sC_pZgA94k)E{J*&-v$yb$$Yq zceE3*1L`T2QaG~W@;V-wUj_-e3dT6 N}52P3$lNidn8!6!vm> HuKZG*D3 fRK-jfD6y5>acJFyhy4%MuN}zu`)RgpyE= zr4yQuICy4dFsZbhwOpAsjwCM%>6y#bnPageEO5fY+Oe5nv<#8MP{Hz3xnW );659Hg#eTr@3srQY8;lTZ?jcEv}U$-T&sy%&0uM*7M+&A-6%94 z*7#I}iD(C3UR;O0_1e(dF~=5*7D=Hc1FjtbxPl4T5=1IDd3HI^c=uRkOVu&F_X8xi zkO(L{3NX4@EVlJmF|8s&wE~L$N{R6M@Mfl7>d%Nu|8X#h;Mr5%*e8DG)*~7KS`R zSYY_Vs$j_Hp&i{dbwfc+#V{qhRtSe+BrpAnCzL?%82lIGfEpX3)DH5i!i;XWPGo*n z2$SaUB;gcv|L4}za}pe4!O!soxXoHk2j2x5(S2~Je56AkyN*N`Vf5l<9x0*$g9YYI zCB0>YMlH;nm%j3LxZt-|_z2C587@MZ#O(ePFckA#Z6`Lpd}FtaEYz*TyP76mR%x|l z5v<~@mtai2V E`87S2~eX^IUQts `*`aK~VwT#~{D+Irl= z4pb~nIO9qvWtFrfmrs*f)gnPQ*b*(v9%T6=nXlz7m*l;4J=FF5(hg)@9p}bDLZJ=4 z*Kg>3X-5P4?yBrSc0X3p`h)jU+a&evs=(mHNhC)5fO}Xj6Gu^TmlqUI8;*&v$JZ|> zPRzlZfun15CI4y8vz*JTN|8R{Kv)XP1S^j);_%5d%Oy=EMm~YNEturKY089lpz=@j zJZ!Tow=n2ft4pfWxqcKVGy&5~+Y-cj71L23e~3Qw0h1SurNKi^qHF^9#o#_C%7znc z)*kU?P!xJr7AhZRu?oX|(%P7ex;p-`BrJ^srlTNp6}?YrbGUR_;G8afi>vatOi8#q zH)Or#-GawrnnlI3FHWmkYaKi93VTr@n4w9!3^^(0lUZZWm!YI!_n%aQe8bMx
v5ap) z1Ghq>h1;6lj%zg+n)EggKtn;>MOv^B)PBvN`LI%s0a(D`pR&3)NcZ!~iU@05&!N z(}Rn!kys6GrUy4#hQ-Q|sd=DlNG4=JE+Ity6~?#FOv)J=%O!3~24v{fYOpDC`0~g( zX2As}cPRl^*~Fz-jJ(9G%f;dhUV_Ju?aRgD+%2Wd_ri!g2&0pGx5N0PUccu}Le{$n zVyX#B(H0AL7>?ZuF3xZ}3 DLVLC00C_7V^Kt5A((2#T|N!Gl8UcvY)i zV2P=Ie4^L_R|uYa20UsfWCfT!PlLiE55jw75DvXnZRl04c1^4C4XsYCXT@lhW56c{ zAhOvA<9w_LREjt7DsmM;T>*xpQu%Y^!xOYn7wOmtz7J1?uj@!DT~S}6c`9q50E5?R z+rrb2iri+XdrFn=$xF-UMj)q}k=_a!(XaBPo-RjE@v#zmORKLuTE0v|p~Ae1`j-6* z-K4_Odx9Di1_?DIiF(#UN$Xj?b&}l fhw@+ zA+cL(P;S;}dACwc0^xb^5TZ3;{S1TXc!8UTa0yZhI+uZYE%+ZTtC*A5YMZ;r?dGXv zE<;ykRC=`mUsj(au){$C!7-ZUUcazw*xr`@8FXa8o~iDaA*C)S>ZL}k4Ew4uN=RTB zy=oOTUb+PH+QM=o3G>@oH?OBbPR6RY;VelWW#Fp=O=h(k*jc5G;z12;JA>Xc(7br0 z`toT)S9w@4nZQt++SajF w2yb*=eTP1e*2DsKm)Ga{jk@=bZNNA7|ofFK9 z2O#n#D3X%`=45PeG72e)LyV1xAS1IdF8QmGdZ~k? aktIFxZXOM-43VlpySERCQ-aMgJKduYcH7lHiq|6F=I8+bI7zA zFfwfgluVoOVvhp6JA=KKkZG$-o83xCb#<0-yN_Y9Bd=B)xiOhFT4d@Yrbn=0DTzY4 zjBn3CHMLg2Y}2t7n$}{}<}2Z@0=XIhOUG-xN2kv VW#mE_8bx>XJezAQo;)Ai_c+pUwz>9pw{1);B**LAsVW(|~8Klenq z_0$mTOS9!yV(x #RzdNod7Q-yh)`A0k=F$GpTTY&8V+< ztP5ThrXll9eD0I9h&(33Q{m3B>p&9iQW${2HvWP*(a$BDf|H3B*}-Q}zU$Xu`e>r~ zAk|sUhB*`C)ro@hLv=z;Qia5(H?LHQ*)#^f9FJTJI^AfkW=iNW;D~f}83Ne+G`ny; zqx@~2*q|?f;_7Fo@UrFW#!>&rC7X!qE8>L#i_SI1F=1N1CkQT6>K*P3o>6Z!GLME} zd_kyxrlPlZUFx67Ow#0(7YhZV+~OlN1w2AA5GiOJz%k52^NxO)_R22dxpI77)jLrx zSrFW)0HMYiK{)6drY0ah7+~ubK-}W5Az!s#WWwev0*wfR4qvQZOn&LD;;kf2WyQLR z5G`*B=9TcCTE(Z)UZN8dS$b4?0ZzT>IM+>q7mUGVa9w~^fq2K|Q-5 eJ;nw!*mWra-Ue#N}yxbkkqbrsB$ zdQ04Q*Fnlah~aC!)~?h0)!GfDqzvGyft} O)?4Usz$E6(6vj~LD?83x>aNT~ zu$4t#J(M;NSr^)N5q`zqX4T!dglp3`%^o?C#bTS?uyeVYwDwFbgVC!k`+pPnuH9`L zNxSG@k+{4WKx|T!=gjQALAAMTC!TmFPCRikNrsC{fru8_F$gdKXptuI-_NS5z5<|R zC-0o|#TFZlMqjJz`cz3rwhRFX7c_PYk%IRxy#!p1cQ|0LICJZqlA3G;ttD1nHqikD z0lALxD!7YPH*aI^B~4(vm>*Q4geH8 %tt&k}g+fTqHV+l;Ch}?TlRJ>i?y}=?7teG8aqVNSmx|I#@Uom$Bl>%O zJeK8%(oCpIbW9xMpIudetHi7)fNQ7EfH_0-6G^p)SU<7{N72L_U|7#9k{;A+= |CwucT%qH%H%I0)AQ)K82Sp3Xvh0K}J0nZ+qz1(gh5RLUFawpK)M D_L!JP_yLE%m7unx@Mc8#m?{3;A {eJQ6 zYWj3oMBuFH9xQ9JzhaL0zX uLw7XlV-p+8=tLfV z8?P~Gj4K~_NvkL7<5}b5fao)61Y?LWo>jn>R`Us9$Yvw^`4Daw`}24NMZK5Q7!+6# z)1<=mP|=E<83-D%f;2qw9ZBy^kyr`!tmN-wWaqr}nMRYTj~m7Qn_Rx7mnUA1o|LP& z5J|uP!BOswp4j9@a5q*fkp(2T=qg;+B*|d<<@Q&6oor)?7%~@dojD)ED01gF#2ta( zkq3jqa)-TB)PiD8V$0kV#MczM11XPZ1qJ#%0b62 CwdAD*hQVV&?`Iaoz* z+RK8M2)?iE=_@W~saA1j@TYd$L3?eG;%Y5$t0(>bVx(`h@UR%E3oKzPmb)z*)~rtY z{lr`!(*Qoe7kIk%agad7A*hE{#}|<47;3DH@2GP}+T=Tp#UaoWjb08U)W?*ltS(!g z+GCZI Uwt)EOgm_{H^c_HXs2fdzQ`T6J)scTpQyLAg=&T zHrh=^WFdSzaNV@ucj*6=#AZ$eYN^8Z!3vx+!&|WGk{wh{5bmD1NyTcgiOGq5-O-fY zH?1CkkEiM(unlngD$5VkStPj1i#vr(KCxFA@1Stv*|y7RtZYu@H1q6EFFmU*DzVyH zxqG5cEQ7ysoP5YTdBk{rF22nT}eNjFTaY7gFD3`_^9;(r9j-E@1$~! z=9Tt^Cga#$1z<^%mptPN IYMpSXB zlcr@XcEE1R7T67KOW3lc7w(GQd}Ay&4%QqD4PiB6-UCKO`6`Vd`-2;`1DjM?h`oKh z(0ZJlk0AzD_bk6I$VMpdf|O&F4NJ*27w8xWCx|v-=_ny!LDFzaNCa?n---bJ^5WxB z`S|Vupnzi}&nm=tg8^TeW4M6K&2gH-o^+ybJZ-hq+UgHRTMav%!u=#>!JhVZJp`+Y zRdMMT=N?5tos$i0)UZII1)JAE^K8Wp=w5nFz RzatFi7m1?-vPZSww>~&j(FrDLSOCzoQ6}~1$w8?9CA|YY2Z)aKuTJbpY?FLr z@@~W%l5VQ@(oNM4L87fx?GAoXITewL-~9Hgzd!%s^}oNmdHwCH*WbSW;THl%no3>a z?RW29dlj66_Ep>pSacHhKyb3Y-DYx*G0PH*9sE|u#%VdZ3^_R%!5i>Dl-cs%lm&%O zZ0V$hckh#oPUc+s0SE}CIEO#3$0kgfs<@VI2Qk*$#iXB>3JocNPwN!wazwZeC2B0y z-^di{y&vnnpA(D-7^zE^@|e=i!!E@?7W{`8FdHD`Jn>zIw&oUH^6_MO4K62+H?^28 z=j<>`=aFQy)g1h8DwYuRkLp_Gc5OoW68KkfkfEC)+d{l=%(fuiZTL5Fuw^+zssZ~i zga<@(&9f{0Ox+|Kz8&3skmWW`(G3nh+9<(KZ}3ab#`$;4Gk_AxG_n}BL#iPx9A^%x z H$BR?ZtgAxcbLU S*7@P3)X%)3NzA9wj#x@uW9N5KZC6h#Cz@*+N>fi4}0Dc+0 z1IsEPZqjv18L5=^@yAn=xG#t=svSo^b0=ez(Zdnp0cPd9jgzg*AxOmJFNu{gmKNAA zyjc|wu9ptfOXzfC(n4wF66S{Ss!(*|m#uPQlE3R}6)ZsSPzBd2ehFS?Ua`o4p`&)* zt>VJ%PPyHHPi*<6Sm^v~`q2{wNYm)lK3jlOywR1b1FX_@`~Y*5iF+03*74N7^}s8w z`pO0*KLY-(`=g;;vI{e5XkOGRrZRhv=e0zbVZHY_uqWyyGm|_kNpzYm{kmpYAW|Hh z;A}!&S-!=LUti&DCqWOYP!dEB^s@IuAw_alsnkCh-i8qSAEL#4@7CFSb@osPoNEiWPT|!ldYFS)*z|Mg zj4ag~B>`Nq90C%==z~)nvkbHwVnpsHW|a8rRbISK5O8m_KlwPuL_jAW=kQpbe4N7L z4<{e5F#nsGa?j8}TN_TKNtZaY%RH|QiR^gGHi}j3Yxq5<169}C#JJ3=IU16`t5$-> z-(e-RN8W`0fT%zdGSx$mbV-eun6VHj{gAra!Wsa#sv_S%N?MST_xr!e!2ZND;L;U3 zD$r_N#V=Q4@xIxvx7~pwp!8z_{Q)|0Yh{S5Sfh7^pVU46936#113M+jl@Jv-hu>sC z797oZcC>}vXNH&Ivw1E0eRajl@~a&J324B$Cy2mBbI^TVP`5-~d&Koq#-e8L)UAVR zCsm9>?TLC}eY=%u@?G&GF1+c(1N*9rGARQygrhZkIB~GJv|uZ|n?~ >C>dVU!2?r2Eg-abqARXxqKjs$%hYVr zQV`4-K~x$R3HK}7B8cNaK&YT&uLF-a@i-@q+xxvJ^Ynu#)b{kea>E8= 9L8Ehz~Crn3SWW?+{Fi;qBQ1$x)buQZP283ADjDZ9R`46OC zhFLYdA_L5oRY+6kLsN-E0u PT+*ZR&d zo3@&L`nHg32~w6swT @`b3<(1DP%vVC2Dh0*CGGw!29>uCm zP?=GOE$YTfHHNa&L)rU7`IFdVJA*y8fbg>w;brNPtGN$F*4!qa(#HcbME?}~D95C{ zd;PQEy?qN!Ep3m;O>9XqTBV86O89CZ*_Ml0GG{3$TbvPP5_BjbOWZ+WVF86^Tq!Ue zZ*e=eop!7=XO8DwGewHVKJ*e$4R`~y!M+1h(bC^p#y4wUFObr-!d*INIX6OZ=?cM` zYL~jEFRRx!aV6liF{O}Wlnfc{ s)RDw^&)az>gAvgpNJ9rtYdZTxMN znRs=y=IS2lH_CoLM+ZgfGtXJf-^7Fr+MF}u1TmkORDL4}Kn4FYOaQWucNTB}e}cIf zI8K?pA^)|ez15jhum-8cRGLMkFa3Un%5owajzz+_WHh-=R`74pn#1fOLKqKfd`~HJ zQQLb;6 #!VLhu+q zPgANyd-oyM%dDZ)aWsfQhIE3G-HT?j` RPdhp$MA4GANf^q#| z5LWd)@jRn0KEfPo$$|kqwqmC;!!jD8V|?_X=}1m{y@51W(yP3nPh~Ty)-&q$==4V= z)GfQ}mbPwf-J>56k(?C+&q1RNMZOS15BRGXGiJDK6_m4=z%1?*v#5ks!=8B)2@q b<*H(C5@r*#0zF5Z2HNg6`m31Q >Og$>_qsvZfp*a)=3Z2X-Q# zI$cSGY^PaW*h1=0a=->y0&sHztHWe PS1IrPEl4!$iU~ z1`*+O`%PBYu}yKc3gg*oZmXg6tPsCkH<@XV+V5Ev_rSP#kLK?Ny3us 4^hrvgZs7@R6s^0&X*Y_@ z@8h5)P9TE|zVeFYZk<||jf(hQCG`d*Yjw3k@-}UT;1vnj>d-r1_cf{CsSb3+8anC` z_@owO%f{!lS%usBHV=*VV>}luLpwN^EUO<}(k54 Ky>~G`1XPhv{PgN}vX}rA0w-#zd$&0KClrHc?TH4pn)-pF>^(*r2&KcYXvW ztFZB{Z5esR)5e5#iOQg9Uhr}{1G{zoHRRv;mGxHee-ENEdh=+8|ACbB2_p3hV9^?$ zgUSqsav)n$!kfk+069+p0zj&dHuw%|%R_+T5L=j=bK`jWn7?_!U?TO`?+PJ4ir`}$ zY{*x1W7g4kn))Oz*;%(=jla 40Hh)ch*zN<{^M`n==MP>-Hj04g$C} zT!WJGKCScu`cB23?a6rR`WC4UJ0I9)FzT~|0)Tn*MU3vB&Ya)aQGKbb5vcKP^tHw7 zKTLFtAGX(Hhbi-$M+`$nQN8X928mQbt!8ZK4g=*kk`a!^!TV&CF~3RhD%-l6M=OH8 z0KkrE)Adkax*f*{qG1g$2iI;_w{*NyzkmKBMkVd3=Cs}1Z}X;f*bVAvrEi+j_q;WX z33P07y4TX{_d!R|pO>m{t@Xi0sCCc{(n+UFT9fZ|R5E=FFo;DfMfI64jq%=ruc=e) zynk9-t;xp3@L5jtYI?nn!Sny#2WSutMR9|HLaT-B{*ZNCn4vS>9Dr^;wSEXcXZaj3 zxAclTDu0{P#)54Ni`HSJ{tWg@tcFA?oG~K1JS$b;g3L-$RAv|@%Z4SS`pB+JyP*-a zO;^cSIn2Vk`6fZ4pN|_CfGc)r`j1?K@+DLwDZmTjK&fhJ7y|^&w?NGh6&g?S;V`Tq zj +Ij<%;O67S-k)E!p!r^}=p3bb_FM`tQ@STZ5awpX!Y<-&sWMqL5 zb!FOWJT>RJZqD6 7tybg4(YKP }-P*;@J+(B?%`A9=QKmcAz zjkLXrzwQ9@k)zwV_+cd%?=w-F7=HcoPZ01l4d5$lnOy) XBLCt}#rM;-1pN#zXA`UrYrAA84qDs2D!^+{jByYbL$4h-zOe0q^;IAGWW2S*t>L8kS(y20%%+;Hm5WN+xsK|F1EUq9 z?Ans6IVG}kSO|o^HU@)CC#y+$&Q`pbn9k 8Ohth3N)Wg4Prn%lS(&mhHx Ed{@(o1kBlK{_R}qv^i%#((3gTIn2Mfy763*f6i~|Na zmS=8xYepPY*1QceHw`K-at)bTahYqKO{9L%0|#a`Zz3vyUUDiUv_m4YgM~?L)Kwcs z`#i#?!M~;ZQVA~|WOkQAK;jxPCPj?`?#L_Uy?9&Ys1}`K0NZr*m%l{gNYufY{Z@^h zhry3A(<;@n#~|>+f7H?d6Cid+wRRolz@6o10({02^yPlYyF<;FL;g;BPn@cH+KZvn zY2 m)ngfMh{nVfRNNRILXMlsU?r-IEbLrk`Hhr*$Hbtrb!6H zQ+C+1@#ooLPsPWzEjlq|I;CN;oc}8h;&9rV^#(EVM1vkXgC8PG2EBPNdd&9f+jSqa z>ME0NUi)tBr# sKGy;M&A^ 2F?*FlGL)ynU#;5jBaiA%~R5P-Wy-njAE%KB@3zfDCEv{bK)rs_4R?K{4L z5fzqN0^D*j* V3@6zN9S@Sy^8;*5#$ohZc006ExATE?S{=FKZ zl%lk14dwi7J7-&V2UiN&C2$eC!gA|w2ZmF+2ghO7O}FeS7PQq0Fhw_@_5*s{2$}Ug zAso8wD=5^a6(AO1N@hilz#+oGf?zzFQsCXmEWr*L`GoTV>?(jOF!O@m(D?R~2uc9< zz^tF8Mie<8yGSA{h<+= q8@UZNT(bftWsop`uR3lE%g{n+3r z>jJh?wsX!a?b4)Crj3uTdWTvAoMp4h=snT};->b1j*AL4J{|(R?PN(Wc7VU_WEq&+ zOHsX&MM;qmuM>!c(2*tG?$;C&;d#xN-C%-Jx oy(4%Y-VWTt z+e)U8W2FkG9j`72n=o3lgfE6`t1?c)>liS?{|@jxg5}{w%(hAqxgPT5@~P!sy+$bn z74z?A-A^E=t|MSTV(O(MRDhesnzxhMuE8xIlU1(=37E>xVaki9`*I`rxtvoc@aL<% zAXan{4m(QM;P`MCtTFDaHBY${tF@Ow5?)}XZ)7GAkK3tu`E;@#0N}uoo8))MQzgXN zt% #1?) zQC?ilu$WJ0(=KuWurwn}Qb2sZONGKMaf#Pdsn1I$FVZmj+Wo~A{1fh!wm78knD!HW z=Ony&bL(s3i3k?#@tZLOcPxM4>V~qW#}?m)^TD#IMpFm}$s{Kpr>F+25$e`2w)(Hj zr_3?k#7tMvOf5Mk=KS$%q_WpY75a^msYIwICk6n&6j44bE}zn_%m?tN+L<{kDRIvU z_g{NI3ai4FDzc1OkAaECyF&cd3=>Odp|V%BFG6*ek4FiJLfZEhe~<&Mc0LYktMBSf?_Qrl@5V^ z_LxO1i)Nso0z{u4tb$4V$a*A<^#Hk{F%s}EDP$sGD8x!eha234H~K@m*FBZZ7W%a; zWD*_B@499;sKGEV5zuOn-HN5mo>%`7MUM4qt@4XKmEWJxdORKsc9wB^?SYy`&X4(c z5*ypvBpwVx@SZb LPI6|eg&UC$j!;Vm*0mWdDy z 7xNSOMXl;&UTOnz9qB6cMkK>A<^E2i|3%-i$k#)tq;zD`QCOSU4s^ z=gB@q2qmrQ^}|$V)% 7`seNaEhRyve)p clhW~7@9 ufX53g*d5buRMzJxr{V4Pa>WpF3if^9=~%QwM7Quz-59;io?k_UIg+wk%!%XqLJ z?%=PO4}-e_7Up~ytOro4MIhume~y$p$uCi+_>-TbSpD@2m=6rQ6B~wZdwZJ-m#2&W z5Ko5*)_Q-ON3+S7daOtLq{*ViCs?#ygU_njzFA^ft-@oqT1Z)VRLEoWA DoX)&Yun7E>rj^ z@TV5bA>cZycn@#5rkQt=bHSetGKp?~a4nJEu2SB?R$He-$Fn)lgG`wVzR#=J%iMeR zM*6Xpg{m?9zhly5zLdpcyS@{J$QI)CdkeQ(=zR=9SrAr*a%Lxz2|i4u!}g3P^7@pb z)`lL+Q2XL)j4QP=%90UC9Zt{*`2#rG0Pdxi35^|Hfj8~ {4fU6Iraqi- `FOHM1fO+yJJ6fJn_*ySRb2sf z2NG*HMZVTMAmGl{kiYJ*i&g{oY_WZ`a0`ARbJTOd^^R`A4yFDah$h8m&g4W(=FDKU zttWQ?!fhm*&7+ddn#nG|0(Lvl_@TZSBiS1B<3i>c|Li}k@igiPKs6_Y1l`I8&q7*J zGP8zx$gZR@S+oELW}b)7mJE+aNX%r>2+DzV-_C3xLRp_URS!w@NB}*>$2oPZ3a5#@ z2+W77@KS`)_>XHv3?ziB8Oit(9F**-XVyz1&EbSKT(nAGr;*il`-ZM;UO|sMVmJJd z3uH#C(2b4g 2Yd{sF7ie6tD_?T)WIU5gJwVyWm%K zdgGTN>*3h};kHn2vCmVv%rJMg!$=iwGFh~kjxc2Xg;#1l5=HItInK;F{3v27>z$8U ze%Uxd4{6>ezRFG!5$Ib*efv%qn4K=_?i;wXcfc)UmmXt=0oA{YuafR`G e391tFlSB`95XxTc+x64(wtz7B4_(RflTr3>f zIy!i4gSCy&Z3zmR&lbeJE2GDH`abEYJx}*VkM*3pq{n*p4(c%@%+ua#N%e|d2eF z12JppXRV;s!)hg)O9Mb?=+<54maH`Sll&ial%Z*r6-=oLJ6(bPh zGCHJU2@WMhh0Ex$gmjy6B~-|Y7wU!t&(uWy3njXi44@K_FhwOLMT|1GEqzDFSS7hu zKhd{zMBg{AfciYDyToMo6wMPbHC5K}2GWrgq4AkZc}sj9hY0`SJK#}}c41S(h+P#4 z2GGwmu2n02_+6e=FV* Ss;!p!JhMQ+LeR!(f z6U;M89uDBR?}h2JO&;#8i??9jQee>G@u**=($J)Hs6)!#nrAOlX@T^lB2ZPnToRpg zCO~MBN!QX@hHFPPmi{p- VNJf>7CS46O&iQ3a*%Ky!_5PGAq=BbpR|C_T@dpG=N$ z7nBAjBIS=`OjSN4?5JGj_uwgWJc7TI-G`uZPe-L#!plCWmn!V$)|Glv-!Vya9vk 6KtfXU11cC# z;=kiBWv~pV%LiZ$AK975W9B4=DA_F+1Ic!lwF7=?&rwEb*mK12%G#1|_;_-2y_*aM zH;#H@b^{)E>#2+=y6xs#9FI58_-%Mtl4 QU1q`^y5Utq!w1py1G|BcUaEjr~t 3*a3**+WH zVk`!r>f89n&vLZ5(b0Y|7eV(G*Yv)yK)Vkf>pua5Ya_66Vs*k;bkH~ab=jof-~}`} z*KsCY<|j|@1y=fN^j`$w977c0AUzXscBv@d@iGK?M%0aoI+3` vZ(##Z{tgq1!$Y;nXySHklWbuF$DWf27_(5H0thrz1c!~SNOn| zm29IccSi=!wsVym70h+Z!O2$G9kCjXZMqGoIIJ&aSwZ4kh{&Y@pK{jShNB{k#*-z_ z(d(x0ED8`#2MluITVVSAK=Pa?PM91h;z9TBsm;fpO8w4N#Y?M-&kf)FXtZ9Jvrs+h zbPC$CHEGj3m+bWAs+D#R(-f_jZj+Qxp(J83AS&UlY$Lq?kvIx%#(&sfX%s`#$D;&o zxxMID`l8?DX F9fMPv7GW z@gX%-rj p8MXLWs=o~?yb_U|PGhE8qkTdEMEMcDHk%*$ zqq->3&_!9?otrc#tel&>ZJK_QW9o0B9!_o`b9ai)d(h~qVqnF)HByjK_S2oEPcd4t z%eNW*OU}h4M@A?28J&F29tGgdyPboT^EryUZ}U<@WgGg&8k;hQI~m;4r YFVFSVY6 z K%8b9k$ 0AOE*I@-1Yz+SQi1T-jf# +jBo}b6 ^;K-bY+N!lxJ%Oo^~s3 zn2?C7V+<4fdB_rc{^=k;`%X3@WVfA$3BmSk1zT*#WqlH(f59-R;OE;dj1}SpK_*9g z*Jns{1Qu2 {@u7=Q73mJ~4)pJ_=E4_Q)5 zZAr15*HUv{ 3*XXBs-mPvr_YWe9Nxu|9Wsv5xV6)H!5w9nRe-qneGvI7u2MiM+dO6d@D#U9(hV zNvo{>5Ep0boFCvu6VY8>+f}*En^2Kf{}N^7vJo?tO%S6@kvH{H8 USY_yW#d1RlAq1dAK08&7$zdOO8JG0%G z$w{PCf$wmO`Su)wjsrmnqS4H4Lpfj#f|O1Ls{!gzD_7Cpl{Jqc4KH*ng>J2Cewzna z2BL2kI!O5GL|k(S1QT9@(D@`oR^fP5DJDQzHbdIyu6Q-PLU?D5oYLF%APk^cy6>6W zK(~W9*cL0@f(KTk-LM?(!U!cLw|qY=M|-e}xED+Ldr^@G`X;{*GWIkam|rn_8oJ2@ zZaP;(-TWE)M9LBs7_T$XzC#*z4Jc AZJ^niyTJ08CTdBL?Cjzi2zDKoX(Mmxx< z$Vv-hcTn=b@)Og-Sd<%AIh)*er(lR#jwxdu5aSPd6EGT59q6Yqz7`v)#cDfqYv(Cy z+K+FGd{YLq6Uu$WV?U4rCaw7o5ITI=MKG{^Bu4u>oV=Dnic`|>XN@sd{uniMS8No? zc8HJ`#*Xj3vtlq1QeK(NGX>x0;2usu@TcSeJ0Yt8B9<3=?GxT!qKpVbzkjY%W~py& z$$6hNQ@BY21gJVckB`UZ#@Q0`_Oji~h8JK43n!cFbQ gX1vHiYKKvU1pUtum m0EJUriPx4-d|iok8SQcg>|z-a8E(tpFCd)0qU;86(H)Oq zM$2*Mp(y-1`#^WV@pyj43Vcw(t-GkENU%T;QL;RY?)9(pD=Z-Bf1NZ#J2MB5-7dyz z>LP;{AQ>p1PsP~4MF41O5-$UYYI|_wRr+=OC2E+-6nBKK_i2-}KRr8YXMFk$A(y2l z=Gi#(N9*>U$+mq?P c+ho0)YcUw!KIrq?gOq?cjid#{Hz+kf)Q`_{{Kt!V1IoX=D$2TanyR5}Ny zvo|<*;+x!0Tk3)HZgPT6wM6Xs>FNj|`YtzI4!#b42BX`2XCYW^TW_0f>3l(+KNKbp z0K?a`ilm-|QpE%z9zFf3VNHiBgKVVh40Vm#`SuSU*QQ`f6$!^6Hx;4CN)B0mXY;Tb zt(9?rN@Brbql`O|^{hUi7LoGgEZ$S}QB?4&y5 obBw|&^<2f!ho)Czp z3$-J%F%1edP6Y5DKai eV6htEfM<1k9AD*r7&nfK z9X`CscW>ey+4M`cqMu)zjtiX`Ni8lR&=^nc_&T2q25{~33KFc+RDezM9dt0SF-UO7 zQZ8o&p%%`;Z3{AzI#YC+s=iMOFVRXt@&0@@U0sy0W?~e7h-C_TS8_Zk6aoOx!pKxF zZ85x=HQuDr86qm}Bz@y8Htu#N`P)1Y-T{Y`smB;1GhITZH+di!Q4lK4Y^ll&0~FJg zQ6`vk^x!asiq?d{T|CDU5Qb9qw-tfxBumV$@;pm^$TyM6KL&}8;G560 `0jZD z0lYl*hkYpHHQ