From 4cdd53db22939619fa9a3139efdd9b63f63b407e Mon Sep 17 00:00:00 2001
From: guide
@@ -163,7 +163,25 @@ In addition,[GeeksforGeeks]( https://www.geeksforgeeks.org/fundamentals-of-alg
**Important knowledge points:**
-1. [MySQL Database Indexing Summary](docs/database/mysql/mysql-index.md)
+1.
+
2. [Transaction isolation level (graphic detail)](docs/database/mysql/transaction-isolation-level.md)
3. [MySQL's Three Major Logs (binlog, redo log and undo log) Explained](docs/database/mysql/mysql-logs.md)
4. [InnoDB storage engine implementation of MVCC](docs/database/mysql/innodb-implementation-of-mvcc.md)
diff --git a/README.md b/README.md
index 20fcdc97..d6a416e8 100755
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@
-
+
diff --git a/docs/home.md b/docs/home.md
index eee0cc91..18681f2b 100644
--- a/docs/home.md
+++ b/docs/home.md
@@ -19,7 +19,7 @@ title: JavaGuide(Java学习&&面试指南)
-
+
V-BQpXpnn*egdQdI-Y##O?IP&kTciu~4Lv&PF(-T9j(?ZFZb!$r&Z3bt zT-~z4LzZ)WdvDUbLxiS^tLDLdO-k|;Q*)2*l+3y+DJ~0TiV@!z7ZaU;pID92y({Zj7rl<$4Przo&;3rfHLFl?Ccs%j&|Y=@Zj2bR{HEU~kc+}@VBT#K zDi;n?5m+1wTa;6=mgQP#rZVi^{F&2l!hK0DD|}J$C}o=C({}_>MXmLVfC)y#*LpKf zUd;)DPG3BGpC Hqlzlawzk zN{$27=w`$JqKEHEL_dR{;p6=T{(a*J%i3w;4Kp+sYstTY3 z0$~Fn5T*+r7Me3u8bb*JVSIkBp$A1*g@uI${&Vs1@uBbc=xcLy6#YZr?? ^#_jE`f`UA1 zvMnYiW^u6A+S}#u@bL2T5`{t?A0Ml$t4k=T?e6X>0)VEbrW{m5Tv}d6UT$`Fwy?19 z_3PKEsi|vgYu(-5c6N3!7|g=b!tkZR<*z~0!nJSTzSY*&4qjfqefw5aLQ3iRORLH= zn7R8iBTs{bfj33{iHV5`?b~BxV`XJ!xw*N~4ZmbGO 3XTCe9y(Oja-KUP6+={qxf4Ba+qR?1xmrN9T$Urz=I$F9QYrPiwT|j;@ z2LuwTRRt9E{O0$%L;v9+MYrYD<(U79|8tkQ&q0xBJX2h+pHA-IQ{{fzD&U9=8%z}H zOr$?y_#U5a!?4e(^WGQrskL?Nz(T$9+uli=#3z0RM%#QF3=rsetNk@I=t!~n=xnc< z027q>>QNJ7%aIQk2V{z8YePAnP+nAm5h5Ozlh8`pL3aHdB%8fEG6z=00Wp-5!$3?3 zP!cv6J4E*xfDr=6l;;2_Kw9` 7ryz% zgJQJWCY~8QSa7bSp@v5bS(Q%@y-Ft=FaU~+5x5VVDDDc|bSn-S%ulU&1`DWXD|cOD zOnLiI9#}0`gnG>`-nhcX)6vpzCG~({HQKYWuw<&tAhfv~uOj%eID7ogI6}OtCWr>D zk$+DE+n1hggA@=kA&$l^Smw#V*kI_BM{I}&s(&TfK32&$JYVBPUDN3{Mb@_4bjwm` zVt&{m`%BPG6wE7&lsSH+%{o)|7;f}=Z1;#Qa&3P9JU8#0=byIe9&5nItex}6?9 ZO6N z-(K$DF`BSN>99I}cg=u@!C9!!!Tb8oR+OTLu<<&m?|J3M^8g^$h&P%G&gH@U2d*n% z+~m2J@t1%YA>$zRG>rk-mOBoN4=3xAP(%N@fjklQ*)T`Wek89YZ@97aB(3-qK0nIw zh&L3@LV9(Lg>Wq|r}2#Os95;kRFB4J|KkWEijImW7u6G%0ml0Fw=TMqnk%I#0ZVdG zLcr;AvMxTgBHDKQN$~`eB$PJdY0%PNckYkiQ?`zK+pXmQ2red9!q@zd i za3c`#Va`FIJbqTxD#E)l(e!u-D^{nMZTLs7m{NTORh7T!hCKQ~zV{k?&zZQGeHPC3 zeW+)4WXxzrBXo-vec{p2fI%F8k;wv3z>=G)@@09Udgv1CW3=g*oA>Y?I~{b@N;D1~ zTY3N+HJWVXaUob(V#?quPtfGsQy2h6D}$3?{Ue@eHTXZg 7H(Y9H!qdcF>vM-cq`&h=lRULC818!NLZ z5lwW%cHaiC2cA6boPsw}T}=mqs&EaRQW(r7pd{78_;C+2ZcvCD8S{_ZOsnp(6Yr9* zWm)Ayl|3@z%jg>gn66*Yat>}92PFAYs8TIE+84nK`osflJl ENs-wYzCr{HGl3C@KmhOef1d$cda24VIW-$+L~XV*LDwF ziL#>|J|9Uk7ttR5DTUa4K!*Z(gtbliHfxAJr29qxgIp>EevR(pQi9C~f+6Ve>IC#d zM~S$VKr`z?Mj~IGk!$MS5=BfTrQ+n!7k@o_e|`iWPiswa)@0lD>pL*6`oqW{tRxxd zN5-7%NX1u3_1H2O`+Wtl%)8T!JWO`UY&eO7ONc^5aS?WsPaaS|z~Pf|&QjUOXQ?qt zGbc?G(6yV5I@x^`Zd6`i<>}WxV5WraPx%>Mh6tpMd8}O=+}Ewc?b(-hZ|?9FTl<@$ z4ss;Mes aQZ@8Qgq5+h<0^zWZ=4#+EK7x9EEH8&a8(cVGEV zB72qA0m}av0aGl7cTyuUF4sQ4(*VR_a-jsA$R=TsebnP#o?mk`ld=4@L}p}dro2Qv zvCzT?bAw&de?M(>>oCgcThn!A&@ruS`dQ!xGuLcPH%6I2>xgC2Ip~xh@wRB6R6k5G z2{}Dx 1*xW*j>9d-UDE5Ef&DJl^~%@wYZi{*Y_9rOp~Nq( zvA!I}5vRZ{cTT3MN){v#axIw0E(tjP1>%F3sysO)+5<|b@bD5Tr2(YIL3l}BqP-qc zJ=%Wq`GwhehpC_&K yduO`ZXR8)HyF z#1& z2i`$fA2{; z )4P5GjA_fBBbN6{^&EYar5 z6|lLIQoOKny+5)yO2Z%6wd5Y?-C%##I6sSf;La^o#}@F)eEqllYdF{VA|tCLD5mh6 z)6I!UZzO+)>)S706{tj; q0&$gIy*%N7JKDgz7m_p!a4{O*7sZ-)Uy6+~ zB*p>^n@y1CELV@_K88>XEvd9~Whw$ucBLQTrKth9g`>6hJg=OCO~MQoCLE!J6n~=B zbBQtn1gOORJ@*Tqdaion>AKlFJ)~P`D#*-eEq!ZcZB@lumT^ebfmf8GgmcP#;bWD3 z)Zg)YDMQ-o_eY5)_Pz_|<>6aee+B)W%1T`d8xex9eiOE!matTup>1@?Sj!@^eGPz= zc-k8@WDI2tmE!D>yt5s9dCt|&O{y{l^*RWST*2Z%Tt_-e5xAMbT(8*%U&*Gul#bwB zz{1l-jsspZ&x4|b4ta**DaO^WNLdOxmDdG~h=C5-IQjK6rc#8qu~J&zG0*7+3;+5w z$OVOk=VhvA$DJd90H&%R;nkaFJ9E!RxDWsvwF=v@KjFj9-Ec^<7=29H=z;&p6Y%37 zC2$D1ycbOb5dhGD)&op>{vT_>bLCdc^`QbJ>x{qd#6Nor>}1-P5c%z7^!E)|c1eWr zI^(O;_vi?o<^Fx7`#QBz1yDUm+Y-+!N!<^0^9L28XRdfch{6XT+3TDBT{r>g=6vh~ zP7A_HiO_aEO^0J*Fe3_>5%PxcGCMdI85PUULl%N}5%7RWIHtw_duVy+%@+YC#40Po z&t>;b@c3`bgN$}#M~9>F4|f)$){{B=lOgcCX^DjW2^XEX{Rv0iTd$E#^U8rcT<~qt zX0q4H8Hc{e*B#vV4xg-3o{Ww-r~dw3H+dpRnyj?6`1i82pzQ6UN+BSUX=KI1XIyT| z7?}IhGh93l#T!d$hr5vMij$rsGnWoUSf?({XO^dY>9Eecb=P=&R%lyy_gJ)T<)D>N z#q~->ll4WVl|!AgT_H1qQI~J};7eNLCV>mW)U`UzO?RCwCx`Ioj~{W#0cXz=5x76p z-gAOADcigT=5vvk0S!`kZdAw@C8j=h_w-0b#PZ&bUS_s8#N~;WURkZOWVWadGXBCu zv1DP00 z{pO^Yub*U;o>Mql*msY=#YiiVq$Ag?$mNY 2sNgyf0E<{wdaO2KRo#OSyOpM1a zzQKfzGbB~S_?KTZhvE(1r|~V;*PBP%&Jp^2QNf#?Y8_;wZMVB@Mxg2aw<96n?(`6R zT|3RO3wyro72MQQ^V(eU-D#p=jNH`cd#@1HdfSn~)xzntWJcHD1tGWm5+DN}jGPr? zBJ&RCgZt-*?=61K73ZDqIz0D=?yzAMeALCUoO%>L<5-Et@e4Oq{h|&Vzj#2Zh@jb1 zi0MuP!HMIOIhKFR!;4!n{2gEVlS_oubFAtG%&GXvnsBDF&=BE84$NkgI%Zk>&Srj- z_CA%<4z8B|XMdP-t{F~hu7{jSm~tFYu-@Lx0gJaiy(yH`pOp@TB|l_jh$M25eAgr) zdH;EfIlA?IPEY$g6y}rR;sr7bZTm)J^N~45D#$*@hb?q>bU5t~sH0C4}f}@^~6} z+D@2dZ^Z>O64P+^tuv2OvQzA;>jtbNS9zVF-L_BBmmvi%D=2ni*swgNhG)c-b 8rJte-liVk<_ZovLr$P7_Uszg6nI#VFAndqUJYTq;{_+oD z{}ZZL^I%-Lf_>~gn}^J6L%Gy4S?rE?6>s&%9>nmm*)i3hF8M#5b6~o(K-At^l&y+F zs?usP%~{h*m$R~QM{!kIK*zsniwLm#rPWwwu%f&@qYqf{YUTL_UwqdS9>^=gBslXM zPEO6o(V^<+mQu9-E&vHK2#|Lk+X^XUQ~o8H%GJ{e4t?~x56=*Slfq58WcO>LCPayy z53xofy`FRGp
CYX_J-TR3srNQ> ;@Fgtk_bFYJLZWs}C ?nt$>U^t>%aVQ}}5JpgOSf7y>YpK5kaQVHRv!SZ`R{$>YDBeQJzR6fIz@KN!5 zmzOaL3~T{+ylO&+Z$7} s1-p%rMG>7a$O*7xkH1$Q>0R-K?cPB0V zR_H+WAx?{lxQ}`k&674eSc-pB9LPp{KXwR1gohc=Rz2Gt`?>SsTB~Gq7wyChV8Wj< zcD;8qJz1fII3)U|k(f@^eXW5=VwDA{Lp;7X5Tv10W4X2n-uc%iq3m>%UU@|e4U7m; zoijBkk`gnh3|ufY=WrswvLRI#3@g&tKOEv^5$i0m=3r#P9=Ddo2Xnv G8r3esg%zJL z6r|88S@~kSarWe3P{T+ cZ;| n5b?8r|6tf(|MA+tenn)2VWGn@2L0DJA_>mH zKQSTF$w5~Xr;riNGs+$^X2qv(2wrlN7#a5)ST4kQ1m&(AA$re|UbCHz$|cj5D<3h7 zh!JPE%P|L-@U `;JBmjh8! HqXe z@tEWy6-B`OIe;4pvHxT%v{exKs5h347D$?s3e=mA7Lb21iW_}U6!z=G!`I;7a5iR` zx8OPU!w1Q?SkY8POB>w_PjF($-41DL3)Ske2-*rpTT&Np{>AKQS>5flT|uF`6<8|c zL=@&k7hswNQL!2JJc&!F-1nneIjITca{&MTpqQ;lAh8}15IFPka~kUW3s(S6x@?XJ zeyHg%L|C6?)gAJ)+fgm@vZb9`MbAAJo-AQnp0=q}K;81pIYwe$K YtfR%W;;f;%%IBD zkvf~aeFwwsN5v;I;YS g)CpR`n zKeYgfzqiv^kX^SV$ha=usCHFQ_zBm@8zuhrly?HzCqzPDBmRy %rCEMwwyqZ6Q9ie?Qk@O{JyP<>Jw`J0_@Xl%xk08 z3`N7QgB%C`Xwfr5rO{bXRC)^{X?`=aMto22#)hm3O)l#`Y7l_j4hld-X*#Kt5cf1n z2%O%T9+gwZUX>~H3nQB7J1d%KS|T$-R%9>{D=d7~2^}Pf7Hp0JZ}{SXuU~X)n(?up zQ-Dl@TT0>jqUDP6Ous&V3c0PpVWah4_7{%L5`aY5B-_(O_tdJ0!~qsB*=UszpLvCY z*|INyuc4fZIqH50P)qg9n6V$?zI{*ZtMCG4_FPq$h1Q|9#Q693<)?t0-<-dga3PP- zNdsnJ^gxomRJ4AIJxO$9sy%!3=Kq(~HYq7@dGrQBh(KAelT$P4GbSWk^j(sDK9I_G zrHJr`Xr`b@qkpQ3s3PRpj5z-{_&@4|L9LE?F*1-mS${?~;xx$;a WDi@YL#9YyOHYZKH5VF5d0R!22{*hg1JH}+*3P1b3 z?Yo+g_k)XU<)hXY8K@q1Ge4a*upbX@=rCcO#})#VC!kjwG!=h2pD#&7@XC96%#ind z&37)a2CDuE<;#+@iz|zdgF?i0yhu C*4bDcUE<32_i2&Boa#IK52NvaO}T4L zM{42!6Pw3+LQ3)kBly3G9cP!#3A;k_EQ5~eK;FY@0Jfy#kI-4^VfZ{P>y-g9Y?bj~ zj4Y@fLc9}UA9%vW>gW`Q;tAWPXEh2#y^^D&$1vq1JDX`bSshSSnwqD9DV@qONrD7Q zn@$WG *Fm6o+CI2zEb0_caWf~Qf1A=n&zO^4&L39xGWp`3 zyrGtWIbiV^dvWgAA4oof9u5>ecCrMT0FkiaX*kD(a+Jur!V601Ll{pb34$84wVncY zBK(&I$yrH=&}) 1 zd?ymcX Z*+20xR2v)5 z0&!X{t-7QDeMNTn)%aJ4AVOcC60kBa{%b3r!x{jNIbXBFK X?_z lEC+%DoB-XjMNEXc<+;RyAiP@s?8@tsp<*g(CoJS=!{{^ppmu)M?{Dc`-*XEh z7MSO8a4yyKFk#O`A0ovQ!Amyuzx*`uKPc!iKaD+v$=BaM>_i}^bsayY4#<-Iut^?x z;xb7>CdLpnf@Px2Gj8va+(#PovjROrQ7HUhkBjk;u6K!9G{~lZww}4GoMBjy _L7dywvV|zQ^ht5f-pW@Vqu}MX#Y@_P+p!0BaCIqHBZePk5iuF zAs>fms|wvoTLbqL(I}hnI1~fx{M&ZOJ`G@^x#$f>vM1ScX5t`0lHrG<3URVQ&$FPe zojqg0jAr{S*&ouQ!9h?%Wp&sK14h4zX%KQ-Is|Xi;CHGE-WIlrzfPV8Pc&*HoS&)p zq_)Lu?YyXcr0{FPp5hcP!?7KrSV7PFE5*t k4x>NW)R;_R+AQ2BZuktW0eqj~( MO_ao(|6k$_fSP$B0S782i=w+(@Cr$O8#U+|57C zIf$ae5jOe#LL+n@SpU2u`^D=};KN{}0bc-|M5ybP7gmc?qk+M~%^DNJ?bNst#1I5* zJ5U|?=>R3v6fi7lVf{Cr9LwVOUm^}5T)v5yo^I4Kd}VT_#KY_Y(O{Uf?9wL(yop3# zJCzLV&wFBFyrIQ%SJ$aab7>j??pLHu!R&CX=U&AX+%=SvG@QyLitP8w;N7!rGRYi%$BmxPU`I<+?Awi{{- `R7D?O=VAORUKwyA7%g3znpD#l*ptG8f(~6Cwj|`ft9w@RxrG3&y2jJ_o;@} z*Nt)Ig1 1)3S@PD8RL>zhPYUptZH_IN@SXvpU@U6)4RoZi#2#9SIgqH#Mq-@3S`-Dc z2m`)zs~Ll$hJ%S`gw182JIk^fVV+ Hnu(PYSK1P8T6%&9O!)R{DnEAj5mT9)n!RL>MWnmsH#Iil|n`+lUb zfKzJL;gfEY(?;wv?{|gy!BqrVKYTs@unE5yn*kmQX+Sbkl$Q%X!QaMHz_ziWr<-Ep zTpY2FiG@=WX-Q!*rrwrl=hep+7@6gqo eoF)jkCX zR;kxQs6uX;k&@9Is;5!FE?W*8lJS3o|D#Uu+MD`<|4fhq)HTjMt<0 K2)qzT*@wd8}y6n`AC|HVAeSmpo-OCcpv%MPusy-&r@aRaUehc_zFtdMbe<%4bLX z_=E-wLvipiC4izR8jcC)k_P~c95@&H91ie*Vb!BIY)nBbT(PJ}HCMA=a)0&}3lR0T z*?IrSn7R_gA^3@ 5$}O78|Oqk#3Ue--c7UXjHY8ajpcIkJ$a!+m2*W>I7!- zZ?fz;)u{Ly0%d|b^0u*PhQ62XLlwVDO#Cc%x~}}As^-XJ ID87zUu`$s)V;`VS-Tk^ostptLk-3ezo1{pvNi*hFW^{B(imi4M6?Yu|7 zet4K1* Tl&lT9U1pdc0F1I|x08MwqyitPC&Uw0lPoAyj#5NuML5-C8# z+no5}CX$j|lYxF;M#1@?rEEJMBb$ $FIpy149NmX!J3}i! z@q(Ac^pZy+TBlp)KjW>MK)mMZn`Du_!&PRKgoh( kVpCZ4>1eQFlxc_-;~tDu3>_%5gpW&mR51WxGt(SGJZo6rR>I$uONR7X{_dt zEXCMx?fDqzc8J;pv_bfBALM{~#qZx)CEwZQKajltI+0mrpPtT&fGYC8#8S44HF<3n z1nSWzZgv%A;-!lD@~f?xTLVLz-!1&r%8y+al8pW$ql}Uy+qowQH-QY2b07-iC_KLY z{MK X!z)MOnw+4@Xt?5dd8QKYuM%duZtlLh&bf(&^39^8!wFOD0}k|f9_w_(EQYrWvI zhvcXIFFJ-p?QfDlEXUjtBg6&vx;y-R?d7Ug56MjKCA}Pb{+^_x5)kyog0K-?pyYQr z?D!lE^G_%nzibv6RsUp|S1sXPbVwFtge4nY8J3O(Q%AmS%1|&~&N4+P={6@UC)i8x zA`VK3`Gi-AHU7RXau>#Sqiax2;JEtPt-}PlWa>A7)+>k{6}oIiO~}q4fv^{BBj#I) zkO$XpTSQep> SM! z?h^vPbE;4u==xt*N$;AgvZ*o0A{J2-ntE@Z=|#;!zh)Ypjy*Km9u7mnkW#3r+84ZT zP80|w7Tv4|H7t&W<8;EeOt{C*Su}m6^zcvkxD#6eq|EE2am!-#}@0Zd=NpSwuiP z+2-~4Z>d4~me@Sh)2R0QF5gJ~)=4Hu3h&_S_GS{1*xvKg7r=fXq84lVpoyZ(avf^N zgN$1yUX*bzcGK8!=v4*=W5#1XeWY4wIM>eH&sCu9+1ER-qAX)fR!JMLrZDTb$vpZ` zSHsI-Q_NR~#^k1&A)oyT1+=3CG&K2CzSc+)%9B!zphN*1oX-y(>ZE0U{_y-3+uP%S zNm|Q~n-#nJ5HUWXX21fF#=M<-3fu=(=8wY0k{`rBk{*wC7RZivwvSbq3Z9>Rrf18X z-T3#Slxbn-hlJ+u=j3|&hfXwG?4R3uli2D)+aj|e@$BnEuFtDy-$}Oq6 z`$gvRBMW`>E)mSmzJZ4lfeYRB5}x=CagWsR@L=Y4UnBFLu4FfMf6 ZJbx0(A)xDT>}rDHYrC%rPDRZZBA$XCV-P0_bCqOe_eHCO{z%V6d >d1K0GdKlHX+S7jH(7j_P5J2a(XaIxlf3k3dx=#RBYkh;O927BV1`d}i zqYM#08X0Kxu)zs ec^{&|1j^n^(cb 11jXnff|MrU3kMQ<5j`Gd@>aE8i8 zpn`q-95+a{iu&1pn!MCR${tI_cc%czOh(ZD?8T_=#Q4UNN4=ozRHDSduN!r ^@->L!uajbmsFGXl~>_L+Mb^2uu>rNfY_Yb=X=bNKRyA S~5q+upDYhNt#ZWcNw?Muer zlEd085ku5wkeY8{q`6xM8w(!of=y%$?s099Yq0cD3^npYamAmOz4o>S60*=0k zRSz#Eeu2G3;}s$~8hFHoU%g{cDhac)sVHCzY!S+zHrnxi;}StjRIW;kp&n2EI^%}1 z-TUY~7`e(QG`W !Jf86>A6sh+5}rLqTYY!qv%APQheS5m$`x?di|% z1xor{zzgI%S%m+GEUAdSTnGOayP-=dtF2jQ&U p73>e9K^a0*d)x zJ4RsbE%B_#JXQ>P77_DjE*KrL1kYQ`6ts5);`rMm^>!{|LK?-)uA_Gw8GOb}Gss&5 z+4UEmk7#YNjyAAmfq1E2*BO2a*XA+2{3*s_-ns0ptn)Mf@BCzlCQ-0pX}Uy|>an#C zipJMs`;_9MM< ;Gj21*fet>O14|W@O^2MO?bgyFtqs@VH#p5{lCW-tUe+xHvN1A|Y z#31H87RW)nHB!Y`U`58LIfbL^g<^I$-O^)i9lE3k3g=1X-QHBlqTXkadIsa~c3q^? z1m8JQW!}bTdBz&yNLm~SX44dvS4mqfj-7uj=`C#*U$CP*GbqgW^)&?OCMvs)Ag?+C zUMY8N*!Uh)7NqbF$T7C#E4>Fxr|7H*7*N4p{9+j!i#;$5>=t%N6#mt2oP$%w^EV6l zy!J-nLtnSmVrXylV{}F@rL0 K#XQ6=8j=WeAx zUvl3_L~iD_O;WNhh5e;K(u}7p)*J6#=zP9C2t3L)4)o%@&v ?W%FF6X8%!*zZWeUmyz_m=GA*mS0}_~rv9-9?+e>k?Xw|q!k@2&7GKN8D0D8(s zd0TbVX&~Ye{N=Q}hlC?-K*0I_5d%bbNZKU8p~0Z5qNZMI?Cp-=u2#o%m=75SCC^-I zBX`o9mih+*XIsL*%+Mj(w)=3_cYcylhqziwZ=q$7E6#j2ZHFG76P4f&mXV1F*4>Qk z?!XvQu9R0b25ST-pysGYTkPs`_Zhn{sO@mf@18fw(YN &v3fo ^R_1l#bx<~{%c z;z{NT0Wcy}D9qXat^B&kqA@?A*~)6C(-`M}3UckE194{u`5be~`c9A-K7V2}Y%BOW zXN0?`o)p6KN-NkwjYyB2s!j4PDvv7s|NehRLV^QdGyM}|`nD2~#Pi=*_&+2 SyL*{{^dT (PH7P7P6?52W`IGuyE{ZuI#r}oI#jx( zQRL14TkBivy|-qqGk2YH_CCAr*}r}6y%=>>xqHM=Vh{*)PeC532?F5*AkZB&1RvK! zq?UCK0^y<6m9=D#j*f0`Z-e{PSCMiy>w%|SxPM-{7^m!pe25hF*pi?O(g-!~3HBC)Xx zw;+&3ga9bNZDwuf*rej9wr{}-1gbbX5{+Fv8VN7$oC67jA61x)939;WymN5!r>nb5 z1Z0)jH2E3?5(0q`Amii9e^wx?o|z5%$mWGuk;X4ef}vyKK@PLWw}K$SolD$mpwHiT zoSdBWd}}~nYdNc{Z6j+StH#xp&JUq3I5tPei&04xu_7X%S0!f`=cZ<+dfBUd@-7*J zhtBnD`VlRmwM)xO*(ouWugmBayvjeO7*u=e>gs6u^MP*v{jzwQFcKlq@Pzwxr7p_q z{aSZGgn&To&dngsc1MFt^*(H2YT89!Mt6)7KHui%Ms )F0-o9ldRl8DR_+D=Hdsx{v;F|llV28!MLG@6SrGi!-| z`1R+6d2MZOVFd_e(D4qTTcRcNJZ9ncZ1=~CRmRtWZ!@t9uWonumrs{|El%=!v^Tdl zdl{*RbVA+2vg~<4n>DpDahS6=E(|dYUvXhUL= a2Q%{_zUQFQ-)Y~Hha;4g zL3|~nzrObsTz?t*ZeficTSw=#<&D<9DMzn+_ }L3kk!<`V7iyj{&TkiQcBBfes5k)i9w2P z@K~XoI&ot9IYM1*pM-APR8sN9J0i{})Wj(A^L5$6XEqN_j#$E`a!owQrCC{C$al{# ziYZW}_hz3zJWJbauK$iDAQ{g2d6Blnbe1@jVr|y*=C=1oRLVHn7 lhwfMm2tSnCVV2d9(B3(tS_;{`r7nl$DdkqQtAj1*NPN}C z^)o{i_gQ{RPqTb;hscG7!B{GUnKF}a42Dk>jWK*^F9C^EN@+bSdFm+@E@CqRS;=#k z5o^Crlm (T8IweET2jV2TjkD4+#a}kiS29qu6|Er(<4HStLdV zecv#DdG&X1L^KixQN>^XV_1LncWQ2~*>RU0Vb=}j4S}&3HuuiUs#AXL8_`+lbIAUi z%TkJtq1RAX`v&>^OqEfN$1K6MU#ABT0aWD2UW={M$x7;|le=?39&JU63Bs*#DnWFI zV(k Z+A!oJP76|J=31EI_9!lj~9_NDOFax>F4nI_Y<;v3{Ub} z`{o9_sgD_RW!}TQVxG`)B~&z}XaJcf#D*63(T>e^Z2u4p*cpMl<2H!&SCOd_GwZUx zdV2b0Iu)Jz9+I*@KxW>wd0OX*#FIuXew)7=&%7vy>j@qnSIHXIPZyy#9>RIy)eevI z(J+%$@B3>mC0o@U1~1wKWc8BE&77pFUsCQZ$Jwnt@ilt;6qZhjfptvYWG9VstAk0k z4q=6{!EVOBenYV8Isbz4TE|C4F8X3b6T*{Hg;B!Uv!&>dzXz@?Plq-sA_JMPjY3^Q z-?-YxAbMyTWwjTVmWGF)ssmrxlqt4h7NzxQv*#Zh4WD_k2hrboaoUa+j3@?2?dc)l zp-Y03`hCN9?z+01^ufr4&Oa{kMRDMw;IHMOSU?6r56^+*N%vm)-iJp8>V33CL={M4 zh%_-POCLoH9pyd#N*Jds45qFQ+^D1IgJF>rGSZ}VeWl +;%pO z>yV9!k|_pG5c7(cQNMr6R-bbGQ_Yk2+aXwgD$93i<``1ers @F$! O@0GbFjS0K;T1&V_#dh18l_B6I=cU%);2Qp$BICM;uUOtM9;Yqi5?*%?-q1` zwbp!KG2^5qdB7WQml}uW=YG(u9lN-bcIJ$c2SWh$Wi%&O&Px=AGY39oIT71k_xz21 z*prY1)_Mh<4x45a@=+W9G+HAB4EU1Xjo^JCQ_ekytg5Q6Rz{kb%^icxN`ugOi*n6N zpaC8`JPNh|TVA_hcO> !vD{&r7)MK9Yw* zag!yMha$-0$Yvd?XnkJihiuZYf;GD%_e8<>9+H`*)~%lxkszF9on(>W)-&%O;@QW> zq{A)=v(36@iPJuFNr}KX!Q05_SPc6`Mzh&R735nDc35cNvytPG t$<-FeC$gz)AvZ?W$3f0;>RW(Mdmt2p)8sJK_Uu zku1Cj2F|DE;=%VrLLPo}=wQ-+OX#5j+q0f&bb#T0G-&j#PX~Jj#4wDt=lJ#udrz`T zs7mP53<$1EI*g-dd>CD8sl?3>w71>|8XYWCYiwI%(8jk>IN}>77~^dO?&3Rg4mn5p z0aJ^qEz)Jh*c?1YQeW)lJ|Wu!7dy}x_0J$l?a2W{A!l2E&%Mj@l9&KCeju2zOr|FY z|Mx@h6t@IRevu#*5{9hbA`9jeIXWXqtrb^?-9#j{c|nL|^k~JKh@RGmx68$0Sk-q~ z`@D1Y!f@aS&xfgVc9%y%Ds dXfRnH?U`E_xqU9}E)-RWy8YUiYT@-crWDKqi8xuYy;b&=dQ1E?zeR_G$&H4MO z6^&tCjx(?4WRf;Vwul{#!79aL1W@;5`1*Rli|^bS6S&I$`!}m`OZ;Zcn&&6C#yX7z z^2f@AWMUSYrT+k+M=mk{!R*0OEB#U{;`sEk-uz?YAG9M&@D)U-`y4)zWGY8@Whfq8 z;y8YNt*cVAvs;iOLfXgEh<>Zjy^fA{%5M-DQak=SQ}qtj^J0i2k73io{FQLqzrR-v z_Ol&+e`Y$#?%tJzjV&%R+K3aWq^@cZ@34Jf#al99qGNrugvZOFVa5`yYjb0)OArwU zf(9g^!!7(A9!4Hc3$aHPt`K!L%~0`@5{HHZVR*g2%U0kTS>>OT(5yb}3i?D62%)*t zmPhwm08{mF(WP!THfoh4>VOn9UzBjZNHlj60_F~XfDg1uQ?P#hcNh4yfxTe7NI!TE zg>E>;r?S$+sM2qe(IBayO=;Z+cTccj?i9_kDaWeX;NfJJ4Ln &ahD={m=C{LY?@6%Ht(n iI1; -k;4+}Pb|*N(xrL=xC`m9Ubl1h9)lvk2mhl4Y8YjO%GNc`*ty&|SQlDW-y*ei zbixzAN|rvSF4dAwVlADJH5RxCsFqsJ*6oGAK^Ac;$iUp=6z#Hd$^`%oQ}+Dg#BvmP z?&AgJPf2j79$u?@`v%^ZA?IVCgckrNf{GHO9$ZR+lq9bxFE=PGFQ@##8Qyq56Rly3 zEbU-P;Z?)5lpZ0G8;)d;nBNbYxk@3wKN7LNeC`orA-J}Jr+>}|GkT^g@7ls+_NFB< zR_W#Ynl(2M=U4aM`{wK}3;HGNKB@Bg6mURzf2LT-(d~!8ro~mqP#Dxg#W@)UU+{3Y zx460{bYi=Q$zL*RD7zZMB3BjLQ7~c3pP=9fDqrU$$PBZ11&0!0OgoBDvNAH7x7eT6 z@!k$b-5fKs<0xTwFLAgy*(Icw(vZ&XgMOjyV+RLyN?BqP^%*IK)AqC_{f~E31kOTv zq)AT{PuQm0f{hOlSag1VenP*ja-_|tW_8og4lgsGUVKg`@(%>Y6)c(LkQ?zEc6;Ro ztjtSQK#*-*T;%h3BA`CRJ(dfdD;`V%1RFi;9BLq9Y$FPRxE~ge+Sjt8LGX+pEZ;3Y zRoY%hzm4jdlV %+AGZ|V1<3KAqP_eMTwfM{dvo8` z6{-G$p}>gFH2huByLdZe(^EjtFmnQgd4ht4zA%+{D9);aBQu4lG@@KbZ{_-;+3@VB z-@hMBc!7W&k<&UArNZ@ZSUmY)fBicte@Ec`18MfxY;XFt<|q8Q$;Bsn*fYv=bmEbq z?4HwRe+gw574kC%&UY;&VbGGu<(NX4tvH@(=yy2~5ni8bIhQT6_Ix#ggQt#~z$^GM zD%7TeHD*=v2=w3+VVW&tKA=&Yt(v7|K(WU5o@9~GT8eO~N3PUbhJb_sKDVCqOQBpp zEDmya^q;lxApbUoXMUr?Y0|5a3;_1<0{%oMKF4_NX_HER#N<74T2 _Uu4*YynvNrxhf-(py562V5hw+$V`hE>(2$@LfWJI>T6op4U;Bl{G>7h2+n9zoK z`OMw7d!mgo(YAsi8T0P2u2an?)mEfI3d45|Ts{a>c+u%y9B(kS&7@&sRo}sl3xLFQ z%xd^kOdwoTf6qdbZQRpzG#%0)NC>lfOAjmbqEzlHfKs&8bi26;0lZfba%#vswDg_# z#VWHBUScXa9HU-{v|riubONR(KgwEE(MLx~Q(gxX@$|2IEjDlL#n>hlSX?&*X0dPM zs2OU}m#lcNP1&WRIPA0n$NqeOt77Lf^O9hOKY%V#eW0Qe6X@$COOCwqn_t*+!Iv{D z&0|)6&h#d5^x;! vR2be*JDC?1d6+YMv48;t|v$?7r{Xc*y;l!=ggPV}spY{V`>QYSwy` z`@sN~O5e|v6K^j%-^S9?ZGiiHWM8|OGiJkQ&SvvXyppZUkC|A)zP`i-1*q!Um@6jM zOC$`b2s~u{nn4(6M0`TXxt7G?@ejVzFym}BoKC;+&6t1TjjsfMJ-2;LZ^+rPp?%KP z%{i82MYVIp7w#5rI=pPYu)?^&AZL4dI|3Ecqp=J_1$HnTA5UxujCKTUxmdQlq2F5n z@Ci6v8T=iS?d!8NBmtwHyFsik_Zku!{~@n#f>1P1BPifg4=TiBsi1Kg!0soLVH)rS zdB9GhH;v-u4g7o(&0&4;g6K!ZJgYBLCh8+y-R}$Mt4ep(eZyKma7j)ePdAtdx<*+D zaJk78WlTVz;~e?4W2YC`IR|ksl5_X^1?&2xVAL2|Ec)}eUzusD(gp3tlUh75SRog& zBk%f3WwIJvULGYM|NKCliI-`bV)OT%Jn`dTixuWSJh&{+#cFg?=x($o9QY_KPM( zxV#rB52}zsqpj0cH4@;l;tT=I5y7D*ecK+pcAIu{d*G5!eEFL5{8Mk?0|Ns#V4`mH zeCuw*?yemnD%*HrpH5>jo=v8HGdZ{Gx9l~N;BU97(Li%Rhfc#6V+LMwxrYtiXVm~J z2+MNAWA<$n{Y8#J(7_AQ@@X3V{r-KL $-!O_vSulYTOTu24IvhUp6)ysEGs zj-Ow<4m#5NP;7E!%%9~>{yo}r@12D7e=aLoxIcxROVCQ9`7F7JAoTIc=hhkaJYVE} z5f|TXtUq-9DLCnj1uJ>(GX+48UvDT2@iEllqii0cYQJl2F(dIljRxibsyCI8KN^YW z{Mh(ady?0-$`#wJOGSLL-rt|TJSULCfYkyHIu2~ujo@Z7<}*{85=vMPx;&`HdPNa| z4!BVJf(MuJ9$7a17;FG|iBc#!wo~eXI2PI8nb-Pr3$O~!^@^5I{8*ho=5uJE%(6*c zJbI1QH<+h~RSr%84}2*x#4D}n+k%p}mxE6XIjuS8Q+3P0VI}^_Spr|YBvxqQxHV!A z&b*Cr#L8DZ)o{EB6jJr(2@<5QU!d_nq!ohs o7zqdu)*6vc0A_&@(_57${2!+OU8pirs{ zWieD=46w0@FaXNg4P%!cf>@TSQ1iZ1eQ%+PaZm4(F~e*DEX$oW)4s|-_1|WobquA6 znyYEnuNK+LW`0?F^qdjd8U`(`Cp4qr^3-AGeR!W;=7`szYZ=z};J>Q0WsF-Z=vW g z+y%i6h`*Z|fP@lePJPnNOu{K3{TanFY7k!;GJ;dL&>CLs`JY-$(U9#7e?;&Pr7aXf z3NHT)8IDEZ>=Xv6bA@Ab0Wg|^MGn4xRd?|zHxDQrMN{k~Q~;hf*1j|dMDXc-Uc8J& zZ0cbF*c?nx;i;ch033DYZ7NWigSV4%4?D~xKiPT+YJ%#Ucu=w86dwV)Bc~mYR}nYX z2|xP9 _R5^r5J)(_u13a>3Ch;4J%vx2nh`+ z=~&%3!O *1n@#u&^&c_Nr)J?XnEKBQd|Y})91?fOrlxR zAoCDXTaGgWGcb~eswkPxRaC=Q_}I@~Y*)lAodnAwMIUr$zt}hf9jIp#txo94#9F*{ z$s_WNHy9P0O*D%m7CJLH5NKy)5~5t~TDG4c*}q)sz-&C0#Mz+|?9lgjPNf|cvgofe z1)Wz;BvXjy89rLAcJjd_37CVwNOqz6>N32Uq9}tI EnmDlL@Yv`=^y+}e)$abMjOcvhz z301_xNUc@asMeryLWp2@BAj~*>7h8M^Q+=QAs6T?>yOI;=$T#jaduuZ+ZFg}huoAi zI#i&ZmR`X*Unw))|4tuzrsPCX+vT+lcpGYXA)p2qkyuYh#df~0x|dx8sOps2hl*7j zNJO3zk{!1_SHn$9mxp|YoUrV&o^?GRfbh8l^X5Mqofj~(&F3686ctg1f9@jcL&v;t zriELigBef}wqSamZo2U`V3yC`fP_eV_>r;B9h_zFP{jlB)=Org-bNmH zQ(S$DaZk1{D$?MH<+SjhsK2#m`gfbHgRg>VDxD9$b^K~#jkx;JM724~iY*jJA&u5s zmr)dEr73{_6aHWdiOg*|2+m@ms4<8%+y U#EJ$%$yRmNoWjtwj|#`W?;bG2@o=5hJU#IR=^NLm{i`QKn2-78OTip@{u22xSV; zzgH{XlOAsOzG10SFkdIjV=$b05McWN%o6-KKb{^|;DIS-oy{0=1lYsIvCY42-fv$L zFko@3wEH~>@OyY`j_i2g*U{{%28)Kgw#II9K&A2-@*ZR`Z)hiyNXi67+~|% 8D=Dksn?u13BI1axgXSL+{miHzo8&`@L5%@! z;N40E{@iGub|b&54P}LOiGBicfM}B}0b2qw_|fMdFA(kFL^SZzvK7dU z8?~xiFV1Z6bP7i#uMg1+BhSl0b~!CoR+4ib>3iKPhmV*w^dE}u-QafRcQ#p zGaiR&j2h3MmIfiB$ISQjXN}&P(BkZ_B0pi}3YLUJutzfge zK>=PY=+;NYnYihC6?qS?IsLQn+J&<5 z0&E>eos%w4GjpTTnKt^BAN6Mf5zLn2<<{4a|5JC=vv`sfD_P^;Y^IQrP8;)hvY_?A z;Dw24h_r)4d+y=MsI$w 7XdlPp$u$ 8q$tpiEpbuiu4keDSx-Qyi0H`! =i09iO1i#nw-xc{E^Je_3W=cN=D{wAvdt6p`X9CNf&ZQ9qDdgTmvZ<{j^ z_z+_PW=)`|0Mw=1p)wFSgvjiA*dF%(-6v9vxLpVR;QwuMLK#dWr5Nn`8txF1R(sbz znLP-+ds8tZ9NK5wH_N};#*?b=mA|22xPeX05@w{tv&T}bD{luuczUKnahTSW1JPrQ z>;8nLV_;x-K+jNS8d_a+pjUFg)(H(*O*kJ89K0J!7WJw!o`2f3ENr%XED+OL`;oz% zwRJ!#8kM!QN+!l|{tp6@n;{WC2WT-mtSoih7`HjMm@G+!6P }%uw-;Z9)^>82gCv*b98ysLk*K?3#tlWrQ@G@Xjy$YbcTLB zqdk;)#kve+E^$l$!$o_VQ&T)9hc=XWC7_rcv}VoXitl2oSNW!aI_kh&3J)IpQdj zEyv3p<^|yvuP>q{Th$+X>1s5VyMZagGZxrs;{J#F{^NJ3T)$~(OLBq?JYJ>pdA|Fv zk=coNb1pKzP+pH2I}W+20f_d)r5P7^Po6Rn(IB9}p#wj9;QqT?!58|8m+zUhNhfe( z{COpVFK@#ZIg#eHD~A-2e!(D15sYGEf|?2-V08bli~lc=|G^5M{@l1Rhf&`X$bWce zb)zx%n#U4VdGp5fBb_E@0Lr>Y_&_(dl}8pO7Vyt^C@jfPl_ugKqP(6=uLKA}1S{Vi zd99oTM08PcAT-6QJ%;W6WFi_xNk2jB1h_W T{Z^wuF_A0LDekZT=3M^1ix`V+f<(T&;njG(i-$mvz#xLsq5(nVXo(#0^ ze-P`Eqt`7FE&&vBV^F8q=yut#zGijslzxF+g#ZH *)he%P6CCf}hrP zb#6SjUOrcT#3b-iCMU-ZwT6xfyfvWx@bk zRV5BJv-KZ#OJC&wZ5Zo;oK)XBS%XfWE5hU76Z4v*Qm{4|^`0mbyHHON`|Bj2IINBF zz}c564Dek3Si3sXL8D{>j_CllmU<7>I{n >GI89|`Zh6B6SB^U69LLsd%GG|Dd6$qK zfWWh?1Y)jlt_xm^S<3R<+-#Afp3pBltIlALtu#HRgz)5I03xX{p2N%NIrwjul#?m+ z$T&uW(A@+~y(@G({JL*$b)=b6ru+4?i-qL_2Gi RrI6LR<&T7JO+ij4-^+Y^QG89W^HB)z zY0(PQlzXwg*gv4`=FG;A5sU~{bEP1}Wm~rYpw9m`CgCyv19!kz99Wkx zt+f(8{}oRGqmVzo<$-aN^A|h)w)b!IfIw8AtPv_YoAqfK%~07NylB9>gd{bG%(TzF zEd>*TJ8bYm525L24Y=YSmwc7IGk_lCkJ$M5##|WwYZ5|;MMtGZUm9aJ%e1bpPTsU6 zx3XE@q#*t8FfsXg3wbyAMK6#mv%IjFoam+#fZ`6_-67oOp|;65VKmM7^Yt-W^oog5 zKR01&uAmt-=4JQ>`gSv7pN@-jmDo~6iO_7SHO5A;XCQ=j5<>atn4VRp21|Pv)ddz6 zoBH~5K%|G1I2OcxyUVXk0BL_UIq{6bVi01kJO(Ks$3bYjRsj?pjU5l3^wdW(RIW@w znv?fg==Vt#UAfU5=OMgwY^^0!BLZiFw==*9`b|sbn|k&qcPZ*;Onca>IVx{>TC$U! zcu_X1^U%CHd#DtwNa-RyTO!4voW0D9SQ!47LEiJsBw?ylMt^dm18`!xV~TKb#0DzZ z_Ep=0F^O~m%yCa}rzZUpSJZ=tGH`jl;O96taQW3w!Zu(mOVFWxJ`R(DF0%ZM} pZ(eOjIS0^c5nlWD^ZepG4{yyp(`M9sC0aS{<>Srib` zfJ{`T$H|DRqvw8uTF0_Xf;tZ4^72A?KfCB+AwMcbd8M1WV!lA68SCil4iD6O#p}Rs zGvuhbC_=l?Vf|jnr$ fcs|nBa~+d2;VHng{}#(qc-NIa&xSX(en5%# z{fAw&W$SzOC5Tt 9v2t?TdYu~0iyR`jaB?KoSi!f zZ&$JfV=q_gP?<)SF+!@}l!}3eME9^P8g#CE*P64(Oka5N4Zi4 8{}7qqWRvpuyqp-2#rR+7)0fJ~GDB95&=7pm@! z0_v+fl~jLN(Ol~e*tx(8IhzbsbG_|gz%T9Z`MsPNhn1W-5h_#sO1kOK${SG6Md (xiavSGdvC# zKQFm4z@I$BHj{l*eV=Y)<_@hj7F$XWlOVDD*8KMu#KF8v9|iY@u0WL2{whquQ^$Cu zqom-cp45>pFn_q>ceU?oMVi}_B@T^jwD&zHzabv~wL$hmB$y*d-8*;VT+Cr_C~b0G zcdj7G*#c&BE`sTEzb-*9`C@=}EVRyT-1O9Ca?QD!H(w+4i7+ny!2vDqo8IP-gVF1n z%jo8WVdv6cO4B?4lz*w#16&;TRwAkF+PXV(O)Cvsh8t5h-W&T>gj_dWkLK<0JkAo= zG6l|raVc|k>qgk@rJ4{55ox$54MlAk_#Az4_nuyz!-8m@R8~B!k173I8#6|EeKi_A zc2kXyLiqBDGd2s*TH2>TUA@LFpyL~Ce;>t&ruq8cmiYej9iX!8Shg>>E_Rf)hvQTW z1kOI6{jDE560E>%H>N>(?Rp%F6@4;88Ca*kT@8O%W;eWC+XT|nW{97p1R$g@K9SL_ z4VF!F^0RDxg$^&JK*!L=?Axf%y~=_aRf}=4M~}#U=P v~`HSy>82op@arp+A7ANVhe#hz>gyT z*Sj#hW#^HsU8;MiRO?e|u!6?ILpbE>`8a(L>-wqD;kMw>6ocD5DWx5_$60|dI93p8 zfjnM(SyMZ#d6eDpm;hVbZKI-)0hgY5ruVeiifVcI`A!`o*w_5 ?12((y*(^%~ zJMR#3!hTa?a L$KOFB< zPADP2KYTiCV!6+wlW~&~YiO*`|KF$z%vdz8nY-ftYd=d_WH$wCryg5}yo4D{Z(K_f zIj6tga9V_> OUj0%L$ew-Wogs??^sm6jv&-%@Aw1nlowS+Og9 =AmH{K=~0YxuLYI z&{m(H?;fzDXT$+hZ?RR>6p$nYr&Vw%vtLS#-IWMqzAwN62s(H#`|x36iH0E2MlZ6D z)rvmxrV0Rb2c@}6k2LuPkw|_rDn)yhM{gEi<%JZVxZULvBu+&ez1LAC$UVZ?h`jcS z$vNssP=F4s_EL ~x)GEb?Qq=BW3}@7+_e(!C?V zX@?zBZ9ua9b-Vtq e_u490W4&%ZH~^vZwbQ6*I)mtrqRFsvXwusM6x(DN9_ z!-R%6RmDs#09C4WF>%I+N#!f>x)$c1>)zUsAaP%?#v#|efAzI zf$ug78tZ391?biMYWJ@iR9rpC)6y%}6b9sksX2Q+>9XU!sbq+7B@@?fsGID*yJZ31 ztJMCceZ`WtLoTjXq{&06uYZ<%;`7;a@~b(2X2t4DBh%3{V!-&udo(ZiH`RbMg+7Q* zCN(keVe@-E=@jb?5LBwLlw7I{W8)Hk42+Mdg+y>su UQ}h6@wltFdhf{8FH>anNepQeJ=+6jP<>{r>BP}bDZ!D za;)il!d`1+UNi=pTB ciGH0!_jTrm+v?>X$`X~rLwJRtJGM}J43?!&N(aeYg0EFDP3pKF2&?~5`-}*Y! z-SC)Y?(*ZBx;dZYcw!%Fp~rG5(b-j$#3uldM+@ZfJF)^n$R-Z~B%He0r%bYs{?CO# zZ4YaHuQK_IolgQLIRZsqPBVtkBSu#~1)un|(y|wEM-&=o4aN8s*5)6}y01E{b)EiL zexvkmUe8gKOMl>NlE=5Lq( %?su8U-eg0CS&6EiQ`RQdl){@NM;S;9#dC5gkjG@teH$b7rP`3 P=PIq+6A(+=q`GX}QDP3%qg;^02ap zb|URu7wv>H|DuW24o=q!VBY*>` jX=Bts_+CSYCl%D*q`_YH(X zeLjH{xz#q9$}+Ew2XoQ-`4y`4s*l6Fc{`3=#KzIVoGnzj k(IhtM;Ssw?VLhV)tTPy4z;{#x z3`6?!q}(Cv{!_W_503e473zerjA=5N?XIusr3lg^vfIjWtud1fWh5T69##vf4}U3! zjvci-`7g)Y(NMv_FShRoj Ccj@-s gTcs}C8jx{%U3mr&)Xu6awp4s2 zurHVNv?F@X1@#fgQa|KuKu)zDa$QxtWlKY&wCIq^-kfKQu3KYy!x;-Y+-H}Sz}dG7 zle%Ifm~_${F !_fKuAIe-L0bbYjJ6EGLpBaO& zuOHdH*}D_P7?ZwZz}lktmbR6U8sOTHM0(G8fB~sg9^kB+$8Tm={&&tUca1=UPmMqj zWFBAVr^}Sq=z136;-3!h1G$gpmX7G$7ba {<2H`q5mb-5k}VohZ>HEzxhd+ z-1}N;8M=AlLgvi}`3ikC*x)<}fuLMhQ&`L|v<8nn=*+Eeyg+VLO+*A!#~c@GDr713 zwnM6s{2faUXJG3f^utpIq+MVWQg{SJ!a`4&976XN?}<=49Mx?y3`7qn(9s9c<2{$_ zI@gnFY`^0M-U^rf!5Gvy2u-v$`BTXx5E!Yx3rS@hYaSOdqbAjg0fEx*g;&pXX;$Gr PJ_9Mpsv@hUO@jXqD^2tD diff --git a/docs/java/jvm/pictures/jvm垃圾回收/11034259.png b/docs/java/jvm/pictures/jvm垃圾回收/11034259.png deleted file mode 100644 index f0e558e7de59a2f68240a513e1959f440c2f16f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16416 zcmYkj1yCGKv<8ZM2<{r(g9O+FcU^+JBshTpyGU?%cN^S-1ot4peX#_B244so7T3pr z-@UJ1)y!1)*FD`|ADKCIdM4^USn&l86%G;-(hFrJIV~h46aWbc`4S8D8Tm_8E&N>B zdatG<|Mc{9e}DfBI+ZRz4Wa1fEWgiKP*0sR&Re!CUbZM$hPNUq#7$ZiE~_NZC?!tG z#*AHEU7eks!Qt?knVF{{-0kh{y1KfAgoKk$q=OEmiyuf&L!?i`vUdYWPs5^5!%R=Z zd}rNASG~_w>Ykn+*Rth9SK2)%ild{Wr(ub;wY5`shEQ9ivlz{@NR{h8Bz_%_OCNUm zHz?oD!Y0dL#BQoj} zv +8zzl2cfc*@?I5Onr=~_=%O4jq&>^~GilIq@Nr3LnWPK@8~!X;Bll;r z_Gb`DxRnsnb2rAK*lXeFNTZbpqxWZ`sYP^Kf{_l}_$CWcwi=!bG&)J+PcusW{r%qN zgsas&<-zn4pR=P{H#n5-o~A_e{g5&}QH^tcIf{_Ty~1-hMw%`nr+uSx*oyzgDo)TO zSS6@2SA#}9e$-xzYzxA+T1~aFu`xP2Dj(E3UBn|mi8a4_p5TJ?^d~?ib|^D5v!$g) z+%}=}1Iu0$Qga;nuX3c7m6Z`Irl%iBRaI3#Ke1+d5I4thFcP3Q8_{ZW;%9m?L`O&O zjzUYmR(F?~yXFpBMwEAq{6y?cuOcCdUn|Q=>wH-{{Mn1$FNG&JL+Yc#fN3B1&PB@c zh5fM80By-m;A-$o)LUnxYqkH(1PSQ}kD9Kmlg%+*^2&aruwVjBvcT6y;e>zbY0|l2 zS@6RKo42m>*8J(bpA4fKU&mbRHN;b{y-zjtzvBJ$L}+Vj18R+^K9U98O GnoNnief9X}>t?kfcaQhnjEBc+!mh;X}L zEGpCio8xaHauFW4rcqc>gU(-n)F+-Pk7U(s;f1~zzkZn;-`y XFFJ~aLzcu-)YsB_ 6?%y9sjqiB0rHtPAFZpqUg8CPlTZQ=uhB)00 zSxvZy)^G1a0Ej09v9U?lZPUOBoEiqV=LvNj%A`EgP?!tmK@D%4QS>^l+U?NT;BN$Z zZOMWzwNU&QIQsl~S+0E`IEPZqDN%hTA9xtA>sSU>j-N+EY^!03nuGB#!LVEniK5O^ zVv^hXPoLo6f}sCtC7FruSR0TaJ{h-%4Dh(ts2Zz$jWQ-}q=nC2N>`-Jx#j_C8Zd?W zZh$saf+b72##pXfp{g}qstHyQ`hNPO$^*$&&YWuxpphU`APj#0J5N$#cM|3E?r9DU zvPtker72bPQicnZ3b#e0?1;r8LI7A$ E_~mh0xW+fRu9TNj9TNEw?g z*L!mq`(OWWt+ EN2h*FmlhmLMBI0f;SVr;bhXPw~>22izmtkhcM$QItl zd)O-lrgEOK!ZCtU-tbDbbkm(c1~H97p^A u-X1jC#KsBJlpeRZXeH{$Zzj zv6_T|JTFloe93!gVKy&MjB97;U1$n|iZTfrD^C&LKJXVT7c_FKlxHv?tdGL)X$oqk z3@YJf5lCPVtXc1K!lNW2epaxh*e;hrzL*yU2wkXYCowisrpS?16^YuiXxl^sMiVI@ z!4Q{jjLvbW4|2_8$Cs7a-xlj*>IuGJIf;FsNkS|}k;of-RvUo)t>Ip3SEs?Db~?a6 zua1w_@(ex wx59R|?d{rC8_DU6w;SloET z-R|AS&Elbt^Zo6waek1w2{#zL%UENPdztmndBnE%&^y_Xe>*f@2lzjhVYY4Tj+4hr z`euSNTJw9lF>U4u{Wts1)(7y+y|>Jr0U%)UUCsh)@axzd%!FX`IB#|v)P3oaa>hDT ze{R8;@=z1CACr15avj)ouiC!gRFJ$R!z&t)m7bRTSluj!G@8{vY `D^5}_xJOa`rcu1o_jz@BA>Jsm^shUN@Fb*)^U| (ub_U%eAUOYn(`qwY-xwmPuW#b(uNA?Hv zQr%9IR-!*V$P{%$h(CVWl=Zl<8QN2tME|;VwbQ9(R1HukH@25ZPzbj>Dqy`m%~ltm z=&ks&w}&fp;hwn3Blz-FoLb?%7 5l30k?Or ~rrh$9@jtN{4iWhEg>`ZcT21sdNZ97w^U=awR&jM6;+d z9T-+z3gKeutXbq6T}lMv@B~MgrC0WPoick sXz_)+qn`h51uRGG9jSwR7Q9re*QIKv*uaG5ariuVWVBSI~X2w_> zh6dp*r2kL~+~}hp`uRUSf^WV&xlj4?AB1nOO!6lthOE+M9$>iW&dv=YrGsrEbzL{I zV||6HBrtBv2pmk3UGfgYSwD +kdurSvH^d!8k66;g@mR1s9!R4;r+PGI*=FrhSfT@Rk{WMQGMNel zBpi!PztI)c_Mwgm;So9Ix@i5jVzlVMLl)&}a(&N(_9)LmNxz$d0=l3^)MTVai;IZx z!E?-yUPA-~y)YzSgTrGhgU~GnMR*?g ?vgY+o;Pvd@WvB>@I)n zjpYBe@+Bu%eb0PAou_cECh7-@jB+;8m(kbt$S-+tUZIWwYst$K_8Ol?ds&nt@HVBH zL1@w%-q?Fum+SQb-w;V{^kJc;2g$QHq&5OmcdX^~98IgOt#PY6)f)vdmo%0y*1}Pu zntyNY47~j(88PXNeDi9AvaK5+EipDEHxX48&jqqL79KA$6Hl|=DL08MvJPdcQI4y5 zCJMghhA;a!o&A{$Gd=kD9q;(NQnx8eY1eLMtw`jrHxUs~b{oU)BbE`b<=^Ruk_;J( z+`h0xo2$TOcaFl$ffX|@_U}%@ZX~yI2PrH@n<-|&Kx-WBb`v}A2jS1;82QqU?fQM| zB|kYBfD-6#phe!S9y+O(13uJ3LA|RO5V2xK ovhH*X( z{Y+P6tKGG6!YztBq9Yvm%!;U*A$lb8*MQJn6>YJyxKLc7S?$W69tmT|M9&bldg0Zt zePdZbnXG4pCDOi}VJgoZ^%XK&3!Nf(umy>;D5Vjh1paNPf^cqD$6oXleTK%{6o1Dk zY pJgDCSie9?C1$4W`_T9R*#j$RC%LEv7K{ z(-5Om#WQCJb&5(CEKnAjjxv#0xLVB^rDr;ewTkf|K;RkVxH3s2*IqU9@jWakivD?U zwR_Q6puKvF#Qq}*mvq)RgZ>58ijZ|I>Q|ASSZsCj0he9QuS9(vqlf(%6q#vmo=u^K z%09`^Sq;rn2I0{pFe@noBt_X}_iH=SZcSj5%5GJD2YE^f#?Ju@;WDf^ukW?CmOY=Hf}ST1i6P5X zThti3K{~}UF+UvV2gLxrMC`_L71K)VrI;!=RyluY 5b0(<=cwiA!gIzu8`KM?2Wr*=a;Y94zE# z9Md BBJL{sAI)9XJ|Oum}HJr$(>ajp`?R^X~R{J$Zg7$q7dYNdO&m#Q;BMGI$ab z7wQQJ@OJdaZp#78*PK4Q$ o- z2GBojgp *e` zN7+a%BFTQU+JQ+bS q0pfbW-$*050kMa{k2SHW?c{ zRp%}$K3~ZyNc%U5LMb;q)kbSqs$Jc9(=EP$IAM-WXHyHmJoGZ6eTx!Kzj?2CM+n2G z=nh~bJ2enr)ryBwof9l#?nRAs$YxzLPtPfJ{o0#w+!*fKxJiR1?oqI9-ILjFQy~$? z9VK3eNy+`vOtny?CJm){l`|9{sxJ{La$=J5HNwZ=#-P+O45}M5rC2&{FAGHSm-_ zPof!{;=1&gs3Ch@?IGBuLkstPaR|+Q3082reKx0^k%Hz+^>}Tl2^#7CEKrY{Haofk za)=- ^@jVQT_w_ zoVtItB7J>)>a;vm21WIw5UWiQ<`VJ35q8nqB^8hO@U@ACaco$Kk8yc(t*rY{dxS&c z@fEX2G%@^sM7rft_x!_a+mAriz s}9UFfn=3n+S$ z{%jJu=Y@=LOOS;rNVY@F*h%wUZG<$8BM2V7kgbQTc-hf=^}$0o!~hC|P#L$#xI#uj z34zn0E14+ENT!hRQGr;VYfG-Sy}pi_j4=Ps)bXD&^ny?ZIEv3RNxor2DR)EP&%{$9 zv3#5S-z(m|D_DN)WFmITU;d`o)_AeAc0j&WPsfg%nDb9Nqj_bJ)7 zRt6-m>y7SPp2VF7{o%e=!u)v}@8WI?PhJAK39bU*K1#=DQ^BC#G7*O@_YR3t+Sc)d zhn_*`h3E+y_4A_t7li%V>ioaH{{!kLAU@aq%l9?}!9;46dMA ~s4hyB_V`;!9dTnq4>2*`9_6&>~wh*;Pfe);D#zsc+kEbwGht<|bKAkDRg-1f(n zmH+Abqj z5MYYV{H1U=?Tf8Wf1YXj?j-UpyyvM!L*iU(=-}U;S;Y!IQ~D2V_Xb3s=?K970};*{ zskB=rBwP2NM5_jLX2#O9>RDZzG1% 4a?->Rr<@Gv9iWN)3vg%`6(KI>Z|K3$k0s>oX@xkOfR zoU rcH&7YC|(A0e%7$m8oF(B=I_Ne5?9>BVb#LEzo>u09MJi)f&LM 7=l&axN+7YEK@T#ets=;K8P`k{2yb~o(YanxA O3pB2#RLMETU%N1P|22&kA&eX $xj0mE-l< ze~M+>U}2Z+VJ{A9(cb?(C$~D& JtJ5@R<^-$>wNImsO5qawcHR`?XBLq zvw>DE>=tiZ=q-y1n!n69Gy8nbIld9i^o?gL_HEUs6Z@jE<_#K#jBR@5N}4cNdFU zZVzbMCP$^8t_a0Hzovv4wnTkcWXOY3!2B-Bj_b^eKa?ASQmjzfMlrz2F92q0QDx!h zhVl?WO(&@qSC12Buh9m){9V^u&W!4_y{0%p#7(YaC$=+{ZL+RAr}3nST$$^wZ|2z0 zLdK9Q*?~@r`(zo8hpWds|B{CKtq51Z-HVr++ABzq^dX2CfHyo}8iMA;U|fqou)+WD zX-@|ab6iJ*OJ?(xxdQ5BJ*#*rwk~vJq6v}ELo?&B&)vqEVYRytI}6jFFklZsh%ch_ zt6y^!j$K=cR`gTIDsjILnjr&ssBk*KHiArMOMx-8lscki@QOzyy1xr|S+e8qajExt z=7`;vH{U6NkCa0oaUTl4EisQdQQ^;v(ucQEjrI$4o6~`a+8;NgW|URJc&HyT?-`o; zW-&*+`7G)fM_>% R=5^O7bcQ2PRW@2 zD|hk3C$vPubhnsXH|BA<9Uai*r=dx_YgSJENJZMeuV&0j(5b*$ VSvJEXb_Xnm$L zVt-;jUcjvu`SJq`{H!H?ZkIbvd#5RO)PNWr>3F)8PVV#)h5UL$b8!SM8lBm2O(J%z z0%An$4E20bfIM)9eoX{Z&B!7n1W~*mB6#I^EWuemc4GtG_oIq{{^(sI{0gRlk!o+X zsf}vKf%JaB{I|I=a{ U &TiB4s46f8 zpyaHox0$;P3FF%%D B>9nw8h)A}-9<1t%eXaErM@N6h?eFRZS{)I6WEfb#(31LN_=a_UEH5TX7C)-=DS z>3CcCoG?0dE|spbzV7h%aYnG07VJm#w#Jwj1ceAe8s6lB7!4x8#5XBID_!|(+K4Jd z6@KAYYm+h;z`4Huot&?wHG!NSzhy7RunQQkrcQ&zbNW%>ndu>G=ngVY<`J3cdi|Ag z;Qac2Vs&?6XJwT{&BgxeIL8#v tbs)?CTyEQ6ZhLPl;p($YlM)=8N}?YopR?q|8n`(21*S= z*l_uUwv Vo)i-D$ GT<_9CtmvrtWG z>4IHJAiiyZI;&7oww-x$yV6eW!}J*IkB_Y*9}1{1y=S>An-+*qCDmDY6YD(lto$KH zTQWNRx&$Ru;xl|=-AKYs@{HUw5RiD|$W6lI(jMM~Ie0LWS!1)$-j+hTEy5S?ICi^U zHdPl=BBW{uD=1a4Nr|c_%1WABhVPs!O~*Y|1DY2G39&!|eTx525EI_l5Ho9v%%aG} zrAG*;R`0WUZUT^(#`DfN+%N9k8*flxiMEu75==lOSn; F%4vw2OJs{RT-LvN!~hLGV=I`IVr2EMre zU;^{4@t9Bt+v;P9P=s5p&RW!2)nI zdi^37QdhLKV}gMx9p6hhHzWhMv6N9($9QUk;&49kW|*D)zGxXrZ_K+okraMoy>}SB z9$uxZ8v9!-^p~I8U5nt`bWa%7 ! Ty#^^CoWbl|l)81ZLrU}(0DFRT@ z4$s#3EoI$?FSO=MH-u1p_!ahAzMBY=L15-EG1T%XC?A_Csg^+cTD)EI{OZpa3h-Bm8Q_S)zbOtJR}U5%<2IY_gn_1SKKA-IGPj`4x&HF&m|f3 zCq)@h?tD?X3GJ0;t;DN7PbypwUaDjX8NT}S=P#g`gPIEc(Kl}G#w1FG5){WL*kWaa z@k-!B;E$hft`A?g-UQw$<}@TiKSStTF*W7Q=0yvMW6Om%=Ebb%Dc)tNSBex1pbFHC z-IaFBWc^G?sDK>jCsD7?>AEd~r76VBIhoLG-qNmJ8~KSB6qWfh!6naZo%Nfr?x^T* zC`%&6pK#{39r^x@+&JGaF7qAc@_*`+A{pLC@6~&&GcfCsRP;tZ!}tM