From 56645720b33507ba379e0b2ff6f871674a451873 Mon Sep 17 00:00:00 2001 From: xiongxiaoyang <773861846@qq.com> Date: Tue, 14 Apr 2020 18:42:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=99=BE=E4=B9=A6=E6=96=8B?= =?UTF-8?q?=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- novel-front/pom.xml | 2 +- .../core/config/CrawlBaishuzhaiConfig.java | 29 ++++++++++++++++++ .../books/core/crawl/BiquCrawlSource.java | 16 ++++++++-- .../src/main/resources/application-crawl.yml | 17 ++++++++++ .../src/main/resources/application.yml | 4 +-- script/crawlbook/application.yml | 9 +++--- script/crawlbook/crawl-book-1.0-SNAPSHOT.jar | Bin 24678314 -> 24681258 bytes 7 files changed, 68 insertions(+), 9 deletions(-) create mode 100644 novel-front/src/main/java/xyz/zinglizingli/books/core/config/CrawlBaishuzhaiConfig.java diff --git a/novel-front/pom.xml b/novel-front/pom.xml index 1b3f4f9..b3d24d3 100644 --- a/novel-front/pom.xml +++ b/novel-front/pom.xml @@ -10,7 +10,7 @@ xyz.zinglizingli novel-front - 2.2.0.beta + 2.3.0.beta novel-front 小说精品楼-前台web网站 diff --git a/novel-front/src/main/java/xyz/zinglizingli/books/core/config/CrawlBaishuzhaiConfig.java b/novel-front/src/main/java/xyz/zinglizingli/books/core/config/CrawlBaishuzhaiConfig.java new file mode 100644 index 0000000..bc4a992 --- /dev/null +++ b/novel-front/src/main/java/xyz/zinglizingli/books/core/config/CrawlBaishuzhaiConfig.java @@ -0,0 +1,29 @@ +package xyz.zinglizingli.books.core.config; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import xyz.zinglizingli.books.core.crawl.BaseHtmlCrawlSource; +import xyz.zinglizingli.books.core.crawl.BiquCrawlSource; + +/** + * @author 11797 + */ +@Slf4j +@Configuration +public class CrawlBaishuzhaiConfig { + + + @Bean + @Primary //必须加此注解,不然报错,下一个类则不需要添加 + @ConfigurationProperties(prefix = "baishuzhai.crawlsource") // prefix值必须是application.yml中对应属性的前缀 + @ConditionalOnProperty(prefix = "crawl.website",name = "type",havingValue = "4") + public BaseHtmlCrawlSource dingdianCrawlSource() { + return new BiquCrawlSource(); + } + + +} diff --git a/novel-front/src/main/java/xyz/zinglizingli/books/core/crawl/BiquCrawlSource.java b/novel-front/src/main/java/xyz/zinglizingli/books/core/crawl/BiquCrawlSource.java index 9009005..104ad80 100644 --- a/novel-front/src/main/java/xyz/zinglizingli/books/core/crawl/BiquCrawlSource.java +++ b/novel-front/src/main/java/xyz/zinglizingli/books/core/crawl/BiquCrawlSource.java @@ -91,7 +91,13 @@ public class BiquCrawlSource extends BaseHtmlCrawlSource { Matcher updateTimeMatch = updateTimePatten.matcher(body); if (updateTimeMatch.find()) { String updateTimeStr = updateTimeMatch.group(1); - SimpleDateFormat format = new SimpleDateFormat("yy-MM-dd HH:mm:ss"); + SimpleDateFormat format ; + if(updateTimeStr.length()>10){ + + format = new SimpleDateFormat("yy-MM-dd HH:mm:ss"); + }else{ + format = new SimpleDateFormat("yy-MM-dd"); + } updateTime = format.parse(updateTimeStr); if(!newCat2Date.containsKey(i)) { newCat2Date.put(i, updateTime); @@ -159,7 +165,13 @@ public class BiquCrawlSource extends BaseHtmlCrawlSource { Matcher updateTimeMatch = updateTimePatten.matcher(body); if (updateTimeMatch.find()) { String updateTimeStr = updateTimeMatch.group(1); - SimpleDateFormat format = new SimpleDateFormat("yy-MM-dd HH:mm:ss"); + SimpleDateFormat format ; + if(updateTimeStr.length()>10){ + + format = new SimpleDateFormat("yy-MM-dd HH:mm:ss"); + }else{ + format = new SimpleDateFormat("yy-MM-dd"); + } Date updateTime = format.parse(updateTimeStr); Pattern picPatten = compile(getPicPattern()); Matcher picMather = picPatten.matcher(body); diff --git a/novel-front/src/main/resources/application-crawl.yml b/novel-front/src/main/resources/application-crawl.yml index 9b04bf2..3b068fe 100644 --- a/novel-front/src/main/resources/application-crawl.yml +++ b/novel-front/src/main/resources/application-crawl.yml @@ -54,6 +54,23 @@ dingdian: catalog-url-pattern: 查看完整目录 catalog-pattern: ([^/]+) + +baishuzhai: + crawlsource: + index-url: https://m.baishuzhai.com + list-page-url: https://m.baishuzhai.com/sort/{0}/{1}.html + book-url-pattern: href="/(ibook/\d+/\d+)/" + score-pattern: (\d+\.\d+)分 + book-name-pattern:

([^/]+)

+ author-pattern: 作者:([^/]+)< + status-pattern: 状态:([^/]+) + cat-pattern: 类别:([^/]+) + update-time-pattern: 更新:(\d+-\d+-\d+) + pic-pattern: ([^/]+)

+ catalog-url-pattern: 查看完整目录 + catalog-pattern: ([^/]+) + biquge: crawlsource: index-url: http://m.biquge.info diff --git a/novel-front/src/main/resources/application.yml b/novel-front/src/main/resources/application.yml index 58c2a91..f5d249e 100644 --- a/novel-front/src/main/resources/application.yml +++ b/novel-front/src/main/resources/application.yml @@ -84,10 +84,10 @@ books: #小说的更新间隔(分) updatePeriod: 1 -#爬取的网站名称类型 1:笔趣岛 ,2:笔趣塔,3:顶点小说 更多网站解析中,敬请期待 +#爬取的网站名称类型 1:笔趣岛 ,2:笔趣塔,3:顶点小说 ,4:百书斋 更多网站解析中,敬请期待 crawl: website: - type: 2 + type: 4 diff --git a/script/crawlbook/application.yml b/script/crawlbook/application.yml index 4ed0aef..c44c400 100644 --- a/script/crawlbook/application.yml +++ b/script/crawlbook/application.yml @@ -1,14 +1,15 @@ server: {port: 8083} spring: - datasource: {url: 'jdbc:mysql://47.106.243.172:3306/novel?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai', - username: novel, password: novel!8888} + datasource: {url: 'jdbc:mysql://127.0.0.1:3306/books?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai', + username: root, password: test123456} mybatis: mapper-locations: classpath:mybatis/mapping/*.xml type-aliases-package: xyz.zinglizingli.books.po configuration: {log-impl: org.apache.ibatis.logging.stdout.StdOutImpl} mysql: {charset: utf8mb4} -books: {lowestScore: '9.0'} +books: {lowestScore: 9.0} crawl: - website: {type: '2'} + website: {type: '4'} soft-novel: '0' manhua: '0' +logging: {config: 'classpath:logback-boot.xml'} diff --git a/script/crawlbook/crawl-book-1.0-SNAPSHOT.jar b/script/crawlbook/crawl-book-1.0-SNAPSHOT.jar index 4e369225dc06134bc48734f9f3c4797173861ea5..4d0eda3d46215c268b3febd61955aa30406af00b 100644 GIT binary patch delta 26968 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 RoK#Mt!o`^d?gB}q{{vJoUp4>$ delta 24135 zcmZ^~V{|5M(>6M>HF0t!nb@{9vF&8SiEUlU#I|kQwr$(Cwdc9-XRZD2{eEBn=&rN+ zsH&r?YpurFXKCXuTxr%W9HP7w7&zKDXlUqfWyL9SF^HVt|2Zbfhk{}!W#co!0j*+s zta};Y1FsTZ5o4TXC5HkY7IS66(32_FoM5ed!dXH9%#dC) zgYH#);zY?wO#B#I{FS?-LMtOywv_J=>eGv+4(1HdAy)*c@>eJc z%{Iho@j%7EzJ{Hwd}L4kJu@fIfiw@QBbV@gvwxyYO{9_TG7;3r6WwBpjPW6v=~(fo zFSUi>EmPV|*}8GH)&TJAEAConcm|c1 zf`b0s61HIn`SuM9^xL=pZ>8h9K^XomHEkv`NgNg^;NOv6CNgD`;=cU9!#H11>3{V< za8uBd_)nRUp;LD`Ty15_?M$4`M7|h$3;g%#Z9Y%*YOLH{A-i7-OmVumQ)?y z{Et!AFEdvV=(?=PAo~A<%On9-5QsXx&WgZ)Pa=zeu>LDah=A~dOBVfYick>{X0X3f zl93Q7QIehl2=YJe1N-e8^tW#^e-VkIAoM7ufBWa#|JaCKJWasQM4zsUbTfZ`uO z(zF-|WKx+Z2rSrNKvInaC{dQJuPX@t|A_G)%cOHL5RR-WXIBsi`2XoKNlpwz3j7~L zrWlCiztUf<$iG=^<7yEkWizC}{yR+7DE&L+1x5KE-v4R*Y;h2g|K!+|(FQUF@sISE ziVM^~60ZUXFU0>!Q1oB^)v6!}S&@GkV>VHMf+B9I81)zZPXXyf6K@gg*20<$S3((L3Nr(K`84oz9=D*mc7ef#|_$o0Yz-G#R8rAFIR0_koW(_Y4Zo+Xz~Jpru{eXzi}1*%LYIU zn)kmm68Ps5{F4z(k`DkBsp-uHWFPE*WzP5iwptUeCrCQ?Ra1o$;=ubR4o*hByaotig8ng#^oM_Y6{fP4Mi20tKe6l1s-429u016;Uo@Y%od zA%odHXS?&{moB6Ebqxe<_&ocBHa7cSgMc+*HLIX|&39WtT1V}a55cdafF*6qKDhEg zW_532Kj(jUmlW|P@N2s^1N+K0%3`!_@&&S7Yk*}jU%y~^g6IL2qmt(Lj2C99Av?{t zEg(BD`*|TdQNSRc3*Fm|x7Q#$QNhNpbsk*hcsJRv!5%)RLkI@Cp;?nQt6(pb zqCQUT1QJO>hnW_WL%nnHvr31u=J%M%KRF@ED0RH7w=qiz^ai)po|DwyalXvA*&)5l zQeV=1f$Z1ZU|oOr1hVghkg^IgnSc08hxilj!cNDmP?-t+va-zg;mVi6>F2!RSzNWQc1INSM-nKYve6mdnt zweUEm@{NL=kOw&X3J6Eo@ix;x{2+0ae@!F%!6M+8%f|@zDYNSO1>!1O%7+LRKt?c_ z<_j7_MlhMyj}jP8t3Timofh1jG7<)kn&r9!igM%NQ!S^_{0ebcCbIVsxO%crEZJE4 zvQr=@n1IJW{bZSrjr?R8kCpvQa2-3-g`66LSu8H8Mr52!zb9uLZnc1W}*b7v= zfF7Ql5<0ZvhbdTaFb9iwV<)EvLOlw3JS*Z?yr_SV_N6&DYK*&}u^@@A!sN`lr#iKAt z*^5T$daN|-pv+8>*Ezia6#Aw_%89rIU6uN%n#}wZ^VKis1pOg`X1YKoZ_oVHi;!-e z7U)#6C~A!>p<avz_(SP7){W~2skMeop(mvlGrTa%k>psxZ3hLh|QO&$BO=d z-kGY=Ip`C*7Q)0rkF3mWPqJ2$d{kvwdgF1A6%PSXv?j6cSdSATyKk)waq7u>0A1`2 zy5k=LNSV@1#=ljeNj|rjzThgs*B1}ktH<51ZzMyuR?<*+RQVOtbqiimMpp`E2vl!o z+Agc(CSo2+LGKH!Iz55idN8h`kxfpaZ9bPZ4M{F{b1|_l_yknw>`s zRxWMf*Qxkgh!*YejnaZRpHeGWq;zifrcV2tUyU{yh4UDh3zIQuyxi-JKvq`gD1@@u zLe0tKBe+B{gBvTBLP;c~vC~E;4?ovTTu}5mTx!?v)E|Nmsbvot&&igp=>s!mF0bS9i+=@dYs5%?|RBLNn#BOjWk>X(lH{?1O5}RK11}gfq znkjUWvFR?1Ys)H1x|B*+{3<~k9}61zzPh}(EQ0i4vnP@(h5Z-{$X`{i_~}?= z=nR$X)UTP4(U$=&dX>rfvu9ln|*n~4pia8J&$0$KrW-Q zW^S}^^flk)m2|TdMvCK33@DI9dHiN`Z_X3m%&#!ruPJ>9#v#^@|1Fjv)*3|f3I7D27yMu#cuS|z|~a22AMXV4_D zKKC#JbW%H2%Q@|<0sF@-l;lGBbUhLH*s!8Tp$W1oA`qGy*J{q80+zv&uxdA4YD%pW9_caXyf`z4Ob^X!yP zgMn(vl^dIyRzSF+65$Coyv$#IeUI;<(dOi<-mNYBS0yL7iFevq(OcPbIavC|;?#p#1V^57}55;*ZH>|T2xwIa_L(g??RC~wS z-by#y?*r$#fXSY3}JCsVEu2)8Ew5SOjYho5=3l|w*;q6Q5 zPWF0=VOee^)T`FB2D}N1ILzH(N@0rcX%_=m^HIT^B(oF*`K#m)>ZQ+%;oR0I9j*BG zK+WmT?3(YA%EloG^9%_hE9Ug70LF63?Ap~xj}B0&Kp_=Q5m~M=5je9LIKIFRSw+mi^Swqr|!suqX0I+=pZvs~l)b%~>vW6xHf zqRNI|>^qzfK73oAC?Yg?)>j-FAQcv-2=%T$Fg;GS^;oDim|GIFts3>*rRVLsGLFt} zhN?9lct`Kh6Ld`nMR!zLI&kseYVLrkvihl}V=cm~^)sGaeGBWh_)@#)_2D|%;V8h| zLfiHGZM@S0yi#mBW1Ic2LNWe09Y<1~gFgf(=8yN$$4?bTi!?PhRVM?~1?Xz4Vinp(GIT*D&dAL8X+z{)fq>G`W< zfC-tY-o& z;=-3wc65uJnewtL0*WhS;n`HL(bC=BDVs9KLrbgf*x44@YY~$J?N#WII#ie=KI=d~ z14atyS|d_*9JxORMO>y4c!&x}(K}IdfLk+idYD%78O^9S#1Brbc`O8Bc4TZeIW^qotHw*KoaAVSR8^AL>DC0KPQj{Ux}=|ue{loT|*5;$G|r1X0&OkU}z>b&h-AjWFB z^m^U&QnUpG2Hm*R4904yKvONr3g2^Fi$WfU`V5w-ypd)lJX5)hNtl301pg3*O!=;h zx4wNY6`y-%l`ngg!ufYH^4rV9u^PA)p#oSJt2r4?NU;%-D5?Z&CD^UX*Gy+=zF0Ww znqHBpl3MP0%d7mMK8M*&Zl@Vkpt;^z>7!rvCh}n|G1~3H;`Qb6{qg1<{&r(hY3(`Z zPJ{a&&9aw^qWTd-Dc4A*4B;r2jGbDsWVr_LmY{aovNv zeA}eo#dJ+uXrU?xbgy{4BXD=o5U7)j9wXDv#0?fIi`;KV<4wiOMNm0nz;fZBMf-jb zOuXgh%Q%%Ipu5f;ITBB_*Yi9_ZY59Cc5VhDT5<(%=B6eNEMVn0pkz@jLVN zrS&38vRS!mpH4B?bm5MTcm zM(`VIF~cQU*?yU5Ay84H&8U+}9LYoG)BJ%I$Usj{9|V;cmt+{g zvUmVl=83)_DUVl4ey3SGo-3nL=cH5TWbE5o>W+jvbgtcqIHno9V#IB!K6ZOziYJk{ zWjEXtKO#H3JFwFiC{ewfWZJMbcTe6V*hjn2%SY)s(c$K1;cJ^xzz(c`RBS)oes zx$O7wv)t2Ln3a74Sm%|qn0a?|Ueigls)5g{MP6nNj_c{D*Hi+m6v2@VX?QI6^93 zomTT?=h(IH$!cuuJbu23C4ay-5WAJHsD;+Mg!M;P#h}!axJ_#7{(|GEY|oB0y1*q# z(&VZOQt$hH4d81y^gpzZENG5|NF29ec9)V(>n-2)d5lF(D4cb&jr4*qBquw4UVjyJ zc9WXDn?=P0LQ)CeNzUHg-OkRU9=(7q+zD|FYOMN6Ajz>*S_lJiuaz~q zWh&{Ht4;fTklCl+MtuZSBtE}A5GoQRrq54o-alYkMO~=WUN~ykkrrsrHMv1FIc)Vl zrYbQu( z<>X;2QfE6Yg*`|=LY&sG)Vv%9OgW6@t}aK3y&XN~j#tNzH!RbQ>yw!Qx57xS+3K!( z6W%VjM)3ze&l+zL6F)}4(va3&Mmq7R6WHH?h(cF+&xLfZP@7IWj?ZmyQAbek2%nJ* z$4OfWKj7aXlDO~yJr#O1h%Kw;P`wzWj#fb(4{#Mou@d}moZ%)2Bx>h>*13l4Mzjfx>1BkYwz#cNqwAF&kp5DwCo(%PX z!hW4&!<>b3mXE)Kc7lerI+qjP^g)h#7cC% zvhfLS`H~d8SuQx-eA$kXB*jvK5a|zqkWC3{E@N{azu8_^vbiW0+*!%X?$N(J-J&ft zDMc=_i#Zv3Df!I;p@g^J>4LmE)CjN_g0AcvY`M}K?H_IwLYCnggmdi5F+XHX%@deX z?X0wrwseM+O9aYhTf&9a!lPfAQ|qg|(qFA5SW#5=s>&7#Aeoh+^892R{2E7q&Qlau zuGceyKnnYv8C}7hGWbPExQNG^-#JEH(bF!qGYuJB{J8 zdXuqOBX-_2vEga-TXY4tG`v}#ncmnEwop=L#MVQ4)v|*kKc<^gQ<@_%NfRDwZj zN^I%e#kSgzbeiB$7G049W<44sZJc=!ys&T%ND#Cf8***;;wH>BN%9_27SXpfh-Y7x zze0FVk$71#tq|O4B>T zd`lNNJ!AgSK3+rN-PLQOm{osXukPJ7$?x&!8uE8Lj16Aq4cqT(IH2pGNBWJo7&d|J zU=W_MXa7u;K0QCTLoeU*)D#$i`Vh2Ov5pPQq{R#_SWJK~pZhK3^Fw;~Hr~deIsyk=9*mw1@mubs{de^f-w%gTVc zwr1z}`;*<(71?$%?whEEYk&MrnCXZtQXb)gXh`B8P@~;oz&wrvBdn1dyK7DWl3q9E zHR*U@)i1uzzcUI*yB4-|orp=>_|0frJ|>!Q><;g2t-@s|;0(=~blR_Q)|7a!4lnfT z3U!o@`)VkM&->F9tR%CVjKP1@

;~*t_l!aZ%yYY^HPDZaK(pjY4Dox>G@3YNtT~h0I28m&+Gv9b z4T00hQhBiPS#$XU7fudR*(DvaBl~@J#B|tYfVU$-{LF{EEK)a`JG99x z8ApaUoVPnx;tX;1AI)vaRd@?i>hdBnePSy=nR>j(X~S#23!jdA4o_LRZuWZ;PdT}q z{4GNO@S>OR9-eIOZq;4&T3H8Xsn^94uBIA)((h`Ap#9#Y*Wns02%ZBk^AEvJ7BYgj zE4=p~zjk>yd#f}BLSvhA^b$GM_9Ntb0ZgJG@cUja^{aPjB$fT-I+$wP`u?vjN(d!c|mU+mbUL)~vYh+sZcJluAjHr;zH( zU>_PQTC@^ZWHcQ9q*RAtv_O?8IJ385h(lW&8d1-AoTQP)CXP(QzKq+o0Dcj7A16j(N zz{WvJn_S(sSX052r>r0ff2W*C`eK_5(g990OGAIBrkDg$Wg455ykJwn*17Q&rRXR> zMLivoz*`1JO{Du<;t#5F`2IrR*{BRCXQSOu)i6i8ajzZMesX*Y$4D;08E3w8?$Lar zvFUvKdG#YMk4&ygjhBWN5fOJ=0$4iO(+jXftYs;M-!^Jx`lrlGT0;=SA?D##!TE|e6}ZRG&}S~!4d5008LrzgT-=S zH!+sZnnJIR5PlB4(Bh-Z9Y1;BgvchDcMZzO_j!y=tkb zgPcp-E@*Q5@(y~sa?!`}`gV6hyjjN|xKK}UnJ?Fj$8U+La-ClsxM6_bP6B$(=7mTw zhk1?tf%hr7rLXo1^;k&20F3eOcYGy3oRL%i31yf64M2}v1k)Sm-_7jb57FyOh!P+b zfT{)!MvpqMw%~1=zf00-B*6)tFhHD~^oLy_?HW_NI`D`g(L}vUPS?k9+cvx3h!I=9qp8 z2a;;=-HxOkNI43%en&GhTWHv?xMr-!V5x1d8X)Xr=-9S{9j7O8rT^7{3dO(z7I|e4 z->$nfhQ()B-2}{+ahmW-;S+G>@MyX4P|q-J70A3c|B+<%>98!i4k}xN!4;;pGNd`Q zx#0d-X8k+rl>J<4qepihaQ{YE#xl|w6&G?!$nP2)zlsFg!6lQg7cD?X#f zm*AB{Lz6VGzaM^6toV!@Ur_5Nevh*OO@NIr=_`kDCTa93R-FcoFR3esxF%^`jBB1l zmUp~$6G-E1{IiHK_vt^~HNJPyL3EIkdJ*E~ra6Xo&LWpEY3?&wp^d03km(r2o|Bl2 zOzy(3=qL~4=c+z_#~j<-bx)zUj`i!evafE|!U%>sK(5ii2oW=GT&8mvKu!N*IRf%e zy;RwKa;JYW9$g*X({p@i$$lwdh!X}4V`-4=8Q=V^dza;%UgHb>+Pi&Y$|lI#e3M~X z;Mb2v&N|*Tmd{elIaiX#7-GR;rei`eVR}x;*O3}|vLV410Fsgs=XgBoj-wmk`G7>7 zjJyw)6QVL+Nk4)Ie{l@;S6(_|8gL(enfQ0_n?1&P0(sBTt&Hb`H(Sq_RAY&fC91roQpvK(q{0eW6Rv+_x5khV zhs&oP@?<$Nvh2wevTT>0EXQ*Z!%j11sb?S#brz-Q(G^>qleZ+6jp9noBG5GsXE05f zS!741G=RNCtS?O&&PI{8UBW7e-E61(+Y`}3f+O?BsbpX;+U01l^L5M&Bp*}VxO4$8 zS&Gi`T!%V3fhnT0u6Hi`+PG?595JlJ+HM3nVG(vF6E93lg{y;F8%FI~ee`b=i}sNz zraNURzj48~ZK0>{3$wqT6oEFrZ5*%1vd@ zq!WPEOuf+YT$;M+!z3cD%3i=PjFtD;u*YaN01e|DjW;&(PEx(|d+g`~(sR@GSheAH zlKwdTlIDAD26jFyA6nRh)_}{MZqDvIhQ$EhYljw3*&MC+3djRM8`#aKg5aUl5dGsU zyQ(}$*^LZ7K7v6VvWGg&HHt6n={SHvhR*lp)^amx%6Gw@bDeVPw|C38Ms8^DBjoFF z;odMrsB^oYJwdlb&&s;+z!TQ2F?rM+)%V28uFHS(2%iYwuJ`#9+|HoY3R zCOkTue^l&gGbwEbNP+fvndD1*RBpJs#5O~$w}{&GSN$IQkn1E@y?lNV{F1$ULuF%u3)P?<-%j$23*|)0Q6rZ=KH@5YW(_{f{-z}@|)Lp zke4`f`(+Tx#9riTWbx5lY(GUOxB6eSIKS*BfvI;c4zFYBpJYYA?h`1E4>;Mc!JSze zX2kY;ocTRzKH%8A&MK%3E5tpWvPCJj&{hwL3~KZiQ`0VJeS1DBZMj zoZM8mq718_DTwo;GIO+$XD4OpNMXTsTwyAJ3)A~AKq{#hGu52Ok%-KqbR?g1oF~-0 z_F7@RM1u?>s~=;6sbn5XZjL5S)XX!QG7(!~g+rqbD9v>@hBd*2-3+08Ia z4s+FmdHr)zW{~RCJZ>_@XgR+Q9BDP*0pI&~+$7ceELnyf%Q9KU$aQf(#w4wDQt%(1iRfbAsNF;Ip}!ZB8c>r7KZ%oF#Kg2N~-@|jJV z3s5To3=(EL38wGOCr11!e&h#z(vCuykwlbV$1TLw6&5|&2z|l>Ak6R}&UY9h%r~6a zcg>Wr2qgPyQVf7Jopsy8jGMHS;nMkWu@wvvBS3xiE;%7mOn#+icJ+JZ_t+QjTe?5F zRwmhd!b9n2#{l8lHh@oNDxkhVOR(q_xddE3Nx@m$B{1*jDU8kLs(1y6K^m z1}r>hf6})4Mvsvzv+W-@@rC?IxxfP4{NjksE+WQO1W-m_i2G@aak&Dp8J1&8I$jiY z!64zgm9CX_sd?QpCI{!55s`kLIFTtY^`5~8ZlAomaI2U`YW`jwU8s`MB%Ruh9c8`( zLiOXOp?b-td&s-JYPzf*nDELhxQCEc!Z+hc5ui8nIXj@2&Xhm8C#T~r3Ryb;grQm^C)DsSZKSFJg9y7Zc)>vm`lq}BS& z^sqw8!TFInZ=<0l9PAZVhSyU$iS|HUNxn%(UZ0aRW`)5AZ&A4&&KDEDS>Oe0%yA|; zd0LkIQrefCNx8h!>CUXZ7r~V09Kyc7vhsRFtqRayzX ze42jg1kfVrOt)*$okS~ip&Atzw+WnF?0}CmQ3xE-bl4gUMkXk_5@MQ=);AHgj%V6v zDoe#OFHePR1@J}!0si<6XYi`ThRHmFgBxm9UxaBhN6Y>*Yu?-tHj}YwR zp#|c6Aej24_6pM4Ch__LSEz68`g)R-53d`L%W{gA)9?y;D;HVNFAfI9)|!(nOsLk! zRG66(^|WuTnV0_bc#N;(W3!zdq=sny+QVpWg1FohCxGy7kyJo^StvkwcI)-!nLC(Z zzjMhs>C}tR-cjzvdHJQFo^9>u`XO3HvHj_tCcj<0Q*YZjNdt%l%KxB-gJXRnDYhoK z!b@ey$F`QDXos=Z->0$^>9{k}kKt6G+G231HsQ8e9w(6J!YQnO$gU{Z(f6ii3#*f^ zGO1fJsi~A_Odq1Lp0Xu1kx1lRH);O<_bxfkEM*x;&13rH*4M*XIAqY=4&CRr$_S9l zPbtEh)J(;7?PoLxVylXM-)%3@|3+=Rk5lGt{1HTpbW>>`a85nv2BmgIw5dO9TRPE8l;02c zdg>b48&Rtz5bv4v9lz_((GC4IjyHnMj@}OOJFaKMm(SG=5Q^kIX6g=D+xLm;{2Q~G z0HhGbfDQ$b&{sE>BQ&=<{plTbS%WVi*N$%B7i|l}&x~upX*e|nB7Kf)d+K^~s?OQN zJi=8jczaaq9`QV?iz2;e?CXy8X;hUwQKyK+Gac!kSbS)f66EL4l=%=yMfTCc&Uj&o zcq#1op&ZX!;Ovi7LBEoituRvx+9IOXSb0YMqgt2CY!`X2^=`x4{XDt;Z zi^3T9QHPWQI1;D^JWIbfDAT5zW^x398nDu0oSB6*1CtU%F}SpNWRHS>A8X%G(V||> z*x$fZpk>Vj>}s{D56+R+(pMyw%+t)BxTi?44{Jvv?YN?JjXm>bGCDFtbA)c)3zo48XNsPjQI11=b$+t<$-ZUx)XZon!%SIwqf9(04V7&^erR-O<% ziB)8035-7WRlpg74AZ5M|9A)jRe-&+V8A6B>`ucOhaI@NE{Ckk;Q`*UJm=q@%Pb+s z3_5V2oZTnPXoYh>XtQM;IglU@Ldw^z=oxB}P5oxc93icBRRzIq=@-a+Az&PCS>d_b zG7tybS#V7mY}0;C)Ta>v+mTz=+tbPXaVZf83Y2cF8oQ=Ja4It^fUG2GY^bx#32bdE zhQYM+qO{Cfvt=ABIV)?kgBg1;=GF<4(va2BW8GV!S<1S2wTdt#(|Rg%MI3uD!2Kf5 z9JBAJ;eK;~UHk6J>sf?S%v}{qZ;>+iKbpevU7)U^LFe1dSMeaW%6?bk5frC>9%!92Su z&ptJ4w;-T!<+Qq7*k>?Q&K%c_;PeN~gUh8~G)&6ZAjUazNuul@!7d>wtApn+sb?fA z6`{^fnm3g+s9Fg^|BY4^S+k*IVZ!=u!I=AzNC>!7RIgo`t+cGsV7l z?h#El+NAab*zBz=)FN?IskCAT&Sgxim=`tqt@}T=q^%t}+hnyBcv(l~9X?u4EVz*O z9dI%98E%xWcY?3&Ninp!#BXd&URF-;U7zDSJ0m&u*tt5(akmxO%OXuRe(7c`&4=F? z8|2f4#<;gMQHn5+s)t_YrJv;YcEWh21(-d~gkBb5m1G&@Ur07~t!%{tWt7?JBmyL0 z#s#v{LNwV{K9XZ47?o&Jln)XdJ{?R-C*>Tj)I=y+`G1Mgt^n_I@g=v`#=m%{; z%*PMzhMNnx@35(qYmdvopyn)PrT~*1Qs(%P;$cAPejq8lMc_HZEt*L5Z_~7~^y=e4 zzbZ%rJ=TuU`%!6|c72B^wT;8@9X0*|UR{-2>p9#*e4D8EMQ(brC{Nr! z?ItGF;BFHv5Q4e|@geW03y^;TgTMxYXnCKMoV&0oCCeYw%o8txz228w)U@FYV#x)P zaKsZa=IX||w(*03-sa##9%AJ2tbNuFj=jaIuPyxR!*m5{F;jZ*~rxzklD6ra~{-K3h0@e!`CY zU9u5mlLP(OaGRyUGc(D?#-P%-GR#&hyPUGd=&Kv(j)mH05|6_>$~1054})10_3<=?a^w z?%PqFs8cAi3^mo)=}OEkb;f|A#enTn3-*9hxZ}a`txMnKG%I;zI$oGESx!S;z;C7H z-heQoJBI}y7-mX^n5UsG?NIGsS{;wE4Gn96O{)*}2nvu%+Qn+c7@ENW$TjVOw+3yj zK-m&m4NBC5k1Y{1C+{4Nm20ekV1~DHi@q~2tDxG+w(|(gfMNB8&wW9+QDiHtK zB|bzI6S0u{4eWe#F_=+(4AC5~t?a=7k}dd0Cgo%gFj_rCX4hVu#=4ty7ekwhZF^ZV3Ab?u}{-{?Z7PUB|j_(+K7b`>jm7@Z|va0cNwH zcaRGw5c$fv`5Ir$W&K#ZKM0TVIhYuVottbMV@TR_kP+8~`*52s2r0{1*{(ft58+*R z{L1*c!H~2wo6(YAI-dJiWnk&etqg7{S@qB_L6w&F@0E*KY@(aP+Z7C!<=RMN*NTV{ zdo_-8!>oVA(8^*gNTQ_7r>XX4av&=dW}&uBfzvp&uvigjYzQcQ*h%PY=uH03Gs`T> z(!b_amz7BhnZl_paR#}zN@_;NR?~B9%s9>*%LfY$O5}fT6em=Bqp}Jlgu3FC5z=PO zG%0U|B76_&e_aw!mTht6T+$Y>sk5Ry9?Pj3uF9cL>MUBpdF25$Ee!1BfxK+M8D=tr z0&W!h(u8FeQnN%O`g57p$VYNPGXHNn01BJfH3+n#lV{vSj;+{-eQR+RYcEA0j(u*m81KsgW!u5Y!}*U z@*+FhODMmoysqE@tD1eX(m9}L*8~IVc1jOeaLnTsjZ(BH3iB>+^7owGM{E(@(CJn& z#3=UvKydA#2vd*)(Y3*$iDlh>Af(UB1a0rU_HUO3)BU|nOTXZQ2}M7Gj&r@c%-2_YZd=w+U?LoY@Y$yE{muKew_+nWZTXdbG8E6lzc(Ly_N*zS$5-|VCe(FHUW)p zaMz&ipqAYZ+Q^VRLjn5Td-B}fbr-fg;f+>iLj8%OIqD#p>M$F$-P~WpK1&eek+nup z<)X%PQ&}k~u7xgUl=du3vty^X?L%Uv?k0HcDze z$6w`<4TMY8rq8`jLtT>$B55BMiXix8a83s7+g~_i69yyL z4DcqkRZg*;A$uMEdrbBn>NqVx>V>aAp-x{Ia0(%^MSuan_#G54d;+Pd1J$#z*~9Cu z20x2?jq=YMocxY^m;}~&M=FKPm|156XP6hWEVfyxM$nJkG zZu@5imLnsm0?=b^bB)ETKxVBBRUxK;0SEt-MLzonv|@EEsOq&{+Ge9K2|Ee9fC9Un z&+|5Gsn0R8!Wno)u2jz-2M4*0wG*}{Tco)}nWIBbOY81V2OIG@wvQ72aeB@p?yaYc zE2qvYZgTnz&r7#&n2ZB~1IwiPO$eY_S8>%tfi&w=K|mtz@j+%bo-iBn;5(-z z1Y+A{Br(h4AqS>bV?ctP^xz#+C#4~}+Wnt!n~~?na7@lQ7b8!#!6ze6y+I_Sclkjn zCf&pvVjwnu;teV`f5HtjHh z-6H}vF#ehxx3b>zg*oW6H;DZuI(phr7|)&bex*8kYRKxD`jc#jHZYy?GkPm|^hYZd zCbQARd>Tt&uO?7j3mJ~hJjT6&Q2M@58s=Uccw%NgkhD1Q(JGA+%n9-LAw;K>WqT34auAjGwp6P_AU)R;2% z5!iZonN#G8n3f@@cUzs3PpI{gxf2nP-RuzYX^#gopOUngU=(wJKOeKLQiAU-C?%JKUK=fa7wNhh;g7$&#@xlu|_fc={B0zoG*U2!Bvc zqM2Q))Ga>O+ul~En|&7S)y<2;rKrd5z>h#z<-Dp+uOy!k>f@oKClqO<3{5D8OSz`O z#xljm#*|Bkkfn&+vF54Rlq$VQL0md>0IwHWsJg4CpjiSDVp4t4ze+LB6#UlN^FRqUKN^3Gy)t=sftIL=)2Y) zN-V2tJ{=R>EnrjkP=!4~FK$3<{K=492;=a9z}UoV4Kw3m^_Y`@`} z2hzE70e6zC!IAvfF#K5V4XUZ624gHA>Kn@2su}MHvwb%D0&g1^5Oocobi!+>m3F@x zmXbcQ=?cGi1*4#on=ZdodM#^X_+p^HKakK?1pI-Yc+>7s$$)!gVUF?P2Gln}E#uZnpkuX)Aa z0nic+N_fnvLpofkz~}bO)l(Bz*v*<45TVQwtkuh%L0qkRgpty0mFP5QK7$nK2$`cM|Am9BHL6(E$W$2MX>{EH zCO6gIG5mwqB%fb%RyOor>fL|=)bSb=XvW3NH7d_24Nf6yFRo>H-9&$7ivqNr-Z8TE zzTVl7hN60!O)(>OGrkkUJQij8W{~{mUTP(x!G;Uu|3p?Y zOX)~e`!O-$t6rb5RRF>}`t{wvLVXUdDzg4!K?quLy#qH)iObZM)BRxy0B53SQ8nZ=Iv6wRpxQDu^?q zO4K2$=p_l|!-%8}qsEz_1=|dhs}Tx8wvBrZK)dw02o!`MTWd^Fci4npj>)h+PdUM% zk|k`tr#oGS=q7PW$ynpO#Ut6Ad~!F6Btc`2 zbdi!nSkyj!7qm{{D)xAK;HhBd%KN1JhLA^iZMEfCBE2r$~q)2tnnk z0404cN9Co@#Gm#^%NwjyB*U55qLO|>Ym}zE$@HgRgbB>(yxas1#oc1^Az4w1;Y7zm z(t&Vr41u9Qn#4R<3kDEeMwE->KN-b?y3!(0g*({NLyYtCClmc)%>a5s4BZ|}V7o81 zZTkOH#+ks?l)iENo^x*tE%&zTw%rz~n{H(n+Di#p6Qz_8(k6*ejSvZSaV*12V;f8M zZR|_-3^NlMTQvNUr3_>2|KEGg)iQiO-=A}y=Xu}ryzhDM+4wwv9iKBTTe|;`u*V&( zo<;eTZ|Zs}Aj|ORcH_6tjX%_SF1y!$SXqA6XxHeXG0BeQqi?5)a}2ufdAEL#Ns?*C z1Cu`2+F$W68Za+1-ttpG$4K2And~1&mrMsI>r;ImNE{MWWo0IFvsDQXqqZA)gshI5 zy}DxBq2QPwqJzzH>&_~=6i(bVFlO=XiXOYd?y$BidsNsQ3csUeyXHuR&aUAzbZ=M8 z{#Th=xLtRg`b3vIx@L3!TCZgmpWn@EDoJHnG*#br+UCaK58I=V3{4bbZ^zft|X&8S}bS?weBKeQD+GC->^h zKACO|T3@hJ7ION7{e6SKekr)!HaEGK7aZw-y;s(`Jwf5i$B(d4UL9~pQRkzV{#08vJL9pjI^gE&b>kn8 zbL!;QcImmF`)~f+R3)n2GyYIcc|m3O>VWBcLLUVrKT4H_ygx@=ZeL07QRV0o80`Lh z-QhK}-pT5Yg`X;`exFMp+1IsQcqm^_Br>vS{>Z+CmQ{Ef%5=ybIq?ra)0uJAUp*Di zXRk=~oiI{d^l!~<7nkxcd0`z^FItw%)fc0c4^HE6xG{H1c^tVy3c z_uJ$1)+1Y;JWyNv<(kP?kG;E75|laL^K#pQ0M*j@tE$HS6roPSoe174OWT{@V zn?s6ZiR5kM2JaDj*+W?$v$oA%>11}L&8xe`?L%HfZ^&Kj;vZ(QH^Be#-FusTEbH_3 zm4`1VJ}^&w^GxPFxgY!7#H7{Lp(T2|m-bRwo47g*-ElAK(9speQL6Vd_1u)XfA5}Q zJvS(6;q4_4^E;JP=Cw(9v~u!~CGqQ0Ys-#5-@957UhflFF1NvPJCAX_=g3mWoH~W9$YrL z-Jq__j|OS>w^lh#B()^p(|6r&liSH6vNojRkYG zV+;PS`SeMPE~}SDQdcjOICy;`?E+>?+;I4%-dIyj8VsDGZ5hzcx%AXy} z-q_2r0c@D%^*0YLk475fKvM}8TH)iuXGUAXmjjt+k;(!wkN_>94RnAmXa!mWJ)jQ^ zfFY0q888CIzyz2AGhhxZKpS8QP1EWAZNC2ZjA{Yb4f^i@Tj0Y3I zM34+7ffSGm(m*=M0Fyx`m;$oERFDm(f$1Oz%m6dNERYNGKtA{Z%mxKu4wwt(fkH4J zEC5AdAt(lmz+$ijlz>v821~&*upDq;1y~7Ifz{wgum-FJ1grz=K^gc7Yycan#Dc7SrQ6YK)J!5**|>;wD30dNo;0*Apb;0QPhj)CLg1ULy!fz#j&I14Jk zIdC3a02jd}a2Z?ymEbD)6@H^5C$4Q_!y!EJB{+y(c*eNY1)fQO(K z`~@C?$KZe933v*gfjaOUyZ|r3D^L#_z-#a~cmv*of51ENFL)0=fREr4_zb>)uSFKA z%wj-=r6Q&xp`t}an~Dwv8pD5MCB$Zeyaa2Z8 ziKmi4Wi*vUDr2aOr81665|!~(CQzA3C7H@3Dk)U>rIJRs(y3%nnM@^<$`mSD%n4j| znD@{5y9&84@nOtKu9uXtGHI%@)>spaM8#xlifoY*Y|7glK&i0QjBy?V!Wq_7+|+~^ zJw;F4y3k7!<{6joa>J%|GiQEO5M!<-6TR?ParVIqYtnOMHlr`pxniCN$(gBwc}Xn2 z=N7@KCpb?fK9@7+c_*zNMylcRV63@;W2Dx+!3`}!+0zE<{Ou0pD|SrOQbQf?_DiWg zNlVCPB;*u~a`wJqV?->QW=wau8h_m83*)jGFZQUs(QQKNVG3aP*)*DrOKr8uVpugP zr-$E=vrGW>(|Ts)$$qxNyFy%<%5`8Z1v{YM@L$`RE!=gc&7G~WT&E=If9TA~&_E~mg>j1X(biN%ORiDIcCWP@KCHQ*`d!*o7hoy6L ziTfCgmjgyL`rvgC(oPR5U;ZS7ZU+DgfB7(Cgs z4H|=tC{eb`i@m&&HyCVkXzE>98i(PRvz>m1zbny4?Kw|2bt`tfNGiWGemiyoxk)du znCfA%WsmQmeU+AX<#t6h2#E?^e&>>L=S>+Y=Tc$+Ef4=RnunIv_n|}$mp8ZE=S~}8 z48#N7>Ttvf7nQ>%$ry?(ot{OTc6?)QKs&~f^N4GlhFS2++1*}^U6Z4*__5lZn=Fcq zY$lBD-=oP=3`-BDj^C9@anP`%7&9Oq!l=FtMM3>l~ShU45bKp~rbIIh&_((6WcRGT{O( zlrzMuLqZFd15@7vwbnr=V@+A_bLZg8r6>>JX zH$OBbS%Y`4R^J~zZUBOoYJxaL9cDOnYKyMfhu^xWfI}+G?X_q>MlN;>Wk|ZOC1b{& z+~%w!{2mv}7R#9^;+c)RieTaMTh3b?=}VgdDTlK)trtitk(CvDKUA21?!*zMEy>UE3McyWpx$T8T2X(9gk^wds_7RFC!O^-8USrabV zTc)p|Q(xuwe(D?Cd;_&aqM&B)tQ+#HMmB3jX3xrIZ1@&iQWpI_3a`64+9Hu}ixxdb zHMOwd55b=VQi+7*tnTP0uMT%C5(PS6E|qB#^+EkcIoo>-AL7pCnXwX51e>wYgAqzY z%GuiS&E2$Iq^00q&$oV%+}uqoLb}?~A^veuTHp4K2c!FtAxYR2Iia{ zib4_v>O*Q0v&x}IzCZQ9T}!zq7jaEn1h*#A6OH6-K*4__4M`C^nt>GI%*oklh0TIE z)S;B}^(0L+qv1QMS^A$Ci{@$N@Dt*;vUyC+MaE7@h(Awj-~XL_0>f@ViPD}ehTU=J zf12r#@v|FK%*CdhjoI52Bh~z5geNaLrQ{1g4wnN$(07$FP52B3x0@b!3mL>=;=@~H zAUXP7Lo0qgx8m1x^(Ku$G7Qw^r^TAQV(JFCZIlH}wHE0e=N_=TmL|L9|$q+>ahtqY zbM9+vJWkSQP6ho~+WdQ$qD8BMo_s44Qilthl`za#D3U5?#lE~pbNS^zecAIV40j%s zm0>Irm0ZQH3u{(J{>4Uw zcyEja(OpySLR*!LoaSw1q7GcWUWaxBg*cI%Z83c?sx~G**cc}M zIK2bMoY`T<#m?=}hA5WNkY8ztc&%43?;%=?=xDdk4Q|ZJNi)zQcx=UU=LZvJF)r2Q zBvgWXNU)6DfXjtlrnMHPNb$Z_(VCD{>~|Bpy^d?v#9#awO*!)`PgomIUm!S7?sj#G1Mhq*oa~M!pLH53={XMzmAHr$JkmvG16XE>YpT>pGSnBj8l z`ic#g-qB1rVgki#?-$&I;1?Y=O$uSOWzD9NE!c>X)GUxO#ACUPaVE;;$V~EfgC#@k zi<}vI67h>Ap2cRt+(~kJC(K4iESc`)6^&z)_Yg}ggm8BGpJXgH`bjS2STm#n=iH23 zfx%ZYe6@qn#*`f0